:root{font-family:system-ui,"Noto Sans JP",sans-serif;color:#112f35;background:#f8f3ea;line-height:1.65}*{box-sizing:border-box}body{margin:0}main{max-width:1160px;margin:auto;padding:1.25rem 1rem 4.5rem}a{color:#075d5a}.home-link{font-weight:750;text-decoration:none}nav{display:flex;gap:.55rem;align-items:center;color:#52706f;font-size:.9rem}.page-header{max-width:760px;padding:3.3rem 0 2rem}.eyebrow,.section-kicker{margin:0 0 .4rem;color:#0b6762;font-size:.75rem;font-weight:800;letter-spacing:.13em}.page-header h1{max-width:720px;margin:0;font-family:Georgia,"Noto Serif JP",serif;font-size:clamp(2rem,5vw,3.65rem);line-height:1.2;letter-spacing:-.035em;color:#12333b}.lead{margin:1.1rem 0 0;color:#46615f;font-size:1.05rem}.notice{display:flex;gap:.75rem;align-items:flex-start;margin:0 0 2.6rem;padding:1rem 1.15rem;border:1px solid #ddcda9;border-radius:12px;background:#fffaf0;color:#5b4c31;font-size:.88rem}.notice strong{white-space:nowrap;color:#73561e}.ranking-section{padding-top:.3rem}.section-heading{display:flex;justify-content:space-between;gap:1.2rem;align-items:end;margin-bottom:1.2rem}.section-heading h2,.reading-guide h2{margin:0;font-size:1.4rem;line-height:1.35;color:#153941}.note{max-width:500px;margin:0;color:#526b69;font-size:.82rem;text-align:right}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}.card{display:grid;grid-template-columns:132px minmax(0,1fr);overflow:hidden;border:1px solid #d8ddd5;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,51,59,.045)}.product-visual{display:grid;min-height:100%;place-items:center;padding:1rem;background:linear-gradient(145deg,#e6efea,#d7e6df);color:#52716b;text-align:center}.product-visual span{white-space:pre-line;font-size:.8rem;font-weight:700;letter-spacing:.05em}.card-body{display:flex;min-width:0;flex-direction:column;padding:1.1rem}.rank{display:flex;align-items:baseline;gap:.5rem;margin:0 0 .45rem;color:#47706c;font-size:.76rem;font-weight:700}.rank strong{color:#0c5d58;font-size:1.15rem}.card h3{margin:0;color:#173b42;font-size:1.06rem;line-height:1.4}.original-title{margin-top:.5rem;color:#5b706d;font-size:.78rem}.original-title summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.original-title p{margin:.4rem 0 0}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1rem 0 .75rem}.metric{padding:.55rem .6rem;border-radius:9px;background:#f1f6f3}.metric dt{color:#58716e;font-size:.7rem}.metric dd{margin:.08rem 0 0;color:#153b40;font-size:.98rem;font-weight:760}.metric small{display:block;font-size:.7rem;font-weight:500}.shop{margin:0 0 1rem;color:#5b706d;font-size:.78rem}.rakuten-cta{display:flex;justify-content:center;align-items:center;min-height:44px;margin-top:auto;padding:.6rem .8rem;border-radius:8px;background:#b33427;color:#fff;font-size:.9rem;font-weight:800;text-decoration:none;box-shadow:0 3px 0 #842c22}.rakuten-cta:hover,.rakuten-cta:focus-visible{background:#972b20}.rakuten-cta:focus-visible{outline:3px solid #0b6762;outline-offset:3px}.reading-guide{max-width:900px;margin-top:3.2rem;padding:1.25rem 0;border-top:1px solid #cfd8d1;color:#425c5a}.reading-guide p{max-width:800px;margin:.7rem 0}.developer-link{font-size:.78rem}@media (max-width:700px){main{padding:1rem 1rem 3rem}.page-header{padding:2.3rem 0 1.4rem}.notice{display:block;margin-bottom:2rem}.notice strong{display:block;margin-bottom:.25rem}.section-heading{display:block}.note{margin-top:.65rem;text-align:left}.cards{grid-template-columns:1fr}.card{grid-template-columns:104px minmax(0,1fr)}.card-body{padding:1rem}.product-visual{padding:.5rem}.metrics{gap:.45rem}.reading-guide{margin-top:2.3rem}}
.toothbrush-filters{margin:0 0 1.8rem;padding:1rem 1.15rem;border:1px solid #cfd8d1;border-radius:12px;background:#fff}.toothbrush-filters fieldset{margin:0;padding:0;border:0}.toothbrush-filters legend{font-weight:800;color:#153941}.filter-options{display:flex;flex-wrap:wrap;gap:.55rem 1rem;margin-top:.65rem}.filter-options label{display:flex;align-items:center;gap:.35rem;font-size:.9rem}.toothbrush-filters button{min-height:38px;margin-top:.85rem;padding:.45rem .7rem;border:1px solid #52706f;border-radius:7px;background:#fff;color:#153941;font:inherit;font-weight:700}.toothbrush-filters button:not(:disabled){cursor:pointer}.toothbrush-filters button:disabled{color:#788b88;border-color:#cfd8d1}.filter-note{margin:.6rem 0 0;color:#526b69;font-size:.78rem}.no-results{padding:1rem 1.15rem;border:1px dashed #aebfba;border-radius:12px;background:#fff;color:#425c5a}
