/* common */

h1{
    font-size:1rem;
}

h2{
    text-align:center;
}
/* keyvisual */
.keyvisual{
    position:relative;
    margin:0;
    padding:0;
    height:450px;
}

.keyvisual img{
    width:100%;
    height:450px;
    object-fit:cover;
}

.keyvisual-message{
    position:absolute;
    top:25%;
    left:50%;
    text-align:center;
    width:600px;
}

.keyvisual-message h2{
    font-weight:400;
}

.keyvisual-message p{
    font-size:1.2rem;
}

/* top-banner */

.top-banner{
    background:#bf9e6a;
    padding:30px 0;
}

.top-banner h2{
    color:#fff;
    margin-bottom:30px;
}

.top-banner h3{
    color:#fff;
}

.top-banner div.wrap{
    padding:0;
}

.top-banner-box{
    width:785px;
}

.top-banner-box div{
    width:490px;
    color:#e4cc9a;
    background:#130f58;
    padding:30px;
}

.top-banner-box p{
    font-size:0.9rem;
    color:#fff;
    margin:0;
}

/* top-service */

.top-service{
    background:#ebebeb;
}

.top-service-box{
    justify-content:space-between;
}

.top-service-box a{
    width:48%;
    display:block;
}

.top-service-box a:hover{
    opacity:0.8;
}

.top-service-box dt{
    width:40%;
    overflow: hidden;
}

.top-service-box dt img{
    object-fit: cover;
    height:100%;
    width:100%;
}

.top-service-box dd{
    width:60%;
    background:#130f58;
    padding:20px;
    position:relative;
}

.top-service-box dd h3{
    color:#e4cc9a;
}

.top-service-box dd p{
    color:#fff;
}

.top-service-box dd span{
    background:#fff;
    font-size:0.9rem;
    color:#130f58;
    padding:1px 20px;
    position:absolute;
    bottom:5px;
    right:5px;
}

/* top-price */
.top-price{
    background:#ebebeb;
    padding-bottom:50px;
}

.top-price-title{
    position:relative;
}

.top-price-title h2{
    position:absolute;
    left:0;
    right:0;
    top:120px;
    color:#fff;
}

.top-price-title img{
    width:100%;
    object-fit: cover;
    height:425px;
}

.top-price-text{
    position:relative;
    top:-30px;
    z-index:2;
    background:#fff;
    margin-top:-100px;
    padding:50px 50px 0;
    justify-content: space-between;
}

.top-price-text div{
    width:46%;
}

.top-price-text div h3{
    color:#130f58;
}

.top-price-text div h3 span{
    font-size:1rem;
}


.top-price-list{
    background:#fff;
    text-align:center;
    padding:0 50px 50px 50px;
    margin-top:-30px;
}

/* top-info */
.top-info{
    padding:50px 0;
    text-align:center;
}

.top-info div.wrap{
    padding:0;
}

.top-info-box div{
    width:33.3%;
    border-left:1px solid #ccc;
    padding:0 20px;
}

.top-info-box div:last-child{
    border-right:1px solid #ccc;
}

.top-info-box div h3{
    color:#130f58;
    font-size:1rem;
    font-weight:500;
}

.top-info-purchase{
    position:relative;
}

.top-info-purchase article{
    position:absolute;
    top:60px;
    left:0;
    right:0;
}

.top-info-purchase article p{
    margin-bottom:10px;
}

.top-info-purchase article a{
    color:#fff;
    font-size:1.2em;
    padding:8px 60px;
    background:#b08644;
    display:inline-block;

}

.top-info-purchase article a:hover{
    background:#9a7234;
}

.top-info-contact{
    position:relative;
}

.top-info-contact article{
    position:absolute;
    top:60px;
    left:0;
    right:0;
}

.top-info-contact article span{
    font-size:1.5rem;
    font-weight:500;
}

.top-info-payment p{
    font-size:0.9rem;
    margin:0;
}
.top-info-payment img{
    width:100%;
    margin:5px 0;
}

/* top-news */
.top-news{
    background:#ebebeb;
    padding:50px 0;
}

.top-news div.wrap{
    padding:0;
}

.top-news h2{
    color:#130f58;
    line-height:0.7;
}

.top-news h2 span{
    font-size:1rem;
}

.top-news ul li span{
    margin-right:1rem;
}


/* resposive */
@media screen and ( max-width:800px )
{

.sp{
    display:block;
}

.hp{
    display:none;
}

.keyvisual{
    height:400px;
}

.keyvisual img{
    height:400px;
}

.keyvisual-message{
    left:0;
    top:auto;
    bottom:0;
    width:100%;
    background:rgba(251,251,251,0.8);
    padding:20px;
}

.keyvisual-message h2{
    margin-bottom:10px;
}

.keyvisual-message p{
    font-size:1rem;
    margin-bottom:0;
}

/* top-banner */
.top-banner div.wrap{
    padding:0 20px;
}

.top-banner-box{
    width:100%;
}

.top-banner-box div{
    width:100%;
}

.top-banner-box img{
    width:100%;
}

/* top-service */

.top-service{
    padding:30px 0;
}

.top-service-box a{
    width:100%;
}

.top-service-box dl:first-child{
    margin-bottom:20px;
}

.top-service-box dt{
    width:100%;
}

.top-service-box dt{
    height:250px;
}

.top-service-box dd{
    width:100%;
}

/* top-price */
.top-price{
    padding:0 20px 30px;
}

.top-price-title h2{
    top:80px;
}

.top-price-title img{
    height:250px;
    object-position: 0px -70px;
}

.top-price-text{
    top:20px;
    padding:20px 20px 0;
}

.top-price-text div{
    width:100%;
}

.top-price-list{
    padding:0 20px 20px;
    margin-top:20px;
}

.top-price-list img{
    width:100%;
}

/* top-info */
.top-info{
    padding:30px 0;
}

.top-info div.wrap{
    padding:0 20px;
}

.top-info-box div{
    width:100%;
    border-left:none;
    border-bottom:1px solid #ccc;
    padding:20px 0;
}

.top-info-box div:last-child{
    border-right:none;
    border-bottom:none;
}

.top-info-purchase article{
    position:relative;
    top:0;
}

.top-info-contact article{
    position:relative;
    top:0;
}

/* top-news */
.top-news{
    padding:30px 0;
}

.top-news div.wrap{
    padding:0 20px;
}

.top-news h2{
    line-height:1;
}

.top-news h2 span{
    font-size:0.78rem;
}

.top-news ul li span{
    margin-right:0;
    display:block;
}


}