@media screen and (min-width: 768px), print {
  .seo_bread_list {
      margin-bottom: 71px;
  }

  #sexual h1.main-title {
      width: 100%;
      max-width: 1920px;
      margin: 0 auto;
      min-height: 350px;
      background: url(../images/recruit_info/h1.png) no-repeat top center;
      color: #fff;
      padding: 120px 0 50px;
      text-align: left;
  }

  #sexual .o-ttl {
      text-align: center;
      margin-bottom: 70px;
  }

  #sexual .o-ttl .deco {
      margin-bottom: 28px;
  }

  #sexual .o-ttl .ttl {
      color: #1a1a1a;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 36px;
      font-weight: 700;
      letter-spacing: 3.6px;
      line-height: 1.5;
      margin-bottom: 16px;
  }

  #sexual .o-ttl .txt-01 {
      color: #004ea2;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 20px;
      font-weight: 700;
      letter-spacing: 2px;
  }

  #sexual .policy-wrap {
      width: 1000px;
      margin: 0 auto 120px;
      color: #1a1a1a;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 16px;
      font-weight: 400;
      letter-spacing: 1.6px;
      line-height: 30px;
  }

  #sexual .policy-wrap p {
      margin-bottom: 20px;
  }

  #sexual .policy-wrap .lead {
      padding-bottom: 40px;
      margin-bottom: 60px;
      border-bottom: 1px solid #d9d9d9;
  }

  #sexual .policy-wrap .sec {
      padding-bottom: 40px;
      margin-bottom: 60px;
      border-bottom: 1px solid #d9d9d9;
  }

  #sexual .policy-wrap .sec:last-child {
      border-bottom: none;
      margin-bottom: 0;
  }

  #sexual .policy-wrap .sec-ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      color: #1a1a1a;
      font-size: 28px;
      font-weight: 700;
      letter-spacing: 2.8px;
      line-height: 1.5;
      margin-bottom: 36px;
  }

  #sexual .policy-wrap .sec-ttl .num {
      color: #004ea2;
      font-size: 40px;
      font-weight: 600;
      letter-spacing: 2px;
      line-height: 1;
      margin-right: 24px;
      padding-right: 24px;
      border-right: 2px solid #004ea2;
  }

  #sexual .policy-wrap .quote {
      background: #f2f6fb;
      border-left: 4px solid #004ea2;
      padding: 18px 28px;
      font-weight: 700;
  }

  #sexual .policy-wrap .dot-list {
      margin-bottom: 20px;
      padding-left: 10px;
  }

  #sexual .policy-wrap .dot-list li {
      position: relative;
      padding-left: 22px;
  }

  #sexual .policy-wrap .dot-list li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 12px;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #004ea2;
  }

  #sexual .policy-wrap .case {
      margin-bottom: 20px;
  }

  #sexual .policy-wrap .case .sttl {
      color: #004ea2;
      font-size: 20px;
      font-weight: 700;
      letter-spacing: 2px;
      line-height: 32px;
      border-left: 4px solid #004ea2;
      padding-left: 20px;
      margin-bottom: 12px;
  }

  #sexual .policy-wrap .case p {
      padding-left: 24px;
  }

  #sexual .policy-wrap .note {
      font-size: 14px;
  }

  #sexual .policy-wrap .contact-box {
      background: #f2f6fb;
      padding: 36px 50px;
      margin-top: 36px;
  }

  #sexual .policy-wrap .contact-box .contact-ttl {
      color: #004ea2;
      font-size: 20px;
      font-weight: 700;
      letter-spacing: 2px;
      margin-bottom: 14px;
  }

  #sexual .policy-wrap .contact-box .contact-name {
      margin-bottom: 10px;
  }

  #sexual .policy-wrap .contact-box .contact-tel {
      font-size: 24px;
      font-weight: 700;
      letter-spacing: 2px;
      margin-bottom: 0;
  }

  #sexual .policy-wrap .contact-box .contact-tel a {
      color: #1a1a1a;
      text-decoration: none;
      pointer-events: none;
  }
}

@media screen and (max-width: 767px) {
  #sexual h1.main-title {
      width: 100vw;
      background: url(../images/recruit_info/sp-h1.png) no-repeat top center;
      color: #fff;
      padding: 20vw 0 10vw;
      text-align: center;
      margin-bottom: 3vw;
      background-size: 100%;
  }

  #sexual h1.main-title .jp {
      font-size: 3.865vw;
  }

  #sexual .o-ttl {
      text-align: center;
      padding: 6vw 4vw 0;
      margin-bottom: 8vw;
  }

  #sexual .o-ttl .deco {
      width: 8vw;
      margin: 0 auto;
      margin-bottom: 3.865vw;
  }

  #sexual .o-ttl .ttl {
      color: #1a1a1a;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 4.831vw;
      font-weight: 700;
      letter-spacing: 0.386vw;
      line-height: 1.5;
      margin-bottom: 2.415vw;
  }

  #sexual .o-ttl .txt-01 {
      color: #004ea2;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 3.623vw;
      font-weight: 700;
      letter-spacing: 0.386vw;
      line-height: 1.6;
  }

  #sexual .policy-wrap {
      width: 100%;
      padding: 0 5vw;
      margin-bottom: 15vw;
      color: #1a1a1a;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      font-size: 3.382vw;
      font-weight: 400;
      letter-spacing: 0.29vw;
      line-height: 7.246vw;
  }

  #sexual .policy-wrap p {
      margin-bottom: 3.865vw;
  }

  #sexual .policy-wrap .lead {
      padding-bottom: 4vw;
      margin-bottom: 8vw;
      border-bottom: 1px solid #d9d9d9;
  }

  #sexual .policy-wrap .sec {
      padding-bottom: 4vw;
      margin-bottom: 8vw;
      border-bottom: 1px solid #d9d9d9;
  }

  #sexual .policy-wrap .sec:last-child {
      border-bottom: none;
      margin-bottom: 0;
  }

  #sexual .policy-wrap .sec-ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      color: #1a1a1a;
      font-size: 4.348vw;
      font-weight: 700;
      letter-spacing: 0.29vw;
      line-height: 1.5;
      margin-bottom: 5vw;
  }

  #sexual .policy-wrap .sec-ttl .num {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      color: #004ea2;
      font-size: 6.28vw;
      font-weight: 600;
      line-height: 1;
      margin-right: 3.382vw;
      padding-right: 3.382vw;
      border-right: 2px solid #004ea2;
  }

  #sexual .policy-wrap .quote {
      background: #f2f6fb;
      border-left: 3px solid #004ea2;
      padding: 3vw 4vw;
      font-weight: 700;
  }

  #sexual .policy-wrap .dot-list {
      margin-bottom: 3.865vw;
  }

  #sexual .policy-wrap .dot-list li {
      position: relative;
      padding-left: 4.5vw;
  }

  #sexual .policy-wrap .dot-list li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 2.9vw;
      width: 1.8vw;
      height: 1.8vw;
      border-radius: 50%;
      background: #004ea2;
  }

  #sexual .policy-wrap .case {
      margin-bottom: 3.865vw;
  }

  #sexual .policy-wrap .case .sttl {
      color: #004ea2;
      font-size: 3.865vw;
      font-weight: 700;
      letter-spacing: 0.29vw;
      line-height: 1.75;
      border-left: 3px solid #004ea2;
      padding-left: 3.382vw;
      margin-bottom: 2vw;
  }

  #sexual .policy-wrap .note {
      font-size: 3.14vw;
  }

  #sexual .policy-wrap .contact-box {
      background: #f2f6fb;
      padding: 5vw;
      margin-top: 5vw;
  }

  #sexual .policy-wrap .contact-box .contact-ttl {
      color: #004ea2;
      font-size: 3.865vw;
      font-weight: 700;
      margin-bottom: 2vw;
  }

  #sexual .policy-wrap .contact-box .contact-name {
      margin-bottom: 2vw;
  }

  #sexual .policy-wrap .contact-box .contact-tel {
      font-size: 4.831vw;
      font-weight: 700;
      margin-bottom: 0;
  }

  #sexual .policy-wrap .contact-box .contact-tel a {
      color: #004ea2;
      text-decoration: underline;
  }
}
