@charset "UTF-8";
:root{--navy:#152e40;--navy-deep:#102635;--orange:#bc481a;--orange-light:#f6a16f;--ink:#233746;--muted:#62727d;--line:#dce3e6;--pale:#f2f5f6;--white:#fff;--max:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #2087b6;outline-offset:6px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-feature-settings:"palt";overflow-wrap:anywhere}h2{font-size:clamp(1.65rem,2.65vw,2.35rem);line-height:1.65;letter-spacing:.035em}h3{font-size:1.2rem;line-height:1.75}em{font-style:normal}ul,ol{margin:0;padding:0;list-style:none}strong{font-weight:700}.container{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.section{padding:100px 0}.section-label{font-size:.78rem;font-weight:700;letter-spacing:.14em;color:var(--orange);margin-bottom:24px}.section-lead{margin-top:24px;color:var(--muted)}.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px}.mobile{display:none}.skip-link{position:fixed;top:-100px;left:16px;background:#fff;padding:10px;z-index:100}.skip-link:focus{top:10px}.header{min-height:92px;padding:18px 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;position:relative;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;line-height:1.35;font-weight:800;white-space:nowrap;font-size:1.03rem}.brand small{display:block;font-size:.65rem;letter-spacing:.25em;margin-top:4px}.brand-symbol{font-family:Georgia,serif;font-size:2.8rem;line-height:1;color:var(--orange);letter-spacing:-.14em;margin-right:5px}.header nav{display:flex;gap:28px;font-size:.875rem;font-weight:600}.header nav a:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:40px;padding:19px 28px;background:var(--orange);color:#fff;border-radius:4px;font-weight:700;line-height:1.6;box-shadow:0 4px 0 #8e3512;transition:background .2s,transform .2s}.button:hover{background:#a13b12;transform:translateY(-2px)}.button>span:last-child{font-size:1.45rem;font-weight:400}.button-small{font-size:.875rem;padding:12px 20px;gap:24px}.hero{background:var(--pale);position:relative;overflow:hidden}.hero::after{content:"";position:absolute;inset:0 0 0 65%;background:#e7eef1;transform:skewX(-12deg);transform-origin:bottom;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.32fr 1fr;gap:62px;align-items:center;padding-top:65px;padding-bottom:56px;position:relative;z-index:1}.eyebrow{font-size:.86rem;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:30px}.eyebrow>span{width:24px;height:2px;background:var(--orange)}.hero-intro{font-weight:700;font-size:1.25rem;letter-spacing:.06em;margin-bottom:12px}.hero h1{font-size:clamp(2.1rem,3.9vw,3.35rem);line-height:1.52;letter-spacing:.04em;font-weight:800}.hero h1 em{color:var(--orange);background:linear-gradient(transparent 85%,#edcebc 85%)}.hero-description{font-size:.94rem;margin-top:24px;line-height:2}.hero-button{margin-top:30px;width:100%;max-width:480px;justify-content:space-between;font-size:1.2rem}.hero-button small{display:block;font-size:.77rem;font-weight:500;margin-bottom:5px}.button-note{font-size:.75rem;color:var(--muted);margin-top:14px}.button-note span{padding:0 6px;color:#8c9aa3}.hero-story{background:#fff;box-shadow:0 16px 50px #17384c10;border:1px solid #d9e2e7;transform:rotate(1.3deg)}.story-top{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:700;gap:8px}.story-tag{font-family:Arial,sans-serif;color:var(--orange);font-size:.72rem;letter-spacing:.08em;white-space:nowrap}.story-before{padding:24px 32px 14px}.step-label{font-size:.72rem;letter-spacing:.15em;font-weight:700;color:var(--muted)}.story-before p{font-size:1.04rem;font-weight:700;margin:8px 0 12px}.thin-line{display:block;width:32px;height:1px;background:var(--line);margin-bottom:9px}.muted{font-size:.73rem;color:var(--muted)}.story-change{margin:10px 32px 0;padding:8px 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.story-change>span:last-child{font-size:1.8rem;color:var(--orange)}.story-after{padding:18px 32px 24px;background:#fcf4ee}.story-after .step-label{color:var(--orange)}.story-after p{font-size:1.04rem;line-height:1.65;margin-top:6px;font-weight:700}.story-after strong{display:block;font-size:3.6rem;line-height:1.3;color:var(--orange);letter-spacing:.02em}.story-after strong span{font-size:1rem;color:var(--ink);margin-left:10px}.story-after em{font-size:1.7rem;color:var(--orange)}.story-bottom{padding:22px 32px;font-size:.91rem}.story-bottom a{display:flex;justify-content:space-between;margin-top:16px;border-top:1px solid var(--line);padding-top:12px;font-size:.8rem}.hero-foot{padding:20px 0;border-top:1px solid #cbd6dc;display:flex;justify-content:space-between;position:relative;z-index:1;font-size:.8rem;letter-spacing:.05em}.hero-foot>span:last-child{font-family:Arial,sans-serif;font-size:.65rem;letter-spacing:.15em;color:var(--muted)}.check-list li{position:relative;border-bottom:1px solid var(--line);padding:17px 0 17px 31px;font-weight:600;font-size:.95rem}.check-list li:first-child{padding-top:0}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--orange);font-size:1.1rem}.problem-answer{text-align:center;padding:42px 32px;background:var(--pale);margin-top:55px;position:relative}.problem-answer:before{content:"";position:absolute;left:calc(50% - 14px);top:-14px;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:14px solid var(--pale)}.problem-answer p:last-child{margin-top:10px}.problem-answer strong{font-size:1.4rem;color:var(--orange)}.case{background:var(--navy);color:#fff}.case .section-label{color:var(--orange-light)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.outline-tag{border:1px solid #58707f;padding:6px 14px;font-size:.75rem;white-space:nowrap}.case-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:start}.case-text p{color:#d7e0e6;margin-bottom:20px;font-size:.95rem;line-height:2.1}.case-text strong{color:#fff}.case-text .case-result{border-left:3px solid var(--orange-light);padding-left:22px;margin-top:28px;margin-bottom:0;font-size:1.1rem}.case-result strong{font-size:1.3rem}.quote-wrap{background:#fff;color:var(--ink);padding:38px 36px 30px;position:relative;margin-top:12px}.quote-mark{position:absolute;font:6rem Georgia,serif;right:26px;top:-27px;color:var(--orange-light)}.quote-wrap .section-label{color:var(--orange);font-size:.8rem;letter-spacing:.05em;margin-bottom:22px}blockquote{margin:0}blockquote p{font-size:1.2rem;line-height:2.1;font-weight:600}blockquote footer{font-size:.8rem;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.case-note{font-size:.75rem;color:var(--muted);margin-top:22px;line-height:1.8}.center-heading{text-align:center}.center-heading>p:last-child{margin-top:26px;color:var(--muted)}.perspective{text-align:center;padding:38px 20px;margin-top:42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.perspective p:first-child{font-size:1.4rem;margin-bottom:12px}.perspective strong{color:var(--orange)}.perspective p:last-child{font-size:.93rem}.question-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:38px;gap:25px}.question-grid article{padding:30px 32px;background:var(--pale);border-left:2px solid #9cafbb}.question-grid article>span{font:700 .7rem Arial,sans-serif;letter-spacing:.12em;color:var(--orange)}.question-grid h3{margin:12px 0}.question-grid p{color:var(--muted);font-size:.9rem}.closing-line{margin-top:42px;text-align:center;font-size:.95rem}.closing-line strong{background:linear-gradient(transparent 75%,#f8e1d1 75%)}.pitfalls{background:var(--pale)}.pitfall-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:40px}.pitfall-grid article{border-top:2px solid var(--navy);padding-top:15px}.large-number{font:400 3.6rem Georgia,serif;color:#a6b6c0}.pitfall-grid h3{margin:12px 0 16px}.pitfall-grid p{color:var(--muted);font-size:.95rem}.pitfall-bottom{border-top:1px solid #ced8dd;margin-top:44px;padding-top:30px;text-align:center;font-size:.95rem}.support .split{align-items:center}.support h2+p{margin-top:24px}.support .split>div>p:not(.section-label){margin-bottom:18px;font-size:.95rem}.support-panel{border:1px solid var(--line);padding:30px}.panel-title{font-weight:700}.support-panel li{border-bottom:1px solid var(--line);padding:15px 0 15px 22px;font-size:.9rem;position:relative}.support-panel li:before{content:"—";position:absolute;left:0;color:var(--orange)}.support-panel .support-warning{margin:24px 0 0!important;font-size:.95rem}.support-warning strong{color:var(--orange)}.diagnosis{background:#edf3f5}.pre-heading{font-size:1.1rem;font-weight:600;margin-bottom:14px}.diagnosis h2 em{color:var(--orange);display:inline-block}.diagnosis-box{background:#fff;border-top:4px solid var(--navy);padding:38px 48px 0;margin-top:44px;box-shadow:0 8px 25px #16324805}.diagnosis-box>h3{text-align:center;font-size:1.4rem;margin-bottom:24px}.diagnosis-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.diagnosis-list li{display:flex;gap:20px;padding:26px 0;border-top:1px solid var(--line)}.diagnosis-list li>span{font:italic 1.8rem Georgia,serif;color:var(--orange)}.diagnosis-list h4{font-size:1.04rem;line-height:1.7;margin-bottom:8px}.diagnosis-list p{font-size:.875rem;color:var(--muted)}.diagnosis-meta{display:flex;justify-content:space-around;gap:20px;border-top:1px solid var(--line);padding:22px 0;font-size:.85rem;flex-wrap:wrap}.diagnosis-meta strong{margin-left:10px}.recommend{display:flex;justify-content:center;gap:55px;margin:34px 0}.recommend h3{font-size:1rem}.recommend ul{display:grid;grid-template-columns:1fr 1fr;gap:4px 25px;font-size:.85rem}.recommend li:before{content:"✓";color:var(--orange);margin-right:9px}.center-cta{text-align:center;margin-top:34px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.profile h2+p{margin-top:24px;font-size:.95rem}.profile-name{margin-top:30px;font-size:.8rem}.profile-name span{font-size:.8rem}.profile-name strong{font-size:1.35rem;margin-left:12px}.credentials{padding-top:32px}.stats{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;padding-bottom:30px}.stats>div>span{font-size:.84rem;display:block}.stats strong{display:block;font-family:Georgia,serif;font-size:3.7rem;line-height:1.5;color:var(--orange);white-space:nowrap}.stats small{font-family:"Yu Gothic",sans-serif;font-size:.85rem;margin-left:7px}.credential-row{display:flex;gap:25px;padding:20px 0;border-top:1px solid var(--line);font-size:.85rem}.credential-row>span{white-space:nowrap;color:var(--muted)}.credential-row small{display:block;font-size:.75rem}.faq{background:var(--pale)}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}.faq-grid>div>p:last-child{font-size:.9rem;margin-top:20px}.faq-list details{border-bottom:1px solid #ccd7dd;padding:22px 0}.faq-list details:first-child{border-top:1px solid #ccd7dd}.faq-list summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:18px;font-size:.96rem;font-weight:700;position:relative;padding-right:32px;line-height:1.8}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--orange);font:1.2rem Georgia,serif}.faq-list summary:after{content:"+";position:absolute;right:0;font-size:1.3rem;line-height:1.3;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{padding:18px 20px 0 35px;color:var(--muted);font-size:.9rem}.final-cta{background:var(--navy-deep);color:#fff;text-align:center}.final-cta .section-label{color:var(--orange-light);font-size:.9rem;letter-spacing:.08em}.final-cta h2{font-size:clamp(1.6rem,2.7vw,2.4rem)}.final-cta h2+p{margin:28px 0 34px;color:#d2dde4;line-height:2.1}.contact-box{border:1px solid #526b7c;max-width:630px;margin:auto;padding:28px 24px}.contact-box>p:first-child{font-size:.8rem}.contact-box h3{font-size:1.4rem;margin:6px 0 18px}.contact-pending{padding:12px;background:#eaf0f3;color:var(--navy);font-weight:700;border-radius:3px}.contact-note{font-size:.75rem;margin-top:16px;color:#d2dde4}.postscript{padding:55px 0;background:#f7f8f9}.postscript-inner{max-width:860px;display:flex;gap:30px}.postscript-inner>span{font-size:1.25rem;white-space:nowrap;font-weight:700}.postscript p{font-size:.9rem;color:var(--muted);margin-bottom:12px}.footer{display:flex;align-items:center;gap:30px;min-height:130px}.footer>p{font-size:.8rem;margin-left:auto}.footer>small{font-size:.75rem;color:var(--muted)}.back-top{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line)}.mobile-cta{display:none}
@media(min-width:1450px){.hero-grid{padding-top:85px;padding-bottom:70px}.hero h1{font-size:3.6rem}}
@media(max-width:1100px){.header nav{gap:18px;font-size:.8rem}.header{padding-inline:24px}.header .button{gap:15px}.hero-grid{gap:35px}.hero h1{font-size:2.8rem}.split,.case-grid,.profile-grid{gap:45px}.recommend{gap:30px}.recommend ul{grid-template-columns:1fr}.faq-grid{gap:40px}.stats strong{font-size:3.1rem}.story-top{padding-inline:18px}.hero-description{font-size:.875rem}}
@media(max-width:850px){.header nav{display:none}.container{width:calc(100% - 48px)}.section{padding:72px 0}.hero-grid{gap:30px;grid-template-columns:1.15fr 1fr}.hero h1{font-size:2.15rem}.hero-intro{font-size:1rem}.eyebrow{font-size:.75rem}.hero-description br.desktop{display:none}.hero-button{font-size:1rem;padding:16px 18px}.hero-button small{font-size:.7rem}.story-before,.story-after,.story-bottom{padding-left:22px;padding-right:22px}.story-top{display:block}.story-tag{display:block;margin-top:5px}.story-before p{font-size:.9rem}.story-change{margin-inline:22px;font-size:.7rem}.hero-foot>span:last-child{display:none}.split{gap:35px}.section-heading{display:block}.outline-tag{display:inline-block;margin-top:22px}.case-grid{gap:32px}.quote-wrap{padding:32px 26px}.quote-wrap blockquote p{font-size:1.02rem}.pitfall-grid{gap:24px}.pitfall-grid h3{font-size:1.06rem}.profile-grid{gap:36px}.stats{gap:15px}.stats strong{font-size:2.6rem}.stats small{font-size:.75rem}.diagnosis-box{padding-inline:30px}.diagnosis-list{gap:0 25px}.diagnosis-list li{gap:14px}.faq-grid{grid-template-columns:1fr;gap:28px}.footer{flex-wrap:wrap;gap:20px;padding-block:30px}.footer>p{display:none}.footer>small{margin-left:auto}}
@media(max-width:640px){html{scroll-padding-top:24px}.container{width:calc(100% - 40px)}.header{min-height:74px;padding:12px 20px;gap:12px}.brand{font-size:.87rem;gap:8px}.brand-symbol{font-size:2.3rem}.brand small{font-size:.58rem}.header .button-small{font-size:.75rem;padding:10px 12px;gap:8px}.header .button-small>span{display:none}.hero-grid{grid-template-columns:1fr;padding-top:38px;padding-bottom:32px;gap:38px}.hero::after{inset:52% 0 0 50%;transform:skewX(-14deg)}.eyebrow{margin-bottom:22px;font-size:.75rem;gap:8px}.hero-intro{font-size:1.05rem}.hero h1{font-size:clamp(2.05rem,7.7vw,3rem);letter-spacing:.01em;line-height:1.55}.hero-description{font-size:.9rem;margin-top:20px;line-height:2}.hero-button{max-width:none;font-size:1.14rem;padding:17px 21px;gap:15px;margin-top:26px}.hero-button small{font-size:.73rem}.button-note{font-size:.75rem;line-height:1.8}.button-note span{padding:0 2px}.hero-story{transform:none;margin-inline:5px}.story-top{display:flex;padding:14px 22px;font-size:.75rem}.story-tag{margin:0}.story-before{padding-top:22px}.story-before p{font-size:1rem}.story-change{font-size:.8rem}.story-after p{font-size:1rem}.story-after strong{font-size:3rem}.story-after{padding-top:14px;padding-bottom:20px}.story-bottom{font-size:.9rem;padding-top:20px;padding-bottom:20px}.hero-foot{font-size:.75rem;padding:17px 0}.section{padding:60px 0}.section-label{font-size:.73rem;margin-bottom:18px}.split,.case-grid,.profile-grid{grid-template-columns:1fr;gap:30px}h2{font-size:1.65rem;line-height:1.7;letter-spacing:.015em}.section-lead{font-size:.9rem;margin-top:18px}.check-list li{font-size:.92rem;padding-block:16px}.problem-answer{padding:30px 18px;margin-top:38px;font-size:.9rem}.problem-answer strong{font-size:1.18rem}.mobile{display:block}.section-heading{margin-bottom:30px}.outline-tag{font-size:.75rem;white-space:normal}.case-text p{font-size:.94rem}.case-text .case-result{font-size:1rem}.case-result strong{font-size:1.15rem}.quote-wrap{margin-top:12px;padding:30px 25px}.quote-wrap blockquote p{font-size:1.1rem}.center-heading{text-align:left}.center-heading>p:last-child{font-size:.9rem;margin-top:22px}.center-heading>p:last-child br{display:none}.perspective{padding:28px 0;text-align:left;margin-top:28px}.perspective p:first-child{font-size:1.13rem}.perspective p:last-child br{display:none}.question-grid{grid-template-columns:1fr;gap:16px;margin-top:25px}.question-grid article{padding:25px}.question-grid h3{font-size:1.12rem}.closing-line{text-align:left;margin-top:28px;font-size:.9rem}.closing-line br{display:none}.pitfall-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.pitfall-grid article{display:grid;grid-template-columns:56px 1fr;column-gap:16px;padding-top:20px}.large-number{font-size:2.8rem;grid-row:1/3}.pitfall-grid h3{font-size:1.12rem;margin-top:0;margin-bottom:12px}.pitfall-grid h3 br{display:none}.pitfall-grid p{font-size:.9rem;grid-column:2}.pitfall-bottom{text-align:left;margin-top:30px;font-size:.9rem}.support-panel{padding:24px}.support .split>div>p:not(.section-label){font-size:.93rem}.pre-heading{font-size:.93rem}.diagnosis-box{padding:26px 23px 0;margin-top:30px}.diagnosis-box>h3{font-size:1.2rem}.diagnosis-list{grid-template-columns:1fr}.diagnosis-list li{padding:22px 0;gap:16px}.diagnosis-list h4{font-size:1rem}.diagnosis-meta{display:grid;justify-content:start;gap:8px;font-size:.8rem;padding-block:20px}.recommend{display:block;margin-top:26px}.recommend h3{margin-bottom:12px}.recommend ul{font-size:.85rem;gap:8px}.center-cta .button{width:100%;font-size:.95rem;text-align:left;padding:18px 20px;gap:15px}.center-cta .button-note{text-align:left}.credentials{padding-top:0}.stats{gap:24px}.stats strong{font-size:3.4rem}.stats small{font-size:.8rem}.credential-row{gap:20px}.profile-name{margin-top:22px}.faq-grid{gap:24px}.faq-list summary{font-size:.93rem;gap:14px}.faq-list details>p{padding-left:28px;font-size:.9rem}.final-cta h2{font-size:1.58rem}.final-cta h2+p{font-size:.9rem;text-align:left;margin-top:24px}.final-cta h2+p br{display:none}.final-cta .section-label{font-size:.78rem}.contact-box{padding:23px 18px}.contact-box h3{font-size:1.3rem}.contact-box>p:first-child{font-size:.75rem}.contact-pending{font-size:.9rem}.postscript{padding:36px 0}.postscript-inner{display:block}.postscript-inner>span{display:block;margin-bottom:16px}.postscript p{font-size:.85rem}.footer{padding-top:28px;padding-bottom:110px;gap:16px}.footer>small{font-size:.7rem}.back-top{width:34px;height:34px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;background:#ffffffed;padding:10px 16px max(12px,env(safe-area-inset-bottom));z-index:20;box-shadow:0 -2px 15px #132e4010}.mobile-cta .button{width:100%;padding:13px 16px;gap:15px;font-size:.9rem;justify-content:space-between}.mobile-cta .button>span:last-child{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Illustrated edition — supplied main visual and original section artwork. */
:root {
  --orange: #b94708;
  --orange-light: #ffb16b;
  --pale: #fff8ef;
  --ink: #24313e;
  --line: #e6e4df;
}
img { max-width: 100%; height: auto; vertical-align: middle; }
figure { margin: 0; }
.brand-logo { width: 43px; height: 43px; object-fit: contain; }
.header { min-height: 84px; padding-block: 14px; }
.header .brand { color: #075c73; }
.section { padding: 88px 0; }
.section-label { letter-spacing: .1em; }
.button { background: linear-gradient(110deg, #c54f0c, #b64306); border-radius: 7px; box-shadow: 0 4px 0 #903709, 0 7px 18px #b9470814; }
.button:hover { background: #a93c04; }
.hero-illustrated { background: #fff; overflow: visible; }
.hero-illustrated::after { display: none; }
.main-visual { max-width: 1400px; margin: 0 auto; }
.main-visual img { display: block; width: 100%; height: auto; }
.hero-accessible-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.hero-action { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 45px; padding: 30px 0 40px; }
.hero-action-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 8px; }
.hero-action p:not(.hero-action-title):not(.button-note) { font-size: .94rem; }
.hero-action .hero-button { margin-top: 0; max-width: none; }
.hero-action .button-note { text-align: center; font-size: .78rem; }
.trust-strip { background: var(--navy); color: #fff; }
.trust-strip .container { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-block: 20px; }
.trust-strip p { font-weight: 600; font-size: .94rem; }
.trust-strip span { display: flex; align-items: baseline; gap: 15px; font-size: .8rem; color: #dfe7eb; }
.trust-strip strong { font-size: 1.25rem; color: #fff; }
.trust-strip small { font-size: .8rem; margin-left: 5px; }
.section-art { display: block; width: 100%; object-fit: contain; }
.problem .split { gap: 60px; align-items: center; }
.problem .section-art { max-width: 440px; margin: 20px auto 0; }
.check-list { background: #fff9f2; border: 1px solid #f4e8dc; border-radius: 14px; padding: 24px 28px; }
.check-list li { font-size: 1rem; line-height: 1.9; }
.check-list li:first-child { padding-top: 8px; }
.check-list li:last-child { border: 0; padding-bottom: 8px; }
.problem-answer { margin-top: 40px; border-radius: 12px; }
.case { background: #fff6eb; color: var(--ink); }
.case .section-label { color: var(--orange); }
.case .outline-tag { border-color: #dec9b1; color: #7b5836; border-radius: 4px; }
.case-grid { align-items: start; gap: 55px; }
.case-text p { color: #4d5960; font-size: 1rem; }
.case-text strong { color: var(--ink); }
.case-text .case-result { border-left-color: var(--orange); }
.case-result strong { color: var(--orange); }
.case-aside { background: #fff; border: 1px solid #f0e2d1; border-radius: 16px; overflow: hidden; }
.case-art { padding: 8px 28px 0; }
.case-art img { height: 225px; }
.case-art figcaption { text-align: right; color: var(--muted); font-size: .75rem; }
.quote-wrap { margin: 0; padding: 26px 30px; background: transparent; }
.quote-mark { top: -5px; right: 22px; font-size: 4.5rem; }
.quote-wrap blockquote p { font-size: 1.04rem; line-height: 2; }
.quote-wrap .section-label { margin-bottom: 14px; }
.quote-wrap blockquote footer { margin-top: 18px; padding-top: 16px; }
.case-note { margin-top: 15px; }
.perspective { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 36px; text-align: left; padding: 24px 0; }
.perspective .section-art { max-height: 300px; }
.perspective p:first-child { font-size: 1.4rem; }
.perspective p:last-child { font-size: 1rem; }
.perspective p br { display: none; }
.question-grid { gap: 20px; }
.question-grid article { border: 1px solid #ecdfd0; background: #fffbf5; border-radius: 12px; }
.question-grid article>span { color: var(--orange); }
.question-grid p { font-size: .96rem; }
.pitfalls { background: #f6f8f9; }
.pitfalls-art { width: min(800px, 100%); height: 285px; margin: 28px auto 12px; background: #fff; border-radius: 16px; }
.pitfall-grid { margin-top: 28px; gap: 24px; }
.pitfall-grid article { background: #fff; border: 1px solid #e3e8eb; border-top: 3px solid #db7a34; border-radius: 10px; padding: 22px 26px 28px; }
.large-number { color: #d9a678; font-size: 2.8rem; }
.pitfall-grid h3 { font-size: 1.18rem; }
.pitfall-grid p { font-size: .96rem; }
.support .split { align-items: start; gap: 55px; }
.support .split>div>p:not(.section-label) { font-size: 1rem; }
.support-visual .section-art { height: 250px; margin-bottom: 14px; }
.support-panel { border-radius: 12px; background: #f6f9fa; padding: 26px; }
.support-panel li { font-size: .94rem; }
.diagnosis { background: #fff7eb; }
.diagnosis-art { width: min(480px, 100%); max-height: 300px; margin: 30px auto 0; border-radius: 50% 50% 12px 12px; }
.diagnosis-box { margin-top: 22px; border-top-color: var(--orange); border-radius: 12px; box-shadow: 0 12px 35px #75503008; }
.diagnosis-list p { font-size: .94rem; }
.diagnosis-meta { font-size: .9rem; }
.recommend ul { font-size: .94rem; }
.profile { background: #fff; }
.profile-intro { display: grid; grid-template-columns: .82fr 1.18fr; gap: 65px; align-items: center; }
.profile-photo { position: relative; }
.profile-photo>img { width: 100%; aspect-ratio: 4/4.3; object-fit: cover; object-position: 20% center; border-radius: 12px; }
.profile-photo figcaption { font-size: .75rem; color: var(--muted); padding-top: 10px; }
.profile-intro .profile-name { display: flex; align-items: center; gap: 22px; margin: 24px 0 20px; }
.profile-name strong { margin: 0; font-size: 1.65rem; }
.profile-name span { font-size: .75rem; letter-spacing: .09em; color: #7c898e; }
.profile-intro p:not(.profile-name) { font-size: 1rem; }
.profile-intro .stats { margin-top: 26px; padding: 20px 0 0; border-top: 1px solid var(--line); }
.stats strong { font-size: 3.2rem; }
.profile-evidence { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 45px; }
.book-feature { background: #f4f7f9; border-radius: 12px; padding: 26px; display: flex; gap: 28px; align-items: center; }
.book-feature>img { width: 135px; height: auto; box-shadow: 4px 7px 15px #0a243126; }
.book-feature h3 { font-size: 1.1rem; }
.book-feature p:last-child { margin-top: 14px; font-size: .88rem; color: var(--muted); }
.profile-evidence .section-label { margin-bottom: 10px; }
.seminar-feature { position: relative; overflow: hidden; border-radius: 12px; }
.seminar-feature>img { width: 100%; height: 100%; min-height: 270px; object-fit: cover; }
.seminar-feature>div { position: absolute; inset: auto 0 0; background: linear-gradient(transparent,#102635ee); color: white; padding: 40px 26px 22px; }
.seminar-feature .section-label { color: #ffb16b; }
.seminar-feature h3 { font-size: 1.03rem; }
.faq { background: #f5f8fa; }
.faq-art { margin-top: 25px; max-height: 225px; border-radius: 12px; }
.faq-list { padding: 0 26px; background: #fff; border-radius: 12px; }
.faq-list details:first-child { border-top: 0; }
.faq-list details:last-child { border-bottom: 0; }
.faq-list summary { font-size: 1rem; }
.faq-list details>p { font-size: .96rem; }
.final-cta { background: #102d40; padding-top: 65px; }
.final-art-wrap { width: 250px; margin: 0 auto 30px; background: #fff; border: 8px solid #ffffff12; border-radius: 90px 90px 18px 18px; overflow: hidden; }
.final-art { height: 160px; }
.contact-box { border-radius: 10px; background: #ffffff08; }
.postscript { background: #fff9f2; }
.footer .brand { color: #075c73; }
@media(max-width:1000px) {
  .hero-action { gap: 28px; }
  .hero-action-title { font-size: 1.1rem; }
  .hero-action .button-note { font-size: .75rem; }
  .trust-strip p { max-width: 220px; }
  .profile-intro { gap: 36px; }
  .book-feature { gap: 20px; padding: 24px; }
  .book-feature>img { width: 110px; }
  .profile-intro h2 { font-size: 1.8rem; }
}
@media(max-width:850px) {
  .hero-action { grid-template-columns: 1fr; text-align: center; gap: 23px; }
  .hero-action .hero-button { max-width: 520px; }
  .trust-strip .container { gap: 18px; }
  .trust-strip p { display: none; }
  .problem .split,.support .split { gap: 30px; }
  .check-list { padding: 20px; }
  .profile-evidence { gap: 22px; }
  .book-feature { gap: 18px; }
  .book-feature h3 { font-size: 1rem; }
  .book-feature>img { width: 95px; }
}
@media(max-width:640px) {
  .section { padding: 58px 0; }
  .header { min-height: 72px; }
  .brand-logo { width: 34px; height: 34px; }
  .main-visual { padding-top: 6px; }
  .hero-accessible-title { position: static; width: auto; height: auto; margin: 15px 20px 0; clip-path: none; white-space: normal; overflow: visible; }
  .hero .hero-accessible-title { font-size: clamp(1.4rem,5.6vw,2rem); line-height: 1.75; letter-spacing: .01em; }
  .hero .hero-accessible-title em { color: var(--orange); background: linear-gradient(transparent 80%, #ffe2c4 80%); }
  .hero-action { text-align: left; padding: 25px 0 30px; gap: 23px; }
  .hero-action-title { font-size: 1rem; }
  .hero-action p:not(.hero-action-title):not(.button-note) { font-size: .94rem; }
  .hero-action .hero-button { font-size: 1.13rem; }
  .hero-action .button-note { text-align: left; font-size: .75rem; }
  .trust-strip .container { padding-block: 15px; justify-content: space-between; gap: 16px; }
  .trust-strip span { display: block; font-size: .75rem; }
  .trust-strip strong { display: block; font-size: 1.05rem; }
  .problem .section-art { max-height: 230px; margin-top: 15px; }
  .problem .split { gap: 20px; }
  .check-list { padding: 18px 22px; }
  .check-list li { font-size: .95rem; }
  .problem-answer { margin-top: 30px; }
  .case-grid { gap: 28px; }
  .case-text p { font-size: .96rem; }
  .case-art { padding: 10px 22px 0; }
  .case-art img { height: 200px; }
  .quote-wrap { padding: 24px; }
  .quote-wrap blockquote p { font-size: 1.02rem; }
  .perspective { grid-template-columns: 1fr; gap: 15px; padding: 20px 0 26px; }
  .perspective .section-art { max-height: 220px; }
  .perspective p:first-child { font-size: 1.2rem; }
  .perspective p:last-child { font-size: .94rem; }
  .question-grid article { padding: 24px; }
  .pitfalls-art { height: auto; margin-top: 22px; }
  .pitfall-grid { gap: 18px; }
  .pitfall-grid article { padding: 22px 20px; column-gap: 12px; }
  .pitfall-grid h3 { font-size: 1.1rem; }
  .pitfall-grid p { font-size: .94rem; }
  .support-visual .section-art { height: 225px; }
  .support .split>div>p:not(.section-label) { font-size: .96rem; }
  .support-panel { padding: 22px; }
  .diagnosis-art { max-height: 225px; margin-top: 22px; }
  .diagnosis-box { margin-top: 18px; }
  .diagnosis-meta { font-size: .85rem; }
  .recommend ul { font-size: .9rem; }
  .profile-intro { grid-template-columns: 1fr; gap: 26px; }
  .profile-photo { max-width: 430px; width: 100%; }
  .profile-photo>img { aspect-ratio: 4/3; object-position: center; }
  .profile-intro h2 { font-size: 1.6rem; }
  .profile-intro .profile-name { gap: 18px; margin-block: 20px 16px; }
  .profile-name strong { font-size: 1.5rem; }
  .profile-intro p:not(.profile-name) { font-size: .96rem; }
  .profile-intro .stats { margin-top: 22px; }
  .stats strong { font-size: 2.8rem; }
  .profile-evidence { grid-template-columns: 1fr; margin-top: 30px; gap: 22px; }
  .book-feature { padding: 25px; gap: 25px; }
  .book-feature>img { width: 110px; }
  .book-feature h3 { font-size: 1rem; }
  .seminar-feature>img { height: 255px; min-height: 0; }
  .faq-art { max-height: 175px; width: 260px; margin: 18px auto 0; }
  .faq-list { padding: 0 20px; }
  .faq-list summary { font-size: .94rem; }
  .faq-list details>p { font-size: .94rem; }
  .final-cta { padding-top: 45px; }
  .final-art-wrap { width: 210px; margin-bottom: 25px; }
  .final-art { height: 135px; }
}

/* Readability: short Japanese headings, meaningful icons and visual sequences. */
.section-index { display: inline-flex; align-items: center; gap: 12px; font-size: 1rem; letter-spacing: .04em; color: var(--navy); font-weight: 800; }
.section-index>span { display: grid; place-items: center; width: 38px; height: 38px; flex-shrink: 0; background: var(--orange); color: #fff; border-radius: 50%; font: 700 .85rem Arial,sans-serif; }
.case .section-index { color: var(--navy); }
h2 { font-weight: 800; line-height: 1.6; }
.ui-icon { width: 27px; height: 27px; flex: 0 0 auto; }
.icon-disc { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; flex: 0 0 54px; color: var(--orange); background: #fff0dc; border-radius: 14px; }
.scan-list { background: #fffaf4; }
.scan-list li { display: flex; align-items: center; gap: 18px; padding: 20px 0; }
.scan-list li::before { content: none; }
.scan-list strong { display: block; font-size: 1.18rem; line-height: 1.55; color: var(--navy); }
.scan-list p { font-size: .94rem; font-weight: 400; line-height: 1.8; color: var(--muted); margin-top: 6px; }
.visual-flow { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; margin: 30px 0 40px; }
.visual-flow>li { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; background: #fff; border: 1px solid #e7dbcd; border-radius: 12px; padding: 25px 18px; }
.visual-flow>li:not(:last-child)::after { content: '→'; position: absolute; right: -30px; top: calc(50% - 18px); font-size: 1.5rem; color: var(--orange); font-weight: 700; }
.visual-flow strong { display: block; font-size: 1.12rem; line-height: 1.65; margin-top: 12px; }
.visual-flow p { color: var(--muted); font-size: .9rem; line-height: 1.7; margin-top: 6px; }
.case-flow>li:last-child { border: 2px solid var(--orange); background: #fff9ef; }
.case-flow>li:last-child strong { color: var(--orange); }
.compare-flow { margin-top: 32px; }
.compare-flow>li { background: #f6f9fa; border-color: #dbe3e8; }
.card-heading { display: flex; align-items: center; gap: 18px; }
.question-grid .card-heading h3 { font-size: 1.42rem; margin: 0; color: var(--navy); }
.question-grid article { background: #fff; border: 1px solid #e3dfd9; border-top: 4px solid #d87937; }
.question-grid .card-question { color: var(--ink); font-size: 1.05rem; font-weight: 700; margin: 18px 0 8px; }
.pitfall-grid .card-heading { justify-content: space-between; gap: 10px; }
.pitfall-number { font-size: .875rem; font-weight: 700; color: var(--muted); }
.pitfall-grid h3 { font-size: 1.3rem; color: var(--navy); padding-bottom: 15px; border-bottom: 1px solid var(--line); margin-top: 20px; }
.support-flow { gap: 20px; margin: 20px 0 26px; }
.support-flow>li { padding: 18px 7px; }
.support-flow .icon-disc { width: 40px; height: 40px; flex-basis: 40px; border-radius: 10px; }
.support-flow .ui-icon { width: 24px; height: 24px; }
.support-flow strong { font-size: .95rem; }
.support-flow p { font-size: .8rem; }
.support-flow>li:not(:last-child)::after { right: -18px; font-size: 1rem; }
.panel-title { font-size: 1.15rem; line-height: 1.7; padding-bottom: 12px; border-bottom: 2px solid #c7d5dc; }
.diagnosis-box>h3 { font-size: 1.65rem; font-weight: 800; }
.diagnosis-box>h3 em { color: var(--orange); }
.diagnosis-list { gap: 20px; padding: 4px 0 28px; }
.diagnosis-list li { background: #fff8ee; border: 1px solid #f0dfcb; border-radius: 10px; padding: 25px; gap: 18px; }
.diagnosis-list li>.icon-disc { color: var(--orange); font: inherit; background: white; }
.diagnosis-number { font-size: .85rem; color: var(--orange); font-weight: 700; }
.diagnosis-list h4 { font-size: 1.26rem; margin: 6px 0 10px; }
.diagnosis-meta { background: #f4f7f8; margin-inline: -48px; padding-inline: 24px; border-radius: 0 0 12px 12px; }
.faq-list details>p>strong { display: block; margin-bottom: 8px; color: var(--orange); font-size: 1.03rem; }
.final-button { width: 100%; font-size: 1.2rem; margin: 5px 0; }
@media(max-width:1100px) {
  .header nav { gap: 16px; }
  .header { gap: 18px; }
  .diagnosis-list li { padding: 20px; }
  .diagnosis-list h4 { font-size: 1.15rem; }
}
@media(max-width:850px) {
  .diagnosis-meta { margin-inline: -30px; }
  .support-flow { grid-template-columns: 1fr; gap: 25px; }
  .support-flow>li { display: grid; grid-template-columns: 40px 1fr; text-align: left; gap: 0 14px; padding: 15px; }
  .support-flow .icon-disc { grid-row: 1/3; }
  .support-flow strong { margin: 0; }
  .support-flow p { margin-top: 2px; }
  .support-flow>li:not(:last-child)::after { content: '↓'; right: calc(50% - 8px); top: auto; bottom: -26px; }
  .scan-list li { gap: 12px; }
  .scan-list strong { font-size: 1.06rem; }
  .visual-flow strong { font-size: 1rem; }
}
@media(max-width:640px) {
  .header { flex-wrap: wrap; justify-content: space-between; padding: 12px 16px; gap: 12px; }
  .header .brand { font-size: .84rem; }
  .header .button-small { font-size: .75rem; padding: 10px 12px; margin-left: auto; }
  .section-index { font-size: .93rem; gap: 10px; }
  .section-index>span { width: 33px; height: 33px; font-size: .8rem; }
  .icon-disc { width: 45px; height: 45px; flex-basis: 45px; border-radius: 12px; }
  .ui-icon { width: 25px; height: 25px; }
  .scan-list li { padding: 18px 0; align-items: flex-start; gap: 13px; }
  .scan-list strong { font-size: 1.08rem; }
  .scan-list p { font-size: .94rem; }
  .visual-flow { grid-template-columns: 1fr; gap: 26px; margin: 25px 0 30px; }
  .visual-flow>li { display: grid; grid-template-columns: 45px 1fr; text-align: left; align-items: center; column-gap: 18px; padding: 20px; }
  .visual-flow .icon-disc { grid-row: 1/3; }
  .visual-flow strong { font-size: 1.08rem; margin: 0; }
  .visual-flow p { font-size: .875rem; margin-top: 3px; }
  .visual-flow>li:not(:last-child)::after { content: '↓'; right: calc(50% - 9px); top: auto; bottom: -29px; font-size: 1.3rem; }
  .question-grid .card-heading h3 { font-size: 1.3rem; }
  .question-grid .card-question { font-size: 1.02rem; margin-top: 16px; }
  .pitfall-grid article { display: block; padding: 24px; }
  .pitfall-grid h3 { font-size: 1.22rem; margin: 18px 0 14px; }
  .support-flow .icon-disc { width: 45px; height: 45px; }
  .diagnosis-box>h3 { font-size: 1.28rem; }
  .diagnosis-list { gap: 14px; padding-bottom: 22px; }
  .diagnosis-list li { padding: 18px 14px; gap: 12px; }
  .diagnosis-list h4 { font-size: 1.12rem; }
  .diagnosis-list .icon-disc { width: 38px; height: 38px; flex-basis: 38px; }
  .diagnosis-list .ui-icon { width: 23px; height: 23px; }
  .diagnosis-meta { margin-inline: -23px; padding-inline: 23px; }
  .final-button { font-size: 1.08rem; gap: 15px; padding: 17px 16px; }
  .footer .brand { font-size: .85rem; }
}

/* Persistent diagnosis banner on desktop and mobile. */
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.sticky-diagnosis { position: fixed; inset: auto 0 0; z-index: 30; display: flex; justify-content: center; align-items: center; gap: 36px; padding: 14px 24px max(17px, env(safe-area-inset-bottom)); background: #fffffffa; border-top: 1px solid #e5d6c5; box-shadow: 0 -4px 20px #152e4012; }
.sticky-diagnosis-copy { display: flex; flex-direction: column; line-height: 1.6; }
.sticky-diagnosis-copy strong { font-size: 1rem; }
.sticky-diagnosis-copy>span { font-size: .85rem; color: var(--muted); margin-top: 3px; }
.sticky-diagnosis .button { padding: 13px 28px; min-width: 290px; gap: 30px; }
.sticky-diagnosis .button>span[aria-hidden] { font-size: 1.4rem; font-weight: 400; }
.footer { padding-bottom: 120px; }
html { scroll-padding-bottom: 120px; }
@media(max-width:850px) { .sticky-diagnosis { gap: 20px; } .sticky-diagnosis-copy strong { font-size: .9rem; } .sticky-diagnosis .button { min-width: 240px; } }
@media(max-width:640px) {
  .sticky-diagnosis { padding: 10px 16px max(13px, env(safe-area-inset-bottom)); }
  .sticky-diagnosis-copy { display: none; }
  .sticky-diagnosis .button { width: 100%; min-width: 0; justify-content: space-between; font-size: 1rem; padding: 13px 20px; }
  .footer { padding-bottom: 110px; }
}
