@charset "UTF-8";



/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/






/* ++++++++++++++++++++++++++++++++++++++++++++++    PC    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* 801px ~ */
@media screen and (min-width: 801px), print {

#header {
	margin-top: -82px;
	z-index: 0;
	position: relative;
	padding-top: 42px;
	}
#header::before {
	position:absolute;
	content:"";
	background-image: url(../img/radius_g.png);
    width: 42px;
    height: 42px;
    right: -1px;
    top: 1px;
	}

#main {
	background-color:#BEE3BE;
	z-index:0;
	position:relative;
	}
	#main .mainimg {
		background-image:url(../img/mainbg.jpg);
		background-size:cover;
		background-position:center;
		background-repeat:no-repeat;
		position:relative;
		-webkit-border-top-left-radius: 30px;
		border-top-left-radius: 30px;
		height:750px;
		}
	#main .mainimg::before {
		position:absolute;
		content:"";
		width:100%;
		height:100%;
		background-color:#009943;
		z-index:-1;
		}
		#main .mainimg > div {
			display:table;
			height:100%;
			}
			#main .mainimg div div {
				display:table-cell;
				vertical-align:middle;
				}

	#main .sec {
		margin-top:160px;
		}
		#main .sec .sec_tit {
			font-size:24px;
			font-weight:bold;
			color:#009943;
			letter-spacing:0.1em;
			vertical-align:bottom;
			line-height:1;
			}
			#main .sec .sec_tit span {
				font-size:15px;
				margin-right:20px;
				}
			#main .sec .sec_tit div {
				display:inline-block;
				}
		#main .sec .sec_txt {
			}
		#main .sec .sec_img {
			}
	#main .sec01 {
		background-image:url(../img/sec01.png);
		background-repeat:no-repeat;
		position:relative;
		min-height:614px;
		}
	#main .sec01 > a {
		display:block;
		}
	#main .sec01::before {
		position:absolute;
		content:"";
		background-image: url(../img/radius_w.png);
		width: 42px;
		height: 42px;
		top: -42px;
		left: 0;
		}
	#main .sec01::after {
		position:absolute;
		z-index:-1;
		content:"";
		background-color:#fff;
		width: 100%;
		height:706px;
		border-bottom-right-radius: 30px;
		-webkit-border-bottom-right-radius: 30px;
		top: -200px;
		left: 0;
		}
		#main .sec01 .wrap {
			position:relative;
			}
		#main .sec01 .sec_tit {
			position:absolute;
			top:-43px;
			left:80px;
			}
		#main .sec01 .sec_txt {
			position:absolute;
			top:-55px;
			right:0px;
			}
		#main .sec01 .sec_img {
			position:absolute;
			top:149px;
			right:0px;
			}
	#main .sec02 {
		overflow:hidden;
		}
		#main .sec02 .sec_tit {
			text-align:right;
			margin:0 80px 20px 0;
			}
			#main .sec02 .sec_tit div {
				width:129px;
				}
		#main .sec02 .sec_block {
			background-color:#D6ECD6;
			width:1000px;
			box-sizing:border-box;
			position:absolute;
			right:0;
			-webkit-border-top-left-radius: 30px;
			-webkit-border-bottom-left-radius: 30px;
			border-top-left-radius: 30px;
			border-bottom-left-radius: 30px;
			padding:40px 40px 300px;
			}
			#main .sec02 .sec_txt {
				width:433px;
				}
		#main .sec02 .slider {
			margin-top:200px;
			width:100%;
			}
			#main .sec02 .slick-slide {
				width:225px !important;
				position:relative;
				padding-bottom:15px;
				margin:auto 22.5px;
				}
			#main .sec02 .slick-slide:nth-of-type(odd) {
				margin-top:75px;
				}
			#main .sec02 .slick-slide::before {
				content:"";
				position:absolute;
				bottom:0;
				left:-10px;
				width:64px;
				height:44px;
				background-repeat:no-repeat;
				background-size:cover;
				z-index:1;
				mix-blend-mode: multiply;
				}
			#main .sec02 .sec_img01::before {
				background-image:url(../img/01.png);
				}
			#main .sec02 .sec_img02::before {
				background-image:url(../img/02.png);
				}
			#main .sec02 .sec_img03::before {
				background-image:url(../img/03.png);
				}
			#main .sec02 .sec_img04::before {
				background-image:url(../img/04.png);
				}
			#main .sec02 .sec_img05::before {
				background-image:url(../img/05.png);
				}
			#main .sec02 .sec_img06::before {
				background-image:url(../img/06.png);
				}
			#main .sec02 .sec_img07::before {
				background-image:url(../img/07.png);
				}
			#main .sec02 .sec_img08::before {
				background-image:url(../img/08.png);
				}
			#main .sec02 .sec_img09::before {
				background-image:url(../img/09.png);
				}
			#main .sec02 .sec_img10::before {
				background-image:url(../img/10.png);
				}
			#main .sec02 .sec_img11::before {
				background-image:url(../img/11.png);
				}
			#main .sec02 .sec_img12::before {
				background-image:url(../img/12.png);
				}
	#main .sec03 {
		background-image:url(../img/sec03.png);
		background-repeat:no-repeat;
		position:relative;
		min-height:614px;
		margin-top:250px;
		}
	#main .sec03::before {
		position:absolute;
		content:"";
		width:100%;
		height:915px;
		z-index:-1;
		margin-top:-140px;
		background-color:#fff;
		-webkit-border-top-left-radius: 30px;
		border-top-left-radius: 30px;
		}
		#main .sec03 > a {
			display: block;
			position: absolute;
			width: 100%;
			}
		#main .sec03 .wrap {
			position:relative;
			}
		#main .sec03 .sec_tit {
			position: absolute;
			top: -35px;
			left: 80px;
			}
			#main .sec03 .sec_tit div {
				width:78px;
				margin-right:20px;
				}
		#main .sec03 .sec_txt {
			position: absolute;
			top: -15px;
			right: 0;
			width:433px;
			}
		#main .sec03 .sec_img {
			position:absolute;
			top:130px;
			right:0;
			}
			#main .sec03 .sec_img li {
				float:left;
				width:243px;
				}
			#main .sec03 .sec_img li:last-child {
				clear:both;
				margin-left:25%;
				}
	#main .sec04 {
		padding-top:40px;
		background-color:#fff;
		}
		#main .sec04 .wrap {
			width:1000px;
			}
		#main .sec04 .sec_tit {
			}
		#main .sec04 .sec_txt {
			}
		#main .sec04 .sec_img {
			margin-left:-50px;
			text-align:center;
			font-weight:bold;
			}
			#main .sec04 .sec_img li {
				float:left;
				margin-left:50px;
				}
			#main .sec04 .sec_img li:nth-of-type(even) {
				margin-top:60px;
				}
			#main .sec04 .sec_img li p {
				margin-top:10px;
				}




.fade0 > * ,
.fade1 > * ,
.fade > *{
    opacity: 0;
}
.fade_l {
    opacity: 0;
    -webkit-transition: all 2s;
    transition: all 2s;
	transform: translate(-80px,0); 
	-webkit-transform: translate(-80px,0); 
}
.fade_r {
    opacity: 0;
    -webkit-transition: all 2s;
    transition: all 2s;
	transform: translate(80px,0); 
	-webkit-transform: translate(80px,0); 
}

.fade_l.fade_on {
    opacity: 1;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}
.fade_r.fade_on {
    opacity: 1;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}



.slick-dotted.slick-slider {
    margin-bottom: 60px !important;
}
.slick-dots {
	text-align:right !important;
	right:20px;
	bottom:-65px !important;
	}
.slick-dots li {
	margin:0 10px !important;
	}
.slick-dots li button:before {
	content:"●" !important;
	}



}




/* ++++++++++++++++++++++++++++++++++++++++++++++    sp    ++++++++++++++++++++++++++++++++++++++++++++++  */
/* ~ 800px */
@media only screen and (max-width: 800px) {

.bg {
	background: #FFF;
}

#read {
	padding: 5%;
	color: #009943;
	background: #FFF;
}



#header {
	margin-top: -58px;
	z-index: 0;
	position: relative;
	padding-top: 21px;
	}
#header::before {
	position:absolute;
	content:"";
	background-image: url(../img/radius_g.png);
	background-size:cover;
    width: 21px;
    height: 21px;
    right: -1px;
    top: 1px;
	}

#main {
	background-color:#BEE3BE;
	z-index:0;
	position:relative;
	}
	#main .mainimg {
		background-color:#009943;
		background-image:url(../img/mainbg.jpg);
		background-size:cover;
		background-position:center;
		background-repeat:no-repeat;
		position:relative;
		-webkit-border-top-left-radius: 21px;
		border-top-left-radius: 21px;
		}
	#main .mainimg .wrap{
		width:100%;
		padding: 10% 0 20% 0;
		box-sizing:border-box;
		text-align:center;
		background-color: rgba(0,0,0,.1);
		-webkit-border-top-left-radius: 21px;
		border-top-left-radius: 21px;
		}
	#main .mainimg .wrap img {
		width:70%;
		height: auto;
		}
		
		
		
		
	#main .mainimg::before {
		position:absolute;
		content:"";
		width:100%;
		height:100%;
		background-color:#009943;
		z-index:-1;
		}
		#main .mainimg > div {
			display:table;
			height:100%;
			}
			#main .mainimg div div {
				display:table-cell;
				vertical-align:middle;
				}

	#main .sec {
		margin-top:80px;
		}
		#main .sec .sec_tit {
			font-size:20px;
			font-weight:bold;
			color:#009943;
			letter-spacing:0.1em;
			vertical-align:bottom;
			line-height:1;
			}
			#main .sec .sec_tit span {
				font-size:15px;
				margin-right:10px;
				}
			#main .sec .sec_tit div {
				display:inline-block;
				}
		#main .sec .sec_txt {
			}
		#main .sec .sec_img {
			}
	#main .sec01 {
		background-image:url(../img/sec01_sp.png);
		background-repeat:no-repeat;
		background-size:152%;
		background-position:75% 50%;
		position:relative;
		min-height:290px;
		width:95%;
		border-top-right-radius: 21px;
		-webkit-border-top-right-radius: 21px;
		border-bottom-right-radius: 21px;
		-webkit-border-bottom-right-radius: 21px;
		}
	#main .sec01::before {
		position:absolute;
		content:"";
		background-image: url(../img/radius_w.png);
		background-size:cover;
		width: 21px;
		height: 21px;
		top: -21px;
		left: 0;
		}
	#main .sec01::after {
		position:absolute;
		z-index:-1;
		content:"";
		background-color:#fff;
		width: 105%;
		height:706px;
		border-bottom-right-radius: 30px;
		-webkit-border-bottom-right-radius: 30px;
		top: -466px;
		left: 0;
		}
		#main .sec01 > a {
			display:block;
			}
		#main .sec01 .wrap {
			position:relative;
			}
		#main .sec01 .sec_tit {
			position:absolute;
			top:-40px;
			left:20px;
			}
		#main .sec01 .sec_txt {
			position:absolute;
			top:-15px;
			right:-10px;
			width:120px;
			}
		#main .sec01 .sec_img {
			position:absolute;
			top:70px;
			right:8px;
			width:95px;
			}
	#main .sec02 {
		margin-top:120px;
		overflow: hidden;
		}
		#main .sec02 .sec_tit {
			text-align:right;
			margin:0 3% 20px 0;
			}
			#main .sec02 .sec_tit div {
				width:129px;
				}
		#main .sec02 .sec_block {
			background-color:#D6ECD6;
			width:85%;
			box-sizing:border-box;
			position:absolute;
			right:0;
			-webkit-border-top-left-radius: 30px;
			-webkit-border-bottom-left-radius: 30px;
			border-top-left-radius: 21px;
			border-bottom-left-radius: 21px;
			padding:30px 30px 260px;
			}
			#main .sec02 .sec_txt {
				width:90%;
				}
		#main .sec02 .slider {
			margin-top:140px;
			width:100%;
			}
			#main .sec02 .slick-slide {
				position:relative;
				padding-bottom:15px;
				margin:auto 15px;
				}
			#main .sec02 .slick-slide:nth-of-type(odd) {
				margin-top:75px;
				}
			#main .sec02 .slick-slide::before {
				content:"";
				position:absolute;
				bottom:0;
				left:-10px;
				width:64px;
				height:44px;
				background-repeat:no-repeat;
				background-size:cover;
				z-index:1;
				mix-blend-mode: multiply;
				}
			#main .sec02 .sec_img01::before {
				background-image:url(../img/01.png);
				}
			#main .sec02 .sec_img02::before {
				background-image:url(../img/02.png);
				}
			#main .sec02 .sec_img03::before {
				background-image:url(../img/03.png);
				}
			#main .sec02 .sec_img04::before {
				background-image:url(../img/04.png);
				}
			#main .sec02 .sec_img05::before {
				background-image:url(../img/05.png);
				}
			#main .sec02 .sec_img06::before {
				background-image:url(../img/06.png);
				}
			#main .sec02 .sec_img07::before {
				background-image:url(../img/07.png);
				}
			#main .sec02 .sec_img08::before {
				background-image:url(../img/08.png);
				}
			#main .sec02 .sec_img09::before {
				background-image:url(../img/09.png);
				}
			#main .sec02 .sec_img10::before {
				background-image:url(../img/10.png);
				}
			#main .sec02 .sec_img11::before {
				background-image:url(../img/11.png);
				}
			#main .sec02 .sec_img12::before {
				background-image:url(../img/12.png);
				}
	#main .sec03 {
		background-image:url(../img/sec03.png);
		background-repeat:no-repeat;
		background-size: 120%;
		position:relative;
		min-height:704px;
		margin-top:140px;
		}
	#main .sec03::before {
		position:absolute;
		content:"";
		width:100%;
		height:915px;
		z-index:-1;
		margin-top:-80px;
		background-color:#fff;
		-webkit-border-top-left-radius: 30px;
		border-top-left-radius: 30px;
		}
		#main .sec03 > a {
			display: block;
			position: absolute;
			width: 100%;
			}
		#main .sec03 .wrap {
			position:relative;
			}
		#main .sec03 .sec_tit {
			position: absolute;
			top: -35px;
			left: 20px;
			}
			#main .sec03 .sec_tit div {
				width:78px;
				margin-right:20px;
				}
		#main .sec03 .sec_txt {
			position: absolute;
			top: 40px;
			right: 0px;
			width:55%;
			}
		#main .sec03 .sec_img {
			position:absolute;
			top:160px;
			right:0;
			left:0;
			margin:auto;
			}
			#main .sec03 .sec_img li {
				width:160px;
				margin:0 auto 40px;
				}
			#main .sec03 .sec_img li:last-child {
				clear:both;
				}
	#main .sec04 {
		padding:160px 0 40px;
		background-color:#fff;
		}
		#main .sec04 .wrap {
			}
		#main .sec04 .sec_tit {
			}
		#main .sec04 .sec_txt {
			}
		#main .sec04 .sec_img {
			text-align:center;
			font-weight:bold;
			}
			#main .sec04 .sec_img li {
				margin:0 auto 20px;
				width:230px;
				}
			#main .sec04 .sec_img li:nth-of-type(even) {
				}
			#main .sec04 .sec_img li p {
				margin-top:5px;
				}




.fade1 > * ,
.fade > *{
    opacity: 0;
}
.fade_l {
    opacity: 0;
    -webkit-transition: all 2s;
    transition: all 2s;
	transform: translate(-10%,0); 
	-webkit-transform: translate(-10%,0); 
}
.fade_r {
    opacity: 0;
    -webkit-transition: all 2s;
    transition: all 2s;
	transform: translate(10%,0); 
	-webkit-transform: translate(10%,0); 
}

.fade_l.fade_on {
    opacity: 1;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}
.fade_r.fade_on {
    opacity: 1;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}


.slick-dotted.slick-slider {
    margin-bottom: 50px !important;
}
.slick-dots {
	bottom:-55px !important;
	}
.slick-dots li {
	margin:0 0.7% !important;
	}
.slick-dots li button:before {
	content:"●" !important;
	}




}