:root{--legal-brand: #16a34a;--legal-brand-dark: #0f7a37;--legal-ink: #17160f;--legal-muted: #6c6960;--legal-bg: #f7f6f3;--legal-surface: #ffffff;--legal-line: #ebe8e2;--legal-maxw: 820px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--legal-bg);color:var(--legal-ink);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Helvetica Neue,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.85}.legal-root{min-height:100vh;display:flex;flex-direction:column}.legal-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,5vw,40px);background:#ffffffeb;-webkit-backdrop-filter:saturate(1.2) blur(6px);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid var(--legal-line)}.legal-brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--legal-ink);text-decoration:none;font-size:15px}.legal-logo{width:28px;height:28px;border-radius:7px}.legal-back{color:var(--legal-brand-dark);text-decoration:none;font-size:14px;font-weight:600}.legal-back:hover{text-decoration:underline}.legal-main{flex:1;width:100%;max-width:var(--legal-maxw);margin:0 auto;padding:clamp(28px,6vw,56px) clamp(16px,5vw,40px) 64px}.legal-doc{background:var(--legal-surface);border:1px solid var(--legal-line);border-radius:16px;padding:clamp(24px,5vw,48px)}.legal-doc h1{font-size:clamp(22px,4vw,28px);line-height:1.4;margin:0 0 8px;padding-bottom:16px;border-bottom:2px solid var(--legal-brand)}.legal-doc h2{font-size:clamp(17px,2.5vw,19px);margin:36px 0 12px;padding-left:12px;border-left:4px solid var(--legal-brand)}.legal-doc h3{font-size:16px;margin:24px 0 8px}.legal-doc p{margin:12px 0}.legal-doc strong{font-weight:700}.legal-doc a{color:var(--legal-brand-dark)}.legal-doc ol,.legal-doc ul{margin:12px 0;padding-left:1.6em}.legal-doc li{margin:6px 0}.legal-doc li::marker{color:var(--legal-muted)}.legal-doc hr{border:0;border-top:1px solid var(--legal-line);margin:32px 0}.legal-doc table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.legal-doc th,.legal-doc td{border:1px solid var(--legal-line);padding:8px 12px;text-align:left;vertical-align:top}.legal-doc thead th{background:var(--legal-bg);font-weight:700}.legal-nav{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px;padding-top:4px}.legal-nav a{color:var(--legal-brand-dark);text-decoration:none;font-size:14px;font-weight:600}.legal-nav a:hover{text-decoration:underline}.legal-footer{border-top:1px solid var(--legal-line);padding:20px;text-align:center;color:var(--legal-muted);font-size:12px}
