
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500&display=swap');

body {
    -webkit-text-size-adjust: 100%
}

h1, h2, h3, h4, h5 {
    padding: 0;
    margin: 0
}

p {
    margin: 0
}

ol, ul {
    list-style: none
}

ol, ul, dl, dt, dd {
    padding: 0;
    margin: 0
}

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

a {
    color: #000;
    text-decoration: none
}

img {
    vertical-align: middle
}

table {
    border-collapse: collapse
}

* {
    box-sizing: border-box
}

html {
    font-size: 62.5%
}

body {
    margin: 0;
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif
}

.wrapper {
    font-size: 18px;
    font-size: 1.8rem;
    color: #000;
    background-color: #fffdf7;
    line-height: 1.75;
    overflow: hidden
}

@media (max-width:760px) {
    .wrapper {
        font-size: 1.5rem;
        font-size: 15px
    }
}

@media (max-width:414px) {
    .wrapper {
        font-size: 1.2rem;
        font-size: 14px
    }
}

.common-wrapper {
    position: relative;
    max-width: 1260px;
    width: 96%;
    margin: auto
}

.common-wrapper .inner {
    position: relative;
    max-width: 1200px;
    width: 100%;
    margin: auto
}

.flex {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
}

@media (max-width:760px) {
    .flex {
        flex-wrap: wrap
    }
}

.bgBrown {
    color: #fff;
    background-color: #a0410c
}

.bgWtr {
    background-color: #c7e5ff
}

.bgWhite {
    background-color: #fff
}

.white {
    color: #fff
}

.red {
    color: #ff0000
}

.black {
    color: #000
}

.textC {
    text-align: center
}

.pt50 {
    padding-top: 50px
}

.pt60 {
    padding-top: 60px
}

.pt70 {
    padding-top: 70px
}

.pt80, #contact, #privacy {
    padding-top: 80px
}

.pt90 {
    padding-top: 90px
}

.pt100 {
    padding-top: 100px
}

.pt120 {
    padding-top: 120px
}

.pt140 {
    padding-top: 140px
}

.pb50 {
    padding-bottom: 50px
}

.pb60 {
    padding-bottom: 60px
}

.pb70 {
    padding-bottom: 70px
}

.pb80, #contact, #inquiryForm, #privacy {
    padding-bottom: 80px
}

.pb90 {
    padding-bottom: 90px
}

.pb100 {
    padding-bottom: 100px
}

.pb120 {
    padding-bottom: 120px
}

.pb140 {
    padding-bottom: 140px
}

.pb190 {
    padding-bottom: 190px
}

.mt60 {
    margin-top: 60px
}

.mb30 {
    margin-bottom: 30px
}

.mb50 {
    margin-bottom: 50px
}

.mb60, #contact h2 {
    margin-bottom: 60px
}

.mb70 {
    margin-bottom: 70px
}

.mb80 {
    margin-bottom: 80px
}

.pd60 {
    padding: 60px 0
}

@media (max-width:760px) {
    .pt50 {
        padding-top: 25px
    }

    .pt60 {
        padding-top: 30px
    }

    .pt70 {
        padding-top: 35px
    }

    .pt80, #contact, #privacy {
        padding-top: 40px
    }

    .pt90 {
        padding-top: 45px
    }

    .pt100 {
        padding-top: 50px
    }

    .pt120 {
        padding-top: 50px
    }

    .pt140 {
        padding-top: 50px
    }

    .pb50 {
        padding-bottom: 25px
    }

    .pb60 {
        padding-bottom: 30px
    }

    .pb70 {
        padding-bottom: 35px
    }

    .pb80, #contact, #inquiryForm, #privacy {
        padding-bottom: 40px
    }

    .pb90 {
        padding-bottom: 45px
    }

    .pb100 {
        padding-bottom: 50px
    }

    .pb120 {
        padding-bottom: 50px
    }

    .pb140 {
        padding-bottom: 50px
    }

    .pb180 {
        padding-bottom: 50px
    }

    .mt60 {
        margin-top: 30px
    }

    .mb30 {
        margin-bottom: 20px
    }

    .mb50 {
        margin-bottom: 25px
    }

    .mb60, #contact h2 {
        margin-bottom: 30px
    }

    .mb70 {
        margin-bottom: 35px
    }

    .mb80 {
        margin-bottom: 40px
    }

    .pd60 {
        padding: 30px 0
    }
}

@media (max-width:414px) {
    .pt80, #contact, #privacy {
        padding-top: 30px
    }

    .pb80, #contact, #inquiryForm, #privacy {
        padding-bottom: 30px
    }

    .pb90 {
        padding-bottom: 40px
    }

    .pb100 {
        padding-bottom: 40px
    }

    .pb120 {
        padding-bottom: 40px
    }

    .pb140 {
        padding-bottom: 40px
    }

    .pb190 {
        padding-bottom: 40px
    }

    .mb70 {
        margin-bottom: 30px
    }

    .mb80 {
        margin-bottom: 30px
    }

    .pd60 {
        padding: 20px 0
    }
}

.fs12 {
    font-size: 12px
}

.fs14, .drawer-nav ul li>div p:nth-of-type(4), #contact .box .telArea .time {
    font-size: 14px
}

.fs16, .drawer-nav ul li>div p:nth-of-type(1), .drawer-nav ul li>div h4 {
    font-size: 16px
}

.fs18, .drawer-nav ul li h3, #contact .box .telArea h3, #inquiryForm .check_policy {
    font-size: 100%
}

.fs20, .contact-area .area .common-wrapper .inner table td, #faq table tbody td, #necessary, #necessary .box .upper p, #necessary .box .lower, .freeeditor #ez-toc-container ul li {
    font-size: 20px
}

.fs22, #flow table td, #flow .flex .right p {
    font-size: 22px
}

.fs24 {
    font-size: 24px
}

.fs25 {
    font-size: 25px
}

.fs26 {
    font-size: 26px
}

.fs30, #faq table thead td, #necessary .box h2 {
    font-size: 30px
}

.fs36, #faq table thead th, #faq table tbody th {
    font-size: 36px
}

@media (max-width:760px) {
    .fs12 {
        font-size: 10px
    }

    .fs14, .drawer-nav ul li>div p:nth-of-type(4), #contact .box .telArea .time {
        font-size: 12px
    }

    .fs16, .drawer-nav ul li>div p:nth-of-type(1), .drawer-nav ul li>div h4 {
        font-size: 100%
    }

    .fs18, .drawer-nav ul li h3, #contact .box .telArea h3, #inquiryForm .check_policy {
        font-size: 16px
    }

    .fs20, .contact-area .area .common-wrapper .inner table td, #faq table tbody td, #necessary, #necessary .box .upper p, #necessary .box .lower, .freeeditor #ez-toc-container ul li {
        font-size: 18px
    }

    .fs22, #flow table td, #flow .flex .right p {
        font-size: 20px
    }

    .fs24, .fs25 {
        font-size: 22px
    }

    .fs26, .fs30, #faq table thead td, #necessary .box h2 {
        font-size: 22px
    }

    .fs36, #faq table thead th, #faq table tbody th {
        font-size: 22px
    }
}

@media (max-width:414px) {
    .fs14, .drawer-nav ul li>div p:nth-of-type(4), #contact .box .telArea .time {
        font-size: 10px
    }

    .fs18, .drawer-nav ul li h3, #contact .box .telArea h3, #inquiryForm .check_policy {
        font-size: 12px
    }

    .fs20, .contact-area .area .common-wrapper .inner table td, #faq table tbody td, #necessary, #necessary .box .upper p, #necessary .box .lower, .freeeditor #ez-toc-container ul li {
        font-size: 14px
    }

    .fs22, #flow table td, #flow .flex .right p {
        font-size: 14px
    }

    .fs24, .fs25 {
        font-size: 14px
    }

    .fs26 {
        font-size: 16px
    }

    .fs30, #faq table thead td, #necessary .box h2 {
        font-size: 18px
    }

    .fs36, #faq table thead th, #faq table tbody th {
        font-size: 20px
    }
}

.dispnone {
    display: none
}

.img img {
    width: 100%
}

.lh15 {
    line-height: 1.5
}

.lh2 {
    line-height: 2
}

.fadeInUp {
    opacity: 0;
    transform: translateY(30px);
    transition: 1.5s
}

.col2 li {
    width: 49%
}

.col3 li {
    width: 32%
}

@media (max-width:414px) {
    .col3 li {
        width: 100%;
        margin: 0 auto 20px
    }
}

.col4 li {
    width: 24%
}

@media (max-width:760px) {
    .col4 li {
        width: 48%;
        margin-bottom: 20px
    }
}

.col1of2 {
    width: 49%
}

@media (max-width:760px) {
    .col1of2 {
        width: 100%;
        margin-bottom: 25px
    }
}

.drawer-hamburger.top-10 {
    top: 10px
}

.drawer-hamburger {
    position: fixed;
    z-index: 104;
    top: 120px;
    display: block;
    box-sizing: content-box;
    width: 4rem;
    padding: 0;
    padding-top: 3px;
    padding-right: 0.75rem;
    padding-bottom: 30px;
    padding-left: 0.75rem;
    -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    border: 0;
    outline: 0;
    background-color: #825c10;
    border: 2px solid #fff;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px
}

.drawer-hamburger .tit {
    display: block;
    padding-top: 1px;
    margin: 0 0 3px;
    font-size: 10px;
    color: #fff
}

@media (max-width:760px) {
    .drawer-hamburger {
        top: 10px
    }
}

@media (max-width:414px) {
    .drawer-hamburger {
        width: 3.2rem;
        padding-bottom: 28px
    }

    .drawer-hamburger .tit {
        margin-bottom: 1px
    }

    .drawer-hamburger .drawer-hamburger-icon {
        margin-top: 4px
    }
}

@media (max-width:320px) {
    .drawer-hamburger {
        width: 3rem;
        padding-bottom: 26px
    }

    .drawer-hamburger .tit {
        padding-top: 0
    }
}

.drawer--right .drawer-hamburger {
    right: 10px
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 370px
}

@media (max-width:414px) {
    .drawer--right.drawer-open .drawer-hamburger {
        right: 280px
    }
}

@media (max-width:360px) {
    .drawer--right.drawer-open .drawer-hamburger {
        right: 260px
    }
}

.drawer-nav.top-10 {
    top: 0
}

.drawer-nav {
    position: fixed;
    z-index: 101;
    top: 100px;
    overflow: hidden;
    width: 370px;
    height: 100%;
    color: #000;
    background-color: #eee;
    z-index: 10000
}

.drawer-nav ul li {
    width: 100%;
    padding: 0 10px;
    text-align: left;
    font-size: 14px;
    background: #fff;
    border-bottom: 2px solid #b9b8b7;
    display: block
}

.drawer-nav ul li:first-child {
    background-color: #ba7e57;
    padding: 8px
}

.drawer-nav ul li:nth-child(2), .drawer-nav ul li:nth-child(3), .drawer-nav ul li:nth-child(4), .drawer-nav ul li:nth-child(5), .drawer-nav ul li:nth-child(6), .drawer-nav ul li:nth-child(7), .drawer-nav ul li:nth-child(8), .drawer-nav ul li:nth-child(9), .drawer-nav ul li:nth-child(10), .drawer-nav ul li:nth-child(11), .drawer-nav ul li:nth-child(12), .drawer-nav ul li:nth-child(13), .drawer-nav ul li:nth-child(14), .drawer-nav ul li:nth-child(15) {
    background-color: #fbefd8
}

.drawer-nav ul li a {
    color: #000;
    display: block;
    padding: 8px
}

.drawer-nav ul li:nth-child(15) {
    text-align: center;
    background-color: #fff
}

.drawer-nav ul li:last-child {
    padding: 0
}

.drawer-nav ul li h3 {
    padding: 5px;
    text-align: center;
    color: #fff;
    background-color: #bf9d58;
    border-bottom: 2px solid #b9b8b7
}

.drawer-nav ul li>div {
    padding: 10px
}

.drawer-nav ul li>div p:nth-of-type(1) {
    font-weight: bold;
    text-align: center
}

.drawer-nav ul li>div p:nth-of-type(2) {
    font-size: min(20px, 4.8vw);
    font-weight: bold;
    text-align: center
}

.drawer-nav ul li>div p:nth-of-type(2) a {
    padding: 0
}

.drawer-nav ul li>div p:nth-of-type(3) {
    margin-bottom: 15px;
    font-size: 12px;
    font-weight: bold;
    text-align: center
}

.drawer-nav ul li>div p:nth-of-type(3) span {
    font-size: 140%
}

.drawer-nav ul li>div h4 {
    text-align: center;
    color: #9a0225
}

@media (max-width:760px) {
    .drawer-nav {
        top: 0
    }

    .drawer-nav ul li {
        font-size: 12px
    }
}

@media (max-width:414px) {
    .drawer-nav {
        width: 280px
    }
}

@media (max-width:360px) {
    .drawer-nav {
        width: 260px
    }
}

.drawer--right .drawer-nav {
    right: -370px;
    -webkit-transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1)
}

.drawer-hamburger-icon, .drawer-hamburger-icon::before, .drawer-hamburger-icon::after {
    background-color: #fff
}

#header {
    position: relative;
    background-color: #fff
}

#header .hd-top {
    position: relative;
    width: 100%;
    margin: auto
}

#header .hd-top .logo {
    max-width: 443px;
    width: 35%;
    margin-left: 2%;
    padding: 20px 0
}

#header .hd-top .flex {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 820px;
    width: 58%;
    height: 100%;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    z-index: 2
}

#header .hd-top .flex .telArea {
    position: relative;
    top: 18%;
    width: 55%;
    margin-right: 1%;
    font-size: min(1.8rem, 1.3vw);
    color: #ba2727;
    line-height: 1.2
}

#header .hd-top .flex .telArea .tel {
    font-size: min(30px, 2.8vw);
    font-weight: bold
}

#header .hd-top .flex .telArea .tel a,
#header .hd-top .sp .telArea .tel a {
    color: #ba2727
}

#header .hd-top .sp .telArea .under {
    font-size: 10.5px;
}
@media (max-width:414px) {
    #header .hd-top .sp .telArea .under {
        font-size: 10.5px;
    }
}

#header .hd-top .telArea p:nth-of-type(1) {
    color: #ba2727
}

#header .hd-top .flex .telArea p span {
    font-size: 140%
}

#header .hd-top .flex .mail {
    position: relative;
    max-width: 330px;
    width: 40%;
    text-align: center;
    font-size: min(30px, 2vw);
    color: #fff;
    background-color: #ffae00
}

#header .hd-top .flex .mail a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2
}

#header .hd-top .flex .mail span {
    position: relative;
    top: 25%;
    z-index: 1
}

#header .hd-top .sp {
    position: absolute;
    top :20px;
    right: 60px;
    color: #ba2727;
    font-weight: bold;
}
@media (max-width:375px) {
    #header .hd-top .sp {
        font-size: 12px;
    }
    #header .hd-top .sp .telArea .under {
        font-size: 10px;
    }
}

@media (max-width:1080px) {
    #header .hd-top .flex .telArea {
        top: 22%
    }

    #header .hd-top .flex .mail span {
        top: 35%
    }
}

@media (max-width:760px) {
    #header {
        height: 80px
    }

    #header .hd-top {
        width: 100%
    }

    #header .hd-top .logo {
        width: 60%;
        padding: 10px 0
    }

    #header .hd-top .flex {
        display: none
    }
}

@media (max-width:414px) {
    #header {
        height: 70px
    }
}

/* 新規追加 */
#mv {
    padding: 30px 0;
    background: url(../images/mv/pc-bg.jpg)  no-repeat;
    background-size: cover;
}
/* .pc-inner {
    display: flex;
    justify-content: space-between;
} */
.mv-top-img {
    width: 100%;
}
.mv-pcimg {
    position: relative;
    z-index: 1;
}
.person-block-1 {
    position: absolute;
    top: 0;
    left: -170px;
    z-index: -1;
}
.person-block-2 {
    position: absolute;

    bottom: -72px;
    right: -179px;

    z-index: -1;
}
.person {
    width: 300px;

    height: auto;
}
@media (max-width:1300px) {
.person-block-1 {
    display: none;
}
.person-block-2 {
    display: none;
}
}


/* 新規追加 end*/
/* お問い合わせフォーム追加文 */
.mv-sp-block {
    display: none;
  }
  .left {
    /* position: relative; */
    padding-right: 10px;
    /* padding-bottom: 20px; */
    /* width: 53%; */
  }
  /* .left p img {
    width: 100%;
  } */
  .right {
    /* width: 47%; */
    z-index: 3;
  }
  .mv-inner {
    display: flex;
    justify-content: space-around;
    max-width: 1300px;
    margin: 0 auto;
    /* display: flex;
    justify-content: space-around; */
  }
  .mv-pc-block {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 0
  }
  .form-eazy {
    margin-left: auto;
    max-width: 530px;
    height: 100%;
    letter-spacing: 0.2em;
    z-index: 1;
  }
  .mw_wp_form {
    height: 100%;
  }
  .form_toiawase {
    height: 100%;
    flex-flow: column;
  }
  /* .form {
    height: 100%;
  } */
  .form-top{
    position:relative;
    background:url(../images/mv/form_top.png) center center no-repeat;
    background-size:contain;
    aspect-ratio:500/80;
  }
  .toiawase-title{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:100%;
    text-align:center;
    color:#ffe404;
    font-size:min(30px,2.8vw);
  }
  .form-middle{
    background:url(../images/mv/form_middle.png) repeat-y;
    background-size: contain;
    padding: 2% 5% 0;
    color: #080808;
    flex-grow: 1;
  }
  .form-bottom{
    background: url(../images/mv/form_bottom.png) no-repeat;
    background-size: cover;
    aspect-ratio: 500/9;
  }
  .form-middle h3{
    text-align: center;
    color: #3eb2ea;
    background-color: #ffe404;
    border-radius: 10px;
    font-size:min(28px,2.4vw);
    margin-bottom: 4%;
  }
  .form-middle dl {
    display: flex;
    flex-wrap: wrap;
  }
  .form-middle dt {
    width: 30%;
    font-size:min(18px,1.6vw);
  }
  .required {
    color: #d53030;
  }
  .long-char {
    letter-spacing: .1em;
  }
  .attention{
    font-size:min(8px,0.6vw);
    vertical-align: top;
  }
  dd{
    width: 70%;
    margin-bottom: 2%;
  }
  select{
    width: 100%;
    font-size:min(12px,1vw);
    border-radius: 9999px;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid #bebebe;
    background: url(../images/mv/select_arrow.png) no-repeat center right;
    padding: 3% 6%;
  }
  
  .annotation{
    text-align: center;
    font-size:min(12px,1vw);
    margin-bottom: 1.5%;
  }
  .annotation a {
    color: #d53030;
    text-decoration: underline;
  }
  input[type="text"]{
    width: 100%;
    font-size:min(12px,1vw);
    border-radius: 9px;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.41) inset;
    padding: 3% 0 3% 6%;
  }
  
  .btn-submit{
    max-width: 403px;
    margin: 0 auto;
    padding-bottom: 3%;
  }
    .form-btn-eazy{
        width: 100%;
        padding: 0;
        border: none;
        text-indent:-9999px;
        cursor: pointer;
        background: url(../images/mv/btn_satei_submit.png);
        background-size: cover;
        aspect-ratio: 403/108;
    }
    .completion-message{
          flex-direction: column;
          justify-content: flex-start;
          height: 100%;
  
    }
      .completion-title{
          text-align: center;
          border: solid 2px #ff0000;
          color: #ff0000;
          padding: 3%;
          margin: 10px 0 30px;
          letter-spacing: normal;
          font-size:min(22px,1.4vw);
          font-weight: 600;
      }
      .completion-text {
          letter-spacing: normal;
          font-size:min(16px,1.4vw);
          /* margin-bottom: 4%; */
          padding-bottom: 4%;
      }
  
      /* .renewal_pc_area .inner p img {
        width: 100%;
        height: auto;
      } */
      /* .renewal_pc_area .inner{
        width: 100%;
      } */


      @media (max-width:760px) {

/* 追加分 start */
#mv {
    padding: 0;
    background: url(../images/mv/sp-bg2.jpg) no-repeat;
}

.mv-top {
    padding-top: 30px;
   }
   .left {
     padding-right: 10px;
     padding-bottom: 20px;
     width: 53%;
   }
   /* .right {
     width: 47%;
   } */
   .mv-inner {
    display: block;
     max-width: 1200px;
     margin: 0 auto;
   }
   .mv-pc-block {
     display: flex;
     justify-content: flex-end;
     width: 100%;
     max-width: 1200px;
     margin: 0 auto;
     padding: 30px 0
   }
   .form-eazy {
     width: 80%;
     margin: 0 auto;
     padding: 30px 0;
     height: 100%;
     letter-spacing: 0.2em;
   }
   .mw_wp_form {
     height: 100%;
   }
   .form_toiawase {
     height: 100%;
     flex-flow: column;
   }
   /* .form {
     height: 100%;
   } */
   .form-top{
     position:relative;
     background-size:contain;
     aspect-ratio:500/80;
   }
   .toiawase-title{
     position:absolute;
     top:50%;
     transform:translateY(-50%);
     width:100%;
     text-align:center;
     color:#ffe404;
     font-size: min(30px, 4.5vw);
   }
   .form-middle{
     background-size: contain;
     padding: 2% 5% 0;
     color: #080808;
     flex-grow: 1;
   }
   .form-bottom{
     background-size: cover;
     aspect-ratio: 100/8;
   }
   .form-middle h3{
     text-align: center;
     color: #3eb2ea;
     background-color: #ffe404;
     border-radius: 5px;
     font-size: min(28px, 4vw);
     margin-top: 4.5%;
     margin-bottom: 4%;
   }
   .form-middle dl {
     display: flex;
     flex-wrap: wrap;
   }
   .form-middle dl dd {
     width: 100%;
     height: 18%;
   }
   .form-middle dt {
     width: 100%;
     font-size: min(16px, 3vw);
   }
   .required {
     color: #d53030;
   }
   .long-char {
     letter-spacing: .1em;
   }
   .attention{
     font-size:min(8px,1.5vw);
     vertical-align: top;
   }
   dd{
     width: 70%;
     margin-bottom: 2%;
   }
   select{
     width: 100%;
     font-size:min(14px,2.6vw);
     border-radius: 15px;
     -webkit-appearance: none;
     appearance: none;
     border: 1px solid #bebebe;
     padding: 4.5%;
   }
   
   .annotation{
     text-align: center;
     font-size:min(8px,1.5vw);
     margin-bottom: 1.5%;
   }
   .annotation a {
     color: #d53030;
     text-decoration: underline;
   }
   input[type="text"]{
     width: 100%;
   
     border-radius: 9px;
     -webkit-appearance: none;
     appearance: none;
     border: none;
     box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.41) inset;
     padding: 4.5% 0 4.5% 4.5%;
     font-size: min(14px, 2.6vw);
   }
   
   .btn-submit{
     max-width: 403px;
     margin: 0 auto;
     padding-bottom: 3%;
   }
     .form-btn-eazy{
         width: 100%;
         padding: 0;
         border: none;
         text-indent:-9999px;
         cursor: pointer;
         background-size: cover;
         aspect-ratio: 403/108;
     }
     .completion-message{
           flex-direction: column;
           justify-content: flex-start;
           height: 100%;
   
     }
       .completion-title{
           text-align: center;
           border: solid 2px #ff0000;
           color: #ff0000;
           padding: 3%;
           margin: 10px 0 30px;
           letter-spacing: normal;
           font-size:min(22px,3.4vw);
           font-weight: 600;
       }
       .completion-text {
           letter-spacing: normal;
           font-size:min(16px,3.4vw);
           /* margin-bottom: 4%; */
           padding-bottom: 4%;
       }
       .person-block-sp {
            position: absolute;
       }
       .person_3 {
        width: 100px;
        height: auto;
       }
    
    }
  /* お問い合わせフォーム追加文 end */
  


/* #mv .pc {
    position: relative;
    padding-top: 40px;
    padding-bottom: 200px;
    background: url(../images/mv/bg.jpg) no-repeat center;
    background-size: cover;
    height: 900px;
    z-index: 2
} */

#mv .pc .shopname {
    position: absolute;
    top: -1%;
    left: 20px;
    max-width: 480px;
    width: 45%;
    font-size: min(40px, 7vw);
    font-weight: bold;
    color: #000;
    text-shadow: 0 3px 0 #fff, 3px 0 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, -3px -3px 0 #fff, 3px -3px 0 #fff, -3px 3px 0 #fff, 3px 3px 0 #fff
}

#mv .pc .inner {
    position: relative;
    max-width: 1220px;
    width: 96%;
    margin: auto
}

/* #mv .pc .right {
    position: absolute;
    bottom: -200px;
    right: -180px;
    width: 669px;
    z-index: 1
    
} */

#mv .mvMain {
    position: relative;
    max-width: 770px;
    width: 100%;
    z-index: 2
}

@media screen and (min-width: 2050px) {
    /* #mv .pc{
        height: 1200px;
    } */
}

@media (max-width:760px) {
    #mv .sp {
        
        /* background: url(../images/mv/sp-bg2.jpg)  no-repeat;
        background-size: cover; */
    }
}

.contact-area {
    position: relative
}

.contact-area .area {
    padding: 40px 0;
    background: url(../images/top/contact/bg_01.jpg) no-repeat top;
    background-size: cover;
    position: relative;
}

.contact-area .area .woman {
    position: absolute;
    bottom: 0;
    right: -30px;
    width: 500px;
}

.contact-area .area .common-wrapper h2 {
    width: 100%;
    margin-bottom: 50px;
    text-align: center;
}

.contact-area .area .common-wrapper .bottom {
    text-align: center;
}
.contact-area .area .common-wrapper .bottom img {
    z-index: 5;
    position: relative;
}

.contact-area .area .common-wrapper .inner h3 {
    font-size: 40px;
    font-weight: 500;
}

.contact-area .area .common-wrapper p {
    width: 100%;
    margin-top: 90px;
    font-size: 20px;
}

@media (max-width:1500px) {
    .contact-area .area .woman {
        width: 450px;
    }
}

@media (max-width:1080px) {
    .contact-area .area .woman {
        width: 400px;
    }
}

@media (max-width:780px) {
    .contact-area .area .woman {
        width: 400px;
    }
}

@media (max-width:760px) {
    .contact-area .area .common-wrapper h2 {
        margin-bottom: 0;
    }
    .contact-area .area .common-wrapper .inner h3 {
        font-size: 20px;
        font-weight: bold;
    }
    .contact-area .area .common-wrapper .inner .flex {
        margin-bottom: 30px;
    }
    .contact-area .area .common-wrapper p {
        margin-top: 20px;
        font-size: 16px;
    }
    .contact-area .area .common-wrapper p .sp {
        width: 70%;
    }
    .contact-area .area .woman {
        width: 200px;
        bottom: 110px;
        right: 0;
    }
}
@media (max-width:390px) {
    .contact-area .area .woman {
        bottom: 105px;
    }
    .contact-area .area .common-wrapper .inner h3 {
        font-size: 19px;
    }
}
@media (max-width:375px) {
    .contact-area .area .woman {
        bottom: 100px;
    }
    .contact-area .area .common-wrapper .inner h3 {
        font-size: 18px;
    }
}
@media (max-width:360px) {
    .contact-area .area .woman {
        bottom: 96px;
    }
}

.contact-area .telarea {
    position: relative;
    padding-top: 80px;
    background: url(../images/top/contact/bg_02.jpg) no-repeat;
    background-size: cover
}

.contact-area .telarea h2 {
    max-width: 1086px;
    width: 100%;
    margin: 0 auto 30px
}

.contact-area .telarea .upper {
    position: relative;
    width: 100%;
    max-width: 1322px;
    width: 96%;
    margin: auto
}

.contact-area .telarea .lower {
    position: relative;
    top: -70px;
    max-width: 1260px;
    width: 100%;
    margin: auto;
    margin-bottom: -70px
}

.contact-area .telarea .lower .sp {
    position: relative;
}
.contact-area .telarea .lower .sp .telarea-spbtn {
    position: absolute;
    z-index: 5;
    bottom: 15px;
    left: 0;
}

.contact-area .telarea .lower .business-trip {
    position: absolute;
    top: 33%;
    left: 2.4%;
    font-size: min(30px, 2.4vw);
    font-weight: bold
}

.contact-area .telarea .lower .tel {
    position: absolute;
    top: 63%;
    left: 12%;
    color: #fff;
    font-size: min(50px, 3.9vw);
    font-weight: bold;
    line-height: 1
}

.contact-area .telarea .lower .tel a {
    color: #fff
}

.contact-area .telarea .lower .time {
    position: absolute;
    top: 77%;
    left: 7%;
    max-width: 490px;
    width: 41%;
    text-align: center;
    color: #fff;
    font-size: min(24px, 1.6vw);
    font-weight: bold
}

.contact-area .common-wrapper .flex  {
    margin: 70px 0 40px;
}

.contact-area .common-wrapper .flex .form {
    padding-top: 82px;
}

.contact-area .telarea .credit {
    width: 100%
}

.contact-area .line {
    margin-top: 40px;
}

@media only screen and (max-width:760px) {
    .contact-area .line .txt {
        width: 90%;
        margin: auto;
    }
    .contact-area .line .line-btn,
    .contact-area .form .form-btn{
        width: 95%;
        margin: auto;
    }
    .contact-area .common-wrapper .flex .form {
        padding-top: 0px;
    }
    .contact-area .common-wrapper .flex  {
        margin: -20px 0 40px;
    }
}

@media only screen and (max-width:760px) {
    .contact-area {
        top: 0;
        margin-bottom: 0
    }

    .contact-area .area .common-wrapper .inner {
        padding: 30px 0
    }

    .contact-area .area .common-wrapper .inner p:nth-of-type(2) {
        margin-bottom: 20px
    }

    .contact-area .area .common-wrapper .inner .box {
        padding: 15px 20px 30px
    }

    .contact-area .area .common-wrapper .inner h3 {
        margin-bottom: 10px
    }

    .contact-area .area .common-wrapper .inner table {
        width: 90%;
        max-width: 510px;
        margin: auto
    }

    .contact-area .area .common-wrapper .inner table th, .contact-area .area .common-wrapper .inner table td {
        display: block;
        width: 100%
    }

    .contact-area .area .common-wrapper .inner table th {
        padding: 0 0 15px
    }

    .contact-area .area .common-wrapper .inner table td {
        padding: 20px 0 0;
        border-top: 4px solid #ba7e57;
        border-left: 0
    }

    .contact-area .telarea {
        padding: 20px 0 0
    }

    .contact-area .telarea h2 {
        margin-bottom: 60px
    }

    .contact-area .telarea .upper {
        max-width: 670px;
        width: 100%;
        margin: 0 auto 80px;
        padding-bottom: 0
    }

    .contact-area .telarea .lower {
        position: relative;
        top: 0;
        width: 100%;
        margin-bottom: 0
    }

    .contact-area .telarea .lower .business-trip {
        position: absolute;
        top: 30%;
        left: 0%;
        right: 0;
        width: 96%;
        margin: auto;
        text-align: center;
        font-size: min(30px, 3.6vw);
        font-weight: bold
    }

    .contact-area .telarea .lower .tel {
        top: 59%;
        left: 0;
        right: 0;
        margin: auto;
        text-align: center;
        color: #fff;
        font-size: 7.5vw;
        font-weight: bold;
        line-height: 1;
        text-shadow: 1px 2px 3px #808080
    }

    .contact-area .telarea .lower .tel a {
        color: #fff
    }

    .contact-area .telarea .lower .time {
        top: 72%;
        left: -20px;
        right: 0;
        width: 100%;
        margin: auto;
        text-align: center;
        color: #fff;
        font-size: 3.4vw;
        font-weight: bold
    }
}

@media only screen and (max-width:414px) {
    .contact-area .area .common-wrapper .inner table th {
        font-size: 16px
    }

    .contact-area .area .common-wrapper .inner table td {
        font-size: 12px
    }

    .contact-area .telarea h2 {
        margin-bottom: 40px
    }

    .contact-area .telarea .upper {
        margin: 0 auto 40px
    }

    .contact-area .telarea .lower .time {
        font-size: 3vw
    }
}

#buying-maker {
    position: relative;
    top: -140px;
    margin-bottom: -140px;
    padding-top: 0;
    z-index: 3
}

#buying-maker .upper {
    position: relative;
    max-width: 1260px;
    width: 96%;
    margin: auto;
    padding: 40px 0;
    background-color: #fffdf7;
    border-radius: 30px 30px 0 0
}

#buying-maker .upper .inner {
    max-width: 1200px;
    width: 100%
}

#buying-maker .upper .inner h2 {
    max-width: 310px;
    width: 50%;
    margin: 0 auto 30px
}

#buying-maker .bg {
    padding-bottom: 70px;
    background-image: url(../images/top/buying-maker/bg.png);
    background-repeat: no-repeat;
    background-position: bottom
}

#buying-maker ul {
    margin-top: 30px;
    margin-bottom: 30px;
    flex-wrap: wrap
}

#buying-maker ul li {
    width: 19%;
    margin-bottom: 40px
}

#buying-maker p {
    color: #ba7e57
}

#buying-maker p:nth-of-type(1) {
    font-size: min(20px, 2.9vw);
    font-weight: bold;
    text-align: center
}

#buying-maker p:nth-of-type(2) {
    max-width: 1120px;
    width: 100%;
    margin: 60px auto 0;
    font-size: min(30px, 3vw);
    font-weight: bold
}

@media only screen and (max-width:760px) {
    #buying-maker {
        top: -30px;
        margin-bottom: -30px
    }

    #buying-maker .bg {
        padding-bottom: 30px
    }

    #buying-maker ul {
        margin-bottom: 0
    }

    #buying-maker ul li {
        width: 32%;
        margin-bottom: 30px
    }

    #buying-maker p:nth-of-type(1) {
        font-size: min(20px, 3vw)
    }

    #buying-maker p:nth-of-type(2) {
        margin: 25px auto 0
    }
}

@media only screen and (max-width:414px) {
    #buying-maker {
        top: -20px;
        margin-bottom: -20px
    }

    #buying-maker .upper {
        padding-bottom: 20px;
        border-radius: 20px 20px 0 0
    }

    #buying-maker ul {
        margin-top: 20px
    }
}

#corona {
    padding: 30px 0;
    background-color: #61b0a8
}

#corona .flex {
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
}

#corona .flex p {
    margin: 0 2.5%
}

@media only screen and (max-width:760px) {
    #corona .flex {
        display: block
    }

    #corona .flex p:nth-of-type(1) {
        max-width: 440px;
        width: 80%;
        margin: 0 auto 50px
    }

    #corona .flex p:nth-of-type(2) {
        max-width: 361px;
        width: 70%;
        margin: auto
    }
}

#top-tit {
    padding: 130px 0;
    background: url(../images/top/top-tit/bg.jpg) no-repeat center;
    background-size: cover
}

#top-tit h2 {
    max-width: 623px;
    width: 90%;
    margin: auto
}

@media only screen and (max-width:760px) {
    #top-tit {
        background: url(../images/top/top-tit/bg_sp.jpg) no-repeat center
    }
}

@media only screen and (max-width:414px) {
    #top-tit {
        padding: 60px 0
    }
}

#worries {
    position: relative;
    padding: 70px 0 100px;
    background: url(../images/top/worries/bg.jpg) no-repeat center;
    background-size: cover
}

#worries h2 {
    max-width: 978px;
    width: 95%;
    margin: 0 auto 70px
}

#worries .person {
    position: absolute;
    right: -13%;
    bottom: -80px;
    max-width: 422px;
    width: 30%
}

@media only screen and (max-width:760px) {
    #worries {
        padding-top: 20px
    }

    #worries h2 {
        max-width: 611px;
        width: 90%;
        margin: 0 auto 70px
    }

    #worries div.sp {
        max-width: 510px;
        width: 80%;
        margin: auto
    }

    #worries .person {
        right: -1%;
        width: 25%
    }
}

@media only screen and (max-width:414px) {
    #worries {
        padding-bottom: 60px
    }

    #worries h2 {
        margin: 0 auto 30px
    }

    #worries div.sp {
        width: 90%
    }

    #worries .person {
        right: -1%;
        bottom: -60px
    }
}

#features {
    padding: 30px 0 110px;
    background: url(../images/top/features/bg.jpg) no-repeat center;
    background-size: cover
}

#features .tit {
    position: relative
}

#features .tit h2 {
    position: relative;
    max-width: 847px;
    width: 90%;
    margin: 0 auto 60px;
    z-index: 2
}

#features .tit p {
    position: absolute;
    z-index: 1
}

#features .tit p:nth-of-type(1) {
    bottom: 0;
    left: 0;
    max-width: 279px;
    width: 30%
}

#features .tit p:nth-of-type(2) {
    bottom: 0;
    right: -10%;
    max-width: 524px;
    width: 50%
}

#features .flex .left {
    max-width: 760px;
    width: 61%
}

#features .flex .left h3 {
    max-width: 760px;
    width: 100%;
    margin-bottom: 50px
}

#features .flex .left p {
    font-size: 24px;
    color: #6d5d17
}

#features .flex .img {
    max-width: 475px;
    width: 37%
}

#features .bottom {
    max-width: 1071px;
    width: 86%;
    margin: 70px auto 0
}

@media only screen and (max-width:760px) {
    #features {
        padding: 10px 0 50px
    }

    #features .tit h2 {
        max-width: 709px;
        width: 100%;
        margin: 0 auto 20px
    }

    #features .tit p:nth-of-type(1), #features .tit p:nth-of-type(2) {
        display: none
    }

    #features .flex {
        display: block
    }

    #features .flex .left {
        max-width: 460px;
        width: 100%;
        margin: 0 auto 30px
    }

    #features .flex .left p {
        max-width: 440px;
        width: 90%;
        margin: auto;
        font-size: 20px
    }

    #features .flex .img {
        width: 70%;
        margin: auto
    }

    #features .bottom {
        margin: 50px auto 0
    }
}

@media only screen and (max-width:414px) {
    #features .flex .left h3 {
        margin-bottom: 30px
    }

    #features .flex .left p {
        font-size: 14px
    }

    #features .flex .img {
        width: 90%
    }

    #features .bottom {
        width: 100%;
        margin-top: 30px
    }
    #features .flex .left h3 img {
        margin-top: -60px;
    }
}

#service {
    padding: 70px 0 140px;
    background: url(../images/top/service/bg.jpg) no-repeat center;
    background-size: cover
}

#service h2 {
    max-width: 1038px;
    width: 100%;
    margin: 0 auto 50px
}

#service ul {
    flex-wrap: wrap
}

#service ul li {
    width: 24%;
    max-width: 289px;
    margin-bottom: 10px
}

@media only screen and (max-width:760px) {
    #service {
        padding: 30px 0 40px
    }

    #service h2 {
        margin: 0 auto 40px
    }
}

@media only screen and (max-width:414px) {
    #service ul li {
        width: 48%;
        margin-bottom: 10px
    }
}

#buying-item {
    padding: 70px 0 150px;
    background: url(../images/top/buying-item/bg.jpg);
    background-size: cover
}

#buying-item h2 {
    max-width: 763px;
    width: 100%;
    margin: 0 auto 50px;
    text-align: center;
}

#buying-item .upper {
    max-width: 1200px;
    width: 100%;
    margin: auto;
    padding-bottom: 80px
}

#buying-item .upper .box {
    position: relative;
    max-width: 1100px;
    width: 96%;
    height: 390px;
    margin-bottom: 70px;
    background-color: #fff;
    border-top: 10px solid #ba7e57
}

#buying-item .upper .box .img {
    position: absolute;
    top: -40px;
    max-width: 580px;
    width: 47%
}

#buying-item .upper .box .txt {
    position: relative;
    padding-top: 30px;
    z-index: 3
}

#buying-item .upper .box .txt h3 {
    margin-bottom: 10px;
    font-size: min(40px, 3.6vw);
    color: #ba7e57;
    line-height: 1.3
}

#buying-item .upper .box .txt h4 {
    font-size: min(24px, 2vw);
    color: #d02f2f
}

#buying-item .upper .box .txt p {
    font-size: min(24px, 2vw)
}

#buying-item .upper .box .person {
    position: absolute;
    z-index: 2
}

#buying-item .upper .box:nth-of-type(odd) {
    margin-left: 100px
}

#buying-item .upper .box:nth-of-type(odd) .img {
    left: -120px
}

#buying-item .upper .box:nth-of-type(odd) .txt {
    max-width: 550px;
    margin-left: 37%
}

#buying-item .upper .box:nth-of-type(odd) .person {
    right: 0;
    bottom: 0;
    max-width: 212px;
    width: 20%
}

#buying-item .upper .box:nth-of-type(even) .img {
    right: -120px
}

#buying-item .upper .box:nth-of-type(even) .txt {
    max-width: 520px;
    margin-left: 15%
}

#buying-item .upper .box:nth-of-type(even) .person {
    left: -3%;
    bottom: 0
}

#buying-item .upper .box:nth-of-type(1) .person {
    max-width: 212px;
    width: 20%
}

#buying-item .upper .box:nth-of-type(2) .person {
    max-width: 175px;
    width: 17%
}

#buying-item .upper .box:nth-of-type(3) .person {
    max-width: 314px;
    width: 30%
}

#buying-item .upper .box:nth-of-type(4) .person {
    max-width: 187px;
    width: 19%
}

#buying-item .lower ul {
    flex-wrap: wrap
}

#buying-item .lower ul li {
    position: relative;
    max-width: 398px;
    width: 32%;
    margin-bottom: 80px;
    background-color: #fff;
    box-shadow: 8px 8px 8px rgba(150, 150, 150, 0.5)
}

#buying-item .lower ul li h3 {
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    width: 80%;
    margin: auto;
    padding: 10px;
    text-align: center;
    font-size: min(30px, 3vw);
    color: #fff;
    background-color: #ba7e57;
    border-radius: 30px;
    line-height: 1.2
}

#buying-item .lower ul li div {
    padding: 10px 20px 20px
}

#buying-item .lower ul li h4 {
    margin-bottom: 1px;
    text-align: center;
    font-size: min(24px, 2.1vw);
    color: #d02f2f
}

#buying-item .lower .bottom {
    max-width: 991px;
    width: 100%;
    margin: auto;
    padding-top: 60px
}

@media only screen and (max-width:1080px) {
    #buying-item .upper .box {
        height: auto;
        padding-bottom: 50px
    }
}

@media only screen and (max-width:760px) {
    #buying-item {
        padding: 40px 0 100px
    }

    #buying-item .upper {
        padding-bottom: 20px
    }

    #buying-item .upper .box {
        max-width: 510px;
        width: 100%;
        margin: 0 auto 90px;
        height: auto;
        padding: 10px 0 20px
    }

    #buying-item .upper .box .img {
        position: static;
        max-width: 400px;
        width: 90%;
        margin: 0 auto
    }

    #buying-item .upper .box .txt {
        width: 90%;
        padding-top: 0
    }

    #buying-item .upper .box .txt h3 {
        margin-bottom: 5px
    }

    #buying-item .upper .box .txt h4 {
        font-size: min(24px, 2.4vw)
    }

    #buying-item .upper .box .txt p {
        font-size: min(24px, 2.2vw)
    }

    #buying-item .upper .box:nth-of-type(odd) {
        margin-left: auto
    }

    #buying-item .upper .box:nth-of-type(odd) .txt {
        max-width: 400px;
        margin: auto
    }

    #buying-item .upper .box:nth-of-type(odd) .person {
        right: 4%;
        bottom: 10px
    }

    #buying-item .upper .box:nth-of-type(even) .txt {
        max-width: 360px;
        margin-left: 25%
    }

    #buying-item .upper .box:nth-of-type(even) .person {
        left: 4%;
        bottom: 10px
    }

    #buying-item .lower ul {
        max-width: 510px;
        width: 100%;
        margin: auto
    }

    #buying-item .lower ul li {
        width: 48%;
        margin-bottom: 70px
    }

    #buying-item .lower ul li h3 {
        top: -5%
    }

    #buying-item .lower ul li h4 {
        font-size: 2.4vw
    }

    #buying-item .lower ul li p {
        font-size: min(15px, 2vw)
    }

    #buying-item .lower .bottom {
        padding-top: 0
    }
}

@media only screen and (max-width:414px) {
    #buying-item .upper .box {
        margin-bottom: 50px
    }

    #buying-item .lower ul li {
        margin-bottom: 50px
    }
    #buying-item .lower ul li h4 {
        font-size: 12px
    }
    #buying-item .lower ul li p {
        font-size: 13px
    }

    #buying-item .lower ul li div {
        padding: 10px
    }

    #buying-item .upper .box .txt h3 {
        font-size: 14px;
    }

    #buying-item .upper .box .txt h4,
    #buying-item .upper .box .txt p {
        font-size: 12px;
    }
}

#repair {
    position: relative;
    top: -70px
}

#repair .upper {
    position: relative;
    padding-bottom: 20%
}

#repair .upper .left {
    position: absolute;
    top: 60px;
    left: 0;
    max-width: 974px;
    width: 50%;
    z-index: 3
}

#repair .upper .left img {
    width: 100%;
}

#repair .upper:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 80%;
    height: 100%;
    background: linear-gradient(#e6bc87, #be955f);
    z-index: 2
}

#repair .upper .right {
    position: relative;
    padding-top: 120px;
    color: #fff;
    z-index: 4
}

#repair .upper .right .txt {
    max-width: 540px;
    margin-left: 57%
}

#repair .upper .right h2 {
    font-size: min(40px, 3.6vw);
    margin-bottom: 20px;
}

#repair .upper .right .img {
    display: none
}

#repair .lower {
    position: relative;
    top: -320px;
    margin-bottom: -390px;
    padding: 420px 0 20px;
    background: url(../images/top/repair/bg.jpg) no-repeat center;
    background-size: cover
}

@media only screen and (max-width:1200px) {
    #repair .upper {
        padding-bottom: 10%
    }
}

@media only screen and (max-width:1080px) {
    #repair .upper {
        padding-bottom: 5%
    }

    #repair .upper .right {
        padding-top: 80px
    }
}

@media only screen and (max-width:760px) {
    #repair .upper {
        padding: 0
    }

    #repair .upper:after {
        content: none
    }

    #repair .upper .right {
        width: 100%;
        padding: 10px 0;
        background: linear-gradient(#e6bc87, #be955f)
    }

    #repair .upper .right .common-wrapper {
        width: 98%;
        margin-right: 2%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center
    }

    #repair .upper .right .img {
        display: block;
        width: 52%
    }

    #repair .upper .right .txt {
        max-width: inherit;
        width: 48%;
        margin-left: inherit
    }

    #repair .lower {
        top: 0;
        margin-bottom: -70px;
        padding: 30px 0 50px
    }

    #repair .lower p {
        max-width: 702px;
        width: 100%;
        margin: auto
    }
}

@media only screen and (max-width:414px) {
    #repair .upper .right {
        padding-bottom: 20px
    }

    #repair .upper .right .common-wrapper {
        display: block;
        width: 96%;
        margin: auto
    }

    #repair .upper .right .common-wrapper .img {
        max-width: 400px;
        width: 70%;
        margin: auto
    }

    #repair .upper .right .common-wrapper .txt {
        width: 100%
    }

    #repair .upper .right h2 {
        font-size: 16px;
        margin-bottom: 10px;
    }

    #repair .upper .right p {
        font-size: 14px
    }
}

#price-list {
    position: relative;
    padding: 50px 0 140px;
    background: url(../images/top/price-list/bg.jpg) no-repeat center;
    background-size: cover
}

#price-list .upper {
    position: relative;
    margin: auto;
    z-index: 1
}

#price-list .upper .flex {
    -webkit-align-items: center;
    align-items: center;
    margin-bottom: 70px;
}

#price-list .upper .flex h2 {
    max-width: 446px;
    width: 50%;
    margin:auto;
    margin-bottom: 50px;
}
@media only screen and (max-width:414px) {
    #price-list .upper .flex h2 {
        margin-right: 25px;
    }
}

#price-list .upper .flex .img {
    max-width: 580px;
    width: 50%
}

#price-list ul {
    position: relative;
    top: -30px;
    margin-bottom: -30px;
    flex-wrap: wrap;
    z-index: 2
}

#price-list ul li {
    max-width: 225px;
    width: 19%;
    margin-bottom: 20px
}

@media only screen and (max-width:760px) {
    #price-list {
        padding: 20px 0 40px
    }

    #price-list .upper .flex {
        margin-bottom: 50px
    }

    #price-list .upper .flex h2 {
        width: 40%;
        margin-bottom: 0;
        text-align: -webkit-center;
    }

    #price-list .upper .flex .img {
        width: 50%
    }

    #price-list ul {
        top: 0;
        margin-bottom: 0
    }

    #price-list ul li {
        width: 24%
    }
}

@media only screen and (max-width:414px) {
    #price-list .upper .flex {
        margin-bottom: 20px
    }
    #price-list ul li {
        width: 33%;
    }
    #price-list .flex {
        justify-content: flex-start;
    }
    #price-list .upper .flex .sp {
        width: 110%
    }
}

#discontent {
    position: relative;
    color: #ba7e57;
    z-index: 2
}

#discontent .upper {
    position: relative;
    padding: 0;
    background: url(../images/top/discontent/bg01.jpg) no-repeat center;
    background-size: cover
}

#discontent .upper .common-wrapper {
    padding: 80px 0 70px;
    background: rgba(255, 255, 255, 0.9)
}

#discontent .upper h2 {
    max-width: 720px;
    width: 70%;
    margin: 0 auto 60px
}

#discontent .upper .list {
    max-width: 970px;
    width: 90%;
    margin: 0 auto 70px
}

#discontent .upper .talk {
    max-width: 1150px;
    width: 96%;
    margin: 0 auto 30px;
    font-weight: bold;
    line-height: 2;
}

#discontent .upper h3:nth-of-type(1) {
    max-width: 598px;
    width: 60%;
    margin: 0 auto 60px
}

#discontent .upper .tit {
    position: relative;
    max-width: 1200px;
    width: 96%;
    margin: auto;
    margin-bottom: 30px;
    padding: 40px 0 50px
}

#discontent .upper .tit h3 {
    max-width: 740px;
    width: 70%;
    margin: 0
}

#discontent .upper .tit .person {
    position: absolute;
    top: 0;
    right: 8%;
    max-width: 283px;
    width: 28%
}

#discontent .upper ul {
    width: 96%;
    margin: auto;
    margin-bottom: 60px
}

#discontent .upper ul li {
    max-width: 271px;
    width: 24%
}

#discontent .upper ul li p {
    margin-top: 15px;
    text-align: center;
    font-size: min(24px, 2.4vw);
    font-weight: bold;
    line-height: 1.6
}

#discontent .upper .bottom {
    margin-bottom: 70px;
    text-align: center;
    font-size: min(30px, 4vw);
    font-weight: bold
}

#discontent .upper .bottom br:nth-of-type(1), #discontent .upper .bottom br:nth-of-type(3) {
    display: none
}

#discontent .upper .arrow {
    max-width: 61px;
    width: 6%;
    margin: auto
}

#discontent .lower {
    position: relative;
    top: -20px;
    margin-bottom: -20px;
    padding: 0;
    background: url(../images/top/discontent/bg02.png) no-repeat center;
    background-size: cover;
    z-index: 2
}

#discontent .lower .box {
    position: relative;
    max-width: 1080px;
    width: 94%;
    margin: auto;
    padding: 110px 0 100px;
    background-color: #fef7f7;
    z-index: 4
}

#discontent .lower .box h3 {
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    max-width: 968px;
    width: 96%;
    margin: auto
}

#discontent .lower .box p {
    max-width: 740px;
    width: 70%;
    margin: auto;
    font-size: min(36px, 3vw);
    font-weight: bold
}

#discontent .lower:before {
    content: '';
    position: absolute;
    top: 15%;
    left: 0;
    right: 0;
    max-width: 1200px;
    width: 96%;
    height: 380px;
    margin: auto;
    background-color: #f4ebdc;
    z-index: 3
}

@media only screen and (max-width:1080px) {
    #discontent .lower .box {
        padding-top: 10%;
        padding-bottom: 10%;
        padding-left: 0;
        padding-right: 0
    }

    #discontent .lower:before {
        top: 10%;
        max-width: 1200px;
        width: 96%;
        height: 80%
    }
}

@media only screen and (max-width:760px) {
    #discontent .upper .common-wrapper {
        max-width: 440px;
        padding: 40px 0 90px
    }

    #discontent .upper h2 {
        width: 90%;
        margin-bottom: 25px
    }

    #discontent .upper .list {
        max-width: 256px;
        width: 65%;
        margin: 0 auto 25px
    }

    #discontent .upper h3:nth-of-type(1) {
        width: 90%;
        margin: 0 auto 25px
    }

    #discontent .upper .talk {
        width: 80%;
        max-width: 340px;
        margin-bottom: 10px
    }

    #discontent .upper .tit {
        margin-bottom: 30px;
        padding: 30px 0 0
    }

    #discontent .upper .tit h3 {
        max-width: 326px;
        width: 94%;
        margin: auto
    }

    #discontent .upper .tit .person {
        top: -2%;
        right: 10%;
        width: 15%
    }

    #discontent .upper ul {
        max-width: 340px;
        margin: auto;
        flex-wrap: wrap
    }

    #discontent .upper ul li {
        width: 48%;
        margin-bottom: 30px
    }

    #discontent .upper ul li p {
        margin-top: 10px;
        font-size: 14px;
    }

    #discontent .upper .bottom {
        margin-bottom: 20px;
        font-size: min(20px, 4vw)
    }

    #discontent .upper .bottom br:nth-of-type(1), #discontent .upper .bottom br:nth-of-type(3) {
        display: block
    }

    #discontent .upper .bottom br:nth-of-type(2) {
        display: none
    }

    #discontent .lower {
        top: -60px;
        margin-bottom: -60px;
        padding: 0;
        background: url(../images/top/discontent/bg02_sp.png) no-repeat center;
        z-index: 2
    }

    #discontent .lower .box {
        max-width: 500px;
        width: 96%;
        margin: auto;
        padding-bottom: 5%
    }

    #discontent .lower .box h3 {
        top: -8px;
        max-width: 405px;
        width: 90%
    }

    #discontent .lower .box p {
        font-size: min(18px, 3vw)
    }

    #discontent .lower:before {
        top: 10%;
        max-width: 550px
    }
}
@media only screen and (max-width:414px) {
    #discontent .upper .bottom {
        font-size: 20px;
    }
    #discontent .lower .box p {
        font-size: 14px;
    }
}

#voice {
    position: relative;
    top: -20px;
    margin-bottom: -20px;
    padding: 80px 0;
    color: #ba7e57;
    z-index: 1
}

#voice .left {
    max-width: 590px;
    width: 49%
}

#voice .left h2 {
    max-width: 577px;
    margin: 0 0 20px
}

#voice .left h3 {
    margin-bottom: 25px;
    font-size: min(30px, 2.8vw)
}

#voice .left p {
    font-size: min(24px, 2.4vw)
}

#voice .img {
    max-width: 574px;
    width: 49%
}

#voice .more {
    max-width: 344px;
    width: 40%;
    margin: 60px auto 0
}

@media only screen and (max-width:760px) {
    #voice {
        top: 0;
        margin-bottom: 0;
        padding: 40px 0 20px
    }

    #voice .left {
        width: 100%;
        max-width: 600px;
        margin: 0 auto 20px
    }

    #voice .left h2 {
        max-width: 440px
    }

    #voice .left h3 {
        margin-bottom: 20px;
        font-size: min(25px, 3.6vw)
    }

    #voice .left p {
        font-size: min(20px, 3vw)
    }

    #voice .img {
        width: 80%;
        margin: auto
    }

    #voice .more {
        margin: 40px auto 0
    }
}
@media only screen and (max-width:414px) {
    #voice .left h3 {
        font-size: 20px;
    }
    #voice .left p {
        font-size: 14px;
    }
}

#step {
    padding: 10px 0 60px
}

#step p {
    max-width: 942px;
    width: 95%;
    margin: auto
}

@media only screen and (max-width:760px) {
    #step p {
        max-width: 633px;
        width: 90%
    }
}

@media only screen and (max-width:414px) {
    #step {
        padding-bottom: 40px
    }
}

#home_delivery {
    padding: 50px 0;
    background-color: #d3aa74;
}

#home_delivery .right p {
    font-size: min(24px, 2.4vw);
}

#home_delivery .common-wrapper .inner h2 {
    text-align: center;
    margin-bottom: 50px;
}

#home_delivery .common-wrapper .inner .right {
    color: #fff;
    width: 45%;
}
#home_delivery .common-wrapper .inner .right h3 {
    font-size: 37px;
}
@media only screen and (max-width:414px) {
    #home_delivery .common-wrapper .inner .left {
        width: 70%;
        margin: auto;
    }
    #home_delivery .common-wrapper .inner .flex {
        display: block;
    }
    #home_delivery .common-wrapper .inner .right {
        width: 100%;
    }
    #home_delivery .common-wrapper .inner .right h3 {
        font-size: 18px;
        text-align: center;
        margin: 20px 0 15px;
    }
    #home_delivery .right p {
        font-size: 14px;
    }
}


#about-us {
    border-top: 10px solid #ba7e57
}

#about-us .tit {
    padding: 150px 0;
    background: url(../images/top/about-us/h2_bg.jpg) no-repeat center;
    background-size: cover
}

#about-us .tit h2 {
    text-align: center;
    font-size: min(40px, 5vw);
    color: #fff
}

#about-us .bg {
    padding: 60px 0;
    color: #ba7e57
}

#about-us .bg p:nth-of-type(1), #about-us .bg p:nth-of-type(2) {
    margin-bottom: 60px
}

#about-us .bg ul li {
    max-width: 271px;
    width: 24%
}

#about-us .bg ul li h3 {
    width: 100%;
    margin: 10px 0;
    display: table
}

#about-us .bg ul li h3 span {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    font-size: min(24px, 2.2vw);
    font-weight: bold
}

#about-us .bg ul li p {
    margin-bottom: 0 !important
}
#about-us .bg ul li img {
    width: 100%;
}

@media only screen and (max-width:760px) {
    #about-us .tit {
        padding: 40px 0
    }

    #about-us .bg {
        padding: 40px 0 0
    }

    #about-us .bg .inner {
        max-width: 510px
    }

    #about-us .bg p:nth-of-type(1) {
        margin-bottom: 20px
    }

    #about-us .bg p:nth-of-type(2) {
        margin-bottom: 30px
    }

    #about-us .bg ul li {
        max-width: 510px;
        width: 100%;
        margin: 0 auto 60px
    }

    #about-us .bg ul li:last-child {
        margin-bottom: 0
    }

    #about-us .bg ul li h3 {
        margin: 20px 0 10px;
        display: block
    }

    #about-us .bg ul li h3 span {
        text-align: left;
        vertical-align: middle;
        font-size: min(28px, 3vw)
    }

    #about-us .bg ul li h3 span br {
        display: none
    }
}

@media only screen and (max-width:414px) {
    #about-us .bg ul li h3 span {
        font-size: 14px
    }
    #about-us .bg p {
        font-size: 15px;
    }
}


/* #flow {
    border-top: 10px solid #ba7e57
} */

#flow .tit {
    padding: 150px 0;
    background: url(../images/top/flow/h2.jpg) no-repeat center;
    background-size: cover;
}

#flow .tit h2 {
    text-align: center;
    font-size: min(40px, 5vw);
    color: #fff;
}
#flow .tit2 {
    color: #fff;
    font-size: 20px;
    background-color: #ba7e57;
    text-align: center;
    padding: 30px 0;
}

#flow .tit2 h2 {
    font-size: 30px;
}

#flow .tit2 h2 span {
    font-size: 40px;
}

#flow .common-wrapper .inner p {
    color: #ba7e57;
}
#flow .common-wrapper .inner .description {
    padding-top: 90px;
    font-size: 20px;
}

#flow .trip {
    background: url(../images/top/flow/trip_bg.jpg) no-repeat center;
    background-size: cover;
    padding-bottom: 120px;
}
#flow .delivery {
    background: url(../images/top/flow/delivery_bg.jpg) no-repeat center;
    background-size: cover;
    padding-bottom: 120px;
}

#flow h3 {
    margin-bottom: 50px;
    text-align: center;
    font-size: min(30px, 4vw)
}

#flow table {
    width: 100%;
    margin-bottom: 50px;
    border: 2px solid #ba7e57
}

#flow table th {
    width: 260px;
    padding-left: 5%;
    vertical-align: middle;
    text-align: left;
    font-size: min(30px, 4vw);
    color: #fff;
    background-color: #ba7e57;
    line-height: 2
}

#flow table th span {
    display: block;
    font-weight: bold
}

#flow table td {
    padding: 20px 15px 30px;
    background-color: #fef7f7
}

#flow table:nth-of-type(3) {
    margin-bottom: 80px
}

#flow .arrow {
    display: none
}

#flow .flex {
    justify-content: flex-end;
    align-items: center;
    margin-top: 50px;
}

#flow .flex .img {
    max-width: 572px;
    width: 30%
}

#flow .flex .img img {
    width: 90%
}

#flow .flex .right {
    width: 65%;
    margin-bottom: 90px;
}

#flow .flex .right h3 {
    margin-bottom: 10px;
    text-align: left;
    font-size: min(36px, 4vw)
}

#flow .flex .right p {
    color: #ba7e57;
}
#flow .flex .right p span,
#flow .flex .right p .pdf {
    color: blue;
    
}
#flow .flex .right p .pdf:hover{
    text-decoration: underline;
}

@media only screen and (max-width:760px) {
    #flow {
        padding: 100px 0
    }

    #flow .inner {
        max-width: 670px
    }

    #flow h3 {
        margin-bottom: 40px;
        font-size: min(25px, 4vw)
    }

    #flow table {
        margin-bottom: 0
    }

    #flow table th, #flow table td {
        display: block;
        width: 100%
    }

    #flow table th {
        padding: 10px;
        text-align: center;
        font-size: min(40px, 5vw)
    }

    #flow table th span {
        display: inline-block;
        margin: 0 5px
    }

    #flow table td {
        padding: 15px 40px
    }

    #flow table:nth-of-type(3) {
        margin-bottom: 60px
    }

    #flow .arrow {
        display: block;
        max-width: 54px;
        width: 10%;
        margin: 20px auto
    }

    #flow .flex .img {
        max-width: 572px;
        width: 80%;
        margin: auto;
        -webkit-order: 1;
        order: 1
    }

    #flow .flex .right {
        width: 100%;
        max-width: 580px;
        margin: 0 auto 20px
    }

    #flow .flex .right h3 {
        font-size: min(30px, 5vw)
    }
}

@media only screen and (max-width:414px) {
    #flow {
        padding: 40px 0
    }
    #flow .inner {
        width: 80%;
    }
    #flow .arrow {
        margin: 10px auto
    }
    #flow .tit {
        padding: 30px 0;
    }
    #flow .tit .h2 {
        font-size: 50px;
    }
    #flow .tit2 h2 {
        font-size: 20px;
    }
    #flow .tit2 h2 span {
        font-size: 30px;
    }
    #flow .common-wrapper .inner .description {
        padding-top: 40px;
        font-size: 18px;
    }
    #flow .flex .right p {
        font-size: 16px;
    }
    #flow .flex .right p a {
        font-size: 16px;
        color: #ba7e57;
    }
    #flow .trip {
        padding-bottom: 50px;
    }
    #flow .delivery {
        padding-bottom: 50px;
    }
}
@media only screen and (max-width:390px) {
    #flow .tit2 h2 {
        font-size: 18px;
    }
    #flow .tit2 h2 span {
        font-size: 26px;
    }
}

#faq {
    padding: 60px 0 100px;
    color: #ba7e57
}

#faq h2 {
    margin-bottom: 30px;
    text-align: center;
    font-size: min(48px, 5vw)
}

#faq table {
    width: 100%;
    margin-bottom: 10px;
    border-bottom: 2px solid #fff
}

#faq table th {
    width: 70px;
    padding: 15px 5px;
    vertical-align: middle;
    font-size: min(36px, 4vw)
}

#faq table td {
    width: auto;
    padding: 15px 40px;
    vertical-align: middle
}

#faq table thead {
    position: relative;
}

#faq table thead th {
    color: #fff;
    background-color: #ba7e57
}

#faq table thead td {
    font-weight: bold;
    background-color: #ffdcc6
}

#faq table tbody th {
    color: #ba7e57;
    background-color: #ffdcc6
}

#faq table tbody td {
    color: #000;
    background-color: #fff2ea
}

a.btn--green.btn--emboss {
    color: #fff;
    border-bottom: 5px solid #783306;
    display: block!important;
    background-color: #BA7D56;
    width: 22vw;
    margin: auto;
    margin-top: 40px;
    text-align: center;
    border-radius: 100vh;
    font-size: 30px;
    font-weight: bold;
  }
  
  a.btn--green.btn--emboss span {
      font-size: 20px;
      vertical-align: middle;
  }
  
  .fa-position-right {
      position: absolute;
      top: calc(50% - .5em);
      right: 1rem;
  }

#faq table thead:hover,
#faq .open-btn:hover {
    opacity: 0.7;
    cursor: pointer;
}

#faq table thead:after {
    border-right: solid 4px #BA7E57;
    border-top: solid 4px #BA7E57;
    content: "";
    display: block;
    height: 8px;
    position: absolute;
    right: 40px;
    top: 40%;
    transform: rotate(135deg);
    transition: transform .3s ease-in-out, top .3s ease-in-out;
    width: 8px;
}

/* safari対策 */
_::-webkit-full-page-media, _:future, :root #faq table thead:after {
    display: none;
}

#faq table thead.open::after {
    top: 45%; 
    transform: rotate(-45deg);
}

#faq .ac_top:after {
    transform: rotate(-45deg);
}

#faq .ac_top.open::after {
    top: 45%; 
    transform: rotate(135deg);
}

#faq .stay {
    display: table-row-group;
}

#faq tbody{
    display:none;
}

@media only screen and (max-width:760px) {
    #faq {
        padding: 0 0 50px
    }

    #faq table {
        max-width: 700px;
        margin: auto
    }

    #faq table th {
        width: 60px
    }

    #faq table td {
        padding: 15px 20px
    }
    _::-webkit-full-page-media, _:future, :root a.btn--green.btn--emboss {
        width: 40vw;
    }
}

@media only screen and (max-width:414px) {
    #faq {
        padding: 0 0 30px
    }
    #faq table thead td {
        padding-right: 66px;
    }
    #faq .open-btn {
        font-size: 20px;
        width: 50%;
        padding: 10px;
    }
}

@media only screen and (max-width:360px) {
    #faq .open-btn {
        padding: 10px 20px;
    }
}

#necessary {
    padding: 90px 0 150px
}

#necessary .box {
    max-width: 900px;
    width: 100%;
    margin: auto;
    padding: 50px 25px;
    border: 10px solid #efefef
}

#necessary .box h2 {
    margin-bottom: 50px;
    text-align: center
}

#necessary .box .upper p {
    margin-bottom: 40px
}

#necessary .box .lower {
    position: relative
}

#necessary .box .lower ul {
    margin-left: 3em
}

#necessary .box .lower ul li {
    list-style-type: disc
}

#necessary .box .lower .img {
    position: absolute;
    top: 5%;
    right: 5%;
    max-width: 200px;
    width: 30%
}

@media (max-width:760px) {
    #necessary {
        padding: 40px 0
    }

    #necessary h2 {
        font-size: min(40px, 4vw)
    }

    #necessary .box {
        max-width: 700px;
        padding: 30px 15px
    }

    #necessary .box h2 {
        margin-bottom: 25px
    }

    #necessary .box .upper p {
        margin-bottom: 20px
    }

    #necessary .box .lower .img {
        top: 20%
    }
}

@media (max-width:414px) {
    #necessary {
        padding: 20px 0 40px
    }

    #necessary .box h2 {
        font-size: 20px
    }

    #necessary .box .lower ul {
        margin-left: 2em
    }

    #necessary .box .lower .img {
        right: 1%
    }
}

#promise {
    padding: 70px 0 100px;
    background: url(../images/top/promise/bg.jpg) no-repeat center;
    background-size: cover
}

#promise .inner {
    max-width: 1040px;
    width: 100%;
    margin: auto
}

#promise .inner h2 {
    position: relative;
    max-width: 1002px;
    width: 96%;
    margin: 0 auto 40px;
    z-index: 2
}

#promise .inner ul {
    position: relative;
    z-index: 2
}

#promise .inner ul li {
    margin-left: 2em;
    font-size: min(36px, 3vw);
    font-weight: bold;
    text-shadow: #fff 2px 2px 15px, #fff -2px 2px 15px, #fff 2px -2px 15px, #fff -2px -2px 15px;
    list-style-type: disc;
    color: #ba7e57
}

#promise .inner p:nth-of-type(1) {
    position: relative;
    max-width: 873px;
    width: 96%;
    margin: 40px auto 0;
    z-index: 2
}

#promise .inner p:nth-of-type(2) {
    position: absolute;
    top: 25%;
    right: 0;
    max-width: 330px;
    width: 33%;
    z-index: 1
}

@media (max-width:760px) {
    #promise {
        padding: 70px 0
    }

    #promise .inner h2 {
        margin-bottom: 70px
    }

    #promise .inner p:nth-of-type(1) {
        margin-top: 20px
    }

    #promise .inner p:nth-of-type(2) {
        top: 23%;
        right: 5%;
        width: 30%
    }
}

@media (max-width:414px) {
    #promise {
        padding: 50px 0
    }

    #promise .inner h2 {
        margin-bottom: 30px
    }

    #promise .inner p:nth-of-type(2) {
        top: 18%
    }
}

#maker-list {
    padding: 80px 0 180px;
    color: #ba7e57
}

#maker-list h2 {
    margin-bottom: 60px;
    text-align: center;
    font-size: min(36px, 4.4vw)
}

#maker-list p {
    font-size: 30px
}

@media (max-width:760px) {
    #maker-list {
        padding: 60px 0
    }

    #maker-list h2 {
        margin-bottom: 30px
    }

    #maker-list p {
        font-size: 24px
    }
}

@media (max-width:414px) {
    #maker-list {
        padding: 40px 0
    }

    #maker-list h2 {
        margin-bottom: 20px;
        font-size: 16px
    }

    #maker-list p {
        font-size: 14px
    }
}

#footer {
    padding: 80px 0 70px;
    background-color: #e1b782
}

#footer h2 {
    max-width: 584px;
    width: 60%;
    margin: 0 auto 20px
}

#footer .box {
    padding: 20px 0 50px;
    background-color: #fff
}

#footer .box h3 {
    margin-bottom: 20px;
    text-align: center;
    font-size: min(30px, 4vw);
    color: #ba7e57
}

#footer .box table {
    max-width: 970px;
    width: 96%;
    margin: auto;
    font-size: min(22px, 2.2vw);
    border-top: 3px solid #ffdcc6
}

#footer .box table th, #footer .box table td {
    padding: 10px 0;
    border-bottom: 3px solid #ffdcc6
}

#footer .box table th {
    width: 320px;
    padding-left: 40px;
    text-align: left;
    vertical-align: top;
}

#footer .box table td {
    width: auto
}

@media only screen and (max-width:1080px) {
    #footer .box table th {
        width: 30%;
        padding-left: 2%
    }
}

@media only screen and (max-width:760px) {
    #footer {
        padding: 40px 0 80px
    }

    #footer .box table {
        font-size: min(22px, 3vw)
    }

    #footer .box table th, #footer .box table td {
        display: block;
        width: 100%;
        padding-left: 4%;
        padding-right: 4%
    }

    #footer .box table th {
        padding-bottom: 0;
        border-bottom: 0
    }

    #footer .box table td {
        padding-top: 0
    }
}

#footer-btn {
    position: fixed;
    display: block;
    width: 100%;
    left: 0px;
    bottom: 0;
    z-index: 999;
    color: #fff;
    background: #b77b55;
    border-bottom: 6px solid #bd955f
}

#footer-btn .container {
    position: relative;
    max-width: 1260px;
    width: 100%;
    margin: auto
}

#footer-btn .container .woman1 {
    position: absolute;
    left: -1%;
    bottom: 0;
    width: 153px
}

#footer-btn img {
    width: 100%
}

#footer-btn a {
    color: #fff;
    text-shadow: 1px 2px 3px #808080;
    font-size: 30px;
}

#footer-btn .footer-btn-wrapper {
    max-width: 860px;
    width: 85%;
    margin-left: 15%
}

#footer-btn .footer-btn-pc {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
}

#footer-btn .footer-btn-pc p {
    margin: 0 5px;
    color: #fff;
    font-weight: bold
}

#footer-btn .footer-btn-pc .footer-tel {
    position: relative;
    max-width: 290px;
    width: 34%;
    text-align: center;
    line-height: 1.2
}

#footer-btn .footer-btn-pc .footer-tel span {
    display: block
}

#footer-btn .footer-btn-pc .footer-tel span.tit {
    margin: 0 5px;
    padding: 3px 5px 1px;
    color: #ba7e57;
    background-color: #fff;
    border-radius: 30px;
    line-height: 1
}

#footer-btn .footer-btn-pc .footer-tel .footer-tel-number {
    font-size: min(40px, 3.8vw);
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 0.08em
}

#footer-btn .footer-btn-pc .footer-tel .footer-tel-time {
    font-size: min(13px, 1.2vw)
}

#footer-btn .footer-btn-pc .footer-tel .footer-tel-time span {
    display: inline-block
}

#footer-btn .mail {
    padding-top: 0.8%
}

#footer-btn .footer-btn-sp {
    display: none
}

@media only screen and (max-width:1000px) {
    #footer-btn .container .woman1 {
        left: 0;
        width: 16%
    }

    #footer-btn .footer-btn-wrapper {
        width: 84%;
        margin-left: 16%
    }

    #footer-btn .footer-btn-pc .footer-tel {
        width: 40%
    }
}

@media only screen and (max-width:760px) {
    #footer-btn {
        background: #fc7306;
        border-bottom: 10px solid #b8590c
    }

    #footer-btn .footer-btn-pc {
        display: none
    }

    #footer-btn .container .woman1 {
        display: none
    }

    #footer-btn .footer-btn-wrapper {
        width: 100%;
        margin: auto
    }

    #footer-btn .footer-btn-sp {
        display: block;
        position: relative;
        height: auto
    }

    #footer-btn .footer-btn-sp h2 {
        max-width: 473px;
        width: 65%;
        margin: 0 auto;
        padding-top: 5px
    }

    #footer-btn .footer-btn-sp p.touch {
        position: absolute;
        top: 5px;
        left: 3%;
        max-width: 102px;
        width: 13%
    }

    #footer-btn .footer-btn-sp p.footer-tel-number {
        position: relative;
        text-align: center;
        font-size: min(50px, 7vw);
        font-weight: bold;
        line-height: 1.2;
        z-index: 2
    }

    #footer-btn .footer-btn-sp p.footer-tel-time {
        padding-bottom: 3px;
        text-align: center;
        font-size: min(18px, 2.4vw);
        line-height: 1.3
    }

    #footer-btn .footer-btn-sp p.footer-tel-time span {
        font-size: 150%
    }

    #footer-btn .footer-btn-sp p.woman2 {
        position: absolute;
        bottom: -10px;
        right: 0;
        max-width: 178px;
        width: 21%;
        z-index: 1
    }
}

@media only screen and (max-width:414px) {
    #footer-btn{
        background-color:rgba(0,0,0,0);
        border-bottom: 0;
    }
    #footer-btn .footer-btn-sp h2 {
        padding-top: 0;
        line-height: 1.2
    }

    #footer-btn .footer-btn-sp p.touch {
        top: 3px;
        width: 11%
    }

    #footer-btn .footer-btn-sp p.footer-tel-time {
        font-size: min(12px, 2.4vw)
    }
    #footer-btn .footer-btn-sp p.footer-tel-number {
        position: absolute;
        top: 42px;
        right: 72px;
    }
}
@media only screen and (max-width:360px) {
    #footer-btn .footer-btn-sp p.footer-tel-number {
        top: 37px;
        right: 85px;
    }
}

#contact h2 {
    font-size: min(36px, 3.6vw);
    text-align: center
}

#contact h2 br {
    display: none
}

#contact .box {
    max-width: 1040px;
    width: 100%;
    margin: auto
}

#contact .box .txtArea {
    max-width: 670px;
    width: 67%;
    font-size: min(18px, 1.8vw)
}

#contact .box .txtArea span {
    color: #9a0225
}

#contact .box .telArea {
    max-width: 330px;
    width: 34%;
    height: auto;
    padding: 10px;
    text-align: center;
    color: #fff;
    background-color: #ffae00;
    line-height: 1.2
}

#contact .box .telArea .telnum {
    font-size: min(32px, 3.4vw);
    font-weight: bold
}

#contact .box .telArea .telnum a {
    color: #fff
}

#contact .return {
    max-width: 374px;
    width: 40%;
    margin: 40px auto 0
}

#contact .return img {
    width: 100%
}

#contact.confirm p {
    text-align: center
}

@media only screen and (max-width:760px) {
    #contact h2 {
        margin-bottom: 30px
    }

    #contact h2 br {
        display: block
    }

    #contact .box .txtArea {
        max-width: 670px;
        width: 100%;
        margin: 0 auto 20px;
        text-align: center;
        font-size: min(18px, 2.4vw)
    }

    #contact .box .telArea {
        max-width: 330px;
        width: 100%;
        height: auto;
        margin: auto
    }

    #contact .box .telArea .telnum {
        margin: 0;
        font-size: min(30px, 4.6vw)
    }
}

@media only screen and (max-width:414px) {
    #contact h2 {
        margin-bottom: 20px;
        font-size: 18px
    }

    #contact .box .txtArea {
        font-size: min(12px, 1.6vw)
    }

    #contact .box .telArea .telnum {
        margin: 5px 0;
        font-size: 20px
    }
}

#inquiryForm table {
    width: 100%;
    margin: auto
}

#inquiryForm table th {
    width: 30%;
    padding: 15px;
    padding-left: 50px;
    font-weight: bold;
    text-align: left;
    vertical-align: top;
    color: #fff;
    background-color: #e1b782;
    border-bottom: 1px solid #e6e6e6
}

#inquiryForm table th span.attention {
    float: right;
    padding: 1px 10px;
    font-size: 90%;
    font-weight: normal;
    color: #fff;
    background-color: #ffae00
}

#inquiryForm table td {
    width: auto;
    padding: 15px 30px;
    color: #000;
    background-color: #fff9ec;
    border-bottom: 1px solid #d2d2d2
}

#inquiryForm table td.select span {
    display: inline-block
}

#inquiryForm input {
    background: #f4f4f4;
    border: 1px solid #ccc
}

#inquiryForm input[type="text"] {
    padding: 5px
}

#inquiryForm .w80 {
    width: 80%;
    padding: 5px;
    background: #f4f4f4;
    border: 1px solid #ccc
}

#inquiryForm .w80::-webkit-input-placeholder {
    color: #b2b2b2;
    font-weight: normal
}

#inquiryForm .w80:-ms-input-placeholder {
    color: #b2b2b2;
    font-weight: normal
}

#inquiryForm .w80::-moz-placeholder {
    color: #b2b2b2;
    font-weight: normal
}

.mw_wp_form #inquiryForm .horizontal-item+.horizontal-item {
    margin-right: 10px;
    margin-left: 0
}

#inquiryForm span.mwform-tel-field input {
    padding: 5px
}

#inquiryForm span.mwform-tel-field input[name="tel[data][0]"], #inquiryForm span.mwform-tel-field input[name="fax[data][0]"] {
    width: 15%
}

#inquiryForm span.mwform-tel-field input[name="tel[data][1]"], #inquiryForm span.mwform-tel-field input[name="fax[data][1]"] {
    width: 20%
}

#inquiryForm span.mwform-tel-field input[name="tel[data][2]"], #inquiryForm span.mwform-tel-field input[name="fax[data][2]"] {
    width: 20%
}

#inquiryForm .check_policy {
    margin-top: 60px;
    text-align: center;
    line-height: 1.2
}

#inquiryForm .check_policy span.icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    margin: -2px 5px 0;
    vertical-align: middle;
    background: url(../images/icon/iconLink.png) no-repeat;
    background-size: 100%
}

#inquiryForm .check_policy input {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 8px;
    vertical-align: middle;
    -moz-transform: scale(1.4);
    -webkit-transform: scale(1.4);
    transform: scale(1.4)
}

#inquiryForm .check_policy span.mwform-checkbox-field {
    display: inline-block
}

#inquiryForm .check_policy span.mwform-checkbox-field .mwform-checkbox-field-text {
    display: none
}

#inquiryForm .check_policy a {
    color: #bf9d58;
    text-decoration: underline
}

#inquiryForm .btn_form {
    margin-top: 80px;
    text-align: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
}

#inquiryForm .btn_form input {
    display: inline-block
}

#inquiryForm .btn_form input.confirm {
    max-width: 400px;
    width: 55%;
    height: auto;
    padding: 10px 0;
    color: #fff;
    background: #ffae00;
    text-align: center;
    font-size: 150%;
    font-weight: bold;
    cursor: pointer;
    box-shadow: 0;
    border: none;
    border-radius: 50px
}

#inquiryForm .btn_form input.return {
    width: 150px;
    width: 25%;
    height: auto;
    margin-left: 10px;
    padding: 10px;
    color: #fff;
    background-color: #ff6c00;
    text-align: center;
    font-size: 150%;
    font-weight: bold;
    cursor: pointer;
    box-shadow: 0;
    border: none;
    border-radius: 20px
}

#inquiryForm input.btn_contact_return {
    margin: 0 10px
}

#inquiryForm .mw_wp_form .error {
    display: inline-block
}
.error {
    font-size:min(12px,1vw);
    font-weight: bold;
    background-color: rgba(186,0,0,0.6);
    color: #FFF;
    margin-top: 1%;
    padding-left: 6%;
    width: 45%;
    border-radius: 15px;
}
#inquiryForm .mw_wp_form_confirm .check_policy {
    display: none
}

@media only screen and (max-width:760px) {
    #inquiryForm .w80 {
        width: 100%
    }

    #inquiryForm table th, #inquiryForm table td {
        display: block;
        width: 100%;
        padding: 15px 10px
    }

    #inquiryForm table th {
        width: 100%
    }

    #inquiryForm table td {
        width: 100%
    }

    #inquiryForm .check_policy {
        margin-top: 50px
    }

    #inquiryForm .check_policy input {
        width: 13px;
        height: 13px
    }

    #inquiryForm .check_policy span.icon {
        width: 20px;
        height: 20px
    }

    #inquiryForm .btn_form {
        margin-top: 30px
    }

    #inquiryForm .btn_form input.confirm {
        font-size: 120%
    }

    #inquiryForm .btn_form input.return {
        padding: 5px 10px
    }

    #inquiryForm input[type="text"] {
        width: 100%;
        font-size: 100%
    }
    .error{
        font-size: min(2.6vw, 12px);
        width: 43%;
        padding-left: 4%;
    }
}

@media only screen and (max-width:414px) {
    #inquiryForm .check_policy {
        margin-top: 50px
    }

    #inquiryForm .check_policy input {
        width: 10px;
        height: 10px
    }

    #inquiryForm .check_policy span.icon {
        width: 18px;
        height: 18px
    }
}

.complete {
    max-width: 1100px;
    width: 96%;
    margin: auto;
    padding-bottom: 80px;
    text-align: center
}

#privacy h3 {
    margin-bottom: 10px
}

#privacy p, #privacy div {
    margin-bottom: 20px
}

.freeeditor {}

.freeeditor #ez-toc-container {
    width: 100%;
    margin-bottom: 30px;
    padding: 30px 10px;
    text-align: center;
    color: #fff;
    background-color: #bf9d58;
    border-radius: 10px
}

.freeeditor #ez-toc-container a, .freeeditor #ez-toc-container a:visited {
    color: #fff !important
}

.freeeditor #ez-toc-container p.ez-toc-title {
    padding-bottom: 20px;
    text-align: center
}

.freeeditor #ez-toc-container ul li {
    margin-bottom: 10px
}

.freeeditor section {
    padding: 60px 0
}

.freeeditor p {
    color: #fff
}

.freeeditor img {
    margin-bottom: 20px
}

.freeeditor h1 {
    text-align: left;
    font-size: 140%;
    font-weight: bold;
    border-bottom: 3px solid #bf9d58;
    padding-bottom: 5px;
    margin-bottom: 20px
}

.freeeditor h2 {
    text-align: left;
    border: none;
    font-size: 130%;
    font-weight: bold;
    border-bottom: 2px solid #bf9d58;
    padding-left: 0;
    padding-bottom: 5px;
    margin-bottom: 20px;
    color: #fff
}

.freeeditor h3 {
    text-align: left;
    font-size: 120%;
    font-weight: bold;
    border-bottom: 1px solid #bf9d58;
    padding-bottom: 5px;
    margin-bottom: 10px;
    color: #fff
}

.freeeditor h4 {
    text-align: left;
    font-size: 110%;
    font-weight: bold;
    margin-bottom: 10px
}

.freeeditor h5 {
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px
}

.freeeditor strong {
    font-weight: bold
}

.freeeditor img.alignright {
    display: block;
    margin: 0 0 0 auto
}

.freeeditor img.alignleft {
    display: block;
    margin: 0 auto 0 0
}

.freeeditor img.aligncenter {
    display: block;
    margin: 0 auto
}

.freeeditor img {
    max-width: 700px;
    width: 100%;
    height: auto
}

@media (min-width:1200px) {
    body {
        min-width: 1200px
    }
}

@media (max-width:1000px) {
    img {
        max-width: 100%;
        height: auto
    }
}

@media (min-width:761px) {
    .sp {
        display: none;
    }
}

@media (max-width:760px) {
    .pc {
        display: none
    }

    .sp {
        display: block
    }
}