
:root{--ink:#272d29;--muted:#636963;--paper:#fff;--warm:#f8f6f1;--line:#e3e7df;--accent:#285348}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--warm);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.95}
a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:3px solid #b27c2d;outline-offset:4px}
.container{max-width:760px;margin:auto;background:white;min-height:100vh}.header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{font-weight:800;letter-spacing:.14em;text-decoration:none}.header a:last-child{font-size:.84rem}
.article{padding:32px 36px 50px}.breadcrumb{font-size:.78rem;color:var(--muted)}.eyebrow{font-size:.76rem;letter-spacing:.12em;color:var(--accent);font-weight:700;margin:24px 0 10px}
h1{font-size:clamp(1.7rem,4.8vw,2.25rem);line-height:1.5;letter-spacing:.02em;margin:0 0 15px}h2{font-size:1.4rem;line-height:1.6;margin:48px 0 18px;padding-top:4px}h3{font-size:1.08rem;line-height:1.6;margin:28px 0 12px}p{margin:0 0 20px}ul,ol{padding-left:1.4em;margin:0 0 24px}li{padding-bottom:8px}.meta,.small,figcaption{font-size:.82rem;color:var(--muted)}.meta{margin-bottom:25px}.lead{font-size:1.05rem}.answer{border-left:3px solid var(--accent);background:#f2f5ef;padding:22px;margin:28px 0}.answer p:last-child{margin-bottom:0}.toc{margin:30px 0;padding:23px;background:var(--warm)}.toc ol{margin:12px 0 0}.hero{margin:28px 0}.hero img{width:100%;height:auto;display:block;border-radius:6px}.hero figcaption{padding-top:10px}.hero.compact img{max-height:430px;object-fit:contain;background:#fafafa}
.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:25px 0}.product{border-top:1px solid var(--line);padding-top:18px;min-width:0}.product img{width:100%;height:auto;display:block;border-radius:6px}.product h3{margin:12px 0 7px;font-size:1rem}.product p{font-size:.87rem;margin-bottom:10px}.product .small{font-size:.72rem;overflow-wrap:anywhere}.button{display:block;text-align:center;padding:14px 16px;background:var(--accent);color:#fff;text-decoration:none;border-radius:4px;font-size:.92rem;font-weight:700;min-height:48px}.button.secondary{background:#fff;border:1px solid var(--accent);color:var(--accent)}.shop-note{font-size:.79rem;color:var(--muted)}.shop-section{padding:26px;background:var(--warm);margin:40px 0}.shop-section h2{margin:0 0 15px}
table{width:100%;border-collapse:collapse;font-size:.9rem;line-height:1.75;table-layout:fixed;margin:20px 0}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:13px 9px;overflow-wrap:anywhere}th{background:var(--warm)}.color-table th:first-child{width:18%}.color-table th:nth-child(2){width:35%}.flow{padding:24px;background:#f2f5ef;margin:24px 0;counter-reset:flow}.flow li{list-style:none;position:relative;padding:0 0 20px 38px}.flow li::before{counter-increment:flow;content:counter(flow);position:absolute;left:0;top:2px;background:var(--accent);color:white;width:25px;height:25px;text-align:center;border-radius:50%;line-height:25px;font-size:.8rem}.flow li:last-child{padding-bottom:0}.flow strong{display:block}.flow span{font-size:.87rem;color:var(--muted)}.quote{background:var(--warm);border-left:3px solid #bcb8a8;padding:20px;margin:22px 0;font-size:.92rem;white-space:pre-line}
details{border-top:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:700}details p{margin:15px 0 0}.related{margin:48px 0 0;border-top:1px solid var(--line);padding-top:20px}.related h2{margin:0 0 14px}.related a{display:block;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:.92rem}.sources{margin-top:35px;font-size:.8rem;color:var(--muted)}.sources h2{font-size:1rem;margin:0 0 10px}.sources ul{padding-left:1.2em}.footer{background:#f6f7f4;border-top:1px solid var(--line);padding:28px 36px;font-size:.8rem}.footer p{margin-bottom:10px}.footer a{overflow-wrap:anywhere}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;z-index:20;background:white;padding:12px}
@media(max-width:480px){.header{padding:13px 20px}.article{padding:25px 20px 38px}.footer{padding:25px 20px}.products{gap:14px}.shop-section{padding:20px 16px}.product h3{font-size:.9rem}.product p{font-size:.79rem}.product .button{font-size:.8rem;padding:12px 8px}.answer{padding:18px}.color-table th,.color-table td{padding:10px 6px;font-size:.8rem}h2{font-size:1.23rem}.hero.compact img{max-height:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.single-products{display:block}.single-products .product{max-width:430px;margin:auto}
@media(max-width:480px){.custom-products{grid-template-columns:1fr}.custom-products .product h3{font-size:1.04rem}.custom-products .product p{font-size:.9rem}.custom-products .product .button{font-size:.92rem}}
