@charset "utf-8";

/* ---------------------sub_mv-------------------- */
.sub_mv {
  background: url(/recruit/assets/img/people/sub_mv.jpg) no-repeat center/cover;
}

/* ---------------------lead-------------------- */
.lead {
  padding: 90px 0;
}

.lead .comment {
  display: flex;
  width: fit-content;
  height: 209px;
  margin-left: 593px;
  align-items: center;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: var(--dark_green);
  position: relative;
}

.lead .comment::before {
  content: '';
  display: block;
  width: 545px;
  aspect-ratio: 545/209;
  background: url(/recruit/assets/img/interview/comment.svg) no-repeat center center/cover;
  position: absolute;
  top: calc(50% + 13.5px);
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -10;
}

.lead .flex {
  display: flex;
  margin-top: -193px;
  margin-left: 23px;
  align-items: end;
}

.lead .photo {
  width: 542px;
  aspect-ratio: 542/468;
}

.lead .photo img {
  width: 542px;
  aspect-ratio: 542/468;
  object-fit: contain;
  object-position: bottom;
}

.lead .texts {
  display: flex;
  width: 596px;
  margin-left: -41px;
  column-gap: 16px;
  align-items: end;
  color: var(--point);
  position: relative;
}

.lead .texts::after {
  content: '';
  display: block;
  width: 199px;
  aspect-ratio: 199/164;
  background: url(/recruit/assets/img/interview/deco_1.svg) no-repeat center center/cover;
  position: absolute;
  bottom: 0;
  right: 131px;
}

.lead .name {
  height: 45px;
  font-size: 72px;
  font-weight: 600;
  line-height: 45px;
}

.lead .position {
  height: 40px;
}

.lead .position span {
  display: block;
  height: 12px;
  margin-bottom: 16px;
  line-height: 12px;
}

.lead .position span:last-child {
  margin-bottom: 0;
}

/* ---------------------interview-------------------- */
.interview {
  padding: 104px 0;
  overflow: hidden;
}

.interview dl {
  width: 820px;
  padding: 47px 60px 52px 60px;
  border-radius: 20px;
  box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.3);
  background-color: white;
  position: relative;
}

.interview dl::after {
  content: '';
  display: block;
  position: absolute;
}

.interview .li {
  width: 100%;
  margin-bottom: 38px;
  line-height: 1.8;
}

.interview .li:last-child {
  margin-bottom: 0;
}

.interview dt {
  margin-bottom: 13px;
  padding-left: 38px;
  font-size: 24px;
  font-weight: 500;
  color: var(--dark_green);
  position: relative;
}

.interview dt::before {
  content: '';
  display: block;
  width: 22px;
  aspect-ratio: 22/19;
  background: url(/recruit/assets/img/darkgreen_rec.svg) no-repeat center center/cover;
  position: absolute;
  top: 14px;
  left: 0;
}

/* ---------------------other-------------------- */
.other {
  padding: 104px 0;
}

.other h2 {
  margin-bottom: 55px;
  position: relative;
}

.other h2::before {
  content: '';
  display: block;
  width: 414px;
  aspect-ratio: 414/324;
  background: url(/recruit/assets/img/interview/other_deco.svg) no-repeat center center/cover;
  position: absolute;
  top: 0;
  right: -60px;
}

.other h2 .en {
  color: var(--pink);
}

.other h2 .en::before {
  background: url(/recruit/assets/img/pink_rec.svg) no-repeat center center/cover;
}

.other h2 .ja {
  color: var(--dark_pink);
}

.other h2 .ja::before {
  background-color: var(--pink);
}

.other a:hover {
  opacity: 1;
}

.swiper_pc {
  width: 100%;
  max-width: 1393px;
  height: 671px;
  margin: 0 auto;
  position: relative;
}

.swiper_pc .swiper-slide {
  width: 316px;
  aspect-ratio: 341/450;
  margin-right: 36px;
  transition: 0.7s;
}

.swiper_pc .swiper-slide .big_photo {
  display: none;
}

.swiper_pc .swiper-slide .text {
  display: none;
}

.swiper_pc .swiper-slide img {
  width: 100%;
  aspect-ratio: 341/450;
  object-fit: contain;
  object-position: left bottom;
}

.swiper_pc .swiper-slide-next {
  width: 339px;
}

.swiper_pc .swiper-slide-next .text {
  display: flex;
  width: 800px;
  height: 76px;
  margin: 59px 0 0 -41px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.8;
  color: var(--dark_green);
  justify-content: center;
  align-items: center;
  position: relative;
}

.swiper_pc .swiper-slide-next .text::before {
  content: '';
  display: block;
  width: 800px;
  aspect-ratio: 800/95;
  background: url(/recruit/assets/img/interview/other_comment.svg) no-repeat center center/cover;
  position: absolute;
  top: calc(50% - 9.5px);
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -10;
}

.swiper_pc .swiper-slide-next .big_photo {
  display: block;
}

.swiper_pc .swiper-slide-next .small_photo {
  display: none;
}

.swiper_pc .swiper-button-prev,
.swiper_pc .swiper-button-next {
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: 9px;
  left: 0;
  top: auto;
}

.swiper_pc .swiper-button-prev {
  left: 482px;
}

.swiper_pc .swiper-button-prev::after {
  content: '';
  display: block;
  width: 50px;
  aspect-ratio: 1/1;
  background: url(/recruit/assets/img/interview/pre.svg) no-repeat center center/cover;
}

.swiper_pc .swiper-button-next {
  left: 554px;
}

.swiper_pc .swiper-button-next::after {
  content: '';
  display: block;
  width: 50px;
  aspect-ratio: 1/1;
  background: url(/recruit/assets/img/interview/nex.svg) no-repeat center center/cover;
}

@media screen and (max-width: 1393px) {
  .swiper_pc .swiper-slide {
    margin-left: -50px;
    margin-right: 86px;
  }

  .swiper_pc .swiper-button-prev {
    left: 432px;
  }

  .swiper_pc .swiper-button-next {
    left: 504px;
  }
}

.other .btn {
  width: 261px;
  height: 66px;
  margin: -68px 0 0 537px;
  position: relative;
  z-index: 100;
}

.other .btn::before {
  content: '';
  display: block;
  width: 261px;
  height: 66px;
  border-radius: 5px;
  border: 2px solid var(--dark_pink);
  position: absolute;
  top: 9px;
  left: 8px;
  z-index: -10;
}

.other .btn a {
  display: block;
  width: 261px;
  height: 66px;
  border-radius: 5px;
  background-color: var(--dark_pink);
  position: relative;
  z-index: 10;
}

.other .btn a:hover {
  transform: translate(9px, 8px);
  transition: all 0.3s;
}

.other .btn span {
  display: block;
  width: fit-content;
  height: 100%;
  margin: 0 auto;
  padding-left: 32px;
  font-weight: 500;
  color: white;
  line-height: 66px;
  position: relative;
}

.other .btn span::before {
  content: '';
  display: block;
  width: 15px;
  aspect-ratio: 15/16;
  background: url(/recruit/assets/img/polygon.svg) no-repeat center center/cover;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
  /* ---------------------sub_mv-------------------- */
  .sub_mv {
    height: calc((100 / 750) * 440 * 1vw);
    background: url(/recruit/assets/img/people/sub_mv_sp.jpg) no-repeat center/cover;
  }

  /* ---------------------lead-------------------- */
  .lead {
    padding: calc((100 / 750) * 128 * 1vw) 0;
  }

  .lead .comment {
    height: calc((100 / 750) * 243 * 1vw);
    margin: 0 auto;
    font-size: calc((100 / 750) * 28 * 1vw);
  }

  .lead .comment::before {
    width: calc((100 / 750) * 670 * 1vw);
    aspect-ratio: 670/243;
    background: url(/recruit/assets/img/interview/comment_sp.svg) no-repeat center center/cover;
    top: calc(50% + ((100 / 750) * 13.5 * 1vw));
  }

  .lead .flex {
    display: block;
    margin-top: calc((100 / 750) * -103 * 1vw);
    margin-left: calc((100 / 750) * 79 * 1vw);
  }

  .lead .photo {
    width: calc((100 / 750) * 518 * 1vw);
    aspect-ratio: 518/571;
    margin-bottom: calc((100 / 750) * 128 * 1vw);
  }

  .lead .photo img {
    width: calc((100 / 750) * 518 * 1vw);
    aspect-ratio: 518/571;
  }

  .lead .texts {
    width: calc((100 / 750) * 540 * 1vw);
    margin-left: calc((100 / 750) * 51 * 1vw);
    column-gap: calc((100 / 750) * 16 * 1vw);
  }

  .lead .texts::after {
    width: calc((100 / 750) * 123 * 1vw);
    aspect-ratio: 123/101;
    background: url(/recruit/assets/img/interview/deco_1.svg) no-repeat center center/cover;
    position: absolute;
    bottom: calc((100 / 750) * 29 * 1vw);
    right: calc((100 / 750) * 50 * 1vw);
  }

  .lead .name {
    height: calc((100 / 750) * 60 * 1vw);
    font-size: calc((100 / 750) * 96 * 1vw);
    line-height: calc((100 / 750) * 60 * 1vw);
  }

  .lead .position {
    height: calc((100 / 750) * 52 * 1vw);
  }

  .lead .position span {
    display: block;
    height: calc((100 / 750) * 18 * 1vw);
    margin-bottom: calc((100 / 750) * 16 * 1vw);
    line-height: calc((100 / 750) * 18 * 1vw);
    font-size: calc((100 / 750) * 24 * 1vw);
  }

  .lead .position span:last-child {
    margin-bottom: 0;
  }

  /* ---------------------interview-------------------- */
  .interview {
    padding: calc((100 / 750) * 128 * 1vw) 0 calc((100 / 750) * 490 * 1vw);
  }

  .interview dl {
    width: 100%;
    padding: calc((100 / 750) * 61 * 1vw) calc((100 / 750) * 40 * 1vw) calc((100 / 750) * 80 * 1vw);
    border-radius: calc((100 / 750) * 40 * 1vw);
    box-shadow: calc((100 / 750) * 4 * 1vw) calc((100 / 750) * 4 * 1vw) calc((100 / 750) * 20 * 1vw) rgba(0, 0, 0, 0.3);
  }

  .interview dl::after {
    content: '';
    display: block;
    position: absolute;
  }

  .interview .li {
    margin-bottom: calc((100 / 750) * 42 * 1vw);
  }

  .interview dt {
    margin-bottom: calc((100 / 750) * 16 * 1vw);
    padding-left: calc((100 / 750) * 43 * 1vw);
    font-size: calc((100 / 750) * 32 * 1vw);
  }

  .interview dt::before {
    width: calc((100 / 750) * 27 * 1vw);
    aspect-ratio: 27/23;
    top: calc((100 / 750) * 18 * 1vw);
  }

  /* ---------------------other-------------------- */
  .other {
    padding: calc((100 / 750) * 128 * 1vw) 0;
  }

  .other h2 {
    margin-bottom: calc((100 / 750) * 72 * 1vw);
  }

  .other h2::before {
    width: calc((100 / 750) * 181 * 1vw);
    aspect-ratio: 181/149;
    background: url(/recruit/assets/img/interview/deco_1.svg) no-repeat center center/cover;
    top: calc((100 / 750) * -15 * 1vw);
    right: calc((100 / 750) * 45 * 1vw);
  }

  .swiper_sp {
    width: 100%;
    height: calc((100 / 750) * 978 * 1vw);
    padding-top: calc((100 / 750) * 110 * 1vw);
  }

  .swiper_sp .swiper-slide {
    width: calc((100 / 750) * 396 * 1vw);
  }

  .swiper_sp .swiper-slide img {
    width: 100%;
    height: calc((100 / 750) * 385 * 1vw);
    object-fit: contain;
    object-position: center bottom;
  }

  .swiper_sp .swiper-slide .big_photo {
    display: none;
  }

  .swiper_sp .swiper-slide .text {
    display: none;
  }

  .swiper_sp .swiper-slide-active {
    margin-top: calc((100 / 750) * -120 * 1vw);
  }

  .swiper_sp .swiper-slide.swiper-slide-active .big_photo {
    display: block;
  }

  .swiper_sp .swiper-slide.swiper-slide-active .big_photo img {
    width: 100%;
    height: calc((100 / 750) * 540 * 1vw);
    object-fit: contain;
    object-position: center bottom;
  }

  .swiper_sp .swiper-slide-active .small_photo {
    display: none;
  }

  .swiper_sp .swiper-slide-active .text {
    display: flex;
    width: calc((100 / 750) * 670 * 1vw);
    height: calc((100 / 750) * 180 * 1vw);
    margin: calc((100 / 750) * 70 * 1vw) 0 0 calc((100 / 750) * -139 * 1vw);
    font-size: calc((100 / 750) * 26 * 1vw);
    color: var(--dark_green);
    letter-spacing: 0.05em;
    line-height: 1.8;
    justify-content: center;
    align-items: center;
    position: relative;
  }

  .swiper_sp .swiper-slide-active .text::before {
    content: '';
    display: block;
    width: calc((100 / 750) * 670 * 1vw);
    aspect-ratio: 670/209;
    background: url(/recruit/assets/img/interview/other_comment_sp.svg) no-repeat center center/cover;
    position: absolute;
    top: calc(50% - ((100 / 750) * 14.5 * 1vw));
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -10;
  }

  .swiper_sp .swiper-button-prev,
  .swiper_sp .swiper-button-next {
    width: calc((100 / 750) * 100 * 1vw);
    height: calc((100 / 750) * 100 * 1vw);
    position: absolute;
    bottom: calc((100 / 750) * 7 * 1vw);
    left: 0;
    top: auto;
  }

  .swiper_sp .swiper-button-prev {
    left: calc((100 / 750) * 40 * 1vw);
  }

  .swiper_sp .swiper-button-prev::after {
    content: '';
    display: block;
    width: calc((100 / 750) * 100 * 1vw);
    aspect-ratio: 1/1;
    background: url(/recruit/assets/img/interview/pre.svg) no-repeat center center/cover;
  }

  .swiper_sp .swiper-button-next {
    left: calc((100 / 750) * 170 * 1vw);
  }

  .swiper_sp .swiper-button-next::after {
    content: '';
    display: block;
    width: calc((100 / 750) * 100 * 1vw);
    aspect-ratio: 1/1;
    background: url(/recruit/assets/img/interview/nex.svg) no-repeat center center/cover;
  }

  .other .btn {
    width: calc((100 / 750) * 370 * 1vw);
    height: calc((100 / 750) * 112 * 1vw);
    margin: calc((100 / 750) * -112 * 1vw) 0 0 calc((100 / 750) * 302 * 1vw);
  }

  .other .btn::before {
    width: calc((100 / 750) * 370 * 1vw);
    height: calc((100 / 750) * 112 * 1vw);
    border-radius: calc((100 / 750) * 10 * 1vw);
    border: calc((100 / 750) * 4 * 1vw) solid var(--dark_pink);
    top: calc((100 / 750) * 11 * 1vw);
    left: calc((100 / 750) * 11 * 1vw);
  }

  .other .btn a {
    width: calc((100 / 750) * 370 * 1vw);
    height: calc((100 / 750) * 112 * 1vw);
    border-radius: calc((100 / 750) * 10 * 1vw);
  }

  .other .btn a:hover {
    transform: translate(calc((100 / 750) * 11 * 1vw), calc((100 / 750) * 11 * 1vw));
  }

  .other .btn span {
    padding-left: calc((100 / 750) * 37 * 1vw);
    line-height: calc((100 / 750) * 112 * 1vw);
  }

  .other .btn span::before {
    width: calc((100 / 750) * 20 * 1vw);
  }
}
