:root{--yellow:#ff0;--ink:#000;--paper:#ff0;--line:#000}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-feature-settings:"palt" 1}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #006dff;outline-offset:3px}header{min-height:70px;padding:16px 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid}.brand{font-weight:900;font-size:25px;display:flex;align-items:center;gap:12px}.brand span{font-size:14px}.official{font-size:12px;font-weight:700}.page-heading{padding:32px 4% 16px;max-width:1680px;margin:auto}.page-heading h1{font-size:32px;letter-spacing:.04em;line-height:1.4;margin:0 0 10px;font-weight:900}.page-heading p{font-size:13px;margin:0}.programs{padding:0 4% 40px;max-width:1680px;margin:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;background:var(--yellow);border-bottom:2px solid;position:sticky;top:0;z-index:5}.filters{display:flex;gap:8px}.filters button{border:1px solid #000;background:transparent;padding:10px 18px;font-size:12px;font-weight:700;border-radius:0}.filters button span{margin-left:9px;font-size:10px}.filters button.active{background:#000;color:var(--yellow)}.search{display:flex;align-items:center;gap:8px;border:1px solid #000;padding:0 12px;width:330px;background:#fff}.search span{font-size:26px}.search input{background:transparent;width:100%;border:0;font-size:12px;padding:11px 0;min-width:0}.result{font-size:11px;margin:12px 0 18px}.group-title{display:flex;gap:14px;align-items:center;font-size:22px;margin:24px 0 14px}.group-title small{font-size:12px;font-weight:500}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.card{display:grid;grid-template-columns:45% minmax(0,1fr);gap:16px;border-top:1px solid #000;padding:18px 0;align-items:start;min-width:0}.visual{display:block;width:100%;background:transparent}.visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.visual:hover{opacity:.8}.card-body{min-width:0}.meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;gap:6px}.price{padding:3px 6px;border:1px solid #000;font-weight:700;white-space:nowrap}.card h4{font-size:17px;line-height:1.5;margin:9px 0;overflow-wrap:anywhere;letter-spacing:.01em}.speakers{font-size:11px;line-height:1.8;margin:0 0 10px;overflow-wrap:anywhere}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cta{background:#000;color:var(--yellow);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 12px;font-size:11px;font-weight:700}.overview{font-size:11px;padding:8px 0;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.cta:hover{background:#333}.free-grid{margin-bottom:24px}details{margin:0 0 8px;font-size:11px}summary{cursor:pointer;font-weight:700;padding:5px 0}details p{font-size:11px;line-height:1.8;margin:8px 0;padding-top:8px;border-top:1px dotted #000}#empty{text-align:center;padding:40px 10px}#reset{padding:10px 18px;border:1px solid;background:#fff}.note{margin:0 4% 30px;border-top:1px solid;padding-top:18px;display:flex;gap:30px;font-size:11px}.note strong{white-space:nowrap}.note p{margin:0;line-height:1.8;max-width:950px}footer{padding:24px 4%;display:flex;gap:20px;align-items:center;border-top:2px solid}footer .brand{font-size:20px}footer>a:last-child{margin-left:auto;font-size:11px}[hidden]{display:none!important}@media(min-width:1500px){.card{gap:20px}.card h4{font-size:19px}.speakers{font-size:12px}}@media(max-width:1000px){.grid{grid-template-columns:1fr}.card{grid-template-columns:36% minmax(0,1fr)}.card h4{font-size:20px}.speakers{font-size:12px}}@media(max-width:600px){header{min-height:58px}.brand{font-size:20px;gap:7px}.brand span{font-size:12px}.official{font-size:10px}.page-heading{padding-top:24px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.toolbar{flex-direction:column;align-items:stretch;gap:10px;padding:12px 0}.filters button{padding:8px 15px}.search{width:100%}.card{grid-template-columns:1fr;gap:10px;padding:18px 0}.visual img{height:auto;aspect-ratio:16/9}.card h4{font-size:18px;margin:7px 0}.meta{font-size:10px}.speakers{font-size:12px}.actions{gap:16px}.cta{font-size:12px;padding:10px 16px}.group-title{font-size:20px}.note{display:block}.note p{margin-top:8px}footer .brand{font-size:17px}html{scroll-padding-top:140px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Official logo and typography alignment. The licensed official face is used when available locally. */
body{font-family:"Midashi Go MB31 JIS2004","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",sans-serif;font-weight:600;letter-spacing:.05em;-webkit-font-smoothing:antialiased}
.brand{display:block;width:359px;max-width:65%;line-height:0}.brand img{display:block;width:100%;height:auto}
.page-heading h1,.group-title,.card h4{font-weight:900;letter-spacing:.05em}.card h4{line-height:1.55}.speakers{font-weight:600;letter-spacing:.025em}.meta,.result,.note{font-weight:500}.filters button,.cta,summary{font-weight:800}footer .brand{width:260px}
@media(max-width:600px){header{min-height:64px}.brand{width:255px;max-width:70%}.official{letter-spacing:0}footer .brand{width:210px;max-width:62%}.card h4{letter-spacing:.03em}}

.date-group{margin:22px 0 34px}.date-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#000;color:#ff0;padding:11px 14px;font-size:18px;letter-spacing:.06em;line-height:1.4;margin:0 0 3px;font-weight:800}.date-heading span{font-size:11px;font-weight:500;white-space:nowrap}.date-group .card{border-top:0;border-bottom:1px solid #000}@media(max-width:600px){.date-heading{font-size:17px;padding:10px 12px}.date-group{margin-top:18px;margin-bottom:28px}}
