/* CSS Document */
#page-link {
  margin-bottom: 6rem; }
  @media screen and (max-width: 767px) {
    #page-link {
      margin-bottom: 1rem; } }
  @media screen and (max-width: 575px) {
    #page-link {
      margin-bottom: 4rem; } }

#message {
  padding-top: 60px !important;
  margin-top: -60px !important; }
  #message .message-back {
    background-image: url("../img/recruit-bg.png");
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: cover;
    position: relative;
    padding: 15rem 0 6rem; }
    @media screen and (max-width: 1399px) {
      #message .message-back {
        padding: 17rem 0 6rem; } }
    @media screen and (max-width: 1199px) {
      #message .message-back {
        padding: 6rem 0; } }
    @media screen and (max-width: 575px) {
      #message .message-back {
        padding: 0 0 3rem; } }
    #message .message-back h2 {
      font-size: 25px;
      font-size: 2.5rem;
      color: #296ece;
      margin-bottom: 2rem; }
      @media screen and (max-width: 767px) {
        #message .message-back h2 {
          line-height: 1.75; } }
    #message .message-back p {
      text-align: center; }
      @media screen and (max-width: 575px) {
        #message .message-back p {
          text-align: justify; } }

#flow {
  padding-top: 80px !important;
  margin-top: -80px !important; }
  #flow .flow-back {
    position: relative;
    background: linear-gradient(90deg, rgba(98, 201, 255, 0.3) 0%, rgba(0, 119, 234, 0.3) 100%);
    padding: 12rem 0 20rem; }
    @media screen and (max-width: 1199px) {
      #flow .flow-back {
        padding: 10rem 0 15rem; } }
    @media screen and (max-width: 767px) {
      #flow .flow-back {
        padding: 10rem 0; } }
    @media screen and (max-width: 575px) {
      #flow .flow-back {
        padding: 6rem 0; } }
    #flow .flow-back ol {
      width: 85%;
      margin: auto;
      counter-reset: circle; }
      @media screen and (max-width: 767px) {
        #flow .flow-back ol {
          width: 95%; } }
      #flow .flow-back ol li {
        margin-bottom: 3rem;
        position: relative; }
        #flow .flow-back ol li dl {
          background: #fff;
          border-radius: 1rem;
          padding: 4rem 4rem 4rem 8rem;
          filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.2)); }
          @media screen and (max-width: 767px) {
            #flow .flow-back ol li dl {
              padding: 3rem 3rem 3rem 6rem; } }
          #flow .flow-back ol li dl dt {
            font-size: 24px;
            font-size: 2.4rem;
            color: #296ece;
            border-bottom: 1px solid #d7d7d7;
            padding-bottom: 1rem;
            margin-bottom: 1rem; }
          #flow .flow-back ol li dl dd a {
            color: #505050;
            text-decoration: underline;
            text-decoration-thickness: 0.5px; }
            #flow .flow-back ol li dl dd a:hover {
              color: #296ece;
              text-decoration: underline #296ece; }
        #flow .flow-back ol li::before {
          counter-increment: circle;
          content: counter(circle);
          position: absolute;
          top: 0;
          bottom: 0;
          left: -30px;
          margin: auto;
          display: inline-flex;
          justify-content: center;
          align-items: center;
          vertical-align: top;
          width: 60px;
          height: 60px;
          background: linear-gradient(90deg, #62c9ff 0%, #0077ea 100%);
          color: white;
          border-radius: 100%;
          font-size: 30px;
          font-size: 3rem;
          font-weight: bold;
          z-index: 1;
          padding-bottom: 0.3rem; }
          @media screen and (max-width: 575px) {
            #flow .flow-back ol li::before {
              top: 0.8em;
              bottom: auto;
              left: -15px;
              width: 50px;
              height: 50px; } }
        #flow .flow-back ol li::after {
          content: '';
          width: 8px;
          height: 30px;
          display: block;
          background-color: #296ece;
          position: absolute;
          bottom: -30px;
          left: 0;
          right: 0;
          margin: auto; }
        #flow .flow-back ol li:last-child dl dt {
          border-bottom: none;
          padding-bottom: 0;
          margin-bottom: 0; }
        #flow .flow-back ol li:last-child::after {
          display: none; }
    #flow .flow-back::after {
      content: '';
      position: absolute;
      bottom: -1px;
      margin: auto;
      background-image: url("../../img/arc-top.svg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: bottom center;
      display: block;
      height: 85px;
      width: 100%;
      z-index: 1; }
      @media screen and (max-width: 1399px) {
        #flow .flow-back::after {
          height: 75px; } }
      @media screen and (max-width: 767px) {
        #flow .flow-back::after {
          height: 40px; } }
      @media screen and (max-width: 575px) {
        #flow .flow-back::after {
          height: 25px; } }

#requirements {
  padding-top: 80px !important;
  margin-top: -80px !important; }
  #requirements .requirements-back {
    position: relative;
    padding: 8rem 0 10rem; }
    @media screen and (max-width: 767px) {
      #requirements .requirements-back {
        padding: 6rem 0; } }
    @media screen and (max-width: 575px) {
      #requirements .requirements-back {
        padding: 6rem 0 4rem; } }
    #requirements .requirements-back h2 + ul {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 65%;
      margin: auto;
      position: relative;
      z-index: 5; }
      @media screen and (max-width: 1199px) {
        #requirements .requirements-back h2 + ul {
          width: 75%; } }
      @media screen and (max-width: 991px) {
        #requirements .requirements-back h2 + ul {
          width: 90%; } }
      @media screen and (max-width: 767px) {
        #requirements .requirements-back h2 + ul {
          width: 100%;
          display: block; } }
      #requirements .requirements-back h2 + ul li {
        width: 47%;
        margin: 0 3%; }
        @media screen and (max-width: 767px) {
          #requirements .requirements-back h2 + ul li {
            width: 65%;
            margin: 0 auto; }
            #requirements .requirements-back h2 + ul li:first-of-type {
              margin-bottom: 1rem; } }
        @media screen and (max-width: 575px) {
          #requirements .requirements-back h2 + ul li {
            width: 80%; } }
        #requirements .requirements-back h2 + ul li a {
          display: block;
          border: 1px solid #296ece;
          color: #296ece;
          border-radius: 5rem;
          padding: 0.5rem 1rem;
          transition: 0.3s;
          font-size: 15px;
          font-size: 1.5rem;
          text-align: center; }
          #requirements .requirements-back h2 + ul li a:hover {
            background-color: #296ece;
            color: #fff; }
        #requirements .requirements-back h2 + ul li:last-child a {
          border: 1px solid #10bed3;
          color: #10bed3; }
          #requirements .requirements-back h2 + ul li:last-child a:hover {
            background-color: #10bed3;
            color: #fff; }
    #requirements .requirements-back #nurse {
      width: 85%;
      margin: auto;
      margin-top: -5rem;
      padding-top: 10rem;
      margin-bottom: 5rem; }
      @media screen and (max-width: 1199px) {
        #requirements .requirements-back #nurse {
          margin-top: -4rem;
          padding-top: 8rem; } }
      @media screen and (max-width: 991px) {
        #requirements .requirements-back #nurse {
          width: 100%; } }
      @media screen and (max-width: 575px) {
        #requirements .requirements-back #nurse {
          margin-top: -5rem; } }
      #requirements .requirements-back #nurse h3 {
        display: block;
        background-color: #296ece;
        color: #fff;
        padding: 1rem;
        text-align: center;
        border-radius: 10px 10px 0 0; }
        @media screen and (max-width: 575px) {
          #requirements .requirements-back #nurse h3 {
            margin-bottom: 0; } }
      #requirements .requirements-back #nurse table {
        width: 100%; }
        #requirements .requirements-back #nurse table tr th {
          width: 20%;
          color: #296ece;
          padding: 2rem;
          border-bottom: 0.5px solid #296ece; }
          @media screen and (max-width: 767px) {
            #requirements .requirements-back #nurse table tr th {
              width: 25%;
              padding: 1rem; } }
          @media screen and (max-width: 575px) {
            #requirements .requirements-back #nurse table tr th {
              width: 100%;
              display: block;
              text-align: center;
              background-color: rgba(41, 110, 206, 0.1); } }
        #requirements .requirements-back #nurse table tr td {
          width: 80%;
          padding: 2rem;
          border-bottom: 0.5px solid #296ece; }
          @media screen and (max-width: 767px) {
            #requirements .requirements-back #nurse table tr td {
              width: 75%;
              padding: 1rem; } }
          @media screen and (max-width: 575px) {
            #requirements .requirements-back #nurse table tr td {
              width: 100%;
              display: block; } }
          #requirements .requirements-back #nurse table tr td p {
            margin: 0; }
          #requirements .requirements-back #nurse table tr td p.indent {
            text-indent: -1.2em;
            padding-left: 1.2em; }
            @media screen and (max-width: 575px) {
              #requirements .requirements-back #nurse table tr td p.indent {
                text-indent: -1em;
                padding-left: 1em; } }
    #requirements .requirements-back #medical_affairs {
      width: 85%;
      margin: auto;
      margin-top: -5rem;
      padding-top: 10rem; }
      @media screen and (max-width: 1199px) {
        #requirements .requirements-back #medical_affairs {
          margin-top: -4rem;
          padding-top: 8rem; } }
      @media screen and (max-width: 991px) {
        #requirements .requirements-back #medical_affairs {
          width: 100%; } }
      @media screen and (max-width: 575px) {
        #requirements .requirements-back #medical_affairs {
          margin-top: -8rem;
          padding-top: 8rem; } }
      #requirements .requirements-back #medical_affairs h3 {
        display: block;
        background-color: #10bed3;
        color: #fff;
        padding: 1rem;
        text-align: center;
        border-radius: 10px 10px 0 0; }
        @media screen and (max-width: 575px) {
          #requirements .requirements-back #medical_affairs h3 {
            margin-bottom: 0; } }
      #requirements .requirements-back #medical_affairs table {
        width: 100%; }
        #requirements .requirements-back #medical_affairs table tr th {
          width: 20%;
          color: #10bed3;
          padding: 2rem;
          border-bottom: 0.5px solid #10bed3; }
          @media screen and (max-width: 767px) {
            #requirements .requirements-back #medical_affairs table tr th {
              width: 25%;
              padding: 1rem; } }
          @media screen and (max-width: 575px) {
            #requirements .requirements-back #medical_affairs table tr th {
              width: 100%;
              display: block;
              text-align: center;
              background-color: rgba(16, 190, 211, 0.1); } }
        #requirements .requirements-back #medical_affairs table tr td {
          width: 80%;
          padding: 2rem;
          border-bottom: 0.5px solid #10bed3; }
          @media screen and (max-width: 767px) {
            #requirements .requirements-back #medical_affairs table tr td {
              width: 75%;
              padding: 1rem; } }
          @media screen and (max-width: 575px) {
            #requirements .requirements-back #medical_affairs table tr td {
              width: 100%;
              display: block; } }
          #requirements .requirements-back #medical_affairs table tr td p {
            margin: 0; }
          #requirements .requirements-back #medical_affairs table tr td p.indent {
            text-indent: -1.2em;
            padding-left: 1.2em; }
            @media screen and (max-width: 575px) {
              #requirements .requirements-back #medical_affairs table tr td p.indent {
                text-indent: -1em;
                padding-left: 1em; } }
    #requirements .requirements-back .link-box {
      margin-top: 12rem; }
      @media screen and (max-width: 1199px) {
        #requirements .requirements-back .link-box {
          margin-top: 10rem; } }
      @media screen and (max-width: 575px) {
        #requirements .requirements-back .link-box {
          margin-top: 5rem; } }
      #requirements .requirements-back .link-box h3 {
        font-size: 24px;
        font-size: 2.4rem;
        color: #296ece;
        text-align: center;
        margin-bottom: 3rem; }
        @media screen and (max-width: 575px) {
          #requirements .requirements-back .link-box h3 {
            line-height: 1.75;
            margin-bottom: 2rem; } }
      #requirements .requirements-back .link-box ul {
        display: flex;
        align-items: center;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          #requirements .requirements-back .link-box ul {
            flex-wrap: wrap; } }
        #requirements .requirements-back .link-box ul li {
          width: 49%; }
          @media screen and (max-width: 767px) {
            #requirements .requirements-back .link-box ul li {
              width: 100%;
              margin-bottom: 2rem; } }
          #requirements .requirements-back .link-box ul li a {
            display: flex;
            border: 1px solid #296ece;
            text-align: center;
            height: 190px;
            border-radius: 2rem;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            transition: 0.3s; }
            @media screen and (max-width: 1199px) {
              #requirements .requirements-back .link-box ul li a {
                height: 160px; } }
            @media screen and (max-width: 767px) {
              #requirements .requirements-back .link-box ul li a {
                height: 140px; } }
            #requirements .requirements-back .link-box ul li a .d-flex {
              align-items: center;
              justify-content: center; }
              #requirements .requirements-back .link-box ul li a .d-flex img {
                width: 50px;
                margin-right: 1rem; }
              #requirements .requirements-back .link-box ul li a .d-flex p {
                font-size: 20px;
                font-size: 2rem;
                color: #296ece;
                font-weight: bold;
                margin: 0; }
              #requirements .requirements-back .link-box ul li a .d-flex + p {
                width: 100%;
                color: #505050;
                font-size: 22.5px;
                font-size: 2.25rem;
                font-weight: bold;
                line-height: 1; }
                #requirements .requirements-back .link-box ul li a .d-flex + p span {
                  margin-left: 0.5em;
                  font-size: 30px;
                  font-size: 3rem; }
                #requirements .requirements-back .link-box ul li a .d-flex + p span.mini-font {
                  font-weight: normal;
                  width: 100%;
                  color: #505050;
                  font-size: 14px;
                  font-size: 1.4rem; }
            #requirements .requirements-back .link-box ul li a:hover {
              background-color: rgba(41, 110, 206, 0.1);
              color: #fff; }
