@charset "utf-8";

/* --------------------------------------- */
/* 採用情報　「募集要項」ページ
/* --------------------------------------- */


/* メインビジュアル
-------------------------------------------*/
.recUnderMvBl {
  background: url(../img/recruit_guideline_mv.webp) no-repeat center 0/cover;
}

@media screen and (max-width: 767px) {
  .recUnderMvBl {
    background: url(../img/recruit_guideline_mv_sp.webp) no-repeat center 0/cover;
  }
}


/*  「仲間を募集中」
-------------------------------------------*/
.recGuideFellowBl {
  padding: 100px 0 120px;
  background-color: #e1eff5;
  color: #1f385a;
  position: relative;
  overflow: hidden;
}

.recGuideFellowBl .inner1460 {
  position: relative;
  z-index: 3;
}

.recGuideFellow_wraparound {
  position: relative;
  z-index: 3;
}

.recGuideFellow_imgwrap {
  width: 45.6%;
  box-sizing: border-box;
  z-index: 1;
}

.recGuideFellow_wraparound.img-right .recGuideFellow_imgwrap {
  float: right;
  margin: 0 0 0 min(calc((45 / 1700) * 100vw), 45px);
}

.recGuideFellow_wraparound.img-left .recGuideFellow_imgwrap {
  float: left;
  margin: 0 min(calc((45 / 1700) * 100vw), 45px) 0 0;
}

.recGuideFellow_txtwrap {
  position: relative;
  z-index: 1;
  width: min(calc((720 / 1700) * 100vw), 720px);
  box-sizing: border-box;
}

.recGuideFellow_wraparound.img-right .recGuideFellow_txtwrap {
  margin: 0 auto 0 calc((100% - 1380px) / 2);
}

.recGuideFellow_wraparound.img-left .recGuideFellow_txtwrap {
  margin: 0 calc((100% - 1380px) / 2) 0 auto;
}

.recGuideFellow_tit {
  font-size: min(calc((35 / 1500) * 100vw), 35px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .1em;
}

.recGuideFellow_tit_l {
  font-size: min(calc((60 / 1500) * 100vw), 60px);
}

.recGuideFellow_desc {
  font-size: min(calc((20 / 1500) * 100vw), 20px);
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: .1em;
  margin-top: min(calc((35 / 1500) * 100vw), 35px);
}

.recGuideFellow_anchor-ul {
  display: flex;
  justify-content: center;
  margin-top: min(calc((60 / 1500) * 100vw), 60px);
}

.recGuideFellow_anchor-ul>li {
  width: 30.5%;
  box-sizing: border-box;
}

.recGuideFellow_anchor-ul>li+li {
  margin-left: 4.25%;
}

.recGuideFellow_anchor-ul_link {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background-color: #1f385a;
  border: 1px solid #1f385a;
  border-radius: 9999px;
  padding: min(calc((22 / 1500) * 100vw), 22px) .5em min(calc((22 / 1500) * 100vw), 22px);
  min-height: min(calc((100 / 1500) * 100vw), 100px);
  box-sizing: border-box;
}

.recGuideFellow_anchor-ul_link:hover {
  background-color: #fff;
}

.recGuideFellow_anchor-ul_link::after {
  content: '';
  display: block;
  width: min(calc((7 / 1500) * 100vw), 7px);
  height: min(calc((14 / 1500) * 100vw), 14px);
  background: url(../img/arrow_right_white_2.webp) no-repeat center / contain;
  transform: rotate(90deg);
  position: absolute;
  bottom: min(calc((8 / 1500) * 100vw), 8px);
  left: 0;
  right: 0;
  margin: auto;
}

.recGuideFellow_anchor-ul_link:hover::after {
  background: url(../img/arrow_top_blue_2.webp) no-repeat center / contain;
}

.recGuideFellow_anchor-ul_link_txt {
  color: #fff;
}

.recGuideFellow_anchor-ul_link:hover .recGuideFellow_anchor-ul_link_txt {
  color: #1f385a;
}

.recGuideFellow_anchor-ul_link_txt_l {
  font-size: min(calc((30 / 1500) * 100vw), 30px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .1em;
  text-align: center;
  display: block;
}

.recGuideFellow_anchor-ul_link_txt_s {
  font-size: min(calc((16 / 1500) * 100vw), 16px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .1em;
  text-align: center;
  display: block;
  margin-top: min(calc((7 / 1500) * 100vw), 7px);
}

.recGuideFellow_arrow {
  position: absolute;
  top: 0;
  left: 0;
  opacity: .5;
  z-index: 2;
  width: 100%;
}

.js-arrow-D {
  opacity: 0;
  transition: all .5s;
  transform: translate(-70px, 70px);
}

.js-arrow-D.fadein {
  opacity: 1;
  transform: translate(0, 0);
}

.recGuideFellow_arrow._1 {
  transition-delay: .5s;
}

.recGuideFellow_arrow._2 {
  transition-delay: .8s;
}

.recGuideFellow_arrow._3 {
  transition-delay: .7s;
}

.recGuideFellow_arrow._4 {
  transition-delay: .5s;
}

.recGuideFellow_arrow._5 {
  transition-delay: .11s;
}

.recGuideFellow_arrow._6 {
  transition-delay: 1.5s;
}

.recGuideFellow_arrow._7 {
  transition-delay: 1.7s;
}

.recGuideFellow_arrow._8 {
  transition-delay: 1.6s;
}


@media screen and (max-width: 1720px) {
  .recGuideFellow_txtwrap {
    width: calc(50% - ((100% - 1380px) / 2) + 1.76%);
  }
}


@media screen and (max-width: 1630px) {
  .recGuideFellow_arrow {
    bottom: 0;
  }

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


@media screen and (max-width: 1500px) {

  .recGuideFellow_wraparound.img-right .recGuideFellow_txtwrap,
  .recGuideFellow_wraparound.img-left .recGuideFellow_txtwrap {
    width: 49%;
  }

  .recGuideFellow_wraparound.img-right .recGuideFellow_txtwrap {
    margin: 0 auto 0 40px;
  }

  .recGuideFellow_wraparound.img-left .recGuideFellow_txtwrap {
    margin: 0 40px 0 auto;
  }
}


@media screen and (max-width: 767px) {
  .recGuideFellowBl {
    padding: calc((108 / 750) * 100vw) 0 calc((100 / 750) * 100vw);
  }

  .recGuideFellow_wraparound {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }

  .recGuideFellow_imgwrap {
    width: auto;
  }

  .recGuideFellow_wraparound.img-right .recGuideFellow_imgwrap,
  .recGuideFellow_wraparound.img-left .recGuideFellow_imgwrap {
    float: none;
    margin: calc((40 / 750) * 100vw) 0 0;
    padding: 0 calc((30 / 750) * 100vw);
  }

  .recGuideFellow_wraparound.img-right .recGuideFellow_txtwrap,
  .recGuideFellow_wraparound.img-left .recGuideFellow_txtwrap {
    width: auto;
    margin: 0 calc((30 / 750) * 100vw);
  }

  .recGuideFellow_tit {
    font-size: calc((42 / 750) * 100vw);
    letter-spacing: 0.05em;
    white-space: nowrap;
  }

  .recGuideFellow_tit_l {
    font-size: calc((56 / 750) * 100vw);
  }

  .recGuideFellow_desc {
    font-size: calc((26 / 750) * 100vw);
    margin-top: calc((26 / 750) * 100vw);
  }

  .recGuideFellow_anchor-ul {
    display: block;
    margin-top: calc((100 / 750) * 100vw);
  }

  .recGuideFellow_anchor-ul>li {
    width: auto;
  }

  .recGuideFellow_anchor-ul>li+li {
    margin-left: 0;
    margin-top: calc((40/750)*100vw);
  }

  .recGuideFellow_anchor-ul_link {
    padding: calc((30 / 750) * 100vw);
    min-height: calc((134 / 750) * 100vw);
  }

  .recGuideFellow_anchor-ul_link:hover {
    background-color: #1f385a;
  }

  .recGuideFellow_anchor-ul_link::after {
    width: calc((14 / 750) * 100vw);
    height: calc((28 / 750) * 100vw);
    bottom: calc((3 / 750) * 100vw);
  }

  .recGuideFellow_anchor-ul_link:hover::after {
    background: url(../img/arrow_right_white_2.webp) no-repeat center / contain;
  }

  .recGuideFellow_anchor-ul_link:hover .recGuideFellow_anchor-ul_link_txt {
    color: #fff;
  }

  .recGuideFellow_anchor-ul_link_txt_l {
    font-size: calc((36 / 750) * 100vw);
  }

  .recGuideFellow_anchor-ul_link_txt_s {
    font-size: calc((24 / 750) * 100vw);
    margin-top: calc((10 / 750) * 100vw);
  }

}


/*  「求める人物像」
-------------------------------------------*/
.recGuidePortBl {
  padding: 100px 0 0;
  color: #1f385a;
}

.recGuideFellow_ol {
  margin-top: 50px;
  display: flex;
  flex-wrap: wrap;
}

.recGuideFellow_ol>li {
  width: 48%;
  margin-right: 4%;
  box-sizing: border-box;
}

.recGuideFellow_ol>li:nth-child(even) {
  margin-right: 0;
}

.recGuideFellow_ol>li:nth-child(n+3) {
  margin-top: 50px;
}

.recGuideFellow_chuki-ul {
  margin-top: 5px;
}

.recGuideFellow_chuki-ul>li {
  font-size: min(calc((16 / 1200) * 100vw), 16px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .05em;
  text-indent: -1em;
  padding-left: 1em;
}

.recGuideFellow_chuki-ul>li+li {
  margin-top: 9px;
}

.recGuideFellow_ol>li:nth-child(3) .recUnder-num-tit_right {
  margin-top: 1.5em;
}


@media screen and (max-width: 767px) {
  .recGuidePortBl {
    padding: calc((85 / 750) * 100vw) 0 0;
  }

  .recGuideFellow_ol {
    margin-top: calc((100 / 750) * 100vw);
    display: block;
  }

  .recGuideFellow_ol>li {
    width: auto;
    margin-right: 0;
  }

  .recGuideFellow_ol>li:nth-child(n+2) {
    margin-top: calc((70 / 750) * 100vw);
  }

  .recGuideFellow_chuki-ul {
    margin-top: calc((20 / 750) * 100vw);
  }

  .recGuideFellow_chuki-ul>li {
    font-size: calc((22 / 750) * 100vw);
    line-height: 1.8;
    letter-spacing: .1em;
  }

  .recGuideFellow_chuki-ul>li+li {
    margin-top: calc((20 / 750) * 100vw);
  }

}


/*  「選考フロー（新卒採用・中途採用）」
-------------------------------------------*/
.recGuideFlowBl {
  padding: 98px 0 0;
  color: #1f385a;
}

.recGuideFlow_ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 100px;
}

.recGuideFlow_ul>li {
  width: 21.8%;
  box-sizing: border-box;
  margin-right: 4.26666%;
  background-color: #e1eff5;
  border-radius: min(calc((20 / 1700) * 100vw), 20px);
  position: relative;
  padding: min(calc((60 / 1500) * 100vw), 60px) min(calc((20 / 1500) * 100vw), 20px) min(calc((33 / 1500) * 100vw), 33px);
}

.recGuideFlow_ul>li:nth-child(4n+4) {
  margin-right: 0;
}

.recGuideFlow_ul>li:nth-child(n+5) {
  margin-top: 7.3%;
}

.recGuideFlow_ul>li+li::before {
  content: '';
  display: block;
  width: min(calc((14 / 1700) * 100vw), 14px);
  height: min(calc((26 / 1700) * 100vw), 26px);
  background: url(../img/arrow_top_lightblue.webp) no-repeat center / contain;
  position: absolute;
  left: -12%;
  top: 43.5%;
}

.recGuideFlow_ul_imawrap {
  width: 80px;
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin: auto;
  transition: ease .5s;
  z-index: 3;
}

.recGuideFlow_ul_txtwrap {
  position: relative;
  z-index: 3;
}

.recGuideFlow_ul_tit {
  font-size: min(calc((24 / 1500) * 100vw), 24px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .08em;
  text-align: center;
}

.recGuideFlow_ul_desc {
  font-size: min(calc((18 / 1500) * 100vw), 18px);
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: .1em;
  margin-top: min(calc((10 / 1500) * 100vw), 10px);
  text-align: center;
}

.recGuideFlow_ul_num {
  font-family: "Roboto Condensed";
  font-weight: 700;
  font-size: min(calc((200 / 1500) * 100vw), 200px);
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  position: absolute;
  bottom: -.16em;
  left: 0;
  right: 0;
  width: fit-content;
  height: fit-content;
  margin: auto;
  z-index: 2;
}

.recGuideFlow_ul_chuki-ul {
  margin-top: min(calc((3 / 1500) * 100vw), 3px);
}

.recGuideFlow_ul_chuki-ul>li {
  font-size: min(calc((14 / 1500) * 100vw), 14px);
  font-weight: 400;
  line-height: 1.28;
  letter-spacing: .05em;
}

.recGuideFlow_ul_chuki-ul>li+li {
  margin-top: min(calc((8 / 1500) * 100vw), 8px);
}


@media screen and (max-width: 1500px) {
  .recGuideFlow_ul_imawrap {
    width: 60px;
    top: -30px;
  }

}


@media screen and (max-width: 1200px) {
  .recGuideFlow_ul_imawrap {
    width: 50px;
    top: -25px;
  }

}


@media screen and (max-width: 767px) {
  .recGuideFlowBl {
    padding: calc((95 / 750) * 100vw) 0 0;
  }

  .recGuideFlow_ul>li {
    width: auto;
    margin-right: 0;
    border-radius: calc((20 / 750) * 100vw);
    padding: calc((70 / 750) * 100vw) calc((30 / 750) * 100vw) calc((40 / 750) * 100vw);
    min-height: auto;
  }

  .recGuideFlow_ul>li:nth-child(2n+2) {
    margin-right: 0;
  }

  .recGuideFlow_ul>li:nth-child(n+2) {
    margin-top: calc((120 / 750) * 100vw);
  }

  .recGuideFlow_ul>li+li::before {
    width: calc((28 / 750) * 100vw);
    height: calc((52 / 750) * 100vw);
    left: 0;
    right: 0;
    top: calc((-102 / 750) * 100vw);
    margin: auto;
    transform: rotate(90deg);
  }

  .recGuideFlow_ul_imawrap {
    width: calc((100 / 750) * 100vw);
    top: calc((-50 / 750) * 100vw);
  }

  .recGuideFlow_ul_tit {
    font-size: calc((29 / 750) * 100vw);
  }

  .recGuideFlow_ul_desc {
    font-size: calc((26 / 750) * 100vw);
    margin-top: calc((16 / 750) * 100vw);
  }

  .recGuideFlow_ul_num {
    font-size: calc((240 / 750) * 100vw);
  }

  .recGuideFlow_ul_chuki-ul {
    margin-top: calc((10 / 750) * 100vw);
  }

  .recGuideFlow_ul_chuki-ul>li {
    font-size: calc((22 / 750) * 100vw);
  }

  .recGuideFlow_ul_chuki-ul>li+li {
    margin-top: calc((10 / 750) * 100vw);
  }

  .recGuideFellow_ol>li:nth-child(3) .recUnder-num-tit_right {
    margin-top: 0;
  }

  .recGuideFlow_ul {
    display: block;
    margin-top: calc((90 / 750) * 100vw);
  }

}


/*  「募集要項（新卒採用・中途採用）」
-------------------------------------------*/
.recGuideRequireBl {
  padding: 106px 0 116px;
  color: #1f385a;
}

.recGuideRequire_inner {
  padding: 0 min(calc((20 / 1500) * 100vw), 20px);
}

.recGuideRequire_inner-2 {
  padding: 0 min(calc((10 / 1500) * 100vw), 10px);
}

.recGuideRequire_inner-2 .recUnder-txt-n {
  margin-top: 15px;
}

.recGuideRequire_inner-2 .recUnder-lightbox-ul .recUnder-txt-n {
  margin-top: 5px;
}

.recGuideRequire_inner-2 .recUnder-lightbox-ul .recUnder-star-ul .recUnder-txt-n,
.recGuideRequire_inner-2 .recGuideRequire_ul-wrap .recUnder-txt-n {
  margin-top: 0;
}

.recGuideRequire_inner-2 .recGuideRequire_ul-wrap .recUnder-vertical-tit+.recUnder-txt-n {
  margin-top: 13px;
}


.recUnder-lightbox-ul>li.recGuideRequire_point {
  padding-top: min(calc((47 / 1200) * 100vw), 47px);
}

.recGuideRequire_point_tit {
  border-radius: 9999px;
  background-color: #66b9d6;
  display: block;
  margin: 0 auto;
  width: min(calc((200 / 1500) * 100vw), 200px);
  box-sizing: border-box;
  padding: .8em 1em .5em 1em;
  position: absolute;
  top: -1.6em;
  left: 0;
  right: 0;
  text-align: center;
}

.recGuideRequire_point_tit_txt {
  font-family: "Roboto Condensed";
  font-weight: 700;
  font-size: min(calc((30 / 1500) * 100vw), 30px);
  color: #fff;
  text-align: center;
  letter-spacing: .05em;
  line-height: 1;
  position: relative;
  padding-left: min(calc((35 / 1500) * 100vw), 35px);
}

.recGuideRequire_point_tit_txt::before {
  content: '';
  display: block;
  width: min(calc((25 / 1500) * 100vw), 25px);
  height: min(calc((32 / 1500) * 100vw), 32px);
  background: url(../img/icn_point.webp) no-repeat center / contain;
  position: absolute;
  left: 0;
  top: 0;
}

.recGuideRequire_ul-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 32px;
}

.recGuideRequire_ul {
  width: 47%;
  box-sizing: border-box;
  margin-right: 6%;
}

.recGuideRequire_ul:nth-child(2) {
  margin-right: 0;
}

.recGuideRequire_ul>li+li {
  margin-top: 43px;
}

.recGuideRequire_ul-wrap .recUnder-vertical-tit {
  margin-left: min(calc((-10 / 1500) * 100vw), -10px);
}

.recGuideRequire_ul-wrap .recUnder-star-ul>li+li {
  margin-top: 0;
}

.recGuideRequire_inner-2 .recGuideRequire_ul-wrap .recUnder-txt-n+.recUnder-txt-n {
  margin-top: 40px;
}


@media screen and (max-width: 767px) {
  .recGuideRequireBl {
    padding: calc((107 / 750) * 100vw) 0 calc((92 / 750) * 100vw);
  }

  .recGuideRequire_inner,
  .recGuideRequire_inner-2 {
    padding: 0 calc((20 / 750) * 100vw);
  }

  .recGuideRequire_inner-2 .recUnder-txt-n {
    margin-top: calc((16 / 750) * 100vw);
  }

  .recGuideRequire_inner-2 .recGuideRequire_ul-wrap .recUnder-vertical-tit+.recUnder-txt-n {
    margin-top: calc((20 / 750) * 100vw);
  }

  .recGuideRequire_inner-2 .recUnder-lightbox-ul .recUnder-txt-n {
    margin-top: calc((10 / 750) * 100vw);
  }

  .recGuideRequire_inner-2 .recGuideRequire_ul-wrap .recUnder-txt-n+.recUnder-txt-n {
    margin-top: calc((25 / 750) * 100vw);
  }

  .recUnder-lightbox-ul>li.recGuideRequire_point {
    padding-top: calc((60 / 750) * 100vw);
  }

  .recGuideRequire_point_tit {
    width: calc((260 / 750) * 100vw);
    padding: calc((20 / 750) * 100vw);
    top: -1.4em;
  }

  .recGuideRequire_point_tit_txt {
    font-size: calc((36 / 750) * 100vw);
    padding-left: calc((51 / 750) * 100vw);
  }

  .recGuideRequire_point_tit_txt::before {
    width: calc((40 / 750) * 100vw);
    height: calc((53 / 750) * 100vw);
    top: calc((-10 / 750) * 100vw);
  }

  .recGuideRequire_ul-wrap {
    display: block;
    margin-top: calc((58 / 750) * 100vw);
  }

  .recGuideRequire_ul {
    width: auto;
    margin-right: 0;
  }

  .recGuideRequire_ul+.recGuideRequire_ul,
  .recGuideRequire_ul>li+li {
    margin-top: calc((50 / 750) * 100vw);
  }

}