/* プライバシーポリシー・利用規約ページ */
:root{--ink:#2a241c;--muted:#6f6455;--gold:#b88a3e;--paper:#fffdf8;--cream:#f6f1e7;--line:#e2d6c1}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif;line-height:1.85}
.legal{max-width:760px;margin:0 auto;padding:28px 16px 64px}
.legal header{text-align:center;margin-bottom:8px}
.legal .brand{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;letter-spacing:.24em;font-size:13px;color:var(--muted)}
.legal h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:26px;line-height:1.5;margin:10px 0 4px}
.legal .meta{text-align:center;color:var(--muted);font-size:13px;margin:0 0 18px}
.lang-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 22px}
.lang-tabs button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:5px 12px;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer}
.lang-tabs button.active{border-color:var(--gold);background:#efe2c8}
.legal article{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px 20px}
.legal h2{font-size:17px;margin:26px 0 6px;padding-top:6px;border-top:1px solid var(--line)}
.legal h2:first-of-type{border-top:0;margin-top:4px}
.legal p,.legal li{font-size:14.5px}
.legal ul,.legal ol{padding-left:1.3em;margin:6px 0}
.legal table{width:100%;border-collapse:collapse;font-size:13.5px;margin:8px 0}
.legal th,.legal td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.legal th{background:#f3ead9;font-weight:600}
.legal .note{font-size:13px;color:var(--muted)}
.legal .contact{background:#f3ead9;border-radius:12px;padding:12px 14px;margin-top:8px}
.legal a{color:#8a5f1c}
.legal footer{text-align:center;margin-top:22px;font-size:13px}
@media (max-width:520px){.legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block;width:100%}.legal th{border-bottom:0}}
/* よくある質問 */
.legal .lead{color:var(--muted);font-size:14px;margin:0 0 14px}
.legal details{border-top:1px solid var(--line);padding:4px 0}
.legal details:first-of-type{border-top:0}
.legal summary{cursor:pointer;font-weight:600;font-size:15px;padding:10px 0;list-style:none;position:relative;padding-right:24px}
.legal summary::-webkit-details-marker{display:none}
.legal summary::after{content:"+";position:absolute;right:4px;top:8px;color:var(--gold);font-size:18px}
.legal details[open] summary::after{content:"−"}
.legal details p{margin:0 0 10px}
