:root{--ink:#513d30;--orange:#ec8126;--green:#83ad25;--cream:#fcf7de;--soft:#f5f8ec}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:"Yu Gothic","Meiryo",sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid #1469b1;outline-offset:4px}header{max-width:1180px;margin:auto;padding:24px 30px;display:flex;align-items:center;gap:28px}.brand{font-size:27px;font-weight:800;display:flex;align-items:center;line-height:1.4;gap:8px}.brand small{display:block;font-size:11px;letter-spacing:.16em;font-weight:500}.sun{color:var(--orange);font-size:54px}.headcontact{margin-left:auto;line-height:1.5}.headcontact small{display:block;font-size:12px}.headcontact a{font-size:25px;font-weight:800}.headline{color:white;background:#568516;border-radius:4px;padding:13px 24px;font-weight:bold}.topnav{background:var(--cream);display:flex;justify-content:center;gap:32px;padding:18px 24px;font-size:13px;font-weight:bold;flex-wrap:wrap}.wrap{max-width:1100px;margin:auto;padding:65px 28px}.hero{display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(120deg,#fcf8df,#eef4dc);min-height:590px;max-width:1440px;margin:auto}.herotext{padding:65px 25px 45px max(30px,calc((100vw - 1050px)/2));align-self:center}.eyebrow{font-size:12px;color:#687c26;font-weight:800;letter-spacing:.13em;margin:0 0 17px}h1{font-size:44px;line-height:1.5;letter-spacing:.02em;margin:0 0 25px}h1 em{font-style:normal;color:#d46616}h2{font-size:30px;line-height:1.65;margin:0 0 24px}h3{font-size:23px;line-height:1.6}p{margin:0 0 20px}.heropic{position:relative;overflow:hidden;margin:30px 30px 30px 0;border-radius:120px 8px 8px 8px}.heropic img{width:100%;height:100%;object-fit:cover;object-position:50% 37%}.heropic span{position:absolute;bottom:26px;left:25px;background:#fffef4e8;padding:12px 22px;font-weight:bold;font-size:18px}.button{display:block;text-align:center;color:white;padding:15px 25px;border-radius:5px;font-weight:700;line-height:1.6}.herotext .button{display:inline-block}.orange{background:#d86b16}.green{background:#568516}.fine{font-size:11px;margin-top:15px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);padding-top:26px;padding-bottom:26px;border-bottom:1px solid #e8e2ca;gap:12px;text-align:center;font-size:14px;font-weight:bold}.benefits span{border-right:1px solid #ddd7bd}.intro{text-align:center}.worries{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px;text-align:left}.worries a{padding:20px 24px;background:var(--cream);border-bottom:2px solid #eac697;font-weight:bold}.worries span{float:right;color:#a34b10}.soft{background:var(--soft)}.story{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}figure{margin:0}figure img{width:100%;display:block;border-radius:8px}figcaption{font-size:11px;margin-top:8px;color:#786e60}.textlink{color:#ad4b0b;border-bottom:1px solid}.promise{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin-top:45px}.promise img{width:100%;height:350px;object-fit:cover;object-position:center 37%;border-radius:7px}.reverse img{order:2}.number{font-family:Georgia,serif;font-size:48px;color:#92ad41}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-left:20px;margin:35px 0}.steps li::marker{color:#a34b10;font-weight:bold}.steps b{font-size:17px}.steps p{font-size:14px;margin-top:12px}.notice{padding:24px 28px;background:var(--cream);border-left:4px solid var(--orange);margin:30px 0;font-size:14px}.notice p{margin:8px 0 0}.cta{padding:32px;background:#fcf7e5;display:grid;grid-template-columns:1.5fr 1fr;gap:25px;align-items:center;border-top:4px solid var(--orange)}.cta h2{font-size:23px;margin:8px 0}.cta p{font-size:13px;margin:0}.cta .button+.button{margin-top:10px}.directory{border-top:1px solid #e8e2ca}.dirgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px 40px}.dirgrid h3{font-size:16px;color:#96602b;border-bottom:2px solid #d7dfb4;padding-bottom:8px}.dirgrid a,aside a{display:block;border-bottom:1px solid #e7e5dc;padding:10px 0;font-size:13px}.dirgrid span{float:right;color:#9f5d24}footer{padding:40px 28px 100px;background:#f6f2e8;text-align:center;font-size:12px}footer .brand{display:block;font-size:22px;margin-bottom:18px}.fixedbar{position:fixed;bottom:0;width:100%;display:flex;justify-content:center;z-index:20;background:white;box-shadow:0 -2px 12px #0001}.fixedbar a{padding:13px 20px;width:50%;max-width:300px;text-align:center;color:white;font-size:14px;font-weight:bold;background:#d86b16}.fixedbar a+a{background:#568516}.crumb{padding-top:20px;padding-bottom:20px;font-size:11px}.pagehero{background:var(--cream)}.pagehero .wrap{padding-top:43px;padding-bottom:43px}.pagehero h1{font-size:35px;margin-bottom:15px}.pagehero p:last-child{margin:0}.articlegrid{display:grid;grid-template-columns:minmax(0,750px) 220px;gap:55px}.articlephoto{width:100%;height:340px;object-fit:cover;object-position:center 35%;border-radius:6px}.toc{padding:25px 30px;background:var(--soft);margin:30px 0}.toc a{display:block;font-size:13px;padding-top:8px}.articlegrid article>section{padding:20px 0;scroll-margin-top:20px}.articlegrid article>section h2{font-size:24px;border-bottom:2px solid #d6dfb3;padding-bottom:12px}.articlegrid aside{align-self:start;position:sticky;top:20px}.articlegrid aside h3{font-size:16px}.articlegrid .cta{display:block}.articlegrid .cta>div+div{margin-top:20px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:100;padding:15px}@media(min-width:1500px){.herotext{padding-left:90px}}@media(max-width:760px){header{padding:14px 18px;gap:12px}.brand{font-size:19px}.sun{font-size:36px}.brand small{font-size:9px}.headcontact{display:none}.headline{margin-left:auto;font-size:11px;padding:9px 12px}.topnav{gap:10px 20px;font-size:11px;padding:12px}.hero{grid-template-columns:1fr;min-height:0}.herotext{padding:35px 25px 20px}h1{font-size:35px}h2{font-size:25px}.herotext>p:not(.eyebrow){font-size:13px}.heropic{height:340px;margin:0 20px 22px;border-radius:60px 6px 6px 6px}.heropic img{object-position:center 32%}.heropic span{font-size:14px;bottom:15px;left:15px}.wrap{padding:45px 22px}.benefits{grid-template-columns:1fr 1fr;padding:20px;font-size:12px}.worries,.story,.promise,.steps,.articlegrid,.cta{grid-template-columns:1fr}.story,.promise{gap:24px}.worries a{font-size:13px;padding:17px}.promise img{height:300px}.reverse img{order:0}.promise h3{font-size:21px;margin-top:0}.steps{gap:10px}.dirgrid{grid-template-columns:1fr 1fr;gap:15px 22px}.dirgrid h3{font-size:14px}.dirgrid a{font-size:12px}.pagehero h1{font-size:29px}.pagehero p{font-size:14px}.articlegrid{gap:25px}.articlegrid aside{position:static}.articlephoto{height:280px}.articlegrid article>section h2{font-size:22px}.articlegrid article>section p{font-size:15px}.cta{padding:25px 20px}.cta h2{font-size:21px}.directory h2{font-size:25px}}

.symptoms{width:100%;max-width:690px;display:block;margin:25px auto 0;border-radius:8px}

.manga-section{border-top:1px solid #e8e2ca}.manga-detail{margin:18px auto;max-width:850px;border:1px solid #dfd8c3;border-radius:7px;background:#fff}.manga-detail summary{padding:20px 24px;cursor:pointer;font-weight:bold;background:#fcf7de;border-radius:7px;font-size:18px}.manga-detail[open] summary{border-bottom:1px solid #dfd8c3}.manga-figure{padding:20px;max-width:820px;margin:auto}.manga-figure img{width:100%;height:auto;display:block}.article-manga h2{font-size:24px;margin:25px 0 10px}.article-manga .manga-figure{padding:0}summary:focus-visible{outline:3px solid #1469b1}@media(max-width:760px){.manga-detail summary{padding:16px;font-size:15px}.manga-figure{padding:8px}.manga-figure figcaption{padding:6px;font-size:11px}}

.calculator-section{margin:30px 0 45px;scroll-margin-top:20px}.calculator-section h2{font-size:25px;margin:0 0 10px}.calculator-section .intro{font-size:14px;margin-bottom:25px}.calculator{display:grid;grid-template-columns:1fr;overflow:hidden;border:1px solid #ddd7bd;border-radius:8px}.calculator form{padding:26px}.calculator h3{font-size:20px;margin:0 0 22px}.calculator label{display:block;font-size:14px;font-weight:bold}.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.calculator input{margin-top:7px;width:100%;min-width:0;border:1px solid #b9c4ad;border-radius:5px;padding:12px;color:var(--ink);background:white;font-family:inherit;font-size:16px;min-height:48px}.field-hint{font-size:12px;line-height:1.8;margin:10px 0 22px;color:#665d50}.number-input{display:flex;align-items:center;gap:12px;max-width:220px}.number-input input{flex:1;min-width:0}.calculate-button{font-family:inherit;font-size:16px;border:0;cursor:pointer;width:100%;margin-top:22px}.privacy-note{font-size:11px;text-align:center;margin:10px 0 0}.form-error{background:#fff0ed;border-left:3px solid #b22d16;color:#9b2213;padding:12px;font-size:14px;margin-top:15px}.calc-result{background:#f0f5e6;padding:28px;text-align:center}.result-label{font-weight:bold;margin:0 0 12px}.result-amount{display:flex;justify-content:center;align-items:baseline;gap:8px;font-weight:bold}.result-amount output{font-size:clamp(32px,6vw,50px);color:#4c711a;overflow-wrap:anywhere}.calc-result>#result-message{font-size:13px;margin:15px 0 20px}.result-breakdown{margin:0 0 20px}.result-breakdown div{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #ccd7b8;padding:10px 0;font-size:13px;text-align:left}.result-breakdown dd{margin:0;font-weight:bold}.result-formula{font-size:14px;font-weight:bold}.result-badge{font-size:12px;padding:7px;background:white;border:1px solid #ccd7b8;display:inline-block}.calc-notes{font-size:12px;color:#665d50;line-height:1.9;margin-top:20px}.calc-notes p{margin-bottom:10px}.calc-notes a{text-decoration:underline} @media(max-width:600px){.date-grid{grid-template-columns:1fr}.calculator form,.calc-result{padding:22px 18px}.result-breakdown div{font-size:12px}.calculator-section h2{font-size:22px}}

/* User-supplied logo, original pixels preserved; crop white file margins in CSS. */
header .brand-logo{position:relative;display:block;overflow:hidden;flex:none;width:54px;height:54px}header .brand-logo img{position:absolute;display:block;width:108px;height:108px;max-width:none;left:-27px;top:-17px;object-fit:contain}.topnav{position:sticky;top:0;z-index:30;box-shadow:0 2px 8px #513d3012}html{scroll-padding-top:86px}.articlegrid aside{top:90px}
@media(max-width:760px){header .brand-logo{width:40px;height:40px}header .brand-logo img{width:80px;height:80px;left:-20px;top:-12px}html{scroll-padding-top:96px}}

/* Phone calls use the same clear orange action treatment throughout. */
.headcontact a[href^="tel:"],.lp-contact a.phone,a.button[href^="tel:"]{display:block;background:#d96b10;color:#fff;padding:12px 16px;border-radius:4px;text-align:center;font-weight:800;text-decoration:none;line-height:1.4}
.headcontact a[href^="tel:"]:hover,.lp-contact a.phone:hover,a.button[href^="tel:"]:hover{background:#b85408;color:#fff}
.lp-contact a.phone:focus-visible,.headcontact a[href^="tel:"]:focus-visible{outline:3px solid #37442d;outline-offset:3px}

/* Editorial Japanese phrase units: keep words intact without changing copy. */
jp-phrase,jp-word{display:inline-block;white-space:nowrap;font:inherit;letter-spacing:inherit;vertical-align:baseline}
h1,h2,h3,summary{line-break:strict;overflow-wrap:normal;word-break:normal}
p,li,a,dt,dd,figcaption{line-break:strict;word-break:normal}
@media(max-width:760px){
.pagehero h1{font-size:clamp(25px,7.2vw,29px);line-height:1.55}
.articlegrid article>section h2{line-height:1.65}
.toc a,.dirgrid a,aside a{line-height:1.75}
.dirgrid a>span{float:none;padding-left:5px;white-space:nowrap}
.topnav a{white-space:nowrap}
.cta h2{line-height:1.65}
.brand>span:last-child{white-space:nowrap}
}

@media(max-width:359px){.fixedbar a{font-size:12px;white-space:nowrap;padding:13px 6px}}

