body {
    color: #3a3a3a;
}

.lower-atf {
    position: relative;
    width: 100%;
    height: 50vh;
    background-color: #eee;
    /*background: url(../images/concept_top01_2601c1.jpg);*/
    background-position: center bottom;
}


/*=======================================================================

営業時間

=======================================================================*/

.hours-txt {
    width: 100%;
    overflow: hidden;
}

.hours-txt h4 {
    position: relative;
    margin: 100px 0 30px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}

.hours-txt h3 {
    font-size: 36px;
    font-weight: normal;
    margin: 20px 0;
}

.hours-txt p {
    line-height: 2.5;
}

.max800{
    max-width: 800px;
    margin: 0 auto;
}


.grid-b-hours {
    display: grid;
    grid-template-columns: 20% 80%;
}

.grid-b-hours dt {
    padding: 24px 0;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.grid-b-hours dd {
    padding: 24px 20px;
    font-weight: bold;
    border-top: 1px solid #eee;
}


.grid-b-hours .dlast {
    border-bottom: 1px solid #eee;
}

.grid-b-hours .tlast:last-child {
    border-bottom: 1px solid #eee;
}


@media screen and (max-width:480px) {
    .grid-b-hours {
        grid-template-columns: 30% 70%;
    }

    .grid-b-hours dd {
        padding: 24px 10px 24px 20px;
    }
}


/*=======================================================================

ご利用料金

=======================================================================*/

.price-txt {
    width: 100%;
    overflow: hidden;
}

.price-txt h4 {
    position: relative;
    margin: 100px 0 30px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}

.price-txt h4 span {
    display: block;
    margin-top: 40px;
    font-size: 14px;
}

.price-txt h3 {
    font-size: 36px;
    font-weight: normal;
    margin: 20px 0;
}

.price-txt p {
    line-height: 2.5;
}

.price h5 {
    margin: 30px auto 20px;
    font-size: 20px;
    font-weight: normal;
    text-align: left;
}





.grid-price .price01 {
    display: grid;
    grid-template-columns: 20% 80%;
}

.price01 dt {
    padding: 24px 0;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price01 dd {
    padding: 24px 20px;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price01 .dlast {
    border-bottom: 1px solid #eee;
}

.price01 .tlast:last-child {
    border-bottom: 1px solid #eee;
}

@media screen and (max-width:480px) {
    .price-txt h4 span {
        text-align: left;
    }

    .grid-price .price01 {
        grid-template-columns: 30% 70%;
    }

    .grid-b-hours dd {
        padding: 24px 10px 24px 20px;
    }
}





.price03 {
    display: grid;
    grid-template-columns: 20% 80%;
}


.price03 dt {
    padding: 24px 0;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price03 dd {
    padding: 24px 20px;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price03 .dlast {
    border-bottom: 1px solid #eee;
}

.price03 .tlast:last-child {
    border-bottom: 1px solid #eee;
}






.btn-kazokuburo {
    margin-top: 20px;
}

.btn-kazokuburo a {
    background-color: #660b06;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 400px;
    height: 60px;
    margin: 0;
    padding: 24px 20px;
    border-radius: 6px;
    position: relative;
    transition: 0.3s;
}

.btn-kazokuburo a:hover {
    background-color: #8b6b69;
    color: #fff;
}


@media screen and (max-width:480px) {
    .price03 {
        grid-template-columns: 30% 70%;
    }

    .price03 dd {
        padding: 24px 10px 24px 20px;
    }
}



/*=======================================================================

アメニティ

=======================================================================*/


.amenities p {
    text-align: center;
    line-height: 2;
    margin-bottom: 50px;
}

.amenities-txt {
    width: 100%;
    overflow: hidden;
}

.amenities-txt h4 {
    text-align: center;
    position: relative;
    margin: 100px 0 30px;
    font-size: 24px;
    font-weight: bold;
}


.amenities-txt h3 {
    font-size: 36px;
    font-weight: normal;
    margin: 20px 0;
}

.amenities-txt p {
    line-height: 2.5;
}

.price04 {
    display: grid;
    grid-template-columns: 20% 80%;
}


.price04 dt {
    padding: 24px 0;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price04 dd {
    padding: 24px 0;
    border-top: 1px solid #eee;
    font-weight: bold;
}

.price04 .dlast {
    border-bottom: 1px solid #eee;
}

.price04 dd:last-child {
    border-bottom: 1px solid #eee;
}


@media screen and (max-width:480px) {
    .amenities p {
        text-align: left;
    }

    .price04 {
        grid-template-columns: 30% 70%;
    }

    .price04 dd {
        padding: 24px 10px 24px 20px;
    }
}



/*=======================================================================

お食事処・休憩処

=======================================================================*/


.facility {
    margin-bottom: 100px;
}


.facility-txt {
    width: 100%;
    overflow: hidden;
}



.facility-txt h4 {
    text-align: center;
    position: relative;
    margin: 100px 0 30px;
    font-size: 24px;
    font-weight: bold;
}

.facility-p p{
    text-align: center;
    line-height: 2;
    margin-bottom: 50px;
}

.facility-container {
    display: grid;
    grid-template-columns: 50% 50%;
    gap: 20px;
    
    /*休憩どころ削除したため*/
    grid-template-columns:100%;
}

.facility-box01 {
    width: calc(80% - 20px);
    margin: 0 auto;
}

.facility-box01 img {
    width: 100%;
    border-radius: 20px;
}

.facility-box01 .btn-kazokuburo a{
    margin: 0 auto;
}

.facility-box02 {
    width: calc(80% - 20px);
    margin: 0 auto;
    
    /*休憩どころ削除したため*/
    width: calc(50% - 20px);
}


.facility-box02 img {
    width: 100%;
    border-radius: 20px;
}

.facility-box02 p {
    line-height: 2.5;
}

.facility-box02 .btn-kazokuburo a{
    margin: 0 auto;
}

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

    .facility-box01 {
        width: calc(100% - 20px);
        margin: 0 auto;
    }

    .facility-box02 {
        width: calc(100% - 20px);
        margin: 0 auto;
    }
}

@media screen and (max-width:530px){
    .facility-container{
        grid-template-columns: 100%;
    }
}



/*=======================================================================

駐車場

=======================================================================*/


.park {
    margin-bottom: 100px;
}


.park-txt {
    width: 100%;
    overflow: hidden;
}

.park-txt h4 {
    text-align: center;
    position: relative;
    margin: 100px 0 30px;
    font-size: 24px;
    font-weight: bold;
}


.park-txt h3 {
    font-size: 36px;
    font-weight: normal;
    margin: 20px 0;
}

.park-txt02 p{
    line-height: 2.5;
    text-align: center;
    margin-bottom: 50px;
}



.park-top-container{
    margin-bottom: 30px;
}

.park-box-top01 img{
    width: 100%;
    border-radius: 20px;
}

.park-box-top01 p{
    margin-top: 10px;
}



.park-container {
    display: grid;
    grid-template-columns: calc(33% - 5px) calc(33% - 5px) calc(33% - 5px);
    gap: 15px;
}

.park-box01 {
    /*width: calc(100% - 15px);*/
    width: 100%;
}

.park-box01 img {
    max-width: 100%;
    width: 100%;
    border-radius: 20px;
}

.park-box01 p{
    margin-top: 10px;
}


@media screen and (max-width:530px){
    .park-container{
        grid-template-columns: 100%;
    }
    .park-box01{
        width: calc(100% - 0px);
    }
}



