:root{color-scheme:light;--ink:#17212e;--blue:#164b78;--line:#dce3eb;--muted:#56616e}
*{box-sizing:border-box}
html{background:#fff}
body{margin:0;color:var(--ink);font-family:Meiryo,"メイリオ","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.9;min-height:100vh;display:flex;flex-direction:column}
.container{width:min(100% - 64px,1000px);margin-inline:auto}
.site-header{border-top:5px solid var(--blue);border-bottom:1px solid var(--line);padding:27px 0}
.brand{font-size:21px;font-weight:700;letter-spacing:.025em}
main{flex:1;padding-block:72px 112px}
.eyebrow{display:block;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:10px}
h1{font-size:36px;line-height:1.5;letter-spacing:.08em;margin:0;font-weight:700}
.heading{margin-bottom:24px}
.intro{margin:0 0 42px}
.notice{padding:32px 0;border-top:2px solid var(--blue);border-bottom:1px solid var(--line)}
.empty{margin:0 0 12px;font-size:18px;font-weight:700}
.note{margin:0;color:var(--muted);font-size:14px}
.site-footer{border-top:1px solid var(--line);padding:22px 0;color:var(--muted);font-size:12px}
a{color:var(--blue);text-underline-offset:4px}
a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.announcement{padding:22px 0;border-bottom:1px solid var(--line);display:flex;gap:30px;flex-wrap:wrap}
@media(max-width:600px){.container{width:calc(100% - 40px)}.site-header{padding:22px 0}.brand{font-size:18px}main{padding-block:48px 80px}h1{font-size:30px}.intro{margin-bottom:30px}.notice{padding:26px 0}.empty{font-size:16px}.note{font-size:13px}.announcement{gap:8px;flex-direction:column}}
@media print{main{padding-block:30px}.site-footer{margin-top:40px}}
