@charset "UTF-8";
/* ========== 導入文 ========== */
.headImgPage {
  position: relative; }

.ttlLayer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("../img/recruit/ttl_img.png");
  background-repeat: no-repeat;
  background-position: top 50% right 10%;
  background-size: 400px 132px; }
  @media screen and (max-width: 1050px) {
    .ttlLayer {
      background-size: 300px 99px; } }
  @media screen and (max-width: 800px) {
    .ttlLayer {
      background-size: 200px 67px; } }
  @media screen and (max-width: 640px) {
    .ttlLayer {
      background-position: top 70% right 10%; } }

#recruitIntro {
  padding: 120px 0;
  background-image: url("../img/recruit/bg_intro.jpg");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
  position: relative; }
  @media screen and (max-width: 800px) {
    #recruitIntro {
      padding: 50px 0; } }
  #recruitIntro .modBloc .flexWrap {
    justify-content: space-between;
    gap: 40px; }
    @media screen and (max-width: 800px) {
      #recruitIntro .modBloc .flexWrap {
        display: block; } }
    #recruitIntro .modBloc .flexWrap h2 {
      margin-bottom: 40px;
      letter-spacing: 0.05em;
      font-size: clamp(1.4rem, 3vw, 2.4rem);
      line-height: 160%;
      color: #164088; }
      @media screen and (max-width: 1250px) {
        #recruitIntro .modBloc .flexWrap h2 {
          width: 35%; } }
      @media screen and (max-width: 800px) {
        #recruitIntro .modBloc .flexWrap h2 {
          width: 100%;
          margin-bottom: 20px; } }
      @media screen and (max-width: 800px) {
        #recruitIntro .modBloc .flexWrap h2 br {
          display: none; } }

.recruitIntroTxt {
  padding-top: 60px; }
  @media screen and (max-width: 1250px) {
    .recruitIntroTxt {
      width: 65%; } }
  @media screen and (max-width: 1050px) {
    .recruitIntroTxt {
      padding-top: 0; } }
  @media screen and (max-width: 800px) {
    .recruitIntroTxt {
      width: 100%; } }
  .recruitIntroTxt h3 {
    margin-bottom: 20px;
    font-size: clamp(1.2rem, 3vw, 1.6rem);
    line-height: 160%;
    letter-spacing: 0.05em; }
    @media screen and (max-width: 1050px) {
      .recruitIntroTxt h3 br {
        display: none; } }
  .recruitIntroTxt p {
    margin-bottom: 20px; }
    .recruitIntroTxt p:nth-last-of-type(1) {
      margin-bottom: 40px; }
  @media screen and (max-width: 800px) {
    .recruitIntroTxt .modBtn {
      text-align: center; } }

#recruit01 {
  padding-bottom: 350px;
  background: linear-gradient(to bottom, #164088 0%, #164088 60%, #fff 60%, #fff 100%); }
  @media screen and (max-width: 1050px) {
    #recruit01 {
      padding-bottom: 40px;
      background: #164088; } }
  #recruit01 .flexWrap {
    justify-content: space-between;
    flex-direction: row-reverse;
    gap: 40px; }
  #recruit01 .recruit01Img {
    width: 55%;
    position: relative; }
    @media screen and (max-width: 1050px) {
      #recruit01 .recruit01Img {
        width: 45%; } }
    @media screen and (max-width: 800px) {
      #recruit01 .recruit01Img {
        display: none; } }
    #recruit01 .recruit01Img .recruit01Img02 {
      width: 100%;
      height: auto;
      position: absolute;
      bottom: -330px;
      left: -350px; }
      @media screen and (max-width: 1250px) {
        #recruit01 .recruit01Img .recruit01Img02 {
          bottom: -300px;
          left: -300px; } }
      @media screen and (max-width: 1050px) {
        #recruit01 .recruit01Img .recruit01Img02 {
          display: none; } }
  #recruit01 .rec01Ttl {
    position: absolute;
    top: 280px;
    left: -200px; }
    @media screen and (max-width: 1050px) {
      #recruit01 .rec01Ttl {
        top: inherit;
        bottom: 0; } }
    @media screen and (max-width: 800px) {
      #recruit01 .rec01Ttl {
        display: none; } }
    #recruit01 .rec01Ttl h2 {
      color: #fff;
      font-size: clamp(2.4rem, 6vw, 8rem);
      line-height: 140%;
      letter-spacing: 0.05em;
      font-weight: 700; }
    #recruit01 .rec01Ttl h4 {
      color: #fff;
      font-size: clamp(1.8rem, 5vw, 2.6rem);
      line-height: 140%;
      letter-spacing: 0.05em;
      font-weight: 700; }
  #recruit01 .recruit01Txt {
    width: 45%; }
    @media screen and (max-width: 1050px) {
      #recruit01 .recruit01Txt {
        width: 55%; } }
    @media screen and (max-width: 800px) {
      #recruit01 .recruit01Txt {
        width: 100%; } }
    #recruit01 .recruit01Txt h3 {
      margin-bottom: 40px;
      color: #fff;
      font-size: clamp(1.4rem, 3vw, 2rem);
      line-height: 160%;
      letter-spacing: 0.05em;
      font-weight: 400; }
      @media screen and (max-width: 800px) {
        #recruit01 .recruit01Txt h3 {
          margin-bottom: 20px; } }
      @media screen and (max-width: 800px) {
        #recruit01 .recruit01Txt h3 br {
          display: none; } }
    #recruit01 .recruit01Txt p {
      color: #fff; }

#recruit02:before {
  content: '';
  display: block;
  position: absolute;
  top: 40px;
  left: 20%;
  width: 100%;
  height: 80%;
  background: #EDF5F9; }
