:root{--h-primary:#2d4a6e;--h-primary-container:#3f6491;--h-on-primary:#fff;--h-on-primary-container:#e5eefb;--h-primary-fixed:#c9dcf5;--h-primary-fixed-dim:#a9c3e6;--h-on-primary-fixed-variant:#1c3450;--h-secondary:#5a6472;--h-secondary-container:#dce4ee;--h-secondary-fixed-dim:#c1cbd8;--h-on-secondary:#fff;--h-on-secondary-container:#414b58;--h-surface:#f8f9fb;--h-surface-lowest:#fff;--h-surface-low:#f2f4f7;--h-surface-container:#eceff3;--h-surface-container-high:#e5e9ee;--h-surface-variant:#dfe3e9;--h-on-surface:#1b1f24;--h-on-surface-variant:#454b53;--h-outline:#737a83;--h-outline-variant:#c4cad2;--h-text-main:#262a2f;--h-text-sub:#5c6470;--h-cat-easy:#1b7f79;--h-cat-border:#e0a100;--h-cat-hard:#7b3fa0;--h-cat-nodata:#9aa0a6;--h-cat-easy-bg:#e2f3f1;--h-cat-border-bg:#fdf1d6;--h-cat-hard-bg:#f1e6f6;--h-cat-nodata-bg:#eef0f1;--h-error:#ba1a1a;--h-error-container:#ffdad6;--h-on-error-container:#93000a;--h-font-sans:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", Meiryo, system-ui, sans-serif;--h-font-data:var(--h-font-sans);--h-size-display-lg:32px;--h-size-headline-md:24px;--h-size-headline-sm:20px;--h-size-body-lg:18px;--h-size-body-md:16px;--h-size-data-lg:32px;--h-size-label-sm:12px;--h-size-caption:13px;--h-leading-tight:1.4;--h-leading-heading:1.5;--h-leading-body:1.8;--h-radius-sm:.125rem;--h-radius:.25rem;--h-radius-md:.375rem;--h-radius-lg:.5rem;--h-radius-xl:.75rem;--h-radius-full:9999px;--h-unit:4px;--h-gutter:16px;--h-margin:16px;--h-section-gap:56px;--h-content-width:1024px;--h-border:1px solid var(--h-outline-variant)}@media (width>=768px){:root{--h-margin:32px}}:root{--h-border-rule:var(--h-border);--h-easy:var(--h-cat-easy);--h-easy-bg:var(--h-cat-easy-bg);--h-border-color:var(--h-cat-border);--h-border-bg:var(--h-cat-border-bg);--h-hard:var(--h-cat-hard);--h-hard-bg:var(--h-cat-hard-bg);--h-no-data:var(--h-cat-nodata);--h-no-data-bg:var(--h-cat-nodata-bg)}*,:before,:after{box-sizing:border-box}body{background:var(--h-surface);color:var(--h-on-surface);font-family:var(--h-font-sans);font-size:var(--h-size-body-md);line-height:var(--h-leading-body);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--h-primary)}h1,h2,h3{line-height:var(--h-leading-heading);overflow-wrap:anywhere}.h-container{width:100%;max-width:var(--h-content-width);padding-inline:var(--h-margin);margin-inline:auto}.h-header{z-index:50;background:var(--h-surface);border-bottom:var(--h-border-rule);position:sticky;top:0}.h-header__inner{justify-content:space-between;align-items:center;gap:var(--h-gutter);min-height:56px;display:flex}.h-header__brand{font-size:var(--h-size-headline-sm);color:var(--h-primary);font-weight:700;text-decoration:none}.h-header__nav{gap:calc(var(--h-unit) * 5);font-size:var(--h-size-label-sm);letter-spacing:.05em;display:flex}.h-header__nav a{color:var(--h-text-sub);font-weight:500;text-decoration:none}.h-main{padding-block:calc(var(--h-unit) * 8) var(--h-section-gap)}.h-section{margin-bottom:var(--h-section-gap)}.h-section__title{font-size:var(--h-size-headline-md);color:var(--h-primary);margin:0 0 calc(var(--h-unit) * 6)}.h-breadcrumb{font-size:var(--h-size-label-sm);color:var(--h-text-sub);padding-block:calc(var(--h-unit) * 3)}.h-breadcrumb ol{gap:calc(var(--h-unit) * 2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.h-panel{background:var(--h-surface-lowest);border:var(--h-border-rule);border-radius:var(--h-radius-xl);padding:calc(var(--h-unit) * 6)}.h-meaning{font-size:var(--h-size-body-lg);color:var(--h-text-main);margin:0 0 calc(var(--h-unit) * 6);font-weight:500}.h-note{font-size:var(--h-size-caption);line-height:var(--h-leading-tight);color:var(--h-text-sub);margin:calc(var(--h-unit) * 2) 0 0}.h-list{gap:calc(var(--h-unit) * 2);margin:0;padding:0;list-style:none;display:grid}.h-list__item{justify-content:space-between;align-items:baseline;gap:var(--h-gutter);padding:calc(var(--h-unit) * 3) 0;border-bottom:1px solid var(--h-surface-variant);display:flex}.h-list__item:last-child{border-bottom:none}.h-table-scroll{overflow-x:auto}.h-table{border-collapse:collapse;width:100%;font-size:var(--h-size-body-md)}.h-table th,.h-table td{padding:calc(var(--h-unit) * 2) calc(var(--h-unit) * 3);border-bottom:1px solid var(--h-surface-variant);text-align:left;vertical-align:top}.h-table th{white-space:nowrap;background:var(--h-surface-low)}.h-table td.h-num{text-align:right;font-weight:600}.h-badge{border-radius:var(--h-radius-full);font-size:var(--h-size-label-sm);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.h-badge--easy{background:var(--h-easy-bg);color:var(--h-easy)}.h-badge--border{background:var(--h-border-bg);color:var(--h-border-color)}.h-badge__mark{flex:none;width:8px;height:8px;display:inline-block}.h-badge--easy .h-badge__mark{background:currentColor;border-radius:50%}.h-badge--border .h-badge__mark{background:currentColor}.h-badge--hard .h-badge__mark{background:0 0;border-bottom:8px solid;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0}.h-badge--no_data .h-badge__mark{background:currentColor;align-self:center;height:2px}.h-badge--hard{background:var(--h-hard-bg);color:var(--h-hard)}.h-badge--no_data{background:var(--h-no-data-bg);color:var(--h-no-data)}.h-cell{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.h-cell__value{font-weight:600}.h-disclaimer{background:var(--h-surface-container);border-radius:var(--h-radius-xl);padding:calc(var(--h-unit) * 6);font-size:var(--h-size-caption);line-height:var(--h-leading-tight);color:var(--h-text-sub)}.h-disclaimer h2{font-size:var(--h-size-body-lg);color:var(--h-text-main);margin:0 0 calc(var(--h-unit) * 3)}.h-disclaimer ul{margin:0;padding-left:1.2em}.h-disclaimer li{margin-bottom:calc(var(--h-unit) * 2)}.h-map__canvas{border-radius:var(--h-radius-xl);border:var(--h-border-rule);background:var(--h-surface-low);place-items:center;height:360px;display:grid;overflow:hidden}@media (width>=768px){.h-map__canvas{height:460px}}.h-map__placeholder{color:var(--h-text-sub);font-size:var(--h-size-label-sm)}.h-map__controls,.h-map__age-filter{gap:calc(var(--h-unit) * 2);margin-top:calc(var(--h-unit) * 3);margin-bottom:calc(var(--h-unit) * 3);flex-wrap:wrap;display:flex}.h-age-btn,.h-map__age-btn{border:var(--h-border-rule);background:var(--h-surface-lowest);border-radius:var(--h-radius-full);padding:calc(var(--h-unit) * 1.5) calc(var(--h-unit) * 4);font-size:var(--h-size-label-sm);cursor:pointer;color:var(--h-text-main)}.h-age-btn[aria-pressed=true],.h-map__age-btn[aria-pressed=true]{background:var(--h-primary);color:var(--h-on-primary);border-color:var(--h-primary)}.h-map__selected,.h-schools-map__selected{min-height:1.4em;font-size:var(--h-size-label-sm);color:var(--h-text-sub)}.h-schools-map__filter{gap:calc(var(--h-unit) * 2);margin-bottom:calc(var(--h-unit) * 3);flex-wrap:wrap;display:flex}.h-cards{gap:var(--h-gutter);margin-top:calc(var(--h-unit) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=600px){.h-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.h-sources{gap:calc(var(--h-unit) * 2);display:grid}.h-map__legend{gap:calc(var(--h-unit) * 4);margin-top:calc(var(--h-unit) * 3);font-size:var(--h-size-label-sm);color:var(--h-text-sub);flex-wrap:wrap;display:flex}.h-map__legend-item{align-items:center;gap:6px;display:inline-flex}.h-map__legend-dot{border-radius:var(--h-radius-full);flex:none;width:12px;height:12px;display:inline-block}.h-cta-slot{min-height:1px}.h-footer{background:var(--h-surface-container);padding-block:calc(var(--h-unit) * 10);margin-top:var(--h-section-gap)}.h-footer__sources{font-size:var(--h-size-caption);line-height:var(--h-leading-tight);color:var(--h-text-sub)}.h-footer__sources li{margin-bottom:calc(var(--h-unit) * 1)}.h-footer__nav{gap:calc(var(--h-unit) * 4);margin-bottom:calc(var(--h-unit) * 4);font-size:var(--h-size-label-sm);flex-wrap:wrap;display:flex}.h-footer__nav a{color:var(--h-text-sub)}.h-chip{padding:calc(var(--h-unit) * 1) calc(var(--h-unit) * 3);border-radius:var(--h-radius-full);background:var(--h-surface-container);color:var(--h-text-sub);font-size:var(--h-size-label-sm);align-items:center;display:inline-flex}
