.bb-legal{--ink:#222;--paper:#f5f0e6;--neon:#00ffd0;--line:#e5e7eb;--radius:16px;background:var(--paper);color:var(--ink);min-height:100dvh;font-family:system-ui,-apple-system,Noto Sans JP,Meiryo,sans-serif}.bb-legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.bb-legal a:hover{text-decoration-thickness:2px}.bb-legal a:focus-visible,.bb-legal button:focus-visible{outline:3px solid var(--neon);outline-offset:2px;border-radius:10px;text-decoration:none}.bb-legal header{border-bottom:1px solid var(--line);background:#fff}.bb-legal .container{max-width:980px;margin:0 auto;padding:18px 24px}.bb-legal .brand{justify-content:space-between;align-items:center;gap:12px;display:flex}.bb-legal .btn{border:2px solid var(--ink);background:var(--neon);color:#111;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-weight:700;text-decoration:none;transition:transform 80ms,box-shadow .12s;display:inline-flex}.bb-legal .btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0000001f}.bb-legal h1{letter-spacing:.01em;margin:10px 0;font-size:clamp(24px,4vw,34px)}.bb-legal h2{margin:22px 0 8px;font-size:20px}.bb-legal p{margin:8px 0;line-height:1.9}.bb-legal ol,.bb-legal ul{padding-left:1.2em}.bb-legal .card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px}.bb-legal .pill{border:1px dashed var(--ink);background:color-mix(in srgb,var(--neon)12%,transparent);border-radius:999px;padding:6px 10px;display:inline-block}.bb-legal .meta{color:#4b5563;margin-top:2px;font-size:14px}.bb-legal .divider{background:var(--line);height:1px;margin:16px 0}.bb-legal .toc{border:1px solid var(--line);background:#fff;border-radius:12px;margin:10px 0;padding:12px}.bb-legal .toc a{text-decoration:none}.bb-legal .toc a:hover{text-decoration:underline}.bb-legal .toc ol{margin:0;padding-left:1.4em}.bb-legal .section{scroll-margin-top:80px}.bb-legal .back{color:#4b5563;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.bb-legal .back:hover{text-decoration:underline}.bb-legal footer{text-align:center;color:#4b5563;padding:28px 16px}.bb-legal .bb-dl{grid-template-columns:220px 1fr;gap:8px 14px;margin:0;display:grid}.bb-legal .bb-dl dt{font-weight:700}.bb-legal .bb-dl dd{margin:0}@media (max-width:640px){.bb-legal .bb-dl{grid-template-columns:1fr}}@media (max-width:480px){.bb-legal .container{padding:16px 14px}.bb-legal .btn{padding:9px 14px}}
