:root{--bg:#fbfaf8;--fg:#1f2328;--muted:#5b616b;--line:#dcdfe3;--soft:#f1f2f4;--accent:#2d5a86;--ad:#7a5200}
@media (prefers-color-scheme:dark){:root{--bg:#15171a;--fg:#e6e7e9;--muted:#a4a9b1;--line:#30343a;--soft:#1d2024;--accent:#9cc0e6;--ad:#e0b25c}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic",Meiryo,system-ui,sans-serif;font-size:1rem;line-height:1.75}
a{color:var(--accent);text-underline-offset:.15em}
a:focus-visible,.table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pr-notice{margin:0;padding:.5rem 1rem;background:var(--soft);border-bottom:1px solid var(--line);font-size:1rem;text-align:center}
.wrap{max-width:52rem;margin:0 auto;padding:0 1rem}
.site-header{border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;padding-top:.75rem;padding-bottom:.75rem}
.site-name{font-weight:700;font-size:1.125rem;text-decoration:none;color:var(--fg)}
.site-nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.9375rem}
main{padding:1.25rem 0 2.5rem}
h1{font-size:1.375rem;line-height:1.45;margin:.5rem 0 .75rem}
h2{font-size:1.125rem;line-height:1.45;margin:2rem 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid var(--line)}
h3{font-size:1rem;margin:1.25rem 0 .5rem}
p{margin:.5rem 0}
.lead{color:var(--muted)}
.note{font-size:.875rem;color:var(--muted)}
.breadcrumb{font-size:.875rem;color:var(--muted);margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.25rem}
.breadcrumb li+li::before{content:"›";margin-right:.25rem}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.5rem 0 1rem;border:1px solid var(--line);border-radius:4px}
table{border-collapse:collapse;width:100%;min-width:28rem;font-size:.9375rem}
caption{text-align:left;padding:.5rem .75rem;font-weight:700;caption-side:top}
th,td{padding:.5rem .75rem;text-align:left;vertical-align:top;border-top:1px solid var(--line)}
thead th{background:var(--soft);font-weight:600;white-space:nowrap}
tbody th{font-weight:600;min-width:8rem}
td.date{white-space:nowrap;font-variant-numeric:tabular-nums}
.sub{display:block;font-size:.8125rem;color:var(--muted);font-weight:400}
.tag{display:inline-block;padding:0 .375rem;border:1px solid var(--line);border-radius:3px;font-size:.8125rem;white-space:nowrap}
.tag.recheck{border-color:var(--ad);color:var(--ad)}
.ad-tag{display:inline-block;margin-left:.375rem;padding:0 .375rem;border:1px solid var(--ad);border-radius:3px;color:var(--ad);font-size:.75rem;line-height:1.6;white-space:nowrap}
.cta{display:inline-block;padding:.375rem .875rem;border:1px solid var(--accent);border-radius:4px;text-decoration:none;font-weight:600}
.cta:hover{background:var(--soft)}
.services{list-style:none;margin:.5rem 0;padding:0;border-top:1px solid var(--line)}
.services>li{padding:.75rem 0;border-bottom:1px solid var(--line)}
.service-name{font-weight:700;margin-right:.5rem}
.terms{margin:.5rem 0;padding:.625rem .875rem;background:var(--soft);border-left:3px solid var(--line);font-size:.9375rem}
.list{list-style:none;margin:.5rem 0;padding:0;border-top:1px solid var(--line)}
.list li{padding:.5rem 0;border-bottom:1px solid var(--line)}
dl.kv{display:grid;grid-template-columns:1fr;gap:0;margin:.5rem 0}
dl.kv dt{font-weight:600;padding-top:.5rem}
dl.kv dd{margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--line)}
.character{display:flex;gap:1rem;align-items:flex-start}
.char-icon{flex:none;width:4rem;height:4rem}
.site-footer{border-top:1px solid var(--line);padding:1rem 0 2rem;font-size:.875rem;color:var(--muted)}
.site-footer nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin-bottom:.5rem}
@media (max-width:39.99rem){.table-scroll{overflow-x:visible}table.stack{min-width:0}table.stack caption{display:block}table.stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}table.stack tbody,table.stack tr,table.stack tbody th,table.stack td{display:block;width:auto}table.stack tr{border-top:1px solid var(--line);padding:.375rem 0}table.stack tbody th,table.stack td{border-top:0;padding:.125rem .75rem;min-width:0;white-space:normal}table.stack [data-label]::before{content:attr(data-label);display:inline-block;min-width:5.5rem;margin-right:.5rem;color:var(--muted);font-weight:400;font-size:.8125rem}}
@media (min-width:40rem){h1{font-size:1.625rem}dl.kv{grid-template-columns:9rem 1fr}dl.kv dt{padding:.5rem 0;border-bottom:1px solid var(--line)}dl.kv dd{padding:.5rem 0}}
