:root{--red:#ea463c;--red2:#f46b61;--ink:#241d1b;--muted:#756964;--pink:#fff7f6;--cream:#fffaf7;--line:#f0d9d5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Yu Gothic,Meiryo,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:.04em;font-family:Yu Mincho,Hiragino Mincho ProN,serif}h2{margin-bottom:1.1rem;font-size:clamp(2rem,4vw,3.5rem);line-height:1.4}em{color:var(--red);font-style:normal}.eyebrow{color:var(--red);letter-spacing:.2em;margin-bottom:.55rem;font-size:.76rem;font-weight:800}.lead{max-width:720px;color:var(--muted);margin:0 auto 3rem}.section{text-align:center;max-width:1440px;margin:auto;padding:96px max(5vw,24px)}.button{border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-height:48px;padding:0 26px;font-weight:700;transition:all .2s;display:inline-flex}.button.primary,.header-cta{background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;box-shadow:0 14px 26px #ea463c38}.button:hover,.header-cta:hover{transform:translateY(-2px)}.button.full{width:100%}.site-header{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffafae8;border-bottom:1px solid #ea463c29;align-items:center;gap:28px;min-height:72px;padding:14px clamp(20px,5vw,64px);display:flex;position:sticky;top:0}.brand{color:var(--red);letter-spacing:.16em;flex:none;align-items:center;gap:10px;font-size:1.35rem;display:inline-flex}.brand-symbol{width:35px;height:25px;position:relative}.brand-symbol i{background:var(--red);border-radius:100%;position:absolute}.brand-symbol i:first-child{width:28px;height:13px;top:1px;right:0;transform:rotate(-10deg)}.brand-symbol i:last-child{width:17px;height:9px;bottom:1px;left:0}.desktop-nav{color:#49413c;white-space:nowrap;flex:1;justify-content:center;gap:clamp(16px,2.4vw,34px);font-size:14px;display:flex}.header-cta{border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 24px;font-size:14px;font-weight:700;display:inline-flex}.cart-button,.menu-button{color:var(--ink);background:0 0;border:0;padding:8px;position:relative}.cart-button span{background:var(--red);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid;position:absolute;top:0;right:0}.menu-button{display:none}#before,#contents,#flow,#plans,#faq{scroll-margin-top:104px}.hero{background:linear-gradient(115deg,#fff 0 48%,#fff1ef 48%);grid-template-columns:52% 48%;align-items:stretch;min-height:690px;display:grid;overflow:hidden}.hero-copy{z-index:2;align-self:center;padding:95px 3vw 85px max(6vw,28px)}.hero h1{margin-bottom:1.5rem;font-size:clamp(2.65rem,5vw,5.3rem);line-height:1.27}.hero-lead{color:var(--muted);font-size:1.06rem}.hero-actions{align-items:center;gap:1.35rem;margin:2rem 0;display:flex}.text-link{border-bottom:1px solid;font-weight:700}.hero-facts{color:#645a56;flex-wrap:wrap;gap:1.2rem;font-size:.82rem;display:flex}.hero-facts span{align-items:center;gap:.3rem;display:flex}.hero-facts svg{width:17px;color:var(--red)}.hero-visual{background:radial-gradient(circle at 50% 45%,#fff 0 20%,#0000 55%);place-items:center;padding:60px;display:grid;position:relative}.hero-visual:before{content:"";aspect-ratio:1;border:1px solid #ea463c2b;border-radius:50%;width:78%;position:absolute}.hero-visual img{filter:drop-shadow(0 28px 35px #7d30242c);width:min(600px,92%);position:relative}.hero-badge{z-index:2;background:var(--red);color:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:118px;height:118px;display:flex;position:absolute;top:14%;right:8%;box-shadow:0 18px 40px #bc302b4d}.hero-badge small{letter-spacing:.12em;font-size:.58rem}.hero-badge strong{font-size:2.6rem;line-height:1}.hero-badge span{font-size:.74rem}.intro-band{background:var(--ink);color:#fff;text-align:center;padding:25px max(5vw,24px)}.intro-band p{margin:0;font-size:.94rem}.check-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.check-grid article{text-align:left;border:1px solid var(--line);background:#fff;border-radius:20px;padding:2rem 1.4rem;box-shadow:0 12px 40px #69352d12}.check-grid span{color:#f1b2ad;font:700 2rem Georgia}.check-grid h3{margin:.6rem 0;font-family:Yu Mincho,serif}.check-grid p{color:var(--muted);margin:0;font-size:.85rem}.kit-section{text-align:left;background:var(--pink);grid-template-columns:1fr 1fr;align-items:center;gap:7vw;max-width:none;padding-left:max(8vw,24px);padding-right:max(8vw,24px);display:grid}.kit-photo{background:#fff;border-radius:48% 48% 12px 12px;padding:45px}.kit-photo img{filter:drop-shadow(0 20px 28px #68261b22)}.kit-copy>p:not(.eyebrow){color:var(--muted)}.contents-list{grid-template-columns:1fr 1fr;gap:.65rem;padding:0;list-style:none;display:grid}.contents-list li{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:.5rem;padding:.65rem .8rem;font-size:.87rem;display:flex}.contents-list svg{width:17px;color:var(--red)}.flow-section{background:#fff;max-width:none}.steps{grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1100px;margin:3rem auto 0;display:grid}.step{text-align:left;border-top:3px solid var(--red);background:var(--cream);gap:1rem;padding:1.5rem;display:flex}.step>span{color:var(--red);font:700 1.5rem Georgia}.step h3{margin:0 0 .35rem;font-family:Yu Mincho,serif}.operation{text-align:left;background:var(--pink);grid-template-columns:.8fr 1.2fr;align-items:start;gap:7vw;max-width:none;padding-left:max(8vw,24px);padding-right:max(8vw,24px);display:grid}.point-list{gap:1rem;display:grid}.point-list article{border:1px solid var(--line);background:#fff;border-radius:16px;padding:1.3rem 1.5rem}.point-list b{color:var(--red);letter-spacing:.08em;font-size:.7rem}.point-list h3{margin:.15rem 0;font-family:Yu Mincho,serif}.point-list p{color:var(--muted);margin:0;font-size:.84rem}.plans-section{max-width:none}.product-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem;max-width:1100px;margin:3rem auto;display:grid}.product-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:22px;padding:2rem;position:relative;box-shadow:0 16px 45px #57271f14}.product-card.popular{border:2px solid var(--red);transform:translateY(-12px)}.popular-label{background:var(--red);color:#fff;border-radius:999px;padding:.2rem 1.4rem;font-size:.8rem;font-weight:700;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.plan{color:var(--red);font-size:.8rem;font-weight:700}.product-card h3 strong{font-size:2.7rem}.price{align-items:end;gap:.5rem;margin:1rem 0;display:flex}.price span{border:1px solid var(--line);padding:0 .35rem;font-size:.68rem}.price strong{font-size:2rem;line-height:1}.product-card ul{border-top:1px solid var(--line);padding:1rem 0;list-style:none}.product-card li{align-items:center;gap:.35rem;margin:.45rem 0;font-size:.86rem;display:flex}.product-card li svg{color:var(--red);width:17px}.shipping-note{border:1px solid var(--line);background:var(--pink);text-align:left;border-radius:14px;max-width:900px;margin:auto;padding:1.3rem 1.5rem}.shipping-note b{color:var(--red)}.shipping-note p{margin:.3rem 0 0;font-size:.85rem}.faq>div{text-align:left;max-width:900px;margin:2rem auto}.faq details{border-bottom:1px solid var(--line);padding:1rem}.faq summary{cursor:pointer;justify-content:space-between;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq details p{color:var(--muted);margin:0;padding-top:1rem;font-size:.88rem}.faq details[open] svg{transform:rotate(180deg)}.final-cta{text-align:center;background:linear-gradient(135deg,var(--red),#f8796f);color:#fff;padding:100px 24px}.final-cta .eyebrow{color:#fff}.final-cta h2{font-size:clamp(2.2rem,4.5vw,4rem)}.button.light{color:var(--red);background:#fff}footer{background:var(--ink);color:#fff;grid-template-columns:1.5fr 1fr 1.2fr;gap:2rem;padding:60px max(6vw,24px) 30px;display:grid}.footer-brand strong{color:var(--red2);letter-spacing:.15em}.footer-brand p{color:#bfb3aa;margin-top:1rem;font-size:.84rem}.footer-links,.legal{color:#d8ccc3;flex-direction:column;gap:.4rem;font-size:.8rem;display:flex}footer small{color:#8f837a;border-top:1px solid #ffffff1f;grid-column:1/-1;padding-top:1.5rem}.mobile-buy{display:none}.cart-overlay{z-index:100;background:#1f171180;justify-content:flex-end;display:flex;position:fixed;inset:0}.cart-drawer{background:#fff;width:min(460px,100%);height:100%;padding:1.5rem;overflow:auto;box-shadow:-20px 0 60px #0003}.cart-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:1rem;display:flex}.cart-head h2{margin:0;font:700 1.2rem sans-serif}.cart-head button{background:0 0;border:0}.empty-cart{text-align:center;color:var(--muted);padding:6rem 0}.empty-cart svg{margin:auto}.empty-cart a{color:var(--red);font-weight:700}.cart-item{border-bottom:1px solid var(--line);justify-content:space-between;padding:1.2rem 0;display:flex}.cart-item div:first-child{flex-direction:column;display:flex}.cart-item small{color:var(--muted)}.quantity{align-items:center;gap:.6rem;display:flex}.quantity button{border:1px solid var(--line);background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.quantity svg{width:15px}.cart-total{justify-content:space-between;align-items:center;padding:1.4rem 0;display:flex}.cart-total strong{font-size:1.5rem}.cart-caption{text-align:center;color:var(--muted);font-size:.73rem}@media (max-width:960px){.desktop-nav{background:#fff;flex-direction:column;padding:1rem 2rem;display:none;position:absolute;top:72px;left:0;right:0}.desktop-nav.is-open{display:flex}.header-cta{margin-left:auto}.menu-button{display:block}.hero{background:linear-gradient(#fff 0 53%,#fff1ef 53%);grid-template-columns:1fr;min-height:auto}.hero-copy{padding:70px max(6vw,24px)}.hero-visual{min-height:470px}.check-grid{grid-template-columns:1fr 1fr}.kit-section,.operation{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr;max-width:520px}.product-card.popular{transform:none}}@media (max-width:600px){body{padding-bottom:64px}.section{padding:70px 20px}h2{font-size:2rem}.site-header{gap:8px;padding:11px 16px}.brand{font-size:1rem}.brand-symbol{transform:scale(.8)}.header-cta{display:none}.hero-copy{padding:58px 20px 45px}.hero h1{font-size:2.45rem}.hero-lead br{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.hero-facts{flex-direction:column;gap:.25rem}.hero-visual{min-height:340px;padding:30px}.hero-badge{width:88px;height:88px;top:8%;right:5%}.hero-badge strong{font-size:2rem}.check-grid{grid-template-columns:1fr}.kit-section{padding:70px 20px}.kit-photo{padding:25px}.contents-list,.steps{grid-template-columns:1fr}.operation{padding:70px 20px}.mobile-buy{z-index:60;background:var(--red);color:#fff;border:0;justify-content:center;align-items:center;gap:.5rem;width:100%;height:64px;font-weight:800;display:flex;position:fixed;bottom:0;left:0}footer{grid-template-columns:1fr}.footer-links,.legal{grid-template-columns:1fr 1fr;display:grid}footer small{grid-column:auto}}.steps{flex-direction:column;gap:42px;max-width:1040px;margin:3rem auto 0;display:flex;position:relative}.steps:before{content:"";background:linear-gradient(var(--red),#f4c2bd);width:2px;position:absolute;top:40px;bottom:40px;left:50%;transform:translate(-50%)}.step{text-align:left;background:0 0;border:0;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:0;display:grid;position:relative}.step.reverse .step-photo{order:2}.step.reverse .step-copy{text-align:right;order:1}.step-photo{z-index:1;background:var(--pink);border-radius:28px 8px;position:relative;overflow:hidden;box-shadow:0 18px 50px #57271f1f}.step-photo img{object-fit:cover;width:100%;height:260px}.step:nth-child(2) .step-photo img,.step:nth-child(5) .step-photo img{object-fit:cover;background:0 0;padding:0}.step-copy{background:#fff;padding:28px;position:relative}.step-copy:before{content:"";background:var(--red);border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:-42px;transform:translateY(-50%);box-shadow:0 0 0 8px #ffe9e7}.step.reverse .step-copy:before{left:auto;right:-42px}.step-copy span{color:#f0aaa4;font:700 2rem Georgia;display:block}.step h3{margin:.2rem 0 .45rem;font-family:Yu Mincho,serif;font-size:1.35rem}.step p{color:var(--muted);margin:0;font-size:.9rem}.product-card ul{margin-bottom:0;padding-bottom:0}.plan-contact{border:1px solid var(--line);background:var(--pink);border-radius:20px;max-width:760px;margin:1rem auto 2rem;padding:2rem}.plan-contact strong{font-family:Yu Mincho,serif;font-size:1.25rem}.plan-contact p{color:var(--muted);margin:.4rem 0 1.3rem;font-size:.88rem}@media (max-width:600px){.steps{gap:30px}.steps:before{left:15px}.step,.step.reverse{grid-template-columns:1fr;gap:0;padding-left:38px}.step.reverse .step-photo,.step.reverse .step-copy{order:initial}.step.reverse .step-copy{text-align:left}.step-photo img{height:210px}.step-copy{padding:20px 4px}.step-copy:before,.step.reverse .step-copy:before{top:42px;left:-30px;right:auto}}.hero-visual{isolation:isolate;overflow:visible}.hero-visual:before{z-index:-2}.hero-visual:after{content:"";z-index:-1;clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);opacity:.22;background:linear-gradient(145deg,#f9b8b2,#ea463c);width:68%;height:68%;position:absolute;bottom:8%;right:5%}.hero-photo-frame{clip-path:polygon(3% 0,100% 0,97% 100%,0 96%);background:#fff;width:min(650px,94%);padding:16px 16px 42px;position:relative;transform:rotate(-1.5deg);box-shadow:0 35px 70px #7d302438}.hero-photo-frame:before{content:"";z-index:-1;border:1px solid #ea463c66;position:absolute;inset:-10px 22px 22px -10px}.hero-photo-frame img{filter:none;clip-path:polygon(2% 0,100% 3%,98% 100%,0 97%);width:100%;transform:rotate(1.5deg)}.hero-photo-frame span{color:var(--red);letter-spacing:.2em;font-size:.65rem;font-weight:800;position:absolute;bottom:12px;left:34px}.hero-badge{top:10%;right:3%}.kit-photo{isolation:isolate;background:0 0;border-radius:0;padding:38px 52px 52px 20px;position:relative}.kit-photo:before{content:"";z-index:-2;background:linear-gradient(145deg,#ffdeda,#fff5f3);border-radius:48% 48% 12px 12px;position:absolute;inset:6% 0 0 7%}.kit-photo:after{content:"";z-index:-1;background:var(--red);opacity:.12;border-radius:50%;width:44%;height:34%;position:absolute;bottom:8%;left:0}.kit-photo-inner{background:#fff;border-radius:48% 48% 18px 18px;overflow:hidden;box-shadow:0 26px 65px #68261b29}.kit-photo-inner img{aspect-ratio:1.12;object-fit:cover;filter:none;width:100%;transform:scale(1.14)}.kit-photo-label{z-index:2;background:var(--red);color:#fff;border-radius:50%;flex-direction:column;justify-content:center;width:112px;height:112px;padding:18px;display:flex;position:absolute;top:15%;right:4px;box-shadow:0 16px 35px #9e2e2733}.kit-photo-label small{letter-spacing:.18em;font-size:.58rem}.kit-photo-label b{font-family:Yu Mincho,serif;font-size:.95rem;line-height:1.25}.kit-photo-caption{z-index:2;color:var(--ink);border-left:3px solid var(--red);background:#fff;padding:10px 16px;font-size:.75rem;font-weight:700;position:absolute;bottom:20px;right:20px;box-shadow:0 10px 25px #63342c20}.hero,.hero h1,.hero-lead,.hero-facts,.hero-badge{font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,Noto Serif JP,serif}.hero .eyebrow,.hero .button,.hero .text-link{font-family:system-ui,sans-serif}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffafae8;border-bottom:1px solid #ea463c29;gap:28px;min-height:72px;padding:14px clamp(20px,5vw,64px)}.brand{flex:none;align-items:center;display:inline-flex}.header-logo{width:158px;height:auto;display:block}.desktop-nav{color:#49413c;white-space:nowrap;flex:1;justify-content:center;gap:clamp(16px,2.4vw,34px);font-size:14px;font-weight:400}.desktop-nav a{border-bottom:1px solid #0000}.desktop-nav a:hover{border-color:var(--red);color:var(--red)}.header-cta{border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 24px;font:700 14px/1 system-ui,sans-serif;display:inline-flex}.hero h1{letter-spacing:0;margin-bottom:24px;font-size:clamp(36px,3.9vw,58px);font-weight:600;line-height:1.22}.hero .eyebrow{letter-spacing:0;margin-bottom:14px;font-size:16px;font-weight:700;line-height:1.5}.hero-lead{font-size:17px;font-weight:400;line-height:2}.hero .button{min-height:46px;padding:0 24px;font:700 14px/1 system-ui,sans-serif}.hero .text-link{font:700 14px/1.5 system-ui,sans-serif}@media (max-width:920px){.site-header{justify-content:space-between;min-height:62px}.desktop-nav,.header-cta{display:none}.menu-button{border:1px solid var(--line);background:#fff;border-radius:8px;place-content:center;gap:5px;width:42px;height:42px;padding:8px;display:inline-grid}.menu-button svg{width:20px;height:20px}.desktop-nav.is-open{border-bottom:1px solid var(--line);background:#fffdfb;gap:0;padding:12px 20px 20px;display:grid;top:62px}.desktop-nav.is-open a{border-bottom:1px solid var(--line);padding:14px 0}.hero h1{font-size:clamp(34px,7vw,48px)}}@media (max-width:560px){.site-header{padding:10px 20px}.header-logo{width:132px}.hero h1{font-size:clamp(28px,8.25vw,38px)}.hero .eyebrow{font-size:16px}.hero-lead{font-size:17px}}@media (max-width:600px){.hero-photo-frame{width:100%;padding:10px 10px 32px}.hero-photo-frame span{bottom:8px;left:20px}.hero-visual:after{width:82%;height:72%}.kit-photo{padding:25px 34px 46px 5px}.kit-photo-label{width:86px;height:86px;padding:13px;right:0}.kit-photo-label b{font-size:.72rem}.kit-photo-caption{font-size:.68rem;bottom:14px;right:5px}}.footer-logo{object-fit:contain;width:158px;height:auto;display:block}.section h2,.kit-copy h2,.operation h2,.plans-section h2,.faq h2,.final-cta h2{text-wrap:balance;font-weight:700}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
