
/*===========================================================
+-----+// timetable
===========================================================*/
main {
	padding-top: 247px;
}

main .h1_ttl{
	margin: 15px auto 0;
}

#time_head{
	position: fixed;
	top: 76px;
	left: 0;
	z-index: 100;
	width: 100%;
	margin: 0 auto;
	background: #1d3952;
	padding-top: 20px;
}

#time_head.is-Fixed {
	position: fixed;
	left: 0;
	top: 71px;
}

#time_head .h1_ttl {
	margin: 0 0 20px 15px;
}

#time_head .h1_ttl img {
	display: block;
	width: 67px;
}

.quality{
	position: absolute;
	right: 15px;
	top: 16px;
	width: 256px;
	max-width: calc(100% - 110px);
}

.quality ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	width: 100%;
}
.quality li {
	width: calc(33.33% - 5px);
}
.quality_btn{
	font-family: inherit;
	font-size: 1.4rem;
	width: 100%;
	height: 28px;
	line-height: 28px;
	color: #1d3952;
	display: block;
	font-weight: bold;
	text-align: center;
	color: #555;
	border: none;
	border-radius: 5px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
	background: #EEE;
}
.quality .activeSp {
	color: #1d3952;
	background: #222222;
}

.time_nav{
	margin: 0 auto 10px!important;
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}
.time_format{
	display: none;
}

.time_select{
	width: 100%;
	padding: 0 10px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}

.time_select li{
	width: 23%;
}
.time_select a{
	width: 100%;
	padding: 3px 0 ;
	text-align: center;
	display: block;
	color: #1d3952;
	min-height: 20px;
	line-height: 20px;
	border-radius: 20px;
	padding-right: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	box-sizing: border-box;
	background: url("/top/common/img/arrow03_d.png") right 12px center no-repeat #ccc;
	background-size: 9px auto;
}
		
.time_select li:nth-child(1) a{
	background-color: #bcd36c;
}
.time_select li:nth-child(2) a{
	background-color: #dd960f;
}
.time_select li:nth-child(3) a{
	background-color: #5f89c6;
}
.time_select li:nth-child(4) a{
	background-color: #7369b4;
}
		
.time_select .active a{
	background: #222222;
}

/*===========================================================
+-----+// time_tab
===========================================================*/
.time_tab{
	margin: 0 auto;
	padding-bottom: 12px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	position: relative;
	overflow-x: scroll;
	overflow-y: hidden;
}

.time_tab::-webkit-scrollbar {
  height: 4px; /* Chiều cao của scrollbar ngang */
}

.time_tab::-webkit-scrollbar-track {
  background: #f1f1f1; /* Màu nền của track */
}

.time_tab::-webkit-scrollbar-thumb {
  background-color: #888; /* Màu của thanh kéo */
  border-radius: 10px; /* Góc bo tròn */
  border: 2px solid #f1f1f1; /* Viền xung quanh thanh kéo */
}

.time_tab::-webkit-scrollbar-thumb:hover {
  background-color: #555; /* Màu của thanh kéo khi hover */
}

/* Tùy chỉnh scrollbar ngang cho Firefox */
.time_tab {
  scrollbar-width: thin; /* Độ dày của scrollbar */
  scrollbar-color: #888 #f1f1f1; /* Màu của thanh kéo và track */
}

.time_tab a{
	transition: all 0.3s;
}

.time_tab ul{
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	position: relative;
	padding-top: 5px;
	height: 40px;
	width: 100%;
}	

.time_tab:after{
	position: absolute;
	content:'';
	z-index: 10;
	width: 100%;
	bottom: -11px !important;
	height: 8px;
	background: #333;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.time_tab ul li{
	width: 12.5%;
	height: 40px;
	min-width: 45px;
	position: relative;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}		

.time_tab ul li.active{
	z-index: 10 !important;
	top: 0;
	height: 47px !important;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}

.time_tab ul li a:hover,
.time_tab ul li.active a{
	height: 51px;
	color: #1d3952 !important;
	background: linear-gradient(114.88deg, #1c87bb 0%, #29b5ce 97.15%);
	padding-top: 5px;
}

.time_tab ul li a:hover:after,
.time_tab ul li.active a:after{
	position: absolute;
	bottom: -24px;
	left: calc(50% - 15px);
	content: "";
	border-top: 15px solid #333333;
	border-right: 15px solid transparent;
	border-left: 15px solid transparent;
}

.time_tab ul li.Sat a{color: #529cdc;}
.time_tab ul li.Sun a{color: #fe7e88;}

/*.time_tab ul li:nth-child(1){z-index: 8;left: 0}
.time_tab ul li:nth-child(2){z-index: 7;left: 12.5%}
.time_tab ul li:nth-child(3){z-index: 6;left: calc(12.5% * 2)}
.time_tab ul li:nth-child(4){z-index: 5;left: calc(12.5% * 3)}
.time_tab ul li:nth-child(5){z-index: 4;left: calc(12.5% * 4)}
.time_tab ul li:nth-child(6){z-index: 3;left: calc(12.5% * 5)}
.time_tab ul li:nth-child(7){z-index: 2;left: calc(12.5% * 6)}
.time_tab ul li:nth-child(8){z-index: 1;left: calc(12.5% * 7)}*/

.time_tab ul a{
	display: block;
	height: 47px;
	text-align: center;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	background: linear-gradient(114.88deg, #061318 0%, #29b5ce 97.15%);
	font-size: 1.2rem !important;
	line-height: 1.1;
}		
.time_tab ul a span{
	font-size: 1.2rem;
	font-weight: bold;
	padding-top: 7px;
	display: block;

}
.time_tab .back,
.time_tab .next{
	display: none;
}

/*===========================================================
+-----+// ch_head
===========================================================*/
.ch_head {
	margin: 0 auto;
	box-sizing: border-box;
}

.ch_head li {
	display: none;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	background-color: #EEE;
}

.ch_head li.activeSp {
	display: flex;
}


/*===========================================================
+-----+// timetable daily
===========================================================*/
.timetable_wrap {
	overflow-x: hidden;
}

.timetable_content {
	position: relative;
	display: grid;
	row-gap: 1px;
	grid-template-columns: 30px 1fr 1fr;
	width: calc(200vw - 30px);
	border-top: 1px solid #DDD;
	box-sizing: border-box;
}

.timetable_content.ch4k {
	width: 100%;
	grid-template-columns: 30px 1fr;
}

.timetable .hour {
	position: sticky;
	left: 0;
	z-index: 3;
	grid-column: 1 / 2;
	grid-row: 1 / 60;
	padding: 20px 0;
	color: #1d3952;
	text-align: center;
	background-color: #bcd36c;
	box-sizing: border-box;
}

.timetable .h5 { grid-row: 60 / 120; }
.timetable .h6 { grid-row: 120 / 180; }
.timetable .h7 { grid-row: 180 / 240; }
.timetable .h8 { grid-row: 240 / 300; }
.timetable .h9 { grid-row: 300 / 360; }
.timetable .h10 { grid-row: 360 / 420; }
.timetable .h11 { grid-row: 420 / 480; }
.timetable .h12 { grid-row: 480 / 540; }
.timetable .h13 { grid-row: 540 / 600; }
.timetable .h14 { grid-row: 600 / 660; }
.timetable .h15 { grid-row: 660 / 720; }
.timetable .h16 { grid-row: 720 / 780; }
.timetable .h17 { grid-row: 780 / 840; }
.timetable .h18 { grid-row: 840 / 900; }
.timetable .h19 { grid-row: 900 / 960; }
.timetable .h20 { grid-row: 960 / 1020; }
.timetable .h21 { grid-row: 1020 / 1080; }
.timetable .h22 { grid-row: 1080 / 1140; }
.timetable .h23 { grid-row: 1140 / 1200; }
.timetable .h24 { grid-row: 1200 / 1260; }
.timetable .h25 { grid-row: 1260 / 1320; }
.timetable .h26 { grid-row: 1320 / 1380; }
.timetable .h27 { grid-row: 1380 / 1440; }
.timetable .h28 { grid-row: 1440 / 1500; }

.timetable .afternoon {
	background-color: #dd960f;
}

.timetable .night {
	background-color: #5f89c6;
}

.timetable .lateNight {
	background-color: #7369b4;
}

.timetable .program {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
	background-color: #1d3952;
	box-sizing: border-box;
}

.timetable .ch4k .program {
	display: block;
}

.timetable .hour::before,
.timetable .program::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 1px;
	background-color: #DDD;
}

.timetable .program.first::before {
	content: none;
}

.timetable .program.unique{
	background: #1d39521D1;
}

.timetable .program.nowprogram{
	background: #fce8ec;
}

.timetable .program.ch1 {
	grid-column: 2 / 3;
}

.timetable .program.ch2 {
	flex-direction: row-reverse;
	grid-column: 3 / 4;
}

.timetable .program .inner {
	width: calc(100% - 53px);
	padding: 20px 0 20px 20px;
	box-sizing: border-box;
}

.timetable .ch4k .program .inner {
	display: block;
	width: 100%;
	padding: 20px;

}

.timetable .program.ch2 .inner {
	padding-left: 0;
	padding-right: 20px;
}

.timetable .program a {
	transition: background 0.3s;
}

.timetable .program a:hover{
	background: #fce8ec;
}

.timetable .program .detail {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.timetable .program .time {
	display: inline-block;
	width: 6.5rem;
	vertical-align: top;
}

.timetable_content .icons{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: calc(100% - 65px);
}	

.timetable_content .icons li{
	text-align: center;
	box-sizing: border-box;
	margin: 0 10px 5px 0;
	font-size: 1.0rem;
	font-weight: bold;
	border: solid 2px #4d4d4d;
	padding: 0 5px;
}

.timetable .program .title {
	width: 100%;
	margin-top: 5px;
	font-weight: bold;
	line-height: 1.4;
	font-size: 16px !important;
}

.timetable .program .text {
	word-break: break-all;
	margin-top: 10px;
}

.timetable .program figure img {
	width: 100%;
	height: auto;
	margin-top: 12px;
}

.timetable .program figcaption {
	margin-top: 8px;
	text-align: right;
	font-size: 1.2rem;
}

.timetable .program .multichBtn {
	width: 43px;
	height: calc(100% - 16px);
	margin: 8px 0;
	font-size: 1.2rem;
	font-weight: bold;
	color: #555;
	border: none;
	border-radius: 5px 0 0 5px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
	background-color: #EEE;
}

.timetable .program .multichBtn::after {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	margin: 8px auto;
	border-right: 2px solid #555;
	border-bottom: 2px solid #555;
	transform: rotate(-45deg) translateX(-2px);
}

.timetable .program.ch2 .multichBtn::after {
	transform: rotate(135deg) translateX(-2px);
}