@font-face{font-family:OnpuriHand;src:url('/letter/handwriting.ttf') format('truetype');font-display:swap;font-weight:400}
:root{--hand:OnpuriHand,'Yomogi',cursive}body{font-size:18px;line-height:1.72}h1,h2,h3{letter-spacing:.015em;line-height:1.45}.section{padding:76px 0}.eyebrow{font-size:13px;letter-spacing:.12em;margin-bottom:16px}.hero-inner{padding-top:50px;padding-bottom:45px;min-height:650px}.hero .eyebrow{font-size:14px}.hero-description{font-size:21px;line-height:1.8;margin:22px 0 25px}.button{font-size:18px;min-height:68px;padding-left:24px}.site-header nav{font-size:14px}.brand small{font-size:12px}.brand strong{font-size:22px}.hero .cta-caption,.cta-caption{font-size:13px!important}.hero-visual{height:540px}.letter strong{font-family:var(--hand);font-size:31px;font-weight:400;line-height:1.35;letter-spacing:0}.letter-footer{font-size:12px;line-height:1.5}.letter-tag{font-family:var(--body);font-size:13px;letter-spacing:.08em}.letter{padding:20px 25px;transition:transform 1s cubic-bezier(.2,1.1,.3,1),opacity .4s}.letter strong{margin-top:13px}.is-open .letter{transform:translateY(-125px) rotate(5deg) scale(1.04)}.floating-note{font-size:17px;padding:13px 17px}.mail-hint{font-size:13px}.mail-scene{transition:transform 1s cubic-bezier(.2,.9,.2,1)}.mail-scene.is-open{transform:translateX(-50%) rotate(-3deg)}.envelope-seal{transition:transform .55s,opacity .35s}.is-open .envelope-seal{transform:translate(65px,40px) rotate(80deg) scale(.4);opacity:0}.envelope-front{transition:transform .7s}.is-open .envelope-front{transform:translateY(9px)}.envelope-flap{transition:transform .6s cubic-bezier(.2,.8,.2,1),z-index .1s .2s}.letter-footer svg{display:none}
.section-heading>p:last-child,.support-description>p,.about-copy p,.steps p,#sample-reply p,.final-letter>p:not(.eyebrow):not(.cta-caption),.faq-list details>p{font-size:19px!important;line-height:1.75!important}.section-heading>p:last-child{margin-top:18px}.section-heading{max-width:840px;margin:auto}.worry-notes{margin-top:40px;margin-bottom:30px;gap:24px}.worry-note{min-height:180px;padding:20px 23px}.note-index{font-size:14px;margin-bottom:13px;padding-bottom:9px}.worry-note p{font-size:23px;line-height:1.6}.scribble{margin-top:0;font-size:27px}.quiet-copy{font-size:22px;line-height:1.75}.handwritten{font-family:var(--hand);font-weight:400;line-height:1.5}.handwritten-bridge{text-align:center;font-size:35px;color:var(--orange);margin:12px auto 14px;transform:rotate(-3deg)}.about{padding-bottom:0}.about-grid{gap:45px}.about-copy h2{font-size:35px;margin-bottom:23px;line-height:1.5}.about-copy p+p{margin-top:18px}.about-art img{border-radius:36% 36% 5px 5px}.art-caption{padding:16px 0}.art-caption p{font-family:var(--hand);font-size:24px;line-height:1.4}.art-caption span{font-size:12px;max-width:130px}.mentor-intro{margin-top:33px;padding-top:24px;gap:20px}.mentor-intro h3{font-size:22px}.mentor-intro p{font-size:17px;line-height:1.7;margin-top:10px}.mentor-intro .text-link{font-size:14px}.reframe{margin-top:42px;padding:38px 20px;font-size:28px}.reframe strong{font-size:42px;line-height:1.5}.support-heading{margin-bottom:32px}.support-heading>p{font-size:18px;line-height:1.7}.support-row{padding:40px 0;gap:60px}.support-description h3{font-size:34px;margin-bottom:20px;line-height:1.5}.section-number{font-size:35px;margin-bottom:16px}.section-number span{font-size:12px}.inline-topics{margin-top:18px;font-size:14px}.reflection-demo{padding:21px;transform:rotate(1deg)}.demo-top{font-size:15px;margin-bottom:15px}.reflection-before,.reflection-after{padding:16px}.reflection-before p,.reflection-after p{font-size:21px;line-height:1.6;margin-top:7px}.reflection-before>span,.reflection-after>span{font-size:14px}.demo-down{padding:4px}.reflection-demo>small{font-size:12px!important;margin-top:9px}.choice-demo{min-height:0;padding:32px 23px;border-radius:90px 90px 9px 9px}.choice-title{font-size:21px}.choice-items{margin:24px 0}.choice-items span{font-size:14px}.choice-items strong{font-size:24px}.choice-demo p{font-size:17px}.line-preview{padding:0;background:#9eb6cf;transform:none;border:1px solid #c5c9cf;border-radius:12px;box-shadow:0 12px 25px #4226160d;overflow:hidden}.line-header{padding:15px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f9fafb;color:#202326;font-size:17px;line-height:1.5}.line-header>strong{font-size:17px;font-weight:600;letter-spacing:0}.line-header>span{font-family:var(--body);font-size:18px;flex-shrink:0}.line-preview-body{padding:12px 17px 20px}.line-source{font-size:12px!important;text-align:center;color:#384e64;margin-bottom:14px}.line-preview .message{font-family:var(--body);font-size:18px;line-height:1.65;max-width:87%;padding:12px 16px;letter-spacing:0;margin-bottom:10px;border-radius:14px;transform-origin:left center}.line-preview .user-message{background:#90e86a;border-top-right-radius:3px;border-bottom-right-radius:14px;color:#18251a}.line-preview .mentor-message{background:#fff;color:#222;border-top-left-radius:3px;border-bottom-left-radius:14px}.mentor-label{display:block;font-size:12px;color:#344657;margin:12px 0 6px}.line-more{display:block;background:#f8fbff;padding:10px;text-align:center;border-radius:4px;margin-top:14px;font-size:14px;font-weight:500;color:#254354;min-height:44px}.real-support{background:#f4e5d0;padding:68px 0}.real-intro{max-width:900px;margin-bottom:28px}.real-intro h2{font-size:46px;line-height:1.35}.real-intro>p:last-child{font-size:19px;margin-top:20px;line-height:1.75}.case-tabs{display:flex;gap:10px;border-bottom:1px solid #ccbca4;padding-bottom:16px;margin-bottom:28px}.case-tabs button{border:1px solid #bea98b;background:#fff9ef;border-radius:7px;padding:13px 19px;font-size:17px;font-weight:500;color:var(--ink);min-height:54px}.case-tabs button[aria-selected=true]{background:var(--orange);color:#fff;border-color:var(--orange)}.case-tabs button:hover{box-shadow:0 2px 0 #a6815c}.case-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:start}.case-explanation{padding-top:17px}.case-explanation>span{font:600 14px var(--english);letter-spacing:.1em;color:var(--orange)}.case-explanation h3{font-size:33px;line-height:1.45;margin:16px 0}.case-explanation>p:not(.case-hand){font-size:19px;line-height:1.7}.case-point{border-top:1px solid #cbbb9f;padding-top:20px;margin-top:23px}.case-point>span{font-size:14px;color:var(--muted)}.case-point ul{padding:0;list-style:none;margin:12px 0 0}.case-point li{font-size:18px;font-weight:500;padding:7px 0 7px 27px;position:relative;line-height:1.55}.case-point li:before{content:'✓';position:absolute;left:0;color:var(--orange)}.case-hand{font-size:29px;margin-top:24px!important;color:var(--orange);transform:rotate(-3deg)}.replay-chat{padding:11px 0;min-height:46px;border:none;border-bottom:1px solid var(--ink);background:none;font-size:14px;color:var(--ink);margin-top:17px}.line-window{border:1px solid #adb8c6;border-radius:15px;background:#93acc7;overflow:hidden;box-shadow:0 14px 30px #4c38281c}.line-window .line-header{padding:17px 18px}.line-window .line-header strong{font-size:18px}.line-messages{padding:18px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:13px}.line-bubble{max-width:88%;font-size:18px;line-height:1.65;letter-spacing:0;padding:13px 17px;border-radius:15px;color:#202322;position:relative;overflow-wrap:anywhere}.line-bubble p{margin:0}.line-bubble.from-user{align-self:flex-end;background:#92e86a;border-top-right-radius:3px;transform-origin:right top}.line-bubble.from-mentor{background:white;border-top-left-radius:3px;transform-origin:left top}.line-bubble strong{font-weight:700;background:linear-gradient(transparent 66%,#ffe89b 66%)}.line-composer{padding:12px;background:#f6f7f8;display:flex;align-items:center;gap:13px;color:#73818c;font-size:22px}.composer-field{flex:1;background:#fff;border:1px solid #ddd;border-radius:22px;font-size:14px;padding:7px 16px;line-height:1.5}.case-disclosure{font-size:13px!important;line-height:1.7;margin-top:22px;color:#73604b;max-width:880px}.steps{margin-top:40px;gap:35px}.steps h3{font-size:28px;margin:10px 0 12px}.step-count{margin-bottom:17px}.flow-note{margin-top:28px;padding-top:20px;font-size:16px!important}.faq-grid{gap:50px}.faq-grid h2{font-size:36px}.faq-grid .reveal>p:last-child{font-size:17px}.faq-list summary{font-size:18px;min-height:76px;padding:18px 0}.faq-list details>p{padding-bottom:18px}.consultation{padding:60px 24px 0}.final-letter{padding:40px 35px 30px;max-width:840px}.final-letter h2{font-size:46px;line-height:1.45}.final-letter>p:not(.eyebrow):not(.cta-caption){margin-top:20px}.offer-line{margin:22px 0 20px}.offer-line>span{font-size:14px}.offer-line>strong{font-size:23px}.final-signature{font-family:var(--hand);font-size:28px;line-height:1.45;margin-top:26px;padding-top:18px}.closing-type{padding-top:35px;font-size:17vw}.site-footer{padding-top:38px}.footer-links{font-size:14px}.text-link{font-size:16px;margin-top:18px}.motion-toggle{font-size:12px}.motion-toggle:focus-visible{outline:3px solid #ab4d22}.motion-label{display:inline}
/* Strong motion is triggered by actual visibility, not elapsed page-load time. */
.js:not(.motion-paused) .worry-notes:not(.in-view) .worry-note{transform:translateY(90px) rotate(-12deg) scale(.8)}.js:not(.motion-paused) .reflection-demo:not(.in-view) .reflection-after{transform:translateY(65px) rotate(5deg) scale(.85)}.reflection-after{transition:opacity .65s .3s,transform 1s cubic-bezier(.2,1.15,.3,1) .3s}.js:not(.motion-paused) .chat-demo:not(.in-view) .message{transform:translateY(50px) scale(.75)}.message{transition:opacity .4s,transform .8s cubic-bezier(.2,1.15,.3,1)}.reframe:not(.in-view) strong{transform:translateX(-70px);opacity:0}.reframe strong{transition:transform .9s,opacity .9s}.reframe.in-view strong{transform:none;opacity:1}.line-window.playing .line-bubble{animation:line-arrive .62s cubic-bezier(.2,1.1,.3,1) both;animation-delay:calc(var(--message-index,0)*.55s)}@keyframes line-arrive{from{opacity:0;transform:translateY(36px) scale(.78)}to{opacity:1;transform:none}}.line-window.swapping{animation:case-swap .5s both}@keyframes case-swap{from{opacity:.4;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.case-layout{gap:32px}.case-tabs button{font-size:16px}.case-explanation h3{font-size:30px}.line-bubble{font-size:17px}.hero .eyebrow{font-size:12px}.about-copy h2{font-size:30px}.worry-note p{font-size:21px}.support-row{gap:35px}.line-preview .message{font-size:17px}.letter strong{font-size:29px}.site-header nav{gap:15px}.brand strong{font-size:20px}}
@media(max-width:800px){body{font-size:17px;line-height:1.65}.section{padding:52px 0}.wrap{width:calc(100% - 40px)}.site-header{padding:0 20px}.hero-inner{padding:30px 23px 18px}.hero .eyebrow{font-size:12px;line-height:1.5;margin-bottom:16px}h1{font-size:49px;line-height:1.35;letter-spacing:.015em}.hero-description{font-size:19px;line-height:1.7;margin:20px 0 22px}.hero-description .mobile-br{display:none}.hero .button{font-size:16px;gap:15px;min-height:61px}.hero .cta-caption{font-size:12px!important}.hero-visual{height:445px;max-width:440px;margin-top:22px}.mail-scene{height:320px;bottom:53px;width:320px}.letter{padding:16px 20px}.letter strong{font-size:27px;line-height:1.3;margin-top:11px}.letter-footer{font-size:11px;margin-top:9px}.is-open .letter{transform:translateY(-112px) rotate(4deg) scale(1.02)}.floating-note{font-size:14px;padding:11px 13px}.note-one{top:10px}.note-two{top:35px;right:0}.mail-hint{font-size:12px;bottom:0;right:5px}.letter-tag{font-size:12px;padding-bottom:9px}.hero-foot{font-size:10px;margin:0 20px}.hero-foot>span{max-width:180px;line-height:1.5}.section-heading h2{font-size:30px;line-height:1.5}.section-heading{padding:0 20px}.section-heading>p:last-child,.support-description>p,.about-copy p,.steps p,.final-letter>p:not(.eyebrow):not(.cta-caption),.faq-list details>p{font-size:17px!important;line-height:1.7!important}.section-heading>p:last-child br{display:none}.worry-notes{max-width:420px;width:calc(100% - 54px);gap:24px;margin-top:30px;margin-bottom:26px}.worry-note{min-height:0;padding:18px 21px 23px}.worry-note p{font-size:22px;line-height:1.55}.note-index{font-size:13px;margin-bottom:12px}.scribble{font-size:24px;bottom:13px;right:20px}.quiet-copy{font-size:18px}.handwritten-bridge{font-size:29px;max-width:calc(100% - 40px)}.about{padding-bottom:0}.about-grid{gap:25px}.about-copy h2{font-size:29px;line-height:1.5;margin-bottom:20px}.art-caption p{font-size:24px;line-height:1.35}.art-caption span{font-size:11px}.mentor-intro{grid-template-columns:1fr;gap:8px;margin-top:20px;padding-top:18px}.mentor-intro h3{font-size:20px}.mentor-intro p{font-size:16px;line-height:1.7}.reframe{margin-top:29px;padding:29px 18px;font-size:21px}.reframe strong{font-size:28px}.support-heading{margin-bottom:28px}.support-heading h2{font-size:31px}.support-heading>p{font-size:17px;margin-top:16px}.support-row{padding:30px 0 36px;gap:25px}.support-description h3{font-size:30px;line-height:1.4;margin-bottom:18px}.section-number{margin-bottom:12px;font-size:31px}.section-number span{font-size:11px}.inline-topics{font-size:13px;gap:7px 12px}.reflection-demo,.chat-demo,.choice-demo{width:100%;max-width:480px}.reflection-demo{padding:19px}.reflection-before,.reflection-after{padding:14px}.reflection-before p,.reflection-after p{font-size:19px;line-height:1.6}.reflection-before p br,.reflection-after p br{display:none}.reflection-before>span,.reflection-after>span{font-size:13px}.demo-top{font-size:14px;margin-bottom:13px}.line-preview .message{font-size:17px;line-height:1.6;padding:12px 14px}.line-header strong{font-size:15px}.line-header{padding:13px 12px;font-size:16px}.line-header>span{font-size:16px}.line-preview-body{padding:11px 14px 17px}.choice-demo{padding:26px 18px;min-height:0}.choice-title{font-size:20px}.choice-items strong{font-size:22px}.choice-items span{font-size:13px}.choice-demo p{font-size:16px}.real-support{padding:48px 0}.real-intro{margin-bottom:23px}.real-intro h2{font-size:34px}.real-intro>p:last-child{font-size:17px;line-height:1.7;margin-top:17px}.real-intro>p:last-child br{display:none}.case-tabs{gap:6px;display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:13px;margin-bottom:20px}.case-tabs button{padding:10px 6px;font-size:13px;line-height:1.45;min-height:59px;border-radius:5px}.case-layout{grid-template-columns:1fr;gap:21px}.case-explanation{padding-top:0}.case-explanation h3{font-size:29px;margin:12px 0}.case-explanation>p:not(.case-hand){font-size:17px;line-height:1.65}.case-explanation>span{font-size:12px}.case-point{padding-top:15px;margin-top:18px}.case-point ul{margin-top:7px}.case-point li{font-size:16px;padding:5px 0 5px 24px}.case-point>span{font-size:13px}.case-hand{font-size:26px;margin-top:16px!important}.replay-chat{font-size:14px;margin-top:9px}.line-window{border-radius:12px}.line-window .line-header{padding:14px 11px}.line-window .line-header strong{font-size:15px}.line-messages{padding:15px 13px;gap:12px}.line-bubble{font-size:17px;line-height:1.65;padding:12px 14px;max-width:91%}.line-composer{padding:10px;gap:10px;font-size:21px}.composer-field{font-size:13px;padding:7px 11px}.case-disclosure{font-size:12px!important;line-height:1.65;margin-top:17px}.steps{margin-top:29px;gap:26px}.steps h3{font-size:26px;margin:5px 0 8px}.step-count{width:52px;height:52px;font-size:20px}.steps li{padding-left:72px}.steps:before{left:25px}.flow-note{font-size:14px!important;line-height:1.7;margin-top:24px;padding-top:17px}.faq-grid{gap:20px}.faq-grid h2{font-size:31px}.faq-list summary{font-size:17px;line-height:1.6;padding:17px 0;min-height:71px}.faq-list details>p{padding-right:10px}.consultation{padding:40px 16px 0}.final-letter{padding:34px 22px 25px}.final-letter h2{font-size:32px;line-height:1.4}.final-letter .eyebrow{font-size:11px;max-width:230px;margin:0 auto 16px}.final-letter .button{font-size:15px;padding-left:16px;gap:10px;min-height:61px}.final-letter .cta-mail{display:none}.final-letter .cta-caption{font-size:12px!important;line-height:1.6}.offer-line{gap:11px;margin:19px 0}.offer-line>span{font-size:12px;padding-right:11px}.offer-line>strong{font-size:20px}.offer-line>strong>span{font-size:31px}.final-signature{font-size:24px;margin-top:23px;padding-top:16px}.closing-type{font-size:23vw;padding-top:28px}.site-footer{padding:29px 20px 101px}.footer-links{font-size:13px;gap:14px;margin-top:18px}.mobile-bottom a{font-size:16px;min-height:50px}.motion-toggle{min-height:39px;font-size:12px;bottom:86px}.motion-label{display:inline}.text-link{font-size:15px;margin-top:14px}.eyebrow{font-size:12px}}
@media(max-width:360px){h1{font-size:42px}.brand strong{font-size:16px}.brand small{font-size:10px}.hero-inner{padding:25px 20px 15px}.hero .eyebrow{font-size:11px}.hero .button{font-size:14px;padding-left:15px;gap:11px}.hero-description{font-size:18px}.hero-visual{height:405px}.mail-scene{width:290px;max-width:88%;height:290px;bottom:49px}.letter{padding:14px 16px;height:90%}.letter strong{font-size:23px;line-height:1.3}.letter-footer{font-size:10px}.is-open .letter{transform:translateY(-105px) rotate(4deg) scale(1.02)}.floating-note{font-size:12px;padding:10px}.note-two{top:32px}.mail-hint{font-size:11px}.handwritten-bridge{font-size:25px}.section-heading h2,.about-copy h2{font-size:27px}.reframe strong{font-size:24px}.support-heading h2{font-size:29px}.case-tabs button{font-size:12px}.real-intro h2{font-size:30px}.case-explanation h3{font-size:27px}.line-window .line-header strong,.line-header strong{font-size:13px}.line-header>span{font-size:14px}.line-bubble{font-size:16px;max-width:94%;padding:11px 13px}.final-letter{padding:30px 18px 23px}.final-letter h2{font-size:27px}.final-letter .button{font-size:13px}.final-signature{font-size:21px}.offer-line>span{font-size:11px}.offer-line>strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.motion-toggle{display:flex}.reframe strong{transform:none!important;opacity:1!important}.line-window.playing .line-bubble{animation:none!important}.manual-motion .letter,.manual-motion .envelope-flap,.manual-motion .mail-scene,.manual-motion .envelope-front,.manual-motion .envelope-seal{transition-duration:.8s!important}.manual-motion .letter{opacity:0!important;transform:translateY(70px)!important}.manual-motion .is-open .letter{opacity:1!important;transform:translateY(-125px) rotate(4deg)!important}.manual-motion .envelope-flap{transform:rotateX(180deg)!important}.manual-motion .is-open .envelope-flap{transform:rotateX(0)!important}.manual-motion .line-window.playing .line-bubble{animation:line-arrive .6s both!important;animation-delay:calc(var(--message-index,0)*.5s)!important}}
@media(prefers-reduced-motion:reduce) and (max-width:800px){.manual-motion .is-open .letter{transform:translateY(-112px) rotate(4deg)!important}}
@media(prefers-reduced-motion:reduce) and (max-width:360px){.manual-motion .is-open .letter{transform:translateY(-105px) rotate(4deg)!important}}
.handwritten-bridge{width:fit-content;max-width:calc(100% - 40px)}
.visual-orbit{inset:85px 48px 60px;transform:rotate(-9deg)}.visual-orbit:after{inset:20px 0;transform:rotate(18deg)}
@media(max-width:800px){h1{font-size:clamp(35px,11.4vw,49px)}.visual-orbit{inset:80px 32px 50px}}
@media(max-width:800px){.final-letter{transform:none}.visual-orbit{inset:85px 42px 55px}}
@media(max-width:360px){.brand strong{font-size:14px;white-space:nowrap}.brand small{font-size:9px}.letter strong{font-size:21px}.letter{padding-left:12px;padding-right:12px}}
@media(max-width:800px){.js:not(.motion-paused) .final-letter:not(.in-view){transform:translateY(35px)}}
