@charset "utf-8";
/* CSS Document */
.mt20{margin-top: 20px;}
.mb30{margin-bottom: 30px;}

ul {list-style: none;}
a img:hover{opacity: 0.7;}
.marker{background: linear-gradient(transparent 50%, #ddd95b 50%);}

a,
#flow h2,dt,dd,
#attention h2,#attention li,
#Pricelist p,#Pricelist span,
#flow .inner .flow_box dd .mini,
.inner p{
font-family: ryo-gothic-plusn, sans-serif;
font-style: normal;}

h1 .mainbnr{
	text-align: center;
	background-color: #f7f7f7;
	line-height: 0;}
h1 img{
	max-width: 70%;
	margin: 0 auto;}
.inner h2{
	font-size: 30px;
	margin-bottom: 30px;
	color: #298c60;
	text-align: center;
	line-height: 1.4;
	position: relative;}
.inner h2:before{
	content: url(../img/icon_08.webp);
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%);}
.inner h2 span{
	font-size: 80%;
	color: #298c60;}
#pro01,#pro03,#flow,#must,#answer,#other{
	background-color: #f9f8ee;}

#select .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 60px 0;
	text-align: center;}
#select .inner ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;}
#select .inner li{
	width: 23%;}
#select .inner li:nth-child(n+5){
	margin-top: 20px;}
#select .inner li a{
	display: block;
	color: #298c60;
	border: solid 2px #298c60;
	border-radius: 5px;
	padding: 5px;
	font-size: 18px;
	font-weight: bold;}
#select .inner li a:hover{
	color: #fff;
	background-color: #298c60;}

#flow .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}
#flow .inner .flow_box{
	width: 700px;
	margin: 0 auto 60px;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	box-sizing: border-box;
	border: solid 3px #298c60;
	padding: 40px 40px 20px 40px;
	justify-content: space-between;}
#flow .inner .flow_box:last-child{
	margin-top: 0;}
#flow .inner .flow_box.num01:before{
	content: url(../img/num_01.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num02:before{
	content: url(../img/num_02.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num03:before{
	content: url(../img/num_03.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num04:before{
	content: url(../img/num_04.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num05:before{
	content: url(../img/num_05.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num06:before{
	content: url(../img/num_06.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num07:before{
	content: url(../img/num_07.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box.num08:before{
	content: url(../img/num_08.webp);
	position: absolute;
	left: -1%;
	top: -10%;
	width: 90px;
	height: 70px;
	background-color: #f9f8ee;}
#flow .inner .flow_box img{
	align-self: center;
	width: 30%;}
#flow .inner .flow_box dl{
	width: 65%;}
#flow .inner .flow_box dt{
	font-size: 25px;
	font-weight: bold;
	color: #298c60;
	padding-bottom: 5px;}
#flow .inner .flow_box dd{
	font-size: 18px;}
#flow .inner .flow_box .mini{
	font-size: 16px;}

#attention{background-color: #298c60;}
#attention .inner{
	width: 1000px;
	margin: 0 auto;
	text-align: center;
	padding: 40px 0;}
#attention .inner h3{
	display: inline-block;
	font-size: 30px;
	margin-bottom: 30px;
	color: #ffff00;
	border-bottom: solid 1.5px #ffff00;}
#attention .inner li{
	text-align: left;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 2.0;}
#attention .inner li{
	text-indent: -1em;
	padding-left: 10px;}


#Pricelist .inner{
	width: 1000px;
	margin: 0 auto;
	text-align: center;
	padding: 100px 0 60px;}
#Pricelist .inner h2{}
#Pricelist .inner .select{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;}
#Pricelist .inner .select_box{
	width: 48.5%;}
#Pricelist .inner .select_box:nth-child(n+3){
	margin-top: 20px;}
#Pricelist .inner .select_box a{
	display: block;
	border: solid 3px #298c60;
	padding: 15px 0;
	color: #298c60;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.5;}
#Pricelist .inner .select_box a:hover{
	background-color: #298c60;
	color: #fff;}
#Pricelist .inner .select_box a:hover span{
	color: #fff;}
#Pricelist .inner .select_box a span{
	color: #298c60;
	font-weight: bold;
	font-size: 75%;}
#Pricelist .inner .txt{
	text-align: left;
	font-size: 18px;
	margin-bottom: 40px;}

.product .inner{
	width: 1000px;
	margin: 0 auto;
	text-align: center;
	padding: 100px 0 60px;}
.product .inner .txt{
	text-align: left;
	font-size: 18px;
	margin-bottom: 40px;}
.product .inner .txt strong{
	text-decoration: underline;}
.product .inner .subti{
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	background-color: #298c60;
	padding: 5px 0;
	margin-bottom: 30px;}
.product .inner .price_box_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;}
.product .inner .price_box_list .price_box{
	width: 48.5%;}
.product .inner .price_box_list .price_box:nth-child(n+3){
	margin-top: 20px;}
.product .inner .price_box_list .price_box dl{
	border: solid 2px #298c60;
	text-align: center;}
.product .inner .price_box_list .price_box dt{
	border-bottom: solid 2px #298c60;
	font-size: 25px;
	background-color: #f9f9f9;
	color: #298c60;}
.product .inner .price_box_list .price_box .value{
	color: #298c60;
	font-size: 40px;
	font-weight:bold;
	background-color: #fff;}
.product .inner .price_box_list .price_box .link{
	background-color: #298c60;
	color: #fff;
	padding: 5px 0;
	font-size: 23px;}

#must .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}
#understand .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}
#answer .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}
#positive .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}
#other .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 100px 0 60px;}

#must p,#understand p,#answer p,#positive p,#other p{
	font-size: 17px;}
#understand dt{
	font-size: 22px;
	font-weight: bold;}
#understand dd{
	font-size: 17px;}

#other .inner .arrow{
	font-size: 20px;
	margin: 30px 0 50px 0;
	text-align: center;
	position: relative;
	font-weight: bold;}
#other .inner .arrow:after{
	content: "";
	display: inline-block;
	border-style: solid;
	border-width: 20px 12px 0 12px;
	border-color: #000 transparent transparent transparent;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);}
#other .inner ul li{
	width: 60%;
	margin: 0 auto;
	margin-bottom: 20px;}
#other .inner ul li a{
	display: block;
	font-size: 20px;
	color: #fff;
	padding: 13px 0;
	position: relative;
	text-align: center;
	border-radius: 5px;}
#other .inner ul li a:after{
	content: url(../img/icon_09.webp);
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);}
#other .inner ul li .one{
	background-color: #298c60;
	border: solid 2px #298c60;}

@media only screen and (max-width: 768px) {}
@media only screen and (max-width: 768px) {}
@media (max-width: 1024px) {}
@media (max-width: 599px) {
	h1 img{
		max-width: 100%;}
	.inner h2{
		font-size: 25px;}
	.select img{
		width: 100%;}
	#select .inner{
		width: 90%;
		padding: 30px 0;}
	#select .inner li{
		width: 49%;}
	#select .inner li:nth-child(n+3){
		margin-top:10px;}
	#select .inner li a{
		font-size: 16px;}
	#flow .inner .flow_box{
		width: 100%;
		padding: 20px;
		flex-wrap:wrap-reverse;}
	#flow .inner .flow_box dl{
		width: 100%;}
	#flow .inner .flow_box dt{
		font-size: 20px;}
	#flow .inner .flow_box dd{
		font-size: 16px;}
	#flow .inner .flow_box .mini{
		padding-top: 10px;}
	#flow .inner .flow_box img{
		width: 120px;
		margin: 0 auto;}
	#flow .inner .flow_box.num01:before,
	#flow .inner .flow_box.num02:before,
	#flow .inner .flow_box.num03:before,
	#flow .inner .flow_box.num04:before,
	#flow .inner .flow_box.num05:before,
	#flow .inner .flow_box.num06:before,
	#flow .inner .flow_box.num07:before{
		transform: scale(0.8);
		left: -5%;}
	
	#understand .inner,
	#flow .inner,
	#attention .inner,
	#must .inner,
	.product .inner,
	#Pricelist .inner,
	#positive .inner,
	#other .inner,
	#answer .inner{
		width: 90%;}
	#attention .inner h3{
		font-size: 23px;}	
	#Pricelist .inner .select{
		display: block;}
	#Pricelist .inner .select_box{
		width: 100%;}
	#Pricelist .inner .select_box:nth-child(n+2){
		margin-top:20px;}
	#Pricelist .inner .txt{
		font-size: 17px;}
	.product .inner .price_box_list{
		display: block;}
	.product .inner .price_box_list .price_box{
		width: 100%;}
	.product .inner .price_box_list .price_box:nth-child(n+2){
		margin-top:20px;}
	.product .inner .price_box_list .price_box .link{
		font-size: 18px;}
	.product .inner .subti{
		font-size: 18px;
		padding: 10px 10px;
		text-align: left;}
	#other .inner ul{
		display: block;}
	#other .inner ul li{
		width: 100%;}
	#other .inner{
		padding-bottom: 0;}
	#other .inner .arrow{
		font-size: 18px;}
	#attention .inner li{
		font-size: 16px;}
	#understand dt{
		font-size: 20px;}
}
