@charset "UTF-8";
/* p-video
---------------------------------------------------------------------------- */
.p-videoBox {
  padding-block: 7.2916666667vw 7.8125vw;
  background-color: #2E2E2E;
  margin-top: 5.2083333333vw;
  overflow: hidden;
  position: relative;
}

.p-videoBox-ttl {
  position: absolute;
  z-index: 1;
  left: 3.3854166667vw;
  bottom: 4.4270833333vw;
  width: 57.7604166667vw;
  aspect-ratio: 1109/402;
}
.p-videoBox-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-video {
  width: 100%;
  aspect-ratio: 1920/726;
  position: relative;
}

.p-video video,
.p-video img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-videoBox-scroll {
  position: absolute;
  z-index: 1;
  right: 7.2916666667vw;
  bottom: 0;
  width: 0.5598958333vw;
  aspect-ratio: 10.75/86;
  display: flex;
  flex-direction: column;
  gap: 0.5208333333vw;
}
.p-videoBox-scroll img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-videoBox-scroll::after {
  content: "";
  left: 0;
  top: 0;
  width: 1px;
  height: 11.4583333333vw;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .p-videoBox {
    padding-block: 16vw;
    margin-top: 13.3333333333vw;
  }
  .p-videoBox-ttl {
    left: 0;
    bottom: 63.4666666667vw;
    width: 100%;
  }
  .p-video {
    width: 344vw;
    aspect-ratio: 1920/770;
    left: -85.3333333333vw;
  }
  .p-videoBox-scroll {
    right: 4vw;
    width: 2.8666666667vw;
    gap: 2.6666666667vw;
  }
  .p-videoBox-scroll::after {
    height: 24vw;
  }
}
/* p-mv
---------------------------------------------------------------------------- */
.p-mv {
  padding-block: 1.8229166667vw 9.4791666667vw;
  position: relative;
}

.p-mv-img {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.p-mv-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-mv-container {
  width: 100%;
  max-width: 62.5vw;
  margin-inline: auto;
}

.p-mv-ttl {
  width: 43.0729166667vw;
  aspect-ratio: 827/310;
  margin-left: auto;
}
.p-mv-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-mv-read {
  font-size: 1.9rem;
  line-height: 2.2105263158;
  font-weight: 500;
  font-size: 0.9895833333vw;
  color: #fff;
  margin-top: 2.6041666667vw;
}

@media screen and (max-width: 767px) {
  .p-mv {
    padding-block: 28.8vw 28.2666666667vw;
  }
  .p-mv-container {
    max-width: initial;
    padding-inline: 6.6666666667vw;
  }
  .p-mv-ttl {
    width: 100%;
    margin-left: initial;
  }
  .p-mv-read {
    font-size: 4vw;
    line-height: 2.2;
    margin-top: 20vw;
  }
}
/* p-about
---------------------------------------------------------------------------- */
.p-about {
  padding-block: 2.8645833333vw 7.5520833333vw;
  padding-inline: 7.8125vw;
}

.p-about-container {
  padding-block: 10.4166666667vw 6.9270833333vw;
  padding-inline: 10.9375vw;
  background-color: #F2ECE7;
  border-radius: 10.4166666667vw 0 10.4166666667vw 0;
  position: relative;
}

.p-about-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 0 3.125vw;
}

.p-about-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2.4479166667vw;
  margin-top: 1.3020833333vw;
}

.p-about-wrap-ttl {
  width: 16.5625vw;
  aspect-ratio: 318/108.25;
}
.p-about-wrap-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-about-wrap-txt {
  font-size: 1.9rem;
  line-height: 1.8421052632;
  font-weight: 500;
  font-size: 0.9895833333vw;
}

.p-about-wrapper-imgBox {
  position: relative;
}

.p-about-wrapper-imgBox::before {
  content: "";
  position: absolute;
  top: -5.7291666667vw;
  left: -6.7708333333vw;
  z-index: 1;
  width: 32.2395833333vw;
  aspect-ratio: 619/138;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/recruit/img_about_en_ttl.svg);
}

.p-about-wrapper-img {
  width: 33.3333333333vw;
  aspect-ratio: 640/370;
}
.p-about-wrapper-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-about-wrapper-button {
  position: absolute;
  z-index: 1;
  left: 34.375vw;
  bottom: 3.3854166667vw;
}

@media screen and (max-width: 767px) {
  .p-about {
    padding-block: 20.8vw 30.6666666667vw;
    padding-inline: 6.6666666667vw;
  }
  .p-about-container {
    padding-block: 18.6666666667vw 13.3333333333vw;
    padding-inline: 4vw;
    border-radius: 13.3333333333vw 0 13.3333333333vw 0;
  }
  .p-about-wrapper {
    flex-direction: column;
    gap: 18.6666666667vw;
  }
  .p-about-wrap {
    gap: 9.0666666667vw;
    margin-top: initial;
  }
  .p-about-wrap-ttl {
    width: 59.3333333333vw;
  }
  .p-about-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 2.1428571429;
  }
  .p-about-wrapper-imgBox::before {
    top: -12vw;
    left: -0.8vw;
    width: 72.1333333333vw;
  }
  .p-about-wrapper-img {
    width: 100%;
  }
  .p-about-wrapper-button {
    left: 50%;
    bottom: -12vw;
    transform: translateX(-50%);
  }
}
/* p-business
---------------------------------------------------------------------------- */
.p-business {
  padding-block: 3.0208333333vw 0;
  position: relative;
  z-index: 1;
}

.p-business::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 1.8229166667vw);
  background-color: #DDDDDE;
}

.p-business-container {
  max-width: 62.5vw;
  margin-inline: auto;
  position: relative;
}

.p-business-wrapper {
  display: flex;
  gap: 0 3.125vw;
}

.p-business-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2.1875vw;
  margin-top: 4.6875vw;
}

.p-business-wrap-ttl {
  width: 16.5625vw;
  aspect-ratio: 318/107.75;
}
.p-business-wrap-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-business-wrap-txt {
  font-size: 1.9rem;
  line-height: 1.8421052632;
  font-weight: 500;
  font-size: 0.9895833333vw;
}

.p-business-wrapper-imgBox {
  position: relative;
}

.p-business-wrapper-imgBox::before {
  content: "";
  position: absolute;
  top: 4.0625vw;
  right: -9.4791666667vw;
  z-index: 1;
  width: 26.8489583333vw;
  aspect-ratio: 515.5/180.25;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/recruit/img_business_en_ttl.svg);
}

.p-business-wrapper-img {
  width: 33.3333333333vw;
  aspect-ratio: 640/580;
}
.p-business-wrapper-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-business-wrapper-button {
  position: absolute;
  z-index: 1;
  left: 23.4375vw;
  bottom: 4.6875vw;
}

@media screen and (max-width: 767px) {
  .p-business {
    padding-block: 24vw 8vw;
    padding-inline: 6.6666666667vw;
  }
  .p-business::after {
    height: 100%;
  }
  .p-business-container {
    max-width: initial;
  }
  .p-business-wrapper {
    flex-direction: column;
    gap: 13.3333333333vw;
  }
  .p-business-wrap {
    gap: 9.3333333333vw;
    margin-top: initial;
    padding-inline: 4vw;
  }
  .p-business-wrap-ttl {
    width: 59.3333333333vw;
  }
  .p-business-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 2.1428571429;
  }
  .p-business-wrapper-imgBox::before {
    top: 4vw;
    right: -1.3333333333vw;
    width: 52.1333333333vw;
  }
  .p-business-wrapper-img {
    width: 100%;
  }
  .p-business-wrapper-button {
    left: 50%;
    bottom: -16.8vw;
    transform: translateX(-50%);
  }
}
/* p-interview
---------------------------------------------------------------------------- */
.p-interview {
  padding-block: 15.625vw 0;
  position: relative;
}

.p-interview::before {
  content: "";
  position: absolute;
  top: 11.875vw;
  left: 46.5%;
  transform: translateX(-50%);
  z-index: 2;
  width: 21.5234375vw;
  aspect-ratio: 413.25/80;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/recruit/img_interview_en_ttl.svg);
}

.p-interview-container {
  max-width: 62.5vw;
  margin-inline: auto;
}

.p-interview-wrapper {
  display: flex;
  gap: 0 0.5208333333vw;
}

.p-interview-wrap {
  flex: 1;
  margin-top: 3.3854166667vw;
}

.p-interview-wrap-ttl {
  width: 10.8854166667vw;
  aspect-ratio: 209/45;
}
.p-interview-wrap-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-interview-wrap-txt {
  font-size: 1.9rem;
  line-height: 1.8421052632;
  font-weight: 500;
  font-size: 0.9895833333vw;
  margin-top: 2.6041666667vw;
}

.p-interview-button {
  margin-top: 3.0208333333vw;
}

.p-interview-btn {
  display: flex;
  align-items: center;
  gap: 0 0.6770833333vw;
}
@media (any-hover: hover) {
  .p-interview-btn:hover ._txt {
    color: #E85400;
  }
  .p-interview-btn:hover ._arrow {
    color: #E85400;
    background-color: #fff;
    border-radius: 0.5208333333vw 0 0.5208333333vw 0;
  }
}

.p-interview-btn ._txt {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 500;
  font-size: 1.0416666667vw;
  color: #3B3B3B;
  transition: color 0.3s ease 0s;
}

.p-interview-btn ._arrow {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  font-size: 0.78125vw;
  color: #fff;
  width: 2.0833333333vw;
  aspect-ratio: 1;
  border: 1px solid #E85400;
  background-color: #E85400;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease 0s, color 0.3s ease 0s, border-radius 0.3s ease 0s;
}

.p-interview-swiper-container {
  width: 34.1145833333vw;
  padding-bottom: 2.0833333333vw;
  position: relative;
}

.p-interview-swiper-slide {
  width: 16.6666666667vw;
  transition: transform 0.3s ease 0s;
}

.p-interview-swiper-slide:not(.swiper-slide-active) {
  transform: scale(0.8333333333);
  transform-origin: bottom;
  margin-top: auto;
}

.p-interview-swiper-slide-link {
  display: block;
}
@media (any-hover: hover) {
  .p-interview-swiper-slide-link:hover .p-interview-swiper-slide-img img {
    transform: scale(1.05);
  }
  .p-interview-swiper-slide-link:hover .p-interview-swiper-slide-box-arrow {
    background-color: #fff;
    color: #E85400;
    border-radius: 0.5208333333vw 0 0.5208333333vw 0;
  }
}

.p-interview-swiper-slide-imgBox {
  padding-inline: 0.5208333333vw;
}

.p-interview-swiper-slide-img {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 2.0833333333vw 0 2.0833333333vw 0;
  overflow: hidden;
}
.p-interview-swiper-slide-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease 0s;
}

.p-interview-swiper-slide-box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 0 0.5208333333vw;
  position: relative;
  z-index: 1;
  margin-top: -0.7291666667vw;
}

.p-interview-swiper-slide-box-ttl._01 {
  width: 8.8541666667vw;
  aspect-ratio: 170/61;
}
.p-interview-swiper-slide-box-ttl._02 {
  width: 7.5520833333vw;
  aspect-ratio: 120/54;
}
.p-interview-swiper-slide-box-ttl._03 {
  width: 12.5vw;
  aspect-ratio: 199/54;
}
.p-interview-swiper-slide-box-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-interview-swiper-slide-box-arrow {
  width: 3.125vw;
  aspect-ratio: 1;
  border: 1px solid #E85400;
  background-color: #E85400;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  font-size: 1.0416666667vw;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease 0s, color 0.3s ease 0s, border-radius 0.3s ease 0s;
}

.p-interview-swiper-button-prev,
.p-interview-swiper-button-next {
  cursor: pointer;
  position: absolute;
  bottom: 0;
  z-index: 1;
  width: 0.78125vw;
  aspect-ratio: 1;
  color: #E85400;
}
.p-interview-swiper-button-prev::after,
.p-interview-swiper-button-next::after {
  content: none;
}

.p-interview-swiper-button-prev {
  left: 0.2604166667vw;
  border-left: 0.15625vw solid currentColor;
  border-bottom: 0.15625vw solid currentColor;
  transform: rotate(45deg);
}

.p-interview-swiper-button-next {
  left: 14.4791666667vw;
  border-top: 0.15625vw solid currentColor;
  border-right: 0.15625vw solid currentColor;
  transform: rotate(45deg);
}

.p-interview-swiper-scrollbar {
  position: absolute;
  bottom: 0.2083333333vw;
  left: 1.1458333333vw;
  width: 13.0208333333vw;
  height: 0.2083333333vw;
  background-color: #D6D6D6;
  border-radius: 10vmax;
}

.p-interview-swiper-scrollbar .swiper-scrollbar-drag {
  border-radius: 10vmax;
  background-color: #E85400;
}

@media screen and (max-width: 767px) {
  .p-interview {
    padding-block: 68vw 11.2vw;
    padding-inline: 6.6666666667vw;
    background-color: #F8F8F8;
  }
  .p-interview::before {
    top: 43.2vw;
    left: 50%;
    width: 90.1333333333vw;
  }
  .p-interview-container {
    max-width: initial;
  }
  .p-interview-wrapper {
    flex-direction: column;
    gap: 17.3333333333vw;
  }
  .p-interview-wrap {
    margin-top: initial;
    padding-inline: 4vw;
  }
  .p-interview-wrap-ttl {
    width: 39vw;
  }
  .p-interview-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 2.1428571429;
    margin-top: 9.8666666667vw;
  }
  .p-interview-wrap-txt ._ib {
    display: inline-block;
  }
  .p-interview-button {
    margin-top: 6.6666666667vw;
  }
  .p-interview-btn {
    gap: 0 2.6666666667vw;
  }
  .p-interview-btn ._txt {
    font-size: 4vw;
  }
  .p-interview-btn ._arrow {
    font-size: 4vw;
    width: 10.6666666667vw;
  }
  .p-interview-swiper-container {
    width: 100%;
    padding-bottom: 12vw;
  }
  .p-interview-swiper-slide {
    width: 100%;
  }
  .p-interview-swiper-slide-imgBox {
    padding-inline: 3.3333333333vw;
  }
  .p-interview-swiper-slide-img {
    border-radius: 10.6666666667vw 0 10.6666666667vw 0;
  }
  .p-interview-swiper-slide-box {
    gap: 0 2.6666666667vw;
    margin-top: -2.6666666667vw;
    padding-inline: 1.3333333333vw 2.6666666667vw;
  }
  .p-interview-swiper-slide-box-ttl._01 {
    width: 45.3333333333vw;
  }
  .p-interview-swiper-slide-box-ttl._02 {
    width: 32vw;
  }
  .p-interview-swiper-slide-box-ttl._03 {
    width: 53.0666666667vw;
  }
  .p-interview-swiper-slide-box-arrow {
    width: 10.6666666667vw;
    font-size: 4vw;
  }
  .p-interview-swiper-button-prev,
  .p-interview-swiper-button-next {
    width: 4vw;
  }
  .p-interview-swiper-button-prev {
    left: 5.3333333333vw;
    border-width: 0.8vw;
  }
  .p-interview-swiper-button-next {
    left: initial;
    right: 5.3333333333vw;
    border-width: 0.8vw;
  }
  .p-interview-swiper-scrollbar {
    bottom: 1.0666666667vw;
    left: 50%;
    transform: translateX(-50%);
    width: 66.6666666667vw;
    height: 1.0666666667vw;
  }
}
/* p-workplace
---------------------------------------------------------------------------- */
.p-workplace {
  padding-block: 11.3541666667vw 5.7291666667vw;
  padding-inline: 7.8125vw;
}

.p-workplace-container {
  padding-block: 8.59375vw;
  padding-inline: 10.9375vw;
  background-color: #F2ECE7;
  border-radius: 10.4166666667vw 0 10.4166666667vw 0;
  position: relative;
}

.p-workplace-container::before {
  content: "";
  position: absolute;
  top: 4.1666666667vw;
  left: -2.6041666667vw;
  z-index: 1;
  width: 25.0911458333vw;
  aspect-ratio: 481.75/116.25;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/recruit/img_workplace_en_ttl.svg);
}

.p-workplace-wrapper {
  display: flex;
  gap: 0 3.125vw;
}

.p-workplace-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2.7604166667vw;
  margin-top: 4.6875vw;
}

.p-workplace-wrap-ttl {
  width: 13.7369791667vw;
  aspect-ratio: 263.75/108.25;
}
.p-workplace-wrap-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-workplace-wrap-txt {
  font-size: 1.9rem;
  line-height: 1.8421052632;
  font-weight: 500;
  font-size: 0.9895833333vw;
}

.p-workplace-wrapper-img {
  width: 33.3333333333vw;
  aspect-ratio: 640/370;
}
.p-workplace-wrapper-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-workplace-wrapper-button {
  position: absolute;
  z-index: 1;
  left: 34.4791666667vw;
  bottom: 2.9166666667vw;
}

@media screen and (max-width: 767px) {
  .p-workplace {
    padding-block: 40vw 46.6666666667vw;
    padding-inline: 6.6666666667vw;
  }
  .p-workplace-container {
    padding-block: 18.6666666667vw;
    padding-inline: 4vw;
    border-radius: 13.3333333333vw 0 13.3333333333vw 0;
  }
  .p-workplace-container::before {
    top: -5.3333333333vw;
    left: -3.7333333333vw;
    width: 70.0666666667vw;
  }
  .p-workplace-wrapper {
    flex-direction: column;
    gap: 8vw;
  }
  .p-workplace-wrap {
    gap: 9.3333333333vw;
    margin-top: initial;
  }
  .p-workplace-wrap-ttl {
    width: 49.2vw;
  }
  .p-workplace-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 2.1428571429;
  }
  .p-workplace-wrapper-img {
    width: 100%;
  }
  .p-workplace-wrapper-button {
    left: 50%;
    bottom: -6.6666666667vw;
    transform: translateX(-50%);
  }
}
/* img アニメーション
---------------------------------------------------------------------------- */
.js-img-effect {
  position: relative;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  --translateX: -100%;
}

.js-img-effect::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #3B3B3B;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(var(--translateX));
}

.js-img-effect img {
  opacity: 0;
  visibility: hidden;
  transform: scale(1.1);
  will-change: transform, opacity;
}
