@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: 'a1_gothic_m', "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  -webkit-text-size-adjust: 100%; }

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; }

/* ---------- /参考タグ部分 ---------- */
/*フォント*/
@font-face {
  font-family: 'a1_gothic_b';
  src: url("../font/AP-OTF-A1GothicStd-Bold.otf");
  font-style: normal; }
@font-face {
  font-family: 'a1_gothic_m';
  src: url("../font/AP-OTF-A1GothicStd-Medium.otf");
  font-style: normal; }
.font_a1_gothic_b {
  font-family: 'a1_gothic_b', "sans-serif"; }

.font_a1_gothic_m {
  font-family: 'a1_gothic_m', "sans-serif"; }

.notosans {
  font-family: "Noto Sans JP", "sans-serif"; }

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

  #header {
    width: 100%;
    position: absolute;
    left: 0;
    top: 18px;
    z-index: 10; }

  header {
    width: 100%;
    position: absolute;
    left: 0;
    top: 18px;
    z-index: 10; }
    header .header_inner {
      width: 92.36%;
      margin: 0 auto;
      box-sizing: border-box;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      header .header_inner .logo {
        width: 172px; }
      header .header_inner .header_btn {
        display: flex;
        justify-content: flex-end; }
        header .header_inner .header_btn a {
          display: block;
          font-size: 15px;
          line-height: 36px;
          font-weight: bold;
          color: #06262D;
          text-align: center;
          box-sizing: border-box;
          border-radius: 20px;
          border: solid 2px #06262D;
          background: #fff;
          transition: 0.3s;
          margin-left: 10px; }
          header .header_inner .header_btn a:hover {
            color: #fff;
            background: #06262D; }
          header .header_inner .header_btn a.recruit {
            width: 219px; }
          header .header_inner .header_btn a.login {
            width: 125px; }
          header .header_inner .header_btn a.signin {
            width: 195px;
            color: #fff;
            background: #06262D; }
            header .header_inner .header_btn a.signin:hover {
              color: #06262D;
              background: #fff; }

  main {
    overflow: hidden; }

  #mv {
    width: 100%;
    background: #FAE138;
    position: relative; }
    #mv::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 36.388vw;
      left: 0;
      bottom: -12.22vw;
      background: url("../img/side_job2/mv_bg.webp") no-repeat center top;
      background-size: 100%; }
    #mv .inner {
      width: 100%;
      position: relative;
      padding: 7.916vw 0 14.93vw;
      color: #06262D;
      z-index: 2; }
      #mv .inner .mv_txtarea {
        width: 76.388vw;
        margin: 0 auto; }
        #mv .inner .mv_txtarea .mv_head_txt {
          font-size: 2.013vw;
          line-height: 2em;
          font-weight: 500; }
        #mv .inner .mv_txtarea h1 {
          font-size: 6.944vw;
          line-height: 1.1em;
          font-weight: 500;
          margin-bottom: 1.94vw; }
          #mv .inner .mv_txtarea h1 span {
            display: inline-block;
            font-size: 5.555vw;
            position: relative;
            left: -0.763vw; }
        #mv .inner .mv_txtarea .mv_txtarea_img {
          width: 44.652vw; }
        #mv .inner .mv_txtarea .mv_txt_list {
          display: flex;
          justify-content: flex-start; }
          #mv .inner .mv_txtarea .mv_txt_list li {
            width: 13.88vw;
            font-size: 1.66vw;
            line-height: 1.3em;
            font-weight: 500;
            text-align: center;
            height: 6.944vw;
            box-sizing: border-box;
            padding: 1.388vw 0 0;
            background-image: url("../img/side_job2/mv_txt_list_bg_02.webp");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 100% 100%; }
            #mv .inner .mv_txtarea .mv_txt_list li:nth-child(1) {
              width: 16.875vw;
              background-image: url("../img/side_job2/mv_txt_list_bg_01.webp"); }
            #mv .inner .mv_txtarea .mv_txt_list li span {
              display: inline-block;
              font-size: 1.875vw;
              color: #00A5B5; }
      #mv .inner .mv_img {
        width: 38.656vw;
        position: absolute;
        right: 2.45vw;
        bottom: 1.46vw; }
      #mv .inner .btnarea {
        width: 60.4166%;
        position: absolute;
        bottom: 2.29vw;
        left: 50%;
        transform: translateX(-50%);
        padding: 1.04vw 1.73vw 1.04vw 2.15vw;
        box-sizing: border-box;
        background: #fff;
        border: solid 0.138vw #2D2C31;
        border-radius: 1.38vw;
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        #mv .inner .btnarea a {
          display: block;
          width: 100%;
          line-height: 0; }
        #mv .inner .btnarea .mv_btn {
          width: 18.819vw;
          position: relative;
          margin-right: 1.66vw; }
          #mv .inner .btnarea .mv_btn .mv_btn_img {
            filter: drop-shadow(0 0.277vw 0.277vw rgba(0, 0, 0, 0.25)); }
          #mv .inner .btnarea .mv_btn .mv_btn_icon {
            width: 5.138vw;
            position: absolute;
            top: -3.9vw;
            left: -3.33vw; }
        #mv .inner .btnarea .app {
          width: 16.18vw;
          display: flex;
          justify-content: space-between;
          margin-right: 1.28vw; }
          #mv .inner .btnarea .app a {
            width: 11.38vw;
            pointer-events: none; }
          #mv .inner .btnarea .app .qrcode {
            width: 4.166vw; }
        #mv .inner .btnarea .google {
          width: 18.375vw;
          display: flex;
          justify-content: space-between;
          align-items: center; }
          #mv .inner .btnarea .google a {
            width: 13.61vw;
            pointer-events: none; }
          #mv .inner .btnarea .google .qrcode {
            width: 4.13vw; }

  #worry .bg {
    background: url("../img/side_job2/worry_bg.webp") no-repeat center bottom;
    background-size: cover; }
  #worry .inner {
    width: 95%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 99px 0 75px;
    color: #fff;
    position: relative;
    z-index: 3; }
    #worry .inner h2 {
      font-size: 40px;
      line-height: 1.4em;
      font-weight: 500;
      text-align: center;
      margin-bottom: 55px; }
      #worry .inner h2 span {
        display: inline-block;
        width: 612px;
        background: url("../img/side_job2/worry_ttl_bg.webp") no-repeat center;
        background-size: contain; }
    #worry .inner #worry_ttl {
      display: inline-block; }
    #worry .inner .worry_boxes {
      display: flex;
      justify-content: space-between;
      height: 333px;
      margin-bottom: 62px; }
      #worry .inner .worry_boxes .worry_box {
        width: 30.27272727%;
        max-height: 333px;
        box-sizing: border-box;
        border-radius: 100%;
        background: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column; }
        #worry .inner .worry_boxes .worry_box:nth-child(1) .worry_box_img {
          width: 51.05%; }
        #worry .inner .worry_boxes .worry_box:nth-child(1) .worry_box_txt {
          max-width: 70%; }
        #worry .inner .worry_boxes .worry_box:nth-child(2) .worry_box_img {
          width: 70.27%; }
        #worry .inner .worry_boxes .worry_box:nth-child(3) .worry_box_img {
          width: 51.05%; }
        #worry .inner .worry_boxes .worry_box .worry_box_txt {
          width: 333px;
          max-width: 80%;
          font-size: 20px;
          line-height: 1.3em;
          font-weight: 500;
          color: #06262D;
          text-align: center;
          margin-top: 13px; }
    #worry .inner .worry_btm {
      max-width: 95%;
      width: 928px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      flex-direction: row-reverse;
      position: relative;
      z-index: 3; }
      #worry .inner .worry_btm .worry_btm_img {
        width: 50%; }
      #worry .inner .worry_btm .worry_btm_txt {
        width: 43.642%;
        font-size: 20px;
        line-height: 1.6em;
        font-weight: 500;
        color: #06262D;
        padding-bottom: 29px; }
        #worry .inner .worry_btm .worry_btm_txt span {
          display: inline-block; }
          #worry .inner .worry_btm .worry_btm_txt span.big {
            font-size: 30px; }
          #worry .inner .worry_btm .worry_btm_txt span.blue {
            color: #00A5B5; } }
@media screen and (min-width: 798px) and (max-width: 1157px) {
  #worry .inner .worry_boxes .worry_box {
    height: 28.78113vw; } }
@media screen and (min-width: 798px) {
  #reason {
    position: relative;
    color: #06262D; }
    #reason .bg {
      position: absolute;
      top: -297px;
      left: 50%;
      transform: translateX(-50%);
      width: 100%;
      height: calc( 100% + 297px );
      min-height: 1471px;
      background: url("../img/side_job2/reason_bg_02.webp") no-repeat center;
      background-size: 100% 100%;
      z-index: 2; }
    #reason .inner {
      width: 95%;
      max-width: 900px;
      margin: 0 auto;
      padding: 22px 0 127px;
      position: relative;
      z-index: 3;
      color: #06262D; }
      #reason .inner h2 {
        font-size: 40px;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 77px; }
        #reason .inner h2::before {
          position: absolute;
          content: "";
          width: 160px;
          height: 5px;
          bottom: -23px;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #reason .inner .reason_boxes .reason_box {
        box-sizing: border-box;
        background: #fff;
        border-radius: 10px;
        position: relative; }
        #reason .inner .reason_boxes .reason_box .reason_box_in .num {
          font-size: 50px;
          line-height: 1.6em;
          font-weight: bold;
          color: #00A5B5;
          box-sizing: border-box;
          padding-left: 6px; }
        #reason .inner .reason_boxes .reason_box .reason_box_in h3 {
          font-size: 25px;
          line-height: 1.6em;
          font-weight: 500;
          margin: 0 0 13px; }
        #reason .inner .reason_boxes .reason_box .reason_box_in .reason_box_img {
          position: absolute;
          top: 50%;
          transform: translateY(-50%); }
        #reason .inner .reason_boxes .reason_box .reason_box_in .reason_box_txt {
          font-size: 16px;
          font-weight: 500;
          line-height: 1.6em; }
        #reason .inner .reason_boxes .reason_box.box01 {
          padding: 15px 0 45px 58px; }
          #reason .inner .reason_boxes .reason_box.box01 .reason_box_in {
            width: 53.563%; }
            #reason .inner .reason_boxes .reason_box.box01 .reason_box_in .reason_box_img {
              width: 29.77%;
              right: 7.22%; }
        #reason .inner .reason_boxes .reason_box.box02 {
          padding: 8px 55px 27px 0;
          margin: 29px 0; }
          #reason .inner .reason_boxes .reason_box.box02 .reason_box_in {
            width: 44.379%;
            margin-left: auto; }
            #reason .inner .reason_boxes .reason_box.box02 .reason_box_in .reason_box_img {
              width: 35.22%;
              left: 6.88%; }
        #reason .inner .reason_boxes .reason_box.box03 {
          padding: 28px 0 44px 58px; }
          #reason .inner .reason_boxes .reason_box.box03 .reason_box_in {
            width: 36.82%; }
            #reason .inner .reason_boxes .reason_box.box03 .reason_box_in .reason_box_img {
              width: 45.55%;
              right: 6.11%; } }
@media screen and (min-width: 798px) and (max-width: 1440px) {
  #reason {
    position: relative; }
    #reason .bg {
      background: url("../img/side_job2/reason_bg.webp") no-repeat center;
      background-size: 2066px 100%; } }
@media screen and (min-width: 798px) {
  #recruit .inner {
    width: 95%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 75px 0 130px;
    color: #06262D; }
    #recruit .inner h2 {
      font-size: 40px;
      line-height: 1.4em;
      font-weight: 500;
      text-align: center;
      position: relative;
      margin-bottom: 116px; }
      #recruit .inner h2::before {
        position: absolute;
        content: "";
        width: 160px;
        height: 5px;
        bottom: -23px;
        left: 50%;
        transform: translateX(-50%);
        background: #00A5B5; }
    #recruit .inner .recruit_boxes {
      display: flex;
      justify-content: space-between; }
      #recruit .inner .recruit_boxes .recruit_box {
        width: 31.818%;
        position: relative;
        box-sizing: border-box;
        padding: 44px 14px 25px 22px;
        background: #F5F5F5;
        border-radius: 10px; }
        #recruit .inner .recruit_boxes .recruit_box h3 {
          width: 100%;
          max-width: 266px;
          font-size: 20px;
          line-height: 1.4em;
          color: #fff;
          text-align: center;
          padding: 6px 0;
          background: #00A5B5;
          border-radius: 20px;
          position: absolute;
          top: -19px;
          left: 50%;
          transform: translateX(-50%); }
        #recruit .inner .recruit_boxes .recruit_box dl {
          display: flex;
          justify-content: flex-start;
          align-items: flex-start;
          flex-wrap: wrap; }
          #recruit .inner .recruit_boxes .recruit_box dl dt {
            width: 76px;
            margin-right: 12px;
            font-size: 16px;
            line-height: 23px;
            font-weight: 500;
            color: #fff;
            text-align: center;
            background: #6F7787;
            margin-bottom: 15px; }
            #recruit .inner .recruit_boxes .recruit_box dl dt:last-of-type {
              margin-bottom: 0; }
          #recruit .inner .recruit_boxes .recruit_box dl dd {
            width: calc( 100% - 88px );
            font-size: 16px;
            line-height: 1.4em;
            font-weight: 500;
            margin-bottom: 15px; }
            #recruit .inner .recruit_boxes .recruit_box dl dd:last-of-type {
              margin-bottom: 0; }
    #recruit .inner .recruit_btn {
      width: 270px;
      margin: 80px auto 0; }
      #recruit .inner .recruit_btn a {
        display: block;
        width: 100%;
        font-size: 20px;
        line-height: 1.2em;
        font-weight: 500;
        color: #fff;
        box-sizing: border-box;
        padding: 16px 0 15px 35px;
        border-radius: 7.69vw;
        background: url("../img/side_job2/btn_arrow.webp") no-repeat right 24px center #06262D;
        background-size: 9px;
        transition: 0.3s; }
        #recruit .inner .recruit_btn a:hover {
          opacity: 0.8; } }
@media screen and (min-width: 798px) and (max-width: 850px) {
  #recruit .inner .recruit_boxes .recruit_box h3 {
    font-size: 18px; } }
@media screen and (min-width: 798px) {
  #voice .bg {
    width: 100%;
    background: #E4F4F4; }
    #voice .bg .inner {
      width: 95%;
      max-width: 1080px;
      margin: 0 auto;
      padding: 70px 0 118px;
      position: relative;
      color: #06262D; }
      #voice .bg .inner h2 {
        font-size: 40px;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 93px; }
        #voice .bg .inner h2::before {
          position: absolute;
          content: "";
          width: 160px;
          height: 5px;
          bottom: -23px;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #voice .bg .inner .voice_boxes {
        display: flex;
        justify-content: space-between; }
        #voice .bg .inner .voice_boxes .voice_box {
          width: 30.555%; }
          #voice .bg .inner .voice_boxes .voice_box .voice_box_txt {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            padding: 27px 10% 24px;
            box-sizing: border-box;
            min-height: 195px;
            background: #fff;
            border-radius: 10px;
            position: relative; }
            #voice .bg .inner .voice_boxes .voice_box .voice_box_txt::before {
              position: absolute;
              content: "";
              width: 0;
              height: 0;
              bottom: -21px;
              left: 50%;
              transform: translateX(-50%);
              border-style: solid;
              border-right: 23px solid transparent;
              border-left: 23px solid transparent;
              border-top: 40px solid #ffffff;
              border-bottom: 0; }
            #voice .bg .inner .voice_boxes .voice_box .voice_box_txt p {
              font-size: 16px;
              line-height: 1.5em;
              font-weight: 500; }
          #voice .bg .inner .voice_boxes .voice_box .voice_box_img {
            text-align: center;
            margin: 36px auto 0; }
            #voice .bg .inner .voice_boxes .voice_box .voice_box_img img {
              width: 143px;
              max-width: 100%; }
            #voice .bg .inner .voice_boxes .voice_box .voice_box_img span {
              display: block;
              font-size: 16px;
              line-height: 1.5em;
              font-weight: 500;
              margin-top: 8px; }

  #flow {
    position: relative; }
    #flow .bg {
      width: 100%;
      height: calc( 100% + 57px );
      border-radius: 40px 40px 0 0;
      background: #fff;
      position: absolute;
      left: 0;
      top: -57px; }
    #flow .inner {
      width: 95%;
      max-width: 1010px;
      margin: 0 auto;
      padding-bottom: 105px;
      position: relative;
      z-index: 3;
      color: #06262D; }
      #flow .inner h2 {
        font-size: 40px;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 109px; }
        #flow .inner h2::before {
          position: absolute;
          content: "";
          width: 160px;
          height: 5px;
          bottom: -23px;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }

  #faq .bg {
    width: 100%;
    background: #F5F5F5; }
    #faq .bg .inner {
      width: 95%;
      max-width: 780px;
      margin: 0 auto;
      padding: 140px 0 111px;
      position: relative;
      color: #06262D; }
      #faq .bg .inner h2 {
        font-size: 40px;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 109px; }
        #faq .bg .inner h2::before {
          position: absolute;
          content: "";
          width: 160px;
          height: 5px;
          bottom: -23px;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #faq .bg .inner .faq_cont {
        width: 100%; }
        #faq .bg .inner .faq_cont .faq_box {
          background: #fff;
          border-radius: 20px; }
          #faq .bg .inner .faq_cont .faq_box:nth-child(n+2) {
            margin-top: 15px; }
          #faq .bg .inner .faq_cont .faq_box .faq_q_txt {
            font-size: 18px;
            line-height: 2em;
            box-sizing: border-box;
            padding: 17px 50px 17px 29px;
            position: relative;
            cursor: pointer; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt::before {
              position: absolute;
              content: "";
              width: 18px;
              height: 4px;
              right: 30px;
              top: 50%;
              transform: translateY(-50%);
              background: #00A5B5; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt::after {
              position: absolute;
              content: "";
              width: 18px;
              height: 4px;
              right: 30px;
              top: 50%;
              transform: translateY(-50%) rotate(-90deg);
              background: #00A5B5;
              transition: 0.3s; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt.open::after {
              transform: translateY(-50%) rotate(0); }
          #faq .bg .inner .faq_cont .faq_box .faq_a_txt {
            display: none;
            box-sizing: border-box;
            padding: 4px 24px 20px 29px;
            position: relative; }
            #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box {
              display: flex;
              justify-content: flex-start; }
              #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box .icon {
                font-size: 24px;
                line-height: 1;
                font-weight: 500;
                color: #00A5B5;
                margin-right: 17px; }
              #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box .a_txt {
                flex: 1;
                font-size: 16px;
                line-height: 1.6em;
                font-weight: 500; }

  #about .inner {
    width: 95%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 73px 0 195px;
    color: #06262D; }
    #about .inner h2 {
      font-size: 40px;
      line-height: 1.4em;
      text-align: center;
      position: relative;
      margin-bottom: 96px; }
      #about .inner h2::before {
        position: absolute;
        content: "";
        width: 160px;
        height: 5px;
        bottom: -23px;
        left: 50%;
        transform: translateX(-50%);
        background: #00A5B5; }
    #about .inner .about_box {
      width: 95%;
      max-width: 1110px;
      margin: 0 auto;
      position: relative; }
      #about .inner .about_box .about_box_img {
        width: 53.3%;
        width: 69.144%;
        position: absolute;
        top: 50%;
        right: 1.7%;
        right: -11.89%;
        transform: translateY(-50%); }
      #about .inner .about_box .about_box_left {
        width: 40.277%;
        width: 45%;
        max-width: 436px;
        /*margin-left: 11.5%;*/ }
        #about .inner .about_box .about_box_left .about_box_ttl {
          width: 92.43%;
          margin: 0 auto;
          font-size: 22px;
          letter-spacing: -0.06em;
          line-height: 1.5em;
          font-weight: 500;
          color: #00A5B5;
          text-align: center;
          padding: 6px 0;
          border-top: solid 2px #00A5B5;
          border-bottom: solid 2px #00A5B5; }
        #about .inner .about_box .about_box_left .about_box_logo {
          width: 100%;
          margin: 22px 0 36px; }
        #about .inner .about_box .about_box_left .about_box_txt {
          width: 100%;
          margin-bottom: 36px; }
        #about .inner .about_box .about_box_left .about_box_btn {
          width: 83.256%;
          margin: 0 auto; }
          #about .inner .about_box .about_box_left .about_box_btn a {
            display: block;
            width: 100%;
            position: relative;
            font-size: 21px;
            letter-spacing: 0.05em;
            line-height: 1.5em;
            font-weight: 500;
            color: #fff;
            text-align: center;
            padding: 21px 0;
            border-radius: 200px;
            background: #00A5B5;
            transition: 0.3s; }
            #about .inner .about_box .about_box_left .about_box_btn a:hover {
              opacity: 0.8; }
            #about .inner .about_box .about_box_left .about_box_btn a .btn {
              width: 100%; }
            #about .inner .about_box .about_box_left .about_box_btn a .icon {
              width: 16.925%;
              position: absolute;
              right: -2.4%;
              top: -20%; }
  #about .about_btm {
    width: 100%;
    padding: 48px 0 37px;
    background: #FAE138; }
    #about .about_btm .about_btm_boxes {
      width: 95%;
      max-width: 1000px;
      margin: 0 auto;
      text-align: center;
      display: flex;
      justify-content: space-between; }
      #about .about_btm .about_btm_boxes .about_btm_box {
        width: 31%; }
        #about .about_btm .about_btm_boxes .about_btm_box h3 {
          min-height: 110px;
          font-size: 24px;
          /*letter-spacing: -0.05em;*/
          line-height: 1.22em;
          font-weight: 500;
          display: flex;
          justify-content: center;
          flex-direction: column;
          box-sizing: border-box;
          border: solid 1px #06262D;
          border-radius: 15px;
          background: #fff; }
        #about .about_btm .about_btm_boxes .about_btm_box .about_btm_box_txt {
          font-size: 18px;
          line-height: 1.6em;
          font-weight: bold;
          margin: 20px 0; }
        #about .about_btm .about_btm_boxes .about_btm_box .about_btm_box_img {
          width: 300px;
          max-width: 100%;
          margin: 0 auto; }

  #float_banner {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    background: #fff;
    z-index: 100;
    /*translate: 0 100%;*/
    transform: translateY(110%);
    transition: 　transform 0.3s;
    z-index: 10; }
    #float_banner.fixed {
      /*translate: none;*/
      transform: translateY(0); }
    #float_banner .inner {
      width: 90%;
      max-width: 946px;
      margin: 0 auto;
      padding: 46px 0; }
      #float_banner .inner .btnarea {
        width: 100%;
        display: flex;
        justify-content: space-between; }
        #float_banner .inner .btnarea a {
          display: block;
          width: 100%;
          line-height: 0;
          transition: 0.3s; }
          #float_banner .inner .btnarea a:hover {
            opacity: 0.8; }
        #float_banner .inner .btnarea .mv_btn {
          width: 28.646%;
          position: relative;
          padding-top: 7px; }
          #float_banner .inner .btnarea .mv_btn .mv_btn_icon {
            width: 27.3%;
            position: absolute;
            top: -53%;
            left: -17.71%; }
        #float_banner .inner .btnarea .app_btn {
          width: 57.716%;
          display: flex;
          justify-content: space-between;
          align-items: center; }
          #float_banner .inner .btnarea .app_btn .app {
            width: 41.31%;
            display: flex;
            justify-content: space-between;
            align-items: center; }
            #float_banner .inner .btnarea .app_btn .app a {
              width: 70.38%;
              pointer-events: none; }
            #float_banner .inner .btnarea .app_btn .app .qrcode {
              width: 25.75%; }
          #float_banner .inner .btnarea .app_btn .google {
            width: 48.35%;
            display: flex;
            justify-content: space-between;
            align-items: center; }
            #float_banner .inner .btnarea .app_btn .google a {
              width: 74.24%;
              pointer-events: none; }
            #float_banner .inner .btnarea .app_btn .google .qrcode {
              width: 22.55%; }
        #float_banner .inner .btnarea .open_btn {
          width: 4.65%;
          cursor: pointer; }

  .modal-bg {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    /* モーダル背景色 */
    opacity: 0;
    display: none;
    transition: opacity 0.5s ease !important;
    z-index: 20; }
    .modal-bg.show {
      opacity: 1;
      /* 表示状態 */
      display: block; }

  .modal {
    width: 500px;
    height: auto;
    z-index: 1000;
    position: fixed;
    top: 0;
    right: 0;
    /* 初期状態は画面外 */
    transform: translate(100%, 0);
    transition: transform 0.5s ease;
    /* モーダルが表示されるときのクラス */ }
    .modal.show {
      transform: translate(0, 0);
      /* スライドイン位置 */ }
    .modal .modal-content {
      width: 100%; }
      .modal .modal-content .modal_inner {
        width: 100%;
        max-width: 100%;
        z-index: 12; }
        .modal .modal-content .modal_inner .bg {
          width: 100%;
          box-sizing: border-box;
          background: #00A5B5;
          position: relative; }
          .modal .modal-content .modal_inner .bg .hum_inner {
            width: 348px;
            margin: 0 auto;
            padding: 53px 0 50px; }
            .modal .modal-content .modal_inner .bg .hum_inner .hum_logo {
              width: 214px; }
            .modal .modal-content .modal_inner .bg .hum_inner .hum_btn {
              width: 340px;
              margin: 25px 0 25px;
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap; }
              .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a {
                display: block;
                height: 40px;
                line-height: 36px;
                font-size: 15px;
                font-weight: bold;
                color: #06262D;
                text-align: center;
                box-sizing: border-box;
                border: solid 2px #06262D;
                border-radius: 37px;
                background: #fff; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.login {
                  width: 125px; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.signin {
                  width: 195px;
                  color: #fff;
                  background: #06262D; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.employed {
                  width: 219px;
                  margin-top: 20px; }
            .modal .modal-content .modal_inner .bg .hum_inner ul li {
              font-size: 20px;
              line-height: 2.5em; }
              .modal .modal-content .modal_inner .bg .hum_inner ul li a {
                display: inline-block;
                color: #fff; }
          .modal .modal-content .modal_inner .bg .close_btn {
            width: 35px;
            position: absolute;
            right: 59px;
            top: 56px;
            cursor: pointer; }

  footer {
    padding-bottom: 158px;
    padding-bottom: 225px;
    width: 100%; }
    footer .footer_head {
      padding: 195px 0 62px; }
      footer .footer_head .footer_menu {
        width: 700px;
        max-width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        footer .footer_head .footer_menu .footer_logo {
          width: 361px; }
          footer .footer_head .footer_menu .footer_logo a {
            display: block;
            width: 100%; }
        footer .footer_head .footer_menu .footer_nav {
          width: 155px;
          display: flex;
          justify-content: flex-start; }
          footer .footer_head .footer_menu .footer_nav dl dt {
            font-size: 15px;
            line-height: 1.34em;
            font-weight: bold; }
            footer .footer_head .footer_menu .footer_nav dl dt a {
              display: inline-block;
              color: #000; }
          footer .footer_head .footer_menu .footer_nav dl dd {
            margin-top: 9px; }
            footer .footer_head .footer_menu .footer_nav dl dd a {
              display: inline-block;
              font-size: 15px;
              line-height: 1.34em;
              color: #000;
              padding-left: 14px;
              position: relative; }
              footer .footer_head .footer_menu .footer_nav dl dd a::before {
                position: absolute;
                content: "";
                width: 8px;
                height: 1px;
                left: 0;
                top: 50%;
                transform: translateY(-50%);
                background: #B6B6B6; }
      footer .footer_head .footer_btn {
        width: 597px;
        margin: 53px auto 0;
        display: flex;
        justify-content: space-between; }
        footer .footer_head .footer_btn .btn {
          width: 280px;
          font-size: 18px;
          letter-spacing: 0;
          font-weight: bold;
          text-align: center; }
          footer .footer_head .footer_btn .btn a {
            display: block;
            height: 60px;
            color: #fff;
            line-height: 56px;
            border: solid 2px #00A5B5;
            background: #00A5B5;
            border-radius: 30px;
            box-sizing: border-box;
            transition: 0.3s; }
            footer .footer_head .footer_btn .btn a:hover {
              opacity: 0.8; }
          footer .footer_head .footer_btn .btn:last-child a {
            color: #00A5B5;
            background: #fff; }
    footer .footer_btm {
      width: 95%;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-top: 65px;
      border-top: solid 1px #E0E0E0; }
      footer .footer_btm .footer_btm_link {
        display: flex;
        justify-content: flex-start; }
        footer .footer_btm .footer_btm_link li {
          margin-right: 30px; }
          footer .footer_btm .footer_btm_link li a {
            display: inline-block;
            font-size: 15px;
            line-height: 1.34em;
            font-weight: bold;
            color: #000; }
      footer .footer_btm .footer_btm_right {
        display: flex;
        justify-content: flex-end;
        align-items: center; }
        footer .footer_btm .footer_btm_right .logo {
          width: 132px;
          margin-right: 16px; }
          footer .footer_btm .footer_btm_right .logo a {
            display: block;
            width: 100%; }
        footer .footer_btm .footer_btm_right .sns {
          display: flex;
          justify-content: flex-start; }
          footer .footer_btm .footer_btm_right .sns li {
            margin-right: 9px; }
            footer .footer_btm .footer_btm_right .sns li a {
              display: block;
              width: 20px; }
        footer .footer_btm .footer_btm_right .copyright {
          font-size: 12px;
          line-height: 1.25em;
          font-weight: 500; } }
/* SP */
@media screen and (max-width: 797px) {
  .pconly {
    display: none !important; }

  header {
    width: 100%;
    position: absolute;
    left: 0;
    top: 3.33vw;
    z-index: 10; }
    header .header_inner {
      width: 93.846vw;
      margin: 0 auto;
      box-sizing: border-box;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      header .header_inner .logo {
        width: 30.256vw; }
      header .header_inner .header_btn {
        display: flex;
        justify-content: flex-end; }
        header .header_inner .header_btn a {
          display: block;
          font-size: 2.769vw;
          line-height: 6.44vw;
          font-weight: bold;
          color: #06262D;
          text-align: center;
          box-sizing: border-box;
          border-radius: 3.69vw;
          border: solid 0.369vw #06262D;
          background: #fff;
          margin-left: 1.79vw; }
          header .header_inner .header_btn a.login {
            width: 17.94vw; }
          header .header_inner .header_btn a.signin {
            width: 35.897vw;
            color: #fff;
            background: #06262D; }

  main {
    overflow: hidden; }

  #mv {
    width: 100%;
    background: #FAE138;
    position: relative; }
    #mv::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 35.384vw;
      left: 0;
      bottom: -0.1vw;
      background: url("../img/side_job2/mv_bg_sp.webp") no-repeat center top;
      background-size: 100%; }
    #mv .inner {
      width: 100%;
      position: relative;
      padding: 14.358vw 0 28.743vw;
      color: #06262D;
      z-index: 2; }
      #mv .inner .mv_txtarea .mv_head_txt {
        font-size: 3.589vw;
        line-height: 1.42em;
        margin-left: 6.41vw; }
      #mv .inner .mv_txtarea h1 {
        font-size: 14.871vw;
        line-height: 1;
        margin-left: 6.41vw;
        position: relative;
        top: -2vw; }
        #mv .inner .mv_txtarea h1 span {
          display: inline-block;
          font-size: 9.74vw;
          line-height: 1;
          position: relative;
          left: -1.28vw; }
      #mv .inner .mv_txtarea .mv_txtarea_img {
        width: 89.743vw;
        margin: 0 auto 2.56vw; }
      #mv .inner .mv_txtarea .mv_txt_list {
        width: 90.256vw;
        margin: 0 auto 2.56vw;
        display: flex;
        justify-content: flex-start; }
        #mv .inner .mv_txtarea .mv_txt_list li {
          width: 27.948vw;
          font-size: 3.36923vw;
          line-height: 1.3em;
          font-weight: 500;
          text-align: center;
          height: 14.03589vw;
          box-sizing: border-box;
          padding: 2.69vw 0 0;
          background-image: url("../img/side_job2/mv_txt_list_bg_02_sp.webp");
          background-repeat: no-repeat;
          background-position: center;
          background-size: 100% 100%; }
          #mv .inner .mv_txtarea .mv_txt_list li:nth-child(1) {
            width: 34.11vw;
            background-image: url("../img/side_job2/mv_txt_list_bg_01.webp"); }
          #mv .inner .mv_txtarea .mv_txt_list li span {
            display: inline-block;
            font-size: 3.7897vw;
            color: #00A5B5; }
      #mv .inner .mv_img {
        width: 90.1vw;
        margin: 0 auto; }
      #mv .inner .btnarea {
        width: 87.692vw;
        position: absolute;
        bottom: -12.3vw;
        left: 50%;
        transform: translateX(-50%);
        padding: 4.35vw 6.66vw 3.58vw;
        box-sizing: border-box;
        background: #fff;
        border: solid 0.512vw #2D2C31;
        border-radius: 5.12vw;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap; }
        #mv .inner .btnarea a {
          display: block;
          width: 100%;
          line-height: 0; }
        #mv .inner .btnarea .mv_btn {
          width: 69.487vw;
          position: relative;
          margin-bottom: 2.82vw; }
          #mv .inner .btnarea .mv_btn .mv_btn_icon {
            width: 13.28vw;
            position: absolute;
            top: -6.4vw;
            left: -7.4vw; }
        #mv .inner .btnarea .app {
          width: 32.564vw;
          margin-right: 2.05vw; }
        #mv .inner .btnarea .google {
          width: 38.71vw; }

  #worry .bg {
    background: #00A5B5; }
  #worry .inner {
    width: 100%;
    padding: 24.35vw 0 0;
    color: #fff;
    position: relative;
    z-index: 3; }
    #worry .inner h2 {
      font-size: 6.41vw;
      line-height: 1.4em;
      text-align: center;
      margin-bottom: 5.12vw;
      position: relative; }
      #worry .inner h2 span {
        display: inline-block; }
        #worry .inner h2 span::before {
          position: absolute;
          content: "";
          width: 65.128vw;
          height: 9.1vw;
          bottom: 0.69vw;
          left: 50%;
          transform: translateX(-50%);
          background: url("../img/side_job2/worry_ttl_line_sp.webp") no-repeat center;
          background-size: contain; }
    #worry .inner .worry_boxes {
      width: 59.743vw;
      margin: 0 auto 17.94vw; }
      #worry .inner .worry_boxes .worry_box {
        width: 100%;
        height: 59.743vw;
        box-sizing: border-box;
        border-radius: 100%;
        background: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column; }
        #worry .inner .worry_boxes .worry_box:nth-child(1) .worry_box_img {
          width: 29.556vw; }
        #worry .inner .worry_boxes .worry_box:nth-child(2) {
          margin: 5.64vw 0; }
          #worry .inner .worry_boxes .worry_box:nth-child(2) .worry_box_img {
            width: 40.684vw; }
        #worry .inner .worry_boxes .worry_box:nth-child(3) .worry_box_img {
          width: 29.556vw; }
        #worry .inner .worry_boxes .worry_box .worry_box_txt {
          width: 42.3vw;
          font-size: 3.589vw;
          line-height: 1.3em;
          font-weight: 500;
          color: #06262D;
          text-align: center;
          margin-top: 2.956vw; }
    #worry .inner .worry_btm {
      width: 87.692vw;
      margin: 0 auto;
      position: relative;
      z-index: 3; }
      #worry .inner .worry_btm .worry_btm_img {
        width: 87.0307vw; }
      #worry .inner .worry_btm .worry_btm_txt {
        font-size: 4.87vw;
        line-height: 1.6em;
        color: #06262D;
        text-align: center;
        margin-bottom: 6.66vw; }
        #worry .inner .worry_btm .worry_btm_txt span {
          display: inline-block; }
          #worry .inner .worry_btm .worry_btm_txt span.big {
            font-size: 7.43vw; }
          #worry .inner .worry_btm .worry_btm_txt span.blue {
            color: #00A5B5; }

  #reason {
    position: relative; }
    #reason .bg {
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 100%;
      height: 460.512vw;
      background: url("../img/side_job2/reason_bg_02_sp.webp") no-repeat center;
      background-size: 100% 100%;
      z-index: 2; }
    #reason .inner {
      width: 87.18vw;
      margin: 0 auto;
      padding: 14.35vw 0 18.97vw;
      position: relative;
      z-index: 3;
      color: #06262D; }
      #reason .inner h2 {
        font-size: 6.41vw;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 12.56vw; }
        #reason .inner h2::before {
          position: absolute;
          content: "";
          width: 33.33vw;
          height: 0.77vw;
          bottom: -3.07vw;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #reason .inner .reason_boxes .reason_box {
        box-sizing: border-box;
        background: #fff;
        border-radius: 2.56vw;
        position: relative;
        padding: 1.28vw 5.12vw 4.1vw; }
        #reason .inner .reason_boxes .reason_box .reason_box_in {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #reason .inner .reason_boxes .reason_box .reason_box_in .num {
            width: 14.615vw;
            font-size: 10.256vw;
            font-weight: bold;
            line-height: 1.6em;
            color: #00A5B5; }
          #reason .inner .reason_boxes .reason_box .reason_box_in h3 {
            width: 58.46vw;
            font-size: 5.12vw;
            line-height: 1.4em;
            font-weight: 500;
            padding-top: 3.07vw; }
          #reason .inner .reason_boxes .reason_box .reason_box_in .reason_box_txt {
            font-size: 4.1vw;
            line-height: 1.6em;
            font-weight: 500;
            box-sizing: border-box;
            padding: 0 1.28vw; }
        #reason .inner .reason_boxes .reason_box.box01 .reason_box_in .reason_box_img {
          width: 58.715vw;
          margin: 2.82vw auto 4.87vw; }
        #reason .inner .reason_boxes .reason_box.box02 {
          margin: 5.38vw 0; }
          #reason .inner .reason_boxes .reason_box.box02 .reason_box_in .reason_box_img {
            width: 67.11vw;
            margin: 7.94vw auto 3.7vw; }
        #reason .inner .reason_boxes .reason_box.box03 .reason_box_in .reason_box_img {
          width: 100%;
          margin: 7.43vw 0; }
          #reason .inner .reason_boxes .reason_box.box03 .reason_box_in .reason_box_img img {
            max-width: 102.3%;
            width: 102.3%; }

  #recruit .inner {
    width: 87.18vw;
    margin: 0 auto;
    padding: 15.38vw 0 12.3vw;
    color: #06262D; }
    #recruit .inner h2 {
      font-size: 6.41vw;
      line-height: 1.4em;
      font-weight: 500;
      text-align: center;
      position: relative;
      margin-bottom: 17.18vw; }
      #recruit .inner h2::before {
        position: absolute;
        content: "";
        width: 33.33vw;
        height: 0.77vw;
        bottom: -3.07vw;
        left: 50%;
        transform: translateX(-50%);
        background: #00A5B5; }
    #recruit .inner .recruit_boxes .recruit_box {
      width: 100%;
      position: relative;
      box-sizing: border-box;
      padding: 11.28vw 2.3vw 6.15vw 4.35vw;
      background: #F5F5F5;
      border-radius: 2.56vw; }
      #recruit .inner .recruit_boxes .recruit_box:nth-child(2) {
        margin: 12.82vw 0; }
      #recruit .inner .recruit_boxes .recruit_box h3 {
        width: 79.48vw;
        font-size: 5.12vw;
        line-height: 1.4em;
        font-weight: 500;
        color: #fff;
        text-align: center;
        padding: 1.538vw 0;
        background: #00A5B5;
        border-radius: 5.12vw;
        position: absolute;
        top: -4.87vw;
        left: 50%;
        transform: translateX(-50%); }
      #recruit .inner .recruit_boxes .recruit_box dl {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap; }
        #recruit .inner .recruit_boxes .recruit_box dl dt {
          width: 19.48vw;
          margin-right: 3.07vw;
          font-size: 4.1vw;
          line-height: 1.3em;
          font-weight: 500;
          color: #fff;
          padding: 0.256vw 0;
          text-align: center;
          background: #6F7787;
          margin-bottom: 4.1vw; }
          #recruit .inner .recruit_boxes .recruit_box dl dt:last-of-type {
            margin-bottom: 0; }
        #recruit .inner .recruit_boxes .recruit_box dl dd {
          width: 57.948vw;
          font-size: 4.1vw;
          line-height: 1.4em;
          font-weight: 500;
          margin-bottom: 4.1vw; }
          #recruit .inner .recruit_boxes .recruit_box dl dd:last-of-type {
            margin-bottom: 0; }
    #recruit .inner .recruit_btn {
      width: 69.487vw;
      margin: 10.24vw auto 0; }
      #recruit .inner .recruit_btn a {
        display: block;
        width: 100%;
        font-size: 5.128vw;
        line-height: 1.2em;
        font-weight: 500;
        color: #fff;
        box-sizing: border-box;
        padding: 4.1vw 0 3.84vw 8.97vw;
        border-radius: 7.69vw;
        background: url("../img/side_job2/btn_arrow.webp") no-repeat right 6.15vw center #06262D;
        background-size: 2.3vw; }

  #voice .bg {
    width: 100%;
    background: #E4F4F4; }
    #voice .bg .inner {
      width: 84.615vw;
      margin: 0 auto;
      padding: 12.56vw 0 36vw;
      position: relative;
      color: #06262D; }
      #voice .bg .inner h2 {
        font-size: 6.41vw;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 13.33vw; }
        #voice .bg .inner h2::before {
          position: absolute;
          content: "";
          width: 33.33vw;
          height: 0.77vw;
          bottom: -3.07vw;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #voice .bg .inner .voice_boxes .voice_box {
        width: 100%;
        position: relative; }
        #voice .bg .inner .voice_boxes .voice_box:nth-child(2) {
          margin: 21.8vw 0; }
        #voice .bg .inner .voice_boxes .voice_box .voice_box_txt {
          padding: 6.66vw 8.46vw 6.66vw 8.718vw;
          box-sizing: border-box;
          background: #fff;
          border-radius: 2.56vw;
          position: relative; }
          #voice .bg .inner .voice_boxes .voice_box .voice_box_txt::before {
            position: absolute;
            content: "";
            width: 0;
            height: 0;
            bottom: -5.38vw;
            left: 38.97vw;
            transform: rotate(-20deg);
            border-style: solid;
            border-right: 5.89vw solid transparent;
            border-left: 5.89vw solid transparent;
            border-top: 10.25vw solid #ffffff;
            border-bottom: 0; }
          #voice .bg .inner .voice_boxes .voice_box .voice_box_txt p {
            font-size: 4.1vw;
            line-height: 1.5em;
            font-weight: 500; }
            #voice .bg .inner .voice_boxes .voice_box .voice_box_txt p span {
              display: block;
              font-size: 4.1vw;
              line-height: 1.5em; }
        #voice .bg .inner .voice_boxes .voice_box .voice_box_img {
          width: 28.46vw;
          position: absolute;
          bottom: -15.38vw;
          right: 3.533vw; }

  #flow {
    position: relative; }
    #flow .bg {
      width: 100%;
      height: calc( 100% + 11.28vw );
      border-radius: 10.25vw 10.25vw 0 0;
      background: #fff;
      position: absolute;
      left: 0;
      top: -11.28vw; }
    #flow .inner {
      width: 73.846vw;
      margin: 0 auto;
      padding-bottom: 9.23vw;
      position: relative;
      z-index: 3;
      color: #06262D; }
      #flow .inner h2 {
        font-size: 6.41vw;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 15.12vw; }
        #flow .inner h2::before {
          position: absolute;
          content: "";
          width: 33.33vw;
          height: 0.77vw;
          bottom: -3.07vw;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }

  #faq .bg {
    width: 100%;
    background: #F5F5F5; }
    #faq .bg .inner {
      width: 87.18vw;
      margin: 0 auto;
      padding: 11.02vw 0 11.02vw;
      position: relative;
      color: #06262D; }
      #faq .bg .inner h2 {
        font-size: 6.41vw;
        line-height: 1.4em;
        font-weight: 500;
        text-align: center;
        position: relative;
        margin-bottom: 15.12vw; }
        #faq .bg .inner h2::before {
          position: absolute;
          content: "";
          width: 33.33vw;
          height: 0.77vw;
          bottom: -3.07vw;
          left: 50%;
          transform: translateX(-50%);
          background: #00A5B5; }
      #faq .bg .inner .faq_cont {
        width: 100%; }
        #faq .bg .inner .faq_cont .faq_box {
          background: #fff;
          border-radius: 5.12vw; }
          #faq .bg .inner .faq_cont .faq_box:nth-child(n+2) {
            margin-top: 3.84vw; }
          #faq .bg .inner .faq_cont .faq_box .faq_q_txt {
            font-size: 4.1vw;
            line-height: 1.56em;
            font-weight: 500;
            box-sizing: border-box;
            padding: 3.07vw 12.56vw 3.33vw 4.1vw;
            position: relative;
            cursor: pointer; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt::before {
              position: absolute;
              content: "";
              width: 4.61vw;
              height: 1.02vw;
              right: 5.12vw;
              top: 50%;
              transform: translateY(-50%);
              background: #00A5B5; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt::after {
              position: absolute;
              content: "";
              width: 4.61vw;
              height: 1.02vw;
              right: 5.12vw;
              top: 50%;
              transform: translateY(-50%) rotate(-90deg);
              background: #00A5B5;
              transition: 0.3s; }
            #faq .bg .inner .faq_cont .faq_box .faq_q_txt.open::after {
              transform: translateY(-50%) rotate(0); }
          #faq .bg .inner .faq_cont .faq_box .faq_a_txt {
            display: none;
            box-sizing: border-box;
            padding: 0.512vw 3.84vw 4.35vw 4.61vw; }
            #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box {
              display: flex;
              justify-content: flex-start; }
              #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box .icon {
                font-size: 5.12vw;
                line-height: 1;
                color: #00A5B5;
                margin-right: 3.58vw; }
              #faq .bg .inner .faq_cont .faq_box .faq_a_txt .faq_a_box .a_txt {
                font-size: 3.589vw;
                line-height: 1.6em;
                font-weight: 500; }
            #faq .bg .inner .faq_cont .faq_box .faq_a_txt a {
              color: #309DA4;
              text-decoration: underline; }

  #about .inner {
    padding: 11.02vw 0 10vw;
    color: #06262D; }
    #about .inner h2 {
      font-size: 6.41vw;
      line-height: 1.4em;
      text-align: center;
      position: relative;
      margin-bottom: 10.25vw; }
      #about .inner h2::before {
        position: absolute;
        content: "";
        width: 33.33vw;
        height: 0.77vw;
        bottom: -3.07vw;
        left: 50%;
        transform: translateX(-50%);
        background: #00A5B5; }
    #about .inner .about_box {
      position: relative; }
      #about .inner .about_box .about_box_left {
        width: 100%;
        margin: 0 auto; }
        #about .inner .about_box .about_box_left .about_box_ttl {
          width: 87.179vw;
          margin: 0 auto;
          font-size: 5.128vw;
          letter-spacing: -0.06em;
          line-height: 1.5em;
          font-weight: 500;
          color: #00A5B5;
          text-align: center;
          padding: 1.02vw 0;
          border-top: solid 0.512vw #00A5B5;
          border-bottom: solid 0.512vw #00A5B5; }
        #about .inner .about_box .about_box_left .about_box_logo {
          width: 68.91vw;
          margin: 2.82vw auto 8.97vw; }
        #about .inner .about_box .about_box_left .about_box_txt {
          width: 78.2vw;
          margin: 8.54vw auto 6.4vw; }
        #about .inner .about_box .about_box_left .about_box_btn {
          width: 65.128vw;
          margin: 0 auto; }
          #about .inner .about_box .about_box_left .about_box_btn a {
            display: block;
            width: 100%;
            position: relative;
            font-size: 3.846vw;
            letter-spacing: 0.03em;
            line-height: 1.5em;
            font-weight: 500;
            color: #fff;
            text-align: center;
            padding: 3.589vw 0;
            border-radius: 41vw;
            background: #00A5B5; }
            #about .inner .about_box .about_box_left .about_box_btn a .btn {
              width: 100%; }
            #about .inner .about_box .about_box_left .about_box_btn a .icon {
              width: 11.02vw;
              position: absolute;
              right: -1.57vw;
              top: -2.75vw; }
  #about .about_btm {
    width: 100%;
    padding: 11.28vw 0 5.64vw;
    background: #FAE138; }
    #about .about_btm .about_btm_boxes {
      width: 79.487vw;
      margin: 0 auto; }
      #about .about_btm .about_btm_boxes .about_btm_box {
        width: 100%;
        text-align: center; }
        #about .about_btm .about_btm_boxes .about_btm_box:nth-child(2) {
          margin: 8.2vw 0; }
        #about .about_btm .about_btm_boxes .about_btm_box h3 {
          font-size: 5.64vw;
          letter-spacing: -0.05em;
          line-height: 1.22em;
          box-sizing: border-box;
          padding: 3.58vw 0 3.07vw;
          border: solid 0.512vw #06262D;
          border-radius: 3.846vw;
          background: #fff; }
        #about .about_btm .about_btm_boxes .about_btm_box .about_btm_box_txt {
          font-size: 4.1vw;
          line-height: 1.6em;
          font-weight: bold;
          margin: 5.12vw 0; }
        #about .about_btm .about_btm_boxes .about_btm_box .about_btm_box_img {
          width: 76.92vw;
          margin: 0 auto; }

  #float_banner {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    background: #fff;
    z-index: 100;
    translate: 0 100%;
    transition: 0.3s;
    z-index: 10; }
    #float_banner.fixed {
      translate: none; }
    #float_banner .inner {
      width: 87.692vw;
      margin: 0 auto;
      padding: 4.87vw 0;
      position: relative; }
      #float_banner .inner .app_btn_txt {
        font-size: 3.84vw;
        letter-spacing: 0;
        line-height: 2em;
        font-weight: bold;
        position: absolute;
        top: 1.02vw;
        left: 8.56vw; }
      #float_banner .inner .btnarea {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: flex-end; }
        #float_banner .inner .btnarea a {
          display: block;
          width: 100%;
          line-height: 0; }
        #float_banner .inner .btnarea .app_btn {
          width: 73.846vw;
          display: flex;
          justify-content: space-between;
          align-items: center;
          position: relative; }
          #float_banner .inner .btnarea .app_btn .app {
            width: 32.56vw; }
            #float_banner .inner .btnarea .app_btn .app a {
              width: 100%; }
          #float_banner .inner .btnarea .app_btn .google {
            width: 38.71vw; }
            #float_banner .inner .btnarea .app_btn .google a {
              width: 100%; }
        #float_banner .inner .btnarea .open_btn {
          width: 11.28vw;
          cursor: pointer;
          padding-bottom: 2.05vw; }

  .modal-bg {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    /* モーダル背景色 */
    opacity: 0;
    display: none;
    transition: opacity 0.5s ease;
    z-index: 20; }
    .modal-bg.show {
      opacity: 1;
      /* 表示状態 */
      display: block; }

  .modal {
    width: 100%;
    height: auto;
    z-index: 1000;
    position: fixed;
    top: 0;
    right: 0;
    /* 初期状態は画面外 */
    transform: translate(100%, 0);
    transition: transform 0.5s ease;
    /* モーダルが表示されるときのクラス */ }
    .modal.show {
      transform: translate(0, 0);
      /* スライドイン位置 */ }
    .modal .modal-content {
      width: 100%; }
      .modal .modal-content .modal_inner {
        width: 100%;
        max-width: 100%;
        z-index: 12; }
        .modal .modal-content .modal_inner .bg {
          width: 100%;
          box-sizing: border-box;
          background: #00A5B5;
          position: relative; }
          .modal .modal-content .modal_inner .bg .hum_inner {
            width: 84.615vw;
            margin: 0 auto;
            padding: 8.46vw 0 5.64vw; }
            .modal .modal-content .modal_inner .bg .hum_inner .hum_logo {
              width: 55vw; }
            .modal .modal-content .modal_inner .bg .hum_inner .hum_btn {
              margin: 6.41vw 0;
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap; }
              .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a {
                display: block;
                font-size: 3.84vw;
                font-weight: bold;
                text-align: center;
                box-sizing: border-box;
                border-radius: 5.12vw;
                background: #fff; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.login {
                  width: 32.05vw;
                  height: 10.25vw;
                  line-height: 9.23vw;
                  color: #06262D;
                  border: solid 0.512vw #06262D; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.signin {
                  width: 50vw;
                  height: 10.25vw;
                  line-height: 10.25vw;
                  color: #fff;
                  background: #06262D; }
                .modal .modal-content .modal_inner .bg .hum_inner .hum_btn a.employed {
                  width: 56.15vw;
                  height: 10.25vw;
                  line-height: 9.23vw;
                  color: #06262D;
                  border: solid 0.512vw #06262D;
                  margin-top: 5.12vw; }
            .modal .modal-content .modal_inner .bg .hum_inner ul li {
              font-size: 5.12vw;
              line-height: 2.5em;
              font-weight: bold; }
              .modal .modal-content .modal_inner .bg .hum_inner ul li a {
                display: inline-block;
                color: #fff; }
          .modal .modal-content .modal_inner .bg .close_btn {
            width: 8.97vw;
            position: absolute;
            right: 9.48vw;
            top: 9.23vw;
            cursor: pointer; }

  footer {
    width: 100%; }
    footer .inner {
      width: 87.18vw;
      margin: 0 auto;
      padding-bottom: 27.18vw; }
      footer .inner .footer_head {
        padding: 12.82vw 0 7.7vw;
        border-bottom: solid 0.256vw #E1E5E5; }
        footer .inner .footer_head .footer_menu .footer_logo {
          width: 58.97vw;
          margin: 0 auto 10.25vw; }
          footer .inner .footer_head .footer_menu .footer_logo a {
            display: block;
            width: 100%; }
        footer .inner .footer_head .footer_menu .footer_nav dl {
          width: 71.8vw;
          margin: 0 auto 5.38vw; }
          footer .inner .footer_head .footer_menu .footer_nav dl dt {
            font-size: 3.333vw;
            letter-spacing: 0.03em;
            line-height: 1.34em;
            font-weight: bold; }
            footer .inner .footer_head .footer_menu .footer_nav dl dt a {
              display: inline-block;
              color: #000; }
          footer .inner .footer_head .footer_menu .footer_nav dl dd {
            margin-top: 1.28vw; }
            footer .inner .footer_head .footer_menu .footer_nav dl dd a {
              display: inline-block;
              font-size: 3.333vw;
              letter-spacing: 0.03em;
              line-height: 1.34em;
              font-weight: 400;
              color: #000;
              box-sizing: border-box;
              padding-left: 3.589vw;
              position: relative; }
              footer .inner .footer_head .footer_menu .footer_nav dl dd a::before {
                position: absolute;
                content: "";
                width: 2.05vw;
                height: 0.256vw;
                left: 0;
                top: 50%;
                transform: translateY(-50%);
                background: #B6B6B6; }
        footer .inner .footer_head .footer_menu .footer_nav ul {
          width: 71.8vw;
          margin: 0 auto 10.25vw; }
          footer .inner .footer_head .footer_menu .footer_nav ul li {
            font-size: 3.33vw; }
            footer .inner .footer_head .footer_menu .footer_nav ul li:nth-child(n+2) {
              margin-top: 3.84vw; }
            footer .inner .footer_head .footer_menu .footer_nav ul li a {
              display: inline-block;
              line-height: 1.34em;
              font-weight: bold;
              color: #000; }
        footer .inner .footer_head .footer_app_btn {
          width: 73.846vw;
          margin: 0 auto 8.97vw;
          display: flex;
          justify-content: space-between;
          align-items: center;
          flex-wrap: wrap; }
          footer .inner .footer_head .footer_app_btn .app_btn_txt {
            width: 100%;
            font-size: 3.84vw;
            line-height: 1.2em;
            font-weight: 500;
            text-align: center;
            margin-bottom: 2.56vw; }
          footer .inner .footer_head .footer_app_btn .app_btn a {
            display: block;
            width: 100%; }
          footer .inner .footer_head .footer_app_btn .app_btn.apple {
            width: 32.564vw; }
          footer .inner .footer_head .footer_app_btn .app_btn.google {
            width: 38.717vw; }
        footer .inner .footer_head .footer_btn {
          width: 71.8vw;
          margin: 0 auto; }
          footer .inner .footer_head .footer_btn .btn {
            width: 100%; }
            footer .inner .footer_head .footer_btn .btn a {
              display: block;
              width: 100%;
              height: 15.384vw;
              font-size: 4.61vw;
              line-height: 14.358vw;
              font-weight: bold;
              text-align: center;
              color: #fff;
              box-sizing: border-box;
              border-radius: 7.69vw;
              border: solid 0.512vw #00A5B5;
              background: #00A5B5; }
            footer .inner .footer_head .footer_btn .btn:last-child {
              margin-top: 3.84vw; }
              footer .inner .footer_head .footer_btn .btn:last-child a {
                color: #00A5B5;
                background: #fff; }
      footer .inner .footer_btm {
        padding: 9.23vw 0; }
        footer .inner .footer_btm .footer_btm_right {
          width: 67.18vw;
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          align-items: center;
          flex-wrap: wrap; }
          footer .inner .footer_btm .footer_btm_right .logo {
            width: 47.43vw;
            margin: 0 auto 5.89vw;
            line-height: 1; }
            footer .inner .footer_btm .footer_btm_right .logo a {
              display: block;
              width: 100%; }
          footer .inner .footer_btm .footer_btm_right .sns {
            display: flex;
            justify-content: center; }
            footer .inner .footer_btm .footer_btm_right .sns li {
              width: 6.15vw; }
              footer .inner .footer_btm .footer_btm_right .sns li:nth-child(2) {
                margin: 0 2.82vw; }
              footer .inner .footer_btm .footer_btm_right .sns li a {
                display: block;
                width: 100%;
                line-height: 0; }
          footer .inner .footer_btm .footer_btm_right .copyright {
            font-size: 3.84vw;
            line-height: 1.23em;
            font-weight: 500;
            margin-left: 4.35vw; } }

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