@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Noto Sans JP,sans-serif;background:#f8f6f1;color:#19263c;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ed689c;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Noto Sans JP,sans-serif}svg{flex-shrink:0}.header{background:#101629;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px max(5vw,24px);border-bottom:1px solid #ffffff13}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-icon{width:42px;height:42px;border:1px solid #f3a9bb75;border-radius:14px;display:grid;place-items:center;background:#e694aa;color:#172034;font-family:Noto Sans JP;font-size:29px}.brand>span:last-child{font-size:10px;letter-spacing:2.1px;line-height:1.45;position:relative}.brand b{font-size:12px;letter-spacing:1.5px}.brand i{position:absolute;font-size:23px;font-style:normal;right:-8px;bottom:-2px;color:#ed9db1}.nav{display:flex;gap:30px;color:#c4c8d5;font-size:12px}.nav a:hover{color:#fff}.nav-actions{display:flex;align-items:center;gap:25px;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 22px;border-radius:8px;background:#e69db0;color:#182137;font-weight:700;font-size:13px;transition:background .2s,transform .2s}.button:hover{background:#f4b7c7;transform:translateY(-2px)}.button.small{padding:12px 16px;font-size:11px;gap:13px}.menu-toggle{display:none;background:none;border:0;color:#fff}.hero{background:#101629;color:#fff;display:grid;grid-template-columns:1.06fr 1fr;gap:30px;padding:65px max(5vw,24px) 64px;position:relative;overflow:hidden}.hero-copy{padding-top:32px;z-index:1}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2.1px;color:#c8b4c5;display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:#eba6bb;box-shadow:0 0 9px #eca2b875}.hero h1{font-size:clamp(40px,4.2vw,72px);line-height:1.17;letter-spacing:-2.5px;font-weight:500;margin-top:24px}.hero h1 em{font-style:normal;color:#eba8bb}.hero-copy>p{font-size:14px;line-height:1.9;color:#aeb6c9;margin-top:24px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px;flex-wrap:wrap}.demo-link{display:flex;align-items:center;gap:10px;font-size:12px;color:#ecedf6}.demo-link>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid #72819d;border-radius:50%}.hero-notes{display:flex;gap:16px;margin-top:24px;flex-wrap:wrap}.hero-notes>span{display:flex;gap:4px;align-items:center;font-size:9px;color:#97a5bb}.hero-notes svg{color:#adcebc}.hero-bottom{margin-top:47px;display:flex;flex-direction:column;gap:6px}.hero-bottom>span{font-size:18px;letter-spacing:3px;color:#8692ac}.hero-bottom small{font-size:9px;color:#697893;letter-spacing:.3px}.hero-visual{position:relative;min-height:495px;border-radius:160px 16px 16px;isolation:isolate;margin-left:10px;box-shadow:0 25px 90px #0b0c28}.hero-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid #b9aaf147;border-radius:inherit;background:linear-gradient(0deg,#0c10286e,transparent 65%);z-index:-1}.hero-visual>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:27% center;border-radius:inherit;z-index:-2}.visual-label{position:absolute;right:24px;top:30px;display:flex;align-items:center;gap:10px;background:#1324439c;border:1px solid #ffffff3b;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:11px 15px;border-radius:11px}.visual-label>svg{color:#ffc1d4}.visual-label span{font-size:8px;letter-spacing:1.2px;line-height:1.8}.visual-label b{font-size:11px;font-weight:500;letter-spacing:0}.floating-word{position:absolute;bottom:68px;right:-16px;border:1px solid #cad7e966;background:#f9f4edee;color:#17243b;border-radius:15px;box-shadow:0 10px 35px #0006;padding:20px 29px;display:flex;flex-direction:column;min-width:210px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.floating-word>span:first-child{font-family:Noto Sans JP;font-size:24px;font-weight:600;letter-spacing:3px}.floating-word>small{font-size:11px;color:#6c7380;margin-top:7px}.floating-word i{color:#b46b8b;font-style:normal}.sound-bars{position:absolute;right:25px;bottom:19px;display:flex;gap:3px;align-items:center;height:16px}.sound-bars i{width:3px;height:6px;background:#c880a0;border-radius:2px}.sound-bars i:nth-child(2n){height:13px}.sound-bars i:nth-child(3n){height:19px}.visual-index{position:absolute;bottom:25px;left:26px;color:#ffeff7;font-size:8px;letter-spacing:2px}.journey-ribbon{background:#171e33;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 5vw;color:#adb5c9}.journey-ribbon>span{font-size:8px;letter-spacing:1.7px}.journey-ribbon>div{display:flex;align-items:center;gap:15px;font-size:10px}.journey-ribbon div>span{font-size:18px;color:#ecc1ce}.journey-ribbon i{font-style:normal;color:#7b6980;margin:0 10px}.section{padding:85px 7vw;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.eyebrow.dark{color:#936c80}.section h2{font-size:clamp(29px,3vw,47px);font-weight:500;line-height:1.2;letter-spacing:-1.5px;margin-top:16px}.section-heading>p{color:#818591;font-size:13px;line-height:1.9;padding-bottom:4px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.step-number{font-size:8px;letter-spacing:1.8px;color:#8a8490}.step-art{height:160px;border-radius:13px;margin:17px 0 22px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.step-art>small{position:absolute;bottom:14px;left:17px;font-size:7px;letter-spacing:2px}.letters{background:#f0dfdf;color:#4b324b}.letters>span{font-size:82px;transform:rotate(-9deg);position:relative;top:-6px}.letters i{font-size:57px;font-style:normal;color:#ad788c;transform:rotate(12deg);position:relative;top:8px;left:6px}.letters b{font-size:31px;color:#bd99a6;position:relative;top:-21px;margin-left:18px}.listening{background:#e1e9e9;color:#4c737c;gap:17px}.wave{font-size:22px;color:#90b0b7;letter-spacing:2px}.grow{background:#e9e2f0;color:#8a6b9c;gap:27px}.grow>div{display:flex;align-items:flex-end;gap:7px;height:70px}.grow i{width:15px;height:23px;background:#beaad1;border-radius:5px}.grow i:nth-child(2){height:35px}.grow i:nth-child(3){height:47px}.grow i:nth-child(4){height:59px}.grow i:nth-child(5){height:70px;background:#8c69a9}.step-grid h3{font-size:19px;font-weight:600;letter-spacing:-.6px}.step-grid p{font-size:13px;line-height:1.9;color:#7a7e88;margin-top:12px;max-width:320px}.classrooms{border-top:1px solid #e4e1dc}.classroom-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:25px}.featured-class{border:1px solid #e0dcd4;border-radius:16px;overflow:hidden;background:#fffcf7;transition:transform .2s}.featured-class:hover{transform:translateY(-4px)}.classroom-preview{height:245px;background:linear-gradient(#f9e9d84d,#99754d2e),url(/live2d-classroom/classroom-background.png) center/cover;position:relative;padding:23px 45px}.preview-board{width:75%;height:100%;border:7px solid #e2d3bd;border-radius:7px;background:#fffef7f0;box-shadow:0 6px 10px #79522c30;display:flex;flex-direction:column;align-items:center;padding:10px;color:#445d58}.preview-board small{font-size:8px;letter-spacing:2px}.preview-board b{font:85px/1.3 Noto Sans JP;color:#304b45}.preview-board>span{font-size:9px}.preview-board i{font-size:9px;letter-spacing:4px;color:#c28d89;font-style:normal;margin-top:10px}.preview-note{position:absolute;right:14px;top:35px;padding:12px 15px;background:#fffdf7;border:1px solid #ddc6bb;box-shadow:0 5px 15px #6e624222;border-radius:12px;font-size:15px}.preview-note small{display:block;font-size:8px;margin-top:6px;color:#9b8a81}.preview-play{position:absolute;bottom:25px;right:30px;border:1px solid #fff;border-radius:50%;background:#f7ffffd9;width:45px;height:45px;display:grid;place-items:center;color:#6b8f82}.classroom-caption{padding:25px 27px}.pill{font-size:7px;letter-spacing:1px;color:#728478}.classroom-caption h3{font-size:21px;letter-spacing:-.7px;margin:10px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.classroom-caption p{font-size:12px;line-height:1.8;color:#85858a;max-width:400px}.other-classrooms{display:flex;flex-direction:column;gap:22px}.other-classrooms>a{display:flex;align-items:flex-start;gap:20px;border:1px solid #e1dcd7;border-radius:15px;padding:27px;flex:1;background:#fcfaf6}.class-icon{width:53px;height:57px;flex-shrink:0;border-radius:12px;display:grid;place-items:center}.class-icon.pink{background:#eddce2;color:#926980}.class-icon.blue{background:#e1e9ee;font:32px Noto Sans JP;color:#63859a}.other-classrooms small{font-size:8px;letter-spacing:1.5px;color:#95909a}.other-classrooms h3{font-size:18px;font-weight:600;margin-top:9px;letter-spacing:-.4px}.other-classrooms p{font-size:12px;color:#83858f;line-height:1.8;margin-top:10px}.other-classrooms div>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#8c6583;margin-top:17px}.invitation{background:#1d293a;margin:5px 5vw;border-radius:20px;color:#fff;padding:60px 7vw;position:relative;overflow:hidden}.invitation>div{position:relative;z-index:1}.invitation>div>svg{color:#edb2c3;margin-bottom:18px}.invitation h2{font-size:clamp(32px,3.4vw,51px);font-weight:500;letter-spacing:-1.5px;line-height:1.2;margin:16px 0}.invitation p{color:#a7b1be;font-size:13px}.invitation .button{margin-top:25px}.already{display:block;font-size:10px;color:#93a2b5;margin-top:18px}.already a{color:#e9bacc;text-decoration:underline;text-underline-offset:3px;margin-left:4px}.invitation-kana{position:absolute;right:10%;bottom:15%;font-family:Noto Sans JP;font-size:150px;font-weight:600;color:#edd2dc0a;transform:rotate(-10deg);text-shadow:2px 1px #ecd1e807}.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.faq h2{font-size:31px}.faq-list details{border-bottom:1px solid #dcdad6;padding:20px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:13px;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{font-size:12px;line-height:1.9;color:#7a8090;padding:15px 25px 0 0}.faq-list details[open] svg{transform:rotate(180deg)}footer{border-top:1px solid #e3dfd8;padding:35px 5vw;display:flex;align-items:center;gap:35px;flex-wrap:wrap}footer .brand-icon{width:32px;height:32px;font-size:23px}footer .brand>span:last-child{font-size:7px}footer .brand b{font-size:9px}footer .brand i{font-size:19px}footer>p{font-size:11px;color:#8f8e96}footer>div{margin-left:auto;display:flex;gap:25px;font-size:11px;color:#6d7586}footer>small{font-size:9px;color:#97949c}@media(min-width:1600px){.hero{padding-top:85px;padding-bottom:85px}.hero-visual{min-height:590px}.hero-copy{padding-top:40px}.hero-copy>p{font-size:17px}.hero-actions{margin-top:40px}.hero-bottom{margin-top:60px}.section{padding-top:100px;padding-bottom:100px}.hero h1{font-size:77px}}@media(max-width:1050px){.header{padding:23px 4vw}.nav{gap:18px;font-size:11px}.nav-actions{gap:17px}.hero{padding:48px 4vw;gap:25px}.hero h1{font-size:43px;letter-spacing:-2px}.hero-copy>p{font-size:12px}.hero-visual{min-height:470px;margin-left:0}.hero-actions{gap:17px}.hero .button{padding:15px;font-size:11px}.demo-link{font-size:10px}.hero-notes{gap:10px}.hero-notes>span{font-size:8px}.floating-word{right:-10px;min-width:190px;padding:18px 20px}.section{padding:65px 5vw}.step-grid{gap:24px}.step-grid h3{font-size:17px}.step-grid p{font-size:12px}.other-classrooms>a{padding:20px;gap:15px}.other-classrooms h3{font-size:16px}.classroom-caption h3{font-size:18px}.journey-ribbon{padding:23px 4vw}.journey-ribbon>span{font-size:7px}.journey-ribbon>div{gap:10px;font-size:9px}.journey-ribbon i{margin:0 3px}.faq{gap:40px}}@media(max-width:760px){.header{padding:20px 6vw}.nav{display:none}.menu-toggle{display:grid;padding:0}.nav.open{display:flex;position:absolute;top:86px;left:0;right:0;padding:25px 6vw;background:#1b233c;z-index:10;flex-direction:column;gap:25px}.nav-actions{gap:20px}.nav-actions .small{display:none}.login{font-size:12px}.hero{grid-template-columns:1fr;padding:35px 6vw;gap:35px}.hero-copy{padding-top:5px}.hero h1{font-size:clamp(41px,7.4vw,58px);letter-spacing:-2px;margin-top:20px}.hero-copy>p{font-size:13px;max-width:460px;margin-top:20px}.hero-actions{margin-top:25px;gap:20px}.hero .button{font-size:12px;padding:16px 18px}.demo-link{font-size:11px}.hero-notes{gap:12px;margin-top:21px}.hero-notes>span{font-size:8px}.hero-bottom{display:none}.hero-visual{min-height:370px;border-radius:85px 14px 14px;margin-right:7px}.hero-visual>img{object-position:30% 60%}.visual-label{right:17px;top:20px}.floating-word{bottom:40px}.journey-ribbon{padding:20px 6vw;display:block}.journey-ribbon>span{display:block;margin-bottom:13px;font-size:7px}.journey-ribbon>div{gap:10px;font-size:8px;flex-wrap:wrap;line-height:1.8}.journey-ribbon div>span{font-size:15px}.journey-ribbon i{margin:0 1px}.section{padding:55px 6vw}.section-heading{display:block;margin-bottom:28px}.section h2{font-size:33px;letter-spacing:-1px}.section-heading>p{font-size:12px;margin-top:20px}.step-grid{grid-template-columns:1fr;gap:35px}.step-art{height:170px;margin:12px 0 18px}.step-grid h3{font-size:20px}.step-grid p{max-width:none;font-size:13px;margin-top:9px}.classroom-grid{grid-template-columns:1fr}.classroom-preview{padding:22px 30px;height:240px}.classroom-caption{padding:21px}.classroom-caption h3{font-size:19px}.other-classrooms>a{padding:22px}.other-classrooms h3{font-size:18px}.invitation{margin:0 4vw;padding:40px 7vw;border-radius:16px}.invitation h2{font-size:35px}.invitation p{line-height:1.8;font-size:12px;max-width:240px}.invitation-kana{right:-20px;font-size:130px;bottom:90px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:29px}.faq-list summary{font-size:13px;line-height:1.7}.faq-list p{font-size:12px}footer{padding:30px 6vw;gap:20px}footer>p{font-size:10px}footer>div{margin:0;width:100%;gap:25px}footer>small{width:100%}.desktop-br{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
