.halloween-page{--hw-purple: #4b1d62;--hw-ink: #321d3f;--hw-muted: #715f76;--hw-orange: #ff821e;--hw-cream: #fffaf0;--hw-line: #e9d9d1;color:var(--hw-ink);background:var(--hw-cream);font-family:Noto Sans JP,system-ui,sans-serif;font-size:16px;line-height:1.9;padding-bottom:88px}.halloween-page *{box-sizing:border-box}.halloween-page img{display:block;max-width:100%}.halloween-page a{text-underline-offset:5px}.halloween-page :is(a,button,summary):focus-visible{outline:3px solid #ac4c00;outline-offset:5px}.halloween-page h2{margin:0 0 24px;font-size:clamp(1.7rem,3.2vw,2.65rem);font-weight:800;line-height:1.5;letter-spacing:.01em}.halloween-page h3{font-weight:800;line-height:1.6;font-size:1.16rem}.hw-topbar{max-width:1200px;margin:auto;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 24px;font-size:13px;font-weight:800}.hw-topbar a{text-decoration:none}.hw-topbar a:first-child{letter-spacing:.07em}.hw-topbar a:first-child span{margin-left:8px;font-size:10px}.hw-topbar a:last-child{font-weight:600}.hw-hero{max-width:1200px;margin:0 auto;background:var(--hw-purple);color:#fff}.hw-hero picture{display:block}.hw-hero picture img{width:100%;height:auto}.hw-hero-summary{padding:30px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.hw-hero-summary .hw-eyebrow{color:#ffe091;font-size:12px;margin-bottom:5px}.hw-hero h1{font-weight:800;font-size:clamp(1.2rem,2.5vw,1.85rem);line-height:1.6;margin:0}.hw-hero-date{margin:8px 0 0;font-size:13px}.hw-hero-date span{margin-left:12px}.hw-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:58px;padding:16px 28px;color:#fff;background:var(--hw-purple);border:1px solid transparent;border-radius:5px;text-decoration:none;font-weight:800;line-height:1.4;transition:background .15s,transform .15s}.hw-button:hover{background:#672a83;transform:translateY(-2px)}.hw-button--orange{background:var(--hw-orange);color:#30143d}.hw-button--orange:hover{background:#ffb055}.hw-section{max-width:1120px;padding:90px 40px;margin:auto}.hw-eyebrow{color:#874412;margin:0 0 16px;font-size:12px;font-weight:800;letter-spacing:.13em}.hw-lead{color:var(--hw-muted);font-size:17px;line-height:2}.hw-concept{text-align:center}.hw-three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:46px;text-align:left}.hw-three-columns article{border-top:2px solid #e6b878;padding-top:24px}.hw-three-columns p{margin:12px 0 0;color:var(--hw-muted);font-size:15px}.hw-number{color:#aa4811;font-size:13px;letter-spacing:.06em;font-weight:800;display:inline-block;margin-bottom:16px}.hw-band{background:#f8eddc}.hw-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;align-items:center}.hw-copy p{margin:0 0 20px}.hw-copy strong{font-weight:800}.hw-photo{margin:0}.hw-photo img{width:100%;border-radius:6px}.hw-photo figcaption{color:var(--hw-muted);font-size:12px;margin-top:12px}.hw-section-heading{margin-bottom:40px}.hw-section-heading>p:last-child{color:var(--hw-muted);margin:0}.hw-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.hw-scene-grid img{aspect-ratio:3 / 2;-o-object-fit:cover;object-fit:cover}.hw-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.hw-result-card{overflow:hidden;border:1px solid var(--hw-line);border-radius:6px;background:#fff}.hw-result-card img{width:100%;height:auto}.hw-result-card>div{padding:24px}.hw-result-card p{color:var(--hw-muted);font-size:14px;margin:12px 0 0}.hw-result-card .hw-result-category{color:#874412;font-size:12px;font-weight:700;margin:0 0 12px}.hw-photo-band{background:#321c40;color:#fff6e5}.hw-photo-band .hw-eyebrow{color:#ffc375}.hw-photo-band .hw-photo figcaption{color:#d2bfd8}.hw-flower-images{position:relative;padding:0 20px 72px 0}.hw-flower-detail{position:absolute;right:0;bottom:0;width:34%;aspect-ratio:1;border-radius:50%;border:7px solid #321c40}.hw-flower-message{color:#ffd390;font-weight:800;padding:20px 0;font-size:18px;border-block:1px solid #715a77}.hw-details{margin:0;border-top:1px solid var(--hw-line)}.hw-details>div{display:grid;grid-template-columns:140px 1fr;padding:22px 0;border-bottom:1px solid var(--hw-line);gap:20px}.hw-details dt{font-weight:800}.hw-details dd{margin:0}.hw-details dd span{color:var(--hw-muted);font-size:14px}.hw-text-link{display:inline-block;color:var(--hw-purple);margin-top:24px}.hw-timeline{padding:0;list-style:none;margin:32px 0 0}.hw-timeline li{display:flex;gap:24px;padding:16px 0;border-bottom:1px solid var(--hw-line)}.hw-timeline time{min-width:5em;flex-shrink:0;font-weight:800;color:#874412}.hw-timeline p{font-size:14px;margin:4px 0 0}.hw-participation-note{white-space:pre-line}.hw-note{color:var(--hw-muted);font-size:13px;margin-top:20px}.hw-centered{text-align:center;margin-top:40px}.halloween-page .hw-application{--challenge-navy: #4b1d62;--challenge-blue: #6a2b80;--challenge-sky: #fff1d9;--challenge-lavender: #f1e4f7;--challenge-violet: #7c378d;--challenge-yellow: #ffbe67;--challenge-coral: #ff821e;--challenge-ink: #321d3f;--challenge-muted: #715f76;--challenge-line: #e9d9d1;min-height:0;background:var(--hw-cream);color:var(--hw-ink)}.hw-application .challenge-apply{scroll-margin-top:24px}.hw-application .challenge-step{background:#fff;border-color:var(--hw-line)}.hw-application .challenge-step.is-active{background:#fffaf3;border-color:#b98dc9}.hw-application .challenge-step__continue{background:var(--hw-purple);color:#fff}.hw-faq{max-width:920px;padding-top:20px}.hw-faq details{border-bottom:1px solid var(--hw-line);padding:22px 0}.hw-faq summary{cursor:pointer;display:flex;justify-content:space-between;gap:24px;font-weight:700;list-style:none}.hw-faq summary::-webkit-details-marker{display:none}.hw-faq details p{margin:18px 0 0;color:var(--hw-muted);font-size:14px}.hw-faq details[open] summary span{transform:rotate(45deg)}.hw-notice{max-width:920px;padding-top:0}.hw-notice h2{font-size:21px}.hw-notice ul{padding-left:20px;color:var(--hw-muted);font-size:14px}.hw-notice li+li{margin-top:10px}.hw-contact{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:48px}.hw-contact p{color:var(--hw-muted);font-size:14px}.hw-contact .hw-contact-organizer{color:var(--hw-ink);font-weight:800;margin-top:20px}.hw-contact-links{display:flex;flex-direction:column;align-items:flex-start;overflow-wrap:anywhere}.hw-contact-links .hw-button{max-width:100%;gap:20px}.hw-contact-links .hw-text-link span{display:block;font-size:13px}.hw-floating{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;justify-content:center;align-items:center;gap:32px;background:#321c40f7;color:#fff;padding:12px 20px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #30143d22}.hw-floating>span{font-weight:800;font-size:20px}.hw-floating small{font-weight:400;font-size:12px;margin-left:10px}.hw-floating .hw-button{min-height:46px;padding-block:12px}@media(max-width:900px){.hw-hero-summary{padding:24px;flex-direction:column;align-items:stretch}.hw-hero-summary .hw-button{justify-content:center}.hw-split{gap:32px}}@media(max-width:699px){.halloween-page{font-size:15px}.hw-topbar{padding:14px 18px;font-size:11px}.hw-topbar a:first-child span{display:block;margin-left:0;font-size:8px}.hw-hero-summary{padding:24px 20px;gap:18px}.hw-hero-date{font-size:12px}.hw-hero-date span{display:block;margin-left:0;margin-top:4px}.hw-section{padding:60px 22px}.hw-section-heading{margin-bottom:28px}.hw-three-columns,.hw-split,.hw-results-grid,.hw-contact{grid-template-columns:minmax(0,1fr)}.hw-three-columns{gap:28px;margin-top:34px}.hw-three-columns article{padding-top:18px}.hw-number{margin-bottom:8px}.hw-contact{gap:24px}.hw-timeline li{gap:16px}.hw-lead{font-size:15px}.hw-desktop{display:none}.hw-scene-grid{gap:18px;grid-template-columns:minmax(0,1fr)}.hw-flower-images{padding:0 20px 48px 0}.hw-flower-message{font-size:16px}.hw-details>div{grid-template-columns:65px minmax(0,1fr);gap:14px;font-size:14px}.hw-faq,.hw-notice{padding-top:0}.hw-floating{gap:20px;padding-inline:16px;justify-content:space-between}.hw-floating>span{font-size:17px;white-space:nowrap}.hw-floating small{display:block;margin-left:0;font-size:10px}.hw-floating .hw-button{flex:1;max-width:260px;gap:16px;padding-inline:20px;font-size:14px}}@media(prefers-reduced-motion:reduce){.hw-button{transition:none}.hw-button:hover{transform:none}}
