@charset "utf-8";

/**********************************

 general

***********************************/
html {
	font-size: 14.4928px;
	/*font-size: 10px;*/
}

.f-din {
	font-family: "din-2014", sans-serif;
}

@media screen and (max-width:1086px){
	html {
		font-size: 1.335vw;
	}
}

@media screen and (max-width:767px){
	html {
		font-size: 1.33333333vw;
	}
}

/**********************************

 parts

***********************************/
.define_inner {
	width: 1500px;
}

@media screen and (max-width:1499px){
	.define_wrap {
		padding-left: 8%;
		padding-right: 8%;
	}
}

/**********************************

 .l-wrap

***********************************/
.l-wrap {
	background: #fff;
}

/**********************************

 l-header

***********************************/
.l-header {

}

.l-header__inner {
	/*height: 163px;*/
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}

/**********************************

 l-footer

***********************************/
.l-footer .define_inner {
	width: 930px;
}

@media screen and (max-width:767px){

	/*.l-footer__bottom {*/
		/*padding-bottom: 25px;*/
	/*}*/
}


/**********************************

 p-hero

***********************************/
.p-hero {
}

.p-hero__inner {

}

.p-hero__inner-main {
}

.p-hero__inner-main img {
	width: 100%;
	max-width: none;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-feature

***********************************/
.p-feature {
	background: #edf5fc;
}

.p-feature__inner {
	padding-top: 5.6rem;
	padding-bottom: 1.4rem;
}

.p-feature__inner-txt01 {
	width: 61rem;
	margin: 0 auto;
}

.p-feature__inner-ttl {
	width: 53.5rem;
	margin: 6rem auto 0;
}

.p-feature__inner-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 7rem 0;
	width: 69rem;
	margin: 1.5rem auto 0;
}

.p-feature__inner-list-item {
	width: 34rem;
	color: #505050;
}

.p-feature__inner-list-item .pic {
	border: .1rem solid #000;
}

.p-feature__inner-list-item .pic a {
	display: block;
	position: relative;
	z-index: 1;
}

.p-feature__inner-list-item .pic a:before {
	content: "";
	display: block;
	width: 10rem;
	height: 10rem;
	background: url(../images/icon_play01.png) no-repeat center center / contain;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.p-feature__inner-list-item .info {
	padding-left: .5rem;
	margin-top: 2rem;
}

.p-feature__inner-list-item .info__txt01 {
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1.4375;
}

.p-feature__inner-list-item .info__ttl {
	padding-bottom: 1rem;
	margin-top: 1.2rem;
	margin-right: 2.3rem;
	font-size: 2.2rem;
	font-weight: bold;
	letter-spacing: .04em;
	line-height: 1.36363636;
	border-bottom: .1rem solid #505050;
}

.p-feature__inner-list-item .info__ttl:last-child {
	padding-bottom: 0;
	margin-right: 0;
	border-bottom: none;
}

.p-feature__inner-list-item .variation {
	margin-top: 2.5rem;
}

.p-feature__inner-list-item .variation__ttl {
	padding-left: .5rem;
	padding-bottom: .25rem;
	margin-right: 2.3rem;
	font-size: 1.6rem;
	line-height: 1.4375;
	letter-spacing: .1em;
	border-bottom: .1rem solid #505050;
}

.p-feature__inner-list-item .variation__ttl--large {
	padding-bottom: 1rem;
	margin-top: 1.2rem;
	font-size: 2.2rem;
	font-weight: bold;
	letter-spacing: .04em;
	line-height: 1.36363636;
}

.p-feature__inner-list-item .price {
	margin-top: 1rem;
}

.p-feature__inner-list-item .price dl {
	display: flex;
	font-size: 2rem;
	line-height: 1.4;
	letter-spacing: .08em;
}

.p-feature__inner-list-item .price dl dt {
	margin-right: .5rem;
}

.p-feature__inner-list-item .price dl dd {
	flex: 1;
}

.p-feature__inner-copy {
	width: 52.5rem;
	margin: 7.5rem auto 0;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-aeon

***********************************/
.p-aeon {
	background: #fff;
}

.p-aeon__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 12rem;
}

.p-aeon__inner-logo {
	width: 25.5rem;
	margin: 0 auto;
	text-align: center;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-pagetop

***********************************/
.p-pagetop {
	width: 104px;
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 10;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

	.p-pagetop {
		width: 10.4rem;
		bottom: 5rem;
		right: 5rem;
	}

}





/**********************************

 p-modal

***********************************/
.p-modal {
	display: none;
	max-height: none;
	font-size: 10px;
	font-family: "M PLUS 1p", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.p-modal * {
	max-height: none;
}

.p-modal__inner {
	/*width: 100%;*/
	/*height: 100%;*/
	max-width: 69em !important;
	max-height: calc(100dvh - 100px);
	/*height: calc(100dvh - 60px - 13rem);*/
	padding: 0;
	color: #000;
	background: #000;
	/*overflow-y: auto;*/
	/*-webkit-overflow-scrolling: touch;*/
	overflow: hidden;
	position: relative;
	z-index: 1;
	aspect-ratio: 9/16;
}

.p-modal__inner-youtube {
	/*width: 69em;*/
}

.p-modal__inner-youtube-inner {
	position: relative;
	/*width: auto;*/
	/*width: 69em;*/
	/*height: 100%;*/
	height: calc(100dvh - 100px);
	/*padding-top: 177.77777778%;*/
	aspect-ratio: 9/16;


}

.p-modal__inner-youtube-inner iframe {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 9/16;


	/*width: 100%;*/
	/*height: 753px;*/
	/*height: calc(100dvh - 60px);*/
	/*position: absolute;*/
	/*top: 0;*/
	/*right: 0;*/
	/*width: 100% !important;*/
	/*height: 100% !important;*/
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){
	/*.p-modal {*/
	/*	font-size: 1.33333333vw;*/
	/*}*/

	.p-modal__inner {
		max-width: 92vw !important;
	}
}


/**********************************

 fancybox

***********************************/
.fancybox-type-inline .fancybox-close {
	width: 20px;
	height: 20px;
	top: -30px;
	right: 0;
}

.fancybox-type-inline .fancybox-close:hover {
	opacity: .7;
}

.fancybox-overlay {
	background: rgba(0, 0, 0, .8);
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){
	.fancybox-type-inline .fancybox-close {
		/*width: 5.9rem;*/
		/*height: 5.9rem;*/
		/*top: 3.9rem;*/
		/*right: 2.9rem;*/
	}

}


/**********************************

 xxx

***********************************/


@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}

