/* title */
.ptitle{padding:170px var(--pad) clamp(40px,6vw,64px);text-align:center}
.ptitle .crumb{font-size:11.5px;letter-spacing:.16em;color:var(--muted);margin-bottom:26px}
.ptitle .crumb a:hover{color:var(--terra)}
.ptitle .roman{font-family:"Zen Old Mincho",serif;font-size:13px;letter-spacing:.4em;color:var(--terra);margin-bottom:20px}
.ptitle h1{font-family:"Zen Old Mincho",serif;font-weight:700;color:#fff;font-size:clamp(30px,4.6vw,52px);line-height:1.5;letter-spacing:.08em}
.ptitle .lead{margin-top:20px;color:#c7cdd2;font-size:14.5px;line-height:2.2}

/* form */
.formsec{max-width:760px;margin:0 auto;padding:clamp(24px,4vw,40px) var(--pad) clamp(70px,10vw,120px)}
.fgroup{margin-bottom:34px}
.fgroup:last-of-type{margin-bottom:0}
.fgroup > label,.fgroup > .lbl{display:block;font-family:"Zen Old Mincho",serif;font-weight:600;font-size:15px;color:#fff;letter-spacing:.08em;margin-bottom:12px}
.fgroup .must{display:inline-block;margin-left:10px;font-size:10.5px;letter-spacing:.1em;color:var(--terra);border:1px solid var(--terra);border-radius:2px;padding:2px 8px;vertical-align:middle;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400}
.radios{display:flex;gap:10px;flex-wrap:wrap}
.radios label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:10px 18px;font-size:13px;color:var(--muted);cursor:pointer;transition:.25s}
.radios label:has(input:checked){border-color:var(--terra);color:var(--terra);background:rgba(176,141,87,.08)}
.radios input{accent-color:var(--terra)}
input[type=text],input[type=email],input[type=tel],textarea{width:100%;border:none;border-bottom:1px solid var(--line);background:transparent;padding:12px 2px;font-family:inherit;font-size:15px;color:var(--ink);transition:border-color .3s}
input:focus,textarea:focus{outline:none;border-bottom-color:var(--terra)}
input::placeholder,textarea::placeholder{color:#5b6167}
textarea{min-height:120px;resize:vertical}
.err{margin-top:30px;padding:14px 18px;border:1px solid #592A2A;background:rgba(89,42,42,.22);font-size:13.5px;line-height:1.9;color:#e6d7d7;border-radius:2px}
.err a{color:var(--terra);text-decoration:underline}
.submit{margin-top:44px;text-align:center}
.submit button{font-family:inherit;font-size:14.5px;letter-spacing:.1em;background:var(--terra);color:#fff;border:none;border-radius:2px;padding:17px 60px;cursor:pointer;transition:.3s}
.submit button:hover{background:#C4A066}
.submit button[disabled]{opacity:.45;cursor:not-allowed}
.submit button[disabled]:hover{background:var(--terra)}
/* reCAPTCHA v3: 右下のバッジを隠す代わりに、下の .rc-note を必ず掲示すること */
.grecaptcha-badge{visibility:hidden}
.rc-note{margin-top:26px;font-size:11px;line-height:1.9;color:#6d747b;letter-spacing:.02em}
.rc-note a{color:#8b929a;text-decoration:underline;text-underline-offset:2px}
.rc-note a:hover{color:var(--terra)}
.thanks{display:none;text-align:center;padding:clamp(40px,6vw,64px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.thanks.show{display:block}
.thanks .roman{font-family:"Zen Old Mincho",serif;font-size:12px;letter-spacing:.34em;color:var(--terra);display:block;margin-bottom:16px}
.thanks h2{font-family:"Zen Old Mincho",serif;font-weight:700;font-size:clamp(20px,3vw,28px);color:#fff;margin-bottom:14px}
.thanks p{font-size:13.5px;color:var(--muted)}
.thanks a{color:var(--terra)}
