/*
Theme Name: RiasHall
Theme URI: 
Author: ArrowLinks
Author URI: 
Description: 2024
Version: 
License: 
License URI: 
Tags: 
Text Domain: 
*/

@charset "utf-8";

html, body, div, span, 
h1, h2, h3, h4, h5, h6, 
p, em, strong, i, a,
ul, ol, li, dl, dt, dd, 
table, th, td ,
video,
header, main, footer, nav, section {
	box-sizing:			border-box;
	margin:				0px;
	padding:			0px;
}

html,
body {
	width:				100%;
	font-family:		'M PLUS Rounded 1c', sans-serif;
	font-weight: 		normal;
/*	font-weight: 		500;*/
/*	font-weight: 		600;*/
	font-size:			16px;
	font-style:			normal;
	line-height:		1.75em;
	text-align:			left;
	color:				#394760;
	overflow-wrap:		break-word;
	word-break:			break-all;
	outline:			none;
	letter-spacing: 	1px;
}

h6,
h5,
h4,
h3,
h2,
h1 {
	font-size:			100%;
	text-align:			left;
	line-height:		100%;
}

a {
	text-decoration:	none;
	color:				#394760;
	transition:			all 0.3s;
}
a:hover {
	text-decoration:	underline;
	color:				#0484dd;
}
a:hover img {
	filter:				brightness(0.8);
}

i {
	font-style:			normal;
}

em {
	font-style:			normal;
}

table {
	border-collapse:	collapse;
}
th, td {
	empty-cells:		show;
}

p {
	text-align:			justify;
}

th {
	font-weight:		normal;
}

/* レスポンシブ対応 */
/* ---------------------------------------------------------------- */
body {
	-webkit-text-size-adjust:	100%;
}

img {
	max-width:			100%;
	height:				auto;
}

.pc_only,img.pc_only {
	display:			block;
}

.sp_only,img.sp_only {
	display:			none;
}

.pc_only2,img.pc_only2 {
	display:			block;
}

.sp_only2,img.sp_only2 {
	display:			none;
}

/*@media all and (max-width: 1055px) {

	.pc_only,img.pc_only {
		display:			none;
	}

	.sp_only,img.sp_only {
		display:			block;
	}
}*/

@media all and (max-width: 765px) {

	.pc_only,img.pc_only {
		display:			none;
	}

	.sp_only,img.sp_only {
		display:			block;
	}

	.pc_only2,img.pc_only2 {
		display:			none;
	}

	.sp_only2,img.sp_only2 {
		display:			block;
	}
}

/* clearfix */
/* ================================================================ */
.clearfix:after {
	content:		"";
	display:		block;
	clear:			both;
}

/* ---------------------------------------------------------------- */

.txt_c {
	text-align:		center;
}
.txt_l {
	text-align:		left;
}
.txt_r {
	text-align:		right;
}

.box_l {
	float:			left;
}

.box_r {
	float:			right;
}

/* ---------------------------------------------------------------- */

header {
	width:				100%;
}

.header {
	width: 				100%;
	z-index: 			999;
	position: 			absolute;
	top: 				0;
	left: 				0;
	transition: 		.3s;
}

.header.fixed {
	position: 			fixed;
	left: 				0;
	top: 				0;
}

.h_menu{
	background-color: 	#fff;
	border-radius: 		60px;
	width: 				96%;
	padding: 			5px;
	margin: 			10px 2% 0;
	border: 			0.5px solid #666;
	z-index: 			999;
	display: 			flex;
	align-items: 		center;
	justify-content: 	space-between;
}

header .logo{
	padding: 			20px 0 20px 40px;
}

.h_menu a {
	display:			block;
	width:				100%;
}

.h_menu a img {
	display:			block;
	width:				80%;
}

/*.nolink{
	max-width: 			100px;
	cursor: 			initial;
}

a.nolink:hover img {
	filter:				brightness(1);
}*/

.header_X, .header_Insta {
	max-width: 			30px;
}

.h_menu nav > ul {
	padding: 				0;
	margin: 				0;
	display: 				flex;
	align-items: 			center;
}

header nav > ul > li {
	list-style-type: 		none;
	margin-right: 			15px;
	cursor: 				pointer;
}

header nav > ul > li > a {
	color:				#394760;
}

header nav > ul > li a:hover {
	color:				#0484dd;
	text-decoration:	none;
}

#news #nav_news,
#event #nav_event,
#guide #nav_guide,
#download #nav_download,
#facility #nav_facility,
#recruit #nav_job
{
	color:				#0484dd;
}

.border_r{
	border-right: 		1px solid #949ea5;
}

.border_r a{
	padding-right: 		1em;
}

.globalMenuSp{
	display: 			none;
}

@media all and (max-width: 1055px) {

	.gnav_pc{
		display: 			none;
	}

	header nav {
		width:				100%;
		margin-top:			0;
	}

	.h_menu nav > ul{
		display: 			block;
	}

	.h_menu .logo a img {
		width: 				90%;
	}

	.h_menu .sp_only a img {
		width: 				100%;
	}

	.spsns{
		margin-right: 		50px;
	}

	.spsns ul{
		display: 			flex;
		justify-content: 	space-between;
	}

	.spsns li{
		list-style: 		none;
		padding-right: 		20px;
	}

	header .logo{
		padding: 			15px 0;
	}

	header nav ul {
		width:				100%;
	}

	header nav > ul > li {
		width:				100%;
		padding:			20px 18px;
		border-bottom: 		1px solid;
		margin: 			0;
	}

	header nav > ul > li > a {
		font-size:			16px;
	}
	header nav > ul > li a:hover {
		text-decoration:	none;
	}
	header nav > ul > li > a:after {
		content:			"＞";
		position:			absolute;
		right:				18px;
		font-weight:		bold;
	}

	.hamburger {
		display : 					block;
		position: 					fixed;
		z-index : 					3;
		right : 					10px;
		top   : 					22px;
		width : 					42px;
		height: 					42px;
		cursor: 					pointer;
		text-align: 				center;
	}
	.hamburger span {
		display : 					block;
		position: 					absolute;
		width   : 					30px;
		height  : 					2px ;
		left    : 					6px;
		background : 				#949ea5;
		-webkit-transition: 		0.3s ease-in-out;
		-moz-transition   : 		0.3s ease-in-out;
		transition        : 		0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {
		top: 						10px;
	}
	.hamburger span:nth-child(2) {
		top: 						20px;
	}
	.hamburger span:nth-child(3) {
		top: 						30px;
	}

	/* スマホメニューを開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top : 					16px;
		left: 					6px;
		background :				#949ea5;
		-webkit-transform: 		rotate(-45deg);
		-moz-transform   : 		rotate(-45deg);
		transform        : 		rotate(-45deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 						16px;
		background :				#949ea5;
		-webkit-transform: 		rotate(45deg);
		-moz-transform   : 		rotate(45deg);
		transform        : 		rotate(45deg);
	}

	nav.globalMenuSp {
		position: 					fixed;
		z-index : 					2;
		top  :		 				70px;
		left : 						0;
		color: 						#394760;
		background:	 				#fff;
/*		text-align: 				center;*/
		width: 						100%;
		transform: 					translateX(-100%);
		transition: 				all 0.6s;
	}

	nav.globalMenuSp ul {
		margin: 					0 auto;
		padding: 					0;
		width: 						100%;
	}

	nav.globalMenuSp ul li {
		list-style-type: 			none;
		padding: 					0;
		width: 						100%;
		transition: 				.4s all;
	}
	nav.globalMenuSp ul li:last-child {
		padding-bottom: 			0;
	}

	nav.globalMenuSp ul li a {
		display: 					block;
		color: 						#394760;
		padding: 					1em 0 1em 2em;
		text-decoration :			none;
	}

	nav.globalMenuSp.active {
		opacity: 					100;
		display: 					block;
		transform: 					translateX(0%);
	}

	.h_menu{
		border-radius: 				0;
		width: 						100%;
		margin: 					0;
		border: 					0;
	}
	header.logo a img {
		width:						100px;
		margin-left:				20px;
	}

	header .pc_only,header img.pc_only {
		display:			none;
	}

	header .sp_only,header img.sp_only {
		display:			block;
	}

	header .pc_only2,header img.pc_only2 {
		display:			none;
	}

	header .sp_only2,header img.sp_only2 {
		display:			block;
	}

	.slide_img{
		padding-top: 				70px;
	}

	.header{
		border-bottom: 				1px solid;
	}
}

/* ---------------------------------------------------------------- */

footer {
	width:				100%;
	padding-top:		20px;
	background-color:	#42454c;
	color:				#fff;
}

.f_bgi {
	width: 					100%;
	min-height:		 			200px;
	background-image:		url(images/common/piano.svg);
	background-repeat: 		repeat-x;
	background-position: 	center bottom;
}

.f_menu{
	width: 				96%;
	padding: 			5px;
	margin: 			20px 2%;
	z-index: 			999;
	display: 			flex;
	align-items: 		center;
	justify-content: 	space-between;
	transition: 		.3s;
}

.f_menu a {
	display:			block;
	width:				100%;
}
.f_menu a img {
	display:			block;
	width:				90%;
}

.footer_X, .footer_Insta {
	max-width: 			30px;
}

.f_menu ul {
	padding: 				0;
	margin: 				0;
	display: 				flex;
	align-items: 			center;
}

.f20{
	font-size: 				20px;
}

footer ul > li {
	list-style-type: 		none;
	margin-right: 			18px;
	cursor: 				pointer;
}

footer nav > ul > li > a,
footer .f_menu > p > a{
	color:				#fff;
}
footer nav > ul > li a:hover,
footer .f_menu > p > a:hover{
	color:				#fff;
	text-decoration:	none;
}

.tel-number a, .mail a{
	color: 					#fff;
	display: 				inline;
}

.tel-number{
	display: 				inline;
}

.fax-number {
	pointer-events: 		none;
	color: 					#fff;
	display: 				inline;
}

.fax-number a{
	pointer-events: 		none;
	color: 					#fff;
	display: 				inline;
}

#copyright {
	width:				100%;
	font-size:			12px;
	text-align:			right;
	line-height:		100%;
}

.pt5{
	padding-top: 		2%;
}

@media all and (max-width: 765px) {	/* 以下 */
	.f_menu{
		display: 			block;
	}

	footer.logo a img{
		margin: 			auto;
	}

	.sns ul{
		justify-content: 	center;
		padding-top: 		15%;
	}

	.f_nav ul > li{
		margin-right: 		-4px;
		padding: 			3% 0;
	}

	.f_nav ul{
		flex-wrap: 			wrap;
		justify-content: 	flex-start;
	}

	footer .border_r{
		border: 			none;
		min-width: 			170px;
	}

	.f_bgi {
		min-height: 		72px;
	}

	footer ul > li {
		margin-right: 		0;
		padding-right: 		20px;
	}

	footer .logo img{
		width: 					80%;
		max-width: 				300px;
		margin: 				auto;
		padding-top: 			3%;
	}

	#copyright {
		text-align:			center;
	}
}

#page_lift {
	position:			fixed;
	display:			inline-block;
	right:				10px;
	bottom:				40px;
}
#page_lift a {
	display:			block;
	width:				40px;
	height:				40px;
	line-height:		40px;
	text-align:			center;
	text-decoration:	none;
	border-radius:		50%;
	color: 				#fff;
	background-color: 	#00bbc5;
}
#page_lift a:hover {
	
}

/* ---------------------------------------------------------------- */

.pagenavi {
	text-align: 		center;
}

.wp-pagenavi {
	margin: 			0 auto 130px;
}

.wp-pagenavi a 	{
	padding: 			9px 14px !important;
	margin: 			0.3% !important;
	border: 			1px solid;
	border-radius: 		5px;
}

.wp-pagenavi span.current{
	color:				#fff;
	background-color: 	#0484dd;
	font-weight: 		bold;
	padding: 			9px 14px;
	margin: 			0.3%;
	border: 			1px solid;
	border-radius: 		5px;
}

@media all and (max-width: 765px) {
	.wp-pagenavi a 	{
		margin: 			0.8% !important;
	}

	.wp-pagenavi span.current{
		margin: 			0.8%;
	}
}
.previouspostslink,
.nextpostslink{
	border: 			none !important;
}

/* ---------------------------------------------------------------- */


/* ---------------------------------------------------------------- */
.wrapper {
	width:			100%;
	padding:		0px;
}

section {
	width:				100%;
	padding-bottom: 	5%;
}

#home section:last-child{
	padding-bottom: 	0;
	margin-bottom: 		2%;
}

/* フェード効果 */
section {
	opacity:				0;
	transition-duration:	500ms;
	transition-property:	opacity, transform;
	transform:				translate(0, 50px);
}
.scroll-in {
	opacity:	1;
	transform:	translate(0, 0);
}

section:first-child {
	opacity:	1;
	transform:	none;
}
section:nth-child(2) {
	opacity:	1;
	transform:	none;
}

.back_img1{
	background-image: 		url(images/common/img_01.svg);
	background-repeat: 		repeat-x;
	width: 					100%;
	min-height: 				200px;
}

/* --------- home ----------- */
.slide_img img{
	width: 					90%;
/*	height: 				100%;*/
	object-fit: 			cover;
	margin: 				auto;
}

.infomation{
	background-color: 		#394760;
	color: 					#fff;
	font-size: 				18px;
	width: 					100%;
	max-width: 				750px;
	float: 					right;
	padding: 				20px 30px;
/*	margin-top: 			-143px;*/
	border-radius: 			0 0 0 20px;
	text-align: 			center;
}

.infomation img{
	width: 					100%;
	max-width: 				20px;
	vertical-align: 		middle;
	padding-right: 			5px;
}

.infomation ul li{
	list-style: 			none;
}

@media all and (max-width: 1055px) {
	.top_image{
		height:					auto;
	}
}

@media all and (max-width: 765px) {
	.infomation2{
		width: 					100%;
		font-size: 				14px;
		border-radius: 			0;
		padding: 				0;
		display: 				flex;
		flex-wrap: 				nowrap;
		justify-content: 		space-between;
		text-align: 			center;
	}

	.infomation2 img{
		width: 					100%;
		max-width: 				20px;
		vertical-align: 		middle;
		padding-right: 			5px;
	}


	.infomation_inner{
		width: 					calc(34%);
	}

	.aa{
		background-color: 		#394760;
		color: 					#fff;
		padding: 				0.5em;
		border-right: 			1px solid #fff;
	}

	.bb{
		border-bottom: 			1px solid #394760;
		background-color: 		#fff;
		color: 					#394760;
		padding: 				0.5em;
		border-right: 			1px solid #394760;
	}

	.aa2{
		background-color: 		#394760;
		color: 					#fff;
		padding: 				0.5em;
	}

	.bb2{
		border-bottom: 			1px solid #394760;
		background-color: 		#fff;
		color: 					#394760;
		padding: 				0.5em;
	}


	.infomation_inner .div.bb:last-child{
		border-right: 			none;
	}

	.back_img1{
		min-height: 			150px;
	}

	#home section:last-child {
		margin-bottom: 			5%;
	}
}

/* --------------------------- */

/* --------- event ----------- */
.event{
	margin-top: 		70px;
}

.pageevent{
	padding-top: 		10%;
}

#event > .coverbox{
	padding-top: 			110px;
	padding-bottom: 		70px;
}

.coverbox{
	width: 					80%;
	margin: 				0 auto;
}

.title_img{
	display: 				flex;
	padding-top: 			3%;
	padding-bottom: 		2%;
}

#event .title_img{
	display: 				flex;
	padding-top: 			5%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

.event .title_img{
	display: 				flex;
	padding-top: 			3%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

.title_img h3{
	margin: 				0;
}

.title_img h3 img{
	width: 					100%;
	max-width: 				200px;
}

.title_img h3 p{
	padding: 				10px 0;
}

.event .title_img2.sp_only{
	display: 				none;
}

.undl{
	position: 				relative;
}

.undl:before {
	content: 				"";
	display: 				inline-block;
	position: 				absolute;
	left: 					0;
	bottom: 				-15px;
	width: 					100%;
	height: 				5px;
	border-radius: 			5px;
	background: 			#6ed3ec;
}

.undl3{
	position: 				relative;
}

.undl3:before {
	content: 				"";
	display: 				inline-block;
	position: 				absolute;
	left: 					0;
	bottom: 				-15px;
	width: 					100%;
	height: 				5px;
	border-radius: 			5px;
	background: 			#008bc4;
}

.randimg{
	width: 					100%;
	max-width: 				150px;
	padding-left: 			15%;
}

.event_cont_box{
	border: 				1px solid;
}

.button {
	transition: 			.3s;
	border-radius: 			10px;
}

.button:nth-child(2) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

.button:nth-child(3) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

.button:nth-child(3n+1) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

.button:nth-child(4n+1) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

.button:nth-child(5n+1) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

.button:nth-child(6n+1) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

.button:nth-child(7n+1) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

.button:nth-child(8n+1) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

.button:nth-child(9n+1) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

.button:nth-child(1) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

.button:hover {
	transform: 				translate3d(7px, 7px,0);
	box-shadow: 			none;
}

.eventblok_img{
	display: 				inline-block;
	width: 					45%;
	margin:					0 2.5%;
	vertical-align: 		top;
	text-align: 			center;
	aspect-ratio: 			1 / 1;
}

.eventblok_img img{
	width: 					100%;
	height: 				100%;
	object-fit: 			cover;
	border-radius: 			10px;
}

.eve_t_box{
	display: 				inline-block;
	width: 					45%;
	margin:					0 2.5%;
}

.eve_t_box span{
	margin: 				0 5px 5px 0;
	font-size: 				14px;
	display: 				inline-block;
}

.eventblok_box a{
	text-decoration:		none;
}

.event_items {
	display: 				flex;
	flex-flow: 				wrap;
	justify-content: 		space-between;
	margin: 				0;
	padding: 				0;
}

.event_cont_box {
	width: 					calc(48% - 15px);
	list-style-type: 		none;
	margin: 				1% 1% 3%;
}

.event_cont_box a{
	padding: 				20px;
	display: 				block;
}

.event_cont_box a .eventttl {
	margin-bottom: 			0;
	display: 				-webkit-box;
	-webkit-box-orient:	 	vertical;
	-webkit-line-clamp: 	3;
	font-size: 				18px;
	line-height: 			1.6;	
	overflow: 				hidden;
}

.e_hr{				
	border:					0.5px solid #949ea5;
}

/*ファミリー向け*/
.family{
	background-color:		#ea6c27;
	color: 					#fff;
}
/*会社員向け*/
.business{
	background-color:  		#b2376b;
	color: 					#fff;
}
/*子ども向け*/
.child{
	background-color:  		#e874a3;
	color: 					#fff;
}	
/*企画展*/
.plan{
	background-color: 	 	#ecae08;
	color: 					#fff;
}
/*セミナー*/
.seminar{
	background-color: 	 	#0ec1aa;
	color: 					#fff;
}
/*LIVE*/
.live{
	background-color: 	 	#18b2c4;
	color: 					#fff;
}
/*フェスティバル*/
.festival{
	background-color: 	 	#445779;
	color: 					#fff;
}
/*コンサート*/
.concert{
	background-color: 	 	#4188df;
	color: 					#fff;
}
/*映画*/
.movie{
	background-color: 	 	#8460b6;
	color: 					#fff;
}
/*ミュージカル*/
.musical{
	background-color: 	 	#49b746;
	color: 					#fff;
}
/*自主事業*/
.independent{
	background-color: 	 	#876041;
	color: 					#fff;
}
/*イベント*/
.event999{
	background-color: 	 	#d32b53;
	color: 					#fff;
}

.c-btn.slide {
	overflow: 				hidden;
	position:		 		relative;
	z-index: 				1;
	width: 					100%;
	max-width: 				250px;
	margin: 				3% auto 1%;
	text-align: 			center;
	border: 				1px solid #394760;
	border-radius: 			30px;
	font-size: 				18px;
}
.c-btn.slide::after {
	background: 			#0484dd;
	position:	 			absolute;
	top: 					0;
	left: 					0;
	content: 				'';
	width: 					100%;
	height: 				100%;
	transform: 				scale(0, 1);
	transform-origin: 		left top;
	transition: 			.2s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: 				-1;
}
.c-btn.slide:hover a {
	cursor:					pointer;
	color: 					#fff;
	padding: 				15px;
}
.c-btn.slide:hover::after {
	transform: 				scale(1, 1);
}

.c-btn a{
	text-decoration: 		none;
	display: 				block;
	padding: 				15px;
	color: 					#394760;
}

.prev{
	padding-top: 			20px;
	padding-right: 			3%;
}

.next{
	padding-top: 			20px;
	padding-left: 			3%;
}

#event_single > .coverbox{
	padding-top: 			160px;
	padding-bottom: 		110px;
}

.event_single_ttl{
	font-size: 				22px;
	color: 					#0484dd;
	line-height: 			1.6;
	border-bottom: 			2px solid #6ed3ec;
	padding-bottom: 		10px;
}

.event_single_day{
	padding-left: 			10px;
	padding-top: 			10px;
}

#event_single > .coverbox > span{
	padding: 				1px 5px;
	margin: 				10px 5px 5px 0;
	font-size: 				14px;
	display: 				inline-block;
}

.eve_day{
	display: 				inline-block;
	margin-top: 			3%;
}

.eve_place{
	display: 				inline;
	margin-top: 			3%;
}

.eve_place span{
	text-align: 			center;
	margin-right: 			7px;
}

.event_place{
	border: 				1px solid #394760;
	padding: 				0 5px
}

.eve_cate{
	padding: 				0 5px
}


.pnbotan{
	display: 				flex;
	justify-content: 		center;
	margin-top: 			100px;	
}

.c-btn2.slide {
	overflow: 				hidden;
	position:		 		relative;
	z-index: 				1;
	width: 					100%;
	max-width: 				250px;
	text-align: 			center;
	border: 				1px solid #394760;
	border-radius: 			30px;
	font-size: 				18px;
}

.c-btn2.slide::after {
	background: 			#0484dd;
	position:	 			absolute;
	top: 					0;
	left: 					0;
	content: 				'';
	width: 					100%;
	height: 				100%;
	transform: 				scale(0, 1);
	transform-origin: 		left top;
	transition: 			.2s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: 				-1;
}

.c-btn2.slide:hover a {
	cursor:					pointer;
	color: 					#fff;
	padding: 				15px;
}

.c-btn2.slide:hover::after {
	transform: 				scale(1, 1);
}

.c-btn2 a{
	text-decoration: 		none;
	display: 				block;
	padding: 				15px;
	color: 					#394760;
}

.single_area{
	padding-top: 			40px;
}

.single_area > table{
	border-collapse: 		collapse !important;
}

.single_area th{
	width: 					30% !important;
	background-color: 		#b1dede;
	border: 				1px solid #949ea5;
	padding: 				20px 24px;
	text-align: 			left;
}

.single_area td{
	width: 					70% !important;
	padding: 				20px 24px;
	text-align: 			left;
	border: 				1px solid #949ea5;
}

.aligncenter{
	display: 				block;
	margin-left: 			auto;
	margin-right: 			auto;
	clear: 					both;
}
.alignright{
	float: 					right;
	margin-left: 			1.5em;
	clear: 					both;
}
.alignleft{
	float: 					left;
	margin-right: 			1.5em;
	clear: 					both;
}

.tiket_botan{
	width: 					100%;
}

.tiket_botan a{
	color: 					#fff;
	padding: 				2%;
	display: 				block;
	text-align: 			center;
	text-decoration: 		none;
}

@media all and (max-width: 1000px) {
	.eventblok_img{
		display: 				block;
		width: 					100%;
		margin: 				auto;
	}

	.eve_t_box{
		display: 				block;
		width: 					100%;
		margin: 				auto;
	}

	.event_cover{
		padding-bottom: 		30px;
	}
}

@media all and (max-width: 765px) {

	.event{
		margin-top: 			30px;
	}

	.event_items {
		display: 				block;
		padding-top: 			7%;
	}

	.event_cont_box {
		width: 					100%;
		margin: 				15% auto;
	}

	.event_cont_box:first-child {
		margin: 				5% auto 15%;
	}

	.coverbox{
		width: 					90%;
	}

	.eve_place{
		display: 				flex;
		flex-wrap:				wrap;
		justify-content: 		start;
	}

	.eve_place span{
		margin-bottom: 			3%;
		margin-right: 			3%;
	}

	.button:nth-child(odd) {
		box-shadow: 			7px 7px 0 1.5px #6ed3dc;
	}

	.button:nth-child(even) {
		box-shadow: 			7px 7px 0 1.5px #6dc5ea;
	}

	.button:hover {
		transform: 				translate3d(7px, 7px,0);
		box-shadow: 			none;
	}

	.pnbotan{
		display: 				none;
	}

	.c-btn.slide{
		margin: 				3% auto 20%;
	}

	.c-btn2.slide{
		margin: 				auto;
	}

	.pnflex{
		padding-top: 			5%;
		display: 				flex;
		justify-content: 		center;
	}

	.sp_pnbotan{
		padding-top: 			15%;
	}

	.event_cover{
		padding^top: 			30px;
	}

	.single_area th,.single_area td{
		width: 					100% !important;
		display: 				block;
		height: 				auto !important;
	}

	.event .title_img.pc_only{
		display: 				none;
	}

	.event .title_img2.sp_only{
		display: 				block;
	}
}
/* --------------------------- */


/* --------- news ----------- */
.news{
	margin-top: 			10px;
}

.newsday{
/*	font-weight: 			400;*/
	color: 					#394760;
	font-size: 				16px;
}

.news_cover{
	padding-top: 			30px;
}

#news .title_img{
	display: 				flex;
	padding-top: 			5%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

.news .title_img2.sp_only{
	display: 				none;
}

.news_cont ul{
	list-style-type: 		none;
	margin:				 	0;
	padding:				0;
}

.news_cont ul li{
	border-top: 			1px solid #949ea5;
	display: 				flex;
	align-items: 			center;
	padding: 				0 10px;
}

.news_cont ul li:last-child{
	border-bottom: 			1px solid #949ea5;
}

.news_cont ul li a{
	padding: 				20px 0;
	display: 				block;
	overflow: 				hidden;
	text-overflow: 			ellipsis;
	white-space:			nowrap;
	text-decoration: 		none;
	width: 					100%;
	height: 				100%;
	line-height: 			1.5;
}

.news_cont span{
	padding-right: 			20px;
}

.news_cont span:last-child{
	padding-right: 			0px;
	padding-left: 			20px;
}

.new{
	background-color: 		#ff1350;
	color: 					#fff;
	padding: 				2px 0px 1px 20px;
	margin: 				0 5px 5px 0;
	font-size:	 			14px;
	font-weight: 			500;
}

#news > .coverbox {
    padding-top: 			110px;
    padding-bottom: 		110px;
}

#news_single > .coverbox{
	padding-top: 			160px;
	padding-bottom: 		110px;
}

.news_single_ttl{
	font-size: 				22px;
	color: 					#0484dd;
	line-height: 			1.6;
	border-bottom: 			2px solid #6ed3ec;
	padding-bottom: 		10px;
}

.news_single_day{
	padding-left: 			10px;
	padding-top: 			10px;
}

#news_single > .coverbox > span{
	padding: 				1px 5px;
	margin: 				10px 5px 5px 0;
	font-size: 				14px;
	display: 				inline-block;
}

#news_single > .c-btn.slide{
	margin: 				0 !important;
}

@media all and (max-width: 765px) {
	.news_cont{
		padding-bottom: 		30px;
		padding-top: 			7%;
	}

	span.newsday{
		display: 				block;
	}

	.news .title_img h3 img {
		max-width: 170px;
	}

	.news .title_img.pc_only{
		display: 				none;
	}

	.news .title_img2.sp_only{
		display: 				block;
	}
}

/* --------------------------- */


/* --------- pickup ----------- */
.pickup{
	background-color: 		#eef3fa;
	padding: 				7% 0 10%;
}

.title_img2{
	display: 				block;
	padding-top: 			3%;
}

.title_img2 h3{
	text-align: 			center;
}

.title_img2 h3 img{
	width: 					100%;
	max-width: 				200px;
	margin: 				auto;
}

.title_img2 h3 p{
	padding: 				10px 0;
	text-align: 			center;
}

.pickup_cover{
	margin-top: 			30px;
}

.pickup_cont{
	display: 				flex;
	flex-wrap: 				wrap;
	justify-content: 		space-around;
}

.pickup_cont_box{
	width: 					calc(31%);
}

.pickup .button2:nth-child(odd) {
	filter: 				drop-shadow(7px 7px 0 #6ed3dc);
	transition: 			.3s;
}

.pickup .button2:nth-child(even) {
	filter: 				drop-shadow(7px 7px 0 #6dc5ea);
	transition: 			.3s;
}

.pickup .button2:hover {
	transform: 				translate3d(7px, 7px, 0);
	filter: 				none;
}

.button2:hover {
	transform: 				translate3d(7px, 7px, 0);
	filter: 				none;
}

.pickupblok_img img{
	width: 					100%;
}

.pku_t_box{
	display: 				inline-block;
	margin:					0 2.5%;
}

.pku_t_box span{
	font-size: 				22px;
	font-weight: 			bold;
}

.pickupblok_box a{
	text-decoration:		none;
	display: 				block;
}

.pickup_cont_box a .eventttl {
	margin-bottom: 			0;
	display: 				-webkit-box;
	-webkit-box-orient:	 	vertical;
	-webkit-line-clamp: 	3;
	font-size: 				18px;
	line-height: 			1.6;	
	overflow: 				hidden;
}

@media all and (max-width: 765px) {
	.pickup_cover{
		padding-bottom: 		30px;
		padding-top: 			30px;
	}

	.pickup_cont{
		display: 				block;
	}

	.pickup_cont_box{
		width: 					100%;
		margin-bottom: 			20px;
	}

	.pickup .title_img2 {
		padding-top: 			15%;
	}
}
/* --------------------------- */

.kamome, .suneka{
	width: 					100%;
	max-width: 				500px;
}

/* --------- access ----------- */
#access .title_box{
	padding-top: 			30px;
}

.coverbox2{
	width: 					80%;
	margin: 				0 auto;
}

.access .img_box{
	margin-top: 			-15%;
}

.access .map{
	display: 				flex;
	margin-top: 			60px;
	height: 				500px;
}

.map{
	border: 				1px solid;
	border-radius: 			25px;
}

iframe{
	width: 					100%;
	height: 				100%;
	border-radius: 			25px;
}

.access_info{
	padding-top: 			5%;
}

.access_info dl{
	display: 				flex;
	width:		 			100%;
	padding: 				1.5% 0;
	border-bottom: 			1px solid;
}

.access_info dl dt{
	width: 					20%;
	position: 				relative;
	line-height: 			1.5;
}

.access_info dl dt i{
	margin-right: 			0.5em;
}

.access_info dl dd{
	width: 					40%;
	position: 				relative;
	padding-left: 			20px;
	padding-bottom: 		10px;
	font-size: 				16px;
}

.access_info dl dd.linkbox{
	width: 					15%;
	position: 				relative;
	padding-left: 			20px;
	padding-bottom: 		10px;
	text-align: 			right;
	padding-left: 			2em;
}

.access_info dl dd.howto{
	width: 					25%;
	position: 				relative;
	padding-left: 			20px;
	padding-bottom: 		10px;
}

.access_info a{
	color: 					#0484dd;
	text-decoration: 		underline;
}

.access .img_box2{
	float: 					right;
	margin-top: 			-1%;

}
.acc_icon{
	width: 					30px;
	padding-right: 			1em;
	vertical-align: 		middle;
}

@media all and (max-width: 1055px) {
section#access{
		padding-bottom: 		0;
	}

	.access_info dl {
		flex-wrap: 				wrap;
		padding: 				10% 0;

	}

	.access_info dl dt{
		width: 					100%;
		padding-left: 			0;
	}

	.access_info dl dd{
		width: 					100%;
		padding-top:	 		10px ;
		padding-left: 			0;
	}

	.access_info dl dd.linkbox{
		width: 					100%;
		padding-bottom: 		0;
		padding-left: 			0;
		text-align: 			left;
	}

	.access_info dl dd.howto {
		width: 					100%;
		padding-left: 			0;
	}
}

@media all and (max-width: 765px) {
	.map{
		border: 				none;
		border-radius: 			0px;
	}

	iframe{
		width: 					100%;
		height: 				100%;
		border-radius: 			0px;
	}

	.coverbox2{
		width: 					100%;
	}

	.access .img_box2{
		float: 					none;
		margin: 				6% 0 0;
		text-align: 			center;
	}

	.suneka {
		width: 					75%;
		margin-bottom: 			-4%;
	}
}
/* --------------------------- */


/* --------- link ----------- */
.link{
	background-image: 		url(images/common/link_bg.jpg);
	background-size: 		cover;
	background-position: 	center;
	background-repeat: 		no-repeat;
	margin-top: 			5%;
}

.link_cover{
	padding-top: 				30px;
	padding-bottom: 			30px;
}

.link_cont{
	display: 				flex;
	flex-wrap: 				wrap;
	justify-content: 		space-between;
	margin: 				0;
	padding: 				0;
}

.link_cont div{
	width: 					calc((100% - 60px) / 4);
	background-color: 		#fff;
	margin-bottom: 			20px;
}

.link_cover div::after{
	content:			"";
	display: 			block;
	width:				24.5%;
}

.link_cover div::before { 
	content:			""; 
	display:			block; 
	width:				24.5%;
	order: 				1;
}

.link_cont div > a{
	display: 				block;
	padding: 				10% 0;
	text-align: 			center;
}

.undl2{
	position: 				relative;
}

.undl2:before {
	content: 				"";
	display: 				inline-block;
	position: 				absolute;
	left: 					0;
	bottom: 				-15px;
	width: 					100%;
	height: 				5px;
	border-radius: 			5px;
	background: 			#fff;
}

.f_f{
	color: 					#fff;
}

@media all and (max-width: 765px) {
	.link_cont div{
		width: 					calc((100% - 40px) / 2);
	}

	.link_cover div::after{
		width:					50%;
	}

	.link_cover div::before {  
		width:					50%;
	}

	.link_cover{
		padding-top: 			50px;
	}

	.link .title_box{
		padding-top: 			15%;
	}

	.link .title_img2 h3 img {
		max-width: 170px;
	}
}

@media all and (max-width: 520px) {
	.link_cont{
		display: 				block;
	}

	.link_cont div{
		width: 					100%;
	}

	.link_cover div::after{
		width:					100%;
	}

	.link_cover div::before {  
		width:					100%;
	}
}

/* --------------------------- */


/* --------- guide ----------- */
#guide > .coverbox{
	padding-top: 			110px;
	padding-bottom: 		110px;
}

#guide .title_img h3 img {
	max-width: 					300px;
}

#guide .title_img{
	display: 				flex;
	padding-top: 			5%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

details summary::-webkit-details-marker {
	display: 				none;
}

details summary {
	list-style: 			none;
}

.details {
	line-height: 			2;
	border: 				1px solid #949ea5;
	border-radius: 			15px;
	width: 					100%;
	margin: 				0 auto 20px;
		&__summary {
			position: 			relative;
			display: 			block;
			background: 		#eef3fa;
			cursor: 			pointer;
			margin: 			0;
			padding: 			10px 40px 10px 16px;
				&::-webkit-details-marker {
					display: 	none;
			}
		}
		&__content {
			overflow: 			hidden;
			margin:		 		0;
			padding-left: 		16px;
			padding-right: 		16px;
			> * {
				margin: 		0;
				padding-top: 	16px;
				&:last-child {
					padding-bottom: 	16px;
				}
			}
		}
	}

.details__summary {
	position: 				relative;
	display: 				block;
	background: 			#eef3fa;
	cursor: 				pointer;
	margin: 				0;
	padding: 				20px 45px 20px 25px;
	border-radius: 			15px;
	font-size: 				24px;
}

.details__summary::after {
	font-family: 			FontAwesome;
	content: 				'\f067';
	margin-right: 			20px;
	position: 				absolute;
	right: 					0;
	color: 					#00bbc5;
}

.details[open] .details__summary::after {
	content: 				'\f068';
	color: 					#00bbc5;
}

.details__summary.nextcolor::after{
	color: 					#008bc4;
}

.details[open] .details__summary.nextcolor::after{
	color: 					#008bc4;
}

.details[open] .details__summary{
	border-radius: 			15px 15px 0 0;
}

.details__content{
	padding-left: 			2.5em;
	padding-bottom: 		2%;
	padding-right: 			2.5em;
	padding-top: 			2%;
}

#facility .details__content{
	padding-left: 			2.5em;
	padding-bottom: 		2%;
	padding-right: 			2.5em;
	padding-top: 			0;
}

.details__content h4{
	font-weight: 			normal;
	font-size: 				24px;
	padding: 				20px 0 10px 0;
	text-indent: 			-1em;
	padding-left: 			1em;
}

.details__content h4::before{
	content: 				'●';
	color: 					#00bbc5;
	font-size: 				13px;
	vertical-align: 		bottom;
	padding-right: 			0.5em;
}

.details__content h4.nextcolor::before{
	content: 				'●';
	color: 					#008bc4;
	font-size: 				13px;
	vertical-align: 		bottom;
	padding-right: 			0.5em;
}

.facility_ttl{
	display: 				block;
	background: 			#eef3fa;
	margin: 				0;
	padding: 				20px 45px 20px 25px;
	border-radius: 			15px 15px 0 0;
	font-size: 				24px;
	width: 					100%;
	font-weight: 			500;
}

#guide .details__content table{
	border-collapse: 		collapse;
	width: 					100%;
	margin: 				10px auto 30px;
}

.guide_menu{
	display: 				flex;
	flex-wrap: 				wrap;
	margin: 				0;
	padding: 				2% 0;
	text-align: 			center;
	justify-content: 		space-around;
}

.guide_menu::after{
	content:				"";
	display: 				block;
	width:					32%;
}

.guide_menu::before { 
	content:				""; 
	display:				block; 
	width:					32%;
	order: 					1;
}

.g_menu{
	width: 					calc(31%);
	margin-right: 			20px;
	margin-bottom: 			20px;
	border-radius: 			8px;
	padding-left: 			0;
}

.g_menu a{
	color: 					#000;
	display: 				block;
	font-size: 				calc(15rem / 16);
	background-color: 		#cbf3f5;
	padding: 				12px 34px 12px 14px;
	position: 				relative;
	border-radius: 			8px;
}

.g_menu a:after {
	content: 				'\f107';
	font-family: 			FontAwesome;
	font-weight: 			900;
	position: 				absolute;
	right: 					12px;
}

#guide a.txtlink_blue{
	color: 					#0484dd;
	text-decoration: 		underline;
}

.infoul{
	padding: 				0 3%;
}

.infoul > .ireko{
	padding: 				0 2em;	
}

.infool{
	padding: 				0 2em;
}

.feetable{
	text-align: 			center;
	font-size: 				14px;
}

.yen{
	text-align: 			right;
	font-size: 				13px;
}

.details__content h5{
	font-size: 				120%;
	padding: 				0.5em;
	border-left: 			10px solid #00bbc5;
}

#guide .sp_only {
	display:			none;
}

#guide .pc_only2 {
	display:			block;
}

@media all and (max-width: 1187px) {
	.guide_menu::after{
		width:					35%;
	}

	.guide_menu::before { 
		width:					35%;
	}
}

@media all and (max-width: 1000px) {

	#guide .pc_only {
		display:			none;
	}

	#guide .sp_only {
		display:			block;
	}
}

@media all and (max-width: 1130px) {
	.g_menu{
		width: 					calc(47%);
	}

	.guide_menu::after{
		width:					50%;
	}

	.guide_menu::before { 
		width:					50%;
	}
}

@media all and (max-width: 950px) {
	.g_menu{
		width: 					100%;
		margin-right: 			0;
	}

	.infoul{
		padding: 				0 3% 0 7%;
	}

	.guide_menu::after{
		width:					100%;
	}

	.guide_menu::before { 
		width:					100%;
	}

	.title_box{
		width: 					100%;
	}

	.infoul > .ireko{
		padding: 				0 0 0 2em;
	}

	.infool{
		padding: 				0 0 0 2em;
	}

	#guide .details__content h5 {
		margin-top: 			5%;
	}

	.details__summary {
		font-size: 				1.4rem;
	}

	.details__content h4 {
		font-size: 				1.4rem;
	}

	.details__content {
		padding-left: 			1em;
		padding-right: 			1em;
	}

	#facility .details__content{
		padding-left: 			1em;
		padding-right: 			1em;
	}
}

/* --------------------------- */

/* --------- facility ----------- */
#facility > .coverbox{
	padding-top: 			110px;
	padding-bottom: 		110px;
}

#facility .title_box{
	padding-bottom: 		30px;
}

#facility .title_img{
	display: 				flex;
	padding-top: 			5%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

#facility .title_img h3 img{
	width: 					160% !important;
	max-width: 				160% !important;
}

#facility .randimg{
	max-width: 				200px;
	padding-left: 			100%;
}

.facilityblok_img{
	margin: 				0;
	padding: 				0;
	overflow: 				hidden;
	position: 				relative;
}

.facilityblok_img::before{
	content: 				"";
	display: 				block;
	padding-top: 			56%;
}

.facilityblok_img img{
	border-radius: 			10px 10px 0 0;
	position: 				absolute;
	top: 					0;
	bottom: 				0;
	left: 					0;
	right: 					0;
	margin: 				auto;
	width: 					100%;
	height: 				100%;
	object-fit: 			cover;
}

.fac_t_box{
	padding: 				20px;
}

.faclity_day{
	display: 				block;
	text-align: 			right;
}

.facilityblok_box a{
	text-decoration:		none;
}

.facility_items {
	display: 				flex;
	flex-flow: 				wrap;
	justify-content: 		space-between;
	margin: 				0;
	padding: 				0;
}

.facility_cont_box {
	width: 					calc(30% - 15px);
	list-style-type: 		none;
	margin: 				4% 1% 2% 1%;
	border: 				1px solid #949ea5;
}

.facility_items::after{
	content:			"";
	display: 			block;
	width:				30%;
}

.facility_items::before { 
    content:			""; 
    display:			block; 
    width:				30%;
    order: 				1;
}

.facility_cont_box a{
	display: 				block;
}

.facility_cont_box a .facilityttl {
	font-size: 				150%;
}

.facility_cont_box a .facility_info {
	margin-bottom: 			0;
	display: 				-webkit-box;
	-webkit-box-orient:	 	vertical;
	-webkit-line-clamp: 	3;
	line-height: 			1.6;	
	overflow: 				hidden;
}

.border{
	border: 				1px solid #949ea5;
	border-radius: 			15px;
	margin-bottom: 			30px;
}

#facility_single > .coverbox{
	padding-top: 			160px;
	padding-bottom: 		110px;
}

#facility_single a.txtlink_blue{
	color: 					#0484dd;
	text-decoration: 		underline;
}

.fac_cont_box{
	margin-top: 			30px;
	display: 				flex;
	flex-wrap: 				wrap;
	justify-content: 		space-between;
}

.facility_flex{
	width: 					calc(45% - 20px);
}

.facility_single_ttl{
	background-color: 		#00bbc5;
	width: 					100%;
	border-radius: 			10px;
	margin: 				auto;
	font-weight: 			bolder;	
	padding: 				20px;
	color: 					#fff;
	font-size: 				24px;
}

.facility_loopimg{
	margin-bottom: 			30px;
}

.facility_loopimg img{
	border-radius: 			25px;
	width: 					100%;
}

.facility_loopimg p{
	text-align: 			center;
}

.facility_flex h4{
	font-weight: 			normal;
	font-size: 				24px;
	padding: 				20px 0 10px 0;
}
.facility_flex h4::before{
	content: 				'●';
	color: 					#6ed3ec;
	font-size: 				18px;
	vertical-align: 		bottom;
}

#facility .button:nth-child(odd) {
	box-shadow: 			7px 7px 0 1.5px #6ed3dc;
}

#facility .button:nth-child(even) {
	box-shadow: 			7px 7px 0 1.5px #6dc5ea;
}

#facility .button:hover {
	transform: 				translate3d(7px, 7px,0);
	box-shadow: 			none;
}

#facility .wysiwyg:last-child {
	margin-bottom: 			40px;
}

#facility .details {
	margin: 				0 auto 30px;
}

#facility .title_img.sp_only{
	display: 				none;
}

.br25 img{
	border-radius: 			25px;
}

.facility_menu{
	display: 				flex;
	flex-wrap: 				wrap;
	margin: 				0;
	padding: 				2% 0;
	text-align: 			center;
	justify-content: 		flex-start;
}

.facility_menu::after{
	content:				"";
	display: 				block;
	width:					31%;
}

.facility_menu::before { 
	content:				""; 
	display:				block; 
	width:					31%;
	order: 					1;
}

.faci_menu{
	width: 					calc(31%);
	margin-right: 			20px;
	margin-bottom: 			20px;
	border-radius: 			8px;
	padding-left: 			0;
}

.faci_menu a{
	color: 					#000;
	display: 				block;
	font-size: 				calc(15rem / 16);
	background-color: 		#cbf3f5;
	padding: 				12px 34px 12px 14px;
	position: 				relative;
	border-radius: 			8px;
}

.faci_menu a:after {
	content: 				'\f107';
	font-family: 			FontAwesome;
	font-weight: 			900;
	position: 				absolute;
	right: 					12px;
}

#facility h5{
	font-size: 				120%;
	padding: 				0.5em;
	border-left: 			10px solid #00bbc5;
}

@media all and (max-width: 1187px) {
	.facility_menu::after{
		width:					35%;
	}

	.facility_menu::before { 
		width:					35%;
	}
}

@media all and (max-width: 1130px) {
	.faci_menu{
		width: 					calc(47%);
	}

	.facility_menu::after{
		width:					50%;
	}

	.facility_menu::before { 
		width:					50%;
	}
}

@media all and (max-width: 1000px) {
	.facility_cont_box {
		width: 					calc(49% - 15px);
		list-style-type: 		none;
		margin: 				2% 1%;
	}
}

@media all and (max-width: 950px) {
	.faci_menu{
		width: 					100%;
		margin-right: 			0;
	}

	.facility_menu::after{
		width:					100%;
	}

	.facility_menu::before { 
		width:					100%;
	}
}

@media all and (max-width: 768px) {
	.fac_cont_box{
		display: 				block;
	}

	.facility_flex{
		width: 					100%;
		padding-top: 			15%;
	}

	#facility_single .facility_flex{
		padding-top: 			0;
	}

	.facility_flex h4 {
		padding: 				20px 0 20px 0;
	}

	#facility .title_img h3 img{
		min-height: 			140px;
		width: 					100% !important;
		max-width: 				75% !important;
	}

	#facility .randimg{
/*		max-width: 				150px;*/
		padding-left: 			15%;
	}

	.img_box{
		text-align: 			right;
	}

	#facility .title_box{
		width: 					100%;
	}

	#facility .title_img.sp_only{
		display: 				block;
	}

	#facility .title_img.pc_only{
		display: 				none;
	}

	#facility_single .pnbotan{
		display: 				block;
	}

	.facility_cont_box a .facility_info {
		margin-bottom: 			7%;
	}
}

@media all and (max-width: 520px) {
	.facility_cont_box {
		width: 					100%;
		margin: 				7% 5%;
	}

	.facilityblok_img::before{
		padding-top: 			56%;
	}
}
/* --------------------------- */

/* --------- download ----------- */
#download > .coverbox{
	padding-top: 			110px;
	padding-bottom: 		110px;
}

#download .title_img{
	display: 				flex;
	padding-top: 			5%;
	padding-bottom: 		2%;
	padding-left: 			1%;
}

#download .title_img h3 img{
	width: 					100%;
	max-width: 				300px;
}

#download .randimg{
	max-width: 				200px;
}

#download a.txtlink_blue{
	color: 					#0484dd;
	text-decoration: 		underline;
}

.details__content table{
	border-collapse: 		collapse;
	width: 					98%;
	margin: 				10px auto 30px;
}

.details__content table th{
	background-color: 		#eef3fa;
	padding: 				0.5em;
	border: 				solid 1px #949ea5;
}

.details__content table td{
	padding: 				0.5em;
	border: 				solid 1px #949ea5;
}

.details__content table th.subt{
	background-color: 		#faf4f7;
}

#download .title_img.sp_only{
	display: 				none;
}

@media all and (max-width: 1055px) {
	#event > .coverbox{
		padding-top: 			90px;
	}

	#event_single > .coverbox{
		padding-top: 			120px;
	}
	#news > .coverbox {
		padding-top: 			90px;
	}

	#news_single > .coverbox{
		padding-top: 			120px;
	}

	#guide > .coverbox{
		padding-top: 			90px;
	}

	#facility > .coverbox{
		padding-top: 			90px;
	}

	#facility_single > .coverbox{
		padding-top: 			120px;
	}

	#download > .coverbox{
		padding-top: 			90px;
	}
}

@media all and (max-width: 765px) {
	.details__content table.sp_table th{
		padding: 				0.5em 0;
		width: 					50%;
	}

	.details__content table.sp_table td {
		padding: 				0.5em;
	}

	#download .title_img.sp_only{
		display: 				block;
	}

	#download .title_img.pc_only{
		display: 				none;
	}
}	

/* ---------------------------------------------------------------- */
/* 404 */
/* ---------------------------------------------------------------- */
#e404 {
	position:			relative;
	width:				100%;
	max-width:			960px;
	margin:				auto;
	padding:			5% 0 10%;
	background-color:	#fff;
}

#e404 em {
	display:			block;
	font-size:			200px;
	text-align:			center;
	line-height:		1;
}
#e404 em span {
	display:			block;
	font-size:			80px;
	letter-spacing:		-0.05em;
}
@media screen and (max-width: 768px) {
	#e404 em {
		font-size:		140px;
	}
	#e404 em span {
		font-size:		50px;
	}
}

#e404 p {
	margin-top:		3em;
	font-size:		16px;
	text-align:		center;
}
#e404 a {
	display:			inline-block;
	min-width:			180px;
	margin:				30px auto 0;
	padding:			0 15px;
	color:				#fff;
	font-size:			18px;
	text-align:			center;
	line-height:		50px;
	vertical-align:		top;
	background-color:	#000;
	text-decoration:	none;
	transition:			all 0.5s;
}
#e404 a:hover {
	text-decoration:	none;
	opacity:			0.6;
}
#e404 a:hover img {
	opacity:			1;
}
@media screen and (-webkit-min-device-pixel-ratio:0) and (max-width:768px) {
	#e404 p a:hover {
		opacity:		1;
	}
}

/* ---------------------------------------------------------------- */
/* 初期化（記事エディタ） */
/* ---------------------------------------------------------------- */
.wysiwyg {
	margin-bottom:		40px;
}
.wysiwyg:last-child {
	margin-bottom:		100px;
}


.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5,
.wysiwyg h6,
.wysiwyg ol,
.wysiwyg ul,
.wysiwyg a,
.wysiwyg a:hover,
.wysiwyg p,
.wysiwyg i,
.wysiwyg b,
.wysiwyg em {
	max-width:			100%;
	padding:			initial;
	margin:				initial;
	font-weight:		initial;
	font-style:			initial;
	text-align:			initial;
	line-height:		initial;
	border:				initial;
	text-decoration:	initial;
}

.wysiwyg ul,
.wysiwyg ol {
	padding-left:		24px;
}

.wysiwyg h1 {
	display:			block;
	font-size:			2em;
	margin:				0.67em 0;
	border:				none;
}
.wysiwyg h2 {
	display:			block;
	font-size:			1.6em;
	margin:				0.33em 0;
	border:				none;
}
.wysiwyg h3 {
	display:			block;
	font-size:			1.2em;
	margin:				0.3em 0;
	border:				none;
}
.wysiwyg h4 {
	display:			block;
	font-size:			1em;
	margin:				0.3em 0;
	border:				none;
}
.wysiwyg h5 {
	display:			block;
	font-size:			0.8em;
	margin:				0.3em 0;
	border:				none;
}
.wysiwyg h6 {
	display:			block;
	font-size:			0.6em;
	margin:				0.3em 0;
	border:				none;
}
.wysiwyg a {
	color:				#0999eb;
	text-decoration:	underline;
}
.wysiwyg a:hover {
	opacity:			0.8;
}
.wysiwyg em{
	font-style: 		italic;
}
/* ---------------------------------------------------------------- */


	/* ---------------------------------------------------------------- */

#inquiry_box {
	width:				100%;
	max-width:			840px;
	margin:				auto;
	padding:			0 20px;
}
#inquiry_box i {
	display:			inline-block;
	color:				#ee0c0c;
}
#inquiry_box #form_box i {
	display:			inline-block;
	margin-right:		5px;
}

#inquiry_err {
	margin-top:			-30px;
	text-align:			center;
	font-size:			20px;
	font-weight:		bold;
}
.ok_msg {
	margin-bottom:		60px;
}
.err_msg {
	margin-bottom:		60px;
	color:				#ee0c0c;
}

#inquiry_msg {
	margin-bottom:		60px;
	text-align:			center;
	letter-spacing:		-0.05em;
}

#form_box {
	width:				100%;
	margin-bottom:		100px;
}
#form_box .form_ttl {
	font-size:			18px;
	font-weight:		bold;
}
#form_box p {
	margin-bottom:		30px;
	font-size:			18px;
	font-weight:		bold;
}
#form_box p span {
	font-size:			16px;
}
#form_box p input[type="radio"] {
	transform:			scale(1.2);
	accent-color:		var(--color_main);
}
#form_box p input[type="text"],
#form_box p input[type="email"],
#form_box p textarea {
	width:				100%;
	padding:			4px;
	font-size:			16px;
	font-weight:		normal;
	border:				solid 1px var(--color_line1);
/*	outline:			none;	*/
}
#form_box p textarea {
	resize:				vertical;
}

#form_box p.err input[type="text"],
#form_box p.err input[type="email"],
#form_box p.err textarea {
	border:				solid 1px #ee0c0c;
	background-color:	#fddcdc;
}

#form_box .btn_box {
	text-align:			center;
}
#form_box a.return,
#form_box .btn_box input[type="submit"] {
	display:			inline-block;
	padding:			10px 40px;
	color:				#fff;
	font-weight:		bold;
	border-radius:		100vh;
	border:				none;
	background-color:	var(--color_link1);
}
#form_box  a.return:hover,
#form_box .btn_box input[type="submit"]:hover {
	filter:				brightness(0.8);
	text-decoration:	none;
}

#form_box .btn_box input[name="submitBack"] {
	background-color:	var(--color_link2);
}
#form_box .btn_box input[name="submitBack"]:hover {
	filter:				brightness(0.8);
	text-decoration:	none;
}

#form_box .mw_wp_form .error {
	font-size:			18px;
	font-weight:		bold;
	color:				#ee0c0c;
}

/* 確認画面 */
#form_box .mw_wp_form_confirm p {
	width:				100%;
	min-height:			2em;
	padding:			1px 2px;
	border:				solid 1px var(--color_line1);
	border-radius:		0;
	font-weight:		normal;
}

#form_box .mw_wp_form_confirm .btn_box br {
	display:			none;
}

/* 完了画面 */
#form_box .mw_wp_form_complete .btn {
	padding-top:		100px;
}
#form_box .mw_wp_form_complete p {
	font-size:			16px;
	font-weight:		normal;
}

@media all and (max-width: 1024px) {

	#form_box .mw_wp_form .mwform-radio-field {
		display:		block;
		margin-left:	10px;
	}
}
/*
mw_wp_form mw_wp_form_input
mw_wp_form mw_wp_form_confirm mw_wp_form_preview
mw_wp_form mw_wp_form_complete
*/

#cont_telfax {
	padding:		80px 0 100px;
	border-top:		2px solid var(--color_line1);
}
#cont_telfax .contents {
	text-align:		center;
}
#cont_telfax .contents > div {
	display:		inline-block;
	padding:		0 40px;
}
#cont_telfax .contents a {
	display:		inline-block;
}
#cont_telfax .contents img {
	display:		block;
	margin:			20px auto;
}

/* ---------------------------------------------------------------- */
/* ページリンク位置調整 */
#plink_1 {
	padding-top:		90px;
	margin-top:			-90px;
}

#bg_img {
	background-image:	url(./images/common/.png);
	background-repeat:	no-repeat;
	background-position:left bottom;
	background-size:	contain;
}

.box_sdw {
	box-shadow:			0 0 10px rgb(0 0 0 / 10%);
}

.box_radius {
	border-radius:		20px;
}

.box:nth-child(1) {

}
.box:first-child {

}
.box:last-child {

}

a:hover img.big {
	transform:		scale(1.1);
}

.box:nth-child(2n+1) {
	background-color:	#e6f9f9;
}
.box:nth-child(2n+0) {
	background-color:	#fff;
}

.video_box:before {
	content:			"";
	display:			block;
	padding-top:		56.25%; /* 高さと幅の比を16:9に固定(9/16*100=56.25) */
}
.video_box iframe {
	position:			absolute;
	top:				0;
	left:				0;
	width:				100%;
	height:				100%;
}

/* ---------------------------------------------------------------- */
/* TEST用 */
/* ---------------------------------------------------------------- */

main {
	overflow: 			hidden;
}


/* ******** */
/* loop img */
/* **************************************************************** */
@keyframes loop {
	0% {
		transform: translateX(100%);
	}
	to {
		transform: translateX(-100%);
	}
}
@keyframes loop2 {
	0% {
		transform: translateX(0);
	}
	to {
		transform: translateX(-200%);
	}
}

#loop_img {
	position:			relative;
	display:			-webkit-flex;
	display:			flex;
	-webkit-flex-flow:	row nowrap;
	flex-flow:			row nowrap;
	overflow:			hidden;
	width:				100%;
}
#loop_img ul {
	display:			-webkit-flex;
	display:			flex;
	-webkit-flex-flow:	row nowrap;
	flex-flow:			row nowrap;
	width:				100%;
	margin:				0;
	padding:			0;
}
#loop_img ul:first-child {
	-webkit-animation:				loop 50s -25s linear infinite;
	animation:						loop 50s -25s linear infinite;
	-webkit-backface-visibility:	hidden;
	backface-visibility:			hidden;
	will-change:					transform;
}
#loop_img ul + ul {
	-webkit-animation:	loop2 50s  linear infinite;
	animation:			loop2 50s linear infinite;
}
#loop_img li {
	flex-shrink:	1;
	display:		inline-block;
	width:			calc(100vw / 2);
	min-width:		150px;
	padding-right:	20px;
	text-align:		center;
	list-style:		none;
}

@media all and (max-width: 700px) {
	#loop_img li.pc_only {
		display:		none;
	}
}
/* **************************************************************** */