@font-face{font-family:'Bingo Gothic';src:url('noto-sans-jp.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--gothic:'Bingo Gothic','Noto Sans JP','Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}
html,body,body *{font-family:var(--gothic)!important}body{font-weight:500}h1,h2,h3,strong,b,.brand,.button,nav,summary{font-weight:900}.section-heading p,.design-price p{font-weight:700}.brand b{font-size:20px}.brand>span:last-child{font-size:14px}.header{gap:18px}.header nav{gap:18px}
.hero-art{position:relative;min-height:540px;aspect-ratio:2.05;background-image:url('hero-comic-v2.png');background-size:cover;background-position:center;overflow:hidden;display:flex;align-items:center}
.hero-copy{position:relative;z-index:1;padding:44px 36px;width:76%;transform:rotate(-4deg)}
.hero-kicker{display:inline-block;background:#171717;color:white;padding:6px 17px;font-size:19px;font-weight:900;letter-spacing:.015em;margin:0 0 15px;transform:rotate(2deg)}
.hero-title{font-size:clamp(48px,7.9vw,100px);line-height:1.35;font-weight:900;letter-spacing:-.055em;margin:0;filter:drop-shadow(5px 7px 0 #fff)}
.hero-title span{display:block;white-space:nowrap;color:#ffe900;-webkit-text-stroke:10px #111;paint-order:stroke fill;text-shadow:6px 9px 0 #111}
.hero-title span:last-child{color:#fff;font-size:1.04em}
.hero-tag{display:inline-block;background:var(--pink);border:3px solid #111;box-shadow:4px 4px 0 #111;padding:7px 15px;color:white;font-size:18px;font-weight:900;margin:24px 0 0;transform:rotate(2deg)}
.hero-subtitle{font-size:clamp(22px,2.3vw,30px);line-height:1.5;letter-spacing:-.04em;margin:6px 0 10px}.hero-bottom .eyebrow{font-size:12px}.hero-bottom p{font-weight:700}.ticker{font-weight:900}
.party-ribbon{margin:0;position:relative;height:285px;border-bottom:4px solid #111;overflow:hidden;background:var(--blue);display:grid;grid-template-columns:58% 42%}.party-ribbon img{width:100%;height:100%;object-fit:cover;object-position:center 38%;border-right:4px solid #111}.party-ribbon figcaption{background:var(--pink);background-image:radial-gradient(#ff64b9 1.5px,transparent 1.5px);background-size:10px 10px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;color:white}.party-ribbon strong{font-size:46px;line-height:1.3;transform:rotate(-5deg);-webkit-text-stroke:5px #111;paint-order:stroke fill;text-shadow:3px 4px #111}.party-ribbon figcaption>span{margin-top:20px;font-size:13px;font-weight:800}
.price-party{margin:0 0 32px;display:grid;grid-template-columns:58% 42%;border:3px solid #111;box-shadow:6px 6px #111;overflow:hidden;background:var(--yellow)}.price-party img{width:100%;height:265px;object-fit:cover;object-position:center 35%;border-right:3px solid #111}.price-party figcaption{padding:25px;display:flex;flex-direction:column;justify-content:center}.price-party strong{font-size:24px;line-height:1.7}.price-party small{font-size:12px;margin-top:16px}.design-price strong{font-family:var(--gothic);font-weight:900}.footer-privacy{display:block;font-size:13px;text-decoration:underline;margin:22px auto}footer nav{font-weight:800;gap:23px}footer small{font-family:var(--gothic)}
@media(max-width:1100px){.header nav{gap:12px}.brand b{font-size:18px}.header{padding-left:18px;padding-right:18px}.hero-art{min-height:440px}.hero-copy{padding:36px 25px;width:80%}.hero-title{font-size:8.4vw}.hero-title span{-webkit-text-stroke-width:8px}.hero-kicker{font-size:16px}.hero-tag{font-size:16px}.party-ribbon{height:255px}.party-ribbon strong{font-size:39px}.party-ribbon figcaption>span{font-size:12px}.price-party strong{font-size:21px}}
@media(min-width:801px) and (max-width:1000px){.header{flex-wrap:wrap;padding:10px 20px;gap:12px}.header nav{flex:1;justify-content:flex-end;gap:12px;font-size:13px}.header .nav-cta{font-size:12px}.brand-mark{font-size:26px}.brand>span:last-child{font-size:12px}.brand b{font-size:16px}.hero-title{font-size:8.7vw}.hero-art{min-height:405px}}
@media(max-width:800px){.hero-art{min-height:490px;aspect-ratio:auto;align-items:flex-start;background-position:65% center;background-size:auto 100%}.hero-copy{width:100%;padding:32px 20px;transform:rotate(-4deg)}.hero-title{font-size:clamp(36px,10.2vw,74px);line-height:1.45;filter:drop-shadow(3px 4px 0 #fff)}.hero-title span{-webkit-text-stroke-width:7px;text-shadow:3px 5px #111}.hero-kicker{font-size:13px;padding:6px 10px;margin-bottom:10px}.hero-tag{font-size:13px;margin-top:14px;padding:6px 9px}.hero-subtitle{font-size:24px}.hero-bottom{padding:25px 20px}.party-ribbon{height:auto;grid-template-columns:1fr}.party-ribbon img{height:215px;border-right:0;border-bottom:3px solid #111;object-position:center 35%}.party-ribbon figcaption{padding:22px;display:block;text-align:center}.party-ribbon strong{font-size:29px;display:block;transform:rotate(-2deg);-webkit-text-stroke-width:3px}.party-ribbon strong br{display:none}.party-ribbon figcaption>span{display:block;margin-top:12px;font-size:12px}.price-party{grid-template-columns:1fr}.price-party img{height:215px;border-right:0;border-bottom:3px solid #111}.price-party figcaption{padding:20px}.price-party strong{font-size:22px}.price-party strong br{display:none}.price-party small{margin-top:10px}.design-price p{font-size:15px}.brand b{font-size:18px}.brand>span:last-child{font-size:13px}footer nav{gap:18px;font-size:14px}}
@media(max-width:370px){.hero-art{min-height:450px}.hero-copy{padding:25px 16px}.hero-title{font-size:10vw}.hero-tag{font-size:12px}.brand b{font-size:16px}.menu-toggle{font-size:12px;padding:8px}.header{padding:12px}}
