@charset "utf-8";

/* 全体　共通 */
body{
  background-color:#f1f5f8!important;
  height: 100%;
}
body *{
  box-sizing: border-box !important;
}
.container{
  /* 既存CSS初期化 */
  display: block;
  margin: 0;
  width: 100%;

  /* container-type: ○○;
  container-type: inline-size;
  resize:horizontal; */
  /* overflow: auto;   */
}
@media (max-width: 768px){
  .outer #container > .container{
    margin: 0;
  }
}


/* Header部 　共通*/
header{
  display: block;
  width: 100%;
  height:60px;
  margin: 0 auto 38px auto;
  /* 配下　a配置用 */
  position: relative;
}
@media (max-width: 968px){
  header{
    margin:24px auto 24px
  }
}
/* header画像 */
/* 既存CSS上書き */
.row-fluid .span9 {
  margin: 0;
}
.row-fluid [class*="span"]:first-child {
  margin: 0;
}
.header-inner-content{
  display: block;
  width: 100%;
}
header .header-inner-content a{
  display: block;
  width: 220px;
  position: absolute;
  right: 0;
  left: 50%;
  margin-left: -130px;
}
@media (max-width: 768px){
  header .header-inner-content a{
    width: 220px;
    position: absolute;
    right: 0;
    left: 50%;
    margin-left: -110px;
  }
}
/* 既存CSS上書き */
/* Header画像補正 */
header [class*="span"]:nth-child(1) img {
  width: auto !important;
  margin: 0 auto;
  display: block
}
/* Footer画像補正 */
[data-module-type=image-editable]>div>div>a>img{
  width: initial !important;
  max-width: 100%;
  display: block;
  margin: 0;
}


/* Mail認証部　Mail確認部　共通 */
/* 全体 */
/* 直下の.rowのみ */
/* PC時 */
.container>.row{
  /* 固定 */
  width: 560px;
  margin: 0 auto;
}
/* Tab、SP時 */
@media (max-width: 768px){
  .container>.row{
    width: 92%;
    margin: 0 auto;
  }
}
/* 既存CSS上書き */
.span12{
  width: 100%;
  margin: 0;
}


/* 入力欄　全体　枠 共通*/
form{
  background-color: #FFF;
  border-radius: 4px;
  margin: 0 0 152px;
  padding: 40px 28px;
  border: 1px solid #d2dbdc;
  border-radius: 4px;
}

/* cookie */
.cookie-tx {
  text-align: center;
}

/* 主見出し */
h2{
  display: block;
  font-size: 19px;
  text-align: center;
  margin:0 0 24px;
}

/* 項目table  共通*/
/* 既存CSS上書き　初期化 */
table.table.table-bordered th,
table.table.table-bordered td{
  border: none;
}
/* 既存CSS上書き　初期化 */
[data-module-type*=inquiry] table.table-bordered tbody th,
  [data-module-type*=inquiry] table.table-bordered tbody td{
  min-height: initial;
}
/* 既存CSS上書き　再設定 */
table.table.table-bordered,
table.table.table-bordered tbody,
table.table.table-bordered tbody tr{
  display: block;
  width: 100%;
  border: none;
  margin: 0;
}
/* 項目　見出し */
table.table.table-bordered th{
  display: block;
  width: 100%;
  border: none;
  margin: 0;
  padding: 0 0 6px;
}
table.table.table-bordered th span{
  font-size: 16px;
  font-weight: bold;
}
/* 項目　中身 */
table.table.table-bordered td{
  display: block;
  width: 100%;
  border: none;
  margin: 0;
  padding: 0;

}

/* Mail認証 入力部 */
table.mail-certification td.cms-wrap input[type="text"]{
  display: block;
  width: 100%;
  height: 38px;
  padding: 6px 16px;
  margin: 0 0 16px;
  font-size: 16px;
}
/* 確認用 個別*/
table.mail-certification td.cms-wrap input[type="text"].mail-conf{
  margin: 0 0 6px;
}

/* Mail認証　Error文言 */
table.mail-certification td.cms-wrap .alert-text{
  color:#a94442;
  font-size: 14px;
  margin:0 0 24px;
  font-weight: bold;
}
table.mail-certification td.cms-wrap .alert-text a{
  text-decoration: none;
  color:#a94442;
  border-bottom: 2px dotted;
}
table.mail-certification td.cms-wrap .alert-text a:hover{
  opacity:0.7;
}


/* HPをお知りになったきっかけ*/
table.mail-certification td.cms-wrap select{
  display: block;
  width: 100%;
  height: 38px;
  padding: 6px 16px;
  margin: 0 0 6px;
  font-size: 16px;
}
table.mail-certification td.cms-wrap select:focus{
  border-color: rgba(82, 168, 236, 0.8);
  outline: 0;
  outline: thin dotted \9;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
  -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
}

/* 個人情報保護 条項*/
.privacy-textarea p{
  font-size: 14px;
  line-height: 20px;
}
/* 既存CSSへ上書き */
[data-module-type="privacy-textarea-editable"]{
  margin-bottom: 12px;
}
[data-module-type^=inquiry] .inquiry-privacy .privacy-textarea{
  min-height: 170px;
}

/* 同意する */
.privacy-agree-area{
  margin: 0;
}
.privacy-agree-area input[type="checkbox"]{
  transform: scale(1.25);
}

/* error文言 HPきっかけ　個人情報共通*/
table.mail-certification td.cms-wrap .text-danger.formrun-system-show{
  display: block;
  font-size: 14px;
  color:#a94442;
  margin: 0 0 24px;
  font-weight: bold;
}

/* Mail認証　確認　CTAButtton */
.inquiry-btn-area{
  margin: 0;
}
.inquiry-btn-area .cms-modal-btn-ok.btn.btn-confirm.g-recaptcha{
  background:#E5554E;
  color:#FFF;
  padding: 0;
  margin: 24px 0 0;
  width: 32%;
  height:48px;
}
@media (max-width: 767px){
  .inquiry-btn-area .cms-modal-btn-ok.btn.btn-confirm.g-recaptcha{
  width: 50%;
  }
}
.inquiry-btn-area .cms-modal-btn-ok.btn.btn-confirm.g-recaptcha:hover{
 transition:background-position 0.1s linear;
 /* 暗め */
 background-color: #c63831;
}


/*　Mail認証　RecaptchaButton */
.inquiry-btn-area .grecaptcha-badge{
  z-index:999;
  height: 300px;
}

/* Footer 共通*/
footer{
  width: 100%;
  display: block;
  margin: 0 auto;
  background-color: #222324;
  padding: 12px 0 12px;
  position: fixed;
  bottom: 0;
}
footer address{
  text-align: center;
  color:#fff;
  margin: 0;
  vertical-align: middle;
}




/* 確認画面　完了画面　共通*/
/* 主見出し */
h2.design-tmpl.h2-F001-black{
  display: block;
  font-size: 19px;
  text-align: center;
  padding: 0;
  padding-top: 32px;
  margin: 0 auto 32px;
  font-weight: bold;
  width: 100%;
}


/* 確認画面　固有*/
/* confirmation.html */
/* 文言 */
p.confirmation-p{
  font-size: 16px;
  line-height:24px;
}

/* 確認メールアドレス きっかけ　確認*/
table.table.table-bordered.confirmation-mail-ad tr{
  padding-bottom: 20px;
}

table.table.table-bordered.confirmation-mail-ad tr th,
table.table.table-bordered.confirmation-mail-ad tr td{
  display: inline-block;
  font-size:16px;
  text-align: center;
  padding: 8px 0;
  /* 既存CSS　上書き */
  min-height: 100%;
  margin: 0;
}

/* CTA-Button */
.inquiry-btn-area.mail-confirmation{
  margin: 24px 0 0;
}

/* キャンセルButton */
a.cms-modal-btn-ok.btn.btn-cancel{
  padding: 15px 0;
  margin: 0;
  width: 32%;
  height: 48px;
  margin-right: 24px;
  /* 背景質感無効化 */
  background-image:none;
}
@media (max-width: 767px){
  a.cms-modal-btn-ok.btn.btn-cancel{
    width: 44%;
    margin-right: 12px;
  }
}

/* 送信Button */
input.cms-modal-btn-ok.btn.btn-send{
  background: #E5554E;
  color: #FFF;
  padding: 0;
  margin: 0;
  width: 32%;
  height: 48px;
}
@media (max-width: 767px){
  input.cms-modal-btn-ok.btn.btn-send{
    width: 44%;
  }
}
input.cms-modal-btn-ok.btn.btn-send:hover{
  transition:background-position 0.1s linear;
   /* 暗め */
  background-color: #c63831;
}



/* 完了画面　固有 */
/* complete.html */
/* 文言 */
p.complete-p{
  font-size:16px;
  line-height:24px;
}


/* TOPへ戻るButton */
.inquiry-btn-area.return-button{
  display: block;
  margin: 24px auto 24px;
}

.cms-modal-btn-ok.btn.btn-return{
  background: #E5554E;
  color: #FFF;
  padding: 0;
  margin: 0;
  width: 32%;
  height: 48px;

  font-weight: bold;
  text-shadow: none;
  padding: 14px 0;

}
@media (max-width: 767px){
  a.cms-modal-btn-ok.btn.btn-return{
    width: 44%;
  }
}

a.cms-modal-btn-ok.btn.btn-return:hover{
  transition:background-position 0.1s linear;
   /* 暗め */
  background-color: #c63831;
}

/* 既存アカウントログイン */
.login-existing {
  margin-top: 8px;
}
