@charset "utf-8";
:root{
	--red: #d02d1e;
	--yellow: #c4a844;
	--brown: #4b4340;
}

.iFace{
	margin-top: -5px;
	overflow: hidden;
	font-family: var(--Fyg),var(--Fip);
	font-size: 28px;
	line-height: 1.8;
	letter-spacing: 1px;
	& *{
		box-sizing: border-box;
		word-wrap: break-word;
	}
}

.face_cr_red{
	color: var(--red);
}

.face_cr_gray{
	color: var(--brown)!important;
}

.face_cr_gold{
	color:var(--yellow);
}

.iFace{
	& img{
		max-width: 100%;
		height: auto;
	}
	& a{
		transition: 0.3s;
	}
	& a:hover{
		opacity: 0.7;
	}
}

.face_wide{
	position: relative;
	z-index: 2;
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
}

.iwrap{
	& .btn{
		margin-bottom: 30px;
	}
}

.face_sup{
	position: relative;
	top: -11px;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 0.8;
	letter-spacing: 0;
}

.face_notes{
	margin-top: 0.5%;
	line-height: 1.7;
	letter-spacing: 0;
	padding: 0 1%;
}

.face_sec{
	position: relative;
	z-index: 2;
	padding: 120px 0;
}

.face_unline{
	margin-bottom: 2px;
	line-height: 1.3;
	display: inline-block;
	border-bottom: 1px solid var(--red);
}

.face_title_h3{
	margin-bottom: 20px;
	text-align: center;
	& h3{
		font-size: 46px;
		line-height: 1.6;
		letter-spacing: 1px;
		color: var(--red);
	}
	& h3 small{
		display: block;
		font-size: 28px;
		line-height: 1.5;
		letter-spacing: 3px;
	}
	& p{
		font-size: 15px;
	}
	& h3>div{
		line-height: 1;
	}
	& img{
		height: 54px;
		width: auto;
	}
	& .face_sup{
		top: -16px;
	}
}

.txt-underline{
	padding-bottom: 1%;
	border-bottom: 1px solid var(--red);
}

.iwrap{
	& .ctapri dt{
		margin-left: 105px;
	}
}

.item_badge{
	width: min(62%,575px);
	margin: 0 auto;
}

.item_badge01{
	margin: 0;
}

.item_badge{
	& li{
		margin: 0 2%;
	}
	& .poab{
		position: absolute;
		right: 11%;
		top: 36%;
		font-size: min(0.7vw,10px);
	}
	& li:nth-of-type(2) sup.poab{
		color: var(--brown);
	}
	& li:nth-of-type(3) sup.poab{
		color: var(--yellow);
	}
}

.item_badge03{
	& li:nth-of-type(2) sup.poab{
		top: 34%;
		right: 13%;
	}
}

.media h3,.special02 h3{
	display: inline-block;
	font-size: min(4.8vw,46px);
	line-height: 1.6;
	margin-bottom: 20px;
	letter-spacing: 1px;
}

/*___________________FV*/
.faceFv{
	position: relative;
	& img{
		width: 100%;
	}
}

.faceFv_inner{
	max-width: 2000px;
	position: relative;
	color: #3d3431;
	margin: 0 auto;
}

.faceFv_inner::before,
.faceFv_inner::after{
	position: absolute;
	top: 0;
	content: "";
}

.faceFv_inner{
	&::before{
		width: 300%;
		height: auto;
		left: -100%;
		right: 0;
		margin: auto;
		background: url(/images/item/facer/fv_bg_repeat.jpg);
		background-position: top;
		background-size: auto 100%;
		padding-top: 52%;
	}
	&::after{
		left: 0;
		background: url(/images/item/facer/fv_bg.jpg) no-repeat;
		background-position: top center;
		background-size: cover;
		width: 100%;
		max-width: 2000px;
		height: auto;
		padding-top: 52%;
	}
}

.faceFv_item{
	position: relative;
	z-index: 2;
	width: min(52%,770px);
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	& .item_badge{
		width: min(23%,179px);
		margin-left: 3%;
		margin-top: 17.5%;
	}
	& .item_package{
		width: min(26%,214px);
		margin-left: 3.8%;
		margin-top: 15%;
	}
	& .item_txt{
		width: min(22%, 180px);
		margin-top: 12%;
		margin-right: 8%;
	}
}

.faceFv{
	& .faceFv_notes{
		width: 100%;
		align-self: flex-end;
		text-align: right;
		margin-top: 3%;
	}
}

/*___________________CTA*/
.Cta{
	margin: 0 auto;
	&.cta_01{
		margin:10% auto 5%;
		padding-top: 0;
	}
	&.cta_02{
		margin-bottom: 30px;
	}
	& .btn a{
		background: #d02d1e;
	}
}

.ytArea_content{
	width: 720px;
	height: 405px;
}

.special_wp{
	padding-top: 100px;
	padding-bottom: 220px;
	position: relative;
	background: #f8f8fa url(/images/item/facer/special_01.jpg) no-repeat center bottom;
	background-size: auto auto;
}

.special_in{
	margin-left: 36%;
}

.special_text{
	margin-bottom: 30px;
	line-height: 2.1;
	color: #3d3431;
}

/*___________________special02*/
.special02{
	padding: 5% 0;
	background: #fff url(/images/item/facer/special_bg.jpg) no-repeat center top fixed;
	background-size: auto auto;
	& .special02_item{
		width: min(100%,1100px);
		margin: 0 auto;
	}
}

.special02_description{
	margin: 3% 0 4%;
}

.special02_content{
	display: flex;
	padding: 1%;
	& img{
		height: auto;
	}
}

.voice_wp{
	padding-bottom: 70px;
	background: url(/images/item/facer/voice_bg.jpg) no-repeat fixed;
	background-size: cover;
}

.voices_slick{
	margin: 0 40px;
	& .slick-dots{
		display: none !important;
	}
	& .slick-next{
		right: -6px;
	}
	& .slick-prev{
		left: -6px;
	}
}

.voices_item{
	padding: 40px 15px 30px;
	position: relative;
	font-size: 21px;
}

.voices_item_in{
	padding: 70px 70px 40px;
	background: #fff;
	box-shadow: 3px 3px 9px rgba(0,0,0,0.1);
}

.voices_item{
	& p{
		line-height: 1.6;
	}
}

.voices_item_in{
	& p:last-of-type{
		font-size: 19px;
	}
}

.voices_item{
	& .face_cr_red{
		padding: 8px 0 3px;
		font-size: 25px;
	}
}

.voices_item_b{
	line-height: 0;
	ul{
		display: flex;
	}
}

.voices_note{
	padding: 0 70px;
	text-align: right;
}

/*___________________media_wp*/
.media{
	position: relative;
	z-index: 4;
	padding: 6% 0 5%;
	background: url(/images/item/facer/media_bg.jpg?250609) no-repeat center bottom;
	background-size: cover;
	&.face_ison{
		background-attachment: fixed;
	}
}

.media_item{
	max-width: 1020px;
	width: 100%;
	margin: 0 auto;
}

.item_magazine{
	width: 95%;
	margin: 0 auto;
	background: #fff;
	border: 2px solid var(--yellow);
	padding: 0 4% 4%;
	& h4{
		position: relative;
		z-index: 2;
		top: -30px;
		margin: 0 auto 20px;
		background: url(/images/item/facer/media_title.png) top center no-repeat;
		font-size: 30px;
		color: #fff;
	}
	& ul{
		width: 98%;
		display: flex;
		justify-content: space-evenly;
		flex-wrap: wrap;
	}
	& li{
		width: 21%;
		margin:2%;
	}
	& li	img{
		width: 100%;
		max-width: 166px;
		display: block;
		margin: 0 auto;
	}
	& li{
		&:nth-child(1),
	&:nth-child(2){
			width: 40%;
			p{
				text-align: left;
			}
			img{
				max-width: 335px;
				margin: 0;
			}
		}
		&:nth-child(1){
			margin-left: auto;
			margin-right: 2%;
			text-align: left;
		}
		&:nth-child(2){
			margin-left: 2%;
			margin-right: auto;
		}
		p{
			text-align: center;
			font-size: min(2.8vw,14px);
		}
		div{
			margin-bottom: 6px;
		}
	}
}

.face_tit_s{
	display: inline-block;
	vertical-align: middle;
	font-size: 38px;
	line-height: 1.1;
	& .face_sup{
		top: -7px;
	}
}

.feat_wp{
	position: relative;
	background: url(/images/item/facer/feature_01_bg.jpg) center top no-repeat;
	background-size: auto 100%;
	z-index: 2;
	padding: 6% 0 10%;
}

.feat_wide{
	max-width: 860px;
	width: 100%;
	margin: 0 auto;
}

.feat_wide02{
	max-width: 1006px;
	width: 100%;
	margin: 0 auto;
}

.feat02_wp{
	padding: 300px 0 90px;
	background: #f4f4f4 url(/images/item/facer/feature_02.jpg) no-repeat center top fixed;
	background-size: auto auto;
	& .feat02_mt01{
		margin-bottom: 90px;
	}
}

.feat02_tit_box{
	position: relative;
	z-index: 2;
	text-align: center;
	margin-top: -20px;
}

.feat02_tit_s{
	display: inline-block;
	background: #c2daf3;
	padding: 2px 20px;
	text-align: center;
	margin: 0 0 30px;
	& p span{
		background: #fff;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 24px;
	}
}

.feature_img03{
	& img{
		width: 480px;
	}
}

.feat04_wp{
	padding: 1px 0 100px;
	background: url(/images/item/facer/feature_04.jpg) center center no-repeat fixed;
	background-size: cover;
	& .face_notes{
		margin-top: -10px;
	}
}

.feat06_wp{
	padding: 1px 0;
	position: relative;
	background: #f4f4f4;
	&::after{
		content: '';
		position: absolute;
		z-index: 2;
		left: 0;
		bottom: -149px;
		width: 0;
		height: 0;
		border: none;
		border-style: solid;
		border-color: #f4f4f4 transparent transparent transparent;
		border-width: 150px 100vw 0 0;
	}
}

.feat_img06{
	position: relative;
	z-index: 3;
	margin-bottom: -80px;
}

.feat07_wp{
	padding: 150px 0 200px;
	overflow: hidden;
	background: #ebebeb url(/images/item/facer/feature_07.jpg) no-repeat center top fixed;
	background-size: auto 100%;
	& .face_tit_s{
		font-size: 27px;
	}
}

.feat07_img01{
	margin: 0 auto 60px;
	text-align: center;
}

.feat07_line{
	position: relative;
	max-width: 1006px;
	width: 100%;
	min-height: 241px;
	margin: 0 auto;
	background: url(/images/item/facer/feature_10.png) center top;
	background-size: 100% 100%;
	padding: 0 30px 0 60px;
	& h4{
		position: absolute;
		width: 100%;
		left: 0;
		top: -28px;
		padding: 0 5px;
		font-size: 33px;
		text-align: center;
	}
}

.feat07_col01{
	width: 70%;
	margin-top: 10px;
}

.feat07_col02{
	width: 27%;
	line-height: 0;
	margin: -32px 0;
	text-align: right;
}

.feat07_flex{
	align-items: center;
	& .face_notes{
		margin-bottom: 0!important;
	}
}

.quality_title{
	padding: 280px 0 50px;
	margin-top: -200px;
	min-height: 497px;
	position: relative;
	z-index: 3;
	background: url(/images/item/facer/quality_06.png) no-repeat center top;
}

.quality_wp{
	position: relative;
	margin-top: -60px;
	padding-bottom: 40px;
	font-size: 26px;
	z-index: 3;
	background: #f4fcff;
	&::after{
		display: none;
		content: '';
		position: absolute;
		z-index: 2;
		left: 0;
		top: -149px;
		width: 0;
		height: 0;
		border: none;
		border-style: solid;
		border-color: #fff transparent transparent transparent;
		border-width: 150px 100vw 0 0;
		transform: rotate(-180deg);
	}
}

.quality_col01{
	width: 37%;
	text-align: center;
}

.quality_col02{
	width: 60.5%;
}

.quality_col03{
	width: 59.5%;
}

.quality_col04{
	width: 42%;
	margin-top: 15px;
	margin-right: -6%;
}

.quality_col05{
	width: 34%;
}

.quality_col06{
	width: 59%;
}

.quality_col07{
	width: 59.5%;
}

.quality_col08{
	width: 400px;
	margin: auto;
	padding-left: 0;
}

.quality_last{
	position: relative;
	height: 0;
	width: 100%;
	padding-top: 27%;
	background: url(/images/item/facer/quality_04.jpg) no-repeat center bottom;
	background-size: 100% 100%;
}

.quality_last_top{
	position: absolute;
	left: 0;
	top: -1px;
	width: 100%;
	padding-top: 27%;
	background: url(/images/item/facer/quality_07.png) no-repeat;
	background-size: 100% 100%;
}

.quality_tit{
	margin-bottom: 10px;
	font-size: 38px;
	line-height: 1.4;
}

.use_wp .face_title_h3 h3{
	line-height: 1.1!important;
}

.use_wp{
	& .face_sup{
		transform:scale(0.9);
	}
}

.use_wide{
	max-width: 790px;
	width: 100%;
	margin: 0 auto;
}

.face_height01{
	min-height: 110px;
}

.voices_b_sec{
	padding-top: 140px;
	margin-bottom: 5%;
}

.voices_tit_b{
	max-width: 1123px;
	width: 100%;
	height: 268px;
	margin: 0 auto;
	margin-bottom: 100px;
	position: relative;
	background: url(/images/item/facer/voices_bg02.jpg) no-repeat;
	background-size: 100% 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	& h3{
		color: var(--brown);
	}
}

.iFace{
	& #Buy h3 sup{
		font-size: 0.3em;
		margin-top: 18px;
		display: inline-block;
		vertical-align: top;
	}
}

.buyTiS{
	& img{
		margin-left: -16px;
	}
}

@media only screen and (min-width: 1999px){
	.voices_item img,
	.voices_item_b img{
		max-width: none !important;
		width: 100%;
	}
	.feat_wp,
	.feat02_wp{
		background-size: 100% auto;
	}
	.quality_title{
		background-size: 100% 100%;
	}
}

/* Slider */
.slick-prev, .slick-next{
	overflow: hidden;
	position: absolute;
	z-index: 2;
	top: 50%;
	transform: translate(0, -50%);
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	cursor: pointer;
	color: transparent;
	border: none;
	background: rgba(150,150,150,0.4);
	outline: none;
	opacity:1;
	transition: 0.3s;
}

.slick-prev:hover, .slick-next:hover{
	opacity:0.9;
	transition: 0.3s;
}

.slick-prev{
	left: -55px;
}

.slick-next{
	right: -55px;
}

.slick-prev:after,.slick-next:after{
	content: '';
	position: absolute;
	top: calc(50% - 5px);
	width: 10px;
	height: 10px;
}

.slick-prev{
	&:after{
		left: calc(50% - 2px);
		border-top: 1px solid #fff;
		border-left: 1px solid #fff;
		transform: rotate(-45deg);
	}
}

.slick-next{
	&:after{
		left: calc(50% - 8px);
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(45deg);
	}
}

/*dots*/
.slick-dots{
	position: absolute;
	left: 0;
	bottom: 10px;
	z-index: 3;
	width: 100%;
	text-align: center;
	& li{
		position: relative;
		display: inline-block;
		width: 26px;
		height: 26px;
		padding: 5px;
		margin: 0 10px;
		cursor: pointer;
	}
	& li button{
		overflow: hidden;
		text-indent: -999px;
		display: block;
		width: 16px;
		height: 16px;
		border-radius: 8px;
		outline: none;
		border: 0;
		background: #dadada;
		color: transparent;
		cursor: pointer;
	}
	& li.slick-active button{
		background: #727171;
	}
}

.ui_slick_center{
	& li{
		padding: 10px;
	}
}

.gallery{
	& .galBox{
		line-height: 0;
		img{
			height: auto;
		}
	}
	& h3{
		display: inline-block;
		position: relative;
		font-size: 40px;
		letter-spacing: 8px;
		font-family: var(--Fns);
	}
}

.gallery h3:before,.gallery h3:after{
	content: "";
	position: absolute;
	width: 30px;
	height: 0;
	top: 34px;
	border: 1px solid #000;
}

.gallery{
	& h3:before{
		left: -50px;
	}
	& h3:after{
		right: -50px;
	}
	&{
		height: auto;
	}
}

/*___________________FAQ*/
.face_faq{
	position: relative;
	z-index: 2;
	background: #fff;
	padding: 0;

	/* 見出し */
	.face_faq_title{
		margin-bottom: 0;
		padding: 80px 0 45px;
		text-align: center;

		h3{
			margin: 0;
			font-size: 46px;
			line-height: 1.1;
			letter-spacing: 1px;
			color: var(--red);
		}

		img{
			width: auto;
			height: 92px;
			margin-right: -50px;
		}

		small{
			display: block;
			font-size: 28px;
			line-height: 1.5;
			letter-spacing: 3px;
		}
	}

	/* 見出しの下から背景を表示 */
	.face_faq_body{
		background: #fbfbfb url(/images/item/facer/qa_01.jpg) top center no-repeat;
		padding: 90px 0 80px;
	}

	.face_faq_inner{
		position: relative;
		z-index: 2;
		max-width: 850px;
		width: 100%;
		margin: 0 auto;
	}

	.face_faq_list{
		margin: 0 0 20px;
		padding: 0 0 12px;
		background: none;
		box-shadow: none;
		letter-spacing: 0;

		/* 質問 */
		> dt.acoA{
			position: relative;
			display: block;
			margin: 0;
			padding: 15px 5rem 15px 4.5rem;
			border-bottom: 1px solid var(--brown);
			background: url(/images/item/facer/qa_q.svg) left 3% center / 27px 31px no-repeat;
			font-size: 1.4rem;
			line-height: 1.5;
			color: var(--brown);
			cursor: pointer;
			transition: opacity 0.3s;

			&:hover{
				opacity: 0.6;
			}

			> p{
				margin: 0;
				padding: 0;
			}

			/* 開閉矢印 */
			&::after{
				content: "";
				position: absolute;
				top: 27%;
				right: 20px;
				width: 23px;
				height: 23px;
				margin: 0;
				border: solid var(--brown);
				border-width: 0 1px 1px 0;
				transform: rotate(45deg);
				transform-origin: center;
				transition: transform 0.3s;
				pointer-events: none;
			}

			&.active{
				&::after{
					top: 36px;
					transform: rotate(225deg);
				}

				> p{
					color: var(--brown);
				}
			}
		}

		/* 回答 */
		> dd.acoB{
			position: relative;
			margin: 15px 0 30px 50px;
			padding: 35px 40px 30px 76px;
			background: #fefefe url(/images/item/facer/qa_a.svg) left 30px top 43px / 24px 28px no-repeat;
			border: none;
			border-radius: 8px;
			box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.05);
			font-size: 1.3rem;
			line-height: 1.8;

			/* 吹き出し */
			&::after{
				content: "";
				position: absolute;
				top: 0;
				left: -57px;
				width: 58px;
				height: 70px;
				background: url(/images/item/facer/qa_02.png) center / 100% 100% no-repeat;
				pointer-events: none;
			}

			> p{
				width: auto;
				margin: 0;
				padding: 0;

				+ p{
					margin-top: 16px;
				}

				/* 各回答の注釈 */
				&.faq_note{
					margin-top: 12px;
					font-size: 13px;
					line-height: 1.7;
					letter-spacing: 0;

					> span{
						display: block;
					}
				}
			}
		}

		/* 本文・質問内の注釈記号 */
		.face_sup{
			position: relative;
			top: -0.5em;
			display: inline-block;
			vertical-align: baseline;
			font-size: 0.6em;
			line-height: 0;
			letter-spacing: 0;
		}
	}
}
/*260514追記---------------------------------*/
#heading_03{
	margin-bottom: 3%;
}

.iwrap{
	& .Cta{
		width: 800px;
	}
}
