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

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

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

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

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

#resbtn {
  -webkit-appearance: none; }

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

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

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

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

.fadein {
  opacity: 0;
  transform: translate(0, 0);
  transition: all 0.5s; }
  .fadein.fadein-left {
    transform: translate(-30px, 0); }
  .fadein.fadein-right {
    transform: translate(30px, 0); }
  .fadein.fadein-up {
    transform: translate(0, -30px); }
  .fadein.fadein-bottom {
    transform: translate(0, 30px); }
  .fadein.scrollin {
    opacity: 1 !important;
    transform: translate(0, 0) !important; }

html {
  scroll-behavior: smooth; }

/* PC */
@media screen and (min-width: 769px) {
  .thanks_area {
    background: #fff;
    text-align: center;
    padding: 100px 0; }
    .thanks_area .thanks_txt {
      text-align: center;
      line-height: 1.8em;
      font-size: 14px;
      margin-bottom: 20px; }
    .thanks_area .thanks_btn {
      text-align: center; }
      .thanks_area .thanks_btn a {
        display: inline-block;
        font-size: 14px;
        color: #fff;
        background: #000;
        padding: 1em 3em; }

  .wpcf7-not-valid-tip {
    font-size: 0.4em !important;
    margin-top: 0.8em; }

  .wpcf7 form .wpcf7-response-output {
    width: 80%;
    margin: 10px auto 0 !important;
    font-size: 11px !important; }

  body {
    position: relative; }

  .bgArea {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: url("../img/bg.png") no-repeat center;
    background-size: cover; }

  main {
    width: 375px;
    margin: 0 auto;
    position: relative;
    z-index: 2; }

  #sec01 {
    padding-top: 13px;
    background: url("../img/bg_up.png") no-repeat center bottom;
    background-size: contain;
    padding-bottom: 76px; }
    #sec01 .sec01_img01 {
      width: 320px;
      margin: 0 auto 47px; }
    #sec01 .sec01_img02 {
      width: 290px;
      margin: 0 auto 57px; }
    #sec01 .sec01_img03 {
      width: 315px;
      margin: 0 auto 19px; }
    #sec01 .sec01_img04 {
      width: 315px;
      margin: 0 auto 38px; }
    #sec01 .sec01_img05 {
      width: 361px;
      margin: 0 auto; }

  #sec02 {
    background: #000;
    padding-top: 4px;
    padding-bottom: 25px; }
    #sec02 .sec02_img01 {
      width: 298px;
      margin: 0 auto 36px; }
    #sec02 .sec02_img02 {
      width: 341px;
      margin: 0 auto 30px; }
    #sec02 .sec02_img03 {
      width: 341px;
      margin: 0 auto 19px; }
    #sec02 .sec02_img04 {
      width: 286px;
      margin: 0 auto; }

  #sec03 {
    background: url("../img/bg_btm.png") no-repeat center top rgba(0, 0, 0, 0.5);
    background-size: contain;
    padding-top: 82px;
    padding-bottom: 11px; }
    #sec03 .sec03_img01 {
      width: 304px;
      margin: 0 auto 10px; }
    #sec03 .sec03_img02 {
      width: 340px;
      margin: 0 auto 39px; }
    #sec03 .sec03_img03 {
      width: 304px;
      margin: 0 auto; }

  #sec04 {
    background: url("../img/bg_arr_02.png") no-repeat center top;
    background-size: contain;
    padding-top: 78px;
    padding-bottom: 33px; }
    #sec04 .sec04_img01 {
      width: 304px;
      margin: 0 auto 16px; }
    #sec04 .sec04_img02 {
      width: 335px;
      margin: 0 auto 22px; }
    #sec04 .sec04_img03 {
      width: 233px;
      margin: 0 auto 32px; }
    #sec04 .sec04_img04 {
      width: 308px;
      margin: 0 auto 49px; }
    #sec04 .sec04_img05 {
      width: 344px;
      margin: 0 auto; }

  #slider {
    background: url("../img/bg_up.png") no-repeat center bottom;
    background-size: contain;
    padding-top: 30px;
    padding-bottom: 43px; }
    #slider .slick-track {
      display: flex; }
    #slider .slick-slide {
      height: auto !important; }
    #slider .slide-dots {
      text-align: center;
      font-size: 0;
      margin-top: 28px; }
      #slider .slide-dots li {
        display: inline-block;
        margin: 0 5px; }
        #slider .slide-dots li.slick-active button {
          background-image: url("../img/dot_02.png"); }
        #slider .slide-dots li button {
          width: 10px;
          height: 10px;
          background: url("../img/dot_01.png") no-repeat center;
          background-size: contain;
          border: none;
          font-size: 0; }
    #slider .slide_inner .slide {
      margin: 0 10px;
      box-sizing: border-box;
      background: #333333;
      padding: 13px; }
      #slider .slide_inner .slide .slide_img {
        margin-bottom: 19px; }
      #slider .slide_inner .slide .slide_name {
        text-align: center;
        font-size: 16px;
        line-height: 1.6em;
        color: #C390FF;
        margin-bottom: 3px; }
      #slider .slide_inner .slide .slide_posi {
        color: #fff;
        font-size: 12px;
        line-height: 1.3em;
        text-align: center;
        margin-bottom: 19px; }
      #slider .slide_inner .slide .slide_txt {
        box-sizing: border-box;
        padding: 0 14px 10px;
        color: #fff;
        font-size: 14px;
        line-height: 1.6em; }

  .cta {
    background: url("../img/cta_bg.png") no-repeat center bottom #000;
    background-size: contain;
    padding: 8px 0 19px;
    position: relative; }
    .cta:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      bottom: 0;
      height: 60px;
      width: 100%;
      background: url("../img/bg_up.png") no-repeat center bottom;
      background-size: contain;
      z-index: 2; }
    .cta .cta_inner {
      position: relative;
      width: 340px;
      margin: 0 auto; }
      .cta .cta_inner .cta_frame {
        position: relative;
        z-index: 2; }
      .cta .cta_inner .cta_txt_01 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 154px; }
        .cta .cta_inner .cta_txt_01 img {
          width: 264px; }
      .cta .cta_inner .cta_txt_02 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 276px; }
        .cta .cta_inner .cta_txt_02 img {
          width: 235px; }
      .cta .cta_inner .cta_txt_03 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 449px; }
        .cta .cta_inner .cta_txt_03 a {
          display: block; }
          .cta .cta_inner .cta_txt_03 a:hover {
            cursor: pointer; }
        .cta .cta_inner .cta_txt_03 img {
          width: 256px; }

  #sec05 {
    background: url("../img/arr_bg_01.png") no-repeat center bottom rgba(0, 0, 0, 0.5);
    background-size: contain;
    padding-bottom: 162px;
    padding-top: 97px;
    position: relative; }
    #sec05:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: -2px;
      width: 100%;
      height: 70px;
      z-index: 1;
      background: url("../img/bg_btm.png") no-repeat center top;
      background-size: contain; }
    #sec05 .sec05_img01 {
      width: 330px;
      margin: 0 auto 50px; }
    #sec05 .sec05_img02 {
      width: 100%;
      margin: 0 auto 50px; }
    #sec05 .sec05_img03 {
      width: 100%;
      margin: 0 auto; }

  #sec06 {
    background: url("../img/bg_up2.png") no-repeat center bottom #fff;
    padding-top: 15px;
    padding-bottom: 156px; }
    #sec06 .sec06_img01 {
      width: 320px;
      margin: 0 auto 45px; }
    #sec06 .sec06_img02 {
      width: 339px;
      margin: 0 auto 49px; }
    #sec06 .sec06_img03 {
      width: 100%;
      margin: 0 auto 49px; }
    #sec06 .sec06_img04 {
      width: 100%;
      margin: 0 auto 49px; }
    #sec06 .sec06_img05 {
      width: 100%;
      margin: 0 auto; }

  #case {
    background: url("../img/bg_btm2.png") no-repeat center bottom;
    background-size: contain;
    padding-bottom: 128px;
    padding-top: 97px;
    position: relative; }
    #case:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: -2px;
      width: 100%;
      height: 70px;
      z-index: 1;
      background: url("../img/bg_btm.png") no-repeat center top;
      background-size: contain; }
    #case .case_img01 {
      width: 159px;
      margin: 0 auto 45px; }
    #case .case_img02 {
      width: 340px;
      margin: 0 auto 50px; }
    #case .case_img03 {
      width: 340px;
      margin: 0 auto 50px; }
    #case .case_img04 {
      width: 340px;
      margin: 0 auto 50px; }
    #case .case_img05 {
      width: 94px;
      margin: 0 auto; }

  #contact {
    background: #fff;
    padding-top: 70px;
    padding-bottom: 40px; }
    #contact .inner .contact_ttl {
      width: 232px;
      margin: 0 auto 44px; }
    #contact .inner .center_txt {
      width: 340px;
      margin: 0 auto 44px; }
    #contact .inner .red_frame {
      width: 350px;
      margin: 0 auto 44px; }
    #contact .contactBtn {
      text-align: center; }
      #contact .contactBtn input[type="submit"] {
        color: #fff;
        overflow: hidden;
        width: 250px;
        margin: 0 auto;
        background: url("../img/txtbg_01.png") no-repeat center;
        background-size: cover;
        font-size: 16px;
        line-height: 1.6em;
        font-weight: 700;
        border: none;
        border-radius: 5px;
        padding: 12px 0; }
      #contact .contactBtn .wpcf7-spinner {
        display: none; }
    #contact .contactForm {
      width: 350px;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 1px #EAEAEA;
      padding: 20px;
      margin-bottom: 44px; }
      #contact .contactForm dl {
        margin-bottom: 20px; }
        #contact .contactForm dl:last-child {
          margin-bottom: 0; }
        #contact .contactForm dl dt {
          font-size: 12px;
          line-height: 1.6em;
          margin-bottom: 3px; }
          #contact .contactForm dl dt span {
            font-size: 11px;
            display: inline-block;
            margin-left: 12px; }
            #contact .contactForm dl dt span.red {
              color: #ED3636; }
            #contact .contactForm dl dt span.green {
              color: #33C337; }
        #contact .contactForm dl dd input[type="text"] {
          box-sizing: border-box;
          width: 100%;
          border-radius: 5px;
          border: solid 2px #D6D6D6;
          font-size: 16px;
          padding: 4px 7px; }
        #contact .contactForm dl dd textarea {
          box-sizing: border-box;
          width: 100%;
          border-radius: 5px;
          border: solid 2px #D6D6D6;
          font-size: 16px;
          padding: 4px 7px;
          height: 140px; }
        #contact .contactForm dl dd.box {
          display: flex;
          justify-content: space-between; }
          #contact .contactForm dl dd.box .box_left {
            width: 200px; }
          #contact .contactForm dl dd.box .box_right {
            width: 100px; }

  footer {
    background: #000;
    text-align: center;
    color: #fff;
    padding: 5px 0;
    font-size: 10px; }

  #mv {
    position: relative;
    height: 755px; }
    #mv .mv_txt_01 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 80px;
      z-index: 2; }
      #mv .mv_txt_01 img {
        width: 350px; }
    #mv .mv_txt_02 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 554px;
      z-index: 2; }
      #mv .mv_txt_02 img {
        width: 322px; }
    #mv .mv_txt_03 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 444px;
      z-index: 2; }
      #mv .mv_txt_03 img {
        width: 335px; }
    #mv .mv_phone {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 199px;
      z-index: 1; }
      #mv .mv_phone img {
        width: 218px; }

  header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 12;
    width: 100%; }
    header .head_inner {
      width: 375px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      box-sizing: border-box;
      align-items: center;
      padding: 9px 14px;
      background: rgba(0, 0, 0, 0.3); }
      header .head_inner .head_left {
        width: 91px; }
      header .head_inner .head_right {
        width: 207px; }
        header .head_inner .head_right a {
          display: block; } }
/* SP */
@media screen and (max-width: 768px) {
  .thanks_area {
    background: #fff;
    text-align: center;
    padding: 100rem 0; }
    .thanks_area .thanks_txt {
      text-align: center;
      line-height: 1.8em;
      font-size: 14rem;
      margin-bottom: 20rem; }
    .thanks_area .thanks_btn {
      text-align: center; }
      .thanks_area .thanks_btn a {
        display: inline-block;
        font-size: 14rem;
        color: #fff;
        background: #000;
        padding: 1em 3em; }

  .wpcf7-not-valid-tip {
    font-size: 11rem !important;
    margin-top: 0.8em; }

  .wpcf7 form .wpcf7-response-output {
    width: 80%;
    margin: 10rem auto 0 !important;
    font-size: 11rem !important; }

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

  body {
    position: relative; }

  .bgArea {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: url("../img/bg.png") no-repeat center;
    background-size: cover; }

  main {
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    z-index: 2; }

  #sec01 {
    padding-top: 13rem;
    background: url("../img/bg_up.png") no-repeat center bottom;
    background-size: contain;
    padding-bottom: 76rem; }
    #sec01 .sec01_img01 {
      width: 320rem;
      margin: 0 auto 47rem; }
    #sec01 .sec01_img02 {
      width: 290rem;
      margin: 0 auto 57rem; }
    #sec01 .sec01_img03 {
      width: 315rem;
      margin: 0 auto 19rem; }
    #sec01 .sec01_img04 {
      width: 315rem;
      margin: 0 auto 38rem; }
    #sec01 .sec01_img05 {
      width: 361rem;
      margin: 0 auto; }

  #sec02 {
    background: #000;
    padding-top: 4rem;
    padding-bottom: 25rem; }
    #sec02 .sec02_img01 {
      width: 298rem;
      margin: 0 auto 36rem; }
    #sec02 .sec02_img02 {
      width: 341rem;
      margin: 0 auto 30rem; }
    #sec02 .sec02_img03 {
      width: 341rem;
      margin: 0 auto 19rem; }
    #sec02 .sec02_img04 {
      width: 286rem;
      margin: 0 auto; }

  #sec03 {
    background: url("../img/bg_btm.png") no-repeat center top rgba(0, 0, 0, 0.5);
    background-size: contain;
    padding-top: 82rem;
    padding-bottom: 11rem; }
    #sec03 .sec03_img01 {
      width: 304rem;
      margin: 0 auto 10rem; }
    #sec03 .sec03_img02 {
      width: 340rem;
      margin: 0 auto 39rem; }
    #sec03 .sec03_img03 {
      width: 304rem;
      margin: 0 auto; }

  #sec04 {
    background: url("../img/bg_arr_02.png") no-repeat center top;
    background-size: contain;
    padding-top: 78rem;
    padding-bottom: 33rem; }
    #sec04 .sec04_img01 {
      width: 304rem;
      margin: 0 auto 16rem; }
    #sec04 .sec04_img02 {
      width: 335rem;
      margin: 0 auto 22rem; }
    #sec04 .sec04_img03 {
      width: 233rem;
      margin: 0 auto 32rem; }
    #sec04 .sec04_img04 {
      width: 308rem;
      margin: 0 auto 49rem; }
    #sec04 .sec04_img05 {
      width: 344rem;
      margin: 0 auto; }

  #slider {
    background: url("../img/bg_up.png") no-repeat center bottom;
    background-size: contain;
    padding-top: 30rem;
    padding-bottom: 43rem; }
    #slider .slick-track {
      display: flex; }
    #slider .slick-slide {
      height: auto !important; }
    #slider .slide-dots {
      text-align: center;
      font-size: 0;
      margin-top: 28rem; }
      #slider .slide-dots li {
        display: inline-block;
        margin: 0 5rem; }
        #slider .slide-dots li.slick-active button {
          background-image: url("../img/dot_02.png"); }
        #slider .slide-dots li button {
          width: 10rem;
          height: 10rem;
          background: url("../img/dot_01.png") no-repeat center;
          background-size: contain;
          border: none;
          font-size: 0; }
    #slider .slide_inner .slide {
      margin: 0 10rem;
      box-sizing: border-box;
      background: #333333;
      padding: 13rem; }
      #slider .slide_inner .slide .slide_img {
        margin-bottom: 19rem; }
      #slider .slide_inner .slide .slide_name {
        text-align: center;
        font-size: 16rem;
        line-height: 1.6em;
        color: #C390FF;
        margin-bottom: 3rem; }
      #slider .slide_inner .slide .slide_posi {
        color: #fff;
        font-size: 12rem;
        line-height: 1.3em;
        text-align: center;
        margin-bottom: 19rem; }
      #slider .slide_inner .slide .slide_txt {
        box-sizing: border-box;
        padding: 0 14rem 10rem;
        color: #fff;
        font-size: 14rem;
        line-height: 1.6em; }

  .cta {
    background: url("../img/cta_bg.png") no-repeat center bottom #000;
    background-size: contain;
    padding: 8rem 0 19rem;
    position: relative; }
    .cta:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      bottom: 0;
      height: 60rem;
      width: 100%;
      background: url("../img/bg_up.png") no-repeat center bottom;
      background-size: contain;
      z-index: 2; }
    .cta .cta_inner {
      position: relative;
      width: 340rem;
      margin: 0 auto; }
      .cta .cta_inner .cta_frame {
        position: relative;
        z-index: 2; }
      .cta .cta_inner .cta_txt_01 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 154rem; }
        .cta .cta_inner .cta_txt_01 img {
          width: 264rem; }
      .cta .cta_inner .cta_txt_02 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 276rem; }
        .cta .cta_inner .cta_txt_02 img {
          width: 235rem; }
      .cta .cta_inner .cta_txt_03 {
        position: absolute;
        width: 100%;
        text-align: center;
        z-index: 2;
        left: 0;
        top: 449rem; }
        .cta .cta_inner .cta_txt_03 a {
          display: block; }
          .cta .cta_inner .cta_txt_03 a:hover {
            cursor: pointer; }
        .cta .cta_inner .cta_txt_03 img {
          width: 256rem; }

  #sec05 {
    background: url("../img/arr_bg_01.png") no-repeat center bottom rgba(0, 0, 0, 0.5);
    background-size: contain;
    padding-bottom: 162rem;
    padding-top: 97rem;
    position: relative; }
    #sec05:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: -2rem;
      width: 100%;
      height: 70rem;
      z-index: 1;
      background: url("../img/bg_btm.png") no-repeat center top;
      background-size: contain; }
    #sec05 .sec05_img01 {
      width: 330rem;
      margin: 0 auto 50rem; }
    #sec05 .sec05_img02 {
      width: 100%;
      margin: 0 auto 50rem; }
    #sec05 .sec05_img03 {
      width: 100%;
      margin: 0 auto; }

  #sec06 {
    background: url("../img/bg_up2.png") no-repeat center bottom #fff;
    padding-top: 15rem;
    padding-bottom: 156rem; }
    #sec06 .sec06_img01 {
      width: 320rem;
      margin: 0 auto 45rem; }
    #sec06 .sec06_img02 {
      width: 339rem;
      margin: 0 auto 49rem; }
    #sec06 .sec06_img03 {
      width: 100%;
      margin: 0 auto 49rem; }
    #sec06 .sec06_img04 {
      width: 100%;
      margin: 0 auto 49rem; }
    #sec06 .sec06_img05 {
      width: 100%;
      margin: 0 auto; }

  #case {
    background: url("../img/bg_btm2.png") no-repeat center bottom;
    background-size: contain;
    padding-bottom: 128rem;
    padding-top: 97rem;
    position: relative; }
    #case:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: -2rem;
      width: 100%;
      height: 70rem;
      z-index: 1;
      background: url("../img/bg_btm.png") no-repeat center top;
      background-size: contain; }
    #case .case_img01 {
      width: 159rem;
      margin: 0 auto 45rem; }
    #case .case_img02 {
      width: 340rem;
      margin: 0 auto 50rem; }
    #case .case_img03 {
      width: 340rem;
      margin: 0 auto 50rem; }
    #case .case_img04 {
      width: 340rem;
      margin: 0 auto 50rem; }
    #case .case_img05 {
      width: 94rem;
      margin: 0 auto; }

  #contact {
    background: #fff;
    padding-top: 70rem;
    padding-bottom: 40rem; }
    #contact .inner .contact_ttl {
      width: 232rem;
      margin: 0 auto 44rem; }
    #contact .inner .center_txt {
      width: 340rem;
      margin: 0 auto 44rem; }
    #contact .inner .red_frame {
      width: 350rem;
      margin: 0 auto 44rem; }
    #contact .contactBtn {
      text-align: center; }
      #contact .contactBtn input[type="submit"] {
        color: #fff;
        overflow: hidden;
        width: 250rem;
        margin: 0 auto;
        background: url("../img/txtbg_01.png") no-repeat center;
        background-size: cover;
        font-size: 16rem;
        line-height: 1.6em;
        font-weight: 700;
        border: none;
        border-radius: 5rem;
        padding: 12rem 0; }
      #contact .contactBtn .wpcf7-spinner {
        display: none; }
    #contact .contactForm {
      width: 350rem;
      margin: 0 auto;
      box-sizing: border-box;
      border: solid 1rem #EAEAEA;
      padding: 20rem;
      margin-bottom: 44rem; }
      #contact .contactForm dl {
        margin-bottom: 20rem; }
        #contact .contactForm dl:last-child {
          margin-bottom: 0; }
        #contact .contactForm dl dt {
          font-size: 12rem;
          line-height: 1.6em;
          margin-bottom: 3rem; }
          #contact .contactForm dl dt span {
            font-size: 11rem;
            display: inline-block;
            margin-left: 12rem; }
            #contact .contactForm dl dt span.red {
              color: #ED3636; }
            #contact .contactForm dl dt span.green {
              color: #33C337; }
        #contact .contactForm dl dd input[type="text"] {
          box-sizing: border-box;
          width: 100%;
          border-radius: 5rem;
          border: solid 2rem #D6D6D6;
          font-size: 16rem;
          padding: 4rem 7rem; }
        #contact .contactForm dl dd textarea {
          box-sizing: border-box;
          width: 100%;
          border-radius: 5rem;
          border: solid 2rem #D6D6D6;
          font-size: 16rem;
          padding: 4rem 7rem;
          height: 140rem; }
        #contact .contactForm dl dd.box {
          display: flex;
          justify-content: space-between; }
          #contact .contactForm dl dd.box .box_left {
            width: 200rem; }
          #contact .contactForm dl dd.box .box_right {
            width: 100rem; }

  footer {
    background: #000;
    text-align: center;
    color: #fff;
    padding: 5rem 0;
    font-size: 10rem; }

  #mv {
    position: relative;
    height: 755rem; }
    #mv .mv_txt_01 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 80rem;
      z-index: 2; }
      #mv .mv_txt_01 img {
        width: 350rem; }
    #mv .mv_txt_02 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 554rem;
      z-index: 2; }
      #mv .mv_txt_02 img {
        width: 322rem; }
    #mv .mv_txt_03 {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 444rem;
      z-index: 2; }
      #mv .mv_txt_03 img {
        width: 335rem; }
    #mv .mv_phone {
      width: 100%;
      text-align: center;
      position: absolute;
      top: 199rem;
      z-index: 1; }
      #mv .mv_phone img {
        width: 218rem; }

  header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 12;
    width: 100%; }
    header .head_inner {
      width: 375rem;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      box-sizing: border-box;
      align-items: center;
      padding: 9rem 14rem;
      background: rgba(0, 0, 0, 0.3); }
      header .head_inner .head_left {
        width: 91rem; }
      header .head_inner .head_right {
        width: 207rem; }
        header .head_inner .head_right a {
          display: block; } }
