@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%;
	max-width: 1920px;
	margin: 0 auto;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
	font-weight: 500;
	overflow: clip;
}
.wrapper section {
	overflow: hidden;
}
.wrapper .inner {
	width: 100%;
	margin: 0 auto;
	max-width: 1000px;
	position: relative;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	.wrapper .inner {
		padding: 0;
	}
}
.wrapper img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.onlySP {
	display: none;
}
@media (min-width: 768px) {
	.inner .cnt {
		margin: 0 -42.3076923077vw;
		position: relative;
	}
}
@media (min-width: 1000px) {
	.inner .cnt {
		margin: 0 -460px;
	}
}
.pbg {
	display: none;
	position: fixed;
	top: 30%;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 150vh;
	transition: 1.5s ease;
}
.pbg02 {
	min-height: 100vh;
	height: 1362px;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
}
.active .pbg02, .active .pbg {
	display: block !important;
}
/************************************************
header
************************************************/
#header {}
#header h1 {
	width: calc(1000 / 1920 * 100%);
	position: absolute;
	left: calc(460 / 1920 * 100%);
	top: 0;
}
/************************************************
lead
************************************************/
.lead {
	clip-path: polygon(0% 0%, 100% 0%, 100% 80.5%, 50% 100%, 0% 81.5%);
}
.lead p.list {
	width: calc(640 / 1920 * 100%);
	position: absolute;
	left: calc(668 / 1920 * 100%);
	top: calc(195 / 1176* 100%);
}
/************************************************
triple
************************************************/
.triple {
	position: relative;
}
.triple .pbg02 {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_triple_bg.jpg") 100% 100% / cover no-repeat;
	min-height: 100vh;
	height: 1362px;
}
.triple .cnt {
	padding: 1px 0;
}
.triple h2 {
	width: calc(1053 / 1920 * 100%);
	margin: calc(70 / 1920 * 100%) 0 calc(40 / 1920 * 100%) calc(203 / 1920 * 100%);
}
.triple ul.effect03 {
	display: flex;
	margin: 0 auto;
	justify-content: center;
}
.triple ul.effect03 li {
	width: calc(181 / 1920 * 100%);
	margin: 0 calc(10 / 1920 * 100%);
}
.triple dl.effect {
	width: calc(589 / 1920 * 100%);
	margin: 0 auto calc(44 / 1920 * 100%);
	position: relative;
}
.triple dl.effect dd {
	width: calc(590 / 589 * 100%);
	position: absolute;
	left: 0;
	top: calc(72 / 485 * 100%);
}
.triple ul.moisturize03 {
	display: flex;
	margin: 0 auto calc(55 / 1920 * 100%);
	justify-content: center;
}
.triple ul.moisturize03 li {
	width: calc(180 / 1920 * 100%);
	margin: 0 calc(10 / 1920 * 100%);
}
.triple p.result {
	width: calc(590 / 1920 * 100%);
	margin: 0 auto calc(75 / 1920 * 100%);
}
/************************************************
quality
************************************************/
.quality {
	background-color: #fff;
}
.quality .img {
	position: relative;
	z-index: 0;
}
.quality h2 {
	width: calc(1920 / 1920 * 100%);
	position: absolute;
	left: calc(0 / 1920 * 100%);
	top: calc(0/ 2580* 100%);
	z-index: 1;
}
.quality p.cpt01 {
	width: calc(87 / 1920 * 100%);
	position: absolute;
	left: calc(1213 / 1920 * 100%);
	top: calc(386 / 2580* 100%);
	z-index: 1;
}
.quality p.cpt02 {
	width: calc(410 / 1920 * 100%);
	position: absolute;
	left: calc(501 / 1920 * 100%);
	top: calc(1028 / 2580* 100%);
	z-index: 1;
}
.quality p.reason {
	width: calc(1055 / 1920 * 100%);
	position: absolute;
	left: calc(372 / 1920 * 100%);
	top: calc(1352 / 2580* 100%);
	z-index: 1;
}
.quality p.cpt03 {
	width: calc(364 / 1920 * 100%);
	position: absolute;
	left: calc(1057 / 1920 * 100%);
	top: calc(2049 / 2580* 100%);
	z-index: 1;
}
.quality p.result {
	width: calc(410 / 1920 * 100%);
	position: absolute;
	left: calc(755 / 1920 * 100%);
	bottom: calc(99 / 2580* 100%);
	z-index: 1;
}
/************************************************
voice
************************************************/
.voice {
	position: relative;
	z-index: 8500;
}
.voice .cnt {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_voice_bg.jpg") center top / 100% auto no-repeat;
	aspect-ratio: 1920/720;
	box-sizing: border-box;
	padding: 1px 0;
}
.voice h2 {
	width: calc(543 / 1920 * 100%);
	margin: calc(107 / 1920 * 100%) auto calc(44 / 1920 * 100%);
}
.voice .slide {
	width: calc(946 / 1920 * 100%);
	margin: 0 auto;
	position: relative;
}
.voice .swiper-pagination + p.atte {
	display: block;
	width: calc(920 / 1920 * 100%);
	margin: 0 auto;
	color: #50545a;
	font-size: 12px;
	line-height: 21px;
	letter-spacing: 0.05em;
	padding: calc(46 / 1920 * 100%) 0 0;
}
.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/ds_uvhf/b_net03/pc_voice_arrow.png") left top / auto 100% no-repeat;
	width: 40px;
	height: 60px;
	position: absolute;
	right: 0px;
	top: 50%;
	margin-top: -30px;
	z-index: 20;
	cursor: pointer;
}
.voice .slide .swipe-prev {
	right: auto;
	left: 0px;
	transform: rotate(180deg);
}
.voice .slide .swiper-button-disabled {
	display: none;
}
.voice .swiper .swiper-slide {
	position: relative;
	width: 473px;
	padding: 0 15px;
	box-sizing: border-box;
}
.voice .swiper-pagination {
	position: relative;
	width: 100%;
	height: 12px;
	top: 0;
	line-height: 0.1;
	margin: calc(38 / 1920 * 100%) auto 0;
}
.voice .swiper-pagination .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	line-height: .1;
	background: #b4bdc3;
	opacity: 1;
	margin: 0 6px;
	border-radius: 12px;
}
.voice .swiper-pagination .swiper-pagination-bullet-active {
	background: #bd2240;
}
/************************************************
nayami
************************************************/
.nayami {}
.nayami .cnt {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_nayami_bg.jpg") center top / 100% auto no-repeat;
	aspect-ratio: 1920 / 820;
	padding-top: 1px;
}
.nayami h2 {
	width: calc(602 / 1920 * 100%);
	margin: calc(101 / 1920 * 100%) auto calc(67 / 1920 * 100%);
}
.nayami ul {
	width: calc(840 / 1920 * 100%);
	aspect-ratio: 840 / 400;
	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(130 / 840 * 100%);
}
.nayami ul li:nth-child(3) {
	padding-top: calc(290 / 840 * 100%);
}
/************************************************
replace
************************************************/
.replace .cnt {
	position: relative;
	aspect-ratio: 1920/1250;
}
.replace .pbg {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_replace_img.jpg") 50% 50% / cover no-repeat;
	height: 150vh;
}
.replace h2 {
	width: calc(1920 / 1920 * 100%);
	margin: 0 auto calc(72 / 1920 * 100%);
}
.replace dl {
	width: calc(733 / 1920 * 100%);
	margin: 0 auto 0 calc(447 / 1920 * 100%);
	position: relative;
}
.replace dl dd {
	width: calc(600 / 733 * 100%);
	position: absolute;
	left: calc(292 / 733 * 100%);
	top: calc(179 / 777 * 100%);
}
.replace dl dd.rep02 {
	padding-top: calc(120 / 733 * 100%);
}
.replace dl dd.rep03 {
	padding-top: calc(240 / 733 * 100%);
}
.replace dl dd.result {
	width: calc(440 / 733 * 100%);
	position: absolute;
	left: calc(292 / 733 * 100%);
	top: calc(600 / 777 * 100%);
}
/************************************************
howto
************************************************/
.howto {
	position: relative;
}
.howto .cnt {
	padding: 0;
}
.howto h2 {
	width: calc(1920 / 1920 * 100%);
}
.howto p.basic {
	width: calc(838 / 1920 * 100%);
	position: absolute;
	left: calc(542 / 1920 * 100%);
	top: calc(442 / 1180 * 100%);
}
.howto p.this {
	width: calc(838 / 1920 * 100%);
	position: absolute;
	left: calc(542 / 1920 * 100%);
	top: calc(442 / 1180 * 100%);
	padding-top: calc(290 / 1920 * 100%);
}
/************************************************
smooth
************************************************/
.smooth {
	position: relative;
	z-index: 100;
}
.smooth .cnt {
	padding: 0;
}
.smooth h2 {
	width: calc(1920 / 1920 * 100%);
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.smooth p.result {
	width: calc(1920 / 1920 * 100%);
	position: relative;
	z-index: -1;
}
/************************************************
message
************************************************/
.message {
	z-index: 90;
}
.message .cnt {
	position: relative;
	aspect-ratio: 1920/1590;
	padding: 1px 0;
}
.message .pbg {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_message_bg.jpg") 50% 50% / cover no-repeat;
}
.message h2 {
	width: calc(1159 / 1920 * 100%);
	margin: calc(71 / 1920 * 100%) 0 0 calc(241 / 1920 * 100%);
}
/************************************************
qa
************************************************/
.qa {
	border-top: #fff solid 4px;
}
.qa .cnt {
	padding: 100px 0;
	background: #ece7d9;
}
.qa h2 {
	width: calc(341 / 1920 * 100%);
	margin: 0 auto calc(44 / 1920 * 100%);
}
.qa dl {
	max-width: 1000px;
	margin: 0 auto 10px;
}
@media (min-width: 768px) {
	.qa dl {
		max-width: none;
		width: calc(960 / 1920 * 100%);
	}
}
.qa dl dt {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_qa_icn01.png") 20px 15px no-repeat #fff;
	color: #222b33;
	font-size: 18px;
	line-height: 28px;
	letter-spacing: 0.1em;
	font-weight: bold;
	padding: 21px 90px;
	position: relative;
	cursor: pointer;
}
.qa dl dt::before, .qa dl dt::after {
	content: "";
	display: block;
	background: #342323;
	width: 26px;
	height: 2px;
	line-height: .1;
	position: absolute;
	right: 20px;
	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/ds_uvhf/b_net03/pc_qa_icn02.png") 20px 30px no-repeat;
	color: #222b33;
	font-size: 16px;
	line-height: 34px;
	letter-spacing: 0.1em;
	padding: 32px 40px 30px 90px;
	display: none;
}
.qa dl dd span.atte {
	display: block;
	font-size: 12px;
	line-height: 18px;
	letter-spacing: 0.1em;
	margin-top: 15px;
}
/************************************************
brand
************************************************/
.wrapper .brand {
	overflow-y: visible;
}
.brand .cnt {
	background: #a82d33;
	padding: 1px 0;
}
.brand h2 {
	margin: 0 auto;
}
/************************************************
CV
************************************************/
.cv {
	overflow: hidden;
}
.cv .cnt {
	background: url("../../../../shopping/images/pub/ds_uvhf/b_net03/pc_cv_bg.png?2604") center top / 100% auto no-repeat;
	padding: 80px 0;
	box-sizing: border-box;
	max-height: 2172;
	z-index: 100;
}
.cv .voce {
	width: calc(880 / 1920 * 100%);
	margin: 0 auto calc(80 / 1920 * 100%);
}
.cv .panel {
	width: calc(880 / 1920 * 100%);
	margin: 0 auto calc(70 / 1920 * 100%);
	position: relative;
}
.cv .panel h3 {
	margin-left: calc(-12 / 880 * 100%);
}
.cv .cv-btn-new {
	width: calc(350 / 880 * 100%);
	animation: btnslide 3s ease 0s infinite;
	position: absolute;
	right: calc(45 / 880 * 100%);
	bottom: calc(125 / 761 * 100%);
}
.cv .cv-service {
	width: calc(880 / 1920 * 100%);
	margin: 0 auto;
}
.cv .store {
	width: calc(880 / 1920 * 100%);
	position: relative;
	margin: calc(40 / 1920 * 100%) auto 0;
}
.cv .store ul.links {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	position: absolute;
	left: 0;
	top: calc(225 / 580 * 100%);
}
.cv .store ul.links li {
	width: calc(190 / 880 * 100%);
	margin: 0 calc(7 / 880 * 100%) 0 calc(6 / 880 * 100%);
}
.cv .store a.btn {
	display: block;
	width: calc(550 / 880 * 100%);
	position: absolute;
	left: calc(164 / 880 * 100%);
	bottom: calc(84 / 580 * 100%);
}
.cv p.atte {
	color: #50545a;
	font-size: 12px;
	line-height: 20px;
	letter-spacing: 0.075em;
	width: calc(880 / 1920 * 100%);
	margin: calc(20 / 1920 * 100%) auto calc(52 / 1920 * 100%);
}
.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 {
	width: calc(880 / 1920 * 100%);
	margin: calc(20 / 1920 * 100%) auto 0;
}
@keyframes btnslide {
	0% {
		transform: translateX(0);
	}
	5% {
		transform: translateX(10px);
	}
	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(25 / 1920 * 100%) 0 calc(5 / 1920 * 100%);
	backdrop-filter: blur(8px);
}
.fixedBtn a {
	display: block;
	width: 560px;
	margin: 0 auto;
}


/************************************************
footer
************************************************/
#footer {
	background-color: #606971;
	padding: 23px 0 0;
}
#footer ul {
	list-style: none;
	text-align: center;
	font-size: 0;
	padding-bottom: 23px;
}
#footer ul li {
	display: inline-block;
	padding: 0 16px;
	position: relative;
	line-height: 1.1;
}
#footer ul li + li {
	border-left: 1px solid #fff;
}
#footer ul li a {
	font-size: 14px;
	line-height: 1;
	text-decoration: none;
	color: #fff;
}
#footer p {
	display: block;
	background: #343d45;
	color: #fff;
	text-align: center;
	font-size: 12px;
	line-height: 1;
	padding: 15px 0 14px;
}
