/* recruit */

/* サブページ：Recruit */
#recruit {
  overflow: hidden;

  .job-description .bg-img {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
    padding-bottom: 10rem;
    position: relative;
    margin-top: 35px;
    background-image: url("../../images/recruit/cnts01.png");
    background-size: cover;
  }

  .job-description .cnts-title {
    position: absolute;
    padding-bottom: 0;
    top: -35px;
  }

  .job-description .cnts-main {
    padding-top: 11rem;
  }

  .job-description .recruit-menu {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 2rem;
  }

  .job-description .recruit-menu > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%;
    padding: 4rem 2.5rem;
    color: #ffffff;
  }

  .job-description .recruit-menu .graduates-btn {
    background: #1d1b14;
    opacity: 0.95;
  }

  .job-description .recruit-menu .graduates-btn a:hover{
    background: #505050;
    color: #ffffff;
    opacity: 1;
  }

  .job-description .recruit-menu .career-btn {
    background: #505050;
    opacity: 0.95;
  }

  .job-description .recruit-menu .career-btn a:hover{
    background: #1d1b14;
    color: #ffffff;
    opacity: 1;
  }

  .job-description .recruit-menu .en-text {
    font-size: 3.45rem;
    font-weight: 600;
  }

  .job-description .recruit-menu .jp-text {
    font-size: 1.5rem;
    padding-bottom: 2rem;
  }

  .job-description .btn-wh {
    background: #ffffff;
    color: #1d1b14;
    font-weight: 500;
  }

  .employee-voice .items-start {
    align-items: flex-start;
  }

  .employee-voice .items-start .cnts-title {
    padding-bottom: 5rem;
  }

  .employee-voice .cnts-main .message {
    font-size: 1.125rem;
    font-weight: 500;
    padding: 1.2rem 0;
    line-height: 1.6;
  }

  .numbers .grid-parent {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-rows: subgrid;
  }

  .numbers .grid-parent .grid-img01 {
    grid-area: 1 / 1 / 3 / 3;
  }

  .numbers .grid-parent .grid-img02 {
    grid-area: 1 / 3 / 3 / 5;
  }

  .numbers .grid-parent .grid-img03 {
    grid-area: 1 / 5 / 3 / 7;
  }

  .numbers .grid-parent .grid-img04 {
    grid-area: 3 / 1 / 5 / 3;
  }

  .numbers .grid-parent .grid-img05 {
    grid-area: 3 / 3 / 5 / 5;
  }

  .numbers .grid-parent .grid-img06 {
    grid-area: 3 / 5 / 5 / 7;
  }

  .numbers .grid-parent .grid-img07 {
    grid-area: 5 / 1 / 7 / 4;
  }

  .numbers .grid-parent .grid-img08 {
    grid-area: 7 / 1 / 9 / 4;
  }

  .numbers .grid-parent .grid-img09 {
    grid-area: 5 / 4 / 9 / 7;
  }

  .numbers .grid-parent img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
  }

  #recruit-cnts02 {
    @media (max-width: 1199px) {
      .org-pagenation {
        margin-top: 0rem;
        justify-content: normal;
        gap: 1rem;
      }
    }
    .p-btn-area {
      align-items: center;
      gap: 2rem;
      .btn-circle-prev {
        cursor: pointer;
        border: 2px solid #000;
        border-radius: 200px;
        width: 60px;
        height: 60px;
        align-items: center;
        display: flex;
        justify-content: center;
        .org-swiper-button-prev {
          width: 25px;
          height: 40px;
        }
      }
      .btn-circle-next {
        cursor: pointer;
        border: 2px solid #000;
        border-radius: 200px;
        width: 60px;
        height: 60px;
        align-items: center;
        display: flex;
        justify-content: center;
        .org-swiper-button-next {
          width: 25px;
          height: 40px;
        }
      }
      .btn-circle-prev:hover,
      .btn-circle-next:hover{
        opacity:0.7;
      }
    }
    .swiper-pagination {
      position: static;
      width: auto;
      font-size: var(--font-size-2xl);
      letter-spacing: -2px;
    }
    @media screen and (min-width: 581px) {
      .swiper-pagination {
        line-height: var(--font-size-2xl);
        letter-spacing: -4px;
      }
    }
    @media screen and (min-width: 1200px) {
      .swiper {
        /* width=画面幅から親要素のwidth1200pxを引いて2で割った値を足すことで右寄せいっぱいにしている */
        width: calc(100% + (100vw - 1200px) / 2);
        height: 100%;
      }
    }
    @media screen and (max-width: 1330px) {
      .swiper {
        /* width=画面幅から親要素のwidth1200pxを引いて2で割った値を足すことで右寄せいっぱいにしている */
        width: calc(100% + (100vw - 1200px) / 2 + 5vw);
        height: 100%;
      }
    }
    @media screen and (max-width: 1199px) {
      .swiper {
        /* width=画面幅から親要素のwidth1200pxを引いて2で割った値を足すことで右寄せいっぱいにしている */
        width: calc(100% + 5vw);
        height: 100%;
      }
    }
    @media screen and (max-width: 599px) {
      .swiper {
        width: calc(100% + 5vw + 10px);
      }
    }


    .swiper-slide {
      img {
        filter: brightness(50%);
      }
    }
    .swiper-slide img {
      display: block;
      object-fit: cover;
      width: 100%;
      height: 464px;
      object-position: center;
    }
    .swiper-slide a {
      text-decoration: none;
      color: #1d1b14;
    }
  }
  @media screen and (max-width: 959px) {
    .job-description .cnts-title {
      top: -3.7vw;
    }
    .job-description .btn-wh {
      width: 100%;
      max-width: 252px;
    }
    .job-description .recruit-menu .en-text {
      font-size: 5.2vw;
    }
  }
  @media screen and (max-width: 700px) {
    .job-description .cnts-main {
      padding-top: 8rem;
    }
    .job-description .bg-img{
      padding-bottom: 7rem;
    }
    .job-description .recruit-menu {
      gap: 1rem;
    }
    .job-description .recruit-menu > div{
      padding: 4rem 1.5rem;
    }
    .employee-voice .items-start .cnts-title {
      padding-bottom: 4rem;
    }
    .numbers .grid-parent {
      grid-column-gap: 0.5rem;
      grid-row-gap: 0.5rem;
    }
  }
  @media screen and (max-width: 599px) {
    .job-description .cnts-main {
      padding-top: 19vw;
    }
    .job-description .bg-img{
      padding-bottom: 17vw;
    }
    .job-description .recruit-menu{
      flex-direction: column;
      gap: 2rem;
    }
    .job-description .recruit-menu > div{
      width: 100%;
      box-sizing: border-box;
      padding: 3rem 1.5rem;
    }
    .job-description .recruit-menu .en-text {
      font-size: 2.2rem;
      padding-bottom: 0.5rem;
    }
    .job-description .recruit-menu .jp-text {
      font-size: 1.2rem;
    }
    .employee-voice .items-start .cnts-title {
      padding-bottom: 10vw;
    }
    .employee-voice .cnts-main .message,
    .employee-voice .cnts-main .name{
      font-size: 0.9rem;
    }
    .numbers .grid-parent {
      grid-column-gap: 0.25rem;
      grid-row-gap: 0.25rem;
    }
  }
}

@media screen and (max-width: 599px) {
  .spdeny {
    display: none !important;
  }
  .pcdeny {
    margin-top: 2.5rem;
  }
}

@media screen and (min-width: 600px) {
  .pcdeny {
    display: none !important;
  }
  
}