/* ------------------------------------------
  mv
------------------------------------------ */

.mv_txt_container {
  position: absolute;
  top: 13.5%;
  left: 10.5%;
}

.mv_txt_main_inner {
  font-weight: 600 !important;
  font-size: 3.8vw;
  letter-spacing: 0.1em;
  line-height: 1.57;
  margin-bottom: 30px;
}

.mv_txt_sub_inner {
  font-size: max(1.06vw, 16px);
  line-height: 2.5;
  letter-spacing: 0.15em;
}

.mv_person {
  position: absolute;
  width: 48.8%;
  bottom: 15.71%;
  right: -1%;
}

.mv_ob1 {
  position: absolute;
  width: 6%;
  left: 2.6%;
  top: 6.857%;
  opacity: 0.6;
}

.mv_ob2 {
  position: absolute;
  width: 33%;
  right: 18.2%;
  top: -7.4%;
  opacity: 0.6;
}

@media screen and (max-width: 767px) {
  .mv_bg {
    position: static;
    width: 100%;
    border-radius: 0;
    margin-bottom: 44px;
  }
  .mv_txt_container {
    position: static;
  }
  .mv_person {
    width: 73.2%;
    top: 8.2%;
    right: -5.84%;
  }
  .mv_txt_main_inner {
    font-size: 6.666vw;
    margin-bottom: 20px;
    position: static;
  }
  .mv_txt_sub_inner {
    font-size: 3.4666vw;
    letter-spacing: 0;
    position: static;
  }
  .mv_ob1 {
    width: 12%;
    top: 14.25%;
    left: 4.2666%;
  }
  .mv_ob2 {
    width: 61.7333%;
    top: -5.3535%;
  }
  .mv_ob3 {
    position: absolute;
    width: 18.5333%;
    left: 4.2666%;
    top: 27.343%;
  }
  .mv_ob4 {
    position: absolute;
    width: 34%;
    right: -1.06%;
    top: 34.12%;
  }
  .mv_txt_main_inner p {
    font-weight: 600;
    line-height: 1.64;
  }
}

/* ------------------------------------------
  interview
------------------------------------------ */

.top_section_ttl {
  margin-left: 9.6%;
  font-family: "din-2014", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 5.666vw;
  line-height: 100%;
  margin-bottom: 10.6666%;
  margin-top: 50px;
}

.top_section_ttl span {
  margin-left: 10px;
  font-size: 1.1333333vw;
  font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .top_section_ttl {
    font-size: 8vw;
    margin-top: 0;
    margin-left: 6.8%;
    margin-bottom: 50px;
  }
  .top_section_ttl span {
    font-size: 3.2vw;
  }
}

/* ------------------------------------------
  about us
------------------------------------------ */

.top_about {
  position: relative;
  padding-bottom: 18%;
  overflow: hidden;
}

.top_about_ob1 {
  position: absolute;
  width: 44.184%;
  left: -16.125%;
  top: 9%;
}

.top_about_ob2 {
  position: absolute;
  width: 21%;
  right: -7.125%;
  top: 0;
}

.top_about .top_section_ttl {
  text-align: center;
  margin-left: 0;
  margin-bottom: 3%;
}

.top_about_conainer {
  max-width: 80%;
  width: 100%;
  margin: 0 auto;
}

.top_about_conainer_content_inner {
  display: flex;
  gap: 1px;
}

.top_about_conainer_content_item {
  width: 33.3333333%;
  height: auto;
  aspect-ratio: 4 / 3.6;
  position: relative;
  overflow: hidden;
}

.top_about_conainer_content_item a {
  transition: 0.3s;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.top_about_conainer_content_item a:hover {
  opacity: 1;
}

.top_about_conainer_content_item a:hover * {
  opacity: 1;
}

.top_about_conainer_content_item_bg {
  transition: 0.3s;
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
}

.top_about_conainer_content_item a:hover .top_about_conainer_content_item_bg {
  transform: scale(1.1);
}

.top_about_conainer_content_item:nth-child(1) .top_about_conainer_content_item_bg {
  width: 100%;
}

.top_about_conainer_content_item_txt {
  font-size: max(1.333vw, 20px);
  color: #fff;
  font-weight: 600;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.top_about_more_arrow {
  position: absolute;
  width: 7.2%;
  bottom: 2.9166%;
  right: 3.2125%;
}

@media screen and (max-width: 767px) {
  .top_about_conainer_content_inner {
    display: block;
  }
  .top_about_conainer_content_item {
    width: 100%;
    aspect-ratio: 2.8 / 1;
    margin-bottom: 6%;
  }
  .top_about_conainer_content_item_txt {
    font-size: 3.73333vw;
    width: 100%;
  }
}

/* ------------------------------------------
  about us
------------------------------------------ */

.top_message {
  position: relative;
  margin-bottom: 12%;
}

.top_message_btn_bg {
  position: absolute;
  width: 36.63333%;
  right: 0;
  top: -8%;
  z-index: 2;
}

.top_message_container {
  max-width: 80%;
  width: 100%;
  margin: 0 auto;
}

.top_message_container_link {
  display: block;
}

.top_message_leader_txt {
  font-size: 1.86666vw;
  letter-spacing: 0.4em;
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: italic;
  margin-bottom: 1%;
}

.top_message_leader_img {
  width: 74.16666%;
}

.top_message_ttl_inner {
  position: absolute;
  right: 9%;
  top: 6%;
  text-align: right;
  z-index: 3;
}

.top_message_mail_ttl {
  font-size: 5.6666vw;
  color: #fff;
  font-family: "din-2014", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.02em;
  line-height: 100%;
}

.top_message_sub_ttl {
  display: block;
  font-size: 1.13333333vw;
  font-weight: 600;
}

.top_message_txt {
  font-size: 1.4vw;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 2.04;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .top_message_container {
    max-width: 100%;
  }
  .top_message_leader_img {
    width: 100%;
  }
  .top_message_btn_bg {
    width: 53%;
    left: -4.06666%;
    top: -13%;
  }
  .top_message_ttl_inner {
    left: 7.28%;
    top: -4px;
    display: inline-block;
    text-align: left;
  }
  .top_message_mail_ttl {
    font-size: 8vw;
    margin-bottom: 7%;
  }
  .top_message_sub_ttl {
    font-size: 3.2vw;
    line-height: 100%;
    margin-top: 4%;
  }
  .top_message_txt {
    color: #fff;
    font-size: 3.46666vw;
    line-height: 1.8217;
  }
  .top_message_leader_txt {
    font-size: 3.6vw;
    text-align: right;
    margin-right: 6.9333%;
  }
}