@charset "utf-8";


body, h1, h2, h3, h4, h5, h6 {
			font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', Meiryo, 'メイリオ', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
			font-weight: 400;
			-webkit-text-size-adjust: 100%;	-moz-osx-font-smoothing: grayscale;	-webkit-font-smoothing: antialiased;-webkit-tap-highlight-color: transparent;tap-highlight-color:transparent}
		p,ul,ol,dl,th,td,body {	line-height:1.9;
								@media (width < 1068px)	{line-height:1.9;}
								@media (width < 734px)	{line-height:1.8;}
							}

/* header */

.header-nav-wrap header {
  width: 100%;
  position:fixed;
  height:40px;
  background:transparent;
  z-index:99;
}





/* 公園ロゴ */
.logo img {height:40px;padding:8px;}


/* footer */
footer {padding:2rem 0 1rem;background:transparent;color:#fff;}



section {margin-bottom: 2rem;}
.grid-container {padding-left:2rem;padding-right:2rem;}
@media (max-width: 640px) {
	.grid-container {padding-left:.5rem;padding-right:.5rem;}
}

h3 {
background: none;
margin:2rem auto 2rem;padding:0;color: var(--gold-text);
border-top: 1px solid var(--yellow-text);
border-bottom: 1px solid var(--yellow-text);
padding:1rem;margin-bottom:2rem;
display: flex; align-items: center;justify-content: center;text-align: center;
font-family: "UoqMunThenKhung", serif;
  font-weight: 400;font-size:1.75rem;
  font-style: normal;
}
@media (max-width: 640px) {
	h3 {font-size: 1.25rem;}
}


h4 {margin-left:0.5rem;padding-left: 0;color: #00E5FF;font-weight:bold;}



#timetable .callout {background: rgba(255,255,255,.8);border:2px solid #4CAF50;}
#timetable .callout h5 {font-weight: bold;font-family: serif;}

#ennai-map {margin-bottom: 0;padding-bottom:0;}




/* イベント */
#lightup-event .legends {display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 1rem;}
#lightup-event .legends div,#lightup-event .event-info div {display:flex;align-items: flex-top;gap:.125rem;}
#lightup-event img.pict {width:1rem;height:1rem;margin-bottom:0;margin-top:2px;}
.event-image img{width:100%;aspect-ratio:3/2;object-fit:cover;}
.event-item p {margin:.5rem 0 1rem;line-height:1.4;}
.event-item {margin:1rem .5rem;padding:.75rem; /*background:#fff;*/ border-radius:5px;}
.event-title {font-weight:bold;font-size:1rem;margin:.5rem 0;}
.event-info {margin-left: 1rem;margin-bottom:1rem;}
.callout.yurukawafu {background:rgba(255,255,255,.1);color:#fff;}


/* 混雑予想 */
.cal-legend {width:400px;max-width:90vw;}

/* アクセス */
#access h5 {color:#B3E5FC;margin-left:.5rem;font-size:.95rem;}
.access-map img {width:600px;max-width:80vw;}




/* よくある質問 */
#lightup-faq h4 {color:#fff;font-weight:bold;margin:2rem 0 .5rem;font-size:1.125rem;}
#lightup-faq .accordion > li { background:none;padding-left:0;}
#lightup-faq .accordion li.is-accordion-submenu-item {background:none;padding-left:0;padding:1rem 1rem 1.125rem;}
.accordion-item a {position:relative;}
.accordion-item a span {position: absolute;top:.75rem;left:.5rem;width:2rem;height:2rem;z-index:2;}
.accordion-title::before {content: "▼";}
.is-active>.accordion-title::before {content: "▼";transform: rotate(180deg);}
.accordion-title {background: #9BC4C5;font-size:1rem;font-weight:bold;color:#333 !important;padding:1.25rem 3rem}
.accordion-title:hover {background:var(--gold-text);}
.accordion-title span {background:#fff; padding:.5rem .625rem; border-radius:50%; color:#FF1744;}
.accordion-content {background:#202131;color:#fff; }
.accordion-content a, .accordion-content a:visited {color:#4CAF50 !important;}
.accordion-content span {background:#4CAF50; padding:0; border-radius:50%; color:#FFF;font-weight:bold;display:flex;justify-content: center;align-items: center;width: 2rem;height: 2rem;}

#lightup-table3,
#lightup-table5,
#lightup-table6 {table-layout: fixed;}

#lightup-table7 th {width:8rem;}
#lightup-table7 td {text-align: left !important;}




@media (max-width: 1024px) {
	.eanby, .eanby2 {text-align: center;}
	.eanby img,img.eanby {width:100%;max-width:80vw;}
	.eanby2 img,img.eanby2 {width:100%;max-width:50vw;}
}
@media (max-width: 640px) {
	.eanby, .eanby2 {text-align: center;}
	.eanby img,img.eanby {width:100%;max-width:80vw;}
	.eanby2 img,img.eanby2 {width:100%;max-width:50vw;}
}



/* 2025追加 */
:root {--gold-text:#FFC107;}
:root {--yellow-text:#FFEE58;}
:root {--white-text:#FFF;}
:root {--black-text:#333;}

body {color:#fff;line-height:1.5;}
#container {background-image: linear-gradient(rgba(255,255,255,0.1), rgba(0,0,0,0.1)), url(images/bg-space2000b.jpg);background-repeat: repeat-y; background-size: 100%; background-position: top center; color:#fff;line-height:1.5;padding-top:1rem !important;}
.page-logo-lightup {margin-left: 10px;}
.page-logo-lightup img {width:160px;}

@media (max-width: 640px) {p {margin-left:0;margin-right:0;}}
@media (max-width: 640px) {h1 img {margin:0;}}
h4 {color:var(--yellow-text);font-size: 1.25rem;font-weight:bold;}
h5 {color:var(--yellow-text);font-size: 1.125rem;font-weight:bold;}
a, a:visited {color:var(--yellow-text);}
a img:hover {opacity: .8;}
ul li {background: url(images/li-yellow.png) no-repeat 0 7px;}

tbody, tfoot, thead {border: 1.5px solid var(--black-text);}
thead th, tbody th {background: #c7e0f5; color:var(--black-text);border-right: 1.5px solid var(--black-text);}
thead td, tbody td {background: #eaf6fd; color:var(--black-text);}
tbody tr {border-bottom: 1.5px solid var(--black-text);}

.callout.yellow {border: 2px solid var(--gold-text); background: transparent;color:var(--white-text);}

.imgborder {border: 5px solid #fff;}
.imgradius {border-radius: 1rem;}
img.tilt1 {transform: rotate(1deg);} 
img.tilt2 {transform: rotate(2deg);} 
img.tilt-1 {transform: rotate(-1deg);} 
img.tilt-2 {transform: rotate(-2deg);} 

/* ドロワー */
#bowa {background: #000;}
#bowa img {width:240px;}
#bowa .narrow {text-align: center;}
#bowa ul {margin-left:0;margin-top:1.5rem;margin-bottom:2rem;}
#bowa ul li {margin-left: 0; background: transparent;}
.drawer-logo-koen {display: flex;flex-direction: column;}
#bowa a:hover {color:var(--yellow-text) !important;}


/* トップページ */
.summary {text-align: center; fonr-size:1.125rem;}
.summary strong {font-size: 1.25rem;color:var(--yellow-text);}
img.theme {margin:0 auto;width:400px}
.lightup-credit .callout {padding-top:2.5rem;padding-bottom:2rem;}
.shusai {display: flex;gap:1rem;flex-wrap: wrap;align-items: center;justify-content: center;font-weight:bold;}
.companies {display: flex;gap:1rem;flex-wrap: wrap;align-items: center;justify-content: center;}
.companies img {max-height:40px;}
.kotoshide {margin:1.5rem auto;text-align:center;}
.banner_manwith {text-align: center;margin-top:2rem;}
.banner_manwith img {max-height:50px;}


/* 10回の軌跡 */
@media (min-width: 641px) {
.introduction-10th img {max-width:300px;margin-bottom: 2rem;}
}
.introduction-10th {text-align: center; fonr-size:1.125rem;}
.kiseki-item {width: 600px;max-width:80vw;background: rgba(255,255,255,.1);background: #4B5075; border-radius:2rem;padding:.01rem 1rem 1rem;margin-top:4rem;margin-bottom: 12rem;}
@media (max-width: 640px) {.kiseki-item {width:90vw;max-width: 90vw} }
.kiseki-item {margin-left:auto;margin-right:auto;}
@media (min-width: 641px) {
.kiseki-item.center {margin-left:auto;margin-right:auto;}
.kiseki-item.left {margin-left:0;margin-right:auto;}
.kiseki-item.right {margin-right:0;margin-left:auto;}
}
.kiseki-item p {margin-bottom: 2rem;font-weight: bold;}
.kiseki-item .image-box {text-align:center;}
@media (min-width: 641px) {
.kiseki-item img {margin-bottom:0;max-width:400px;} 
}
#kiseki .caption {font-size: .8125rem; font-weight:normal;text-align:center;}
.kiseki-timeline {background-image: url(images/milkyway.png); background-repeat: repeat-y; background-position: top center;}

/* 料金 */
.fee-card {margin-top:2rem;margin-bottom:2rem;}

/* 混雑カレンダー */
.konzatsu-cal th,.konzatsu-cal td {border-right:1px solid #333;border-bottom:1px solid #333;}
.konzatsu-cal  {border-left:1px solid #333;border-top:1px solid #333;table-layout: fixed;max-width:80vw;margin:1rem auto;}
.konzatsu-cal.tatenaga th,.konzatsu-cal.tatenaga td {padding:1.5rem;line-height:1.3;}
@media (max-width: 640px) { .konzatsu-cal.tatenaga th,.konzatsu-cal.tatenaga td {padding: .5rem;} }
.konzatsu-cal.tatenaga th img,.konzatsu-cal.tatenaga td img {margin-bottom:0;}
.sat {color:#0277BD} .sun {color:#C62828;}

/* イベント */
#lightup-event .event-image {text-align: center;margin:0 auto;}
.eventdate img{width:120px;margin-bottom:0;}
.event-item h4 {margin:0;}
.event-info {margin-left:0;}
.event-info li {margin:0; background: transparent;}
.event-info .pict {margin-right:.25rem;}

/* グルメ */
#gurumeguri .grid-x {margin-bottom: 4rem;}
.menu-miharashi {background:#FCF0DF;}
.menu-lakeside {background:#f6c38e;}
.menu-kinen {background:#FFF;padding-bottom:3rem;padding-top:3rem;}

/* フォトスポット */
.photo-spot-place {margin-bottom: 4rem; }
@media (max-width: 640px) {.photo-spot-place img {margin-top:2rem;} }


/* サブナビ */
.bottom-menu a {
	display: block; color:var(--white-text);font-weight:bold;padding:1rem;font-size:1.125rem;text-align: center;
	background: linear-gradient(330deg, var(--black-text), #4B5075);border:2px solid #fff;
	margin-top:-1px;
}
.bottom-menu a:hover {color:var(--yellow-text);} 

@media (max-width: 640px) {
	.bottom-menu .grid-x {align-items: stretch;}
	.bottom-menu .cell a {display: flex;align-items: center;justify-content: center;height: 100%;font-size: .75rem;}
}



.kz-yellow {  animation: floating-x 1.2s ease-in-out infinite alternate-reverse;}
@keyframes floating-x {
  0% {	transform: translateX(-3%);  }
  100% {	transform: translateX(3%);  }
}

.kz-green {  animation: floating-y 1s ease-in-out infinite alternate-reverse;}
@keyframes floating-y {
  0% {	transform: translateY(-3%);  }
  100% {	transform: translateY(3%);  }
}

.kz-red {  animation: floating-xy .6s ease-in-out infinite alternate-reverse;}
@keyframes floating-xy {
  0% {	transform: scale(1.05, 1.05);  }
  100% {	transform: scale(1, 1);  }
}





.cp_arrows *, .cp_arrows *:before, .cp_arrows *:after {
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
	}
	.cp_arrows {
		position: absolute;
		bottom:0;
		right: 0;
		  left: 0;
		  margin: 0 auto;
		z-index:5;
		height:100px;
	}
	.cp_arrows .cp_arrow {
		position: absolute;
		top: 50%;/*着地点（サンプルは[class:cp_arrows]height300pxの50%）*/
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
		-webkit-transform-origin: 50% 50%;
				transform-origin: 50% 50%;
		opacity: 0;
	}
	.cp_arrows .cp_arrowfirst {
		-webkit-animation: arrow-move08 2s ease-in-out infinite;
				animation: arrow-move08 2s ease-in-out infinite;
	}
	.cp_arrows .cp_arrowsecond {
		-webkit-animation: arrow-move08 2s 1s ease-in-out infinite;
				animation: arrow-move08 2s 1s ease-in-out infinite;
	}
	.cp_arrows .cp_arrow:before, .cp_arrows .cp_arrow:after {
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 30px;
		height: 3px;
		content: '';
		background: #4CAF50;
	}
	.cp_arrows .cp_arrow:before {
		-webkit-transform: rotate(30deg) translateX(-39%);
				transform: rotate(30deg) translateX(-39%);
		-webkit-transform-origin: top left;
				transform-origin: top left;
	}
	.cp_arrows .cp_arrow:after {
		-webkit-transform: rotate(-30deg) translateX(39%);
				transform: rotate(-30deg) translateX(39%);
		-webkit-transform-origin: top right;
				transform-origin: top right;
	}
	@-webkit-keyframes arrow-move08 {
		0% {
			top: 40%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
			opacity: 0;
		}
		70% {
			opacity: 1;
		}
		100% {
			opacity: 0;
		}
	}
	@keyframes arrow-move08 {
		0% {
			top: 40%;/*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
			opacity: 0;
		}
		70% {
			opacity: 1;
		}
		100% {
			opacity: 0;
		}
	}	







/* ローディング */
.loader-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #1f2f4f;
  display: flex;
  justify-content: center;
  align-items: center;
}

.loader {
  font-size: 8px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 6em;
  height: 6em;
  border-radius: 50%;
  background: #ffffff;
  background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  position: relative;
  -webkit-animation: load3 1.4s infinite linear;
  animation: load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

.loader:before {
  width: 50%;
  height: 50%;
  background: #ffffff;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

.loader:after {
  background: #1f2f4f;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@-webkit-keyframes load3 {
  0% {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
  }
  100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
  }
}
@keyframes load3 {
  0% {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
  }
  100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
  }
}
	

/*========= 背景動画設定のCSS ===============*/

/*header設定*/
#header{
  position: relative;/*ローディング画像などを表示す際の基点とするため指定*/
	height: 100vh;/*高さを全画面にあわせる*/
	text-align: center;
	color: #fff;
	/*ローディング画面時＆動画が表示されないときに表示する背景画像のレスポンシブ化*/
	background: url("../img/movie.jpg") no-repeat;
	background-size: cover;
	overflow: hidden;
}

/* ローディングアイコン設定 */

#loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	font-weight: bold;
}

/*jQueryで付与されたdisappearクラスがついたらロゴエリアを非表示*/

#loading.disappear{
	 display: none;   
}


/* youtube設定 */
/*
#youtube-area{
	position: fixed;
	z-index: 1;
	top: 0;
	right:0;
	left:0;
	bottom:0;
	overflow: hidden;
  opacity: 0;    
}
*/

/*jQueryで付与されたappearクラスがついたらYoutubeエリアをふわっと表示*/
#youtube-area.appear {
  animation-name:PageAnimeAppear;
  animation-duration:.5s;
  animation-fill-mode:forwards;
}

@keyframes PageAnimeAppear{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}

#youtube {
/*天地中央配置*/
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
/*縦横幅指定*/
  width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
  height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
  min-height: 100%;
  min-width: 100%;
}

/*youtubeがクリックされないためのマスク*/
#youtube-mask{
	position: absolute;
	z-index: 2;/*下から2番目に表示*/
	top:0;
	width:100%;
	height: 100%;
}


/*youtube 上のロゴ */
h1{
  position:absolute;
  z-index: 2;/*下から2番目に表示*/
/*天地中央配置*/
  bottom:0;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
header h1 img {width:70vw;max-width:500px;margin-bottom: 0; }
.logo-koen img { width:240px;
	
}
.logo-koen {
	position:absolute;
	  z-index: 3;/*下から2番目に表示*/
	/*天地中央配置*/
	  top: 3.5rem;
	  left: 1rem;
}

	
/*下のコンテンツ*/
#container{
	position: relative;/*relativeを指定してfixed指定をした#youtube-areaの上に表示*/
	z-index: 3;/*一番上に表示*/
	/*見た目の調整*/
/*  background-image: url("images/bg-body.png"); */
  padding:4rem 0;
}	

/* * fujimoto add * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* ボワ(全画面ドロワー) */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#bowa{	position:fixed;	z-index: -1;opacity: 0;top:0;width:100%;height: 100vh;transition: all 0.3s;}
/* modal下のスクロール防止 */
body.fixed {overflow:hidden;}
/*アクティブクラスがついたら透過なしにして最前面へ*/
#bowa.panelactive{ opacity: 1;z-index:100; position: fixed; z-index: 999; width: 100%;height: 100vh;overflow: auto;-webkit-overflow-scrolling: touch;	padding: 1rem 0 3rem;}

/* ハンバーガー全画面用 標準サイズ */
.openbtn{position:fixed;z-index: 9999;top:0;right: 10px;cursor: pointer;width: 80px;height:80px;background: linear-gradient(to right, #D885A8,#969DC0)}
.openbtn span{display: inline-block;transition: all .4s;position: absolute;	left: 14px;	height: 3px;border-radius: 2px;	background-color: white; width: 65%;}
.openbtn span:nth-of-type(1) {top:18px;}
.openbtn span:nth-of-type(2) {top:36px;}
.openbtn span:nth-of-type(3) {top:54px;}
.openbtn.active span:nth-of-type(1) {top: 32px;	left: 8px;	transform: translateY(8px) rotate(-45deg);width: 75%;}
.openbtn.active span:nth-of-type(2) {opacity: 0;}
.openbtn.active span:nth-of-type(3){top: 50px;left: 8px;transform: translateY(-8px) rotate(45deg);	width: 75%;} */

/* スマホ用のシンプルなリスト */
#bowa ul.simple-menu {display: none;position: absolute;z-index: 99;top:50%;left:50%;transform: translate(-50%,-50%);}
#bowa.panelactive .simple-menu {display: block;margin-bottom:4rem;}
#bowa .simple-menu li{list-style: none;text-align: center;}
#bowa .simple-menu li a{color:var(--text-color);font-size:1.25rem;text-decoration: none;padding:10px;display: block;font-weight: bold;}

#bowa.panelactive .support-menu {display: block;}
#bowa .support-menu li{list-style: none;text-align: center;}
#bowa .support-menu li a {color:var(--text-color);font-size:1rem;text-decoration: none;padding:10px;display: block;font-weight: bold;}


/*タイトル横 矢印バージョン*/
.menu-label::before{	content:"";width: 6px;height: 6px;border-top: 2px solid #333;border-right: 2px solid #333;-webkit-transform: rotate(45deg);position: absolute;top:calc( 50% - 3px );right: 20px;transform: rotate(135deg);}
.toggle:checked + .menu-label::before {transform: rotate(-45deg) !important;} 

