@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Voltaire&display=swap');

body {
	margin:0;
	padding:0;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #000;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
	background-size: 400% 400%;
	animation: AnimationName 9s ease infinite;
	background: #fff;
	letter-spacing: 0.1em;
}

a {
   color:#333;
   text-decoration:none;
}

a:hover {
   color:#31001D;
   text-decoration:none;
}

img { border:0;}

h1,h2,h3,h4,h5,h6,img{
	margin:0;
	padding: 0px;
}

ol,ul,li{list-style: none;margin: 0px;padding: 0px;}


html,body {
	height: 100%;
	padding: 0;
	margin: 0;
}


.menu-container {
  margin: 0;
}

.menu-container .menu {
    -webkit-transform: translate(-50%, -50%);
    display: none;
    height: auto;
    left: 50%;
    position: fixed;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    z-index: 100;
	text-align: center;
	color: #ffffff;
  }

.menu-container .menu .menu-item {
  flex: 1;
}

.menu-container .menu .menu-item a {
    color: #fff;
    border-right: none;
	font-size: 20px;
	letter-spacing: 0.05em;
	font-family: 'Voltaire', sans-serif;
	line-height: 50px;
  }
  .menu-container .menu .menu-item:last-child a {
    border-bottom: none;
  }

.menu-container .menu .menu-item a:hover {
  background: #ccc;
  color: #ffffff;
}

.fadein {
	opacity : 0.1;
	transform : translate(0, 50px);
	transition : all 500ms;
	}

/* 画面内に入った状態 */
.fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
	}



#modal-overlay {
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  height: 120%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99;
	cursor: pointer;
}

#menufade{
	text-align: right;
	font-size: 30px;
	margin-bottom: 20px;
	cursor: pointer;
}




.wrapleft {
	position: relative;
	background:-webkit-linear-gradient(left, #F0EED1 0%, #F0EED1 20%, #fff 20%, #fff 100%);
	background:-o-linear-gradient(left, #F0EED1 0%, #F0EED1 20%, #fff 20%, #fff 100%);
	background:linear-gradient(to right, #F0EED1 0%, #F0EED1 20%, #fff 20%, #fff 100%);
}

.wrapright {
	position: relative;
background:-webkit-linear-gradient(left, #fff 0%, #fff 80%, #F0EED1 80%, #F0EED1 100%);
background:-o-linear-gradient(left, #fff 0%, #fff 80%, #F0EED1 80%, #F0EED1 100%);
background:linear-gradient(to right, #fff 0%, #fff 80%, #F0EED1 80%, #F0EED1 100%);
}

.wrapboth {
	background-color: #97BC9C;
}

.wrapphoto  {
	background-image: url(../img/back2.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-color: #fff;
	position: relative;
}

.wrapfoot {
	background-color: #766A73;
}

#container {
	width: 70%;
	margin-right: 15%;
	margin-left: 15%;
	padding-top: 50px;
	padding-bottom: 130px;
}

#container2 {
	width: 86%;
	margin-right: 7%;
	margin-left: 7%;
	height: auto;
	padding-top: 50px;
	padding-bottom: 130px;
	background-color: #fff;
}

#container2in {
	width: 80%;
	margin-right: 10%;
	margin-left: 10%;
	padding-top: 50px;
	height: auto;
	padding-bottom: 130px;
}

#container4 {
	width: 70%;
	margin-right: 15%;
	margin-left: 15%;
	padding-top: 20px;
	padding-bottom: 50px;
}



#top {
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-color: #000;
	height: 100vh;
	position: relative;
}

#top_2 {
	background-image: url(../img/topback.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-color: #fff;
	height: 300px;
	position: relative;
}


#top_left {
	width: 5%;
	position: fixed;
	left: 5%;
	top: 8%;
	z-index: 10;
}

#top_right {
	width: 15%;
	position: fixed;
	right: 5%;
	top: 10%;
	z-index: 10;
}

#logo { position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-70%);
  -webkit- transform: translateY(-50%) translateX(-70%);}

#logo img {
	width:30%;
}


main {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	width: 800px;
}

main p{
	font-size: 17px;
	margin-top: 50px;
	letter-spacing: 0.1em;
}

.title01 {
	width: 100%;
	margin-bottom: -15px;
	margin-top: 50px;
	text-align: center;
	font-family: 'Voltaire', sans-serif;
}

.title02 {
	width: 100%;
	font-size: 24px;
	margin-bottom: -15px;
	margin-top: 20px;
	text-align: center;
}

.title02en {
	width: 100%;
	margin-bottom: -80px;
	margin-top: 30px;
	font-size: 12px;
	text-align: center;
}

.title02_2 {
	width: 100%;
	font-size: 24px;
	margin-top: 20px;
	text-align: center;
	color: #fff;
}

.title02en_2 {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 12px;
	text-align: center;
}

.title03 {
	width: 100%;
	margin-bottom: -15px;
	margin-top: 50px;
	text-align: center;
	font-family: 'Voltaire', sans-serif;
	color: white;
}

.line {
	width: 100%;
	margin-bottom: 100px;
	margin-top: 100px;
	text-align: center;
}

.line img {
	width: 30%;
}

#content_box {
	width: 100%;
	margin-top: 80px;
}

#photo01 {width: 50%;float: left;}
#photo01 img {width: 100%;}

#photo02 {
	width: 100%;
	float: left;
	margin-top: 150px;
}
#photo02 img {width: 100%;}

#photo02_2 {
	width: 100%;
	float: left;
	margin-top: 100px;
	margin-bottom: 100px;
	height: auto;
}
#photo02_2 img {width: 100%;}

#photo03 {width: 50%;float: right;}
#photo03 img {width: 100%;}

#info01 {width: 45%; float: left; margin-left: 5%; margin-top: 10px;}
#info_02 {
	font-size: 21px; 
	margin-bottom: 20px;
	font-weight: 300;
	letter-spacing: 0.15em;
	line-height: 200%;
}
#info_03 {
	font-size: 12px;
	line-height: 200%;
}

#info_02_2 {
	font-size: 21px; 
	margin-bottom: 20px;
		margin-top: 30px;
	font-weight: 300;
	letter-spacing: 0.15em;
	line-height: 200%;
	color: #fff;
}
#info_03_2 {
	font-size: 12px;
	line-height: 200%;
	color: #fff;
}

#info02 {width: 45%; float: right; margin-right: 5%;}

#info_text {
	clear: both; 
	font-size: 14px; 
	padding-top: 50px;
	margin-bottom: 25px; 
	line-height: 210%;
}


.en1 {
	font-size: 24px;
	margin-top: 20px;
	line-height: 50px;
	letter-spacing: 0.1em;
}




#ticket {
	width: 606px;
	position: fixed;
	right: 0px;
	bottom: 0px;
}






.s_title1 {
	width: 100%;
	margin-top: 30px;
	font-size: 30px;
	letter-spacing: 0.05em;
	font-family: 'Voltaire', sans-serif;
}

.s_title2 {
	width: 100%;
	margin-top: 10px;
	font-size: 16px;
	margin-bottom: 30px;
}

.s_title1_2 {
	width: 100%;
	margin-top: 150px;
	font-size: 30px;
	letter-spacing: 0.05em;
	color: #fff;
	font-family: 'Voltaire', sans-serif;
}

.s_title2_2 {
	width: 100%;
	margin-top: 10px;
	font-size: 16px;
	color: #fff;
	margin-bottom: 30px;
}

.s_title3 {
	width: 100%;
	margin-top: 10px;
	font-size: 24px;
	font-family: 'Voltaire', sans-serif;
	letter-spacing: normal;
}

.s_title4 {
	width: 100%;
	margin-top: 10px;
	font-size: 12px;
	margin-bottom: 30px;
}

#com_title {
	color: white;
	margin-top: 30px;
	font-size: 60px;
	font-family: 'Voltaire', sans-serif;
}

#subtitle {
	color: white;
	margin-top: 30px;
	margin-left: 50%;
	font-size: 40px;
}

#com_text {
	color: white;
	margin-top: 30px;
	margin-left: 50%;
	font-size: 12px;
	width: 50%;
	line-height: 170%;
	letter-spacing: 0.2em;
}

.comhistitle {
	color: white;
	margin-top: 80px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
}

.comhis {
	color: white;
	margin-top: 30px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
	float: left;
}

.comhis2 {
	color: white;
	margin-top: 35px;
	font-size: 14px;
	margin-left: 20%;
	
}

.comname1 {
	color: white;
	margin-left: 50%;
	margin-top: 80px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
}

.comname2 {
	color: white;
	font-size: 12px;
	margin-left: 50%;
}

.comnamep {
	color: white;
	margin-top: 20px;
	margin-left: 50%;
	font-size: 12px;
	line-height: 170%;
	letter-spacing: 0.2em;
}

.gridall{
	display: grid;
  gap: 10px;
	grid-template-columns: 1fr 1fr;
}

.grid1 {
	width: 100%;
	margin-bottom: 10px;
}

.grid1 img {
	width: 100%;
}

.grid2 {
	margin-left: 4%;
	width: 100%;
	margin-bottom: 10px;
}

.grid2 img {
	width: 100%;
}

#ohana img {
	width: 100%;
	margin-top: -10px;
	margin-bottom: 10px;
}

.yaji img {
	width: 100%;
	margin-top: -10px;
	margin-bottom: 20px;
}
			
#footlogo{
	margin-top: 50px;
	width: 40%;
	float:left;
}

#footlogo img{
	width: 100%;
}

#footp{
	margin-top: 50px;
	text-align: right;
	color: white;
	letter-spacing: 0.1em;
	font-size: 10px;
	font-weight: 100;
}



.sp {display: none !important;}
.pc {display: block !important;}

.dummy{float: none;}

@media screen and (max-width: 640px) {
.sp {display: block !important;}
.pc {display: none !important;}
	
	body {
	margin:0;
	padding:0;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #000;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
	background-size: 100% 100%;
	animation: AnimationName 9s ease infinite;
	background: #fff;
	letter-spacing: 0.1em;
}

	
	html,body {
	padding: 0;
	margin: 0;
}

#top_left {
	width: 20%;
	position: fixed;
	left: 5%;
	top: 5%;
	z-index: 10;
}

#top_right {
	width: 40%;
	position: fixed;
	right: 5%;
	top: 5%;
	z-index: 10;
}
	#top_right img{
		width: 100%;
	}




main {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	width: 300px;
}
	
main img{
	width: 200px;
}

main p{
	font-size: 12px;
	margin-top: 50px;
	letter-spacing: 0.1em;
}

.en1 {
	font-size: 18px;
	margin-top: 20px;
	line-height: 40px;
	letter-spacing: 0.1em;
}

#photo01 {width: 100%;}
#photo01 img {width: 100%;}

#photo02 {width: 100%;}
#photo02 img {width: 100%;}

#photo03 {width: 100%;}
#photo03 img {width: 100%;}

#info01 {width: 100%;clear: both;margin-left: 0;}
	
#info_02 {
	font-size: 21px; 
	margin-bottom: 20px;
	font-weight: 300;
	letter-spacing: 0.15em;
	line-height: 200%;
}
#info_03 {
	font-size: 12px;
	line-height: 200%;
}

#info02 {width: 100%; clear: both; margin-right: 0;margin-top: 10px;}

#info_text {
	clear: both; 
	font-size: 14px; 
	padding-top: 50px;
	margin-bottom: 25px; 
	line-height: 210%;
}

#container {
	width: 90%;

	margin-right: 5%;
	margin-left: 5%;
	padding-top: 50px;
	padding-bottom: 130px;
}

#container2 {
	width: 90%;

	margin-right: 5%;
	margin-left: 5%;
	padding-top: 50px;
	padding-bottom: 100px;
	background-color: #fff;
}

#container2in {
	width: 90%;

	margin-right: 5%;
	margin-left: 5%;
	padding-top: 50px;
	padding-bottom: 100px;

}

#container4 {
	width: 90%;

	margin-right: 5%;
	margin-left: 5%;
	padding-top: 20px;
	padding-bottom: 50px;
}

#com_title {
	color: white;
	margin-top: 30px;
	font-size: 60px;
	font-family: 'Voltaire', sans-serif;
	text-align: center;
}

#subtitle {
	color: white;
	margin-top: 30px;
	margin-left: 0;
	text-align: center;
}

#com_text {
	color: white;
	margin-top: 30px;
	margin-left: 0;
	font-size: 12px;
	width: 100%;
	line-height: 170%;
	letter-spacing: 0.2em;
}


.comhistitle {
	color: white;
	margin-top: 80px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
	text-align: center;
}

.comhis {
	color: white;
	margin-top: 30px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
	float: left;
}

.comhis2 {
	color: white;
	margin-top: 35px;
	font-size: 14px;
	text-align: right;
	
}

.comname1 {
	color: white;
	margin-left: 0;
	margin-top: 80px;
	font-size: 20px;
	font-family: 'Voltaire', sans-serif;
}

.comname2 {
	color: white;
	font-size: 12px;
	margin-left: 0;
}

.comnamep {
	color: white;
	margin-top: 20px;
	margin-left: 0;
	font-size: 12px;
	line-height: 170%;
	letter-spacing: 0.2em;
}

#footlogo{
	margin-top: 20px;
	width: 100%;
	float: none;
	text-align: center;
}

#footlogo img{
	width: 80%;
}

#footp{
	margin-top: 20px;
	text-align: center;
	color: white;
	letter-spacing: 0.1em;
	font-size: 10px;
	font-weight: 100;
	padding-bottom: 100px;
}

.wrapphoto  {
	background-image: url(../img/back2sp.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-size: auto 100%;
  width: 100%;
  padding-top: 0;
	position: relative;
}
	
#top {
	background-image: url(../img/topbacksp.jpg);
	background-position: center center;
	background-repeat: repeat;
	background-attachment: scroll;
	background-size:auto;
	background-color: #fff;
	height: 100vh;
	position: relative;
}

	}
#dummy{clear: both;}
