@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: #fceaec;
	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;
}


/************************************************
header
************************************************/
#header h2 {
	position: absolute;
	left: calc( 61 / 750 * 100vw );
	top: calc( 539 / 750 * 100vw );
	font-size: 0;
	width: calc( 393 / 750 * 100vw );
}

/************************************************
important
************************************************/
.pbg {
	display: none;
	position:fixed;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	min-height: 180vh;
	height:auto;
	transition: .8s ease 0s;
}
.active .pbg {
	display: block;
}
.important .pbg {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_important_bg.jpg") 50% 100% / cover no-repeat;
}
.important .pbg02 {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_important_bg.jpg") 100% 100% / cover no-repeat;
	height: 100vh;
	display: none;
	position:fixed;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
}
.active .pbg02 {
	display: block;
}
.important {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_important_bg.jpg") left top / cover no-repeat;
	position: relative;
	z-index: -2;
}
.important ul {
	position: absolute;
	left: 0;
	top: calc( 344 / 1540 * 100% );
	width: 100%;
	display: flex;
	justify-content: center;
}
.important ul li {
	width: calc( 340 / 750 * 100vw );
	margin: 0 calc( -21 / 750 * 100vw ) 0 0;
}


/************************************************
add
************************************************/
.add {
}
.add dl {
	position: absolute;
	left: calc( 22 / 750 * 100vw );
	top: calc( 363 / 750 * 100vw );
	width: calc( 716 / 750 * 100vw );
}
.add dl dd {
	position: absolute;
	left: calc( 204 / 750 * 100vw );
	top: calc( 236 / 750 * 100vw );
	width: calc( 301 / 750 * 100vw );
}
.add p {
	position: absolute;
	left: calc( 58 / 750 * 100vw );
	top: calc( 94 / 750 * 100vw );
	width: calc( 642 / 750 * 100vw );
}


/************************************************
reason
************************************************/
.reason {
	background: #f2f7fc;
}
.reason h3 {
	position: absolute;
	left: calc( 7 / 750 * 100vw );
	top: calc( 428 / 750 * 100vw );
	width: calc( 736 / 750 * 100vw );
}
.reason div.img {
	position: absolute;
	left: calc( 0 / 750 * 100vw );
	top: calc( 522 / 750 * 100vw );
	width: calc( 295 / 750 * 100vw );
}
.reason .bg {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_reason_bg01.jpg") left top / 100% auto no-repeat #ffd5db;
}
.reason .bg::after {
	content: "";
	display: block;
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_reason_btm.png") left top / 100% auto no-repeat;
	width: 100%;
	height: calc( 214 / 750 * 100vw );
}
.reason dl.ac {
	width: calc( 710 / 750 * 100vw );
	margin: 0 auto calc( 40 / 750 * 100vw );
}
.reason dl.ac dt {
	position: relative;
	cursor: pointer;
}
.reason dl.ac dt::before,
.reason dl.ac dt::after {
	content: "";
	display: block;
  background: #fff;
  width: calc( 26 / 750 * 100vw );
	height: calc( 2 / 750 * 100vw );
  line-height: .1;
	position: absolute;
	right: calc( 12 / 750 * 100vw );
	bottom: calc( 24 / 750 * 100vw );
}
.reason dl.ac dt::after {
  transform: rotate(-90deg);
  transition: all 0.3s ease;
}
.reason dl.ac dt.active::after {
  transform: rotate(0deg);
}
.reason dl.result {
	position: relative;
	background: #ffedef;
}
.reason dl.result dd {
	position: absolute;
	left: calc( 116 / 750 * 100vw );
	top: calc( 86 / 750 * 100vw );
	width: calc( 501 / 750 * 100vw );
}


/************************************************
change
************************************************/
.change {
	background: #fff;
}
.change div.img01 {
	position: absolute;
	left: calc( 90 / 750 * 100vw );
	top: calc( 679 / 750 * 100vw );
	width: calc( 570 / 750 * 100vw );
}
.change div.img02 {
	position: absolute;
	left: calc( 90 / 750 * 100vw );
	top: calc( 1154 / 750 * 100vw );
	width: calc( 570 / 750 * 100vw );
}


/************************************************
voice
************************************************/
.voice .cnt {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_voice_bg.jpg") 100% 100% / 100% auto no-repeat;
	aspect-ratio: 750 / 2140;
	padding: calc( 150 / 750 * 100vw ) 0 calc( 130 / 750 * 100vw );
  box-sizing: border-box;
}
.voice h2 {
	width: calc( 549 / 750 * 100vw );
	margin: 0 auto calc( 73 / 750 * 100vw );
}
.voice .slide {
	width: 100%;
	margin: 0 auto;
	position: relative;
	margin-bottom: calc( 69 / 750 * 100vw );
}
.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/ps25/b_net03/sp_voice_arrow.png") left top / auto 100% no-repeat;
	width: calc( 60 / 750 * 100vw );
	height: calc( 110/ 750 * 100vw );
	position: absolute;
	right: calc( 0 / 750 * 100vw );
	top: 50%;
	margin-top: calc( -55 / 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( 630 /  750 * 100vw );
	padding: 0 calc( 20 /  750 * 100vw );
	box-sizing: border-box;
}
.voice .swiper-pagination {
	position: relative;
	width: 100%;
	height: calc( 6 / 750 * 100vw );
	top: 0;
	line-height: 0.1;
	margin: 0 auto calc( 76 / 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( 20 / 750 * 100vw );
	border-radius: 0;
}
.voice .swiper-pagination .swiper-pagination-bullet-active {
	background: #a50319;
}
.voice p.atte {
	display: block;
	width: calc( 670 / 750 * 100vw );
	margin: 0 auto calc( 85 / 750 * 100vw );
	color: #646673;
	font-size: calc( 20 / 750 * 100vw );
	line-height: calc( 32 / 750 * 100vw );
	letter-spacing: 0.05em;
}
.voice div.graph {
  position: absolute;
  left: calc( 185 / 750 * 100vw );
  top: calc( 1408 / 750 * 100vw );
	width: calc( 382 / 750 * 100vw );
}
.voice div.item {
  position: absolute;
  left: calc( 41 / 750 * 100vw );
  top: calc( 1313 / 750 * 100vw );
	width: calc( 571 / 750 * 100vw );
}


/************************************************
nayami
************************************************/
.nayami {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_nayami_bg.png") left top / 100% auto no-repeat;
	height: calc( 1060 / 750 * 100vw );
}
.nayami h2 {
	width: calc( 591 / 750 * 100vw );
	margin: 0 auto calc( 64 / 750 * 100vw );
	padding: calc( 140 / 750 * 100vw ) 0 0;
}
.nayami div.img01,
.nayami div.img02 {
	width: calc( 630 / 750 * 100vw );
	margin: 0 auto calc( 39 / 750 * 100vw );
}


/************************************************
message
************************************************/
.message {
	background: #fff;
}
.message h2 {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.message p {
	position: relative;
}


/************************************************
proposal
************************************************/
.proposal {
	position: relative;
	z-index: -2;
	background: #fce9eb;
}
.proposal .inner {
}
.proposal .pbg {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_proposal_bg.jpg") 50% 100% / cover no-repeat;
	aspect-ratio: 750 / 3630;
	height: auto;
}


/************************************************
howto
************************************************/
.howto {
	background: #fae9eb;
}
.howto .cnt {
	padding: 0 0 calc( 95 / 750 * 100vw );
}
.howto ul.step {
	display: flex;
	justify-content: center;
	vertical-align: top;
}
.howto ul.step li {
	width: calc( 173 / 750 * 100vw );
}
.howto ul.step li:nth-child(1) {
	width: calc( 150 / 750 * 100vw );
}
.howto ul.step li:nth-child(2) img {
	margin-right: calc( (173 - 209) / 750 * 100vw );
	width: calc( 209 / 750 * 100vw );
}
.howto p.point {
	width: calc( 706 / 750 * 100vw );
	margin: calc( -20 / 750 * 100vw ) auto 0 calc( 37 / 750 * 100vw );
}


/************************************************
qa
************************************************/
.qa {
	border-top: calc( 10 / 750 * 100vw ) solid #fff;
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_qa_bg.jpg") center top / cover no-repeat;
}
.qa .cnt {
	padding: calc( 98 / 1000 * 100% ) 0 calc( 130 / 1000 * 100% );
}
.qa h2 {
	width: calc( 384 / 750 * 100vw );
	margin: 0 auto calc( 63 / 750 * 100vw );
}
.qa dl {
	max-width: calc( 710 / 750 * 100vw );
	margin: 0 auto 2px;
}
.qa dl dt {
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_qa_icn01.png") calc( 26 / 750 * 100vw ) calc( 32 / 750 * 100vw ) / calc( 72 / 750 * 100vw ) auto no-repeat #fff;
	color: #10152e;
	font-size: calc( 26 / 750 * 100vw );
	line-height: calc( 36 / 750 * 100vw );
	letter-spacing: 0.1em;
	font-weight: bold;
	padding: calc( 48 / 750 * 100vw ) calc( 124 / 750 * 100vw );
	position: relative;
}
.qa dl dt::before,
.qa dl dt::after {
	content: "";
	display: block;
  background: #10152e;
  width: calc( 30 / 750 * 100vw );
	height: calc( 4 / 750 * 100vw );
  line-height: .1;
	position: absolute;
	right: calc( 60 / 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/ps25/b_net03/sp_qa_icn02.png") calc( 26 / 750 * 100vw ) calc( 32 / 750 * 100vw ) / calc( 72 / 750 * 100vw ) auto no-repeat;
	color: #646673;
	font-size: calc( 26 / 750 * 100vw );
	line-height: calc( 46 / 750 * 100vw );
	letter-spacing: 0.1em;
	padding: calc( 40 / 750 * 100vw ) calc( 40 / 750 * 100vw ) calc( 35 / 750 * 100vw ) calc( 124 / 750 * 100vw );
	display: none;
}
.qa dl dd span {
	display: block;
	font-size: calc( 18 / 750 * 100vw );
	line-height: calc( 30 / 750 * 100vw );
	letter-spacing: 0.1em;
	margin-top: 0.75em;
}


/************************************************
CV
************************************************/
.cv {
	background: #fceaec;
	padding: calc( 50 / 750 * 100vw ) 0 calc( 90 / 750 * 100vw );
	overflow: hidden;
}
.cv p.sttl {
	width: calc( 182 / 750 * 100vw );
	line-height: .1;
	margin: 0 auto;
	padding: calc( 50 / 750 * 100vw ) 0 calc( 58 / 750 * 100vw );
}
 #header + .cv p.sttl {
	display: none;
}
.cv .panel {
	position: relative;
	width: calc( 710 / 750 * 100vw );
	margin: 0 auto calc( 97 / 750 * 100vw );
	background: #fff;
	overflow: hidden;
}
.cv .cv-btn-new {
	position: absolute;
	left: 0;
	top: calc( 893 / 750 * 100vw );
	width: 100%;
	text-align: center;
}
.cv .cv-btn-new a {
	display: block;
	width: calc( 624 / 750 * 100vw );
	margin: 0 auto calc( 18 / 750 * 100vw );
	animation: btnslide 3s ease 0s infinite;
}
.cv .cv-btn-new p.atte02 {
	position: relative;
	color: #da021a;
	font-size: calc( 22 / 750 * 100vw );
	line-height: calc( 36 / 750 * 100vw );
	letter-spacing: 0.1em;
	font-weight: bold;
}
.cv .cv-btn-new p.atte02::before {
	content: "";
	background: url("../../../../shopping/images/pub/ps25/b_net03/sp_cv_arrow.png") left top / 100% auto no-repeat;
	width: calc( 10 / 750 * 100vw );
	height: calc( 46 / 750 * 100vw );
	position: absolute;
	left: 50%;
	top: calc( -58 / 750 * 100vw );
	margin-left: calc( -5 / 750 * 100vw );
}
.cv .cv-service {
	width: calc( 710 / 750 * 100vw );
	margin:  auto ;
}
.cv p.atte {
	color: #646673;
	font-size: calc( 18 / 750 * 100vw );
	line-height: calc( 30 / 750 * 100vw );
	letter-spacing: 0.05em;
	width: calc( 710 / 750 * 100vw );
	margin: 0 auto;
	margin-top: calc( 25 / 750 * 100vw );
}
@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( 29 / 750 * 100vw ) 0 0;
	backdrop-filter: blur( 8px );
}
.fixedBtn a {
	display: block;
	width: calc( 736 / 750 * 100vw );
	margin: 0 0 0 auto;
}

/************************************************
footer
************************************************/
#footer {
	background-color: #e7a4ab;
	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: #10152e;
	color: #fff;
	text-align: center;
	font-size: calc( 18 / 750 * 100vw );
	line-height: 1;
	padding: calc( 22 / 750 * 100vw ) 0 calc( 21 / 750 * 100vw );
}

