a {
  color: #333
}

img {
  vertical-align: bottom
}

.m0a {
  margin-right: auto;
  margin-left: auto
}

.rtop-page {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

.w1 {
  width: 1250px
}

.w2 {
  width: 1160px
}

.back-c2 {
  background-color: #465062
}

.back-c3 {
  background-color: #f4f4f4
}

.back-c4 {
  background-color: #465062
}

.tb-marg01 {
  padding: 147px 0 179px
}

.tb-marg02 {
  padding: 113px 0 124px
}

.tb-marg03 {
  padding: 75px 0 107px
}

.tb-marg04 {
  padding: 86px 0 90px
}

.tb-marg05 {
  padding: 91px 0 103px
}

.tb-marg06 {
  padding: 104px 0 82px
}

.tb-marg07 {
  padding: 160px 0 162px
}

.h-style01 {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 3px;
  text-align: center;
  color: #3e5974
}

.h-style01 span {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .7px;
  text-align: center;
  color: #a4b2be;
  display: block
}

.back-c1 {
  background-color: #eef3f7
}

.rtop-sec {
  height: 525px;
  width: 100%;
  background: url(images/recruit/saiyou00.png) no-repeat center center/cover
}

.belief-sec .belief-in .h-style01 {
  margin: 0 0 40px
}

.belief-sec .belief-in .belieftxt {
  font-size: 20px;
  font-weight: 500;
  line-height: 2.4;
  letter-spacing: -0.7px;
  text-align: center;
  color: #4f4f54
}

.rcenter-sec {
  height: 679px;
  width: 100%;
  background: url(images/recruit/saiyou01.png) no-repeat center center/cover
}

.policy-sec .policy-in .h-style01 {
  margin: 0 0 65px
}

.policy-sec .policy-in .policyrow {
  display: flex;
  gap: 0 82px
}

.policy-sec .policy-in .policyrow .policybox {
  width: 583px;
  list-style: none
}

.policy-sec .policy-in .policyrow .policybox .policyimg {
  margin: 0 0 28px
}

.policy-sec .policy-in .policyrow .policybox .policyimg img {
  height: 393px;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.policy-sec .policy-in .policyrow .policybox .itemtitle {
  font-size: 24px;
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 2.4px;
  color: #4f4f55;
  padding: 0 0 6px 0px
}

.policy-sec .policy-in .policyrow .policybox .itemtext {
  font-size: 20px;
  font-weight: 500;
  line-height: 2.4;
  letter-spacing: -0.7px;
  color: #4f4f55
}

.work-sec {
  color: #fff
}

.work-sec .work-in .worksec .h-style01 {
  color: #fff;
  padding: 0 0 7px
}

.work-sec .work-in .worksec .h-style01 span {
  color: #fff
}

.work-sec .work-in .worksec .worktxt {
  font-size: 20px;
  font-weight: 400;
  line-height: 2.4;
  letter-spacing: -0.7px;
  text-align: center;
  margin: 0 0 60px
}

.work-sec .work-in .worksec .workrow {
  display: flex;
  gap: 0 39px
}

.work-sec .work-in .worksec .workrow .workcol {
  width: 360px
}

.work-sec .work-in .worksec .workrow .workcol .galitem {
  margin: 0 0 7px
}

.work-sec .work-in .worksec .workrow .workcol .galitem .galimg {
  height: 355px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 355px;
}

.work-sec .work-in .worksec .workrow .workcol .colttl {
  font-size: 24px;
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 2.4px;
  color: #fff;
  padding: 0 0 0px 0px
}

.work-sec .work-in .worksec .workrow .workcol .coltxt {
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
  letter-spacing: -1.09px
}

.voice-sec .voice-in .h-style01 {
  margin: 0 0 36px
}

.voice-sec .voice-in .voicelst {
  display: flex;
  flex-direction: column;
  gap: 30px 0
}

.voice-sec .voice-in .voicelst .voiceitm {
  list-style: none;
  padding: 21px 27px 20px 34px;
  border-radius: 22px;
  background-color: #f5f5f5
}

.voice-sec .voice-in .voicelst .voiceitm .voicebox .nametag {
  width: 183px;
  height: 37px;
  background-color: #377dbe;
  display: flex;
  justify-content: center;
  text-align: center;
  margin: 0 0 14px;
  font-size: 20px;
  font-weight: 400;
  letter-spacing: -0.7px;
  text-align: center;
  color: #fff
}

.voice-sec .voice-in .voicelst .voiceitm .voicebox .voicetxt {
  font-size: 20px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: -0.7px;
  color: #4f4f55;
  padding: 0 0 0 52px
}

.req-sec .req-in .h-style01 {
  margin: 0 0 73px
}

.req-sec .req-in .reqwrap {
  border-top: 1px solid #c8c8c8
}

.req-sec .req-in .reqwrap .reqline {
  display: flex;
  gap: 0 42px;
  align-items: center;
  padding: 30px 0;
  border-bottom: 1px solid #c8c8c8
}

.req-sec .req-in .reqwrap .reqline .reqkey {
  margin: 0 0 0 50px;
  width: 100px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #3e5974;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .6px;
  text-align: center;
  color: #fff
}

.req-sec .req-in .reqwrap .reqline .reqval .reqtxt {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.14;
  letter-spacing: .7px;
  color: #435165
}

.faq-sec .faq-in .h-style01 {
  margin: 0 0 56px
}

.faq-sec .faq-in .faqpair {
  padding: 52px 60px 70px;
  background-color: #f8f8f8;
  margin: 0 0 20px
}

.faq-sec .faq-in .faqpair .faqques {
  display: flex;
  gap: 0 10px
}

.faq-sec .faq-in .faqpair .faqques .qbadge {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: #3e5974;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 1px;
  text-align: center;
  color: #fff
}

.faq-sec .faq-in .faqpair .faqques .qtext {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: .9px;
  color: #707070;
  flex: 1
}

.faq-sec .faq-in .faqpair .faqansw {
  display: flex;
  gap: 0 10px
}

.faq-sec .faq-in .faqpair .faqansw .abadge {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: #eba387;
  font-size: 20px;
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: 1px;
  text-align: center;
  color: #fff
}

.faq-sec .faq-in .faqpair .faqansw .atext {
  font-size: 14px;
  font-weight: 500;
  line-height: 2.14;
  letter-spacing: .7px;
  color: #707070;
  flex: 1
}

.contact-sec {
  color: #fff
}

.contact-sec .contact-in .h-style01 {
  color: #fff;
  margin: 0 0 20px
}

.contact-sec .contact-in .h-style01 span {
  color: #fff
}

.contact-sec .contact-in .conttxt {
  font-size: 20px;
  font-weight: 400;
  line-height: 2.4;
  letter-spacing: -0.7px;
  text-align: center;
  margin: 0 0 18px
}

.contact-sec .contact-in .contbtn {
  width: 380px;
  margin: 0 auto;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #999;
  color: #fff;
  border-radius: 300px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .7px;
  text-align: center;
  text-decoration: none
}

.brsp1 {
  display: none
}

.brssp02 {
  display: none
}

.rtop-page img,
.rtop-page iframe,
.rtop-page object {
  max-width: 100%;
  height: auto
}

.pc-display-inl {
  display: inline !important
}

.pc-display-block {
  display: block !important
}

.pc-display-none {
  display: none !important
}

@media only screen and (max-width: 480px) {
  .u-br-c br {
    display: none
  }

  .sp-display-block {
    display: block !important
  }

  .sp-display-inl {
    display: inline !important
  }

  .sp-display-none {
    display: none !important
  }

  .w1 {
    width: 90%
  }

  .w2 {
    width: 90%
  }

  .tb-marg01 {
    padding: 60px 0 79px
  }

  .tb-marg02 {
    padding: 75px 0 94px
  }

  .tb-marg03 {
    padding: 50px 0 80px
  }

  .tb-marg04 {
    padding: 70px 0 70px
  }

  .tb-marg05 {
    padding: 71px 0 79px
  }

  .tb-marg06 {
    padding: 75px 0 57px
  }

  .tb-marg07 {
    padding: 110px 0 112px
  }

  .rtop-sec {
    height: 304px;
    background: url(images/recruit/saiyou00.png) no-repeat -152px 0/cover
  }

  .h-style01 {
    font-size: 20px
  }

  .h-style01 span {
    font-size: 11px
  }

  .belief-sec .belief-in .belieftxt {
    font-size: 14px;
    line-height: 1.8;
    text-align: left
  }

  .belief-in {
    width: 90%;
    margin: 0 auto
  }

  .rcenter-sec {
    height: 348px
  }

  .belief-sec .belief-in .h-style01 {
    margin: 0 0 20px
  }

  .brsp1 {
    display: inline
  }

  .policy-sec .policy-in .h-style01 {
    margin: 0 0 35px
  }

  .policy-sec .policy-in .policyrow {
    flex-direction: column;
    gap: 30px 0
  }

  .policy-sec .policy-in .policyrow .policybox {
    width: 100%;
    list-style: none
  }

  .policy-sec .policy-in .policyrow .policybox .itemtitle {
    font-size: 16px;
    padding: 0 0 6px 0px
  }

  .policy-sec .policy-in .policyrow .policybox .itemtext {
    font-size: 14px;
    line-height: 1.8
  }

  .policy-sec .policy-in .policyrow .policybox .policyimg {
    margin: 0 0 14px
  }

  .work-sec .work-in .worksec .worktxt {
    font-size: 14px;
    text-align: left;
    margin: 0 0 20px
  }

  .work-sec .work-in .worksec .workrow {
    gap: 30px 0;
    flex-direction: column
  }

  .work-sec .work-in .worksec .workrow .workcol {
    width: 100%
  }

  .work-sec .work-in .worksec .workrow .workcol .colttl {
    font-size: 20px;
    padding: 0
  }

  .work-sec .work-in .worksec .workrow .workcol .coltxt {
    line-height: 1.8
  }

  .voice-sec .voice-in .h-style01 {
    margin: 0 0 19px
  }

  .voice-sec .voice-in .voicelst .voiceitm {
    padding: 21px 15px 20px 15px;
    border-radius: 20px
  }

  .voice-sec .voice-in .voicelst .voiceitm .voicebox .nametag {
    width: 130px;
    height: 31px;
    margin: 0 0 10px;
    font-size: 16px
  }

  .voice-sec .voice-in .voicelst .voiceitm .voicebox .voicetxt {
    font-size: 14px;
    line-height: 1.8;
    padding: 0
  }

  .req-sec .req-in .h-style01 {
    margin: 0 0 32px
  }

  .req-sec .req-in .reqwrap .reqline .reqkey {
    margin: 0 0 8px
  }

  .req-sec .req-in .reqwrap .reqline {
    gap: 0 42px;
    align-items: flex-start;
    padding: 24px 0 14px 0;
    flex-direction: column
  }

  .faq-sec .faq-in .h-style01 {
    margin: 0 0 25px
  }

  .faq-sec .faq-in .faqpair {
    padding: 28px 20px 20px;
    background-color: #f8f8f8;
    margin: 0 0 20px
  }

  .contact-sec .contact-in .conttxt {
    font-size: 16px;
    line-height: 2;
    margin: 0 0 18px
  }

  .brssp02 {
    display: inline
  }

  .contact-sec .contact-in .contbtn {
    width: 90%;
    height: 52px
  }
}

/*# sourceMappingURL=style.css.map */