:root{--ink:#24303E;--navy:#2D3A4B;--red:#C93D18;--blue:#A0D2EE;--blue2:#90BED6;--sand:#F4D7A2;--mint:#C9E5DA;--peach:#FBE6D0;--yellow:#FFD850;--green:#1F6B4F}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--blue);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Hiragino Sans','Noto Sans JP',sans-serif;font-size:17px;line-height:1.8}
.page{max-width:560px;margin:0 auto;background:var(--blue)}
[hidden]{display:none!important}
p,b{word-break:auto-phrase}
h1,h2{margin:0;font-weight:800;line-height:1.5}
button{font-family:inherit}
.first{padding:14px 20px 20px;display:flex;flex-direction:column;gap:10px;align-items:center}
.top{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:14px;letter-spacing:.05em}
.badge{background:var(--red);color:#fff;font-weight:700;font-size:14px;padding:3px 14px;border-radius:999px}
.video{position:relative;width:72%;max-width:300px}
.video video{display:block;width:100%;aspect-ratio:9/16;border-radius:16px;background:var(--navy)}
#unmute{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);border:0;background:var(--navy);color:#fff;font-weight:700;font-size:15px;border-radius:999px;padding:0 18px;min-height:44px;white-space:nowrap;cursor:pointer}
.price-line{margin:0;text-align:center;font-size:14px;font-weight:700;line-height:1.5}
.cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:60px;border:0;border-radius:999px;background:var(--navy);color:#fff;font-weight:700;font-size:19px;text-decoration:none;cursor:pointer}
.cta.red{background:var(--red);color:#fff}
.ground{background:var(--blue2);flex:1;min-height:64px}
#pageVideo{min-height:100svh;display:flex;flex-direction:column}
.title{background:#FBFCFC;border-radius:22px;padding:22px 18px;text-align:center}
.title h1{font-size:28px}.title h2{font-size:26px}
.title.dark{background:var(--navy);color:#fff}.title.dark span{color:var(--yellow)}
.mark{background:linear-gradient(transparent 58%,var(--yellow) 58%,var(--yellow) 92%,transparent 92%)}
.red{color:var(--red)}
.sec-day{padding:28px 20px 36px;display:flex;flex-direction:column;gap:16px;transition:background .2s}
.sec-day.now{background:var(--sand)}.sec-day.after{background:var(--mint)}
.switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#fff;padding:6px;border-radius:999px}
.switch button{min-height:52px;border:0;border-radius:999px;background:#fff;color:var(--navy);font-weight:800;font-size:18px;cursor:pointer}
.switch button[aria-pressed=true]{background:var(--navy);color:#fff}
.sec-day.after .switch button[aria-pressed=true]{background:var(--green)}
.day-row{display:flex;align-items:flex-end;gap:12px}
.moments{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.moment{background:#fff;border-radius:14px;padding:12px 14px;line-height:1.6}
.moment small{display:block;font-weight:800;font-size:14px;color:var(--green)}
.moment b{font-size:16px}
#face{flex:none;width:92px;display:block}
.sec-four{background:var(--mint);padding:44px 20px;display:flex;flex-direction:column;gap:14px}
.diagram{width:100%;display:block}
.strong{margin:0;text-align:center;font-weight:700}
.item{background:#fff;border-radius:14px;padding:14px 16px;line-height:1.65}
.item b{display:block}.item i{font-style:normal;color:var(--green);margin-right:.7em}
.item p{margin:0;font-size:16px}
.sec-price{background:var(--peach);padding:44px 20px;display:flex;flex-direction:column;gap:10px}
.step{background:#fff;border-radius:16px;padding:14px 18px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:16px}
.step s{font-size:22px;font-weight:800;white-space:nowrap}
.arrow{text-align:center;font-weight:800;color:var(--red);line-height:1}
.final{background:#fff;border:3px solid var(--red);border-radius:18px;padding:20px 14px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}
.big{font-weight:800;font-size:52px;line-height:1.3;color:var(--red)}.big small{font-size:24px}
.final b{font-size:16px}.final p{margin:0;font-size:15px}
.note{margin:4px 0 0;font-size:14px}
.sec-apply{padding:44px 20px 28px;display:flex;flex-direction:column;gap:10px}
.line{background:#fff;border-radius:12px;padding:10px 14px;line-height:1.6}
.line b{margin-right:1em}
.center{margin:6px 0 0;text-align:center;font-size:15px;line-height:1.7}
footer{background:var(--blue2);padding:12px 20px;text-align:center;font-size:14px;display:flex;flex-direction:column;align-items:center}
footer button{border:0;background:none;color:var(--ink);font-weight:700;font-size:15px;min-height:44px;text-decoration:underline;cursor:pointer}
.bar{position:sticky;bottom:0;background:rgba(255,255,255,.96);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
.bar .cta{min-height:56px;font-size:18px}
.calm{display:block;margin-top:2px;color:var(--green)}
.final .label{font-size:14px;font-weight:700;margin-top:4px}
.total{background:#fff;border-radius:14px;padding:10px 14px;text-align:center;line-height:1.5}
.line small{display:block;font-size:14px;line-height:1.6;margin-top:2px}
