
/* ===========================================
 * å…¨ä½“
 * ======================================== */

@import url('css2-NotoSansJPwght100..900_NotoSerifJPwght200300400500600700900_swap.css');

html{
	font-size:62.5%;
}

body{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
	line-height:2;
	font-size:2rem;
	background:#fff;
	color:#000;
	transition:0.5s;
}
.mincho{
	font-family: "Noto Serif JP", serif;
}
a{
	text-decoration:none;
}
a:hover{
	text-decoration:underline;
}
b{
	font-weight:bold;
}
img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}
.inner{
	max-width:1080px;
	margin:0 auto;
}
@media screen and (max-width:1080px){
	.inner{
		padding:0 10px;
		box-sizing:border-box;
	}
}

.pc{
	display:block;
}
@media screen and (max-width:1080px){
	.pc{
		display:none;
	}
}
.sp{
	display:none;
}
@media screen and (max-width:768px){
	.sp{
		display:block;
	}
}
input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

@keyframes bgZoom {
    0% {
		-webkit-transform: scale(1.0, 1.0);
		-moz-transform: scale(1.0, 1.0);
		-ms-transform: scale(1.0, 1.0);
		-o-transform: scale(1.0, 1.0);
		transform: scale(1.0, 1.0);
    }
    50% {
		-webkit-transform: scale(1.1, 1.1);
		-moz-transform: scale(1.1, 1.1);
		-ms-transform: scale(1.1, 1.1);
		-o-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
    }
    100% {
		-webkit-transform: scale(1.0, 1.0);
		-moz-transform: scale(1.0, 1.0);
		-ms-transform: scale(1.0, 1.0);
		-o-transform: scale(1.0, 1.0);
		transform: scale(1.0, 1.0);
    }
}


/* ===========================================
 * header
 * ======================================== */
#header{
	background:rgba(245,245,245,.7);
	width:100%;
	padding:18px 17px;
	box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	right:0;
}
@media screen and (max-width:768px){
	#header{
		padding:10px 10px;
	}
}
.header--logo{
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items: center;
	-webkit-align-items: center;
}
.header--logo__link{
	width:278px;
}
.header--logo__link img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}

.header--txt{
	margin-left:15px;
}
.header--txt p{
	font-size:1.2rem;
	line-height:1.6;
}


/* ===========================================
 * main
 * ======================================== */
.main{
	background:url(../image/main-bg.jpg)no-repeat;
	background-size:cover;
	background-position:center right;
}
@media screen and (max-width:1080px){
	.main{
		background:url(../image/main-bg.jpg)no-repeat;
		background-size:cover;
		background-position:top right 40%;
	}
}


.main--txt{
	max-width:568px;
	padding:130px 0 110px;
}
@media screen and (max-width:768px){
	.main--txt{
		width:70%;
		padding:130px 0 50px;
	}
}
.main--txt img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}

/* ===========================================
 * regist
 * ======================================== */
.register{
	background:rgba(0,0,0,.5);
	padding:45px 0 60px;
}
@media screen and (max-width:480px){
	.register{
		padding:20px 0 30px;
	}
}
.register--txt{
	max-width:650px;
	margin:0 auto;
}
.register--txt img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}
.register--form{
	margin-top:26px;
	padding:0 20px;
	box-sizing:border-box;
}
@media screen and (max-width:768px){
	.register--form{
		margin-top:20px;
		padding:0;
	}
}
.register--form__box{
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items: center;
	-webkit-align-items: center;
	-webkit-justify-content:space-between;
	justify-content: space-between;
}
.register--form__input{
	border-radius:5px;
	background:#fff;
	height:80px;
	line-height:80px;
	font-size:1.6rem;
	width:56%;
	padding:0 0 0 26px;
	box-sizing:border-box;
}
@media screen and (max-width:480px){
	.register--form__input{
		height:60px;
		line-height:60px;
		width:100%;
		padding:0 0 0 10px;
		box-sizing:border-box;
	}
}
.register--form__submit{
	display:blok;
	width:41%;
	background:#f3736e;
	border-bottom:#994845 6px solid;
	color:#fff;
	border-radius:10px;
	font-weight:bold;
	font-size:2.7rem;
	line-height:1.4;
	padding:12px 0;
	position:relative;
	overflow: hidden;
}
@media screen and (max-width:768px){
	.register--form__submit{
		font-weight:bold;
		font-size:2rem;
		line-height:1.4;
		padding:15px 0;
	}
}
@media screen and (max-width:480px){
	.register--form__submit{
		width:100%;
		font-weight:bold;
		font-size:2rem;
		line-height:1.4;
		padding:10px 0;
		margin-top:15px;
	}
}
.register--form__submit:before{
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #b5e7ff;
	transition: 300ms;
	animation: shinyshiny 2.5s ease-in-out infinite;
}
@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}


.register--form__lead{
	width:100%;
	color:#fff;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items: center;
	-webkit-align-items: center;
	line-height:1.6;
}
@media screen and (max-width:480px){
	.register--form__lead{
		line-height:1.4;
	}
}
.register--form__label{
	font-size:1.2rem;
}
@media screen and (max-width:768px){
	.register--form__label{
		font-size:1rem;
	}
}
.register--form__label{
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 5px 30px;
	position: relative;
	width: auto;
}
@media screen and (max-width:480px){
	.register--form__label{
		padding: 2px 0 2px 30px;
	}
}
.register--form__label::before {
	background: #fff;
	border-radius:2px;
	content: '';
	display: block;
	height: 16px;
	left: 5px;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 16px;
}
.register--form__label::after {
	border-right: 3px solid #ed7a9c;
	border-bottom: 3px solid #ed7a9c;
	content: '';
	display: block;
	height: 9px;
	left: 10px;
	margin-top: -7px;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: rotate(45deg);
	width: 5px;
}

input[type=checkbox]:checked + .register--form__label::after {
    opacity: 1;
}

.register--contact{
	margin-top:25px;
	border-top:#fff 1px solid;
	border-bottom:#fff 1px solid;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items: center;
	-webkit-align-items: center;
	padding:10px 0;
}
@media screen and (max-width:768px){
	.register--contact{
		margin-top:15px;
		padding:10px 0;
	}
}
.register--title{
	color:#fff;
	font-size:1.6rem;
	font-weight:bold;
	width:27%;
	border-right:#fff 1px solid;
	box-sizing:border-box;
	text-align:center;
	height:60px;
	line-height:60px;
}
@media screen and (max-width:768px){
	.register--title{
		width:100%;
		border:none;
		text-align:left;
		height:30px;
		line-height:30px;
	}
}
.register--tel{
	width:46%;
	border-right:#fff 1px solid;
	box-sizing:border-box;
	height:60px;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: center;
	-webkit-justify-content: center;
	align-items: center;
	-webkit-align-items: center;
}
@media screen and (max-width:768px){
	.register--tel{
		width:100%;
		height:auto;
		display:block;
		border:none;
		max-width:400px;
	}
}
.register--tel a{
	width:400px;
}

.register--business-hours{
	width:27%;
	padding-left:30px;
	box-sizing:border-box;
}
@media screen and (max-width:768px){
	.register--business-hours{
		width:100%;
		margin-top:15px;
		padding-left:0;
		box-sizing:border-box;
	}
}
.register--business-hours--ttl{
	color:#fff;
	font-size:1.6rem;
	font-weight:bold;
}
.register--business-hours--table th,
.register--business-hours--table td{
	font-size:1.4rem;
	color:#fff;
	text-align:left;
	line-height:1.6;
}

.register--business-hours--table td{
	padding-left:25px;
}

/* ===========================================
 * cont2
 * ======================================== */

.cont2{
	position:relative;
	overflow:hidden;
	padding:60px 0 0;
}
@media screen and (max-width:768px){
	.cont2{
		padding:30px 0 0;
	}
}
.cont2::before{
	content: '';
	display: block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	background:url(../image/cont2-bg.jpg)no-repeat;
	background-size:cover;
	background-position:center bottom;
	animation: bgZoom 20s linear 0s infinite alternate; 
	-moz-animation: bgZoom 20s linear 0s infinite alternate; 
	-webkit-animation: bgZoom 20s linear 0s infinite alternate; 
	transform-origin: center 100%;
	z-index:-1;
}



.cont2--img{
	max-width:909px;
	margin:0 auto;
}


/* ===========================================
 * cont3
 * ======================================== */
.cont3{
	background:#caebdf;
	position:relative;
	padding:80px 0 40px;
}
@media screen and (max-width:768px){


}
@media screen and (max-width:480px){
	.cont3{
		padding:40px 0 20px;
	}

}
.cont3:after{
    content: "";
    position: absolute;
    top:0;
    right: 0;
    width: 0;
    height: 0;
    border-top: 100vh solid #fff;
    border-right: 100vw solid transparent;
    z-index:0;
}
.cont3--ttl{
	position:relative;
	z-index:100;
	width:865px;
	margin:0 auto;
}
@media screen and (max-width:768px){
	.cont3--ttl{
		max-width:865px;
		width:100%;
	}

}
.cont3--box{
	margin-top:30px;
	position:relative;
	z-index:100;
	background:url(../image/cont3-3.png)no-repeat;
	background-position:right bottom;
	background-size:480px auto;
	padding:90px 0 30px;
}
@media screen and (max-width:1080px){
	.cont3--box{
		margin-top:30px;
		position:relative;
		z-index:100;
		background:url(../image/cont3-3.png)no-repeat;
		background-position:center bottom;
		background-size:480px auto;
		padding:20px 0 15px;
	}
}
@media screen and (max-width:768px){
	.cont3--box{
		background:none;
	}
}

.cont3--box__text{
	max-width:760px;
	position:relative;
	z-index:100;
}
.cont3--box__text2{
	margin-top:20px;
}
.cont3--box__img{
	max-width:488px;
	position:absolute;
	right:0;
	top:0;
	z-index:80;
}
.president-message{
	margin-top:120px;
	position:relative;
	z-index:100;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	justify-content: space-between;
	align-items: start;
	-webkit-align-items: start;
}
@media screen and (max-width:480px){
	.president-message{
		margin-top:60px;
	}
}
.message--image{
	width:33%;
	max-width:370px;
}
@media screen and (max-width:480px){
	.message--image{
		width:50%;
		max-width:370px;
		margin:0 auto;
	}
}
.message--body{
	max-width:660px;
	width:65%;

}
@media screen and (max-width:480px){
	.message--body{
		width:100%;
		margin-top:20px;
	}
}
.message--body__text{
	margin-top:30px;
}
@media screen and (max-width:768px){
	.message--body__text{
		margin-top:20px;
	}
}
.message--body p{
	font-size:1.6rem;
}
@media screen and (max-width:768px){
	.message--body p{
		font-size:1.4rem;
	}

}
/* ===========================================
 * cont4
 * ======================================== */
.cont4{
	background:#0ca26c;
	position:relative;
	padding:50px 0;
}
@media screen and (max-width:768px){
	.cont4{
		padding:25px 0;
	}
}
@media screen and (max-width:480px){
	.cont4{
		padding:15px 0;
	}
}
.cont4:after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-30px;
	margin:auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 50px solid transparent;
	border-left: 50px solid transparent;
	border-top: 30px solid #0ca26c;
	border-bottom: 0;
}
.cont4--txt{
	max-width:878px;
	margin:0 auto;
}
@media screen and (max-width:768px){
	.cont4--txt img{
		vertical-align:middle;
	}
}
/* ===========================================
 * cont5
 * ======================================== */
.cont5{
	padding:60px 0;
}
.cont5--txt{
	font-size:3rem;
	text-align:center;
	line-height:1.33;
	font-weight:700;
}
@media screen and (max-width:480px){
	.cont5--txt{
		font-size:2rem;
	}
}
.cont5--txt span{
	color:#da110c;
}

.cont5--txt2{
	text-align:center;
	margin-top:40px;
	font-weight:700;
}
@media screen and (max-width:480px){
	.cont5--txt2{
		margin-top:20px;
		font-size:1.4rem;
	}
}
/* ===========================================
 * cont6
 * ======================================== */
.cont6{
	padding:60px 0;
	background-color:#caebdf;
	position:relative;
}
@media screen and (max-width:480px){
	.cont6{
		padding:30px 0;
	}
}
.cont6:after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:100%;
	background:url(../image/cont6-bg.png)no-repeat;
	background-position:left bottom;
	background-size:454px auto;
}
@media screen and (max-width:768px){
	.cont6:after{
		content:"";
		position:absolute;
		left:0;
		bottom:0;
		width:100%;
		height:100%;
		background:url(../image/cont6-bg.png)no-repeat;
		background-position:left -30% top;
		background-size:60% auto;
	}
}
.cont6 .inner{
	position:relative;
	z-index:100;
}
.cont6-txt{
	max-width:520px;
	width:52%;
	margin:0 auto;
}
.cont6-txt2{
	max-width:684px;
	width:68%;
	margin:16px auto 0;
}
@media screen and (max-width:480px){
	.cont6-txt2{
		margin:8px auto 0;
	}
}
.cont6-txt3{
	max-width:408px;
	width:41%;
	margin:36px auto 0;
}
@media screen and (max-width:480px){
	.cont6-txt3{
		margin:18px auto 0;
	}
}
.cont6-txt4{
	max-width:750px;
	width:75%;
	margin:45px auto 0;
}
@media screen and (max-width:480px){
	.cont6-txt4{
		margin:20px auto 0;
	}
}
.cont6-txt5{
	max-width:850px;
	max-width:85%;
	margin:77px auto 0;
}
@media screen and (max-width:480px){
	.cont6-txt5{
		margin:38px auto 0;
	}
}
/* ===========================================
 * cont7
 * ======================================== */
.cont7{
	background:#f5f5f5;
	padding:76px 0 40px;
	overflow:hidden;
}
@media screen and (max-width:768px){
	.cont7{
		padding:38px 0 20px;
	}
}
@media screen and (max-width:480px){
	.cont7{
		padding:25px 0 15px;
	}
}
.cont7--txt{
	font-size:5rem;
	font-weight:800;
	font-style:italic;
	text-align:center;
}
@media screen and (max-width:768px){
	.cont7--txt{
		font-size:4rem;
	}
}
@media screen and (max-width:480px){
	.cont7--txt{
		font-size:2rem;
	}
}
.cont7--txt2{
	font-size:3rem;
	font-weight:500;
	font-style:italic;
	text-align:center;
	margin-top:12px;
}
@media screen and (max-width:768px){
	.cont7--txt2{
		font-size:2rem;
		margin-top:6px;
	}
}
@media screen and (max-width:480px){
	.cont7--txt2{
		font-size:1.4rem;
	}
}

.cont7-img{
	max-width:780px;
	margin:0 auto;
	position: relative;
}

.cont7-img .item1{
	display:none;
}

.cont7-img .item2 {
	position: relative;
}


/* ===========================================
 * support
 * ======================================== */
.support{
	background:#fff;
	padding:56px 0 80px;
}
@media screen and (max-width:768px){
	.support{
		padding:28px 0 40px;
	}
}
.support--txt{
	font-size:5rem;
	font-weight:700;
	font-style:italic;
	text-align:center;
	line-height:1.4;
}
@media screen and (max-width:768px){
	.support--txt{
		font-size:4rem;
	}
}
@media screen and (max-width:480px){
	.support--txt{
		font-size:2rem;
	}
}
.support--txt2{
	font-size:3rem;
	font-weight:800;
	font-style:italic;
	text-align:center;
}
@media screen and (max-width:768px){
	.support--txt2{
		font-size:1.6rem;
	}
}
.support--box{
	margin-top:50px;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	justify-content: space-between;
}
@media screen and (max-width:768px){
	.support--box{
		margin-top:25px;
	}
}
.support--box__txt{
	max-width:520px;
	width:50%;
}
@media screen and (max-width:480px){
	.support--box__txt{
		width:100%;
	}
}
.support--box__txt p{
	font-weight:600;
}
@media screen and (max-width:768px){
	.support--box__txt p{
		font-size:1.4rem;
	}
}
.support--box__image{
	max-width:500px;
	width:48%;
}
@media screen and (max-width:480px){
	.support--box__image{
		width:90%;
		margin:20px auto 0;
	}
}
/* ===========================================
 * expert
 * ======================================== */
.expert{
	padding:60px 0 80px;
	position:relative;
	overflow:hidden;
}

.expert::before{
	content: '';
	display: block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	background-image:url(../image/expert-bg.jpg);
	background-repeat:no-repeat;
	background-size:50% auto;
	background-position:bottom right;
	animation: bgZoom 20s linear 0s infinite alternate; 
	-moz-animation: bgZoom 20s linear 0s infinite alternate; 
	-webkit-animation: bgZoom 20s linear 0s infinite alternate; 
	transform-origin: center 100%;
	z-index:-1;
}
@media screen and (max-width:768px){
	.expert::before{
		background-image:url(../image/expert-bg.jpg);
		background-repeat:no-repeat;
		background-size:100% auto;
		background-position:bottom right 20%;
		padding:30px 0 40px;
	}
}

.expert-image{
	max-width:487px;
	position:relative;
	overflow:hidden;
}

.expert-image2{
	max-width:624px;
	margin-top:40px;
	position:relative;
	overflow:hidden;
}
.expert-txt{
	max-width:660px;
	margin-top:60px;
}
.expert-txt p{
	font-weight:600;
}
@media screen and (max-width:768px){
	.expert-txt{
		margin-top:30px;
	}
	.expert-txt p{
		font-size:1.4rem;
	}
}
/* ===========================================
 * followup
 * ======================================== */
.followup{
	padding:40px 40px 60px;
	box-sizing:border-box;
}
@media screen and (max-width:1080px){
	.followup{
		padding:40px 0 60px;
		box-sizing:border-box;
	}
}
@media screen and (max-width:768px){
	.followup{
		padding:20px 0 30px;
		box-sizing:border-box;
	}
}
.followup--ttl{
	font-size:5rem;
	font-weight:bold;
	font-style:italic;
	text-align:left;
	line-height:1.6;
}

@media screen and (max-width:768px){
	.followup--ttl{
		font-size:4rem;
	}
}
@media screen and (max-width:480px){
	.followup--ttl{
		font-size:2rem;
	}
}
.followup--ttl span{
	
}

.followup--ttl .bg-wrap{
	display: inline-block;
	position:relative;
}
.followup--ttl .bg-wrap::before{
	background:linear-gradient(transparent 50%, #89c997 50%);
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform-origin: left center;
}
.followup--ttl .bg-wrap .inn {
	color: #000;
	display: inline-block;
	position: relative;
	z-index: 1;
}

.followup--box{
	clear:both;
	margin-top:40px;
	padding:0 20px;
	box-sizing:border-box;
}
.followup--box p{
	font-weight:700;
}
@media screen and (max-width:1080px){
	.followup--box{
		padding:0;
	}
}
@media screen and (max-width:768px){
	.followup--box{
		margin-top:20px;
	}
	.followup--box p{
		font-size:1.4rem;
	}
}



.followup--box img{
	float:right;
	width:400px;
	padding-left:20px;
}
@media screen and (max-width:768px){
	.followup--box img{
		float:none;
		padding-left:0;
	}
}
@media screen and (max-width:768px){
	.followup--box p{
		margin-top:20px;
	}
}


/* ===========================================
 * main2
 * ======================================== */
.main2{
	background-color:rgba(218,218,218,.75);
	padding:60px 0 0;
	position:relative;
}
@media screen and (max-width:768px){
	.main2{
		padding:30px 0 0;
		position:relative;
	}
}
.main2:after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	z-index:-1;
	width:100%;
	height:100%;
	background:url(../image/main2-bg.png)no-repeat;
	background-position:left bottom;
	background-size:661px auto;
}
@media screen and (max-width:768px){
	.main2:after{
		content:"";
		position:absolute;
		left:0;
		bottom:0;
		z-index:-1;
		width:100%;
		height:100%;
		background:url(../image/main2-bg.png)no-repeat;
		background-position:left -30% bottom;
		background-size:70% auto;
	}
}
.main2-txt{
	max-width:773px;
	width:77%;
	margin:0 auto 0;
}

.main2-txt2{
	max-width:592px;
	width:59%;
	margin:40px auto 0;
}
@media screen and (max-width:480px){
	.main2-txt2{
		margin:20px auto 0;
	}
}
.main2-txt3{
	max-width:578px;
	width:57%;
	margin:80px auto 0;
}
@media screen and (max-width:480px){
	.main2-txt3{
		margin:40px auto 0;
	}
}
.main2-txt4{
	max-width:820px;
	width:82%;
	margin:40px auto 80px;
}
@media screen and (max-width:768px){
	.main2-txt4{
		margin:40px auto 40px;
	}
}
@media screen and (max-width:768px){
	.main2-txt4{
		margin:20px auto;
	}
}


/* ===========================================
 * service
 * ======================================== */
.service{
	padding:70px 0 50px;
}
@media screen and (max-width:768px){
	.service{
		padding:35px 0 25px;
	}
}
.service--ttl{
	text-align:center;
	font-size:3rem;
}
@media screen and (max-width:480px){
	.service--ttl{
		font-size:2rem;
	}
}
.service--table{
	max-width:900px;
	width:100%;
	margin:50px auto 0;
}
@media screen and (max-width:768px){
	.service--table{
		margin:25px auto 0;
	}
}
.service--table th,
.service--table td{
	width:30%;
	border:#cccccc 1px solid;
	box-sizing:border-box;
	text-align:center;
	font-size:1.8rem;
	padding:10px 0;
}
@media screen and (max-width:480px){
	.service--table th,
	.service--table td{
		font-size:1.4rem;
		padding:7px 0;
	}
}
.service--table th{
	background:#0ca26c;
	color:#fff;
	font-weight:bold;
}

.service--table td{
	font-weight:bold;
	color:#0ca26c;
}

.service--table td.free{
	font-size:5rem;
	color:#cc0e0a;
	line-height:1.4;
}
@media screen and (max-width:480px){
	.service--table td.free{
		font-size:4rem;
	}
}
.service--table td.free span{
	font-size:10rem;
}
@media screen and (max-width:480px){
	.service--table td.free span{
		font-size:7rem;
	}
}
.service--memo{
	max-width:900px;
	width:100%;
	margin:15px auto 0;
}

.service--memo p{
	font-size:1.4rem;
}

.service--memo dl{
	margin-top:20px;
}

.service--memo dt,
.service--memo dd{
	font-size:1.4rem;
}
@media screen and (max-width:480px){
	.service--memo dt,
	.service--memo dd{
		font-size:1.2rem;
	}
}
/* ===========================================
 * footer
 * ======================================== */
#footer{

}

.footer--top{
	background:#0ca26c;
	padding:30px 0;
}

.footer--logo__link{
	width:278px;
	display:block;
}
.footer--logo__link img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}

.footer--nav{
	margin-top:20px;
}
.footer--menu li{
	display:inline-block;
}

.footer--menu a{
	color:#fff;
	font-size:1.4rem;
	padding:15px;
}
@media screen and (max-width:480px){
	.footer--menu a{
		font-size:1.2rem;
		padding:5px 10px;
	}
}
.footer--bottom{
	background:#f2f2f2;
	padding:40px 0 80px;
}
@media screen and (max-width:480px){
	.footer--bottom{
		padding:20px 0 40px;
	}
}
.footer--bottom__list{
	margin-top:30px;
}
@media screen and (max-width:480px){
	.footer--bottom__list{
		margin-top:15px;
	}
}
.footer--bottom__list:first-of-type{
	margin-top:0;
}

.footer--bottom__list dt{
	font-size:1.6rem;
}
@media screen and (max-width:480px){
	.footer--bottom__list dt{
		font-size:1.4rem;
	}
}
.footer--bottom__list dd{
	font-size:1.2rem;
}

.copyright{
	text-align:center;
	font-size:1rem;
	color:#fff;
	padding:15px 0;
	line-height:1;
	background:#0ca26c;
}










/* ===========================================
 * result
 * ======================================== */
.inner_r{
	padding: 0px 0 0 20px;
	margin:0 auto;
	max-width: 1020px;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-around;
	justify-content:space-around;
}
@media screen and (max-width:768px){
	.inner_r{
		padding: 0px 0 0 0;
		margin:0 auto;
		max-width: 1020px;
	}
}
.r_box_inr{
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	justify-content: space-between;
}

.r_box{
	border: 1px solid #999999;
	max-width:457px;
	width:100%;
	padding:10px 10px 5px;
	margin:20px 10px 0px;
	box-sizing:border-box;
	
}
@media screen and (max-width:768px){


}
.r_left{
	max-width:245px;
	width:53%;
}

.r_left th{
	width:100px;
	font-size:14px;
	line-height:18px;
	font-weight:normal;
	padding:3px 0;
	vertical-align:top;
}

.r_left td{
	font-size:14px;
	line-height:18px;
	font-weight:normal;
	padding:3px 5px 3px 8px;
	vertical-align: middle;
	width:155px;
}

.r_right{
	width:43%;
	max-width:200px;
	position:relative;
	overflow:hidden;
}
.r_right:before{
	content: "";
	display: block;
	padding-top:75%;
}

.r_right img{

	object-fit:cover;
	-o-object-fit: cover;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}



.b_blue{
	background-color: #0ca26c;
	color: #ffffff;
	padding:3px;
	text-align:center;
}

.b_red{
	background-color: #cc0e0a;
	color: #ffffff;
	padding:3px;
	text-align:center;
}

.dt{
	border-bottom: 1px dotted #999999;
}

.bai{
	color: #cc0e0a;
	font-size:28px;
	line-height:30px;
	font-weight:bold;
}

.r_box h3 {
    color: #ffffff;
    font-size: 14px;
    line-height: 18px;
    padding: 5px;
    margin: 0 0 5px 0;
    border: 1px solid #0f3b91;
    background: #1041a5;
    background: -moz-linear-gradient( #0ca26c 0%, #076643 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#0ca26c), to(#076643));
    background: -webkit-linear-gradient( #0ca26c 0%, #076643 100%);
    background: -o-linear-gradient( #0ca26c 0%, #076643 100%);
    background: linear-gradient( #0ca26c 0%, #076643 100%);
}










