:root{--vermilion:#D4212A;--vermilion-dark:#8E1B20;--vermilion-light:#E24A44;--brand-red:#E4032E;--sakura:#F7C8D6;--sakura-deep:#EE9CB6;--sakura-soft:#FBE0E8;--warm-white:#FDF6F0;--ink:#20222E;--ink-soft:#3A3D4C;--gold:#D4A24E}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background:#EFC9DC}body,html{cursor:url(/sakura-cursor.svg) 14 14,auto}body{font-family:var(--font-poppins),sans-serif;background:var(--warm-white);color:var(--ink);overflow-x:hidden}[role=button],a,button{cursor:url(/sakura-cursor.svg) 14 14,pointer}.scroll-space{height:460vh;height:460svh;position:relative;background:#EFC9DC}.stage{position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100svh;width:100%;overflow:hidden;background:#EFC9DC;transform:translateZ(0)}.scene{position:absolute;inset:0;z-index:1;will-change:transform,opacity}.scene,.scene svg{width:100%;height:100%}.scene svg{display:block}.carpet{width:100%;overflow:hidden}.carpet img{object-position:center bottom}.carpet.back{bottom:-2vh;height:14vh;z-index:2;filter:saturate(.95) brightness(1.05);opacity:.95}.carpet.front{bottom:-4vh;height:16vh;z-index:6}.torii-wrap{position:absolute;left:50%;bottom:7.5svh;transform:translateX(-50%) scale(1);transform-origin:bottom center;width:82vmin;z-index:3;filter:drop-shadow(0 26px 44px rgba(120,20,25,.4))}.torii-wrap svg{width:100%;height:auto;display:block;position:relative;z-index:2}.gate-doors{position:absolute;left:28%;right:28%;top:54%;bottom:0;z-index:1;display:flex;overflow:hidden;border-bottom:8px solid #4a1616;border-top:6px solid #4a1616;box-sizing:border-box}.gate-doors .door{width:50%;height:100%;background:rgba(253,246,240,.98);border:4px solid #4a1616;position:relative;will-change:transform;box-shadow:inset 0 0 20px rgba(0,0,0,.05);box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden}.gate-doors .door.left{border-right:2px solid #4a1616;border-radius:0}.gate-doors .door.right{border-left:2px solid #4a1616;border-radius:0}.gate-doors .door .grid{position:absolute;inset:0;background-image:linear-gradient(#4A1616 3px,transparent 0),linear-gradient(90deg,#4A1616 3px,transparent 0);background-size:25% 20%;opacity:.85}.tree{position:absolute;z-index:4;pointer-events:none;will-change:transform,opacity;filter:drop-shadow(0 18px 30px rgba(140,40,70,.22))}.tree.left{left:-15vw;bottom:8svh;width:80vw;height:100svh}.tree.left img{width:100%;height:100%;object-fit:contain;object-position:left bottom;display:block}.tree.right{right:-22vw;bottom:-10svh;width:60vw;height:75svh}.tree.right img{width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block;transform:scaleX(-1)}@media(max-aspect-ratio:1/1){.scroll-space{height:340vh;height:340svh}.scene{background:linear-gradient(180deg,#CFB5DF,#EFC0D6 70%)}.scene svg{transform:translateY(7svh)}.tree.left{left:-115vw;width:215vw;height:100svh;bottom:36svh}.tree.right{right:-45vw;width:115vw;height:45svh;bottom:13svh}.torii-wrap{width:128vmin;bottom:10svh}}.bush{position:absolute;bottom:-5svh;width:30vw;height:18svh;z-index:5;pointer-events:none;will-change:transform,opacity;-webkit-mask-image:radial-gradient(120% 108% at 50% 100%,#000 52%,transparent 96%);mask-image:radial-gradient(120% 108% at 50% 100%,#000 52%,transparent 96%)}.bush img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.bush.left{left:-10vw}.bush.right{right:-10vw;height:16svh;width:32vw}@media(max-aspect-ratio:1/1){.bush{width:46vw;height:12svh}}.river-banks{position:absolute;bottom:-4svh;left:0;width:100vw;height:18svh;z-index:5;pointer-events:none}.river-banks svg{width:100%;height:100%;display:block;overflow:visible}.rb-layer{will-change:transform}.carpet{position:absolute;bottom:-1svh;left:0;width:100vw;height:22svh;z-index:6;pointer-events:none;will-change:transform,opacity;-webkit-mask-image:linear-gradient(0deg,#000 75%,rgba(0,0,0,0));mask-image:linear-gradient(0deg,#000 75%,rgba(0,0,0,0))}.carpet img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.veil{inset:0;z-index:7;background:radial-gradient(120% 120% at 50% 45%,#FFF7F0 0,#FBE4E4 60%,#F3CBD8 100%);will-change:opacity}.reveal,.veil{position:absolute;opacity:0;pointer-events:none}.reveal{left:50%;top:50%;transform:translate(-50%,-50%) scale(.82);width:min(92vw,1000px);text-align:center;will-change:transform,opacity;z-index:9}.reveal .reveal-logo{width:clamp(72px,13vmin,120px);height:clamp(72px,13vmin,120px);border-radius:50%;object-fit:cover;background:#fff;margin-bottom:1.1rem;box-shadow:0 10px 34px rgba(120,20,25,.28),0 0 0 5px rgba(255,255,255,.65)}.reveal .jp{font-family:var(--font-noto-jp),serif;font-size:clamp(1rem,3.4vw,2rem);letter-spacing:.42em;color:var(--vermilion);margin-bottom:.5rem;text-indent:.42em;text-shadow:0 2px 14px rgba(255,255,255,.6)}.reveal h1{font-family:var(--font-cormorant),serif;font-weight:700;line-height:.98;font-size:clamp(2.6rem,9vw,7.5rem);color:var(--ink);text-shadow:0 6px 30px rgba(255,255,255,.55)}.reveal h1 .accent{display:block;color:var(--brand-red);letter-spacing:.02em}.reveal .rule{width:180px;height:2px;margin:1.4rem auto 1.2rem;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transform-origin:center}.reveal .tag{font-family:var(--font-poppins),sans-serif;font-weight:300;font-size:clamp(.85rem,1.9vw,1.25rem);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}.reveal .cta{margin-top:2rem;display:inline-flex;gap:.6rem;align-items:center;padding:.9rem 2.2rem;border-radius:999px;background:var(--brand-red);color:#fff;font-weight:500;letter-spacing:.06em;font-size:clamp(.85rem,1.6vw,1.05rem);box-shadow:0 12px 30px rgba(228,3,46,.4);text-decoration:none;pointer-events:auto;transition:transform .25s ease,box-shadow .25s ease}.reveal .cta:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(228,3,46,.5)}.reveal .cta-row{margin-top:2rem;display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;pointer-events:auto}.reveal .cta-row .cta{margin-top:0}.reveal .cta.ghost{background:rgba(255,255,255,.92);color:var(--vermilion-dark);box-shadow:0 12px 30px rgba(120,40,50,.18)}.reveal .cta.ghost:hover{box-shadow:0 18px 40px rgba(120,40,50,.28)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1.2rem;gap:1.2rem;max-width:1100px;margin:0 auto;padding:0 1.5rem 4rem}.stat-card{background:#fff;border:1px solid var(--sakura-soft);border-radius:20px;padding:1.8rem 1.4rem;text-align:center;box-shadow:0 14px 40px rgba(120,40,50,.08)}.stat-card .big{font-family:var(--font-cormorant),serif;font-weight:700;font-size:2.6rem;line-height:1;color:var(--brand-red)}.stat-card b{display:block;margin-top:.5rem;font-weight:600;font-size:.92rem;color:var(--ink)}.stat-card span{font-size:.78rem;font-weight:300;color:var(--ink-soft)}#petals{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:8}.topbar{position:fixed;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:1.1rem clamp(1.2rem,4vw,3rem);transition:background .4s ease,box-shadow .4s ease}.topbar.solid{background:rgba(253,246,240,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px rgba(0,0,0,.06)}.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--font-poppins),sans-serif;font-weight:600;font-size:1.15rem;letter-spacing:.02em;color:var(--ink)}.brand b{color:var(--brand-red);font-weight:700}.brand .mark{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:0 0 auto;box-shadow:0 2px 10px rgba(0,0,0,.15);background:#fff}.nav{display:flex;gap:2rem;font-family:var(--font-poppins);font-size:1rem;font-weight:500;align-items:center}.nav a{color:var(--ink);text-decoration:none;position:relative;transition:color .2s ease}.nav a:hover{color:var(--brand-red)}.nav-more{position:relative;display:flex;align-items:center}.nav-more-btn{display:inline-flex;align-items:center;gap:.25rem;background:none;border:0;cursor:pointer;font-family:var(--font-poppins);font-size:1rem;font-weight:500;color:var(--ink);padding:0;transition:color .2s ease}.nav-more-btn svg{transition:transform .25s ease}.nav-more-btn.active,.nav-more:focus-within .nav-more-btn,.nav-more:hover .nav-more-btn{color:var(--brand-red)}.nav-more:focus-within .nav-more-btn svg,.nav-more:hover .nav-more-btn svg{transform:rotate(180deg)}.nav-dropdown{position:absolute;top:100%;right:0;margin-top:.7rem;min-width:190px;display:flex;flex-direction:column;background:rgba(253,246,240,.98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--sakura-soft);border-radius:16px;padding:.5rem;box-shadow:0 18px 44px rgba(120,40,50,.16);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,visibility .22s;z-index:30}.nav-more:focus-within .nav-dropdown,.nav-more:hover .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown:before{content:"";position:absolute;bottom:100%;left:0;right:0;height:.7rem}.nav-dropdown a{padding:.6rem .85rem;border-radius:10px;font-size:.95rem;font-weight:500;color:var(--ink);transition:background .18s,color .18s}.nav-dropdown a.active,.nav-dropdown a:hover{background:var(--sakura-soft);color:var(--brand-red)}.mm-divider{display:block;font-family:var(--font-poppins);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand-red);opacity:.7;margin:.4rem 0 -.2rem}@media(max-width:820px){.nav{display:none}}.hint{position:absolute;left:50%;bottom:1vh;transform:translateX(-50%);z-index:9;text-align:center;will-change:opacity;display:flex;flex-direction:column;align-items:center;gap:.5rem}.hint .scroll-icon{position:relative;width:52px;height:52px;animation:hint-float 2.4s ease-in-out infinite}.hint .scroll-icon svg{width:100%;height:100%;filter:drop-shadow(0 4px 14px rgba(228,3,46,.35))}.hint .scroll-arrow{display:flex;flex-direction:column;align-items:center;gap:2px;animation:hint-arrows 1.8s ease-in-out infinite}.hint .scroll-arrow span{display:block;width:12px;height:12px;border-right:2.5px solid var(--brand-red);border-bottom:2.5px solid var(--brand-red);transform:rotate(45deg);opacity:.6}.hint .scroll-arrow span:first-child{animation:hint-arrow-fade 1.8s ease-in-out infinite}.hint .scroll-arrow span:nth-child(2){animation:hint-arrow-fade 1.8s ease-in-out .2s infinite}.hint .scroll-arrow span:nth-child(3){animation:hint-arrow-fade 1.8s ease-in-out .4s infinite}.hint .scroll-text{font-family:var(--font-noto-jp),serif;font-size:.78rem;letter-spacing:.3em;color:var(--vermilion-dark);opacity:1;font-weight:500;text-shadow:0 1px 6px rgba(255,255,255,.8)}@keyframes hint-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes hint-arrow-fade{0%{opacity:.2;transform:rotate(45deg) translateY(-3px)}50%{opacity:.8}to{opacity:.2;transform:rotate(45deg) translateY(3px)}}@keyframes hint-arrows{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.content{position:relative;z-index:10;background:var(--warm-white)}.intro{max-width:900px;margin:0 auto;padding:9rem 1.5rem 6rem;text-align:center}.intro .eyebrow{color:var(--brand-red);letter-spacing:.3em;text-transform:uppercase;font-size:.78rem;font-weight:600}.intro h2{font-family:var(--font-cormorant),serif;font-weight:700;font-size:clamp(2rem,5vw,3.4rem);margin:.8rem 0 1.4rem;line-height:1.05}.intro p{font-weight:300;font-size:clamp(1rem,2vw,1.18rem);line-height:1.8;color:var(--ink-soft)}.cards{max-width:1100px;margin:0 auto;padding:0 1.5rem 8rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:1.4rem;gap:1.4rem}.card{background:#fff;border-radius:20px;padding:2rem 1.6rem;box-shadow:0 14px 40px rgba(120,40,50,.08);border:1px solid var(--sakura-soft);transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(120,40,50,.14)}.card .ico{width:46px;height:46px;border-radius:12px;background:var(--sakura-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp);color:var(--vermilion);font-size:1.3rem;margin-bottom:1rem}.card h3{font-family:var(--font-cormorant),serif;font-size:1.5rem;margin-bottom:.5rem}.card p{font-weight:300;color:var(--ink-soft);font-size:.95rem;line-height:1.6}.footnote{text-align:center;padding:2rem;color:#b9a9a0;font-size:.8rem;border-top:1px solid var(--sakura-soft)}@keyframes sway{0%,to{transform:rotate(-.7deg)}50%{transform:rotate(.7deg)}}@keyframes sway-flipped{0%,to{transform:scaleX(-1) rotate(-.7deg)}50%{transform:scaleX(-1) rotate(.7deg)}}.tree.left img{transform-origin:left bottom;animation:sway 7.5s ease-in-out infinite}.tree.right img{transform-origin:center bottom;animation:sway-flipped 8.5s ease-in-out infinite;animation-delay:-1.5s}@keyframes breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-.6vh)}}.bush img{animation:breathe 6s ease-in-out infinite}.bush.right img{animation-delay:-3s}@media (prefers-reduced-motion:reduce){.bush img,.hint .mouse:before,.tree img{animation:none}}.nav a.active{color:var(--brand-red);font-weight:500}.nav-portal{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.4rem;border-radius:999px;background:var(--brand-red);color:#fff!important;font-weight:600;font-size:.95rem;letter-spacing:.04em;box-shadow:0 6px 18px rgba(228,3,46,.3);transition:transform .25s ease,box-shadow .25s ease;text-decoration:none}.nav-portal:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(228,3,46,.4);color:#fff}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:.4rem;z-index:30}.hamburger span{display:block;width:24px;height:2.5px;border-radius:2px;background:var(--ink);transition:transform .3s ease,opacity .3s ease}.hamburger.open span:first-child{transform:translateY(7.5px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:25;background:rgba(253,246,240,.98);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-menu.open{opacity:1;pointer-events:auto}.menu-close{position:absolute;top:1.5rem;right:1.5rem;width:44px;height:44px;border:0;background:var(--sakura-soft);border-radius:50%;color:var(--brand-red);font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(228,3,46,.15);cursor:pointer}.mobile-menu a{font-family:var(--font-cormorant),serif;font-size:1.7rem;font-weight:600;color:var(--ink);text-decoration:none}.mobile-menu a.active,.mobile-menu a:hover{color:var(--brand-red)}.mobile-menu .nav-portal{font-family:var(--font-poppins);font-size:1rem;padding:.8rem 2rem}@media(max-width:1080px){.nav{display:none}.hamburger{display:flex}}.page-hero{position:relative;padding:9.5rem 1.5rem 5rem;text-align:center;overflow:hidden;background:linear-gradient(180deg,#EFC0D6 0,#F8D5D2 45%,var(--warm-white) 100%)}.page-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 75% 10%,rgba(255,242,220,.9),transparent 65%);pointer-events:none}.page-hero .jp{position:relative;font-family:var(--font-noto-jp),serif;letter-spacing:.4em;text-indent:.4em;color:var(--vermilion);font-size:clamp(.85rem,2vw,1.1rem);margin-bottom:.6rem}.page-hero h1{position:relative;font-family:var(--font-cormorant),serif;font-weight:700;line-height:1.02;font-size:clamp(2.4rem,6.5vw,4.6rem);color:var(--ink)}.page-hero p{position:relative;max-width:640px;margin:1.1rem auto 0;font-weight:300;font-size:clamp(.95rem,1.8vw,1.12rem);line-height:1.75;color:var(--ink-soft)}.page-hero .petal-deco{position:absolute;font-size:1.4rem;opacity:.5;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.section{max-width:1100px;margin:0 auto;padding:4.5rem 1.5rem}.section-head{text-align:center;margin-bottom:3rem}.section-head .eyebrow{color:var(--brand-red);letter-spacing:.3em;text-transform:uppercase;font-size:.75rem;font-weight:600}.section-head h2{font-family:var(--font-cormorant),serif;font-weight:700;font-size:clamp(1.9rem,4.5vw,3rem);margin:.6rem 0 .8rem;line-height:1.08}.section-head p{max-width:620px;margin:0 auto;font-weight:300;color:var(--ink-soft);line-height:1.75}.grid2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.5rem}.grid2,.grid3{display:grid;gap:1.5rem}.grid3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.5rem}.course-card{background:#fff;border-radius:22px;overflow:hidden;border:1px solid var(--sakura-soft);box-shadow:0 14px 40px rgba(120,40,50,.08);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.course-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(120,40,50,.15)}.course-card .banner{height:120px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:var(--font-noto-jp),serif;font-size:3rem;color:#fff;background:linear-gradient(135deg,#E24A44,#A81E23)}.course-card .banner:after{content:"";position:absolute;inset:0;opacity:.14;pointer-events:none;background:radial-gradient(circle at 78% 28%,#fff 0 14%,transparent 15%)}.course-card .banner.alt{background:linear-gradient(135deg,#E4032E,#8E1B20)}.course-card .banner.gold{background:linear-gradient(135deg,#3A3D4C,#1A1B24)}.course-card .banner.plum{background:linear-gradient(135deg,#C0142C,#7A0E1E)}.course-card .body{padding:1.7rem 1.6rem 1.9rem;display:flex;flex-direction:column;gap:.7rem;flex:1 1}.course-card h3{font-family:var(--font-cormorant),serif;font-size:1.55rem}.course-card .meta{display:flex;flex-wrap:wrap;gap:.4rem}.pill{font-size:.72rem;letter-spacing:.05em;padding:.28rem .7rem;border-radius:999px;background:var(--sakura-soft);color:var(--vermilion-dark);font-weight:500;display:inline-block}.course-card p{font-weight:300;color:var(--ink-soft);font-size:.94rem;line-height:1.65;flex:1 1}.course-card .link{color:var(--brand-red);font-weight:500;font-size:.9rem;text-decoration:none}.course-card .link:hover{text-decoration:underline}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.4rem;gap:1.4rem;counter-reset:step}.step{background:#fff;border:1px solid var(--sakura-soft);border-radius:20px;padding:1.8rem 1.5rem;position:relative;box-shadow:0 12px 34px rgba(120,40,50,.07)}.step .num{width:42px;height:42px;border-radius:50%;background:var(--brand-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;margin-bottom:1rem;box-shadow:0 6px 16px rgba(228,3,46,.3)}.step h3{font-family:var(--font-cormorant),serif;font-size:1.35rem;margin-bottom:.45rem}.step p{font-weight:300;color:var(--ink-soft);font-size:.92rem;line-height:1.6}.branch-card{background:#fff;border:1px solid var(--sakura-soft);border-radius:22px;padding:2rem 1.7rem;box-shadow:0 14px 40px rgba(120,40,50,.08);transition:transform .3s ease}.branch-card:hover{transform:translateY(-5px)}.branch-card .jp-mark{font-family:var(--font-noto-jp),serif;color:var(--vermilion);font-size:1.5rem}.branch-card h3{font-family:var(--font-cormorant),serif;font-size:1.6rem;margin:.4rem 0 .3rem}.branch-card .tagline{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.8rem}.branch-card p{font-weight:300;color:var(--ink-soft);font-size:.93rem;line-height:1.65}.branch-card .rows{margin-top:1rem;display:flex;flex-direction:column;gap:.45rem;font-size:.88rem;color:var(--ink-soft)}.branch-card .rows b{color:var(--ink);font-weight:500}.story-card{background:#fff;border:1px solid var(--sakura-soft);border-radius:22px;padding:2rem 1.7rem;box-shadow:0 14px 40px rgba(120,40,50,.08);display:flex;flex-direction:column;gap:1rem}.story-card .quote-mark{font-family:var(--font-cormorant),serif;font-size:3rem;line-height:.5;color:var(--sakura-deep)}.story-card p{font-weight:300;color:var(--ink-soft);line-height:1.7;font-size:.95rem;flex:1 1;font-style:italic}.story-card .who{display:flex;align-items:center;gap:.8rem}.story-card .avatar{width:44px;height:44px;border-radius:50%;background:var(--sakura-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp);color:var(--vermilion);font-weight:700}.story-card .who b{display:block;font-weight:600;font-size:.95rem}.story-card .who span{font-size:.8rem;color:var(--ink-soft)}.cta-band{position:relative;margin:4rem auto 0;text-align:center;padding:5rem 1.5rem;overflow:hidden;background:linear-gradient(135deg,var(--vermilion-dark),var(--vermilion) 55%,var(--vermilion-light))}.cta-band .jp-bg{position:absolute;right:-1rem;top:50%;transform:translateY(-50%);font-family:var(--font-noto-jp),serif;font-size:clamp(8rem,22vw,16rem);color:rgba(255,255,255,.07);pointer-events:none;line-height:1}.cta-band h2{position:relative;font-family:var(--font-cormorant),serif;font-weight:700;color:#fff;font-size:clamp(1.9rem,4.6vw,3.1rem);max-width:760px;margin:0 auto}.cta-band p{position:relative;color:rgba(255,255,255,.85);font-weight:300;margin:1rem auto 2rem;max-width:560px;line-height:1.7}.cta-band .cta{display:inline-flex;padding:.9rem 2.4rem;border-radius:999px;background:#fff;color:var(--vermilion-dark);font-weight:600;text-decoration:none;letter-spacing:.04em;transition:transform .25s ease}.cta-band .cta:hover{transform:translateY(-3px)}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media(max-width:840px){.contact-wrap{grid-template-columns:1fr}}.contact-info{display:flex;flex-direction:column;gap:1.1rem}.contact-info .row{display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--sakura-soft);border-radius:16px;padding:1.1rem 1.3rem;box-shadow:0 8px 24px rgba(120,40,50,.06)}.contact-info .ico{width:40px;height:40px;flex:0 0 auto;border-radius:12px;background:var(--sakura-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp);color:var(--vermilion)}.contact-info b{display:block;font-weight:600;font-size:.92rem;margin-bottom:.15rem}.contact-info a,.contact-info span{font-weight:300;font-size:.9rem;color:var(--ink-soft);text-decoration:none;word-break:break-all}.contact-info a:hover{color:var(--brand-red)}.contact-form{background:#fff;border:1px solid var(--sakura-soft);border-radius:22px;padding:2.2rem;box-shadow:0 14px 40px rgba(120,40,50,.08);gap:1rem}.contact-form,.contact-form label{display:flex;flex-direction:column}.contact-form label{font-size:.82rem;font-weight:500;color:var(--ink);gap:.4rem}.contact-form input,.contact-form select,.contact-form textarea{font-family:var(--font-poppins);font-size:.92rem;font-weight:300;padding:.75rem 1rem;border:1px solid #ebd5dc;border-radius:12px;background:var(--warm-white);color:var(--ink);outline:none;transition:border .2s ease}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--sakura-deep)}.contact-form button{margin-top:.4rem;padding:.9rem;border:0;border-radius:999px;background:var(--brand-red);color:#fff;font-family:var(--font-poppins);font-weight:500;font-size:.95rem;letter-spacing:.04em;box-shadow:0 10px 26px rgba(228,3,46,.35);transition:transform .25s ease}.contact-form button:hover{transform:translateY(-2px)}.form-note{font-size:.82rem;color:var(--gold);font-weight:500}.form-2col{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media(max-width:640px){.form-2col{grid-template-columns:1fr}}.res-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:2.4rem}.res-filters button{font-family:var(--font-poppins);font-size:.85rem;font-weight:500;padding:.55rem 1.3rem;border-radius:999px;border:1px solid var(--sakura-deep);background:transparent;color:var(--vermilion-dark);transition:all .25s ease}.res-filters button.on{background:var(--brand-red);border-color:var(--brand-red);color:#fff;box-shadow:0 8px 20px rgba(228,3,46,.3)}.res-list{display:flex;flex-direction:column;gap:.9rem;max-width:820px;margin:0 auto}.res-item{display:flex;align-items:center;gap:1.1rem;background:#fff;border:1px solid var(--sakura-soft);border-radius:16px;padding:1rem 1.3rem;box-shadow:0 8px 24px rgba(120,40,50,.06);transition:transform .25s ease}.res-item:hover{transform:translateX(4px)}.res-item .type-ico{width:46px;height:46px;flex:0 0 auto;border-radius:14px;display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp);font-size:1.1rem;color:#fff}.res-item .type-ico.paper{background:linear-gradient(135deg,var(--vermilion-light),var(--vermilion-dark))}.res-item .type-ico.audio{background:linear-gradient(135deg,#9A80B6,#6F5D83)}.res-item .info{flex:1 1;min-width:0}.res-item .info b{display:block;font-weight:600;font-size:.96rem}.res-item .info span{font-size:.8rem;color:var(--ink-soft);font-weight:300}.dl{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.2rem;border-radius:999px;background:var(--sakura-soft);color:var(--vermilion-dark);font-weight:500;font-size:.83rem;text-decoration:none;border:0;font-family:var(--font-poppins);cursor:pointer;transition:all .25s ease}.dl:hover{background:var(--brand-red);color:#fff}.dl svg{flex:0 0 auto}.res-item .dl{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.2rem;border-radius:999px;background:var(--sakura-soft);color:var(--vermilion-dark);font-weight:500;font-size:.83rem;text-decoration:none;border:0;font-family:var(--font-poppins);transition:all .25s ease}.res-item .dl:hover{background:var(--brand-red);color:#fff}@media(max-width:560px){.res-item{flex-wrap:wrap}.res-item .dl{margin-left:calc(46px + 1.1rem)}}.portal-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:8rem 1.5rem 4rem;background:linear-gradient(160deg,#EFC0D6,#F8D5D2 50%,var(--warm-white))}.portal-card{width:100%;max-width:420px;background:#fff;border-radius:26px;padding:2.6rem 2.3rem;box-shadow:0 30px 80px rgba(120,40,50,.18);border:1px solid var(--sakura-soft);text-align:center}.portal-card .jp{font-family:var(--font-noto-jp),serif;color:var(--vermilion);letter-spacing:.35em;text-indent:.35em;font-size:.85rem}.portal-card h1{font-family:var(--font-cormorant),serif;font-size:2.1rem;margin:.4rem 0 .3rem}.portal-card .sub{font-weight:300;font-size:.88rem;color:var(--ink-soft);margin-bottom:1.8rem}.portal-card form{display:flex;flex-direction:column;gap:.9rem;text-align:left}.portal-card label{font-size:.8rem;font-weight:500;display:flex;flex-direction:column;gap:.35rem}.portal-card input{font-family:var(--font-poppins);font-weight:300;font-size:.92rem;padding:.75rem 1rem;border:1px solid #ebd5dc;border-radius:12px;background:var(--warm-white);outline:none}.portal-card input:focus{border-color:var(--sakura-deep)}.portal-card button{margin-top:.5rem;padding:.85rem;border:0;border-radius:999px;background:var(--brand-red);color:#fff;font-family:var(--font-poppins);font-weight:500;font-size:.95rem;box-shadow:0 10px 26px rgba(228,3,46,.35)}.portal-demo-note{margin-top:1.2rem;font-size:.78rem;color:var(--gold);font-weight:500}.portal-shell{max-width:1000px;margin:0 auto;padding:8rem 1.5rem 5rem}.portal-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem}.portal-top h1{font-family:var(--font-cormorant),serif;font-size:clamp(1.8rem,4vw,2.6rem)}.portal-top .user-chip{display:flex;align-items:center;gap:.7rem;background:#fff;border:1px solid var(--sakura-soft);border-radius:999px;padding:.45rem 1.1rem .45rem .5rem;box-shadow:0 6px 18px rgba(120,40,50,.07);font-size:.85rem}.portal-top .user-chip .avatar{width:32px;height:32px;border-radius:50%;background:var(--sakura-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp);color:var(--vermilion);font-weight:700;font-size:.8rem}.portal-top .logout{background:none;border:0;font-family:var(--font-poppins);font-size:.8rem;color:var(--brand-red);font-weight:500}.folders{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:2.4rem}.folder{background:#fff;border:1px solid var(--sakura-soft);border-radius:18px;padding:1.3rem 1.2rem;text-align:left;box-shadow:0 10px 28px rgba(120,40,50,.07);transition:transform .25s ease;font-family:var(--font-poppins)}.folder:hover{transform:translateY(-4px)}.folder.on{border-color:var(--brand-red);box-shadow:0 14px 34px rgba(228,3,46,.15)}.folder .f-ico{font-size:1.5rem;margin-bottom:.6rem}.folder b{display:block;font-weight:600;font-size:.93rem;color:var(--ink)}.folder span{font-size:.78rem}.upload-zone{border:2px dashed var(--sakura-deep);border-radius:18px;padding:2rem;text-align:center;margin-bottom:1.6rem;background:rgba(251,224,232,.3);color:var(--ink-soft);font-weight:300;font-size:.92rem}.upload-zone b{color:var(--vermilion-dark);font-weight:600}.doc-crumb{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}.doc-crumb button{background:none;border:0;font-family:var(--font-poppins);font-size:.92rem;font-weight:500;color:var(--ink-soft);cursor:pointer;padding:.2rem .3rem;border-radius:8px}.doc-crumb button.on,.doc-crumb button:hover{color:var(--brand-red)}.doc-crumb button.on{font-weight:600}.doc-crumb>span{color:var(--sakura-deep);font-weight:600}.doc-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:1.4rem}.doc-actions .act{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.3rem;border-radius:999px;font-family:var(--font-poppins);font-size:.87rem;font-weight:500;cursor:pointer;border:1px solid var(--sakura-deep);background:#fff;color:var(--vermilion-dark);transition:all .25s ease}.doc-actions .act:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(120,40,50,.12)}.doc-actions .act.primary{background:var(--brand-red);border-color:var(--brand-red);color:#fff;box-shadow:0 8px 20px rgba(228,3,46,.3)}.modal-back{position:fixed;inset:0;z-index:60;background:rgba(32,34,46,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem}.modal-card{background:#fff;border-radius:20px;padding:1.8rem;width:100%;max-width:380px;border:1px solid var(--sakura-soft);box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-card b{font-family:var(--font-cormorant),serif;font-size:1.35rem;display:block;margin-bottom:.6rem;color:var(--ink)}.modal-card p{font-size:.92rem;color:var(--ink-soft);line-height:1.6}.modal-card input,.modal-card p{font-weight:300;margin-bottom:1.2rem}.modal-card input{width:100%;font-family:var(--font-poppins);font-size:.95rem;padding:.7rem 1rem;border:1px solid #ebd5dc;border-radius:12px;background:var(--warm-white);outline:none}.modal-card input:focus{border-color:var(--sakura-deep)}.modal-btns{display:flex;gap:.7rem;justify-content:flex-end}.modal-btns button{font-family:var(--font-poppins);font-weight:500;font-size:.88rem;padding:.6rem 1.4rem;border-radius:999px;border:0;cursor:pointer;transition:transform .2s ease}.modal-btns button:hover{transform:translateY(-1px)}.modal-btns .ghost{background:transparent;border:1px solid #ebd5dc;color:var(--ink-soft)}.modal-btns .danger,.modal-btns .primary{background:var(--brand-red);color:#fff;box-shadow:0 8px 18px rgba(228,3,46,.3)}.folder span{display:block;font-size:.75rem;color:var(--ink-soft);font-weight:300;margin-top:.15rem}.splash{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;overflow:hidden}.s-panel{position:absolute;top:0;bottom:0;width:50.5%;background:linear-gradient(180deg,#0D0D0F,#17181C 45%,#232228 75%,#41191D);transition:transform 1.1s cubic-bezier(.76,0,.24,1)}.s-panel:before{content:"";position:absolute;inset:0;opacity:.06;background-image:linear-gradient(rgba(255,255,255,.9) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.9) 1px,transparent 0);background-size:72px 72px}.s-panel.left{left:0}.s-panel.right{right:0}.s-panel.left:after,.s-panel.right:after{content:"";position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,rgba(198,202,210,.6),transparent)}.s-panel.left:after{right:0}.s-panel.right:after{left:0}.splash.exit .s-panel.left{transform:translateX(-101%)}.splash.exit .s-panel.right{transform:translateX(101%)}.s-inner{position:relative;text-align:center;padding:1rem;transition:opacity .7s ease,transform .9s ease}.splash.exit .s-inner{opacity:0;transform:scale(1.08)}.s-sun{left:50%;top:38%;transform:translate(-50%,-58%);width:min(46vmin,300px);height:min(46vmin,300px);background:radial-gradient(circle at 50% 42%,#F25C54 0,#E4032E 55%,#B3122E 100%);box-shadow:0 0 90px rgba(228,3,46,.45),0 0 200px rgba(228,3,46,.25);z-index:0;animation:s-sunrise 1.6s cubic-bezier(.22,1,.36,1) both}.s-sun,.s-sun-ring{position:absolute;border-radius:50%}.s-sun-ring{inset:-14px;border:1px solid rgba(198,202,210,.5);animation:s-ring 2.6s ease-out .8s both}@keyframes s-sunrise{0%{opacity:0;transform:translate(-50%,-20%) scale(.6)}to{opacity:1;transform:translate(-50%,-58%) scale(1)}}@keyframes s-ring{0%{opacity:0;transform:scale(.85)}45%{opacity:1}to{opacity:.35;transform:scale(1.12)}}.s-kanji{position:relative;z-index:1;font-family:var(--font-noto-jp),serif;font-weight:700;font-size:clamp(4rem,15vmin,7.5rem);color:#FDF6F0;line-height:1;letter-spacing:.08em;text-indent:.08em;text-shadow:0 4px 30px rgba(0,0,0,.35)}.s-kanji span{display:inline-block;opacity:0;filter:blur(14px);transform:translateY(18px) scale(1.12);animation:s-ink .9s cubic-bezier(.22,1,.36,1) forwards}.s-kanji span:first-child{animation-delay:.55s}.s-kanji span:nth-child(2){animation-delay:.85s}@keyframes s-ink{to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}.s-name{position:relative;z-index:1;margin-top:1.1rem;font-family:var(--font-cormorant),serif;font-weight:700;color:#FDF6F0;font-size:clamp(1.25rem,4vmin,2rem);letter-spacing:.5em;text-indent:.5em;line-height:1.35;opacity:0;animation:s-track 1.1s ease .5s forwards}.s-name em{display:block;font-style:normal;font-size:.62em;color:#C6CAD2;letter-spacing:.62em;text-indent:.62em}@keyframes s-track{0%{opacity:0;letter-spacing:.9em}to{opacity:1;letter-spacing:.5em}}.s-rule{position:relative;z-index:1;height:1px;width:0;margin:1.1rem auto .9rem;background:linear-gradient(90deg,transparent,#C6CAD2,transparent);animation:s-rule 1s ease 1.5s forwards}@keyframes s-rule{to{width:min(60vw,260px)}}.s-tag{position:relative;z-index:1;font-family:var(--font-poppins),sans-serif;font-weight:300;font-size:clamp(.72rem,2vmin,.9rem);letter-spacing:.34em;text-indent:.34em;text-transform:uppercase;color:rgba(253,246,240,.75);opacity:0;animation:s-fade .8s ease 1.5s forwards}.s-tag .s-arrow{color:var(--brand-red);display:inline-block;animation:s-arrow 1.6s ease-in-out 2s infinite}@keyframes s-fade{to{opacity:1}}@keyframes s-arrow{0%,to{transform:translateX(0)}50%{transform:translateX(6px)}}.s-progress{position:relative;z-index:1;width:min(52vw,220px);height:2px;margin:2.1rem auto 0;border-radius:2px;background:rgba(253,246,240,.14);overflow:hidden;opacity:0;animation:s-fade .5s ease .9s forwards}.s-progress i{display:block;height:100%;width:0;border-radius:2px;background:linear-gradient(90deg,var(--brand-red),#C6CAD2);animation:s-load 2.5s cubic-bezier(.4,0,.2,1) .9s forwards}@keyframes s-load{to{width:100%}}.s-enter{position:relative;margin-top:1rem;font-family:var(--font-poppins);font-weight:300;font-size:.62rem;letter-spacing:.3em;text-indent:.3em;color:rgba(253,246,240,.4);animation:s-fade .8s ease 2.2s forwards}.s-enter,.s-petal{z-index:1;opacity:0}.s-petal{position:absolute;pointer-events:none;filter:saturate(.9)}.s-petal.p1{left:14%;top:-6%;font-size:1.1rem;animation:s-petal 5.5s linear 1.2s infinite}.s-petal.p2{left:72%;top:-8%;font-size:.85rem;animation:s-petal 7s linear 2s infinite}.s-petal.p3{left:44%;top:-10%;font-size:.7rem;animation:s-petal 6.2s linear 3s infinite}@keyframes s-petal{0%{opacity:0;transform:translate(0) rotate(0)}12%{opacity:.7}to{opacity:0;transform:translate(9vmin,115vmin) rotate(300deg)}}@media (prefers-reduced-motion:reduce){.s-enter,.s-kanji span,.s-name,.s-progress,.s-rule,.s-sun,.s-tag{animation-duration:.01s;animation-delay:0s}.s-petal,.s-tag .s-arrow{animation:none}.s-progress i{animation:s-load .8s ease 0s forwards}}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.2rem;gap:1.2rem}.g-card{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:3/4.6;box-shadow:0 14px 40px rgba(120,40,50,.12);border:1px solid var(--sakura-soft);background:#fff}.g-card img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform .5s ease;filter:saturate(1.06) contrast(1.04)}.g-card:hover img{transform:scale(1.05)}.g-card:before{background:linear-gradient(155deg,rgba(247,200,214,.18),rgba(255,255,255,0) 35%),linear-gradient(180deg,rgba(0,0,0,0) 52%,rgba(62,18,26,.52));transition:opacity .4s ease}.g-card:after,.g-card:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}.g-card:after{border-radius:20px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),inset 0 -40px 60px -30px rgba(142,27,32,.35)}.g-card .g-tag{position:absolute;z-index:2;left:.9rem;bottom:.9rem;background:rgba(253,246,240,.92);color:var(--vermilion-dark);font-size:.72rem;font-weight:600;letter-spacing:.08em;padding:.35rem .85rem;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.15)}.g-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:1.2rem;gap:1.2rem;margin-top:1.2rem}.g-strip .g-card{aspect-ratio:16/10}.gallery-masonry{columns:260px 3;column-gap:1.2rem}.gallery-masonry .g-card{margin-bottom:1.2rem;page-break-inside:avoid;break-inside:avoid;aspect-ratio:auto}.gallery-masonry .g-card.tall img{aspect-ratio:3/4.4;object-fit:cover}.gallery-masonry .g-card.wide img{aspect-ratio:16/11;object-fit:cover}.site-footer{background:var(--ink);color:#CFC4CC;position:relative;z-index:10}.site-footer .foot-grid{max-width:1100px;margin:0 auto;padding:4rem 1.5rem 2.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:2.2rem;gap:2.2rem}.site-footer h4{font-family:var(--font-cormorant),serif;color:#fff;font-size:1.25rem;margin-bottom:1rem}.site-footer .fbrand{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.site-footer .fbrand img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#fff}.site-footer .fbrand b{color:#fff;font-size:1.05rem}.site-footer p{font-weight:300;font-size:.86rem;line-height:1.7}.site-footer ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}.site-footer ul a{color:#CFC4CC;text-decoration:none;font-size:.88rem;font-weight:300}.site-footer ul a:hover{color:var(--sakura)}.site-footer .socials{display:flex;gap:.7rem;margin-top:1rem}.site-footer .socials a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#CFC4CC;text-decoration:none;font-size:.8rem;transition:all .25s ease}.site-footer .socials a:hover{background:var(--brand-red);border-color:var(--brand-red);color:#fff}.site-footer .foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.4rem;text-align:center;font-size:.78rem;font-weight:300;color:#9c8f99}.site-footer .foot-bottom .jp{font-family:var(--font-noto-jp),serif;color:var(--sakura-deep);letter-spacing:.3em;display:block;margin-bottom:.35rem}@media(max-aspect-ratio:1/1){.river-banks{height:6svh;bottom:-3svh}.carpet{height:6svh;bottom:0}.hint{bottom:2.5svh}.hint .scroll-icon{width:42px;height:42px}.hint .scroll-text{background:rgba(253,246,240,.82);padding:.3rem .9rem;border-radius:999px;box-shadow:0 4px 14px rgba(120,40,50,.15)}}.founder-wrap{display:flex;gap:2.5rem;max-width:1000px;margin:0 auto;align-items:center}.founder-photo{flex:0 0 340px;position:relative}.founder-photo:before{content:"";position:absolute;inset:-14px -14px 14px 14px;border-radius:24px;background:linear-gradient(150deg,var(--sakura),var(--sakura-deep));z-index:0}.founder-photo:after{content:"光輝";position:absolute;bottom:-10px;right:14px;z-index:2;font-family:var(--font-noto-jp),serif;font-size:1.1rem;color:#fff;background:var(--brand-red);padding:.3rem .8rem;border-radius:999px;box-shadow:0 8px 20px rgba(228,3,46,.35)}.founder-photo img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:20px;box-shadow:0 24px 60px rgba(120,40,50,.28);border:4px solid #fff;background:var(--sakura-soft);display:block}@media(max-width:760px){.founder-wrap{flex-direction:column;align-items:center}.founder-photo{flex:0 0 auto;max-width:300px;width:100%}}.no-courses{text-align:center;padding:3rem 1rem;font-weight:300;color:var(--ink-soft);background:#fff;border:1px dashed var(--sakura-deep);border-radius:18px}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.4rem;gap:1.4rem}.video-card{background:#fff;border:1px solid var(--sakura-soft);border-radius:18px;overflow:hidden;box-shadow:0 14px 40px rgba(120,40,50,.1)}.video-card .video-thumb,.video-card iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.video-card .video-thumb{background-size:cover;background-position:50%;cursor:pointer;position:relative;padding:0}.video-card .video-thumb:after{content:"";position:absolute;inset:0;background:rgba(32,34,46,.18);transition:background .25s ease}.video-card .video-thumb:hover:after{background:rgba(32,34,46,.05)}.video-card .play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:62px;height:62px;border-radius:50%;background:var(--brand-red);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(228,3,46,.45);padding-left:4px;transition:transform .25s ease}.video-card .video-thumb:hover .play-btn{transform:translate(-50%,-50%) scale(1.08)}.video-card .video-title{padding:.9rem 1.1rem;font-weight:500;font-size:.92rem;color:var(--ink)}.course-crumb{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:center;margin-top:1.6rem}.course-crumb button{background:none;border:0;font-family:var(--font-poppins);font-size:.92rem;font-weight:500;color:var(--ink-soft);cursor:pointer;padding:.2rem .35rem;border-radius:8px}.course-crumb button:hover{color:var(--brand-red)}.course-crumb button.on{color:var(--brand-red);font-weight:600}.step-track{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.15rem;margin-top:1.7rem}.st-item{display:inline-flex;align-items:center}.st-line{width:26px;height:2px;border-radius:2px;background:var(--sakura-deep);margin:0 .1rem;opacity:.7}.step-chip{display:inline-flex;align-items:center;gap:.45rem;background:#fff;border:1.5px solid var(--sakura-soft);border-radius:999px;padding:.35rem .85rem .35rem .4rem;font-family:var(--font-poppins);cursor:pointer;transition:all .25s ease}.step-chip .sc-num{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700}.step-chip .sc-lab{font-size:.9rem;font-weight:600;white-space:nowrap}.step-chip.done{color:var(--vermilion-dark)}.step-chip.done .sc-num{background:var(--sakura-soft);color:var(--brand-red)}.step-chip.done:hover{border-color:var(--sakura-deep);transform:translateY(-1px)}.step-chip.current{background:linear-gradient(135deg,#E24A44,#A81E23);border-color:transparent;box-shadow:0 8px 20px rgba(168,30,35,.28)}.step-chip.current .sc-lab{color:#fff}.step-chip.current .sc-num{background:rgba(255,255,255,.28);color:#fff}.step-chip.current{animation:chipPulse 1.8s ease-in-out infinite}@keyframes chipPulse{0%,to{box-shadow:0 8px 20px rgba(168,30,35,.28)}50%{box-shadow:0 8px 26px rgba(168,30,35,.5)}}@keyframes stepIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.step-anim{animation:stepIn .42s cubic-bezier(.22,1,.36,1)}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:1.5rem;gap:1.5rem;max-width:840px;margin:2.4rem auto 0}.choice-grid.depth-1 .cc-ico{background:linear-gradient(135deg,#C0392B,#7B1418)}.choice-grid.depth-2 .cc-ico{background:linear-gradient(135deg,#A81E23,#5E0E12)}.choice-card{position:relative;display:flex;align-items:center;gap:1.3rem;text-align:left;width:100%;background:#fff;border:1.5px solid var(--sakura-soft);border-radius:22px;padding:1.8rem 1.9rem;cursor:pointer;overflow:hidden;box-shadow:0 14px 38px rgba(120,40,50,.09);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;font-family:var(--font-poppins)}.choice-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#E24A44,#A81E23);transform:scaleY(0);transform-origin:top;transition:transform .28s ease}.choice-card:hover{transform:translateY(-5px);box-shadow:0 26px 56px rgba(120,40,50,.2);border-color:var(--sakura-deep)}.choice-card:hover:before{transform:scaleY(1)}.choice-card:hover .cc-arrow{transform:translateX(4px);background:var(--brand-red);color:#fff}.choice-card .cc-ico{flex:0 0 auto;width:74px;height:74px;border-radius:19px;display:flex;align-items:center;justify-content:center;font-family:var(--font-noto-jp),serif;font-size:2.1rem;color:#fff;background:linear-gradient(135deg,#E24A44,#A81E23);box-shadow:0 8px 20px rgba(168,30,35,.28)}.choice-card .cc-body{flex:1 1;min-width:0}.choice-card .cc-body b{display:block;font-family:var(--font-cormorant),serif;font-size:1.7rem;color:var(--ink);font-weight:700;line-height:1.12}.choice-card .cc-body span{display:block;font-size:.95rem;color:var(--ink-soft);font-weight:300;margin-top:.35rem;line-height:1.5}.choice-card .cc-arrow{flex:0 0 auto;color:var(--brand-red);width:38px;height:38px;border-radius:50%;display:flex;justify-content:center;transition:transform .25s ease,background .25s ease,color .25s ease}.choice-card .cc-arrow,.visa-link{background:var(--sakura-soft);align-items:center}.visa-link{display:inline-flex;gap:.5rem;padding:.7rem 1.4rem;border-radius:999px;color:var(--vermilion-dark);font-weight:500;font-size:.88rem;text-decoration:none;border:1px solid var(--sakura-deep);transition:all .25s ease}.visa-link:hover{background:var(--brand-red);color:#fff;border-color:var(--brand-red);transform:translateY(-2px)}.visa-link svg{flex:0 0 auto}.course-group{margin-bottom:2.5rem}.course-group h3{font-family:var(--font-cormorant),serif;font-size:1.5rem;color:var(--ink);margin-bottom:.25rem}.course-group .cg-sub{font-weight:300;font-size:.9rem;color:var(--ink-soft);margin-bottom:1.2rem}.course-card .feats{flex:1 1}.course-card .si-sub{font-size:.92rem;color:var(--ink-soft);font-weight:400;line-height:1.5;margin-top:-.2rem}.course-card .fee{font-family:var(--font-cormorant),serif;font-size:2rem;font-weight:700;color:var(--brand-red);line-height:1.1;padding:.6rem .9rem;background:var(--sakura-soft);border-radius:14px}.course-card .fee small{display:block;font-family:var(--font-poppins);font-size:.74rem;font-weight:500;color:var(--vermilion-dark);margin-top:.25rem}.course-card .crows{display:flex;flex-direction:column;gap:.6rem;font-size:.88rem;color:var(--ink-soft)}.course-card .crows>div{display:flex;gap:.65rem;align-items:flex-start;line-height:1.5}.course-card .crows>div>svg{flex:0 0 auto;color:var(--brand-red);margin-top:2px}.course-card .crows b{display:block;color:var(--ink);font-weight:600;font-size:.8rem}.course-card .feats{list-style:none;display:flex;flex-direction:column;gap:.45rem;font-size:.88rem;color:var(--ink-soft);font-weight:300}.course-card .feats li{display:flex;gap:.55rem;align-items:flex-start;line-height:1.5}.course-card .feats li>svg{flex:0 0 auto;color:var(--brand-red);margin-top:3px}.course-card .course-cta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.4rem}.course-card .call{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--ink);text-decoration:none;font-weight:500}.course-card .call svg,.course-card .call:hover{color:var(--brand-red)}.course-toggles{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1rem 2.5rem}.ctg-group{display:flex;flex-direction:column;align-items:center;gap:.5rem}.ctg-cap{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-red)}.ctg{display:inline-flex;gap:.3rem;background:#fff;border:1px solid var(--sakura-soft);border-radius:999px;padding:.3rem;box-shadow:0 8px 24px rgba(120,40,50,.07)}.ctg button{font-family:var(--font-poppins);font-size:.88rem;font-weight:500;padding:.55rem 1.4rem;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);cursor:pointer;transition:all .2s ease}.ctg button.on{background:var(--brand-red);color:#fff;box-shadow:0 6px 16px rgba(228,3,46,.28)}.ctg.small button{font-size:.82rem;padding:.45rem 1.1rem}.grate{display:flex;align-items:center;justify-content:center;gap:.9rem;flex-wrap:wrap;margin-bottom:2.2rem}.grate .gnum{font-family:var(--font-cormorant),serif;font-size:3rem;font-weight:700;line-height:1;color:var(--ink)}.grate .gstars{color:#FBBC04;font-size:1.3rem;letter-spacing:.1em}.grate .gmeta{text-align:left;font-size:.85rem;color:var(--ink-soft);font-weight:300}.grate .gmeta b{display:block;font-weight:600;color:var(--ink)}.glink{display:inline-flex;align-items:center;gap:.5rem;margin-top:2rem;padding:.75rem 1.7rem;border-radius:999px;background:#fff;border:1px solid var(--sakura-soft);color:var(--ink);font-weight:500;font-size:.88rem;text-decoration:none;box-shadow:0 8px 24px rgba(120,40,50,.08);transition:transform .25s ease}.glink:hover{transform:translateY(-2px)}.story-card .gstars-sm{color:#FBBC04;font-size:.95rem;letter-spacing:.12em}.empty-state{text-align:center;padding:3.5rem 1.5rem;background:#fff;border:1px dashed var(--sakura-deep);border-radius:20px;color:var(--ink-soft)}.empty-state .jp{font-family:var(--font-noto-jp),serif;font-size:1.8rem;color:var(--vermilion);margin-bottom:.6rem}.empty-state b{display:block;font-family:var(--font-cormorant),serif;font-size:1.4rem;color:var(--ink);margin-bottom:.35rem}.empty-state p{font-weight:300;font-size:.92rem}@media(max-width:900px){.section{padding:3.5rem 1.25rem}.intro{padding:7rem 1.25rem 4rem}.cards{padding:0 1.25rem 5rem}.portal-shell{padding:7rem 1.1rem 3.5rem}.cta-band{padding:4rem 1.25rem}}@media(max-width:640px){.section{padding:2.8rem 1rem}.section-head{margin-bottom:2rem}.intro{padding:6.5rem 1rem 3.5rem}.page-hero{padding:8rem 1rem 3.5rem}.brand{font-size:1rem}.brand .mark{width:32px;height:32px}.topbar{padding:.85rem 1rem}.cards,.grid2,.grid3,.steps{gap:1.1rem}.course-card .banner{height:96px;font-size:2.4rem}.contact-form{padding:1.5rem 1.2rem}.portal-card{padding:2rem 1.4rem}.portal-top{flex-direction:column;align-items:flex-start;gap:.8rem}.portal-top .user-chip{max-width:100%}.portal-top .user-chip span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-zone{padding:1.4rem 1rem;font-size:.85rem}.folders{grid-template-columns:repeat(2,1fr);gap:.7rem}.folder{padding:1rem .9rem}.res-filters{gap:.45rem}.res-filters button{padding:.45rem 1rem;font-size:.8rem}.res-item{padding:.85rem 1rem;gap:.8rem;flex-wrap:wrap}.res-item .info{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 46px - .8rem);min-width:0}.res-item .info b{font-size:.88rem}.res-item .dl{margin-left:0}.gallery-masonry{columns:150px 2;column-gap:.8rem}.gallery-masonry .g-card{margin-bottom:.8rem}.g-strip,.gallery-grid{gap:.8rem}.g-card .g-tag{font-size:.62rem;padding:.28rem .65rem;left:.6rem;bottom:.6rem}.cta-band h2{font-size:1.7rem}.site-footer .foot-grid{padding:3rem 1.25rem 2rem;gap:1.8rem}.branch-card,.story-card{padding:1.5rem 1.3rem}.empty-state{padding:2.5rem 1rem}}@media(max-width:400px){.brand span{font-size:.9rem}.reveal h1{font-size:2.3rem}.folders{grid-template-columns:1fr 1fr}.res-item{flex-wrap:wrap}.res-item .dl{margin-left:calc(46px + .8rem)}}.faq-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:.8rem}.faq-item{border:1px solid rgba(179,32,46,.14);border-radius:16px;background:rgba(255,255,255,.6);overflow:hidden}.faq-item>summary{cursor:pointer;list-style:none;padding:1.05rem 1.3rem;font-weight:500;font-size:1.02rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.faq-item>summary::-webkit-details-marker{display:none}.faq-item>summary:after{content:"＋";color:var(--brand-red,#b3202e);font-weight:600;transition:transform .2s ease}.faq-item[open]>summary:after{content:"－"}.faq-item>div{padding:0 1.3rem 1.15rem;color:var(--ink-soft,#5a5150);font-weight:300;line-height:1.7}.why-best{max-width:900px;margin:0 auto;display:grid;grid-gap:1rem;gap:1rem}.why-best .wb-row{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.15rem;border-radius:14px;background:rgba(255,255,255,.55);border:1px solid rgba(179,32,46,.1)}.why-best .wb-ico{font-family:var(--font-noto-jp),serif;color:var(--brand-red,#b3202e);font-size:1.3rem;line-height:1;flex-shrink:0}.why-best .wb-row b{display:block;margin-bottom:.2rem}@media(max-aspect-ratio:1/1){.torii-wrap{filter:none;will-change:transform}.tree{filter:none;will-change:auto}.tree.left img,.tree.right img{animation:none}.scene{will-change:transform}.carpet,.hint,.rb-layer{will-change:auto}#petals{opacity:.9}}@media(max-width:820px){.tree{filter:none}.tree.left img,.tree.right img{animation:none}.topbar{transition:background .25s ease}.topbar.solid{background:rgba(253,246,240,.97)}.mobile-menu,.topbar.solid{backdrop-filter:none;-webkit-backdrop-filter:none}.mobile-menu{background:rgba(253,246,240,.99)}}.site-footer .socials a svg{width:16px;height:16px;display:block}.fab-wrap{position:fixed;right:18px;bottom:18px;z-index:24;gap:.7rem}.fab-actions,.fab-wrap{display:flex;flex-direction:column;align-items:flex-end}.fab-actions{gap:.55rem;opacity:0;pointer-events:none;transform:translateY(12px) scale(.96);transform-origin:bottom right;transition:opacity .22s ease,transform .22s ease}.fab-wrap.open .fab-actions{opacity:1;pointer-events:auto;transform:none}.fab-item{display:inline-flex;align-items:center;gap:.55rem;padding:.62rem 1rem;border-radius:999px;text-decoration:none;font-family:var(--font-poppins),sans-serif;font-weight:500;font-size:.85rem;color:#fff;box-shadow:0 8px 22px rgba(120,40,50,.22)}.fab-item svg{width:19px;height:19px;flex:0 0 auto}.fab-item.wa{background:#25D366}.fab-item.call{background:var(--brand-red,#E4032E)}.fab-item.mail{background:#2A2A32}.fab-item span{white-space:nowrap}.fab-btn{width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;background:var(--brand-red,#E4032E);color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(228,3,46,.45);transition:transform .25s ease,box-shadow .25s ease}.fab-btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(228,3,46,.55)}.fab-btn .fab-ico{width:26px;height:26px;transition:transform .25s ease}.fab-ico-close,.fab-wrap.open .fab-ico-chat{display:none}.fab-wrap.open .fab-ico-close{display:block}@media(max-width:640px){.fab-wrap{right:14px;bottom:14px}.fab-btn{width:52px;height:52px}.fab-btn .fab-ico{width:23px;height:23px}}.course-detail-link{display:inline-flex;align-items:center;gap:.4rem;margin:.1rem 0 .9rem;font-size:.82rem;font-weight:600;color:var(--vermilion-dark);text-decoration:none;border-bottom:1px dashed var(--sakura-deep);padding-bottom:1px;transition:color .2s,border-color .2s;align-self:flex-start}.course-detail-link:hover{color:var(--brand-red);border-color:var(--brand-red)}.course-detail-link svg{flex:0 0 auto}.re-page{background:var(--warm-white);min-height:100vh}.re-wrap{max-width:920px;margin:0 auto;padding:0 1.3rem}.re-hero{background:linear-gradient(160deg,#fff 0,var(--sakura-soft) 100%);border-bottom:1px solid var(--sakura);padding:2rem 0 2.6rem;text-align:center;position:relative}.re-crumb{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:center;font-size:.78rem;color:var(--ink-soft);margin-bottom:1rem}.re-crumb a{color:var(--vermilion-dark);text-decoration:none}.re-crumb a:hover{text-decoration:underline}.re-crumb span{color:var(--sakura-deep)}.re-crumb b{color:var(--ink)}.re-langrow{margin-bottom:1.3rem}.re-kanji,.re-langrow{display:flex;justify-content:center}.re-kanji{width:64px;height:64px;margin:0 auto .8rem;border-radius:16px;align-items:center;font-size:2rem;color:#fff;background:linear-gradient(140deg,var(--vermilion),var(--vermilion-dark));box-shadow:0 8px 22px rgba(142,27,32,.28)}.re-hero h1{font-family:var(--font-playfair),serif;font-size:clamp(1.7rem,5vw,2.6rem);color:var(--ink);line-height:1.15}.re-tag{color:var(--vermilion-dark);font-weight:600;margin-top:.5rem;font-size:.95rem}.re-quick{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin:1.2rem 0 .4rem}.re-quick span{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--sakura);border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600;color:var(--ink-soft)}.re-quick svg{color:var(--brand-red)}.re-intro{max-width:680px;margin:1.3rem auto 0;color:var(--ink-soft);line-height:1.7;font-size:.98rem}.re-body{padding:2.4rem 1.3rem 3rem}.re-block{margin-bottom:2.4rem}.re-block h2{display:flex;align-items:center;gap:.55rem;font-family:var(--font-playfair),serif;font-size:1.3rem;color:var(--ink);margin-bottom:.9rem}.re-block h2 svg{color:var(--brand-red)}.re-lead{color:var(--ink-soft);line-height:1.65;margin-bottom:1rem;font-size:.95rem}.re-check{list-style:none;display:flex;flex-direction:column;gap:.6rem}.re-check.cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem 1.4rem;gap:.6rem 1.4rem}.re-check li{display:flex;align-items:flex-start;gap:.55rem;color:var(--ink-soft);line-height:1.5;font-size:.94rem}.re-check li svg{color:var(--brand-red);flex:0 0 auto;margin-top:3px}.re-levels{display:flex;flex-direction:column;gap:.8rem}.re-level{display:flex;gap:.9rem;background:#fff;border:1px solid var(--sakura);border-radius:14px;padding:1rem 1.1rem}.re-lnum{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--sakura-soft);color:var(--vermilion-dark);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem}.re-level b{color:var(--ink);font-size:.98rem}.re-level p{color:var(--ink-soft);margin-top:.25rem;line-height:1.5;font-size:.9rem}.re-facts{display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem;background:var(--sakura-soft);border-radius:16px;padding:1.3rem;margin-bottom:2.4rem}.re-fact{display:flex;gap:.7rem;align-items:flex-start}.re-fact svg{color:var(--brand-red);flex:0 0 auto;margin-top:2px}.re-fact b{display:block;color:var(--ink);font-size:.9rem;margin-bottom:.15rem}.re-fact div{color:var(--ink-soft);line-height:1.55;font-size:.9rem}.re-menu{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:.9rem;gap:.9rem}.re-meal{background:#fff;border:1px solid var(--sakura);border-radius:14px;padding:1rem}.re-meal b{color:var(--vermilion-dark);font-size:.92rem}.re-meal p{color:var(--ink-soft);margin-top:.4rem;line-height:1.5;font-size:.85rem}.re-fee-block .re-fee{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:1.1rem;gap:1.1rem;align-items:stretch}.re-fee-amt{background:linear-gradient(140deg,var(--vermilion),var(--vermilion-dark));color:#fff;border-radius:16px;padding:1.3rem;display:flex;flex-direction:column;justify-content:center;font-size:2rem;font-weight:800;font-family:var(--font-playfair),serif}.re-fee-amt small{font-size:.75rem;font-weight:600;opacity:.85;margin-bottom:.2rem}.re-fee-amt em,.re-fee-amt small{font-family:var(--font-poppins),sans-serif}.re-fee-amt em{font-size:.72rem;font-weight:500;opacity:.9;margin-top:.35rem;font-style:normal}.re-pay{background:#fff;border:1px solid var(--sakura);border-radius:16px;padding:1.2rem}.re-pay b{color:var(--ink);font-size:.95rem;display:block;margin-bottom:.7rem}.re-pay ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}.re-pay li{display:flex;align-items:flex-start;gap:.5rem;color:var(--ink-soft);font-size:.9rem;line-height:1.45}.re-pay li svg{color:var(--brand-red);flex:0 0 auto;margin-top:3px}.re-pills{display:flex;flex-wrap:wrap;gap:.6rem}.re-pills span{background:#fff;border:1px solid var(--sakura-deep);color:var(--vermilion-dark);border-radius:999px;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.re-why{background:var(--sakura-soft);border-radius:16px;padding:1.5rem 1.4rem}.re-cta{background:linear-gradient(150deg,var(--ink) 0,#2c2f3f 100%);border-radius:20px;padding:2rem 1.5rem;text-align:center;color:#fff;margin-bottom:1.6rem}.re-cta h2{font-family:var(--font-playfair),serif;font-size:1.5rem;margin-bottom:.5rem}.re-cta p{opacity:.85;margin-bottom:1.3rem;font-size:.95rem}.re-cta-row{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.re-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.6rem;border-radius:999px;font-weight:700;text-decoration:none;font-size:.92rem;transition:transform .2s,box-shadow .2s}.re-btn.primary{background:var(--brand-red);color:#fff;box-shadow:0 8px 20px rgba(228,3,46,.35)}.re-btn.ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.3)}.re-btn:hover{transform:translateY(-2px)}.re-back{text-align:center}.re-back a{display:inline-flex;align-items:center;gap:.3rem;color:var(--vermilion-dark);text-decoration:none;font-weight:600;font-size:.9rem}.re-back a:hover{text-decoration:underline}@media(max-width:680px){.re-check.cols,.re-fee-block .re-fee,.re-menu{grid-template-columns:1fr}}@media(max-width:480px){.re-hero{padding:1.6rem 0 2.2rem}.re-quick{gap:.45rem}.re-quick span{padding:.38rem .75rem;font-size:.78rem}.re-kanji{width:56px;height:56px;font-size:1.7rem}.re-block h2{font-size:1.2rem}.re-fee-amt{font-size:1.7rem;padding:1.1rem}.re-cta{padding:1.7rem 1.2rem}.re-cta-row{flex-direction:column}.re-btn{width:100%;justify-content:center}}@media(max-width:640px){.choice-grid{grid-template-columns:1fr;gap:1rem;margin-top:1.8rem}.choice-card{padding:1.3rem;gap:1rem;border-radius:18px}.choice-card .cc-ico{width:60px;height:60px;font-size:1.75rem;border-radius:16px}.choice-card .cc-body b{font-size:1.4rem}.choice-card .cc-body span{font-size:.88rem}.choice-card .cc-arrow{width:32px;height:32px}.step-track{gap:.1rem}.st-line{width:14px}.step-chip{padding:.3rem .7rem .3rem .35rem;gap:.35rem}.step-chip .sc-num{width:21px;height:21px;font-size:.76rem}.step-chip .sc-lab{font-size:.8rem}}@media(max-width:380px){.choice-card{padding:1.1rem;gap:.85rem}.choice-card .cc-ico{width:52px;height:52px;font-size:1.5rem}.choice-card .cc-body b{font-size:1.25rem}.step-chip .sc-lab{font-size:.74rem}}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/6c177e25b87fd9cd-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/6c9a125e97d835e1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/4c285fdca692ea22-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/034d78ad42e9620c-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fe0777f1195381cb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/eafabf029ad39a43-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/db911767852bc875-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f10b8e9d91f3edcb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8888a3826f4a3af4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/29e7bbdce9332268-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c3bc380753a8436c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/0484562807a97172-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins Fallback;src:local("Arial");ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.__className_cfd010{font-family:Poppins,Poppins Fallback;font-style:normal}.__variable_cfd010{--font-poppins:"Poppins","Poppins Fallback"}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_30721a{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_30721a{--font-cormorant:"Cormorant Garamond","Cormorant Garamond Fallback"}