*{font-family:"Zen Kaku Gothic New",sans-serif;font-size:16px;line-height:1.5}p{font-size:.875rem}@media screen and (min-width: 1024px){p{font-size:16px}}h1,h2,h3,h4,h5,h6{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700}@keyframes gold-pulse{0%{box-shadow:0 0 0 0 rgba(195,144,0,.4)}70%{box-shadow:0 0 0 12px rgba(195,144,0,0)}100%{box-shadow:0 0 0 0 rgba(195,144,0,0)}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top;opacity:0}30%{transform:scaleY(1);transform-origin:top;opacity:.6}60%{transform:scaleY(1);transform-origin:bottom;opacity:.6}100%{transform:scaleY(0);transform-origin:bottom;opacity:0}}.history{display:flex;flex-direction:column;gap:60px;margin-bottom:60px}@media screen and (min-width: 1024px){.history{gap:80px}}.message{width:80%;max-width:1024px;margin:0 auto}.message__text{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:300;font-size:.875rem}@media(min-width: 1024px){.message__text{font-size:1rem}}.message__text{color:#444;line-height:1.8;text-align:center}.tabList{display:grid;grid-template-columns:repeat(2, 1fr);gap:12px;position:relative;width:80%;max-width:1024px;margin:0 auto}@media screen and (min-width: 768px){.tabList{display:flex;gap:0;border-bottom:2px solid #ccc}}.tab{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:500;font-size:.8125rem}@media(min-width: 1024px){.tab{font-size:.875rem}}.tab{position:relative;min-height:48px;padding:10px 16px;border:1px solid #ccc;border-radius:8px;background:#fff;color:#ccc;cursor:pointer;text-align:center;transition:all .4s ease}@media screen and (min-width: 768px){.tab{flex:1;border:none;border-radius:0}}.tab:hover{color:#c39000;border-color:#c39000}.tab[aria-selected=true]{background-color:#c39000;color:#fff;border-color:#c39000}@media screen and (min-width: 768px){.tab[aria-selected=true]{background:none;color:#c39000;font-weight:700}.tab[aria-selected=true]::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background-color:#c39000}}.listSection{width:80%;max-width:1024px;margin:0 auto;min-height:200px}.list{display:flex;flex-direction:column;gap:24px}@media screen and (min-width: 1024px){.list{gap:32px}}.list__item{opacity:0;transform:translateY(12px);animation:itemFadeIn .4s ease forwards;animation-delay:calc(var(--stagger-index)*.05s)}@keyframes itemFadeIn{to{opacity:1;transform:translateY(0)}}.skeleton{display:flex;flex-direction:column;gap:16px;padding:20px 0}.skeleton__item{display:flex;gap:16px;align-items:center}@media screen and (min-width: 768px){.skeleton__item{gap:24px}}.skeleton__year,.skeleton__title,.skeleton__meta{background:linear-gradient(90deg, rgba(204, 204, 204, 0.3) 25%, rgba(204, 204, 204, 0.5) 50%, rgba(204, 204, 204, 0.3) 75%);background-size:200% 100%;animation:skeletonPulse 1.5s ease-in-out infinite;border-radius:8px}.skeleton__year{width:80px;height:24px;flex-shrink:0}.skeleton__content{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton__title{width:60%;height:20px}.skeleton__meta{width:120px;height:16px}@keyframes skeletonPulse{0%{background-position:200% 0}100%{background-position:-200% 0}}.listError{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;text-align:center}.listError__message{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.875rem}@media(min-width: 1024px){.listError__message{font-size:1rem}}.listError__message{color:#444}.listError .button{width:auto;padding:10px 40px}.listEmpty{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;text-align:center}.listEmpty__message{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.875rem}@media(min-width: 1024px){.listEmpty__message{font-size:1rem}}.listEmpty__message{color:#ccc}.ensembleCard,.competitionCard,.concertCard{padding:20px;border-left:4px solid #c39000;border-radius:20px;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.15);transition:all .4s ease}.ensembleCard:hover,.competitionCard:hover,.concertCard:hover{background-color:rgba(195,144,0,.04)}@media screen and (min-width: 1024px){.concertCard{padding:30px}}.concertCard__header{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e8e8e8}@media screen and (min-width: 1024px){.concertCard__header{margin-bottom:20px;padding-bottom:20px}}.concertCard__title{font-family:"Zen Old Mincho",serif;font-weight:400;font-size:1.125rem}@media(min-width: 1024px){.concertCard__title{font-size:1.5rem}}.concertCard__title{line-height:1.4;color:#444;margin-bottom:8px}.concertCard__meta{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.8125rem}@media(min-width: 1024px){.concertCard__meta{font-size:.9375rem}}.concertCard__meta{color:#666}.concertCard__programList{display:flex;flex-direction:column;gap:16px;list-style:none;padding:0;margin:0}.concertCard__programItem{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.875rem}@media(min-width: 1024px){.concertCard__programItem{font-size:1rem}}.concertCard__programItem{color:#444;position:relative;padding-left:16px;display:flex;flex-direction:column}.concertCard__programItem::before{content:"";position:absolute;left:0;top:.6em;width:4px;height:4px;border-radius:50%;background-color:#c39000}.concertCard__musicName{line-height:1.6}.concertCard__remark{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:300;font-size:.6875rem}@media(min-width: 1024px){.concertCard__remark{font-size:.8125rem}}.concertCard__remark{color:#707070;font-style:italic;margin-top:2px}@media screen and (min-width: 1024px){.competitionCard{padding:24px 30px}}.competitionCard__inner{display:flex;flex-direction:column;gap:16px}@media screen and (min-width: 1024px){.competitionCard__inner{flex-direction:row;align-items:flex-start;gap:24px}}.competitionCard__year{font-family:"M Plus 1p",sans-serif;font-weight:300;font-size:1.125rem}@media(min-width: 1024px){.competitionCard__year{font-size:1.25rem}}.competitionCard__year{color:#444;flex-shrink:0;min-width:100px}.competitionCard__music{display:flex;flex-direction:column;gap:8px;flex:1}.competitionCard__musicRow{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.competitionCard__musicTitle{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.875rem}@media(min-width: 1024px){.competitionCard__musicTitle{font-size:1rem}}.competitionCard__musicTitle{color:#444;line-height:1.6}.musicLabel{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:500;font-size:.6875rem}@media(min-width: 1024px){.musicLabel{font-size:.75rem}}.musicLabel{display:inline-block;padding:2px 8px;border-radius:3px;color:#fff;flex-shrink:0}.musicLabel--compulsory{background-color:#5a7a9b}.musicLabel--free{background-color:#7a6b5a}@media screen and (min-width: 1024px){.ensembleCard{padding:24px 30px}}.ensembleCard__year{font-family:"M Plus 1p",sans-serif;font-weight:300;font-size:1.125rem}@media(min-width: 1024px){.ensembleCard__year{font-size:1.25rem}}.ensembleCard__year{color:#444;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e8e8e8}.ensembleCard__list{display:flex;flex-direction:column;gap:12px}.ensembleItem{display:flex;flex-direction:column;gap:8px;padding:12px 0}.ensembleItem:not(:last-child){border-bottom:1px dashed #e8e8e8;padding-bottom:12px}@media screen and (min-width: 1024px){.ensembleItem{flex-direction:row;align-items:center;gap:20px}}.ensembleItem__ensemble{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.75rem}@media(min-width: 1024px){.ensembleItem__ensemble{font-size:.875rem}}.ensembleItem__ensemble{display:inline-block;padding:2px 10px;border:1px solid #c39000;border-radius:3px;color:#c39000;flex-shrink:0;min-width:120px;text-align:center}@media screen and (min-width: 1024px){.ensembleItem__ensemble{min-width:160px}}.ensembleItem__title{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;font-size:.875rem}@media(min-width: 1024px){.ensembleItem__title{font-size:1rem}}.ensembleItem__title{color:#444;flex:1;line-height:1.6}.awards{display:flex;align-items:center;gap:4px;flex-shrink:0}@media screen and (min-width: 1024px){.awards{gap:6px}}.awards__arrow{color:#ccc;font-size:.625rem;margin-top:14px}@media screen and (min-width: 1024px){.awards__arrow{margin-top:16px}}.award{display:flex;flex-direction:column;align-items:center;gap:2px}.award__stage{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:300;font-size:.625rem}@media(min-width: 1024px){.award__stage{font-size:.6875rem}}.award__stage{color:#666;white-space:nowrap}.award__badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:4px;border:1px solid;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:500;font-size:.75rem}@media(min-width: 1024px){.award__badge{font-size:.875rem}}.award__badge{white-space:nowrap}.award__badge::before{content:"";display:inline-block;width:10px;height:10px;flex-shrink:0;border-radius:50%}.award__badge--gold{color:#c39000;background-color:#fdf6e3;border-color:#c39000}.award__badge--gold::before{background-color:#c39000}.award__badge--silver{color:#6b6b6b;background-color:#f0f0f0;border-color:#6b6b6b}.award__badge--silver::before{background-color:#6b6b6b}.award__badge--bronze{color:#a0652f;background-color:#f8f0e8;border-color:#a0652f}.award__badge--bronze::before{background-color:#a0652f}.award__badge--none{color:#ccc;background-color:rgba(0,0,0,0);border-color:#ccc}.award__badge--none::before{background-color:rgba(0,0,0,0);border:1px solid #ccc}@media(prefers-reduced-motion: reduce){.list__item{animation:none;opacity:1;transform:none}.skeleton__year,.skeleton__title,.skeleton__meta{animation:none;background:hsla(0,0%,80%,.3)}}
