:root { --bg:#f1f4f7; --card:#fff; --text:#0d1b2a; --muted:#5a6b7b; --line:#dde4ea; --accent:#0b6bcb; --logo-name:url('/logo-name.png'); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) { --bg:#08131d; --card:#0f1d29; --text:#e6eef5; --muted:#93a7b8; --line:#1f3243; --accent:#4da3ff; --logo-name:url('/logo-name-dark.png'); }
}
:root[data-theme='dark'] { --bg:#08131d; --card:#0f1d29; --text:#e6eef5; --muted:#93a7b8; --line:#1f3243; --accent:#4da3ff; --logo-name:url('/logo-name-dark.png'); }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); line-height:1.8;
  font-family:system-ui,-apple-system,"Hiragino Sans","Yu Gothic UI","Noto Sans JP",sans-serif; }
main { width:100%; max-width:760px; min-width:0; margin:0 auto; padding:18px 16px 64px; }
.legal-brand { display:flex; flex-direction:column; align-items:flex-start; gap:4px; min-height:56px; padding:0 2px 12px; border-bottom:1px solid var(--line); color:var(--text); text-decoration:none; }
.legal-brand__logo { display:block; width:calc(24px * 460 / 75); height:24px; background:var(--logo-name) left center / contain no-repeat; }
.legal-brand__tagline { display:block; color:var(--muted); font-size:.55rem; letter-spacing:.15em; }
.top { margin:0 0 18px; }
.top a { color:var(--accent); text-decoration:none; font-weight:600; }
article { width:100%; min-width:0; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:20px 20px 8px; margin-top:12px; overflow-wrap:anywhere; }
h1 { font-size:1.5rem; margin:0 0 4px; }
h2 { font-size:1.1rem; margin:28px 0 6px; padding-top:4px; border-top:1px solid var(--line); }
h1 + .meta + h2 { border-top:0; margin-top:16px; }
.meta { color:var(--muted); font-size:.85rem; margin:0 0 12px; }
ul, ol { padding-left:1.4em; margin:6px 0 12px; }
li { margin:2px 0; }
a { color:var(--accent); }
table { border-collapse:collapse; width:100%; margin:8px 0 14px; font-size:.92rem; }
th, td { border:1px solid var(--line); padding:6px 8px; text-align:left; vertical-align:top; }
th { background:rgba(127,127,127,.08); white-space:nowrap; }
.nav { margin-top:16px; color:var(--muted); font-size:.9rem; }
.nav a { margin-right:12px; }
@media (max-width:600px) {
  .commercial-table,
  .commercial-table tbody,
  .commercial-table tr,
  .commercial-table th,
  .commercial-table td { display:block; width:100%; }
  .commercial-table { max-width:100%; table-layout:fixed; }
  .commercial-table tr { border:1px solid var(--line); border-bottom:0; }
  .commercial-table tr:last-child { border-bottom:1px solid var(--line); }
  .commercial-table th,
  .commercial-table td {
    min-width:0;
    border:0;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .commercial-table th { border-bottom:1px solid var(--line); }
}
