@charset "UTF-8";

/* main colors */
/*トップページのスタイル*/
.mv {
  position: relative;
  width: 100%;
  z-index: 1;
}



.mv .mv_images {
  position: relative;
  width: 100%;
}

.mv .mv_picture {
  display: block;
  width: 100%;
}

.mv .mv_picture img {
  display: block;
  width: 100%;
  height: auto;
}


.mv .mv_picture_01 {
  position: relative;
  z-index: 1;
  animation: mv_switch_01 1.6s infinite step-end;
}



.mv .mv_picture_02 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  animation: mv_switch_02 1.6s infinite step-end;
}



@keyframes mv_switch_01 {

  0%,
  49.999% {
    opacity: 1;
  }

  50%,
  100% {
    opacity: 0;
  }
}



@keyframes mv_switch_02 {

  0%,
  49.999% {
    opacity: 0;
  }

  50%,
  100% {
    opacity: 1;
  }
}


.mv_float {
  position: absolute;
  width: 6.923076923076923vw;
    top: 80vw;
    right: 8.461538461538462vw;
  z-index: 4;
  pointer-events: none;
  animation: mv_float 3s ease-in-out infinite;
}

@media (min-width: 920px) {
  .mv_float {
    width: 4.571428571428571vw;
    top: 6.214285714285714vw;
    right: 13.5vw;
  }
}

.mv_float img {
  display: block;
  width: 100%;
  height: auto;
}

.mv_float {
  animation: mv_float 4.5s infinite;
}

@keyframes mv_float {
  0% {
    transform: translateY(0);
    animation-timing-function: cubic-bezier(0.37, 0, 0.63, 1);
  }

  55% {
    transform: translateY(80px);
    animation-timing-function: cubic-bezier(0.37, 0, 0.63, 1);
  }

  100% {
    transform: translateY(0);
  }
}

@media (max-width: 919px) {
  @keyframes mv_float {
    0% {
      transform: translateY(0);
      animation-timing-function: cubic-bezier(0.37, 0, 0.63, 1);
    }

    55% {
      transform: translateY(40px);
      animation-timing-function: cubic-bezier(0.37, 0, 0.63, 1);
    }

    100% {
      transform: translateY(0);
    }
  }
}


.mv .mv_catch {
  position: absolute;
  z-index: 3;
}

@media (min-width: 920px) {
  .mv .mv_catch {
    left: 64px;
    bottom: 20px;
    color: #fff;
  }
}

@media (max-width: 919px) {
  .mv .mv_catch {
    left: 50%;
    transform: translateX(-50%);
    top: 25.64102564102564vw;
    color: #323232;
    width: 100%;
  }
}



.mv .mv_catch_ttl {
  font-size: 8.717948717948717vw;
  line-height: 1.3;
  text-align: center;
  font-weight: 700;
  margin-bottom: 6.153846153846154vw;
}

@media (min-width: 920px) {
  .mv .mv_catch_ttl {
    font-size: 3.428571428571429vw;
    margin-bottom: 24px;
    text-align: left;
  }
}


.mv .mv_catch_txt {
  font-size: 3.8461538461538463vw;
  line-height: 1.3;
  font-weight: 700;
  text-align: center;
}

@media (min-width: 920px) {
  .mv .mv_catch_txt {
    font-size: 1.0714285714285714vw;
    text-align: left;
    line-height: 1.75;
  }
}




.home_company {
  position: relative;
  /* min-height: 1084px; */
  padding: 102px 0 80px;
  overflow-x: clip;
  margin-top: -70px;

}


@media (min-width: 920px) {
  .home_company {
    padding: 34vw 0 0;
    margin-top: -25.84286vw;
  }
}

@media (max-width: 919px) {
  .home_company {
    z-index: 1;
  }
}

.home_company_inr {
  position: relative;

}

@media (min-width: 920px) {
  .home_company_inr {

    /* bottom: clamp(-84.8571428571px, -4.7142857143vw, -66px); */
    /* bottom: max(-200px, -11.11111111111111vw); */
    bottom: -82px;
  }
}

.home_company::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("../img/home/company_bg.jpg");
  background-image: -webkit-image-set(url("../img/home/company_bg.jpg") 1x, url("../img/home/company_bg@2x.jpg") 2x);
  background-image: image-set(url("../img/home/company_bg.jpg") 1x, url("../img/home/company_bg@2x.jpg") 2x);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}

@media (max-width: 919px) {
  .home_company::before {
    -webkit-mask-image: url("../img/home/company_wave.svg"), linear-gradient(#000 0 0);
    mask-image: url("../img/home/company_wave.svg"), linear-gradient(#000 0 0);
    -webkit-mask-size: 100% 11.4285714286vw, 100% calc(100% - 11.4285714286vw + 1px);
    mask-size: 100% 11.4285714286vw, 100% calc(100% - -4.2857142857vw + 1px);
    -webkit-mask-position: top center, 0 calc(11.4285714286vw - 1px);
    mask-position: top center, 0 calc(11.4285714286vw - 1px);
  }
}


.home_company>* {
  position: relative;
  z-index: 1;
}

.home_company_body {
  display: flex;
  justify-content: space-between;
  margin-bottom: 110px;
  position: relative;
}

.home_company_body_bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: -1;
}

@media (min-width: 920px) {
  .home_company_body_bg {
    width: max-content;
  }
}

@media (max-width: 919px) {
  .home_company_body {
    display: flex;
    flex-direction: column;
    margin-bottom: 72px;
  }

  .home_company_lead {
    display: contents;
  }

  .home_company_catch {
    order: 1;
  }

  .home_company_txt {
    order: 2;
  }

  .home_company_lead .btn {
    order: 3;
    margin-top: 32px;
  }

  .home_company_body_bg {
    top: -26px;
    width: 100vw;
    max-width: 580px;
  }
}

.home_company_catch {
  font-size: 32px;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  margin-bottom: 24px;
  position: relative;
  width: fit-content;
}

@media (min-width: 920px) {
  .home_company_catch {
    font-size: clamp(40px, 2.8571428571vw, 51.4285714286px);
    margin-bottom: clamp(40px, 2.8571428571vw, 51.4285714286px);
    width: auto;
  }
}

.home_company_catch_illust_01 {
  position: absolute;
  left: clamp(-167.1428571429px, -9.2857142857vw, -130px);
  top: clamp(-15.4285714286px, -0.8571428571vw, -12px);
  z-index: -1;
}

@media (max-width: 919px) {
  .home_company_catch_illust_01 {
    width: 48px;
    top: -64px;
    left: -22px;
  }
}

.home_company_catch_illust_02 {
  position: absolute;
  right: clamp(10px, 0.7142857143vw, 12.8571428571px);
  top: clamp(-105.4285714286px, -5.8571428571vw, -82px);
  z-index: -1;
}

@media (max-width: 919px) {
  .home_company_catch_illust_02 {
    width: 66px;
    right: -16px;
    top: -34px;
  }
}

.home_company_catch_illust_03 {
  position: absolute;
  left: clamp(-218.5714285714px, -12.1428571429vw, -170px);
  bottom: clamp(-156.8571428571px, -8.7142857143vw, -122px);
  z-index: -1;
}

@media (max-width: 919px) {
  .home_company_catch_illust_03 {
    left: -54px;
    bottom: -20px;
    width: 74px;
  }
}

.home_company_catch_illust_04 {
  position: absolute;
  right: clamp(46px, 3.2857142857vw, 59.1428571429px);
  bottom: clamp(-257.1428571429px, -14.2857142857vw, -200px);
  z-index: -1;
}

@media (max-width: 919px) {
  .home_company_catch_illust_04 {
    width: 60px;
    right: -70px;
    bottom: -22px;
  }
}

@media (min-width: 920px) {
  .home_company_lead {
    width: 47.1092077088%;
  }
}

.home_company_txt {
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 26px;
}

@media (min-width: 920px) {
  .home_company_txt {
    width: 45.3961456103%;
  }
}

.home_company_txt p {
  line-height: 1.5;
  font-weight: 700;
}

@media (min-width: 920px) {
  .home_company_txt p {
    line-height: 1.8;
  }
}

.home_company_nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 56px 24px;
  max-width: 500px;
  margin: 0 auto;
}

@media (min-width: 920px) {
  .home_company_nav {
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(24px, 1.7142857143vw, 30.8571428571px);
    max-width: none;
  }
}

.home_company_nav_item {
  flex: 1;
  position: relative;
}

.home_company_nav_item::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -36px;
  width: 99px;
  height: 39px;
  transform: translateX(-50%);
  background-image: url("../img/home/company_nav_illust.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

@media (min-width: 920px) {
  .home_company_nav_item::before {
    top: clamp(-90px, -5vw, -70px);
    width: clamp(200px, 14.2857142857vw, 257.1428571429px);
    height: clamp(78px, 5.5714285714vw, 100.2857142857px);
  }
}

.home_company_nav_item_bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.home_company_nav_item_bottom_txt {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  color: #008bff;
  transform: translate3d(0, 0, 0);
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  backface-visibility: hidden;
}

@media (min-width: 920px) {
  .home_company_nav_item_bottom_txt {
    font-size: clamp(20px, 1.4285714286vw, 25.7142857143px);
  }
}

.home_company_nav_item_bottom_icon {
  position: relative;
  z-index: 2;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  border-radius: 50%;
  background-color: #77dfdb;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  will-change: transform;
  backface-visibility: hidden;
  contain: paint;
}

@media (min-width: 920px) {
  .home_company_nav_item_bottom_icon {
    width: clamp(20px, 1.4285714286vw, 25.7142857143px);
    height: clamp(20px, 1.4285714286vw, 25.7142857143px);
  }
}

.home_company_nav_item_bottom_icon::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background-color: #4aa3f2;
  transform-origin: center;
  transform: translate3d(0, 0, 0) scale(0.4);
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  backface-visibility: hidden;
}

.home_company_nav_item_icon {
  text-align: center;
  position: relative;
  margin-bottom: clamp(8px, 0.5714285714vw, 10.2857142857px);
}

.home_company_nav_item_icon .icon_item {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: clamp(16px, 1.1428571429vw, 20.5714285714px);
}

@media (max-width: 919px) {
  .home_company_nav_item_icon .icon_item_company {
    width: 29px;
  }
}

@media (max-width: 919px) {
  .home_company_nav_item_icon .icon_item_human {
    width: 21px;
  }
}

.home_company_nav_item_icon .icon_item_helmet {
  bottom: clamp(34px, 2.4285714286vw, 43.7142857143px);
}

@media (max-width: 919px) {
  .home_company_nav_item_icon .icon_item_helmet {
    width: 32px;
    bottom: 20px;
  }
}

@media (max-width: 919px) {
  .home_company_nav_item_icon .icon_item_environment {
    width: 25px;
  }
}

@media (max-width: 919px) {
  .home_company_nav_item_icon .icon_bg {
    width: 60px;
    margin: 0 auto;
  }
}

.home_company_nav_item_link {
  display: block;
  padding: 30px 16px 10px;
  border-radius: 8px;
  overflow: hidden;
  background-image: url("../img/home/company_link_bg.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #fff;
}

@media (min-width: 920px) {
  .home_company_nav_item_link {
    padding: clamp(38px, 2.7142857143vw, 48.8571428571px) clamp(24px, 1.7142857143vw, 30.8571428571px) clamp(24px, 1.7142857143vw, 30.8571428571px);
  }
}

.home_company_nav_item_link:hover .home_company_nav_item_bottom_txt {
  transform: translate3d(10px, 0, 0);
}

.home_company_nav_item_link:hover .home_company_nav_item_bottom_icon::before {
  transform: translate3d(0, 0, 0) scale(1.1);
}

.home_data {
  position: relative;
  padding: 78px 0 174px;
}

@media (min-width: 920px) {
  .home_data {
    padding: clamp(187px, 13.3571428571vw, 240.4285714286px) 0 clamp(136px, 9.7142857143vw, 174.8571428571px);
  }
}

.home_data::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("../img/home/beige_bg.png");
  background-image: -webkit-image-set(url("../img/home/beige_bg.png") 1x, url("../img/home/beige_bg@2x.png") 2x);
  background-image: image-set(url("../img/home/beige_bg.png") 1x, url("../img/home/beige_bg@2x.png") 2x);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-mask-image: url("../img/home/data_wave.svg"), linear-gradient(#000 0 0);
  mask-image: url("../img/home/data_wave.svg"), linear-gradient(#000 0 0);
  -webkit-mask-size: 100% 12.1428571429vw, 100% calc(100% - 12.1428571429vw + 1px);
  mask-size: 100% 12.1428571429vw, 100% calc(100% - 12.1428571429vw + 1px);
  -webkit-mask-position: bottom center, 0 0;
  mask-position: bottom center, 0 0;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
  pointer-events: none;
}

.home_data>* {
  position: relative;
  z-index: 1;
}

.home_data_illust {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -46px;
  width: 100%;
  padding: 0 20px;
  max-width: 420px;
}

@media (min-width: 920px) {
  .home_data_illust {
    left: auto;
    transform: none;
    width: clamp(358px, 25.5714285714vw, 460.2857142857px);
    right: clamp(120px, 8.5714285714vw, 154.2857142857px);
    bottom: clamp(-7.7142857143px, -0.4285714286vw, -6px);
    padding: 0;
    max-width: none;
  }
}

.home_data_illust img {
  width: 100%;
}

.home_data_body {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 919px) {
  .home_data_body {
    display: flex;
    flex-direction: column;
  }

  .home_data_txtArea {
    display: contents;
  }

  .home_data .section_ttl {
    order: 1;
  }

  .home_data_img {
    order: 2;
    margin-bottom: 24px;
  }

  .home_data_img img {
    width: 100%;
    height: auto;
  }

  .home_data_txt {
    order: 3;
    margin-bottom: 40px;
  }

  .home_data .btn {
    order: 4;
  }
}

@media (min-width: 920px) {
  .home_data_img {
    width: 48.6206896552%;
  }
}

@media (min-width: 920px) {
  .home_data_txtArea {
    width: 44.4827586207%;
  }
}

.home_data_txt {
  margin-bottom: clamp(40px, 2.8571428571vw, 51.4285714286px);
}

.home_interview {
  overflow: hidden;
  background-image: url("../img/home/dot_bg.png");
  background-image: -webkit-image-set(url("../img/home/dot_bg.png") 1x, url("../img/home/dot_bg@2x.png") 2x);
  background-image: image-set(url("../img/home/dot_bg.png") 1x, url("../img/home/dot_bg@2x.png") 2x);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 372px 0 189px;
  margin-top: clamp(-321.4285714286px, -17.8571428571vw, -250px);
}

@media (min-width: 920px) {
  .home_interview {
    padding: clamp(336px, 24vw, 432px) 0 clamp(189px, 13.5vw, 243px);
  }
}

.home_interview_body {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 919px) {
  .home_interview .section_ttl_en {
    height: 84px;
  }

  .home_interview_inr {
    display: flex;
    flex-direction: column;
  }

  .home_interview_body {
    display: contents;
  }

  .home_interview_txtArea {
    display: contents;
  }

  .home_interview .section_ttl {
    order: 1;
  }

  .home_interview .home_data_txt {
    order: 2;
  }

  .home_interview_slide {
    order: 3;
    width: 100%;
  }

  .home_interview .btn {
    order: 4;
  }
}

@media (min-width: 920px) {
  .home_interview_txtArea {
    width: 24.5689655172%;
  }
}

.home_interview_slide {
  overflow: visible;
  margin-bottom: 40px;
}

@media (min-width: 920px) {
  .home_interview_slide {
    width: 68.621%;
    clip-path: inset(0 -100vw 0 0);
    margin-bottom: 0;
  }
}

.home_interview_slide_link {
  display: block;
  border-radius: clamp(24px, 1.7142857143vw, 30.8571428571px);
  padding: clamp(24px, 1.7142857143vw, 30.8571428571px);
  min-height: clamp(367px, 26.2142857143vw, 471.8571428571px);
  background-color: #77dfdb;
  transition: transform 0.3s ease;
}

.home_interview_slide_link:hover .home_interview_slide_img img {
  transform: scale(1.05);
}

.home_interview_slide_link:hover .home_interview_slide_more_dot {
  transform: scale(1.5);
}

.home_interview_slide .swiper {
  margin-bottom: 40px;
}

@media (min-width: 920px) {
  .home_interview_slide .swiper {
    margin-bottom: clamp(64px, 4.5714285714vw, 82.2857142857px);
  }
}

.home_interview_slide .swiper-slide:nth-child(even) .home_interview_slide_link {
  background-color: #4daeff;
}

.home_interview_slide_img {
  overflow: hidden;
  border-radius: clamp(16px, 1.1428571429vw, 20.5714285714px);
  aspect-ratio: 272/181;
  margin-bottom: clamp(24px, 1.7142857143vw, 30.8571428571px);
}

.home_interview_slide_img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
  will-change: transform;
}

.home_interview_slide_name {
  font-size: clamp(20px, 1.4285714286vw, 25.7142857143px);
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: clamp(8px, 0.5714285714vw, 10.2857142857px);
}

.home_interview_slide_job {
  font-size: clamp(12px, 0.8571428571vw, 15.4285714286px);
  line-height: 1.6;
}

.home_interview_slide_more {
  position: absolute;
  right: clamp(-1.2857142857px, -0.0714285714vw, -1px);
  bottom: clamp(-1.2857142857px, -0.0714285714vw, -1px);
  z-index: 2;
  width: clamp(136px, 9.7142857143vw, 174.8571428571px);
  height: clamp(55px, 3.9285714286vw, 70.7142857143px);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: clamp(24px, 1.7142857143vw, 30.8571428571px);
  padding-bottom: 14px;
  background-color: #fff;
  mask-image: url("../img/common/card_more_bg.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100% 100%;
  -webkit-mask-image: url("../img/common/card_more_bg.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: 100% 100%;
}

@media (min-width: 920px) {
  .home_interview_slide_more {
    padding-bottom: clamp(12px, 0.8571428571vw, 15.4285714286px);
  }
}

.home_interview_slide_more_txt {
  font-size: clamp(12px, 0.8571428571vw, 15.4285714286px);
  font-weight: 700;
  line-height: 1;
}

.home_interview_slide_more_dot {
  width: clamp(8px, 0.5714285714vw, 10.2857142857px);
  height: clamp(8px, 0.5714285714vw, 10.2857142857px);
  border-radius: 50%;
  background-color: #4daeff;
  transition: transform 0.3s ease;
  margin-bottom: clamp(2px, 0.1428571429vw, 2.5714285714px);
}

.home_interview_slide .swiper {
  overflow: visible;
}

.home_interview_slide .home_interview_progress {
  position: relative;
  flex: 1;
  height: 4px;
  width: 100%;
}

@media (min-width: 920px) {
  .home_interview_slide .home_interview_progress {
    height: clamp(8px, 0.5714285714vw, 10.2857142857px);
  }
}

.home_interview_slide .swiper-controller {
  display: flex;
  flex-direction: column;
  gap: 28px;
  align-items: center;
}

@media (min-width: 920px) {
  .home_interview_slide .swiper-controller {
    flex-direction: row;
    gap: clamp(40px, 2.8571428571vw, 51.4285714286px);
  }
}

.home_interview_slide .home_interview_progress::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 2px;
  transform: translateY(-50%);
  border-radius: 999px;
  background-color: #d9d9d9;
}

@media (min-width: 920px) {
  .home_interview_slide .home_interview_progress::before {
    height: clamp(3px, 0.2142857143vw, 3.8571428571px);
  }
}

.home_interview_slide .home_interview_progress_fill {
  position: absolute;
  left: 0;
  top: 50%;
  width: 0;
  height: clamp(5px, 0.3571428571vw, 6.4285714286px);
  transform: translateY(-50%);
  border-radius: 999px;
  background-color: #2f80ed;
  transition: width 0.6s ease;
}

.home_interview_slide .button_wrap {
  display: flex;
  gap: 16px;
  flex-shrink: 0;
}

@media (min-width: 920px) {
  .home_interview_slide .button_wrap {
    gap: clamp(8px, 0.5714285714vw, 10.2857142857px);
  }
}

.home_interview_slide .swiper-button-prev,
.home_interview_slide .swiper-button-next {
  position: static;
  margin: 0;
  width: clamp(40px, 2.8571428571vw, 51.4285714286px);
  height: clamp(40px, 2.8571428571vw, 51.4285714286px);
  background-color: #4daeff;
  border: 1px solid #4daeff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

.home_interview_slide .swiper-button-prev::after,
.home_interview_slide .swiper-button-next::after {
  content: "";
  display: block;
  width: clamp(16px, 1.1428571429vw, 20.5714285714px);
  height: clamp(16px, 1.1428571429vw, 20.5714285714px);
  background-color: #fff;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  transition: background-color 0.3s ease;
}

.home_interview_slide .swiper-button-prev:hover,
.home_interview_slide .swiper-button-next:hover {
  background-color: #fff;
}

.home_interview_slide .swiper-button-prev:hover::after,
.home_interview_slide .swiper-button-next:hover::after {
  background-color: #4daeff;
}

.home_interview_slide .swiper-button-prev.swiper-button-disabled,
.home_interview_slide .swiper-button-next.swiper-button-disabled {
  background-color: #d1d1d1;
  border-color: #d1d1d1;
  opacity: 1;
  pointer-events: none;
}

.home_interview_slide .swiper-button-prev.swiper-button-disabled::after,
.home_interview_slide .swiper-button-next.swiper-button-disabled::after {
  background-color: #fff;
}

.home_interview_slide .swiper-button-prev::after {
  mask-image: url("../img/home/arrow_prev.svg");
  -webkit-mask-image: url("../img/home/arrow_prev.svg");
}

.home_interview_slide .swiper-button-next::after {
  mask-image: url("../img/home/arrow_next.svg");
  -webkit-mask-image: url("../img/home/arrow_next.svg");
}

.home_interview_slide .swiper-button-prev::after,
.home_interview_slide .swiper-button-next::after {
  font-size: clamp(16px, 1.1428571429vw, 20.5714285714px);
}

.home_interview_slide .swiper-slide {
  width: 320px;
  position: relative;
}

@media (min-width: 920px) {
  .home_interview_slide .swiper-slide {
    width: clamp(320px, 22.8571428571vw, 411.4285714286px);
  }
}

.home_interview_slide .swiper-slide img {
  width: 100%;
}

.home_interview_slide_item {
  display: block;
  width: 250px;
}

@media (min-width: 920px) {
  .home_interview_slide_item {
    width: clamp(320px, 22.8571428571vw, 411.4285714286px);
  }
}

.home_interview .swiper-button-prev.swiper-button-disabled,
.home_interview .swiper-button-next.swiper-button-disabled {
  pointer-events: none;
  cursor: default;
}

.home_job {
  position: relative;
  overflow-x: clip;
  min-height: clamp(720px, 51.4285714286vw, 925.7142857143px);
  padding: 20.7857142857vw 0 11.4285714286vw;
  z-index: 1;
}

.home_job::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("../img/home/job_beige_bg.png");
  background-image: -webkit-image-set(url("../img/home/job_beige_bg.png") 1x, url("../img/home/job_beige_bg@2x.png") 2x);
  background-image: image-set(url("../img/home/job_beige_bg.png") 1x, url("../img/home/job_beige_bg@2x.png") 2x);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-mask-image: url("../img/home/job_wave.svg"), linear-gradient(#000 0 0);
  mask-image: url("../img/home/job_wave.svg"), linear-gradient(#000 0 0);
  -webkit-mask-size: 100% 8.5714285714vw, 100% calc(100% - 8.5714285714vw + 1px);
  mask-size: 100% 8.5714285714vw, 100% calc(100% - 8.5714285714vw + 1px);
  -webkit-mask-position: bottom center, 0 0;
  mask-position: bottom center, 0 0;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
  pointer-events: none;
}

.home_job .section_ttl_en {
  height: 40px;
}

@media (min-width: 920px) {
  .home_job .section_ttl_en {
    height: clamp(104px, 7.4285714286vw, 133.7142857143px);
  }
}

.home_job>* {
  position: relative;
  z-index: 1;
}

.home_job_top {
  padding-left: 20px;
  position: absolute;
  top: -120px;
  left: 0;
  width: 100%;
}

@media (min-width: 920px) {
  .home_job_top {
    display: flex;
    justify-content: space-between;
    padding-left: clamp(24px, 1.7142857143vw, 30.8571428571px);
    top: -7.7857142857vw;
  }
}

.home_job_gallery {
  display: flex;
  gap: 0.5714285714vw;
  padding-top: clamp(24px, 1.7142857143vw, 30.8571428571px);
}

@media (max-width: 919px) {
  .home_job_gallery {
    display: none;
  }
}

.home_job_gallery_item {
  width: 24.2857142857vw;
  max-width: clamp(420px, 30vw, 540px);
}

.home_job_gallery_item:first-child {
  padding-top: 2.8571428571vw;
}

.home_job_gallery_item img {
  display: block;
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}

.home_job_illust {
  position: absolute;
  right: -10px;
  width: 480px;
}

@media (min-width: 920px) {
  .home_job_illust {
    position: relative;
    right: -5vw;
    width: 50.7142857143vw;
  }
}

.home_job_illust img {
  width: 100%;
}

.home_job_body {
  display: flex;
  flex-direction: column;
}

@media (min-width: 920px) {
  .home_job_body {
    flex-direction: row;
    justify-content: space-between;
  }
}

@media (min-width: 920px) {
  .home_job_head {
    width: 17.2413793103%;
    position: sticky;
    top: clamp(40px, 2.8571428571vw, 51.4285714286px);
  }
}

.home_job_tab {
  display: flex;
  align-items: flex-start;
  gap: clamp(12px, 0.8571428571vw, 15.4285714286px);
  margin-top: clamp(40px, 2.8571428571vw, 51.4285714286px);
  flex-wrap: wrap;
}

@media (min-width: 920px) {
  .home_job_tab {
    flex-direction: column;
  }
}

.home_job_tab_btn {
  appearance: none;
  border: 1px solid #77dfdb;
  border-radius: 999px;
  background-color: #77dfdb;
  padding: 7px 12px;
  font-size: clamp(12px, 0.8571428571vw, 15.4285714286px);
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
  color: #323232;
}

@media (min-width: 920px) {
  .home_job_tab_btn {
    padding: clamp(7px, 0.5vw, 9px) clamp(16px, 1.1428571429vw, 20.5714285714px);
  }
}

.home_job_tab_btn.is-active {
  background-color: transparent;
  color: #77dfdb;
}

.home_job_tab_btn:hover {
  background-color: transparent;
  color: #77dfdb;
}

@media (min-width: 920px) {
  .home_job_content {
    width: 68.9655172414%;
  }
}

.home_job_block {
  display: block;
}

.home_job_block[hidden] {
  display: none;
}

.home_job_block.is-active {
  animation: jobTabFade 0.8s ease forwards;
}

@keyframes jobTabFade {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.home_job_block_ttl {
  display: flex;
  align-items: center;
  padding: 14px 16px;
  border-radius: clamp(4px, 0.2857142857vw, 5.1428571429px);
  background-color: #77dfdb;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: clamp(24px, 1.7142857143vw, 30.8571428571px);
}

@media (min-width: 920px) {
  .home_job_block_ttl {
    font-size: clamp(24px, 1.7142857143vw, 30.8571428571px);
    padding: clamp(12px, 0.8571428571vw, 15.4285714286px) clamp(16px, 1.1428571429vw, 20.5714285714px);
  }
}

.home_job_block_ttl::before {
  content: "";
  width: 2px;
  height: 24px;
  background-color: #fff;
  margin-right: 12px;
  flex-shrink: 0;
}

@media (min-width: 920px) {
  .home_job_block_ttl::before {
    width: clamp(2px, 0.1428571429vw, 2.5714285714px);
    height: clamp(24px, 1.7142857143vw, 30.8571428571px);
    margin-right: clamp(16px, 1.1428571429vw, 20.5714285714px);
  }
}

.home_job_table {
  background-color: #fff;
  border-radius: clamp(8px, 0.5714285714vw, 10.2857142857px);
  padding: clamp(40px, 2.8571428571vw, 51.4285714286px);
}

.home_job_table_row {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(24px, 1.7142857143vw, 30.8571428571px);
  padding: clamp(16px, 1.1428571429vw, 20.5714285714px) 0;
  border-bottom: 1px dashed #d1d1d1;
  margin: 0;
  align-items: center;
}

@media (min-width: 920px) {
  .home_job_table_row {
    grid-template-columns: clamp(136px, 9.7142857143vw, 174.8571428571px) 1fr;
  }
}

.home_job_table_row:first-child {
  padding-top: 0;
}

.home_job_table_row dt {
  font-weight: 700;
}

.home_job_table_row dd {
  margin: 0;
  text-align: justify;
}

.home_job_table_row dd ul li {
  position: relative;
  padding-left: 16px;
}

@media (min-width: 920px) {
  .home_job_table_row dd ul li {
    padding-left: 18px;
  }
}

.home_job_table_row dd ul li:not(:last-child) {
  margin-bottom: 6px;
}

@media (min-width: 920px) {
  .home_job_table_row dd ul li:not(:last-child) {
    margin-bottom: 8px;
  }
}

.home_job_table_row dd ul li::before {
  position: absolute;
  content: "";
  top: 9px;
  left: 4px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #000;
}

@media (min-width: 920px) {
  .home_job_table_row dd ul li::before {
    top: 11px;
    left: 4px;
  }
}

.home_job_table .btn {
  margin-top: clamp(40px, 2.8571428571vw, 51.4285714286px);
}

@media (max-width: 919px) {
  .home_job {
    padding: 166px 0 76px;
  }

  .home_job_body {
    display: flex;
    flex-direction: column;
    gap: 42px;
  }

  .home_job_head {
    position: static;
  }

  .home_job_tab {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
  }

  .home_job_table {
    padding: 20px;
  }

  .home_job_table_row {
    display: block;
    padding: 16px 0;
  }

  .home_job_table_row dt {
    margin-bottom: 6px;
  }
}

.home_faq {
  padding: 8.5714285714vw 0 14.2857142857vw;
  background-image: url("../img/home/dot_bg.png");
  background-image: -webkit-image-set(url("../img/home/dot_bg.png") 1x, url("../img/home/dot_bg@2x.png") 2x);
  background-image: image-set(url("../img/home/dot_bg.png") 1x, url("../img/home/dot_bg@2x.png") 2x);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  margin-top: -90px;
}

@media (min-width: 920px) {
  .home_faq {
    margin-top: -11.4285714286vw;
  }
}

.home_faq_inr {
  position: relative;
  max-width: clamp(1600px, 114.2857142857vw, 2057.1428571429px);
  margin: 0 auto;
}

.home_faq_illust_01 {
  position: absolute;
  top: 0px;
  left: -20px;
  width: 30.7692307692vw;
  max-width: 280px;
}

@media (min-width: 920px) {
  .home_faq_illust_01 {
    top: 0;
    width: clamp(315px, 22.5vw, 405px);
    left: clamp(-25.7142857143px, -1.4285714286vw, -20px);
    max-width: none;
  }
}

.home_faq_illust_01 img {
  width: 100%;
}

.home_faq_illust_02 {
  position: absolute;
  top: 5%;
  right: -40px;
  width: 46.1538461538vw;
  max-width: 300px;
}

@media (min-width: 920px) {
  .home_faq_illust_02 {
    top: 22%;
    right: clamp(-128.5714285714px, -7.1428571429vw, -100px);
    width: clamp(393px, 28.0714285714vw, 505.2857142857px);
    max-width: none;
  }
}

.home_faq_illust_02 img {
  width: 100%;
}

.home_faq_illust_03 {
  position: absolute;
  top: 83%;
  right: -40px;
  width: 35.8974358974vw;
  max-width: 200px;
}

@media (min-width: 920px) {
  .home_faq_illust_03 {
    top: 58%;
    right: auto;
    left: clamp(-128.5714285714px, -7.1428571429vw, -100px);
    width: clamp(356px, 25.4285714286vw, 457.7142857143px);
    max-width: none;
  }
}

.home_faq_illust_03 img {
  width: 100%;
}

.home_faq_illust_04 {
  position: absolute;
  top: 80%;
  left: -20px;
  width: 20.5128205128vw;
  max-width: 200px;
}

@media (min-width: 920px) {
  .home_faq_illust_04 {
    top: 60%;
    right: clamp(10px, 0.7142857143vw, 12.8571428571px);
    width: clamp(212px, 15.1428571429vw, 272.5714285714px);
    left: auto;
    max-width: none;
  }
}

.home_faq_illust_04 img {
  width: 100%;
}

.home_faq_slide {
  overflow: hidden;
  margin-bottom: 72px;
}

@media (min-width: 920px) {
  .home_faq_slide {
    margin-bottom: clamp(76px, 5.4285714286vw, 97.7142857143px);
  }
}

.home_faq_slide .swiper {
  overflow: visible;
}

.home_faq_slide .swiper-wrapper {
  transition-timing-function: linear;
}

.home_faq_slide .swiper-slide {
  width: 170px;
  flex-shrink: 0;
}

@media (min-width: 920px) {
  .home_faq_slide .swiper-slide {
    width: clamp(340px, 24.2857142857vw, 437.1428571429px);
  }
}

.home_faq_slide .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: clamp(16px, 1.1428571429vw, 20.5714285714px);
  overflow: hidden;
}

.home_faq_slide .swiper-slide:nth-child(odd) {
  padding-top: 20px;
}

@media (min-width: 920px) {
  .home_faq_slide .swiper-slide:nth-child(odd) {
    padding-top: clamp(40px, 2.8571428571vw, 51.4285714286px);
  }
}

.home_faq_list {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 1.7142857143vw, 30.8571428571px);
  max-width: clamp(800px, 57.1428571429vw, 1028.5714285714px);
  margin: 0 auto;
  position: relative;
}

.home_faq_item {
  border-radius: clamp(4px, 0.2857142857vw, 5.1428571429px);
  overflow: hidden;
  background-color: #fcf9f0;
}

.home_faq_item_btn {
  appearance: none;
  border: none;
  width: 100%;
  display: flex;
  align-items: center;
  gap: clamp(18px, 1.2857142857vw, 23.1428571429px);
  position: relative;
  padding: 14px 40px 14px 20px;
  background-color: #c7e8ff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  box-shadow: inset 0 clamp(-5.1428571429px, -0.2857142857vw, -4px) 0 rgba(77, 174, 255, 0);
  border-radius: clamp(4px, 0.2857142857vw, 5.1428571429px);
  transition: box-shadow 0.3s ease, border-radius 0.3s ease;
}

@media (min-width: 920px) {
  .home_faq_item_btn {
    padding: clamp(17px, 1.2142857143vw, 21.8571428571px) clamp(64px, 4.5714285714vw, 82.2857142857px) clamp(17px, 1.2142857143vw, 21.8571428571px) clamp(24px, 1.7142857143vw, 30.8571428571px);
  }
}

.home_faq_item_btn::after {
  content: "";
  position: absolute;
  right: clamp(24px, 1.7142857143vw, 30.8571428571px);
  top: 50%;
  width: clamp(24px, 1.7142857143vw, 30.8571428571px);
  height: clamp(24px, 1.7142857143vw, 30.8571428571px);
  transform: translateY(-50%);
  background-image: url("../img/home/faq_arrow.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform 0.3s ease;
}

.home_faq_item_txt {
  text-align: justify;
}

.home_faq_item.is-open .home_faq_item_btn {
  box-shadow: inset 0 clamp(-5.1428571429px, -0.2857142857vw, -4px) 0 #82c6ff;
}

.home_faq_item.is-open .home_faq_item_btn::after {
  transform: translateY(-50%) rotate(180deg);
}

.home_faq_item_q,
.home_faq_item_a {
  color: #008bff;
  font-weight: 700;
  flex-shrink: 0;
}

.home_faq_item_question {
  font-weight: 700;
  line-height: 1.3;
  color: #323232;
}

@media (min-width: 920px) {
  .home_faq_item_question {
    line-height: 1.6;
  }
}

.home_faq_item_body {
  overflow: hidden;
  transition: height 0.3s ease;
}

.home_faq_item_answer {
  display: flex;
  gap: clamp(18px, 1.2857142857vw, 23.1428571429px);
  padding: clamp(28px, 2vw, 36px) clamp(32px, 2.2857142857vw, 41.1428571429px) clamp(32px, 2.2857142857vw, 41.1428571429px);
}

@media (max-width: 919px) {
  .home_faq {
    padding: 56px 0 200px;
  }

  .home_faq .home_section_ttl {
    margin-bottom: 32px;
  }

  .home_faq_list {
    gap: 16px;
  }

  .home_faq_item_btn {
    gap: 12px;
  }

  .home_faq_item_btn::after {
    right: 20px;
    width: 24px;
    height: 24px;
  }

  .home_faq_item_answer {
    gap: 12px;
    padding: 22px 20px 26px;
  }

  .home_faq_item_txt {
    font-size: 14px;
  }
}

/*# sourceMappingURL=home.css.map */