@charset "UTF-8";

/***************************/
/********【common】********/
/***************************/
.page_contact .txt {
  text-align: center;
  line-height: 2.0em;
  margin: 0 0 40px;
}

.page_contact .tel {
  text-align: center;
  margin: 0 0 40px;
}

.page_contact .bt {
  text-align: center;
  margin: 0 0 40px;
}

@media only screen and (max-width: 800px) {
  .page_contact .txt {
    text-align: left;
    line-height: 1.6em;
    margin: 0 0 30px;
    font-size: 1.4rem;
  }
}

/***************************/
/********【mw wp form】********/
/***************************/
.mw_contact_form_ar {
  font-size: 1.6rem;
  margin: 40px 0 0;
  padding: 60px 40px;
  /*background: #fff;
	opacity: 0.8;
	box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.2);*/
}

.mw_contact_form_ar .bx_ar_1cols,
.mw_contact_form_ar .bx_ar_2cols,
.mw_contact_form_ar .bx_ar_3cols {
  width: 100%;
  margin: 0 0%;
  /* flexbox */
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.mw_contact_form_ar .bx1,
.mw_contact_form_ar .bx2,
.mw_contact_form_ar .bx3 {
  padding: 0 0px 15px;
  margin: 0 0% 30px;
  position: relative;
}

.mw_contact_form_ar .bx1 {
  width: 100%;
  /* flexbox */
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.mw_contact_form_ar .bx2 {
  width: 46%;
}

.mw_contact_form_ar .bx3 {
  width: 29.333%;
}

.mw_contact_form_ar .zip_bx {
  width: 16%;
}

.mw_contact_form_ar .pref_bx {
  width: 16%;
}

.mw_contact_form_ar .add_bx {
  width: 56%;
}

.mw_contact_form_ar .field {
  width: 100%;
}

.mw_contact_form_ar .title_ar {
  width: 35%;
  padding: 10px 20px 0 0;
  /* flexbox */
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.mw_contact_form_ar .title {
  font-weight: bold;
  margin: 0 0 5px;
  width: 80%;
}

.mw_contact_form_ar .required {
  display: inline-block;
  background: #B30411;
  line-height: 1.5em;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 5px 10px;
  width: 20%;
  min-width: 60px;
}

.mw_contact_form_ar .field.radio {
  /* flexbox */
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.mw_contact_form_ar .txt_bx,
.mw_contact_form_ar .zip_code,
.mw_contact_form_ar .pref_code,
.mw_contact_form_ar .add_code {
  background: #F3F5FA;
  border: solid 1px #DDDEE2;
  ;
  padding: 15px 10px;
  width: 100%;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
}

.mw_contact_form_ar .pref_code {
  width: 25%;
}

.mw_contact_form_ar .txt_ar {
  background: #F3F5FA;
  border: solid 1px #DDDEE2;
  ;
  padding: 15px 10px;
  width: 100%;
  min-height: 200px;
}

@media only screen and (max-width: 800px) {
  .mw_contact_form_ar .title_ar {
    width: 100%;
    padding: 0px 0px 10px;
  }

  .mw_contact_form_ar .title {
    margin: 0 10px 0px 0;
    width: auto;
  }

  .mw_contact_form_ar .pref_code {
    width: 40%;
  }

  .mw_contact_form_ar .pref_code {
    padding: 10px 10px;
  }
}

/****/
.mw_contact_form_ar .mwform-radio-field.horizontal-item label {
  margin: 0 25px 0 0;
}

.mw_contact_form_ar .mwform-radio-field.horizontal-item label input {
  margin: -4px 5px 0 0;
}

.mwform-radio-field-text,
.mwform-checkbox-field-text {
  padding: 0 0 0 15px;
}

@media only screen and (max-width: 800px) {

  .mwform-radio-field-text,
  .mwform-checkbox-field-text {
    margin: -5px 0 0;
    display: block;
  }
}

/****ラジオボタン/チェックボックス装飾****/
.mw_contact_form_ar .radio {
  display: none;
  /* まず、＜input＞タグの表示を消します*/
}

.mw_contact_form_ar label {
  position: relative;
  /* ＜label＞を位置の指標になる指示を書きます*/
  display: inline-block;
  padding: 3px 3px 3px 20px;
  cursor: pointer;
}

.mw_contact_form_ar .radio+span::before,
.mw_contact_form_ar .radio+span::after {
  position: absolute;
  content: '';
  top: 50%;
  border-radius: 100%;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.mw_contact_form_ar .radio+span::before {
  left: 0;
  width: 25px;
  height: 25px;
  margin-top: -12px;
  background: #ddd;
  border: 1px solid #999;
}

.mw_contact_form_ar .radio+span:hover::before {
  background: #fff;
  /* ラジオボタンのマウスオーバーしたときの色の指定*/
}

.mw_contact_form_ar .radio+span::after {


  opacity: 0;
  left: 4px;
  top: 5px;
  width: 25px;
  height: 25px;
  margin-top: -8px;
  -webkit-transform: scale(2);
  transform: scale(2);
  content: "✓";
  font-size: 2.0rem;
  color: #000;
  font-weight: bold;
}

.mw_contact_form_ar .radio:checked+span::before {
  /* ラジオボタンがチェックされたときの隣接しているタグへの指示を書きます*/
  background: #ddd;
  border: 1px solid #999;
  /* ラジオボタンのチェックした時の枠の線の指定*/
}

.mw_contact_form_ar .radio:checked+span::after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

@media only screen and (max-width: 800px) {
  .mw_contact_form_ar label {
    display: block;
    font-size: 1.4rem;
  }

  .mw_contact_form_ar .radio+span::before {
    width: 20px;
    height: 20px;
    margin-top: -12px;
  }

  .mw_contact_form_ar .radio+span::after {
    left: 0px;
    top: 0px;
    width: 15px;
    height: 15px;
    font-size: 20px;
  }
}

/****ラジオボタン/チェックボックス装飾****/
/****/
.mw_contact_form_ar .privacy_ar {
  background: #F3F5FA;
  padding: 40px 20px;
  text-align: center;
  margin: 40px 0 0;
}

.mw_contact_form_ar .privacy_ar .ttl {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 20px;
}

.mw_contact_form_ar .privacy_ar .txt {
  margin: 0 0 0px;
}

.mw_contact_form_ar .privacy_ar .txt a {
  text-decoration: underline;
}

.mw_contact_form_ar .privacy_ar .check {
  margin: 0 0 20px;
}

/*ボタン*/
.mw_wp_form_input .btn_form,
.mw_wp_form_confirm .btn_form,
.mw_wp_form_confirm .submitback {
  position: relative;
  z-index: 10;
  width: 200px;
  height: 50px;
  margin: 30px auto 0;
  transition: all .3s ease-out;
}

.mw_wp_form_input .btn_form input,
.mw_wp_form_confirm .btn_form input,
.mw_wp_form_confirm .submitback input {
  width: 245px;
  height: 56px;
  border: none;
  cursor: pointer;
  position: relative;
  font-size: 0;
  z-index: 9;
  transition: all 1s;
  background-size: 100% auto;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  transition: all .3s ease-out;
}

/*確認画面ボタン*/
.mw_wp_form_input .btn_form input {
  background-image: url(../images/shared/btn_confirm.png);
  transition: .3s;
}

.mw_wp_form_input .btn_form input:hover {
  background-image: url(../images/shared/btn_confirm_o.png);
}

/*送信ボタン*/
.mw_wp_form_confirm .btn_form input {
  background-image: url(../images/shared/btn_send.png);
  transition: .3s;
}

.mw_wp_form_confirm .btn_form input:hover {
  background-image: url(../images/shared/btn_send_o.png);
}

/*戻るボタン*/
.mw_wp_form_confirm .submitback input {
  background-image: url(../images/shared/btn_back.png);
  transition: .3s;
}

.mw_wp_form_confirm .submitback input:hover {
  background-image: url(../images/shared/btn_back_o.png);
}

/****/
.mw_wp_form .error {
  font-size: 1.2rem;
  font-weight: bold;
  color: #B70000;
  display: block;
  /* 文字縁取り */
  text-shadow: 0 1px 0 #fff, 1px 0 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
}

@media only screen and (max-width: 800px) {
  .mw_contact_form_ar {
    padding: 30px 0;
    margin: 0 0 50px;
  }

  .mw_contact_form_ar .bx_ar_1cols,
  .mw_contact_form_ar .bx_ar_2cols,
  .mw_contact_form_ar .bx_ar_3cols {
    width: 100%;
    margin: 0 0%;
    /* flexbox */
    display: block;
  }

  .mw_contact_form_ar .bx1,
  .mw_contact_form_ar .bx2,
  .mw_contact_form_ar .bx3,
  .mw_contact_form_ar .zip_bx,
  .mw_contact_form_ar .pref_bx,
  .mw_contact_form_ar .add_bx {
    padding: 0 0px 10px;
    margin: 0 0% 20px;
    width: 100%;
    /* flexbox */
    display: block;

  }

  .mw_contact_form_ar .title {
    font-size: 1.3rem;
  }

  .mw_contact_form_ar .required {
    font-size: 1.1rem;
    padding: 2px 5px;
    margin: 0px 0 0 0px;
    min-width: inherit;
    width: auto;
  }

  .mw_contact_form_ar .txt_bx {
    padding: 10px 10px;
  }

  .mw_contact_form_ar .txt_ar {
    padding: 10px 10px;
  }

  /****/
  .mw_contact_form_ar .field.radio {
    margin: 10px 0 0;
    /* flexbox */
    display: block;
  }

  .mw_contact_form_ar .mwform-radio-field.horizontal-item {
    margin: 0 0 0;
  }

  .mw_contact_form_ar .mwform-radio-field.horizontal-item label {
    margin: 0 0px 10px;
    display: block;
  }

  /****/
  .mw_contact_form_ar .privacy_ar {
    text-align: left;
    padding: 15px 15px;
  }

  .mw_contact_form_ar .privacy_ar .ttl {
    font-size: 1.4rem;
  }

  .mw_contact_form_ar .privacy_ar .check {
    text-align: left;
  }
}

/****mw wp comfirm/complete****/
.page_contact .contact_ttl {
  font-size: 2.4rem;
  border-bottom: solid 1px #03356A;
  padding: 0 0 10px;
  margin: 50px 0 50px;
  text-align: center;
}

.page_contact .contact_txt {
  font-size: 1.6rem;
  margin: 50px 0 50px;
  text-align: center;
}

@media only screen and (max-width: 800px) {
  .page_contact .contact_ttl {
    font-size: 2.0rem;
    margin: 50px 0 30px;
  }

  .page_contact .contact_txt {
    font-size: 1.4rem;
    margin: 0px 0 50px;
  }
}

.grecaptcha-badge {
  margin-bottom: 90px;
}