:root{--paper:#f7f5ef;--ink:#303b32;--muted:#676d61;--line:#d9dcd0;--rust:#ad513b;--green:#314d40;--serif:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", Georgia, serif;--sans:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.95}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:6px}a,summary{touch-action:manipulation}p,h1,h2,h3,h4,figure{margin:0}h1,h2{font-family:var(--serif);letter-spacing:.035em;font-weight:500;line-height:1.6}h2{font-size:clamp(30px,3vw,44px)}h3,h4{font-weight:500}img{max-width:100%}::selection{color:#233a2c;background:#e2b9a7}.section-wrap{width:min(1180px,100% - 112px);margin-inline:auto}.eyebrow{letter-spacing:.16em;margin-bottom:28px;font-family:Arial,sans-serif;font-size:11px;font-weight:600;line-height:1.4}.arrow{font-family:Arial,sans-serif;font-size:19px;transition:transform .2s;display:inline-block}a:hover .arrow{transform:translate(2px,-2px)}.skip-link{z-index:20;background:#fff;padding:12px 24px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);z-index:5;height:100px;position:relative}.header-inner{justify-content:space-between;align-items:center;width:calc(100% - 96px);max-width:1400px;height:100%;margin:auto;display:flex}.brand{letter-spacing:-1.5px;align-items:center;gap:12px;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:500;line-height:1;display:inline-flex}.brand-dot{color:var(--rust)}.brand-mark{width:34px;height:34px;display:inline-block;position:relative}.brand-mark i{border:1.8px solid var(--rust);border-radius:50%;width:20px;height:30px;position:absolute;top:2px;left:2px;transform:rotate(-35deg)}.brand-mark i+i{left:13px;transform:rotate(35deg)}.site-header nav{align-items:center;gap:35px;font-size:12px;display:flex}.site-header nav a:hover{color:var(--rust)}.nav-contact{border-bottom:1px solid var(--ink);align-items:center;gap:35px;padding:8px 0;display:flex}.mobile-contact{display:none}.hero{grid-template-columns:45% 55%;display:grid;position:relative}.hero-copy{flex-direction:column;align-items:flex-start;padding:65px 30px 55px max(56px,50vw - 590px);display:flex}.hero .eyebrow{color:#56634b;align-items:center;gap:9px;margin-bottom:28px;font-size:10px;display:flex}.status-dot{background:#708465;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #70846510}.hero h1{letter-spacing:.075em;font-size:clamp(48px,5.1vw,76px);line-height:1.4}.hero h1>span{color:var(--rust)}.hero-lead{font-family:var(--serif);margin-top:24px;font-size:23px;line-height:1.75}.hero-description{color:var(--muted);margin-top:20px;font-size:13px;line-height:2.15}.button{border:1px solid #0000;justify-content:space-between;align-items:center;gap:56px;min-height:56px;padding:16px 24px;font-size:13px;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#fff;margin-top:29px}.button-primary:hover{background:#243d30}.hero-note{color:var(--muted);margin-top:13px;font-size:10px}.hero-visual{background:#c7c9b1;min-height:780px;position:relative;overflow:hidden}.hero-visual>img{object-fit:cover;object-position:61% 48%}.hero-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000,#17231666);position:absolute;inset:65% 0 0}.photo-label{z-index:1;color:#fff;align-items:center;gap:18px;font-family:Georgia,serif;font-size:25px;line-height:1.4;display:flex;position:absolute;bottom:57px;left:42px}.photo-label em{font-weight:400}.tiny-star{font-family:Arial;font-size:54px;line-height:1}.hero-visual figcaption{color:#fff;z-index:1;text-shadow:0 1px 4px #000;font-size:9px;position:absolute;bottom:17px;right:22px}.hero-bottom{border-bottom:1px solid var(--line);letter-spacing:.16em;grid-column:1/-1;justify-content:space-between;gap:20px;padding:22px 48px;font-family:Arial,sans-serif;font-size:9px;display:flex}.hero-bottom a{gap:28px;display:flex}.intro{padding-block:120px 72px}.intro-main{grid-template-columns:1.15fr 1fr;gap:10%;display:grid}.intro-text{color:var(--muted);font-size:15px}.intro-text p+p{margin-top:23px}.value-line{border-top:1px solid var(--line);justify-content:space-between;gap:20px;margin-top:70px;padding-top:27px;font-size:12px;display:flex}.value-line span:before{content:"✳";color:var(--rust);margin-right:12px}.how-section{background:#eeeee5;padding:90px 0}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:50px;display:flex}.section-heading>p{color:var(--muted);padding-bottom:8px;font-size:13px;line-height:2}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:27px;display:grid}.step-visual{background:#faf9f5;flex-direction:column;height:255px;padding:25px;display:flex;position:relative;overflow:hidden}.visual-label{letter-spacing:.13em;color:var(--muted);font-family:Arial,sans-serif;font-size:8px}.visual-caption{color:var(--muted);font-size:9px;position:absolute;bottom:10px;right:15px}.bubble{padding:14px 17px;font-size:11px;line-height:1.8}.bubble-me{background:#e4e8dc;border-radius:12px 12px 0;align-self:flex-end;width:85%;max-width:235px;margin-top:30px}.bubble-ai{background:#fff;border:1px solid #eee;border-radius:12px 12px 12px 0;align-self:flex-start;align-items:center;gap:11px;min-width:85%;margin-top:14px;display:flex}.mini-mark{color:var(--rust);font-size:23px}.match-visual{background:#e5e9dc}.match-shapes{letter-spacing:.05em;justify-content:center;align-items:center;margin-top:28px;font-family:Arial;font-size:9px;display:flex}.match-shapes>span{background:#edf0e566;border:1px solid #a3ad96;border-radius:50%;place-items:center;width:82px;height:82px;display:grid}.match-shapes i{color:var(--rust);z-index:1;margin:0 -5px;font-size:27px;font-style:normal}.match-note{text-align:center;font-family:var(--serif);margin-top:17px;font-size:15px}.date-visual{background:#e9ddd0}.date-sheet{background:#f9f7f1;width:90%;margin:17px auto 0;padding:15px 19px;transform:rotate(-3deg);box-shadow:0 7px 14px #53402a08}.date-sheet>span{font-family:var(--serif);font-size:14px}.date-sheet>div{align-items:center;gap:22px;margin:10px 0;display:flex}.date-sheet b{letter-spacing:-1px;color:var(--rust);font-family:Georgia,serif;font-size:31px;font-weight:400}.date-sheet>div>span{font-size:14px;line-height:1.7}.date-sheet small{font-size:10px}.date-sheet p{border-top:1px solid var(--line);padding-top:9px;font-size:8px}.date-sheet p span{margin-right:5px}.step-title{align-items:center;gap:17px;margin:24px 0 13px;display:flex}.step-title>span{color:var(--rust);font-family:Georgia,serif;font-size:20px}.step-title h3{font-size:17px;font-family:var(--serif)}.step>p{color:var(--muted);font-size:12px;line-height:2.1}.section-note{color:var(--muted);margin-top:32px;font-size:10px;line-height:1.9}.care-section{grid-template-columns:1fr 1fr;align-items:center;gap:9%;padding-block:110px;display:grid}.care-symbol{aspect-ratio:1;background:#e9ecdf;border-radius:50%;place-items:center;width:100%;display:grid;position:relative}.care-symbol span{border:1px solid #799477;border-radius:50%;width:38%;height:63%;position:absolute;top:18%;left:35%;transform:rotate(32deg)}.care-symbol span+span{left:24%;transform:rotate(-32deg)}.care-symbol i{color:var(--rust);z-index:1;background:#e9ecdf;padding:10px 0;font-family:Georgia,serif;font-size:clamp(22px,3vw,40px)}.care-lead{color:var(--muted);margin:22px 0 28px;font-size:13px}.care-list{margin:0 0 25px}.care-list>div{border-top:1px solid var(--line);padding:18px 0}.care-list dt{font-size:13px;font-weight:600}.care-list dd{color:var(--muted);margin:6px 0 0;font-size:11px}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:33px;padding:6px 0;font-size:12px;display:inline-flex}.plans-section{background:#eeeee5;padding:90px 0}.free-plan{border-block:1px solid #cdd3c5;align-items:center;gap:48px;padding:22px 0;display:flex}.free-plan>span{color:var(--rust);flex-shrink:0;font-size:12px;font-weight:600}.free-plan p{font-size:13px}.paid-intro{margin:39px 0 25px}.paid-intro h3{font-size:17px}.paid-intro p{color:var(--muted);margin-top:7px;font-size:11px}.plans{border:1px solid #cdd3c5;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.plan{padding:29px 26px 25px}.plan+.plan{border-left:1px solid #cdd3c5}.plan h4{font-size:15px}.plan .price{letter-spacing:-1px;color:var(--green);white-space:nowrap;margin-top:12px;font-family:Georgia,serif;font-size:42px;line-height:1.7}.price>span{margin-right:6px;font-size:25px}.price small{font-family:var(--sans);letter-spacing:0;font-size:11px;font-weight:400}.plan>p:not(.price){color:var(--muted);font-size:11px}.plan-divider{background:#d2d7c9;height:1px;margin:21px 0 17px}.plan-feature span{margin-right:10px}.pricing-notes{color:var(--muted);max-width:940px;margin:23px 0 15px;font-size:10px;line-height:2}.faq-section{grid-template-columns:1fr 1.4fr;gap:7%;padding-block:115px;display:grid}.faq-section .text-link{margin-top:29px}.faqs{border-top:1px solid var(--line)}.faqs details{border-bottom:1px solid var(--line)}.faqs summary{cursor:pointer;align-items:center;gap:18px;padding:23px 0;font-size:13px;line-height:1.7;list-style:none;display:flex}.faqs summary::-webkit-details-marker{display:none}.faq-number{color:var(--rust);flex-shrink:0;font-family:Georgia,serif;font-size:15px}.faq-toggle{flex-shrink:0;width:14px;height:14px;margin-left:auto;position:relative}.faq-toggle:before,.faq-toggle:after{content:"";background:var(--ink);width:12px;height:1px;position:absolute;top:6px;left:1px}.faq-toggle:after{transform:rotate(90deg)}details[open] .faq-toggle:after{display:none}.faqs details>p{color:var(--muted);margin:0 30px 24px 35px;font-size:12px;line-height:2.1}.closing{background:var(--green);color:var(--paper);text-align:center;padding:85px 30px;position:relative;overflow:hidden}.closing-inner{z-index:1;position:relative}.closing .eyebrow{color:#bbc6b6}.closing h2{font-size:clamp(31px,3.5vw,49px)}.closing p:not(.eyebrow){color:#d7e0d2;margin:23px 0 28px;font-size:12px;line-height:2.1}.button-light{background:var(--paper);color:var(--green)}.button-light:hover{background:#e5e6d9}.closing-note{letter-spacing:.16em;color:#bbc6b6;margin-top:23px;font-family:Arial;font-size:9px;display:block}.closing-ring{border:1px solid #7f968533;border-radius:50%;width:650px;height:650px;position:absolute;top:-30px;right:-390px;transform:rotate(-25deg)}.closing-ring:before{content:"";border:1px solid #7f968533;border-radius:50%;width:470px;height:730px;position:absolute;top:-50px;left:-90px}.site-footer{width:min(1280px,100% - 96px);margin:auto;padding:55px 0 24px}.footer-top{justify-content:space-between;align-items:flex-start;gap:30px;display:flex}.footer-top>div>p{color:var(--muted);margin-top:17px;font-size:11px}.footer-top nav{flex-wrap:wrap;align-items:center;gap:25px;font-size:11px;display:flex}.footer-top nav a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:16px;margin-top:43px;padding-top:21px;font-size:9px;display:flex}.footer-bottom>span:last-child{letter-spacing:.13em;font-family:Arial}.back-link{color:var(--muted);font-size:11px}.legal-page{padding-block:35px 95px}.legal-heading{border-bottom:1px solid var(--line);padding:50px 0 55px}.legal-heading h1{margin-bottom:23px;font-size:clamp(30px,4vw,48px)}.legal-heading>p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:13px;line-height:2.1}.legal-heading .legal-date{margin-top:22px;font-size:11px!important}.legal-layout{grid-template-columns:245px minmax(0,1fr);gap:65px;padding-top:48px;display:grid}.legal-toc{align-self:start;font-size:11px;line-height:1.8;position:sticky;top:35px}.legal-toc>p{margin-bottom:17px;font-weight:600}.legal-toc a{color:var(--muted);padding:7px 0;display:block}.legal-toc a:hover{color:var(--rust);text-decoration:underline}.legal-body section{margin-bottom:35px;scroll-margin-top:25px}.legal-body h2{font-family:var(--sans);margin-bottom:14px;font-size:19px;font-weight:500}.legal-body p,.legal-body li{color:var(--muted);font-size:13px;line-height:2.1}.legal-body p+p{margin-top:14px}.legal-body ul{padding-left:1.5em}.legal-body li+li{margin-top:9px}.legal-contact{background:#e9ecdf;margin-top:45px;padding:28px}.legal-contact p:last-child{margin-top:15px;font-size:11px}.legal-contact .text-link{margin-top:12px}.support-grid{grid-template-columns:1fr 1fr;gap:26px;margin:35px 0 65px;display:grid}.support-card{border:1px solid var(--line);padding:30px}.support-card h2{margin-bottom:15px;font-size:25px}.support-card p{color:var(--muted);font-size:13px}.support-card .text-link{margin:18px 0}.support-card ul{color:var(--muted);padding-left:1.5em;font-size:12px}.support-card small{color:var(--muted);font-size:11px}.support-questions{max-width:820px;margin:0 auto}.support-questions>h2{margin-bottom:25px;font-size:30px}.support-questions .faqs a{text-decoration:underline}.notice{border-left:2px solid var(--rust);color:var(--muted);background:#eceee2;margin:30px 0;padding:20px 25px;font-size:12px;line-height:2}.not-found{text-align:center;padding:120px 24px}.not-found p{margin:25px 0}@media (min-width:1600px){.hero-copy{padding-left:max(70px,50vw - 650px)}.hero-visual{min-height:860px}.hero h1{font-size:82px}}@media (max-width:1050px){.section-wrap,.header-inner,.site-footer{width:calc(100% - 64px)}.site-header nav{gap:22px}.hero-copy{padding:48px 28px 38px 32px}.hero-visual{min-height:730px}.hero h1{font-size:61px}.hero-lead{font-size:21px}.hero-description{font-size:12px}.hero .eyebrow{font-size:9px}.steps{gap:18px}.step-visual{height:248px;padding:18px}.bubble{padding:13px;font-size:10px}.step-title{gap:11px}.step-title h3{font-size:15px}.plan{padding:24px 17px}.plan .price{font-size:35px}.legal-layout{grid-template-columns:190px minmax(0,1fr);gap:35px}.footer-top nav{gap:17px}.value-line{font-size:10px}}@media (max-width:760px){html{scroll-padding-top:25px}.section-wrap{width:calc(100% - 44px)}.site-header{height:78px}.header-inner{width:calc(100% - 40px)}.brand{gap:10px;font-size:27px}.brand-mark{transform-origin:0;width:30px;transform:scale(.85)}.site-header nav{display:none}.mobile-contact{align-items:center;gap:12px;font-size:11px;display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:38px 24px 35px;position:relative}.hero .eyebrow{margin-bottom:25px;font-size:9px}.hero h1{letter-spacing:.055em;font-size:clamp(46px,12.3vw,65px);line-height:1.43}.hero h1 br:nth-of-type(2){display:initial}.hero-lead{margin-top:20px;font-size:20px;line-height:1.7}.hero-lead br{display:initial}.hero-description{margin-top:17px;font-size:12px;line-height:2}.button{gap:48px;min-height:54px;padding:14px 21px;font-size:12px}.hero .button{margin-top:25px}.hero-note{font-size:9px}.hero-visual{height:460px;min-height:0}.hero-visual>img{object-position:62% 42%}.photo-label{font-size:23px;bottom:43px;left:25px}.tiny-star{font-size:39px}.hero-visual figcaption{font-size:8px;bottom:12px;right:15px}.hero-bottom{letter-spacing:.07em;gap:10px;padding:18px 22px;font-size:7px}.hero-bottom a{gap:10px}.intro{padding-block:65px 48px}.eyebrow{margin-bottom:22px;font-size:9px}h2{font-size:26px;line-height:1.7}.intro-main{grid-template-columns:1fr;gap:29px}.intro-text{font-size:13px}.intro-text p+p{margin-top:18px}.value-line{flex-direction:column;gap:14px;margin-top:34px;padding-top:26px;font-size:11px}.how-section,.plans-section{padding:60px 0}.section-heading{margin-bottom:31px;display:block}.section-heading>p{margin-top:22px;font-size:12px}.steps{grid-template-columns:1fr;gap:37px}.step-visual{max-width:460px;height:255px;padding:25px}.visual-label{font-size:9px}.bubble{font-size:12px}.bubble-me{width:auto;margin-top:24px}.bubble-ai{min-width:230px}.step-title{gap:18px;margin:20px 0 10px}.step-title h3{font-size:19px}.step>p{font-size:12px;line-height:2}.match-shapes{margin-top:25px}.match-shapes>span{width:85px;height:85px}.date-sheet{max-width:260px}.section-note{font-size:10px}.care-section{grid-template-columns:1fr;gap:40px;padding-block:60px}.care-symbol{max-width:280px;margin:auto}.care-symbol i{font-size:28px}.care-copy .eyebrow{margin-bottom:22px}.care-list dt{font-size:13px}.care-list dd{font-size:12px}.care-lead{font-size:13px}.free-plan{flex-direction:column;align-items:flex-start;gap:10px;padding:21px 0}.free-plan p{font-size:12px}.paid-intro{margin-top:30px}.paid-intro h3{font-size:16px}.paid-intro p{font-size:11px}.plans{grid-template-columns:1fr}.plan{padding:23px 25px}.plan+.plan{border-top:1px solid #cdd3c5;border-left:0}.plan .price{margin-top:4px;font-size:43px}.plan-divider{margin:15px 0 12px}.plan-feature{font-size:11px}.pricing-notes{font-size:10px}.faq-section{grid-template-columns:1fr;gap:31px;padding-block:65px}.faq-section .text-link{margin-top:21px}.faqs summary{gap:13px;padding:23px 0;font-size:12px}.faq-number{font-size:15px}.faqs details>p{margin-left:29px;margin-right:12px;font-size:12px}.closing{padding:65px 22px}.closing h2{font-size:31px}.closing p:not(.eyebrow){font-size:11px}.site-footer{width:calc(100% - 44px);padding-top:40px}.footer-top{flex-direction:column;gap:30px}.footer-top nav{grid-template-columns:1fr 1fr;gap:12px 24px;font-size:10px;display:grid}.footer-bottom{flex-direction:column;gap:9px;margin-top:31px;font-size:9px}.legal-page{padding-block:25px 65px}.legal-heading{padding:35px 0}.legal-heading h1{overflow-wrap:anywhere;font-size:30px}.legal-heading>p:not(.eyebrow){font-size:12px}.legal-layout{grid-template-columns:1fr;gap:35px;padding-top:25px}.legal-toc{border-bottom:1px solid var(--line);padding-bottom:23px;position:static}.legal-toc a{font-size:11px}.legal-body h2{font-size:18px}.legal-body p,.legal-body li{font-size:12px}.legal-contact{padding:24px 20px}.support-grid{grid-template-columns:1fr;gap:20px;margin:28px 0 45px}.support-card{padding:24px 20px}.support-card h2{font-size:23px}.support-card p{font-size:12px}.support-questions>h2{font-size:26px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.support-title span{display:inline-block}
