@charset "UTF-8";
/* =Reset
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;word-wrap:break-word;overflow-wrap:break-word;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:inherit;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:super;}
sub{vertical-align:text-bottom;}
input,textarea,select,button{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select,button{font-size:100%;}
legend{color:#000;}
img {vertical-align:top;}
input[type="radio"],input[type="checkbox"] {vertical-align: -2px;}
label {cursor: pointer;}
/* =Common
-------------------------------------------------------------- */
body {
	text-align: center;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
input[type="submit"], input[type="reset"] {
	appearance: none;
	cursor: pointer;
}
/* clearfix */
.cf:before, .cf:after {content:"";display:table;}
.cf:after {clear:both;}
.clr {clear: both;}
/* =Styles 
-------------------------------------------------------------- */
html {
	font-size: 2.6667vw;
}
body {
	/* win：游ゴシック、mac：游ゴシック、iPhone：San Francisco、ヒラギノ（-1px） */
	font-family: 'Noto Sans JP', YuGothic, -apple-system, BlinkMacSystemFont, 'Yu Gothic Medium', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
	color: var(--dark_brown);
	font-weight: 500;
}
.num,
.jak {
	font-family: 'Plus Jakarta Sans', sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}
a {
	text-decoration: none;
	color: #fff;
}
.main {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	box-sizing: border-box;
}
:root {
	--cta_brown: #C85667;
	--light_beige: #E8E5D9;
	--cream: #FFFBF6;
	--dark_brown: #74514F;
	--brown: #836C63;
	--dark_pink: #CD645D;
	--yellow: #FFF3AF;
	--pink: #EBADA8;
	--dark_blue:#555B5E;
	--blue: #639AB7;
	--dark_gold: #656037;
	--gold: #A29B60;
}
.bg_fixed {
	display: none;
}
@media (min-width: 768px) {
	.main,
	.modal_contents_wrap {
		max-width: 375px;
		margin: 0 auto;
	}
	.bg_fixed {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: var(--cream);
	}
	.bg_fixed::before,
	.bg_fixed::after {
		content: '';
		position: absolute;
	}
	.bg_fixed::before {
		top: 0;
		left: 0;
		width: 750px;
		height: 361px;
		background: url(../../images/hapr_cp16_3b/bg_fixed_top.png)no-repeat bottom right/cover;
	}
	.bg_fixed::after {
		bottom: 0;
		right: 0;
		width: min(87.65%, 1683px);
		height: 388px;
		background: url(../../images/hapr_cp16_3b/bg_fixed_bottom.png)no-repeat top left/cover
	}
	.bg_fixed .logo {
		position: absolute;
		top: 90px;
		left: 90px;
		width: 81px;
	}
}
/* =mv 
-------------------------------------------------------------- */
.mv {
	position: relative;
	width: 100%;
	height: 57.9rem;
	overflow: hidden;
	background: url(../../images/hapr_cp16_3b/mv.jpg) no-repeat top/100% 100%;
}
.mv .logo {
	position: absolute;
	top: 2rem;
	left: 2rem;
	width: 2.2rem;
}
.mv .hukidashi {
	position: absolute;
	top: 1.8rem;
	left: 3.4rem;
	width: 25.4rem;
}
.mv .ttl {
	position: absolute;
	top: 15.3rem;
	left: 0;
	width: 24.3rem;
}
.mv .point {
	position: absolute;
	left: 0;
	bottom: 7.7rem;
	width: 100%;
}
.mv .note {
	color: #fff;
	font-size: 1rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	position: absolute;
	left: 1.9rem;
	bottom: 2rem;
}
/* =guidance
-------------------------------------------------------------- */
.guidance {
	padding: 1.8rem 2rem 9.6rem;
	background: var(--light_beige);
}
.guidance .text_wrap {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
	margin: 0 0 2.3rem;
}
.guidance .text_wrap p + p {
	margin-top: 1.6rem;
}
.guidance .text_wrap p .color {
	color: #A64943;
	font-size: 1.6rem;
}
.btn_wrap {
	position: relative;
	padding: 1.7rem 0 0;
}
.btn_wrap .hukidashi {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	color: var(--cta_brown);
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	padding: 0.1rem 0 1rem;
	width: 31rem;
	margin: 0 auto;
	background: url(../../images/hapr_cp16_3b/cta_hukidashi.png) no-repeat center/100% 100%;
	z-index: 1;
}
.btn_wrap .btn a {
	position: relative;
	color: #fff;
	display: block;
	font-size: 1.4rem;
	line-height: 1.3;
	letter-spacing: 0.15em;
	padding: 1.2rem 0;
	background: var(--cta_brown);
	border-radius: 20rem;
	box-shadow: 0px 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
}
.btn_wrap .btn a::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -3.5rem;
	width: 0.9rem;
	height: 4.3rem;
	margin: 0 auto;
	background: url(../../images/hapr_cp16_3b/btn_arrow.png) no-repeat center/contain;
	z-index: 1;
}
@media (min-width: 768px) {
	.guidance .btn_wrap .btn a {
		opacity: 1;
		transition: opacity 0.3s;
	}
	.guidance .btn_wrap .btn a:hover {
		opacity: .5;
	}
	.guidance .btn_wrap .btn a::after {
		transition: transform 0.7s;
	}
	.guidance .btn_wrap .btn a:hover::after {
		transform: translateY(0.5rem);
	}
}
.btn_wrap .btn a .bold {
	font-size: 2rem;
}
.btn_wrap .btn a .color {
	display: inline-block;
	color: var(--yellow);
	font-size: 2.4rem;
	background: #9C3847;
}
/* =worry
-------------------------------------------------------------- */
.worry {
	position: relative;
	padding: 12.9rem 0 2.4rem;
	background: var(--cream);
	z-index: 2;
}
.worry::before {
	content: '';
	position: absolute;
	top: 6.1rem;
	left: 0;
	width: 35.5rem;
	height: 44.4rem;
	background: url(../../images/hapr_cp16_3b/worry_bg_1.png) no-repeat center/cover;
	z-index: -1;
}
.worry .sec_ttl {
	position: relative;
	color: var(--dark_pink);
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 1.2rem 2rem;
	margin: 0 0 1.9rem;
}
.worry .sec_ttl::before,
.worry .sec_ttl::after {
	content: '';
	position: absolute;
}
.worry .sec_ttl::before {
	left: 0;
	bottom: 0;
	width: 8rem;
	height: 0.1rem;
	background: var(--dark_pink);
}
.worry .sec_ttl::after {
	top: -5rem;
	right: 2rem;
	width: 12.3rem;
	height: 12.1rem;
	background: url(../../images/hapr_cp16_3b/worry_icon.png) no-repeat center/contain;
}
.worry .sec_ttl .before {
	display: block;
	width: 4.5rem;
	margin: 0 0 -0.5rem;
}
.worry .sec_ttl .strong {
	display: block;
	font-size: 2.4rem;
}
.worry .worry_list {
	padding: 0 2rem;
	margin: 0 0 9.6rem;
}
.worry .worry_list li {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 0 2.4rem;
}
.worry .worry_list li::before {
	content: '';
	position: absolute;
	top: 0.4rem;
	left: 0;
	width: 1.5rem;
	height: 1.4rem;
	background: url(../../images/hapr_cp16_3b/check.png) no-repeat center/contain;
}
.worry .worry_list li.checked::before {
	background: url(../../images/hapr_cp16_3b/checked.png) no-repeat center/contain;
}
.worry .worry_list li + li {
	margin-top: 0.9rem;
}
.worry .text_wrap {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	text-align: left;
	margin: 0 0 2.3rem auto;
	width: 27.6rem;
}
.worry .text_wrap::before {
	content: '';
	position: absolute;
	top: 4.9rem;
	left: -8.3rem;
	width: 21.2rem;
	height: 21.5rem;
	background: url(../../images/hapr_cp16_3b/worry_bg_2.png) no-repeat center/contain;
	z-index: -1;
}
.worry .text_wrap p + p {
	margin-top: 1.7rem;
}
.worry .text_wrap p .color {
	color: var(--dark_pink);
	font-size: 2rem;
}
.worry .text_wrap p .box {
	display: inline-block;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 0.1rem 0.5rem 0.2rem 0.5rem;
	background: var(--dark_pink);
	border-radius: 0.3rem;
}
.worry .text_wrap p .box span {
	color: var(--dark_pink);
	font-size: 1rem;
	vertical-align: middle;
	padding: 0 0.4rem;
	margin-right: 0.5rem;
	background: #fff;
	border-radius: 0.3rem;
}
/* =question
-------------------------------------------------------------- */
.question {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}
.question .in {
	flex: 1 1 auto;
	position: relative;
	color: #fff;
	text-align: left;
	padding: 15.6rem 0 6rem;
	width: 100%;
	background: url(../../images/hapr_cp16_3b/bg_question_top.jpg)no-repeat var(--pink) top center/100% auto;
	box-sizing: border-box;
	z-index: 1;
}
.question.q_4 .in {
	padding: 15.6rem 0 8.5rem;
}
.question.q_5 .in {
	background: url(../../images/hapr_cp16_3b/bg_question_5.jpg)no-repeat var(--cream) top center/100% auto;
}
.question .in::before {
	content: '';
	position: absolute;
	top: 6.5rem;
	right: 0;
	width: 100%;
	height: calc(100% - 6.5rem);
	background: url(../../images/hapr_cp16_3b/bg_question.png)no-repeat top right/100% 100%;
	z-index: -1;
}
.question.q_5 .in::before {
	content: none;
}
.question.q_1 .in::after {
	content: '';
	position: absolute;
	top: 4.4rem;
	right: 5rem;
	width: 13.6rem;
	height: 13.8rem;
	background: url(../../images/hapr_cp16_3b/icon_question_1.png)no-repeat center/cover;
}
.question.q_2 .in::after {
	content: '';
	position: absolute;
	top: 4.4rem;
	right: 5rem;
	width: 13.6rem;
	height: 13.8rem;
	background: url(../../images/hapr_cp16_3b/icon_question_2.png)no-repeat center/cover;
}
.question.q_3 .in::after {
	content: '';
	position: absolute;
	top: 4.4rem;
	right: 5rem;
	width: 13.6rem;
	height: 13.8rem;
	background: url(../../images/hapr_cp16_3b/icon_question_3.png)no-repeat center/cover;
}
.question.q_5 .in::after {
	content: '';
	position: absolute;
	top: 4.4rem;
	right: 5rem;
	width: 13.6rem;
	height: 13.8rem;
	background: url(../../images/hapr_cp16_3b/icon_question_5.png)no-repeat center/cover;
}
.question .in .logo {
	position: absolute;
	top: 2rem;
	left: 2rem;
	width: 2.2rem;
}
.question .q_num {
	position: relative;
	display: inline-block;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding: 0.5rem 0.25rem 0.6rem;
	margin: 0 0 1rem 2rem;
	border-top: 0.1rem solid #fff;
	border-bottom: 0.1rem solid #fff;
}
.question .q_num::before,
.question .q_num::after {
	content: '';
	position: absolute;
	width: 0.5rem;
	height: 0.5rem;
	background: #fff;
	border-radius: 50%;
}
.question .q_num::before {
	top: -0.3rem;
	right: -0.2em;
}
.question .q_num::after {
	bottom: -0.3rem;
	left: -0.2em;
}
.question > .in .text {
	font-size: 2.2rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	margin: 0 0 2.2rem;
	padding-left: 2rem;
}
.question .text .small {
	font-size: 1.4rem;
}
.question.q_5 .text .small {
	font-size: 1rem;
}
.question > .in .text .color {
	color: var(--yellow);
	letter-spacing: 0.1em;
}
.question > .in .text .color .small {
	font-size: 1rem;
}
.question.q_5 .img {
	width: 26.6rem;
	margin: 0 auto 2.4rem;
}
.question .form_wrap {
	position: relative;
}
.question .form_wrap .radio_box_list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	margin: 0 0 3rem;
}
.question.q_5 .form_wrap .radio_box_list {
	margin-bottom: 10rem;
}
.question .form_wrap .radio_box_list li .radio_box {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--dark_brown);
	text-align: center;
	font-size: 1.6rem;
	width: 12.7rem;
	height: 5.1rem;
	background: #fff;
	border-radius: 0.3rem;
	filter: drop-shadow(0px 0px 1.7rem rgba(139, 106, 103, 0.4));
}
input[type="radio"] {
    display: none;
}
.question .form_wrap .radio_box_list li input[type="radio"]:checked + label.radio_box {
	color: #fff;
    background: var(--cta_brown);
}
.question .form_wrap .radio_check_list {
	padding-left: 2rem;
	margin: 0 0 7.2rem;
}
.question .form_wrap .radio_check_list li + li {
	margin-top: 1.5rem;
}
.question .form_wrap .radio_check_list li .radio_circle {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding-left: 2.7rem;
}
.question .form_wrap .radio_check_list li .radio_circle::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 1.7rem;
	height: 1.7rem;
	transform: translateY(-50%);
	background: #fff;
	border-radius: 50%;
}
.question .form_wrap .radio_check_list li input[type="radio"]:checked + label.radio_circle::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0.3rem;
	width: 1.1rem;
	height: 1.1rem;
	transform: translateY(-50%);
	background: var(--dark_pink);
	border-radius: 50%;
}
.btn_submit {
	width: 18.9rem;
	margin: 0 auto;
}
.btn_submit button {
	position: relative;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0.6rem 0 0.8rem;
	width: 100%;
	background: var(--cta_brown);
	border: none;
	border-radius: 40rem;
	box-shadow: 0px 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
}
.btn_submit button:not([disabled]) {
	cursor: pointer;
}
.btn_submit button[disabled] {
	filter: grayscale(1);
	opacity: .5;
}
.btn_submit button::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 2.1rem;
	width: 2.7rem;
	height: 0.5rem;
	margin: 0 auto;
	transform: translateY(-50%);
	background: url(../../images/hapr_cp16_3b/btn_arrow_white.png) no-repeat center/contain;
}
@media (min-width: 768px) {
	.btn_submit button {
		transition: opacity 0.3s;
	}
	.btn_submit button:not([disabled]):hover {
		opacity: .5;
	}
	.btn_submit button::after {
		transition: transform 0.7s;
	}
	.btn_submit button:not([disabled]):hover::after {
		transform: translateY(-50%) translateX(0.6rem);
	}
}
.btn_check {
	width: 33.5rem;
	margin: 0 auto;
}
.btn_check .btn {
	position: relative;
	color: #fff;
	display: block;
	font-size: 2rem;
	line-height: 1.3;
	letter-spacing: 0.15em;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	padding: 1.2rem 0;
	background: var(--cta_brown);
	border-radius: 20rem;
	box-shadow: 0px 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
}
.btn_check .btn:not([disabled]) {
	cursor: pointer;
}
.btn_check .btn[disabled] {
	filter: grayscale(1);
	opacity: .5;
}
.btn_check .btn::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 2.1rem;
	width: 3.3rem;
	height: 0.6rem;
	margin: 0 auto;
	transform: translateY(-50%);
	background: url(../../images/hapr_cp16_3b/btn_arrow_white.png) no-repeat center/contain;
}
.btn_check .btn .color {
    display: inline-block;
    color: var(--yellow);
    font-size: 2.4rem;
    background: #9C3847;
}
.question .form_wrap .check_list {
	padding: 0 2rem;
	margin: 0 0 2.3rem;
}
.question.q_5 .form_wrap .check_list {
	margin-bottom: 7.2rem;
}
.question .form_wrap .check_list li + li {
	margin-top: 1.3rem;
}
.question .form_wrap .check_list li label {
	position: relative;
	display: block;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding-left: 2.6rem;
}
.question .form_wrap .check_list li label::before {	
	content: '';
	position: absolute;
	top: 0.5rem;
	left: 0;
	width: 1.5rem;
	height: 1.5rem;
	border: 0.1rem solid #fff;
	border-radius: 0.2rem;
}
.question .form_wrap .check_list li input[type="checkbox"] {
	display: none;
}
.question .form_wrap .check_list li input[type="checkbox"]:checked + label::after {
	content: '';
	position: absolute;
	top: 0.5rem;
	left: 0.3rem;
	width: 1.6rem;
	height: 1.2rem;
	background: url(../../images/hapr_cp16_3b/icon_check.png) no-repeat center/contain;
}
.question .scroll {
	position: absolute;
	right: 2rem;
	bottom: 2.8rem;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	padding-right: 0.5rem;
	writing-mode: vertical-rl;
	opacity: 0;
	visibility: hidden;
}
.question.open .scroll {
	opacity: 1;
	visibility: visible;
}
.question .scroll::before,
.question .scroll::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 0.1rem;
	border-radius: 0.2rem;
}
.question .scroll::before {
	height: 100%;
	background: #FFD1CF;
}
.question .scroll::after {
	height: 3.2rem;
	background: #fff;
}
/* =about
-------------------------------------------------------------- */
.question.open .in {
	flex-grow: 0;
}
.about {
	position: relative;
	height: 0;
	overflow: hidden;
	transition: height 1s;
	z-index: 1;
}
.about.open {
	height: auto;
	margin: -9rem 0 0;
	padding: 10.3rem 0 0;
	background: url(../../images/hapr_cp16_3b/bg_about.png)no-repeat top center/100% auto;
	opacity: 1;
}
.about::after {
	content: '';
	position: absolute;
	top: 10rem;
	right: 1.9rem;
	width: 9.8rem;
	height: 9.5rem;
	background: url(../../images/hapr_cp16_3b/bg_item.png)no-repeat bottom center/cover;
	z-index: -1;
}
.about .sec_ttl {
	position: relative;
	color: var(--dark_pink);
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 1.2rem 2rem;
	margin: 0 0 1.9rem;
}
.about .sec_ttl::before,
.about .sec_ttl::after {
	content: '';
	position: absolute;
}
.about .sec_ttl::before {
	left: 0;
	bottom: 0;
	width: 8rem;
	height: 0.1rem;
	background: var(--dark_pink);
}
.about .sec_ttl .text_about {
	display: block;
	width: 3.9rem;
	margin: 0 0 -0.5rem;
}
.about .sec_ttl .strong {
	display: block;
	font-size: 2.4rem;
}
.about .sec_ttl .strong .small {
	font-size: 1rem;
}
.about .intro_text_wrap {
	text-align: left;
	padding: 0 2rem;
	margin: 0 0 3.4rem;
}
.about .intro_text_wrap p {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.about .intro_text_wrap p + p {
	margin-top: 1.84rem;
}
.about .intro_text_wrap p .color {
	color: var(--dark_pink);
}
.about .contents {
	padding: 0 0 5.6rem;
	background: var(--cream);
}
.about .contents .head_wrap {
	position: relative;
	padding: 4.4rem 0 1.6rem;
}
.about .contents .head_wrap::before {
	content: '';
	position: absolute;
	top: 0;
	left: 1.3rem;
	width: 36.2rem;
	height: 24.5rem;
	background: url(../../images/hapr_cp16_3b/bg_aparin.png)no-repeat top center/cover;
	z-index: -1;
}
.about .contents .head_wrap .sub {
	position: relative;
	display: inline-block;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding: 0.5rem 0.5rem 0.6rem;
	margin: 0 0 0.7rem;
}
.about .contents .head_wrap .sub::before,
.about .contents .head_wrap .sub::after {
	content: '';
	position: absolute;
	width: 22.9rem;
	height: 0.55rem;
}
.about .contents .head_wrap .sub::before {
	top: 0;
	right: 0;
	background: url(../../images/hapr_cp16_3b/line_top.png)no-repeat right center/cover;
}
.about .contents .head_wrap .sub::after {
	left: 0;
	bottom: 0;
	background: url(../../images/hapr_cp16_3b/line_bottom.png)no-repeat left center/cover;
}
.about .contents .head_wrap .ttl {
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: 0.15em;
}
.about .contents .head_wrap .ttl .color {
	color: #A64943;
}
.about .contents .head_wrap .ttl .strong {
	font-size: 3.2rem;
	font-weight: bold;
}
.about .contents .head_wrap .ttl .small,
.about .contents_2 .head .small {
	font-size: 1rem;
}
.about .contents .img {
	width: 33.5rem;
	margin: 0 auto 1.3rem;
	filter: drop-shadow(0px 0px 1rem rgba(0, 0, 0, 0.1));
}
.about .contents .img.ver2 {
	width: 33.5rem;
	margin: 0 auto 1.3rem;
	filter: drop-shadow(0px 0px 1rem rgba(0, 0, 0, 0.1));
	background: #fff;
	padding: 1.5rem;
	border-radius: 1rem;
	box-sizing: border-box;
}
.about .contents .text_wrap {
	text-align: left;
	padding-left: 2rem;
}
.about .contents .text_wrap .text {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.about .contents .text_wrap .text .small {
	font-size: 1rem;
}
.about .contents .text_wrap .text.large {
	font-size: 1.8rem;
	margin-top: 1.5rem;
}
.about .contents .text_wrap ul {
	font-size: 1rem;
	line-height: 1.84;
	margin-top: 1.8rem;
}
.about .contents_2 {
	position: relative;
	padding: 0 0 7rem;
	background: var(--cream);
}
.about .contents_2::before {
	content: '';
	position: absolute;
	top: -12.9rem;
	right: 0;
	width: 6rem;
	height: 24.8rem;
	background: url(../../images/hapr_cp16_3b/bg_contents_2.png)no-repeat center/cover;
	z-index: -1;
}
.about .contents_2 .head {
	position: relative;
	font-size: 2.2rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 1.5rem 2rem 0;
	margin: 0 0 3.4rem;
}
.about .contents_2 .head::before,
.about .contents_2 .head::after {
	content: '';
	position: absolute;
	background: var(--dark_brown);
}
.about .contents_2 .head::before {
	top: 0.2rem;
	left: 0;
	width: 25.9rem;
	height: 0.1rem;
}
.about .contents_2 .head::after {
	top: 0;
	left: 25.9rem;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
}
.about .contents_2 .head .color {
	color: var(--dark_pink);
}
.about .contents_2 .img {
	margin: 0 0 1.3rem;
}
.about .contents_2 .text_wrap {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
	padding-left: 2rem;
}
.about .contents_2 .text_wrap p + p {
	margin-top: 1.84em;
}
.about .contents_2 .text_wrap p .color {
	color: var(--dark_pink);
	font-size: 1.6rem;
}
.about .form_bottom {
	position: relative;
	padding: 0 0 5.6rem;
	background: url(../../images/hapr_cp16_3b/bg_form.jpg)no-repeat top 3.8rem center/cover;
}
.about .form_bottom .img {
	position: relative;
	width: 23.8rem;
	margin: -3.8rem auto 1.3rem;
}
.about .form_bottom .img::after {
	content: '';
	position: absolute;
	right: -6.8rem;
	bottom: -3.2rem;
	width: 11.6rem;
	height: 8.5rem;
	background: url(../../images/hapr_cp16_3b/bg_item_3.png)no-repeat center/cover;
}
.about .form_bottom .text_wrap {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
	padding-left: 6.8rem;
	margin: 0 0 2.3rem;
}
.about .form_bottom .text_wrap .text + .text {
	margin-top: 1.6rem;
}
.about .form_bottom .text_wrap .text .color {
	color: var(--yellow);
	font-size: 1.6rem;
}
.about .form_bottom .text_wrap .text .color.large {
	font-size: 1.8rem;
}
.about .form_bottom .text_wrap .text .small {
	font-size: 1rem;
}
.about .form_bottom .note {
	color: #fff;
	font-size: 1rem;
	line-height: 1.84;
	margin-top: 1.5rem;
}
/* =footer
-------------------------------------------------------------- */
.footer {
	position: relative;
	padding: 2.6rem 0 2.9rem;
	background: #715A51;
}
.footer .copyright {
	color: #fff;
	font-size: 1rem;
	line-height: 1.5;
}
/* =type
-------------------------------------------------------------- */
.type {
	position: relative;
	padding: 11.9rem 0 0;
	background: url(../../images/hapr_cp16_3b/type_head.jpg)no-repeat var(--cream) top center/100% auto;
}
.type .logo {
	position: absolute;
	top: 2rem;
	left: 2rem;
	width: 2.2rem;
}
.type .sec_ttl {
	position: relative;
	color: var(--dark_pink);
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 1.2rem 2rem;
	margin: 0 0 4rem;
}
.type .sec_ttl::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 8rem;
	height: 0.1rem;
	background: var(--dark_pink);
}
.type .sec_ttl .text_type {
	display: block;
	width: 3.9rem;
}
.type .sec_ttl .strong {
	display: block;
	font-size: 2.4rem;
}
.type .type_img {
	position: relative;
	width: 25rem;
	margin: 0 auto 2.1rem;
	z-index: 1;
}
.type .text_wrap {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 5.3rem 6.3rem;
	z-index: 0;
}
.type .text_wrap::before {
	content: '';
	position: absolute;
	left: 0;
	top: -12rem;
	width: 37.1rem;
	height: 41.4rem;
	background: url(../../images/hapr_cp16_3b/bg_type_text.png)no-repeat center/contain;
	z-index: -1;
}
.kansou .type .text_wrap::before,
.hutsu .type .text_wrap::before {
	top: -12rem;
	width: 37rem;
	height: 37.2rem;
	background: url(../../images/hapr_cp16_3b/bg_type_text_2.png)no-repeat center/contain;
}
.type .text_wrap .text + .text {
	margin-top: 1.5rem;
}
.type .text_wrap .text .color {
	color: var(--dark_pink);
}
.type .type_recommend {
	position: relative;
	padding: 0 2rem 7.5rem;
	margin: 5.9rem 0 0;
	z-index: 1;
}
.type .type_recommend::before {
	content: '';
	position: absolute;
	top: 33.8rem;
	right: 0;
	width: 12.8rem;
	height: calc(100% - 33.8rem);
	background: url(../../images/hapr_cp16_3b/bg_type_right.png)no-repeat top center/cover;
	z-index: -1;
}
.type .type_recommend .head {
	position: relative;
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    padding: 0.5rem 1.5rem 0.6rem;
    margin: 0 0 0.5rem;
}
.type .type_recommend .head::before,
.type .type_recommend .head::after {
	content: '';
	position: absolute;
	width: 22.9rem;
	height: 0.55rem;
}
.type .type_recommend .head::before {
	top: 0;
	right: 0;
	background: url(../../images/hapr_cp16_3b/line_top.png)no-repeat right center/cover;
}
.type .type_recommend .head::after {
	left: 0;
	bottom: 0;
	background: url(../../images/hapr_cp16_3b/line_bottom.png)no-repeat left center/cover;
}
.type .type_recommend .ttl {
	position: relative;
	color: var(--dark_pink);
	font-size: 2.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	margin: 0 0 3.2rem;
	z-index: 1;
}
.type .type_recommend .img {
	position: relative;
	margin: 0 0 1.3rem;
	z-index: 0;
}
.type .type_recommend .img img {
	width: 29.3rem;
	margin: 0 auto;
}
.type .type_recommend .img::before {
	content: '';
	position: absolute;
	top: -5.2rem;
	left: -2rem;
	width: 16.3rem;
	height: 20.1rem;
	background: url(../../images/hapr_cp16_3b/bg_type_img.png)no-repeat center/cover;
	z-index: -1;
}
.type .type_recommend .text_area {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
}
.type .type_recommend .text_area .text + .text {
	margin-top: 1.5rem;
}
.type .type_recommend .text_area .text .small {
	font-size: 1rem;
}
.type .type_recommend .text_area .text .color {
	color: var(--dark_pink);
}
.type .type_recommend .text_area .note {
	font-size: 1rem;
	margin-top: 1.8rem;
}
/* =sec_recommend
-------------------------------------------------------------- */
.sec_item + .sec_recommend {
	margin: -17rem 0 0;
}
.sec_recommend {
	position: relative;
	padding: 17.2rem 0 10.2rem;
	margin: -15rem 0 0;
	background: url(../../images/hapr_cp16_3b/bg_recommend.png)no-repeat top center/100% auto;
	z-index: 1;
}
.sec_recommend .sec_ttl {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 0 1.2rem 2rem;
	margin: 0 0 1.6rem;
}
.sec_recommend .sec_ttl::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 8rem;
	height: 0.1rem;
	background: var(--dark_brown);
	opacity: 0.3;
}
.sec_recommend .sec_ttl .text_recommend {
	display: block;
	width: 7.8rem;
}
.sec_recommend .sec_ttl .strong {
	display: block;
	font-size: 2.4rem;
}
.sec_recommend .recommend_list {
	text-align: left;
	padding-left: 2rem;
}
.sec_recommend .recommend_list li {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	padding-left: 2.4rem;
}
.sec_recommend .recommend_list li::before {
	content: '';
	position: absolute;
	top: 0.4rem;
	left: 0;
	width: 1.5rem;
	height: 1.4rem;
	background: url(../../images/hapr_cp16_3b/check.png) no-repeat center/contain;
}
.sec_recommend .recommend_list li + li {
	margin-top: 1rem;
}
.sec_recommend .recommend_list li .small {
	font-size: 1rem;
}
.sec_recommend .note {
	font-size: 1rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	text-align: left;
	padding-left: 2rem;
	margin-top: 1rem;
}
/* =bg
-------------------------------------------------------------- */
.bg:has(.offer) {
	padding: 2rem 0 5.4rem;
}
.bg:has(.offer).ma {
	padding: 2rem 0 12.6rem;
}
.bg .offer + .text {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.red {
	position: relative;
	background: var(--pink);
}
.red::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_red.png) no-repeat top center/100% auto;
	z-index: 1;
}
.blue {
	position: relative;
	background: #B9C9D1;
}
.blue::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_blue.png) no-repeat top center/100% auto;
	z-index: 1;
}
.light_blue {
	position: relative;
	background: #F6FCFF;
}
.light_blue::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_lightblue.png) no-repeat top center/100% auto;
	z-index: 1;
}
.light_green {
	position: relative;
	background: #FAF9F1;
}
.light_green::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_lightgreen.png) no-repeat top center/100% auto;
	z-index: 1;
}
.green {
	position: relative;
	background: #C8C5B3;
}
.green::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_green.png) no-repeat top center/100% auto;
	z-index: 1;
}
.cream {
	position: relative;
	background: var(--cream);
}
.cream::before {
	content: '';
	position: absolute;
	top: -10.9rem;
	left: 0;
	width: 100%;
	height: 11rem;
	background: url(../../images/hapr_cp16_3b/bg_cream.png) no-repeat top center/100% auto;
	z-index: 1;
}
/* =benefit
-------------------------------------------------------------- */
.benefit {
	padding: 3rem 0 12.4rem;
}
.benefit.last {
	padding: 3rem 0 5.2rem;
}
.benefit > .head_wrap {
	position: relative;
	width: 33.5rem;
	margin: 0 auto 3.5rem;
}
.benefit > .head_wrap .sub {
	position: absolute;
	top: -1.5rem;
	left: 0;
	right: 0;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	width: 28.7rem;
	margin: 0 auto;
	border-radius: 0.3rem;
}
.benefit.red > .head_wrap .sub {
	background: var(--dark_pink);
}
.benefit.blue > .head_wrap .sub {
	background: #70A9C5;
}
.benefit.green > .head_wrap .sub {
	background: var(--gold);
}
.benefit > .head_wrap .ttl {
	color: #fff;
	font-size: 2.6rem;
	line-height: 1.84;
	letter-spacing: 0.1em;
	padding: 2rem 0 1rem;
	background: url(../../images/hapr_cp16_3b/border_title.png)no-repeat center/100% 100%;
}
.benefit > .head_wrap .ttl .color {
	color: var(--yellow);
}
.benefit > .head_wrap .ttl.ver2 {
	line-height: 1.4;
	padding: 3rem 0 1.5rem;
	background: url(../../images/hapr_cp16_3b/border_title_2.png)no-repeat center/100% 100%;
}
.benefit > .head_wrap .ttl .flex {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
}
.benefit > .head_wrap .ttl .box {
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1;
	padding: 0.5rem 0.5rem 0.6rem;
	background: #fff;
	border-radius: 0.3rem;
}
.benefit.blue > .head_wrap .ttl .box {
	color: #70A9C5;
}
.benefit.green > .head_wrap .ttl .box {
	color: var(--gold);
}
.benefit > .head_wrap .ttl .plus {
	width: 1.5rem;
	height: 1.5rem;
	margin: 0 0.6rem;
}
.benefit.blue > .head_wrap .ttl .box.jak {
	font-size: 1.4rem;
	padding: 0.2rem 0.5rem 0.3rem;
	margin-right: 0.3rem;
}
.benefit.blue > .head_wrap .ttl .box .num {
	font-size: 2.4rem;
}
.benefit .benefit_list li {
	text-align: left;
}
.benefit .benefit_list li + li {
	margin-top: 4rem;
}
.benefit .benefit_list li > .num {
	color: #fff;
	font-size: 4.8rem;
	opacity: 0.5;
}
.benefit .benefit_list li:nth-child(odd) .num {
	padding-left: 1.5rem;
}
.benefit .benefit_list li:nth-child(even) {
	padding-left: 3rem;
}
.benefit .benefit_list li .box {
	position: relative;
	width: 34.5rem;
	background: #fff;
	box-sizing: border-box;
}
.benefit.green .benefit_list li .box {
	color: var(--dark_gold);
}
.benefit .benefit_list li:nth-child(odd) .box {
	border-radius: 0 1rem 1rem 0;
}
.benefit .benefit_list li:nth-child(even) .box {
	border-radius: 1rem 0 0 1rem;
	margin-left: auto;
}
.benefit .benefit_list li .box.wristband {
	padding: 1.4rem 0 1.6rem;
}
.benefit .benefit_list li .box.wristband .head {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	padding: 0 1.7rem 0.5rem;
}
.benefit .benefit_list li .box.wristband .head::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 8rem;
	height: 0.1rem;
	background: var(--dark_brown);
	opacity: 0.3;
}
.benefit .benefit_list li .box.wristband .text_wrap {
	text-align: left;
	padding: 2.5rem 0 0 1.7rem;
}
.benefit .benefit_list li .box.wristband .text_wrap .text {
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
}
.benefit .benefit_list li .box.wristband .text_wrap .note {
	font-size: 1rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.benefit .benefit_list li .box.wristband .img {
	position: absolute;
	top: -3.9rem;
	right: 1rem;
	width: 11.9rem;
}
.benefit.blue .benefit_list li .box .color {
	color: var(--blue);
}
.benefit.red .benefit_list li .box .color {
	color: var(--dark_pink);
}
.benefit.green .benefit_list li .box .color {
	color: var(--gold);
}
.benefit .benefit_list li .box.postage {
	display: flex;
	align-items: center;
	gap: 0 1.4rem;
	padding: 1.4rem 1.1rem 1.9rem 1rem;
}
.benefit .benefit_list li .box.postage .icon {
	flex: 0 0 8.7rem;
}
.benefit .benefit_list li .box.postage .text_wrap p {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	padding: 0 0.5rem;
	margin: 0 0 3rem;
}
.benefit .benefit_list li .box.postage .text_wrap p .small {
	font-size: 1rem;
}
.benefit .benefit_list li .box.postage .text_wrap p::before {
	content: '';
	position: absolute;
	top: 1.3rem;
	left: 0;
	width: 100%;
	height: 0.1rem;
	transform: rotate(-2deg);
	background: var(--dark_pink);
}
.benefit .benefit_list li .box.postage .text_wrap p::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2rem;
	margin: 0 auto;
	width: 1.3rem;
	height: 1.3rem;
	background: url(../../images/hapr_cp16_3b/icon_triangle.png)no-repeat center/contain;
}
.benefit .benefit_list li .box.postage .text_wrap .strong {
	text-align: center;
}
.benefit .benefit_list li .box.postage .text_wrap .strong span {
	display: inline-block;
	color: var(--dark_pink);
	font-size: 2.8rem;
	line-height: 1.6;
	padding: 0 0.5rem;
	background: var(--yellow);
}
.benefit .benefit_list li .box.amazon {
	display: flex;
	gap: 0 1.4rem;
	padding: 1.4rem 0 1.9rem 1rem;
}
.benefit .benefit_list li .box.amazon .icon {
	flex: 0 0 9.9rem;
}
.benefit .benefit_list li .box.amazon .text_wrap {
	flex: 1 1 auto;
}
.benefit .benefit_list li .box.amazon .text_wrap .head {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.2;
	padding: 0 0 0.5rem;
	margin: 0 0 1.6rem;
}
.benefit .benefit_list li .box.amazon .head::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	width: 13rem;
	height: 0.1rem;
	background: var(--dark_brown);
	opacity: 0.3;
}
.benefit .benefit_list li .box.amazon .text_wrap .head .color {
	display: block;
}
.benefit.blue .benefit_list li .box.amazon .text_wrap .head .color {
	color: var(--blue);
}
.benefit .benefit_list li .box.amazon .text_wrap .head .color .num {
	font-size: 3rem;
}
.benefit .benefit_list li .box.amazon .text_wrap .text {
	font-size: 1rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	padding-right: 2rem;
}
/* =offer
-------------------------------------------------------------- */
.benefit_list + .offer {
	margin-top: 4rem;
}
.offer {
	position: relative;
	padding: 5.4rem 0 7rem;
	z-index: 1;
}
.offer.facescrub.powder,
.offer.facescrub.cleansing,
.offer.facewash.cleansing,
.offer.facescrub.facewash {
	padding: 6.6rem 0 7.5rem;
}
.offer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: -1;
}
.blue .offer.facescrub::before {
	height: 36rem;
	background: url(../../images/hapr_cp16_3b/bg_offer_white_2.png)no-repeat center/cover;
}
.offer.facescrub::before,
.offer.facewash::before,
.offer.powderwash::before,
.offer.cleansing::before,
.offer.facesoap::before {
	height: 36rem;
	background: url(../../images/hapr_cp16_3b/bg_offer_cream.png)no-repeat center/cover;
}
.blue .offer.facescrub.powder::before {
	height: 41.5rem;
	background: url(../../images/hapr_cp16_3b/bg_offer_white.png)no-repeat center/cover;
}
.offer.facescrub.facewash::before,
.offer.facescrub.cleansing::before,
.offer.facewash.cleansing::before,
.offer.facescrub.powder::before {
	height: 41.5rem;
	background: url(../../images/hapr_cp16_3b/bg_offer_green.png)no-repeat center/cover;
}
.offer .head_wrap {
	position: relative;
	padding: 0 0 1.5rem;
	margin: 0 0 1rem;
}
.offer .head_wrap::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 25.1rem;
	height: 0.1rem;
	background: var(--dark_pink);
}
.offer .head_wrap::after {
	content: '';
	position: absolute;
	bottom: -0.2rem;
	right: 5.9rem;
	width: 0.5em;
	height: 0.5em;
	background: var(--dark_pink);
	border-radius: 50%;
}
.offer .head_wrap .ttl {
	color: var(--cta_brown);
	font-size: 2.2rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
}
.offer .head_wrap .sub {
	font-size: 1rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	margin-top: 0.4rem;
}
.offer .nomal {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	padding-left: 9.3rem;
	margin: 0 0 -1rem;
}
.offer .nomal::before {
	content: '';
	position: absolute;
	top: -0.2rem;
	left: 3.4rem;
	width: 7.8rem;
	height: 7.8rem;
	background: url(../../images/hapr_cp16_3b/offer_price.png)no-repeat center/cover;
}
.offer .nomal.sp::before {
	background: url(../../images/hapr_cp16_3b/offer_price_2.png)no-repeat center/cover;
}
.offer .nomal .small {
	font-size: 1rem;
}
.offer .nomal .border {
	position: relative;
	padding: 0 0.3rem;
}
.offer .nomal .border::after {
	content: '';
    position: absolute;
    top: 1rem;
    left: 0;
    width: 100%;
    height: 0.1rem;
    transform: rotate(-2deg);
    background: var(--dark_pink);
}
.offer .price {
	color: var(--dark_pink);
	line-height: 1.6;
	letter-spacing: 0.12em;
	padding-left: 9.3rem;
}
.offer.facesoap .price {
	padding-left: 0;
}
.offer .price .num {
	font-size: 3.8rem;
}
.offer .price .yen {
	font-size: 2.2rem;
}
.offer .price .small {
	font-size: 1.4rem;
}
.offer .btn {
	width: 33.5rem;
	margin: 0 auto;
}
.offer .btn a {
	position: relative;
	display: block;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding: 1.8rem 0 1.8rem 3.9rem;
	background: var(--cta_brown);
	border-radius: 20rem;
	filter: drop-shadow(0px 12px 17px rgba(139, 106, 103, 0.32));
}
.offer.facescrub .btn a::before {
	content: '';
	position: absolute;
	top: -4.1rem;
	left: 3.5rem;
	width: 4.5rem;
	height: 9.3rem;
	background: url(../../images/hapr_cp16_3b/btn_facescrub.png)no-repeat center/contain;
}
.offer.facewash .btn a::before {
	content: '';
	position: absolute;
	top: -5rem;
	left: 3.6rem;
	width: 4rem;
	height: 10.4rem;
	background: url(../../images/hapr_cp16_3b/btn_facewash.png)no-repeat center/contain;
}
.offer.powderwash .btn a::before {
	content: '';
	position: absolute;
	top: -5rem;
	left: 4.2rem;
	width: 3rem;
	height: 10.7rem;
	background: url(../../images/hapr_cp16_3b/btn_powderwash.png)no-repeat center/contain;
}
.offer.facescrub.powder .btn a::before {
	content: '';
	position: absolute;
	top: -4.1rem;
	left: 1.7rem;
	width: 7.0rem;
	height: 9.5rem;
	background: url(../../images/hapr_cp16_3b/btn_scrub_powder.png)no-repeat center/contain;
}
.offer.facescrub.cleansing .btn a::before {
	content: '';
	position: absolute;
	top: -4.1rem;
	left: 2.4rem;
	width: 7.4rem;
	height: 9.7rem;
	background: url(../../images/hapr_cp16_3b/btn_cleansing_scrub.png)no-repeat center/contain;
}
.offer.facewash.cleansing .btn a::before {
	content: '';
	position: absolute;
	top: -4.6rem;
	left: 2.1rem;
	width: 7.7rem;
	height: 10.2rem;
	background: url(../../images/hapr_cp16_3b/btn_cleansing_facewash.png)no-repeat center/contain;
}
.offer.facewash.facescrub .btn a::before {
	content: '';
	position: absolute;
	top: -4.5rem;
	left: 2.0rem;
	width: 7.4rem;
	height: 10.2rem;
	background: url(../../images/hapr_cp16_3b/btn_facescrub_facewash.png)no-repeat center/contain;
}
.offer.cleansing .btn a::before {
	content: '';
	position: absolute;
	top: -4.7rem;
	left: 3.6rem;
	width: 3.7rem;
	height: 10.2rem;
	background: url(../../images/hapr_cp16_3b/btn_cleansing.png)no-repeat center/contain;
}
.offer.facesoap .btn a::before {
	content: '';
	position: absolute;
	top: 0.7rem;
	left: 1.9rem;
	width: 8.5rem;
	height: 5.2rem;
	background: url(../../images/hapr_cp16_3b/btn_facesoap.png)no-repeat center/contain;
}
.offer .btn a::after {
	content: '';
    position: absolute;
    top: 50%;
    right: 2rem;
    width: 2.7rem;
    height: 0.5rem;
    margin: 0 auto;
    transform: translateY(-50%);
    background: url(../../images/hapr_cp16_3b/btn_arrow_white.png) no-repeat center / contain;
}
@media (min-width: 768px) {
	.offer .btn a {
		opacity: 1;
		transition: opacity 0.3s;
	}
	.offer .btn a:hover {
		opacity: .5;
	}
	.offer .btn a::after {
		transition: transform 0.7s;
	}
	.offer .btn a:hover::after {
		transform: translateY(-50%) translateX(0.6rem);
	}
}
.offer + .note {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.offer + .note .btn_modal {
	color: #fff;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	background: transparent;
	text-decoration: underline;
	cursor: pointer;
}
/* =sec_item
-------------------------------------------------------------- */
.sec_item {
	position: relative;
	padding: 2rem 0 11rem;
	z-index: 0;
}
.sec_item.light_blue::after {
    content: '';
    position: absolute;
    top: 33.8rem;
    right: 0;
    width: 10.1rem;
    height: calc(100% - 33.8rem);
    background: url(../../images/hapr_cp16_3b/bg_blue_right.png)no-repeat top center/cover;
    z-index: -1;
}
.sec_item.light_green::after {
    content: '';
    position: absolute;
    top: 33.8rem;
    right: 0;
    width: 10.1rem;
    height: calc(100% - 33.8rem);
    background: url(../../images/hapr_cp16_3b/bg_green_right.png)no-repeat top center/cover;
    z-index: -1;
}
.sec_item.cream::after {
    content: '';
    position: absolute;
    top: 42.4rem;
    right: 0;
    width: 4.6rem;
    height: calc(100% - 42.4rem);
    background: url(../../images/hapr_cp16_3b/bg_cream_right.png)no-repeat top center/cover;
    z-index: -1;
}
.sec_item.light_blue .head {
	color: var(--dark_blue);
	border-color: var(--dark_blue);
}
.sec_item.light_green .head {
	color: var(--dark_gold);
	border-color: var(--dark_gold);
}
.sec_item.cream .head {
	color: var(--dark_brown);
	border-color: var(--dark_brown);
}
.sec_item .head {
	position: relative;
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	padding: 1rem 0;
	margin: 0 1.8rem 1rem;
	border-top: 0.1rem solid;
	border-bottom: 0.1rem solid;
}
.sec_item .head::before,
.sec_item .head::after {
	content: '';
	position: absolute;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
}
.sec_item .head::before {
	top: -0.3rem;
	right: 0;
}
.sec_item .head::after {
	bottom: -0.3rem;
	left: 0;
}
.sec_item.light_blue .head::before,
.sec_item.light_blue .head::after {
	background: var(--dark_blue);
}
.sec_item.light_green .head::before,
.sec_item.light_green .head::after {
	background: var(--dark_gold);
}
.sec_item.cream .head::before,
.sec_item.cream .head::after {
	background: var(--dark_brown);
}
.sec_item .item_ttl {
	position: relative;
	font-size: 2.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	margin: 0 0 3.2rem;
	z-index: 1;
}
.sec_item.light_blue .item_ttl {
	color: var(--blue);
}
.sec_item.light_green .item_ttl {
	color: var(--gold);
}
.sec_item.cream .item_ttl {
	color: var(--dark_pink);
}
.sec_item .item_ttl .plus {
	display: block;
	line-height: 1;
	width: 2.5rem;
	margin: 0.5rem auto;
}
.sec_item .img {
	position: relative;
    margin: 0 0 1.3rem;
    z-index: 0;
}
.sec_item .img::before {
    content: '';
    position: absolute;
    top: -5.2rem;
    left: 0;
    width: 16.3rem;
    height: 20.1rem;
	z-index: -1;
}
.sec_item.light_blue .img::before {
    background: url(../../images/hapr_cp16_3b/bg_blue_img.png)no-repeat center /cover;
}
.sec_item.light_green .img::before {
    background: url(../../images/hapr_cp16_3b/bg_green_img.png)no-repeat center /cover;
}
.sec_item.cream .img::before {
    background: url(../../images/hapr_cp16_3b/bg_cream_img.png)no-repeat center /cover;
}
.sec_item .img img {
	width: 29.3rem;
    margin: 0 auto;
}
.sec_item .text_wrap {
	text-align: left;
	padding: 0 2rem;
}
.sec_item .text_wrap .text {
	font-size: 1.4rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
}
.sec_item.light_blue .text_wrap .text {
	color: var(--dark_blue);
}
.sec_item.light_green .text_wrap .text {
	color: var(--dark_gold);
}
.sec_item.light_blue .text_wrap .text .color {
	color: var(--blue);
}
.sec_item.light_green .text_wrap .text .color,
.sec_item.cream .text_wrap .text .color {
	color: var(--dark_pink);
}
.sec_item .text_wrap .text + .text {
	margin-top: 1.5rem;
}
.sec_item .text_wrap .text .small {
	font-size: 1rem;
}
.sec_item .text_wrap .text .large {
	font-size: 1.6rem;
}
.sec_item .text_wrap .gift {
	position: relative;
	padding: 2rem 2rem 1.5rem;
	margin: 2.4rem 0;
	border: 0.1rem solid;
	border-radius: 0.3rem;
	background: #fff;
}
.sec_item.light_blue .text_wrap .gift {
	border-color: var(--blue);
}
.sec_item.light_green .text_wrap .gift {
	border-color: var(--dark_gold);
}
.sec_item .text_wrap .gift .gift_text {
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	text-align: left;
}
.sec_item.light_green .text_wrap .gift .gift_text {
	color: var(--gold);
}
.sec_item .text_wrap .gift .gift_text .flex {
	display: flex;
	align-items: center;
	margin: 0 0 0.2rem;
}
.sec_item .text_wrap .gift .gift_text .box {
	display: inline-block;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1;
	height: 2.9rem;
	padding: 0.3rem 0.8rem;
	border-radius: 0.3rem;
	box-sizing: border-box;
}
.sec_item.light_blue .text_wrap .gift .gift_text .box {
	background: var(--blue);
}
.sec_item.light_green .text_wrap .gift .gift_text .box {
	background: var(--gold);
}
.sec_item .text_wrap .gift .gift_text .box .num {
	font-size: 2.4rem;
}
.sec_item .text_wrap .gift .gift_text .box.jak {
	font-size: 1.4rem;
	padding: 0.2rem 0.8rem 0.4rem;
}
.sec_item .text_wrap .gift .gift_text .plus {
	display: inline-block;
	flex: 0 0 1.5rem;
	height: 1.5rem;
	margin: 0 0.6rem;
}
.sec_item .text_wrap .gift .gift_text .bg {
	padding: 0 0.6rem;
	background: var(--yellow);
	margin-left: -0.6rem;
}
.sec_item .text_wrap .gift .img_wristband {
	position: absolute;
	top: -1.4rem;
	right: -0.9rem;
	width: 6.4rem;
}
.sec_item .text_wrap .gift .img_amazon {
	position: absolute;
	top: 6rem;
	right: 1rem;
	width: 6rem;
}
.sec_item .text_wrap .notes {
	font-size: 1rem;
	line-height: 1.84;
	letter-spacing: 0.15em;
	margin-top: 1.9rem;
}
/* =sec_item
-------------------------------------------------------------- */
.modal_shadow {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(44, 42, 39, 0.5);
	z-index: 3;
	opacity: 0;
    visibility: hidden;
    transition: opacity .3s, visibility .3s;
}
.modal_shadow.show,
.modal_contents_wrap.show {
	opacity: 1;
	visibility: visible;
}
.modal_contents_wrap {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	margin: 0 auto;
    padding: 3.2rem 1rem 2.8rem;
	opacity: 0;
    visibility: hidden;
    box-sizing: border-box;
	transition: opacity .3s, visibility .3s;
	z-index: 5;
}
.modal_contents_wrap .in {
	position: relative;
    height: 100%;
    overflow: auto;
    box-sizing: border-box;
    scrollbar-width: none;
}
.modal_contents_wrap .contens_wrap {
	padding: 0 0 6.1rem;
	background: var(--cream);
}
.modal_contents_wrap .close {
	position: absolute;
	top: 1.4rem;
	right: 0.3rem;
	width: 2.8rem;
	cursor: pointer;
	z-index: 1;
}
@media (min-width: 768px) {
	.modal_contents_wrap {
		padding: 30px 0;
	}
	.modal_contents_wrap .contens_wrap {
		padding: 3.2rem 1rem 6.1rem;
	}
	.modal_contents_wrap .close {
		top: 10px;
		right: -76px;
		width: 56px;
	}
}
.modal_contents_wrap .contents_head {
	color: var(--dark_pink);
	letter-spacing: 0.1em;
	padding: 1.3rem 0 1.4rem;
	background: #FCF8EB;
}
.modal_contents_wrap .contents_head span {
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.5;
	width: 23.6rem;
	border: 0.1rem solid var(--dark_pink);
	box-sizing: border-box;
	border-radius: 7rem;
}
.modal_contents_wrap .contents_head p {
	font-size: 1.4rem;
	line-height: 1.4;
	margin-top: 0.7rem;
}
.modal_contents_wrap .contents .ttl {
	margin: 0 0 1.3rem;
}
.modal_contents_wrap .contents .head_text_wrap {
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	text-align: left;
	padding: 0 2rem;
	margin: 0 0 2.8rem;
}
.modal_contents_wrap .contents .head_text_wrap .text +.text {
	margin-top: 0.9rem;
}
.modal_contents_wrap .contents .head_text_wrap .text .small {
	font-size: 1.2rem;
}
.modal_contents_wrap .contents .campaign_term {
	padding: 0 2rem;
	margin: 0 0 3.1rem;
}
.modal_contents_wrap .contents .campaign_term > dt,
.modal_contents_wrap .contents .campaign_contents > dt {
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	text-align: left;
	border-bottom: 0.1rem solid #E1DBDA;
}
.modal_contents_wrap .contents .campaign_term > dd {
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: left;
	padding: 0.7rem 0 0;
}
.modal_contents_wrap .contents .campaign_contents > dt {
	margin: 0 2rem;
}
.modal_contents_wrap .contents .campaign_contents > dd {
	padding: 2.4rem 0 0;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents {
	position: relative;
	margin-left: 2rem;
	margin-right: 2rem;
	background: #fff;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents .campaign_num {
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	padding: 0.1rem 1rem;
	background: var(--dark_pink);
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_1 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 3.3rem 2.1rem 1.6rem 0.9rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_1 .text {
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_1 .img {
	position: absolute;
	top: 1.6rem;
	right: 2.1rem;
	width: 7.7rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_2 {
	padding: 3.6rem 0 1.8rem 0.9rem;
	margin: 2.3rem 2rem 6rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_2 .text {
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	text-align: left;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_2 .text .note {
	display: block;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin-top: 1.4rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_2 .img {
	position: absolute;
	top: 1.8rem;
	right: 1rem;
	width: 10.7rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 {
	padding: 4rem 1rem;
	margin: 4rem 2rem 4rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .img {
	width: 21.5rem;
	margin: 0 auto 3.4rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap {
	position: relative;
	padding: 1.5rem 0 2rem;
	border: 0.1rem solid var(--dark_pink) ;
	border-radius: 0.3rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .head {
	position: absolute;
	top: -1.4rem;
	left: 0;
	right: 0;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	width: 21.1rem;
	margin: 0 auto;
	background: var(--dark_pink);
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 1.5rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .gift {
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0.15em;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .point {
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .point .num {
	color: var(--dark_pink);
	font-size: 4rem;
	letter-spacing: 0;
}
.modal_contents_wrap .contents .campaign_contents > dd .campaign_num_contents.num_3 .text_wrap .text {
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.7;
	padding: 0 0.5rem;
	background: #FFF5F5;
	margin-top: -1.5em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap {
	position: relative;
	padding-bottom: 3.8rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap + .item_wrap {
	padding-top: 4rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 24.7rem;
	height: 0.1rem;
	margin: 0 auto;
	background: rgba(116, 81, 79, 0.3);
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num {
	position: relative;
	display: inline-block;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	width: 9.2rem;
	padding: 0 0 0.4rem;
	margin: 0 auto 2.1rem; 
	min-height: 4.9rem;
	border-top: 0.1rem solid var(--dark_brown);
	border-bottom: 0.1rem solid var(--dark_brown);
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num.center {
	display: flex;
	align-items: center;
	justify-content: center;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num::before,
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num::after {
	content: '';
	position: absolute;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--dark_brown);
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num::before {
	top: -0.3rem;
	right: -0.2rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num::after {
	bottom: -0.3rem;
	left: -0.2rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .list_num .num {
	font-size: 2.87rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .head_img {
	margin: 0 0 1.7rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap {
	text-align: left;
	padding: 0 1.8rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .note {
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	margin: 0 0 1rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .item_name {
	color: var(--dark_pink);
	font-size: 2.4rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	white-space: nowrap;
	margin: 0 0 0.5rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .capacity {
	font-size: 1rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .price {
	font-size: 1.4rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .price .num {
	font-size: 3.2rem;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap {
	padding: 1.5rem 0 2.1rem;
	margin: 1.8rem 0 2rem; 
	border: 0.1rem solid var(--dark_pink);
	background: #fff;
	border-radius: 0.3rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price_text {
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	text-align: center;
	margin: 0 0 0.6rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price_text .small {
	font-size: 1rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price_text .border {
	position: relative;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price_text .border::after {
	content: '';
	position: absolute;
    top: 1.2rem;
    left: 0;
    width: 100%;
    height: 0.1rem;
    transform: rotate(-2deg);
    background: var(--dark_pink);
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .row {
	display: flex;
	justify-content: center;
	gap: 0 0.5rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .icon {
	width: 4.5rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price {
	font-size: 1.4rem;
	line-height: 1.3;
	letter-spacing: 0.15em;
	margin-left: 0.9rem;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .detail_wrap .special_wrap .price .num {
	color: var(--dark_pink);
	font-size: 3.4rem;
	letter-spacing: 0.05em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .notes {
	text-align: left;
	padding: 0.7rem 1rem;
	margin: 0 1.8rem;
	border: 0.1rem solid var(--dark_brown);
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .notes li {
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-indent: -1.3em;
	padding-left: 1.3em;
}
.modal_contents_wrap .contents .campaign_contents > dd .item_wrap .notes li + li {
	margin-top: 0.4rem;
}
.modal_contents_wrap .contents .campaign_amazon {
	padding: 0 2rem;
	text-align: left;
	margin: 5.5rem 0 ;
}
.modal_contents_wrap .contents .campaign_amazon > dt,
.modal_contents_wrap .contents .disclaimer > dt {
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.05em;
	font-weight: bold;
	padding: 0 0 0.5rem;
	margin: 0 0 1rem;
	border-bottom: 0.1rem solid #E1DBDA;
}
.modal_contents_wrap .contents .campaign_amazon > dt .small {
	font-size: 1.4rem;
	letter-spacing: 0em;
}
.modal_contents_wrap .contents .campaign_amazon > dd,
.modal_contents_wrap .contents .disclaimer > dd {
	font-size: 1.4rem;
	line-height: 1.3;
}
.modal_contents_wrap .contents .campaign_amazon > dd ul li,
.modal_contents_wrap .contents .disclaimer > dd ul li {
	text-indent: -1em;
	padding-left: 1em;
}
.modal_contents_wrap .contents .campaign_amazon > dd ul li + li,
.modal_contents_wrap .contents .disclaimer > dd ul li + li {
	margin-top: 0.5rem;
}
.modal_contents_wrap .contents .campaign_amazon > dd ul li .small,
.modal_contents_wrap .contents .disclaimer > dd ul li .small {
	font-size: 1.2rem;
}
.modal_contents_wrap .contents .campaign_amazon > dd .other {
	margin-top: 4rem;
}
.modal_contents_wrap .contents .campaign_amazon > dd .other dt,
.modal_contents_wrap .contents .disclaimer > dd dl dt {
	font-weight: bold;
	margin: 0 0 0.5rem;
}
.modal_contents_wrap .contents .disclaimer {
	text-align: left;
	padding: 0 2rem;
	margin: 0 0 3.8rem;
}
.modal_contents_wrap .contents .disclaimer > dd dl {
	margin-top: 1rem;
}
.modal_contents_wrap .btn {
	position: relative;
	width: 31.5rem;
	margin: 0 auto;
}
.modal_contents_wrap .btn .sub {
	position: absolute;
	top: -1.6rem;
	left: 0;
	right: 0;
	width: 21rem;
	margin: 0 auto;
	z-index: 1;
}
.modal_contents_wrap .btn a {
	position: relative;
    display: block;
    color: #fff;
    font-size: 2rem;
    line-height: 1.3;
    letter-spacing: 0.15em;
    padding: 1.6rem 0 1.9rem;
    background: var(--cta_brown);
    border-radius: 20rem;
    filter: drop-shadow(0px 12px 17px rgba(139, 106, 103, 0.32));
}
.modal_contents_wrap .btn a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 1rem;
    width: 2.7rem;
    height: 0.5rem;
    transform: translateY(-50%);
    background: url(../../images/hapr_cp16_3b/btn_arrow_white.png) no-repeat center / contain;
}
@media (min-width: 768px) {
	.modal_contents_wrap .btn a {
		opacity: 1;
	}
	.modal_contents_wrap .btn a:hover {
		opacity: 0.5;
	}
    .modal_contents_wrap .btn a::after {
        transition: transform 0.7s;
    }
	.modal_contents_wrap .btn a:hover::after {
        transform: translateY(-50%) translateX(0.6rem);
    }
}
/* 吸着図アニメーション ここから */
.apaani {
  position: relative;
  overflow: hidden;
}
.apaani img {
  width: 100%;
}
.apaani__el {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.apaani__bg {
  position: relative;
  height: auto;
}
.apaani__test {
  opacity: 0;/* 0  */
}
.apaani__txt {
  overflow: hidden;
  height: 0;
  -webkit-transition: height 2s linear;
  transition: height 2s linear;
}
.apaani__txt1 {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.apaani__txt2 {
  -webkit-transition-delay: 2.5s;
          transition-delay: 2.5s;
}
.apaani__txt4 {
  -webkit-transition-delay: 3.0s;
          transition-delay: 3.0s;
}
.apaani__txt3 {
  -webkit-transition-delay: 3.0s;
          transition-delay: 3.0s;
}
.apaani__txt img {
  position: absolute;
  left: 0;
  top: 0;
}
.apaani.is-run .apaani__txt {
  height: 100%;
}
.apaani.is-run-end .apaani__txt {
  height: 0;
  -webkit-transition: none;
  transition: none;
}
.apaani__old {
  height: auto;
  -webkit-transition: left 1s, top 1s;
  transition: left 1s, top 1s;
}
.apaani__old img {
  display: block;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: -webkit-transform 1s;
  transition: -webkit-transform 1s;
  transition: transform 1s;
  transition: transform 1s, -webkit-transform 1s;
}
.apaani__old1 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.apaani__old1 img {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.apaani__old2 {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.apaani__old2 img {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.apaani__old3 {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.apaani__old3 img {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.apaani__old4 {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.apaani__old4 img {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.apaani__old5 {
  -webkit-transition-delay: 1.3s;
          transition-delay: 1.3s;
}
.apaani__old5 img {
  -webkit-transition-delay: 1.3s;
          transition-delay: 1.3s;
}
.apaani__old6 {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.apaani__old6 img {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.apaani__old7 {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.apaani__old7 img {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.apaani__old8 {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
.apaani__old8 img {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
.apaani__old1 {
  left: 11.5%;
  top: 60.5%;
}
.apaani__old1 img {
  -webkit-transform: translate(-50%, -50%) rotate(4deg);
          transform: translate(-50%, -50%) rotate(4deg);
}
.apaani__old2 {
  left: 48%;
  top: 63.5%;
}
.apaani__old2 img {
  -webkit-transform: translate(-50%, -50%) rotate(5deg);
          transform: translate(-50%, -50%) rotate(5deg);
}
.apaani__old3 {
  left: 64%;
  top: 64%;
}
.apaani__old3 img {
  -webkit-transform: translate(-50%, -50%) rotate(190deg);
          transform: translate(-50%, -50%) rotate(190deg);
}
.apaani__old4 {
  left: 75%;
  top: 61%;
}
.apaani__old4 img {
  -webkit-transform: translate(-50%, -50%) rotate(2deg);
          transform: translate(-50%, -50%) rotate(2deg);
}
.apaani__old5 {
  left: 24%;
  top: 60.5%;
}
.apaani__old5 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani__old6 {
  left: 58.3%;
  top: 59.3%;
}
.apaani__old6 img {
  -webkit-transform: translate(-50%, -50%) rotate(-6deg);
          transform: translate(-50%, -50%) rotate(-6deg);
}
.apaani__old7 {
  left: 39%;
  top: 60.5%;
}
.apaani__old7 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani__old8 {
  left: 81%;
  top: 59.5%;
}
.apaani__old8 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani.is-run .apaani__old1 {
  left: 14.5%;
  top: 29%;
}
.apaani.is-run .apaani__old1 img {
  -webkit-transform: translate(-50%, -50%) rotate(50deg);
          transform: translate(-50%, -50%) rotate(50deg);
}
.apaani.is-run .apaani__old2 {
  left: 50.5%;
  top: 23%;
}
.apaani.is-run .apaani__old2 img {
  -webkit-transform: translate(-50%, -50%) rotate(70deg);
          transform: translate(-50%, -50%) rotate(70deg);
}
.apaani.is-run .apaani__old3 {
  left: 61.5%;
  top: 30%;
}
.apaani.is-run .apaani__old3 img {
  -webkit-transform: translate(-50%, -50%) rotate(163deg);
          transform: translate(-50%, -50%) rotate(163deg);
}
.apaani.is-run .apaani__old4 {
  left: 65.5%;
  top: 15%;
}
.apaani.is-run .apaani__old4 img {
  -webkit-transform: translate(-50%, -50%) rotate(-116deg);
          transform: translate(-50%, -50%) rotate(-116deg);
}
.apaani.is-run .apaani__old5 {
  left: 23.5%;
  top: 31.5%;
}
.apaani.is-run .apaani__old5 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani.is-run .apaani__old6 {
  left: 58%;
  top: 28.5%;
}
.apaani.is-run .apaani__old6 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani.is-run .apaani__old7 {
  left: 30%;
  top: 25.5%;
}
.apaani.is-run .apaani__old7 img {
  -webkit-transform: translate(-50%, -50%) rotate(-81deg);
          transform: translate(-50%, -50%) rotate(-81deg);
}
.apaani.is-run .apaani__old8 {
  left: 65%;
  top: 25%;
}
.apaani.is-run .apaani__old8 img {
  -webkit-transform: translate(-50%, -50%) rotate(-49deg);
          transform: translate(-50%, -50%) rotate(-49deg);
}
.apaani.is-run-end .apaani__old {
  -webkit-transition: none;
  transition: none;
}
.apaani.is-run-end .apaani__old img {
  -webkit-transition: none;
  transition: none;
}
.apaani.is-run-end .apaani__old1 {
  left: 11.5%;
  top: 60.5%;
}
.apaani.is-run-end .apaani__old1 img {
  -webkit-transform: translate(-50%, -50%) rotate(4deg);
          transform: translate(-50%, -50%) rotate(4deg);
}
.apaani.is-run-end .apaani__old2 {
  left: 48%;
  top: 63.5%;
}
.apaani.is-run-end .apaani__old2 img {
  -webkit-transform: translate(-50%, -50%) rotate(5deg);
          transform: translate(-50%, -50%) rotate(5deg);
}
.apaani.is-run-end .apaani__old3 {
  left: 64%;
  top: 64%;
}
.apaani.is-run-end .apaani__old3 img {
  -webkit-transform: translate(-50%, -50%) rotate(190deg);
          transform: translate(-50%, -50%) rotate(190deg);
}
.apaani.is-run-end .apaani__old4 {
  left: 75%;
  top: 61%;
}
.apaani.is-run-end .apaani__old4 img {
  -webkit-transform: translate(-50%, -50%) rotate(2deg);
          transform: translate(-50%, -50%) rotate(2deg);
}
.apaani.is-run-end .apaani__old5 {
  left: 24%;
  top: 60.5%;
}
.apaani.is-run-end .apaani__old5 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani.is-run-end .apaani__old6 {
  left: 58.3%;
  top: 59.3%;
}
.apaani.is-run-end .apaani__old6 img {
  -webkit-transform: translate(-50%, -50%) rotate(-6deg);
          transform: translate(-50%, -50%) rotate(-6deg);
}
.apaani.is-run-end .apaani__old7 {
  left: 39%;
  top: 60.5%;
}
.apaani.is-run-end .apaani__old7 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.apaani.is-run-end .apaani__old8 {
  left: 81%;
  top: 59.5%;
}
.apaani.is-run-end .apaani__old8 img {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
/* 吸着図アニメーション ここまで */
