@charset "UTF-8";

/*----------------------------------------
	- base
-----------------------------------------*/



/*=======================================
	base
=======================================*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
img,
figure,
picture {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
ul,
li {
	list-style: none;
}
a {
	text-decoration: none;
	opacity: 1;
	transition: all 0.3s ease;
}
@media (hover: hover) {
	a:hover {
		opacity: 0.8;
		text-decoration: none;
	}
}

/* wide */
.w1000 {
	max-width: 1000px;
	width: 90%;
	margin: auto;
}

/* ボタンカラー */
.gold_gradient {
	background: rgb(204,182,130);
	background: linear-gradient(90deg, rgba(204,182,130,1) 0%, rgba(227,208,164,1) 50%, rgba(204,182,130,1) 100%);
}

/* 各セクション_タイトル群 */
.top_title_set {
	display: flex;
	flex-direction: column;
	gap: 16px;
	text-align: center;
	margin-bottom: 32px;
	color: #1c0325;
}
.top_title_set h3 {
	font-size: 80px;
	line-height: 1.1;
	letter-spacing: 0.06em;
	font-family: 'EB Garamond', serif;
	text-shadow: 2px 2px 3px rgba(51, 51, 51, 0.4);
}
.top_title_set span {
	font-size: 20px;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 768px) {
	.top_title_set {
		gap: 8px;
		margin-bottom: 16px;
	}
	.top_title_set h3 {
		font-size: 30px;
	}
	.top_title_set span {
		font-size: 13px;
	}
}

/*=======================================
	point
=======================================*/
.gaikan_sp{

}


/*=======================================
	point
=======================================*/
.point{
	background: linear-gradient(to right, rgb(44,8,8) 0%,rgb(118,26,29) 100%);
	text-align: center;
	padding: 30px 0;
	margin-bottom: 80px;
}
.point img{
	max-width: 1440px;
	/*! max-width: 100%; */
	width: 90%;
}
@media only screen and (max-width: 768px){
	.point{
		background: linear-gradient(to right, rgb(44,8,8) 0%,rgb(118,26,29) 100%);
		text-align: center;
		/* padding: 30px 50px; */
		border-top: 1px solid rgb(255, 255, 255, 0.15);
		margin-bottom: 0;
	}
	.point img{
		max-width: 640px;
		width: 90%;
		/*! max-width: 100%; */
	}
}

/*=======================================
	obi
=======================================*/
.obi {
	/* background: rgb(33,33,33); */
	/* background: linear-gradient(90deg, rgba(33,33,33,1) 0%, rgba(64,64,64,1) 50%, rgba(33,33,33,1) 100%); */
	display: flex;
	justify-content: center;
	/* padding: 0 5%; */
	max-width: 1000px;
	margin: 0 auto;
}
.obi h2 {
	padding: 60px 0 20px;
	width: 90%;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.obi {
		padding: 0 5%;
	}
	.obi h2 {
		padding: 40px 0 0;
		width: 100%;
	}
}

/*=======================================
bnr_area
=======================================*/
.bnr_area{
	display: flex;
	justify-content: center;
	margin: 0 auto;
	text-align: center;
	padding: 0 0 60px;
	max-width: 1000px;
}
.bnr_area a{
	will-change: opacity;
}
@media screen and (max-width: 768px) {
	.bnr_area{
		flex-direction: column;
	padding: 30px 0 0;}
}



/*=======================================
	silver_curtain
=======================================*/
.silver_curtain {
	position: relative;
}
.silver_curtain .bg_img {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 30.396vw;
	z-index: -1;
}

/*=======================================
	docu_set
=======================================*/
#docu_set .content {
	padding-top: 70px;
	text-align: center;
	margin-bottom: 100px;
}
#docu_set .content p {
	letter-spacing: 0.05em;
}
#docu_set .content p.wide {
	font-size: 42px;
	margin-bottom: 28px;
}
@media screen and (max-width: 768px) {
	#docu_set .content {
		padding-top: 30px;
		margin-bottom: 50px;
	}
	#docu_set .content p {
	}
	#docu_set .content p.wide {
		font-size: 21px;
		margin-bottom: 16px;
	}
}



/* other */
.caption {
	margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
	.caption {
		margin-bottom: 60px;
	}
}





/*-----------------------------------------
	mv
-----------------------------------------*/
.mv .slide{
  position: relative;
}
.mv .slide img{
  width: 100%;
}
/* .mv .slide01 .set01 {
  content: '';
  position: absolute;
  width: 60.6875vw;
  top: 4.55vw;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.mv .slide01 .set02 {
  content: '';
  position: absolute;
  width: 60.6875vw;
  top: 20.25vw;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.mv .slide01 .set03 {
  content: '';
  position: absolute;
  width: 60.6875vw;
  top: 35.813vw;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
	opacity: 0;
}
.mv .slide02 .set01 {
	content: '';
  position: absolute;
  width: 100vw;
  top: 0;
  left: 0;
	opacity: 0;
} */
@media screen and (max-width: 768px) {
	/* .mv .slide01 .set01 {
		content: '';
		position: absolute;
		width: 72.063vw;
	  }
	  .mv .slide01 .set02 {
		content: '';
		position: absolute;
		width: 72.063vw;
	  }
	  .mv .slide01 .set03 {
		content: '';
		position: absolute;
		width: 72.563vw;
	  } */

}

/* .slide01.swiper-slide[class*=-active] .set01 {
  animation: mv01-fadeIn 4s 0.5s ease both;
}
.slide01.swiper-slide[class*=-active] .set02 {
  animation: mv01-fadeIn 4s 4.5s ease both;
}
.slide01.swiper-slide[class*=-active] .set03 {
  animation: mv01-fadeIn 4s 8.5s ease both;
}
.slide02.swiper-slide[class*=-active] .set01 {
  animation: mv02-fadeIn 2.2s 1.1s forwards;
} */
@keyframes mv01-fadeIn {
  0% {
    /* transform: translateX(-50%) scale(.5); */
    opacity: 0;
    filter: blur(10px);
  }
  40% {
    /* transform: translateX(-50%) scale(1); */
    opacity: 1;
    filter: blur(0);
  }
  80% {
    /* transform: translateX(-50%) scale(1); */
    opacity: 1;
    filter: blur(0);
  }
  100% {
    /* transform: translateX(-50%) scale(1); */
    opacity: 0;
    filter: blur(10);
  }
}

@keyframes mv02-fadeIn {
  0% {
    /* transform: translateX(-50%) scale(.5); */
    opacity: 0;
  }
  100% {
    /* transform: translateX(-50%) scale(1); */
    opacity: 1;
  }
}

#SkipButton {
	position: absolute;
	top: 2%;
	right: 2%;
	z-index: 10;
	background-color: #fff;
	border: 1px #333 solid;
	text-align: center;
	padding: 10px 30px;
	cursor:pointer;
	opacity: 1;
	transition: all 0.3s ease-in-out;
}
#SkipButton:hover {
	opacity: 0.8;
}
#SkipButton p {
	font-size: 20px;
	font-weight: 600;
}

.img_last {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
}
.img_last.active {
	display: block;
	width: 100%;
}
.img_last.active picture,.img_last.active img {
	width: 100%;
}

@media screen and (max-width: 768px) {
	#SkipButton {
		padding: 5px 15px;
	}
	#SkipButton p {
		font-size: 16px;
		font-weight: 600;
	}
}


.swiper .swiper-pagination-bullet {
  background-color: #fff;
	width: 10px;
	height: 10px;
}

.owabi{
	max-width: 1024px;
	width: 90%;
	margin: 0 auto;
	border: solid 1px #CCC;
	padding: 16px;
	font-size: 12px;
}
.owabi p{
}



.floting_ba {
	position: fixed;
	bottom: 100px;
	right: 30px;
	z-index: 360;
	max-width: 479px;
}
.floting_ba .close {
	position: fixed;
	bottom: 383px;
	right: 15px;
}
@media only screen and (max-width: 768px){
.floting_ba {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 360;
	width: 338px;
}
.floting_ba .close {
	position: fixed;
	bottom: 213px;
	right: 5px;
}
}

/*============================
#holiday
============================*/

.holiday {
	margin: 80px auto 0;
	padding: 40px;
	background-color: #fff;
	border: 1px solid #b30606;
	text-align: center;
}
.holiday p {
	font-size: 18px;
	color: #b30606;
}

@media screen and (max-width: 768px) {
	.holiday {
	margin: 40px auto 0;
	padding: 20px;
}
	.holiday p {
		font-size: 16px;
	}
}