:root{--ink: #231815;--ink-2: #4a423c;--mute: #8a817a;--paper: #fbfaf8;--paper-2: #f3f1eb;--line: #e7e3db;--accent: #f5c518;--accent-soft: #fdf3cd;--serif: "Shippori Mincho", "Hiragino Mincho ProN", serif;--sans: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", sans-serif;--ease: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth;scroll-padding-top:84px}html,body{margin:0;padding:0}body{background:var(--paper);background-image:url(/images/bg-texture.png);background-size:400px;background-repeat:repeat;font-family:var(--sans);color:var(--ink);line-height:1.9;font-size:15px;overflow-x:hidden}a{text-decoration:none;color:inherit}button{font-family:inherit}img{max-width:100%}::selection{background:var(--accent);color:var(--ink)}.container{max-width:1120px;margin:0 auto;padding:0 24px}.narrow{max-width:760px}.sec{padding:clamp(76px,11vw,136px) 0;position:relative;isolation:isolate;overflow:clip}.sec>*{position:relative;z-index:2}.sec:not(.sec--dark):before{content:"";position:absolute;z-index:0;top:8%;right:-210px;width:clamp(430px,48vw,720px);aspect-ratio:1;background:center / cover no-repeat url(/images/hero-learning-world-v2.webp);opacity:.13;border-radius:50%;pointer-events:none;animation:wk-watercolor-drift 30s ease-in-out infinite}.sec:nth-of-type(2n):not(.sec--dark):before{right:auto;left:-240px;background-position:20% center;animation-delay:-13s;animation-direction:reverse}.sec:nth-of-type(3n):not(.sec--dark):before{top:34%;background-position:82% center;animation-delay:-21s}.sec--tinted:not(.sec--dark):before{opacity:.16}.sec:not(.sec--dark):after{content:"";position:absolute;z-index:1;top:0;bottom:0;left:clamp(14px,2.8vw,42px);width:1px;background:repeating-linear-gradient(to bottom,rgba(42,137,143,.46) 0 5px,transparent 5px 13px,rgba(221,126,105,.42) 13px 18px,transparent 18px 29px);background-size:1px 58px;opacity:.58;pointer-events:none;animation:wk-trail-flow 9s linear infinite}.sec--tinted{background:var(--paper-2)}#diagnosis{background:#f8efea}#videos{background:#edf5f2}#next{background:#f7f3e5}#faq{background:#edf4f5}.sec--dark{background:var(--ink);color:#fff}.sec-label{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;letter-spacing:.3em;color:var(--mute);text-transform:uppercase;margin-bottom:22px}.sec-label:before{content:"";width:34px;height:1px;background:#dd7e69;display:inline-block}.sec--dark .sec-label{color:#ffffff8c}.sec-title{font-family:var(--serif);font-size:clamp(26px,4vw,40px);font-weight:600;line-height:1.6;letter-spacing:.04em;margin:0 0 18px;text-wrap:pretty}.sec-lead{font-size:15px;line-height:2.1;color:var(--ink-2);margin:0;max-width:640px;text-wrap:pretty}.sec--dark .sec-lead{color:#ffffffc7}.sec--deco{overflow:clip}.bg-ring{position:absolute;border:1px solid rgba(42,137,143,.24);border-radius:50%;pointer-events:none;opacity:.6;animation:wk-ring-breathe 22s ease-in-out infinite}.bg-ring--dashed{border-style:dashed;border-color:#dd7e6947}.sec--dark .bg-ring{border-color:#ffffff12}@keyframes wk-ring-breathe{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.025) translateY(-8px)}}@keyframes wk-watercolor-drift{0%,to{transform:translateZ(0) rotate(-2deg) scale(1)}50%{transform:translate3d(-22px,-18px,0) rotate(1.5deg) scale(1.045)}}@keyframes wk-trail-flow{to{background-position-y:-58px}}@keyframes wk-dashflow-x{to{background-position-x:-96px}}@keyframes wk-dashflow-y{to{background-position-y:-96px}}@keyframes wk-dot-breathe{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.75}}.route-divider{height:1px;max-width:1120px;margin:0 auto;background-image:linear-gradient(90deg,#dd7e69 0 18%,transparent 18% 26%,#2a898f 26% 48%,transparent 48% 62%);background-size:42px 1px;opacity:.38;animation:wk-divider-flow 12s linear infinite}@keyframes wk-divider-flow{to{background-position-x:-84px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:15px;padding:16px 30px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s,border-color .25s,color .25s}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn--primary{background:var(--ink);color:#fff}.btn--primary:hover{box-shadow:0 14px 30px -16px #23181580}.btn--ghost{background:transparent;border-color:var(--ink);color:var(--ink)}.btn--ghost:hover{background:var(--ink);color:#fff}.btn--line{background:var(--accent);color:var(--ink)}.btn--line:hover{box-shadow:0 12px 26px -14px #f5c518b3}.sec--dark .btn--ghost{border-color:#ffffff80;color:#fff}.sec--dark .btn--ghost:hover{background:#fff;color:var(--ink)}.card{background:#fff;border:1px solid var(--line);border-radius:18px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .3s}@media (hover: hover){.card--lift:hover{transform:translateY(-4px);box-shadow:0 20px 40px -24px #23181540}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal .stagger>*{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.is-visible .stagger>*{opacity:1;transform:none}.reveal.is-visible .stagger>*:nth-child(1){transition-delay:.08s}.reveal.is-visible .stagger>*:nth-child(2){transition-delay:.18s}.reveal.is-visible .stagger>*:nth-child(3){transition-delay:.28s}.reveal.is-visible .stagger>*:nth-child(4){transition-delay:.38s}.reveal.is-visible .stagger>*:nth-child(5){transition-delay:.48s}.reveal.is-visible .stagger>*:nth-child(6){transition-delay:.58s}.reveal.is-visible .stagger>*:nth-child(7){transition-delay:.68s}.reveal.is-visible .stagger>*:nth-child(8){transition-delay:.78s}.reveal.is-visible .stagger>*:nth-child(9){transition-delay:.88s}.hline{display:block;overflow:hidden;padding-bottom:.1em}.hline>span{display:inline-block;transform:translateY(115%);animation:wk-rise 1.1s var(--ease) forwards}.hline:nth-of-type(2)>span{animation-delay:.12s}.hline:nth-of-type(3)>span{animation-delay:.24s}@keyframes wk-rise{to{transform:translateY(0)}}.zoom-img{overflow:hidden}.zoom-img img{transition:transform .7s var(--ease);display:block}@media (hover: hover){a:hover .zoom-img img{transform:scale(1.05)}}.ph-frame{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(150deg,#fff,var(--paper-2));border:1px solid var(--line);overflow:hidden}.ph-frame__note{font-size:11px;letter-spacing:.08em;color:var(--mute);font-family:ui-monospace,monospace}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal,.reveal .stagger>*{opacity:1;transform:none;transition:none}.hline>span{transform:none;animation:none}.btn,.card{transition:none}.bg-ring{animation:none}.sec:not(.sec--dark):before,.sec:not(.sec--dark):after,.route-divider{animation:none}}
