@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LSM */
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
.imperial {
	font-family: "Imperial Script", cursive;
}
.serif {
	font-family: "Noto Serif JP", serif;
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	max-width: 130.8rem;
}
.mfp-wrap {
	overflow: hidden auto;
	overscroll-behavior: contain;
}
.mfp-close {
	cursor: pointer !important;
}
@media all and (max-width: 980px) {
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 5.3rem;
	line-height: 1;
	position: relative;
}
.headLine01::before {
	position: absolute;
	bottom: min(-0.76vw,-1rem);
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: max(6.2vw,8rem);
	background: url(../img/common/h_bg01.png) no-repeat center bottom / 100%;
	content: '';
}
.headLine01 .en {
	padding-right: 4.4rem;
	display: block;
	font-size: 17.5rem;
	font-weight: 400;
	color: rgba(219, 155, 53, 0.13);
	font-family: "Imperial Script", cursive;
	text-align: center;
}
.headLine01 .jp {
	margin: -8.7rem auto 0;
	padding: 0 4.1rem;
	display: block;
	width: fit-content;
	color: #FFF;
	font-size: 3.5rem;
	font-weight: 600;
	text-align: center;
	font-family: "Noto Serif JP", serif;
	background: url(../img/common/icon01.png) no-repeat left top calc(50% + 0.1rem) / 3.1rem,url(../img/common/icon02.png) no-repeat right top calc(50% + 0.1rem) / 3.1rem;
}
@media all and (max-width: 980px) {
	.headLine01 {
		margin-bottom: 4.1rem;
	}
	.headLine01::before {
		bottom: -3.3vw;
		height: 22.93vw;
		width: 118.9vw;
		background-image: url(../img/common/h_bg01_sp.png);
	}
	.headLine01 .en {
		padding-right: 2.2rem;
		font-size: 11rem;
		color: rgba(140, 98, 57, 0.13);
	}
	.headLine01 .jp {
		margin: -5.2rem auto 0;
	}
}
/*------------------------------------------------------------
	fade
------------------------------------------------------------*/
.fadeIn {
	opacity: 0;
    transition: 1.5s;
}
.fadeUp {
	opacity: 0;
    transform: translateY(4rem);
    transition: .5s;
}
.delay01 {
	transition-delay: 1.1s;
}
.delay02 {
	transition-delay: 1.6s;
}
.delay03 {
	transition-delay: 2.1s;
}
.delay04 {
	transition-delay: 2.6s;
}
.animation.on .fadeIn {
	opacity: 1;
}
.animation.on .fadeUp {
	opacity: 1;
    transform: translateY(0);
}
.fadeInUp,
.fade {
	opacity: 0;
    transform: translate(0, 4rem);
    -webkit-transition: all 1s;
    transition: all 1s;
}
.fadeInUp.on {
	opacity: 1;
    transform: translate(0, 0);
}
.fadeInLeft {
	opacity: 0;
    transform: translateX(-2rem);
    transition: all 1s ease-out;
}
.fadeInLeft.on {
	opacity: 1;
    transform: translateX(0);
}
.fadeLeft {
	transform: translateX(-1rem);
	opacity: 0;
	transition: .7s ease .2s !important;
    transition-duration: 1s !important;
    transition-timing-function: ease-in-out !important;
}
.animate.on .fadeLeft {
	transform: translateX(0);
	opacity: 1;
}
.animate02.on .fade {
	opacity: 1;
    transform: translate(0, 0);
}
@media all and (max-width: 980px) {
	.fadeUpSp {
		opacity: 0 !important;
		transform: translateY(100%) !important;
	}
	.animate.on .fadeUpSp {
		opacity: 1 !important;
		transform: translateY(0) !important;
		transition: 1.5s cubic-bezier(0.22, 1, 0.36, 1) !important;
	}
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
@media all and (max-width: 980px) {
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
@media all and (max-width: 980px) {
}