/* Contact Form 7 のフォームを、見本の .form と同じ見た目にする（お問い合わせページだけ読み込む）
   色・余白は site.css の変数を使う。CF7 の標準CSSに負けないよう、セレクタを少し強くしてある。 */
.wpcf7{--err:#C0392B;max-width:52em}
.wpcf7 form.wpcf7-form{display:grid;gap:clamp(24px,2.4vw,40px);margin:0}

/* 各項目（CF7 が p で包む）。「ご検討中の内容（任意）」は label の外の地の文なので、p にも label と同じ太さ・色 */
.wpcf7 form.wpcf7-form p{margin:0;color:var(--ink);font-weight:900;line-height:1.5}
.wpcf7 form.wpcf7-form br{display:none}
.wpcf7 form.wpcf7-form label{display:block;color:var(--ink);font-weight:900;line-height:1.5}
.wpcf7 form.wpcf7-form .wpcf7-form-control-wrap{display:block}

/* 入力欄：枠2px・角なし・フォーカスでオレンジ */
.wpcf7 form.wpcf7-form input[type=text],
.wpcf7 form.wpcf7-form input[type=email],
.wpcf7 form.wpcf7-form input[type=tel],
.wpcf7 form.wpcf7-form input[type=url],
.wpcf7 form.wpcf7-form input[type=number],
.wpcf7 form.wpcf7-form select,
.wpcf7 form.wpcf7-form textarea{
  display:block;width:100%;max-width:none;margin:10px 0 0;padding:16px 18px;border:2px solid var(--ink);border-radius:0;background:#fff;
  font:inherit;font-size:16px;font-weight:400;line-height:1.6;color:var(--ink);transition:border-color .2s,box-shadow .2s;
  -webkit-appearance:none;appearance:none;
}
.wpcf7 form.wpcf7-form textarea{height:auto;min-height:12em;resize:vertical}
.wpcf7 form.wpcf7-form input:focus,
.wpcf7 form.wpcf7-form select:focus,
.wpcf7 form.wpcf7-form textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px rgba(238,120,0,.22)}
.wpcf7 form.wpcf7-form ::placeholder{color:#9AA7B5}

/* チェックボックス（ご検討中の内容） */
.wpcf7 form.wpcf7-form .wpcf7-checkbox{display:grid;gap:10px;margin-top:12px}
.wpcf7 form.wpcf7-form .wpcf7-list-item{display:block;margin:0}
.wpcf7 form.wpcf7-form .wpcf7-list-item label{display:flex;align-items:flex-start;gap:10px;font-weight:500;color:var(--slate)}
.wpcf7 form.wpcf7-form .wpcf7-list-item input[type=checkbox]{flex:none;width:20px;height:20px;margin:.3em 0 0;accent-color:var(--accent)}

/* 送信ボタン：.btn.btn-main と同じ（濃い地に白文字・高さ56px） */
.wpcf7 form.wpcf7-form input[type=submit]{
  display:inline-block;width:auto;height:56px;margin:0;padding:0 28px;border:2px solid var(--ink);border-radius:4px;background:var(--ink);color:#fff;
  font-family:var(--jp);font-size:15px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;
  transition:background-color .25s,color .25s,border-color .25s;
  -webkit-appearance:none;appearance:none;
}
.wpcf7 form.wpcf7-form input[type=submit]:hover{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.wpcf7 form.wpcf7-form input[type=submit]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wpcf7 form.wpcf7-form .wpcf7-spinner{margin:0 0 0 16px;vertical-align:middle}

/* 入力エラー */
.wpcf7 form.wpcf7-form .wpcf7-not-valid{border-color:var(--err)}
.wpcf7 form.wpcf7-form .wpcf7-not-valid-tip{display:block;margin-top:8px;color:var(--err);font-size:13px;font-weight:700;line-height:1.6}

/* 送信結果のメッセージ */
.wpcf7 form.wpcf7-form .wpcf7-response-output{margin:0;padding:16px 18px;border:2px solid var(--ink);border-radius:0;background:#fff;color:var(--ink);font-size:14px;font-weight:500;line-height:1.7}
.wpcf7 form.wpcf7-form .wpcf7-response-output:empty{display:none}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--accent)}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output{border-color:var(--err)}
