*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--bg:#fff8f3;--cream:#fef3e8;--peach:#ffd6c2;--pink:#f7b4c0;--pink-soft:#ffe0e6;--mint:#c5e3c8;--mint-soft:#e0f0e2;--yellow:#ffe28a;--yellow-soft:#fff5d1;--ink:#4a3a3a;--ink-soft:#7a6868;--mute:#a89c9c;--red:#e8505b;--line:#f0e4d8}html{scroll-behavior:smooth;overscroll-behavior:none}body{background:var(--bg);color:var(--ink);font-family:"M PLUS Rounded 1c",sans-serif;font-size:14px;line-height:1.8;overflow-x:hidden;-webkit-font-smoothing:antialiased}#bg-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}#confetti-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2;pointer-events:none}.content{position:relative;z-index:5}.header{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;background:#fff8f3d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(247,180,192,.2)}.logo{font-family:Caveat,cursive;font-size:26px;font-weight:600;color:var(--pink);line-height:1;text-decoration:none}.logo-link{display:block;line-height:0}.logo-img{height:40px;width:auto;display:block}.footer-logo-img{height:56px;width:auto;display:block;margin-bottom:10px}.logo-sub{font-family:"M PLUS Rounded 1c",sans-serif;font-size:8px;letter-spacing:.3em;color:var(--mint);display:block;margin-top:2px;font-weight:500}.cart{width:42px;height:42px;background:var(--pink);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;box-shadow:0 4px 12px #f7b4c066;text-decoration:none}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:90px 24px 50px;position:relative}.hero-tag{display:inline-block;font-size:10px;letter-spacing:.3em;color:#fff;background:var(--mint);padding:6px 16px;border-radius:20px;margin-bottom:20px;font-weight:600;opacity:0;animation:popIn 1s .3s forwards}.hero h1{font-family:Fredoka,sans-serif;font-size:clamp(30px,8vw,72px);font-weight:600;line-height:1.05;letter-spacing:-.01em;margin-bottom:8px;color:var(--ink);opacity:0;animation:popIn 1.2s .5s forwards}.hero h1 em{font-style:normal;color:var(--pink);font-family:Caveat,cursive;font-size:1.3em;display:inline-block;transform:rotate(-3deg);margin:0 4px}.hero-sub{font-family:Caveat,cursive;font-size:clamp(24px,6.2vw,44px);color:var(--mint);margin-bottom:24px;font-weight:500;opacity:0;animation:popIn 1.2s .7s forwards}.hero-mascot{height:clamp(150px,34vw,210px);width:auto;display:block;margin:8px auto 16px;filter:drop-shadow(0 10px 18px rgba(247,180,192,.35));opacity:0;animation:popIn 1.2s .8s forwards,floaty 4s 2s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero p{font-size:13px;color:var(--ink-soft);max-width:300px;margin:0 auto 36px;line-height:2;opacity:0;animation:popIn 1.2s .9s forwards}.hero-cta{display:inline-block;background:var(--pink);color:#fff;padding:14px 32px;border-radius:30px;font-family:"M PLUS Rounded 1c",sans-serif;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 8px 20px #f7b4c066;opacity:0;animation:popIn 1.2s 1.1s forwards;transition:.3s}.hero-cta:active{transform:scale(.97)}.hero-scroll{position:absolute;bottom:24px;left:50%;transform:translate(-50%);font-size:9px;letter-spacing:.3em;color:var(--mute);opacity:0;animation:popIn 1.2s 1.5s forwards,bounce 2s 2s ease-in-out infinite;font-weight:600}.hero-scroll:after{content:"";display:block;width:1px;height:22px;background:var(--mute);margin:6px auto 0}@keyframes popIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bounce{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-8px)}}.section-label{font-size:10px;letter-spacing:.3em;color:var(--mint);margin-bottom:10px;display:block;text-align:center;font-weight:700}.section-title{font-family:Fredoka,sans-serif;font-size:clamp(28px,7vw,42px);font-weight:600;line-height:1.2;text-align:center;margin-bottom:36px;color:var(--ink)}.section-title em{font-style:normal;color:var(--pink);font-family:Caveat,cursive;font-size:1.3em;display:inline-block;transform:rotate(-2deg)}.concept-section{padding:60px 24px;position:relative}.concept-card{background:#fff;border-radius:24px;padding:32px 24px;max-width:420px;margin:0 auto;box-shadow:0 20px 40px #f7b4c026;border:2px dashed var(--pink-soft);position:relative}.concept-card:before{content:"♡";position:absolute;top:-14px;left:50%;transform:translate(-50%);background:var(--pink);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.concept-card h3{font-family:Fredoka,sans-serif;font-size:20px;color:var(--ink);margin-bottom:16px;text-align:center}.concept-card p{font-size:13px;color:var(--ink-soft);line-height:2;margin-bottom:12px}.concept-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.cf{background:var(--cream);padding:14px 10px;border-radius:14px;text-align:center}.cf-emoji{font-size:24px;display:block;margin-bottom:4px}.cf-name{font-size:11px;color:var(--ink);font-weight:700}.featured-section{padding:60px 20px;position:relative}.featured-card{position:relative;background:#fff;border-radius:24px;padding:24px;margin:0 auto;max-width:420px;box-shadow:0 20px 50px #f7b4c033;border:1px solid var(--pink-soft)}.featured-img{aspect-ratio:1;border-radius:18px;background:linear-gradient(135deg,var(--pink-soft),var(--yellow-soft),var(--mint-soft));margin-bottom:18px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.craft-scene{width:80%;height:80%}.featured-img.kv{aspect-ratio:auto;background:#fff;display:block}.kv-img{width:100%;height:auto;display:block;border-radius:18px}.featured-tag{position:absolute;top:12px;right:12px;background:var(--yellow);color:var(--ink);font-size:10px;letter-spacing:.1em;padding:5px 12px;font-weight:700;border-radius:12px;z-index:2;transform:rotate(5deg)}.featured-name{font-family:Fredoka,sans-serif;font-size:20px;font-weight:600;margin-bottom:6px;color:var(--ink)}.featured-sub{font-family:Caveat,cursive;font-size:18px;color:var(--pink);margin-bottom:14px}.featured-desc{font-size:12px;color:var(--ink-soft);margin-bottom:18px;line-height:1.9}.featured-price{display:flex;justify-content:space-between;align-items:center}.price{font-family:Fredoka,sans-serif;font-size:28px;color:var(--ink);font-weight:700}.price small{font-size:13px;color:var(--mute);font-weight:500}.buy-btn{background:var(--mint);color:#fff;padding:12px 24px;font-family:"M PLUS Rounded 1c",sans-serif;font-size:13px;font-weight:700;border-radius:20px;text-decoration:none;box-shadow:0 4px 12px #c5e3c880;border:none;cursor:pointer}.buy-btn.disabled{background:var(--mute);box-shadow:none;pointer-events:none;opacity:.6}.products-section{padding:60px 20px;position:relative}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:680px;margin:0 auto}.product-card{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px #f7b4c01f;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;border:1px solid var(--pink-soft);text-decoration:none;color:inherit}.product-card.visible{opacity:1;transform:translateY(0)}.product-card:active{transform:scale(.97)}.product-pic{aspect-ratio:1;position:relative;overflow:hidden}.product-pic svg{width:100%;height:100%}.product-tag{position:absolute;top:8px;left:8px;font-size:9px;letter-spacing:.1em;padding:4px 10px;font-weight:700;z-index:2;border-radius:10px;color:#fff}.product-tag.new{background:var(--mint)}.product-tag.hot{background:var(--red)}.product-tag.sale{background:var(--yellow);color:var(--ink)}.product-body{padding:12px}.product-cat{font-size:9px;letter-spacing:.15em;color:var(--mint);margin-bottom:3px;font-weight:700}.product-name{font-family:"M PLUS Rounded 1c",sans-serif;font-size:13px;font-weight:700;line-height:1.4;margin-bottom:8px;color:var(--ink);min-height:36px}.product-price-row{display:flex;align-items:baseline;justify-content:space-between}.product-price-now{font-family:Fredoka,sans-serif;font-size:16px;color:var(--ink);font-weight:700}.product-price-old{font-size:10px;color:var(--mute);text-decoration:line-through}.belt{margin:40px 0;padding:18px 0;overflow:hidden;white-space:nowrap;background:var(--pink)}.belt-track{display:inline-block;animation:scroll 25s linear infinite;font-family:Caveat,cursive;font-size:22px;color:#fff;font-weight:500}.belt-track span{margin-right:36px}.belt-track span:after{content:"♡";margin-left:36px;color:var(--yellow)}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.steps-section{padding:60px 24px;position:relative}.steps{max-width:420px;margin:0 auto}.step{background:#fff;border-radius:20px;padding:20px;margin-bottom:16px;display:flex;gap:14px;align-items:flex-start;box-shadow:0 8px 20px #f7b4c01a;border:1px solid var(--pink-soft)}.step-num{flex-shrink:0;width:40px;height:40px;background:var(--pink);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Fredoka,sans-serif;font-size:18px;font-weight:700}.step:nth-child(2) .step-num{background:var(--mint)}.step:nth-child(3) .step-num{background:var(--yellow);color:var(--ink)}.step:nth-child(4) .step-num{background:var(--peach)}.step-body h4{font-family:Fredoka,sans-serif;font-size:15px;margin-bottom:4px;color:var(--ink)}.step-body p{font-size:12px;color:var(--ink-soft);line-height:1.7}.countdown-section{padding:60px 24px;text-align:center;position:relative}.countdown{display:flex;justify-content:center;gap:8px;margin:24px auto 0;max-width:380px}.cd-cell{flex:1;background:#fff;border:2px dashed var(--pink);border-radius:14px;padding:14px 6px}.cd-num{font-family:Fredoka,sans-serif;font-size:28px;font-weight:700;color:var(--pink);line-height:1;margin-bottom:4px}.cd-label{font-size:9px;letter-spacing:.15em;color:var(--mute);font-weight:700}.footer{padding:50px 24px 24px;background:var(--cream);position:relative;z-index:5;margin-top:60px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 16px;max-width:680px;margin:0 auto}.footer-brand{grid-column:span 2}.footer-brand .logo{margin-bottom:6px;display:block}.footer-brand p{font-size:11px;color:var(--ink-soft);max-width:280px;line-height:1.8}.footer h5{font-family:Fredoka,sans-serif;font-size:13px;color:var(--pink);margin-bottom:12px;font-weight:600}.footer ul{list-style:none}.footer li{margin-bottom:7px}.footer a{font-size:11px;color:var(--ink-soft);text-decoration:none}.footer-bottom{max-width:680px;margin:32px auto 0;padding-top:18px;border-top:1px dashed var(--pink-soft);font-size:10px;color:var(--mute);text-align:center}.legal-back{display:inline-block;padding:72px 20px 20px;font-size:12px;color:var(--pink);font-weight:700;text-decoration:none}.legal-header{padding:0 20px 28px;text-align:center;border-bottom:1px dashed var(--pink-soft)}.legal-header h1{font-family:Fredoka,sans-serif;font-size:30px;color:var(--ink);margin-bottom:6px}.legal-header p{font-size:10px;letter-spacing:.3em;color:var(--mint);font-weight:700}.legal-body{max-width:680px;margin:0 auto;padding:28px 20px 70px}.legal-body h2{font-family:Fredoka,sans-serif;font-size:17px;color:var(--pink);margin-top:28px;margin-bottom:10px}.legal-body h2:first-child{margin-top:0}.legal-body h3{font-family:Fredoka,sans-serif;font-size:14px;margin-top:18px;margin-bottom:6px;color:var(--mint)}.legal-body p{margin-bottom:10px;color:var(--ink-soft);font-size:13px;line-height:1.9}.legal-body ul,.legal-body ol{margin:8px 0 12px 24px;color:var(--ink-soft);font-size:13px}.legal-body li{margin-bottom:6px;line-height:1.8}.legal-body a{color:var(--pink);text-decoration:underline}.info-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:12px;background:#fff;border-radius:14px;overflow:hidden}.info-table th,.info-table td{padding:12px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.7}.info-table th{font-family:Fredoka,sans-serif;font-weight:500;color:var(--pink);width:38%;background:var(--pink-soft)}.info-table td{color:var(--ink)}.field{margin-bottom:14px}.field label{display:block;font-size:11px;margin-bottom:4px;color:var(--pink);font-weight:700}.field input,.field select,.field textarea{width:100%;padding:12px;background:#fff;border:1px solid var(--pink-soft);color:var(--ink);font-family:inherit;font-size:13px;border-radius:12px}.field textarea{min-height:120px}.form-submit{background:var(--pink);color:#fff;padding:14px 32px;border:none;font-family:"M PLUS Rounded 1c",sans-serif;font-size:14px;font-weight:700;cursor:pointer;border-radius:24px;box-shadow:0 8px 20px #f7b4c066}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.001ms!important}html{scroll-behavior:auto}.hero-tag,.hero h1,.hero-sub,.hero p,.hero-cta,.hero-scroll,.hero-mascot,.product-card{opacity:1!important;transform:none!important}}
