@charset "utf-8";

* {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	outline: none;
}

img {
	display: block;
	border-style:none;
	user-select: none;
}

a {
	text-decoration:none;
}

#contents {
	position: relative;
	width:100%;
	overflow: hidden;
}

#wrapper {
}

#top {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

.top_scroll {
	position: absolute;
	width: 100%;
	height: 100vh;
	z-index: 50;

}

.topimage {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
	z-index: 10;
	background: url(../images/top_image.png) ;
	background-size: cover;
	background-position: 50% 28%;

	z-index: 30;
}

.top_image_text {
	position: absolute;
	top: 0;
	left: 50%;
	width: 34vh;
	margin-left: -185px;
	z-index: 35;
}

video#bgvid {
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 0;
}

#gaiyou_anchor {
	margin-top: -0px;
	padding-top: 0px;
}

#schedule_anchor {
	margin-top: -0px;
	padding-top: 0px;
}

#midokoro_anchor {
	margin-top: -120px;
	padding-top: 120px;
}

#ijyu_anchor {
	margin-top: -100px;
	padding-top: 100px;
}

#main {
	position: relative;
	width: 100%;
	background: #fff;
	z-index: 10;
}

#menu_bar {
	position: relative;
	width: 100%;
	height: 80px;
	background: #fff;
	z-index: 50;
	transition: all 0.3s;
}

#menu_bar ul {
	display: flex;
	justify-content: center;
}

#menu_bar ul li {
	margin-top: 25px;
	list-style: none;
	opacity: 1;
	transition: all 0.3s;
}

#menu_bar ul li:hover {
	opacity: 0.5;
}

#menu_bar ul li:not(:last-child) {
	margin-right: 55px;
}

#osae {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}

#gaiyou {
	width: 100%;
	height: 836px;
	background: url(../images/gaiyou_back.png);
	text-align: center;
	margin-bottom: 160px;
}

#gaiyou img {
	position: absolute;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}

#schedule {
  position: relative;
  width: 1200px;
  height: 1202px;
  left: 50%;
	margin-left: -600px;
}

#day_1st {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

#day_2nd {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

#oubo1 {
	text-align: center;
}

.entry_btn {
	position: relative;
	left: 50%;
	margin-left: -314px;
	margin-bottom: 30px;
	display: block;
	width: 629px;
	opacity: 1;
	transition: all 0.3s;
}

.entry_btn:hover {
	opacity: 0.5;
}

.entry_cuation {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
	margin-top: 40px;
}

#midokoro {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}

#ijyu {
	width: 100%;
	height: 527px;
	background: url(../images/gaiyou_back.png);
	text-align: center;
}

#ijyu img {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}

#ijyu_sya {
	width: 100%;
	height: 1698px;
	background: url(../images/ijyu_sya_back.png);
	text-align: center;
}

#ijyu_sya img {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}

#footer {
	width: 100%;
	height: 497px;
	background: url(../images/gaiyou_back.png);
	text-align: center;
}

#footer img {
	position: relative;
	width: 1200px;
	left: 50%;
	margin-left: -600px;
}


/* loading ---------------- */

#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 100;
}

#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -200px;  margin-left: -150px;
  text-align: center;
  color: #000;
  z-index: 100;
}

#loader img {
	width: 300px;
}

.loading_text {
	width: 300px;
	margin-top: -50px;
	margin-left: 35px;
	font-size: 20px;
}

	/* icon flash --------*/

	.flash{
	    animation: flash 1.5s infinite linear;
	    -webkit-animation: flash 1.5s infinite linear;
	    -moz-animation: flash 1.5s infinite linear;
	}
	@keyframes flash {
	    0% { opacity: 0.2; }
	    50% { opacity: 1; }
	    100% { opacity: 0.2; }
	}
	@-webkit-keyframes flash {
	    0% { opacity: 0.2; }
	    50% { opacity: 1; }
	    100% { opacity: 0.2; }
	}
	@-moz-keyframes flash {
	    0% { opacity: 0.2; }
	    50% { opacity: 1; }
	    100% { opacity: 0.2; }
	}
