:root{--ink: #16181b;--ink-soft: #5b5f66;--paper: #fbfaf7;--tint: #f2f0eb;--line: #dcd8cf;--line-strong: #b9b4a9;--navy: #0b3d5c;--error: #9b2c2c;--focus-ring: rgba(11, 61, 92, .15);--font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", "Meiryo", sans-serif;--font-display: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", var(--font-body);--font-num: "Inter", var(--font-body);--max-width: 1200px;--header-height: 102px;--transition: .3s ease}@media (min-width: 1024px){:root{--header-height: 77px}}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{font-size:16px;scroll-padding-top:var(--header-height)}body{margin:0;background-color:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin-top:0;color:var(--ink);font-family:var(--font-display);font-weight:500;line-height:1.5}p{margin:0 0 1.25rem;text-wrap:pretty}a{color:inherit;text-decoration:none;transition:color var(--transition)}a[href^="tel:"]{white-space:nowrap}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--navy);outline-offset:3px}h1,h2,h3,.page-title,.cta-title{text-wrap:balance;word-break:auto-phrase;overflow-wrap:break-word}.pc-only{display:none}@media (min-width: 768px){.pc-only{display:inline}}p,li,dd,summary,td,th{word-break:auto-phrase;overflow-wrap:break-word}td,th{text-wrap:pretty}summary{text-wrap:balance}.phrase{display:inline-block}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.site-header{position:sticky;top:0;z-index:100;background-color:#fbfaf7eb;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-inner{display:grid;grid-template-columns:1fr auto;grid-template-areas:"logo cta" "nav nav";align-items:center;column-gap:1rem;padding-top:.5rem}.logo{grid-area:logo;font-family:var(--font-display);font-size:1.2rem;font-weight:500;letter-spacing:.04em;white-space:nowrap}.header-cta{grid-area:cta}.site-nav{grid-area:nav;display:flex;gap:1.5rem;margin-top:.25rem;overflow-x:auto;white-space:nowrap}.site-nav a{padding:.6rem 0;border-bottom:1px solid transparent;color:var(--ink-soft);font-size:.9rem;font-weight:500}@media (max-width: 359px){.site-nav{gap:.85rem}.site-nav a{font-size:.85rem}}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}.site-nav a[aria-current=page]{border-bottom-color:var(--ink)}@media (min-width: 1024px){.header-inner{grid-template-columns:auto 1fr auto;grid-template-areas:"logo nav cta";height:var(--header-height);padding-top:0}.site-nav{justify-content:flex-end;gap:2rem;margin:0 1rem 0 0;overflow:visible}.site-nav a{font-size:.9rem}}.section{padding:5rem 0}.section-tight{padding-top:2rem}.section-tint{background-color:var(--tint)}@media (min-width: 1024px){.section{padding:7.5rem 0}.section-tight{padding-top:3rem}}.page-hero{padding:4rem 0 3rem}@media (min-width: 1024px){.page-hero{padding:6rem 0 4rem}}.site-footer{padding:3.5rem 0;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.85rem}.footer-inner{display:grid;gap:1.5rem}@media (min-width: 1024px){.footer-inner{grid-template-columns:1fr 2fr}}.site-footer p{margin:0 0 .4rem}.footer-logo{color:var(--ink);font-family:var(--font-display);font-size:1.2rem}.footer-nav{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:1rem}.footer-nav a:hover{color:var(--ink)}.btn{display:inline-flex;align-items:center;gap:.9rem;padding:1rem 1.75rem;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:var(--paper);font-family:inherit;font-size:.95rem;font-weight:500;letter-spacing:.06em;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.btn span{transition:transform var(--transition)}.btn:hover{background:var(--navy);border-color:var(--navy);color:var(--paper)}.btn:hover span{transform:translate(4px)}.btn:disabled{opacity:.5;cursor:wait}.btn-sm{padding:.5rem 1.1rem;font-size:.85rem;white-space:nowrap}.btn-light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.btn-block{width:100%;justify-content:center}.text-link{display:inline-block;padding-bottom:1px;border-bottom:1px solid currentColor;font-weight:500;letter-spacing:.04em}.text-link:hover{color:var(--navy)}.text-link,.cta-actions a[href^="tel:"]{padding-block:.6rem 1px;margin-block:-.6rem 0}.header-cta[aria-current=page]{background:transparent;color:var(--ink)}.header-cta[aria-current=page]:hover,.text-link-light,.text-link-light:hover{color:var(--paper)}.kicker{display:flex;align-items:center;gap:1rem;margin:0 0 1.75rem;color:var(--ink-soft);font-size:.9rem;font-weight:500;letter-spacing:.03em}@media (min-width: 768px){.kicker:before{content:"";width:2.5rem;height:1px;background:var(--ink-soft)}}@media (max-width: 767px){.kicker{flex-direction:column;align-items:flex-start;gap:.25rem}.kicker-sub{margin-left:0!important}}.kicker-sub{margin-left:.75rem;color:var(--ink-soft);font-family:var(--font-num);font-size:.8rem;font-weight:400;letter-spacing:.02em}.page-title{margin:0;font-size:clamp(1.8rem,4.6vw,3.25rem);line-height:1.45;letter-spacing:.03em}.page-lead{max-width:44rem;margin:2rem 0 0;color:var(--ink-soft);line-height:2}.sec-head{max-width:46rem;margin-bottom:3.5rem}.sec-label{display:flex;align-items:center;margin:0 0 1.25rem;color:var(--ink-soft);font-size:.8rem;font-weight:500;letter-spacing:.14em}.sec-label span{display:inline-flex;align-items:center;gap:.75rem;margin-right:.75rem;color:var(--ink);font-family:var(--font-num)}.sec-label span:after{content:"";width:1.75rem;height:1px;background:var(--ink-soft)}.sec-head h2{margin:0;font-size:clamp(1.6rem,3.6vw,2.5rem);line-height:1.55;letter-spacing:.02em}.sec-lead{margin:1.5rem 0 0;color:var(--ink-soft);line-height:2}.small-note{color:var(--ink-soft);font-size:.85rem}.sec-lead-link{margin-left:.75rem;color:var(--ink)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.75rem}.page-hero .hero-actions{margin-top:2rem}.notfound-links{display:grid;gap:.75rem;margin:2rem 0 0;padding:0;list-style:none}.benefits{display:grid;gap:2.5rem;counter-reset:benefit}@media (min-width: 1024px){.benefits{grid-template-columns:repeat(3,1fr);gap:3rem}}.benefit{padding-top:1.5rem;border-top:1px solid var(--ink)}.benefit h3:before{counter-increment:benefit;content:counter(benefit,decimal-leading-zero);display:block;margin-bottom:.75rem;color:var(--ink-soft);font-family:var(--font-num);font-size:.8rem;letter-spacing:.12em}.benefit h3{margin:0 0 1rem;font-size:1.2rem;line-height:1.6}.benefit p{margin:0;color:var(--ink-soft);font-size:.95rem;line-height:1.95}.faq-list{border-top:1px solid var(--ink)}.faq-item{border-bottom:1px solid var(--line-strong)}.faq-item summary{position:relative;padding:1.6rem 3rem 1.6rem 0;font-family:var(--font-display);font-size:1.05rem;font-weight:500;list-style:none;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;top:50%;right:.25rem;transform:translateY(-50%);font-size:1.5rem;font-weight:300;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-answer{padding:0 3rem 1.75rem 0;color:var(--ink-soft);line-height:2}.faq-answer p:last-child{margin-bottom:0}.plain-list{margin:0;padding-left:1.25rem;color:var(--ink-soft);font-size:.9rem;line-height:1.9}.cta-band{padding:5rem 0;background:var(--ink);color:var(--paper)}.cta-inner{display:grid;gap:2.5rem}.cta-title{margin:0;font-family:var(--font-display);font-size:clamp(1.5rem,3.6vw,2.4rem);line-height:1.6}.cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:2rem}@media (min-width: 1024px){.cta-inner{grid-template-columns:1fr auto;align-items:end}}.page-toc{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;margin-top:2.5rem;padding:.75rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem}.page-toc a{padding:.4rem 0;color:var(--ink-soft)}.page-toc a:hover{color:var(--ink)}@media (max-width: 767px){.page-hero+.section-tight{padding-top:1rem}}:root{--ease: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.16, 1, .3, 1)}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes focus-in{0%{opacity:0;filter:blur(6px);transform:translateY(14px)}to{opacity:1;filter:blur(0);transform:none}}@keyframes soft-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes settle{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}@keyframes draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pulse{0%{transform:scale(1);opacity:.5}to{transform:scale(1.7);opacity:0}}.motion .kicker{animation:soft-in 1s var(--ease-soft) .05s both}.motion .kicker:before{transform-origin:left center;animation:draw 1.2s var(--ease-soft) .1s both}.motion .hero-line{display:inline-block;animation:focus-in 1.2s var(--ease-soft) both}.motion .hero-line:nth-of-type(1){animation-delay:.15s}.motion .hero-line:nth-of-type(2){animation-delay:.3s}.motion .page-title,.motion .page-lead,.motion .aftercare,.motion .page-hero .hero-actions{animation:soft-in 1s var(--ease-soft) .15s both}.motion .hero-sub{animation:soft-in 1s var(--ease-soft) .5s both}.motion .proof-video{animation:settle 1.4s var(--ease-soft) .7s both}.motion .proof-item{animation:soft-in 1s var(--ease-soft) both}.motion .proof-item:nth-child(1){animation-delay:.8s}.motion .proof-item:nth-child(2){animation-delay:.9s}.motion .proof-item:nth-child(3){animation-delay:1s}.motion .proof-play{position:relative}.motion .proof-play:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--ink);border-radius:50%;animation:pulse 2.8s var(--ease-soft) 1.8s infinite}.motion .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease var(--reveal-delay, 0ms),transform .7s var(--ease) var(--reveal-delay, 0ms)}.motion .reveal.is-visible{opacity:1;transform:none}.motion .sec-head.reveal .sec-label span:after{transform:scaleX(0);transform-origin:left center;transition:transform .7s var(--ease) .25s}.motion .sec-head.reveal.is-visible .sec-label span:after{transform:scaleX(1)}.motion .problems li.reveal,.motion .benefit.reveal{border-top-color:transparent;background-image:linear-gradient(var(--ink),var(--ink));background-repeat:no-repeat;background-position:top left;background-size:0% 1px;transition:opacity .6s ease var(--reveal-delay, 0ms),transform .7s var(--ease) var(--reveal-delay, 0ms),background-size .9s var(--ease) calc(var(--reveal-delay, 0ms) + .1s)}.motion .problems li.reveal.is-visible,.motion .benefit.reveal.is-visible{background-size:100% 1px}.motion .step.reveal .step-num{display:inline-block;opacity:0;transform:translate(-16px);transition:opacity .6s ease calc(var(--reveal-delay, 0ms) + .15s),transform .7s var(--ease) calc(var(--reveal-delay, 0ms) + .15s)}.motion .step.reveal.is-visible .step-num{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.motion *,.motion *:before,.motion *:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}}
