.big_title {
    font-family: 'NotoSansJP-Bold', sans-serif;
    font-weight: bold;
}

div.wpcf7 { background:#fafafa; border:1px solid #ddd; padding:0px; -moz-border-radius:10px; -khtml-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; margin:0 0 30px 0; }
div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:14px; }
div.wpcf7 input, .wpcf7 textarea { border:1px solid #ccc; padding:8px; font-size:14px; width: 97.5%; }
div.wpcf7 textarea { width:97.5%; height:300px; }
div.wpcf7 input.wpcf7-submit {
   cursor:pointer; color:#fff; font-weight:bold; font-size:14px; width:200px; height:45px; margin:0 auto; display:block;
   -moz-border-radius:5px; -khtml-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;
   background:#333; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #808080; border:1px solid #666;
}
div.wpcf7 input.wpcf7-submit:hover { background:#006080; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #007ea8; border:1px solid #006080; }
.wpcf7 input.wpcf7-submit:active { box-shadow:none; bottom:-2px; position:relative; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #ccc; }
 

.wpcf7 .wpcf7-not-valid { background: #ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip {font-size: 80%;}
.wpcf7 .wpcf7-response-output {margin: 10px 0 0; padding: 8px 35px 8px 14px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.wpcf7 .wpcf7-validation-errors {color: #B94A48; background-color: #F2DEDE; border: 1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok {color: #3A87AD; background-color: #D9EDF7; border: 1px solid #BCE8F1;}
 
.wpcf7 .required { color: #f00;}
.wpcf7 .any{ color: #080;}

/* CF7内：テーマのカスタムチェック（label::before等）を無効化して隙間を消す */
.wpcf7 .wpcf7-list-item > label{
  padding-left: 0 !important;
  margin-left: 0 !important;
  text-indent: 0 !important;
}

/* テーマが疑似要素で□を描いている場合を潰す（2cmの犯人） */
.wpcf7 .wpcf7-list-item > label::before,
.wpcf7 .wpcf7-list-item > label::after{
  content: none !important;
  display: none !important;
}

/* 実チェックボックスを普通に表示＆余白を最小化 */
.wpcf7 .wpcf7-list-item input[type="checkbox"],
.wpcf7 .wpcf7-list-item input[type="radio"]{
  position: static !important;
  opacity: 1 !important;
  width: auto !important;
  height: auto !important;
  margin: 0 4px 0 0 !important; /* ←隙間はここだけが効く状態になる */
}

/* □＋文字をワンセットで横並び、足りなければ折り返し */
.wpcf7 .wpcf7-list-item{
  display: inline-block !important;
  margin: 0 18px 10px 0 !important;
}

.wpcf7 .wpcf7-list-item > label{
  display: inline-flex !important;
  align-items: center !important;
}