@charset "utf-8";

/*************** ボタン ***************/

.layer-btn-wrap{
	position: relative;
	z-index: 2;
}
.layer-btn-wrap .layer-btn-inner{
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	letter-spacing: 0.2em;
}
.layer-btn-wrap .layer-btn-inner .border-wrap{
	background-color: #ffd065;
}

/*****************************************************
about - #about-top-sec
******************************************************/
#about-top-sec{
	padding-right: 0;
}
#about-top-sec .img-area-wrap img{
	object-position: center bottom;
}

#about-top-sec .page-top-sec .main-img{
	object-position: center;
}

@media screen and (min-width: 1025px){
	#about-top-sec .h1-area-wrap{
		padding-right: 0;
		width: 30%;
	}
}/* breakpoint 1025px ～ */

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){
	#about-top-sec .content-wrap .img-area-wrap{
		background-image: url("/img/about/about-main.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top left;
	}
}/* IE10,11でのみ */

/*****************************************************
about - .content-sec Common
******************************************************/
.content-sec{
	text-align: left;
	width: 100%;
	max-width: 1000px;
	margin: 25vh auto;
}
.content-sec h2{
	font-size: 35px;
	letter-spacing: 0.3em;
	line-height: 1.2;
}
.content-sec h2:before{
	content: "[ ";
}
.content-sec h2:after{
	content: " ]";
}
.content-sec .h2-box span.en{
	font-size: 15px;
	color: #3e3e3e;
	letter-spacing: 0.4em;
	margin-bottom: 30px;
	position: relative;
	padding-bottom: 5px;
	padding-left: 30px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	word-break: break-word;
	font-style: italic;
}
.content-sec .h2-box span.en::before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 1px;
	height: 15px;
	border-left: 1px solid #505050;
	-webkit-transform: rotate(329deg);
			transform: rotate(329deg);
	-webkit-transform-origin: center center;
			transform-origin: center center;
}
.content-sec .h2-box span.en::after{
	content: "";
	display: block;
	top: 50%;
	left: 100%;
	width: 40%;
	height: 1px;
	border-top: 1px dotted #333;
	margin-left: 25px;
	-webkit-box-flex: 1;
			-ms-flex: 1 1 10%;
				flex: 1 1 10%;
}
.content-sec > .text-box,
.godairiki > .text-box{
	margin: 80px 0;
	max-width: 800px;
}
.content-sec .text-box,
#about-info-sec dd{
	line-height: 2;
}
.content-sec .text-box p:not(:first-child),
#about-info-sec dd p:not(:first-child){
	margin-top: 25px;
}
.events-desc h3,
#about-events-sec h4,
#about-info-sec .detail dt{
	font-size: 20px;
}

#about-intro-sec .link{
	margin-bottom: 80px;
}

@media screen and (max-width: 1024px){
	.content-sec{
		margin: 17vh auto;
	}
	.content-sec .h2-box span.en{
		padding-bottom: 0;
		padding-left: 15px;
		display: block;
		margin-bottom: 15px;
	}
	.content-sec .h2-box span.en::before{
		bottom: 0;
		height: 20px;
	}
	.content-sec .h2-box span.en::after{
		width: 100%;
		margin-top: 5px;
		margin-left: 0;
	}
}/* breakpoint ～ 1024px */

@media screen and (max-width: 767px){
	.content-sec{
		margin-top: 100px;
	}
	.content-sec h2,
	#about-events-sec h3{
		font-size: 25px;
	}
	.content-sec .h2-box span.en{
		font-size: 12px;
	}
	.content-sec .text-box{
		margin: 40px 0;
	}
	.events-desc h3,
	#about-events-sec h4,
	#about-info-sec .detail dt{
		width: 100%;
		text-align: left;
		font-size: 18px;
	}
	#about-intro-sec .link{
		margin-bottom: 40px;
	}
}/* breakpoint ～ 767 */

@media screen and (max-width:600px){
	.content-sec h2 span{
		display: block;
	}
	.content-sec h2:before{
		content: "";
	}
	.content-sec h2:after{
		content: "";

	}
}/* breakpoint ～ 414px */

/*************** .slide-content ***************/
#about-seasons-sec h3,
#about-events-sec h4{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	width: 100%;
	margin-bottom: 10px;
}
#about-seasons-sec h3::before,
#about-seasons-sec h3::after,
#about-events-sec h4::before,
#about-events-sec h4::after{
	display: block;
	height: 1px;
	border-top: 1px solid #333;
}
#about-seasons-sec h3::before,
#about-events-sec h4::before{
	content: "";
	width: 100px;
	margin-right: 15px;
}
.slide-content .events-desc .text-box{
	margin-left: 115px;
	margin-bottom: 25px;
}

@media screen and (max-width: 1024px){
	#about-seasons-sec h3,
	#about-events-sec h4{
		display: block;
	}
	#about-seasons-sec h3::before,
	#about-events-sec h4::before{
		display: none;
	}
	#about-seasons-sec h3::after,
	#about-events-sec h4::after{
		content: "";
		
	}
	.slide-content .events-desc .text-box{
		margin-left: 0;
	}
}/* breakpoint ～ 1024px */

/*************** swiper ***************/
.swiper .img-box-wrap{
	padding-right: 5%;
}
.swiper .img-box-wrap .alt{
	font-size: 14px;
	padding: 5px 10px 5px 5px;
	width: 50%;
	font-style: italic;
}
.swiper .img-box-wrap .alt::after{
	content: "";
	display: block;
	border-top: 1px solid #a7a7a7;
	height: 1px;
	margin-left: 10px;
	 -webkit-box-flex:1;
	-ms-flex-positive:1;
			flex-grow:1;
	margin-right: 15px;
}

@media screen and (max-width: 767px){
	.swiper .img-box-wrap .alt{
		font-size: 12px;
		width: 100%;
	}
}/* breakpoint ～ 767 */

.swiper-pagination-bullet-active{
	background-color: #000000 !important;
}
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets{
	bottom: -20px !important;
}

.cursol.active{
	position: fixed;
	width: 80px;
	height: 80px;
	border-radius: 50px;
	background-color: rgba(255,255,255,0.53);
	background-image: url("/img/common/mouse.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 40px 40px;
	z-index: 11111111111;
	pointer-events: none;
}

/*****************************************************
about - section#about-seasons-sec
******************************************************/
.events-desc:not(:first-of-type){
	margin-top: 100px;
}

/*****************************************************
about - section#about-events-sec
******************************************************/
#about-events-sec h3{
	width: 100%;
	text-align: left;
	font-size: 25px;
}
#about-events-sec .events-desc{
	margin-top: 80px;
}
/*****************************************************
about - section#about-info-sec
******************************************************/
#about-info-sec .detail{
	margin-top: 80px;
	border-top: 1px solid #ccc;
}
#about-info-sec .detail > *{
	margin-top: 5px;
	border-bottom: 1px solid #ccc;
}
#about-info-sec .detail dt{
	width: 270px;
	padding: 25px;
	text-align: right;
}
#about-info-sec .detail dd{
	-webkit-box-flex: 1;
	-ms-flex: 1 1 50%;
	flex: 1 1 50%;
	padding-bottom: 5px;
}
#about-info-sec .detail dd div{
	border-left: 1px solid #ccc;
	padding: 25px;
	height: 100%;
}

@media screen and (max-width: 767px){
	#about-info-sec .detail{
		display: block;
	}
	#about-info-sec .detail dt{
		width: 100%;
		text-align: left;
		border: none;
		padding: 15px 15px 0;
	}
	#about-info-sec .detail dd div{
		border: none;
		padding: 15px;
	}
}/* breakpoint ～ 767 */


