.legal-page{background:radial-gradient(1000px 360px at 8% -8%,rgba(191,145,238,.14),transparent 70%),radial-gradient(900px 340px at 100% 0%,rgba(161,119,214,.1),transparent 70%),#070708;padding:2.2rem 0 0}.legal-shell{max-width:1180px;margin:0 auto;padding:0 var(--pad) 2.5rem}.legal-page .section{border:1px solid rgba(255,255,255,.08);background:#101012;box-shadow:0 20px 60px #00000073;border-radius:20px;overflow:hidden}.legal-page .section-head{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:stretch;background:linear-gradient(180deg,#131216,#101012);border-bottom:1px solid rgba(255,255,255,.08)}.legal-page .section-num{display:flex;align-items:flex-end;justify-content:center;padding:1.4rem .6rem;border-right:1px solid rgba(255,255,255,.08);font-family:var(--f-mono);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:#dfccf7b8;background:#bf91ee14}.legal-title-area{display:flex;padding:clamp(1.5rem,3vw,2.3rem);align-items:flex-start}.legal-page .section-h{font-family:var(--f-serif);font-size:clamp(1.5rem,3.1vw,2.4rem);line-height:1.2;color:#efe5ff}.legal-page .section-body{padding:clamp(1.2rem,2.8vw,2rem)}.legal-back{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:.9rem;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#e8d4ff;border-bottom:1px solid rgba(191,145,238,.4);padding-bottom:.2rem;transition:color .25s,border-color .25s,text-shadow .25s}.legal-back:hover{color:#f4e9ff;border-color:#dcb6ffa6;text-shadow:0 0 20px rgba(191,145,238,.4)}.legal-sub{margin-top:.75rem;max-width:680px;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.08em;line-height:1.9;color:#dfccf7d1;text-transform:uppercase}.legal-sub-plain{text-transform:none;max-width:760px}.legal-top-link{margin-top:.6rem}.legal-top-link a{font-family:var(--f-mono);font-size:.65rem;color:#e8d4ff;text-decoration:none;border-bottom:1px solid rgba(191,145,238,.4);padding-bottom:1px;transition:color .25s,border-color .25s}.legal-top-link a:hover{color:#f4e9ff;border-color:#dcb6ffa6}.legal-wrap{max-width:960px;margin:0 auto;border:1px solid rgba(255,255,255,.08);padding:1.6rem 1.2rem;background:#141418;border-radius:16px}.legal-wrap h2{font-size:1rem;margin:1.25rem 0 .55rem;color:#efe5ff}.legal-wrap p,.legal-wrap li{font-family:var(--f-jp);font-size:.86rem;line-height:1.95;color:#dfccf7e0}.legal-wrap ol,.legal-wrap ul{margin:0 0 .45rem;padding-left:1.3rem}.legal-links{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.legal-links a,.legal-wrap a{text-decoration:none;color:#e8d4ff;border-bottom:1px solid rgba(191,145,238,.4);padding-bottom:1px;transition:color .25s,border-color .25s,text-shadow .25s}.legal-links a:hover,.legal-wrap a:hover{color:#f4e9ff;border-color:#dcb6ffa6;text-shadow:0 0 20px rgba(191,145,238,.4)}.rules-wrap{max-width:960px;margin:0 auto;display:grid;gap:1.2rem}.rules-block{border:1px solid rgba(255,255,255,.08);padding:1.4rem 1.2rem;background:#141418;border-radius:16px;transition:border-color .3s,box-shadow .3s}.rules-block:hover{border-color:#bf91ee61;box-shadow:0 6px 18px #8259b03d}.rules-h2{font-size:1.02rem;margin-bottom:.9rem;color:#efe5ff}.rules-h2.rules-h2-en{font-family:var(--f-serif)}.rules-h2.rules-h2-ja{font-family:var(--f-jp)}.rules-block p,.rules-list li{font-family:var(--f-jp);font-size:.86rem;line-height:2;color:#dfccf7e0}.rules-list{margin:0;padding-left:1.2rem;display:grid;gap:.45rem}.terms-raw{white-space:pre-wrap;margin:0;font-family:var(--f-jp);font-size:.86rem;line-height:2;color:#dfccf7e0}@media(max-width:768px){.legal-shell{padding-bottom:1.4rem}.legal-page .section{border-radius:16px}.legal-page .section-num{min-height:56px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);align-items:center;justify-content:flex-start;padding:.9rem 1rem}.legal-page .section-head{grid-template-columns:1fr}.legal-title-area{padding:1rem}.legal-page .section-body{padding:.9rem}.legal-sub{font-size:.6rem;line-height:1.7}.rules-block,.legal-wrap{padding:1rem .9rem}}
