/* CSS Document */
main img{
    max-width: 100%;
    width: auto;
}
main section{
    padding-bottom: 10%;
}
.top_wrap {
    text-align: center;
}
.top_wrap .keyV{
    margin: 30px 0;
}
.top_wrap h2{
    margin-bottom: 1em;
}
.top_wrap .salon_btn{
    max-width: 500px;
    padding: 20px;
    background: #fff;
    display: block;
    margin: 30px auto;
    border: 1px solid;
}
.top_wrap .top_caption{
    display: inline-block;
    text-align: left;margin-bottom: 30px;
}
.top_wrap .top_caption p{
    margin-bottom: 1em;
}
.concept .concept_img{
    width: 60%;
}
.concept .concept_caption{
    width: 50%;
    margin-left: -10%;
    padding: 30px;
    background: #fff;
}
.concept .concept_caption p{
    margin-bottom: 1em;
}
.point .point_list{
    align-items: stretch;
    counter-reset: number;
}
.point .point_list .point_item{
    width: calc(100% / 3 - 30px);
}
.point .number{
    font-size: 10px;
    width: 85px;
    height: 85px;
    border-radius: 50%;
    border: 2px solid;
    display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
	-webkit-justify-content: center;
			justify-content: center;
	-webkit-align-items: center;
			align-items: center;
	-webkit-align-content: center;
			align-content: center;
    margin: 0 auto -30px;
    position: relative;
    background: #F0F0EC;
}
.point .number::after{
    counter-increment: number;
    content: counter(number, decimal);
    display: block;
    font-size: 20px;
    width: 100%;
}
.point .point_item dt{
    margin:1em 0;
}
.point .point_item dd{
    text-align: left;
}
.last {
    position: relative;
    height: 450px;
    padding: 0;
}
.last .last_view{
    height: 100%;
}
.last .last_view img{
    width: 100%;
    object-fit: cover;
    object-position: top;
    height: 100%;
}
.last .caption{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.last .caption p{
    line-height: 2;
    margin-bottom: 1em;
}
@media screen and (max-width:768px){
    .concept .concept_img{
        width: 100%;
    }
    .concept .concept_caption{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        margin-top: -30px;
    }
}
@media screen and (max-width:480px){
    .point .point_list .point_item{
        width: calc(100% / 2 - 10px);
    }
    .point .number{
        width: 60px;
        height: 60px;
    }
    .point .number::after{
        font-size: 16px;
    }
    .last{
        height: auto;
    }
    .last .caption{
        position: static;
        transform: translateY(-20%);
    }
    
}
