@charset "UTF-8";
@media screen and (max-width: 767px) {

/*=============================*/
header{
    display: none;
    position: flex;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    font-size: 1.7rem;
    color: #5A5129;
    /*text-shadow: 0 0 3px rgba(0,0,0,.3);*/
    box-sizing: border-box;
    transition: 0;
    overflow-y: auto;
    scrollbar-color: #CCBD88 #ffffff;
    scrollbar-width: thin;
}
    header::-webkit-scrollbar {
        width: 5px;
    }
    header::-webkit-scrollbar-track {
        border-radius: 10px;
	    background: #ffffff;
    }
    header::-webkit-scrollbar-thumb {
        border-radius: 10px;
	    background:#CCBD88;
    }

header .header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: 0s;
    padding:10px;
    box-sizing: border-box;
    background: #F3F2E9;
    border:10px solid #E5E1CE;
    overflow-y: auto;
}

header .header-inner{
    width: 100%;
    height: auto;
    max-width: 100%;
    min-width: 0px;
    margin:0 auto;
    display: block;
    box-sizing: border-box;
    padding:20px 20px;
    text-align: center;
}
    header .logo{
        margin-bottom: 30px;
    }
        header .logo a{
            width: 150px;
            padding:0;
            margin:0 auto;
        }
        header .logo img{
            width: 120px;
            height: auto;
        }
        header .logo img.c1{
            display: inline-block !important;
        }
        header .logo img.c2{
            display: none !important;
        }
    header .nav,
    header .nav-in{
        display: block;
        justify-content: flex-end;
        align-items: center;
    }
        header .nav nav ul{
            display: block;
            justify-content: flex-end;
            align-items: center;
            margin-bottom: 40px;
        }
            header .nav nav ul li{
                padding: 0 20px;
                box-sizing: border-box;
                text-align: center;
                margin-bottom: 15px;
            }
                header .nav nav ul li a{
                    display: block;
                    align-items: center;
                    justify-content: center;
                    height: auto;
                    padding: 8px;
                    background: #E5E1CE;
                    border-radius: 4px;
                }
    header .lang{
        background: url(../img/ico_lang_c3.svg) no-repeat left center;
        background-size: 24px 24px;
        border-bottom: 1px solid #AB9332;
        margin: 0px 20px 50px;
        padding:2px 0;
        box-sizing: border-box;
        position: relative;
    }
        header .lang select{
            background: none;
            border: none;
            color: #AB9332;
            width: 100%;
            text-align: center;
            appearance: none;
            padding: 10px 30px 10px 30px;
            font-size: 1.6rem;
            text-shadow: none;
        }
        header .lang::after{
            content: "";
            border-right:1px solid #AB9332;
            border-bottom:1px solid #AB9332;
            width: 7px;
            height: 7px;
            position: absolute;
            right: 12px;
            top: calc(50% - 4px);
            box-sizing: border-box;
            transform: rotate(45deg);
        }
    header .s-btn{
        display: block;
        text-align: center;
    }
        header .s-btn a{
            display: inline-block;
            position: relative;
            border:1px solid #AB9332;
            border-radius: 4px;
            color: #AB9332;
            font-size: 1.5rem;
            padding: 10px 20px;
            width: 240px;
            text-shadow: none;
            text-decoration: none;
        }
            header .s-btn a::after{
                content: "";
                position: absolute;
                right: 15px;
                top: calc(50% - 3px);
                width: 5px;
                height: 5px;
                border-top: 1px solid #AB9332;
                border-right: 1px solid #AB9332;
                transform: rotate(45deg);
            }
            header .s-btn a span{
                display: inline-block;
                background: url(../img/ico_calender02.svg) no-repeat left center;
                padding:4px 12px 4px 24px;
            }
    header .s-close{
        position: absolute;
        top: 10px;
        right: 10px;
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

/*========*/
header.sc {
    color: #5A5129;
}
header.sc .header{
    background: rgba(243,242,233,1);
}
    header.sc .lang{
        background: url(../img/ico_lang_c3.svg) no-repeat left center;
        background-size: 24px 24px;
        border-bottom: 1px solid #AB9332;
    }
        header.sc .lang select{
            color: #AB9332;
            text-shadow: none;
        }
        header.sc .lang::after{
            border-right:2px solid #AB9332;
            border-bottom:2px solid #AB9332;
        }


/*=============================*/
footer{
    background: #FAF9F5;
    padding: 30px 0 40px;
    margin-bottom: 70px;
}
.footer{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
}
    footer .logo-area{
        position: static;
        order: 2;
        margin-bottom: 20px;
    }
        footer .logo-area .logo{
            width: 100%;
            text-align: center;
            margin-bottom: 20px;
        }
            footer .logo-area .logo .logo01{
                margin-bottom: 10px;
            }
                footer .logo-area .logo .logo01 a{
                    width:100px;
                }
        footer .logo-area p{
            text-align: center;
        }

    footer .navs{
        display: block;
        margin-bottom: 30px;
        order: 1;
        width: 100%;
    }
        footer .navs .nav01{
            padding: 0px 0 40px;
            position: relative;
        }
        footer .navs .nav01::after{
            content: "";
            width: 100%;
            height: 1px;
            background: #E5E1CE;
            box-shadow: 0 1px 0px #fff;
            position: absolute;
            left: 0;
            bottom: 0;
        }
            footer .navs .nav01 ul{
                width: 100%;
                font-size: 1.5rem;
                margin-bottom: 15px;
            }
                footer .navs .nav01 ul li{
                    margin-bottom: 20px;
                    width: 50%;
                    box-sizing: border-box;
                    padding:0 5px;
                }
                    footer .navs .nav01 ul li a{
                        display: block;
                        position: relative;
                        padding-left: 20px;
                    }
                        footer .navs .nav01 ul li a::before{
                            content: "";
                            width: 10px;
                            height: 1px;
                            background: #E1DABB;
                            position: absolute;
                            left: 0;
                            top: 50%;
                        }
            footer .navs .nav01 .sns{
                display: flex;
                justify-content: center;
                align-items: center;
            }
                footer .navs .nav01 .sns >*{
                    margin:0 15px;
                }
                    footer .navs .nav01 .sns img{
                        width: 38px;
                        height: auto;
                    }
        footer .navs .nav02{
            border-left: none;
            font-size: 1.4rem;
            position: relative;
            padding:25px 0;
        }
        footer .navs .nav02::after{
            content: "";
            width: 100%;
            height: 1px;
            background: #E5E1CE;
            box-shadow: 0 1px 0px #fff;
            position: absolute;
            left: 0;
            bottom: 0;
        }
            footer .navs .nav02 li{
                margin-bottom: 0;
            }
            footer .navs .nav02 li:last-child{
                margin-bottom: 0;
            }
                footer .navs .nav02 li a{
                    display: block;
                    padding:5px 10px;
                }
    footer .copys{
        text-align: center;
        order: 3;
    }
        footer .copys .jed{
            margin-bottom: 20px;
        }
        footer .copys .copy{
            font-size: 1.3rem;
        }
            footer .copys .copy .copy01{
                margin-bottom: 10px;
            }

/*=============================*/
.s-header{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 50px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 51;
    padding:0 5px;
    box-sizing: border-box;
    z-index: 99;
    background: rgba(243,242,233,.9);
}
    .s-header .logo a{
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50px;
        padding:0 5px;
    }
    .s-header .logo img{
        width: 70px;
    }
    .s-header .logo img.c1 {
        display:inline-block;
    }
    .s-header .logo img.c2 {
        display:none;
    }
    .s-header.blank-header .logo img.c1{
        display: inline-block;
    }
    .s-header.blank-header .logo img.c2{
        display: none;
    }
.s-footer{
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 51;
    height: 74px;
    padding: 0 10px;
    background: #F3F2E9;
    box-shadow: 0 -1px 0px rgba(229,225,206,.8);
}
    .s-footer .btn{
        display: flex;
        justify-content: flex-start;
        align-items: center;
        font-size: 1.4rem;
    }
        .s-footer .btn >*{
            display: flex;
            align-items: center;
            justify-content: center;
            height: 56px;
            min-width: 120px;
            box-sizing: border-box;
            border-radius: 4px;
            border:1px solid #CCBD88;
            background: #F3F2E9;
            color: #AB9332;
            position: relative;
            text-decoration: none;
            cursor: pointer;
            margin-right: 5px;
        }
            .s-footer .btn >*::after{
                content: "";
                position: absolute;
                right: 9px;
                top: calc(50% - 4px);
                width: 5px;
                height: 5px;
                border-top: 1px solid #AB9332;
                border-right: 1px solid #AB9332;
                transform: rotate(45deg);
            }
            .s-footer .btn >*.res span{
                display: inline-block;
                background: url(../img/ico_calender02.svg) no-repeat left 40%;
                padding:5px 12px 5px 24px;
            }
            .s-footer .btn >*.map span{
                display: inline-block;
                background: url(../img/ico_access.svg) no-repeat left 40%;
                padding:5px 12px 5px 19px;
            }
    .s-footer .menu{
        width: 56px;
        height: 56px;
        padding: 8px 15px 20px;
        box-sizing: border-box;
        background: #AB9332;
        border-radius: 3px;
        cursor: pointer;
        position: relative;
        text-align: center;
    }
    .s-footer .menu:after{
        content: 'MENU';
        position: absolute;
        color: #fff;
        left: 0;
        right: 0;
        bottom: 2px;
        margin: 0 auto;
        text-align: center;
        font-size: 8px;
        font-family: 'EB Garamond', 'Noto Serif JP', YuMincho, 'Yu Mincho', serif;
    }


.pop-block{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.5);
    z-index: 101;
    overflow-y: auto;
    padding: 60px 0 30px;
    box-sizing: border-box;
}
    .pop-block .close{
        width: 40px;
        height: 40px;
        position: absolute;
        right: 10px;
        top: 10px;
        background: url(../img/ico_close_c2.svg) no-repeat center;
        cursor: pointer;
    }
/*=============================*/
.pagetop {
    display: none;
    position: fixed;
    right: 15px;
    bottom: 115px;
    z-index: 50;
}

.pagetop a {
    border-radius: 45px;
    opacity: .7;
}

/*=============================*/
.c-ttl{
    margin-bottom: 20px;
}
    .c-ttl .t1{
        font-size: 3.4rem;
        letter-spacing: 2px;
        margin-bottom: 0;
    }
    .c-ttl .t2{
        letter-spacing: 1px;
    }
    .c-ttl .btn a{
        margin-top: 10px;
    }
/*=======================*/
.sub-ttl{
    margin-bottom: 10px;
    font-size: 2rem;
}
.sub-ttl.ico{
    padding-left: 35px;
    background-size: 22px auto;
}
/*=======================*/
.c-txt{
    line-height: 1.8;
    font-size: 1.4rem;
    margin-bottom: 30px;
}
    .c-txt .link{
        padding-top: 30px;
    }

/*=======================*/
.c-btn{
    display: block;
    text-align: center;
}
    .c-btn a{
        margin:5px auto;
    }
    .c-btn a.w2{
        min-width: 90%;
    }
    .c-btn a.w3{
        min-width: 80%;
    }
/*=======================*/
.c-border{
    margin-bottom: 50px;
}
/*=======================*/
.c-slide{
    margin-bottom: 50px;
}
    .c-slide .item{
        padding:0 1px;
    }

/*=============================*/
.column-wrap{
    display: block;
    margin:0 -10px;
}
    .column-wrap .column{
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 50px;
    }
    .column-wrap.bg .column,
    .column-wrap.no-voice .column{
        background: #FAF9F5;
        border:1px solid #E5E1CE;
        padding: 30px 10px;
    }
/*=============================*/
.main-img{
    position: relative;
    text-align: center;
    width: 100%;
    height: 400px;
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 0;
}
    .main-img .inner{
        position: absolute;
        top: 50%;
        left: 50%;
        height: 420px;
        width: auto;
        transform: translate(-50%,-50%);
    }
    .main-img .inner img{
        max-width: none;
        height: 420px;
    }

/*=============================*/
.page-img{
    height: 160px;
}
    .page-img .img{
        height: 160px;
    }
        .page-img .img img{
            height: 160px;
        }
    .page-img .data{
        display: none;
    }
.page-img.blank{
    height: 50px;
    margin-top: 19px;
}
/*=============================*/
.bread{
    background: none;
    margin: -20px auto 0;
    padding:0 0px;
}
    .bread ul{
        background: #fff;
        justify-content: flex-start;
        flex-wrap: wrap;
        height: auto;
        font-size: 1.3rem;
        padding:5px 10px;
        min-height: 40px;
        box-sizing: border-box;
        line-height: 1.2;
    }
        .bread ul li{
            padding-right: 11px;
            margin-right: 11px;
        }
        .bread ul li:last-child{
            padding-right: 0;
            margin-right: 0;
        }

/*=============================*/
.page-ttl{
    margin-bottom: 30px;
    background-size: 30px auto;
}
    .page-ttl .t1{
        font-size: 2.4rem;
        margin-bottom: 6px;
    }
    .page-ttl .t2{
        font-size: 1.4rem;
        letter-spacing: 2px;
    }
.page-ttl.border{
    padding-top: 45px;
}
/*=============================*/
.anker ul{
    display: block;
}
.anker ul li{
    margin: 5px 0 0;
}
.anker ul li a::after{
    bottom: 50%;
    left: auto;
    right: 10px;
}
/*=============================*/
.empty-data{
    justify-content: space-around;
    width: calc(100% - 30px);
    padding: 13px 15px 16px;
    box-sizing: border-box;
}
    .empty-data dl{
        justify-content: space-around;
        margin-right: 0px;
    }
        .empty-data dl dt{
            font-size: 1.5rem;
            line-height: 1.4;
        }
        .empty-data dl dd{
            margin-right: 5px;
            padding-left: 10px;
            font-size: 1.6rem;
        }
            .empty-data dl dd em{
                font-size: 2.5rem;
                margin-right: 0;
            }



/*=============================*/
.search-tab-outer{
    margin-top: 0px;
}
.search-tab-outer.s2{
    margin-top: 0;
}
.search-tab{
    position: relative;
}
    .search-tab .tabs{
        width: 100%;
        justify-content: space-between;
    }
        .search-tab .tabs > div{
            font-size: 1.6rem;
            margin-right: 0px;
            padding:10px 10px;
            width: calc(50% - 3px);
        }
    .search-tab .search-block{
        padding:20px 0;
    }
        .search-tab .search-block .inner{
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            align-items: center;
            margin: 0 auto 10px;
            width: calc(100% - 20px);
        }
            .search-tab .search-block .inner > *{
                margin-left: 0px;
                margin-bottom: 15px;
                width: 100%;
            }
            .search-tab .search-block .inner .empty-data{
                padding: 7px 10px;
            }
        .search-tab .search-block .inner:last-child{
            margin-bottom: 0;
        }
            .search-tab .search-block .inner .reservation{
                display: flex;
                justify-content: flex-start;
                align-items: flex-start;
                flex-wrap: wrap;
                margin-bottom: 0;
                width: 100%;
            }
                .search-tab .search-block .inner .reservation > div{
                    width: 100%;
                    margin-left: 0px;
                    margin-bottom: 15px;
                }
                .search-tab .search-block .inner .reservation > div.s_ib{
                    display: inline-block;
                    width: auto;
                    min-width: 100px;
                    margin-right: 20px;
                }
                .search-tab .search-block .inner .reservation > div.w2{
                    width: 94px;
                    margin-right: 15px;
                }
                .pop-block .search-tab .search-block .inner .reservation > div.w2{
                    width: 90px;
                    margin-right: 15px;
                }
                .search-tab .search-block .inner .reservation > div.w2:nth-child(4){
                    margin-right: 0;
                }
                .search-tab .search-block .inner .reservation input,
                .search-tab .search-block .inner .reservation select{
                    width: 100%;
                }
                .search-tab .search-block .inner .reservation select.num{
                    width: 100%;
                }
                .search-tab .search-block .inner .reservation select[name=hotel]{
                    width: 100%;
                }
                .search-tab .search-block .inner .reservation select{
                    appearance: none;
                    position: relative;
                    padding-right: 30px;
                }
                .search-tab .search-block .inner .reservation .select{
                    position: relative;
                }
                .search-tab .search-block .inner .reservation .date{
                    position: relative;
                }
                .search-tab .search-block .inner .reservation .f-btn{
                    text-align: center;
                    margin-top: 15px;
                }
                .search-tab .search-block .inner .reservation button{
                    width: 280px;
                    margin:0 auto;
                }
                .search-tab .search-block .inner .reservation button.s2{
                    width: 280px;
                }

        .search-tab .search-block .inner .btn{
            width: 280px;
        }
            .search-tab .search-block .inner .btn a{
                padding:12px 20px 14px;
                min-width: 280px;
            }
            .search-tab .search-block .inner .btn.s2 a{
                min-width: auto;
            }
        .search-tab .search-block .inner .tel{
            font-size: 3.0rem;
            margin: 0 auto;
            text-align: center;
        }
        .search-tab .search-block .inner .reservation p.tel_text{
            width: 100%;
            margin-top: -15px;
            padding-left: 0;
            text-align: center;
            font-size: 1.4rem;
        }



        .search-tab .search-block.search-t02 .inner .btn{

        }
            .search-tab .search-block.search-t02 .inner .btn a{
                border:1px solid #AB9332;
                color: #AB9332;
            }
                .search-tab .search-block.search-t02 .inner .btn a:hover{
                    background: rgba(255,255,255,.03);
                }
                .search-tab .search-block.search-t02 .inner .btn a::after{
                    content: "";
                    position: absolute;
                    right: 15px;
                    top: calc(50% - 2px);
                    width: 4px;
                    height: 4px;
                    border-top: 1px solid #AB9332;
                    border-right: 1px solid #AB9332;
                    transform: rotate(45deg);
                }
        .search-tab .search-block.search-t02 .inner .txt{
            font-size: 1.3rem;
            line-height: 1.4;
        }

    .search-tab.s02 .search-block{
        display: none;
    }
    .search-tab.s02 .search-block.search-t02{
        display: block;
    }


.pop-block .search-tab-outer{
    margin-top: 50px;
    margin-bottom: 40px;
}
/*=============================*/
#contents{
    padding:0px 0px 100px;
}

/*=============================*/
.txt-img{
    position: relative;
    display: block;
    margin-bottom: 45px;
}
.menu-block .txt-img:last-child {
    margin-bottom: 5px;
}
    .txt-img .img-area{
        width: calc(100% + 14px);
        text-align: center;
        margin: 0 -7px;
    }
        .txt-img .img-area img{
            width: 100%;
            max-width: none;
            margin-left: 0;
        }
    .txt-img .txt-area{
        width: 100%;
        min-height: 0;
        margin-top: -40px;
    }
    .txt-img .txt-area .txt-area-inner{
        padding:25px 20px;
    }
        .txt-img .txt-area .ttl{
            font-size: 1.8rem;
            margin-bottom: 15px;
            text-align: left;
        }
        .txt-img .txt-area .txt{
            max-height: none;
            margin-bottom: 15px;
            padding-right: 20px;
            text-align: left;
        }
        .txt-img .txt-area .btn{
            margin-top: 0;
            padding:0;
        }
            .txt-img .txt-area .btn a{
                width: 100%;
                border-radius: 20px;
            }
        .txt-img.ti .img-area img{
            margin-left: 0px;
        }

/*=============================*/
.ttl-txt{
    display: block;
    padding:0 0px;
    margin-bottom: 30px;
}
    .ttl-txt .ttl-area{
        margin-bottom: 20px;
    }
        .ttl-txt .ttl-area .t1{
            padding: 5px 0 5px 35px;
        }
        .ttl-txt .ttl-area .t2{
            font-size: 2.4rem;
        }
    .ttl-txt .txt-area{
        width: 100%;
    }



/*=============================*/
.services-list{
    display: block;
    max-width: 550px;
    margin:0 auto;
}
    .services-list .block{
        width: 100%;
        margin-bottom: 30px;
        text-align: center;
    }
    .services-list .block:last-child{
        margin-bottom: 0;
    }
    .services-list .block a{
        display: block;
        text-decoration: none;
    }
        .services-list .img-area{
            width: 60%;
            display: block;
            margin-left: auto;
            margin-right: auto;
            position: relative;
            overflow: hidden;
            text-align: center;
            border-radius: 5px;
        }
        .services-list .block:first-child .img-area{
            border-radius: 5px;
        }
        .services-list .block:last-child .img-area{
            border-radius: 5px;
        }
            .services-list .block:last-child .img-area img{
                width: 100%;
            }

        .services-list .txt-area{
            padding: 30px 10px 0;
        }
        .services-list .txt-area::before{
            height: 28px;
        }
            .services-list .txt-area .ttl{
                font-size: 2.0rem;
                margin-bottom: 2px;
            }
            .services-list .txt-area .txt{
                font-size: 1.5rem;
                text-align: center;
                line-height: 1.4;
            }
                .services-list .txt-area .txt span{
                    display: inline-block;
                    text-align: left;
                }
        .services-list .link{
            display: inline-block;
            padding: 5px 0px 5px;
            color: #AB9332;
            margin-top: 0;
            font-weight: normal;
            text-align: left;
        }
            .services-list .link span{
                display: inline-block;
                position: relative;
                padding-right: 20px;
            }
            .services-list .link span::after{
                content: "";
                position: absolute;
                right: 5px;
                top: calc(50% - 4px);
                width: 5px;
                height: 5px;
                border-top: 1px solid #AB9332;
                border-right: 1px solid #AB9332;
                transform: rotate(45deg);
            }



/*=============================*/
.campaign-list-outer{
    margin:0 0px 40px;
}
.campaign-list{
    flex-wrap: wrap;
    max-width: 600px;
    margin:0 auto;
}
    .campaign-list .block{
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding:0 10px;
    }
    .campaign-list .block a{
        display: block;
        text-decoration: none;
    }
        .campaign-list .txt-area{
            padding: 15px 0px 0;
        }
            .campaign-list .txt-area .ttl{
                display: block;
                font-size: 1.8rem;
                margin-bottom: 0;
            }
        .campaign-list .cat{
            margin-top: 5px;
        }
            .campaign-list .cat span{
                margin-right: 5px;
                padding:1px 10px 3px;
            }

.campaign-list .slick-prev,
.campaign-list .slick-next{
    top: 30%;
}
.campaign-list .day-use {
    width: 36px;
    height: 36px;
    font-size: 0.5rem;
    line-height: 1.8;
    margin-top: -3.4rem;
    margin-left: -0.8rem;
  }

.campaign-info{
    padding: 30px 12px 10px;
    margin-bottom: 15px;
}
    .campaign-info .campaign-info-ttl{
        font-size: 1.9rem;
        padding:35px 0px 0;
        margin-bottom: 20px;
    }
        .campaign-info .campaign-info-ttl span{
            display: inline-block;
            position: relative;
            padding:0 20px;
        }
        .campaign-info .campaign-info-ttl span::before{
            height: 40px;
        }
        .campaign-info .campaign-info-ttl span::after{
            height: 40px;
        }
    .campaign-info .campaign-info-list{
    }
        .campaign-info .campaign-info-list ul{
            display: block;
        }
            .campaign-info .campaign-info-list ul li{
                margin:10px 0;
                width: 100%;
                display: block;
            }
                .campaign-info .campaign-info-list ul li > div{
                    padding: 15px;
                }
                    .campaign-info .campaign-info-list ul li .cat{
                        margin-right: 0px;
                        margin-bottom: 10px;
                    }
                    .campaign-info .campaign-info-list ul li .txt{
                        font-size: 1.4rem;
                    }


/*=============================*/
.pick-list{
    display: block;
    width: 100%;
    max-width: 500px;
    margin:0 auto 20px;
}
    .pick-list .block{
        width: 100%;
        padding:0 8px;
        margin-bottom: 20px;
    }
    .pick-list .block:nth-last-child(4),
    .pick-list .block:nth-last-child(3),
    .pick-list .block:nth-last-child(2),
    .pick-list .block:nth-last-child(1){
        padding:0 8px;
    }
    .pick-list .block:last-child{
        margin-bottom: 0;
    }
            .pick-list .img-area img{
                width: 100%;
            }

        .pick-list .txt-area{
            position: relative;
            display: block;
            padding: 5px 0px 0;
        }
            .pick-list .txt-area .ttl-e{
                display: block;
                margin-bottom: 0;
            }
            .pick-list .txt-area .ttl{
                display: block;
                font-size: 1.8rem;
                font-weight: normal;
            }
            .pick-list a:hover .txt-area .ttl{
                text-decoration: underline;
            }
/*=============================*/
.banner-list ul {
    display: block;
    padding: 0 8px;
}
.banner-list ul li {
    width: 100%;
    max-width: 500px;
    margin: 0 auto 10px;
}
.banner-list ul li:last-child {
    margin: 0 auto;
}
/*=============================*/
.plan-list{
    display: block;
    max-width: 500px;
    margin:0 auto;
}
    .plan-list .block{
        display: block;
        width: 100%;
        padding:0 1px;
        margin-bottom: 30px;
    }
    .plan-list .block:last-child{
        margin-bottom: 0;
    }
        .plan-list .img-area{
            padding-top: 75%;
        }
        .plan-list .txt-area{
            padding: 10px 15px 0 0;
        }
            .plan-list .txt-area .ttl{
                font-size: 1.7rem;
                margin-bottom: 2px;
            }
            .plan-list .txt-area .txt{
                font-size: 1.4rem;
            }
/*=============================*/
.facilities-list{
    display: block;
    max-width: 500px;
    margin:0 auto;
}
    .facilities-list .block{
        display: block;
        width: 100%;
        margin-bottom: 30px;
    }
    .facilities-list .block:last-child{
        margin-bottom: 0;
    }
        .facilities-list .img-area{
            padding-top: 70%;
        }
        .facilities-list .txt-area{
            padding: 8px 15px 0 0;
        }
            .facilities-list .txt-area .ttl{
                font-size: 1.6rem;
                text-align: left;
            }




/*=============================*/
.faq-list{

}
    .faq-list .block{
        padding:0 0px;
        margin-bottom: 20px;
    }
        .faq-list .block .cat{
            font-size: 1.7rem;
            height: 80px;
            padding:0 45px 0 10px;
            line-height: 1.4;
        }
            .faq-list .block .cat::before{
                content: "";
                width: 20px;
                right: 12px;
                top: calc(50% - 1px);
            }
            .faq-list .block .cat::after{
                content: "";
                height: 20px;
                right: 21px;
                top: calc(50% - 10px);
            }
            .faq-list .block.open .cat::after{
                display: none;
            }
            .faq-list .block .cat .ico{
                width: 40px;
                margin-right: 10px;
            }
            .faq-list .block .cat .ttl{
                width: calc(100% - 50px);
            }
        .faq-list .block .list{
            padding: 15px 10px 10px;
        }
        .faq-list .block.open .list{
            display: block;
        }
            .faq-list .block .list dl dt{
                background: #EEEDE4;
            }
    .faq-list dl{
        margin-bottom: 15px;
    }
        .faq-list dl dt{
            padding: 15px 35px 16px 12px;
            font-size: 1.5rem;
        }
            .faq-list dl dt::before{
                font-size: 3.0rem;
                width: 40px;
                height: 32px;
            }
            .faq-list dl dt > div{
                width: calc(100% - 40px);
                padding:5px 0;
                min-height: 32px;
            }
            .faq-list dl dt::after{
                right: 15px;
            }

        .faq-list dl dd{
            /*display: none;*/
            font-size: 1.5rem;
        }
        .faq-list dl.open dd{
            display: block;
        }
        .faq-list dl dd > div{
            padding:15px 12px 20px;
        }
            .faq-list dl dd > div::before{
                font-size: 3.0rem;
                width: 40px;
                height: 32px;
            }
                .faq-list dl dd p{
                    width: calc(100% - 40px);
                    padding:5px 0;
                    min-height: 32px;
                    box-sizing: border-box;
                }

/*=============================*/
.search{
    margin-bottom: 70px;
}
    .search .input{
        background: #fff url(../img/ico_search_c2.svg) no-repeat 15px center ;
        background-size: 30px auto;
        padding-left: 50px;
    }
        .search .input input{
            height: 60px;
            font-size: 1.6rem;
        }
.search-btn{
    min-width: 130px;
}
/*=============================*/
.haccp{
    padding: 40px 20px 35px;
}
    .haccp dl{
        display: block;
        align-items: center;
        justify-content: space-between;
    }
        .haccp dl dt{
            width: 100%;
            margin-bottom: 30px;
        }
            .haccp dl dt .ttl{
                font-size: 2.0rem;
            }
            .haccp dl dt .btn{
                margin-top: 25px;
            }

        .haccp dl dd{
            width: 100% ;
            font-size: 1.4rem;
            line-height: 1.6;
        }


/*=============================*/
.hotel-data{
    display: block;
    border:0;
    background: transparent;
}
.hotel-data-head{
    display: block;
    border-bottom: 1px solid #E5E1CE;
    position: relative;
    padding:10px 15px;
    font-size: 1.7rem;
    color: #AB9332;
    cursor: pointer;
    display: none;
}
    .hotel-data-head::before{
        content: "";
        width: 20px;
        height: 20px;
        border:1px solid #E5E1CE;
        border-radius: 10px;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }
    .hotel-data-head::after{
        content: "";
        position: absolute;
        right: 17px;
        top: calc(50% - 4px);
        width: 5px;
        height: 5px;
        border-bottom: 2px solid #AB9332;
        border-right: 2px solid #AB9332;
        transform: rotate(45deg);
    }
    .open .hotel-data-head::after{
        top: calc(50% - 2px);
        border-bottom: none;
        border-top: 2px solid #AB9332;
        border-right: 2px solid #AB9332;
        transform: rotate(-45deg);
    }
/* .hotel-data-body{
    display: none;
}
.open .hotel-data-body{
    display: block;
} */
.hotel-data-body-inner{
    display: block;
    padding: 5px 0;
}
    .hotel-data .price{
        display: none;
        width: 100%;
    }
        .hotel-data .price dl{
            width: 100%;
            font-size: 1.4rem;
            padding-left: 0px;
            border: none;
            border-bottom: 1px solid #D5D0BA;
            box-shadow: 0px 1px 0 rgba(255, 255, 255, .9);
            padding:15px 0;
        }
        .hotel-data .price dl:last-child{
            padding:15px 0 0;
        }
        .hotel-data .price dl:first-child{
            padding-left: 0px;
        }
        .hotel-data .price dl:last-child{
            border-bottom: none;
            box-shadow: none;
        }
            .hotel-data .price dl dt{
                padding-left: 25px;
                margin-bottom: 5px;
            }
            .hotel-data .price dl dd{
                line-height: 2;
            }
    .hotel-data .data{
        width: 100%;
        display: block;
        padding: 0 0px 10px;
    }
        .hotel-data .data > div{
            width: 100%;
        }
        .hotel-data .data > div:first-child{
            margin-right: 0;
            margin-bottom: 10px;
        }
        .hotel-data .data > div:last-child{
            margin-left: 0;
            margin-bottom: 0;
        }
        .hotel-data .data > div.empty-data{
            padding: 10px 10px;
        }
    .hotel-data .column_3 .data, .hotel-data .column_4 .data, .hotel-data .column_6 .data {
        width: 100%;
        margin-left: 0;
        padding: 0 0 5px;
    }
        .hotel-st ul{
            padding:5px 5px;
        }
            .hotel-st ul li{
                font-size: 1.2rem;
                line-height: 1.4;
            }
                .hotel-st ul li span{
                    padding:5px 0 45px;
                    letter-spacing: -0.4px;
                }
                .hotel-st ul li span::after {
                    bottom: 0;
                }
            .hotel-list .hotel-block .data-area .txt-area .btn-area{
                display: flex;
                justify-content: space-between;
                align-items: flex-start;
            }
                .hotel-list .hotel-block .data-area .txt-area .btn-area .btn{
                    width: 300px;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                }
                    .hotel-list .hotel-block .data-area .txt-area .btn a{
                        display: block;
                        border:1px solid #AB9332;
                        background: #fff;
                        border-radius: 4px;
                        color: #AB9332;
                        padding:8px 15px;
                        box-sizing: border-box;
                        width: calc(50% - 5px);
                        text-align: center;
                        text-decoration: none;
                        transition: .1s;
                    }
                    .hotel-list .hotel-block .data-area .txt-area .btn a:hover{
                        opacity: .7;
                    }
                        .hotel-list .hotel-block .data-area .txt-area .btn a span{
                            display: block;
                            position: relative;
                        }
                        .hotel-list .hotel-block .data-area .txt-area .btn a span::after{
                            content: "";
                            position: absolute;
                            right: 0px;
                            top: calc(50% - 4px);
                            width: 5px;
                            height: 5px;
                            border-top: 1px solid #AB9332;
                            border-right: 1px solid #AB9332;
                            transform: rotate(45deg);
                        }
                    .hotel-list .hotel-block .data-area .txt-area .btn a.s2{
                        border:1px solid #688B94;
                        color: #688B94;
                    }
                        .hotel-list .hotel-block .data-area .txt-area .btn a.s2 span::after{
                            border-top: 1px solid #688B94;
                            border-right: 1px solid #688B94;
                        }

.hotel-data .btn-area{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
    .hotel-data .btn-area .btn{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .hotel-data .btn-area .btn a{
            display: block;
            border:1px solid #AB9332;
            background: #fff;
            border-radius: 4px;
            color: #AB9332;
            padding:8px 15px;
            box-sizing: border-box;
            width: calc(50% - 5px);
            text-align: center;
            text-decoration: none;
        }
        .hotel-data .btn-area .btn a span{
                display: block;
                position: relative;
            }
            .hotel-data .btn-area .btn a span::after{
                content: "";
                position: absolute;
                right: 0px;
                top: calc(50% - 4px);
                width: 5px;
                height: 5px;
                border-top: 1px solid #AB9332;
                border-right: 1px solid #AB9332;
                transform: rotate(45deg);
            }
            .hotel-data .btn-area .btn a.s2{
            border:1px solid #688B94;
            color: #688B94;
        }
        .hotel-data .btn-area .btn a.s2 span::after{
                border-top: 1px solid #688B94;
                border-right: 1px solid #688B94;
            }
/* カラム共通調整 */
.hotel-data-body-inner.column_1 {
    display: none;
}
/*=============================*/
.news-list{
    margin-top: -15px;
}
    .news-list li >*{
        flex-direction: column;
        padding:7px 35px 13px 2px;
    }
    .news-list li a {
        padding-bottom: 36px;
    }
    .news-list li a::before{
        top: auto;
        right: auto;
        left: 4px;
        bottom: 11px;
    }
    .news-list li a::after{
        top: auto;
        right: auto;
        left: 100px;
        bottom: 17px;
    }
        .news-list li .date{
            width: 100%;
            font-size: 1.7rem;
        }
        .news-list li .ttl{
            width: 100%;
            font-size: 1.4rem;
        }



/*=============================*/
.map-data{
    display: block;
    margin-bottom: 50px;
}
    .map-data .map{
        width: 100% !important;
    }
        .map-data .map iframe{
            width: 100%;
            height: 500px;
            margin-bottom: 0;
            vertical-align: bottom;
        }
    .map-data .data{
        width: 100% !important;
        box-sizing: border-box;
        padding: 10px 15px;
    }
        .map-data .data table,
        .map-data .data table tbody,
        .map-data .data table tr{
            display: block;
        }
            .map-data .data table th{
                display: block;
                padding:0;
                font-size: 1.6rem;
            }
            .map-data .data table td{
                display: block;
                padding: 0 0 5px;
                font-size: 1.5rem;
            }
                .map-data .data .code{
                    margin-top: 0;
                }

        .map-data .data .ttl-btn{
            display: block;
            margin-top: 20px;
            margin-bottom: 15px;
            padding:15px 0;
        }
            .map-data .data .ttl-btn .ttl{
                font-size: 2.0rem;
                margin-bottom: 15px;
            }
                .map-data .data .ttl-btn .btn .print {
                    display: none;
                }
                .map-data .data .ttl-btn .btn .share {
                    margin-left: 0px;
                    margin-top: -10px;
                }

.s-map .map-data{
    background: #F3F2E9;
}
.s-map .map-data .data{
    padding: 20px 15px;
}
.s-map .map-data .map iframe{
    height: 380px;
}

/*=============================*/
.voice-list{
    margin-bottom: 20px;
}
    .voice-list .list{
        padding-left: 5px;
        padding-right: 10px;
        height: 600px;
    }
        .voice-list .list .block{
            padding:12px 15px 10px;
            margin-bottom: 10px;
        }
            .voice-list .list .block .date{
                font-size: 1.3rem;
                margin-bottom: 5px;
            }
            .voice-list .list .block dl {
                font-size: 1.5rem;
            }
                .voice-list .list .block dl dt{
                    padding:3px 0 12px 40px;
                }
                    .voice-list .list .block dl dt::before{
                        font-size: 2.6rem;
                        left: 3px;
                        top: 0;
                    }
                .voice-list .list .block dl dd{
                    padding:10px 0 10px 40px;
                }
                    .voice-list .list .block dl dd::before{
                        width: 40px;
                        height: 30px;
                        left: 2px;
                        top: 9px;
                        background-size: 26px auto;
                    }

#review-voice {
    margin-bottom: 80px;
}

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

.spot-list{
    min-height: 0;
    margin-bottom: 0px;
}
    .spot-list .block{
        padding:0 5px;
    }
        .spot-list .block .img-area{
            position: relative;
            width: 100%;
            height: 0;
            padding-top: 65%;
            margin-bottom: 15px;
        }
            .spot-list .block .img-area img{
                position: absolute;
                max-width: none;
                height: 105%;
                top: 50%;
                left: 50%;
                transform: translate(-50%,-50%);
            }
        .spot-list .block .txt-area{
            padding:0 10px;
        }
            .spot-list .block .txt-area .ttl{
                font-size: 2rem;
                margin-bottom: 5px;
            }
            .spot-list .block .txt-area .data{
                margin-bottom: 10px;
            }


/*=============================*/
.page-link{
    background: #FAF9F5;
    padding: 20px 15px;
}
    .page-link .ttl{
        font-size: 1.6rem;
        margin-bottom: 5px;
    }
    .page-link .list{
        margin-left: -10px;
        margin-bottom: 0px;
    }
        .page-link .list li{
            margin-left: 10px;
            margin-bottom: 10px;
            width: calc(100% / 2 - 10px);
        }
        .page-link.l5 .list li{
            width: calc(100% / 2 - 10px);
        }
        .page-link.list_search.l5 .list li{
            width: calc(100% / 3 - 10px);
        }
            .page-link .list li label,
            .page-link .list li a{
                height: 44px;
                padding: 8px 8px;
                font-size: 1.4rem;
                line-height: 1.2;
            }
                .page-link .list li em{
                    font-size: 2.6rem;
                }
.page-link .ac{
    padding-bottom: 60px;
}
    .page-link .ac .ac-more{
        display: none;
    }
    .page-link .ac .ac-switch{
        bottom: -20px;
        padding:0 15px;
        margin:0 -15px;
        height: 60px;
    }

/*=============================*/
.conditions{
    position: relative;
    margin-bottom: 50px;
    display: block;
}
    .conditions .main{
        margin-bottom: 10px;
    }
        .conditions .area{
            font-size: 2.8rem;
            padding-left: 0px;
        }
        .conditions .num{
            margin-left: 50px;
            font-size: 1.7rem;
        }
    .conditions .more{
        margin-left: 0px;
    }
        .conditions .more dl{
            display: block;
        }
            .conditions .more dl dt{
                margin-bottom: 0;
            }
            .conditions .more dl dd{
                font-size: 1.5rem;
            }
                .conditions .more dl dd span{
                    padding-left: 30px;
                    position: relative;
                }
                .conditions .more dl dd span:first-child{
                    padding-left: 0;
                }
                .conditions .more dl dd span:first-child:before{
                    display: none;
                }


/*=============================*/
.distance-btn{
    display: none;
    background: #AA9332;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    font-size: 16px;
    font-weight: lighter;
    padding:10px 15px;
    margin-bottom: 17px;
    cursor: pointer;
}
    .distance-btn span{
        display: inline-block;
        padding: 10px 10px 10px 45px;
        background: url(../img/ico_distance_c2.svg) no-repeat center left;
    }


/*=============================*/
.hotel-list{
    margin-bottom: 55px;
}
    .hotel-list .hotel-block{
        margin-bottom: 50px;
        position: relative;
    }
    .hotel-list .hotel-block .data-area{
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-direction: column-reverse;
    }
        .hotel-list .hotel-block .data-area >div{
            width: 100%;
        }
        .hotel-list .hotel-block .data-area .txt-area{
            padding: 10px 15px 20px;
        }
            .hotel-list .hotel-block .data-area .txt-area .rank{
                font-size: 3.0rem;
                margin-bottom: 15px;
            }
                .hotel-list .hotel-block .data-area .txt-area .rank em{
                    font-size: 10.0rem;
                }
            .hotel-list .hotel-block .data-area .txt-area .catch{
                padding:0px 0px 5px;
                font-size: 1.1rem;
                text-align: left;
            }
            .hotel-list .hotel-block .data-area .txt-area .name{
                padding:10px 0;
                font-size: 2rem;
                text-align: left;
                margin-bottom: 10px;
                line-height: 1.2;
            }

            .hotel-list .hotel-block .data-area .txt-area .station dl{
                padding-bottom: 10px;
                font-size: 1.4rem;
            }
            .hotel-list .hotel-block .data-area .txt-area .address{
                display: block;
                margin-bottom: 15px;
            }
                .hotel-list .hotel-block .data-area .txt-area .address .t1{
                    width: 100%;
                    font-size: 1.5rem;
                    margin-bottom: 5px;
                }
                    .hotel-list .hotel-block .data-area .txt-area .address .t1 span{
                        display: inline-block;
                    }
                .hotel-list .hotel-block .data-area .txt-area .address .link{
                    width: 100%;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                }
                    .hotel-list .hotel-block .data-area .txt-area .address .link a{
                        display: block;
                        width: auto;
                        box-sizing: border-box;
                        padding:3px 15px ;
                    }
                        .hotel-list .hotel-block .data-area .txt-area .address .link a span{
                            padding-left: 24px;
                            padding-bottom: 2px;
                            background: url(../img/ico_blank.svg) no-repeat left center;
                        }
                    .hotel-list .hotel-block .data-area .txt-area .address .dis{
                        display: none;
                        font-size: 14px;
                        line-height: 24px;
                    }
                        .hotel-list .hotel-block .data-area .txt-area .address .dis span{
                            display: inline-block;
                            padding-left: 25px;
                            margin-left: 5px;
                            background: url(../img/ico_distance.svg) no-repeat left center;
                            color: #AB9332;
                        }
                        .hotel-list .hotel-block .data-area .txt-area .address .dis span::after{
                            content: "km";
                            margin-left: 3px;
                        }

            .hotel-list .hotel-block .data-area .txt-area .btn-area{
                display: block;
            }
                .hotel-list .hotel-block .data-area .txt-area .btn-area .btn{
                    width: 100%;
                    margin-bottom: 15px;
                }
                    .hotel-list .hotel-block .data-area .txt-area .btn a{
                        font-size: 1.6rem;
                    }
                .hotel-list .hotel-block .data-area .txt-area .btn-area .tel{
                    width: 100%;
                    text-align: center;
                }
                    .hotel-list .hotel-block .data-area .txt-area .btn-area .tel > div{
                        font-size: 2.5rem;
                        line-height: 1.2;
                    }
                        .hotel-list .hotel-block .data-area .txt-area .btn-area .tel > div > *{
                            display: inline-block;
                            background: url(../img/ico_tell.svg) no-repeat left center;
                            background-size: 14px auto;
                            padding: 3px 10px 3px 25px;
                        }
                    .hotel-list .hotel-block .data-area .txt-area .btn-area .tel p{
                        font-size: 1.4rem;
                        text-align: center;
                    }
            
        .hotel-list .hotel-block .data-area .img-area{
            width: 100%;
            position: relative;
            overflow: hidden;
        }

                .hotel-list .hotel-block .data-area .img-area .img .slick-list{
                    width: 160%;
                    margin-left: -30%;
                }
                .hotel-list .hotel-block .data-area .img-area .img img{
                    max-width: none;
                    width: 100%;
                }

        .hotel-list .hotel-block .data-area2{
            display: block;
            padding: 0px 0;
        }
            .hotel-list .hotel-block .data-area2 .d1{
                width: 100%;
                box-sizing: border-box;
                border-right: none;
                display: flex;
                justify-content: center;
                align-items: center;
                padding:10px 10px 0;
            }
                .hotel-list .hotel-block .data-area2 .d1 .inner{
                    width: 100%;
                }
                .hotel-list .hotel-block .data-area2 .empty-data{
                    justify-content: space-around;
                    width: 100%;
                    box-sizing: border-box;
                    padding: 7px 10px;
                }
            .hotel-list .hotel-block .data-area2 .d2{
                width: 100%;
                border-left: none;
                display: flex;
                justify-content: center;
                align-items: center;
                padding:10px;
                box-sizing: border-box;
            }
                .hotel-list .hotel-block .data-area2 .d2 .inner{
                    width: 100%;
                }
        .hotel-list .hotel-block .data-area3{
            padding: 20px 15px;
        }
            .hotel-list .hotel-block .data-area3 .block{
                margin-bottom: 30px;
                font-size: 1.4rem;
            }
            .hotel-list .hotel-block .data-area3 .block:last-child{
                margin-bottom: 0;
            }
                .hotel-list .hotel-block .data-area3 .block .ttl{
                    font-size: 1.8rem;
                    margin-bottom: 10px;
                    padding-left: 20px;
                }
                    .hotel-list .hotel-block .data-area3 .block .ttl::before{
                        width: 12px;
                    }
                .hotel-list .hotel-block .data-area3 .block .price{
                    display: block;
                }
                    .hotel-list .hotel-block .data-area3 .block .price dl{
                        width: 100%;
                        border-right: none;
                        border-bottom: 1px solid #E5E1CE;
                        box-shadow: 0px 1px 0 rgba(255, 255, 255, .7);
                        padding:10px 0px 10px;
                    }
                    .hotel-list .hotel-block .data-area3 .block .price dl:last-child{
                        border-right: none;
                        border-bottom: none;
                        box-shadow: none;
                    }
                        .hotel-list .hotel-block .data-area3 .block .price dl dt{
                            font-size: 1.6rem;
                            margin-right: 10px;
                        }
                        .hotel-list .hotel-block .data-area3 .block .price dl dd{
                            font-size: 1.4rem;
                            line-height: 2.0;
                        }
    
            .hotel-list .hotel-block .detail a{
                display: block;
                padding:15px ;
                font-size: 1.7rem;
            }





/*=============================*/
.room-list{
    margin-bottom: 40px;
}
    .room-list .room-block{
        margin-bottom: 40px;
        position: relative;
    }
    .room-list .room-block .data-area{
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-direction: column;
    }
        .room-list .room-block .data-area >div{
            width: 100%;
        }
        .room-list .room-block .data-area .txt-area{
            width: auto;
            padding: 20px 15px 30px;
        }
            .room-list .room-block .data-area .txt-area .rank{
                font-size: 3.0rem;
                margin-bottom: 15px;
            }
                .room-list .room-block .data-area .txt-area .rank em{
                    font-size: 10.0rem;
                }
            .room-list .room-block .data-area .txt-area .catch{
                padding:10px 0 5px;
                font-size: 1.7rem;
                text-align: left;
            }
            .room-list .room-block .data-area .txt-area .txt{
                line-height: 1.8;
                font-size: 1.4rem;
                margin-bottom: 25px;
            }
            .room-list .room-block .data-area .txt-area .txt2{
                display: block;
                line-height: 1.8;
            }
                .room-list .room-block .data-area .txt-area .txt2 p{
                    margin-bottom: 5px;
                }

            .room-list .room-block .data-area .txt-area .btn{
                display: block;
                margin-bottom: 25px;
            }
                .room-list .room-block .data-area .txt-area .btn a{
                    padding:10px 15px;
                    width: 260px;
                    margin:0 auto 10px;
                }
        .room-list .room-block .data-area .img-area{
            width: auto;
        }
        .room-list .room-block .data-area .img-area .slick-dotted.slick-slider{
            margin-bottom: 5px;
        }

    .room-list .room-block .price-area{
        display: block;
        padding:15px 5px 10px;
    }
        .room-list .room-block .price-area .price-block{
            width: 100%;
            box-sizing: border-box;
            padding: 10px 0px 20px;
        }
            .room-list .room-block .price-area .price-block .ttl{
                margin-bottom: 10px;
            }
                .room-list .room-block .price-area .price-block table th{
                    width: 115px;
                    padding: 15px 15px;
                    font-size: 1.4rem;
                }
                .room-list .room-block .price-area .price-block table td{
                    padding:10px 15px;
                    font-size: 1.3rem;
                    font-weight: 300;
                }
                .room-list .room-block .price-area .price-block table td.d1{
                    width: 120px;
                    white-space: nowrap;
                }
                .room-list .room-block .price-area .price-block table td.d2{
                    white-space: nowrap;
                }
            .room-list .room-block .price-area .price-block .table p{
                font-size: 1.2rem;
            }



/*=============================*/
.price-detail{
    margin-bottom: 30px;
}
    .price-detail .data-area{
        display: block;
    }
        .price-detail .data-area >div{
            width: 100%;
        }
        .price-detail .data-area .txt-area{
            padding: 20px 15px 30px;
        }
            .price-detail .data-area .txt-area .rank{
                font-size: 3.0rem;
                margin-bottom: 15px;
            }
                .price-detail .data-area .txt-area .rank em{
                    font-size: 10.0rem;
                }
            .price-detail .data-area .txt-area .catch{
                padding:0 10px;
                margin-bottom: 0;
                font-size: 1.7rem;
            }
            .price-detail .data-area .txt-area .txt{
                line-height: 1.8;
                font-size: 1.4rem;
                margin-bottom: 25px;
            }
            .price-detail .data-area .txt-area .btn{
                display: block;
                margin-bottom: 0;
            }
                .price-detail .data-area .txt-area .btn a{
                    padding:10px 15px;
                    width: 260px;
                    margin:0 auto 10px;
                }
                    .price-detail .data-area .txt-area .btn a span{
                        display: block;
                        position: relative;
                    }


        .price-detail .data-area .img-area{
            overflow: hidden;
        }


    .price-detail .block{
        margin-top: 35px;
    }
        .price-detail .price-table{

        }
            .price-detail .block .data{
                display: block;
                margin-bottom: 15px;
            }
                .price-detail .block .data ul{
                    width: 100%;
                    flex-wrap: wrap;
                    padding: 1px 1px;
                }
                    .price-detail .block .data ul li{
                        min-width: 0;
                        margin: 2px;
                        width: calc(50% - 4px);
                        background: rgba(104, 139, 148, .05);
                    }
                .price-detail .block .data p{
                    font-size: 1.3rem;
                    margin-left: 0px;
                    margin-top: 5px;
                }
            .price-detail .price-table .table{

            }
                    .price-detail .price-table .table table thead th{
                        height: auto;
                        font-size: 1.6rem;
                        line-height: 1.4;
                        padding: 10px;
                    }
                        .price-detail .price-table .table table thead th span{
                            display: inline-block;
                            font-size: 1.4rem;
                            line-height: 1.3;
                        }
                    .price-detail .price-table .table table th{
                        text-align: center;
                        vertical-align: middle;
                    }
                    .price-detail .price-table .table table td{
                        font-size: 1.6rem;
                        letter-spacing: 1px;
                        height: auto;
                        padding: 20px 10px;
                    }
                        .price-detail .price-table .table table td em{
                            font-size: 2.0rem;
                            font-weight: normal;
                            letter-spacing: 0;
                        }

            .price-detail .price-table .table2{
                display: block;
            }
                .price-detail .price-table .table2 dl{
                    display: flex;
                    justify-content: stretch;
                    align-items: stretch;
                    flex-direction: column;
                    border-left:none;
                    margin-top: -1px;

                }
                .price-detail .price-table .table2 dl:first-child{
                    border-left:none;
                }
                .price-detail .price-table .table2 dl.dl1{
                    width: 100%;
                }
                    .price-detail .price-table .table2 dl dt{
                        height: auto;
                        font-size: 1.6rem;
                        padding: 15px 0;
                        border-left:1px solid #E5E1CE;

                    }
                    .price-detail .price-table .table2 dl dd{
                        min-height: 100px;
                        flex-wrap: wrap;
                        border-left:1px solid #E5E1CE;
                    }
                    .price-detail .price-table .table2 dl.dl1 dd{
                        font-size: 1.8rem;
                    }
                        .price-detail .price-table .table2 dl.dl1 dd em{
                            font-size: 2.4rem;
                            font-weight: normal;
                        }

                        .price-detail .price-table .table2 dl dd .s2{
                            width: auto;
                            min-width: 50%;
                            border-top: 1px solid #E5E1CE;
                        }
                        .price-detail .price-table .table2 dl dd .s2:nth-child(-n+2){
                            border-top: none;
                        }
                        .price-detail .price-table .table2 dl dd .s2:nth-child(odd){
                            border-left: none;
                        }
                            .price-detail .price-table .table2 dl dd .s2 .s2-1{
                                border-bottom: 1px solid #E5E1CE;
                                padding: 5px 10px;
                            }
                                    .price-detail .price-table .table2 dl dd .s2 .s2-2 span em{
                                        font-size: 4.0rem;
                                        line-height: 1;
                                        margin-right: 5px;
                                    }

                        .price-detail .price-table .table2 dl dd .s3{
                            border-left:none;
                            border-top:1px solid #E5E1CE;
                            width: 100%;
                            font-size: 1.6rem;
                            padding: 10px ;
                        }
                        .price-detail .price-table .table2 dl dd .s3:first-child{
                            border-top: none;
                        }
                        .price-detail .price-table .table2 dl dd .s3 > div{
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            flex-wrap: wrap;
                        }
                            .price-detail .price-table .table2 dl dd .s3 em{
                                font-size: 2.4rem;
                            }
                            .price-detail .price-table .table2 dl dd .s3 p{
                                margin: 5px 10px;
                                font-size: 1.6rem;
                            }



/*=============================*/
.member-guide{
    border:1px solid #CCBD88;
    padding: 20px 15px;
}
    .member-guide-ttl{
        font-size: 2.2rem;
        margin-bottom: 0;
    }
    .member-guide-txt{
        padding: 15px 0 20px;
    }
        .member-guide-txt .txt{
            margin-bottom: 20px;
        }
        .member-guide-txt .txt2{
            font-size: 1.2rem;
            line-height: 1.8;
        }
        .member-guide-txt ul{
            display: flex;
            justify-content: flex-start;
            align-items: center;
            flex-wrap: wrap;
            margin-bottom: 20px;
            margin-left: -10px;
        }
            .member-guide-txt ul li{
                margin-right: 0px;
                padding:7px 5px;
                width: calc(50% - 10px);
                margin-left: 10px;
                margin-bottom: 5px;
                font-size: 1.5rem;
            }
        .member-guide-txt .img{
            position: static;
            text-align: center;
            margin-bottom: 10px;
        }

    .member-guide .benefits{
        background: #FAF9F5;
        padding: 15px 15px 10px;
        margin-bottom: 20px;
    }

        .member-guide .benefits .benefits-list{
            display: block;
            margin-bottom: 20px;
        }
            .member-guide .benefits .benefits-list .img-area{
                width: 100%;
                text-align: center;
                margin-bottom: 20px;
            }
                .member-guide .benefits .benefits-list .img-area img{
                    width: 100%;
                }
            .member-guide .benefits .benefits-list .txt-area{
                width: 100%;
            }

            .member-guide .benefits .benefits-ttl{
                display: flex;
                justify-content: flex-start;
                align-items: center;
            }
                .member-guide .benefits .benefits-ttl .num{
                    font-size: 8rem;
                }
                .member-guide .benefits .benefits-ttl .ttl{
                    font-size: 2.2rem;
                }
                    .member-guide .benefits .benefits-ttl .ttl em{
                        font-size: 1.5rem;
                        margin-bottom: 3px;
                    }
            .member-guide .benefits .benefits-list .list{
                margin-top: 15px;
            }
                .member-guide .benefits .benefits-list .list li{
                    margin-bottom: 10px;
                    line-height: 1.6;
                    padding-left: 25px;
                }
                .member-guide .benefits .benefits-list .list li::before{
                    width: 15px;
                }
        .member-guide .benefits .benefits-list02{
            display: block;
            border-left: none;
        }
            .member-guide .benefits .benefits-list02 .block{
                width: 100%;
                border-right: none;
                border-top: 1px solid #E5E1CE;
                padding:15px 10px;
            }
                .member-guide .benefits .benefits-list02 .benefits-ttl .ttl{
                    font-size: 1.8rem;
                }
                    .member-guide .benefits .benefits-list02 .benefits-ttl .ttl em{
                        font-size: 1.4rem;
                        margin-bottom: 3px;
                    }

/*=============================*/
.member-guide2{
    width: 100%;
    max-width: 500px;
    margin:0 auto 45px;
    padding: 20px 20px 20px;
}
    .member-guide2 .txt-area{
        width: auto;
    }
    .member-guide2 .ttl{
        font-size: 2.0rem;
        margin-bottom: 15px;
    }
    .member-guide2 .txt{
        line-height: 1.8;
        font-size: 1.4rem;
        color: #5A5129;
        margin-bottom: 20px;
    }
    .member-guide2 .btn{
        width: auto;
        margin-bottom: 20px;
    }
        .member-guide2 .btn a{
            display: block;
            border: 1px solid #AB9332;
            padding: 10px;
            position: relative;
            text-align: center;
            text-decoration: none;
            color: #AB9332;
            border-radius: 4px;
            transition: .2s;
        }


    .member-guide2 .img{
        position: static;
        transform: translateY(0);
        text-align: center;
    }



/*=============================*/
.hotel-plan{
    max-width: 600px;
    margin:0 auto 60px;
}
    .hotel-plan .block{
        display: block;
        margin-bottom: 40px;
    }
    .hotel-plan .block .img-area{
        width: 100%;
    }
    .hotel-plan .block .txt-area{
        width: 100%;
        padding: 20px 15px;
        padding-bottom: 80px;
    }
        .hotel-plan .block .txt-area .ttl{
            padding:0 0 12px;
            margin-bottom: 15px;
            font-size: 1.6rem;
        }
        .hotel-plan .block .txt-area .txt{
            line-height: 1.8;
            margin-bottom: 25px;
        }
        .hotel-plan .block .txt-area .txt2{
            font-size: 1.2rem;
        }
            .hotel-plan .block .txt-area .txt2 p{
                margin-bottom: 10px;
            }
        .hotel-plan .block .txt-area .btn{
            bottom: 25px;
        }
            .hotel-plan .block .txt-area .btn a{
                padding:10px 35px 11px 30px;
                margin:0 10px;
                width: 260px;
                font-size: 1.5rem;
            }


/*=============================*/
.equip-list{
    padding: 10px;
}
.equip-list-inner{
    position: relative;
}
        .equip-list ul li{
            width: calc(100% / 3 + 1px);
            font-size: 1.2rem;
            letter-spacing: 0;
            line-height: 1.3;
        }
    .equip-list p{
        text-align: right;
        font-size: 1.3rem;
        padding: 10px 0 10px;
    }


/*=============================*/
.equip-list2{
    display: block;
    margin: 0px auto 60px;
    padding:0 20px;
    max-width: 400px;
}
    .equip-list2 .block{
        width: 100%;
        margin-left: 0px;
        box-sizing: border-box;
        margin-bottom:40px;
    }
    .equip-list2 .block > *{
        display: block;
        text-decoration: none;
    }
        .equip-list2 .block .img-area{
            display: block;
            position: relative;
            width: 100%;
            height: 0;
            padding-top: 70%;
            overflow: hidden;
        }
            .equip-list2 .block .img-area img{
                position: absolute;
                width: auto;
                max-width: none;
                height: 100%;
                top: 50%;
                left: 50%;
                transform: translate(-50%,-50%);
            }
        .equip-list2 .block .txt-area{
            display: block;
            padding-top: 15px;
        }
            .equip-list2 .block .txt-area .ttl{
                display: block;
                margin-bottom: 10px;
                font-size: 1.8rem;
                color: #AB9332;
                line-height: 1.4;
                font-weight: normal;
            }
            .equip-list2 .block .txt-area .txt{
                display: block;
                font-size: 1.4rem;
                color: #5A5129;
            }





/*=============================*/
.coupon{
    margin-bottom: 30px;
}
.coupon .block{
    border-left-width: 1px;
    border-top-width: 5px;
    display: block;
    width: 100%;
    margin:50px auto 90px;
}
    .coupon .block .head{
        width: 100%;
        padding:0;
    }
    .coupon .block .head .inner{
        width: auto;
    }
        .coupon .block .head .t1{
            line-height: 1.0;
            margin-bottom: 15px;
            padding-top: 35px;
        }
    .coupon .block .body{
        width: 100%;
        padding: 15px 12px 0;
        box-sizing: border-box;
    }
        .coupon .block .body .data{
            display: block;
            font-size: 1.3rem;
        }
            .coupon .block .body .data .date{
                padding: 7px 15px;
            }
            .coupon .block .body .data .hotel{
                padding: 7px 15px;
            }
        .coupon .block .body .txt{
            min-height: 130px;
            padding: 15px 10px;
        }
            .coupon .block .body .txt .t1{
                font-size: 1.8rem;
                margin-bottom: 10px;
            }
            .coupon .block .body .txt .t2{
                font-size: 2.1rem;
            }
                .coupon .block .body .txt .t2 em{
                    font-size: 4.0rem;
                    margin-right: 5px;
                }
        .coupon .block .body .detail{
            font-size: 1.3rem;
            padding:12px 0;
        }
            .coupon .block .body .detail ul{
                display: block;
                margin-left: 0px;
            }
                .coupon .block .body .detail ul li{
                    margin:5px 0 5px 2px;
                }

.coupon .block .share{
    position: absolute;
    right: 0;
    top: -50px;
}
    .share .share-body{
        top: 0;
        left: 35px;
        right: auto;
    }
    .coupon .block .share .share-body{
        top: 0;
        left: auto;
        right: 0;
    }
        .coupon .block .share .share-body .close{
            left: 0;
            top: 0;
            transform: translateX(-100%);
        }



/*=============================*/
.inq-txt{
    padding: 25px 20px;
    margin-bottom: 30px;
}
    .inq-txt .ttl{
        font-size: 2.0rem;
        margin-bottom: 20px;
    }

    .inq-txt .attention{
        line-height: 1.7;
        padding: 10px 15px;
        margin-bottom: 30px;
    }

/*=============================*/
.inq-txt-btn{
    display: block;
    padding:25px 20px 25px 20px;
    margin-bottom: 30px;
}
    .inq-txt-btn .txt{
        line-height: 1.8;
        font-size: 1.4rem;
        margin-bottom: 20px;
    }



/*=============================*/
.form-area{
    padding:20px 0;
}
    .form-area .form-txt{
        line-height: 1.8;
        margin-bottom: 30px;
    }

    .form-area .form-table{
        margin-bottom: 25px;
    }
        .form-area .form-table table{
            width: 100%;
            display: block;
        }
            .form-area .form-table table tbody{
                display: block;
            }
            .form-area .form-table table tr{
                display: block;
            }
            .form-area .form-table table th{
                display: block;
                padding: 15px 3px 5px;
                border-bottom: none;
                font-size: 1.7rem;
                line-height: 1.4;
                width: 100%;
                box-sizing: border-box;
            }
                .form-area .form-table table th span{
                    padding: 5px 0;
                }
                .form-area .form-table table .req th span{
                    padding-left: 25px;
                    background: url(../img/ico_check.svg) no-repeat left 7px;
                }
            .form-area .form-table table td{
                display: block;
                padding: 2px 3px 20px;
                line-height: 1.4;
            }
                .form-area .form-table table td input{
                    padding: 8px 15px;
                }
                .form-area .form-table table td select{
                    padding: 8px 15px;
                }
                .form-area .form-table table td textarea{
                    padding: 8px 15px;
                    height: 200px;
                }
    .form-area .form-btn{
        display: block;
        text-align: center;
    }
        .form-area .form-btn a,
        .form-area .form-btn button{
            padding:12px 35px 12px 30px;
            margin:5px 10px;
            width: 260px;
        }


/*=============================*/
.spot-map{

}
    .spot-map .map{
        margin-bottom: 20px;
        height: 500px;
    }
        .spot-map .map .block{
            width: 100%;
        }
            .spot-map .map iframe{
                width: 100%;
                height: 500px;
            }
    .spot-map .list{
        margin-left: 0px;
        margin-bottom: 40px;
        padding:0 15px;
    }
        .spot-map .list .block{
            width: 100%;
            margin-left: 0px;
            margin-bottom: 0;
        }
                .spot-map .list .block .img img{
                    height: 105%;
                }
                .spot-map .list .block .txt .ttl{
                    font-size: 1.7rem;
                    margin-bottom: 5px;
                }
                .spot-map .list .block .txt p{
                    font-size: 1.3rem;
                }


/*=============================*/
.spot-list2{

}
    .spot-list2 .block{
        display: block;
        margin-bottom: 50px;
    }
        .spot-list2 .block .img-area{
            width: 100%;
            max-width: 500px;
            margin:0 auto 25px;
        }
            .spot-list2 .block .img-area .main{
                width: 100%;
                height: auto;
            }
                .spot-list2 .block .img-area .main .img{
                    height: 340px;
                }
            .spot-list2 .block .img-area .sub{
                margin-left: -10px;
            }
                .spot-list2 .block .img-area .sub .img{
                    width: calc(100% / 4 - 10px);
                    margin-left: 10px;
                }
        .spot-list2 .block .txt-area{
            width: 100%;
        }
            .spot-list2 .block .txt-area .ttl-area{
                display: block;
                margin-bottom: 20px;
            }
                .spot-list2 .block .txt-area .ttl-area .ttl{
                    width: 100%;
                    max-width: 500px;
                    box-sizing: border-box;
                    font-size: 2.2rem;
                    margin:0 auto 20px;
                    text-align: center;
                    display: block;
                }
                .spot-list2 .block .txt-area .ttl-area .ttl span{
                    margin-left: 0;
                    display: block;
                    text-align: center;
                }
                .spot-list2 .block .txt-area .ttl-area .btn{
                    width: 220px;
                    margin:0 auto 10px;
                }
                    .spot-list2 .block .txt-area .ttl-area .btn a{
                        padding:4px 20px 4px 10px;
                        font-size: 1.4rem;
                    }
            .spot-list2 .block .txt-area .txt{
                font-size: 1.4rem;
                line-height: 1.7;
            }

/*=============================*/
.spot-list3{
    padding:0 20px;
    margin-left: 0px;
    margin-bottom: 10px;
}
    .spot-list3 .block{
        width: 100%;
        margin-left: 0px;
        margin-bottom: 30px;
    }
        .spot-list3 .block .txt-area{
            padding: 8px 10px;
        }
            .spot-list3 .block .txt-area .ttl{
                margin-bottom: 8px;
                font-size: 1.9rem;
                font-weight: normal;
            }
                .spot-list3 .block .txt-area .ttl em{
                    margin-right: 10px;
                }
                .spot-list3 .block .txt-area .ttl span{
                    letter-spacing: 1px;
                }
    .spot-list3 .slick-track { /* slickの高さを揃える */
        display: flex;
    }
    .spot-list3 .slick-slide {
        height: auto !important;
    }
/*=============================*/
.spot-link{
    display: block;
    padding: 0 5px;
    margin:0 20px 20px;
}
    .spot-link .head{
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #D8D3B9;
        box-shadow: 0 1px 0 rgba(255, 255, 255, .7);
        padding: 20px 0;
    }
        .spot-link .head .t1{
            font-size: 2.0rem;
            margin-bottom: 2px;
        }
    .spot-link .body{
        width: 100%;
        padding: 10px 0px;
        min-height: 0px;
        box-sizing: border-box;
    }
        .spot-link .body .inner{
            display: flex;
            justify-content: flex-start;
            align-items: center;
            flex-wrap: wrap;
        }
            .spot-link .body .inner a{
                margin:5px 5px 5px 5px;
                line-height: 1.3;
            }
                .spot-link .body .inner a span{
                    display: inline-block;
                    text-align: left;
                    padding: 8px 5px 10px 28px;
                }


/*=============================*/
.route-search{
    display: block;
    margin-bottom: 60px;
}
    .route-search .block{
        width: 100%;
        margin-bottom: 15px;
    }
        .route-search .block a{
            padding: 20px 20px;
            height: auto;
            min-height: 140px;
            font-size: 1.6rem;
        }
            .route-search .block a .ico{
                width: 60px;
                text-align: center;
                margin-right: 20px;
            }



/*=============================*/
.taxi-list{
    margin-bottom: 50px;
    display: block;
}
    .taxi-list dl{
        margin-bottom: 15px;
        border:1px solid #AB9332;
        text-align: center;
        border-radius: 3px;
        overflow: hidden;
    }
        .taxi-list dl dt{
            height: 70px;
            overflow: hidden;
            position: relative;
        }
        .taxi-list dl.c1 dt{ background: #192F60; }
        .taxi-list dl.c2 dt{ background: #FF7D41; }
        .taxi-list dl.c3 dt{ background: #DFE567; }
        .taxi-list dl.c4 dt{ background: #FFFFFF; }
        .taxi-list dl.c5 dt{ background: #1C2024; }
        .taxi-list dl.c6 dt{ background: #000000; }

            .taxi-list dl dt img{
                height: 70px;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
            }

        .taxi-list dl dd{
            padding:12px 10px;
            display: flex;
            justify-content: space-around;
        }
            .taxi-list dl dd a{
                display: block;
                border:1px solid #AB9332;
                color: #AB9332;
                padding:10px;
                width: calc(50% - 20px);
                box-sizing: border-box;
                border-radius: 30px;
                font-size: 14px;
                text-decoration: none;
            }


    .taxi-list .taxi-list-block{
        width: calc(50% - 20px);
        margin:0 10px;
        max-width: 220px;
    }
    .taxi-list ul{
        display: block;
        margin-left: 0px;
    }
        .taxi-list ul li{
            width: 100%;
            margin-left: 0px;
            margin-bottom: 10px;
            text-align: center;
            overflow: hidden;
            border-radius: 4px;
        }
            .taxi-list ul li img{
                width: 120%;
                margin-left: -10%;
                max-width: none;
            }



/*=============================*/
.mapcode{
    display: block;
    margin-bottom: 50px;
}
    .mapcode .img-area{
        width: 100%;
        text-align: center;
        padding:40px 0;
    }
        .mapcode .img-area img{
            width: 180px;
        }
    .mapcode .txt-area{
        width: 100%;
        padding: 0px 20px 30px 20px;
        text-align: center;
    }
        .mapcode .txt-area .code{
            display: inline-block;
            padding: 10px 20px;
            font-size: 2.0rem;
            margin:0 0 15px;
        }
            .mapcode .txt-area .code span{
                margin-left: 15px;
            }
        .mapcode .txt-area p{
            text-align: left;
        }
        .mapcode .txt-area .btn{
            text-align: center;
        }
            .mapcode .txt-area .btn a{
                padding:2px 20px;
                border-radius: 20px;
            }



/*=============================*/
.means{
    display: block;
}
    .means .block{
        padding: 8px 10px 10px;
        width: 100%;
        margin-bottom: 20px;
    }
    .means .block:last-child{
        margin-bottom: 40px;
    }
        .means .block .means-ttl{
            margin-bottom: 18px;
            font-size: 2.0rem;
        }
            .means .block .means-ttl .inner{
                min-height: 40px;
                padding: 5px 5px;
            }
                .means .block .means-ttl .ico{
                    margin-right: 15px;
                }

        .means .block .txt{

        }
            .means .block .txt dl{
                margin-bottom: 25px;
            }
            .means .block .txt dl:last-child{
                margin-bottom: 0;
            }
                .means .block .txt dl dt{
                    font-size: 1.7rem;
                    margin-bottom: 7px;
                }
                .means .block .txt dl dd{
                    padding-right: 15px;
                    padding-bottom: 10px;
                }


/*=============================*/
.reservation-flow{
    padding: 30px 15px 20px;
}
    .reservation-flow > .ttl{
        margin-bottom: 30px;
    }
        .reservation-flow > .ttl span{
            font-size: 2.0rem;
        }
    .reservation-flow .flow .block{
        margin-bottom: 50px;
    }
            .reservation-flow .flow .block .head .num{
                font-size: 8.0rem;
                width: 50px;
            }
            .reservation-flow .flow .block .head .ttl{
                width: calc(100% - 60px);
                font-size: 1.7rem;
                line-height: 1.5;
            }
        .reservation-flow .flow .block .body{
            padding: 20px 0 10px 0px;
        }
            .reservation-flow .flow .block .body .data-area{
                padding: 20px 10px 15px;
                position: relative;
                display: block;
                margin: 50px 0 0px;
            }
                .reservation-flow .flow .block .body .data-area .data-ttl{
                    font-size: 1.5rem;
                    padding:3px 15px;
                }
                .reservation-flow .flow .block .body .data-area .data-name{
                    padding:0 0px;
                    font-size: 1.8rem;
                    margin-bottom: 15px;
                }
                .reservation-flow .flow .block .body .data-area .data-tel{
                    font-size: 3.0rem;
                    margin-left: 0px;
                    margin-bottom: 10px;
                    text-align: center;
                }
                .reservation-flow .flow .block .body .data-area .empty-data{
                    width: 100%;
                    box-sizing: border-box;
                }



/*=============================*/
.service-block{
    display: block;
    padding:0 0px;
    margin:0 auto;
    max-width: 550px;
}
    .service-block .block{
        width: 100%;
        margin-bottom: 30px;
    }
    .service-block .block.wide{
        width: 100%;
        margin-bottom: 70px;
    }
    .service-block .block:last-child {
        margin-bottom: 20px;
    }
.service-block.b3{
    display: flex;
    padding:0 5px;
}
    .service-block.b3 .block{
        width: calc(50% - 10px);
    }
    .service-block.b3 .block:nth-last-child(3){
        margin-bottom: 50px;
    }
    .service-block.b3 .block:nth-last-child(2),
    .service-block.b3 .block:nth-last-child(1){
        margin-bottom: 20px;
    }
        .service-block .block .img-area{
            margin-bottom: 10px;
        }
        .service-block .block .txt-area{
            position: relative;
            padding:0 2px;
        }
            .service-block .block .txt-area .ttl{
                font-size: 1.6rem;
                line-height: 1.3;
                margin-bottom: 4px;
            }
            .service-block .block .txt-area .txt{
                line-height: 1.3;
                font-size: 1.4rem;
            }
            .service-block .block .txt-area .link-btn{
                display: block;
            }
            .service-block .block .txt-area .link{
                font-size: 1.5rem;
            }
            .service-block .block .txt-area .link-btn .link{
                margin-bottom: 30px;
            }
                .service-block .block .txt-area .link a{
                    padding: 8px 18px 8px 2px;
                }
                .service-block .block .txt-area .link a::after{
                    top: calc(50% - 2px);
                }
            .service-block .block .txt-area .btn{
                font-size: 1.5rem;
                display: block;
                margin-top: 15px;
            }
                .service-block .block .txt-area .btn a{
                    display: block;
                    text-align: center;
                    margin:5px 0px 10px;
                }
                .service-block .block .txt-area .btn a:hover{
                    opacity: .7;
                }
                    .service-block .block .txt-area .btn a span{
                        display: block;
                        padding:5px 10px;
                        position: relative;
                    }
                    .service-block .block .txt-area .btn a.pdf span{
                        padding:5px 47px 5px 30px;
                    }
                        .service-block .block .txt-area .btn a.pdf span::before{
                            content: "";
                            position: absolute;
                            left: 0;
                            top: 50%;
                            transform: translateY(-50%);
                            width: 17px;
                            height: 17px;
                            background: url(../img/ico_dl.svg) no-repeat center left;
                        }
                        .service-block .block .txt-area .btn a.pdf span::after{
                            content: "PDF";
                            position: absolute;
                            right: 0;
                            top: 50%;
                            transform: translateY(-50%);
                            line-height: 1;
                            font-size: 1.2rem;
                            font-family: YuMincho, 'Yu Mincho', 'Noto Serif JP', serif;
                            padding: 3px 5px 2px;
                            background: #AB9332;
                            color: #fff;
                            letter-spacing: 0;
                            font-weight: normal;
                        }
                    .service-block .block .txt-area .btn a.book span{
                        padding:5px 57px 5px 25px;
                    }
                        .service-block .block .txt-area .btn a.book span::before{
                            content: "";
                            position: absolute;
                            left: 0;
                            top: calc(50% - 6px);
                            width: 17px;
                            height: 12px;
                            background: url(../img/ico_arrow2.svg) no-repeat center left;
                            background-size: 15px auto;
                        }
                        .service-block .block .txt-area .btn a.book span::after{
                            content: "BOOK";
                            position: absolute;
                            right: 0;
                            top: 50%;
                            transform: translateY(-50%);
                            line-height: 1;
                            font-size: 1.2rem;
                            font-family: YuMincho, 'Yu Mincho', 'Noto Serif JP', serif;
                            padding: 3px 5px 2px;
                            background: #57563B;
                            color: #fff;
                            letter-spacing: 0;
                            font-weight: normal;
                        }



/*=============================*/
.fair-bnr{
    display: block;
}
    .fair-bnr .column{
        width: 100%;
    }
    .fair-bnr .block{
        margin-bottom: 10px;
    }
        .fair-bnr .txt-area{
            padding: 10px 20px;
        }
            .fair-bnr .txt-area .ttl{
                font-size: 1.8rem;
                margin-bottom: 10px;
            }
            .fair-bnr .txt-area .txt{
                line-height: 1.6;
                font-size: 1.4rem;
                text-align: left;
            }
            .fair-bnr .txt-area .btn{
                margin-top: 15px;
                position: static;
                padding: 5px 10px;
                font-size: 1.4rem;
            }
                .fair-bnr .txt-area .btn span{
                    position: relative;
                    padding: 5px 25px 5px 25px;
                }




/*=============================*/
.benefits-detail{
    width: 100%;
    max-width: 550px;
    margin:0 auto;
}
    .benefits-detail .block{
        padding:20px 0;
        display: block;
        margin-bottom: 5px;
    }
        .benefits-detail .block .img-area{
            width: 100%;
        }
        .benefits-detail .block .txt-area{
            width: 100%;
            padding-top: 10px;
            margin-bottom: 15px;
        }

            .benefits-detail .block .txt-area .benefits-ttl{
                margin-bottom: 20px;
            }
                .benefits-detail .block .txt-area .benefits-ttl .num{
                    font-size: 8rem;
                    opacity: .5;
                }
                .benefits-detail .block .txt-area .benefits-ttl .ttl{
                    font-size: 2.2rem;
                }

            .benefits-detail .block .txt-area .list{
                font-size: 1.4rem;
                margin-bottom: 20px;
            }
                .benefits-detail .block .txt-area .list li{
                    line-height: 1.6;
                }
                .benefits-detail .block .txt-area .list li::before{
                    top: 12px;
                }
            .benefits-detail .block .txt-area .txt{
                margin-bottom: 15px;
                line-height: 1.8;
            }
            .benefits-detail .block .txt-area .rank{
                width: 100%;
                padding:15px 20px;
                margin-bottom: 20px;
            }
            .benefits-detail .block .txt-area .btn {
                padding-bottom: 10px;
            }
                .benefits-detail .block .txt-area .btn a{
                    display: block;
                    width: 100%;
                    margin: 5px 0;
                    padding:0 15px 0;
                    box-sizing: border-box;
                    text-align: center;
                }
                    .benefits-detail .block .txt-area .btn a span{
                        display: block;
                    }



/*=============================*/
.campaign-head{
    margin-bottom: 40px;
}
.campaign-head .inner{
    padding: 15px 0;
}
    .campaign-head .cat{
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }
        .campaign-head .cat span{
            font-size: 1.3rem;
            margin-right: 5px;
            padding:4px 8px;
        }
        .campaign-head .share dl dt{
            display: none;
        }


.campaign-main{
    padding:0 0px;
}

.campaign-ttl{
    font-size: 2.2rem;
    line-height: 1.4;
    margin-bottom: 30px;
}
.campaign-txt{
    font-size: 1.5rem;
    line-height: 1.4;
    margin-bottom: 50px;
}
.campaign-body{
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 60px;
}




/*=============================*/
.campaign{
    display: block;
    padding-bottom: 10px;
}
    .campaign .block{
        width: 100%;
        margin-bottom: 40px;
    }
    .campaign .block:last-child{
        margin-bottom: 20px;
    }
    .campaign .block a{
        display: block;
        text-decoration: none;
    }
        .campaign .txt-area{
            padding: 15px 0px 0;
        }
            .campaign .txt-area .ttl{
                display: block;
                font-size: 1.8rem;
                line-height: 1.5;
                margin-bottom: 10px;
            }
            .campaign .txt-area .txt{
                display: block;
                margin-bottom: 10px;
                font-size: 1.4rem;
                line-height: 1.8;
            }
        .campaign .cat{
            margin-bottom: 10px;
        }
            .campaign .cat span{
                margin-right: 5px;
                padding:2px 10px 2px;
                font-size: 1.3rem;
            }
            .campaign .day-use {
                width: 45px; 
                height: 45px;
                font-size: 1.2rem;
                line-height: 1.8;
                margin-top: -4.1rem;
                margin-left: -0.8rem;
              }



/*=============================*/
.media-block{
    padding: 15px 15px 20px;
    margin-bottom: 60px;
}
    .media-block .ttl{
        display: block;
        padding: 10px 15px;
        margin-bottom: 20px;
    }
        .media-block .ttl .t1{
            font-size: 2.4rem;
            padding-left: 35px;
            padding-right: 0px;
            background: url(../img/ico_crown.svg) no-repeat left center;
            margin-bottom: 10px;
        }
        .media-block .ttl .t2{
            font-size: 1.4rem;
        }
    .media-block .list{
        margin-bottom: 20px;
    }
        .media-block .list li{
            padding-left: 25px;
        }
            .media-block .list li::before{
                width: 12px;
                top: 11px;
            }

    .media-block .dl-block{
        display: block;
        font-size: 1.7rem;
    }
        .media-block .dl-block .dl1{
            width: 100%;
            border-right: none;
            border-bottom: 1px solid #E5E1CE;
            padding: 40px 0;
        }
        .media-block .dl-block .dl2{
            width: 100%;
        }
            .media-block .dl-block .dl2 .inner{
                width: 100%;
                box-sizing: border-box;
                padding: 20px 20px 30px;
                display: block;
            }
                .media-block .dl-block .dl2 .inner .block{
                    width: 100%;
                    padding:12px 0;
                }
        .media-block .dl-block .dl1 .name{
            margin-bottom: 15px;
        }

        .media-block .dl-block .dl2 .name{
            margin-bottom: 8px;
        }



/*=============================*/
.media-block2{
    margin-bottom: 90px;
}
.media-block2:last-child{
    margin-bottom: 0;
}
    .media-block2 .block-ttl{
        font-size: 2.4rem;
        padding-left: 40px;
        background: url(../img/ico_crown.svg) no-repeat 0px center;
        margin-bottom: 30px;
    }
    .media-block2 .dl-block{
        display: block;
        margin: 0px auto ;
        max-width: 500px;
    }
        .media-block2 .dl-block .block{
            margin-left: 0px;
            margin-bottom: 45px;
            width: 100%;
        }
            .media-block2 .dl-block .block .name{
                padding-left: 25px;
                font-size: 1.9rem;
            }
            .media-block2 .dl-block .block .inner{
                padding: 7px 7px 2px;
            }
                        .media-block2 .dl-block .block .txt-area dl dt{
                            width: 120px;
                        }
                            .media-block2 .dl-block .block .txt-area dl dt .t1{
                                font-size: 1.5rem;
                                margin-bottom: 3px;
                            }
                        .media-block2 .dl-block .block .txt-area dl dd{
                            width: calc(100% - 120px);
                            padding:0 10px;
                        }



/*=============================*/
.efforts-list{
    display: block;
    max-width: 300px;
    margin:0 auto 0px;
}
    .efforts-list .block{
        width: 100%;
        margin-left: 0px;
        margin-bottom: 60px;
    }
        .efforts-list .block .img-area{
            margin:0 auto 15px;
        }
            .efforts-list .block .txt-area .ttl{
                font-size: 1.8rem;
                margin-bottom: 10px;
                line-height: 1.4;
            }
            .efforts-list .block .txt-area .txt{
                line-height: 1.6;
            }



/*=============================*/
.nf-ttl{
    text-align: center;
    margin-bottom: 40px;
}
    .nf-ttl .ttl{
        margin-bottom: 30px;
    }
        .nf-ttl .ttl .t1{
            font-size: 16.0rem;
            letter-spacing: 12px;
        }
        .nf-ttl .ttl .t2{
            font-size: 2.8rem;
        }
    .nf-ttl .txt{
        font-size: 1.7rem;
        line-height: 1.8;
        text-align: left;
    }


/*=============================*/
.nf-bnr{
    display: block;
    margin-bottom: 40px;
}
    .nf-bnr .block{
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #D8D3B9;
        box-shadow: 0px 1px 0 rgba(255, 255, 255, .7);
        padding: 15px 0 15px;
    }
    .nf-bnr .block:nth-child(even){
        padding: 15px 0 15px;
    }
    .nf-bnr .block:last-child{
        border-bottom: none;
        box-shadow: none;
    }
        .nf-bnr .block a{
            height: 200px;
            padding-bottom: 10px;
            font-size: 1.7rem;
        }
        .nf-bnr .block .ico{
            height: 80px;
        }

/*=============================*/
.policy{
}
    .policy dl{
        margin-bottom: 10px;
    }
        .policy dl dt{
            font-size: 1.8rem;
            padding: 10px 2px;
        }
        .policy dl dd{
            font-size: 1.5rem;
            padding: 10px 2px;
            line-height: 1.8;
        }

/*================SNSリスト====================*/

    .sns-list .block{
        width: 50%;
        padding:0 8px;
        margin-bottom: 20px;
    }

/*================360度動画====================*/
.img-area360 {
    height: 760PX;
    margin-bottom: -480px;
}
.img-area360 iframe {
    height: 760PX;
}

.downScroll-btn {
    display: block;
    position: absolute;
    transform: rotate(90deg);
    z-index: 5;
}
.downScroll-btn a {
  position: relative;
  top: 19px;
  right: -79px;
  background: #aa9332;
  color: #fff;
  padding: 8px 31px 8px 8px;
  border-radius: 5px;
  opacity: .9;
  text-decoration: none;
}
.downScroll-btn a::after {
  content: "";
  position: absolute;
  right: 9px;
  top: calc(50% - 4px);
  top: 15px;
  left: 80px;  
width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}
/*================クーポン改修2024.1 ====================*/
.coupon{
    margin-bottom: 30px;
  }
  .coupon .block{
    border-left-width: 1px;
    border-top-width: 43px;
    display: block;
    width: 100%;
    margin:50px auto 90px;
  }
  .coupon .block::before {
    left: calc(50% - 80px);
    top: -37px;
    font-size: 21px;
    transform: none;
  }
  
    .coupon .block .head{
        width: 100%;
        padding:0;
        border-right: none;
        display: block;
    }
    .coupon .block .coupon-line::after {
        right: -21px;
        top: -19px;
        transform: rotate(91deg);
    }
    .coupon .block .coupon-line::before {
        left: -20px;
        bottom: -16px;
        transform: rotate(91deg);
    }
  
  
    .coupon .block .head .t2 span {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .coupon .block .head .t3.date {
        padding: 6px 0 8px 0;
        border-bottom: 3px dashed #C9C6B7;
    }
        .coupon .block .head .t1{
            line-height: 1.0;
            margin-bottom: -18px;
            padding-top: 35px;
        }
        .coupon .block .head .t2{
            background: none;
        }
        .coupon .block.type2 .head .t2 {
            background: none;
        }
        .coupon .block.type3 .head .t2 {
            background: none;
        }
  
        .coupon .block .head .t2 span::before {
            content: url(https://www.hotel-fine.co.jp/common/img/ico_box_c2.svg);
            vertical-align: middle;
            padding-right: 5px;
        }
        .coupon .block.type2 .head .t2 span::before {
            content: url(https://www.hotel-fine.co.jp/common/img/ico_tag.svg);
            vertical-align: middle;
            padding-right: 5px;
        }
        .coupon .block.type3 .head .t2 span::before {
            content: url(https://www.hotel-fine.co.jp/common/img/ico_tag.svg);
            vertical-align: middle;
            padding-right: 5px;
        }
  
    .coupon .block .body{
        width: 100%;
        padding: 15px 12px 0;
        box-sizing: border-box;
    }
        .coupon .block .body .data{
            display: block;
            font-size: 1.3rem;
        }
            .coupon .block .body .data .date{
                padding: 7px 15px;
            }
            .coupon .block .body .data .hotel{
                padding: 7px 15px;
                margin: 10px 0 0;
            }
        .coupon .block .body .txt{
            min-height: 130px;
            padding: 15px 10px;
        }
            .coupon .block .body .txt .t1{
                font-size: 1.8rem;
                margin-bottom: 10px;
            }
            .coupon .block .body .txt .t2{
                font-size: 2.1rem;
            }
                .coupon .block .body .txt .t2 em{
                    font-size: 4.0rem;
                    margin-right: 5px;
                }
        .coupon .block .body .detail{
            font-size: 1.3rem;
            padding:12px 0;
        }
            .coupon .block .body .detail ul{
                display: block;
                margin-left: 0px;
            }
                .coupon .block .body .detail ul li{
                    margin:5px 0 5px 2px;
                }
                .coupon-type-co::after {
                  left: -13px;
              }
  
  
  .coupon .block .share{
    position: absolute;
    right: 0;
    top: -90px;
  }
    .share .share-body{
        top: -27px;
        left: 35px;
        right: auto;
    }
    .coupon .block .share .share-body{
        top: 0;
        left: auto;
        right: 0;
    }
        .coupon .block .share .share-body .close{
            left: 0;
            top: 0;
            transform: translateX(-100%);
        }
  
  

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



}/*=====================================================================*/