@charset "utf-8";
.timetable #main {
      max-width: 2600px;
      padding-left: 20px;
    }
@media screen and (max-width: 2620px) {
  .timetable #main {
}

}

/* コンファレンスをもっと見る（CTA）のラッパー
   このページの #main は横スクロールするタイムテーブル用に max-width:2600px の特殊レイアウト
   （.under-content は使っていない）。category.html / session-list.html と同じ見た目幅にするため、
   .under-content と同じ box model（max-width:1440px + 左右40px）だけをここで個別に再現する。
   .under-content 自体を流用しない理由: .theme-cta__heading（h3）に
   `.under-content h3:not(.exl-root *)`（32px/800/padding-top:1.15em）が特異度で勝って
   見出しが壊れてしまうため */
.timetable-pickup-wrap {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
}

/* .theme-cta__inner（conference.css）は素の状態で左右40pxパディングを持っており、
   .under-content 配下では .under-content 側の余白と二重にならないよう
   add.css の .under-content .theme-cta--conference .theme-cta__inner で
   ゼロに打ち消している。.timetable-pickup-wrap も同じ役割（左右40px）を
   持たせているため、ここでも同様にゼロへ打ち消す（打ち消し忘れがボタン行だけ
   バナーより内側に狭まって見えるズレの原因だった） */
.timetable-pickup-wrap .theme-cta__inner {
  padding-left: 0;
  padding-right: 0;
}

@media screen and (max-width: 767px) {
  .timetable-pickup-wrap {
    padding: 0 20px;
  }
}

/* タイムテーブル */
.nav_tab_menu_day {
}

/* タブ切り替えデザイン: conference/index.html の Pickup Sessions タブ（.conf-tabs/.conf-tab）を踏襲。
   ON（アクティブ）カラーのみ var(--conference) を指定。地の背景が白のため、
   OFF（非アクティブ）は index.html の #fff ではなく、同系統の --basegray を使用する。 */
.tab_menu_day {
  display: flex;
  gap: 8px;
}

.tab_menu_day .item {
  flex: 1;
}

.tab_menu_day a {
  position: relative;
  display: block;
  width: 100%;
  padding: 14px 12px 10px;
  border: none;
  border-bottom: 1px solid var(--basegray);
  background: transparent;
  color: var(--basegray);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  transition: color 0.2s, border-color 0.2s, opacity 0.2s;
}

.tab_menu_day a:hover {
  opacity: 0.85;
}

.tab_menu_day a span {
  font-size: 21px;
  font-weight: 500;
}

.tab_menu_day .active a {
  color: var(--conference);
  border-bottom: 3px solid var(--conference);
}

/* 現在地タブ: 下線の中央にぶら下がる▼（news.css の .news-filter__tab--active と同じ手法） */
.tab_menu_day .active a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid var(--conference);
}

@media screen and (max-width: 580px) {
  .tab_menu_day {
    gap: 4px;
  }

  .tab_menu_day a {
    padding: 8px 2px 6px;
    font-size: 14px;
    white-space: nowrap;
  }

  .tab_menu_day a span {
    font-size: 12px;
  }

  .tab_menu_day .active a {
    font-size: 14px;
  }
}

.js-next,
.js-prev {
  position: absolute;
  top: 0px;
  background-color: rgba(255, 255, 255, 0.7);
  color: var(--conference);
  height: 50px;
  width: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  z-index: 2;
}

.js-prev {
  left: 80px;
}

.js-next {
  right: 0;
}

/* body class */
.wp_tab_contents {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 15px;
  background-color: #fff;
}

.timetableCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0px;
  padding-bottom: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  min-height: 1445px;
}

.timetableCont .tableinner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.timetableCont .titleul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-right: 1px solid #dddddd;
  height: 50px;
}

.timetableCont .titleul li {
  width: 280px;
  height: 50px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  font-size: 14px;
  line-height: 1.2;
  padding: 0;
}

.timetableCont .titleul li span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-weight: 700;
  background-color: var(--conference);
  /*コンベンション*/
  text-align: center;
}

.tab_contents_day .timelist,
.timetableCont .timetableul {
  width: 80px;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
}

.tab_contents_day .timelist {
  position: absolute;
  left: 0;
  top: 50px;
}

.timetableCont .timetableul {
  width: 280px;
  border-left: 1px solid #e7ebef;
}

.tab_contents_day .timelist li,
.tableinner .timetableul li {
  width: 100%;
  height: 45px;
  text-align: center;
  padding-top: 3px;
  font-weight: 700;
}

.tab_contents_day .timelist li:nth-child(odd),
.tableinner .timetableul li:nth-child(odd) {
  background-color: #f4f6f8;
}

.tab_contents_day .timelist li:nth-child(4n + 1),
.tableinner .timetableul li:nth-child(4n + 1) {
  border-top: 3px solid #e7ebef;
}

.tableinner .timetableul li:first-child {
  border-top: none;
}

/* ====================
time block -
=========================== */
.tableinner .sessioncont {
  position: relative;
}

.tableinner .sessioncont .sessionblock {
  position: absolute;
  top: 5px;
  width: 280px;
}

.timetable .session_reservation {
  position: absolute;
  top: 12px;
  left: 20px;
  z-index: 5;
  padding-bottom: 3px;
}

.timetable .session_reservation span {
  font-size: 11px;
  line-height: 20px;
}

.timetable .session_reservation .session_reservation_checkbox_dummy {
  margin-right: 7px;
}

.timetable .checkbox_input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.tableinner .sessioncont .sessionblock a {
  display: block;
  height: 100%;
  width: calc(100% - 16px);
  margin-left: 8px;
  padding: 10px 10px 10px;
  background-color: #fff;
  text-decoration: none;
  border-radius: 5px;
  border: 1px solid var(--session-color, #a8afba);
  -webkit-box-shadow: 0px 2px 3px 0px #ddd;
  box-shadow: 0px 2px 3px 0px #ddd;
  overflow: hidden;
}

/* 講演時間ヘッダー（カードの色は会場ごとの既存配色 --session-color を踏襲。
   未設定の場合のみ #0b1552 にフォールバック） */
.sessionblock_header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 8px;
  margin: -10px -10px 8px;
  padding: 4px 10px;
  background-color: var(--session-color, #0b1552);
}

/* セッションIDのピル。ヘッダー帯（--session-color = 会場色）の上に載るので、
   会場ごとに色を変えず全会場でこの白25%のまま使う（会場色にすると帯に同化して消える） */
.sessionblock_id {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  font-size: 11px;
  text-align: center;
  font-weight: 700;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.25);
  border-radius: 50px;
  padding: 2px 10px;
  white-space: nowrap;
}

.sessionblock_cat {
  font-size: 10px;
  width: 100%;
  margin-bottom: 10px;
}

/* タグだと分かるよう背景と角丸をつける（複数タグは折り返し前提でmarginで隙間を作る） */
.session_tag {
  display: inline-block;
  margin: 0 4px 4px 0;
  padding: 2px 8px;
  background: #eef1f5;
  color: #555;
  border-radius: 4px;
}

/* テーマタグ（CONST_GENRES_LANG 先頭5件）はカテゴリ・会場のタグと区別する */
.session_tag.tag-theme {
  background: var(--conference);
  color: #fff;
}

.sessionblock_time {
  font-weight: 700;
  font-size: 13px;
  color: #fff;
}

#main .tableinner .sessioncont .sessionblock a h6 {
  font-size: 14px;
  line-height: 1.2;
  color: #000;
}

.js-session-title {
  font-weight: 700;
  margin: 0.5em;
}

#main #day17 .tableinner .sessioncont:nth-of-type(6) .sessionblock a .sessionblock_time,
#main #day18 .tableinner .sessioncont:nth-of-type(7) .sessionblock a .sessionblock_time,
#main #day19 .tableinner .sessioncont:nth-of-type(7) .sessionblock a .sessionblock_time,
#main #day20 .tableinner .sessioncont:nth-of-type(7) .sessionblock a .sessionblock_time {
  line-height: 1.1;
}

.tableinner .sessioncont .sessionblock .alert {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.alert p {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  width: calc(100% - 16px);
  margin-left: 8px;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.45);
}

/* ====================
time block - sessiontime
5分刻み
=========================== */
.tableinner .sessioncont .count5 {
  /* 5分 */
  height: 15px;
}

.tableinner .sessioncont .count10 {
  /* 10分 */
  height: 30px;
}

.tableinner .sessioncont .count15 {
  /* 15分 */
  height: 45px;
}

.tableinner .sessioncont .count20 {
  /* 20分 */
  height: 60px;
}

.tableinner .sessioncont .count25 {
  /* 25分 */
  height: 75px;
}

.tableinner .sessioncont .count30 {
  /* 30分 */
  height: 90px;
}

.tableinner .sessioncont .count35 {
  /* 35分 */
  height: 105px;
}

.tableinner .sessioncont .count40 {
  /* 40分 */
  height: 120px;
}

.tableinner .sessioncont .count45 {
  /* 45分 */
  height: 135px;
}

.tableinner .sessioncont .count50 {
  /* 50分 */
  height: 150px;
}

.tableinner .sessioncont .count55 {
  /* 55分 */
  height: 165px;
}

.tableinner .sessioncont .count60 {
  /* 60分 */
  height: 180px;
}

.tableinner .sessioncont .count65 {
  /* 65分 */
  height: 195px;
}

.tableinner .sessioncont .count70 {
  /* 70分 */
  height: 210px;
}

.tableinner .sessioncont .count75 {
  /* 75分 */
  height: 225px;
}

.tableinner .sessioncont .count80 {
  /* 80分 */
  height: 240px;
}

.tableinner .sessioncont .count85 {
  /* 85分 */
  height: 255px;
}

.tableinner .sessioncont .count90 {
  /* 90分 */
  height: 270px;
}

.tableinner .sessioncont .count95 {
  /* 95分 */
  height: 285px;
}

.tableinner .sessioncont .count100 {
  /* 100分 */
  height: 300px;
}

.tableinner .sessioncont .count105 {
  /* 105分 */
  height: 315px;
}

.tableinner .sessioncont .count110 {
  /* 110分 */
  height: 330px;
}

.tableinner .sessioncont .count115 {
  /* 115分 */
  height: 345px;
}

.tableinner .sessioncont .count120 {
  /* 120分 */
  height: 360px;
}

.tableinner .sessioncont .count125 {
  /* 125分 */
  height: 375px;
}

.tableinner .sessioncont .count130 {
  /* 130分 */
  height: 390px;
}

.tableinner .sessioncont .count135 {
  /* 135分 */
  height: 405px;
}

.tableinner .sessioncont .count140 {
  /* 140分 */
  height: 420px;
}

.tableinner .sessioncont .count145 {
  /* 145分 */
  height: 435px;
}

.tableinner .sessioncont .count150 {
  /* 150分 */
  height: 450px;
}

.tableinner .sessioncont .count155 {
  /* 155分 */
  height: 465px;
}

.tableinner .sessioncont .count160 {
  /* 160分 */
  height: 480px;
}

.tableinner .sessioncont .count165 {
  /* 165分 */
  height: 495px;
}

.tableinner .sessioncont .count170 {
  /* 170分 */
  height: 510px;
}

.tableinner .sessioncont .count175 {
  /* 175分 */
  height: 525px;
}

.tableinner .sessioncont .count180 {
  /* 180分 */
  height: 540px;
}

.tableinner .sessioncont .count185 {
  /* 185分 */
  height: 555px;
}

.tableinner .sessioncont .count190 {
  /* 190分 */
  height: 570px;
}

.tableinner .sessioncont .count195 {
  /* 195分 */
  height: 585px;
}

.tableinner .sessioncont .count200 {
  /* 200分 */
  height: 600px;
}

.tableinner .sessioncont .count205 {
  /* 205分 */
  height: 615px;
}

.tableinner .sessioncont .count210 {
  /* 210分 */
  height: 630px;
}

.tableinner .sessioncont .count215 {
  /* 215分 */
  height: 645px;
}

.tableinner .sessioncont .count220 {
  /* 220分 */
  height: 660px;
}

.tableinner .sessioncont .count225 {
  /* 225分 */
  height: 675px;
}

.tableinner .sessioncont .count230 {
  /* 230分 */
  height: 690px;
}

.tableinner .sessioncont .count235 {
  /* 235分 */
  height: 705px;
}

.tableinner .sessioncont .count240 {
  /* 240分 */
  height: 720px;
}

.tableinner .sessioncont .count245 {
  /* 245分 */
  height: 735px;
}

.tableinner .sessioncont .count250 {
  /* 250分 */
  height: 750px;
}

.tableinner .sessioncont .count255 {
  /* 255分 */
  height: 765px;
}

.tableinner .sessioncont .count260 {
  /* 260分 */
  height: 780px;
}

.tableinner .sessioncont .count265 {
  /* 265分 */
  height: 795px;
}

.tableinner .sessioncont .count270 {
  /* 270分 */
  height: 810px;
}

.tableinner .sessioncont .count275 {
  /* 275分 */
  height: 825px;
}

.tableinner .sessioncont .count280 {
  /* 280分 */
  height: 840px;
}

.tableinner .sessioncont .count285 {
  /* 285分 */
  height: 855px;
}

.tableinner .sessioncont .count290 {
  /* 290分 */
  height: 870px;
}

.tableinner .sessioncont .count295 {
  /* 295分 */
  height: 885px;
}

.tableinner .sessioncont .count300 {
  /* 300分 */
  height: 900px;
}

.tableinner .sessioncont .count305 {
  /* 305分 */
  height: 915px;
}

.tableinner .sessioncont .count310 {
  /* 310分 */
  height: 930px;
}

.tableinner .sessioncont .count315 {
  /* 315分 */
  height: 945px;
}

.tableinner .sessioncont .count320 {
  /* 320分 */
  height: 960px;
}

.tableinner .sessioncont .count325 {
  /* 325分 */
  height: 975px;
}

.tableinner .sessioncont .count330 {
  /* 330分 */
  height: 990px;
}

.tableinner .sessioncont .count335 {
  /* 335分 */
  height: 1005px;
}

.tableinner .sessioncont .count340 {
  /* 340分 */
  height: 1020px;
}

.tableinner .sessioncont .count345 {
  /* 345分 */
  height: 1035px;
}

.tableinner .sessioncont .count350 {
  /* 350分 */
  height: 1050px;
}

.tableinner .sessioncont .count355 {
  /* 355分 */
  height: 1065px;
}

.tableinner .sessioncont .count360 {
  /* 360分 */
  height: 1080px;
}

.tableinner .sessioncont .count365 {
  /* 365分 */
  height: 1095px;
}

.tableinner .sessioncont .count370 {
  /* 370分 */
  height: 1110px;
}

.tableinner .sessioncont .count375 {
  /* 375分 */
  height: 1125px;
}

.tableinner .sessioncont .count380 {
  /* 380分 */
  height: 1140px;
}

.tableinner .sessioncont .count385 {
  /* 385分 */
  height: 1155px;
}

.tableinner .sessioncont .count390 {
  /* 390分 */
  height: 1125px;
}

.tableinner .sessioncont .count395 {
  /* 395分 */
  height: 1170px;
}

.tableinner .sessioncont .count400 {
  /* 400分 */
  height: 1185px;
}

.tableinner .sessioncont .count405 {
  /* 405分 */
  height: 1200px;
}

.tableinner .sessioncont .count410 {
  /* 410分 */
  height: 1215px;
}

.tableinner .sessioncont .count415 {
  /* 415分 */
  height: 1230px;
}

.tableinner .sessioncont .count420 {
  /* 420分 */
  height: 1245px;
}

/* ====================
time block -start time

tableinner .timetableul li:first-child   width: 1.4%
	1時間 width: 13.8%
	30分  width: 6.9%
	15分  width: 3.45%
	5分  width: 1.15%
=========================== */
.tableinner .sessioncont .start10-0 {
  /* 10:00スタート */
  top: 0;
}

.tableinner .sessioncont .start10-5,
.tableinner .sessioncont .start10-05 {
  /* 10:05スタート */
  top: 15px;
}

.tableinner .sessioncont .start10-10 {
  /* 10:10スタート */
  top: 30px;
}

.tableinner .sessioncont .start10-15 {
  /* 10:15スタート */
  top: 45px;
}

.tableinner .sessioncont .start10-20 {
  /* 10:20スタート */
  top: 60px;
}

.tableinner .sessioncont .start10-25 {
  /* 10:25スタート */
  top: 75px;
}

.tableinner .sessioncont .start10-30 {
  /* 10:30スタート */
  top: 90px;
}

.tableinner .sessioncont .start10-35 {
  /* 10:35スタート */
  top: 105px;
}

.tableinner .sessioncont .start10-40 {
  /* 10:40スタート */
  top: 120px;
}

.tableinner .sessioncont .start10-45 {
  /* 10:45スタート */
  top: 135px;
}

.tableinner .sessioncont .start10-50 {
  /* 10:50スタート */
  top: 150px;
}

.tableinner .sessioncont .start10-55 {
  /* 10:55スタート */
  top: 165px;
}

/* --11:00*/
.tableinner .sessioncont .start11-0 {
  /* 11:00スタート */
  top: 180px;
}

.tableinner .sessioncont .start11-5,
.tableinner .sessioncont .start11-05 {
  /* 11:05スタート */
  top: 195px;
}

.tableinner .sessioncont .start11-10 {
  /* 11:10スタート */
  top: 210px;
}

.tableinner .sessioncont .start11-15 {
  /* 11:15スタート */
  top: 225px;
}

.tableinner .sessioncont .start11-20 {
  /* 11:20スタート */
  top: 240px;
}

.tableinner .sessioncont .start11-25 {
  /* 11:25スタート */
  top: 255px;
}

.tableinner .sessioncont .start11-30 {
  /* 11:30スタート */
  top: 270px;
}

.tableinner .sessioncont .start11-35 {
  /* 11:35スタート */
  top: 285px;
}

.tableinner .sessioncont .start11-40 {
  /* 11:40スタート */
  top: 300px;
}

.tableinner .sessioncont .start11-45 {
  /* 11:45スタート */
  top: 315px;
}

.tableinner .sessioncont .start11-50 {
  /* 11:50スタート */
  top: 330px;
}

.tableinner .sessioncont .start11-55 {
  /* 11:55スタート */
  top: 345px;
}

/* --12:00*/
.tableinner .sessioncont .start12-0 {
  /* 12:00スタート */
  top: 360px;
}

.tableinner .sessioncont .start12-5,
.tableinner .sessioncont .start12-05 {
  /* 12:05スタート */
  top: 375px;
}

.tableinner .sessioncont .start12-10 {
  /* 12:10スタート */
  top: 390px;
}

.tableinner .sessioncont .start12-15 {
  /* 12:15スタート */
  top: 405px;
}

.tableinner .sessioncont .start12-20 {
  /* 12:20スタート */
  top: 420px;
}

.tableinner .sessioncont .start12-25 {
  /* 12:25スタート */
  top: 435px;
}

.tableinner .sessioncont .start12-30 {
  /* 12:30スタート */
  top: 450px;
}

.tableinner .sessioncont .start12-35 {
  /* 12:35スタート */
  top: 465px;
}

.tableinner .sessioncont .start12-40 {
  /* 12:40スタート */
  top: 480px;
}

.tableinner .sessioncont .start12-45 {
  /* 12:45スタート */
  top: 495px;
}

.tableinner .sessioncont .start12-50 {
  /* 12:50スタート */
  top: 510px;
}

.tableinner .sessioncont .start12-55 {
  /* 12:55スタート */
  top: 525px;
}

/* --13:00*/
.tableinner .sessioncont .start13-0 {
  /* 13:00スタート */
  top: 540px;
}

.tableinner .sessioncont .start13-5,
.tableinner .sessioncont .start13-05 {
  /* 13:05スタート */
  top: 555px;
}

.tableinner .sessioncont .start13-10 {
  /* 13:10スタート */
  top: 570px;
}

.tableinner .sessioncont .start13-15 {
  /* 13:15スタート */
  top: 585px;
}

.tableinner .sessioncont .start13-20 {
  /* 13:20スタート */
  top: 600px;
}

.tableinner .sessioncont .start13-25 {
  /* 13:25スタート */
  top: 615px;
}

.tableinner .sessioncont .start13-30 {
  /* 13:30スタート */
  top: 630px;
}

.tableinner .sessioncont .start13-35 {
  /* 13:35スタート */
  top: 645px;
}

.tableinner .sessioncont .start13-40 {
  /* 13:40スタート */
  top: 660px;
}

.tableinner .sessioncont .start13-45 {
  /* 13:45スタート */
  top: 675px;
}

.tableinner .sessioncont .start13-50 {
  /* 13:50スタート */
  top: 690px;
}

.tableinner .sessioncont .start13-55 {
  /* 13:55スタート */
  top: 705px;
}

/* --14:00*/
.tableinner .sessioncont .start14-0 {
  /* 14:00スタート */
  top: 720px;
}

.tableinner .sessioncont .start14-5,
.tableinner .sessioncont .start14-05 {
  /* 14:05スタート */
  top: 735px;
}

.tableinner .sessioncont .start14-10 {
  /* 14:10スタート */
  top: 750px;
}

.tableinner .sessioncont .start14-15 {
  /* 14:15スタート */
  top: 765px;
}

.tableinner .sessioncont .start14-20 {
  /* 14:20スタート */
  top: 780px;
}

.tableinner .sessioncont .start14-25 {
  /* 14:25スタート */
  top: 795px;
}

.tableinner .sessioncont .start14-30 {
  /* 14:30スタート */
  top: 810px;
}

.tableinner .sessioncont .start14-35 {
  /* 14:35スタート */
  top: 825px;
}

.tableinner .sessioncont .start14-40 {
  /* 14:40スタート */
  top: 840px;
}

.tableinner .sessioncont .start14-45 {
  /* 14:45スタート */
  top: 855px;
}

.tableinner .sessioncont .start14-50 {
  /* 14:50スタート */
  top: 870px;
}

.tableinner .sessioncont .start14-55 {
  /* 14:55スタート */
  top: 885px;
}

/* --15:00*/
.tableinner .sessioncont .start15-0 {
  /* 15:00スタート */
  top: 900px;
}

.tableinner .sessioncont .start15-5,
.tableinner .sessioncont .start15-05 {
  /* 15:05スタート */
  top: 915px;
}

.tableinner .sessioncont .start15-10 {
  /* 15:10スタート */
  top: 930px;
}

.tableinner .sessioncont .start15-15 {
  /* 15:15スタート */
  top: 945px;
}

.tableinner .sessioncont .start15-20 {
  /* 15:20スタート */
  top: 960px;
}

.tableinner .sessioncont .start15-25 {
  /* 15:25スタート */
  top: 975px;
}

.tableinner .sessioncont .start15-30 {
  /* 15:30スタート */
  top: 990px;
}

.tableinner .sessioncont .start15-35 {
  /* 15:35スタート */
  top: 1005px;
}

.tableinner .sessioncont .start15-40 {
  /* 15:40スタート */
  top: 1020px;
}

.tableinner .sessioncont .start15-45 {
  /* 15:45スタート */
  top: 1035px;
}

.tableinner .sessioncont .start15-50 {
  /* 15:50スタート */
  top: 1050px;
}

.tableinner .sessioncont .start15-55 {
  /* 15:55スタート */
  top: 1065px;
}

/* --16:00*/
.tableinner .sessioncont .start16-0 {
  /* 16:00スタート */
  top: 1080px;
}

.tableinner .sessioncont .start16-5,
.tableinner .sessioncont .start16-05 {
  /* 16:05スタート */
  top: 1095px;
}

.tableinner .sessioncont .start16-10 {
  /* 16:10スタート */
  top: 1110px;
}

.tableinner .sessioncont .start16-15 {
  /* 16:15スタート */
  top: 1125px;
}

.tableinner .sessioncont .start16-20 {
  /* 16:20スタート */
  top: 1140px;
}

.tableinner .sessioncont .start16-25 {
  /* 16:25スタート */
  top: 1155px;
}

.tableinner .sessioncont .start16-30 {
  /* 16:30スタート */
  top: 1170px;
}

.tableinner .sessioncont .start16-35 {
  /* 16:35スタート */
  top: 1185px;
}

.tableinner .sessioncont .start16-40 {
  /* 16:40スタート */
  top: 1200px;
}

.tableinner .sessioncont .start16-45 {
  /* 16:45スタート */
  top: 1215px;
}

.tableinner .sessioncont .start16-50 {
  /* 16:50スタート */
  top: 1230px;
}

.tableinner .sessioncont .start16-55 {
  /* 16:55スタート */
  top: 1245px;
}

.tableinner .sessioncont .start17-0 {
  /* 17:00スタート */
  top: 1260px;
}

.tableinner .sessioncont .start17-5,
.tableinner .sessioncont .start17-05 {
  /* 17:05スタート */
  top: 1275px;
}

.tableinner .sessioncont .start17-10 {
  /* 17:10スタート */
  top: 1290px;
}

.tableinner .sessioncont .start17-15 {
  /* 17:15スタート */
  top: 1305px;
}

.tableinner .sessioncont .start17-20 {
  /* 17:20スタート */
  top: 1320px;
}

.tableinner .sessioncont .start17-25 {
  /* 17:25スタート */
  top: 1335px;
}

/* タブ切り替え */
/* これより上に記述NG */

.tab_contents_day {
  display: none;
  transition: 0.1s;
  position: relative;
}

.tab_contents_day.current {
  display: block;
}

/* scrollbox */

.scrollbox {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
  margin-left: 80px;
}

.scrollbox::-webkit-scrollbar {
  height: 10px;
}

.scrollbox::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee;
}

.scrollbox::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: var(--conference);
}

.scrollbox::-webkit-scrollbar-track-piece {
  background: #efefef;
}

/* 会場ごとの色分け（タイムテーブル上部の会場名タブ）
   NOTE: data-place はタイムテーブルAPIが返す会場名をそのまま入れているため
   （conference.timetable.api.js）、全角/半角の括弧・スペース・日英の語順が
   年度やデータ登録によって揺れる。フル表記の完全一致セレクタだけだと当たらず
   色が付かない会場が出るので、揺れない「会場コード」(HA)(R2)(XS) 等での
   部分一致セレクタを必ず併記すること。
   例) 実データ ja「国際会議場2F 201会議室 (R2)」/ en「Room 201 (R2), International
       Conference Hall 2F」は、どちらも [data-place*="(R2)"] で拾える。
   旧表記の完全一致セレクタは過去データ・他ページ互換のため残している。

   IDピル（.sessionblock_id）はここでは色を変えない。ヘッダー帯が --session-color
   （＝会場色）なので、ピルまで同じ会場色にすると帯に同化して見えなくなるため、
   全会場で共通の白25%（.sessionblock_id の指定）のままにする。 */
.timetableCont .titleul li[data-place*="(HA)"] span,
.timetableCont .titleul li[data-place*="(HB)"] span,
.timetableCont .titleul li[data-place*="(R2)"] span,
.timetableCont .titleul li[data-place*="(R3)"] span,
.timetableCont .titleul li[data-place*="(R4)"] span,
.timetableCont .titleul li[data-place="国際会議場2F コンベンションホールA (HA)"] span,
.timetableCont .titleul li[data-place="国際会議場2F コンベンションホールB (HB)"] span,
.timetableCont .titleul li[data-place="コンベンションホールA"] span,
.timetableCont .titleul li[data-place="コンベンションホールB"] span,
.timetableCont .titleul li[data-place="Convention Hall A (HA), 2F International Conference Hall"] span,
.timetableCont .titleul li[data-place="Convention Hall B (HB), 2F International Conference Hall"] span,
.timetableCont .titleul li[data-place="Convention hall A"] span,
.timetableCont .titleul li[data-place="Convention hall B"] span,
.timetableCont .titleul li[data-place="国際会議場2F 201会議室（R2）"] span,
.timetableCont .titleul li[data-place="国際会議場3F 301会議室（R3）"] span,
.timetableCont .titleul li[data-place="302会議室"] span,
.timetableCont .titleul li[data-place="201会議室"] span,
.timetableCont .titleul li[data-place="301会議室"] span,
.timetableCont .titleul li[data-place="Room 201 (R2), 2F International Conference Hall"] span,
.timetableCont .titleul li[data-place="Room 301 (R3), 3F International Conference Hall"] span,
.timetableCont .titleul li[data-place="302 Conference Room"] span,
.timetableCont .titleul li[data-place="201 Conference Room"] span,
.timetableCont .titleul li[data-place="301 Conference Room"] span {
  background-color: var(--conference);
}

.timetableCont .titleul li[data-place*="(XS)"] span,
.timetableCont .titleul li[data-place*="(TS)"] span,
.timetableCont .titleul li[data-place="展示ホール5 AXステージ（AS）"] span,
.timetableCont .titleul li[data-place="Xステージ"] span,
.timetableCont .titleul li[data-place="AX Stage in Exhibition Hall 5 (AS)"] span,
.timetableCont .titleul li[data-place="X Stage"] span,
.timetableCont .titleul li[data-place="展示ホール4 Tステージ（TS）"] span,
.timetableCont .titleul li[data-place="Tステージ"] span,
.timetableCont .titleul li[data-place="T Stage in Exhibition Hall 4(TS)"] span,
.timetableCont .titleul li[data-place="T Stage"] span {
  background-color: var(--xpark);
  /* Xステージ (XS) / Tステージ (TS) */
}

.timetableCont .titleul li[data-place*="(ES)"] span,
.timetableCont .titleul li[data-place="展示ホール6 Eステージ（ES）"] span,
.timetableCont .titleul li[data-place="Eステージ"] span,
.timetableCont .titleul li[data-place="E Stage in Exhibition Hall 6(ES)"] span,
.timetableCont .titleul li[data-place="E Stage"] span {
  background-color: var(--ceatecblue);
  /* Eステージ (ES) */
}

.timetableCont .titleul li[data-place*="(PS)"] span,
.timetableCont .titleul li[data-place*="(NS)"] span,
.timetableCont .titleul li[data-place="展示ホール5 Pステージ (PS)"] span,
.timetableCont .titleul li[data-place="ピッチステージ"] span,
.timetableCont .titleul li[data-place="Pステージ"] span,
.timetableCont .titleul li[data-place="展示ホール6 NGPステージ（NS）"] span,
.timetableCont .titleul li[data-place="Pitch Stage in Exhibition Hall 5 (PS)"] span,
.timetableCont .titleul li[data-place="Pitch Stage"] span,
.timetableCont .titleul li[data-place="P Stage"] span,
.timetableCont .titleul li[data-place="NGP Stage in Exhibition Hall 6 (NS)"] span {
  background-color: var(--next);
  /* Pステージ (PS) / NGPステージ (NS) */
}

.timetableCont .titleul li[data-place*="(GS)"] span,
.timetableCont .titleul li[data-place="展示ホール4 Gステージ (GS)"] span,
.timetableCont .titleul li[data-place="Global Stage in Exhibition Hall 4 (GS)"] span {
  background-color: var(--global);
  /* Gステージ (GS) */
}

/* カード本体の文字色とヘッダー帯の色（--session-color）。
   会場名の表記ゆれで外れないよう、上のタブと同じく会場コードの部分一致を併記する */
.tableinner .sessioncont .sessionblock a,
.tableinner .sessioncont .sessionblock[data-place*="(HA)"] a,
.tableinner .sessioncont .sessionblock[data-place*="(HB)"] a,
.tableinner .sessioncont .sessionblock[data-place*="(R2)"] a,
.tableinner .sessioncont .sessionblock[data-place*="(R3)"] a,
.tableinner .sessioncont .sessionblock[data-place*="(R4)"] a,
.tableinner .sessioncont .sessionblock[data-place="国際会議場2F コンベンションホールA (HA)"] a,
.tableinner .sessioncont .sessionblock[data-place="国際会議場2F コンベンションホールB (HB)"] a,
.tableinner .sessioncont .sessionblock[data-place="コンベンションホールA"] a,
.tableinner .sessioncont .sessionblock[data-place="コンベンションホールB"] a,
.tableinner .sessioncont .sessionblock[data-place="Convention Hall A (HA), 2F International Conference Hall"] a,
.tableinner .sessioncont .sessionblock[data-place="Convention Hall B (HB), 2F International Conference Hall"] a,
.tableinner .sessioncont .sessionblock[data-place="Convention hall A"] a,
.tableinner .sessioncont .sessionblock[data-place="Convention hall B"] a,
.tableinner .sessioncont .sessionblock[data-place="国際会議場2F 201会議室（R2）"] a,
.tableinner .sessioncont .sessionblock[data-place="国際会議場3F 301会議室（R3）"] a,
.tableinner .sessioncont .sessionblock[data-place="302会議室"] a,
.tableinner .sessioncont .sessionblock[data-place="201会議室"] a,
.tableinner .sessioncont .sessionblock[data-place="301会議室"] a,
.tableinner .sessioncont .sessionblock[data-place="Room 201 (R2), 2F International Conference Hall"] a,
.tableinner .sessioncont .sessionblock[data-place="Room 301 (R3), 3F International Conference Hall"] a,
.tableinner .sessioncont .sessionblock[data-place="302 Conference Room"] a,
.tableinner .sessioncont .sessionblock[data-place="201 Conference Room"] a,
.tableinner .sessioncont .sessionblock[data-place="301 Conference Room"] a {
  color: var(--conference);
  --session-color: var(--conference);
  /* 国際会議場2F 201会議室（R2）*/
  /* 国際会議場3F 301会議室（R3）*/
  /* 302会議室*/
}

.tableinner .sessioncont .sessionblock[data-place="展示ホール4 Tステージ（TS）"] a,
.tableinner .sessioncont .sessionblock[data-place="Tステージ"] a,
.tableinner .sessioncont .sessionblock[data-place*="(TS)"] a,
.tableinner .sessioncont .sessionblock[data-place="T Stage in Exhibition Hall 4(TS)"] a,
.tableinner .sessioncont .sessionblock[data-place="T Stage"] a {
  color: var(--xpark);
  --session-color: var(--xpark);
  /* 展示ホール4 Tステージ（TS） / 展示ホール5 Tステージ (TS) / T Stage (TS), Exhibition Hall 5 */
}

.tableinner .sessioncont .sessionblock[data-place="展示ホール5 AXステージ（AS）"] a,
.tableinner .sessioncont .sessionblock[data-place="Xステージ"] a,
.tableinner .sessioncont .sessionblock[data-place*="(XS)"] a,
.tableinner .sessioncont .sessionblock[data-place="AX Stage in Exhibition Hall 5 (AS)"] a,
.tableinner .sessioncont .sessionblock[data-place="X Stage"] a {
  color: var(--xpark);
  --session-color: var(--xpark);
  /* 展示ホール5 AXステージ（AS） / 展示ホール6 Xステージ (XS) / X Stage (XS), Exhibition Hall 6 */
}

.tableinner .sessioncont .sessionblock[data-place="展示ホール6 Eステージ（ES）"] a,
.tableinner .sessioncont .sessionblock[data-place="Eステージ"] a,
.tableinner .sessioncont .sessionblock[data-place*="(ES)"] a,
.tableinner .sessioncont .sessionblock[data-place="E Stage in Exhibition Hall 6(ES)"] a,
.tableinner .sessioncont .sessionblock[data-place="E Stage"] a {
  color: var(--ceatecblue);
  --session-color: var(--ceatecblue);
  /* 展示ホール6 Eステージ（ES） / 展示ホール8 Eステージ (ES) / E Stage (ES), Exhibition Hall 8 */
}
.tableinner .sessioncont .sessionblock[data-place="展示ホール5 Pステージ (PS)"] a,
.tableinner .sessioncont .sessionblock[data-place="Pステージ"] a,
.tableinner .sessioncont .sessionblock[data-place*="(PS)"] a,
.tableinner .sessioncont .sessionblock[data-place="ピッチステージ"] a,
.tableinner .sessioncont .sessionblock[data-place="Pitch Stage in Exhibition Hall 5 (PS)"] a,
.tableinner .sessioncont .sessionblock[data-place="Pitch Stage"] a,
.tableinner .sessioncont .sessionblock[data-place*="(NS)"] a,
.tableinner .sessioncont .sessionblock[data-place="展示ホール6 NGPステージ（NS）"] a,
.tableinner .sessioncont .sessionblock[data-place="NGP Stage in Exhibition Hall 6 (NS)"] a {
  color: var(--next);
  --session-color: var(--next);
  /* 展示ホール4 Pステージ (PS) / P Stage (PS), Exhibition Hall 4 */
}

.tableinner .sessioncont .sessionblock[data-place*="(GS)"] a,
.tableinner .sessioncont .sessionblock[data-place="展示ホール4 Gステージ (GS)"] a,
.tableinner .sessioncont .sessionblock[data-place="Global Stage in Exhibition Hall 4 (GS)"] a {
  color: var(--global);
  --session-color: var(--global);
  /* グローバルパーク ピッチステージ */
}
