.fixed-logo {
 position: absolute;
 top: 45px;
 left: 80px;
 z-index: 3;
 width: 135px;
}
@media screen and (max-width: 1180px) {
 .fixed-logo {
  top: 20px;
  left: 18px;
  width: 100px;
 }
}
@media screen and (max-width: 1180px) and (max-width: 768px) {
 .fixed-logo {
  width: 68px;
 }
}

.pc-b {
 display: block;
}
@media screen and (max-width: 768px) {
 .pc-b {
  display: none;
 }
}

.sp-b {
 display: none;
}
@media screen and (max-width: 768px) {
 .sp-b {
  display: block;
 }
}

body * {
 font-weight: 500;
}

.mv {
 position: relative;
 height: 56vw;
 overflow: hidden;
 background: url(/recruit/img/mv-bg.webp) repeat;
 background-position: center bottom;
 background-size: 100% auto;
}
@media screen and (max-width: 768px) {
 .mv {
  height: 100vw;
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .mv {
  height: 170.333vw;
 }
}
.mv::before {
 content: "";
 position: absolute;
 bottom: 0;
 left: 0;
 z-index: 2;
 width: 100%;
 height: auto;
 background: url(/recruit/img/mv-bottom-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 3000/366;
}
.mv__img {
 position: absolute;
 top: 1.666vw;
 right: 2.666vw;
 z-index: 3;
 width: 80vw;
 height: auto;
 background: url(/recruit/img/mv-main.webp) no-repeat;
 background-position: center center;
 background-size: cover;
 transform: translateX(0) !important;

 aspect-ratio: 1844/1250;
}
@media screen and (max-width: 768px) {
 .mv__img {
  top: -2.666vw;
  left: 50%;
  width: 78vw;
  background: url(/recruit/img/mv-main-sp.webp) no-repeat;
  background-position: center center;
  background-size: cover;
  transform: translateX(-50%) !important;

  aspect-ratio: 1470/1877;
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .mv__img {
  top: -0.666vw;
  right: auto;
  width: 101vw;

  aspect-ratio: 375/626;
 }
}
.mv__title {
 display: flex;
 position: absolute;
 bottom: 5.8vw;
 left: 5.3333vw;
 z-index: 3;
 flex-direction: column;
 gap: 1.333vw;
}
@media screen and (max-width: 768px) {
 .mv__title {
  bottom: 7.2vw;
  left: 8vw;
 }
}
.mv__title-main {
 width: -moz-fit-content;
 width: fit-content;
 padding: 0.333vw 0.5vw;
 background: #ffffff;
 font-size: 1.6vw;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .mv__title-main {
  padding: 1vw 1.2vw;
  font-size: 2.6vw;
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .mv__title-main {
  padding: 1.6vw 2vw;
  font-size: 4vw;
 }
}
.mv__title-sub {
 line-height: 2;
 font-size: 2.1vw;
}
@media screen and (max-width: 768px) {
 .mv__title-sub {
  font-size: 3.4vw;
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .mv__title-sub {
  font-size: 5.6vw;
 }
}
.mv__title-sub span {
 display: inline-block;
 height: -moz-fit-content;
 height: fit-content;
 line-height: 1;
 padding: 0.666vw;
 background: #ffffff;
 font-size: 4vw;
}
@media screen and (max-width: 768px) {
 .mv__title-sub span {
  font-size: 5vw;
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .mv__title-sub span {
  padding: 1.333vw 1.6vw;
  font-size: 10vw;
 }
}

.contri {
 position: relative;
 margin-top: -12vw;
 padding-top: 300px;
 padding-bottom: 50px;
 background: url(/recruit/img/contri-bg.webp) repeat;
 background-size: 100% auto;
}
@media screen and (max-width: 1024px) {
 .contri {
  margin-top: -12.2vw;
  padding-top: 180px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .contri {
  padding-bottom: 60px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) and (max-width: 600px) {
 .contri {
  padding-top: 100px;
 }
}
.contri__inner {
 width: 90%;
 max-width: 1100px;
 margin: 0 auto;
}
.contri__wrap {
 display: flex;
 justify-content: space-between;
 gap: 10px;

 padding-inline: 100px 0;
}
@media screen and (max-width: 1024px) {
 .contri__wrap {
  padding-inline: 0;
 }
}
@media screen and (max-width: 1024px) and (max-width: 600px) {
 .contri__wrap {
  flex-direction: column-reverse;
  gap: 20px;
 }
}
.contri__wrap--reverse {
 flex-direction: row-reverse;
 margin-top: 10px;

 padding-inline: 35px 100px;
}
@media screen and (max-width: 1024px) {
 .contri__wrap--reverse {
  margin-top: 20px;

  padding-inline: 0 0;
 }
}
@media screen and (max-width: 1024px) and (max-width: 600px) {
 .contri__wrap--reverse {
  flex-direction: column-reverse;
 }
}
.contri__wrap--reverse .contri__content {
 max-width: 380px;
 margin-top: 10px;
}
@media screen and (max-width: 768px) {
 .contri__wrap--reverse .contri__content {
  max-width: 100%;
  margin-top: 0;
 }
}
.contri__content {
 width: 100%;
 max-width: 454px;
}
@media screen and (max-width: 768px) {
 .contri__content {
  max-width: 100%;
 }
}
.contri__img {
 width: 100%;
 max-width: 540px;
}
@media screen and (max-width: 768px) {
 .contri__img {
  max-width: 100%;
 }
}
.contri__img--map {
 margin-top: 35px;
}
@media screen and (max-width: 768px) {
 .contri__img--map {
  margin-top: 0;
 }
}
.contri__title {
 display: flex;
 flex-direction: column;
 gap: 8px;
 margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
 .contri__title {
  margin-bottom: 15px;
 }
}
.contri__title span {
 width: -moz-fit-content;
 width: fit-content;
 line-height: 1;
 padding: 17px 18px;
 background: #ade75b;
 font-size: 40px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 1024px) {
 .contri__title span {
  padding: 10px;
  font-size: 24px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .contri__title span {
  font-size: 20px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) and (max-width: 600px) {
 .contri__title span {
  font-size: 24px;
 }
}
.contri__title span:nth-child(2) {
 padding-right: 0;
}
.contri__text {
 line-height: 2.5;
 font-size: 20px;
 letter-spacing: 0.18em;
}
@media screen and (max-width: 1024px) {
 .contri__text {
  line-height: 2;
  font-size: 16px;
  letter-spacing: 0.18em;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .contri__text {
  font-size: 14px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) and (max-width: 600px) {
 .contri__text {
  font-size: 16px;
 }
}

.work {
 position: relative;
 padding-top: 265px;
 padding-bottom: 100px;
}
@media screen and (max-width: 1024px) {
 .work {
  padding-top: 230px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work {
  padding-top: 160px;
  padding-bottom: 80px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) and (max-width: 600px) {
 .work {
  padding-top: 140px;
 }
}
.work::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: auto;
 background: url(/recruit/img/contri-bottom-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 3000/222;
}
.work__inner {
 width: 90%;
 max-width: 1100px;
 margin: 0 auto;
}
.work__top {
 display: flex;
 gap: 80px;
 margin-bottom: 70px;
}
@media screen and (max-width: 1024px) {
 .work__top {
  flex-direction: column;
  gap: 120px;
  margin-bottom: 40px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__top {
  gap: 80px;
 }
}
.work__top-title {
 display: flex;
 position: relative;
 width: 100%;
 max-width: 430px;
 height: -moz-fit-content;
 height: fit-content;
 align-items: center;
 font-size: 32px;
}
@media screen and (max-width: 1024px) {
 .work__top-title {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  justify-content: center;
  margin: 0 auto;
  font-size: 26px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__top-title {
  font-size: 24px;
 }
}
.work__top-title::before {
 content: "";
 position: absolute;
 top: -80px;
 left: 15px;
 z-index: -1;
 width: 412px;
 height: auto;
 background: url(/recruit/img/work-illust.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 617/371;
}
@media screen and (max-width: 1024px) {
 .work__top-title::before {
  top: -75px;
  width: 340px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__top-title::before {
  top: -50px;
  left: 20px;
  width: 240px;
 }
}
.work__top-title span {
 display: inline-block;
 line-height: 1;
 margin-right: 12px;
 padding: 10px 20px;
 background: #ffffff;
 font-size: 56px;
}
@media screen and (max-width: 1024px) {
 .work__top-title span {
  font-size: 40px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__top-title span {
  margin-right: 8px;
  padding: 6px 15px;
  font-size: 32px;
 }
}
.work__top-content {
 width: 100%;
 max-width: 560px;
}
@media screen and (max-width: 1024px) {
 .work__top-content {
  max-width: 100%;
 }
}
.work__top-text {
 line-height: 2;
 margin-bottom: 35px;
 font-size: 16px;
 letter-spacing: 0.18em;
}
@media screen and (max-width: 768px) {
 .work__top-text {
  margin-bottom: 20px;
  font-size: 14px;
 }
}
.work .btn {
 width: -moz-fit-content;
 width: fit-content;
}
.work .btn a {
 display: flex;
 align-items: center;
 gap: 20px;
}
.work .btn a span {
 line-height: 1;
 font-size: 20px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .work .btn a span {
  font-size: 18px;
 }
}
.work__list {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 30px;
}
@media screen and (max-width: 768px) {
 .work__list {
  grid-template-columns: repeat(2, 1fr);
 }
}
@media screen and (max-width: 768px) and (max-width: 600px) {
 .work__list {
  grid-template-columns: 1fr;
 }
}
.work__item-img {
 overflow: hidden;
 margin-bottom: 15px;
 border-radius: 10px;
}
@media screen and (max-width: 1024px) {
 .work__item-img {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__item-img {
  margin-bottom: 10px;

  aspect-ratio: 4/3;
 }
 .work__item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
 }
}
.work__item-title {
 display: flex;
 line-height: 1;
 align-items: center;
 gap: 20px;
 margin-bottom: 10px;
 font-size: 30px;
 letter-spacing: 0.11em;
}
@media screen and (max-width: 1024px) {
 .work__item-title {
  gap: 10px;
  font-size: 24px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .work__item-title {
  margin-bottom: 5px;
 }
}
.work__item-title span {
 display: flex;
 width: 56px;
 height: auto;
 line-height: 1;
 justify-content: center;
 align-items: center;
 background: #ade75b;
 font-size: 26px;
 letter-spacing: -0.01em;

 aspect-ratio: 1;
}
@media screen and (max-width: 1024px) {
 .work__item-title span {
  width: 44px;
  font-size: 22px;
 }
}
.work__item-text {
 line-height: 2.125;
 font-size: 16px;
 letter-spacing: 0.13em;
}
@media screen and (max-width: 1024px) {
 .work__item-text {
  font-size: 14px;
 }
}

.env__top {
 position: relative;
 width: 100%;
 height: auto;
 background: url(/recruit/img/env-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 1500/553;
}
@media screen and (max-width: 768px) {
 .env__top {
  height: 300px;
  background-position: center;
 }
}
.env__top::after {
 content: "";
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 height: auto;
 background: url(/recruit/img/env-top-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 3000/220;
}
.env__bottom {
 position: relative;
 padding-top: 70px;
 padding-bottom: 210px;
 background: url(/recruit/img/env-main-bg.webp) repeat;
 background-size: 100% auto;
}
@media screen and (max-width: 768px) {
 .env__bottom {
  padding-top: 80px;
  padding-bottom: 100px;
 }
}
.env__bottom::after {
 content: "";
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 height: auto;
 background: url(/recruit/img/interview-top-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 3000/220;
}
.env__title {
 position: relative;
 width: -moz-fit-content;
 width: fit-content;
 line-height: 1;
 margin: 0 auto 215px;
 font-size: 32px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 1024px) {
 .env__title {
  margin-bottom: 140px;
  font-size: 26px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .env__title {
  margin-bottom: 100px;
  font-size: 24px;
 }
}
.env__title span {
 display: inline-block;
 position: relative;
 z-index: 3;
 line-height: 1;
 margin-right: 10px;
 padding: 10px 20px;
 background: #ffffff;
 font-size: 56px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 1024px) {
 .env__title span {
  font-size: 40px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .env__title span {
  padding: 8px 10px;
  font-size: 32px;
 }
}
.env__title::before {
 content: "";
 position: absolute;
 top: -90px;
 left: 12px;
 width: 360px;
 height: auto;
 background: url(/recruit/img/env-title-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 536/407;
}
@media screen and (max-width: 1024px) {
 .env__title::before {
  top: -60px;
  left: 16px;
  width: 280px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .env__title::before {
  top: -55px;
  width: 220px;
 }
}
.env__list {
 display: grid;
 width: 90%;
 max-width: 1100px;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
 margin: 0 auto 45px;
}
@media screen and (max-width: 1024px) {
 .env__list {
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-bottom: 30px;
 }
}
.env__item {
 display: grid;
 grid-template-rows: subgrid;
 grid-row: span 2;
 padding: 40px 30px 30px;
 border-radius: 20px;
 background: #ffffff;
}
@media screen and (max-width: 1240px) {
 .env__item {
  padding: 20px 15px 15px;
 }
}
@media screen and (max-width: 1240px) and (max-width: 768px) {
 .env__item {
  padding: 20px 9px 15px;
 }
}
.env__item:nth-child(1) img {
 max-width: 99px;
}
@media screen and (max-width: 1240px) {
 .env__item:nth-child(1) img {
  max-width: 65px;
 }
}
.env__item:nth-child(2) img {
 max-width: 112px;
}
@media screen and (max-width: 1240px) {
 .env__item:nth-child(2) img {
  max-width: 76px;
 }
}
.env__item:nth-child(3) img {
 max-width: 185px;
}
@media screen and (max-width: 1240px) {
 .env__item:nth-child(3) img {
  max-width: 100px;
 }
}
.env__item:nth-child(4) img {
 max-width: 84px;
}
@media screen and (max-width: 1240px) {
 .env__item:nth-child(4) img {
  max-width: 55px;
 }
}
.env__item img {
 display: block;
 align-self: center;
 justify-self: center;
}
.env__item-text {
 line-height: 1.6666666667;
 align-self: center;
 font-size: 18px;
 text-align: center;
 letter-spacing: 0em;
}
@media screen and (max-width: 1240px) {
 .env__item-text {
  font-size: 14px;
 }
}
.env__item-text span {
 line-height: 1;
 font-size: 14px;
 letter-spacing: 0em;
}
@media screen and (max-width: 1240px) {
 .env__item-text span {
  font-size: 12px;
 }
}
.env__last {
 width: -moz-fit-content;
 width: fit-content;
 max-width: 90%;
 line-height: 1.5;
 margin: 0 auto;
 padding: 15px;
 background: #ffffff;
 font-size: 20px;
 letter-spacing: 0.18em;
}
@media screen and (max-width: 1024px) {
 .env__last {
  font-size: 16px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .env__last {
  padding: 10px;
  font-size: 15px;
  text-align: center;
 }
}

.interview {
 position: relative;
 padding-top: 40px;
 padding-bottom: 100px;
 background: url(/recruit/img/interview-bg.webp) repeat;
 background-size: 100% auto;
}
@media screen and (max-width: 768px) {
 .interview {
  padding-top: 80px;
  padding-bottom: 80px;
 }
}
.interview__inner {
 display: flex;
 width: 90%;
 max-width: 1100px;
 gap: 50px;
 margin: 0 auto;
}
@media screen and (max-width: 1240px) {
 .interview__inner {
  flex-direction: column;
  align-items: center;
  gap: 30px;
 }
}
.interview__left {
 width: 385px;
}
@media screen and (max-width: 1240px) {
 .interview__left {
  width: 100%;
  max-width: 900px;
 }
}
.interview__right {
 max-width: 670px;
}
@media screen and (max-width: 1240px) {
 .interview__right {
  max-width: 900px;
 }
}
@media screen and (max-width: 1240px) and (max-width: 768px) {
 .interview__right {
  max-width: 100%;
 }
}
.interview__title {
 position: relative;
 width: -moz-fit-content;
 width: fit-content;
 margin-bottom: 175px;

 margin-inline: auto;
}
@media screen and (max-width: 1024px) {
 .interview__title {
  margin-bottom: 140px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .interview__title {
  margin-bottom: 120px;
 }
}
.interview__title i {
 display: flex;
 position: relative;
 z-index: 3;
 flex-direction: column;
 gap: 4px;
 font-style: normal;
}
@media screen and (max-width: 768px) {
 .interview__title i {
  width: -moz-fit-content;
  width: fit-content;
  flex-direction: row;
  gap: 0;
  padding: 10px;
  background: #ffffff;
 }
}
.interview__title span {
 position: relative;
 z-index: 5;
 width: -moz-fit-content;
 width: fit-content;
 line-height: 1;
 padding: 10px 10px;
 background: #ffffff;
 font-size: 56px;
 letter-spacing: 0.06em;
}
@media screen and (max-width: 1024px) {
 .interview__title span {
  font-size: 40px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .interview__title span {
  padding: 0;
  font-size: 32px;
 }
}
.interview__title::after {
 content: "";
 position: absolute;
 top: -40px;
 left: 20px;
 width: 335px;
 height: auto;
 background: url(/recruit/img/interview-title-bg.webp) no-repeat;
 background-size: cover;

 aspect-ratio: 497/440;
}
@media screen and (max-width: 1024px) {
 .interview__title::after {
  top: -40px;
  width: 280px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .interview__title::after {
  top: -60px;
  left: 65px;
  width: 220px;
 }
}
.interview__btns {
 display: flex;
 flex-direction: column;
 gap: 10px;
}
@media screen and (max-width: 1240px) {
 .interview__btns {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(3, 1fr);
 }
}
@media screen and (max-width: 1240px) and (max-width: 768px) {
 .interview__btns {
  grid-template-columns: repeat(2, 1fr);
 }
}
.interview__btn {
 display: flex;
 align-items: center;
 gap: 18px;
 padding: 15px;
 border-radius: 10px;
 background: #ffffff;
 cursor: pointer;
}
@media screen and (max-width: 1240px) {
 .interview__btn {
  flex-direction: column;
 }
}
@media screen and (max-width: 1240px) and (max-width: 768px) {
 .interview__btn {
  flex-direction: row;
 }
}
@media screen and (max-width: 1240px) and (max-width: 768px) and (max-width: 600px) {
 .interview__btn {
  flex-direction: column;
 }
}
.interview__btn.is-active {
 background: #ade75b;
}
.interview__btn-left {
 width: 110px;
}
@media screen and (max-width: 768px) {
 .interview__btn-left {
  width: 80px;
 }
}
.interview__btn-name {
 line-height: 1;
 font-size: 26px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__btn-name {
  font-size: 20px;
 }
}
.interview__btn-name span {
 display: block;
 line-height: 1;
 margin-bottom: 5px;
 font-size: 16px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__btn-name span {
  font-size: 14px;
 }
}
.interview__btn-name i {
 display: flex;
 align-items: flex-end;
 font-style: normal;
}
.interview__btn-name i i {
 font-size: 14px;
}
@media screen and (max-width: 768px) {
 .interview__btn-name i i {
  font-size: 12px;
 }
}
.interview__btn-job {
 line-height: 1;
 margin-top: 10px;
 font-size: 14px;
 letter-spacing: 0.16em;
}
.interview__content {
 display: none;
 padding: 35px 30px 35px 40px;
 border-radius: 5px;
 background: #ffffff;
}
@media screen and (max-width: 768px) {
 .interview__content {
  padding: 30px 20px;
 }
}
.interview__content.is-active {
 display: block;
}
.interview__content-top {
 display: flex;
 justify-content: center;
 justify-content: space-between;
 align-items: flex-end;
 gap: 30px;
 margin-bottom: 30px;
}
@media screen and (max-width: 700px) {
 .interview__content-top {
  flex-direction: column-reverse;
  align-items: flex-start;
 }
}
@media screen and (max-width: 700px) and (max-width: 600px) {
 .interview__content-top {
  gap: 20px;
  margin-bottom: 20px;
 }
}
.interview__content-top-name span {
 display: block;
 line-height: 1;
 margin-bottom: 8px;
 font-size: 16px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__content-top-name span {
  font-size: 14px;
 }
}
.interview__content-top-name i {
 line-height: 1;
 font-style: normal;
 font-size: 32px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__content-top-name i {
  font-size: 24px;
 }
}
.interview__content-top-name i i {
 font-size: 14px;
}
@media screen and (max-width: 768px) {
 .interview__content-top-name i i {
  font-size: 12px;
 }
}
.interview__content-top-job {
 line-height: 1;
 margin-top: 20px;
 font-size: 14px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__content-top-job {
  margin-top: 10px;
 }
}
.interview__content-top-right {
 width: 100%;
 max-width: 382px;
 overflow: hidden;
 border-radius: 10px;
}
@media screen and (max-width: 700px) {
 .interview__content-top-right {
  max-width: 100%;
 }
}
.interview__questions {
 display: flex;
 flex-direction: column;
 gap: 50px;
}
@media screen and (max-width: 768px) {
 .interview__questions {
  gap: 30px;
 }
}
.interview__question-wrap {
 display: flex;
 gap: 20px;
}
@media screen and (max-width: 600px) {
 .interview__question-wrap {
  flex-direction: column-reverse;
  gap: 15px;
 }
}
.interview__question-title {
 line-height: 1.5;
 margin-bottom: 15px;
 padding-bottom: 10px;
 border-bottom: solid 1px #000000;
 font-size: 22px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__question-title {
  margin-bottom: 10px;
  padding-bottom: 8px;
  font-size: 18px;
 }
}
.interview__question-img {
 min-width: 260px;
 overflow: hidden;
 border-radius: 10px;
}
@media screen and (max-width: 768px) {
 .interview__question-img {
  max-width: 180px;
  margin: 0 auto;
 }
}
.interview__question-text {
 line-height: 1.875;
 overflow: hidden;
 font-size: 16px;
 letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
 .interview__question-text {
  font-size: 14px;
 }
}

.require {
 position: relative;
 padding: 150px 0 100px;
 background: url(/recruit/img/requirement-bg.webp) repeat;
 background-size: 100% auto;
}
@media screen and (max-width: 768px) {
 .require {
  padding-top: 100px;
  padding-bottom: 80px;
 }
}
.require::after {
 content: "";
 position: absolute;
 top: 0;
 left: 50%;
 width: 90%;
 max-width: 1204px;
 height: auto;
 background: url(/recruit/img/slide-illust.webp) no-repeat;
 background-size: cover;
 translate: -50% -63%;

 aspect-ratio: 1806/260;
}
.require__inner {
 width: 90%;
 max-width: 900px;
 margin: 0 auto;
 padding: 80px;
 background: #ffffff;
}
@media screen and (max-width: 768px) {
 .require__inner {
  padding: 30px 20px;
 }
}
.require__title {
 width: -moz-fit-content;
 width: fit-content;
 line-height: 1;
 margin: 0 auto;
 margin-bottom: 35px;
 padding: 15px 30px;
 background: #ade75b;
 font-size: 32px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .require__title {
  margin-bottom: 20px;
  padding: 10px 20px;
  font-size: 24px;
 }
}
.require__dl {
 display: flex;
 padding-bottom: 30px;
 border-bottom: solid 1px #a4a4a4;
}
@media screen and (max-width: 1024px) {
 .require__dl {
  flex-direction: column;
  gap: 10px;
 }
}
@media screen and (max-width: 1024px) and (max-width: 768px) {
 .require__dl {
  padding-bottom: 20px;
 }
}
.require__dl:not(:first-child) {
 padding-top: 30px;
}
@media screen and (max-width: 768px) {
 .require__dl:not(:first-child) {
  padding-top: 20px;
 }
}
.require__dt {
 min-width: 170px;
 line-height: 1;
 margin-top: 4px;
 font-size: 18px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .require__dt {
  margin-top: 0;
  font-weight: bold;
  font-size: 16px;
 }
}
.require__dd p {
 line-height: 1.625;
 font-size: 16px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .require__dd p {
  font-size: 14px;
 }
}
.require__dd ul {
 display: flex;
 flex-direction: column;
 gap: 12px;
}
@media screen and (max-width: 768px) {
 .require__dd ul {
  gap: 5px;
 }
}
.require__dd ul li {
 position: relative;
 line-height: 1.75;
 margin-left: 12px;
 font-size: 16px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
 .require__dd ul li {
  gap: 8px;
  font-size: 14px;
 }
}
.require__dd ul li::before {
 content: "";
 display: block;
 position: absolute;
 top: 11px;
 left: -12px;
 min-width: 7px;
 height: 7px;
 margin-top: 0;
 border-radius: 9999px;
 background: #ade75b;
}
@media screen and (max-width: 768px) {
 .require__dd ul li::before {
  top: 9px;
 }
}
.require__dd ul li.indent {
 padding-left: 4.4em;
 text-indent: -4.4em;
}
.require__dd ul li.indent2 {
 padding-left: 5.5em;
 text-indent: -5.5em;
}
.require__dd ol {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 30px;
 margin-bottom: 10px;
}
.require__dd ol li {
 display: flex;
 width: 140px;
 height: 40px;
 line-height: 1;
 justify-content: center;
 align-items: center;
 border: solid 1px #ade75b;
 background: #fefff3;
 font-size: 18px;
 letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
 .require__dd ol li {
  width: 120px;
  height: 35px;
  font-size: 16px;
 }
}
.require__dd ol li:not(:last-child) {
 position: relative;
}
.require__dd ol li:not(:last-child)::after {
 content: "";
 position: absolute;
 top: 50%;
 right: -20px;
 width: 9px;
 height: auto;
 background: url(/recruit/img/right-arrow.webp) no-repeat;
 background-size: cover;
 translate: 0 -50%;

 aspect-ratio: 13/24;
}
.require__dd span {
 line-height: 1;
 font-size: 14px;
 letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
 .require__dd span {
  font-size: 12px;
 }
}

.slide {
 position: relative;
 overflow: hidden;
 padding: 90px 0 210px;
 background: #ade75b;
}
@media screen and (max-width: 768px) {
 .slide {
  padding-top: 60px;
  padding-bottom: 80px;
 }
}
@media screen and (max-width: 600px) {
 .slide .company--slide {
  width: 90%;
  overflow: hidden;
  margin: 0 auto 0;
 }
}
.slide .company--slide img {
 width: 100%;
 border-radius: 10px;
}
/*# sourceMappingURL=layout.css.map */