@charset "utf-8";

/*====================
アーカイブ、シングル共通
====================*/
.recruit__pageTtl {
  padding: 0 34px;
  width: fit-content;
  background: #fff;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #002169;
  text-align: center;
  position: absolute;
  top: 73px;
  left: 50px;
}
.recruit__nav {
  padding: 0 15px;
  position: sticky;
  top: 10px;
  z-index: 2;
}
.recruit__nav--list {
  width: fit-content;
  margin: -40px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0px 40px rgba(0, 0, 0, 0.08);
}
.recruit__nav--item {
  position: relative;
}
.recruit__nav--item:not(:last-child)::before {
  display: block;
  content: "";
  width: 1px;
  height: 25px;
  background: #d5d5d5;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  z-index: 1;
}
.recruit__nav--link {
  display: block;
  padding: 30px clamp(15px, 3.8vw, 52px);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #002169;
  text-align: center;
}
@media screen and (max-width: 1060px) {
  .recruit__nav {
    position: relative;
  }
}
@media screen and (max-width: 1380px) {
  .recruit__pageTtl {
    left: 13px;
  }
}
@media screen and (max-width: 750px) {
  .recruit .siteContent {
    padding-top: 115px;
  }
  .recruit__pageTtl {
    padding: 0 20px;
    font-size: 12px;
  }
  .recruit__nav {
    position: static;
    padding-top: 30px;
  }
  .recruit__nav--list {
    margin: 0px auto 0;
  }
  .recruit__nav--link {
    padding: 15px;
  }
}
@media screen and (max-width: 650px) {
  /* 共通 */
  .recruit__nav--list {
    flex-direction: column;
  }
  .recruit__nav--item {
    width: 100%;
  }
  .recruit__nav--item:not(:last-child)::before {
    display: none;
  }
  .recruit__nav--link {
    text-align: center;
  }
}
/*====================
アーカイブ
====================*/
/* 共通 */
.recruit-archive__bg {
  background: url(../imgs/recruit/recruit-archive_bg.png) top center / cover
    no-repeat;
}
.recruit-archive .low__fvImg {
  min-height: 400px;
  max-height: calc(100vh - 150px);
}
.recruit-archive .low__head {
  bottom: 12%;
}

.recruit-archive__ttlBox {
  margin-bottom: 77px;
}
.recruit-archive__ttl--en {
  display: block;
  padding-top: 10px;
  margin-bottom: 6px;
  font-size: 80px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  color: rgba(0, 0, 0, 0);
  -webkit-text-stroke: 1px #002169;
  text-stroke: 1px #002169;
  text-align: center;
}
.recruit-archive__ttl--ja {
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #002169;
  text-align: center;
}
.recruit-archive__introTxt {
  margin-top: 46px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: center;
}
.recruit-archive .low__pd {
  padding-top: 106px;
}
.entry__link {
  display: block;
  padding: 91px 15px 85px;
  background: url(../imgs/recruit/entry_bg.jpg) center center / cover no-repeat;
}
.entry__box {
  max-width: 620px;
  padding: 8px 15px 15px;
  margin: 0 auto;
  border: 2px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 81px;
  position: relative;
}
.entry__box::before {
  display: block;
  content: "";
  width: 1px;
  height: 40px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.entry__ttl--en {
  display: block;
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1;
  color: #fff;
}
.entry__ttl--ja {
  padding-top: 5px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1;
  color: #fff;
}
/* who */
.who {
  position: relative;
}

.who .recruit-archive__ttl--en,
.who .recruit-archive__ttl--ja {
  text-align: left;
}

.who__inner {
  min-height: 761px;
  padding: 80px 0 107px;
  display: grid;
  grid-template-areas:
    "who__ttlBox who__pic"
    "who__txtBox who__pic";
  display: grid;
  grid-template-columns: 43vw 47%;
  grid-template-rows: auto auto;
  gap: 0 20px;
  margin-left: 11%;
  position: relative;
}

.who__pic {
  width: 100%;
  grid-area: who__pic;
  width: 44vw;
  max-width: 600px;
  /* margin-right: calc(50% - 50vw); */
  /* position: relative; */
  position: absolute;
  top: 0;
  right: -116px;
}
.who__ttlBox {
  grid-area: who__ttlBox;
  margin-right: 20px;
}

.who__txtBox {
  grid-area: who__txtBox;
}
.who__pic .img {
  border-radius: 25px;
}

.who__ttl {
  margin-top: 47px;
  margin-bottom: 25px;
  font-size: 35px;
  font-weight: 500;
  line-height: 1.43;
  letter-spacing: 0;
  color: #002169;
}
.who__txt {
  width: 34vw;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 2.14;
}
.who__txt02 {
  width: 34vw;
  font-size: 14px;
  letter-spacing: 0.15em;
  text-align: right;
}

/* infographic */
.infographic {
  padding: 121px 0 167px;
}
.infographic__num01 {
  margin-bottom: 3.3%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(13px, 2.708vw, 37px) 3.3%;
}
.infographic__num01List {
  width: 100%;
}
.infographic__num02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(13px, 2.708vw, 37px) 3.3%;
}
.infographic__num02Box {
  width: 100%;
  padding: 27px 33px 40px 27px;
  background: #fff;
  border-radius: 15px;
}
.infographic__ttl {
  margin-bottom: 7px;
  font-size: clamp(18px, 1.464vw, 20px);
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #4c80b6;
  text-align: center;
}
.infographic__txt {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 2.142;
}
.infographic__txt--blue {
  margin-top: 10px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.43;
  color: #4c80b6;
}
.infographic__txt--blue a {
  display: block;
  word-break: break-all;
}
.infographic__iso {
  max-width: 311px;
  margin: 43px auto 0;
}
.infographic__yuryo {
  max-width: 217px;
  margin: 17px auto 0;
}
/* interview */
.interview {
  padding: 122px 0 164px;
  background: #002169;
}
.interview .recruit-archive__ttl--en {
  color: rgba(255, 255, 255, 0);
  -webkit-text-stroke: 1px #ffffff;
  text-stroke: 1px #ffffff;
}
.interview .recruit-archive__ttl--ja,
.interview .recruit-archive__introTxt {
  color: #fff;
}
.interview__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 4.026vw, 55px) 7.5%;
}
.interview__pic {
  margin-bottom: 17px;
}
.interview__pic .img {
  background-position: center center;
  background-size: cover;
  border-radius: 25px;
}
.interview__position {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #fff;
}
.interview__name {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
  color: #4c80b6;
}
.interview__year {
  display: inline-block;
  padding-left: 5px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #fff;
}

@media screen and (max-width: 1400px) {
  /* who */
  .who__inner {
    position: static;
  }
  .who__pic {
    top: 80px;
    right: 0;
  }
  .who__pic .img {
    border-radius: 25px 0 0 25px;
  }
}
@media screen and (max-width: 920px) {
  /* who */
  .who__inner {
    margin-left: 0;
    grid-template-areas:
      "who__ttlBox"
      "who__pic"
      "who__txtBox";
    grid-template-columns: auto;
    grid-template-rows: auto;
  }
  .who__pic {
    width: 100%;
    margin: 0 auto;
    position: static;
  }
  .who__pic .img {
    border-radius: 25px;
  }
  .who__ttlBox {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .who__ttl {
    margin-top: 23px;
    margin-bottom: 11px;
  }
  .who__txt {
    width: 100%;
  }
  .who__txt02 {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  /* 共通 */
  .recruit-archive .low__pd {
    padding-top: 35px;
  }

  .recruit-archive .low__head {
    bottom: 3%;
  }

  .recruit-archive__ttl--en {
    font-size: 38px;
  }
  .recruit-archive__ttl--ja {
    font-size: 20px;
  }
  .entry__box {
    padding: 15px;
    flex-direction: column;
    gap: 10px;
  }
  .entry__box::before {
    display: none;
  }
  .entry__link {
    padding: 56px 15px 47px;
  }

  .entry__ttl--en {
    font-size: 32px;
  }

  /* who */
  .who__inner {
    padding-top: 39px;
    padding-bottom: 56px;
  }
  .who__ttl {
    font-size: 18px;
  }
  /* infographic */
  .infographic {
    padding-top: 58px;
    padding-bottom: 67px;
  }
  .infographic__inner {
    width: calc(100% - 30px);
  }
  .recruit-archive__introTxt {
    font-size: 14px;
  }

  .infographic__ttl {
    /* font-size: clamp(14px, 1.244vw, 17px); */
    font-size: 17px;
  }
  .infographic__num01 {
    grid-template-columns: repeat(2, 1fr);
  }
  .infographic__num02Box {
    padding: 27px 15px 40px 15px;
  }
  .infographic__iso {
    max-width: 186px;
  }
  .infographic__yuryo {
    max-width: 169px;
  }
  /* interview */
  .interview {
    padding-top: 58px;
    padding-bottom: 67px;
  }
  .interview__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .interview__pic .img {
    border-radius: 12px;
  }
  .interview__position {
    font-size: 14px;
  }
  .interview__name {
    font-size: 20px;
  }
  .interview__year {
    display: block;
    padding-left: 0;
    font-size: 12px;
  }
}

@media screen and (max-width: 625px) {
  .infographic__num02 {
    grid-template-columns: repeat(1, 1fr);
  }
}

/*====================
シングル
====================*/
/* 共通 */
.recruit-single__bg {
  background: url(../imgs/recruit/recruit-single_bg.png) top center / cover
    no-repeat;
}
.recruit-single .low__fvImg {
  background-position: center center;
  background-size: cover;
}
.recruit-single_lowHead {
  bottom: 16%;
}
.recruit-single__profileBox {
  position: absolute;
  right: 0;
  bottom: 0;
}
.recruit-single__profile {
  width: 350px;
  margin-left: auto;
  padding: 20px 27px;
  background: #fff;
}
.recruit-single__profile--position {
  padding-bottom: 6px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #002169;
}
.recruit-single__profile--name {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #002169;
}
.recruit-single__profile--year {
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #002169;
}
.recruit-single__whiteTop {
  border-radius: 25px 0 0 0;
}
.recruit-single__whiteBottom {
  max-width: 1216px;
  width: calc(100% - 15px);
  margin-left: auto;
  background: #fff;
  height: 140px;
  border-radius: 0 0 0 25px;
  box-shadow: 0 0px 40px rgba(0, 0, 0, 0.08);
}
.recruit-single__inner {
  max-width: 913px;
  /* width: calc(100% - 40px); */
  margin-left: 80px;
  padding-top: 76px;
  padding-bottom: 137px;
  /* position: relative; */
}
.recruit-single__heading {
  font-size: 35px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #002169;
}
.recruit-single__numBox {
  position: relative;
}
.recruit-single__num {
  display: block;
  /* font-size: clamp(33px, 14.64vw, 200px); */
  font-size: 200px;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #002169;
  position: absolute;
  top: -137px;
  right: 0;
  z-index: 1;
}
.recruit-single__sec {
  position: relative;
  margin-bottom: 150px;
}

.recruit-single__pic {
  position: absolute;
  width: 100%;
  padding-right: 10vw;
  position: absolute;
  top: 170px;
  left: 0;
}

.recruit-single__pic .img {
  max-height: 600px;
  min-height: 250px;
  border-radius: 0 25px 25px 0;
  object-fit: cover;
  background-position: center center;
  background-size: cover;
}
.recruit-single__picBox {
  width: 100%;
  height: clamp(275px, 45vw, 633px);
}
.recruit-single__wrap {
  padding-top: 83px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.recruit-single__squarePic {
  max-width: 280px;
}
.recruit-single__squarePic .img {
  border-radius: 10px;
  background-position: center center;
  background-size: cover;
}
.recruit-single__cont {
  padding-left: 61px;
  flex: 1;
}
.single__contBox + .single__contBox {
  margin-top: 43px;
}
.recruit-single__heading02 {
  padding-left: 84px;
  margin-bottom: 33px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #002169;
  position: relative;
}
.recruit-single__heading02::before {
  display: block;
  content: "";
  width: 70px;
  height: 1px;
  background: #002169;
  position: absolute;
  top: 18px;
  left: 0;
}
.recruit-single__txt {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 2.125;
}
/* 左寄せバージョン */
.recruit-single__left .recruit-single__inner {
  margin-left: auto;
  margin-right: 80px;
}
.recruit-single__left .recruit-single__heading {
  text-align: right;
}
.recruit-single__left .recruit-single__pic {
  padding-right: 0;
  padding-left: 10vw;
  left: auto;
  right: 0;
}
.recruit-single__left .recruit-single__pic .img {
  border-radius: 25px 0 0 25px;
}
.recruit-single__left .recruit-single__wrap {
  flex-direction: row-reverse;
}
.recruit-single__left .recruit-single__num {
  left: 0px;
  right: auto;
}
.recruit-single__left .recruit-single__cont {
  padding-left: 0;
  padding-right: 61px;
}

/* recruit-works */
.recruit-works__schedule {
  padding: 52px 0 101px;
  background: #002169;
}
.recruit-works__scheduleInner {
  max-width: 978px;
  width: calc(100% - 40px);
  margin: 0 auto;
}
.recruit-works__scheduleTtl--en {
  display: block;
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #fff;
  text-align: center;
}
.recruit-works__scheduleTtl--ja {
  margin-bottom: 66px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #fff;
  text-align: center;
}
.recruit-works__scheduleWrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.recruit-works__line {
  position: relative;
}
.recruit-works__line::before {
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 74px;
}
.recruit-works__scheduleLeft {
  width: 49%;
  max-width: 460px;
}
.recruit-works__scheduleRight {
  width: 49%;
  max-width: 460px;
}
.recruit-works__scheduleGroup {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.recruit-works__scheduleGroup + .recruit-works__scheduleGroup {
  margin-top: 24px;
}
.recruit-works__scheduleTimeBox {
  width: 73px;
}
.recruit-works__scheduleContBox {
  flex: 1;
  padding-left: 18px;
}
.recruit-works__scheduleTime {
  display: block;
  transform: translate(0px, -11px);
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.2;
  color: #fff;
  position: relative;
}
.recruit-works__scheduleTime::after {
  display: block;
  content: "";
  width: 9px;
  height: 9px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 13px;
  right: -6px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.recruit-works__scheduleContTtl {
  display: block;
  margin-bottom: 5px;
  transform: translate(0px, -11px);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #fff;
}
.recruit-works__scheduleContTxt {
  transform: translate(0px, -11px);
  font-size: 14px;
  font-weight: 400;
  color: #cbd3e1;
}
/* .recruit-works__scheduleRight .recruit-works__scheduleTime::after {
  bottom: 9px;
} */
.recruit-works__scheduleRight .recruit-works__scheduleContTtl {
  transform: translate(0px, 11px);
}
.recruit-works__scheduleRight .recruit-works__scheduleTime {
  transform: translate(0px, 11px);
}
.recruit-works__scheduleRight .recruit-works__scheduleContTxt {
  transform: translate(0px, 11px);
}

/* recruit-other */
.recruit-other {
  padding: 84px 0 132px;
  background: #002169;
}
.recruit-other__ttl {
  margin-bottom: 44px;
  font-size: 40px;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: #fff;
}
.recruit-other__swiper-slide {
  width: 300px;
}
@media screen and (max-width: 1160px) {
  /* 共通 */
  .recruit-single__inner {
    margin-left: 0;
  }
  .recruit-single__num {
    font-size: 140px;
    top: -120px;
  }
  .recruit-single__pic {
    padding-right: 20px;
  }
  .recruit-single__picBox {
    height: clamp(275px, 49vw, 633px);
  }

  .recruit-single__cont {
    padding-left: 25px;
  }
  .recruit-single__heading02 {
    padding-left: 32px;
  }
  .recruit-single__heading02::before {
    width: 25px;
  }
  /* 左寄せバージョン */
  .recruit-single__left .recruit-single__inner {
    margin-right: 0;
  }
  .recruit-single__left .recruit-single__pic {
    padding-left: 20px;
  }
  .recruit-single__left .recruit-single__cont {
    padding-right: 25px;
  }
}

@media screen and (max-width: 1060px) {
  /* recruit-works */
  .recruit-works__scheduleWrap {
    flex-direction: column;
  }
  .recruit-works__scheduleLeft,
  .recruit-works__scheduleRight {
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 890px) {
  /* 共通 */
  .recruit-single__wrap {
    flex-direction: column;
    row-gap: 20px;
  }
  .recruit-single__cont {
    padding-left: 0;
  }
  /* 左寄せバージョン */
  .recruit-single__left .recruit-single__wrap {
    flex-direction: column;
  }
  .recruit-single__left .recruit-single__cont {
    padding-right: 0;
  }
}

@media screen and (max-width: 820px) {
  /* 共通 */
  .recruit-single__profileBox {
    position: static;
  }
  .recruit-single__profile {
    margin-top: 20px;
    margin-right: auto;
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  /* 共通 */
  .recruit-single__profile {
    width: 100%;
    max-width: 350px;
    padding: 14px;
  }
  .recruit-single__profile--name {
    font-size: 23px;
  }
  .recruit-single__profile--year {
    font-size: 12px;
  }
  .recruit-single__sec {
    margin-bottom: 80px;
  }
  .recruit-single__whiteBottom {
    height: 56px;
  }
  .recruit-single__inner {
    /* width: calc(100% - 30px); */
    width: 100%;
    padding-top: 39px;
    padding-bottom: 56px;
    margin-left: 0px;
  }
  .recruit-single__heading {
    font-size: 22px;
    min-height: 80px;
  }
  .recruit-single__pic {
    padding-right: 15px;
    top: 126px;
  }
  .recruit-single__pic .img {
    border-radius: 0 15px 15px 0;
  }
  .recruit-single__wrap {
    padding-top: 20px;
  }
  .recruit-single__cont {
    padding-left: 0;
  }
  .single__contBox + .single__contBox {
    margin-top: 10px;
  }
  .recruit-single__heading02 {
    padding-left: 20px;
    margin-bottom: 2px;
    font-size: 15px;
  }
  .recruit-single__heading02::before {
    width: 18px;
    top: 13px;
  }
  .recruit-single__squarePic {
    max-width: 200px;
  }
  .recruit-single__txt {
    font-size: 14px;
  }

  /* 左寄せバージョン */
  .recruit-single__left .recruit-single__pic {
    padding-left: 15px;
  }
  .recruit-single__left .recruit-single__wrap {
    flex-direction: column;
  }
  /* recruit-works */
  .recruit-works__scheduleTtl--en {
    font-size: 30px;
  }
  .recruit-works__scheduleTtl--ja {
    font-size: 16px;
  }
  .recruit-works__scheduleContTtl,
  .recruit-works__scheduleTime {
    font-size: 16px;
  }
  .recruit-works__scheduleTime::after {
    top: 10px;
  }
  .recruit-works__scheduleTimeBox {
    width: 60px;
  }
  .recruit-works__line::before {
    left: 62px;
  }
  /* recruit-other */
  .recruit-other__ttl {
    font-size: 30px;
  }
  .recruit-other__swiper-slide {
    width: 200px;
  }
}

@media screen and (max-width: 600px) {
  /* 共通 */
  .recruit-single__num {
    font-size: 70px;
  }
  .recruit-single__num {
    top: -79px;
  }
}
