#tab_timetable{
width:100%;
max-width:1080px;
margin:6% auto 0%;
box-sizing:border-box;
}
.listtab{
margin:0px auto 5px;
padding:0px;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
list-style-type:none;
width:100%;
box-sizing:border-box;
}
.listtab li{
width:32.5%;
margin-right:0%;
box-sizing:border-box;

}
.listtab li a{
	display:flex;
	box-sizing:border-box;
	justify-content: center;
	align-items:center;
	height:100%;
	padding:1em 0.5em;
	text-align:center;
	border-radius:5px;
	background-color:#8caaaa;
	border:solid 1px #8caaaa;
	line-height:100%;
	color:#FFFFFF;
	text-decoration:none;
	font-size:12px;
	transition:background-color 0.2s ease 0s,color 0.2s ease 0s;
}


.tt_head,
.tt_row{
width:100%;
box-sizing:border-box;
flex-shrink: 0;
}
.tt_head{
	background-color:#FFFFFF;
}

.tt_time{
box-sizing:border-box;
background-color:#FFFFFF;
}
.tt_stage{
box-sizing:border-box;
}
.tt_stage.tt_stage17 {
	background: #30a372;
    color: white;
}
.li_stage17 a {
	background: #30a372 !important;
    color: white;
}
.li_stage17 a:hover {
	background: #30a372 !important;
}
.tt_demo{
box-sizing:border-box;
}
.tt_head .tt_demo{
position:relative;
}
.tt_head .tt_demo .label_sticky{
	position:absolute;
	top:50%;
	left:0%;
	transform:translate(0%,-50%);
	display:inline-block;
	padding-left:12px;
	padding-right:12px;
}

#tab_stage{
display:none;
}


.eventtimetable_title_date{
	display:none;
	width:100%;
	max-width:1080px;
	margin:4% auto 10px;
	font-size:120%;
	color:#b05d89;
	padding:0.2em 0.5em;
	border:2px solid #b05d89;
	box-sizing:border-box;
	text-align:center;
}
.eventtimetable_title_date.current{
	display:block;
	
}

#select_timetable_stage{
	display:none;
}
#timetablewrap{
	font-size:12px;
	display:none;
	position:relative;
}
#timetablewrap.current{
	display:block;
}


#tt_time_topfixed{
		position:fixed;
		border-top:solid 1px #666666;
		border-bottom:solid 1px #666666;
		border-right:solid 1px #666666;
		border-left:solid 1px #666666;
		height:36px;
		padding:6px 0px 6px;
		box-sizing:border-box;
		text-align:center;
		background-color:#FFFFFF;
		z-index:40;
		bottom:0%;
		top:auto;
		font-size:11px;
		text-align:center;
		width:51px !important;
	display:none;
}
	#tt_time_topfixed.ovx.show{
		
		display:block;
		
	}
	
.p_bottom #tt_time_topfixed{
	position:absolute;
}


#timetable_fixed_wrap{
	display:none;
	position:fixed;
	width:100%;
	z-index:30;
	background-color:#FFFFFF;
	margin:0% auto;
	left:50%;
	transform:translate(-50%,0%);
}
#timetable_fixed_wrap.ovx{
	overflow-x:hidden;
}
#timetable_fixed{
	width:100%;
	z-index:20;
	margin: 3.5% auto 0%;
	box-sizing:border-box;
	border-left:solid 1px #666666;
}

#timetable_fixed_wrap.show{
	display:block;
}
#timetable_fixed .tt_row{
	display:flex;
	flex-wrap:wrap;
}
#timetable_fixed .tt_head .tt_demo,
#timetable_fixed .tt_head .tt_stage{
	border-right:solid 1px #666666;
	border-top:solid 1px #666666;
	border-bottom:solid 1px #666666;
	height:36px;
	padding:5px;
	box-sizing:border-box;
	text-align:center;
}




#timetable_fixed .tt_head .tt_time{
	background-color:#FFFFFF;
	border-top:solid 1px #666666;
	border-right:solid 1px #666666;

	border-bottom:solid 1px #666666;
	text-align:center;
	padding:5px 0px;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	height:36px;
	text-align:center;


}

#timetable_time_fixed_wrap{
	width:100%;
	box-sizing:border-box;
	position:relative;
	height:1px;
	margin:0% auto;
	top:1px;
	
}
	

#timetable_time_fixed{
		position:absolute;
		width:51px !important;
		top:0px;
		left:0px;
		background-color:#FFFFFF;
		z-index:20;
display:none;
}
#timetable_time_fixed.ovx{
display:block;
}

#timetable_time_fixed .tt_time{
	background-color:#FFFFFF;
	border-top:solid 1px #666666;
	border-right:solid 1px #666666;
	border-left:solid 1px #666666;
	width:100%;
	text-align:center;
	padding:5px;
	box-sizing:border-box;
	display:flex;
	align-items:start;
	justify-content:center;
	height:36px;

}
#timetable_time_fixed .tt_head .tt_time{
	height:36px;
	border-top:solid 1px #666666;
	border-bottom:solid 1px #666666;
}

#timetable_time_fixed .tt_body .tt_time{
height:480px;
}
.content11 #timetable_time_fixed .tt_body .tt_time11,
#timetable_time_fixed .tt_body .tt_time10{
border-top:none;
}

#timetable{
z-index:1;
box-sizing:border-box;
position:relative;

background-color:#ECECEC;
border-bottom:solid 1px #666666;
border-left:solid 1px #666666;
margin:0 auto;
left:0% !important;
transform:translate(0%,0%) !important;

}
#timetable .tt_body{
	position:relative;
}
#timetable .tt_demo,
#timetable .tt_stage{

border-right:solid 1px #666666;
padding:5px;
box-sizing:border-box;
text-align:center;
}

#timetable .tt_head .tt_demo,
#timetable .tt_head .tt_stage{
	border-top:solid 1px #666666;
	border-bottom:solid 1px #666666;
	height:36px;
}
#timetable .tt_head .tt_demo,
#timetable_fixed .tt_head .tt_demo{
	background-color:#504BFF;
	color:#FFFFFF;
}


#timetable .tt_body .tt_demo,
#timetable .tt_body .tt_stage{
height:480px;
border-top:none;
}


#timetable .tt_time{
border-top:solid 1px #666666;
border-right:solid 1px #666666;
text-align:center;
padding:5px;
box-sizing:border-box;
display:flex;
align-items:start;
justify-content:center;
}


#timetable .tt_head .tt_time{
	height:36px;
	align-items:center;
	line-height:100%;
	border-top:solid 1px #666666;
	border-bottom:solid 1px #666666;
}
.content11 #timetable .tt_body .tt_time11,
#timetable .tt_body .tt_time10{
border-top:none;
}

#timetable .tt_body .tt_time{

height:480px;
}

#timetable .tt_row{
	display:flex;
	flex-wrap:wrap;
}
/* ヘッダーの「ブースデモ」枠を、コンテンツ（4列分など）に合わせて広げる */
.tt_head .tt_demo, 
.tt_body .tt_demo {
    /* 170px(1列の幅) × 4列 = 680px のように、コンテンツの実寸に合わせる */
    width: 680px !important; 
    min-width: 680px !important;
    flex: 0 0 680px !important;
}


.tt_stage1{
/*Dホール*/
	background-color:#e87489;
	color:#FFFFFF;
}
.tt_stage5{
/*ホワイエ*/
	background-color:#a37647;
	color:#FFFFFF;
}
.tt_stage7{
/*ウェルカム*/
	background-color:#9cc247;
	color:#FFFFFF;
}
.tt_stage8{
/*GEN*/
	background-color:#582785;
	color:#FFFFFF;
}

.tt_stage9{
/*海辺*/
	background-color:#00a7e6;
	color:#ffffff;
}

.tt_stage10{
/*ウクレレ*/
	background-color:#4cbd38;
	color:#FFFFFF;
}
.tt_stage11{
/*AGM*/
	background-color:#FFA13C;
	color:#FFFFFF;
	font-size:90%;
}

.eventdatawrap{
position:absolute;
top:0px;
right:0px;
height:100%;
width:100%;

overflow:hidden;
}
.eventdata{
display:none;
position:absolute;
top:0px;
right:0px;
height:150%;
width:100%;
overflow:hidden;

}
.eventdata.current{
display:block;
}

.ev{
	position:absolute;

	box-sizing:border-box;
	border-top:solid 1px #999999;
	border-bottom:solid 1px #999999;
	background-color:#EAFAF1;
	color:#000000;
	padding:15px 5px 5px;
	box-sizing:border-box;
	word-break: break-all;
}


.ev a{
	display:block;
	line-height:140%;
	text-align:center;
	text-decoration:none;
}


.ev a figure{
	display:block;
	width:70%;
	max-width:80px;
	height:auto;
	margin: 0 auto;
}
.ev a figure img{
	width:100%;
}

.ev a .title{
	width:100%;
	font-size:90%;
	line-height:100%;
	text-align:center;
	text-decoration:none;
	display:block;
}
.ev a .artist{
	width:100%;
	font-size:90%;
	line-height:100%;
	text-align:center;
	text-decoration:none;
	display:block;
	padding:5px;
}

.ev a .presents{
	width:100%;
	font-size:80%;
	line-height:100%;
	text-align:center;
	text-decoration:none;
	display:block;
	padding:5px;
	box-sizing:border-box;
	opacity:0.8;
}
.ev.noimg a figure{
	display:none;
}

.ev.evstageid5{
background-color:rgba(163, 118, 71,0.3);
}
.ev.evstageid1{
background-color:rgba(232, 116, 137,0.3);
}
.ev.evstageid11{
background-color:rgba(255, 161, 60,0.5);
}
.ev.evstageid7{
background-color:rgba(156, 194, 71,0.5);
}
.ev.evstageid9{
background-color:rgba(0, 167, 230,0.3);
}
.ev.evstageid10{
background-color:rgba(76, 189, 56 ,0.3);
}
.ev.evstageid8{
background-color:rgba(88, 39, 133,0.3);
}






.evtime_10_0,
.evtime_10_00{
	top:0px;
}
.evtime_10_10{
	top:80px;
}
.evtime_10_15{
	top:120px;
}
.evtime_10_20{
	top:160px;
}
.evtime_10_30{
	top:240px;
}
.evtime_10_40{
	top:320px;
}
.evtime_10_45{
	top:360px;
}
.evtime_10_50{
	top:400px;
}
.evtime_11_0,
.evtime_11_00{
	top:480px;
}
.evtime_11_10{
	top:560px;
}
.evtime_11_15{
	top:600px;
}
.evtime_11_20{
	top:640px;
}
.evtime_11_30{
	top:720px;
}
.evtime_11_40{
	top:800px;
}
.evtime_11_45{
	top:840px;
}
.evtime_11_50{
	top:880px;
}
.evtime_12_0,
.evtime_12_00{
	top:960px;
}
.evtime_12_10{
	top:1040px;
}
.evtime_12_15{
	top:1080px;
}
.evtime_12_20{
	top:1120px;
}
.evtime_12_30{
	top:1200px;
}
.evtime_12_40{
	top:1280px;
}
.evtime_12_45{
	top:1320px;
}
.evtime_12_50{
	top:1360px;
}
.evtime_13_0,
.evtime_13_00{
	top:1440px;
}
.evtime_13_10{
	top:1520px;
}
.evtime_13_15{
	top:1560px;
}
.evtime_13_20{
	top:1600px;
}
.evtime_13_30{
	top:1680px;
}
.evtime_13_40{
	top:1760px;
}
.evtime_13_45{
	top:1800px;
}
.evtime_13_50{
	top:1840px;
}
.evtime_14_0,
.evtime_14_00{
	top:1920px;
}
.evtime_14_10{
	top:2000px;
}
.evtime_14_15{
	top:2040px;
}
.evtime_14_20{
	top:2080px;
}
.evtime_14_30{
	top:2160px;
}
.evtime_14_40{
	top:2240px;
}
.evtime_14_45{
	top:2280px;
}
.evtime_14_50{
	top:2320px;
}
.evtime_15_0,
.evtime_15_00{
	top:2400px;
}
.evtime_15_10{
	top:2480px;
}
.evtime_15_15{
	top:2520px;
}
.evtime_15_20{
	top:2560px;
}
.evtime_15_30{
	top:2640px;
}
.evtime_15_40{
	top:2720px;
}

.evtime_15_45{
	top:2760px;
}
.evtime_15_50{
	top:2800px;
}
.evtime_16_0,
.evtime_16_00{
	top:2880px;
}
.evtime_16_10{
	top:2960px;
}
.evtime_16_15{
	top:3000px;
}
.evtime_16_20{
	top:3040px;
}
.evtime_16_30{
	top:3120px;
}
.evtime_16_40{
	top:3200px;
}
.evtime_16_45{
	top:3240px;
}
.evtime_16_50{
	top:3280px;
}
.evtime_17_0,
.evtime_17_00{
	top:3360px;
}
.evtime_17_10{
	top:3440px;
}

.evtime_17_15{
	top:3480px;
}
.evtime_17_20{
	top:3520px;
}

.evtime_17_30{
	top:3600px;
}
.evtime_17_40{
	top:3680px;
}
.evtime_17_45{
	top:3720px;
}
.evtime_17_50{
	top:3760px;
}
.evtime_18_0,
.evtime_18_00{
	top:3840px;
}
.evtime_18_10{
	top:3920px;
}

.evtime_18_15{
	top:3960px;
}
.evtime_18_20{
	top:4000px;
}
.evtime_18_30{
	top:4080px;
}
.evtime_18_40{
	top:4160px;
}

.evtime_18_45{
	top:4200px;
}
.evtime_18_50{
	top:4240px;
}
.evtime_19_0,
.evtime_19_00{
	top:4320px;
}

.evtime_19_10{
	top:4400px;
}

.evtime_19_15{
	top:4440px;
}

.evtime_19_20{
	top:4480px;
}

.evtime_19_30{
	top:4560px;
}

.evtime_19_40{
	top:4640px;
}

.evtime_19_45{
	top:4680px;
}

.evtime_19_50{
	top:4720px;
}

.evtime_20_0,
.evtime_20_00{
	top:4800px;
}

.evtime_20_10{
	top:4880px;
}

.evtime_20_15{
	top:4920px;
}

.evtime_20_20{
	top:4960px;
}

.evtime_20_30{
	top:5040px;
}

.evtime_20_40{
	top:5120px;
}

.evtime_20_45{
	top:5160px;
}

.evtime_20_50{
	top:5200px;
}

.evtime_21_0,
.evtime_21_00{
	top:5280px;
}



.evdur0_15{
	height:121px;
}
.evdur0_20{
	height:161px;
}
.evdur0_30{
height:241px;
}
.evdur0_40{
	height:321px;
}
.evdur0_45{
	height:361px;
}

.evdur0_50{
	height:401px;
}



.evdur1_0{
	height:481px;
}
.evdur1_20{
	height:641px;
}
.evdur1_30{
	height:721px;
}
.evdur1_40{
	height:801px;
}



.evdur2_0{
	height:961px;
}
.evdur2_20{
	height:1121px;
}

.evdur2_30{
	height:1201px;
}
.evdur2_40{
	height:1281px;
}

.label_time{
	position:absolute;
	padding:2px;
	font-size:75%;
	background-color:#F40E0E;
	color:#FFFFFF;
	top:0px;
	left:0px;
	line-height:100%;
	z-index:5;
}
.label_time_end{
	position:absolute;
	padding:2px;
	font-size:75%;
	background-color:#999999;
	color:#FFFFFF;
	top:auto;
	left:0%;
	bottom:0px;
	line-height:100%;
	z-index:5;
	display:block;
}
#tab_timetable_fixed{

	position:fixed;

		
	z-index:35;
	display:none;
	margin:0 auto;
	max-width:1200px;
	width:100%;
	left:50%;
	transform:translate(-50%,0%);
	background-color:#FFFFFF;
	padding:10px 60px 24px;


}
.p_bottom #tab_timetable_fixed{
position:absolute;

}
.p_bottom #timetable_fixed_wrap{
position:absolute;
}
#tab_timetable_fixed.show{
display:flex;
}


.timetable_scroll{
	max-width:1080px;
	width:100%;
	margin:0% auto;
}
.timetable_scroll.ovx{
	overflow-x:scroll;
}
.timetable_scroll.ovx #timetable{
	left:0%;
	transform:translate(0%,0%);
}

@media screen and (max-width: 770px) {

#tab_timetable{
width:100%;
margin-bottom:2%;
}
#tab_timetable_fixed{
padding:0 5vw 5%;
}


	#timetable_fixed_wrap{
		width:100%;
		overflow:hidden;	
		box-sizing:border-box;
	}

	#timetable_fixed_wrap .tt_time{
		font-size:11px;	
		text-align:center;
	}
	

	.timetable_scroll{
		width:100%;
		overflow-x:scroll;
		position:relative;

	}
	#timetable_fixed{
		border-left:none;
		margin:5% auto 0%;

	}
	#timetable_time_fixed{

		display:block;
	}
	#timetable{
		border-left:solid 1px #FFFFFF;
		left:0%;
		transform:translate(0%,0%);
	}
	
	#timetable .tt_time{
		opacity:0;	
	}
	
	#select_timetable_stage{
		display:inline-block;
	}
	
	.listtab li a{
		font-size:3.2vw;
		padding:0.2em;
	}
	
	#tab_stage{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:7vw;
	}
	
	
	#tab_stage.listtab li{
		width:50%;
		display:block;
		margin:5% 0% 0%;
		box-sizing:border-box;
		padding:0% 0.5vw;
		font-size:2vw;
	}
	#tab_stage.listtab li a{ 
			padding:1vw 2vw;
			display:flex;
			justify-content:center;
			align-items:center;
	}

	#tab_stage.listtab li.li_stage1 a{
		background-color:#e87489;
		border:solid 1px #e87489;
	}
	#tab_stage.listtab li.li_stage5 a{
		background-color:#a37647;
		border:solid 1px #a37647;
	}
	#tab_stage.listtab li.li_stage11 a{
		background-color:#ffa13c;
		border:solid 1px #ffa13c;
	}
	
	#tab_stage.listtab li.li_stage8 a{
		background-color:#582785;
		border:solid 1px #582785;
	}
	#tab_stage.listtab li.li_stage10 a{
		background-color:#4cbd38;
		border:solid 1px #4cbd38;
	}
	#tab_stage.listtab li.li_stage9 a{
		background-color:#00a7e6;
		border:solid 1px #00a7e6;
	}
	#tab_stage.listtab li.li_stage7 a{
		background-color:#9CC247;
		border:solid 1px #9CC247;
	}
	#tab_stage.listtab li.li_stage_demo a{
		background-color:#504BFF;
		border:solid 1px #504BFF;
	}
}



/*modal*/
.eventmodal_a,
.eventmodal{
	position:fixed;
	max-width:880px;
	width:92vw;
	background-color:#FFFFFF;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	box-sizing:border-box;
	z-index:1200;
	display:none;
}
.eventmodal_inr{
	box-sizing:border-box;
	padding:35px;
	display:flex;
	flex-wrap:wrap;
}
.eventmodal_inr figure{
	width:45%;
}
.eventmodal_inr figure img{
	max-width:100%;
	max-height:60vh;
}
.eventmodal_text{
	box-sizing:border-box;
	padding-left:30px;
	width:55%;
}
.eventmodal_comment{
		max-height:40vh;
		overflow-y:auto;

}
.eventmodal_comment a{
	text-decoration:none;
	color:#0E69F4;
}
.eventmodal_text .eventmodal_titlewrap{
	margin-bottom:25px;
}

.eventmodal_text h4.eventmodal_title{
	font-size:18px;
	margin-bottom:0px;
	margin-top:0%;
	padding-bottom:5px;
}
.eventmodal_text h4.eventmodal_artist{
	font-weight:400;
	margin-top:0%;
	margin-bottom:0px;
	font-size:22px;
	padding-bottom:5px;
}
.eventmodal_text h4.eventmodal_title.large{
	font-size:22px;
}

.eventmodal_text h6.eventmodal_presents{
	font-weight:400;
	margin-top:0%;
	margin-bottom:0px;
	font-size:14px;
}
.eventmodal_data{
	display:flex;
	flex-wrap:wrap;
	padding-bottom:7px;

}
.eventmodal_data.guest{
padding-top:15px;
}
.eventmodal_data.guest .gestmark{
	width:100%;
	display:block;
	font-weight:700;
}
.eventmodal_data.guest .gestmark .small{
	margin-left:10px;
	font-weight:400;
	font-size:85%;
}

.eventmodal_data .eventmodal_stage{
	width:44%;
}
.eventmodal_data .eventmodal_time{
	width:56%;
}

.evdata_stage{
display:inline-block;
padding:3px 12px;
line-height:100%;
margin-right:0px;
margin-left:0px;
border-radius:12px;
}
.evdata_stage.stage1{
/*Dホール*/
	background-color:#e87489;
	color:#FFFFFF;
}
.evdata_stage.stage5{
/*ホワイエ*/
	background-color:#a37647;
	color:#FFFFFF;
}
.evdata_stage.stage7{
/*ウェルカム*/
	background-color:#9cc247;
	color:#FFFFFF;
}
.evdata_stage.stage8{
/*GEN*/
	background-color:#582785;
	color:#FFFFFF;
}

.evdata_stage.stage9{
/*海辺*/
	background-color:#00a7e6;
	color:#ffffff;
}

.evdata_stage.stage10{
/*ウクレレ*/
	background-color:#4cbd38;
	color:#FFFFFF;
}
.evdata_stage.stage11{
/*AGM*/
	background-color:#FFA13C;
	color:#FFFFFF;
}
.btn_close_modal{
	position:absolute;
	top:5px;
	right:5px;
	left:auto;
	width:30px;
	height:30px;
}
.btn_close_modal:before{
width:100%;
height:1%;
background-color:#000000;
display:block;
content:"";
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%) rotate(45deg);
}
.btn_close_modal:after{
width:100%;
height:1%;
background-color:#000000;
display:block;
content:"";
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%) rotate(-45deg);
}


.btn_close_modal span{
	opacity:0;
}
@media screen and (max-width: 770px) {
	.eventmodal{
		width:98vw;
		height:83vh;
		overflow:auto;
		top:17vw;
		transform:translate(-50%,0%);
	}
	.eventmodal_inr{
		padding:10vw 5vw 5vw;
		display:block;	
		box-sizing: border-box; 
	}
	.eventmodal_inr figure{
		width:100%;
		text-align:center;
		margin-bottom:5vw;
	}
	
	.eventmodal_inr figure img{
		max-width:100%;
		width:auto;
		height:auto;
		max-height:40vh;
		display:block;
		margin:0 auto;
	}

	#eventmodal60 .eventmodal_inr figure img,
	#eventmodal3 .eventmodal_inr figure img{
		max-width:100%;
		width:auto;
		height:auto;
		max-height:35vh;
		display:block;
		margin:0 auto;
	}
	#eventmodal14 .eventmodal_inr figure img,
	#eventmodal_a14 .eventmodal_inr figure img{
		max-width:100%;
		width:auto;
		height:auto;
		max-height:30vh;
		display:block;
		margin:0 auto;
	}
	#eventmodal14 .eventmodal_comment,
	#eventmodal_a14 .eventmodal_comment{
		max-height:18vh;
	}
	
	
	
	.eventmodal_text .eventmodal_titlewrap{
	margin-bottom:3vw;
}

	
	.eventmodal_text h4.eventmodal_title {
		margin-bottom:0vw;
	}
	.eventmodal_text{
		width:100%;
		padding-left:0%;

	}
	.btn_close_modal{
		top:1vw;
		right:1vw;
		width:9vw;
		height:9vw;	
	}
	.eventmodal_comment{
		max-height:25vh;
		overflow-y:auto;
	}


	#eventmodal3 .eventmodal_comment{
		max-height:25vh;
	}
	
	#eventmodal58 figure img{
		max-height:37vh;	
	}
	
	#eventmodal58 .eventmodal_comment{
		max-height:22vh;
	}
	
}

/**list**/
.eventlistwrap{
max-width:1080px;
width:100%;
margin:4% auto 0%;
display:none;
flex-wrap:wrap;
}
.sec-timetable .eventlistwrap{
	display:none;
}

.sec-timetable .eventlistwrap.current{
	display:flex;
}
.eventbox{
width:31.33%;
margin:1%;
border-radius:5px;
box-sizing:border-box;
padding:1%;
}
.eventbox a{
	text-decoration:none;
}
.eventbox figure{
	display:block;
	position:relative;
	width:100%;
}
.eventbox figure:before{
	content:"";
	display:block;
	width:100%;
padding-top:100%;
}

.eventbox figure img{
	max-width:100%;
	max-height:100%;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
.eventbox_data{
display:flex;
flex-wrap:wrap;
font-size:75%;
padding-top:15px;
align-items: flex-start;
align-content: flex-start;
}
.eventbox_data .eventbox_stage{
	display:inline-block;
	padding:2px 15px;
	border-radius:15px;
	color:#FFFFFF;
	width:50%;
	box-sizing:border-box;
	
}
.eventbox_data .eventbox_datetime{
	margin:0px;
	padding:0% 0% 0% 15px;
	box-sizing:border-box;
	width:50%;
	list-style-type:square;
}
.evboxstage5{
background-color:rgba(163, 118, 71,0.1);
}
.evstageid5{
background-color:rgba(163, 118, 71,0.3);
}
.evboxstage1{
background-color:rgba(232, 116, 137,0.1);
}
.evstageid1{
background-color:rgba(232, 116, 137,0.3);
}
.evboxstage11{
background-color:rgba(255, 161, 60,0.1);
}
.evstageid11{
background-color:rgba(255, 161, 60,0.8);
}
.evboxstage7{
background-color:rgba(156, 194, 71,0.1);
}
.evstageid7{
background-color:rgba(156, 194, 71,0.8);
}
.evboxstage9{
background-color:rgba(0, 167, 230,0.1);
}
.evstageid9{
background-color:rgba(0, 167, 230,0.3);
}
.evboxstage10{
background-color:rgba(76, 189, 56 ,0.1);
}
.evstageid10{
background-color:rgba(76, 189, 56 ,0.3);
}
.evboxstage8{
background-color:rgba(88, 39, 133,0.1);
}
.evstageid8{
background-color:rgba(88, 39, 133,0.3);
}
.evstageid_demo{
background-color:rgba(80, 75, 255,0.3);
}
.ev.evstageid_demo{
	padding:5px 2px;
	
	border-right:solid 1px #666666;
}
/*
.ev.evstageid_demo a{
	box-sizing:border-box;
	padding-left:35px;
	line-height:110%;

}
*/
.ev.evstageid_demo a span.title{
	line-height:120%;
	font-size:75%;
	display:block;
}
.ev.evstageid_demo a span.presents{
	line-height:120%;
	display:block;
	font-size:75%;
}
.ev.evstageid_demo a span.artist{
	line-height:120%;
	display:block;
	font-size:75%;
}

.ev_topdata{
	position:absolute;
	top:0%;
	left:0%;
}
.ev_topdata .label_time{
	position:static;
}

.currenttimebar{
	position:absolute;
	width:calc(100% - 50px);
	height:7px;
	background-color:#FF0000;
	z-index:30;
	right:0%;
	top:0%;

}


.soon:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	box-sizing:border-box;
	border:solid 5px #FFC128;
	animation: flash 1s linear infinite;
	z-index:1;
	position:absolute;
	top:0%;
	left:0%;
}
.ongoing:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	box-sizing:border-box;
	border:solid 5px #FF4B4B;
	animation: flash 1s linear infinite;
	z-index:1;
	position:absolute;
	top:0%;
	left:0%;
}

@keyframes flash {
	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

.sec-timetable.content11 #timetable_time_fixed .tt_row10,
.sec-timetable.content11 #timetable .tt_row10{
	display:none;
}
.sec-timetable.content11 #timetable .eventdata {
	top:0px;
}
.sec-timetable.content12 #timetable_time_fixed .tt_row18,
.sec-timetable.content12 #timetable .tt_row18{
	display:none;
}
.label_special{
	display:inline-block;
	font-size:75%;
	padding:3px;
	line-height:100%;
	background-color:#CC0000;
	color:#FFFFFF;
}

.label_boothnum{
	display:inline-block;
	width:100%;
	font-size:75%;
	padding:2px;
	line-height:100%;
	color:#FFFFFF;
	position:absolute;
	top:2px;
	left:0%;
	transform:translate(0%,100%);
	box-sizing:border-box;
}
.label_boothnum_ukulele{
	background-color:#45b035;
	color:#FFFFFF;	
}
.label_boothnum_gen{
	background-color:#582785;
	color:#FFFFFF;
}


.label_boothnum_aco{
	background-color:#00a7ea;
	color:#FFFFFF;	
}
.label_boothnum_f{
	background-color:#ae8047;
	color:#FFFFFF;	
}
.label_boothnum_ele{
	background-color:#e60012;
	color:#FFFFFF;	
}

.ev.evstageid_demo figure{
	display:block;
	width:70%;
	max-width:60px;
	height:auto;
	margin: 0 auto;
}

.ev.evstageid_demo .label_time{
width:34px;
	box-sizing:border-box;
}

.ev.evstageid_demo a.noimg span.title{
	transform:translate(-50%,-50%);
	display:block;
	top:50%;
	left:50%;
	position:absolute;
	box-sizing:border-box;
	text-align:center;

}
.ev.evstageid_demo a.noimg span.presents{
	transform:translate(-50%,-50%);
	display:block;
	top:50%;
	left:50%;
	position:absolute;
	box-sizing:border-box;
	text-align:center;

}


.eventmodal_ex .label_boothnum{
	display:inline-block;
	width:auto;
	font-size:100%;
	padding:2px 5px;
	margin-right:3px;
	line-height:100%;
	color:#FFFFFF;
	position:static;
	top:0%;
	left:0%;
	transform:translate(0%,0%);
	box-sizing:border-box;
}

.ev .onecoinreserve{
	background-color:#FF0000;
	color:#FFFFFF;
	padding:2px 7px;
	border-radius:10px;
	display:block;
	font-size:70%;
	margin:0 auto;
	width:auto;
	line-height:100%;
}

.ev_guest{
padding-top:15px;
}
.ev_guest_title{
display:block;
text-align:center;
font-weight:700;
}
.ev_guest_artist{
display:block;
text-align:center;
}
.eventmodal_data_notice{
font-size:80%;
}
.link_oncoin{
display:block;
color:#0E69F4;
}
.link_oncoin:visited{
color:#0E69F4;
}

.desc_onecoin{
width:100%;
box-sizing:border-box;
padding:7px 10px;
background-color:#EFEFEF;
font-size:85%;
margin-bottom:7px;
}
.desc_onecoin a{
display:block;
color:#DB5D5D;
}


#about_reserve{

max-width:1080px;
margin:0% auto;
box-sizing:border-box;
}
#about_reserve h3{
	display:block;
	padding:15px;
	background-color:#a8bd18;
	color:#FFFFFF;
	
}
.link_reserveseat{
	display:block;
	padding:1em;
	width:75%;
	border:solid 2px #a8bd18;
	color:#a8bd18;
	text-align:center;
	border-radius:5px;
	text-decoration:none;
	font-size:125%;
	font-weight:700;
	margin:20px auto 0%;
	line-height:1.6em;
	letter-spacing:0.08em;
	background-color:#FFFFFF;
	transition:all 0.3s;
}
.link_reserveseat:hover{
	color:#FFFFFF;
	background-color:#a8bd18;
}

@media screen and (max-width: 770px) {
	#sec-artist.sec-timetable .sec-inr{
		padding-bottom:16vw;
	}
	.link_reserveseat{
		font-size:3.5vw;	
		
	}
}


/* ========================================================
   1. 枠組みの高さ設定（1時間 = 360px）
======================================================== */
#timetable_time_fixed .tt_body .tt_time,
#timetable .tt_body .tt_demo, 
#timetable .tt_body .tt_stage,
#timetable .tt_body .tt_time {
    height: 360px !important;
}

/* ========================================================
   2. イベント自体の高さ（1分 = 6px）
======================================================== */
.evdur0_15 { height: 91px !important; }   /* 15分 */
.evdur0_20 { height: 121px !important; }  /* 20分 */
.evdur0_25 { height: 151px !important; }  /* 25分 */
.evdur0_30 { height: 181px !important; }  /* 30分 */
.evdur0_45 { height: 271px !important; }  /* 45分 */
.evdur1_0  { height: 361px !important; }  /* 60分 */
.evdur1_30 { 
    height: 541px !important; 
}
.evdur1_0 { 
    height: 361px !important; 
}
.evdur1_30 { 
    height: 541px !important; 
}
.evtime_19_0, .evtime_19_00 { 
    top: 3240px !important; /* (19-10)*360 */
}

/* ========================================================
   3. 各時間の開始位置（top）
======================================================== */
/* 10時台 */
.evtime_10_0, .evtime_10_00 { top: 0px !important; }
.evtime_10_5  { top: 30px !important; }
.evtime_10_15 { top: 90px !important; }
.evtime_10_30 { top: 180px !important; }
/* 11時台 */
.evtime_11_0, .evtime_11_00 { top: 360px !important; }
.evtime_11_5  { top: 390px !important; }
.evtime_11_30 { top: 540px !important; }
.evtime_11_40 { top: 600px !important; }
/* 12時台 */
.evtime_12_0, .evtime_12_00 { top: 720px !important; }
.evtime_12_5  { top: 750px !important; }
.evtime_12_15 { top: 810px !important; }
.evtime_12_30 { top: 900px !important; }
.evtime_12_40 { top: 960px !important; }
.evtime_12_45 { top: 990px !important; }
.evtime_12_50 { top: 1020px !important; }
/* 13時台 */
.evtime_13_0, .evtime_13_00 { top: 1080px !important; }
.evtime_13_15 { top: 1170px !important; }
.evtime_13_25 { top: 1230px !important; }
.evtime_13_30 { top: 1260px !important; }
.evtime_13_50 { top: 1380px !important; }
/* 14時台 */
.evtime_14_0, .evtime_14_00 { top: 1440px !important; }
.evtime_14_15 { top: 1530px !important; }
.evtime_14_25 { top: 1590px !important; }
.evtime_14_30 { top: 1620px !important; }
.evtime_14_45 { top: 1710px !important; }
/* 15時台 */
.evtime_15_0, .evtime_15_00 { top: 1800px !important; }
.evtime_15_35 { top: 2010px !important; }
/* 16時台 */
.evtime_16_0, .evtime_16_00 { top: 2160px !important; }
.evtime_16_10 { top: 2220px !important; }
.evtime_16_15 { top: 2250px !important; }
.evtime_16_30 { top: 2340px !important; }
.evtime_16_45 { top: 2430px !important; }
/* 17時台 */
.evtime_17_0, .evtime_17_00 { top: 2520px !important; }
.evtime_17_30 { top: 2700px !important; }
/* 18時以降 */
.evtime_18_0, .evtime_18_00 { top: 2880px !important; }
.evtime_19_0, .evtime_19_00 { top: 3240px !important; }
.evtime_20_0, .evtime_20_00 { top: 3600px !important; }
.evtime_21_0, .evtime_21_00 { top: 3960px !important; }
.ev.evstageid_demo.evstage5.evtime_10_45.evdur0_15 {
	top: 270px;
}
.ev.evstageid_demo.evstage5.evtime_17_15.evdur0_15 {
	top: 3310px;
}
/* ========================================================
   4. 海辺等のステージ(evstageid9) 強制補正（1分=6px版）
======================================================== */
.evstageid9 {
    position: absolute !important;
    box-sizing: border-box !important;
    z-index: 10;
}
/* --- 9時台（海辺 9:30など） --- */
.evtime_9_30 { top: -180px !important; } /* (9.5-10)*360 */

/* --- 10時台 --- */
.evtime_10_40 { top: 240px !important; } /* 40*6 */

/* --- 11時台 --- */
.evtime_11_0, .evtime_11_00 { top: 360px !important; }
.evtime_11_15 { top: 450px !important; } /* 360 + 90 */
.evtime_11_45 { top: 630px !important; }
.evtime_11_50 { 
    top: 660px !important; 
}

/* --- 12時台 --- */
.evtime_12_25 { top: 870px !important; } /* 720 + 150 */
/* --- 13時台 --- */
.evtime_13_0, .evtime_13_00 { top: 1080px !important; }
.evtime_13_15 { top: 1170px !important; }
.evtime_13_30 { top: 1260px !important; }
.evtime_13_45 { top: 1350px !important; }
.evtime_13_50 { top: 1380px !important; }

/* --- 14時台 --- */
.evtime_14_25 { top: 1590px !important; }

/* --- 15時台 --- */
.evtime_15_0, .evtime_15_00 { top: 1800px !important; }
.evtime_15_15 { top: 1890px !important; } /* ブースデモ 15:15 */
.evtime_15_30 { top: 1980px !important; }
.evtime_15_35 { top: 2010px !important; } /* 海辺 15:35 */
.evtime_15_45 { top: 2070px !important; }

/* --- 16時台 --- */
.evtime_16_10 { top: 2220px !important; }
.evtime_16_45 { top: 2430px !important; }
.ev.evstageid_demo.evstage7.evtime_14_15.evdur0_15,
.ev.evstageid_demo.evstage7.evtime_12_15.evdur0_15,
.ev.evstageid_demo.evstage7.evtime_16_15.evdur0_15,
.ev.evstageid_demo.evstage7.evtime_11_15.evdur0_15,
.ev.evstageid_demo.evstage7.evtime_13_15.evdur0_15,
.ev.evstageid_demo.evstage7.evtime_15_15.evdur0_15
 {
	padding: 0;
}
/*モーダル画像*/
/* PC版：左側の画像エリアだけをスクロールさせる */
@media screen and (min-width: 771px) {
    .eventmodal_inr {
        display: flex !important;
        align-items: flex-start !important;
        max-height: 80vh; /* モーダル自体が画面を突き抜けないように制限 */
    }

    .eventmodal_figures_column {
        flex: 0 0 300px !important; /* 画像の横幅を300pxに固定 */
        max-height: 400px !important; /* ここがポイント：画像エリアの高さを固定 */
        overflow-y: auto !important;  /* 縦スクロールを有効にする */
        padding-right: 10px;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px;
    }

    /* 画像は隠さず、すべて表示（CSSで制御するため style="display:none" は消す） */
    .eventmodal_figures_column img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
    }

    /* 右側のテキストエリア */
    .eventmodal_text {
        flex: 1 !important;
        padding-left: 20px;
    }
}

/*日付調整*/
/* 5月16日(土) 21:00の枠を非表示 */
.tt_row.tt_row21 {
    display: none !important;
}

/* --- 17日(日) 18:00以降をdatasetで消す --- */
/* 親要素 #timetablewrap が 17日のデータ (.eventdata17) を 
  現在表示中 (.current) である場合のみ、その中の 18, 19, 20 を消す 
*/
#timetablewrap:has(.eventdata17.current) .tt_row18,
#timetablewrap:has(.eventdata17.current) .tt_row19,
#timetablewrap:has(.eventdata17.current) .tt_row20 {
    display: none !important;
}

/* JavaScriptの切り替えで section 自体に .content12 が付く場合 

*/
.sec-timetable.content12 .tt_row18,
.sec-timetable.content12 .tt_row19,
.sec-timetable.content12 .tt_row20 {
    display: none !important;
}
/* スマホ版：スクロールさせず、画像の下に文字を出す */
@media screen and (max-width: 770px) {
    .eventmodal_figures_column {
        max-height: none !important;
        overflow-y: visible !important;
    }
	.eventmodal_figures_column img {
		width: 100%;
	}
	.eventmodal {
		width: 90vw;
	}
	.eventmodal_data {
		flex-direction: column;
	}
	.eventmodal_data .eventmodal_stage {
    width: 47%;
	}
}


/* 1. PHPが書き出している 1071px を強制的に「中身の幅」に合わせる */
#timetable, 
#timetable_fixed {
    width: max-content !important; 
    min-width: 100%;
    margin: 0 !important;
    left: 0px !important;
    transform: none !important;
}

/* 2. 背景の各行(tt_row)も右端まで強制拡張 */
.tt_row {
    width: max-content !important;
    min-width: 100% !important;
    display: flex !important;
}

.timetable_scroll,#timetable, #timetable_fixed {
    /*max-width: calc(1080px + 161px) !important;*/
	max-width: initial;
	left: 0;
}
.ttwidth {
    max-width: calc(1080px + 161px) !important;
	left: 0 !important;
	margin: 0 auto !important; 
    left: auto !important;
}
/*画像調整０２*/
.ev.evstageid_demo.evstage6.evtime_14_15.evdur0_15 figure img,
.ev.evstageid_demo.evstage6.evtime_12_15.evdur0_15 figure img,
.ev.evstageid_demo.evstage6.evtime_16_15.evdur0_15 figure img,
.ev.evstageid_demo.evstage6.evtime_13_15.evdur0_15 figure img,
.ev.evstageid_demo.evstage6.evtime_11_15.evdur0_15 figure img,
.ev.evstageid_demo.evstage6.evtime_15_15.evdur0_15 figure img
 {
   /* width: 42px;*/
}
.stagenum5 .evstage4 {
    transform: translate(0px, 0%) !important;
	border-right: 1px solid black;
}
.eventmodal_comment {
    max-height: 35vh !important;
}

.timetable_scroll {
    max-width: 100vw !important;
    width: 100% !important;
    margin: 0 !important;
    left: 0 !important;
    transform: none !important;
    overflow-x: auto !important;
	background: #ececec;
}
.eventdatawrap, 
.eventdata {
    width: max-content !important; 
    min-width: 100%;
    
    /* overflow を visible に統一し、親にスクロールを任せる */
    overflow: visible !important; 
    
    /* 縦方向の余計な隙間（スクロール）が出ないよう高さを指定 */
    height: 100%; 
    max-height: 100%;

    position: absolute;
    top: 0;
    left: 0;
}
/*
#timetable_fixed_wrap {
	 max-width: 1241px !important; 
}
#timetable_fixed {
    width: max-content !important; 
    margin: 0 !important;
}
.tt_demo {
    width: auto !important; 
    flex: 0 0 auto !important; 
    min-width: 340px !important; 
    position: relative;
    display: flex !important;
}
.tt_head .tt_demo, 
.tt_body .tt_demo {
    width: 680px !important;
    min-width: 680px !important;
    max-width: 680px !important; 
    flex: 0 0 680px !important; 
    box-sizing: border-box !important;
}*/

@media screen and (max-width: 770px) {
	#timetable, #timetable_fixed {
	 left: 0px !important;
	max-width: initial;
	}
	/* 1. 見出し（青い部分）の幅を2列分(340px)に広げる */
	.tt_head div[data-stage="demo"],
	.tt_body .tt_demo {

		min-width: 340px !important;
		/*flex: 0 0 340px !important;*/
	}
	.tt_head div[data-stage="demo"] .tt_demo {
		width: 340px !important; 
	}

	/* 背景行が340px分伸びるようにする */
	.tt_row {
		width: max-content !important;
		display: flex !important;
	}
	

}

/* --- 全日共通設定：PHPで9時台が増えたことによる1時間のズレを補正 --- */
/* 全イベントを一律360px下に下げて、10:00=0pxだった基準を9:00基準に合わせます */
#timetablewrap .ev {
    margin-top: 360px !important;
}

/* --- 17日(current) 9:00開始の設定 --- */
#timetablewrap:has(.eventdata17.current) #timetable .eventdata17 {
    top: 0px !important;
}
/* 17日の9:00台のイベント（工藤さん等）だけは、押し下げを無効にして正しい位置へ */
#timetablewrap:has(.eventdata17.current) .ev[class*="evtime_9_"] {
    margin-top: 0px !important;
    top: 180px !important; /* 9:30の位置 */
}

/* --- 16日(current) 10:00開始を維持する設定 --- */
/* 9:00の行を消す */
#timetablewrap:has(.eventdata16.current) .tt_row9 {
    display: none !important;
}
/* 10:00の行を一番上に持ってくるため、コンテンツ全体を1時間分(360px)引き上げる */
#timetablewrap:has(.eventdata16.current) #timetable .eventdata16 {
    top: -360px !important;
}
.tt_time.tt_time9 {
	border-bottom: solid 1px #666666;
}

@media screen and (min-width: 1630px) {
	#wrapper .ttwidth {
    max-width: 100% !important;
	}
	#wrapper .timetable_scroll {
		max-width: 1580px !important;
        width: 100% !important;
        margin: 0 auto !important;
	}

	#wrapper #timetable_fixed_wrap {
		max-width: 1580px !important;
	}
	#wrapper .timetable_scroll {
		overflow-x: unset !important;
	}
	#timetable_fixed {
    left: -170px !important;
	}

}

.about_reserve, .onecoinreserve, .desc_onecoin, .ev .onecoinreserve {
	display: none !important;
}

