/* 15分のオンライン相談の予約ページ（2026-10-11）。style-v2.css の変数をそのまま使う */
.sd{padding:clamp(110px,16vh,170px) var(--pad) clamp(80px,12vh,140px);max-width:980px;margin:0 auto}
.sd h1{font-family:var(--mincho);font-weight:600;font-size:clamp(28px,4vw,44px);margin:10px 0 14px}
.sd-lead{font-size:14.5px;line-height:2;color:var(--ink-70);margin:0 0 clamp(30px,5vw,54px)}
.sd-step{border-top:1px solid var(--ink);padding:clamp(22px,3vw,34px) 0;margin:0}
.sd-step h2{display:flex;align-items:center;gap:14px;font-family:var(--mincho);font-weight:600;font-size:clamp(18px,2.2vw,24px);margin:0 0 14px}
.sd-step h2 span{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--ink);font-family:var(--cond);font-size:13px}
.sd-note{font-size:13px;color:var(--ink-70);margin:0 0 16px}
.sd-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin:0 0 14px;scrollbar-width:thin}
.sd-day{flex:none;font:inherit;font-size:13px;background:none;border:1px solid rgba(22,19,15,.3);color:var(--ink);padding:9px 12px;cursor:pointer;display:grid;gap:2px;text-align:center}
.sd-day small{font-size:10.5px;color:var(--ink-40)}
.sd-day[aria-selected="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.sd-day[aria-selected="true"] small{color:rgba(237,233,226,.7)}
.sd-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.sd-slot{font:inherit;font-family:var(--cond);font-size:15px;letter-spacing:.06em;background:#fff;border:1px solid rgba(22,19,15,.25);color:var(--ink);padding:12px 0;cursor:pointer}
.sd-slot:hover{border-color:var(--ink)}
.sd-slot[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}   /* 青は「選んだ枠」の1か所だけ */
.sd-wait{grid-column:1/-1;font-size:13.5px;color:var(--ink-70);margin:6px 0}
.sd-form{display:grid;gap:16px}
.sd-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sd-form label{display:grid;gap:7px;font-size:12px;letter-spacing:.06em;color:var(--ink-70)}
.sd-form label b{font-weight:700;font-size:10px;color:var(--ink);border:1px solid var(--ink);padding:1px 5px;margin-left:4px}
.sd-form input,.sd-form select,.sd-form textarea{width:100%;padding:12px 14px;font:inherit;font-size:14px;color:var(--ink);background:#fff;border:1px solid rgba(22,19,15,.25);border-radius:0}
.sd-form input:focus,.sd-form select:focus,.sd-form textarea:focus{outline:2px solid var(--ink);outline-offset:1px}
.sd-form .consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;letter-spacing:0}
.sd-form .consent input{width:auto;margin-top:3px}
.sd-form .consent a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sd-picked{margin:0;padding:12px 14px;border:1px dashed rgba(22,19,15,.35);font-size:14px;color:var(--ink-70)}
.sd-picked.on{border-style:solid;border-color:var(--ink);color:var(--ink);font-weight:500}
/* サイト共通の .btn は暗い背景用（ホバーで紙色に塗る）。明るいこのページでは消えて見えるので専用にする（2026-10-11） */
.sd-btn{justify-self:start;font:inherit;font-size:15px;letter-spacing:.08em;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:15px 30px;cursor:pointer;transition:background .3s,color .3s}
.sd-btn:hover:not(:disabled){background:var(--blue);border-color:var(--blue);color:#fff}
.sd-btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.sd-btn:disabled{opacity:.4;cursor:not-allowed}
.sd-msg{margin:0;font-size:13.5px;min-height:1.4em}
.sd-msg.ng{color:#b3261e}
.sd-done{font-size:15px;line-height:2}
.sd-alt{font-size:13px;color:var(--ink-70);margin-top:20px}
.sd-alt a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:640px){.sd-form .row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
