/* WordPress の本文（Contact Form 7 のフォーム・記事）を新デザインに合わせる */
.wp-content{font-size:16px;line-height:1.95;color:#111}
.wp-content h2{font-size:26px;margin:40px 0 14px;padding-left:14px;border-left:6px solid #c8000f}
.wp-content h3{font-size:20px;margin:28px 0 10px}
.wp-content img{max-width:100%;height:auto}
.wp-content table{width:100%;border-collapse:collapse}
.wp-content th,.wp-content td{border-bottom:1px solid #d9d7d2;padding:12px;text-align:left;vertical-align:top}
.wpcf7 form p{margin:0 0 22px;font-weight:700}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 input[type=number],.wpcf7 input[type=date],.wpcf7 select,.wpcf7 textarea{display:block;width:100%;max-width:720px;margin-top:8px;padding:14px;border:1px solid #8b8b8b;border-radius:0;background:#fff;font:inherit;font-weight:400;min-height:52px;box-sizing:border-box}
.wpcf7 textarea{min-height:180px}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{outline:3px solid #c8000f;outline-offset:2px}
.wpcf7 input[type=submit],.wpcf7 button[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-width:280px;min-height:62px;padding:16px 40px;border:0;background:linear-gradient(135deg,#e50012 0%,#ff2a36 55%,#a8000c 100%);color:#fff;font:inherit;font-size:17px;font-weight:800;letter-spacing:.08em;cursor:pointer;box-shadow:0 14px 28px -14px rgba(229,0,18,.8)}
.wpcf7 input[type=submit]:hover{filter:brightness(1.06)}
.wpcf7-list-item{margin:0 18px 8px 0}
.wpcf7-not-valid-tip{color:#c8000f;font-size:13px;font-weight:700}
.wpcf7 form .wpcf7-response-output{margin:20px 0 0;padding:14px 16px;border:2px solid #c8000f;font-weight:700}
.wp-generic .page-hero{padding:64px 0}
.d-form .wp-form{max-width:820px}
/* 今のフォームの組み（左：項目名＋必須／右：入力欄）を2列の表に */
.wpcf7 section.row{display:grid;grid-template-columns:260px minmax(0,1fr);gap:10px 28px;padding:22px 0;border-bottom:1px solid #d9d7d2;align-items:start}
.wpcf7 section.row:first-of-type{border-top:2px solid #1c1d21}
.wpcf7 .hd p{display:inline;margin:0;font-size:16px;font-weight:800}
.wpcf7 .hd p+p{margin-left:10px}
.wpcf7 .req{display:inline-block;padding:2px 8px;background:#c8000f;color:#fff;font-size:12px;font-weight:800;vertical-align:2px}
.wpcf7 .mn p{margin:0;font-weight:400}
.wpcf7 .mn input[type=text],.wpcf7 .mn input[type=email],.wpcf7 .mn input[type=tel],.wpcf7 .mn textarea,.wpcf7 .mn select{margin-top:0}
.wpcf7 .mn p+p{margin-top:8px;font-size:14px;color:#555a61}
.wpcf7 .submit_wrap{text-align:center;margin-top:40px}
@media(max-width:767px){.wpcf7 section.row{grid-template-columns:1fr;padding:18px 0}}
