*{box-sizing:border-box}
body{margin:0;background:#f7f3ec;color:#222a38;font:16px/1.85 "Hiragino Sans","Yu Gothic UI","Meiryo",sans-serif}
a{color:#2b4f8c}
.adult{margin:0;padding:6px 16px;background:#22304a;color:#f2d7a6;font-size:13px;text-align:center}
.hd{max-width:760px;margin:0 auto;padding:18px 16px 8px}
.brand{display:block;color:#22304a;font-weight:800;font-size:24px;text-decoration:none;letter-spacing:.02em}
.brand span{display:block;font-weight:400;font-size:13px;color:#5a6372;letter-spacing:0}
.nv{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:10px;font-size:14px}
.nv a{color:#22304a;text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.nv a[aria-current]{border-color:#c8963e;font-weight:700}
.mn{max-width:760px;margin:0 auto;padding:8px 16px 32px}
h1{font-size:27px;line-height:1.45;margin:18px 0 10px}
h2{font-size:20px;line-height:1.5;margin:32px 0 8px;padding-left:10px;border-left:4px solid #c8963e}
.lead{font-size:17px}
.crime{margin:18px 0;padding:12px 14px;background:#fff;border:2px solid #9b2c2c;border-radius:6px;font-size:15px}
.crime strong{color:#9b2c2c}
.facts{display:grid;grid-template-columns:5.5em 1fr;gap:6px 12px;margin:0}
.facts dt{font-weight:700}
.facts dd{margin:0}
.free{margin:24px 0;padding:16px;background:#22304a;color:#f7f3ec;border-radius:8px}
.free-t{margin:0 0 6px;font-weight:700;color:#f2d7a6}
.free table{width:100%;border-collapse:collapse}
.free th,.free td{padding:7px 4px;border-bottom:1px solid #3b4a66;text-align:left;font-weight:400}
.free td{white-space:nowrap;font-weight:700}
.free-c{margin:10px 0 0;font-size:14px}
.plan{width:100%;border-collapse:collapse;background:#fff}
.plan th,.plan td{padding:10px;border:1px solid #ddd5c6;text-align:left;vertical-align:top}
.plan th{width:8.5em;background:#efe7d8}
.no,.dots{padding-left:1.3em}
.no li::marker{content:"× "}
.steps{padding-left:1.4em}
.steps li{margin:6px 0}
.qa section h2{font-size:17px}
.cta{margin:32px 0;text-align:center}
.cta a{display:inline-block;min-width:min(100%,340px);padding:15px 22px;background:#c8963e;color:#1b2433;font-weight:800;font-size:17px;border-radius:999px;text-decoration:none}
.cta small{color:#5a6372}
.accept{font-weight:700}
.small{font-size:14px;color:#5a6372}
.ft{max-width:760px;margin:0 auto;padding:20px 16px 40px;border-top:1px solid #ddd5c6;font-size:13px;color:#5a6372}
.ft p{margin:4px 0}
@media (max-width:520px){h1{font-size:23px}.facts{grid-template-columns:1fr}.facts dt{margin-top:8px}.plan th{width:6em}.free td{white-space:normal}}
/* 相談の面の日程とフォーム（共通部品の見た目を外し、このサイトの名前で付け直したもの） */
.oks{margin:22px 0;padding:16px;background:#fff;border:1px solid #ddd5c6;border-radius:8px}
.oks-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:10px}
.oks-title{font-weight:800;font-size:18px;color:#22304a}
.oks-now{font-size:13px;color:#5a6372}
.oks-lead{margin:0 0 10px;padding:10px 12px;background:#efe7d8;border-radius:6px}
.oks-cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:6px}
.oks-cell{padding:8px;border:1px solid #ddd5c6;border-radius:6px;text-align:center;font-size:14px;background:#fbf8f2}
.oks-cell b{display:block;font-size:13px;color:#22304a}
.oks-cell.is-closed{color:#9a9fa8;background:#f1eee8}
.oks-cell.is-today{border:2px solid #c8963e}
.oks-cell.oks-run{grid-column:1/-1}
.oks-note{margin:10px 0 0;font-size:12px;color:#5a6372}
.okf-form{margin:22px 0;padding:18px 16px;background:#fff;border:1px solid #ddd5c6;border-radius:8px;font-size:15px}
.okf-form h2{margin-top:0}
.okf-lead,.okf-note{font-size:14px;color:#5a6372}
.okf-note{margin:4px 0 0}
.okf-form label{display:block;margin:14px 0 4px;font-weight:700;font-size:14px}
.okf-form input[type=text],.okf-form input[type=email],.okf-form input[type=tel],.okf-form input[type=number],.okf-form input[type=datetime-local],.okf-form textarea{width:100%;padding:11px 12px;border:1px solid #c9bfae;border-radius:6px;font-size:16px;background:#fffdf8}
.okf-form textarea{min-height:120px}
.okf-opts{display:flex;flex-wrap:wrap;gap:6px 14px}
.okf-opts label{display:inline-flex;align-items:center;gap:6px;margin:4px 0;font-weight:400;min-height:44px}
.okf-req{margin-left:6px;padding:1px 7px;border-radius:999px;background:#9b2c2c;color:#fff;font-size:11px}
.okf-safety{margin:12px 0;padding:10px 12px;border-left:4px solid #c8963e;background:#f7f3ec;font-size:14px}
.okf-form button{width:100%;margin-top:18px;padding:15px;border:0;border-radius:999px;background:#c8963e;color:#1b2433;font-size:17px;font-weight:800;cursor:pointer}
.okf-form input[type=file]{display:block;width:100%;margin-top:6px;font-size:15px}
.okf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.okf-msg-ok{margin:20px 0;padding:14px 16px;border:2px solid #4f7a55;border-radius:8px;background:#f1f8f2}
.okf-msg-ng{margin:20px 0;padding:14px 16px;border:2px solid #9b2c2c;border-radius:8px;background:#fdf3f3}
