:root{--brand: #0b3d6e;--brand-light: #1763a8;--ink: #1a2430;--muted: #5b6677;--line: #e3e8ee;--bg: #ffffff;--bg-soft: #f5f7fa;--radius: 10px;--maxw: 880px;--font: system-ui, -apple-system, "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans CJK SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.7;font-size:16px}a{color:var(--brand-light);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--maxw);margin:0 auto;padding:2rem 1.25rem 4rem}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header__inner{max-width:var(--maxw);margin:0 auto;padding:.9rem 1.25rem;display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.site-header__brand{font-weight:700;font-size:1.2rem;color:var(--brand)}.site-header__brand:hover{text-decoration:none}.site-nav{display:flex;gap:1rem;margin-left:auto;font-size:.95rem}.lang-switch{display:flex;gap:.5rem;font-size:.85rem}.lang-switch a[aria-current=true]{font-weight:700;color:var(--ink)}.hero{padding:1rem 0 2rem}.hero h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.3;margin:0 0 .75rem;color:var(--brand)}.hero p{color:var(--muted);max-width:46ch;margin:0 0 1.5rem}.btn{display:inline-block;background:var(--brand);color:#fff;padding:.65rem 1.3rem;border-radius:var(--radius);font-weight:600}.btn:hover{background:var(--brand-light);text-decoration:none}.list-meta{color:var(--muted);font-size:.9rem;margin-bottom:1rem}.company-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}.company-card{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;transition:border-color .15s}.company-card:hover{border-color:var(--brand-light)}.company-card a{font-weight:600;font-size:1.05rem}.company-card .sub{color:var(--muted);font-size:.85rem;margin-top:.35rem;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .6rem}.company-card .pref{background:#eef2f7;border-radius:999px;padding:.05rem .5rem}.company-card .figure{font-variant-numeric:tabular-nums}.company-detail h1{margin:0 0 .25rem;font-size:clamp(1.5rem,3.5vw,2rem)}.company-detail .legal{color:var(--muted);margin:0 0 1.5rem}.section-title{font-size:1.15rem;border-left:4px solid var(--brand);padding-left:.6rem;margin:2rem 0 .75rem}.company-detail .about-text{margin:0 0 .5rem;line-height:1.8}.company-detail .about-source{margin:0;font-size:.8rem;color:var(--muted)}.company-detail .about-source a{color:var(--muted)}.company-detail .ratio{margin:.75rem 0 0;font-size:.95rem}table.facts,table.financials{width:100%;border-collapse:collapse;font-size:.95rem}table.facts th{text-align:left;width:11rem;vertical-align:top;color:var(--muted);font-weight:600;padding:.55rem .75rem .55rem 0}table.facts td{padding:.55rem 0;border-bottom:1px solid var(--line)}table.facts tr:first-child td,table.facts tr:first-child th{border-top:1px solid var(--line)}table.financials th,table.financials td{padding:.55rem .75rem;border-bottom:1px solid var(--line);text-align:right}table.financials th:first-child,table.financials td:first-child{text-align:left}table.financials thead th{border-bottom:2px solid var(--line);color:var(--muted)}.updated{color:var(--muted);font-size:.85rem;margin-top:.75rem}.ranking{list-style:none;counter-reset:none;padding:0;margin:1rem 0 0}.ranking-row{display:flex;align-items:baseline;gap:.85rem;padding:.6rem 0;border-bottom:1px solid var(--line)}.ranking-rank{flex:0 0 2.2rem;text-align:right;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.ranking-main{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem}.ranking-main a{font-weight:600}.ranking-pref{background:#eef2f7;border-radius:999px;padding:.05rem .5rem;font-size:.8rem;color:var(--muted)}.ranking-figure{flex:0 0 auto;font-variant-numeric:tabular-nums;color:var(--ink)}.pref-grid{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.pref-grid a{display:flex;justify-content:space-between;gap:.5rem;border:1px solid var(--line);border-radius:var(--radius);padding:.5rem .75rem}.pref-grid a:hover{border-color:var(--brand-light);text-decoration:none}.pref-grid .pref-count{color:var(--muted);font-size:.85rem;font-variant-numeric:tabular-nums}.back-link{margin-top:1.5rem;font-size:.9rem}.search-form{display:flex;gap:.5rem;margin:.5rem 0 1.5rem}.search-form input[type=search]{flex:1;padding:.6rem .8rem;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius)}.search-form button{padding:.6rem 1.1rem;font:inherit;color:#fff;background:var(--brand);border:none;border-radius:var(--radius);cursor:pointer;white-space:nowrap}.search-count{color:var(--muted);font-size:.9rem;margin-bottom:.75rem}.search-results{list-style:none;padding:0;margin:0}.search-results li{display:flex;align-items:baseline;gap:.6rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.search-pref{color:var(--muted);font-size:.8rem;white-space:nowrap}.site-footer{border-top:1px solid var(--line);background:var(--bg-soft);color:var(--muted);font-size:.82rem}.site-footer__inner{max-width:var(--maxw);margin:0 auto;padding:1.5rem 1.25rem 2.5rem}.site-footer p{margin:.4rem 0}
