@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, picture, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	background: #fff;
	box-sizing: border-box;
	overflow-x: hidden;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}
a {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
ul, ol {
	list-style: none;
}
picture {
	display: block;
}


/************************************************
common
************************************************/
.wrapper {
	width: 100%;
	margin: 0;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
	font-weight: 500;
	overflow: clip;
}
.wrapper .inner {
	width: 100%;
	margin: 0 auto;
	max-width: 1000px;
	position: relative;
	box-sizing: border-box;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	.wrapper .inner {
		padding: 0;
	}
}
.wrapper img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.onlyPC {
	display: none;
}
.pbg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 140vh;
	transition: .8s ease;
}
.active .pbg {
	display: block;
}


/************************************************
header
************************************************/
#header h2 {
	width: calc(571 / 750 * 100vw);
	position: absolute;
	left: calc(90 / 750 * 100vw);
	top: calc(931 / 750 * 100vw);
	font-size: 0;
}
#header p.cpt {
	width: calc(92 / 750 * 100vw);
	position: absolute;
	left: calc(616 / 750 * 100vw);
	top: calc(110 / 750 * 100vw);
	font-size: 0;
}
#header p.award {
	width: calc(683 / 750 * 100vw);
	position: absolute;
	left: calc(40 / 750 * 100vw);
	bottom: calc(94 / 750 * 100vw);
	font-size: 0;
}


/************************************************
point
************************************************/
.point {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv_bg.png") center top / 100% auto repeat-y;
	position: relative;
}
.point .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_point_bg.jpg") center 0 / 100% auto no-repeat;
	aspect-ratio: 750/1111;
	box-sizing: border-box;
	padding: 1px 0 0;
	position: relative;
}
.point h2 {
	width: calc(615 / 750 * 100vw);
	margin: calc(770 / 750 * 100vw) calc(67 / 750 * 100vw) 0 auto;
}


/************************************************
point01
************************************************/
.point01 {}
.point01 .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv_bg.png") center 0 / 100% auto repeat-y;
	position: relative;
	padding: 0 0 1px;
}
.point01 h3 {
	width: calc(670 / 750 * 100vw);
	position: absolute;
	left: calc(40 / 750 * 100vw);
	top: calc(263 / 750 * 100vw);
}
.point01 p {
	width: calc(730 / 750 * 100vw);
	margin: 0 auto calc( 37 / 750 * 100vw ) calc( 17 / 750 * 100vw );
}
.point01 dl.ac {
	width: calc(670 / 750 * 100vw);
	margin: 0 auto calc( 100 / 750 * 100vw );
	position: relative;
	box-shadow: calc( 11.658 / 750 * 100vw ) calc( 18.657 / 750 * 100vw ) calc( 28.48 / 750 * 100vw ) calc( 3.52 / 750 * 100vw ) rgba(181, 51, 88, 0.1);
}

.point01 dl.ac dt {
	position: relative;
	cursor: pointer;
}
.point01  dl.ac dt::before,
.point01  dl.ac dt::after {
	content: "";
	display: block;
	background: #fff;
	width: calc( 25 / 750 * 100vw );
	height: 1px;
	line-height: .1;
	position: absolute;
	right: calc( 12 / 750 * 100vw );
	bottom: calc( 23 / 750 * 100vw );
}
.point01  dl.ac dt::after {
  transform: rotate(-90deg);
  transition: all 0.3s ease;
}
.point01  dl.ac dt.active::after {
  transform: rotate(0deg);
}
.point01 dl.ac dt.active {}
.point01 dl.ac dt.active img {}
.point01 dl.ac dt + dd {
	display: none;
}


/************************************************
point02
************************************************/
.point02 {}
.point02 .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv_bg.png") center 0 / 100% auto repeat-y;
	position: relative;
	padding: 1px 0;
}
.point02 h2 {
	position: relative;
	z-index: 1;
}
.point02 h3 {
	width: calc(670 / 750 * 100vw);
	position: absolute;
	left: calc(40 / 750 * 100vw);
	top: calc(257 / 750 * 100vw);
	z-index: 1;
}
.point02 p.p01 {
	width: calc(730 / 750 * 100vw);
	position: absolute;
	left: calc(17 / 750 * 100vw);
	top: calc(1106 / 750 * 100vw);
	z-index: 1;
}
.point02 p.p02 {
	width: calc(730 / 750 * 100vw);
	position: absolute;
	left: calc(17 / 750 * 100vw);
	top: calc(1893 / 750 * 100vw);
	z-index: 1;
}
.point02 p.result {
	width: calc(620 / 750 * 100vw);
	position: absolute;
	left: calc(66 / 750 * 100vw);
	top: calc(2408 / 750 * 100vw);
	z-index: 1;
}
.point02 h4 {
	margin-top: calc(-190 / 750 * 100vw);
	position: relative;
	z-index: 0;
}


/************************************************
voice
************************************************/
.voice {
	background: #f9f0f3;
	position: relative;
	z-index: 8500;
}
.voice .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_voice_bg.jpg") center top / 100% auto no-repeat;
	aspect-ratio: 750/1030;
	box-sizing: border-box;
	padding: 1px 0;
}
.voice h2 {
	width: calc(514 / 750 * 100vw);
	margin: calc(115 / 750 * 100vw) auto calc(88 / 750 * 100vw);
}
.voice .slide {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.voice .swiper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	overflow: hidden;
}
.voice .slide .swipe-prev, .voice .slide .swipe-next {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_voice_arrow.png") left top / auto 100% no-repeat;
	width: calc(50 / 750 * 100vw);
	height: calc(80/ 750 * 100vw);
	position: absolute;
	right: calc(0 / 750 * 100vw);
	top: 50%;
	margin-top: calc(-40 / 750 * 100vw);
	z-index: 20;
}
.voice .slide .swipe-prev {
	right: auto;
	left: calc(0 / 750 * 100vw);
	transform: rotate(180deg);
}
.voice .slide .swiper-button-disabled {
	display: none;
}
.voice .swiper .swiper-slide {
	position: relative;
	width: calc(375 / 750 * 100vw);
	padding: 0 calc(10 / 750 * 100vw) 0 calc( 20 / 750 * 100vw );
	box-sizing: border-box;
}
.voice p.atte {
	color: #585d5e;
	font-size: calc(20 / 750 * 100vw);
	line-height: 1;
	letter-spacing: 0.1em;
	margin: calc(30 / 750 * 100vw) calc(20 / 750 * 100vw) calc( 70 / 750 * 100vw );
}
.voice .swiper-pagination {
	position: relative;
	width: 100%;
	height: calc(6 / 750 * 100vw);
	top: 0;
	line-height: 0.1;
	margin: 0 auto calc(60 / 750 * 100vw);
}
.voice .swiper-pagination .swiper-pagination-bullet {
	width: calc(60 / 750 * 100vw);
	height: calc(6 / 750 * 100vw);
	background: #fff;
	opacity: 1;
	margin: 0 calc(5 / 750 * 100vw);
	border-radius: 0;
}
.voice .swiper-pagination .swiper-pagination-bullet-active {
	background: #cd7b96;
}
.voice .evaluation {
	position: relative;
}


/************************************************
nayami
************************************************/
.nayami .pbg {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_nayami_bg02.jpg") 50% 50% no-repeat;
	z-index: 0;
}
.nayami .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_nayami_bg01.png") center top / 100% auto no-repeat;
	aspect-ratio: 750 / 2160;
	padding-top: 1px;
}
.nayami h2 {
	width: calc(597 / 750 * 100vw);
	margin: calc(100 / 750 * 100vw) auto calc(54 / 750 * 100vw);
}
.nayami ul {
	width: calc(726 / 750 * 100vw);
	aspect-ratio: 750 / 974;
	margin: 0 auto;
	position: relative;
}
.nayami ul li {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
.nayami ul li:nth-child(2) {
	padding-top: calc(211 / 750 * 100vw);
}
.nayami ul li:nth-child(3) {
	padding-top: calc(420 / 750 * 100vw);
}
.nayami div.graph {
	width: calc(369 / 750 * 100vw);
	margin: 0 auto 0 calc( 305 / 750 * 100vw );
}
.nayami h3 {
	width: calc(668 / 750 * 100vw);
	margin: calc( -203 / 750 * 100vw ) auto 0 calc( 42  / 750 * 100vw );
}


/************************************************
dev
************************************************/
.dev .inner {
	z-index: 9500;
}
.dev .cnt {
	background-color: #da4a67;
}
.dev h2 {
	position: relative;
	z-index: 1;
}
.dev dl {
	margin: calc( -94 / 750 * 100vw ) auto 0;
	position: relative;
	z-index: 0;
}
.dev dl dd {
	width: calc( 199 / 750 * 100vw );
	position: absolute;
	left: calc( 271 / 750 * 100vw );
	top: calc(1523 / 750 * 100vw );
}
.dev dl dd:nth-child(3) {
	width: calc( 212 / 750 * 100vw );
	margin: 0 0 0 calc( -147 / 750 * 100vw );
	padding-top: calc( 266 / 750 * 100vw );
}
.dev dl dd:nth-child(4) {
	width: calc( 215 / 750 * 100vw );
	margin: 0 0 0 calc( 129 / 750 * 100vw );
	padding-top: calc( 266 / 750 * 100vw );
}


/************************************************
component
************************************************/
.component {
	background: #fff;
}
.component .inner {
	z-index: 8500;
}
.component p.p01 {
	width: calc( 658 / 750 * 100vw );
	position: absolute;
	left: calc( 34 / 750 * 100vw );
	top: calc( 693 / 750 * 100vw);
}
.component p.p02 {
	width: calc( 689 / 750 * 100vw );
	position: absolute;
	left: calc( 61 / 750 * 100vw );
	top: calc( 997 / 750 * 100vw);
}
.component p.p03 {
	width: calc( 655 / 750 * 100vw );
	position: absolute;
	left: calc( 34 / 750 * 100vw );
	top: calc( 1281 / 750 * 100vw);
}
.component p.result {
	width: calc( 505 / 750 * 100vw );
	position: absolute;
	left: calc( 123 / 750 * 100vw );
	top: calc( 1786 / 750 * 100vw);
}


/************************************************
commitment
************************************************/
.commitment {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_commitment_bg.jpg") 50% 100% / cover no-repeat;
}
.commitment .inner {
	z-index: 7500;
}
.commitment .cnt {
	aspect-ratio: 750/3030;
}
.commitment .pbg {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_commitment_bg.jpg") 50% 50% no-repeat;
	z-index: 7400;
}
.commitment h2 {
	position: relative;
	z-index: 2;
}
.commitment h3 {
	position: relative;
	z-index: 1;
	margin: calc( -109 / 750 * 100vw ) auto calc( 80 / 750 * 100vw );
}
.commitment div.img {
	width: calc( 749 / 750 * 100vw );
	margin: 0 auto;
}
.commitment p.cpt01 {
	width: calc( 393 / 750 * 100vw );
	position: absolute;
	left: calc( 78 / 750 * 100vw );
	bottom: calc( 691 / 750 * 100vw);
}
.commitment p.cpt02 {
	width: calc( 360 / 750 * 100vw );
	position: absolute;
	right: calc( 73 / 750 * 100vw );
	bottom: calc( 165 / 750 * 100vw);
}


/************************************************
reasonable
************************************************/
.reasonable {
	background-color: #fff;
}
.reasonable .inner {
	z-index: 7500;
}
.reasonable .cnt {
}
.reasonable h2 {
	position: relative;
	z-index: 2;
}
.reasonable h3 {
	position: relative;
	z-index: 1;
	margin: calc( -107 / 750 * 100vw ) auto 0;
}


/************************************************
lineup
************************************************/
.lineup {
	background: #f9f0f3;
}
.lineup .inner {
	z-index: 9500;
}
.lineup .cnt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_lineup_bg.png") center top / 100% auto repeat-y;
}
.lineup .base {
	position: relative;
}
.lineup .cnt .base div {
	position: absolute;
}
.lineup div.wash {
	width: calc(691 / 750 * 100vw);
	left: 0;
	top: calc(356 / 750 * 100vw);
}
.lineup div.lotion {
	width: calc(693 / 750 * 100vw);
	right: 0;
	top: calc(1371 / 750 * 100vw);
}
.lineup div.day {
	width: calc(695 / 750 * 100vw);
	left: 0;
	top: calc(3008 / 750 * 100vw);
}
.lineup div.night {
	width: calc(693 / 750 * 100vw);
	right: 0;
	top: calc(4015 / 750 * 100vw);
}
.lineup dl.ac {
	width: calc(710 / 750 * 100vw);
	margin: 0 auto calc(60 / 750 * 100vw);
	box-shadow: calc( 11.658 / 750 * 100vw ) calc( 18.657 / 750 * 100vw ) calc( 28.48 / 750 * 100vw ) calc( 3.52 / 750 * 100vw ) rgba(181, 51, 88, 0.1);
}

.lineup dl.ac dt {
	position: relative;
	cursor: pointer;
}
.lineup  dl.ac dt::before,
.lineup  dl.ac dt::after {
	content: "";
	display: block;
	background: #fff;
	width: calc( 25 / 750 * 100vw );
	height: 1px;
	line-height: .1;
	position: absolute;
	right: calc( 12 / 750 * 100vw );
	bottom: calc( 23 / 750 * 100vw );
}
.lineup  dl.ac dt::after {
  transform: rotate(-90deg);
  transition: all 0.3s ease;
}
.lineup  dl.ac dt.active::after {
  transform: rotate(0deg);
}
.lineup dl.ac dd {
	display: none;
}
.lineup dl.cleansing {
	width: calc(750 / 750 * 100vw);
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.lineup dl.cleansing dt {
	width: calc( 570 / 750 * 100vw);
	margin: 0 auto;
}
.lineup dl.last {
	position: relative;
	margin: calc( 0 / 750 * 100vw ) auto 0;
	z-index: 1;
}
.lineup dl.last dd {
	width: calc(547 / 750 * 100vw);
	position: absolute;
	right:  calc(102 / 750 * 100vw);
	bottom: calc(112 / 750 * 100vw);
}


/************************************************
brand
************************************************/
.brand {
	background: #b11620;
}


/************************************************
qa
************************************************/
.qa {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_qa_bg.jpg") center top / 100% auto no-repeat #f9f0f3;
}
.qa .cnt {
	padding: 1px 0 calc(130 / 1000 * 100%);
}
.qa h2 {
	width: calc(371 / 750 * 100vw);
	margin: calc( 140 / 750 * 100vw ) auto calc(71 / 750 * 100vw);
}
.qa dl {
	max-width: calc(670 / 750 * 100vw);
	margin: 0 auto calc(10 / 750 * 100vw);
}
.qa dl dt {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_qa_icn01.png") calc(26 / 750 * 100vw) center / calc(60 / 750 * 100vw) auto no-repeat #fff;
	color: #0a111d;
	font-size: calc(24 / 750 * 100vw);
	line-height: calc(38 / 750 * 100vw);
	letter-spacing: 0.1em;
	font-weight: bold;
	padding: calc(28 / 750 * 100vw) calc(108 / 750 * 100vw);
	position: relative;
}
.qa dl dt::before,
.qa dl dt::after {
	content: "";
	display: block;
  background: #10152e;
  width: calc( 26 / 750 * 100vw );
	height: 1px;
  line-height: .1;
	position: absolute;
	right: calc( 30 / 750 * 100vw );
	top: 50%;
}
.qa dl dt::after {
  transform: rotate(-90deg);
  transition: all 0.3s ease;
}
.qa dl dt.active::after {
  transform: rotate(0deg);
}
.qa dl dd {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_qa_icn02.png?up251217") calc(26 / 750 * 100vw) calc(32 / 750 * 100vw) / calc(60 / 750 * 100vw) auto no-repeat;
	color: #0a111d;
	font-size: calc(24 / 750 * 100vw);
	line-height: calc(38 / 750 * 100vw);
	letter-spacing: 0.1em;
	padding: calc(40 / 750 * 100vw) calc(30 / 750 * 100vw) calc(35 / 750 * 100vw) calc(110 / 750 * 100vw);
	display: none;
}
.qa dl dd span.atte {
	display: block;
	font-size: calc(18 / 750 * 100vw);
	line-height: calc(30 / 750 * 100vw);
	letter-spacing: 0.1em;
	margin-top: calc(30 / 750 * 100vw);
}


/************************************************
CV
************************************************/
.cv {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv_bg.png") left top / 100% auto repeat-y;
	position: relative;
	z-index: 1;
}
.cv .cnt {
	width: calc( 710 / 750 * 100vw );
	padding: calc( 80 / 750 * 100vw ) 0;
	margin: 0 auto;
	z-index: 100;
}
#cv02.cv .cnt::before {
	content: "";
	display: block;
	width: 100vw;
	aspect-ratio: 750 / 500;
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv02_cpt.png") left top / 100% auto no-repeat;
	margin: calc( -80 / 750 * 100vw ) calc( -20 / 750 * 100vw ) calc( 49 / 750 * 100vw );
}
.cv .panel {
	background: url("../../../../shopping/images/pub/dl_2w/b_net01/sp_cv_bg02.png") center bottom / 100% auto no-repeat;
	position: relative;
	padding: 0 0 calc( 30 / 750 * 100vw );
	margin: 0 auto calc( 30 / 750 * 100vw );
}
.cv .cv-btn-new {
	width: calc(626 / 750 * 100vw);
	margin: 0 auto;
	animation: btnslide 3s ease 0s infinite;
}
.cv .cv-btn-member {
	width: 100%;
	text-align: center;
	margin: 0 auto calc( 30 / 750 * 100vw );
	display: none;
}
.cv .cv-btn-member a {
	display: inline-block;
	color: #50545a;
	font-size: calc(20 / 750 * 100vw);
	line-height: 1;
	letter-spacing: 0.1em;
	font-weight: bold;
	padding-bottom: calc( 5 / 750 * 100vw );
	border-bottom: #50545a solid 1px;
	text-decoration: none;
}
.cv .cv-btn-member a::after {
	content: "▲";
	font-size: 0.75em;
	line-height: 1;
	vertical-align: middle;
	transform: rotate(90deg);
	display: inline-block;
}
#b_net01 .cv .cv-btn-member {
	display: block;
}
.cv .cv-service {
	width: calc(710 / 750 * 100vw);
	margin: calc(80 / 750 * 100vw) auto 0;
}
.cv p.atte {
	color: #50545a;
	font-size: calc(18 / 750 * 100vw);
	line-height: calc(30 / 750 * 100vw);
	letter-spacing: 0.05em;
	width: calc(710 / 750 * 100vw);
	margin: 0 auto;
}
.cv p.atte span {
	display: none;
}
#b_net01 .cv p.atte span {
	display: inline;
}
#b_net01 .cv p.atte strong {
	color: #a22147;
}
.cv .cv-service + p.atte {
	margin-top: calc(25 / 750 * 100vw);
}
@keyframes btnslide {
	0% {
		transform: translateX(0);
	}
	5% {
		transform: translateX(calc(10 / 750 * 100vw));
	}
	10% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(0);
	}
}


/************************************************
fixedBtn
************************************************/
.fixedBtn {
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 10000;
	background-color: rgba(255, 255, 255, .6);
	padding: calc( 29 / 750 * 100vw ) 0 calc( 10 / 750 * 100vw );
	backdrop-filter: blur( 8px );
}
.fixedBtn a {
	display: block;
	width: calc( 666 / 750 * 100vw );
	margin: 0 auto;
}


/************************************************
footer
************************************************/
#footer {
	background-color: #a64864;
	padding: calc(50 / 750 * 100vw) 0 0;
	;
}
#footer ul {
	list-style: none;
	text-align: center;
	font-size: 0;
	padding-bottom: calc(50 / 750 * 100vw);
}
#footer ul li {
	display: inline-block;
	padding: 0 calc(16 / 750 * 100vw);
	position: relative;
	line-height: 1.1;
}
#footer ul li + li {
	border-left: 1px solid #fff;
}
#footer ul li:nth-child(4n) {
	border: 0;
}
#footer ul li a {
	font-size: calc(20 / 750 * 100vw);
	line-height: calc(36 / 750 * 100vw);
	text-decoration: none;
	color: #fff;
}
#footer p {
	display: block;
	background: #0a111d;
	color: #fff;
	text-align: center;
	font-size: calc(18 / 750 * 100vw);
	line-height: 1;
	padding: calc(22 / 750 * 100vw) 0 calc(21 / 750 * 100vw);
}
