.pass-page{max-width:var(--frame-w, 1080px);margin:0 auto;padding:calc(var(--nav-h) + var(--spacing-6)) var(--spacing-5) var(--spacing-8)}.pass-head{max-width:40rem}.pass-eyebrow{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.18em;text-transform:uppercase;color:var(--color-vermillion);margin:0 0 var(--spacing-3)}.pass-title{font-family:var(--font-display),var(--font-ja);font-size:clamp(32px,5.2vw,52px);font-weight:600;line-height:var(--lh-head);letter-spacing:-.02em;margin:0 0 var(--spacing-5)}.pass-lede{font-family:var(--font-display),var(--font-ja);font-size:var(--text-lg);line-height:1.6;color:var(--color-ink-soft);margin:0 0 var(--spacing-6)}.pass-price{display:flex;align-items:baseline;gap:var(--spacing-3);flex-wrap:wrap;border-top:1px solid var(--color-hair);padding-top:var(--spacing-5);margin:0 0 var(--spacing-5)}.pass-price-n{font-family:var(--font-display),var(--font-ja);font-size:clamp(34px,5vw,46px);font-weight:600;letter-spacing:-.02em;line-height:1}.pass-price-note{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}.pass-buy{margin:0 0 var(--spacing-4)}.pass-soon{border:1px solid var(--color-hair);background:var(--color-paper-2);padding:var(--spacing-4) var(--spacing-5)}.pass-soon-h{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);margin:0 0 6px}.pass-soon-b{font-size:var(--text-xs);line-height:1.7;color:var(--color-ink-soft);margin:0}.pass-cta{display:inline-block;padding:14px 26px;background:var(--color-ink);color:var(--color-paper);border:1px solid var(--color-ink);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;line-height:1.4;transition:background var(--t-fast),color var(--t-fast)}.pass-cta:hover:not(:disabled){background:transparent;color:var(--color-ink)}.pass-cta:disabled{opacity:.45;cursor:default}.pass-note{font-size:var(--text-xs);line-height:1.7;color:var(--color-vermillion);border-left:2px solid var(--color-vermillion);padding-left:10px;margin:0 0 var(--spacing-4)}.pass-note[data-tone=calm]{color:var(--color-ink-soft);border-left-color:var(--color-hair)}.pass-fine{font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.7;color:var(--color-grey-off);margin:0 0 var(--spacing-8);max-width:34rem}.pass-h2{font-family:var(--font-display),var(--font-ja);font-size:clamp(22px,3vw,28px);font-weight:600;letter-spacing:-.01em;margin:0 0 var(--spacing-5)}.pass-values{border-top:1px solid var(--color-hair);padding-top:var(--spacing-6)}.pass-list{list-style:none;margin:0 0 var(--spacing-8);padding:0}.pass-item{display:grid;grid-template-columns:52px 1fr;gap:var(--spacing-4);padding:var(--spacing-5) 0;border-bottom:1px solid var(--color-hair)}.pass-item-n{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-vermillion);letter-spacing:.1em;padding-top:4px}.pass-item-h{font-family:var(--font-display),var(--font-ja);font-size:21px;font-weight:600;line-height:1.3;margin:0 0 8px}.pass-item-b{font-size:15px;line-height:1.75;color:var(--color-ink-soft);margin:0;max-width:38rem}.pass-free{border-top:1px solid var(--color-hair);padding-top:var(--spacing-6)}.pass-free-list{list-style:none;margin:0 0 var(--spacing-5);padding:0;display:grid;gap:var(--spacing-2)}.pass-free-list li{font-size:15px;line-height:1.7;color:var(--color-ink-soft);padding-left:20px;position:relative}.pass-free-list li:before{content:"·";position:absolute;left:6px;top:-1px;color:var(--color-vermillion);font-size:20px;line-height:1.4}.pass-links{margin:0;display:flex;gap:var(--spacing-5);flex-wrap:wrap}.pass-links a{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-vermillion);text-decoration:none}.pass-links a:hover{text-decoration:underline}html[lang=ja] :is(.pass-eyebrow,.pass-price-note,.pass-soon-h,.pass-cta,.pass-fine,.pass-links a,.pass-item-n){font-family:var(--font-ja);letter-spacing:.04em;text-transform:none}@media(max-width:640px){.pass-item{grid-template-columns:40px 1fr;gap:var(--spacing-3)}}
