@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* ---------- 初期 ---------- */
body {
  letter-spacing: 0;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  line-height: 0;
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  user-select: none; }

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

/* ---------- /共通部分 ---------- */
#jougetyuou {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto; }

#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

#resbtn {
  -webkit-appearance: none; }

.ancr {
  position: relative;
  transition: 0.5s; }

.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

.ancr:hover {
  opacity: 0.75;
  transition: 0.5s;
  cursor: pointer; }

/* ---------- /参考タグ部分 ---------- */
.wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

html {
  font-size: calc(1vw * 100 / 1920); }

/* PC */
@media screen and (min-width: 769px) {
  .sponly {
    display: none !important; }

  header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 10; }
    header .inner {
      width: 97.3958%;
      margin: 23rem auto 0;
      box-sizing: border-box;
      padding: 20rem 25rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      border-radius: 15rem;
      background: #fff;
      box-shadow: 0 0 20rem rgba(0, 0, 0, 0.04); }
      header .inner .logo {
        width: 193rem; }
      header .inner .header_right {
        display: flex;
        justify-content: flex-end;
        align-items: center; }
        header .inner .header_right .link {
          margin-right: 40rem; }
          header .inner .header_right .link a {
            display: inline-block;
            font-size: 14rem;
            letter-spacing: 0.03em;
            line-height: 1.4em;
            font-weight: 600;
            color: #000;
            padding-right: 13rem;
            background: url("../img/springcp/header_link_arrow.png") no-repeat right center;
            background-size: 11rem; }
        header .inner .header_right .header_btn {
          display: flex;
          justify-content: flex-end; }
          header .inner .header_right .header_btn .btn a {
            display: block;
            width: 100%;
            font-size: 14rem;
            letter-spacing: 0.03em;
            line-height: 1.5em;
            font-weight: 600;
            text-align: center;
            box-sizing: border-box;
            border-radius: 5rem;
            transition: 0.3s; }
            header .inner .header_right .header_btn .btn a:hover {
              filter: brightness(1.2); }
          header .inner .header_right .header_btn .btn.login {
            width: 108rem;
            margin-right: 15rem; }
            header .inner .header_right .header_btn .btn.login a {
              color: #000;
              padding: 8rem 0;
              border: solid 2rem #8FE3FF; }
          header .inner .header_right .header_btn .btn.signin {
            width: 152rem; }
            header .inner .header_right .header_btn .btn.signin a {
              color: #fff;
              padding: 10rem 0;
              background: url("../img/springcp/header_btn_bg.png") no-repeat center;
              background-size: cover; }

  #mv {
    line-height: 0; }
    #mv .mv_img {
      width: 100%; }

  /*YOUTRUSTをダウンロード*/
  .dl_btn {
    width: 489rem;
    margin: 0 auto; }
    .dl_btn a {
      display: block;
      width: 100%;
      font-size: 28rem;
      letter-spacing: 0.06em;
      line-height: 1;
      font-weight: bold;
      color: #fff;
      text-align: center;
      padding: 40rem 0;
      border-radius: 100rem;
      background: linear-gradient(to bottom, #009AA5 0%, #4AB081 50%, #A8CD52 100%);
      transition: 0.3s; }
      .dl_btn a:hover {
        filter: brightness(1.1); }

  #intro {
    margin-top: -3rem; }
    #intro .bg {
      background: url("../img/springcp/intro_bg.png") no-repeat center;
      background-size: cover; }
    #intro .inner {
      width: 85.9375%;
      margin: 0 auto;
      padding: 160rem 0; }
      #intro .inner .intro_box {
        text-align: center;
        box-sizing: border-box;
        padding: 77rem 0;
        border-radius: 13rem;
        background: rgba(0, 165, 181, 0.75);
        /* 背景のぼかし：Figmaの数値をそのままpxとして適用 */
        backdrop-filter: blur(23.6rem);
        /* ブラウザ互換性のための記述（Safariなど） */
        -webkit-backdrop-filter: blur(23.6rem);
        position: relative; }
        #intro .inner .intro_box::before {
          position: absolute;
          content: "";
          width: 1578rem;
          height: 593rem;
          top: -37rem;
          left: 16rem;
          background: url("../img/springcp/intro_box_star.png") no-repeat center;
          background-size: contain; }
        #intro .inner .intro_box .intro_box_txt {
          position: relative;
          z-index: 2;
          font-size: 25rem;
          line-height: 2em;
          font-weight: bold;
          color: #fff; }
          #intro .inner .intro_box .intro_box_txt.txt02 {
            margin: 40rem 0; }
          #intro .inner .intro_box .intro_box_txt.txt03 {
            font-size: 40rem;
            color: #FFFAA8; }
      #intro .inner .intro_btn {
        margin: 80rem auto 0; }

  #recruitment .inner {
    padding: 160rem 0 312rem; }
    #recruitment .inner h2 {
      font-size: 45rem;
      letter-spacing: 0.04em;
      font-weight: bold;
      text-align: center;
      margin-bottom: 72rem; }
      #recruitment .inner h2 span {
        display: inline-block;
        background: linear-gradient(30deg, #8A5AE4 0%, #8A5AE4 40%, #3CC9FF 90%, #3CC9FF 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
    #recruitment .inner .recruit_link {
      margin-bottom: 72rem;
      position: relative;
      z-index: 3; }
      #recruitment .inner .recruit_link ul {
        display: flex;
        justify-content: center; }
        #recruitment .inner .recruit_link ul li {
          margin: 0 6rem; }
          #recruitment .inner .recruit_link ul li a {
            display: block;
            width: auto;
            height: 100%;
            transition: 0.3s; }
            #recruitment .inner .recruit_link ul li a:hover {
              opacity: 0.8; }
            #recruitment .inner .recruit_link ul li a img {
              width: auto;
              height: 52rem; }
    #recruitment .inner .recruit_body .recruit_cont {
      padding-top: 104rem;
      margin-top: -104rem;
      margin-bottom: 70rem;
      position: relative; }
      #recruitment .inner .recruit_body .recruit_cont:last-child {
        margin-bottom: 0; }
      #recruitment .inner .recruit_body .recruit_cont .person {
        z-index: 2; }
      #recruitment .inner .recruit_body .recruit_cont.cont01 .person {
        width: 386rem;
        position: absolute;
        top: -10rem;
        left: 116rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont02 {
        z-index: 3; }
      #recruitment .inner .recruit_body .recruit_cont.cont03 {
        padding-top: 200rem;
        margin-top: -200rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont03 .person {
          width: 330rem;
          position: absolute;
          top: 24rem;
          top: 118rem;
          right: 267rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont04 {
        z-index: 4; }
      #recruitment .inner .recruit_body .recruit_cont.cont05 {
        padding-top: 234rem;
        margin-top: -234rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont05 .person {
          width: 301rem;
          position: absolute;
          top: 104rem;
          left: 195rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont06 {
        z-index: 3; }
      #recruitment .inner .recruit_body .recruit_cont.cont07 {
        padding-top: 216rem;
        margin-top: -216rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont07 .person {
          width: 291rem;
          position: absolute;
          top: 104rem;
          right: 136rem; }
      #recruitment .inner .recruit_body .recruit_cont h3 {
        width: 85.9375%;
        margin: 0 auto;
        font-size: 30rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        text-align: center;
        padding: 15rem 0;
        border-radius: 10rem;
        background: linear-gradient(30deg, #8A5AE4 0%, #8A5AE4 35%, #3CC9FF 90%, #3CC9FF 100%); }
      #recruitment .inner .recruit_body .recruit_cont .recruit_txt {
        font-size: 20rem;
        line-height: 1.7em;
        font-weight: bold;
        text-align: center;
        margin: 32rem 0; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .slick-track {
        padding-bottom: 40rem; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box {
        width: 517rem;
        box-sizing: border-box;
        padding: 30rem 25rem;
        border-radius: 10rem;
        background: #fff;
        box-shadow: 0 0 19rem rgba(0, 0, 0, 0.11);
        margin: 0 25rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_img {
          width: 100%;
          margin-bottom: 30rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box h4 {
          min-height: 78rem;
          font-size: 26rem;
          line-height: 1.5em;
          font-weight: bold; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_txt {
          min-height: 87rem;
          font-size: 16rem;
          letter-spacing: 0.03em;
          line-height: 1.8em;
          font-weight: bold;
          margin: 15rem 0 30rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_btn {
          width: 245rem;
          margin: 0 auto;
          position: relative;
          z-index: 3; }
          #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_btn a {
            display: block;
            width: 100%;
            font-size: 18rem;
            letter-spacing: 0.06em;
            line-height: 1;
            font-weight: bold;
            color: #fff;
            text-align: center;
            padding: 21rem 0;
            border-radius: 100rem;
            box-shadow: 0 4rem 4rem rgba(0, 0, 0, 0.25);
            background: linear-gradient(45deg, #8A5AE4 0%, #8A5AE4 40%, #3CC9FF 95%, #3CC9FF 100%);
            transition: 0.3s; }
            #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_btn a:hover {
              filter: brightness(1.1); }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .prev-arrow {
        width: 35rem;
        position: absolute;
        top: 50%;
        left: 115rem;
        transform: translateY(-50%);
        z-index: 5;
        filter: drop-shadow(0 0 23rem rgba(29, 60, 92, 0.25));
        cursor: pointer; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .next-arrow {
        width: 35rem;
        position: absolute;
        top: 50%;
        right: 115rem;
        transform: translateY(-50%);
        z-index: 5;
        filter: drop-shadow(0 0 23rem rgba(29, 60, 92, 0.25));
        cursor: pointer; }

  /*recruitment*/
  #campaign {
    padding-top: 104rem;
    margin-top: -104rem; }
    #campaign .bg {
      background: #00D6B5; }
    #campaign .inner {
      width: 52.083333%;
      /*1000px*/
      margin: 0 auto;
      padding: 100rem 0; }
      #campaign .inner h2 {
        font-size: 40rem;
        letter-spacing: 0.02em;
        line-height: 1;
        font-weight: bold;
        color: #FFFF00;
        text-align: center;
        margin-bottom: 53rem; }
      #campaign .inner .campaign_box {
        box-sizing: border-box;
        padding: 45rem 0;
        border-radius: 15rem;
        border: solid 3rem #fff;
        margin-bottom: 53rem; }
        #campaign .inner .campaign_box dl {
          width: 73.4%;
          /*734px*/
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          align-items: center; }
          #campaign .inner .campaign_box dl:nth-child(n+2) {
            margin-top: 24rem; }
          #campaign .inner .campaign_box dl dt {
            width: 188rem;
            font-size: 20rem;
            line-height: 1.5em;
            font-weight: bold;
            color: #00B498;
            text-align: center;
            padding: 8rem 0;
            border-radius: 67rem;
            background: #fff; }
          #campaign .inner .campaign_box dl dd {
            width: 522rem;
            font-size: 20rem;
            letter-spacing: 0.03em;
            line-height: 1.5em;
            font-weight: bold;
            color: #fff; }
      #campaign .inner .campaign_causion {
        padding: 24rem 0;
        border-radius: 15rem;
        background: #fff; }
        #campaign .inner .campaign_causion .causion_ttl {
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: bold;
          color: #00B498;
          text-align: center;
          margin-bottom: 20rem; }
        #campaign .inner .campaign_causion ul {
          width: 53.5%;
          /*535px*/
          margin: 0 auto; }
          #campaign .inner .campaign_causion ul li {
            font-size: 14rem;
            line-height: 1.4em;
            font-weight: 500;
            box-sizing: border-box;
            padding-left: 19rem;
            position: relative; }
            #campaign .inner .campaign_causion ul li:nth-child(n+2) {
              margin-top: 4rem; }
            #campaign .inner .campaign_causion ul li::before {
              position: absolute;
              content: "";
              width: 15rem;
              height: 15rem;
              left: 0;
              top: 3rem;
              border-radius: 100%;
              background: #FF9397; }
    #campaign .campaign_btm {
      padding: 100rem 0; }

  /*campaign*/
  #about {
    padding-top: 104rem;
    margin-top: -104rem; }
    #about .bg {
      background: url("../img/springcp/about_bg.png") no-repeat center;
      background-size: cover; }
    #about .inner {
      width: 52.083333%;
      /*1000px*/
      margin: 0 auto;
      padding: 70rem 0 56rem; }
      #about .inner .about_ttl {
        text-align: center;
        padding: 29rem 0;
        border-radius: 20rem;
        background: rgba(255, 255, 255, 0.8);
        /* 背景のぼかし：Figmaの数値をそのままpxとして適用 */
        backdrop-filter: blur(20rem);
        /* ブラウザ互換性のための記述（Safariなど） */
        -webkit-backdrop-filter: blur(20rem);
        margin-bottom: 70rem; }
        #about .inner .about_ttl h2 {
          display: inline-block;
          font-size: 50rem;
          letter-spacing: 0.04em;
          line-height: 1;
          font-weight: bold;
          background: linear-gradient(30deg, #00AEBB 0%, #00AEBB 40%, #A8CD52 90%, #A8CD52 100%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          margin-bottom: 30rem; }
          #about .inner .about_ttl h2 span {
            font-size: 38rem; }
        #about .inner .about_ttl .about_txt {
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: bold; }
      #about .inner .about_boxes {
        display: flex;
        justify-content: space-between; }
        #about .inner .about_boxes .about_box {
          width: 308rem;
          min-height: 792rem;
          text-align: center;
          padding: 16rem 0 0;
          box-sizing: border-box;
          border-radius: 20rem;
          background: rgba(255, 255, 255, 0.7);
          /* 背景のぼかし：Figmaの数値をそのままpxとして適用 */
          backdrop-filter: blur(20rem);
          /* ブラウザ互換性のための記述（Safariなど） */
          -webkit-backdrop-filter: blur(20rem); }
          #about .inner .about_boxes .about_box .about_box_ttl {
            font-weight: bold;
            box-sizing: border-box;
            padding: 0 33rem;
            margin-bottom: 20rem; }
            #about .inner .about_boxes .about_box .about_box_ttl .small {
              display: inline-block;
              font-size: 31rem;
              letter-spacing: 0.06em;
              line-height: 1;
              padding: 10rem 20rem; }
            #about .inner .about_boxes .about_box .about_box_ttl .big {
              width: 100%;
              font-size: 50rem;
              letter-spacing: 0.06em;
              line-height: 1;
              padding: 10rem 0;
              position: relative;
              top: -3rem; }
            #about .inner .about_boxes .about_box .about_box_ttl .bg_blue {
              background: #00FFFF; }
            #about .inner .about_boxes .about_box .about_box_ttl .bg_yellow {
              background: #FFFF00; }
            #about .inner .about_boxes .about_box .about_box_ttl .bg_pink {
              background: #FF9397; }
          #about .inner .about_boxes .about_box .about_box_txt {
            font-size: 16rem;
            line-height: 1.5em;
            font-weight: bold;
            box-sizing: border-box;
            padding: 0 10rem; }
          #about .inner .about_boxes .about_box.box01 .about_box_img {
            width: 416rem;
            margin-top: 33rem;
            position: relative;
            left: -90rem; }
          #about .inner .about_boxes .about_box.box02 .about_box_img {
            width: 333rem;
            margin: 25rem auto 0;
            position: relative;
            left: 50%;
            transform: translateX(-50%); }
          #about .inner .about_boxes .about_box.box03 .about_box_img {
            width: 378rem;
            margin-top: 38rem;
            position: relative;
            left: -33rem; }

  /*about*/
  #banner {
    padding: 100rem 0; }
    #banner .app {
      width: 400rem;
      margin: 100rem auto 0; }
      #banner .app .app_ttl {
        font-size: 20rem;
        letter-spacing: 0.04em;
        font-weight: bold;
        text-align: center; }
      #banner .app .app_box {
        margin: 11rem 0;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        #banner .app .app_box .qr {
          width: 68rem; }
        #banner .app .app_box .apple {
          width: 128rem; }
        #banner .app .app_box .google {
          width: 159rem; }
        #banner .app .app_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #banner .app .app_box a:hover {
            opacity: 0.8; }
      #banner .app ul li {
        font-size: 10rem;
        line-height: 1.2em; }
        #banner .app ul li:nth-child(n+2) {
          margin-top: 6rem; }

  /*banner*/
  #float_banner.fixed .float {
    transform: translateX(-50%);
    opacity: 1; }
  #float_banner .float {
    width: 97.395833%;
    padding: 14rem 0;
    border-radius: 15rem;
    position: fixed;
    bottom: 23rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
    transition: opacity 0.3s ease;
    z-index: 10;
    opacity: 0; }
    #float_banner .float::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      background: linear-gradient(to right, #FFBA30 0%, #C61318 26%, #C30F6C 44%, #4D6EBF 67%, #62ADB8 82%, #FFFF3C 100%);
      opacity: 0.8;
      border-radius: 15rem; }
    #float_banner .float .inner {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      z-index: 2; }
      #float_banner .float .inner .float_btn {
        width: 437rem;
        margin-right: 74rem; }
        #float_banner .float .inner .float_btn a {
          display: block;
          width: 100%;
          font-size: 24rem;
          letter-spacing: 0.06em;
          line-height: 1;
          font-weight: bold;
          text-align: center;
          padding: 16rem 0;
          border-radius: 100rem;
          background: #fff;
          box-shadow: 0 4rem 5rem rgba(8, 176, 180, 0.3);
          transition: 0.3s; }
          #float_banner .float .inner .float_btn a:hover {
            filter: brightness(1.1); }
          #float_banner .float .inner .float_btn a span {
            display: inline-block;
            background: linear-gradient(30deg, #8A5AE4 0%, #8A5AE4 40%, #3CC9FF 90%, #3CC9FF 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }
      #float_banner .float .inner .app_btn {
        width: 298rem;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        #float_banner .float .inner .app_btn .apple {
          width: 128rem; }
        #float_banner .float .inner .app_btn .google {
          width: 159rem; }
        #float_banner .float .inner .app_btn a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #float_banner .float .inner .app_btn a:hover {
            opacity: 0.8; }

  /*フロート メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    right: 0;
    bottom: 0;
    width: 445rem;
    height: 623rem;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: all .5s;
    z-index: 21;
    opacity: 0;
    background: #fff;
    box-sizing: border-box;
    border-radius: 15rem;
    background: url("../img/springcp/hum_bg.png") no-repeat center;
    background-size: cover;
    padding-top: 91rem;
    visibility: hidden; }

  .open nav.hum {
    opacity: 1;
    visibility: visible; }

  nav.hum dl {
    width: 237rem;
    margin: 0 auto; }
    nav.hum dl:nth-child(n+2) {
      margin-top: 33rem; }
    nav.hum dl dt {
      font-size: 23rem;
      letter-spacing: 0.06em;
      line-height: 1;
      font-weight: bold;
      color: #fff; }
      nav.hum dl dt a {
        color: #fff; }
    nav.hum dl dd {
      font-size: 20rem;
      letter-spacing: 0.06em;
      font-weight: bold; }
      nav.hum dl dd:first-child {
        margin-top: 21rem; }
      nav.hum dl dd:nth-child(n+2) {
        margin-top: 16rem; }
      nav.hum dl dd a {
        display: inline-block;
        color: #fff;
        padding-left: 18.5rem;
        position: relative; }
        nav.hum dl dd a::before {
          position: absolute;
          content: "";
          width: 12rem;
          height: 3rem;
          left: -1rem;
          top: 50%;
          transform: translateY(-50%);
          border-radius: 100rem;
          background: #fff; }
  nav.hum .hum_btm {
    width: 275rem;
    margin-top: 113rem;
    margin-left: 95rem;
    display: flex;
    justify-content: space-between; }
    nav.hum .hum_btm .btn a {
      display: block;
      width: 100%;
      font-size: 14rem;
      letter-spacing: 0.03em;
      line-height: 1;
      font-weight: 600;
      text-align: center;
      box-sizing: border-box;
      border-radius: 5rem;
      transition: 0.3s; }
      nav.hum .hum_btm .btn a:hover {
        filter: brightness(1.1); }
    nav.hum .hum_btm .btn.signin {
      width: 152rem; }
      nav.hum .hum_btm .btn.signin a {
        color: #fff;
        padding: 13rem 0 14rem;
        background: url("../img/springcp/footer_btn_bg.png") no-repeat center;
        background-size: cover; }
    nav.hum .hum_btm .btn.login {
      width: 108rem; }
      nav.hum .hum_btm .btn.login a {
        color: #000;
        padding: 11rem 0 12rem;
        border: solid 2rem #8FE3FF;
        background: #fff; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    top: 33rem;
    right: 25rem;
    width: 26rem;
    height: 18rem;
    transition: all .5s;
    cursor: pointer;
    border-radius: 50%;
    z-index: 23; }

  .toggle_btn span {
    display: block;
    width: 26rem;
    height: 5rem;
    position: absolute;
    left: 0;
    background-color: #8A5AE4;
    border-radius: 100rem;
    transition: all .5s; }

  .toggle_btn span:nth-child(1) {
    top: 0; }

  .toggle_btn span:nth-child(2) {
    display: none !important; }

  .toggle_btn span:nth-child(3) {
    top: 13rem; }

  .open .toggle_btn span {
    background-color: #fff; }

  .open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(6.5rem) rotate(-330deg);
    transform: translateY(6.5rem) rotate(-330deg); }

  .open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-6.5rem) rotate(330deg);
    transform: translateY(-6.5rem) rotate(330deg); }

  footer {
    background: #F5F7F7; }
    footer .inner {
      width: 52.083333%;
      /*1000px*/
      margin: 0 auto;
      padding: 50rem 0; }
      footer .inner .footer_head {
        display: flex;
        justify-content: space-between;
        padding-bottom: 80rem;
        border-bottom: solid 1rem #E1E5E5;
        margin-bottom: 45rem; }
        footer .inner .footer_head .footer_menu dl {
          font-size: 13rem;
          letter-spacing: 0.03em;
          line-height: 1.34em; }
          footer .inner .footer_head .footer_menu dl dt {
            font-weight: bold;
            margin-bottom: 20rem; }
          footer .inner .footer_head .footer_menu dl dd:nth-child(n+2) {
            margin-top: 15rem; }
          footer .inner .footer_head .footer_menu dl dd a {
            color: #000; }
            footer .inner .footer_head .footer_menu dl dd a:hover {
              text-decoration: underline; }
        footer .inner .footer_head .footer_right {
          width: 234rem; }
          footer .inner .footer_head .footer_right ul {
            display: flex;
            justify-content: flex-end;
            align-items: center;
            margin-bottom: 15rem; }
            footer .inner .footer_head .footer_right ul .share {
              font-size: 15rem;
              letter-spacing: 0.03em;
              line-height: 1.34em;
              font-weight: bold; }
            footer .inner .footer_head .footer_right ul .icon {
              width: 44rem;
              margin-left: 14rem; }
              footer .inner .footer_head .footer_right ul .icon a {
                display: block;
                width: 100%;
                transition: 0.3s; }
                footer .inner .footer_head .footer_right ul .icon a:hover {
                  opacity: 0.8; }
          footer .inner .footer_head .footer_right .btn a {
            display: block;
            width: 100%;
            font-size: 13rem;
            letter-spacing: 0.03em;
            line-height: 1;
            font-weight: 600;
            text-align: center;
            box-sizing: border-box;
            border-radius: 3rem;
            transition: 0.3s; }
            footer .inner .footer_head .footer_right .btn a:hover {
              filter: brightness(1.1); }
          footer .inner .footer_head .footer_right .btn.signin {
            margin-bottom: 15rem; }
            footer .inner .footer_head .footer_right .btn.signin a {
              color: #fff;
              padding: 16rem 0 17rem;
              background: url("../img/springcp/footer_btn_bg.png") no-repeat center;
              background-size: cover; }
          footer .inner .footer_head .footer_right .btn.login a {
            color: #000;
            padding: 15rem 0 16rem;
            border: solid 1rem #8FE3FF;
            background: #fff; }
      footer .inner .footer_btm {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        footer .inner .footer_btm .logo {
          width: 132rem; }
        footer .inner .footer_btm .footer_btm_right {
          display: flex;
          justify-content: flex-end;
          align-items: center; }
          footer .inner .footer_btm .footer_btm_right ul {
            display: flex;
            justify-content: flex-end;
            margin-right: 30rem; }
            footer .inner .footer_btm .footer_btm_right ul li {
              width: 20rem;
              margin-left: 8rem; }
              footer .inner .footer_btm .footer_btm_right ul li a {
                display: block;
                width: 100%; }
          footer .inner .footer_btm .footer_btm_right .copyright {
            font-size: 13rem;
            letter-spacing: 0.05em;
            font-weight: 500;
            color: #4E4E4E; } }
/* SP */
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 375); }

  header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 10; }
    header .inner {
      width: 100%;
      box-sizing: border-box;
      padding: 13rem 16rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      background: #fff;
      box-shadow: 0 4rem 5rem rgba(8, 176, 180, 0.3); }
      header .inner .logo {
        width: 117rem; }
      header .inner .header_right {
        display: flex;
        justify-content: flex-end;
        align-items: center; }
        header .inner .header_right .header_btn {
          display: flex;
          justify-content: flex-end; }
          header .inner .header_right .header_btn .btn a {
            display: block;
            width: 100%;
            font-size: 8.74rem;
            letter-spacing: 0.03em;
            line-height: 1.5em;
            font-weight: 600;
            text-align: center;
            box-sizing: border-box;
            border-radius: 4rem; }
          header .inner .header_right .header_btn .btn.login {
            width: 64rem;
            margin-right: 7rem; }
            header .inner .header_right .header_btn .btn.login a {
              color: #000;
              padding: 4.6rem 0;
              border: solid 2rem #8FE3FF; }
          header .inner .header_right .header_btn .btn.signin {
            width: 82rem; }
            header .inner .header_right .header_btn .btn.signin a {
              color: #fff;
              padding: 6.6rem 0;
              background: url("../img/springcp/header_btn_bg.png") no-repeat center;
              background-size: cover; }

  #mv {
    margin-top: 29rem;
    line-height: 0; }
    #mv .mv_img {
      width: 100%; }

  /*YOUTRUSTをダウンロード*/
  .dl_btn {
    width: 245rem;
    margin: 0 auto; }
    .dl_btn a {
      display: block;
      width: 100%;
      font-size: 14rem;
      letter-spacing: 0.06em;
      line-height: 1;
      font-weight: bold;
      color: #fff;
      text-align: center;
      padding: 20rem 0;
      border-radius: 100rem;
      background: linear-gradient(to bottom, #009AA5 0%, #4AB081 50%, #A8CD52 100%); }

  #intro {
    margin-top: -3rem; }
    #intro .bg {
      background: url("../img/springcp/intro_bg.png") no-repeat center;
      background-size: cover; }
    #intro .inner {
      width: 300rem;
      margin: 0 auto;
      padding: 25rem 0; }
      #intro .inner .intro_box {
        text-align: center;
        box-sizing: border-box;
        padding: 20rem 0;
        border-radius: 7rem;
        background: rgba(0, 165, 181, 0.75);
        /* 背景のぼかし：Figmaの数値をそのままpxとして適用 */
        backdrop-filter: blur(11.8rem);
        /* ブラウザ互換性のための記述（Safariなど） */
        -webkit-backdrop-filter: blur(11.8rem);
        position: relative; }
        #intro .inner .intro_box::before {
          position: absolute;
          content: "";
          width: 310rem;
          height: 350rem;
          top: -22rem;
          left: -26rem;
          background: url("../img/springcp/intro_box_star_sp.png") no-repeat center;
          background-size: contain; }
        #intro .inner .intro_box .intro_box_txt {
          position: relative;
          z-index: 2;
          font-size: 12.5rem;
          line-height: 2em;
          font-weight: bold;
          color: #fff; }
          #intro .inner .intro_box .intro_box_txt.txt02 {
            margin: 10rem 0; }
          #intro .inner .intro_box .intro_box_txt.txt03 {
            font-size: 20rem;
            line-height: 1.7em;
            color: #FFFAA8; }
      #intro .inner .intro_btn {
        margin: 20rem auto 0;
        position: relative;
        z-index: 3; }

  #recruitment .inner {
    padding: 80rem 0 92rem;
    overflow: hidden; }
    #recruitment .inner h2 {
      font-size: 31.5rem;
      letter-spacing: 0.04em;
      line-height: 1.2em;
      font-weight: bold;
      text-align: center;
      margin-bottom: 30rem; }
      #recruitment .inner h2 span {
        display: inline-block;
        background: linear-gradient(45deg, #8A5AE4 0%, #8A5AE4 30%, #3CC9FF 80%, #3CC9FF 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
    #recruitment .inner .recruit_link {
      width: 280rem;
      margin: 0 auto 60rem;
      position: relative;
      z-index: 3; }
      #recruitment .inner .recruit_link ul {
        display: flex;
        justify-content: center;
        flex-wrap: wrap; }
        #recruitment .inner .recruit_link ul li {
          margin: 0 3rem; }
          #recruitment .inner .recruit_link ul li:nth-child(n+3) {
            margin-top: 20rem; }
          #recruitment .inner .recruit_link ul li a {
            display: block;
            width: auto;
            height: 100%;
            transition: 0.3s; }
            #recruitment .inner .recruit_link ul li a:hover {
              opacity: 0.8; }
            #recruitment .inner .recruit_link ul li a img {
              width: auto;
              height: 28rem; }
    #recruitment .inner .recruit_body .recruit_cont {
      padding-top: 55rem;
      margin-top: -55rem;
      margin-bottom: 36rem;
      position: relative; }
      #recruitment .inner .recruit_body .recruit_cont:last-child {
        margin-bottom: 0; }
      #recruitment .inner .recruit_body .recruit_cont .person {
        z-index: 2; }
      #recruitment .inner .recruit_body .recruit_cont.cont01 .person {
        width: 132rem;
        position: absolute;
        top: -6rem;
        left: -9rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont02 {
        z-index: 3; }
      #recruitment .inner .recruit_body .recruit_cont.cont03 {
        padding-top: 109rem;
        margin-top: -109rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont03 .person {
          width: 113rem;
          position: absolute;
          top: 56rem;
          right: 24rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont04 {
        z-index: 3; }
      #recruitment .inner .recruit_body .recruit_cont.cont05 {
        padding-top: 125rem;
        margin-top: -125rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont05 .person {
          width: 127rem;
          position: absolute;
          top: -35rem;
          top: 35rem;
          left: -5rem; }
      #recruitment .inner .recruit_body .recruit_cont.cont06 {
        z-index: 3; }
      #recruitment .inner .recruit_body .recruit_cont.cont07 {
        padding-top: 117rem;
        margin-top: -117rem; }
        #recruitment .inner .recruit_body .recruit_cont.cont07 .person {
          width: 103rem;
          position: absolute;
          top: 55rem;
          right: -2rem; }
      #recruitment .inner .recruit_body .recruit_cont h3 {
        width: 300rem;
        margin: 0 auto;
        font-size: 15rem;
        line-height: 1;
        font-weight: 900;
        color: #fff;
        text-align: center;
        padding: 11rem 0;
        border-radius: 5rem;
        background: linear-gradient(30deg, #8A5AE4 0%, #8A5AE4 35%, #3CC9FF 90%, #3CC9FF 100%); }
      #recruitment .inner .recruit_body .recruit_cont .recruit_txt {
        width: 300rem;
        margin: 16rem auto 20rem;
        font-size: 16rem;
        line-height: 1.7em;
        font-weight: bold;
        text-align: center; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .slick-track {
        padding-bottom: 40rem;
        display: flex !important;
        justify-content: center; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes.is-only-one .recruit_box {
        width: 300rem !important;
        margin: 0 auto; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box {
        box-sizing: border-box;
        padding: 18rem 15rem;
        border-radius: 6rem;
        background: #fff;
        box-shadow: 0 0 11rem rgba(0, 0, 0, 0.11);
        margin: 0 8rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_img {
          width: 100%;
          margin-bottom: 16rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box h4 {
          min-height: 48rem;
          font-size: 16rem;
          line-height: 1.5em;
          font-weight: bold; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_txt {
          min-height: 88rem;
          font-size: 12rem;
          letter-spacing: 0.03em;
          line-height: 1.8em;
          font-weight: bold;
          margin: 9rem 0 16rem; }
        #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_btn {
          width: 154rem;
          margin: 0 auto;
          position: relative;
          z-index: 3; }
          #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .recruit_box .recruit_box_btn a {
            display: block;
            width: 100%;
            font-size: 14rem;
            letter-spacing: 0.06em;
            line-height: 1;
            font-weight: bold;
            color: #fff;
            text-align: center;
            padding: 12rem 0;
            border-radius: 100rem;
            box-shadow: 0 2rem 2rem rgba(0, 0, 0, 0.25);
            background: linear-gradient(45deg, #8A5AE4 0%, #8A5AE4 40%, #3CC9FF 95%, #3CC9FF 100%); }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .prev-arrow {
        width: 26rem;
        position: absolute;
        top: 50%;
        left: 25rem;
        transform: translateY(-50%);
        z-index: 5;
        filter: drop-shadow(0 0 23rem rgba(29, 60, 92, 0.25));
        cursor: pointer; }
      #recruitment .inner .recruit_body .recruit_cont .recruit_boxes .next-arrow {
        width: 26rem;
        position: absolute;
        top: 50%;
        right: 25rem;
        transform: translateY(-50%);
        z-index: 5;
        filter: drop-shadow(0 0 23rem rgba(29, 60, 92, 0.25));
        cursor: pointer; }

  /*recruitment*/
  #campaign {
    padding-top: 55rem;
    margin-top: -55rem; }
    #campaign .bg {
      background: #00D6B5; }
    #campaign .inner {
      width: 300rem;
      /*1000px*/
      margin: 0 auto;
      padding: 36rem 0; }
      #campaign .inner h2 {
        font-size: 28rem;
        letter-spacing: 0.02em;
        line-height: 1;
        font-weight: bold;
        color: #FFFF00;
        text-align: center;
        margin-bottom: 32rem; }
      #campaign .inner .campaign_box {
        box-sizing: border-box;
        padding: 30rem 0;
        border-radius: 10rem;
        border: solid 2rem #fff;
        margin-bottom: 30rem; }
        #campaign .inner .campaign_box dl {
          text-align: center; }
          #campaign .inner .campaign_box dl:nth-child(n+2) {
            margin-top: 24rem; }
          #campaign .inner .campaign_box dl dt {
            width: 132rem;
            margin: 0 auto 8rem;
            font-size: 14rem;
            line-height: 1.5em;
            font-weight: bold;
            color: #00B498;
            padding: 4rem 0;
            border-radius: 67rem;
            background: #fff; }
          #campaign .inner .campaign_box dl dd {
            font-size: 14rem;
            letter-spacing: 0.03em;
            line-height: 1.5em;
            font-weight: bold;
            color: #fff; }
      #campaign .inner .campaign_causion {
        padding: 17rem 0;
        border-radius: 10rem;
        background: #fff; }
        #campaign .inner .campaign_causion .causion_ttl {
          font-size: 14rem;
          line-height: 1.5em;
          font-weight: bold;
          color: #00B498;
          text-align: center;
          margin-bottom: 14rem; }
        #campaign .inner .campaign_causion ul {
          width: 257rem;
          margin: 0 auto; }
          #campaign .inner .campaign_causion ul li {
            font-size: 10rem;
            line-height: 1.5em;
            font-weight: 500;
            box-sizing: border-box;
            padding-left: 13rem;
            position: relative; }
            #campaign .inner .campaign_causion ul li:nth-child(n+2) {
              margin-top: 8rem; }
            #campaign .inner .campaign_causion ul li::before {
              position: absolute;
              content: "";
              width: 10rem;
              height: 10rem;
              left: 0;
              top: 3rem;
              border-radius: 100%;
              background: #FF9397; }
    #campaign .campaign_btm {
      padding: 44rem 0; }

  /*campaign*/
  #about {
    padding-top: 55rem;
    margin-top: -55rem;
    width: 100%;
    overflow: hidden; }
    #about .bg {
      background: url("../img/springcp/about_bg_sp.png") no-repeat center;
      background-size: cover; }
    #about .inner {
      width: 100%;
      margin: 0 auto;
      padding: 53rem 0 73rem; }
      #about .inner .about_ttl {
        width: 350rem;
        margin: 0 auto 58rem;
        text-align: center;
        padding: 15rem 0 24rem;
        border-radius: 20rem;
        background: rgba(255, 255, 255, 0.8);
        /* 背景のぼかし：Figmaの数値をそのままpxとして適用 */
        backdrop-filter: blur(20rem);
        /* ブラウザ互換性のための記述（Safariなど） */
        -webkit-backdrop-filter: blur(20rem); }
        #about .inner .about_ttl h2 {
          display: inline-block;
          font-size: 35rem;
          letter-spacing: 0.04em;
          line-height: 1.4em;
          font-weight: bold;
          background: linear-gradient(30deg, #00AEBB 0%, #00AEBB 40%, #A8CD52 90%, #A8CD52 100%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          margin-bottom: 5rem; }
          #about .inner .about_ttl h2 span {
            font-size: 26.6rem; }
        #about .inner .about_ttl .about_txt {
          font-size: 16rem;
          line-height: 1.7em;
          font-weight: bold; }
      #about .inner .about_boxes .about_box {
        width: 100%;
        box-sizing: border-box;
        text-align: center; }
        #about .inner .about_boxes .about_box .about_box_ttl {
          font-weight: bold;
          box-sizing: border-box;
          margin-bottom: 16rem; }
          #about .inner .about_boxes .about_box .about_box_ttl .small {
            width: 126rem;
            font-size: 38rem;
            letter-spacing: 0.06em;
            line-height: 1;
            padding: 12rem 0;
            margin-bottom: 16rem; }
          #about .inner .about_boxes .about_box .about_box_ttl .big {
            width: 246rem;
            font-size: 46rem;
            letter-spacing: 0.06em;
            line-height: 1;
            padding: 16rem 0; }
          #about .inner .about_boxes .about_box .about_box_ttl .bg_blue {
            background: #00FFFF; }
          #about .inner .about_boxes .about_box .about_box_ttl .bg_yellow {
            background: #FFFF00; }
          #about .inner .about_boxes .about_box .about_box_ttl .bg_pink {
            background: #FF9397; }
        #about .inner .about_boxes .about_box .about_box_txt {
          width: 100%;
          font-size: 14rem;
          line-height: 1.75em;
          font-weight: bold;
          box-sizing: border-box;
          padding: 10rem 0;
          background: #fff; }
        #about .inner .about_boxes .about_box .about_box_img {
          width: 375rem; }
        #about .inner .about_boxes .about_box.box01 .about_box_img {
          margin-top: 16rem; }
        #about .inner .about_boxes .about_box.box02 {
          margin: 78rem 0 78rem; }
          #about .inner .about_boxes .about_box.box02 .about_box_ttl .small, #about .inner .about_boxes .about_box.box02 .about_box_ttl .big {
            margin-left: auto; }
          #about .inner .about_boxes .about_box.box02 .about_box_img {
            margin: 16rem auto 0; }
        #about .inner .about_boxes .about_box.box03 .about_box_img {
          margin-top: 16rem; }

  /*about*/
  #banner {
    padding: 44rem 0; }
    #banner .app {
      width: 100%;
      margin: 40rem auto 0; }
      #banner .app .app_ttl {
        font-size: 20rem;
        letter-spacing: 0.04em;
        font-weight: bold;
        text-align: center; }
      #banner .app .app_box {
        width: 300rem;
        margin: 0 auto 11rem;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        #banner .app .app_box .apple {
          width: 128rem; }
        #banner .app .app_box .google {
          width: 159rem; }
        #banner .app .app_box a {
          display: block;
          width: 100%; }
      #banner .app ul {
        width: 246rem;
        margin: 0 auto; }
        #banner .app ul li {
          font-size: 10rem;
          letter-spacing: 0.04em;
          line-height: 1.2em; }
          #banner .app ul li:nth-child(n+2) {
            margin-top: 5rem; }

  /*banner*/
  #float_banner.fixed .float {
    transform: translateX(-50%);
    opacity: 1; }
  #float_banner .float {
    width: 100%;
    padding: 12rem 0 32rem;
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
    transition: opacity 0.3s ease;
    z-index: 10;
    opacity: 0; }
    #float_banner .float::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      background: linear-gradient(to right, #FFBA30 0%, #C61318 26%, #C30F6C 44%, #4D6EBF 67%, #62ADB8 82%, #FFFF3C 100%);
      opacity: 0.8; }
    #float_banner .float .inner {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      z-index: 2; }
      #float_banner .float .inner .float_btn {
        width: 233rem; }
        #float_banner .float .inner .float_btn a {
          display: block;
          width: 100%;
          font-size: 14rem;
          letter-spacing: 0.06em;
          line-height: 1;
          font-weight: bold;
          text-align: center;
          padding: 8rem 0;
          border-radius: 100rem;
          background: #fff;
          box-shadow: 0 4rem 5rem rgba(8, 176, 180, 0.3); }
          #float_banner .float .inner .float_btn a span {
            display: inline-block;
            background: linear-gradient(30deg, #8A5AE4 0%, #8A5AE4 40%, #3CC9FF 90%, #3CC9FF 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }

  /*フロート メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    right: 0;
    bottom: 0;
    width: 255rem;
    height: 506rem;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: all .5s;
    z-index: 21;
    opacity: 0;
    background: #fff;
    box-sizing: border-box;
    border-radius: 10rem 0 0 0;
    background: url("../img/springcp/hum_bg_sp.png") no-repeat center;
    background-size: cover;
    padding-top: 43rem;
    visibility: hidden; }

  .open nav.hum {
    opacity: 1;
    visibility: visible; }

  nav.hum dl {
    width: 180rem;
    margin: 0 auto; }
    nav.hum dl:nth-child(n+2) {
      margin-top: 35rem; }
    nav.hum dl dt {
      font-size: 18rem;
      letter-spacing: 0.06em;
      line-height: 1;
      font-weight: bold;
      color: #fff; }
      nav.hum dl dt a {
        color: #fff; }
    nav.hum dl dd {
      font-size: 15.6rem;
      letter-spacing: 0.06em;
      font-weight: bold; }
      nav.hum dl dd:first-child {
        margin-top: 24rem; }
      nav.hum dl dd:nth-child(n+2) {
        margin-top: 22rem; }
      nav.hum dl dd a {
        display: inline-block;
        color: #fff;
        padding-left: 10rem;
        position: relative; }
        nav.hum dl dd a::before {
          position: absolute;
          content: "";
          width: 9rem;
          height: 2rem;
          left: -3rem;
          top: 50%;
          transform: translateY(-50%);
          border-radius: 100rem;
          background: #fff; }
  nav.hum .hum_btm {
    width: 180rem;
    margin-top: 55rem;
    margin-left: 21rem;
    display: flex;
    justify-content: space-between; }
    nav.hum .hum_btm .btn a {
      display: block;
      width: 100%;
      font-size: 10.34rem;
      letter-spacing: 0.03em;
      line-height: 1;
      font-weight: 600;
      text-align: center;
      box-sizing: border-box;
      border-radius: 4rem; }
    nav.hum .hum_btm .btn.signin {
      width: 97rem; }
      nav.hum .hum_btm .btn.signin a {
        color: #fff;
        padding: 7.5rem 0;
        background: url("../img/springcp/footer_btn_bg.png") no-repeat center;
        background-size: cover; }
    nav.hum .hum_btm .btn.login {
      width: 76rem; }
      nav.hum .hum_btm .btn.login a {
        color: #000;
        padding: 5.5rem 0;
        border: solid 2rem #8FE3FF;
        background: #fff; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    top: 20rem;
    right: 19rem;
    width: 18rem;
    height: 13rem;
    transition: all .5s;
    cursor: pointer;
    border-radius: 50%;
    z-index: 23; }

  .toggle_btn span {
    display: block;
    width: 18rem;
    height: 4rem;
    position: absolute;
    left: 0;
    background-color: #8A5AE4;
    border-radius: 100rem;
    transition: all .5s; }

  .toggle_btn span:nth-child(1) {
    top: 0; }

  .toggle_btn span:nth-child(2) {
    display: none !important; }

  .toggle_btn span:nth-child(3) {
    top: 10rem; }

  .open .toggle_btn span {
    background-color: #fff; }

  .open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(5rem) rotate(-330deg);
    transform: translateY(5rem) rotate(-330deg); }

  .open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-5rem) rotate(330deg);
    transform: translateY(-5rem) rotate(330deg); }

  footer {
    background: #F5F7F7; }
    footer .inner {
      width: 317rem;
      margin: 0 auto;
      padding: 40rem 0; }
      footer .inner .footer_head {
        padding-bottom: 36rem;
        border-bottom: solid 1rem #E1E5E5;
        margin-bottom: 36rem; }
        footer .inner .footer_head .footer_menu {
          margin-bottom: 36rem; }
          footer .inner .footer_head .footer_menu dl {
            font-size: 13rem;
            letter-spacing: 0.03em;
            line-height: 1.34em; }
            footer .inner .footer_head .footer_menu dl dt {
              font-weight: bold;
              margin-bottom: 20rem; }
            footer .inner .footer_head .footer_menu dl dd:nth-child(n+2) {
              margin-top: 15rem; }
            footer .inner .footer_head .footer_menu dl dd a {
              color: #000; }
              footer .inner .footer_head .footer_menu dl dd a:hover {
                text-decoration: underline; }
        footer .inner .footer_head .footer_right ul {
          display: flex;
          justify-content: center;
          align-items: center;
          flex-wrap: wrap;
          margin-bottom: 12rem; }
          footer .inner .footer_head .footer_right ul .share {
            width: 100%;
            font-size: 13rem;
            letter-spacing: 0.03em;
            line-height: 1.34em;
            font-weight: bold;
            color: #545454;
            text-align: center;
            margin-bottom: 12rem; }
          footer .inner .footer_head .footer_right ul .icon {
            width: 51rem;
            margin: 0 4rem; }
            footer .inner .footer_head .footer_right ul .icon a {
              display: block;
              width: 100%; }
        footer .inner .footer_head .footer_right .btn a {
          display: block;
          width: 100%;
          font-size: 13rem;
          letter-spacing: 0.03em;
          line-height: 1;
          font-weight: 600;
          text-align: center;
          box-sizing: border-box;
          border-radius: 3rem; }
        footer .inner .footer_head .footer_right .btn.signin {
          margin-bottom: 12rem; }
          footer .inner .footer_head .footer_right .btn.signin a {
            color: #fff;
            padding: 16rem 0 17rem;
            background: url("../img/springcp/footer_btn_bg.png") no-repeat center;
            background-size: cover; }
        footer .inner .footer_head .footer_right .btn.login a {
          color: #000;
          padding: 15rem 0 16rem;
          border: solid 1rem #8FE3FF;
          background: #fff; }
        footer .inner .footer_head .footer_right .app_btn {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-top: 40rem; }
          footer .inner .footer_head .footer_right .app_btn .apple {
            width: 139rem; }
          footer .inner .footer_head .footer_right .app_btn .google {
            width: 169rem; }
          footer .inner .footer_head .footer_right .app_btn a {
            display: block;
            width: 100%; }
      footer .inner .footer_btm .logo {
        width: 132rem;
        margin: 0 auto 36rem; }
      footer .inner .footer_btm .footer_btm_right ul {
        display: flex;
        justify-content: center;
        margin-bottom: 36rem; }
        footer .inner .footer_btm .footer_btm_right ul li {
          width: 20rem;
          margin: 0 4.5rem; }
          footer .inner .footer_btm .footer_btm_right ul li a {
            display: block;
            width: 100%; }
      footer .inner .footer_btm .footer_btm_right .copyright {
        font-size: 13rem;
        letter-spacing: 0.05em;
        font-weight: 500;
        color: #4E4E4E;
        text-align: center; } }

/*# sourceMappingURL=style_springcp.css.map */
