@charset "UTF-8";

/* ---------------------------------------------
reset
--------------------------------------------- */
body {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	background: #e2e9f1 url(../img/bg.jpg) no-repeat;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
}

/* 解析タグの隙間対策 */
body>img {
	display: none;
}

.lp_main div,
.lp_main span,
.lp_main iframe,
.lp_main h1,
.lp_main h2,
.lp_main h3,
.lp_main h4,
.lp_main h5,
.lp_main h6,
.lp_main p,
.lp_main address,
.lp_main img,
.lp_main small,
.lp_main strong,
.lp_main sub,
.lp_main sup,
.lp_main dl,
.lp_main dt,
.lp_main dd,
.lp_main ol,
.lp_main ul,
.lp_main form,
.lp_main label,
.lp_main table,
.lp_main caption,
.lp_main tbody,
.lp_main tfoot,
.lp_main thead,
.lp_main tr,
.lp_main th,
.lp_main td,
.lp_main article,
.lp_main aside,
.lp_main footer,
.lp_main header,
.lp_main menu,
.lp_main nav,
.lp_main section,
.lp_main video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 0;
	line-height: 0;
	vertical-align: baseline;
	background: transparent;
}

.lp_main article,
.lp_main aside,
.lp_main details,
.lp_main figcaption,
.lp_main figure,
.lp_main footer,
.lp_main header,
.lp_main menu,
.lp_main nav,
.lp_main section {
	display: block;
}

.lp_main ol,
.lp_main ul {
	list-style: none;
}

.lp_main :focus {
	outline: 0;
}

.lp_main table {
	border-collapse: collapse;
	border-spacing: 0;
}

.lp_main *,
.lp_main *::before,
.lp_main *::after {
	box-sizing: border-box;
}

.lp_main img {
	display: block;
	height: auto;
	vertical-align: bottom;
	width: 100%;
	max-width: 100%;
}

.lp_main svg,
.lp_main video {
	width: 100%;
	height: auto;
}

/* ---------------------------------------------
common
--------------------------------------------- */
/* スムーススクロール */
html {
	/* scroll-behavior: smooth; */
}

.lp_main {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	overflow: hidden;
	background-color: #fff;
}

/* ---------------------------------------------
アイコン
--------------------------------------------- */
/* アイコン共通 */
.lp_main .icn_area {
	display: flex;
	position: absolute;
	top: 50%;
	right: 3%;
	width: 5%;
	height: 38%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	align-items: center;
	justify-content: center;
}

/* アイコン プラス */
.lp_main .icn__plus::before,
.lp_main .icn__plus::after {
	content: " ";
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	background: #000;
}

.lp_main .icn__plus::before {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.lp_main .icn__plus.is_active::before {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

/* ---------------------------------------------
アコーディオン
--------------------------------------------- */
.lp_main .aco_btn {
	position: relative;
	cursor: pointer;
}

.lp_main .aco_contents {
	display: none;
}

/* ---------------------------------------------
オファー
--------------------------------------------- */
.offer_area {}

.offer_area .btn_area_teiki,
.offer_area .btn_area_regular {
	position: relative;
}

.offer_area .btn_area_teiki .btn_teiki {
	width: 86.4%;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}

.offer_area .btn_area_regular .btn_regular {
	width: 94.4%;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}

.offer_area .btn_area_teiki .btn_teiki .c-button._shiny,
.offer_area .btn_area_regular .btn_regular .c-button._shiny {
	position: relative;
	display: block;
	overflow: hidden;
	transition: 100ms;
}

.offer_area .btn_area_teiki .btn_teiki .c-button._shiny::before,
.offer_area .btn_area_regular .btn_regular .c-button._shiny::before {
	position: absolute;
	content: '';
	display: inline-block;
	top: -24%;
	left: 0;
	width: 4%;
	height: 100%;
	background-color: #f7f5f6;
	transition: 100ms;
	animation: shinyshiny 2.5s ease-in-out infinite;
}

.offer_area .btn_area_teiki .btn_teiki .c-button._shiny:hover,
.offer_area .btn_area_regular .btn_regular .c-button._shiny:hover {
	-webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
	0% {
		-webkit-transform: scale(0) rotate(45deg);
		opacity: 0;
	}

	80% {
		-webkit-transform: scale(0) rotate(45deg);
		opacity: 0.5;
	}

	81% {
		-webkit-transform: scale(4) rotate(45deg);
		opacity: 1;
	}

	100% {
		-webkit-transform: scale(50) rotate(45deg);
		opacity: 0;
	}
}

/* ---------------------------------------------
slide
--------------------------------------------- */
.lp_main .slide_area {
	position: relative;
	margin-bottom: 12%;
}

.lp_main .slide_area .swiper-slide {
	padding: 0 2%;
}

/* 左右のアイコン */
.lp_main .slide_area .swiper-button-next,
.lp_main .slide_area .swiper-button-prev {
	top: auto;
	bottom: -14%;
	width: min(calc((70 / 750) * 100vw), 70px);
	height: min(calc((9 / 750) * 100vw), 9px);
	background: url(../img/slide_arrow.png) no-repeat;
	background-size: contain;
}

.lp_main .slide_area .swiper-button-prev {
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.lp_main .slide_area .swiper-button-next:after,
.lp_main .slide_area .swiper-button-prev:after {
	content: none;
}

.lp_main .slide_area .swiper-button-next {
	right: 30%;
}

.lp_main .slide_area .swiper-button-prev {
	left: 30%;
}

/* ページネーション */
.lp_main .slide_area .swiper-pagination {
	bottom: -14%;
}

.lp_main .slide_area .swiper-pagination-bullet {
	opacity: 1;
	background-color: #e3e3e3;
	width: min(calc((12 / 750) * 100vw), 12px);
	height: min(calc((12 / 750) * 100vw), 12px);
	margin: 0 min(calc((8 / 750) * 100vw), 8px);
}

.lp_main .slide_area .swiper-pagination-bullet-active {
	background-color: #000;
}

/*------------------------
成分の開閉
------------------------*/
.fcarea .menu {
	width: 100%;
	padding: 0 0 21.33332vw 0;
}

.fcarea .menu input {
	display: none;
}

.fcarea .menu label {
	cursor: pointer;
	display: block;
	text-decoration: none;
	line-height: 1;
	position: relative;
	padding: 0;
}

.fcarea .menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
	margin-bottom: 1px;
}

.fcarea .menu li {
	height: 0;
	overflow-y: hidden;
	transition: padding-bottom 0.5s, padding-top 0.5s;
	-webkit-transition: padding-bottom 0.5s, padding-top 0.5s;
	-moz-transition: padding-bottom 0.5s, padding-top 0.5s;
	-ms-transition: padding-bottom 0.5s, padding-top 0.5s;
	-o-transition: padding-bottom 0.5s, padding-top 0.5s;
}

.fcarea #menu_bar01:checked~#links01 li {
	height: auto;
	opacity: 1;
}

/*開いたときの下の余白*/
.fcarea #menu_bar01:checked~#links01 li:last-child {
	margin-bottom: 0px;
}

/*閉じた状態の矢印描画*/
.fcarea .menu label:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 10px solid #fff;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	position: absolute;
	right: 7.5%;
	bottom: 42%;
	margin: auto;
}

/*開いた状態の矢印描画*/
.fcarea .menu input[type=checkbox]:checked+label:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 10px transparent;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-bottom: 10px solid #fff;
	position: absolute;
	right: 7.5%;
	bottom: 42%;
	margin: auto;
}

/* ---------------------------------------------
faq
--------------------------------------------- */
#explain_faq {
	padding-bottom: 3vw;
}

.qanda_area {
	margin: 0 auto;
}

.qanda_area .qanda {
	margin: 30px 0;
}

.qanda_area .qanda .q_ttl {
	position: relative;
	width: 89.33333%;
	margin: 0 auto;
}

.qanda_area .qanda .q_ans {
	position: relative;
	width: 89.33333%;
	margin: 0 auto;
}

.qanda_area .qanda .q_ttl:after {
	position: absolute;
	display: block;
	content: '';
	width: 30px;
	height: 30px;
	background-image: url("../img/s_c7_faq_p.png");
	background-size: 100% auto;
	background-position: center center;
	vertical-align: middle;
	text-align: center;
	top: 33%;
	right: 3%;
}

.qanda_area .qanda.active .q_ttl:after {
	background-image: url("../img/s_c7_faq_m.png");
	background-size: 100% auto;
}

.qanda_area dl:last-child {
	margin-bottom: 0;
}

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

	.qanda_area .qanda .q_ttl:before,
	.qanda_area .qanda .q_ans:before {
		width: 4vw;
		height: 4vw;
	}

	.qanda_area .qanda .q_ttl:after,
	.qanda_area .qanda .q_ans:after {
		width: 4vw;
		height: 4vw;
	}

	.qanda_area .qanda .q_ttl:before {
		top: 15%;
	}
}

/* フローティングバナー */
.fixed_btn {
	position: fixed;
	width: 100%;
	bottom: 0;
	display: none;
	left: 50%;
	transform: translateX(-50%);
	/* 中央揃え */
	z-index: 999;
}

.fixed_btn_inner {
	display: flex;
	justify-content: space-between;
	align-items: start;
}

.fixed_btn_inner a {
	margin: 0;
	padding: 0;
	line-height: 1em;
	display: block;
}

.fixed_btn_inner img {
	width: 100%;
}

@media screen and (min-width: 751px) {
	.fixed_btn {
		width: 750px;
	}
}