@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap);:root{--bg:#FAF6F0;--bg2:#F5EFE6;--text:#2D2A26;--text2:#6B635A;--muted:#A39E96;--accent:#C0392B;--border:#E2DCD4;--panel:#FFFFFF;--toolbar:#3D3A36}*{box-sizing:border-box;margin:0;padding:0}body{font-family:'Zen Kaku Gothic New','Noto Serif JP',serif;background:var(--bg);color:var(--text);line-height:1.85;font-size:15px}.legal-header{background:var(--toolbar);color:#fff;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px rgba(0,0,0,.15)}.legal-header a.logo{color:#fff;text-decoration:none;font-family:'Noto Serif JP',serif;font-size:20px;font-weight:700;letter-spacing:2px}.legal-header .nav{display:flex;gap:16px;font-size:13px}.legal-header .nav a{color:#fff;opacity:.75;text-decoration:none}.legal-header .nav a:hover{opacity:1;text-decoration:underline}.legal-doc{max-width:880px;margin:48px auto;padding:48px 32px;background:var(--panel);border-radius:12px;box-shadow:0 4px 20px rgba(45,42,38,.06)}.legal-doc h1{font-family:'Noto Serif JP',serif;font-size:28px;font-weight:700;margin-bottom:8px;border-bottom:2px solid var(--accent);padding-bottom:14px}.legal-doc .meta{color:var(--muted);font-size:13px;margin-bottom:32px}.legal-doc h2{font-family:'Noto Serif JP',serif;font-size:18px;font-weight:700;margin:32px 0 12px;padding-left:10px;border-left:4px solid var(--accent)}.legal-doc h3{font-size:15px;font-weight:600;margin:20px 0 8px;color:var(--text2)}.legal-doc p{margin:8px 0}.legal-doc ol,.legal-doc ul{margin:8px 0 12px 24px}.legal-doc li{margin:4px 0}.legal-doc table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}.legal-doc td,.legal-doc th{border:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top}.legal-doc th{background:var(--bg2);font-weight:600;width:30%}.legal-doc .placeholder{color:var(--accent);font-weight:600;background:#fff4f1;padding:1px 6px;border-radius:3px;font-family:monospace;font-size:13px}.legal-doc .notice{background:#fff4f1;border-left:4px solid var(--accent);padding:14px 18px;margin:24px 0;border-radius:4px;font-size:14px;color:var(--text2)}.legal-doc .notice strong{color:var(--accent)}.legal-footer{text-align:center;padding:32px 16px 48px;color:var(--muted);font-size:12px}.legal-footer a{color:var(--text2);text-decoration:none;margin:0 8px}.legal-footer a:hover{text-decoration:underline}@media(max-width:640px){.legal-doc{margin:16px;padding:28px 18px}.legal-doc h1{font-size:22px}.legal-doc h2{font-size:16px}}