/* Centered composition and consistent Noto typography. */
html body.premium-lp #timetable,
html body.premium-lp #timetable *{font-family:'Noto Sans JP',sans-serif!important}
html body.premium-lp #timetable h2,
html body.premium-lp #timetable h3,
html body.premium-lp #timetable h4,
html body.premium-lp #timetable .rs-opening em{font-family:'Noto Serif JP',serif!important;font-weight:500!important}
#timetable .rs-wrap{width:min(1000px,80%)}
#timetable .rs-heading{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center;margin-bottom:36px}
#timetable .rs-heading h2{font-size:36px;line-height:1.65;letter-spacing:.06em}
#timetable .rs-date{display:block;text-align:center;padding:0}
#timetable .rs-date strong{font-size:46px;font-weight:500;letter-spacing:.02em;margin:8px 0}
#timetable .rs-date small{font-size:11px;font-weight:400}
#timetable .rs-date p{font-size:12px}
#timetable .rs-dayline{justify-content:center;gap:26px;text-align:center;padding:24px 16px}
#timetable .rs-dayline div{display:block;flex:1}
#timetable .rs-dayline b{display:block;font-size:19px;font-weight:500;letter-spacing:.02em}
#timetable .rs-dayline span{display:block;margin-top:9px;font-size:11px}
#timetable .rs-tools{flex-direction:column;justify-content:center;text-align:center;gap:18px;margin:32px 0}
#timetable .rs-common{display:flex;flex-direction:column;gap:18px;text-align:center;padding:28px}
#timetable .rs-common-mark,#timetable .rs-award{display:none}
#timetable .rs-time{display:flex;align-items:baseline;justify-content:center;gap:12px;text-align:center;font-variant-numeric:tabular-nums}
#timetable .rs-time strong{font-size:27px;font-weight:500;letter-spacing:.02em}
#timetable .rs-time span{font-size:13px;font-weight:400;margin:0}
#timetable .rs-common h3{font-size:19px;line-height:1.7;margin:10px 0}
#timetable .rs-opening{padding:32px}
#timetable .rs-opening h3{font-size:20px;line-height:1.85}
#timetable .rs-opening em{font-size:24px}
#timetable .rs-stage-labels,#timetable[data-filter=A] .rs-stage-labels,#timetable[data-filter=B] .rs-stage-labels{grid-template-columns:repeat(2,minmax(0,1fr));text-align:center;margin:40px 0 0}
#timetable .rs-stage-labels>span:first-child{display:none}
#timetable[data-filter=A] .rs-stage-labels,#timetable[data-filter=B] .rs-stage-labels{grid-template-columns:1fr}
#timetable .rs-slot{display:block}
#timetable .rs-slot>.rs-time{padding:28px 0 22px;display:flex;align-items:center}
#timetable .rs-slot>.rs-time::before,#timetable .rs-slot>.rs-time::after{content:'';height:1px;width:56px;background:var(--rs-line);margin:0 8px}
#timetable .rs-slot>.rs-time i{display:none}
#timetable .rs-session{text-align:center;padding:24px 22px}
#timetable .rs-session-head{justify-content:center;gap:18px}
#timetable .rs-session h3{font-size:20px;line-height:1.75;min-height:70px}
#timetable .rs-person{text-align:center}
#timetable .rs-person strong{font-size:13px;font-weight:500}
#timetable .rs-role{font-size:10px;line-height:1.75}
#timetable .rs-pending{text-align:center}
#timetable .rs-break{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;padding:24px 0 0}
#timetable .rs-break>span{font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}
#timetable .rs-break p{font-size:10px;line-height:1.8}
#timetable .rs-break small{display:block;margin:5px 0 0;font-size:10px}
#timetable .rs-end{justify-content:center;gap:22px}
#timetable .rs-end strong{font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}
#timetable .rs-disclaimer{text-align:center}
#timetable .rs-extra-head{text-align:center}
#timetable .rs-talk>div{text-align:center;display:flex;flex-direction:column;justify-content:center}
#timetable .rs-talk-time{font-size:13px;font-weight:500}
#timetable .rs-talk-time span{display:table;margin:8px auto 0}
#timetable .rs-talk h4{font-size:16px;line-height:1.8}
@media(max-width:1000px){#timetable .rs-wrap{width:86%}#timetable .rs-session{padding:22px 16px}#timetable .rs-role{font-size:10px}}
@media(max-width:640px){
 #timetable .rs-wrap{width:calc(100% - 48px)}
 #timetable .rs-heading{gap:20px;margin-bottom:28px}
 #timetable .rs-heading h2{font-size:27px;line-height:1.8}
 #timetable .rs-date{margin-top:0}
 #timetable .rs-date>span{display:block;font-size:9px}
 #timetable .rs-date strong{font-size:36px;margin:7px 0}
 #timetable .rs-date p{font-size:10px}
 #timetable .rs-dayline{gap:7px;padding:20px 0}
 #timetable .rs-dayline b{font-size:13px;white-space:nowrap}
 #timetable .rs-dayline span{font-size:8px;line-height:1.7;margin-top:7px}
 #timetable .rs-tools{display:flex;gap:14px;margin:26px 0}
 #timetable .rs-tools>p{margin:0;font-size:11px}
 #timetable .rs-common{padding:24px 15px;gap:12px}
 #timetable .rs-common h3{font-size:16px!important}
 #timetable .rs-opening h3{font-size:15px!important}
 #timetable .rs-opening em{font-size:18px}
 #timetable .rs-timeline{margin-top:10px}
 #timetable .rs-slot>.rs-time{padding:24px 0 18px;gap:8px}
 #timetable .rs-slot>.rs-time strong{font-size:26px}
 #timetable .rs-slot>.rs-time::before,#timetable .rs-slot>.rs-time::after{width:30px;margin:0 5px}
 #timetable .rs-session{padding:24px 16px}
 #timetable .rs-session h3{font-size:19px!important;min-height:0}
 #timetable .rs-person strong{font-size:12px}
 #timetable .rs-role{font-size:10px}
 #timetable .rs-break{display:flex;padding:22px 0 0}
 #timetable .rs-break small{margin:5px 0 0;font-size:9px}
 #timetable .rs-end{gap:16px}
 #timetable .rs-end strong{font-size:23px}
 #timetable .rs-end span{font-size:11px}
 #timetable .rs-talk{grid-template-columns:86px 1fr}
 #timetable .rs-talk>div{padding:16px 12px}
 #timetable .rs-talk h4{font-size:15px!important}
 #timetable .rs-talk-time{font-size:12px}
 #timetable .rs-talk-time span{display:table;margin:7px auto 0}
}
