
:root{--ink:#111315;--muted:#687079;--paper:#f7f4ed;--white:#fff;--line:#1e2328;--gold:#b99a5f;--gold2:#e6d2a5;--teal:#0e6472;--red:#8f2b26;--shadow:0 24px 70px rgba(17,19,21,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.9;letter-spacing:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.site-header{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:22px;padding:16px 30px;background:rgba(247,244,237,.94);border-bottom:1px solid rgba(17,19,21,.16);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:14px;min-width:270px}.brand img{width:172px}.brand span{font-size:12px;font-weight:900;letter-spacing:.06em}.menu-toggle{display:none;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-weight:900;padding:9px 14px}
.mega-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.mega-nav details{position:relative}.mega-nav summary{list-style:none;cursor:pointer;padding:8px 10px;font-size:12px;font-weight:900;color:#3d4348}.mega-nav summary::-webkit-details-marker{display:none}.mega-nav summary:after{content:"+";margin-left:6px;color:var(--gold)}.mega-nav details[open] summary{background:var(--white);outline:1px solid var(--line)}.mega-nav details[open] summary:after{content:"-"}.mega-nav details>div{position:absolute;right:0;top:calc(100% + 10px);width:min(430px,88vw);padding:10px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow)}.mega-nav a{display:block;padding:12px;background:#fbfaf7;border:1px solid #ddd4c4}.mega-nav a+a{margin-top:8px}.mega-nav a span{color:var(--gold);font-weight:900;margin-right:8px}.mega-nav a strong{font-size:13px;line-height:1.45}.clinic-link{background:var(--ink)!important;color:var(--white);font-weight:900}
.home-hero{min-height:calc(100vh - 80px);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);gap:4vw;align-items:center;padding:7vw 6vw;background:linear-gradient(135deg,#16191d 0%,#272116 50%,#f7f4ed 50.2%,#f7f4ed 100%);color:var(--white)}.hero-copy h1,.article-hero h1{font-size:clamp(42px,6.8vw,92px);line-height:1.05;margin:16px 0 24px;letter-spacing:0}.home-hero .hero-copy p{max-width:760px;font-size:18px}.hero-panel{color:var(--ink);background:var(--white);border:1px solid var(--line);padding:14px;box-shadow:16px 16px 0 var(--gold)}.hero-panel img{width:100%;height:420px;object-fit:cover}.trust-grid{display:grid;gap:8px;margin-top:12px}.trust-grid strong{border:1px solid #ded4c0;background:#fbf7ec;padding:10px;font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-size:13px;font-weight:900;margin:0 0 10px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:10px 18px;border:1px solid var(--line);font-weight:900}.button.primary{background:var(--gold);color:var(--ink)}.button.secondary,.button.ghost{background:var(--white);color:var(--ink)}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.intro-band,.clinic-cta{display:grid;grid-template-columns:1fr .9fr;gap:44px;align-items:center;padding:7vw 6vw;background:var(--white);border-top:1px solid #d9d1c2}.intro-band img,.clinic-cta img{width:100%;height:360px;object-fit:cover;border:1px solid var(--line)}h2{font-size:clamp(30px,4.4vw,58px);line-height:1.13;margin:0 0 22px}.topic-index,.article-list-section{padding:7vw 6vw;border-top:1px solid #d9d1c2}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.category-card{background:var(--white);border:1px solid var(--line);padding:24px;box-shadow:8px 8px 0 var(--gold2)}.category-card span{color:var(--gold);font-weight:900}.category-card h3{font-size:24px;line-height:1.3}.category-card a{display:block;padding:10px 0;border-top:1px solid #e4dccd;font-weight:800}.article-list{columns:2;gap:32px;padding:0;list-style:none}.article-list li{break-inside:avoid;margin-bottom:10px}.article-list a{display:flex;gap:12px;background:var(--white);border:1px solid #ded4c0;padding:12px}.article-list span{color:var(--gold);font-weight:900}
.article-hero{padding:8vw 6vw 4vw;background:#17191d;color:var(--white)}.lead{font-size:18px;max-width:880px}.keyword-row{display:flex;gap:8px;flex-wrap:wrap}.keyword-row span{border:1px solid rgba(255,255,255,.5);padding:5px 9px;font-size:12px;font-weight:800}.article-image{margin:44px auto;max-width:980px;padding:0 24px}.article-image.wide{max-width:1180px}.article-image img{width:100%;max-height:540px;object-fit:cover;border:1px solid var(--line)}figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.content-section,.faq-section,.related-section,.checksheet,.case-strip{max-width:1080px;margin:0 auto;padding:48px 24px}.content-section p{font-size:17px}.answer{background:var(--white);border:1px solid var(--line);margin-top:50px;padding:34px;box-shadow:10px 10px 0 var(--gold2)}.checksheet{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;background:#fbf1d9;border:1px solid var(--line);margin-top:44px}.check-grid{display:grid;gap:10px}.check-grid label{display:grid;grid-template-columns:28px 1fr;gap:10px;background:var(--white);border:1px solid #dfd2b9;padding:12px;font-weight:800}.check-grid input{width:20px;height:20px}.check-result{grid-column:1/-1;border:1px solid var(--line);background:var(--white);padding:18px}.check-result strong{display:block;font-size:24px}.check-result a{display:none;width:max-content;margin-top:10px;background:var(--ink);color:var(--white);padding:9px 14px;font-weight:900}.check-result.is-yellow{background:#fff0bd}.check-result.is-red{background:#ffe1dc}.check-result.is-yellow a,.check-result.is-red a{display:inline-flex}
.case-strip{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px;align-items:center}.case-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.case-pair img{height:240px;width:100%;object-fit:cover;border:1px solid var(--line)}.case-overview .case-strip{max-width:none;padding:7vw 6vw;background:#ede6da}.faq-section details{background:var(--white);border:1px solid #ded4c0;margin:10px 0;padding:16px}.faq-section summary{font-weight:900;cursor:pointer}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.related-card{display:grid;gap:10px;min-height:170px;background:linear-gradient(135deg,#fff,#efe4cd);border:1px solid var(--line);padding:22px}.related-card span{color:var(--gold);font-weight:900}.related-card strong{font-size:21px;line-height:1.35}.related-card em{font-style:normal;background:var(--ink);color:var(--white);padding:6px 10px;width:max-content;font-weight:900}.clinic-cta{margin-top:52px}.site-footer{background:#14171a;color:var(--white);padding:46px 6vw}.site-footer img{width:240px;filter:brightness(0) invert(1);margin-bottom:18px}.site-footer a{text-decoration:underline;text-underline-offset:4px;color:var(--gold2)}
@media (max-width:900px){.site-header{padding:12px 16px;align-items:flex-start}.brand{min-width:0}.brand img{width:138px}.menu-toggle{display:inline-flex}.site-header.is-menu-open{flex-wrap:wrap}.mega-nav{display:none;width:100%;order:3}.site-header.is-menu-open .mega-nav{display:grid;grid-template-columns:1fr}.mega-nav details>div{position:static;width:100%;box-shadow:none;margin-top:8px}.home-hero{grid-template-columns:1fr;min-height:auto;padding:58px 20px;background:#17191d}.hero-copy h1,.article-hero h1{font-size:42px}.hero-panel img{height:270px}.intro-band,.clinic-cta,.checksheet,.case-strip{grid-template-columns:1fr}.category-grid,.related-grid{grid-template-columns:1fr}.article-list{columns:1}.intro-band,.clinic-cta,.topic-index,.article-list-section{padding:56px 20px}.intro-band img,.clinic-cta img{height:240px}.content-section,.faq-section,.related-section,.checksheet,.case-strip{padding:38px 18px}.answer{margin:34px 18px}.case-pair{grid-template-columns:1fr}.case-pair img{height:auto}.related-card{min-height:0}.related-card strong{font-size:18px;overflow-wrap:anywhere}.site-footer img{width:190px}}
