@charset "UTF-8";
/* line 2, style.scss */
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; }

/* line 2, style.scss */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

/* line 2, style.scss */
body {
  line-height: 1; }

/* line 2, style.scss */
ol, ul {
  list-style: none; }

/* line 2, style.scss */
blockquote, q {
  quotes: none; }

/* line 2, style.scss */
blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

/* line 2, style.scss */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* line 4, style.scss */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

/* line 12, style.scss */
.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
/* line 14, style.scss */
* html .clearfix {
  height: 1%; }

/* line 15, style.scss */
.clearfix {
  display: block; }

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

/* line 19, style.scss */
img {
  width: 100%;
  max-width: 100%;
  height: auto;
  line-height: 0; }

/* line 20, style.scss */
a {
  text-decoration: none; }

/* line 21, style.scss */
strong {
  font-weight: bold; }

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

/* line 24, style.scss */
#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

/* line 25, style.scss */
#resbtn {
  -webkit-appearance: none; }

/* line 26, style.scss */
.ancr {
  position: relative;
  transition: 0.5s; }

/* line 27, style.scss */
.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

/* line 28, style.scss */
.ancr:hover {
  opacity: 0.75;
  transition: 0.5s;
  cursor: pointer; }

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

/* line 34, style.scss */
.readex {
  font-family: "Readex Pro", sans-serif; }

/* line 38, style.scss */
html {
  font-size: calc(1vw * 100 / 1440); }

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

  /* line 48, style.scss */
  header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20;
    background: #fff; }
    /* line 55, style.scss */
    header .inner {
      width: 100%;
      box-sizing: border-box;
      padding: 26rem 78rem 26rem 100rem;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      /* line 62, style.scss */
      header .inner .logo {
        font-size: 22rem;
        line-height: 1; }
        /* line 65, style.scss */
        header .inner .logo a {
          display: inline-block;
          width: 100%;
          color: #32B7EA; }
          /* line 69, style.scss */
          header .inner .logo a span {
            font-size: 34rem; }
      /* line 74, style.scss */
      header .inner nav {
        width: 440rem;
        box-sizing: border-box;
        padding: 21rem 40rem;
        background: #F5F7FA;
        border-radius: 30rem; }
        /* line 80, style.scss */
        header .inner nav ul {
          display: flex;
          justify-content: space-between; }
          /* line 83, style.scss */
          header .inner nav ul li {
            font-size: 15rem;
            line-height: 1.2em; }
            /* line 86, style.scss */
            header .inner nav ul li a {
              display: inline-block;
              color: #4179AD; }
              /* line 89, style.scss */
              header .inner nav ul li a:hover {
                text-decoration: underline; }

  /* line 99, style.scss */
  #top_mv {
    width: 100%; }
    /* line 101, style.scss */
    #top_mv .inner {
      padding: 206rem 0 233rem;
      position: relative; }
      /* line 104, style.scss */
      #top_mv .inner::before {
        position: absolute;
        content: "";
        width: 255rem;
        height: 702rem;
        right: 68rem;
        top: 122rem;
        background: url("../img/mv_logo.png") no-repeat;
        background-size: contain; }
      /* line 114, style.scss */
      #top_mv .inner .mv_img {
        width: 570rem;
        margin: 0 auto;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .3s; }
      /* line 123, style.scss */
      #top_mv .inner.active .mv_img {
        opacity: 1;
        transform: translateY(0); }

  /* line 131, style.scss */
  #top_service {
    width: 100%;
    margin-bottom: 93rem; }
    /* line 134, style.scss */
    #top_service .inner {
      width: 1340rem;
      margin-left: auto; }
      /* line 137, style.scss */
      #top_service .inner .top_service_box {
        display: flex;
        justify-content: space-between; }
        /* line 140, style.scss */
        #top_service .inner .top_service_box .top_service_img {
          width: 571rem;
          line-height: 0; }
        /* line 144, style.scss */
        #top_service .inner .top_service_box .top_service_txt {
          width: 700rem;
          position: relative;
          box-sizing: border-box;
          padding: 63rem 200rem 70rem 0;
          color: #fff; }
          /* line 150, style.scss */
          #top_service .inner .top_service_box .top_service_txt::before {
            position: absolute;
            content: "";
            width: 994rem;
            height: 100%;
            top: 0;
            right: 0;
            background: url("../img/top_service_bg.png") no-repeat center left;
            background-size: contain; }
          /* line 160, style.scss */
          #top_service .inner .top_service_box .top_service_txt h2 {
            font-size: 18rem;
            letter-spacing: 0.03em;
            line-height: 1.2em;
            margin-bottom: 27rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .3s; }
            /* line 171, style.scss */
            #top_service .inner .top_service_box .top_service_txt h2 span.enttl {
              font-size: 50rem;
              letter-spacing: 0;
              line-height: 1.26em;
              display: inline-block;
              margin-right: 15rem; }
          /* line 179, style.scss */
          #top_service .inner .top_service_box .top_service_txt .txt {
            font-size: 17rem;
            line-height: 2.35em;
            margin-bottom: 27rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .6s; }
          /* line 190, style.scss */
          #top_service .inner .top_service_box .top_service_txt .btn {
            width: 250rem;
            margin-left: 115rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .9s; }
            /* line 199, style.scss */
            #top_service .inner .top_service_box .top_service_txt .btn a {
              display: block;
              width: 100%;
              font-size: 20rem;
              letter-spacing: 0.01em;
              line-height: 1.2em;
              font-weight: 500;
              color: #1786C4;
              text-align: center;
              padding: 12rem 0;
              background: #fff;
              border: solid 1rem #1786C4;
              border-radius: 77rem;
              transition: 0.3s; }
              /* line 213, style.scss */
              #top_service .inner .top_service_box .top_service_txt .btn a:hover {
                color: #fff;
                background: #1786C4; }
        /* line 221, style.scss */
        #top_service .inner .top_service_box.active h2 {
          opacity: 1;
          transform: translateY(0); }
        /* line 225, style.scss */
        #top_service .inner .top_service_box.active .txt {
          opacity: 1;
          transform: translateY(0); }
        /* line 229, style.scss */
        #top_service .inner .top_service_box.active .btn {
          opacity: 1;
          transform: translateY(0); }

  /* line 238, style.scss */
  #top_company {
    width: 100%;
    margin-bottom: 157rem; }
    /* line 241, style.scss */
    #top_company .inner {
      width: 1340rem; }
      /* line 243, style.scss */
      #top_company .inner .top_company_box {
        position: relative; }
        /* line 245, style.scss */
        #top_company .inner .top_company_box .top_company_img {
          width: 719rem;
          line-height: 0;
          position: absolute;
          top: 0;
          right: 0; }
        /* line 252, style.scss */
        #top_company .inner .top_company_box .top_company_txt {
          width: 994rem;
          height: 460rem;
          position: relative;
          box-sizing: border-box;
          padding: 63rem 225rem 70rem 261rem;
          color: #1786C4; }
          /* line 259, style.scss */
          #top_company .inner .top_company_box .top_company_txt::before {
            position: absolute;
            content: "";
            width: 994rem;
            height: 100%;
            top: 0;
            right: 0;
            background: url("../img/top_company_bg.png") no-repeat center left;
            background-size: contain; }
          /* line 269, style.scss */
          #top_company .inner .top_company_box .top_company_txt h2 {
            font-size: 18rem;
            letter-spacing: 0.03em;
            line-height: 1.2em;
            margin-bottom: 27rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .3s; }
            /* line 280, style.scss */
            #top_company .inner .top_company_box .top_company_txt h2 span.enttl {
              font-size: 50rem;
              letter-spacing: 0;
              line-height: 1.26em;
              display: inline-block;
              margin-right: 15rem; }
          /* line 288, style.scss */
          #top_company .inner .top_company_box .top_company_txt .txt {
            font-size: 17rem;
            line-height: 2.35em;
            margin-bottom: 62rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .6s; }
          /* line 299, style.scss */
          #top_company .inner .top_company_box .top_company_txt .btn {
            width: 250rem;
            margin-left: 115rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .9s; }
            /* line 308, style.scss */
            #top_company .inner .top_company_box .top_company_txt .btn a {
              display: block;
              width: 100%;
              font-size: 20rem;
              letter-spacing: 0.01em;
              line-height: 1.2em;
              font-weight: 500;
              color: #fff;
              text-align: center;
              padding: 12rem 0;
              background: #1786C4;
              border: solid 1rem #1786C4;
              border-radius: 77rem;
              transition: 0.3s; }
              /* line 322, style.scss */
              #top_company .inner .top_company_box .top_company_txt .btn a:hover {
                color: #1786C4;
                background: #fff; }
        /* line 330, style.scss */
        #top_company .inner .top_company_box.active h2 {
          opacity: 1;
          transform: translateY(0); }
        /* line 334, style.scss */
        #top_company .inner .top_company_box.active .txt {
          opacity: 1;
          transform: translateY(0); }
        /* line 338, style.scss */
        #top_company .inner .top_company_box.active .btn {
          opacity: 1;
          transform: translateY(0); }

  /* line 347, style.scss */
  #top_recruit {
    width: 100%;
    margin-bottom: 104rem; }
    /* line 350, style.scss */
    #top_recruit .bg {
      background: url("../img/top_recruit_bg.jpg") no-repeat center;
      background-size: cover; }
    /* line 354, style.scss */
    #top_recruit .inner {
      width: 100%;
      padding: 75rem 0 90rem;
      text-align: center;
      color: #fff; }
      /* line 359, style.scss */
      #top_recruit .inner h2 {
        font-size: 20rem;
        letter-spacing: 0.03em;
        line-height: 1.2em;
        margin-bottom: 29rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .3s; }
        /* line 368, style.scss */
        #top_recruit .inner h2 span.enttl {
          font-size: 80rem;
          letter-spacing: 0;
          line-height: 1.25em;
          display: inline-block;
          margin-bottom: 13rem; }
      /* line 376, style.scss */
      #top_recruit .inner .txt {
        font-size: 17rem;
        line-height: 2.35em;
        margin-bottom: 31rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .6s; }
      /* line 385, style.scss */
      #top_recruit .inner .btn {
        width: 250rem;
        margin: 0 auto;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .9s; }
        /* line 392, style.scss */
        #top_recruit .inner .btn a {
          display: block;
          width: 100%;
          font-size: 20rem;
          letter-spacing: 0.01em;
          line-height: 1.2em;
          font-weight: 500;
          color: #3E4C45;
          padding: 12rem 0;
          border: solid 1rem #CDF462;
          border-radius: 77rem;
          background: #CDF462;
          transition: 0.3s; }
          /* line 405, style.scss */
          #top_recruit .inner .btn a:hover {
            /*color: #CDF462;
            background: #fff;*/
            opacity: 0.8; }
      /* line 413, style.scss */
      #top_recruit .inner.active h2 {
        opacity: 1;
        transform: translateY(0); }
      /* line 417, style.scss */
      #top_recruit .inner.active .txt {
        opacity: 1;
        transform: translateY(0); }
      /* line 421, style.scss */
      #top_recruit .inner.active .btn {
        opacity: 1;
        transform: translateY(0); }

  /* line 429, style.scss */
  #top_contact {
    width: 100%;
    margin-bottom: 151rem; }
    /* line 433, style.scss */
    #top_contact.under h2 {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 438, style.scss */
    #top_contact.under .txt {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 443, style.scss */
    #top_contact.under .btn {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 449, style.scss */
    #top_contact .inner {
      width: 100%;
      text-align: center;
      color: #3E4C45; }
      /* line 453, style.scss */
      #top_contact .inner h2 {
        font-size: 18rem;
        letter-spacing: 0.03em;
        line-height: 1.2em;
        margin-bottom: 37rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .3s; }
        /* line 462, style.scss */
        #top_contact .inner h2 span.enttl {
          font-size: 50rem;
          letter-spacing: 0;
          line-height: 1.25em;
          display: inline-block;
          margin-bottom: 12rem; }
      /* line 470, style.scss */
      #top_contact .inner .txt {
        font-size: 17rem;
        line-height: 2.35em;
        margin-bottom: 37rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .6s; }
      /* line 479, style.scss */
      #top_contact .inner .btn {
        width: 300rem;
        margin: 0 auto;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .9s; }
        /* line 486, style.scss */
        #top_contact .inner .btn a {
          display: block;
          width: 100%;
          font-size: 20rem;
          letter-spacing: 0.01em;
          line-height: 1.2em;
          font-weight: 500;
          color: #1786C4;
          padding: 12rem 0;
          border: solid 1rem #1786C4;
          border-radius: 77rem;
          background: #fff;
          transition: 0.3s; }
          /* line 499, style.scss */
          #top_contact .inner .btn a:hover {
            color: #fff;
            background: #1786C4; }
      /* line 506, style.scss */
      #top_contact .inner.active h2 {
        opacity: 1;
        transform: translateY(0); }
      /* line 510, style.scss */
      #top_contact .inner.active .txt {
        opacity: 1;
        transform: translateY(0); }
      /* line 514, style.scss */
      #top_contact .inner.active .btn {
        opacity: 1;
        transform: translateY(0); }

  /* line 522, style.scss */
  footer {
    background: url("../img/footer_bg.jpg") no-repeat center;
    background-size: cover; }
    /* line 525, style.scss */
    footer .inner {
      width: 1100rem;
      margin: 0 auto;
      padding: 100rem 0 33rem;
      color: #fff; }
      /* line 530, style.scss */
      footer .inner .footer_cont {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 42rem; }
        /* line 536, style.scss */
        footer .inner .footer_cont .footer_info .logo {
          font-size: 30rem;
          line-height: 1.5em; }
          /* line 539, style.scss */
          footer .inner .footer_cont .footer_info .logo span {
            display: inline-block;
            font-size: 50rem;
            line-height: 1.2em; }
        /* line 545, style.scss */
        footer .inner .footer_cont .footer_info .address {
          font-size: 17rem;
          line-height: 1.588em; }
        /* line 552, style.scss */
        footer .inner .footer_cont .footer_menu ul li {
          font-size: 17rem;
          line-height: 1.23em;
          margin-bottom: 15rem; }
          /* line 556, style.scss */
          footer .inner .footer_cont .footer_menu ul li:last-child {
            margin-bottom: 0; }
          /* line 559, style.scss */
          footer .inner .footer_cont .footer_menu ul li a {
            display: inline-block;
            color: #fff; }
            /* line 562, style.scss */
            footer .inner .footer_cont .footer_menu ul li a:hover {
              text-decoration: underline; }
      /* line 570, style.scss */
      footer .inner .copyright {
        font-size: 12rem;
        font-weight: 500;
        text-align: center; }

  /* line 578, style.scss */
  .fadeIn {
    opacity: 0;
    transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
    transition-delay: .2s;
    transform: translateY(20rem); }
    /* line 583, style.scss */
    .fadeIn.active {
      opacity: 1;
      transform: translateY(0); }

  /*下層共通*/
  /* line 590, style.scss */
  .under {
    color: #3E4C45; }
    /* line 592, style.scss */
    .under .under_ttl {
      width: 1100rem;
      margin: 230rem auto 40rem; }
      /* line 595, style.scss */
      .under .under_ttl h2 {
        font-size: 45rem;
        line-height: 1;
        font-weight: 500;
        color: #3E4C45;
        margin-bottom: 15rem; }
      /* line 602, style.scss */
      .under .under_ttl .enttl {
        font-size: 25rem;
        line-height: 1.24em;
        color: #32B7EA; }
    /* line 609, style.scss */
    .under .mv .mv_img {
      width: 1270rem;
      margin-left: auto; }

  /*事業内容*/
  /* line 618, style.scss */
  #service .service_cont {
    padding: 90rem 0 125rem;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    /* line 623, style.scss */
    #service .service_cont .service_box {
      width: 340rem;
      margin: 0 20rem; }
      /* line 626, style.scss */
      #service .service_cont .service_box:nth-child(n+4) {
        margin-top: 50rem; }
      /* line 629, style.scss */
      #service .service_cont .service_box h3 {
        font-size: 30rem;
        line-height: 1.5em;
        color: #32B7EA;
        text-align: center;
        margin-bottom: 10rem; }
      /* line 636, style.scss */
      #service .service_cont .service_box .service_box_img {
        line-height: 0;
        margin-bottom: 19rem; }
      /* line 640, style.scss */
      #service .service_cont .service_box .service_box_txt {
        font-size: 20rem;
        line-height: 1.5em;
        color: #3E4C45; }
  /* line 647, style.scss */
  #service .result {
    background: linear-gradient(135deg, #92CFF1, #008CD3);
    position: relative;
    margin-bottom: 114rem; }
    /* line 651, style.scss */
    #service .result::before {
      position: absolute;
      content: "";
      width: 255rem;
      height: 702rem;
      left: 174rem;
      top: 93rem;
      background: url("../img/result_bg.png") no-repeat;
      background-size: contain; }
    /* line 661, style.scss */
    #service .result .inner {
      width: 630rem;
      margin: 0 auto;
      padding: 106rem 0 167rem;
      position: relative;
      z-index: 2; }
      /* line 667, style.scss */
      #service .result .inner h2 {
        width: 350rem;
        margin: 0 auto 114rem;
        font-size: 30rem;
        line-height: 1.33em;
        color: #fff;
        text-align: center;
        padding-bottom: 18rem;
        border-bottom: solid 1rem #fff; }
      /* line 678, style.scss */
      #service .result .inner .result_cont .result_box {
        display: flex;
        justify-content: space-between;
        align-items: flex-start; }
        /* line 682, style.scss */
        #service .result .inner .result_cont .result_box:first-child {
          margin-bottom: 155rem; }
        /* line 685, style.scss */
        #service .result .inner .result_cont .result_box .result_box_ttl {
          display: inline-block;
          font-size: 28rem;
          letter-spacing: 0.05em;
          line-height: .428em;
          box-sizing: border-box;
          padding: 25rem 31rem;
          background: #fff;
          border-radius: 20rem; }
          /* line 694, style.scss */
          #service .result .inner .result_cont .result_box .result_box_ttl span {
            display: inline-block;
            font-size: 40rem;
            line-height: 1;
            font-weight: 500;
            color: #32B7EA; }
        /* line 702, style.scss */
        #service .result .inner .result_cont .result_box ul {
          width: 340rem; }
          /* line 704, style.scss */
          #service .result .inner .result_cont .result_box ul li {
            font-size: 20rem;
            line-height: 2em;
            color: #fff; }

  /*会社概要*/
  /* line 717, style.scss */
  #company {
    color: #3E4C45; }
    /* line 720, style.scss */
    #company .phil .inner {
      padding: 93rem 0 107rem;
      text-align: center; }
      /* line 723, style.scss */
      #company .phil .inner .enttl {
        font-size: 30rem;
        line-height: 1.26em;
        color: #32B7EA;
        margin-bottom: 19rem; }
      /* line 729, style.scss */
      #company .phil .inner h3 {
        font-size: 40rem;
        letter-spacing: 0.01em;
        line-height: 1.75em;
        margin-bottom: 20rem; }
      /* line 735, style.scss */
      #company .phil .inner .phil_txt {
        font-size: 17rem;
        line-height: 2.35em; }
    /* line 742, style.scss */
    #company .outline .inner {
      width: 852rem;
      margin: 0 auto 164rem; }
      /* line 745, style.scss */
      #company .outline .inner h3 {
        width: 350rem;
        margin: 0 auto 58rem;
        font-size: 30rem;
        line-height: 1.33em;
        text-align: center;
        padding-bottom: 18rem;
        border-bottom: solid 1rem #3E4C45; }
      /* line 754, style.scss */
      #company .outline .inner .outline_box {
        position: relative; }
        /* line 756, style.scss */
        #company .outline .inner .outline_box .outline_box_table {
          width: 517rem; }
          /* line 759, style.scss */
          #company .outline .inner .outline_box .outline_box_table tr th {
            width: 85rem;
            font-size: 17rem;
            line-height: 2.352em;
            text-align: right; }
          /* line 765, style.scss */
          #company .outline .inner .outline_box .outline_box_table tr td {
            width: 432rem;
            font-size: 17rem;
            line-height: 2.352em;
            box-sizing: border-box;
            padding-left: 43rem; }
        /* line 774, style.scss */
        #company .outline .inner .outline_box .outline_box_img {
          width: 440rem;
          position: absolute;
          top: -37rem;
          right: -138rem;
          z-index: -2; }
    /* line 784, style.scss */
    #company .access {
      color: #fff;
      position: relative; }
      /* line 787, style.scss */
      #company .access .bg {
        width: 100%;
        height: 899rem;
        background: url("../img/access_bg.png") no-repeat;
        background-size: contain;
        position: absolute;
        top: -174rem;
        left: 0;
        z-index: -1;
        mix-blend-mode: multiply; }
      /* line 798, style.scss */
      #company .access .inner {
        width: 750rem;
        margin: 0 auto 346rem; }
        /* line 801, style.scss */
        #company .access .inner h3 {
          width: 350rem;
          margin: 0 auto 58rem;
          font-size: 30rem;
          line-height: 1.33em;
          text-align: center;
          padding-bottom: 18rem;
          border-bottom: solid 1rem #fff; }
        /* line 810, style.scss */
        #company .access .inner .access_map {
          width: 100%;
          position: relative;
          height: 320rem;
          margin-bottom: 19rem; }
          /* line 815, style.scss */
          #company .access .inner .access_map iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0; }
        /* line 823, style.scss */
        #company .access .inner .access_txt {
          font-size: 17rem;
          line-height: 1.8em; }
    /* line 829, style.scss */
    #company .greet {
      position: relative; }
      /* line 831, style.scss */
      #company .greet::before {
        position: absolute;
        content: "";
        width: 255rem;
        height: 702rem;
        left: 172rem;
        top: -242rem;
        background: url("../img/greet_bg_txt.png") no-repeat;
        background-size: contain; }
      /* line 841, style.scss */
      #company .greet .bg {
        width: 100%;
        height: 899rem;
        background: url("../img/greet_bg.png") no-repeat;
        background-size: contain;
        position: absolute;
        top: -300rem;
        left: 0;
        z-index: -2;
        mix-blend-mode: multiply; }
      /* line 852, style.scss */
      #company .greet .inner {
        width: 1100rem;
        margin: 0 auto 322rem; }
        /* line 855, style.scss */
        #company .greet .inner .greet_box {
          position: relative; }
          /* line 857, style.scss */
          #company .greet .inner .greet_box .greet_box_txt {
            width: 460rem;
            margin-left: auto; }
            /* line 860, style.scss */
            #company .greet .inner .greet_box .greet_box_txt h3 {
              font-size: 35rem;
              letter-spacing: 0.01em;
              line-height: 1.15em;
              margin-bottom: 35rem; }
            /* line 866, style.scss */
            #company .greet .inner .greet_box .greet_box_txt .txt {
              font-size: 17rem;
              line-height: 2.35em;
              margin-bottom: 25rem; }
            /* line 871, style.scss */
            #company .greet .inner .greet_box .greet_box_txt .name {
              font-size: 22rem;
              line-height: 1.18em;
              text-align: right;
              box-sizing: border-box;
              padding-right: 11rem; }
              /* line 877, style.scss */
              #company .greet .inner .greet_box .greet_box_txt .name span {
                font-size: 16rem;
                margin-right: 1em; }
          /* line 883, style.scss */
          #company .greet .inner .greet_box .greet_box_img {
            width: 348rem;
            position: absolute;
            left: 226rem;
            top: -89rem; }

  /*お問い合わせ（共通）*/
  /* line 896, style.scss */
  .contact .contact_body {
    padding: 118rem 0 238rem; }

  /*お問い合わせ*/
  /* line 903, style.scss */
  #contact .contact_form {
    width: 1100rem;
    margin: 0 auto; }
    /* line 906, style.scss */
    #contact .contact_form table {
      width: 100%;
      margin-bottom: 45rem; }
      /* line 910, style.scss */
      #contact .contact_form table tr th {
        display: block;
        width: 100%;
        font-size: 16rem;
        line-height: 1.25em;
        text-align: left; }
      /* line 917, style.scss */
      #contact .contact_form table tr td {
        display: block;
        width: 100%;
        padding: 10rem 0 50rem; }
        /* line 921, style.scss */
        #contact .contact_form table tr td input {
          width: 100%;
          height: 30rem;
          box-sizing: border-box;
          font-size: 16rem;
          line-height: 1.5em;
          font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
          padding: 0 1em;
          border: solid 1rem #D9D9D9;
          border-radius: 5rem; }
          /* line 931, style.scss */
          #contact .contact_form table tr td input.short {
            width: 430rem; }
        /* line 935, style.scss */
        #contact .contact_form table tr td textarea {
          width: 100%;
          height: 200rem;
          box-sizing: border-box;
          font-size: 16rem;
          line-height: 1.5em;
          font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
          padding: 0.5em 1em;
          border: solid 1rem #D9D9D9;
          border-radius: 5rem;
          resize: none; }
      /* line 949, style.scss */
      #contact .contact_form table tr:last-child td {
        padding-bottom: 0; }
    /* line 955, style.scss */
    #contact .contact_form .privacy {
      text-align: center;
      margin-bottom: 70rem; }
      /* line 958, style.scss */
      #contact .contact_form .privacy label {
        display: inline-block;
        font-size: 16rem;
        line-height: 1.25em;
        margin-bottom: 12rem;
        cursor: pointer; }
        /* line 964, style.scss */
        #contact .contact_form .privacy label input {
          width: 17rem;
          height: 17rem;
          margin: 0 5rem 0 0;
          border-color: #B4B4B4;
          vertical-align: -0.15em; }
      /* line 972, style.scss */
      #contact .contact_form .privacy a {
        display: inline-block;
        font-size: 16rem;
        line-height: 1.25em;
        color: #1786C4;
        text-decoration: underline; }
    /* line 980, style.scss */
    #contact .contact_form .submit {
      width: 300rem;
      margin: 0 auto;
      font-size: 20rem;
      line-height: 1.2em;
      text-align: center; }
      /* line 986, style.scss */
      #contact .contact_form .submit input {
        width: 100%;
        color: #1786C4;
        font-size: 20rem;
        font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
        padding: 12rem 0;
        border-radius: 77rem;
        border: solid 1rem #1786C4;
        background: #fff;
        cursor: pointer;
        transition: 0.3s; }
        /* line 997, style.scss */
        #contact .contact_form .submit input:hover {
          color: #fff;
          background: #1786C4; }

  /* line 1007, style.scss */
  #thanks .thanks_txt {
    font-size: 17rem;
    line-height: 2.35em;
    text-align: center;
    margin-bottom: 80rem; }
  /* line 1013, style.scss */
  #thanks .top_back {
    width: 300rem;
    margin: 0 auto;
    font-size: 20rem;
    line-height: 1.2em;
    text-align: center; }
    /* line 1019, style.scss */
    #thanks .top_back a {
      display: block;
      width: 100%;
      color: #1786C4;
      padding: 12rem 0;
      border-radius: 77rem;
      border: solid 1rem #1786C4;
      background: #fff;
      cursor: pointer;
      transition: 0.3s; }
      /* line 1029, style.scss */
      #thanks .top_back a:hover {
        color: #fff;
        background: #1786C4; }

  /*採用情報*/
  /* line 1039, style.scss */
  #recruit .recruit_cont {
    width: 1100rem;
    margin: 0 auto;
    padding: 55rem 0 180rem; }
    /* line 1043, style.scss */
    #recruit .recruit_cont h3 {
      width: 350rem;
      margin: 0 auto 72rem;
      font-size: 40rem;
      letter-spacing: 0.01em;
      line-height: 1.33em;
      text-align: center;
      padding-bottom: 18rem;
      border-bottom: solid 1rem #3E4C45; }
    /* line 1053, style.scss */
    #recruit .recruit_cont table {
      width: 100%; }
      /* line 1057, style.scss */
      #recruit .recruit_cont table tr:first-child th {
        border-top: solid 1rem #D9D9D9; }
      /* line 1060, style.scss */
      #recruit .recruit_cont table tr:first-child td {
        border-top: solid 1rem #D9D9D9; }
      /* line 1064, style.scss */
      #recruit .recruit_cont table tr th {
        width: 236rem;
        font-size: 16rem;
        line-height: 1.875em;
        box-sizing: border-box;
        text-align: left;
        vertical-align: middle;
        padding: 24rem 0 23rem 24rem;
        border-bottom: solid 1rem #D9D9D9; }
      /* line 1074, style.scss */
      #recruit .recruit_cont table tr td {
        width: 864rem;
        font-size: 16rem;
        line-height: 1.875em;
        padding: 24rem 30rem 23rem 0;
        border-bottom: solid 1rem #D9D9D9; }

  /*プライバシーポリシー*/
  /* line 1088, style.scss */
  #privacy .privacy_cont {
    width: 1100rem;
    margin: 0 auto;
    padding: 60rem 0 200rem; }
    /* line 1092, style.scss */
    #privacy .privacy_cont .privacy_txt {
      font-size: 16rem;
      line-height: 1.875em;
      margin-bottom: 30rem; }
    /* line 1098, style.scss */
    #privacy .privacy_cont dl dt {
      font-size: 18rem;
      line-height: 1.66em;
      font-weight: 600; }
    /* line 1103, style.scss */
    #privacy .privacy_cont dl dd {
      font-size: 16rem;
      line-height: 1.875em;
      margin-bottom: 30rem; }
      /* line 1107, style.scss */
      #privacy .privacy_cont dl dd:last-child {
        margin-bottom: 0; } }
/* SP */
@media screen and (max-width: 768px) {
  /* line 1118, style.scss */
  html {
    font-size: calc(1vw * 100 / 390); }

  /* line 1122, style.scss */
  .pconly {
    display: none !important; }

  /* line 1126, style.scss */
  header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20;
    background: #fff; }
    /* line 1133, style.scss */
    header .inner {
      width: 100%;
      box-sizing: border-box;
      padding: 22rem 18rem; }
      /* line 1137, style.scss */
      header .inner .logo {
        font-size: 16rem;
        line-height: 1; }
        /* line 1140, style.scss */
        header .inner .logo a {
          display: inline-block;
          width: 100%;
          color: #32B7EA; }
          /* line 1144, style.scss */
          header .inner .logo a span {
            font-size: 28rem; }

  /*ハンバーガー メニュー*/
  /* line 1153, style.scss */
  nav.hum {
    display: block;
    position: fixed;
    top: 0;
    right: -100vw;
    /*bottom: 0;*/
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: all .5s;
    z-index: 21;
    opacity: 1;
    background: #32B7EA;
    box-sizing: border-box;
    padding-top: 18rem; }
    /* line 1170, style.scss */
    nav.hum .logo {
      font-size: 16rem;
      line-height: 1;
      margin-left: 22rem;
      margin-bottom: 30rem; }
      /* line 1175, style.scss */
      nav.hum .logo a {
        display: inline-block;
        width: 100%;
        color: #fff; }
        /* line 1179, style.scss */
        nav.hum .logo a span {
          font-size: 28rem; }
    /* line 1184, style.scss */
    nav.hum ul {
      width: 300rem;
      margin: 0 auto; }
      /* line 1187, style.scss */
      nav.hum ul li {
        font-size: 17rem;
        line-height: 1.23em; }
        /* line 1190, style.scss */
        nav.hum ul li a {
          display: block;
          color: #fff;
          padding: 20rem 0 19rem;
          border-bottom: solid 1rem #fff; }

  /* line 1199, style.scss */
  .open nav.hum {
    right: 0;
    opacity: 1; }

  /*============
  .toggle_btn
  =============*/
  /* line 1209, style.scss */
  .toggle_btn {
    display: block;
    position: fixed;
    top: 22rem;
    right: 22rem;
    width: 30rem;
    height: 24rem;
    transition: all .5s;
    cursor: pointer;
    box-sizing: border-box;
    z-index: 23; }

  /* line 1221, style.scss */
  .toggle_btn span {
    display: block;
    position: absolute;
    left: 0;
    width: 30rem;
    height: 1.5rem;
    background-color: #32B7EA;
    transition: all .5s; }

  /* line 1230, style.scss */
  .toggle_btn span:nth-child(1) {
    top: 0; }

  /* line 1233, style.scss */
  .toggle_btn span:nth-child(2) {
    top: 12rem; }

  /* line 1236, style.scss */
  .toggle_btn span:nth-child(3) {
    top: 24rem; }

  /* line 1239, style.scss */
  .open .toggle_btn span {
    background-color: #fff; }

  /* line 1242, style.scss */
  .open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(12rem) rotate(-315deg);
    transform: translateY(12rem) rotate(-315deg); }

  /* line 1246, style.scss */
  .open .toggle_btn span:nth-child(2) {
    opacity: 0; }

  /* line 1249, style.scss */
  .open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-12rem) rotate(315deg);
    transform: translateY(-12rem) rotate(315deg); }

  /*============
  #mask
  =============*/
  /* line 1257, style.scss */
  #mask {
    display: none;
    transition: all .5s; }

  /* line 1261, style.scss */
  .open #mask {
    display: block;
    transition: all .5s;
    position: absolute;
    top: 13.73vw;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 20; }

  /* line 1266, style.scss */
  #top_mv {
    width: 100%; }
    /* line 1268, style.scss */
    #top_mv .inner {
      padding: 80rem 0 122rem;
      position: relative;
      /*&.active {
      	.mv_img {
      		opacity: 1;
      		transform: translateY(0);
      	}
      }*/ }
      /* line 1271, style.scss */
      #top_mv .inner .mv_img {
        width: 294rem;
        margin: 0 auto;
        /*opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(.24,.155,.275,.945);
        transition-delay: .3s;*/ }

  /* line 1288, style.scss */
  #top_service {
    width: 100%; }
    /* line 1290, style.scss */
    #top_service .inner {
      width: 100%; }
      /* line 1292, style.scss */
      #top_service .inner .top_service_box {
        padding-top: 140rem;
        position: relative; }
        /* line 1295, style.scss */
        #top_service .inner .top_service_box .top_service_img {
          width: 100%;
          line-height: 0;
          position: absolute;
          top: 0;
          left: 0; }
        /* line 1302, style.scss */
        #top_service .inner .top_service_box .top_service_txt {
          width: 100%;
          height: 542rem;
          position: relative;
          box-sizing: border-box;
          padding: 70rem 22rem 76rem;
          color: #fff; }
          /* line 1309, style.scss */
          #top_service .inner .top_service_box .top_service_txt::before {
            position: absolute;
            content: "";
            width: 100%;
            height: 100%;
            bottom: 0;
            left: 0;
            background: url("../img/top_service_bg_sp.png") no-repeat center bottom;
            background-size: contain; }
          /* line 1319, style.scss */
          #top_service .inner .top_service_box .top_service_txt h2 {
            display: inline-block;
            font-size: 18rem;
            letter-spacing: 0.03em;
            line-height: 1.2em;
            margin-left: 32rem;
            margin-bottom: 30rem;
            text-align: center;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .3s; }
            /* line 1333, style.scss */
            #top_service .inner .top_service_box .top_service_txt h2 span.enttl {
              font-size: 45rem;
              letter-spacing: 0;
              line-height: 1.24em;
              display: inline-block;
              margin-bottom: 8rem; }
          /* line 1341, style.scss */
          #top_service .inner .top_service_box .top_service_txt .txt {
            font-size: 16rem;
            line-height: 2.37em;
            margin-bottom: 41rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .6s; }
          /* line 1352, style.scss */
          #top_service .inner .top_service_box .top_service_txt .btn {
            width: 250rem;
            margin: 0 auto;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .9s; }
            /* line 1361, style.scss */
            #top_service .inner .top_service_box .top_service_txt .btn a {
              display: block;
              width: 100%;
              font-size: 20rem;
              letter-spacing: 0.01em;
              line-height: 1.2em;
              font-weight: 500;
              color: #1786C4;
              text-align: center;
              padding: 12rem 0;
              background: #fff;
              border: solid 1rem #1786C4;
              border-radius: 77rem; }
        /* line 1378, style.scss */
        #top_service .inner .top_service_box.active h2 {
          opacity: 1;
          transform: translateY(0); }
        /* line 1382, style.scss */
        #top_service .inner .top_service_box.active .txt {
          opacity: 1;
          transform: translateY(0); }
        /* line 1386, style.scss */
        #top_service .inner .top_service_box.active .btn {
          opacity: 1;
          transform: translateY(0); }

  /* line 1395, style.scss */
  #top_company {
    width: 100%; }
    /* line 1397, style.scss */
    #top_company .inner {
      width: 100%; }
      /* line 1399, style.scss */
      #top_company .inner .top_company_box {
        padding-top: 140rem;
        position: relative; }
        /* line 1402, style.scss */
        #top_company .inner .top_company_box .top_company_img {
          width: 100%;
          line-height: 0;
          position: absolute;
          top: 0;
          left: 0; }
        /* line 1409, style.scss */
        #top_company .inner .top_company_box .top_company_txt {
          width: 100%;
          height: 542rem;
          position: relative;
          box-sizing: border-box;
          padding: 70rem 22rem 76rem;
          color: #1786C4; }
          /* line 1416, style.scss */
          #top_company .inner .top_company_box .top_company_txt::before {
            position: absolute;
            content: "";
            width: 100%;
            height: 100%;
            top: 0;
            right: 0;
            background: url("../img/top_company_bg_sp.png") no-repeat center top;
            background-size: contain; }
          /* line 1426, style.scss */
          #top_company .inner .top_company_box .top_company_txt h2 {
            display: inline-block;
            font-size: 18rem;
            letter-spacing: 0.03em;
            line-height: 1.2em;
            margin-left: 125rem;
            margin-bottom: 30rem;
            text-align: center;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .3s; }
            /* line 1440, style.scss */
            #top_company .inner .top_company_box .top_company_txt h2 span.enttl {
              font-size: 45rem;
              letter-spacing: 0;
              line-height: 1.24em;
              display: inline-block;
              margin-bottom: 8rem; }
          /* line 1448, style.scss */
          #top_company .inner .top_company_box .top_company_txt .txt {
            font-size: 17rem;
            line-height: 2.35em;
            margin-bottom: 41rem;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .6s; }
          /* line 1459, style.scss */
          #top_company .inner .top_company_box .top_company_txt .btn {
            width: 250rem;
            margin: 0 auto;
            position: relative;
            z-index: 2;
            opacity: 0;
            transform: translateY(30rem);
            transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
            transition-delay: .9s; }
            /* line 1468, style.scss */
            #top_company .inner .top_company_box .top_company_txt .btn a {
              display: block;
              width: 100%;
              font-size: 20rem;
              letter-spacing: 0.01em;
              line-height: 1.2em;
              font-weight: 500;
              color: #fff;
              text-align: center;
              padding: 12rem 0;
              background: #1786C4;
              border: solid 1rem #1786C4;
              border-radius: 77rem; }
        /* line 1485, style.scss */
        #top_company .inner .top_company_box.active h2 {
          opacity: 1;
          transform: translateY(0); }
        /* line 1489, style.scss */
        #top_company .inner .top_company_box.active .txt {
          opacity: 1;
          transform: translateY(0); }
        /* line 1493, style.scss */
        #top_company .inner .top_company_box.active .btn {
          opacity: 1;
          transform: translateY(0); }

  /* line 1502, style.scss */
  #top_recruit {
    width: 100%;
    margin-bottom: 66rem; }
    /* line 1505, style.scss */
    #top_recruit .bg {
      background: url("../img/top_recruit_bg_sp.jpg") no-repeat center;
      background-size: cover; }
    /* line 1509, style.scss */
    #top_recruit .inner {
      width: 346rem;
      margin: 0 auto;
      padding: 58rem 0 64rem;
      text-align: center;
      color: #fff; }
      /* line 1515, style.scss */
      #top_recruit .inner h2 {
        font-size: 18rem;
        letter-spacing: 0.03em;
        line-height: 1.2em;
        margin-bottom: 48rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .3s; }
        /* line 1524, style.scss */
        #top_recruit .inner h2 span.enttl {
          font-size: 45rem;
          letter-spacing: 0;
          line-height: 1.25em;
          display: inline-block;
          margin-bottom: 11rem; }
      /* line 1532, style.scss */
      #top_recruit .inner .txt {
        font-size: 16rem;
        line-height: 2.375em;
        margin-bottom: 48rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .6s; }
      /* line 1541, style.scss */
      #top_recruit .inner .btn {
        width: 250rem;
        margin: 0 auto;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .9s; }
        /* line 1548, style.scss */
        #top_recruit .inner .btn a {
          display: block;
          width: 100%;
          font-size: 20rem;
          letter-spacing: 0.01em;
          line-height: 1.2em;
          font-weight: 500;
          color: #3E4C45;
          padding: 12rem 0;
          border: solid 1rem #CDF462;
          border-radius: 77rem;
          background: #CDF462; }
      /* line 1563, style.scss */
      #top_recruit .inner.active h2 {
        opacity: 1;
        transform: translateY(0); }
      /* line 1567, style.scss */
      #top_recruit .inner.active .txt {
        opacity: 1;
        transform: translateY(0); }
      /* line 1571, style.scss */
      #top_recruit .inner.active .btn {
        opacity: 1;
        transform: translateY(0); }

  /* line 1579, style.scss */
  #top_contact {
    width: 100%;
    margin-bottom: 82rem; }
    /* line 1583, style.scss */
    #top_contact.under h2 {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 1588, style.scss */
    #top_contact.under .txt {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 1593, style.scss */
    #top_contact.under .btn {
      opacity: 1 !important;
      transform: none !important;
      transform: none !important; }
    /* line 1599, style.scss */
    #top_contact .inner {
      width: 100%;
      text-align: center;
      color: #3E4C45; }
      /* line 1603, style.scss */
      #top_contact .inner h2 {
        font-size: 18rem;
        letter-spacing: 0.03em;
        line-height: 1.2em;
        margin-bottom: 37rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .3s; }
        /* line 1612, style.scss */
        #top_contact .inner h2 span.enttl {
          font-size: 45rem;
          letter-spacing: 0;
          line-height: 1.25em;
          display: inline-block;
          margin-bottom: 19rem; }
      /* line 1620, style.scss */
      #top_contact .inner .txt {
        font-size: 16rem;
        line-height: 2.375em;
        margin-bottom: 47rem;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .6s; }
      /* line 1629, style.scss */
      #top_contact .inner .btn {
        width: 300rem;
        margin: 0 auto;
        opacity: 0;
        transform: translateY(30rem);
        transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
        transition-delay: .9s; }
        /* line 1636, style.scss */
        #top_contact .inner .btn a {
          display: block;
          width: 100%;
          font-size: 20rem;
          letter-spacing: 0.01em;
          line-height: 1.2em;
          font-weight: 500;
          color: #1786C4;
          padding: 12rem 0;
          border: solid 1rem #1786C4;
          border-radius: 77rem;
          background: #fff;
          transition: 0.3s; }
          /* line 1649, style.scss */
          #top_contact .inner .btn a:hover {
            color: #fff;
            background: #1786C4; }
      /* line 1656, style.scss */
      #top_contact .inner.active h2 {
        opacity: 1;
        transform: translateY(0); }
      /* line 1660, style.scss */
      #top_contact .inner.active .txt {
        opacity: 1;
        transform: translateY(0); }
      /* line 1664, style.scss */
      #top_contact .inner.active .btn {
        opacity: 1;
        transform: translateY(0); }

  /* line 1672, style.scss */
  footer {
    background: url("../img/footer_bg_sp.jpg") no-repeat center;
    background-size: cover; }
    /* line 1675, style.scss */
    footer .inner {
      width: 346rem;
      margin: 0 auto;
      padding: 36rem 0 16rem;
      color: #fff; }
      /* line 1680, style.scss */
      footer .inner .footer_cont {
        margin-bottom: 34rem; }
        /* line 1682, style.scss */
        footer .inner .footer_cont .footer_info {
          margin-bottom: 45rem; }
          /* line 1684, style.scss */
          footer .inner .footer_cont .footer_info .logo {
            font-size: 25rem;
            line-height: 1.5em; }
            /* line 1687, style.scss */
            footer .inner .footer_cont .footer_info .logo span {
              display: inline-block;
              font-size: 45rem;
              line-height: 1.2em; }
          /* line 1693, style.scss */
          footer .inner .footer_cont .footer_info .address {
            font-size: 16rem;
            line-height: 1.6875em; }
        /* line 1700, style.scss */
        footer .inner .footer_cont .footer_menu ul li {
          font-size: 16rem;
          line-height: 1.1875em;
          margin-bottom: 17rem; }
          /* line 1704, style.scss */
          footer .inner .footer_cont .footer_menu ul li:last-child {
            margin-bottom: 0; }
          /* line 1707, style.scss */
          footer .inner .footer_cont .footer_menu ul li a {
            display: inline-block;
            color: #fff; }
      /* line 1715, style.scss */
      footer .inner .copyright {
        font-size: 12rem;
        font-weight: 500;
        text-align: center; }

  /* line 1723, style.scss */
  .fadeIn {
    opacity: 0;
    transition: 1s cubic-bezier(0.24, 0.155, 0.275, 0.945);
    transition-delay: .2s;
    transform: translateY(20rem); }
    /* line 1728, style.scss */
    .fadeIn.active {
      opacity: 1;
      transform: translateY(0); }

  /*下層共通*/
  /* line 1735, style.scss */
  .under {
    color: #3E4C45; }
    /* line 1737, style.scss */
    .under .under_ttl {
      width: 350rem;
      margin: 101rem auto 10rem; }
      /* line 1740, style.scss */
      .under .under_ttl h2 {
        font-size: 24rem;
        line-height: 1.25;
        font-weight: 500;
        color: #3E4C45;
        margin-bottom: 4rem; }
      /* line 1747, style.scss */
      .under .under_ttl .enttl {
        font-size: 16rem;
        line-height: 1.25em;
        color: #32B7EA; }
    /* line 1754, style.scss */
    .under .mv .mv_img {
      width: 100%; }

  /*事業内容*/
  /* line 1762, style.scss */
  #service .service_cont {
    width: 346rem;
    margin: 0 auto;
    padding: 40rem 0 70rem; }
    /* line 1766, style.scss */
    #service .service_cont .service_box {
      width: 100%;
      padding: 23rem 0 35rem;
      border-bottom: solid 1rem #D9D9D9;
      display: flex;
      flex-direction: column; }
      /* line 1772, style.scss */
      #service .service_cont .service_box:first-child {
        padding-top: 0; }
      /* line 1775, style.scss */
      #service .service_cont .service_box:last-child {
        padding-bottom: 0;
        border: none; }
      /* line 1779, style.scss */
      #service .service_cont .service_box h3 {
        font-size: 24rem;
        line-height: 1.5em;
        color: #32B7EA;
        margin-bottom: 5rem;
        order: 1; }
      /* line 1786, style.scss */
      #service .service_cont .service_box .service_box_img {
        line-height: 0;
        order: 3; }
      /* line 1790, style.scss */
      #service .service_cont .service_box .service_box_txt {
        font-size: 16rem;
        line-height: 1.625em;
        color: #3E4C45;
        margin-bottom: 16rem;
        order: 2; }
  /* line 1799, style.scss */
  #service .result {
    overflow: hidden;
    background: url("../img/result_bg_sp.png") no-repeat center;
    background-size: cover;
    position: relative;
    margin-bottom: 79rem; }
    /* line 1805, style.scss */
    #service .result::before {
      position: absolute;
      content: "";
      width: 182rem;
      height: 500rem;
      right: -26rem;
      bottom: 85rem;
      background: url("../img/result_bg.png") no-repeat;
      background-size: contain; }
    /* line 1815, style.scss */
    #service .result .inner {
      width: 346rem;
      margin: 0 auto;
      padding: 68rem 0 59rem;
      position: relative;
      z-index: 2; }
      /* line 1821, style.scss */
      #service .result .inner h2 {
        width: 200rem;
        margin: 0 auto 55rem;
        font-size: 24rem;
        line-height: 1.66em;
        color: #fff;
        text-align: center;
        padding-bottom: 13rem;
        border-bottom: solid 1rem #fff; }
      /* line 1833, style.scss */
      #service .result .inner .result_cont .result_box:first-child {
        margin-bottom: 104rem; }
      /* line 1836, style.scss */
      #service .result .inner .result_cont .result_box .result_box_ttl {
        display: inline-block;
        font-size: 24rem;
        letter-spacing: 0.05em;
        line-height: 1em;
        box-sizing: border-box;
        padding: 12rem 23rem 13rem;
        background: #fff;
        border-radius: 20rem;
        margin-bottom: 22rem; }
        /* line 1846, style.scss */
        #service .result .inner .result_cont .result_box .result_box_ttl span {
          display: inline-block;
          font-size: 36rem;
          line-height: 1.11em;
          font-weight: 500;
          color: #32B7EA; }
      /* line 1855, style.scss */
      #service .result .inner .result_cont .result_box ul li {
        font-size: 17rem;
        line-height: 1.76em;
        color: #fff; }

  /*会社概要*/
  /* line 1868, style.scss */
  #company {
    color: #3E4C45; }
    /* line 1871, style.scss */
    #company .phil .inner {
      padding: 34rem 0 60rem;
      text-align: center; }
      /* line 1874, style.scss */
      #company .phil .inner .enttl {
        font-size: 16rem;
        line-height: 1.26em;
        color: #32B7EA;
        margin-bottom: 12rem; }
      /* line 1880, style.scss */
      #company .phil .inner h3 {
        font-size: 24rem;
        line-height: 1.66em;
        margin-bottom: 26rem; }
      /* line 1885, style.scss */
      #company .phil .inner .phil_txt {
        font-size: 16rem;
        line-height: 1.875em; }
    /* line 1892, style.scss */
    #company .outline .inner {
      width: 348rem;
      margin: 0 auto 275rem; }
      /* line 1895, style.scss */
      #company .outline .inner h3 {
        width: 200rem;
        margin: 0 auto 58rem;
        font-size: 24rem;
        line-height: 1.66em;
        text-align: center;
        padding-bottom: 13rem;
        border-bottom: solid 1rem #3E4C45; }
      /* line 1904, style.scss */
      #company .outline .inner .outline_box {
        position: relative; }
        /* line 1906, style.scss */
        #company .outline .inner .outline_box .outline_box_table {
          width: 100%; }
          /* line 1909, style.scss */
          #company .outline .inner .outline_box .outline_box_table tr th {
            width: 80rem;
            font-size: 16rem;
            line-height: 1.625em;
            text-align: right;
            padding: 10rem 0; }
          /* line 1916, style.scss */
          #company .outline .inner .outline_box .outline_box_table tr td {
            width: 267rem;
            font-size: 16rem;
            line-height: 1.625em;
            box-sizing: border-box;
            padding: 10rem 0 10rem 32rem; }
        /* line 1925, style.scss */
        #company .outline .inner .outline_box .outline_box_img {
          width: 230rem;
          position: absolute;
          bottom: -207rem;
          left: 50%;
          transform: translateX(-50%);
          z-index: -2; }
    /* line 1936, style.scss */
    #company .access {
      color: #fff;
      position: relative; }
      /* line 1939, style.scss */
      #company .access .bg {
        width: 100%;
        height: 550rem;
        background: url("../img/access_bg_sp.png") no-repeat;
        background-size: contain;
        position: absolute;
        top: -86rem;
        left: 0;
        z-index: -1;
        mix-blend-mode: multiply; }
      /* line 1950, style.scss */
      #company .access .inner {
        width: 346rem;
        margin: 0 auto 117rem; }
        /* line 1953, style.scss */
        #company .access .inner h3 {
          width: 200rem;
          margin: 0 auto 39rem;
          font-size: 24rem;
          line-height: 1.66em;
          text-align: center;
          padding-bottom: 13rem;
          border-bottom: solid 1rem #fff; }
        /* line 1962, style.scss */
        #company .access .inner .access_map {
          width: 100%;
          position: relative;
          height: 226rem;
          margin-bottom: 24rem; }
          /* line 1967, style.scss */
          #company .access .inner .access_map iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0; }
        /* line 1975, style.scss */
        #company .access .inner .access_txt {
          font-size: 16rem;
          line-height: 1.625em; }
    /* line 1981, style.scss */
    #company .greet {
      position: relative; }
      /* line 1983, style.scss */
      #company .greet::before {
        position: absolute;
        content: "";
        width: 87rem;
        height: 240rem;
        left: 28rem;
        top: 198rem;
        background: url("../img/greet_bg_txt.png") no-repeat;
        background-size: contain; }
      /* line 1993, style.scss */
      #company .greet .bg {
        width: 100%;
        height: 588rem;
        background: url("../img/greet_bg_sp.png") no-repeat;
        background-size: contain;
        position: absolute;
        top: -65rem;
        left: 0;
        z-index: -2;
        mix-blend-mode: multiply; }
      /* line 2004, style.scss */
      #company .greet .inner {
        width: 346rem;
        margin: 0 auto 126rem; }
        /* line 2007, style.scss */
        #company .greet .inner .greet_box {
          position: relative; }
          /* line 2009, style.scss */
          #company .greet .inner .greet_box .greet_box_txt {
            width: 100%;
            margin-bottom: 24rem; }
            /* line 2012, style.scss */
            #company .greet .inner .greet_box .greet_box_txt h3 {
              font-size: 24rem;
              letter-spacing: 0.01em;
              line-height: 1.25em;
              margin-bottom: 11rem; }
            /* line 2018, style.scss */
            #company .greet .inner .greet_box .greet_box_txt .txt {
              font-size: 16rem;
              line-height: 1.625em;
              margin-bottom: 12rem; }
            /* line 2023, style.scss */
            #company .greet .inner .greet_box .greet_box_txt .name {
              font-size: 22rem;
              line-height: 1.18em;
              text-align: right; }
              /* line 2027, style.scss */
              #company .greet .inner .greet_box .greet_box_txt .name span {
                font-size: 16rem;
                margin-right: 0.5em; }
          /* line 2033, style.scss */
          #company .greet .inner .greet_box .greet_box_img {
            width: 211rem;
            margin-left: auto; }

  /*お問い合わせ（共通）*/
  /* line 2044, style.scss */
  .contact .contact_body {
    padding: 44rem 0 80rem; }

  /*お問い合わせ*/
  /* line 2051, style.scss */
  #contact .contact_form {
    width: 347rem;
    margin: 0 auto; }
    /* line 2054, style.scss */
    #contact .contact_form table {
      width: 100%;
      margin-bottom: 30rem; }
      /* line 2058, style.scss */
      #contact .contact_form table tr th {
        display: block;
        width: 100%;
        font-size: 16rem;
        line-height: 1.25em;
        text-align: left; }
      /* line 2065, style.scss */
      #contact .contact_form table tr td {
        display: block;
        width: 100%;
        padding: 10rem 0 45rem; }
        /* line 2069, style.scss */
        #contact .contact_form table tr td input {
          width: 100%;
          height: 35rem;
          box-sizing: border-box;
          font-size: 16rem;
          line-height: 1.5em;
          font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
          padding: 0 1em;
          border: solid 1rem #D9D9D9;
          border-radius: 5rem; }
        /* line 2080, style.scss */
        #contact .contact_form table tr td textarea {
          width: 100%;
          height: 200rem;
          box-sizing: border-box;
          font-size: 16rem;
          line-height: 1.5em;
          font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
          padding: 0.5em 1em;
          border: solid 1rem #D9D9D9;
          border-radius: 5rem;
          resize: none; }
      /* line 2094, style.scss */
      #contact .contact_form table tr:last-child td {
        padding-bottom: 0; }
    /* line 2100, style.scss */
    #contact .contact_form .privacy {
      text-align: center;
      margin-bottom: 48rem; }
      /* line 2103, style.scss */
      #contact .contact_form .privacy label {
        display: inline-block;
        font-size: 14rem;
        line-height: 1.25em;
        margin-bottom: 10rem;
        cursor: pointer; }
        /* line 2109, style.scss */
        #contact .contact_form .privacy label input {
          width: 15rem;
          height: 15rem;
          margin: 0 5rem 0 0;
          border-color: #B4B4B4;
          vertical-align: -0.15em; }
      /* line 2117, style.scss */
      #contact .contact_form .privacy a {
        display: inline-block;
        font-size: 14rem;
        line-height: 1.25em;
        color: #1786C4;
        text-decoration: underline; }
    /* line 2125, style.scss */
    #contact .contact_form .submit {
      width: 300rem;
      margin: 0 auto;
      font-size: 20rem;
      line-height: 1.2em;
      text-align: center; }
      /* line 2131, style.scss */
      #contact .contact_form .submit input {
        width: 100%;
        color: #1786C4;
        font-size: 20rem;
        font-family: "Inter", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
        padding: 12rem 0;
        border-radius: 77rem;
        border: solid 1rem #1786C4;
        background: #fff;
        cursor: pointer; }

  /* line 2147, style.scss */
  #thanks .thanks_txt {
    font-size: 16rem;
    line-height: 1.875em;
    text-align: center;
    margin-bottom: 80rem; }
  /* line 2153, style.scss */
  #thanks .top_back {
    width: 300rem;
    margin: 0 auto;
    font-size: 20rem;
    line-height: 1.2em;
    text-align: center; }
    /* line 2159, style.scss */
    #thanks .top_back a {
      display: block;
      width: 100%;
      color: #1786C4;
      padding: 12rem 0;
      border-radius: 77rem;
      border: solid 1rem #1786C4;
      background: #fff;
      cursor: pointer;
      transition: 0.3s; }
      /* line 2169, style.scss */
      #thanks .top_back a:hover {
        color: #fff;
        background: #1786C4; }

  /*採用情報*/
  /* line 2179, style.scss */
  #recruit .recruit_cont {
    width: 346rem;
    margin: 0 auto;
    padding: 34rem 0 53rem; }
    /* line 2183, style.scss */
    #recruit .recruit_cont h3 {
      width: 200rem;
      margin: 0 auto 34rem;
      font-size: 24rem;
      letter-spacing: 0.01em;
      line-height: 1.66em;
      text-align: center;
      padding-bottom: 13rem;
      border-bottom: solid 1rem #3E4C45; }
    /* line 2193, style.scss */
    #recruit .recruit_cont table {
      width: 100%; }
      /* line 2197, style.scss */
      #recruit .recruit_cont table tr:first-child th {
        border-top: solid 1rem #D9D9D9; }
      /* line 2200, style.scss */
      #recruit .recruit_cont table tr:first-child td {
        border-top: solid 1rem #D9D9D9; }
      /* line 2204, style.scss */
      #recruit .recruit_cont table tr th {
        width: 87rem;
        font-size: 16rem;
        line-height: 1.875em;
        box-sizing: border-box;
        text-align: left;
        padding: 24rem 0 23rem;
        border-bottom: solid 1rem #D9D9D9; }
      /* line 2213, style.scss */
      #recruit .recruit_cont table tr td {
        width: 259rem;
        font-size: 16rem;
        line-height: 1.875em;
        padding: 24rem 0 23rem;
        border-bottom: solid 1rem #D9D9D9; }

  /*プライバシーポリシー*/
  /* line 2227, style.scss */
  #privacy .privacy_cont {
    width: 330rem;
    margin: 0 auto;
    padding: 50rem 0 120rem; }
    /* line 2231, style.scss */
    #privacy .privacy_cont .privacy_txt {
      font-size: 16rem;
      line-height: 1.875em;
      margin-bottom: 30rem; }
    /* line 2237, style.scss */
    #privacy .privacy_cont dl dt {
      font-size: 18rem;
      line-height: 1.66em;
      font-weight: 600; }
    /* line 2242, style.scss */
    #privacy .privacy_cont dl dd {
      font-size: 16rem;
      line-height: 1.875em;
      margin-bottom: 30rem; }
      /* line 2246, style.scss */
      #privacy .privacy_cont dl dd:last-child {
        margin-bottom: 0; } }

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