:root{--bg:#fff;--bg-soft:#f5f7fa;--text:#1b2430;--text-sub:#56606e;--line:#e4e8ee;--line-strong:#c3cbd6;--brand:#1a5bb8;--brand-dark:#134489;--brand-soft:#eaf1fb;--urgent:#b8410b;--urgent-soft:#fdeee4;--before:#7a5a00;--before-soft:#fbf3d9;--closed:#626b78;--closed-soft:#eef0f3;--before-line:#d4a514;--unknown:#44586e;--unknown-soft:#e8edf3;--unknown-line:#94a5b8;--hover-bg:#fafcff;--navy:#173f7a;--navy-dark:#0f2f5f;--radius:12px;--wrap:1120px;--font:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "BIZ UDPGothic", "Noto Sans JP", "Yu Gothic UI", "Meiryo", sans-serif;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);letter-spacing:.02em;font-feature-settings:"palt" 0;margin:0;font-size:16px;line-height:1.8}a{color:var(--brand);text-underline-offset:3px}a:hover{color:var(--brand-dark)}h1,h2,h3{letter-spacing:.03em;margin:0;font-weight:700;line-height:1.5}h1{font-size:24px}h2{font-size:20px}h3{font-size:17px}p{margin:0}ul,ol,dl,dd{margin:0;padding:0}li{list-style:none}button,input,select{font:inherit;letter-spacing:inherit;color:inherit}img{max-width:100%}.num{font-variant-numeric:tabular-nums}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}.site-head{border-bottom:1px solid var(--line);background:var(--bg);z-index:20;position:sticky;top:0}.site-head .wrap{justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.logo{color:var(--text);align-items:center;gap:8px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.logo-mark{width:28px;height:28px;display:block}.head-nav{gap:4px;display:flex}.head-nav a{color:var(--text);border-radius:8px;padding:8px 12px;font-size:15px;text-decoration:none}.head-nav a:hover{background:var(--bg-soft)}.head-nav .nav-wide{display:none}@media (width>=720px){.head-nav .nav-wide{display:inline-block}}.site-foot{border-top:1px solid var(--line);background:var(--bg-soft);color:var(--text-sub);margin-top:64px;padding:32px 0 48px;font-size:14px}.site-foot .foot-grid{gap:16px;display:grid}.site-foot a{color:var(--text-sub)}.foot-links{flex-wrap:wrap;gap:8px 20px;display:flex}.foot-name{color:var(--text);font-size:15px;font-weight:700}.crumbs{color:var(--text-sub);padding-top:12px;font-size:13px}.crumbs li{min-width:0}.crumbs li:last-child{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;overflow:hidden}.crumbs ol{flex-wrap:nowrap;gap:4px;display:flex}.crumbs li:not(:last-child){white-space:nowrap;flex:none}.crumbs li:not(:last-child):after{content:"›";color:var(--line-strong);margin-left:4px}.crumbs a{color:var(--text-sub)}.page-head{gap:8px;padding:16px 0 24px;display:grid}.page-meta{color:var(--text-sub);font-size:14px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.badge-open{color:var(--brand);background:var(--brand-soft)}.badge-soon{color:var(--urgent);background:var(--urgent-soft)}.badge-before{color:var(--before);background:var(--before-soft)}.badge-closed{color:var(--closed);background:var(--closed-soft)}.badge-unknown{color:var(--unknown);background:var(--unknown-soft)}.chip{border:1px solid var(--line);color:var(--text-sub);background:var(--bg);border-radius:999px;padding:4px 10px;font-size:13px;line-height:1.4;text-decoration:none;display:inline-block}a.chip:hover{border-color:var(--brand);color:var(--brand)}.list{gap:12px;display:grid}.item{background:var(--bg);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:10px;transition:border-color .15s,background-color .15s;position:relative}.item-soon{border-left-color:var(--urgent)}.item-before{border-left-color:var(--before-line)}.item-closed{border-left-color:var(--line-strong)}.item-unknown{border-left-color:var(--unknown-line)}.item:hover{border-color:var(--brand);background:var(--hover-bg)}.item-soon:hover{border-left-color:var(--urgent)}.item-before:hover{border-left-color:var(--before-line)}.item-closed:hover{border-left-color:var(--line-strong)}.item-unknown:hover{border-left-color:var(--unknown-line)}.item a.item-link{color:var(--text);border-radius:inherit;gap:8px;padding:16px;text-decoration:none;display:grid}.item a.item-link:hover .item-title{color:var(--brand-dark)}.item-top{color:var(--text-sub);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.item-title{font-size:17px;font-weight:700;line-height:1.6}.item-catch{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.7;display:-webkit-box;overflow:hidden}.item-facts{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-top:2px;padding-top:8px;display:flex}.item-facts .amount{color:var(--brand-dark);letter-spacing:.01em;font-size:19px;font-weight:700}.item-facts .amount.none{color:var(--text-sub);font-size:14px;font-weight:400}.item-facts .dl{color:var(--text);font-size:14px}.item-facts .dl-soon{color:var(--urgent);font-weight:700}.more{align-items:center;gap:4px;margin-top:16px;font-weight:700;text-decoration:none;display:inline-flex}.more:after{content:"→"}.empty{background:var(--bg-soft);border-radius:var(--radius);color:var(--text-sub);padding:24px 16px;font-size:15px}.btn{border:1px solid var(--brand);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 24px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.btn-fill{background:var(--brand);color:#fff}.btn-fill:hover{background:var(--brand-dark);color:#fff}.btn-line{background:var(--bg);color:var(--brand)}.btn-line:hover{background:var(--brand-soft)}.searchbox{gap:8px;display:flex}.searchbox input{border:2px solid var(--line-strong);background:var(--bg);border-radius:12px;flex:1;min-width:0;height:56px;padding:0 16px;font-size:17px}.searchbox input:focus{border-color:var(--brand);outline:none}.searchbox button{background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:12px;height:56px;padding:0 20px;font-size:16px;font-weight:700}.searchbox button:hover{background:var(--brand-dark)}.section{margin-top:48px}.section-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.section-head .count{color:var(--text-sub);font-size:14px}.points{border-left:4px solid var(--brand);background:var(--brand-soft);border-radius:0 var(--radius) var(--radius) 0;padding:16px 20px}.points h2{color:var(--brand-dark);margin-bottom:4px;font-size:15px}.points ul{gap:4px;display:grid}.points li{text-indent:-1em;padding-left:1em}.points li:before{content:"・"}.navgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}@media (width>=720px){.navgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1000px){.navgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.navgrid a{border:1px solid var(--line);min-height:52px;color:var(--text);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;font-size:15px;line-height:1.5;text-decoration:none;display:flex}.navgrid a:hover{border-color:var(--brand);color:var(--brand)}.navgrid .n{color:var(--text-sub);white-space:nowrap;font-size:13px}.navgrid a.zero{color:var(--text-sub)}.regions{gap:16px;display:grid}@media (width>=720px){.regions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1000px){.regions{grid-template-columns:repeat(4,minmax(0,1fr))}}.region h3{color:var(--text-sub);margin-bottom:8px;font-size:14px;font-weight:700}.region ul{flex-wrap:wrap;gap:6px;display:flex}.region a{border:1px solid var(--line);min-height:40px;color:var(--text);border-radius:8px;align-items:center;gap:4px;padding:4px 12px;font-size:15px;text-decoration:none;display:inline-flex}.region a:hover{border-color:var(--brand);color:var(--brand)}.region a .n{color:var(--text-sub);font-size:12px}.region a.zero{color:var(--text-sub)}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags a{padding:8px 14px;font-size:15px}[hidden]{display:none!important}
