/*===========================================
program
===========================================*/
#programHeader{
	position:relative;
	text-align:center;
}
	#dayTabs{
		position:absolute; top:0; right:0;
		border-bottom:2px solid #ddd;
		white-space:nowrap;
	}
		#dayTabs .tab{
			display:inline-block;
			color:#666;
			text-align:center;
			padding:5px 20px;
			margin:0 5px;
			position:relative;
		}
		#dayTabs .active{
			color:#ec008d;
			font-weight:700;
			cursor:default;
		}
			#dayTabs .active::before{
				content:"";
				display:inline-block;
				border-bottom:4px solid #ec008d;
				position:absolute; left:0; bottom:-3px;
				width:100%;
			}
	#programHeader .partTitle{
		text-align:left;
	}
		#programHeader .partTitle .week{
			color:#666;
			font-size:.875rem; font-weight:400;
		}
@media screen and (max-width:812px){/* iX Landscape */
	#dayTabs{
		display:inline-block;
		position:static;
		text-align:center;
		margin:0 auto 30px;
	}
}
@media screen and (max-width:414px){/* i6,i7,i8 Plus */
	#dayTabs .tab{
		padding:5px 10px;
	}
}

/*-------------------------------------------
type Filter
-------------------------------------------*/
#typeFilter{
	background-color:#fefae9;
	padding:15px;
	margin-bottom:20px;
	color:#333;
}
	#typeFilter div{
		display:inline-block;
		margin:5px 42px 5px 0;
		background:url(../images/program_radio@2x.png?v=20190320) no-repeat 0 50%;
		background-size:24px 24px;
		padding-left:28px;
		cursor:pointer;
		transition:.1s;-moz-transition:.1s;
	}
	#typeFilter div:hover{
		color:#009cff;
	}
	#typeFilter .active{
		background-image:url(../images/program_radio_checked@2x.png?v=20190320);
	}

	.programTable tbody td div{
		transition:.1s;
	}
	.programTable tbody td div.opacity{
		opacity:.2;
	}
@media screen and (max-width:812px){/* iX Landscape */
	#typeFilter div{
		width:24%;
		margin-right:0;
	}
}
@media screen and (max-width:768px){
	#typeFilter{
		padding:10px;
	}
		#typeFilter div{
			width:32.5%;
		}
}
@media screen and (max-width:414px){/* i6,i7,i8 Plus */
	#typeFilter div{
		width:49.5%;
	}
}
@media screen and (max-width:320px){/* i5 */
	#typeFilter div{
		display:block;
		width:100%;
	}
}

/*-------------------------------------------
program
-------------------------------------------*/
.explanation.onlyRWD{
	display:none;
}
.programWrapper{
	position:relative;
}
	.programTableRWD{
		border-collapse:collapse;
		display:none;
	}
	.programTableRWD.fixed{
		display:block;
		position:absolute; top:0; z-index:2;
		width:100%;
	}
	.programTable{
		border-collapse:collapse;
		margin-top:12px;
	}
	.programTable.fixed{
		/* margin-top:62px; */
	}
		/* Table thead */
		.programTable.fixed thead{
			/* position:fixed; top:98px; z-index:2; */
			width:100%;
		}
		.programTableRWD thead th, .programTableRWD thead td,
		.programTable thead th, .programTable thead td{
			font-size:.875rem; line-height:1.2;
			color:#000;
			text-align:center;
			border-bottom:2px solid #eccfdf;
			background-color:#ffdbf1;
			padding:5px;
		}
		.programTableRWD thead th,
		.programTable thead th,
		.programTable tbody th{
			
		}
			.programTableRWD thead td strong,
			.programTable thead td strong{
				display:block;
				color:#ec008d;
				font-size:1.25rem; 
			}
		/* Table tbody */
		.programTable tbody th, .programTable tbody td{
			position:relative;
			padding:10px 5px;
			text-align:center;
		}
		.programTable tbody th{
			color:#333;
			background-color:#fdf0f8;
			border-right:1px solid #f9cee8;
			border-bottom:1px solid #f9cee8;
		}
		.programTableRWD thead td{
			
		}
		.programTable tbody td{
			position:relative;
			font-size:.875rem; line-height:1.2;
			border-bottom:1px solid #e1e1e1;
			border-left:1px solid #e1e1e1;
		}
		.programTable tbody tr td:hover{
			background-color:#fffcee;
		}
		.programTable tbody td.empty,
		.programTable tbody td.empty:hover{
			background-color:#f7f7f7;
		}
			.programTable tbody a:hover{
				color:#e30580;
			}
			.programTable tbody .name{
				display:block;
				color:brown;
				font-size:.75rem; font-weight:700;
				margin-top:8px;
			}
			.programTable tbody .session{
				display:block;
				color:#111;
				font-size:.875rem; font-weight:700;
				margin-top:8px;
			}
			.programTable tbody .organizer,
			.programTable tbody .co-organizer{
				font-size:13px; color:#666;
				margin-top:8px;
			}
				.programTable tbody .organizer span,
				.programTable tbody .co-organizer span{
					font-size:12px; color:brown;
				}
@media screen and (max-width:812px){/* iX Landscape */
	.explanation.onlyRWD{
		display:block;
		font-size:.75rem;
	}
		/*--- Finger Swipe ---*/
		.fingerSwipe{
			display:block;
			position:absolute; z-index:10;
			transform:translate(10px, 30px);
		}
			.fingerSwipe::before,
			.fingerSwipe::after{
				content:"";
				display:inline-block;
				background-position:50% 50%;
				background-repeat:no-repeat;
				background-size:18px 18px;
				width:18px;
				height:18px;
				opacity:.5;
			}
			.fingerSwipe::before{
				background-image:url(../images/icon_arrow_back.svg);
			}
			.fingerSwipe::after{
				background-image:url(../images/icon_arrow_forward.svg);
			}
			.fingerSwipe i{
				display:inline-block;
				width:10px; height:30px;
				border-radius:40%;
				background-color:#333;
				position:absolute; left:68%; z-index:1;
				transform:rotate(-45deg) scale(0.6);
				-webkit-animation-duration:1.2s;animation-duration:1.2s;
				-webkit-animation-fill-mode:both;animation-fill-mode:both;
				-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;
				-webkit-animation-timing-function:ease;animation-timing-function:ease;
				-webkit-animation-name:scrollFloat;animation-name:scrollFloat;
			}
				.fingerSwipe i::before,
				.fingerSwipe i::after{
					content:"";
					display:inline-block;
					background-color:#333;
					position:absolute;
				}
				.fingerSwipe i::before{
					width:28px; height:32px;
					top:20px; left:-4px;
					border-radius:15px;
				}
				.fingerSwipe i::after{
					width:12px; height:28px;
					top:20px; left:-10px;
					border-radius:45%;
					transform:rotate(-40deg);
				}
		@-webkit-keyframes scrollFloat{
			0%,100%{left:12px;}
			50%{left:20px;}
		}
		@keyframes scrollFloat{
			0%,100%{left:12px;}
			50%{left:20px;}
		}
	.programWrapper{
		position:relative;
		overflow-x:auto;
		overflow-y:hidden;
		padding:0;
	}
		.programTableRWD.fixed{
			display:block;
			position:absolute; top:0; z-index:3;
			width:1000px;
			margin-top:12px;
		}
		.programTable.fixed{
			margin-top:0;
		}
			.programTable{
				width:1000px;
			}
			.programDay1{
				width:100%;
			}
				.programTable.fixed thead{
					position:static; top:auto;
				}
				.programTable tbody th{
					font-size:.875rem;
					white-space:nowrap;
					padding:0;
				}
					.programTable tbody th .stickyTime{
						position:absolute; top:0; z-index:2;
						width:100%; height:100%;
						text-align:left;
						background-color:#fdf0f8;
						border-right:1px solid #f9cee8;
						box-shadow:0 1px 0 #f9cee8, 3px 3px 8px rgba(0,0,0,.1);
					}	
						.programTable tbody th .stickyTime span{
							position:absolute; top:50%; left:50%;
							transform:translate(-50%,-50%);
						}
}
@media screen and (max-width:768px){
	.programTable tbody th,
	.programTable tbody td{
		padding:10px 5px;
	}
}
@media screen and (max-width:414px){/* i6,i7,i8 Plus */
	.programTableRWD thead td,
	.programTable thead td{
		width:15.5%;
	}
	.programDay1 thead td{
		width:auto;
	}
	.programTable tbody th i{
		display:block;
		position:relative;
		font-style:normal;
		line-height:12px;
		transform:rotate(90deg);
	}
	.programTable tbody th .stickyTime i{
		top:16px;
		font-size:1.2rem;
	}
}

/*-------------------------------------------
Fancybox
-------------------------------------------*/
.fancybox-skin{
	border-color:#fff;
}
.fancybox-close{
	/*top:-8px !important; right:-35px !important;*/
}

/*-------------------------------------------
Session
-------------------------------------------*/
#session{
	background-color:#fff;
	font-family:inherit;
	color:#000; 
	line-height:1.4;
}
	#session .title{
		font-weight:700;
	}
		#session .title h2{
			margin:0;
			color:#000;
			font-size:1.5rem;
		}
		#session .title .secondary{
			display:inline-block;
			font-size:1.25rem;
		}
		#session .title .desc{
			font-size:1.125rem; font-weight:700;
			margin:10px 0 0;
		}
	#session .dateVenue{
		font-size:1rem;
		padding:10px 0;
	}
	#session .sessionTable{
		border-collapse:collapse;
		/* border:1px solid #cee7ef; */
	}
		#session .sessionTable th, #session .sessionTable td{
			padding:8px 8px;
		}
		/* --- thead --- */
		#session .sessionTable thead th{
			border-bottom:2px solid #eccfdf;
			background-color:#ffdbf1;
			color:#111;
			padding:3px 8px;
		}
		/* --- tbody --- */
		#session .sessionTable tbody th{
			background-color:#fdf0f8;
			border-right:1px solid #f9cee8;
			border-bottom:1px solid #f9cee8;
			color:#111;
			font-size:.875rem;
		}
		#session .sessionTable tbody td{
			border-bottom:1px solid #ddd;
			border-left:1px solid #e3e3e3;
			border-right:1px solid #e3e3e3;
			color:#000;
			font-weight:700;
		}
		#session .sessionTable tbody td:nth-child(2){
			border-left:0 !important;
		}
		#session .sessionTable tbody td.risingStar{
			background-color:#fff5d6;
		}
			#session .sessionTable .moderatorsRow{
				position:relative;
				padding-left:100px;
			}
				#session .sessionTable .moderatorsRow span{
					position:absolute; left:0;
					font-weight:700;
				}
			#session .rowspanData{
				display:none;
			}
			#session .sessionTable .speaker,
			#session .sessionTable .moderator{
				color:#111;
			}
			#session .sessionTable .hospital, 
			#session .sessionTable .country{
				color:#777;
				font-size:.875rem; font-weight:400;
				margin-bottom:5px;
			}
			#session .organizer{
				margin-top:10px;
			}
			#session .organizer,
			#session .co-organizer{
				
			}
				#session .organizer span,
				#session .co-organizer span{
					color:brown;
				}
	#session .important{
		font-size:.875rem;
	}
@media screen and (max-width:812px){/* iX Landscape */
	#session .sessionTable{
		width:100%;
	}
}
@media screen and (max-width:736px){/* i6,i7,i8 Plus Landscape */
	#session{
		
	}
		#session .title{
			line-height:1;
		}
			#session .title h2{
				font-size:1.25rem;;
			}
			#session .title .secondary{
				font-size:1.125rem;
			}
			#session .title .desc{
				font-size:1rem;
			}
		#session .dateVenue{
			font-size:.875rem;
			margin-top:10px;
		}
	#session .explanation.onlyRWD{
		display:none;
	}
	#session section{
		position:relative;
		overflow-x:auto;
		overflow-y:hidden;
		padding:0;
	}
		#session .sessionTable{
			
		}
			#session .sessionTable th, #session .sessionTable td{
				padding:5px;
			}
			/* --- thead --- */
			#session .sessionTable thead th{
				padding:5px;
			}
			#session .sessionTable thead th:first-child{
				width:55px;
			}
			/* --- tbody --- */
			#session .sessionTable tbody th{
				text-align:left;
			}
				#session .sessionTable .hospital, 
				#session .sessionTable .country{
					margin-bottom:0;
				}
}
@media screen and (max-width:414px){/* i6,i7,i8 Plus */
	#session .dateVenue{
		font-size:.875rem;
	}
	#session .organizer,
	#session .co-organizer{
		font-size:.875rem;
	}
	#session .sessionTable{
		border:none;
		border-top:2px solid #e30580;
		border-bottom:1px solid #eccfdf;
		margin-bottom:5px;
	}
		#session .sessionTable thead{
			display:none;
		}
		#session .sessionTable tbody tr{
			display:block;
			padding:0 0 15px;
		}
			#session .sessionTable tbody th,
			#session .sessionTable tbody td{
				display:block;
				border:none;
			}
			#session .sessionTable tbody th{
				padding:5px;
			}
			#session .sessionTable tbody td{
				font-size:1.125rem;
				padding:5px 0;
			}
				#session .sessionTable .speaker,
				#session .sessionTable .moderator{
					font-size:1rem;
					margin-top:10px;
				}
					#session .sessionTable .speaker::before{
						content:"Speaker: ";
						display:block;
						margin-bottom:5px;
						font-size:.75rem; font-weight:700; line-height:1;
						letter-spacing:1.25px;
						border-left:2px solid #e30580;
						padding-left:5px;
					}
					#session .sessionTable .moderator::before{
						content:"Moderator: ";
						display:block;
						margin-bottom:5px;
						font-size:.75rem; font-weight:700; line-height:1;
						letter-spacing:1.25px;
						border-left:2px solid #e30580;
						padding-left:5px;
					}
					#session .sessionTable .speaker.moderator::before{
						content:"Speaker / Moderator: ";
					}
				#session .sessionTable tbody td:nth-child(3) br,
				#session .sessionTable tbody td:nth-child(4) br{
					display:none;
				}
				#session .sessionTable .hospital,
				#session .sessionTable .country{
					font-size:.75rem;
					margin-bottom:5px;
				}
			#session .sessionTable .moderatorsRow{
				padding-left:0;
			}
				#session .sessionTable .moderatorsRow span{
					position:static;
					display:block;
					margin:5px 0;
					font-size:.75rem; font-weight:700; line-height:1;
					letter-spacing:1.25px;
					border-left:2px solid #e30580;
					padding-left:5px;
				}
			#session .rowspanData{
				display:block;
				padding-top:10px;
			}
}

/*-------------------------------------------
Social Events
-------------------------------------------*/
.socialEvents thead th{
	text-align:center;
}
.socialEvents tbody th,
.socialEvents tbody td{
	padding:15px 10px;
	text-align:center;
}
.socialEvents tbody th{
	color:#ec008d;
}
@media screen and (max-width:812px){/* iX Landscape */
	.socialEvents tbody th,
	.socialEvents tbody td{
		padding:5px 10px;
	}
}
@media screen and (max-width:414px){/* i6,i7,i8 Plus */
	.socialEvents thead{
		display:none;
	}
	.socialEvents th,
	.socialEvents td{
		display:block;
	}
	.socialEvents tbody th{
		font-size:1.125rem;
		text-align:left;
	}
	.socialEvents tbody td{
		border:none;
		text-align:left;
		border-left:none !important;
	}
	.socialEvents td:nth-child(3){
		font-weight:700;
	}
	.socialEvents td:nth-child(4){
		padding-bottom:25px;
	}
}
