:root{color:#273169;background:#faf9fc;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit}a:focus-visible{outline:3px solid #eb007f;outline-offset:5px}header,footer{max-width:1100px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:24px}header>a:first-child{font-weight:900;letter-spacing:.06em;text-decoration:none}main{max-width:1100px;margin:20px auto 60px;padding:0 24px}h1{font-size:clamp(2rem,6vw,3.6rem);line-height:1.08;letter-spacing:-.025em}.performance{max-width:800px}.when{font-size:1.2rem;font-weight:bold}.venue{line-height:1.65}.poster{display:block;width:100%;max-height:800px;object-fit:contain;margin:28px 0;background:#fff}.description{white-space:pre-line;line-height:1.7;margin:28px 0}.action{display:inline-block;background:#eb007f;color:white;padding:14px 24px;text-decoration:none;font-weight:bold;border-radius:8px}.notice{padding:16px;background:#fff0f6;border:1px solid #f8beda;border-radius:8px;line-height:1.5}.event-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.event-list article{border:1px solid #27316922;background:white;padding:18px}.event-list img{width:100%;aspect-ratio:764/400;object-fit:cover}.event-list h2{font-size:1.25rem}.event-list article>a{text-decoration:none}.event-list article>a:hover h2{text-decoration:underline}@media(max-width:800px){.event-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.event-list{grid-template-columns:1fr}header{flex-wrap:wrap}}

.session-dates{padding-left:24px;line-height:1.7}.session-dates li{padding:8px 0}
