/* 千宙・第1段階専用。夜から夜明けへ。ほかのページには読み込まない。 */
:root{--ink:#252e48;--blue:#263b67;--muted:#596277;--pink:#f8d2dc;--paper:#fffdf9;--serif:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho',serif;--sans:'Noto Sans JP','Hiragino Sans','Yu Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.95;letter-spacing:.025em}p,h1,h2,figure{margin:0}img{max-width:100%}button,input{font:inherit}a{color:var(--blue)}.copy{width:calc(100% - 48px);max-width:640px;margin-inline:auto}.copy [data-source-line]{display:block}h1,h2,.lead,.gift-name{font-family:var(--serif);font-weight:600}h2{font-size:26px;line-height:1.75;letter-spacing:.08em;text-align:center;text-wrap:balance}.section{padding-block:88px}.section-mark{height:32px;width:1px;margin:0 auto 28px;background:linear-gradient(transparent,#b98f9e)}
.sky{position:relative;height:640px;isolation:isolate;overflow:hidden;background:#223b65}.sky-image,.sky-image img,.sky-shade{position:absolute;inset:0;width:100%;height:100%}.sky-image img{object-fit:cover;object-position:center 53%}.sky-shade{background:linear-gradient(180deg,rgba(15,28,61,.15),rgba(25,39,72,.13) 45%,transparent 65%,#fffdf9 100%)}.sky-copy{position:relative;z-index:1;text-align:center;color:#fffdf9;padding:52px 24px 0;text-shadow:0 2px 20px #1b315650}.brand{font-family:var(--serif);font-size:17px;letter-spacing:.23em}.sky-mark{width:1px;height:42px;margin:34px auto 24px;background:linear-gradient(#f9e8eb90,#f9e8eb00)}h1{font-size:44px;line-height:1.85;letter-spacing:.1em;font-weight:600}h1>[data-source-line]{display:block}.phrase{display:inline-block}.rising-light{position:absolute;inset:0;pointer-events:none}.rising-light i{position:absolute;left:23%;top:60%;width:3px;height:3px;border-radius:50%;background:#ffefe4;box-shadow:0 0 12px 3px #ffebd550;animation:rise 12s ease-in-out infinite}.rising-light i:nth-child(2){left:75%;top:54%;animation-delay:-4s}.rising-light i:nth-child(3){left:65%;top:70%;animation-delay:-8s}@keyframes rise{0%,100%{opacity:0;transform:translateY(25px)}25%,70%{opacity:.6}90%{opacity:0;transform:translateY(-45px)}}
.invitation{position:relative;margin-top:-95px;padding:0 0 80px}.lead{font-size:25px;text-align:center;line-height:1.9;letter-spacing:.05em;text-wrap:balance;margin:0 auto 28px}.intro-text{max-width:590px;margin:auto}.subscribe{margin-top:36px;scroll-margin-top:26px;background:linear-gradient(130deg,#fff9f5,#f9edf1 72%,#eef1f8);border:1px solid #eddee3;border-radius:18px;padding:30px 32px 28px;box-shadow:0 16px 46px #89707d0b}.subscribe label{display:block;margin-bottom:8px;font-size:16px;color:var(--blue)}.subscribe input[type=email]{width:100%;background:#ffffffd9;color:var(--ink);border:1px solid #c0c5d1;border-radius:8px;padding:15px 16px;font-size:17px;min-height:58px;box-shadow:inset 0 2px 3px #1c2b4c05}.subscribe input[type=email]::placeholder{color:#747c8c}.subscribe input[type=email]:focus-visible{outline:2px solid #5673a4;outline-offset:3px}.form-error{color:#a3334b;margin-top:10px}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.btn{position:relative;display:flex;align-items:center;justify-content:center;width:100%;gap:18px;padding:19px 24px;margin-top:20px;border:1px solid #e6aebf;border-radius:12px;background:linear-gradient(110deg,#f4c5d5,#f8d7da 65%,#f8e3cd);box-shadow:0 4px 0 #d5a0b1,0 12px 24px #aa7c8d1a;color:#29344e;text-decoration:none;text-align:center;font-size:17px;font-weight:500;line-height:1.75;letter-spacing:.025em;cursor:pointer;transition:filter .2s,transform .2s}.btn [data-source-line]{text-wrap:balance}.btn:hover{filter:brightness(1.035);transform:translateY(-2px)}.btn:focus-visible{outline:2px solid #365f98;outline-offset:6px}.btn:disabled{opacity:.6;cursor:wait;transform:none}.arrow{flex:0 0 22px;width:22px;height:10px;border-bottom:1px solid currentColor;position:relative;transform:translateY(-4px)}.arrow::after{content:'';position:absolute;right:0;bottom:-1px;width:7px;height:7px;border-right:1px solid currentColor;transform:rotate(-45deg);transform-origin:bottom right}.note{font-size:16px;line-height:1.95;color:var(--muted);margin-top:25px}.note [data-source-line]+[data-source-line]{margin-top:10px}
.gift{padding-top:45px;background:linear-gradient(#fffdf9,#fff8f5 70%,#f9f5f4);text-align:center}.gift-heading{font-size:21px;letter-spacing:.07em}.gift-name{margin:25px 0 28px;color:var(--blue)}.gift-title{display:block;font-size:43px;letter-spacing:.1em;line-height:1.7}.gift-type{display:block;font-family:var(--sans);font-size:17px;font-weight:400;letter-spacing:.12em}.duration{letter-spacing:.03em}.gift-intro{margin-bottom:30px}.gift-steps{line-height:2.25}.gift-last{margin-top:25px}.window-art{width:calc(100% - 48px);max-width:960px;margin:46px auto 0;position:relative}.window-art img{display:block;width:100%;height:auto;border-radius:120px 120px 8px 8px;box-shadow:0 18px 38px #383f6020}.letters{padding-top:85px}.section-intro{text-align:center;margin-top:28px}.days{list-style:none;margin:40px 0 32px;padding:0;border-top:1px solid #dfe1e6}.days li{position:relative;display:grid!important;grid-template-columns:70px 1fr;gap:20px;align-items:center;padding:25px 6px;border-bottom:1px solid #dfe1e6;line-height:1.95}.day{font-family:var(--serif);font-size:24px;color:var(--blue);white-space:nowrap}.day-separator{position:absolute;left:78px;top:50%;transform:translateY(-50%);font-size:16px;color:#c8bbc6}.day-title{display:block}.letters-close{color:var(--muted)}.about{background:radial-gradient(ellipse at 15% 30%,#fdebf0 0,transparent 55%),linear-gradient(125deg,#faf5f4,#f2f4fa);border-block:1px solid #ebe6e8}.about-story{margin-top:36px}.about-story p+p{margin-top:25px}.about .btn{margin-top:38px}.delivery{padding-block:64px 96px}.delivery h2{font-size:21px;margin-bottom:26px}.unsub{margin-top:25px;color:var(--muted)}.signature{text-align:center;padding:35px 0 50px;font-family:var(--serif);color:var(--blue)}.signature img{width:68px;height:68px;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #d8d9e2;display:block;margin:0 auto 14px}.signature p{font-size:21px;letter-spacing:.25em}.signature small{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.12em;color:#747d90;margin-top:22px}
@media(min-width:900px){.sky-copy{padding-top:62px}.brand{font-size:18px}.sky-mark{margin-top:45px}.lead{max-width:620px}.intro-text{text-align:center}.gift .copy{max-width:640px}.about-story{max-width:600px;margin-inline:auto}.window-art img{border-radius:200px 200px 8px 8px}}
@media(max-width:699px){body{font-size:16px}.copy{width:calc(100% - 40px)}.sky{height:545px}.sky-image img{object-position:center 72%}.sky-shade{background:linear-gradient(180deg,rgba(22,36,68,.05),rgba(22,36,68,.08) 48%,transparent 63%,#fffdf9 100%)}.sky-copy{padding:37px 18px 0}.brand{font-size:15px}.sky-mark{height:32px;margin:26px auto 18px}h1{font-size:30px;line-height:1.85;letter-spacing:.075em}h1>[data-source-line]:last-child{max-width:340px;margin:auto}.invitation{margin-top:-100px;padding-bottom:55px}.lead{font-size:21px;line-height:1.9;margin-bottom:25px}.intro-text [data-source-line]{display:inline}.subscribe{padding:24px 18px;margin-top:28px;border-radius:14px}.btn{padding:17px 16px;gap:12px;font-size:16px;min-height:72px}.arrow{flex-basis:18px;width:18px}.note{font-size:16px;line-height:1.9}.section{padding-block:58px}.section-mark{margin-bottom:24px;height:26px}h2{font-size:23px}.gift{padding-top:18px}.gift-heading{font-size:18px}.gift-title{font-size:34px;letter-spacing:.06em}.gift-type{font-size:16px;letter-spacing:.04em}.gift-intro [data-source-line]{display:inline}.gift-last{text-wrap:balance}.window-art{width:calc(100% - 32px);margin-top:34px}.window-art img{border-radius:75px 75px 5px 5px;aspect-ratio:1.4;object-fit:cover;object-position:45%}.days{margin-top:30px}.days li{grid-template-columns:57px 1fr;gap:17px;padding:23px 0}.day{font-size:21px}.day-separator{left:59px}.letters-close [data-source-line]{display:inline}.about-story [data-source-line]{display:inline}.delivery{padding-block:44px 72px}.delivery h2{font-size:20px}.delivery p [data-source-line]{display:inline}.signature{padding-top:32px}}
@media(max-width:359px){.copy{width:calc(100% - 32px)}h1{font-size:27px}.sky{height:520px}.lead{font-size:20px}.subscribe{padding-inline:16px}.gift-title{font-size:30px}.gift-heading{font-size:17px}.gift-steps [data-source-line]{display:inline}.btn{padding-inline:12px}.arrow{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
