@font-face{font-family:Noto Sans JP Local;src:url(/fonts/noto-sans-jp-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Noto Sans JP Local;src:url(/fonts/noto-sans-jp-700.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:"Noto Serif JP Local";src:url(/fonts/noto-serif-jp-700.woff2) format("woff2");font-weight:700;font-display:swap}:root{--paper: #fbfaf5;--card: #ffffff;--ink: #1d2b28;--muted: #55625e;--teal: #0f5c55;--teal-soft: #e3f0ed;--coin: #a84a0c;--coin-soft: #fbeadb;--line: #d9d6c8;--line-strong: #b9b5a2;--sans: "Noto Sans JP Local", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;--serif: "Noto Serif JP Local", "Hiragino Mincho ProN", "Yu Mincho", serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.8;font-feature-settings:"palt"}.wrap{width:min(1080px,100% - 32px);margin-inline:auto}a{color:var(--teal);text-underline-offset:3px}a:hover{color:#083d38}:focus-visible{outline:3px solid #1a6fd6;outline-offset:2px}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:8px 14px;z-index:10}.skip:focus{left:8px;top:8px}h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.4;letter-spacing:.02em}h1{font-size:clamp(1.55rem,4.2vw,2.2rem);margin:.4em 0}h2{font-size:1.35rem;margin:2.2em 0 .7em;padding-bottom:.35em;border-bottom:2px solid var(--teal)}h3{font-size:1.08rem;margin:1.6em 0 .5em}p{margin:.7em 0}ul,ol{padding-left:1.3em}.num,td.price,.tag{font-variant-numeric:tabular-nums}.site-header{background:var(--teal);color:#fff}.header-in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:10px 0}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.brand:hover{color:#fff}.brand-text{display:flex;flex-direction:column;line-height:1.25}.brand-name{font-family:var(--serif);font-weight:700;font-size:1.1rem}.brand-sub{font-size:.78rem;color:#cfe6e1;letter-spacing:.12em}.site-header nav ul{list-style:none;display:flex;gap:4px 18px;flex-wrap:wrap;margin:0;padding:0}.site-header nav a{color:#fff;text-decoration:none;padding:8px 2px;display:inline-block;border-bottom:2px solid transparent;font-size:.95rem}.site-header nav a:hover{border-bottom-color:#f2b27a;color:#fff}.crumbs{font-size:.85rem;color:var(--muted);padding-top:14px}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:2px 0;margin:0;padding:0}.crumbs li+li:before{content:"›";margin:0 .55em;color:var(--line-strong)}.crumbs a{color:var(--muted)}main{padding-bottom:56px}.hero{padding:36px 0 8px;display:grid;gap:22px}.hero .lead{font-size:1.05rem;color:var(--muted);max-width:40em;margin:0}.search-form{display:flex;gap:8px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line-strong);border-radius:10px;padding:10px;box-shadow:0 2px 0 var(--line)}.search-form label.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.search-form input[type=search]{flex:1 1 240px;min-width:0;font:inherit;padding:12px 14px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--ink)}.btn,.search-form button{font:inherit;font-weight:700;padding:12px 22px;border:0;border-radius:8px;background:var(--teal);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover,.search-form button:hover{background:#083d38;color:#fff}.hint{font-size:.88rem;color:var(--muted);margin:6px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:10px 0 0}.chips a{display:inline-block;padding:6px 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);text-decoration:none;font-size:.92rem}.chips a:hover{background:var(--teal-soft)}.tag{display:inline-block;position:relative;background:var(--coin-soft);color:#5a2705;font-weight:700;padding:2px 12px 2px 20px;clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);white-space:nowrap}.tag:before{content:"";position:absolute;left:8px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--paper);transform:translateY(-50%)}.tag.generic{background:var(--teal-soft);color:#083d38}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:26px 0 0;padding:0;list-style:none}.stats li{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--teal);padding:12px 14px}.stats b{display:block;font-family:var(--serif);font-size:1.6rem;line-height:1.2;font-variant-numeric:tabular-nums}.stats span{font-size:.85rem;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;list-style:none;padding:0;margin:14px 0}.card{display:block;background:var(--card);border:1px solid var(--line);padding:14px 16px;text-decoration:none;color:var(--ink);height:100%}.card:hover{border-color:var(--teal);background:#f7fbfa}.card strong{font-family:var(--serif);font-size:1.05rem;display:block}.card small{color:var(--muted)}.facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:6px 0 4px;padding:0;list-style:none;color:var(--muted);font-size:.92rem}.badge{display:inline-block;font-size:.78rem;font-weight:700;padding:1px 9px;border:1px solid currentColor;border-radius:4px}.badge.sen{color:#8a3d08;background:var(--coin-soft)}.badge.jun{color:#6b4a00;background:#fbf0cf}.badge.kou{color:#0b4a44;background:var(--teal-soft)}.badge.other{color:var(--muted);background:#f1efe6}.group{background:var(--card);border:1px solid var(--line);margin:22px 0}.group>header{padding:12px 16px 6px;border-bottom:1px solid var(--line)}.group h3{margin:0;font-size:1.05rem}.gapline{margin:6px 0 10px;font-size:.95rem}.gapbar{position:relative;height:12px;background:var(--teal-soft);border-radius:6px;overflow:hidden;margin:8px 0 6px;border:1px solid #c3dcd7}.gapbar i{position:absolute;inset:0 auto 0 0;background:#e9a76d;border-right:2px solid var(--coin)}.gapnote{font-size:.8rem;color:var(--muted);margin:0 0 8px}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}caption{text-align:left;padding:8px 16px;font-size:.85rem;color:var(--muted)}th,td{padding:9px 14px;text-align:left;border-top:1px solid var(--line);vertical-align:top}thead th{background:#f4f2e8;font-size:.85rem;white-space:nowrap;border-top:0}td.price,th.price{text-align:right;white-space:nowrap}td.diff{white-space:nowrap}.code{font-size:.78rem;color:var(--muted);display:block;font-variant-numeric:tabular-nums}.minor{font-size:.82rem;color:var(--muted);display:block}.pager{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:12px 0}.pager a,.pager span{display:inline-block;padding:6px 14px;border:1px solid var(--line-strong);border-radius:6px;text-decoration:none;background:var(--card)}.pager [aria-current]{background:var(--teal);color:#fff;border-color:var(--teal)}.namelist{columns:3 220px;column-gap:24px;list-style:none;padding:0;margin:12px 0}.namelist li{break-inside:avoid;padding:4px 0;border-bottom:1px dotted var(--line)}.namelist small{color:var(--muted)}.notice{background:var(--card);border-left:4px solid var(--coin);padding:12px 16px;margin:20px 0;font-size:.95rem}.defs{display:grid;grid-template-columns:max-content 1fr;gap:0;border:1px solid var(--line);background:var(--card)}.defs dt,.defs dd{margin:0;padding:10px 14px;border-top:1px solid var(--line)}.defs dt:first-of-type,.defs dt:first-of-type+dd{border-top:0}.defs dt{background:#f4f2e8;font-weight:700}.results{list-style:none;padding:0;margin:14px 0}.results li{border-bottom:1px solid var(--line);padding:10px 0}.results a{font-weight:700}.filters{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:8px;font-size:.92rem}.filters select{font:inherit;padding:6px 8px;border:1px solid var(--line-strong);border-radius:6px;background:#fff}.site-footer{background:#f0eee3;border-top:1px solid var(--line-strong);padding:26px 0 36px;font-size:.88rem;color:var(--muted)}.site-footer p{margin:.6em 0}.site-footer .disclaimer strong{color:var(--ink)}.foot-links{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;margin:14px 0}.foot-links a{color:var(--ink)}@media(max-width:640px){body{font-size:15.5px}th,td{padding:8px 10px}.defs{grid-template-columns:1fr}.defs dt{border-top:1px solid var(--line)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
