:root{--ink:#3d3534;--muted:#716362;--rose:#a64251;--rose-dark:#883341;--blush:#f7edef;--line:#e6d8da;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #25584c;outline-offset:5px}em{font-style:normal;color:var(--rose)}strong{font-weight:700}.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.13em;color:var(--rose);margin-bottom:22px}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.65;letter-spacing:.05em}h2{font-size:36px}h3{font-size:19px;line-height:1.7}p+p{margin-top:22px}.small{font-size:14px;color:var(--muted)}.micro{font-size:12px;color:var(--muted);text-align:center;margin-top:10px}.preview-note{font-size:12px;text-align:center;background:#f0eeee;color:#655657;padding:5px 12px;line-height:1.5}.header{height:86px;display:flex;justify-content:space-between;align-items:center;max-width:1280px;margin:auto;padding:0 48px}.brand{font-family:Georgia,serif;font-size:34px;line-height:1;letter-spacing:.12em;text-decoration:none;color:var(--rose)}.brand span{font:12px var(--sans);letter-spacing:.1em;margin-left:15px;color:var(--ink)}.header-link{font-size:14px;text-decoration:none;border-bottom:1px solid var(--line)}.skip{position:fixed;top:-70px;left:10px;z-index:100;background:#fff;padding:12px}.skip:focus{top:10px}.hero{position:relative;max-width:1440px;margin:auto;min-height:690px;background:#faf7f5;overflow:hidden}.hero-picture{position:absolute;inset:0 0 0 35%}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#faf7f5,transparent 45%)}.hero-main{position:relative;z-index:1;padding:65px 0 55px max(48px,calc((100% - 1120px)/2));width:62%}h1{font-size:48px}.hero-sub{font-family:var(--serif);font-size:26px;line-height:1.7;margin-top:22px;letter-spacing:.08em}.hero-detail{margin-top:26px;line-height:1.9}.hero-action{max-width:390px;margin-top:28px}.cta{display:flex;align-items:center;justify-content:center;gap:14px;border:0;border-radius:5px;background:var(--rose);color:#fff;min-height:62px;padding:16px 22px;line-height:1.5;font-size:16px;letter-spacing:.02em;font-weight:700;width:100%;text-decoration:none;box-shadow:0 4px 0 #7a2d3c;transition:background .2s,transform .2s}.cta:hover{background:var(--rose-dark);transform:translateY(-1px)}.cta>span:last-child{margin-left:auto}.chat-mark{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:white;color:var(--rose);width:24px;height:21px;border-radius:50%;font-size:12px;letter-spacing:0;position:relative}.chat-mark:after{content:'';position:absolute;bottom:-3px;left:5px;border:4px solid transparent;border-left-color:#fff}.image-label{position:absolute;bottom:14px;right:22px;font-size:12px;background:#ffffffd9;color:#665857;padding:2px 8px;z-index:1}.hero-side{position:absolute;right:16px;top:24px;writing-mode:vertical-rl;letter-spacing:.15em;font-size:11px;color:#756661}.mobile-only{display:none}.promise-strip{display:flex;align-items:center;justify-content:center;gap:0;padding:22px 20px;border-bottom:1px solid var(--line);font-size:14px;letter-spacing:.04em}.promise-strip span{padding-inline:34px}.promise-strip span+span{border-left:1px solid var(--line)}.story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:84px}.story-photo{position:relative;padding:0 0 15px 22px}.story-photo img{aspect-ratio:4/5;object-fit:cover;border-radius:140px 140px 4px 4px}.story-photo figcaption{font-size:12px;text-align:right;color:var(--muted);margin-top:6px}.photo-word{position:absolute;bottom:60px;left:-10px;font-family:Georgia,serif;font-style:italic;font-size:44px;color:var(--rose);transform:rotate(-8deg);background:#fffc;padding-inline:8px}.worries{list-style:none;padding:0;margin:28px 0}.worries li{padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.worries li:before{content:'—';color:var(--rose);margin-right:12px}.story-resolution{line-height:2.1}.story-resolution strong{background:linear-gradient(transparent 65%,#efdadd 0);padding-bottom:2px}.approach{background:var(--blush);text-align:center}.section-lead{margin:24px auto 45px;line-height:2}.approach-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;text-align:left}.approach-grid figure img{aspect-ratio:1/1;object-fit:cover;border-radius:5px}.approach-grid figcaption{font-size:12px;color:var(--muted);margin-top:10px}.approach-list article{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid #deccd0}.approach-list article:last-child{border-bottom:0}.number{font-family:Georgia,serif;color:var(--rose);font-size:38px;line-height:1.2}.approach-list p{color:var(--muted);margin-top:10px}.disclaimer{font-size:12px;color:var(--muted);margin:35px auto 0;max-width:730px}.support{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.support-copy h2{margin-bottom:28px}.support-copy strong{color:var(--rose)}.chat-panel{background:#f4f2ee;border:1px solid #e2dcd7;border-radius:26px;padding:30px;box-shadow:10px 16px 0 #f9f1f2}.chat-heading{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700;padding-bottom:20px;border-bottom:1px solid #dfdad3}.chat-heading small{display:block;font-size:12px;color:var(--muted);font-weight:400}.chat-avatar{font-family:Georgia,serif;font-size:28px;color:var(--rose);width:48px;height:48px;display:grid;place-items:center;background:#fff;border-radius:50%}.bubble{font-size:15px;line-height:1.8;border-radius:14px;padding:17px 20px;max-width:90%;margin-top:24px}.customer{margin-left:auto;background:#e1e8de;border-bottom-right-radius:2px}.advisor{background:white;margin-right:auto;border-bottom-left-radius:2px}.chat-caption{font-size:12px;color:var(--muted);margin-top:26px}.how{background:#fcf8f8;text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);padding:0;list-style:none;margin:45px 0;gap:35px}.steps li{position:relative;padding:0 20px}.steps li+li{border-left:1px solid var(--line)}.steps span{color:var(--rose);letter-spacing:.13em;font-size:12px;border-bottom:1px solid var(--rose);padding-bottom:5px;display:inline-block;margin-bottom:20px}.steps p{font-size:15px;color:var(--muted);margin-top:17px}.center-action{max-width:390px;margin:auto}.plan{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.plan-copy h2{margin-bottom:24px}.terms{margin:32px 0 10px}.terms div{display:grid;grid-template-columns:110px 1fr;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.terms dt{font-weight:700}.terms dd{margin:0}.plan-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fffcfc}.plan-art{position:relative}.plan-art img{width:100%}.price-overlay{position:absolute;top:5%;inset-inline:15px;text-align:center}.plan-label{font-size:15px;letter-spacing:.1em}.price-first{display:flex;justify-content:center;align-items:baseline;gap:8px;color:var(--rose);font-size:16px;margin-top:0}.price-first strong{font-family:Georgia,serif;font-size:64px;font-weight:400;letter-spacing:-.04em;line-height:1.35}.price-first span{font-size:20px}.price-repeat{font-size:16px;margin-top:0}.plan-sub{font-size:13px;margin-top:9px}.plan-note{font-size:12px;text-align:center;color:var(--muted);padding:12px 20px 0}.review-condition{font-size:12px;color:#775950;padding:10px 20px 18px;margin-top:0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding-top:15px}.faq h2{font-size:30px}.faq-list details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;position:relative;padding:22px 34px 22px 0;font-size:15px;font-weight:700;line-height:1.8}summary::-webkit-details-marker{display:none}summary:after{content:'＋';position:absolute;right:0;top:22px;color:var(--rose)}details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;padding:0 22px 23px 0;line-height:1.9;color:var(--muted)}.closing{text-align:center;background:var(--blush);padding:80px 24px}.closing h2{margin-bottom:30px}.closing .cta{max-width:390px;margin:auto}.footer{padding-block:45px 110px;text-align:center}.footer p{font-size:12px;color:var(--muted);margin-top:25px}.footer small{font-size:12px;display:block;margin-top:20px;color:var(--muted)}.sticky-cta{display:none}dialog{width:min(440px,calc(100% - 32px));border:1px solid var(--line);border-radius:14px;padding:36px;color:var(--ink);box-shadow:0 20px 100px #3921283d}dialog::backdrop{background:#29202480;backdrop-filter:blur(4px)}dialog .close{position:absolute;top:8px;right:10px;background:none;border:0;width:42px;height:42px;font-size:28px}dialog h2{font-size:27px}dialog p{font-size:14px}dialog .cta{margin-top:24px}.mobile-only{display:none}
@media(min-width:1500px){.hero{border-radius:12px}}
@media(max-width:900px){.wrap{width:calc(100% - 44px)}.section{padding-block:64px}.header{padding:0 24px;height:70px}.hero{min-height:650px}.hero-main{padding:48px 0 45px 24px;width:67%}h1{font-size:37px}.hero-picture{left:32%}.hero-picture:after{background:linear-gradient(90deg,#faf7f5,transparent 80%)}h2{font-size:29px}.hero-sub{font-size:22px}.hero-detail{font-size:14px}.hero-action{max-width:350px}.story,.support,.plan{gap:35px}.approach-grid{gap:30px}.promise-strip span{padding-inline:15px;font-size:12px}.story-photo{padding-left:0}.worries li{font-size:14px}.chat-panel{padding:20px}.bubble{padding:14px;font-size:14px}.steps{gap:10px}.steps li{padding-inline:8px}.steps h3{font-size:17px}.price-first strong{font-size:53px}.price-repeat{font-size:14px}.plan-sub{font-size:12px}.faq{gap:30px}.faq h2{font-size:26px}}
@media(max-width:600px){.preview-note{font-size:10px;padding:4px 8px}.header{height:60px;padding-inline:22px}.brand{font-size:29px}.brand span{font-size:11px;margin-left:9px}.header-link{font-size:12px}.hero{min-height:0;background:white;display:flex;flex-direction:column;overflow:visible}.hero-picture{position:relative;inset:auto;height:385px;overflow:hidden}.hero-picture img{object-position:center 38%}.hero-picture:after{background:linear-gradient(0deg,#fff 0%,#ffffffee 9%,#ffffff00 48%)}.hero-main{width:100%;padding:0 24px 26px;margin-top:-150px}.hero-main>.eyebrow{font-size:12px;margin-bottom:10px;letter-spacing:.06em}.hero-main h1{font-size:clamp(28px,7.5vw,39px);line-height:1.65;letter-spacing:.025em;text-shadow:0 1px 12px #fff,0 0 24px #fff}.hero-sub{font:16px var(--sans);line-height:1.8;letter-spacing:.04em;margin-top:18px}.hero-sub br{display:none}.hero-detail{font-size:14px;margin-top:13px;line-height:1.9}.hero-detail br:first-child{display:none}.mobile-only{display:block}.hero-action{max-width:none;margin-top:20px}.cta{font-size:15px;padding:15px 16px;min-height:59px;gap:9px}.hero-side{display:none}.image-label{bottom:auto;top:10px;right:12px;font-size:10px;padding:1px 5px}.micro{font-size:11px}.promise-strip{display:grid;grid-template-columns:1fr;padding:17px 24px;gap:4px;text-align:center;background:#fcf8f8}.promise-strip span{padding:0;font-size:12px}.promise-strip span+span{border:0}.promise-strip span:before{content:'✓';color:var(--rose);margin-right:9px}.wrap{width:calc(100% - 48px)}.section{padding-block:58px}h2{font-size:27px;letter-spacing:.035em}.eyebrow{font-size:12px;margin-bottom:16px;letter-spacing:.08em}.story{display:flex;flex-direction:column;gap:32px}.story-photo{width:100%;padding:0 20px}.story-photo img{height:340px;object-position:center 35%;border-radius:120px 120px 4px 4px}.photo-word{font-size:34px;bottom:48px;left:0}.story-photo figcaption{font-size:10px}.story-copy{width:100%}.story-copy h2 br:last-child{display:none}.worries{margin-block:22px}.worries li{font-size:14px;padding-block:12px}.story-resolution{font-size:15px}.approach .section-lead{font-size:14px;line-height:2;max-width:360px;margin-bottom:30px}.approach-grid{grid-template-columns:1fr;gap:18px}.approach-grid figure img{aspect-ratio:4/3}.approach-grid figcaption{font-size:10px}.approach-list article{gap:18px;padding-block:20px}.approach-list h3{font-size:18px}.approach-list p{font-size:14px;margin-top:6px}.number{font-size:32px}.disclaimer{font-size:11px;text-align:left;margin-top:20px}.support{grid-template-columns:1fr;gap:32px}.support-copy p{font-size:15px}.support-copy .small{font-size:12px}.support-copy h2{margin-bottom:22px}.chat-panel{border-radius:18px;padding:23px;box-shadow:7px 10px 0 #f9f1f2}.bubble{font-size:14px;margin-top:18px}.chat-caption{font-size:11px}.steps{grid-template-columns:1fr;gap:0;text-align:left;margin:28px 0}.steps li{padding:22px 0 22px 86px;border-bottom:1px solid var(--line);position:relative}.steps li+li{border-left:0}.steps span{position:absolute;left:0;top:28px;font-size:10px}.steps h3{font-size:18px}.steps p{font-size:14px;margin-top:10px}.steps p br{display:none}.plan{grid-template-columns:1fr;gap:30px}.plan-copy h2 br:nth-child(2){display:none}.plan-copy>p{font-size:15px}.terms{margin-top:22px}.terms div{font-size:13px;grid-template-columns:104px 1fr}.plan-copy .small{font-size:12px}.price-first strong{font-size:58px}.price-repeat{font-size:14px}.price-overlay{top:4%;inset-inline:10px}.plan-label{font-size:13px}.plan-sub{font-size:11px;margin-top:3px}.plan-note,.review-condition{font-size:10px}.faq{grid-template-columns:1fr;gap:16px;padding-top:0}.faq h2{font-size:27px}summary{font-size:14px}.faq-list details p{font-size:13px}.closing{padding:54px 24px}.closing h2{font-size:28px}.footer{padding-block:35px 130px}.footer p,.footer small{font-size:11px}.sticky-cta{position:fixed;z-index:5;bottom:0;inset-inline:0;background:#ffffffed;backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:6px;padding:10px 16px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);text-align:center;transition:transform .2s}.sticky-cta .cta{min-height:48px;padding:12px 20px;font-size:14px}.sticky-cta>span{font-size:10px;color:var(--muted)}.sticky-cta.is-hidden{transform:translateY(120%)}dialog{padding:30px 24px}dialog h2{font-size:25px}}
@media(max-width:350px){.wrap{width:calc(100% - 36px)}.hero-main{padding-inline:18px}.hero-picture{height:340px}.hero-main{margin-top:-130px}.hero-sub{font-size:14px}.hero-detail{font-size:13px}.cta{font-size:13px;padding-inline:12px;gap:8px}.price-first strong{font-size:48px}.price-repeat{font-size:12px}.plan-label{font-size:12px}.plan-sub{font-size:10px}.chat-panel{padding:17px}.bubble{font-size:13px}.worries li{font-size:13px}}
/* Readable mobile copy and essential prototype disclosures. */
@media(max-width:600px){.hero-detail,.story-resolution,.approach .section-lead,.approach-list p,.support-copy p,.bubble,.steps p,.plan-copy>p,.faq-list details p{font-size:16px}.worries li,summary{font-size:15px}.plan-note,.review-condition,.disclaimer,.micro,.image-label,.story-photo figcaption,.approach-grid figcaption,.chat-caption,.plan-sub,.footer p,.footer small{font-size:12px}.terms div{font-size:14px}.plan-copy .small,.support-copy .small{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
