@charset "utf-8";

.hero{
	background: url("../img/index_fv_bg.jpg") top center no-repeat;
	background-size: auto;
	padding: 15% 0 22% 0;
}
.hero h1{
    margin-top: 5%;
}
.hero h2{
    margin-top: 0%;
}
.hero h3{
    margin-top: 5%;
}

.about{
	background: url("../img/index_img01.jpg") bottom center no-repeat;
	background-size: auto;
	padding: 5% 0 40% 0;
}
.about h2{
    color: #fff;
    font-size: 36px;
}
.about h2 span{
    font-size: 16px;
    display: block;
    margin: 0;
    padding: 0;
    line-height: 1em;
}
.about p{
    margin-top: 5%;
    color: #dfdfdf;
    font-size: 18px;
    width: 60%;
    margin: 5% auto 0 auto;
}

.welcome{
	background: url("../img/index_img03.jpg") bottom center no-repeat;
	background-size: auto;
	padding: 5% 0 30% 0;
}
.welcome h2{
    background: #fff;
    line-height: 1em;
    display: block;
    color: #333;
    padding: 1em;
    position: relative;
    width: 80%;
    margin: 0 auto 5% auto;
}
.welcome h2::before{
	content: "";
	display: block;
	width: 100%;
	height: 50px;
	background: url("../img/index_img02.png") bottom center no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -50px;
	left: 0;
}
.welcome ul{width: 80%;margin: auto;text-align: left;font-size: 18px;}
.welcome ul li{list-style-type: disc;margin-top: 2%;}

.feature{
    padding: 8% 0;
}
.feature_wrap{
    width: 80%;
    margin: auto;
}
.feature_box{
    text-align: right;
    padding-bottom: 5%;
}
.feature_box:last-child{
    padding-bottom: 0%;
}
.feature_box h3{
    position: relative;
    padding-left: 7em;
    text-align: left;
    color: #fff;
    display: block;
    height: 3em;
    line-height: 3em;
}
.feature_box h3.line2{
    line-height: 1.5em;
}
.feature_box h3 span{
    position: absolute;
    top: 0;
    left: 0;
    font-size: 60px;
    width: 2em;
    line-height: 1em;
    text-align: left;
    border-right: 1px solid #fff;
}
.feature_box p{}
.feature_box p.img{
    margin-top: 1%;
}
.feature_box p.img img{
	width: 100%;
}
.feature_box p.txt{
    text-align: left;
    font-size: 16px;
}
.feature_box a{
	text-decoration: underline;
	font-size: 16px;
}

.fee{}
.fee h2{}
.fee h3{
    font-size: 24px;
    margin-bottom: 2%;
}
.fee dl{
    width: 24em;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}
.fee dl dt{
    width: 12em;
    padding: 1em 1em;
    box-sizing: border-box;
    border-bottom: 1px dotted #ccc;
}
.fee dl dd{
    width: 12em;
    padding: 1em 1em;
    box-sizing: border-box;
    border-bottom: 1px dotted #ccc;
}
.fee p{
    text-align: right;
    width: 28em;
    margin: 2% auto 0 auto;
}



@media screen and (max-width:480px){

.hero{
	background: url("../img/index_fv_bg.jpg") top center no-repeat;
	background-size: contain;
	padding: 15% 0 22% 0;
}
.hero h1{
    margin-top: 5%;
}
.hero h2{
    margin-top: 0%;
}
.hero h3{
    width: 90%;
    margin: 5% auto 0 auto;
}

.about{
	background: url("../img/index_img01.jpg") bottom center no-repeat;
	background-size: contain;
	padding: 5% 0 70% 0;
}
.about h2{
    color: #fff;
    font-size: 30px;
}
.about h2 span{
    font-size: 16px;
    display: block;
    margin: 0;
    padding: 0;
    line-height: 1em;
}
.about p{
    margin-top: 5%;
    color: #dfdfdf;
    font-size: 18px;
    width: 90%;
    margin: 5% auto 0 auto;
}

.welcome{
	background: url("../img/index_img03.jpg") bottom center no-repeat;
	background-size: contain;
	padding: 10% 0 50% 0;
}
.welcome h2{
    width: 90%;
    font-size: 16px;
    margin: 0 auto 5% auto;
}
.welcome h2::before{
	content: "";
	display: block;
	width: 100%;
	height: 50px;
	background: url("../img/index_img02.png") bottom center no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -50px;
	left: 0;
}
.welcome ul{width: 80%;margin: auto;text-align: left;font-size: 16px;}
.welcome ul li{list-style-type: disc;margin-top: 2%;}

.feature{
    padding: 8% 0 8% 0;
}
.feature_wrap{
    width: 90%;
    margin: auto;
}
.feature_box{
    text-align: right;
    padding-bottom: 8%;
}
.feature_box:last-child{
    padding-bottom: 0%;
}
.feature_box h3{
    position: relative;
    padding: 2em 0 2% 0;
    height: auto;
    line-height: 1.2em !important;
    font-size: 18px;
}
.feature_box h3.line2{
    line-height: 1.5em;
}
.feature_box h3 span{
    position: absolute;
    top: 0;
    left: 0;
    font-size: 30px;
    width: 2em;
    line-height: 1em;
    text-align: left;
    border-right: none;
}
.feature_box p{}
.feature_box p.img{
    margin-top: 1%;
}
.feature_box p.img img{
	width: 100%;
}
.feature_box p.txt{
    font-size: 15px;
}
.feature_box a{
	text-decoration: underline;
	font-size: 16px;
}

.fee{
    padding: 8% 0;
}
.fee h2{}
.fee h3{
    font-size: 18px;
    margin-bottom: 2%;
}
.fee dl{
    width: 90%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}
.fee dl dt{
    width: 40%;
    padding: 1em .5em 1em 1em;
    box-sizing: border-box;
    border-bottom: 1px dotted #ccc;
}
.fee dl dd{
    width: 60%;
    padding: 1em 1em 1em .5em;
    box-sizing: border-box;
    border-bottom: 1px dotted #ccc;
}
.fee p{
    text-align: right;
    width: 90%;
    margin: 2% auto 0 auto;
}
}
