@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LYX */
/* 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;}
.zen {
	font-family: "Zen Maru Gothic", sans-serif;
}
.wdxl {
	font-weight: 400;
	font-family: "WDXL Lubrifont JP N", sans-serif;
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	position: relative;
	margin: 0 auto;
	padding: 0 2rem;
	max-width: 106rem;
}
@media all and (max-width: 768px) {
.content {
	max-width: 100% !important;
}
}
/*------------------------------------------------------------
	comTextBox
------------------------------------------------------------*/
.comTextBox {
	position: relative;
	padding: 8.2rem 3rem 2rem;
	background-color: rgba(255, 255, 255, 0.9);
	border-radius: 3rem 0;
	box-shadow: 0 0 0.5rem 0.2rem rgb(0, 0, 0,0.1);
}
.comTextBox .title {
	margin-bottom: 1rem;
	padding: 0.2rem 0.5rem 0.6rem;
	text-align: center;
	font-size: 1.8rem;
	background-color: rgba(213, 172, 14, 0.2);
}
.comTextBox .text {
	line-height: 1.94;
}
@media all and (max-width: 768px) {
	.comTextBox {
		padding: 2.7rem 2.8rem 3rem !important;
		box-shadow: 0 0 0.5rem 1px rgb(0, 0, 0,0.05);
	}
	.comTextBox .text {
		line-height: 2;
	}
}
/*------------------------------------------------------------
	comHeadBox
------------------------------------------------------------*/
.comHeadBox {
	text-align: center;
	padding: 0.3rem;
	width: 23rem;
	height: 23rem;
	border: 0.2rem solid rgba(213, 172, 14, 0.6);
	border-radius: 50%;
	overflow: hidden;
	font-weight: 900;
	color: #9E773E;
	font-family: "Zen Maru Gothic", sans-serif;
}
.comHeadBox p {
	padding: 3.5rem 1rem;
	width: 22rem;
	height: 22rem;
	display: block;
	font-size: 3rem;
	border-radius: 50%;
	background: url(../img/common/bg01.png) no-repeat left top / 100%;
}
.comHeadBox .jp {
	margin-bottom: 1.5rem;
	padding-top: 3.7rem;
	background: url(../img/common/icon01.png) no-repeat center top /3.6rem;
	display: block;
}
.comHeadBox .en {
	padding-top: 1.7rem;
	position: relative;
	display: block;
	font-weight: 400;
	font-size: 1.5rem;
	font-family: "WDXL Lubrifont JP N", sans-serif;
}
.comHeadBox .en::after {
	position: absolute;
	content: "";
	z-index: 1;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 12.2rem;
	height: 0.4rem;
	background: url(../img/common/line01.png) repeat-x left top / 0.6rem;
}
@media all and (max-width: 768px) {
	.comHeadBox {
		position: relative;
		z-index: 2;
		margin: 0 auto -3.7rem;
		padding: 0.2rem;
		width: 19rem;
		height: 19rem;
		border: 1px solid rgba(213, 172, 14, 0.6);
	}
	.comHeadBox p {
		padding: 2.2rem 1rem;
		width: 18.4rem;
		height: 18.4rem;
		font-size: 2.5rem;
	}
	.comHeadBox .jp {
		margin-bottom: 1.5rem;
		background-size: 3rem auto;
	}
	.comHeadBox .en {
		padding-top: 2rem;
		font-size: 1.2rem;
	}
	.comHeadBox .en::after {
		background-size: 0.65rem auto;
	}
}
/*------------------------------------------------------------
	comInnerBox
------------------------------------------------------------*/
.comInnerBox {
	padding: 2rem 4rem 0 0;
	margin-top: 1rem;
	background: url(../img/common/line01.png) repeat-x left top / 0.6rem;
	font-family: "Zen Maru Gothic", sans-serif;
}
.comInnerBox li {
	margin-bottom: 2rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 2rem;
}
.comInnerBox li:last-child {
	margin-bottom: 0;
}
.comInnerBox .lBox {
	gap: 1.5rem;
	align-items: flex-start;
}
.comInnerBox .lBox .photo {
	width: 5.1rem;
}
.comInnerBox .lBox .name {
	margin-top: 0.5rem;
	font-weight: 700;
	line-height: 1;
}
.comInnerBox .lBox .name span {
	margin-bottom: 0.3rem;
	display: block;
	font-family: "WDXL Lubrifont JP N", sans-serif;
	font-weight: 400;
	color: rgb(158, 119, 62,0.4);
}
.comInnerBox .btn {
	width: 12.5rem;
}
.comInnerBox .btn a {
	min-height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	background-color: #5690D6;
	border-radius: 1rem;
	overflow: hidden;
}
.comInnerBox .btn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 768px) {
	.comInnerBox {
		padding: 1.9rem 0 0 !important;
		margin-top: 1.5rem;
	}
	.comInnerBox li {
		margin-bottom: 3rem;
		display: block;
	}
	.comInnerBox .lBox {
		margin: 0 auto 0.9rem;
		justify-content: center;
	}
	.comInnerBox .lBox .name {
		font-size: 1.6rem;
	}
	.comInnerBox .btn {
		margin: 0 auto;
	}
}
/*------------------------------------------------------------
	jsMovieBox
------------------------------------------------------------*/
.jsMovieBox {
	padding: 8rem 4rem;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .5s;
	z-index: 100;
}
.jsMovieBox.show {
	opacity: 1;
	visibility: visible;
}
.jsMovieBox .bg {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: rgba(229,229,229,.9);
}
.jsMovieBox .videoInner {
	height: 100%;
    position: relative;
    z-index: 2;
}
.jsMovieBox .videoInner video {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.jsMovieBox .close {
	width: 4.4rem;
    position: fixed;
    right: 3rem;
    top: 2rem;
    z-index: 3;
}
.jsMovieBox .close a {
	display: block;
}
@media all and (min-width: 767px) {
	.jsMovieBox .close:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 768px) {
	.jsMovieBox .videoInner {
		aspect-ratio: 16 / 9;
		max-height: 100%;
		height: auto;
	}
}
/*------------------------------------------------------------
	pop
------------------------------------------------------------*/
.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
}
.mfp-iframe-holder {
	padding: 8rem 4rem;
}
.mfp-iframe-holder .mfp-content {
	max-width: fit-content;
    height: 100%;
    aspect-ratio: 9 / 16;
}
.mfp-iframe-scaler {
    padding-top: 177.615%;
}
.mfp-iframe-holder .mfp-close {
	padding: 0;
	width: 4.4rem;
	height: 4.4rem;
	position: fixed;
	right: 3rem;
    top: 2rem;
	font-size: 0;
	background: url(../img/body/pop_close_black.png) no-repeat right center / cover;
	opacity: 1;
}
@media all and (min-width: 961px) {
	.mfp-iframe-holder .mfp-close:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 960px) {
	.mfp-iframe-holder .mfp-content {
		max-width: 100%;
		height: auto;
	}
}

.fadeZoom {
	transform: scale(1.05);
	opacity: 0;
	transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.fadeZoom.active {
	opacity: 1;
	transform: scale(1);
}

.fadeInUp {
	opacity: 0;
	transform: translateY(2rem);
	transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.fadeInUp.active {
	opacity: 1;
	transform: translateY(0);
}

.animation .fadeIn {
	opacity: 0;
	transform: translateY(2rem);
	transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.animation.active .fadeIn {
	opacity: 1;
	transform: translateY(0);
}

.fadeInLeft {
	opacity: 0;
	transform: translateX(-2rem);
	transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.fadeInLeft.active {
	opacity: 1;
	transform: translateX(0);
}

.fadeInRight {
	opacity: 0;
	transform: translateX(2rem);
	transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.fadeInRight.active {
	opacity: 1;
	transform: translateX(0);
}
.delay01 {
	transition-delay: .2s !important;
}
.delay02 {
	transition-delay: .5s !important;
}
.delay05 {
	transition-delay: .5s !important;
}
@media all and (min-width: 961px) {
	.delay02-pc {
		transition-delay: .5s !important;
	}
	.delay03 {
		transition-delay: 1s !important;
	}
	.delay04 {
		transition-delay: 1.5s !important;
	}
}

/*------------------------------------------------------------
	animated
------------------------------------------------------------*/
.animated {
	opacity: 0;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}
.animate-delay-100 {
	-webkit-animation-delay: .1s;
	animation-delay: .1s;
}
.animate-delay-200 {
	-webkit-animation-delay: .2s;
	animation-delay: .2s;
}
.animate-delay-300 {
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}
.animate-delay-400 {
	-webkit-animation-delay: .4s;
	animation-delay: .4s;
}
.animate-delay-500 {
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}
.animate-delay-600 {
	-webkit-animation-delay: .6s;
	animation-delay: .6s;
}
.animate-delay-700 {
	-webkit-animation-delay: .7s;
	animation-delay: .7s;
}


@-webkit-keyframes fadeInscale {
	from {
		opacity: 0;
		-webkit-transform: scale(0.7);
		transform: scale(0.7);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes fadeInscale {
	from {
		opacity: 0;
		-webkit-transform: scale(0.7);
		transform: scale(0.7);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
.fadeInscale.active {
	-webkit-animation-name: fadeInscale;
	animation-name: fadeInscale;
}



