@charset "utf-8";



.sec1{
	padding-bottom: 170px;
}
.sec1 .mainimage {
 	margin-bottom: 200px;
}
.sec1 .mainimage img{
	width: 100%;
}
.sec1 .policy_hd {
 	text-align: center;
	margin-bottom: 180px
}
.sec1 .policy_hd .policy_title {
 	font-size: 3.0rem;
	font-weight: bold;
	margin-bottom: 30px;
}
.sec1 .policy_hd .txt {
	font-size: 1.6rem;
 	margin-bottom: 60px;
}
.sec1 .policy_hd img {
 	width: 750px;
	height: auto;
}
.sec1 .policy:not(:last-of-type) {
	margin-bottom: 120px
}
.sec1 .policy h3 {
        width: 100%;
	height: 132px;
    	padding-top: 32px;
    	border-bottom: 1px solid #e3e3e3;
    	position: relative;
	margin-bottom: 60px;
	display: flex;
	align-items: center;
}
.sec1 .policy h3 span {
 	font-size: 2.5rem;
	font-weight: bold;
}
.sec1 .policy h3:before {
 	content: attr(data-sub)"";
	display: block;
	position: absolute;
	width: 100%;
	height: 32px;
	font-size: 1.6rem;
	line-height: 32px;
	color: #fff;
	background: #00a475;
   	 background: -moz-linear-gradient(left, #00a475 0%, #00bdff 100%);
   	 background: -webkit-linear-gradient(left, #00a475 0%,#00bdff 100%);
    	background: linear-gradient(to right, #00a475 0%,#00bdff 100%);
    	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a475', endColorstr='#00bdff',GradientType=1 );
        top: 0;
	left: 0;
	padding-left: 15px;
	box-sizing: border-box;
}
.sec1 .policy h3:after {
    	content: "";
    	width: 160px;
    	height: 1px;
    	display: block;
    	position: absolute;
    	left: 0;
	bottom: -1px;
   	background: #00a475;
    	background: -moz-linear-gradient(left, #00a475 0%, #00bdff 100%);
    	background: -webkit-linear-gradient(left, #00a475 0%,#00bdff 100%);
    	background: linear-gradient(to right, #00a475 0%,#00bdff 100%);
    	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a475', endColorstr='#00bdff',GradientType=1 );
}
.sec1 .policy .cont {
 	display: flex;
}
.sec1 .policy .cont .img {
 	width: 305px;
	margin-right: 90px;
}
.sec1 .policy .cont .img img {
 	width: 100%;
	height: auto;
}
.sec1 .policy .cont .txt {
 	width: 565px;
	line-height: 2.1;
}







/*-------------------------------
	SP専用
-------------------------------*/
@media screen and (max-width:768px) , print{


	.sec1{
		padding-bottom: 18vw;
	}
	.sec1 .mainimage {
    		margin-bottom: 18vw;
	}
	.sec1 .mainimage img{
		width: 100%;
	}
	.sec1 .policy_hd .policy_title {
    		font-size: 1.8rem;
		margin-bottom: 5vw;
	}
	.sec1 .policy_hd {
    		margin-bottom: 18vw;
	}
	.sec1 .policy_hd .txt {
	    	font-size: 1.4rem;
		line-height: 1.4;
		margin-bottom: 6vw;
	}
	.sec1 .policy_hd img {
	 	width: 100%;
	}

	.sec1 .policy:not(:last-of-type) {
		margin-bottom: 12.5vw;
	}
	.sec1 .policy h3 {
	 	height: 32vw;
		padding-top: 3.2rem;
		margin-bottom: 10vw;
	}
	.sec1 .policy h3 span {
	    	font-size: 1.8rem;
		line-height: 1.6;
		padding-left: .5em;
	}
        .sec1 .policy h3:before {
		height: 3.2rem;
	    	font-size: 1.2rem;
		line-height: 3.2rem;
		padding-left: 1em;
	}
	.sec1 .policy h3:after {
	 	width: 30%;
	}
	.sec1 .policy .cont {
	    	flex-direction: column;
	}
	.sec1 .policy .cont .img {
	    	width: 100%;
	    	margin-right: 0;
		margin-bottom: 5vw;
	}
	.sec1 .policy .cont .txt {
	    	width: 100%;
	    	font-size: 1.2rem;
	}




}