:root{--accent: #2c7a4b;--accent-dark: #21603a;--bg: #f5f0e8;--surface: #fffdf8;--text: #2b2b28;--muted: #6b6b63;--border: #e3dccd;--maxw: 760px;--amazon: #ff9900;--rakuten: #bf0000;--yahoo: #ff0033}*{box-sizing:border-box}html{font-family:Noto Sans JP,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);line-height:1.85;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column}body:before{content:"";position:fixed;inset:0;z-index:-1;background-image:linear-gradient(#f5f0e8d6,#f5f0e8eb),var(--bg-image, none);background-size:cover;background-position:center;background-repeat:no-repeat}h1,h2,h3,h4{font-family:Zen Maru Gothic,Noto Sans JP,sans-serif;line-height:1.45;letter-spacing:.02em}a{color:var(--accent-dark)}img{max-width:100%;height:auto}.container{flex:1;width:100%;max-width:var(--maxw);margin:0 auto;padding:1.75rem 1.25rem 3rem}.site-header{background:var(--surface);border-bottom:1px solid var(--border)}.site-header__inner{max-width:var(--maxw);margin:0 auto;padding:.9rem 1.25rem;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}.site-header__brand{text-decoration:none;color:var(--text);display:flex;flex-direction:column}.site-header__name{font-family:Zen Maru Gothic,sans-serif;font-weight:700;font-size:1.3rem;color:var(--accent-dark)}.site-header__tagline{font-size:.8rem;color:var(--muted)}.site-nav{display:flex;gap:1rem;font-size:.9rem}.site-nav a{text-decoration:none;color:var(--text)}.site-nav a:hover{color:var(--accent-dark)}.hero{padding:1.5rem 0 .5rem}.hero h1{font-size:1.7rem;margin:0 0 .5rem;color:var(--accent-dark)}.hero p{color:var(--muted);margin:0}.article-list h2{border-left:5px solid var(--accent);padding-left:.6rem;font-size:1.25rem}.article-list ul{list-style:none;padding:0;margin:0}.article-list li{border-bottom:1px solid var(--border)}.article-list a{display:flex;gap:.9rem;align-items:center;padding:.85rem .25rem;text-decoration:none;color:var(--text)}.article-list a:hover{background:var(--surface)}.article-list__thumb{width:84px;height:84px;flex-shrink:0;object-fit:contain;background:var(--surface);border:1px solid var(--border);border-radius:10px}.article-list__thumb--ph{display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:var(--muted)}.article-list__text{min-width:0}.article-list__title{display:block;font-weight:700;color:var(--accent-dark)}.article-list__desc{display:block;font-size:.88rem;color:var(--muted);margin-top:.2rem}.sister-sites{margin-bottom:1.2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--border)}.sister-sites__title{font-size:1rem;margin:0 0 .7rem;color:var(--accent-dark);border-left:5px solid var(--accent);padding-left:.6rem}.sister-sites__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem}.sister-sites__item{display:flex;align-items:center;gap:.6rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--bg);text-decoration:none;color:var(--text);transition:border-color .15s,background .15s}.sister-sites__item:hover{border-color:var(--accent);background:var(--surface)}.sister-sites__emoji{font-size:1.5rem;line-height:1;flex-shrink:0}.sister-sites__text{min-width:0}.sister-sites__name{display:block;font-weight:700;font-size:.9rem;color:var(--accent-dark)}.sister-sites__blurb{display:block;font-size:.78rem;color:var(--muted)}.article h1{font-size:1.6rem;margin-bottom:.3rem}.article__meta{color:var(--muted);font-size:.85rem;margin-top:0}.article__body h2{margin-top:2.2rem;border-left:5px solid var(--accent);padding-left:.6rem;font-size:1.3rem}.article__body h3{margin-top:1.6rem;font-size:1.1rem}.aff-btn{display:inline-block;padding:.6rem 1.1rem;border-radius:8px;background:var(--accent);color:#fff!important;text-decoration:none;font-weight:700;font-size:.95rem;transition:filter .15s}.aff-btn:hover{filter:brightness(.92)}.aff-btn--amazon{background:var(--amazon);color:#111!important}.aff-btn--rakuten{background:var(--rakuten)}.aff-btn--yahoo{background:var(--yahoo)}.product-card{position:relative;display:flex;gap:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:1rem;margin:1.5rem 0}.product-card--featured{border:2px solid var(--accent);box-shadow:0 4px 14px #2c7a4b26}.product-card__badge{position:absolute;top:-12px;left:12px;background:var(--accent);color:#fff;font-size:.75rem;font-weight:700;padding:.15rem .7rem;border-radius:999px;font-family:Zen Maru Gothic,sans-serif}.product-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin:0 0 .5rem;font-size:.85rem}.product-card__stars{white-space:nowrap}.product-card__starfill{color:#f5a623;letter-spacing:1px}.product-card__starempty{color:#d8d2c4;letter-spacing:1px}.product-card__reviewnum{color:var(--muted);margin-left:.3rem}.product-card__price{color:var(--rakuten);font-weight:700;font-size:1.05rem}.product-card__img{width:120px;height:120px;object-fit:contain;flex-shrink:0}.product-card__body{flex:1;min-width:0}.product-card__name{margin:0 0 .4rem;font-size:1.05rem}.product-card__desc{margin:0 0 .8rem;font-size:.9rem;color:var(--muted)}.product-card__shops{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:480px){.product-card{flex-direction:column}.product-card__img{width:100%;height:160px}}.breadcrumbs{font-size:.8rem;color:var(--muted);margin-bottom:.8rem}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--accent-dark);text-decoration:underline}.breadcrumbs__sep{margin:0 .4rem}.toc{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem 1.2rem;margin:1.5rem 0}.toc__title{font-family:Zen Maru Gothic,sans-serif;font-weight:700;margin:0 0 .5rem;color:var(--accent-dark)}.toc ul{list-style:none;margin:0;padding:0}.toc li{margin:.25rem 0}.toc__d3{padding-left:1.2rem;font-size:.92rem}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.faq__list{display:block}.faq__item{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.9rem 1.1rem;margin:.8rem 0}.faq__q{font-weight:700;color:var(--accent-dark);position:relative;padding-left:1.6rem}.faq__q:before{content:"Q";position:absolute;left:0;color:var(--accent);font-family:Zen Maru Gothic,sans-serif}.faq__a{margin:.5rem 0 0;padding-left:1.6rem;position:relative}.faq__a:before{content:"A";position:absolute;left:0;color:var(--rakuten);font-weight:700;font-family:Zen Maru Gothic,sans-serif}.proscons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.proscons__col{border-radius:10px;padding:.9rem 1rem}.proscons__col--pro{background:#eef5ef;border:1px solid #cfe4d4}.proscons__col--con{background:#f7f0ee;border:1px solid #e6d2cc}.proscons__head{font-weight:700;margin:0 0 .4rem;font-family:Zen Maru Gothic,sans-serif}.proscons ul{margin:0;padding-left:1.1rem;font-size:.9rem}@media(max-width:480px){.proscons{grid-template-columns:1fr}}.related{margin-top:2.5rem;border-top:1px solid var(--border);padding-top:1.2rem}.related h2{font-size:1.2rem;border-left:5px solid var(--accent);padding-left:.6rem}.related ul{list-style:none;padding:0;margin:0}.related li{margin:.5rem 0}.related a{text-decoration:none;font-weight:500}.related a:hover{text-decoration:underline}.moshimo-link{margin:1.5rem 0;display:flex;justify-content:center}.moshimo-link img{height:auto}.pr-badge{display:inline-block;background:var(--muted);color:#fff;font-size:.7rem;font-weight:700;padding:.05rem .4rem;border-radius:4px;vertical-align:middle}.pr-note{font-size:.8rem;color:var(--muted)}.pr-note--compact{margin:0 0 1rem}.site-footer .pr-note{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.8rem 1rem}.site-footer{background:var(--surface);border-top:1px solid var(--border);margin-top:2rem}.site-footer__inner{max-width:var(--maxw);margin:0 auto;padding:1.5rem 1.25rem 2rem}.app-promo{background:#eef5ef;border:1px solid #cfe4d4;border-radius:10px;padding:.9rem 1rem;margin-bottom:1rem}.app-promo__blurb{margin:0 0 .3rem;font-size:.9rem}.app-promo__link{font-weight:700;text-decoration:none}.site-footer__nav{display:flex;gap:1rem;font-size:.85rem;margin-top:1rem}.site-footer__copy{font-size:.78rem;color:var(--muted);margin-top:.8rem}dl{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.2rem}dt{font-weight:700;color:var(--accent-dark)}dd{margin:0}
