@charset "UTF-8";

#mainArea {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}

#wrap #mainArea main {
	padding: 0 !important;
}

#mainArea img {
	height: auto;
}

#mainArea .visual {
	position: relative;
}

#mainArea .visual::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: min(17.33vw, 130px);
	z-index: 300;
	width: min(50.4vw, 378px);
	height: min(73.867vw, 554px);
	background: url("../images/mv02.png") no-repeat;
	background-size: contain;
}

#mainArea .visual .visual-slide01 {
	position: absolute;
	top: min(41.33vw, 310px);
	left: 0;
	width: 100%;
}

#mainArea .visual .visual-slide01 .slick-slide img {
	width: min(62.67vw, 470px);
}

#mainArea .visual .visual-slide01 .slick-prev, #mainArea .visual .visual-slide01 .slick-next {
	z-index: 200;
	width: min(4.8vw, 36px);
	height: min(4.8vw, 36px);
}

#mainArea .visual .visual-slide01 .slick-prev {
	left: min(18.533vw, 139px);
	background: url("../images/prev02.png") no-repeat;
	background-size: contain;
}

#mainArea .visual .visual-slide01 .slick-next {
	right: min(18.533vw, 139px);
	background: url("../images/next02.png") no-repeat;
	background-size: contain;
}

#mainArea .btn_area {
	width: 100%;
	padding: min(7.067vw, 53px) 0 min(16.8vw, 126px);
}

#mainArea .btn_area ul {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: min(5.733vw, 43px);
}

#mainArea .btn_area ul li p {
	font-size: min(4.533vw, 3.4rem);
	font-weight: bold;
	text-align: center;
}

#mainArea .step .step_slide01 {
	width: 100%;
}

#mainArea .step .step_slide01 .slick-track {
	display: flex !important;
}

#mainArea .step .step_slide01 .slick-slide {
	width: min(100vw, 750px);
	height: auto;
	box-sizing: border-box;
	padding: min(12.533vw, 94px) min(10.267vw, 77px) min(9.867vw, 74px);
}

#mainArea .step .step_slide01 li .wrap {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: min(2.133vw, 16px) min(5.33vw, 40px) min(6vw, 45px);
	background: #fff;
	border-radius: min(1.33vw, 10px);
	box-shadow: 0 0 min(1.33vw, 10px) rgba(0, 0, 0, 0.16);
}

#mainArea .step .step_slide01 li .wrap h4 {
	font-size: min(4.267vw, 3.2rem);
	font-weight: bold;
	line-height: 1.25;
	text-align: center;
}

#mainArea .step .step_slide01 li .wrap h4 img {
	width: min(17.33vw, 130px);
	margin: 0 auto min(6.4vw, 48px);
}

#mainArea .step .step_slide01 li .wrap h4 strong {
	background: linear-gradient(transparent 60%, #ffed7b 30%);
}

#mainArea .step .step_slide01 li .wrap h4 + img {
	margin: min(7.733vw, 58px) auto 0;
}

#mainArea .step .step_slide01 .step01 .wrap h4 + img {
	width: min(20.133vw, 151px);
}

#mainArea .step .step_slide01 .step02 .wrap > img {
	width: min(38.533vw, 289px);
	margin: min(1.867vw, 14px) auto 0;
}

#mainArea .step .step_slide01 .step03 .wrap h4 + img {
	width: min(58.4vw, 438px);
	margin-bottom: min(8.533vw, 64px);
}

#mainArea .step .step_slide01 .step04 .wrap h4 + img {
	width: min(20.133vw, 151px);
}

#mainArea .step .step_slide01 .step01 .wrap a img,
#mainArea .step .step_slide01 .step04 .wrap a img {
	width: min(47.733vw, 358px);
	margin: 0 auto min(3.467vw, 26px);
}

#mainArea .step .step_slide01 li .wrap .step_note01 {
	padding-left: 1em;
	font-size: min(3.733vw, 2.8rem);
	font-weight: 500;
	line-height: 1.25;
	text-indent: -1em;
}

#mainArea .step .step_slide01 li .wrap .step_note02 {
	padding-left: 1.35em;
	margin: min(2vw, 15px) min(5.33vw, 40px) 0;
	font-size: min(3.733vw, 2.8rem);
	font-weight: 500;
	line-height: 1.25;
	text-indent: -1.35em;
}

#mainArea .step .step_slide01 .step02 .wrap a {
	display: table;
	position: relative;
	margin: min(7.2vw, 54px) auto min(4vw, 30px);
	padding: 0 min(6.4vw, 48px) 0 min(3.733vw, 28px);
	font-size: min(3.733vw, 2.8rem);
	font-weight: 500;
	line-height: 1.25;
}

#mainArea .step .step_slide01 .step02 .wrap a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: min(1.6vw, 12px);
	height: min(2.67vw, 20px);
	background: url("../images/icon02.png") no-repeat center;
	background-size: min(1.6vw, 12px) auto;
}

#mainArea .step .step_slide01 .step02 .wrap a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: min(3.2vw, 24px);
	height: min(3.2vw, 24px);
	background: url("../images/icon01.png") no-repeat center;
	background-size: min(3.2vw, 24px) auto;
}

#mainArea .step .step_slide01 .slick-prev, #mainArea .step .step_slide01 .slick-next {
	z-index: 200;
	width: min(7.867vw, 59px);
	height: min(8.267vw, 62px);
}

#mainArea .step .step_slide01 .slick-prev {
	left: min(7.6vw, 57px);
	background: url("../images/prev01.png") no-repeat center;
	background-size: contain;
}

#mainArea .step .step_slide01 .slick-next {
	right: min(7.6vw, 57px);
	background: url("../images/next01.png") no-repeat center;
	background-size: contain;
}

#mainArea .step .step_slide01 .slick-dots {
	bottom: 0;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}

#mainArea .step .step_slide01 .slick-dots li {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
	margin: 0 min(2.8vw, 21px);
}

#mainArea .step .step_slide01 .slick-dots li button {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
}

#mainArea .step .step_slide01 .slick-dots li button::before {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
	border-radius: min(3.467vw, 26px);
	background: #cccccc;
}

#mainArea .step .step_slide01 .slick-dots li.slick-active button::before {
	margin-top: 0;
	background: #079849;
	border: none;
}

#mainArea .merit .merit-list01 .merit01 {
	background: #cff9e1;
}

#mainArea .merit .merit-list01 h3 {
	margin-bottom: min(5.6vw, 42px);
	font-size: min(4.8vw, 3.6rem);
	font-weight: bold;
	line-height: 1.611;
	text-align: center;
}

#mainArea .merit .merit-list01 h3 strong {
	background: linear-gradient(transparent 60%, #ffed7b 30%);
}

#mainArea .merit .merit-list01 h3 img {
	margin-bottom: min(3.733vw, 28px);
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-slide {
	width: min(100vw, 750px);
	padding-bottom: min(29.6vw, 222px);
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 h4 {
	margin-bottom: min(2.67vw, 20px);
	padding-top: min(11.067vw, 83px);
	font-size: min(4.533vw, 3.4rem);
	font-weight: bold;
	line-height: 1;
	text-align: center;
	color: #1ab676;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature01 h4 {
	background: url("../images/merit1_carousel_icon1.png") no-repeat center top;
	background-size: min(7.2vw, 54px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature02 h4 {
	background: url("../images/merit1_carousel_icon2.png") no-repeat center top;
	background-size: min(9.867vw, 74px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature03 h4 {
	background: url("../images/merit1_carousel_icon3.png") no-repeat center top;
	background-size: min(9.067vw, 68px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature04 h4 {
	background: url("../images/merit1_carousel_icon4.png") no-repeat center top;
	background-size: min(8.8vw, 66px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature05 h4 {
	background: url("../images/merit1_carousel_icon5.png") no-repeat center top;
	background-size: min(7.733vw, 58px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature06 h4 {
	background: url("../images/merit1_carousel_icon6.png") no-repeat center top;
	background-size: min(10.133vw, 76px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature07 h4 {
	background: url("../images/merit1_carousel_icon7.png") no-repeat center top;
	background-size: min(11.467vw, 86px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .feature08 h4 {
	background: url("../images/merit1_carousel_icon8.png") no-repeat center top;
	background-size: min(12.133vw, 91px) auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 h4 + img {
	display: block;
	width: min(48vw, 360px);
	margin: 0 auto;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 p {
	margin-top: min(1.33vw, 10px);
	font-size: min(4.533vw, 3.2rem);
	font-weight: 500;
	line-height: 1.3125;
	text-align: center;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-prev, 
#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-next {
	z-index: 200;
	width: min(7.867vw, 59px);
	height: min(8.267vw, 62px);
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-prev {
	left: min(13.733vw, 103px);
	background: url("../images/prev01.png") no-repeat center;
	background-size: contain;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-next {
	right: min(13.733vw, 103px);
	background: url("../images/next01.png") no-repeat center;
	background-size: contain;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-dots {
	bottom: min(12.8vw, 96px);
	right: auto;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-dots li {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
	margin: 0 min(2.8vw, 21px);
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-dots li button {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-dots li button::before {
	width: min(3.467vw, 26px);
	height: min(3.467vw, 26px);
	border-radius: min(3.467vw, 26px);
	background: #cccccc;
}

#mainArea .merit .merit-list01 .merit01 .merit-slide01 .slick-dots li.slick-active button::before {
	margin-top: 0;
	background: #079849;
	border: none;
}

#mainArea .merit .merit-list01 .merit02 {
	padding-bottom: min(10.8vw, 81px);
	background: #fef6d9;
}

#mainArea .merit .merit-list01 .merit02 .wrap {
	display: flex;
	justify-content: space-between;
	padding: 0 min(7.33vw, 55px);
	margin-bottom: min(4.4vw, 33px);
}

#mainArea .merit .merit-list01 .merit02 .wrap .img-area {
	padding-left: min(5.067vw, 38px);
}

#mainArea .merit .merit-list01 .merit02 .wrap .img-area img {
	width: min(31.867vw, 239px);
}

#mainArea .merit .merit-list01 .merit02 .wrap p {
	width: min(42.67vw, 320px);
	padding-top: min(19.467vw, 146px);
	font-size: min(4.267vw, 3.2rem);
	font-weight: 500;
	line-height: 1.5;
}

#mainArea .merit .merit-list01 .merit02 .btn-area {
	width: min(85.33vw, 640px);
	margin: 0 auto min(4.267vw, 32px);
	padding: min(4.4vw, 33px) 0 min(2.933vw, 22px);
	border-radius: min(1.33vw, 10px);
	border: min(4.4vw, 33px) solid #fff;
	background: #f5fffa;
	box-shadow: 0 0 min(1.33vw, 10px) rgba(0, 0, 0, 0.16);
}

#mainArea .merit .merit-list01 .merit02 .btn-area dt {
	margin-bottom: min(4vw, 30px);
	font-size: min(4.8vw, 3.6rem);
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

#mainArea .merit .merit-list01 .merit02 .btn-area dd img {
	display: block;
	width: min(64vw, 480px);
	margin: 0 auto;
}

#mainArea .merit .merit-list01 .merit02 .btn-area dd img + img {
	margin-top: min(2.133vw, 16px);
}

#mainArea .merit .merit-list01 .merit03 {
	padding-bottom: min(17.33vw, 130px);
	background: #cff9e1;
}

#mainArea .merit .merit-list01 .merit03 .wrap {
	width: min(85.33vw, 640px);
	margin: 0 auto;
	padding: min(4vw, 30px) 0 min(5.33vw, 40px);
	border-radius: min(1.33vw, 10px);
	background: #fff;
	box-shadow: 0 0 min(1.33vw, 10px) rgba(0, 0, 0, 0.16);
}

#mainArea .merit .merit-list01 .merit03 .wrap img {
	display: block;
	width: min(85.33vw, 605px);
	margin: 0 auto min(2.67vw, 20px);
}

#mainArea .merit .merit-list01 .merit03 .wrap dl {
	width: min(79.733vw, 598px);
	margin: 0 auto;
	border: min(0.8vw, 6px) solid #25b676;
	border-top: none;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dt {
	position: relative;
	padding: min(1.6vw, 12px) 0 min(1.33vw, 10px);
	background: #25b676;
	cursor: pointer;
	font-size: min(3.733vw, 2.8rem);
	font-weight: bold;
	color: #fff;
	text-align: center;
	line-height: 1;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dt::before {
	content: "";
	position: absolute;
	top: 50%;
	right: min(1.2vw, 9px);
	transform: translateY(-50%);
	width: min(3.067vw, 23px);
	height: min(0.4vw, 3px);
	background: #fff;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dt::after {
	content: "";
	transition: 0.5s all ease;
	position: absolute;
	top: 50%;
	right: min(2.533vw, 19px);
	transform: translateY(-50%);
	width: min(0.4vw, 3px);
	height: min(3.067vw, 23px);
	background: #fff;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dt.active::after {
	opacity: 0;
	transform: translateY(-50%) rotate(270deg);
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dd {
	display: none;
	padding: min(3.2vw, 24px) min(3.2vw, 24px) min(5.067vw, 38px);
	font-size: min(3.33vw, 2.5rem);
	font-weight: 500;
	line-height: 1.52;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dd .merit-terms {
	margin-top: min(4vw, 30px);
	padding-left: 1em;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dd .merit-terms li {
	position: relative;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dd .merit-terms li::before {
	content: "";
	position: absolute;
	top: min(1.467vw, 11px);
	left: -1em;
	width: min(1.867vw, 14px);
	height: min(1.867vw, 14px);
	border-radius: 50%;
	background: #00a08e;
}

#mainArea .merit .merit-list01 .merit03 .wrap dl dd .merit-note {
	padding-left: 1em;
	text-indent: -1em;
}

.anchorLink {
	cursor: pointer;
	color: #0071c3;
	text-decoration: underline !important;
	text-underline-offset: 0.1em;
}

#mainArea .merit .merit-list01 .merit04 {
	padding-bottom: min(25.33vw, 190px);
	background: #fef6d9;
}

#mainArea .merit .merit-list01 .merit04 h3 + img {
	display: block;
	width: min(93.33vw, 700px);
	margin: 0 auto min(3.467vw, 26px);
}

#mainArea .merit .merit-list01 .merit04 .merit-note {
	padding-left: 1em;
	margin: 0 min(4.67vw, 35px) min(5.2vw, 39px);
	font-size: min(4.267vw, 3.2rem);
	font-weight: 500;
	text-indent: -1em;
	line-height: 1.5;
}

#mainArea .merit .merit-list01 .merit04 p + img {
	display: block;
	width: min(71.733vw, 538px);
	margin: min(3.467vw, 26px) auto min(4.4vw, 33px);
}

#mainArea .merit .merit-list01 .merit04 .merit-txt {
	font-size: min(4.8vw, 3.6rem);
	font-weight: bold;
	line-height: 1.5263158;
	text-align: center;
}

#mainArea .merit .merit-list01 .merit04 .merit-txt strong {
	background: linear-gradient(transparent 60%, #ffed7b 30%);
	font-size: min(5.33vw, 4.0rem);
}

#mainArea .merit .merit-list01 .merit05 {
	background: #cff9e1;
	overflow: hidden;
}

#mainArea .merit .merit-list01 .merit05 h3 {
	margin-bottom: min(1.33vw, 10px);
}

#mainArea .merit .merit-list01 .merit05 p {
	font-size: min(4.267vw, 3.2rem);
	font-weight: bold;
	text-align: center;
	line-height: 1.25;
}

#mainArea .merit .merit-list01 .merit05 > img {
	display: block;
	width: min(48vw, 360px);
	margin: min(8vw, 60px) auto max(-35.733vw, -268px);
}

#mainArea .setup {
	padding: min(5.067vw, 38px) 0 min(14.533vw, 109px);
}

#mainArea .setup h2 {
	display: table;
	margin: 0 auto min(4vw, 30px);
	background: linear-gradient(transparent 60%, #ffed7b 30%);
	font-size: min(4.8vw, 3.6rem);
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

#mainArea .setup p {
	margin-bottom: min(4vw, 30px);
	font-size: min(4.267vw, 3.2rem);
	font-weight: bold;
	line-height: 1.25;
	text-align: center;
}

#mainArea .setup ul {
	margin-bottom: min(16vw, 120px);
}

#mainArea .setup p strong {
	background: linear-gradient(transparent 60%, #ffed7b 30%);
	font-size: min(4.8vw, 3.6rem);
	line-height: 1.611;
}

#mainArea .setup a {
	display: block;
	margin-top: min(8.4vw, 63px);
}

#mainArea .setup a img {
	display: block;
	width: min(88vw, 660px);
	margin: 0 auto;
}

#mainArea .precautions {
	padding: 0 min(6vw, 45px);
}

#mainArea .precautions dl dt {
	position: relative;
	padding: 10px min(5.2vw, 39px) 10px 0;
	border-bottom: 1px solid #f0f0f0;
	cursor: pointer;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
}

#mainArea .precautions dl dt::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 7px;
	transform: translateY(-50%);
	width: 16px;
	height: 2px;
	background: #00a08e;
}

#mainArea .precautions dl dt::after {
	content: "";
	transition: 0.5s all ease;
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);
	width: 2px;
	height: 16px;
	background: #00a08e;
}

#mainArea .precautions dl dt.active::after {
	opacity: 0;
	transform: translateY(-50%) rotate(270deg);
}

#mainArea .precautions dl dd {
	display: none;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5882;
}

#mainArea .precautions dl dd strong {
	display: block;
	margin-top: min(4.533vw, 34px);
	font-weight: bold;
	line-height: 1.8235294;
}

#mainArea .precautions dl dd ul {
	margin-top: min(3.2vw, 24px);
	padding-left: 1em;
}

#mainArea .precautions dl dd ul li {
	position: relative;
	margin-bottom: min(1.6vw, 12px);
}

#mainArea .precautions dl dd ul li:last-child {
	margin-bottom: 0;
}

#mainArea .precautions dl dd ul li::before {
	content: "";
	position: absolute;
	top: 7px;
	left: -0.8em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #00a08e;
}

#mainArea .precautions dl dd ul.note {
	padding-left: 1em;
	text-indent: -1em;
}

#mainArea .precautions dl dd ul.note li::before {
	display: none;
}

.floating {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease; /* 0.2秒かけて表示 */;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	padding: 19px 0;
	background: rgba(50, 50, 50, .8);
}

/* クラスがついたら表示 */
.floating.up {
	opacity: 1;
	visibility: visible;
}

.floating ul {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 14px;
}

.floating ul li p {
	margin-bottom: 5px;
	font-size: 1.65rem;
	font-weight: bold;
	text-align: center;
	color: #fff;
	line-height: 1;
}

.floating ul li img {
	height: auto;
    max-width: 390px;
}

#pagetop {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease; /* 0.2秒かけて表示 */;
	position: fixed;
	bottom: 257px;
	right: 10px;
	z-index: 1001;
	width: 40px;
	height: 40px;
}

#pagetop.up {
	opacity: 1;
	visibility: visible;
}

#pagetop:hover img {
	opacity: 1;
}

#pagetop img {
	opacity: 0.8;
}
