.tournament-intro{border-bottom:2px solid var(--ink)}.intro-stats{display:grid;grid-template-columns:1fr 1.5fr;gap:22px;align-items:center}.intro-stats strong{display:block;font-size:clamp(36px,5vw,65px);line-height:1.2;font-family:Impact,sans-serif}.intro-stats small{font-size:25px}.intro-stats span{font-size:13px;display:block;margin-top:15px}.competition-hero{background:var(--yellow);border-bottom:2px solid}.competition-hero h1{font-size:clamp(32px,4vw,58px);line-height:1.4;margin:20px 0}.competition-hero figure{align-self:center}figure{margin:0}figcaption{font-size:13px;margin-top:14px;line-height:1.7}.competition-hero img{border:2px solid;box-shadow:8px 8px 0 var(--ink)}.competition-menu{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding:24px 6%;border-bottom:1px solid}.rule-list{padding:0;list-style:none;counter-reset:rules;display:grid;grid-template-columns:1fr 1fr;gap:24px}.rule-list li{counter-increment:rules;border:2px solid;padding:25px;background:var(--paper)}.rule-list li:before{content:counter(rules,decimal-leading-zero);display:block;color:var(--red);font-size:30px;font-weight:900}.rule-list b,.rule-list span{display:block}.rule-list span{margin-top:10px}.division-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.division-grid article{border:2px solid;padding:25px}.division-grid span{font-size:30px;color:var(--red);font-weight:900}.division-grid p,.notice p{margin-bottom:0}.record-section{background:var(--ink);color:var(--paper)}.record-section .eyebrow{color:var(--yellow)}.record-highlight{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;border-top:1px solid #777;border-bottom:1px solid #777;padding:40px 0;margin:35px 0}.record-highlight strong{font-family:Impact,sans-serif;font-size:clamp(75px,11vw,140px);color:var(--yellow);line-height:1}.record-highlight strong span{font-size:40px;margin-left:12px}.record-section .fine{color:#ccc}.photo img{width:100%;height:320px;object-fit:cover;border:2px solid}header nav{gap:20px}@media(max-width:620px){.intro-stats{margin-top:20px}.rule-list,.division-grid,.record-highlight{grid-template-columns:1fr}.competition-menu{gap:15px;justify-content:flex-start;max-width:none;margin:0;font-size:14px}.competition-hero figure{margin-top:20px}.record-highlight{gap:30px}.photo img{height:250px}.division-grid article{padding:20px}.competition-hero .festival-grid{gap:10px}}
.competition-hero img{width:100%;height:auto}.hero-copy .fine a{font-size:15px;font-weight:700;text-decoration:underline}

.festival-name{font-size:25px;font-weight:900;margin:10px 0}.hero .announcement-title{font-size:clamp(32px,3.8vw,58px);letter-spacing:-1.5px;line-height:1.5;margin:18px 0 28px}.hero-copy .button{max-width:95%;font-size:15px}.hero-copy .fine{max-width:95%}#requirements .event-info div{grid-template-columns:170px 1fr}#jazz{scroll-margin-top:30px}@media(max-width:620px){.hero .announcement-title{font-size:clamp(25px,6.8vw,39px);letter-spacing:-1px}.hero-date{position:static;display:flex;text-align:left;margin:25px 0}.hero-date span{margin:0}.hero-copy{padding-bottom:25px}#requirements .event-info div{grid-template-columns:115px 1fr}}

/* 会場案内と全ページ共通のトップリンク */
html{scroll-behavior:smooth}body{padding-bottom:76px}.home-return{position:fixed;right:20px;bottom:20px;z-index:1000;display:inline-flex;align-items:center;padding:13px 20px;border:2px solid #181818;border-radius:999px;background:#ffdc00;color:#181818;font-weight:800;text-decoration:none;box-shadow:3px 3px 0 #181818}.home-return:focus-visible{outline:3px solid #181818;outline-offset:4px}.venue-google-map{display:block;width:100%;height:460px;margin:24px 0 14px;border-radius:12px}.venue-range{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:24px;margin:24px 0;border:2px solid #181818;background:#fff}.venue-range strong{flex:1;text-align:center;border-top:8px solid #ffdc00;padding-top:10px}.venue-range span{font-weight:800}.venue-range small{font-weight:400}@media(max-width:700px){.venue-range{flex-direction:column;text-align:center}.venue-range strong{width:100%;flex:auto}.venue-google-map{height:360px}.home-return{right:12px;bottom:12px;padding:11px 16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.chairman-grid{display:grid;grid-template-columns:minmax(230px,360px) 1fr;gap:56px;align-items:start;margin-top:32px}.chairman-grid figure{margin:0}.chairman-grid img{display:block;width:100%;height:auto;border:2px solid #181818;border-radius:8px}.chairman-grid figcaption{margin-top:12px;font-weight:700}.chairman-grid p{margin:0 0 22px;line-height:2}.chairman-signature{text-align:right;font-weight:800}@media(max-width:700px){.chairman-grid{grid-template-columns:1fr;gap:28px}.chairman-grid figure{max-width:300px;margin:0 auto}}
