:root{--cream:#f7f5ee;--paper:#fffefa;--green:#244b43;--ink:#274a43;--muted:#687a70;--line:#d7ddd3;--sage:#e9eee5;--accent:#ab7359;--serif:"Noto Serif JP","Yu Mincho",serif;--sans:"Noto Sans JP","Yu Gothic",sans-serif;--latin:"Cormorant Garamond",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:2;letter-spacing:.035em}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}::selection{background:#d4ded1}.wrap{width:min(1160px,calc(100% - 100px));margin-inline:auto}.section{padding-block:110px}.skip{position:absolute;top:-80px;left:15px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.header{height:102px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-inline:max(38px,calc((100vw - 1250px)/2));border-bottom:1px solid #244b4314;background:var(--cream);position:relative;z-index:30}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand>span{font-family:var(--latin);font-size:30px;line-height:1;letter-spacing:.015em;font-weight:500}.desktop-nav{display:flex;align-items:center;gap:34px;font-size:11px;letter-spacing:.06em}.desktop-nav>a:not(.nav-cta){position:relative}.desktop-nav>a:not(.nav-cta):after{position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--green);content:"";transition:width .25s}.desktop-nav>a:hover:after{width:100%}.nav-cta{display:flex;gap:24px;align-items:center;background:var(--green);color:white;padding:12px 23px;border-radius:2px}.nav-cta:hover{background:#356357}.nav-cta span{font-size:18px}.menu-toggle,.mobile-nav{display:none}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:30px;padding-block:65px 44px;position:relative;align-items:center;border-bottom:1px solid var(--line)}.hero-copy{padding-top:15px;padding-bottom:30px;position:relative;z-index:2}h1{font-size:clamp(39px,4.3vw,60px);line-height:1.6;letter-spacing:.06em;margin:29px 0 24px}.soft-underline{position:relative}.soft-underline:after{position:absolute;content:"";height:8px;width:100%;left:0;bottom:0;background:#b6c8aa5c;z-index:-1}.hero-intro{line-height:2.2;font-size:14px;letter-spacing:.08em;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--green);color:white;border:1px solid var(--green);padding:17px 23px 17px 28px;min-width:290px;font-size:12px;letter-spacing:.07em;transition:background .2s,transform .2s}.button:hover{background:#356357;transform:translateY(-2px)}.arrow{font-size:23px;line-height:1}.hero-visual{position:relative;padding:0 26px 25px 20px}.photo-frame{height:530px;width:100%;overflow:hidden;border-radius:48% 48% 3px 3px;background:#e4ebdb}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-leaf{position:absolute;right:-25px;bottom:-17px;width:120px;height:150px;color:#829681;transform:rotate(12deg)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-bottom:48px}h2{font-size:32px;line-height:1.8;letter-spacing:.06em}.section-heading>p{max-width:370px;font-size:13px;line-height:2.2;color:var(--muted);padding-right:35px}.concerns{padding-top:86px}.concern-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.concern{position:relative;padding:30px 28px 45px 0;transition:background .2s}.concern+ .concern{padding-left:30px;border-left:1px solid var(--line)}.concern:hover{background:#e9eee573}.concern-no{font-family:var(--latin);font-size:26px;line-height:1;color:#8b9c87}.concern h3{font-family:var(--serif);font-size:20px;line-height:1.9;font-weight:400;margin:22px 0 15px}.concern p{font-size:12px;line-height:2.1;color:var(--muted)}.round-arrow{position:absolute;right:20px;bottom:25px;border:1px solid #b8c4b5;border-radius:50%;height:30px;width:30px;display:grid;place-content:center;font-size:16px}.approach{background:var(--sage);padding-bottom:80px}.approach-image{height:350px;position:relative;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover;object-position:center 51%}.approach-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#1b3e3a40,transparent 60%)}.approach-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:85px}.approach-title h2{margin-top:25px;font-size:30px}.approach-text{padding-top:40px}.approach-text>p{line-height:2.4;font-size:13px;margin-bottom:24px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:12px;padding:12px 0;border-bottom:1px solid #7c9182}.text-link:hover{color:#a36f54}.text-link>span{font-size:20px}.approach-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;border-top:1px solid #c9d4c5;margin-top:65px;padding-top:36px;text-align:center;gap:25px}.approach-steps h3{font-family:var(--serif);font-weight:400;font-size:23px;margin:6px 0}.approach-steps p{font-size:11px;color:var(--muted)}.approach-steps i{font-style:normal;font-size:22px;color:#859981}.service-list{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service summary{display:grid;grid-template-columns:55px 1fr auto 25px;gap:20px;align-items:center;padding:28px 4px}.service summary:hover h3{color:var(--accent)}.service-num{font-family:var(--latin);font-size:25px;color:#7f947f}.service h3{font-family:var(--serif);font-weight:400;font-size:23px;line-height:1.7}.service-tag{font-size:10px;color:var(--muted);margin-right:30px}.plus{display:block;position:relative;width:20px;height:20px;flex-shrink:0}.plus:before,.plus:after{content:"";position:absolute;left:2px;top:9px;width:16px;height:1px;background:var(--green)}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open]>summary .plus:after{transform:rotate(0)}.service-content{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:0 48px 35px 79px}.service-content p{font-size:12px;color:var(--muted);line-height:2.2}.service-content .text-link{font-size:11px;flex-shrink:0;gap:22px}.coach{background:#eeeae0}.coach-inner{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px;align-items:center}.coach-picture{position:relative}.coach-picture img{width:100%;aspect-ratio:1/.98;object-fit:cover;filter:saturate(.87);border-radius:3px}.coach-copy>h2{font-size:30px;margin:20px 0 28px}.coach-name{display:flex;gap:20px;align-items:center;margin-bottom:24px}.coach-name h3{font-weight:500;font-size:20px;letter-spacing:.13em}.coach-copy>p{font-size:12px;line-height:2.3;margin-bottom:18px}.credentials{margin:24px 0 0;padding:20px 0 0;border-top:1px solid #d5d6ca;list-style:none;font-size:10px;color:var(--muted)}.credentials li:before{content:"—";padding-right:10px}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:50px 0 65px}.flow>div{border-top:1px solid #a5b5a0;padding-top:20px}.flow span{font-size:9px;letter-spacing:.16em;color:#7d9378}.flow h3{font-size:16px;font-weight:500;margin:15px 0 12px}.flow p{font-size:12px;color:var(--muted);line-height:2.1}.faq{max-width:850px;margin:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;gap:25px;padding:22px 0;font-size:13px}.faq details>p{padding:0 40px 24px 0;font-size:12px;color:var(--muted);line-height:2.2}.closing{background:var(--green);color:var(--cream);padding:85px 0 95px;text-align:center;position:relative;overflow:hidden}.closing-inner{position:relative;z-index:1}.closing h2{font-size:36px;line-height:1.9;margin:25px 0 19px}.closing-inner>p{font-size:12px;color:#c3d0be;margin-bottom:30px}.button-light{background:var(--cream);color:var(--green);border-color:var(--cream);min-width:330px}.button-light:hover{background:#e2e9db}.footer{padding-block:46px 20px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer .brand>span{font-size:28px}.footer-bottom{display:flex;align-items:center;gap:30px;margin-top:42px;border-top:1px solid var(--line);padding-top:19px;color:var(--muted);font-size:9px}.footer-bottom small{font-size:9px}
@media(min-width:1450px){.hero{padding-top:80px}.photo-frame{height:580px}.hero-copy{padding-top:33px}.hero-visual{padding-bottom:30px}h1{font-size:63px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.desktop-nav{gap:20px;font-size:10px}.header{padding-inline:28px}.brand>span{font-size:26px}.hero{gap:10px}.hero-visual{padding-left:5px}.photo-frame{height:490px}h1{font-size:44px}.section-heading>p{padding-right:0}.approach-inner{gap:40px}.coach-inner{gap:55px}.service-content{display:block}.service-content .text-link{margin-top:15px}}
@media(max-width:760px){html{scroll-padding-top:24px}.wrap{width:calc(100% - 42px)}.header{height:82px;padding-inline:21px}.brand>span{font-size:27px}.brand img{width:29px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;border:0;background:none;width:44px;height:44px;cursor:pointer;z-index:2;padding:10px}.menu-toggle>span{width:24px;height:1px;background:var(--green);transition:transform .2s}.menu-toggle[aria-expanded="true"]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"]>span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:81px;left:0;right:0;background:var(--cream);padding:18px 24px 28px;box-shadow:0 15px 20px #244b4312;border-bottom:1px solid var(--line)}.mobile-nav>a{padding:12px 0;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;padding-top:33px;gap:0}.hero-copy{padding:0 0 33px}h1{font-size:clamp(35px,9.8vw,52px);line-height:1.65;letter-spacing:.04em;margin:24px 0 20px}.hero-intro{font-size:12px;line-height:2.1;margin-bottom:23px}.button{min-width:275px;padding:15px 22px;font-size:11px}.hero-visual{width:min(100%,460px);justify-self:center;padding:0 20px 20px 35px;margin-bottom:22px}.photo-frame{height:370px;border-radius:46% 46% 2px 2px}.photo-frame img{object-position:50% 50%}.hero-leaf{width:85px;height:105px;right:-8px;bottom:-12px}.section{padding-block:70px}.section-heading{display:block;margin-bottom:32px}h2{font-size:26px;line-height:1.8}.section-heading>p{font-size:12px;margin-top:22px}.concern-grid{grid-template-columns:1fr}.concern,.concern+ .concern{border-left:0;padding:24px 44px 26px 0}.concern+ .concern{border-top:1px solid var(--line)}.concern-no{float:left;margin-right:20px;font-size:24px;line-height:1.7}.concern h3{font-size:19px;margin:0 0 12px 44px;line-height:1.8}.concern p{font-size:11px;margin-left:44px}.round-arrow{right:0;bottom:32px}.approach-image{height:230px}.approach{padding-bottom:50px}.approach-inner{display:block;padding-top:55px}.approach-title h2{font-size:25px;margin-top:20px}.approach-text{padding-top:28px}.approach-text>p{font-size:12px;margin-bottom:20px;line-height:2.3}.text-link{font-size:11px}.approach-steps{grid-template-columns:1fr;gap:12px;margin-top:38px;padding-top:26px;text-align:left}.approach-steps>div{display:grid;grid-template-columns:90px 1fr;gap:2px 16px;align-items:center}.approach-steps h3{font-size:20px;margin:0}.approach-steps p{grid-column:2;font-size:10px}.approach-steps i{display:none}.service summary{grid-template-columns:27px 1fr 20px;gap:10px;padding:21px 0}.service-num{font-size:21px}.service h3{font-size:19px}.service-tag{grid-column:2;grid-row:2;font-size:9px;margin:0}.service summary .plus{grid-column:3;grid-row:1/3}.service-content{padding:0 0 24px 37px}.service-content p{font-size:11px}.service-content p br{display:none}.coach-inner{display:flex;flex-direction:column;gap:38px}.coach-picture{width:100%;max-width:400px;padding-left:10px}.coach-picture img{aspect-ratio:1/1}.coach-copy{width:100%}.coach-copy>h2{font-size:26px;margin:19px 0 23px}.coach-name{margin-bottom:19px}.coach-copy>p{font-size:12px}.credentials{margin-top:22px}.flow{grid-template-columns:1fr;gap:22px;margin:35px 0 43px}.flow>div{display:grid;grid-template-columns:65px 1fr;gap:0 10px;padding-top:20px}.flow span{font-size:8px;padding-top:3px}.flow h3{font-size:15px;margin:0 0 10px}.flow p{grid-column:2;font-size:11px}.flow p br{display:none}.faq summary{font-size:12px;padding:20px 0;line-height:1.9;align-items:center}.faq details>p{font-size:11px;padding-right:5px}.closing{padding:65px 0 72px}.closing h2{font-size:27px;margin:23px 0 17px}.closing-inner>p{font-size:11px}.button-light{min-width:0;width:100%;max-width:330px;font-size:11px;padding:17px 19px}.footer{padding-top:33px}.footer-top{align-items:start;gap:16px}.footer .brand>span{font-size:24px}.footer .brand img{width:25px}.footer .brand{gap:9px}.footer .text-link{gap:12px;font-size:10px;padding:5px 0}.footer-bottom{margin-top:30px;gap:13px;flex-wrap:wrap;font-size:8px}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
