/* CSS Document */
h3 {
  font-size: 50px;
  font-size: 5rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: 0 0 2rem 4rem; }
  @media screen and (max-width: 991px) {
    h3 {
      font-size: 40px;
      font-size: 4rem;
      margin-left: 3rem; } }
  @media screen and (max-width: 575px) {
    h3 {
      font-size: 32px;
      font-size: 3.2rem;
      margin: 0 0 1rem 1rem; } }
  h3 span {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.1em;
    margin-left: 2rem; }
    @media screen and (max-width: 575px) {
      h3 span {
        font-size: 16px;
        font-size: 1.6rem;
        margin-left: 1rem; } }

#recruit-main {
  padding-top: 0; }
  #recruit-main .container {
    position: relative; }
  #recruit-main .recruit-img {
    overflow: hidden;
    margin-right: calc(50% - 50vw);
    height: 540px;
    margin-bottom: 7rem; }
    @media screen and (max-width: 1199px) {
      #recruit-main .recruit-img {
        height: 450px; } }
    @media screen and (max-width: 991px) {
      #recruit-main .recruit-img {
        height: 350px;
        margin-bottom: 6rem; } }
    @media screen and (max-width: 767px) {
      #recruit-main .recruit-img {
        height: 300px;
        margin-bottom: 4rem; } }
    @media screen and (max-width: 575px) {
      #recruit-main .recruit-img {
        height: 250px;
        margin-bottom: 3rem; } }
    #recruit-main .recruit-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: top; }
      @media screen and (max-width: 991px) {
        #recruit-main .recruit-img img {
          object-position: center; } }
  #recruit-main .recruit-img-2 {
    position: absolute;
    right: 0;
    top: 370px;
    box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.3); }
    @media screen and (max-width: 1199px) {
      #recruit-main .recruit-img-2 {
        top: 285px; } }
    @media screen and (max-width: 991px) {
      #recruit-main .recruit-img-2 {
        width: 310px;
        top: 230px; } }
    @media screen and (max-width: 767px) {
      #recruit-main .recruit-img-2 {
        width: 250px;
        top: 205px; } }
    @media screen and (max-width: 575px) {
      #recruit-main .recruit-img-2 {
        display: none; } }
  #recruit-main .recruit-img-3 {
    width: 595px;
    margin: 10rem auto 6rem;
    box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.3); }
    @media screen and (max-width: 991px) {
      #recruit-main .recruit-img-3 {
        margin: 8rem auto 6rem;
        width: 500px; } }
    @media screen and (max-width: 767px) {
      #recruit-main .recruit-img-3 {
        width: 400px; } }
    @media screen and (max-width: 575px) {
      #recruit-main .recruit-img-3 {
        width: 100%;
        margin: 6rem auto 4rem; } }
    #recruit-main .recruit-img-3 img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  #recruit-main h3 {
    font-size: 30px;
    font-size: 3rem;
    margin-left: 0;
    line-height: 1.75; }
    @media screen and (max-width: 991px) {
      #recruit-main h3 {
        line-height: 1.6; } }
    @media screen and (max-width: 575px) {
      #recruit-main h3 {
        font-size: 25px;
        font-size: 2.5rem;
        line-height: 1.5; } }
  #recruit-main h4 {
    font-size: 50px;
    font-size: 5rem;
    font-weight: 600;
    margin-bottom: 5rem; }
    @media screen and (max-width: 991px) {
      #recruit-main h4 {
        font-size: 40px;
        font-size: 4rem;
        margin-bottom: 4rem; } }
    @media screen and (max-width: 575px) {
      #recruit-main h4 {
        font-size: 32px;
        font-size: 3.2rem;
        margin-bottom: 3rem; } }
  @media screen and (max-width: 575px) {
    #recruit-main p {
      text-align: justify !important; } }
  #recruit-main p span {
    display: block;
    text-align: right; }

#slide {
  padding: 0; }
  #slide .swiper-container {
    width: 100%;
    height: 350px;
    margin-bottom: 25px; }
    @media screen and (max-width: 1199px) {
      #slide .swiper-container {
        height: 250px; } }
    @media screen and (max-width: 991px) {
      #slide .swiper-container {
        height: 190px;
        margin-bottom: 20px; } }
    @media screen and (max-width: 767px) {
      #slide .swiper-container {
        height: 190px;
        margin-bottom: 15px; } }
    @media screen and (max-width: 575px) {
      #slide .swiper-container {
        height: 180px;
        margin-bottom: 10px; } }
    #slide .swiper-container .swiper-wrapper {
      transition-timing-function: linear; }
    #slide .swiper-container .swiper-slide {
      width: 700px; }
      @media screen and (max-width: 1199px) {
        #slide .swiper-container .swiper-slide {
          width: 500px; } }
      @media screen and (max-width: 991px) {
        #slide .swiper-container .swiper-slide {
          width: 380px; } }
      @media screen and (max-width: 767px) {
        #slide .swiper-container .swiper-slide {
          width: 380px; } }
      @media screen and (max-width: 575px) {
        #slide .swiper-container .swiper-slide {
          width: 375px; } }
      #slide .swiper-container .swiper-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    #slide .swiper-container:last-child {
      margin-bottom: 0; }

#recruitment .profile-img {
  overflow: hidden;
  height: 540px;
  margin-left: calc(50% - 50vw);
  text-align: right; }
  @media screen and (max-width: 1199px) {
    #recruitment .profile-img {
      height: 450px; } }
  @media screen and (max-width: 991px) {
    #recruitment .profile-img {
      height: 350px; } }
  @media screen and (max-width: 767px) {
    #recruitment .profile-img {
      height: 300px; } }
  @media screen and (max-width: 575px) {
    #recruitment .profile-img {
      height: 250px; } }
  #recruitment .profile-img img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
    @media screen and (max-width: 991px) {
      #recruitment .profile-img img {
        object-position: center left; } }
#recruitment table {
  width: 100%;
  margin: 8rem auto 0; }
  @media screen and (max-width: 991px) {
    #recruitment table {
      margin: 6rem auto 0; } }
  @media screen and (max-width: 575px) {
    #recruitment table {
      margin: 4rem auto 0; } }
  #recruitment table tr {
    width: 100%; }
    #recruitment table tr:first-child th, #recruitment table tr:first-child td {
      border-top: solid 1px rgba(61, 61, 51, 0.5); }
    @media screen and (max-width: 575px) {
      #recruitment table tr:first-child td {
        border-top: none; } }
  #recruitment table th, #recruitment table td {
    font-size: 18px;
    font-size: 1.8rem;
    border-bottom: solid 1px rgba(61, 61, 51, 0.5);
    padding: 1rem 0; }
    @media screen and (max-width: 767px) {
      #recruitment table th, #recruitment table td {
        line-height: 1.5; } }
    @media screen and (max-width: 575px) {
      #recruitment table th, #recruitment table td {
        display: block;
        font-size: 16px;
        font-size: 1.6rem; } }
  #recruitment table th {
    width: 20%;
    font-weight: 600;
    vertical-align: text-top; }
    @media screen and (max-width: 1199px) {
      #recruitment table th {
        width: 25%; } }
    @media screen and (max-width: 767px) {
      #recruitment table th {
        width: 20%; } }
    @media screen and (max-width: 575px) {
      #recruitment table th {
        width: 100%;
        padding-bottom: 0;
        border-bottom: none; } }
  #recruitment table td {
    width: 75%; }
    @media screen and (max-width: 575px) {
      #recruitment table td {
        width: 100%;
        padding-top: 0; } }
    #recruitment table td dl {
      display: flex;
      align-items: center;
      margin: 0; }
      @media screen and (max-width: 1199px) {
        #recruitment table td dl {
          flex-wrap: wrap; } }
      #recruitment table td dl dt {
        font-weight: normal;
        width: 140px;
        margin: 0; }
        @media screen and (max-width: 1199px) {
          #recruitment table td dl dt {
            width: 100%; } }
      #recruitment table td dl dd {
        margin: 0; }
