:root{--paper:#f3f0ea;--ink:#242421;--muted:#77736d;--line:#d8d3ca;--cream:#e4dbcf;--white:#fff;--serif:"Noto Serif JP",serif;--display:"Cormorant Garamond",serif;--sans:"Noto Sans JP",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}button{font:inherit}.site-header{align-items:center;border-bottom:1px solid rgba(36,36,33,.14);display:grid;grid-template-columns:1fr auto 1fr;height:88px;padding:0 clamp(24px,5vw,76px);position:absolute;top:0;width:100%;z-index:10}.wordmark{font-family:var(--display);font-size:29px;font-weight:600;letter-spacing:.02em;line-height:1}.wordmark i{font-weight:400}.site-header nav{display:flex;gap:32px}.site-header nav a{font-size:12px;letter-spacing:.06em}.site-header nav a:hover{opacity:.55}.header-cta{align-items:center;display:flex;font-size:12px;gap:18px;justify-self:end}.header-cta span{align-items:center;border:1px solid;display:flex;height:36px;justify-content:center;width:36px}.menu-button{display:none}.hero{display:grid;grid-template-columns:57% 43%;min-height:780px;padding-top:88px;position:relative}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(28px,7vw,110px)}.eyebrow,.section-label{font-family:var(--display);font-size:12px;letter-spacing:.22em}.hero h1{font-family:var(--serif);font-size:clamp(52px,6vw,94px);font-weight:400;letter-spacing:-.045em;line-height:1.26;margin:25px 0 35px}.hero h1 em{font-style:normal;margin-left:.62em}.lead{color:#5e5b56;font-family:var(--serif);font-size:clamp(14px,1.2vw,17px);letter-spacing:.05em;line-height:2.15}.hero-actions{align-items:center;display:flex;gap:34px;margin-top:26px}.button{align-items:center;border-radius:999px;display:inline-flex;font-size:13px;justify-content:center;letter-spacing:.08em;min-height:58px;padding:0 36px;transition:.25s}.button.dark{background:var(--ink);color:#fff}.button.dark:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.16)}.text-link{border-bottom:1px solid;font-size:12px;padding:8px 0}.text-link span{margin-left:18px}.hero-art{background:#d9d0c5;overflow:hidden;position:relative}.hero-art:before{background:linear-gradient(130deg,rgba(255,255,255,.35),transparent 55%);content:"";inset:0;position:absolute}.orbit{border:1px solid rgba(47,46,43,.19);border-radius:50%;position:absolute}.orbit-one{height:620px;right:-185px;top:60px;width:620px}.orbit-two{height:390px;left:-140px;top:260px;width:390px}.type-card{background:rgba(245,242,236,.82);box-shadow:0 30px 80px rgba(72,62,53,.12);display:flex;flex-direction:column;height:410px;justify-content:space-between;left:14%;padding:46px;position:absolute;top:190px;transform:rotate(-4deg);width:min(68%,340px)}.type-card small,.type-card span{font-family:var(--display);font-size:11px;letter-spacing:.18em}.type-card strong{font-family:var(--display);font-size:62px;font-weight:400;line-height:.85}.vertical-copy{bottom:42px;font-family:var(--display);font-size:10px;letter-spacing:.2em;margin:0;position:absolute;right:24px;writing-mode:vertical-rl}.scroll-mark{bottom:35px;font-family:var(--display);font-size:10px;left:30px;letter-spacing:.2em;margin:0;position:absolute}.scroll-mark span{background:var(--ink);display:inline-block;height:1px;margin:0 0 3px 14px;width:42px}.section-pad{padding:140px clamp(28px,8vw,128px)}.section-label{align-items:center;display:flex;margin-bottom:60px}.section-label span{align-items:center;border:1px solid var(--ink);border-radius:50%;display:inline-flex;height:29px;justify-content:center;letter-spacing:0;margin-right:14px;width:29px}.statement{background:var(--ink);color:#f5f2ec}.statement-grid{display:grid;gap:12vw;grid-template-columns:1.25fr 1fr}.statement h2,.section-head h2,.report h2,.final-cta h2{font-family:var(--serif);font-size:clamp(36px,4.5vw,66px);font-weight:400;letter-spacing:-.04em;line-height:1.45;margin:0}.statement h2 span{color:#bcae9e}.statement-grid>div{align-self:end;color:#bbb7b0;font-size:14px;line-height:2.2}.service{background:#f7f5f1}.section-head{display:grid;gap:6vw;grid-template-columns:.6fr 1.2fr 1fr;margin-bottom:80px}.section-head .section-label{margin:12px 0 0}.section-head>p:last-child{align-self:end;color:var(--muted);font-size:13px;margin:0;max-width:450px}.service-list{border-top:1px solid var(--line)}.service-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:40px;grid-template-columns:50px 1fr 2.4fr .8fr;min-height:155px;transition:.3s}.service-row:hover{padding-left:18px}.service-row b{font-family:var(--display);font-size:12px}.service-row h3{font-family:var(--serif);font-size:27px;font-weight:400;margin:0}.service-row p{color:var(--muted);font-size:13px;margin:0}.service-row>span{font-family:var(--display);font-size:11px;justify-self:end;letter-spacing:.17em}.report{align-items:center;background:#d9d0c5;display:grid;gap:10vw;grid-template-columns:1fr 1fr}.report .section-label{margin-bottom:48px}.report h2 em{font-style:normal;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.report-copy>p:not(.section-label){font-size:14px;margin:35px 0}.report ul{list-style:none;padding:0}.report li{border-top:1px solid rgba(36,36,33,.18);font-size:13px;padding:13px 0}.report-sheet{background:#f9f8f5;box-shadow:18px 22px 0 rgba(36,36,33,.08);justify-self:center;max-width:470px;padding:42px;width:100%}.sheet-top{display:flex;justify-content:space-between}.sheet-top span{font-family:var(--display);font-size:18px;font-weight:600}.sheet-top small{font-family:var(--display);font-size:9px;letter-spacing:.12em}.report-sheet h3{border-bottom:1px solid;margin:48px 0 24px;padding-bottom:24px;font-family:var(--display);font-size:35px;font-weight:400;line-height:1}.status{align-items:center;background:#eeeae3;display:flex;gap:15px;padding:18px}.status>span{background:#708b75;border-radius:50%;height:11px;width:11px}.status small,.mini-stats small,.done small{display:block;font-family:var(--display);font-size:8px;letter-spacing:.15em}.status strong{font-family:var(--serif);font-size:14px}.mini-stats{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin:12px 0}.mini-stats div{border:1px solid var(--line);padding:15px}.mini-stats strong{font-family:var(--display);font-size:29px;font-weight:500}.done{border-top:1px solid;padding:18px 0}.done p{font-size:10px;margin:8px 0}.no-action{background:var(--ink);color:white;font-size:10px;margin:0;padding:14px;text-align:center}.no-action strong{margin-left:10px}.plans{background:#f7f5f1}.section-head.center{display:block;margin-left:auto;margin-right:auto;max-width:710px;text-align:center}.center .section-label{justify-content:center;margin-bottom:42px}.center>p:last-child{margin:25px auto 0}.plan-grid{display:grid;gap:24px;grid-template-columns:1fr 1fr;margin:auto;max-width:1100px}.plan{border:1px solid var(--line);display:flex;flex-direction:column;padding:55px}.plan.featured{background:var(--ink);color:white;position:relative}.recommend{background:#bdaea0;color:var(--ink);font-family:var(--display);font-size:10px;letter-spacing:.15em;padding:8px 18px;position:absolute;right:0;top:0}.plan-no{font-family:var(--display);font-size:11px;letter-spacing:.16em}.plan h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:12px 0 16px}.plan-intro{color:var(--muted);font-size:12px;min-height:48px}.featured .plan-intro{color:#aaa7a1}.price{align-items:end;border-top:1px solid var(--line);display:flex;gap:8px;margin-top:20px;padding-top:25px}.featured .price{border-color:#575752}.price small{font-size:11px;margin:0 auto 8px 0}.price strong{font-family:var(--display);font-size:46px;font-weight:500;line-height:1}.price em{font-family:var(--sans);font-size:13px;font-style:normal;margin-left:3px}.price span{font-size:9px;margin-bottom:5px}.price.monthly{border-top:0;margin:0;padding-top:18px}.price.buy{margin-top:86px}.first-payment{color:var(--muted);font-size:10px;margin:16px 0 25px}.featured .first-payment{color:#aaa7a1}.plan ul{border-top:1px solid var(--line);list-style:none;margin:0 0 35px;padding:22px 0}.featured ul{border-color:#575752}.plan li{font-size:12px;padding:7px 0}.plan li:before{content:"—";margin-right:10px}.button.light{background:white;color:var(--ink);margin-top:auto}.button.outline{border:1px solid var(--ink);margin-top:auto}.plan-note{color:var(--muted);font-size:10px;line-height:1.8;margin:24px auto 0;max-width:900px;text-align:center}.flow{background:var(--paper);display:grid;gap:10vw;grid-template-columns:1fr 1.1fr}.flow .section-head{display:block;margin:0}.flow .section-label{margin-bottom:50px}.flow ol{list-style:none;margin:0;padding:0}.flow li{border-top:1px solid var(--line);display:grid;gap:30px;grid-template-columns:40px 1fr;padding:28px 0}.flow li:last-child{border-bottom:1px solid var(--line)}.flow li>b{font-family:var(--display);font-size:12px}.flow h3{font-family:var(--serif);font-size:21px;font-weight:400;margin:0 0 7px}.flow li p{color:var(--muted);font-size:12px;margin:0}.faq{background:#f7f5f1}.faq .section-head{display:block}.faq .section-label{margin-bottom:40px}.faq-list{border-top:1px solid var(--line);margin-left:auto;max-width:850px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--serif);font-size:16px;list-style:none;padding:26px 52px 26px 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-family:var(--sans);font-weight:300;position:absolute;right:10px;transition:.25s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{color:var(--muted);font-size:13px;max-width:720px;padding:0 30px 28px 0}.final-cta{padding:150px 24px;text-align:center}.final-cta h2{margin:25px 0}.final-cta>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:34px}.final-cta .button{min-width:260px}.final-cta small{color:var(--muted);display:block;font-size:10px;margin-top:14px}footer{align-items:end;background:var(--ink);color:white;display:grid;gap:30px;grid-template-columns:1fr 1fr auto;padding:80px clamp(28px,6vw,90px) 40px}footer .wordmark{font-size:45px}footer p{color:#aaa7a1;font-size:10px;margin:0 0 12px}footer p a{color:white;margin-right:22px}footer small{color:#88847f;font-size:9px}.floating-cta{align-items:center;background:var(--ink);bottom:22px;color:white;display:flex;font-size:12px;gap:10px;padding:16px 20px;position:fixed;right:22px;z-index:20}.floating-cta span{font-family:var(--display);font-size:8px;letter-spacing:.1em}.floating-cta b{font-weight:400;margin-left:8px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:70px;padding:0 20px}.site-header nav,.header-cta{display:none}.site-header{grid-template-columns:1fr auto}.wordmark{font-size:24px}.menu-button{background:none;border:0;display:block;height:40px;justify-self:end;padding:8px;width:40px}.menu-button span{background:var(--ink);display:block;height:1px;margin:7px 0;width:24px}.hero{display:block;min-height:auto;padding-top:70px}.hero-copy{min-height:620px;padding:80px 25px}.hero h1{font-size:clamp(48px,15vw,68px)}.hero h1 em{margin-left:.28em}.hero-art{height:480px}.type-card{height:310px;left:12%;padding:32px;top:80px;width:68%}.type-card strong{font-size:48px}.scroll-mark{display:none}.section-pad{padding:90px 24px}.statement-grid,.report,.flow{grid-template-columns:1fr;gap:60px}.statement h2,.section-head h2,.report h2,.final-cta h2{font-size:38px}.statement-grid>div{font-size:13px}.section-head{display:block;margin-bottom:50px}.section-head .section-label{margin-bottom:42px}.section-head>p:last-child{margin-top:25px}.service-row{gap:13px;grid-template-columns:30px 1fr;min-height:0;padding:28px 0}.service-row p{grid-column:2}.service-row>span{display:none}.report-sheet{padding:28px}.plan-grid{grid-template-columns:1fr}.plan{padding:40px 27px}.price strong{font-size:42px}.price.buy{margin-top:40px}.flow{gap:50px}.faq-list{margin:0}.faq summary{font-size:14px}.final-cta{padding:100px 24px}footer{align-items:start;grid-template-columns:1fr;padding-bottom:100px}footer .wordmark{font-size:37px}.floating-cta{bottom:12px;justify-content:center;left:12px;right:12px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.button{width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}}
