@charset "UTF-8";
/* ========================================================
Basic configuration(reset)・Basic layout
======================================================== */
#SUZUKA{width: 100% !important;}
*{margin: 0;padding: 0;}
body{-webkit-text-size-adjust:none;}
.pc{display: none !important;}
.sp{display: block !important;}
.container{
	min-width: auto;
	overflow: hidden;
	font:14px/1.5 "YakuHanJP",BlinkMacSystemFont,-apple-system,Arial,sans-serif;
	padding: 0 0 12% 0;
}
.topicpath,
.contents_head_data_main,
.contents,
.contents_main,
.contents_headline_main,
.footer_main {width: 100%;}
.content {width: 94%;}
.topicpath {
	padding: 1.2% 3%;
	font-size: 10px;
}

.contents_headline {
	padding: 8% 3%;
	font-size: 24px;
}

.contents_main {padding: 8% 0 0;}

.footer_main {padding: 4% 3%;}
footer small{font-size: 10px;}

.c-anchor{top: -64px;}

.btn_detail{margin: 8% auto 0;}
.btn_detail + .btn_detail{margin: 2% auto 0;}


.scrl_box {
	width: 100%;
	overflow: hidden;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
}










/* animate（主にPC）
----------------------------------------------- */
	/* --PC Only-- */
	a img,
	a.c-bnr,
	a .item_ttl,
	a .item_txtbox {transition: none;}
	a.c-bnr:hover,
	a:hover .item_ttl,
	a:hover .item_txtbox,
	.container a:hover img,
	a.btn_detail:hover,
	a .btn_detail:hover {opacity: 1;}
	/* --/PC Only-- */








/* ========================================================
@top
======================================================== */
.top .c-block {margin: 32% 0 0 0;}
.top .content_head + .c-block {margin: 12% auto 0;}









.top .headline strong {
	height: auto;
}
.top .headline:after {content:none;}

.top .contents{margin: 4% auto 0;}

.top .block {
	width: 94%;
	padding: 3% 0 0 0;
}
.top .block_main {
	padding: 0 1%;
}




.top .crosshead{border-radius: 8px;}
table {font-size: 12px;}




.top .mnav a {
	border-radius: 16px;
	padding: 0 3% 3%;
	/* font-size: 14px;　旧3つ*/
	font-size: 12px;
	transition: none;
}
.top .mnav a:before {
	width: 32px;
	height: 32px;
	transition: none;
}
.top .mnav a:after {border-width: 8px;}
.top .mnav a:hover {opacity: 1;}

.top .mnav a:hover:before {top: calc(100% - 6px);}
.top .mnav a:hover:after {top: 100%;}

.top .mnav a .en {
	margin: 0 0 3% 0;
	font-size: 10px;
}
.top .mnav img {
	width: 40%;
	margin: -6% auto 2%;
}
.top .mnav .events img {
	width: 24.5%;
}














/* hours
----------------------------------------------- */
#today-hours {margin: 12% auto;}
#today-hours .hours_ttl{	font-size: 18px;}
#today-hours .num{		font-size: 22px;}
#today-hours .hour {		font-size: 24px;}






/* イベントスケジュール
----------------------------------------------- */
#events {padding: 65px 0 0;}


#eventschedule{margin: 20px auto 0;}




.events_list {
		/* --PC only-- */
		float:none; 
		width: 100%;
		/* --/PC only-- */
	margin: -80px 0 0 0;
}

	/* --PC only-- */
	#events #eventschedule .list a:hover {background-color: #FFF;}
	#events #eventschedule .list a:hover,
	#events #eventschedule .list a:hover .event_ttl {text-decoration:none;}
	#events #eventschedule .photo {
		float: none;
		width: 100%;
		padding: 0;
	}
	#events #eventschedule .data {
		float: none;
		width: 100%;
	}
	#events #eventschedule .photo:after {display: none;}
	/* --/PC only-- */



.ch_tab a span {display: none;}
	.ch_tab a:hover {
		background: #BEED87;
		color: #333;
	}
	.ch_tab .selected a:hover {background-color: #FFF;}


#events #eventschedule .list li:after {top: 10px;}
#events #eventschedule .list a {padding: 35px 0 20px;}
#events #eventschedule .photo img {
	width: 100%;
	height: auto;
}
#events #eventschedule .data {margin: 10px 0 0 0;}








.eventschedule_list a {
	display: flex;
	flex-wrap: wrap;
	padding: 2％ 0 2%;
}
.eventschedule_list .item_ttl,
.eventschedule_list .item_photo,
.eventschedule_list .item_txtbox,
.eventschedule_list .item_tag_box {width: 100%;}
.eventschedule_list .item_photo {order: -1;}
.eventschedule_list .item_tag_box {order: -2;}
.eventschedule_list .item_ttl {
	padding: 2% 0;
	font-size: larger;
}
.eventschedule_list .item_txtbox {padding: 0;}
.eventschedule_list table {margin: 0 0 2%;}
.eventschedule_list th,
.eventschedule_list td {padding: 2% 0;}
.eventschedule_list th {
	width: 20%;
	padding: 2% 4% 2% 2%;
	white-space: normal;
}
.eventschedule_list td {width: auto;}
.eventschedule_list .item_tag_box {padding: 0 0 2%;}
.eventschedule_list .item_tag {padding: .5% 2%;}







	/* --PC only-- */
	#portamento_container {
		float:none; 
		position: static;
	}
	#portamento_container #calender {
		float:none; 
		position: static;
	}
	#portamento_container #calender.fixed {position: static;}
	/* --/PC only-- */

#calender {
	/* --PC only-- */
		float:none;
		width: 100%;
	/* --/PC only-- */
	margin: 10px 0 0 0;
}
#calender .calender_ttl{padding: 0 25px;}
#calender .calender_ttl strong{
	padding: 15px 0 15px 50px;
	background: url(../images/calender.png) 0 45% no-repeat;
	background-size: 40px 42px;
		font-size: 14px;
}
#calender .tab .noselect div,
#calender .tab a {padding: 5px 0;}
#calender thead td {padding:4px 0;}
#calender td a {
	padding:4px 0;
	font-size: 18px;
}

#events #eventschedule small {
	display: block;
	margin: 10px 0 0 0;
}




a.sp_menu_btn{
	display: block;
	width: 96%;
	margin: 10px auto 0;
	padding: 0 2%;
	border-radius: 30px;
	background: #BEED87;
	text-align: center;
	text-decoration:none;
	color: #333;
}
.sp_menu_btn span {
	display: inline-block;
	position: relative;
	padding: 20px 0 20px 30px;
	background: url(../images/calender.png) 0 45% no-repeat;
	background-size: 24px 25px;
}


#sp_menu{
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 30;
}
#sp_menu_main{
	width: 94%;
	margin: -500px auto 0;
	text-align: center;
	opacity:1;
	transition: all 0.3s ease-in;
}
.on #sp_menu_main{
	position: relative;
	margin: 0 auto;
	opacity:1;
}



#container_cover {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20;
	width:100%;
	height: 150%;
	background: #000;
	opacity:0.5;
}
.on #container_cover {display: block;}
#sp_menu_close{
	display: none;
	position: absolute;
	botton: 0;
	left: 50%;
	width: 64px;
	height: 15px;
	margin: 24px auto 0;
	transform: translate(-50%,0);
	padding: 16px 64px;
	overflow: hidden;
	border-radius: 6px;
	background: #363636 url(../images/sp_menu_close.gif) 50% center no-repeat;
	background-size: 64px 15px;
	text-indent: 100%;
	white-space: nowrap;
}
.on #sp_menu_close {display: block;}










.events_main {
	position: static;
	margin: 0 0 2% 0;
	padding: 3% 0 0 0;
}
.events_main_list,
.events_main_menu {width: 100%;}
.events_main_menu #sp_menu {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 30;
	opacity: 0;

}
.events_main_menu #sp_menu:after {
	content:"";
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	display:block;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0);
	transition: all 0.2s ease-in;

}
.on .events_main_menu #sp_menu{
	margin: 64px auto 0;
	opacity: 1;
}
.on .events_main_menu #sp_menu:after {
	visibility: visible;
	background-color: rgba(0,0,0,.5);
}







/* 入園・駐車料金のご案内
----------------------------------------------- */
.fee_sec .crosshead{padding: 8px 15px 8px 45px;}
.fee_sec .crosshead:after {
	top: 50%;
	left: 8px;
	width: 30px;
	height: 30px;
	margin: -15px 0 0 0;
	background-size: 30px 30px;
}




.c-bnrs,
.c-bnrs + .c-bnrs {margin: 12% auto 0;}
.c-bnr {
	margin: 8% 0 0 0;
	padding: 3% 4%;
}
.c-bnr + .c-bnr {margin: 4% 0 0 0;}
.c-bnr .btn_detail{display: none;}
.c-bnr:before,
.c-bnr:after {
	content:"";
	display:block;
	position: absolute;
}

.c-bnr:before {
	bottom: 10px;
	right: 10px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #F79400;;
}
.c-bnr:after {
	bottom: 17px;
	right: 16px;
	border-top: solid 3px transparent;
	border-left: solid 6px #FFF;
	border-bottom: solid 3px transparent;
}





.c-bnrs_ttl {
	margin: 0 0 2%;
	text-align: center;
}
.bnr_parking,
.bnr_fee {padding: 4% 3%;}
.bnr_parking  .c-bnr_ttl,
.bnr_fee .c-bnr_ttl {
	margin: 0 0 0 -3%;
	padding: 2% 6% 2%  3%;
	background: linear-gradient(to right, rgba(165,135,88,.8) 0%, rgba(165,135,88,.5) 80%, rgba(165,135,88,0)100%);
	font-size: 16px;
	white-space: nowrap;
}











/* アトラクション運休スケジュール
----------------------------------------------- */
.hours_sec .crosshead{padding: 8px 15px 8px 45px;}
.hours_sec .crosshead:after {
	top: 50%;
	left: 8px;
	width: 30px;
	height: 30px;
	margin: -15px 0 0 0;
	background-size: 30px 30px;
}
.iframe_wrap iframe {height: 625px;}






/* ゲートオープンのご案内
----------------------------------------------- */
.gate_sec .crosshead{padding: 8px 15px 8px 60px;}
.gate_sec .crosshead:after {
	top: 50%;
	left: 8px;
	width: 44px;
	height: 30px;
	margin: -15px 0 0 0;
	background-size: 44px 30px;
}



.gate_op {width: auto;}
@media (min-width: 744px){
	.gate_op {width: 100%;}
}


.gate_op th,
.gate_op td {white-space:nowrap;}

.gate_op thead th,
.gate_op thead td {
	line-height: 1.2;
	padding: 4px 8px;
}


/* 通常
.gate_op .col1 {width: 28%;}
.gate_op tbody th{
	padding: 6px;
	text-align: center;
}
 */

.gate_op .col1 {width: 20%;}
.gate_op tbody th{
	padding: 6px 2px;
	text-align: center;
}
.gate_op.f1 tbody{font-size: 10px;}
.gate_op.f1 tbody th{padding: 6px 0;}
.gate_op td .gate_op_comment_decision {font-size: 10px;}











