@charset "UTF-8";
/* =========================================================
	Miradry
========================================================= */
/* Layout
--------------------------------------------------------- */

/* Common Style
--------------------------------------------------------- */
#conts p {
	font-size: 1.5rem;
	line-height: 1.6;
}

#conts p + p {
	margin-top: 25px;
}

#conts .cmnTtl01 {
	padding: 18px 0 15px;
	background: #00A9B5;
	color: #FFF;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
	position: relative;
}

#conts .flexWrap {
	display: flex;
}

#conts .flexWrap .textBox {
	order: 2;
	width: 450px;
	margin-top: -3px;
}

#conts .flexWrap .imgBox {
	order: 1;
	width: 480px;
	margin-right: 30px;
}

#conts .cmnMore01 {
	display: none;
}

#conts .close {
	text-align: right;
}

#conts .close a {
	display: inline-block;
	padding: 1px 30px 0 0;
	background: url(../img/miradry/icon_close01_pc.png) no-repeat right center;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
}

#conts .accordion {
	cursor: pointer;
}

#conts .accordion::after {
	content: "";
	display: block;
	width: 25px;
	height: 25px;
	background: url(../img/miradry/icon_acc01_open_pc.png) no-repeat center;
	position: absolute;
	top: 50%;
	right: 25px;
	margin-top: -13px;
}

#conts .accordion.open::after {
	background-image: url(../img/miradry/icon_acc01_close_pc.png);
}

#conts .accWrap {
	display: none;
}

@media screen and (max-width: 767px) {
	#contents .headLine03 {
		line-height: 1.4;
		text-align: center;
	}

	#conts p {
		font-size: 1.4rem;
		line-height: 1.8;
	}

	#conts .cmnTtl01 {
		padding: 10px 0;
		font-size: 4.3vw;
	}

	#conts .flexWrap {
		display: block;
	}

	#conts .flexWrap .textBox {
		width: auto;
		margin-top: 0;
	}

	#conts .flexWrap .imgBox {
		width: auto;
		margin-right: 0;
	}

	#conts .more {
		display: none;
	}

	#conts .cmnMore01 {
		display: block;
		margin-top: 20px;
		text-align: center;
	}

	#conts .cmnMore01 a {
		display: inline-block;
		width: 260px;
		padding: 14px 0;
		background: #D9D9D9;
		-webkit-border-radius: 30px;
		        border-radius: 30px;
		font-size: 1.6rem;
		text-align: center;
		font-weight: bold;
		text-decoration: none;
		position: relative;
	}

	#conts .cmnMore01 a::after {
		content: "";
		display: inline-block;
		width: 17px;
		height: 17px;
		background: url(../img/common/icon_more01_sp.png) no-repeat;
		-webkit-background-size: 17px 17px;
		        background-size: 17px 17px;
		position: absolute;
		top: 50%;
		right: 20px;
		margin-top: -9px;
	}

	#conts .cmnMore01.open {
		margin-right: 7px;
		text-align: right;
	}

	#conts .cmnMore01.open a {
		width: auto;
		padding: 0 20px 0 0;
		border: none;
		background: none;
		font-size: 1.3rem;
	}

	#conts .cmnMore01.open a::after {
		background: url(../img/common/icon_more01_open_sp.png) no-repeat;
		-webkit-background-size: 15px 15px;
		        background-size: 15px 15px;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -8px;
	}

	#conts .close a {
		min-height: 15px;
		padding: 1px 20px 0 0;
		background: url(../img/miradry/icon_close01_sp.png) no-repeat right center;
		background-size: 15px 15px;
		font-size: 1.2rem;
		font-weight: normal;
	}

	#conts .cmnBtn01 {
		padding: 0;
		background: none;
	}

	#conts .accordion::after {
		width: 15px;
		height: 15px;
		background-image: url(../img/miradry/icon_acc01_open_sp.png);
		background-size: 15px 15px;
		right: 10px;
		margin-top: -8px;
	}

	#conts .spAccordion::after {
		content: "";
		display: block;
		width: 15px;
		height: 15px;
		background: url(../img/miradry/icon_acc01_open_sp.png) no-repeat center;
		background-size: 15px 15px;
		position: absolute;
		top: 50%;
		right: 10px;
		margin-top: -8px;
	}

	#conts .accordion.open::after,
	#conts .spAccordion.open::after {
		background-image: url(../img/miradry/icon_acc01_close_sp.png);
		background-size: 15px 4px;
	}

	#conts .spAccWrap {
		display: none;
	}
}

/* Contents
--------------------------------------------------------- */
#conts .mainVisual {
	margin-top: 40px;
}

#conts .mainVisual p {
	padding: 0 20px;
}

#conts .mainVisual picture + p {
	margin-top: 35px;
}

#conts .effectSec {
	margin-top: 70px;
}

#conts .effectSec .catchBox {
	margin-top: 40px;
	padding: 0 20px;
}

#conts .effectSec .catchBox picture + p {
	margin-top: 35px;
}

#conts .effectSec .meritSec {
	margin-top: 50px;
	padding: 0 20px;
}

#conts .effectSec .meritSec .detailSec {
	display: flex;
	margin-top: 40px;
}

#conts .effectSec .meritSec .detailSec + .detailSec {
	margin-top: 70px;
}

#conts .effectSec .meritSec .detailSec .imgBox {
	width: 480px;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(odd) .imgBox {
	order: 1;
	margin-right: 30px;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(even) .imgBox {
	margin-left: 30px;
}

#conts .effectSec .meritSec .detailSec .textBox {
	width: 450px;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(odd) .textBox {
	order: 2;
}

#conts .effectSec .meritSec .detailSec .textBox h4 {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.3;
}

#conts .effectSec .meritSec .detailSec .textBox h4::before {
	content: "";
	display: inline-block;
	width: 70px;
	height: 70px;
	margin-right: 20px;
	vertical-align: middle;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(1) .textBox h4::before {
	background: url(../img/miradry/icon_merit01_pc.png) no-repeat;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(2) .textBox h4::before {
	background: url(../img/miradry/icon_merit02_pc.png) no-repeat;
}

#conts .effectSec .meritSec .detailSec:nth-of-type(3) .textBox h4::before {
	background: url(../img/miradry/icon_merit03_pc.png) no-repeat;
}

#conts .effectSec .meritSec .detailSec .textBox h4 > span {
	display: inline-block;
	padding-top: 3px;
	vertical-align: middle;
}

#conts .effectSec .meritSec .detailSec .textBox h4 > span .line {
	display: inline-block;
	padding: 0 3px;
	color: #A99161;
	position: relative;
}

#conts .effectSec .meritSec .detailSec .textBox h4 > span .line::after {
	content: "";
	display: block;
	width: 100%;
	height: 15px;
	background: #FFF100;
	position: absolute;
	bottom: 3px;
	left: 0;
	z-index: -1;
}

#conts .effectSec .meritSec .detailSec .textBox .imgBox + p {
	margin-top: 25px;
}

#conts .effectSec .miraSec {
	margin-top: 70px;
}

#conts .effectSec .miraSec .cmnTtl01 {
	margin: 0 20px;
}

#conts .effectSec .miraSec .inner {
	padding: 0 20px;
}

#conts .effectSec .miraSec .boxWrap01 {
	display: flex;
	margin-top: 40px;
}

#conts .effectSec .miraSec .boxWrap01 .imgBox {
	width: 470px;
	margin-right: 30px;
}

#conts .effectSec .miraSec .boxWrap01 .textBox {
	width: 460px;
	margin-top: -4px;
}

#conts .effectSec .miraSec .boxWrap01 .textBox .lead {
	color: #00A9B5;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
}

#conts .effectSec .miraSec .boxWrap01 + p {
	margin-top: 30px;
}

#conts .effectSec .miraSec .catchBox {
	margin-top: 45px;
	padding: 20px 30px 15px;
	background: #1587C2;
	position: relative;
}

#conts .effectSec .miraSec .catchBox::before {
	content: "";
	display: block;
	width: 155px;
	height: 48px;
	background: url(../img/miradry/bg_mira01_pc.png) no-repeat;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -77.5px;
}

#conts .effectSec .miraSec .catchBox::after {
	content: "";
	display: block;
	width: 425px;
	height: 244px;
	background: url(../img/miradry/bg_mira02_pc.png) no-repeat;
	position: absolute;
	top: 18px;
	right: 0;
}

#conts .effectSec .miraSec .catchBox p {
	width: 430px;
	color: #FFF;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}

#conts .effectSec .miraSec .catchBox p span {
	font-size: 2.4rem;
}

#conts .effectSec .miraSec .boxWrap02 {
	display: flex;
	margin-top: 40px;
}

#conts .effectSec .miraSec .boxWrap02 .imgBox {
	order: 2;
	width: 470px;
}

#conts .effectSec .miraSec .boxWrap02 .textBox {
	order: 1;
	width: 450px;
	margin-right: 40px;
	padding-top: 5px;
}

#conts .effectSec .miraSec .boxWrap02 + p {
	margin-top: 40px;
}

#conts .effectSec .miraSec .close {
	margin-top: 80px;
}

#conts .effectSec .diffSec {
	margin-top: 80px;
	padding: 0 20px;
}

#conts .effectSec .diffSec p a {
	color: #0B8D8D;
}

#conts .effectSec .diffSec .imgBox {
	margin-top: 40px;
}

#conts .effectSec .diffSec .imgBox + p {
	margin-top: 35px;
}

#conts .effectSec .diffSec .more {
	margin-top: 25px;
}

#conts .effectSec .diffSec .more .catch {
	margin-top: 45px;
	color: #00A9B5;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
}

#conts .effectSec .diffSec .cmnContactBtn {
	margin-top: 55px;
}

#conts .riskSec {
	margin-top: 80px;
}

#conts .riskSec > .contsInner > .flexWrap {
	margin-top: 40px;
	padding: 0 20px;
}

#conts .riskSec .processSec {
	margin-top: 80px;
}

#conts .riskSec .processSec .cmnTtl01 {
	width: 960px;
	margin: 0 auto;
}

#conts .riskSec .processSec .slideWrap {
	max-width: 960px;
	margin: 40px auto 0;
	position: relative;
}

#conts .riskSec .processSec .slideWrap::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 7%, rgba(255,255,255,0) 93%, rgba(255,255,255,1) 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

#conts .riskSec .processSec .swiper-container .swiper-slide {
	text-align: center;
}

#conts .riskSec .processSec .swiper-button-prev,
#conts .riskSec .processSec .swiper-button-next {
	width: 50px;
	height: 110px;
	margin-top: -55px;
	z-index: 1000;
}

#conts .riskSec .processSec .swiper-button-prev {
	background-image: url(../img/miradry/btn_prev01_pc.png);
	background-size: 50px 110px;
	left: 30px;
}

#conts .riskSec .processSec .swiper-button-next {
	background-image: url(../img/miradry/btn_next01_pc.png);
	background-size: 50px 110px;
	right: 30px;
}

#conts .riskSec .processSec p {
	width: 960px;
	margin: 35px auto 0;
}

#conts .riskSec .careSec {
	margin-top: 70px;
	padding: 0 20px;
}

#conts .riskSec .careSec .flexWrap {
	margin-top: 40px;
}

#conts .riskSec .careSec .detailSec {
	margin-top: 70px;
}

#conts .riskSec .careSec .detailSec + .detailSec {
	margin-top: 50px;
}

#conts .riskSec .careSec .detailSec h4 {
	padding-bottom: 10px;
	border-bottom: 5px solid #00A9B5;
	font-size: 2.4rem;
	font-weight: bold;
}

#conts .riskSec .careSec .detailSec h4 + p {
	margin-top: 30px;
}

#conts .failSec {
	margin-top: 70px;
}

#conts .failSec .inner {
	margin-top: 40px;
	padding: 0 20px;
}

#conts .failSec .inner > picture + p {
	margin-top: 35px;
}

#conts .failSec .more {
	margin-top: 20px;
}

#conts .failSec .more .floatWrap {
	margin-top: 50px;
}

#conts .failSec .more .floatWrap .imgBox {
	float: right;
	margin-left: 30px;
}

#conts .failSec .more .floatWrap .green {
	color: #00A9B5;
	font-size: 1.8rem;
	font-weight: bold;
}

#conts .failSec .more .floatWrap .green sup {
	font-size: 1.0rem;
}

#conts .failSec .more .notes {
	margin-top: 30px;
	font-size: 1.2rem;
}

#conts .failSec .cmnBtn01 {
	margin-top: 60px;
}

#conts .failSec .repeatSec {
	margin-top: 80px;
	padding: 0 20px;
}

#conts .failSec .repeatSec .floatWrap {
	margin-top: 40px;
}

#conts .failSec .repeatSec .floatWrap .imgBox {
	width: 480px;
	float: left;
	margin-right: 30px;
}

#conts .failSec .repeatSec .floatWrap + p {
	margin-top: 35px;
}

#conts .priceSec {
	margin-top: 75px;
}

#conts .priceSec .headLine03 {
	text-align: center;
}

#conts .priceSec .inner {
	padding: 0 20px;
}

#conts .priceSec .priceWrap {
	margin-top: 40px;
	padding: 0 10px;
}

#conts .priceSec .priceWrap .priceBox {
	position: relative;
}

#conts .priceSec .priceWrap .priceBox .textBox {
	width: 420px;
	position: absolute;
	top: 20px;
	right: 20px;
}

#conts .priceSec .priceWrap .priceBox .textBox .ttl {
	padding: 4px 0 7px;
	background: #00A9B5;
	color: #FFF;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
}

#conts .priceSec .priceWrap .priceBox .textBox .ttl .small {
	font-size: 1.8rem;
}

#conts .priceSec .priceWrap .priceBox .textBox .ttl .yellow {
	color: #FFF100;
}

#conts .priceSec .priceWrap .priceBox .price {
	margin-top: 12px;
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1.1;
	text-align: center;
}

#conts .priceSec .priceWrap .priceBox .price span {
	margin-left: 20px;
	font-size: 6.0rem;
	vertical-align: sub;
}

#conts .priceSec .priceWrap .priceBox .price span.tax {
	margin-left: -1rem;
	font-size: 2.0rem;
	vertical-align: baseline;
}

#conts .priceSec .priceWrap .priceBox .countBox {
	margin-top: 10px;
	padding-bottom: 10px;
	border-bottom: 3px solid #00A9B5;
	text-align: center;
}

#conts .priceSec .priceWrap .priceBox .countBox .count {
	display: inline-block;
	margin-right: 20px;
	padding: 9px 10px 7px;
	background: #00A9B5;
	color: #FFF;
	font-size: 1.8rem;
	font-weight: bold;
	vertical-align: super;
}

#conts .priceSec .priceWrap .priceBox .countBox p {
	line-height: 1;
}

#conts .priceSec .priceWrap .priceBox .countBox .monthly {
	display: inline-block;
	margin-top: 0;
	font-size: 2.1rem;
	font-weight: bold;
}

#conts .priceSec .priceWrap .priceBox .countBox .monthly span {
	margin-left: 15px;
	font-size: 3.6rem;
}

#conts .priceSec .priceWrap .priceBox .countBox .monthly .tax {
	margin-left: -0.5rem;
	font-size: 1.8rem;
}

#conts .priceSec .priceWrap .pointBox {
	display: flex;
	justify-content: space-between;
	margin-top: 55px;
}

#conts .priceSec .priceWrap .pointBox .pointSec {
	width: 440px;
}

#conts .priceSec .priceWrap .pointBox .pointSec + .pointSec {
	/*margin-left: 30px;*/
}

#conts .priceSec .priceWrap .pointBox .pointSec {
	padding-left: 10px;
}

#conts .priceSec .priceWrap .pointBox .pointSec h3 {
	margin-left: 10px;
	padding: 9px 10px 8px 65px;
	background: #e8e8e8;
	color: #313131;
	font-size: 2.0rem;
	font-weight: bold;
	position: relative;
}

#conts .priceSec .priceWrap .pointBox .pointSec h3::before {
	content: "";
	display: block;
	width: 72px;
	height: 72px;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: -20px;
	margin-top: -36px;
}

#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(1) h3::before {
	background-image: url(../img/miradry/icon_price01.png);
}

#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(2) h3::before {
	background-image: url(../img/miradry/icon_price02.png);
}

#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(3) h3::before {
	background-image: url(../img/miradry/icon_price03.png);
}

#conts .priceSec .priceWrap .pointBox .pointSec .textBox {
	display: flex;
	align-items: center;
	height: 100px;
}
#conts .priceSec .priceWrap .pointBox .pointSec .imgBox {
	text-align: center;
}
#conts .priceSec .priceWrap .pointBox .pointSec .imgBox img {
	width: 285px;
}


#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(2) .textBox {
	justify-content: center;
	text-align: center;
}

#conts .priceSec .priceWrap .pointBox .pointSec .textBox p {
	padding: 0 20px 0 25px;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: -0.5px;
}

#conts .priceSec .priceWrap .pointBox .pointSec .textBox p sup {
	font-size: 1.0rem;
}

#conts .priceSec .priceWrap .attList {
	margin-top: 40px;
}

#conts .priceSec .priceWrap .attList li {
	margin-left: 1.0em;
	text-indent: -1.0em;
	font-size: 1.5rem;
	line-height: 1.6;
}

#conts .priceSec .priceWrap .attList:nth-of-type(1){
	margin-top: 30px;
}

#conts .priceSec .priceWrap .attList:nth-of-type(1) li{
	font-size: 1.4rem;
}


#conts .priceSec .priceWrap .cardBox {
	margin-top: 25px;
	text-align: center;
}

#conts .priceSec .priceWrap .cmnContactBtn {
	margin-top: 60px;
}

#conts .faqSec {
	margin-top: 80px;
}

#conts .faqSec .headLine03 {
	text-align: center;
}

#conts .faqSec .inner {
	margin-top: 40px;
	padding: 0 20px;
}

#conts .faqSec .inner .detailSec + .detailSec {
	margin-top: 65px;
}

#conts .faqSec .inner .detailSec .title {
	padding-bottom: 30px;
	border-bottom: 5px solid #B5B5B5;
}

#conts .faqSec .inner .detailSec .title .question,
#conts .faqSec .inner .detailSec .title .answer {
	padding: 2px 0 0 65px;
	background-repeat: no-repeat;
	background-position: 0 center;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 33px;
}

#conts .faqSec .inner .detailSec .title .question {
	background-image: url(../img/miradry/icon_qa01_pc.png);
}

#conts .faqSec .inner .detailSec .title .answer {
	margin-top: 25px;
	background-image: url(../img/miradry/icon_qa02_pc.png);
}

#conts .faqSec .inner .detailSec .body {
	margin-top: 35px;
}

#conts .faqSec .inner .detailSec .body .more {
	margin-top: 20px;
}

#conts .faqSec .cmnBtn01 {
	margin-top: 60px;
}

@media screen and (max-width: 767px) {
	#conts .mainVisual {
		margin-top: 0;
	}

	#conts .mainVisual p {
		padding: 0 10px;
	}

	#conts .mainVisual picture + p {
		margin-top: 20px;
	}

	#conts .effectSec {
		margin-top: 50px;
	}

	#conts .effectSec .catchBox {
		margin-top: 20px;
		padding: 0 10px;
	}

	#conts .effectSec .catchBox picture + p {
		margin-top: 15px;
	}

	#conts .effectSec .meritSec {
		margin-top: 30px;
		padding: 0 10px;
	}

	#conts .effectSec .meritSec .detailSec {
		display: block;
		margin-top: 20px;
	}

	#conts .effectSec .meritSec .detailSec + .detailSec {
		margin-top: 30px;
	}

	#conts .effectSec .meritSec .detailSec .textBox {
		width: auto;
	}

	#conts .effectSec .meritSec .detailSec .textBox h4 {
		font-size: 4.8vw;
		line-height: 1.4;
	}

	#conts .effectSec .meritSec .detailSec .textBox h4::before {
		width: 14.7vw;
		height: 14.7vw;
		margin-right: 10px;
	}

	#conts .effectSec .meritSec .detailSec:nth-of-type(1) .textBox h4::before {
		background: url(../img/miradry/icon_merit01_sp.png) no-repeat;
		background-size: 14.7vw 14.7vw;
	}

	#conts .effectSec .meritSec .detailSec:nth-of-type(2) .textBox h4::before {
		background: url(../img/miradry/icon_merit02_sp.png) no-repeat;
		background-size: 14.7vw 14.7vw;
	}

	#conts .effectSec .meritSec .detailSec:nth-of-type(3) .textBox h4::before {
		background: url(../img/miradry/icon_merit03_sp.png) no-repeat;
		background-size: 14.7vw 14.7vw;
	}

	#conts .effectSec .meritSec .detailSec .textBox h4 > span {
		padding-top: 0;
	}

	#conts .effectSec .meritSec .detailSec .textBox h4 > span .line {
		z-index: 10;
	}

	#conts .effectSec .meritSec .detailSec .textBox h4 > span .line::after {
		height: 7px;
		bottom: 2px;
	}

	#conts .effectSec .meritSec .detailSec .imgBox {
		width: auto;
		margin: 20px 0 0 !important;
	}

	#conts .effectSec .meritSec .detailSec .textBox .imgBox + p {
		margin-top: 15px;
	}

	#conts .effectSec .miraSec {
		margin-top: 30px;
	}

	#conts .effectSec .miraSec .cmnTtl01 {
		margin: 0 10px;
	}

	#conts .effectSec .miraSec .inner {
		padding: 0 10px;
	}

	#conts .effectSec .miraSec p {
		font-size: 1.4rem;
		line-height: 1.7;
	}

	#conts .effectSec .miraSec .boxWrap01 {
		display: block;
		margin-top: 20px;
	}

	#conts .effectSec .miraSec .boxWrap01 .imgBox {
		width: auto;
		margin-right: 0;
		text-align: center;
	}

	#conts .effectSec .miraSec .boxWrap01 .textBox {
		width: auto;
		margin-top: 20px;
	}

	#conts .effectSec .miraSec .boxWrap01 .textBox .lead {
		font-size: 1.5rem;
		text-align: center;
	}

	#conts .effectSec .miraSec .boxWrap01 .textBox .lead + p {
		margin-top: 10px;
	}

	#conts .effectSec .miraSec .catchBox {
		margin-top: 25px;
		padding: 35px 10px 20vw;
	}

	#conts .effectSec .miraSec .catchBox::before {
		width: 81px;
		height: 25px;
		background: url(../img/miradry/bg_mira01_sp.png) no-repeat;
		background-size: 81px 25px;
		margin-left: -40.5px;
	}

	#conts .effectSec .miraSec .catchBox::after {
		width: 85vw;
		height: 47.3vw;
		background: url(../img/miradry/bg_mira02_sp.png) no-repeat;
		background-size: 85vw 47.3vw;
		top: inherit;
		bottom: -28vw;
		margin-left: 0;
	}

	#conts .effectSec .miraSec .catchBox p {
		width: auto;
		font-size: 2.0rem;
	}

	#conts .effectSec .miraSec .catchBox p span {
		font-size: 1.5rem;
	}

	#conts .effectSec .miraSec .boxWrap02 {
		display: block;
		margin-top: 18vw;
	}

	#conts .effectSec .miraSec .boxWrap02 .imgBox {
		width: auto;
	}

	#conts .effectSec .miraSec .boxWrap02 .textBox {
		width: auto;
		margin-right: 0;
		padding: 30px 0 0;
	}

	#conts .effectSec .miraSec .boxWrap02 + p {
		margin-top: 25px;
	}

	#conts .effectSec .miraSec .close {
		margin-top: 25px;
	}

	#conts .effectSec .diffSec {
		margin-top: 60px;
		padding: 0 10px 60px;
	}

	#conts .effectSec .diffSec .imgBox {
		margin-top: 20px;
	}

	#conts .effectSec .diffSec .imgBox + p {
		margin-top: 25px;
	}

	#conts .effectSec .diffSec .more .catch {
		margin-top: 25px;
		font-size: 1.8rem;
	}

	#conts .effectSec .diffSec .more .catch + p {
		margin-top: 15px;
	}

	#conts .effectSec .diffSec .cmnContactBtn {
		margin-top: 25px;
	}

	#conts .riskSec {
		margin-top: 0;
	}

	#conts .riskSec > .contsInner > .flexWrap {
		margin-top: 20px;
		padding: 0 10px;
	}

	#conts .riskSec > .contsInner > .flexWrap .textBox {
		margin-top: 15px;
	}

	#conts .riskSec .processSec {
		margin-top: 0;
		padding: 30px 10px 0;
		background: #FFF;
	}

	#conts .riskSec .processSec .cmnTtl01 {
		width: auto;
	}

	#conts .riskSec .processSec .slideWrap {
		max-width: 100%;
		margin-top: 20px;
	}

	#conts .riskSec .processSec .slideWrap::after {
		content: none;
	}

	#conts .riskSec .processSec .swiper-button-prev,
	#conts .riskSec .processSec .swiper-button-next {
		width: 25px;
		height: 55px;
		margin-top: -28px;
	}

	#conts .riskSec .processSec .swiper-button-prev {
		background-image: url(../img/miradry/btn_prev01_sp.png);
		background-size: 25px 55px;
		left: 10px;
	}

	#conts .riskSec .processSec .swiper-button-next {
		background-image: url(../img/miradry/btn_next01_sp.png);
		background-size: 25px 55px;
		right: 10px;
	}

	#conts .riskSec .processSec p {
		width: auto;
		margin-top: 15px;
	}

	#conts .riskSec .careSec {
		margin-top: 30px;
		padding: 0 10px;
	}

	#conts .riskSec .careSec .flexWrap {
		margin-top: 20px;
	}

	#conts .riskSec .careSec .flexWrap .textBox {
		margin-top: 15px;
	}

	#conts .riskSec .careSec .detailSec {
		margin-top: 30px;
	}

	#conts .riskSec .careSec .detailSec + .detailSec {
		margin-top: 25px;
	}

	#conts .riskSec .careSec .detailSec h4 {
		padding-bottom: 6px;
		font-size: 1.8rem;
		border-bottom-width: 3px;
	}

	#conts .riskSec .careSec .detailSec h4 + p {
		margin-top: 15px;
	}

	#conts .riskSec .careSec .close {
		margin-top: 25px;
	}

	#conts .failSec {
		margin-top: 60px;
	}

	#conts .failSec .inner {
		margin-top: 20px;
		padding: 0 10px;
	}

	#conts .failSec .inner > picture + p {
		margin-top: 15px;
	}

	#conts .failSec .more {
		margin-top: 25px;
	}

	#conts .failSec .more .floatWrap {
		margin-top: 20px;
	}

	#conts .failSec .more .floatWrap .imgBox {
		float: none;
		margin-left: 0;
	}

	#conts .failSec .more .floatWrap .green {
		margin-top: 15px;
		line-height: 1.6;
	}

	#conts .failSec .more .notes {
		margin-top: 25px;
		font-size: 1.1rem;
	}

	#conts .failSec .cmnBtn01 {
		margin-top: 30px;
	}

	#conts .failSec .cmnMore01 {
		margin-top: 30px;
	}

	#conts .failSec .repeatSec {
		margin-top: 25px;
		padding: 0 10px;
	}

	#conts .failSec .repeatSec .floatWrap {
		margin-top: 20px;
	}

	#conts .failSec .repeatSec .floatWrap .imgBox {
		width: auto;
		float: none;
		margin-right: 0;
	}

	#conts .failSec .repeatSec .floatWrap .imgBox + p {
		margin-top: 15px;
	}

	#conts .priceSec {
		margin-top: 50px;
	}

	#conts .priceSec .inner {
		padding: 0 10px;
	}

	#conts .priceSec .priceWrap {
		margin-top: 20px;
		padding: 0;
	}

	#conts .priceSec .priceWrap .priceBox {
		margin-top: 15px;
	}

	#conts .priceSec .priceWrap .priceBox .textBox {
		width: auto;
		margin-top: 20px;
		position: static;
	}

	#conts .priceSec .priceWrap .priceBox .textBox .ttl {
		padding: 4px 0 10px;
		font-size: 2.4rem;
		line-height: 1.4;
	}

	#conts .priceSec .priceWrap .priceBox .textBox .ttl .small {
		font-size: 1.5rem;
	}

	#conts .priceSec .priceWrap .priceBox .price {
		margin-top: 20px;
		font-size: 1.8rem;
	}

	#conts .priceSec .priceWrap .priceBox .price span {
		margin-left: 15px;
		font-size: 3.5rem;
	}

	#conts .priceSec .priceWrap .priceBox .price span.tax {
		margin-left: -0.5rem;
		font-size: 1.6rem;
	}

	#conts .priceSec .priceWrap .priceBox .countBox {
		margin: 10px 10px 0;
		padding-bottom: 20px;
		position: relative;
	}

	#conts .priceSec .priceWrap .priceBox .countBox::after {
		content: "";
		display: block;
		width: 35px;
		height: 18px;
		background: url(../img/miradry/arrow_price01_sp.png) no-repeat;
		background-size: 35px 18px;
		position: absolute;
		bottom: -21px;
		left: 50%;
		margin-left: -18px;
	}

	#conts .priceSec .priceWrap .priceBox .countBox .count {
		padding: 6px 6px;
		font-size: 1.5rem;
		line-height: 1.1;
	}

	#conts .priceSec .priceWrap .priceBox .countBox .monthly {
		font-size: 1.4rem;
		line-height: 1.1;
		padding:0;
	}

	#conts .priceSec .priceWrap .priceBox .countBox .monthly span {
		margin-left: 12px;
		font-size: 2.8rem;
	}

	#conts .priceSec .priceWrap .priceBox .countBox .monthly span.tax {
		margin-left: -0.5rem;
		font-size: 1.4rem;
	}

	#conts .priceSec .priceWrap .pointBox {
		display: block;
		margin-top: 50px;
		padding-left: 0;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec {
		width: auto;
		padding-left: 0;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec + .pointSec {
		margin: 30px 0 0 0;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(3) {
		margin-top: 80px;
		position: relative;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(3)::before {
		content: "";
		display: block;
		width: 35px;
		height: 35px;
		background: url(../img/miradry/icon_plus01.png) no-repeat;
		background-size: 35px 35px;
		position: absolute;
		top: -55px;
		left: 50%;
		margin-left: -17.5px;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec h3 {
		margin-left: 0;
		padding: 11px 10px 11px 50px;
		font-size: 1.8rem;
		color: #313131;
		background-color: #e8e8e8;
		background-position: left center;
		background-size: auto 40px;
		background-repeat: no-repeat;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec h3::before {
		display: none;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(1) h3 {
		background-image: url(../img/miradry/icon_price01_sp.png);
	}
	
	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(2) h3 {
		background-image: url(../img/miradry/icon_price02_sp.png);
	}
	
	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(3) h3 {
		background-image: url(../img/miradry/icon_price03_sp.png);
	}

	#conts .priceSec .priceWrap .pointBox .pointSec .textBox {
		display: block;
		height: auto;
		margin-top: 20px;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec .textBox p {
		padding: 0;
		font-size: 1.4rem;
		line-height: 1.8;
		text-align: center;
		letter-spacing: normal;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(3) .textBox p {
		font-size: 1.3rem;
		text-align: left;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec .imgBox {
		width: auto;
		margin-top: 20px;
		text-align: center;
	}
	#conts .priceSec .priceWrap .pointBox .pointSec .imgBox img {
		width: auto;
	}

	#conts .priceSec .priceWrap .pointBox .pointSec:nth-child(1) .imgBox {
		padding: 0 20px;
	}

	#conts .priceSec .priceWrap .attList {
		margin-top: 30px;
	}

	#conts .priceSec .priceWrap .attList.spOnly,
	#conts .priceSec .priceWrap .attList.spOnly{
		margin-top: 10px;
	}

	#conts .priceSec .priceWrap .attList li {
		font-size: 1.2rem;
	}

	#conts .priceSec .priceWrap .attList:nth-of-type(1) li{
		font-size: 1.2rem;
	}

	#conts .priceSec .priceWrap .cardBox {
		margin-top: 20px;
		padding: 0 10px;
	}

	#conts .priceSec .priceWrap .cmnContactBtn {
		margin-top: 30px;
	}

	#conts .faqSec {
		margin-top: 60px;
	}

	#conts .faqSec .inner {
		margin-top: 20px;
		padding: 0 10px;
	}

	#conts .faqSec .inner .detailSec + .detailSec {
		margin-top: 40px;
	}

	#conts .faqSec .inner .detailSec .title {
		padding-bottom: 15px;
		border-bottom-width: 3px;
	}

	#conts .faqSec .inner .detailSec .title .question,
	#conts .faqSec .inner .detailSec .title .answer {
		padding: 0 0 0 35px;
		font-size: 1.5rem;
		line-height: 1.5;
		background-position: 0 5px;
	}

	#conts .faqSec .inner .detailSec .title .question {
		background-image: url(../img/miradry/icon_qa01_sp.png);
		background-size: 22px 22px;
	}

	#conts .faqSec .inner .detailSec .title .answer {
		margin-top: 15px;
		background-image: url(../img/miradry/icon_qa02_sp.png);
		background-size: 22px 22px;
	}

	#conts .faqSec .inner .detailSec .body {
		margin-top: 15px;
	}

	#conts .faqSec .inner .detailSec .body .more {
		margin-top: 25px;
	}

	#conts .faqSec .cmnBtn01 {
		margin-top: 40px;
	}
}