.pricing-page{--price-pink:#ff2b64;--price-blue:#0018ff;--price-lime:#baff00;--price-mint:#51dfaa;--price-purple:#d753f0;--price-orange:#ff704f;--price-ink:#060606;--price-muted:#5f626b;--price-line:rgba(6,6,6,.14);--price-round:"M PLUS Rounded 1c","Noto Sans JP",system-ui,sans-serif;--price-body:"Noto Sans JP","Yu Gothic","Meiryo",system-ui,sans-serif;position:relative;isolation:isolate;min-height:100vh;overflow:hidden;color:var(--price-ink);background:radial-gradient(circle at 2% 35%,rgba(186,255,0,.2),transparent 25%),radial-gradient(circle at 98% 72%,rgba(0,24,255,.12),transparent 25%),linear-gradient(180deg,#fff,#fbfff4 48%,#f8fbff);font-family:var(--price-body)}.pricing-page *,.pricing-page :after,.pricing-page :before{box-sizing:border-box}.pricing-page a{color:inherit;text-decoration:none}.pricing-page:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.15;background-image:radial-gradient(rgba(6,6,6,.44) 1.1px,transparent 0);background-size:32px 32px;mask-image:linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent)}.pricing-page .container{width:min(1160px,calc(100% - 88px));margin-inline:auto}.pricing-page .page-hero{position:relative;min-height:420px;display:grid;align-items:center;overflow:hidden;padding:84px 0 92px;border-bottom:2px solid var(--price-ink);background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(255,255,255,.66)),radial-gradient(circle at 78% 34%,rgba(186,255,0,.25),transparent 32%),radial-gradient(circle at 16% 84%,rgba(0,24,255,.13),transparent 28%)}.pricing-page .page-hero:before{content:"¥";position:absolute;top:-155px;right:-54px;width:420px;height:420px;display:grid;place-items:center;border-radius:46% 54% 58% 42%/48% 42% 58% 52%;color:var(--price-ink);background:var(--price-lime);font-family:var(--price-round);font-size:150px;font-weight:900;animation:price-blob 9s ease-in-out infinite alternate}.pricing-page .page-hero:after{content:"PRICE  •  PLAN  •  LESSON  •";position:absolute;left:-16px;bottom:8px;color:rgba(255,43,100,.075);font-family:var(--price-round);font-size:clamp(42px,7vw,104px);font-weight:900;white-space:nowrap;animation:price-marquee 24s linear infinite}.pricing-page .page-hero .container{position:relative;z-index:2}.pricing-page .breadcrumb{display:inline-flex;gap:8px;margin-bottom:28px;padding:8px 14px;border:1.5px solid var(--price-ink);border-radius:999px;background:#fff;box-shadow:4px 5px 0 rgba(0,0,0,.08);font-family:var(--price-round);font-size:11px;font-weight:900}.pricing-page .breadcrumb a{color:var(--price-pink)}.pricing-page .kicker{display:flex;align-items:center;gap:9px;margin:0 0 12px;color:var(--price-blue);font-family:var(--price-round);font-size:13px;font-weight:900}.pricing-page .kicker:before{content:"";width:12px;height:12px;border-radius:50%;background:currentColor;animation:price-pulse 2.8s ease-in-out infinite}.pricing-page h1,.pricing-page h2{font-family:var(--price-round);letter-spacing:-.035em}.pricing-page h1{margin:0 0 22px;font-size:clamp(52px,7vw,92px);line-height:1.02;font-weight:900}.pricing-page .page-hero p:last-child{max-width:720px;margin:0;color:#3e4049;font-size:15px;line-height:1.9;font-weight:700}.pricing-page .section{padding:126px 0 150px}.pricing-container{display:grid;gap:62px}.price-block{position:relative;overflow:hidden;padding:46px;border:2px solid var(--price-ink);border-radius:32px;background:rgba(255,255,255,.96);box-shadow:13px 15px 0 rgba(0,0,0,.075);transition:transform .32s ease,box-shadow .32s ease}.price-block:first-child{box-shadow:13px 15px 0 rgba(186,255,0,.46)}.price-block:nth-child(2){box-shadow:13px 15px 0 rgba(255,43,100,.18)}.price-block:nth-child(3){box-shadow:13px 15px 0 rgba(0,24,255,.15)}.price-block:nth-child(4){box-shadow:13px 15px 0 rgba(215,83,240,.18)}.price-block:nth-child(5){box-shadow:13px 15px 0 rgba(81,223,170,.24)}.price-block:after{content:"✦";position:absolute;right:30px;top:22px;color:var(--price-pink);font-size:42px;text-shadow:2px 3px 0 var(--price-ink);animation:price-star 3s ease-in-out infinite}.price-block:nth-child(2n):after{color:var(--price-lime)}.price-block:hover{transform:translateY(-8px) rotate(-.2deg);box-shadow:18px 21px 0 rgba(0,0,0,.09)}.price-block h2{margin:0 0 30px;padding-right:55px;font-size:clamp(32px,3.4vw,48px);line-height:1.18;font-weight:900}.price-table{width:100%;overflow:hidden;border:2px solid var(--price-ink);border-collapse:separate;border-spacing:0;border-radius:22px;background:#fff}.price-table td,.price-table th{padding:20px 22px;border-right:1px solid var(--price-line);border-bottom:1px solid var(--price-line);text-align:left;vertical-align:top;font-size:13px;line-height:1.85}.price-table tr:last-child td,.price-table tr:last-child th{border-bottom:0}.price-table td:last-child,.price-table th:last-child{border-right:0}.price-table th{width:23%;font-family:var(--price-round);font-weight:900;background:rgba(0,24,255,.055)}.price-table tr:nth-child(2n) th{background:rgba(186,255,0,.2)}.price-table td{font-weight:700}.price-block .btn{margin-top:30px}.pricing-page .btn{min-height:56px;display:inline-flex;align-items:center;justify-content:center;padding:0 26px;border:2px solid var(--price-ink);border-radius:14px;color:#fff;background:var(--price-pink);box-shadow:6px 7px 0 rgba(0,0,0,.09);font-family:var(--price-round);font-size:13px;font-weight:900;transition:transform .22s ease,box-shadow .22s ease}.pricing-page .btn:hover{transform:translateY(-5px) rotate(-.5deg);box-shadow:10px 12px 0 rgba(0,0,0,.08)}@keyframes price-blob{to{transform:translate(-24px,18px) rotate(7deg) scale(1.05)}}@keyframes price-marquee{to{transform:translateX(-28%)}}@keyframes price-pulse{50%{transform:scale(1.22)}}@keyframes price-star{50%{transform:translateY(-7px) rotate(11deg) scale(1.08)}}@media (max-width:900px){.pricing-page .container{width:min(100% - 40px,760px)}.pricing-page .page-hero{min-height:360px;padding:68px 0 76px}.pricing-page .page-hero:before{width:280px;height:280px;right:-115px;font-size:100px}.pricing-page .section{padding:90px 0 110px}.price-block{padding:36px 30px}}@media (max-width:650px){.pricing-page .container{width:min(100% - 28px,520px)}.pricing-page h1{font-size:clamp(44px,14vw,64px)}.price-block{padding:28px 18px;border-radius:24px}.price-table,.price-table tbody,.price-table td,.price-table th,.price-table tr{display:block;width:100%}.price-table th{padding:14px 17px;border-right:0;border-bottom:0}.price-table td{padding:16px 17px 20px;border-right:0}.price-block .btn{width:100%}}@media (prefers-reduced-motion:reduce){.pricing-page *,.pricing-page :after,.pricing-page :before{animation:none!important;transition-duration:.01ms!important}}