@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Material+Icons&display=swap');
html { scroll-behavior: smooth;}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: normal;
	color: #fff;
	background-image: linear-gradient(0deg, rgba(71, 187, 233, 1), rgba(34, 97, 167, 1));
	background-attachment: fixed;
	margin: 0;
	padding: 0;
	position: relative;
	text-align: center;
}

* {
	font-size: 1em;
	box-sizing: border-box;
	background-size: contain;
}

html, body, p, h1, h2, h3, h4, h5, ul, ol, li, dd, dl, dt, div {
	padding: 0;
	margin: 0;
	font-weight: normal;
}

img {
	border: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

html { height: 100%; }
li { list-style-type: none; }
a {
	color: inherit;
	text-decoration: none;
}
a.underline { text-decoration: underline; }
.flex { display: flex; }
.none { display: none; }
.sp { display: none; }
.sp_ib { display: none; }
.sp_inline { display: none; }
.sp_flex { display: none; }
.pc { display: block; }
.pc_ib { display: inline-block; }
.pc_inline { display: inline; }
.pc_flex { display: flex; }
.mode { float: left; }
img { max-width: 100%; }

/* for modern brouser */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size: 0;
	visibility: hidden;
}

/* IE7,MacIE5 */
.clearfix { display: inline-block; }

/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
.tcenter { text-align: center; }
.tright { text-align: right; }

/* 選択色 */
a { color: #2261a8; }
::selection {
	background: #2261a8;
	color: #fff;
}

::-moz-selection {
	background: #2261a8;
	color: #fff;
}

/* YouTube 埋め込み */
.YT {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.YT iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

main { padding: 0 1.5em; }
.mtFuji {
	position: fixed;
	bottom: -1em;
	left: 0;
	width: 100vw;
	z-index: -1;
}

/* header */
header ul.Gmenu,
header ul.GmenuSP {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	width: 100%;
	background: #fff;
	text-align: center;
	padding: 0.5em;
}
header ul.Gmenu li {
	display: inline-block;
	padding: 0 1em;
	color: #ccc;
}
header ul.Gmenu li a { color: rgba(34,97,168,1); }
header ul.Gmenu li a:hover { color: #f00; }
#slidemenu {
	display: none;
	position: fixed;
	width: 100%;
	height: 100vh;
	z-index: 100;
	top: 0;
	left: 0;
	padding: 1.5em;
	box-sizing: border-box;
	background: rgba(34,97,168,0.9);
}

#slidemenu ul.Gmenu li {
	padding: 0.5em 1em;
	font-size: 1.5em;
	border-bottom: rgba(255,255,255,0.5) dashed 1px;
}
#slidemenu ul.Gmenu a {
	color: #fff;
	cursor: pointer;
}
#slidemenu ul.Gmenu a.gray {
	color: #333;
	cursor: default;
}

body { margin-top: 0; }
h1 {
	padding-top: 70px;
	margin: -70px auto 2em;
}
h1 img {
	width: 100%; max-width: 1200px;
}

h2 {
	margin: 0;
	color: #ff0;
	font-size: 3em;
	font-weight: 700;
}
h2.ttl { margin: -15px 0 0; }

h3 {
	font-size: 1.5em;
	font-weight: 700;
	margin: 0 0 1em;
}
h4.ttl {
	font-size: 1.2em;
	font-weight: 700;
}

#parking {
	padding-top: 70px;
	margin-top:-70px;
}

/* contentsBox */
div.contentsBox {
	max-width: 1000px;
	margin: 0 auto 1em;
	padding: 0 0 1em;
	padding-top: 70px;
	margin-top:-70px;
}
div.contentsBox p { text-align: left; }
div.ticketBox {
	max-width: 1000px;
	margin: 0 auto 1em;
	padding: 1.5em 2em;
	background: #fff;
	color: #000;
}
div.ticketBox h2 { color: #2261a8; }
div.ticketBox.blue {
	background: #2261a8;
	border: none;
	color: #fff;
}
div.ticketBox.yellow {
	background: #7fcef4;
	border: none;
	color: #333;
}
div.ticketBox.gray {
	background: #999;
	border: none;
	color: #fff;
}
div.ticketBox h2 {
	padding-top: 70px;
	margin-top:-70px;
}
div.ticketBox h4 {
	color: #ff1894;
	font-size: 1.7em;
	font-weight: 700;
}

ul.kome li {
	list-style:none;
	padding: 0 0 0 1em;
	text-indent: -1em;
	font-size: 0.8em;
	line-height: 1.5em;
	display: block;
	text-align: left;
}
ul.kome li:before { content:"※" }
ul.kome li.disc:before { content:"・" }
ul.kome li.none {
	list-style:none;
	padding: 0;
	text-indent: 0em;
}
ul.kome li.none:before { content:"" }
ul.kome li ul.kome li { font-size: 1em; }
ul.kome li.blue {
	color: #ff0;
	font-size: 1.2em;
	margin-left: -0.5em;
}

/* NEWS LIST */
ul.news {
	width: 100%;
	max-width: 1000px;
	background: #fff;
	border-radius: 1.5em;
	padding: 0 1em;
	margin: 2em auto 0;
	z-index: 2;
}
ul.news li {
	padding: 1em 1em 1em 0;
	border-bottom: #ccc dashed 1px;
	color: #000;
}
ul.news li:last-child { border: 0; }
ul.news li p {
	display: inline-block;
	vertical-align: middle;
	width: 5em;
	text-align: center;
}
ul.news li p:last-child {
	width: calc(100% - 5em);
	text-align: left;
}
ul.news li p:first-child {
	text-align: left;
	color: #2261a8;
	padding: 0 1em;
	font-weight: 700;
}
ul.news li p:first-child span {
	display: block;
	width: 100%;
	font-size: 0.75em;
}
ul.news li a {
	color: #000;
	text-decoration: underline;
}
ul.news li a:hover { color: #2261a8; }
ul.news li:first-child p:first-child {
	width: 25%;
	font-size: 2em;
	text-align: left;
	color: #2261a8;
	padding: 0 0.5em;
	font-weight: 700;
}
ul.news li:first-child p:last-child {
	width: 75%;
	text-align: right;
}
ul.news li:first-child {
	padding: 1em 0 1em 0;
}
ul.news li:first-child p:last-child span {
	background: #2261a8;
	color: #fff;
	padding: 0.25em 1em;
	margin-right: -0.8em;
	font-weight: 700;
	font-size: 1.25em;
}
ul.news li:first-child p:last-child span small { font-size: 0.8em; }
ul.news li:first-child p:last-child span strong { color: #ff0; }

div.ticketBox.tGrid {
	display: grid;
	grid-gap: 0;
	grid-template-columns: 5fr 4fr;
}

div.rightBox,
div.leftBox {
	text-align: left;
	padding: 1.5em 1em;
}
div.rightBox.uL,
div.leftBox.uL {
	border-bottom: #2261a8 dashed 1px;
}
div.rightBox img { width: 100%; margin: 0.5em 0; }

ul.ticketTTL {
	margin-bottom: 0.5em;
	border-bottom: rgba(255,255,255,0.5) dashed 1px;
}
ul.ticketTTL li {
	width: 49%;
	vertical-align: middle;
	display: inline-block;
	padding: 0 0 0.5em;
}
ul.ticketTTL li:first-child {
	text-align: left;
	font-size: 1.5em;
	font-weight: 700;
}
ul.ticketTTL li:last-child { text-align: right; }

ul.btnBox {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
ul.btnBox a {
	-webkit-flex-grow: 1;
	flex-grow: 1;
	background: #fff;
	padding: 0.5em;
	margin: 0.5em 0.5em 0;
	border-radius: 0.5em;
	font-weight: 700;
}
ul.btnBox a small { font-size: 0.7em; }
.gray ul.btnBox a {
	color: #555;
	background: #ccc;
}
.yellow ul.btnBox a {
	color: #333;
	background: #fff;
}
.yellow small { font-size: 0.65em; }
strong.blue {
	color: #ff0;
	font-size: 1.3em;
}

.menuICON:after {
	vertical-align: top;
	content: '\e5d2';
	font-size: 1.65em;
	font-family: 'Material Icons';
}

ul.archivesBox {
	margin: 1em 0 0;
}
ul.archivesBox li {
	display: inline-block;
	padding: 0 0.25em;
}

/* footer */
footer {
	text-align: left;
	padding: 2em;
	width: 100%;
	background: rgba(255,255,255,0.75);
	color: #000;
	text-align: center;
	margin-top: 4em;
}
footer a {
	color: #000;
	text-decoration: underline;
}
copy {
	padding: 2em;
	font-size: 0.8em;
}

@media all and (max-width: 1200px) {
	h2.ttl { margin: 0; }
	h2.ttl img { max-width: 90%; }
}
@media all and (max-width: 736px) {
	.sp { display: block; }
	.sp_ib { display: inline-block; }
	.sp_inline { display: inline; }
	.sp_flex { display: flex; }
	.pc { display: none; }
	.pc_ib { display: none; }
	.pc_inline { display: none; }
	.pc_flex { display: none; }

	body {
		font-size: 3vw;
		background: #4fb8e5;
	}

	h1 img {
		width: 100%;
	}
	header ul.Gmenu li {
		font-size: 1.25em;
		padding: 0 0.5em;
	}
	body { margin-top: 1.5em; }

	header ul.GmenuSP {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	header ul.GmenuSP li:last-child { margin-left: auto; }
	header ul.GmenuSP a {
		color: rgba(34,97,168,1);
		cursor: pointer;
		font-size: 1.25em;
	}

	ul.news { width: 100%; }
	ul.news li { padding: 1em 0.5em; }
	ul.news li p,
	ul.news li p:last-child {
		width: 100%;
		text-align: left;
	}
	ul.news li p:first-child {
		font-size: 0.8em;
		padding: 0;
	}
	ul.news li p:first-child span {
		display: inline;
		font-size: 1em;
		padding: 0;
	}
	ul.news li p:first-child span:after { content:"."; }

	div.rightBox,
	div.leftBox {
		width: 100%;
		padding: 0 0 1em;
	}

	div.ticketBox { padding: 0.75em 1em; }
	ul.ticketTTL li:first-child { font-size: 1em; }
	ul.ticketTTL li:last-child { font-size: 0.75em; }

	ul.btnBox { flex-wrap: wrap; }
	ul.btnBox a {
		-webkit-flex-grow: 1;
		flex-grow: 1;
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	div.ticketBox.tGrid { grid-template-columns: 1fr; }
	div.rightBox.uL { border-bottom: 0; padding: 1em 0 0; }
}