:root{--pink:#f50073;--soft-pink:#fff0f6;--ink:#171719;--muted:#686369;--line:#e8e2e6;--max-width:1060px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;overflow-wrap:anywhere}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:24px}.header{padding-top:26px;padding-bottom:38px}.wordmark{display:inline-block;font-family:Arial,Helvetica,sans-serif;font-size:30px;font-weight:900;letter-spacing:-1.8px;line-height:1}.hero h1{margin:0 0 30px;line-height:1.55;font-weight:900;letter-spacing:-.05em}.hero-intro{display:block;font-size:25px}.hero-main{display:block;font-size:clamp(27px,7.2vw,45px);margin-top:9px}.hero-main em{font-style:normal;color:var(--pink)}p{font-size:16px;line-height:2;margin:0 0 25px;letter-spacing:.01em}p:last-child{margin-bottom:0}.hero-copy{margin-bottom:32px}.hero-copy p{margin-bottom:20px}.cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:62px;padding:17px 14px;border:0;border-radius:999px;background:var(--pink);color:#fff;font:inherit;font-size:16px;font-weight:700;text-decoration:none;line-height:1.5;text-align:center;box-shadow:0 6px 18px #f500731a;cursor:pointer}.cta:disabled{opacity:1;cursor:not-allowed}.cta:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}.visual{margin:40px 0 0}.visual img{display:block;width:100%;height:auto;border-radius:20px}.section{padding-top:88px}.section-label{display:block;color:var(--pink);font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:800;letter-spacing:.17em;margin-bottom:17px}h2{font-size:30px;line-height:1.55;letter-spacing:-.045em;font-weight:800;margin:0 0 30px}h3{font-size:20px;line-height:1.65;font-weight:800;letter-spacing:-.025em;margin:0 0 18px}strong{color:var(--pink);font-weight:800;font-size:1.15em}.content-section .visual{margin:35px 0}.gift-section{margin-top:88px;padding:64px 0;background:var(--soft-pink)}.gift-feelings{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:30px 0}.gift-feelings span{display:inline-block;background:#fff;border-radius:24px 24px 24px 4px;padding:12px 22px;color:var(--pink);font-size:21px;font-weight:800}.gift-feelings span:nth-child(2){margin-left:35px}.gift-feelings span:nth-child(3){margin-left:70px}.possibilities{margin:36px 0 40px}.possibilities>div{padding:24px 0;border-top:1px solid var(--line)}.possibilities>div:last-child{border-bottom:1px solid var(--line)}dt{color:var(--pink);font-weight:800;font-size:23px;margin-bottom:10px}dd{margin:0}.pink-section{background:var(--soft-pink)}#m1llion{margin-top:88px;padding-top:64px}.merits-section{padding-top:70px;padding-bottom:64px}.merit{border-top:1px solid #eacfdc;padding-top:27px;margin-top:32px}.merit h3{color:var(--pink)}.merits-list{margin-bottom:40px}.timeline{list-style:none;padding:0;margin:40px 0}.timeline li{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:18px;position:relative;padding-bottom:38px}.timeline li:last-child{padding-bottom:0}.timeline li:not(:last-child)::before{content:"";position:absolute;left:23px;top:49px;bottom:0;width:2px;background:#f7b9d5}.step-number{display:flex;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;background:var(--pink);color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:19px;font-weight:800}.timeline h3{padding-top:5px;margin-bottom:13px}.timeline p{margin-bottom:18px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;position:relative;padding:24px 35px 24px 0;font-size:16px;font-weight:700;line-height:1.8}summary::-webkit-details-marker{display:none}summary::after{content:"+";position:absolute;right:2px;top:24px;color:var(--pink);font-size:24px;font-weight:400}details[open] summary::after{content:"−"}.faq-answer{padding:0 0 25px;color:#454045}.final-section{padding-bottom:30px}.final-section .visual{margin-top:0;margin-bottom:40px}.final-section h2{font-size:38px;color:var(--pink)}.final-section .cta{margin-top:34px}.eligibility{margin-top:17px;text-align:center;font-size:13px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:768px){body{padding-bottom:0}.container{padding-inline:60px}.header{padding-top:38px;padding-bottom:54px}.wordmark{font-size:38px}.hero-intro{font-size:32px}.hero-main{font-size:54px}.hero-copy{max-width:700px}p{font-size:18px}.cta{max-width:460px;font-size:18px}.section{padding-top:104px}h2{font-size:42px;max-width:850px}h3{font-size:24px}.visual{margin-top:45px}.visual-hero,.visual-about{max-width:650px;margin-inline:auto}.visual-hero img,.visual-about img{border-radius:24px}.gift-section{padding-block:80px;margin-top:104px}.gift-feelings{flex-direction:row;flex-wrap:wrap;gap:20px}.gift-feelings span:nth-child(n){margin-left:0}.possibilities>div{display:grid;grid-template-columns:135px 1fr;gap:24px;align-items:start}dt{margin:0}.pink-section#m1llion{margin-top:104px;padding-top:80px}.merits-section{padding-top:85px;padding-bottom:80px}.merit{padding-block:30px;margin-top:0}.timeline{max-width:750px}.timeline li{grid-template-columns:56px minmax(0,1fr);gap:28px;padding-bottom:48px}.step-number{width:56px;height:56px;font-size:21px}.timeline li:not(:last-child)::before{left:27px;top:57px}summary{font-size:18px}.final-section{padding-bottom:90px}.final-section .visual{max-width:700px;margin-inline:auto;margin-bottom:55px}.final-section h2{font-size:50px}.final-section .eligibility{max-width:460px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

/* Keep HERO content and the mobile CTA inside their containing viewport. */
html,body{width:100%;max-width:100%;min-width:0}
.container{min-width:0;max-width:min(100%,var(--max-width));padding-inline:clamp(20px,6vw,24px)}
.hero h1,.hero-intro,.hero-main,.hero-copy,.hero-copy p,.hero .visual{min-width:0;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.hero-intro{font-size:clamp(22px,6.4vw,32px)}
.hero-main{font-size:clamp(24px,7.2vw,45px);line-height:1.55;line-break:strict}
.hero-copy p{font-size:clamp(16px,4.2vw,18px)}
.cta{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;font-size:clamp(14px,4.1vw,18px)}
.visual img{max-width:100%}


@media(min-width:768px){.container{padding-inline:60px}.hero-main{font-size:clamp(36px,4.2vw,54px)}.hero-copy{max-width:min(100%,700px)}.cta{max-width:min(100%,460px)}}

.footer{background:#fff;padding-block:48px 40px;color:var(--muted)}
.footer p{font-size:14px;line-height:1.9;margin:0 0 10px}
.footer .footer-brand{color:var(--ink);font-weight:400;letter-spacing:.03em;margin-bottom:18px}
.footer a{color:inherit;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.footer a:hover{color:var(--pink)}
.footer a:focus-visible{outline:2px solid var(--pink);outline-offset:4px}
.footer .footer-copyright{font-size:12px;margin-top:24px;margin-bottom:0}
@media(min-width:768px){.footer{padding-block:56px 48px}}
.footer .footer-pending{text-decoration:underline;text-underline-offset:3px;cursor:not-allowed}

.brand-logo{display:block;max-width:100%;height:auto;object-fit:contain}
.brand-logo-header{width:160px}
.brand-logo-footer{width:128px}
@media(min-width:768px){.brand-logo-header{width:200px}.brand-logo-footer{width:150px}}
