@charset "utf-8";

.main_wrapper {
  position: relative;
}

.main_img {
  width: 100%;
  height: 20.0rem;
  object-fit: cover;
  vertical-align: bottom;
  margin-bottom: 5.425rem;
  filter: brightness(50%);
}

.main_title {
  position: absolute;
  top: 14.0rem;
  left: 50%;
  font-family: var(--NotoSans);
  transform: translate(-50%, -50%);
  font-size: 2.8rem;
  font-weight: 600;
  line-height: calc(47em / 28);
  color: #fff;
}

.main_sub_title {
  position: absolute;
  top: 18.4rem;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.8rem;
  line-height: calc(36em / 18);
  font-weight: 600;
  color: #fff;
}

.content_title {
  margin-left: 10.0rem;
  font-family: var(--NotoSans);
  font-size: 2rem;
  line-height: calc(39em / 26);
  padding-left: 1.7rem;
  border-left: #26A64D solid 1.0rem;
  color: #26A64D;
  margin-top: 5rem;
}


.greeting_wrapper {
  display: flex;
}

.greeting_content {
  width: 73.5rem;
  margin-top: 2.95rem;
  margin-left: 10.0rem;
  font-family: var(--NotoSans);
  font-size: 1.4rem;
  line-height: calc(27em / 18);
  color: #000;
  font-weight: 300;
}

.greeting_img {
  /* margin-top: 2.95rem; */
  margin-left: 4.5rem;
  width: 30.0rem;
  height: 30rem;
  object-fit: contain;
  vertical-align: bottom;
}

.greeting_text {
  width: 108.0rem;
  margin-top: 1rem;
  margin-left: 10.0rem;
  font-family: var(--NotoSans);
  font-size: 1.4rem;
  line-height: calc(27em / 18);
  font-weight: 300;
  color: #000;
}

.greeting_name {
  margin-top: 3rem;
  width: 108.0rem;
  margin-left: 10.0rem;
  font-family: var(--NotoSans);
  line-height: calc(30em / 20);
  font-weight: 300;
  text-align: right;
  font-size: 1.7rem;
}

.sign_img {
  width: 20.0rem;
  height: 7.1rem;
  object-fit: cover;
  vertical-align: bottom;
  margin-top: 2.9rem;
  margin-left: 98.0rem;
}

/*---------- staff_content ----------*/

.staff_content {
  margin-top: 6.0rem;
  padding-top: 6.0rem;
  width: 128.0rem;
  background-color: #F1FAF2;
  padding-bottom: 6.0rem;
}

.staff_wrapper {
  margin-left: 10.0rem;
  display: flex;
  gap: 11rem;
}

.staff_img {
  margin-top: 3.075rem;
  width: 20rem;
  height: 23.0rem;
  object-fit: cover;
  vertical-align: bottom;
}

.staff_name {
  width: 26.1rem;
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 600;
  font-family: var(--NotoSans);
  line-height: calc(34em / 22);
}

.staff_kana {
  width: 26.1rem;
  font-size: 1.8rem;
  font-weight: 600;
  font-family: var(--NotoSans);
  line-height: calc(34em / 22);
  color: #26A64D;
}

.staff_title {
  width: 26.1rem;
  font-size: 1.6rem;
  font-weight: 600;
  font-family: var(--NotoSans);
  line-height: calc(34em / 16);
}

.staff_text {
  margin-top: 0.5rem;
  font-size: 1.4rem;
  font-weight: 300;
  font-family: var(--NotoSans);
  line-height: calc(21em / 14);
  width: 26.1rem;
}

.staff_content2 {
  width: 128.0rem;
  background-color: #F5F5F5;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

.staff_content3 {
  width: 128.0rem;
  background-color: #F1FAF2;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

.staff_content4 {
  width: 128.0rem;
  background-color: #F5F5F5;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

.staff_content5 {
  width: 128.0rem;
  background-color: #F1FAF2;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

.staff_content6 {
  width: 128.0rem;
  background-color: #F5F5F5;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

.staff_content7 {
  width: 128.0rem;
  background-color: #F1FAF2;
  padding-top: 2.975rem;
  padding-bottom: 6.0rem;
}

/*---------- company_content ----------*/
/* 
.company_content {
  padding-top: 6.025rem;
  width: 128.0rem;
  padding-bottom: 6.0rem;
}

.space {
  margin-bottom: 3.075rem;
}

.table {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0.5rem;
}

.table_title {
  width: 20.0rem;
  background-color: #26A64D;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  font-weight: 600;
  margin-left: 10.0rem;
  margin-bottom: 0.5rem;
}

.table_inner {
  width: 87.5rem;
  background-color: #F0F0F0;
  color: #000;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  font-weight: 300;
  margin-left: 0.5rem;
  padding-top: 1.6rem;
  padding-bottom: 1.2rem;
}

.table_inner_wrapper {
  width: 87.5rem;
  padding-left: 2.5rem;
  background-color: #F0F0F0;
  color: #000;
  display: flex;
  align-items: center;
  margin-left: 0.5rem;
  margin-bottom: 0.5rem;
}

.table_inner1 {
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  line-height: calc(34.5em / 18);
  font-weight: 300;
  padding-top: 1.9rem;
  padding-bottom: 1.4rem;
  width: 82.5rem;
}

.table_title2 {
  width: 20.0rem;
  background-color: #26A64D;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  line-height: calc(64.5em / 18);
  font-weight: 600;
  margin-left: 10.0rem;
}

.table_inner2 {
  color: #000;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  line-height: calc(34.5em / 18);
  font-weight: 300;
  margin-left: 0.5rem;
  padding-top: 1.8rem;
  padding-bottom: 1.3rem;
}

.table_inner3 {
  color: #000;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.8rem;
  font-family: var(--NotoSans);
  line-height: calc(34.5em / 18);
  font-weight: 300;
  margin-left: 0.5rem;
  padding-top: 1.8rem;
  padding-bottom: 1.3rem;
} */

/*---------- contact_content ----------*/
/* 
.contact_content {
  padding-top: 6.125rem;
  background-color: #F1FAF2;
}

.contact_box_outer {
  display: flex;
  justify-content: center;
  gap: 3.0rem;
}

.box {
  width: 26.0rem;
  border: #26A64D 0.1rem solid;
  border-radius: 1.0rem;
}

.contact_box_img1 {
  width: 7.829rem;
  height: 6.0rem;
  object-fit: cover;
  margin: 3.0rem 9.071rem 2.1rem 9.1rem;
}

.contact_box_img2 {
  width: 4.726rem;
  height: 7.0rem;
  object-fit: cover;
  margin: 2.4rem 10.574rem 1.6rem 10.7rem;
}

.contact_box_img3 {
  width: 6.547rem;
  height: 6.0rem;
  object-fit: cover;
  margin: 3.0rem 9.753rem 2.1rem 9.7rem;
}

.box_title {
  font-size: 1.8rem;
  font-weight: 600;
  font-family: var(--NotoSans);
  line-height: calc(30em / 18);
  text-align: center;
}

.box_text {
  font-size: 1.4rem;
  font-weight: 300;
  font-family: var(--NotoSans);
  line-height: calc(21em / 14);
  width: 22.5rem;
  padding-left: 2.8rem;
  text-align: left;
  padding-top: 1.8rem;
  padding-bottom: 2.4rem;
}

.contact_button {
  width: 84.0rem;
  border-radius: 1.0rem;
  color: #fff;
  background-color: #26A64D;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 3.0rem;
  padding-bottom: 3.2rem;
  font-size: 2.8rem;
  font-weight: 600;
  font-family: var(--NotoSans);
  line-height: calc(43em / 28);
  text-align: center;
  margin: 4.9rem auto 5.0rem auto;
}

.map {
  position: relative;
  width: 100%;
  padding-top: 50.25%;
}

.map iframe {
  position: absolute;
  top: 0;
  left: 21.5rem;
  width: 84.0rem;
  height: 46.0rem;
}

.address {
  position: absolute;
  top: 49.0rem;
  left: 21.5rem;
  font-size: 1.6rem;
  font-weight: 300;
  font-family: var(--NotoSans);
  line-height: calc(24em / 16);
} */


/* missionStatement */
.mission_item_area {
  padding-top: 4rem;
}

.mission_item_area:last-child {
 padding-bottom: 10rem;
}

.content_title02 {
  font-family: var(--NotoSans);
  font-size: 2.3rem;
  font-weight: bold;
  text-align: center;
  margin-top: 1rem;
  line-height: calc(39em / 26);
  color: #26A64D;
  width: 80rem;
}

.mission_text {
  padding-left: 10rem;
  background-color: #F5F5F5;
}

.content_title_mission {
  font-family: var(--NotoSans);
  font-size: 2rem;
  line-height: calc(39em / 26);
  padding-left: 1.7rem;
  border-left: #26A64D solid 1.0rem;
  color: #26A64D;
}

.greeting_content_mission {
  width: 73.5rem;
  margin-top: 1.5rem;
  font-family: var(--NotoSans);
  font-size: 1.5rem;
  width: 100rem;
  line-height: calc(27em / 18);
  color: #000;
  font-weight: 300;
}

.mission_text02 {
  font-size: 1.7rem;
}

.mission_black_title {
  font-size: 2rem;
  font-weight: 600;
}

.silhouette_img {
  object-fit: contain;
}

.purpose_text {
  color: #000;
  border-left: #000000 solid 1.0rem;
  font-size: 1.8rem;
}

@media screen and (max-width:699.98px) {

  .main_wrapper {
    position: relative;
  }

  .main_img {
    width: 100%;
    height: 12.0rem;
    object-fit: cover;
    vertical-align: bottom;
    margin-bottom: 5.025rem;
    filter: brightness(50%);
  }

  .main_title {
    position: absolute;
    top: 10.5rem;
    left: 50%;
    font-family: var(--NotoSans);
    transform: translate(-50%, -50%);
    font-size: 2.8rem;
    font-weight: 600;
    line-height: calc(43em / 28);
    color: #fff;
  }

  .main_sub_title {
    position: absolute;
    top: 14.4rem;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.4rem;
    line-height: calc(21em / 14);
    font-weight: 600;
    color: #fff;
  }

  .content_title {
    margin-left: 1.0rem;
    font-family: var(--NotoSans);
    font-size: 2.6rem;
    line-height: calc(39em / 26);
    padding-left: 1.7rem;
    border-left: #26A64D solid 1.0rem;
    color: #26A64D;
  }

  .greeting_wrapper {
    display: flex;
    flex-direction: column-reverse;
  }

  .greeting_content {
    width: 35.5rem;
    margin-top: 3.0rem;
    margin-left: 1.0rem;
    font-family: var(--NotoSans);
    font-size: 1.6rem;
    line-height: calc(27em / 18);
    color: #000;
    font-weight: 300;
  }

  .greeting_img {
    margin-top: 3.475rem;
    margin-left: 1.0rem;
    width: 35.5rem;
    height: 38.0rem;
    object-fit: cover;
    vertical-align: bottom;
  }

  .greeting_text {
    width: 35.5rem;
    margin-top: 0rem;
    margin-left: 1.0rem;
    font-family: var(--NotoSans);
    font-size: 1.8rem;
    line-height: calc(27em / 18);
    font-weight: 300;
    color: #000;
  }

  .greeting_name {
    margin-top: 10rem;
    width: 35.5rem;
    margin-left: 0rem;
    font-family: var(--NotoSans);
    line-height: calc(27em / 18);
    font-weight: 300;
    text-align: right;
    font-size: 1.8rem;
  }

  .sign_img {
    width: 20.0rem;
    height: 7.1rem;
    object-fit: cover;
    vertical-align: bottom;
    margin-top: 2.5rem;
    margin-left: 16.5rem;
  }

  /*---------- staff_content ----------*/

  .staff_content {
    margin-top: 5.0rem;
    padding-top: 6.025rem;
    width: 37.5rem;
    background-color: #F1FAF2;
    padding-bottom: 6.0rem;
  }

  .staff_wrapper {
    margin-left: 5.8rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3rem;
  }

  .staff_img {
    margin-top: 3.075rem;
    width: 26.0rem;
    height: 26.0rem;
    object-fit: cover;
    vertical-align: bottom;
  }

  .staff_name {
    text-align: center;
    width: 26.1rem;
    margin-top: 1.0rem;
    font-size: 2.2rem;
    font-weight: 600;
    font-family: var(--NotoSans);
    line-height: calc(34em / 22);
  }

  .staff_kana {
    text-align: center;
    width: 26.1rem;
    font-size: 2.2rem;
    font-weight: 600;
    font-family: var(--NotoSans);
    line-height: calc(34em / 22);
    color: #26A64D;
  }

  .staff_title {
    text-align: center;
    width: 26.1rem;
    font-size: 1.6rem;
    font-weight: 600;
    font-family: var(--NotoSans);
    line-height: calc(34em / 16);
  }

  .staff_text {
    margin-top: 1.9rem;
    font-size: 1.6rem;
    font-weight: 300;
    font-family: var(--NotoSans);
    line-height: calc(24em / 16);
    width: 26.0rem;
    margin-bottom: 4.0rem;
  }


  /*---------- slick ----------*/

  .container {
    background-color: #F5F5F5;
    position: relative;
  }

  .slider {
    padding-top: 3.0rem;
    padding-bottom: 3.0rem;
    margin: 0 auto 0;
    max-width: 37.5rem;
    width: 70%;
    position: relative;
  }

  button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
  }

  .prev_arrow {
    display: inline-block;
    vertical-align: middle;
    color: #26A64D;
    line-height: 1;
    position: relative;
    width: 3.5em;
    height: 3.5em;
    border: 0.075em solid currentColor;
    background: currentColor;
    border-radius: 50%;
    box-sizing: content-box;
  }

  .prev_arrow::before {
    content: '';
    color: #fff;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 1.18em 1.31177em;
    border-right-color: currentColor;
    border-left: 0;
    transform: translateX(-15%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }

  .next_arrow {
    display: inline-block;
    vertical-align: middle;
    color: #26A64D;
    line-height: 1;
    position: relative;
    width: 3.5em;
    height: 3.5em;
    border: 0.075em solid currentColor;
    background: currentColor;
    border-radius: 50%;
    box-sizing: content-box;
  }

  .next_arrow::before {
    content: '';
    color: #fff;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 1.18em 1.31177em;
    border-left-color: currentColor;
    border-right: 0;
    transform: translateX(15%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }

  .slide_arrow {
    bottom: 0;
    cursor: pointer;
    margin: auto;
    position: absolute;
    top: 0;
  }

  .prev_arrow {
    left: -4rem;
  }

  .next_arrow {
    right: -4rem;
  }

  .mission_text {
    padding-left: 1rem;
  }

  .greeting_content_mission {
    width: 35rem;
    font-size: 1.4rem;
  }

  .content_title02 {
    font-weight: 600;
    width: 30rem;
  }

  .mission_text02 {
    font-size: 1.6rem;
  }

  .silhouette_img {
    object-fit: contain;
  }
}