:root{--bg:#f4f3ee;--paper:#fff;--ink:#111;--muted:#676762;--red:#f04438;--line:#d8d7d0;--max:1120px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;font-feature-settings:"palt" 1;line-height:1.7}a{color:inherit}
.site-header,body>header{position:sticky;top:0;z-index:10;background:rgb(244 243 238 / 92%);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav{width:min(100%,var(--max));min-height:64px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:24px}.brand{margin-right:auto;font-size:1.05rem;font-weight:800;letter-spacing:-.04em;text-decoration:none}.navlinks{display:flex;gap:24px}.navlinks a{color:var(--muted);font-size:.82rem;text-decoration:none}.navlinks a:hover{color:var(--ink)}.status{padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem;white-space:nowrap}
.hero{width:min(100%,var(--max));margin:0 auto;padding:84px 28px 96px;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:76px;align-items:center}.eyebrow,.section-label{margin:0 0 20px;color:var(--red);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;font-weight:750;letter-spacing:.13em}.hero h1{margin:0 0 40px;font-size:clamp(4rem,8vw,7.7rem);font-weight:850;letter-spacing:-.09em;line-height:.95;white-space:nowrap}.hero-statement{margin:0;font-size:clamp(1.42rem,2.4vw,2.05rem);letter-spacing:-.045em;line-height:1.48}.hero-statement strong{font-weight:850}.hero-description{max-width:35rem;margin:24px 0 0;color:var(--muted);font-size:1rem;line-height:1.85}.purchase-line{margin-top:34px;display:flex;align-items:baseline;gap:10px}.button{align-self:center;margin-right:8px;padding:13px 19px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-size:.9rem;font-weight:750}.button.disabled{background:#d9d8d2;color:#757570}.price-label,.tax{color:var(--muted);font-size:.76rem}.price b{font-size:2.7rem;letter-spacing:-.08em;line-height:1}
.certificate-wrap{padding:12px 12px 18px 0}.ticket{position:relative;aspect-ratio:3/4;padding:30px 28px;display:flex;flex-direction:column;background:var(--paper);box-shadow:14px 16px 0 var(--red);transform:rotate(1.5deg)}.ticket:before,.ticket:after{position:absolute;left:-12px;width:24px;height:24px;border-radius:50%;background:var(--bg);content:""}.ticket:before{top:42%}.ticket:after{top:69%}.ticket-top{padding-bottom:20px;display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid var(--ink);font-size:.82rem;line-height:1.35}.ticket-one{margin:30px 0 22px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(6.5rem,12vw,9rem);font-weight:700;letter-spacing:-.08em;line-height:.85}.ticket-name{display:flex;flex-direction:column;gap:2px}.ticket-name b{font-size:1.05rem}.ticket-name span{color:var(--muted);font-size:.9rem}.ticket-meta{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.ticket-number small,.ticket-issued small{display:block;color:var(--muted);font-size:.7rem}.ticket-number span,.ticket-issued span{display:block;margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ticket-number span{font-size:1.05rem;letter-spacing:.13em}.ticket-issued{text-align:right}.ticket-issued span{font-size:.78rem;letter-spacing:.05em;white-space:nowrap}
.manifesto{padding:90px max(28px,calc((100vw - var(--max))/2 + 28px));background:var(--ink);color:#fff}.manifesto-copy{max-width:980px;margin:0;font-size:clamp(2.2rem,5.5vw,5rem);font-weight:700;letter-spacing:-.065em;line-height:1.24}
.section{width:min(100%,var(--max));margin:0 auto;padding:104px 28px;border-bottom:1px solid var(--line)}.section-heading{margin-bottom:52px;display:grid;grid-template-columns:.45fr 1fr;align-items:start}.section h2,.closing h2{margin:0;font-size:clamp(2.7rem,5.5vw,4.8rem);font-weight:800;letter-spacing:-.07em;line-height:1.12}.steps{border-top:1px solid var(--ink)}.step{padding:28px 0;display:grid;grid-template-columns:.45fr 1fr;border-bottom:1px solid var(--line)}.step-number{color:var(--red);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:800}.step h3{margin:0 0 6px;font-size:1.42rem;letter-spacing:-.03em}.step p{margin:0;color:var(--muted)}
.product-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:start}.product-price{aspect-ratio:1/1;padding:36px;display:flex;flex-direction:column;background:var(--red);color:#fff}.product-price p{margin:0;font-size:.85rem}.product-price>div{margin:auto 0;line-height:.8}.product-price b{font-size:clamp(7rem,14vw,11rem);letter-spacing:-.1em}.product-price span{margin-left:8px;font-size:1.5rem}.product-price small{font-size:.85rem}.product-info h2 span{color:var(--muted);font-weight:500}.detail-list{margin:48px 0 0;border-top:1px solid var(--ink)}.detail-list>div{padding:17px 0;display:grid;grid-template-columns:120px 1fr;gap:18px;border-bottom:1px solid var(--line)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0}.legal-note{margin:30px 0 0;padding-left:18px;border-left:3px solid var(--red);color:var(--muted);font-size:.88rem;line-height:1.8}
.closing{width:min(100%,var(--max));margin:0 auto;padding:110px 28px 120px}.closing h2{max-width:700px}.closing>p:last-child{max-width:620px;margin:34px 0 0;color:var(--muted)}
.section h2,.closing h2,.product-info h2{text-wrap:balance}.hero-statement,.hero-description,.manifesto-copy,.step p,.legal-note{text-wrap:pretty}
.legal{max-width:800px;margin:auto;padding:72px 24px 120px}.legal h1{font-size:clamp(2.4rem,7vw,5rem);line-height:1.05;letter-spacing:-.06em}.legal h2{margin-top:48px;font-size:1.35rem}.legal p,.legal li{color:#333}.legal table{width:100%;border-collapse:collapse}.legal th,.legal td{padding:14px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.legal th{width:32%;color:var(--muted);font-weight:500}.updated{color:var(--muted);font-size:.85rem}
footer{border-top:1px solid var(--line)}.footer{width:min(100%,var(--max));margin:0 auto;padding:38px 28px 54px;display:flex;justify-content:space-between;gap:28px;color:var(--muted);font-size:.8rem}.footer nav{display:flex;flex-wrap:wrap;gap:18px}.footer a{text-decoration:none}
@media(max-width:760px){.nav{min-height:58px;padding:0 20px}.navlinks{display:none}.status{font-size:.68rem}.hero{padding:50px 20px 70px;grid-template-columns:1fr;gap:54px}.eyebrow{margin-bottom:16px;font-size:.69rem;letter-spacing:.09em}.hero h1{margin-bottom:30px;font-size:clamp(2.9rem,13.6vw,3.55rem);letter-spacing:-.095em}.hero-statement{font-size:1.28rem;line-height:1.52}.hero-description{margin-top:19px;font-size:.94rem;line-height:1.75}.purchase-line{margin-top:26px;gap:7px}.button{margin-right:auto;padding:12px 16px;font-size:.82rem}.price-label{display:none}.price b{font-size:2.2rem}.certificate-wrap{width:min(88%,350px);margin:0 auto}.ticket{padding:24px 22px;box-shadow:10px 12px 0 var(--red)}.ticket-one{margin:26px 0 18px;font-size:7rem}.manifesto{padding:66px 20px 72px}.manifesto-copy{font-size:clamp(2rem,10vw,2.8rem);line-height:1.28}.section{padding:72px 20px}.section-heading,.step{grid-template-columns:1fr}.section-heading{gap:4px;margin-bottom:38px}.section h2,.closing h2{font-size:clamp(2.35rem,11vw,3.1rem)}.step{padding:24px 0;gap:13px}.step h3{font-size:1.25rem}.product-section{grid-template-columns:1fr;gap:56px}.product-price{width:min(100%,390px);padding:28px}.product-price b{font-size:8rem}.detail-list{margin-top:36px}.detail-list>div{grid-template-columns:92px 1fr;gap:12px}.closing{padding:76px 20px 84px}.footer{padding:34px 20px 48px;flex-direction:column}.legal{padding:54px 20px 88px}.legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block}.legal th{width:auto;padding-bottom:0;border:0}}
@media(max-width:350px){.hero h1{font-size:2.65rem}.status{display:none}.purchase-line{flex-wrap:wrap}}
