@charset "utf-8";

/* お問い合わせ
============================ */

.page-header-inner::after {
    content: "contact";
}

.page-id-129 .subSection.sideSection{
  display: none;
}
.form_main{
   border: 3px solid #DB992A;
    padding: 20px 15px;
    border-radius: 10px;
    margin: 0 auto;
  background: #fff;
}
.mw_wp_form_input .contact_confirm,
.mw_wp_form_confirm .contact_top{
  display: none;
}

.contact-message {
    text-align: center;
}
.note{
  font-size: 14px;
  text-align: center;
}
.form_main{
  /* position: relative; */
  margin-top: 60px;
}
.mw_wp_form_confirm .contact_confirm{
  position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
}
.page-id-129 h2:before{
  background: none;
}
.page-id-129 h2:after{
  background: none;
}

.mw_wp_form_confirm #contactForm p{
  border-bottom: 1px dotted #ccc;
  padding: 0.8em;
  margin-bottom: 0;
}
.mw_wp_form_confirm #contactForm p.form_btn,
.mw_wp_form_confirm #contactForm .contact_confirm p,
.mw_wp_form_confirm #contactForm p.must_wrap{
  border-bottom: none;
}
.mw_wp_form_confirm #contactForm p.form_btn{
  margin-top: 20px;
}

p.form_btn{
  text-align: center;
}

.mail {
      font-size: 24px;
      text-align: center;
      font-weight: bold;
      font-family: 'Open Sans', sans-serif;
    }
.contact_confirm{
    width: 90%;
     margin-bottom: 20px;
  }
@media screen and (min-width: 540px) {

   .contact_confirm{
    width: 520px;
     margin-bottom: 40px;
  }
  .form_main{
    padding: 60px 30px;
  }

}
@media screen and (min-width: 787px) {
    .mail {
      font-size: 28px;
      text-align: center;
      font-weight: bold;
      font-family: 'Open Sans', sans-serif;
    }
}

/* ----------------------------------------
* contact-form css
---------------------------------------- */
#contactForm {
  max-width: 1140px;
  width: 100%;
    /* エラー画面時スクロールの
        固定ヘッダー対策 */
  /* padding-top: 50px;
  margin-top: -50px; */
  margin-right: auto;
  margin-left: auto;
}

/* .must {
  color: #F58916;
  padding: 3px;
  border-radius: 5px;
  font-size: 1.2rem;
} */

p.caution {
  font-size: 14px;
  margin-bottom: 1.5em;
}

#contactForm .forConfirm {
  font-size: 14px;
  padding: 3px;
  background: #666;
  color: #fff;
}

#contactForm p {
  margin-bottom: 1.5em;
  overflow: hidden;
}
#contactForm label {
  display: block;
}

#contactForm input[type=submit],
#contactForm input[type=button],
#contactForm button{
    background-color: #956134;
    color: #fff;
    background-image: url(../images/common/arrow_yellow.svg);
    background-position: center right 5%;
    background-repeat: no-repeat;
    background-size: 7px;
    border-radius: 1.5em;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    margin-top: 1.5em;
    width: 70%;
    max-width: 320px;
}


/* #contactForm form p:last-of-type {
  text-align: center;
  margin-bottom: 0;
  margin-right: 15px;
} */

#contactForm button[data-action=back] {
  background: #666;
   /* width: 90%; */
  /* margin-bottom: 20px; */
  /* line-height: 1; */
  /* height: 30px; */
}

/* laptop end */
@media screen and (max-width: 991px) {
  #contactForm .txt {
    font-size: 18px;
    line-height: 38px;
    float: none;
    width: 100%;
  }

  #contactForm .formControlWrap {
    float: none;
    width: 100%;
  }
}

/* tablet end */
@media screen and (max-width: 767px){

  .explainTxt .text-center{
    text-align: left;
  }

  #contactForm .c_box_inner{
    padding: 6%;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 540px) {
  #contactForm .btn.back {
  margin-right: 20px;
    margin-bottom: 0;
    width: 70%;
    max-width: 320px;
}
}

/* sp end */



  /* ----------------------------------------
* thanks
---------------------------------------- */
  .bg_gray{
    padding: 15px 20px;
    background: #f6f6f6;
    border: 1px solid #ccc;
    border-radius: 5px;
    width: 85%;
    margin: 40px auto 0;
    max-width: 630px;
    font-size: 14px;
  }
  .bg_gray span br{
    display: none;
  }
.btn_top a{
  display: block;
   background-color: #956134;
    color: #fff;
    font-family: 'Open Sans', sans-serif;
     width: 90%;
    background-image: url(../images/common/arrow_yellow.svg);
    background-position: center right 5%;
    background-repeat: no-repeat;
    background-size: 7px;
    border-radius: 15px;
    height: 30px;
    font-size: 14px;
    text-align: center;
    margin: 0 auto;
  }
.indent{
  text-indent: -1em;
  padding-left: 1em;

}
@media screen and (min-width: 540px) {
.btn_top a{
     width: 70%;
  max-width: 150px;
  }
}




/* ------------------------------------- */

/* Snow Monkey Forms 設定 */
/* simple table */

.smf-item__label__text {
  font-weight: bold;
  font-size: 18px;
}

.smf-form--simple-table .smf-item__col--label {
  position: relative;
}
.smf-form--simple-table .smf-item.must .smf-item__label__text::after {
  content: '必須';
  display: inline-block;
  color: #F58916;
  padding: 0 .8em;
  font-size: 12px;
  border: 1px solid #F58916;
  margin-left: 2em;
}


.smf-action .smf-button-control__control[data-action=back] {
  background: var(--gray);
}

/* 入力画面 */
/* .contact-content.input {
  .contact-text {
      display: block;
  }
} */

/* 確認画面 */

.contact-text-confirm {
  display: none;
}

[data-screen=confirm] {
  .contact-text-confirm {
      display: block;
  }
}


/* data-screen属性memo
[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number,
[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number,
[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number,
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number,
[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {} */


@media screen and (min-width: 640px) {

  
  .smf-form--simple-table .smf-item__col--controls {
    /* 必須表示の分の幅調整 */
    flex: 1 1 calc(100% - 18em);
    max-width: calc(100% - 18em);
  }
  .smf-form--simple-table .smf-item__col--label {
      flex: 0 0 18em;
      max-width: 18em;
      margin-top: 0.2em;
  }

  .smf-form--simple-table .smf-item.must .smf-item__label__text::after {
      position: absolute;
      top: 1.2em;
      right: 3em;
      transform: translateY(-50%);
  }


}

@media screen and (min-width: 1024px) {
  .smf-form--simple-table .smf-item:first-child {
    margin-top: 30px;
  }
  .smf-form--simple-table .smf-item {
      padding: 1.5em 2em;
  }
}
