@charset "utf-8";

*{ 
    box-sizing: border-box; 
    outline: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

body{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
    font-family: 游明朝, "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Noto Serif JP", HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", Times, Garamond, Georgia, serif !important;
	font-weight: 500;
    -moz-font-feature-settings: "palt" 1;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
}
.lang_ch{
    font-weight: 400;
}

a{
    text-decoration: none;
}



/* デバイスサイズによって表示非表示 */
.spCont{ display: none !important; }

@media screen and (max-width: 768px){
    .pcCont{ display: none; }
    .spCont{ display: block !important; }    
}


/* _______________________________________

    共通 アニメーション
__________________________________________ */
/*
.fade-animation{
    opacity: 0.6;
    transition: all 1.2s ease 0s;
}
.fade-animation-on{
    opacity: 1;
}
*/
.fadeUp-animation{
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s ease 0s;
}
.fadeUp-animation-on{
    opacity: 1;
    transform: translateY(0px);
}


/* _______________________________________

    共通 head
__________________________________________ */

.head{
    z-index: 5;
    transition: all .3s;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 18px 30px;
}
.head_flex{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.head_logo{
    width: 447px;
    margin-bottom: 7px;
}
.head_logo img{ width: 100%; }

/* MV通過 */
.head-fixed .head{
    background-color: #fff;
}
.head-fixed .gnav_item:after{ color: #333; }
.head-fixed .gnav_item a{ 
    color: #333; 
    white-space: nowrap;
} 
.head-fixed .head_btn_langBtn{
    color: #978350;
    border: 1px solid #978350;
}
.head-fixed .head_btn--lang:hover .head_btn_langBtn,
.head-fixed.lang-open .head_btn_langBtn,
.home.lang-open .head_btn_langBtn{
    color: #fff;
    border: 1px solid #fff;
}
.head-fixed .head_logo{
    background: url('/img/logo_b.svg') 0 0 no-repeat;
    background-size: contain;
}
.head-fixed .head_logo img{
    opacity: 0;
}

.head_btn--reserv a{
    color: #fff;
}
.lang_en .head_btn_reserve_txt,
.lang_ch .head_btn_reserve_txt{
	min-width: 140px;
    padding: 38px 10px 30px;
}


@media screen and (min-width: 769px){
    /* MV通過 */
    .home .head{
        background-color: #fff;
    }
    .home .gnav_item:after{ color: #333; }
    .home .gnav_item a{ 
        color: #333; 
        white-space: nowrap;
    } 
    .home .head_btn_langBtn{
        color: #978350;
        border: 1px solid #978350;
    }
    .home .head_btn--lang:hover .head_btn_langBtn,
    .home .lang-open .head_btn_langBtn{
        color: #fff;
        border: 1px solid #fff;
    }
    .home .head_logo{
        background: url('../img/logo_b.svg') 0 0 no-repeat;
        background-size: contain;
    }
    .home .head_logo img{
        opacity: 0;
    }

    /* gnav */
    .gnav_item a{
        font-weight: 400 !important;
    }
}

@media screen and (max-width: 768px){
    .head{
        position: relative;
    }
    .head_inner{
        display: flex;
        justify-content: space-between;
        background-color: #ebe8e1;
        width: 100%;
    }
    .head_logo{
        display: flex;
        align-items: center;
        width: 54.68vw;
        max-width: 300px;
        margin: 0;
        padding: 6px 0 10px 20px;
    }
    .head_logo img{ 
        display: block;
        width: 100%; 
    }
}


/* _______________________________________

    共通 ナビゲーション
__________________________________________ */

.gnav_list{
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
}
.gnav_item{
	display: flex;
	align-items: center;
}
.gnav_item:after{
    content: '｜';
    display: inline-block;
    color: #fff;
    margin:  0 .5em 0 .3em;
}
.gnav_item:last-child:after{ display: none; }
.gnav_item a{
    display: inline-block;
    transition: all .3s;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    font-weight: 300;
    line-height: 1.4;
    letter-spacing: 0.18em;
    white-space: nowrap;
}

.gnav_item a:hover{
    color: #eedeb4;
}

@media screen and (max-width: 768px){
    .gnav{ 
        opacity: 0;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        z-index: 3;
        position: fixed;
        top: 0;
        left: 0;
        background-color: rgba(27, 24, 24, .7 );
        width: 100vw;
        height: 100vh;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    .menu-open .gnav{
        opacity: 1;
        display: flex;
        justify-content: center;
        align-items: center;
       -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .gnav_item{
        width: 100%;
    }
    .gnav_item a{
        display: block;
        line-height: 2.75;
        text-align: center;
        width: 100%;
    }
    .gnav_item:after{ display: none; }
}

@media screen and (max-width: 500px){
    .gnav_item a{ font-size: 16px; }
}


/* _______________________________________

    共通 言語 + 予約
__________________________________________ */

.head_btnWrap{
    display: flex;
}
.head_btn{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transform: rotate(.03deg);
    transform: rotate(.03deg);
    color: #fff;
    line-height: 1;
    width: 140px;
}

.head_btn--lang{
    margin-right: 15px;
}
.head_btn_langBtn{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    border: 1px solid #fff;
    width: 100%;
    height: 100%;
    padding: 38px 0 30px;
}

.head_btn_reserve_txt{
    cursor: pointer;
    font-size: 20px;
    background-color: #978350;
    text-align: center;
    width: 100%;
    padding: 38px 0 30px;
}


.lang_en .head_btn_reserve_txt,
.lang_ch .head_btn_reserve_txt{
    font-size: 16px;
    line-height: 22px;
}

.head_btn--lang{
    cursor: pointer;
    transition: all .3s;
}

.head_btn_langList{
    overflow: hidden;
    opacity: 0;
    height: 0;
    position: absolute;
    top: 100%;
    left: 0px;
    border: 1px solid #fff;
    border-top: 0;
    background-color: #978350;
    width: 100%;
}
.head_btn_langList_item:first-child{ margin-top: 11px; }
.head_btn_langList_item:last-child{ margin-bottom: 11px; }
.head_btn_langList_item a{
    display: block;
    color: #fff;
    font-size: 18px;
    text-align: center;
    line-height: 1.77;
    letter-spacing: 0.18em;
}
.head_btn_langList_item a:hover{
    text-decoration: underline;
}

.head_menu{ display: none; }



/* 既存予約部分 */
#reserveBox {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    background-color: #323536;
    text-align: left;

    -webkit-transform: translateX(-88.9%);
    transform: translateX(-88.9%);

    filter: alpha(opacity=95);
    -ms-filter: "alpha(opacity=95)";
    -moz-opacity: 0.95;
    -khtml-opacity: 0.95;
    opacity: 0.95;
    border: 1px solid #CCCCCC;
    border-radius: 4px 0px 4px 4px;
    -moz-border-radius: 4px 0px 4px 4px;
    -webkit-border-radius: 4px 0px 4px 4px;

    width: 95vw;
    max-width: 1000px;

    padding: 24px 20px 20px;
}


.reserveBoxL{
    float: left;
    width: 65%;
    max-width: 349px;
}
.reserveBox_item{

}
.reserveBox_ttl{
    display: flex;
    align-items: center;
    font-size: 20px;
    /*font-family: -apple-system, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Yu Gothic UI", "メイリオ", Meiryo, "Meiryo UI", "Helvetica Neue", sans-serif;*/
    line-height: 1;
    margin-bottom: 10px;
    white-space: nowrap;
}

.reserveBox_ttl:before{
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #978350;
    margin-right: 10px;
}
.reserveBox_form{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 20px;
    font-family: -apple-system, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Yu Gothic UI", "メイリオ", Meiryo, "Meiryo UI", "Helvetica Neue", sans-serif;
}
.reserveBox_form input[type="text"]{
    border: 2px solid #b1b3b2;
    border-radius: 10px;
    width: 100%;
    max-width: 248px;
    height: 30px;
    margin: 0 0 29px 23px;
    padding-left: 1em;
}
.reserveBox_form_txt{
    color: #fff;
    font-size: 16px;
    margin-left: 9px;
}

.reserveBox_item--flex{
    display: flex;
}
.reserveBox_item_child{
    margin-right: 40px;
}

.reserveBox_form_select{
    overflow: hidden;
    position: relative;
    border-radius: 10px;
    background-color: #fff;
    width: 80px;
    height: 35px;
    margin-left: 20px;
    
}
.reserveBox_form_select:before{
    content: '';
    display: block;
    z-index: 1;
    position: absolute;
    top: 50%;
    right: 13px;  
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 6px 0 6px;
    border-color: #ffffff transparent transparent transparent;
    pointer-events: none;
}
.reserveBox_form_select:after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: -1px;
    background-color: #4a4a4a;
    width: 50%;
    height: 102%;
    pointer-events: none;
}

.reserveBox_form_select select{
    font-size: 16px;
    width: 100%;
    height: 100%;
    padding-right: 50%;
    padding-left: .9em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.reserveBox_form_select select::-ms-expand {
    display: none;
}

.reserveBoxR{
    width: 35%;
    max-width: 197px;
    float: right;
}
.reserveBoxR_btn{ margin-bottom: 14px; }

#resrve_close{ cursor: pointer; }

@media screen and (min-width: 769px){
    .head_btn--lang:hover,
    .lang-open .head_btn--lang{
        background-color: #978350;
    }
    .lang-open .head_btn_langList{ 
        opacity: 1;
        height: auto;
    }

    .head_btn_reserve_txt{
        z-index: 2;
        position: relative;
        border: 3px solid transparent;
    }
    .head_btn--reserv:hover .head_btn_reserve_txt,
    .reserve-open .head_btn_reserve_txt{
        background-color: #363636;
        border-color: #d8d8d8;
    }
    #reserveBox{
        z-index: 2;
        opacity: 1;
        box-sizing: border-box;
        border: 3px solid #d8d8d8;
        background-color: #363636;
        width: 605px;
    }
    .reserve-open #reserveBox{
        display: block;
        left: calc(50% + 2.5px);
    }
    #reserveBox:after{
        content: '';
        display: block;
        position: absolute;
        top: -9px;
        right: 0px;
        background-color: #363636;
        width: 134px;
        height: 10px;
    }
}

@media screen and (max-width: 1080px){
    .head{
        padding: 2vw;
    }
}

@media screen and (max-width: 768px){
    .head{
        z-index: 11;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        padding: 0;
    }
    .head_flex{ flex-wrap: wrap; }
    .head_menu{
        position: relative;
        z-index: 4;
        display: block;
        cursor: pointer;
        background-color: #978350;
        width: 60px;
        padding: 1.56vw 0 1vw;
    }
    .head_menu span{
        display: block;
        width: 49%;
        margin: 0 auto 8px;
        height: 2px;
        background: #fff;
        transition: 0.3s;
        transform-origin: 50%;
    }

    .head_menu span {
        background: #fff;
    }
    .head_menu.on span:nth-child(1) {
        transform: rotate(45deg) translateY(13px) translateX(10.5px);
    }
    .head_menu.on span:nth-child(2) {
        transform: scaleX(0);
    }
    .head_menu.on span:nth-child(3) {
        transform: rotate(-45deg) translateY(-8px) translateX(6px);
    }
    .head_menu_txt{
        color: #fff;
        font-size: 10px;
        text-align: center;
        line-height: 1;
        letter-spacing: 0.1em;
        margin-top: 1.3vw;
    }

    /* 言語　+ 予約 */
    .head_btnWrap{
        position: relative;
        justify-content: flex-end;
        align-items: center;
        background-color: #1f1f1f;
        width: 100%;
        padding: 10px 2.34vw;
    }
    .head_btn{ width: auto; }
    .head_btn img{ 
        display: block;
   		width: 100%; 
    }
    .head_btn--reserv{
        background-color: transparent;
        padding: 0;
    }
    .head_btn--lang{
        margin: 0 auto 0 0;
    }
    .head_btn_langBtn{
        z-index: 3;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        height: 100%;
        padding: 5px;
    }
    .head_btn--telI{
        display: flex !important;
        align-items: center;
        width: 34.2vw;
        max-width: 128px;
    }

    .head_btn--telB{
        width: 9.6vw;
        max-width: 36px;
    }
    .head_btn_reserve_img{
        width: 22.9vw;
        max-width: 85px;
    }

    .head_btn--telI,
    .head_btn--telB{ margin-right: 10px; }

    /* 言語 */
    .lang-open .head_btn--lang{
        z-index: 16;
    }
    .lang-open .head_btn_langBtn{
        z-index: 16;
        flex-wrap: wrap;
        flex-direction: column;
        line-height: 1;
        background-color: #978350;
    }
    .lang-open .head_btn_langBtn:after{
        content: '×';
        display: block;
        width: 100%;
        line-height: 1;
    }
    .head_btn_langList{
        position: fixed;
        top: -16vw;
        left: -2.73vw;
        width: 100vw;
        height: 100vh;
        background-color: rgba(27, 24, 24, .7 );
        border: 0;
        padding: 0;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    .lang-open .head_btn_langList{
        position: fixed;
        top: -16vw;
        left: -2.73vw;
        z-index: 15;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .head_btn_langList_item{
        width: 100%;
    }
    .head_btn_langList_item a{
        font-size: 20px;
        line-height: 2.75;
    }


    /* 予約 */
    #reserveBox{
        top: 95%;
        left: 54%;
        max-width: 470px;
        margin: 0;
        padding: 3.5vw 2.6vw;
    }
    .reserveBox_ttl,
    .reserveBox_form_txt{ font-size: 16px; }
    .reserveBox_ttl:before{ border-width: 5px 0 5px 10px; }
    .reserveBox_form input[type="text"]{ 
        width: 159px;
        height: auto;
        margin: 0 0 3.77vw 3.125vw; 
    }
    .reserveBox_item_child{ margin-right: 3.255vw; }
    .reserveBox_item_child:last-child{ margin-right: 0; }
    .reserveBox_form_select{
        width: 60px;
        height: 30px;
        margin-left: 3.125vw;
    }
    .reserveBox_form_select select{
        height: 100%;
        padding-left: .7em;
    }
    .reserveBox_form_select:before{ right: .5em; }
    .reserveBox_ttl:before{ margin-right: 5px; }

}

@media screen and (max-width: 500px){
    .head_menu{
        display: block;
        cursor: pointer;
        background-color: #978350;
        width: 23.28%;
        max-width: 102px;
        padding: 1.56vw 0 1vw;
    }
    .head_menu span{
        display: block;
        width: 40%;
        margin: 0 auto 8px;
        height: 2px;
        background: #fff;
        transition: 0.3s;
        transform-origin: 50%;
    }

    .head_menu span {
        background: #fff;
    }
    .head_menu.on span:nth-child(1) {
        transform: rotate(45deg) translateY(10px) translateX(6.5px);
    }
    .head_menu.on span:nth-child(2) {
        transform: scaleX(0);
    }
    .head_menu.on span:nth-child(3) {
        transform: rotate(-45deg) translateY(-7px) translateX(5px);
    }

    .head_menu_txt{
        color: #fff;
        font-size: 2.34vw;
        text-align: center;
        line-height: 1;
        letter-spacing: 0.1em;
        margin-top: 1.3vw;
    }
    .head_btn_langList_item a{ font-size: 16px; }

    /* 予約 */
    .reserveBox_ttl, 
    .reserveBox_form_txt{ font-size: 14px; }
    .reserveBox_form_txt{ margin-left: 4px; }
    .reserveBox_form_select{ width: 55px; }
    .reserveBoxR{ margin-top: 4.2vw; }
}




/* _______________________________________

    トップ用　メインビジュアル 
__________________________________________ */

.home-mv{
    overflow: hidden;
    position: relative;
    height: 100vh;
}
.home-mv_list{ height: 100%; }
.home-mv_img{ 
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 1s;
    width: 100vw;
    height: 100vh;
}
.home-mv_img.active{ 
    opacity: 1;
}
.home-mv_img--summer{
    background: url('../img/main_a.jpg') center center no-repeat;
    background-size: cover;
}
.home-mv_img--winter{
    background: url('../img/main_a.jpg') center center no-repeat;
    background-size: cover;   
}

@media screen and (max-width: 1080px){
    .mv_mainTtl{ display: none; }
}

@media screen and (max-width: 768px){
    .home-mv{ margin-bottom: 7.8vw; }
    .home-mv,
    .home-mv_img{
        height: 48vw;
    }
}


/* _______________________________________

    トップ用　メインビジュアル - 見出し
__________________________________________ */

.mv_ttl{
    z-index: 1;
    position: absolute;
    top:50%;
    right:30px;
    -webkit-transform: rotate(.03deg) translateY(-50%);
    transform: rotate(.03deg) translateY(-50%);
    color: #fff;
    font-weight: 300;
    font-size: 20px;
    text-align: right;
    letter-spacing: 0.18em;
    width: 100%;
}

@media screen and (max-width: 768px){
    .mv_ttl{ 
        top: 16.27vw;
        right: 2.37vw;
        font-size: 14px; 
    }
}

@media screen and (max-width: 500px){
    .mv_ttl{
        font-size: 3.38vw;
    }
}

/* _______________________________________

    トップ用　メインビジュアル - 季節ボタン
__________________________________________ */

.mv_btnWrap{
    position: absolute;
    right: 30px;
    bottom: 34px;
}

.mv_btn_item{
    display: none;
    cursor: pointer;

    -webkit-transform: rotate(.03deg);
    transform: rotate(.03deg);

    -moz-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;

    color: #717171;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.18em;
    background-color: #fff;
    width: 209px;
    padding: 12px 0;
}
.mv_btn_item:hover{
    color: #fff;
    background-color: #978350;
}
.mv_btn_item.active{
    display: block;
}

@media screen and (max-width: 768px){
    .mv_btnWrap{
        right: 2.34vw;
        bottom: 2.6vw;
    }
    .mv_btn_item{ 
        font-size: 2.99vw; 
        width: 31.1vw;
        padding: 2.2vw 0;
    }
}

/* _______________________________________

    トップ用　メニュー
__________________________________________ */

.home-menuList{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.home-menu_item{
    position: relative;
    background-color: #000;
    width: calc(100% / 3);
}
.home-menu_item--col2{
    width: calc(100% / 2);
}
.home-menu_item a{
    color: #eedeb4;
}
.home-menu_img{ 
    overflow: hidden;
    transition: all 0.8s ease 0s;
    width: 100%; 
}

.home-menu_img:before{
    content: '';
    display: block;
    transition: all 0.3s;
    z-index: 1;
    opacity: 1;
    position: absolute;
    background-color: rgba(0, 0, 0, .5);
    width: 100%;
    height: 100%;
}
.home-menu_img img{ 
    vertical-align: bottom;
    transition: all 0.8s ease 0s;
    width: 100%; 
}
.home-menu_img--pc{ display: block; }
.home-menu_img--sp{ display: none; }

.home-menu_item:hover .home-menu_img:before{
    opacity: .6;
}
.home-menu_item:hover .home-menu_img img{
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.home-menu_detail{
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;    
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.home-menu_detail_icon{
    display: flex;
    align-items: flex-end;
    justify-content: center;
    text-align: center;
    margin-bottom: 16px;
}
.home-menu_detail_icon img{
    vertical-align: bottom;
}

.menu_icon_condominium{ width: 96px; }
.menu_icon_guest{ width: 81px; }
.menu_icon_restrant{ width: 62px; }
.menu_icon_spa{ width: 99px; }
.menu_icon_facilty{ width: 93px; }
.menu_icon_sightseeing{ width: 97px; }
.menu_icon_access{ width: 71px; }
.menu_icon_contact{ width: 91px; }
.menu_icon_reservation{ width: 90px; }

.home-menu_detail_jp{
    font-size: 20px;
    text-align: center;
    line-height: 22px;
    margin-bottom: 4px;
}
.home-menu_detail_en{
    font-size: 13px;
    text-align: center;
    line-height: 22px;
}

@media screen and (max-width: 768px){
    .home-menu_item{
        width: calc(100% / 2);
        height: 50vw;
    }
    .home-menu_detail_jp{
        font-size: 14px;
        line-height: 2.86vw;
        width: 100%;
    }
    .home-menu_detail_en{
        font-size: 12px;
        line-height: 2.86vw;
    }
    .home-menu_img--pc{ display: none; }
    .home-menu_img--sp{ display: block; }
    .home-menu_detail_icon { margin-bottom: 1.63vw; }
    .menu_icon_condominium{ width: 15.1vw; }
    .menu_icon_guest{ width: 12.89vw; }
    .menu_icon_restrant{ width: 8.07vw; }
    .menu_icon_spa{ width: 13.28vw; }
    .menu_icon_facilty{ width: 12.89vw; }
    .menu_icon_sightseeing{ width: 12.36vw; }
    .menu_icon_access{ width: 9.11vw; }
    .menu_icon_contact{ width: 11.97vw; }
    .menu_icon_reservation{ width: 11.06vw; }
}

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

    .menu_icon_condominium{ width: 18.1vw; }
    .menu_icon_guest{ width: 15.89vw; }
    .menu_icon_restrant{ width: 11.07vw; }
    .menu_icon_spa{ width: 16.28vw; }
    .menu_icon_facilty{ width: 15.89vw; }
    .menu_icon_sightseeing{ width: 15.36vw; }
    .menu_icon_access{ width: 12.11vw; }
    .menu_icon_contact{ width: 14.97vw; }
    .menu_icon_reservation{ width: 14.06vw; }
    .home-menu_detail_jp{
        font-size: 4.3vw;
        line-height: 5vw;
    }
    .home-menu_detail_en{
        font-size: 3.2vw;
    }
}


/* _______________________________________

    共通　新着情報
__________________________________________ */

.home-info{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1080px;
    margin: 0 auto 44px;
}

.home-info_left{
    width: 52%;
}
.home-info_right{
    width: 46.29%;
}



.home-info_ttl{
    display: flex;
    align-items: center;
    color: #fff;
    font-size: 19px;
    letter-spacing: 0.18em;
    margin-bottom: 17px;
    padding: 8px 0 4px 20px;
}
.home-info_ttl a{
    display: block;
    color: #fff;
    font-size: 13px;
    text-decoration: none;
    margin-left: 20px;
}
.home-info_ttl--news{
    background-color: #978350;
}
.homei-nfo_ttl--blog{
    background-color: #b59d60;
}

.home-info_ttl a:after{
    content: '';
    display: block;
    width: 0;
    height: 1px;
    background-color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s;
}

.home-info_ttl a:hover:after{
    width: 100%;
}

.home-info_news{
    width: 100%;
}

.home-info_blog{
    width: 100%;
    margin-bottom: 27px;
}

.home-info_news_list{
    overflow-y: auto;
    min-height: 105px;
    max-height: 435px;
    margin-bottom: 44px;
}

.home-info_news_list .ib{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    letter-spacing: 0.08em;
    margin-bottom: 12px;
}
.home-info_news_list .ib .img{
    /* 新着情報 サムネイル 非表示 */
    display: none;
}
.home-info_news_list .ib p,
.home-info_news_list .ib a{
    color: #717171;
    font-size: 13px;
    margin-right: 25px;
}
.home-info_news_list .ib p.date{
    margin-right: 25px;
}


.home-info_blog_list{
    overflow: hidden;
}
.home-info_blog_list dt,
.home-info_blog_list dd{
    color: #717171;
    font-size: 13px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    float:left; 
}
.home-info_blog_list dt{
    clear: both;
    margin-right: 25px;
}
.home-info_blog_list dd{
    margin-bottom: 12px;
}
.home-info_blog_list dd a{
    color: #717171;
}
.home-info_news_list .ib a:hover,
.home-info_blog_list dd a:hover{
    border-bottom: 1px solid #a5a5a5;
}



/* facebook */
.home-info_sns{
	display: flex;
	justify-content: center;
	margin-bottom: 50px;
	width:100%;
    height: 100%;
}


.home-facebook{
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.home-facebook *{ 
    height: 100% !important; 
    max-height: 500px;
}

.home-facebook iframe{
	position: static !important;
    width: 100%;
    height: 135px;
}

.home-instagram{
	overflow: hidden;
	width: 100%;
	max-height: 500px;
}
.home-instagram iframe{
    display: block;
	width: 100% !important;
	max-width: 500px;
}

.home-instagram_ttl{
    display: flex;
    align-items: center;
    background-color: #ebe8e1;
    margin-bottom: 5px;
    padding: 8px 7px;
}
.instagram_ttl_icon{
    margin-right: 10px;
}
.instagram_ttl_icon img{
    display: block;
}
.instagram_ttl_txt{
    color: #62462b;
    font-size: 18px;
    font-family: YuGothic,'Yu Gothic',sans-serif;
    font-weight: bold;
    line-height: 1.33;
}
.home-instagram_btn{
    transition: all .4s;
    background-color: #62462b;
}
.home-instagram_btn:hover{
    background-color: #ebe8e1;
}
.home-instagram_btn:hover a{
    color: #62462b;
}
.home-instagram_btn a{
    display: block;
    color: #fff;
    font-size: 13px;
    font-family: YuGothic,'Yu Gothic',sans-serif;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.22em;
    text-align: center;
    padding: 18.5px 0; 
}

@media screen and (min-width: 640px){
    /* 日本語ページのみ */
    .home-info--jp{
        justify-content: center;
    }
    .home-info--jp .home-info_left,
    .home-info--jp .home-info_right{
        width: 47%;
        margin: 0 1%;
    }
}

@media screen and (max-width: 1080px){
    .home-info{
        padding: 0 2.34vw;
    }
    .home-info_blog_time{
        display: block;
    }
}
@media screen and (max-width: 768px){
    .home-info{
        flex-wrap: wrap;
    }
    .home-info_ttl{
        font-size: 18px;
        padding: 10px 0 10px 4.1vw;
    }
    .home-info_ttl a{
        font-size: 14px;
        margin-left: 1em;
    }
    .home-info_news{
        margin-bottom: 7.68vw;
    }
    .home-info_blog{ 
        margin-bottom: 8vw; 
    }
    .home-info_news_list .ib p, 
    .home-info_news_list .ib a{
        font-size: 14px;
        width: 100%; 
        margin: 0;
    }
    .home-info_news_list .ib p.date{
        margin-right: 0;
    }

    .home-info_blog_list dt, 
    .home-info_blog_list dd{
        font-size: 14px;
    }
    .home-info_blog_list dt{
        margin-right: 0;
    }

	.home-info_blog_list dt, 
    .home-info_blog_list dd{
		float: none;
	}

	
    .home-info_sns{
        display: flex;
        justify-content: space-between;
        width: 100%;
        max-width: 100%;
    }
    .home-facebook{ 
        margin: 0; 
    }
    .home-instagram{
        width: 100%;
    }
    .facebook_frame{
        width: 100%;
        max-width: 100%;
    }
}

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

    .home-info_left,
    .home-info_right{
        width: 100%;
    }
    .home-info_sns{
        flex-wrap: wrap;
        margin-bottom: 7.68vw;
    }
    .home-info_news,
    .home-info_blog, 
    .home-facebook,
    .home-instagram{ 
        width: 100%; 
        max-width: 100%;
    }
    .home-info_news_list{ margin: 0; }
    .home-facebook{ margin-bottom: 8vw; }
    .fb-page{ width: 100%; }

    .home-facebook{ height: auto; }
    .home-facebook *{ 
        height: 400px !important; 
    }
}



/* _______________________________________

    共通　バナー群
__________________________________________ */

.bnrList{
    -js-display: flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1080px;
    margin: 0 auto 28px;
}

.bnrList_item{ 
    width: 25%;
    transition: all .3s; 
}
.bnrList_item:hover{ opacity: 0.7; }
.bnrList_item img{ 
    vertical-align: bottom;
    width: 100%; 
}

/* inner の値がこの数値の為 */
@media screen and (max-width: 1080px){
    .bnrList{
        padding: 0 2vw;
    }
    .bnrList_item{
        width: 25%;
    }
    
}
@media screen and (max-width: 768px){
     .bnrList_item{
        width: 50%;
    }
}


/*===========================================*/
/*==　BTN hover　==*/
/*===========================================*/

.btn a{
    border: 1px solid #978350;
    transition: all .4s;
}
.btn:hover a{
    color: #978350;
    background-color: #fff;
}




/* _______________________________________

    共通　フッター
__________________________________________ */

#footer{
    background-color: #ebe8e1;
    /* padding: 26px 0 24px; */
    padding: 26px 0 5vw;
}

.footer_navList{
    -js-display: flex;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 26px;
    white-space: nowrap;
}
.footer_navList_item{
	display: flex;
	align-items: center;
}
.footer_navList_item a{
    transition: all .4s;
    color: #978350;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}
.footer_navList_item:after{
    content: '｜';
    display: inline-block;
    margin: 0 12px;
}
.footer_navList_item:last-child:after{
    display: none;
}

.footer_navList_item a:hover{ color: #fff; }



.footer_inner{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
}
.footer_detail_logo{
    margin-bottom: 27px;
}
.footer_detail_logo img{ 
    vertical-align: bottom; 
    max-height: 25px;
}
.footer_detail_txt{
    color: #978350;
    font-size: 13px;
    line-height: 1.7;    
}
.footer_detail_txt a{
    color: #978350;
}


.footer_infoList{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 350px;
}
..footer_infoList--ch{
	width: 312px;
}

}

.footer_infoList_item{ white-space: nowrap; }
.footer_infoList_item:after{
    content: '|';
    display: inline-block;
    color: #978350;
    font-size: 13px;
    margin: 0 8px;
}
.footer_infoList_item a{
    display: inline-block;
    transition: all .4s;
    color: #978350;
    font-size: 13px;
    line-height: 1.69;
    letter-spacing: 0.18em;
    white-space: nowrap;
}

.footer_infoList_item a:hover{ color: #fff; }

#copyright{
    color: #978350;
    font-size: 13px;
    line-height: 1.69;
    text-align: right;
    letter-spacing: 0.18em;
}



@media screen and (max-width: 1080px){
    .footer_navList{
        width: 70%;
        margin-right: auto;
        margin-left: auto;
    }
    .footer_detail_logo{ width: 90%; }
    .footer_detail_logo img{ width: 100%; }
    .footer_inner{
        padding: 0 2vw;
    }
}

@media screen and (min-width: 769px){
    .footer_infoList_item:nth-child(3):after,
    .footer_infoList_item:last-child:after{ display: none; }
    
    .lang_en .footer_infoList_item:after {
	    content: '|';
	    display: inline-block;
	    color: #978350;
	    font-size: 13px;
	    margin: 0 8px;
	}
	.lang_en .footer_infoList{ width: 270px; }
	.lang_en .footer_infoList_item:nth-child(2):after,
	.lang_en .footer_infoList_item:last-child:after{ display: none; }
}

@media screen and (max-width: 768px){
    #footer{
        /* padding: 3.77vw 0; */
        padding: 3.77vw 0 15vw;
    }
    .footer_nav{ display: none; }
    .footer_inner{
        flex-wrap: wrap;
        padding: 0 4vw;
    }
    .footer_detail{ width: 100%; }
    .footer_detail_logo{
        width: 64%;
        margin-bottom: 6.25vw;
    }
    .footer_detail_txt{
        font-size: 14px;
        line-height: 2.09;
    }
    .footer_detail_txt--nom{
        font-size: 17px;
        margin-bottom: 4vw;
    }
	
    .footer_infoList,
    .footer_infoList--ch{
        width: 100%;
        justify-content: flex-start;
        margin-bottom: 10.41vw;
    }
    .footer_infoList_item{
        display: flex;
    }
    .footer_infoList_item:after,
    .footer_infoList_item a{    
        font-size: 16px; 
        line-height: 1.91;
        white-space: nowrap;
    }

    #copyright{
        font-size: 2vw;
        text-align: center;
    }
}

@media screen and (max-width: 500px){
    .footer_detail_txt{
        font-size: 2.86vw;
    }
    .footer_detail_txt--nom{
        font-size: 3.38vw;
        margin-bottom: 4vw;
    }
    .footer_infoList_item:after,
    .footer_infoList_item a{    
        font-size: 2.86vw; 
        line-height: 5.98vw;
        white-space: nowrap;
    }
}

/* chinese_t english →　NEWS BLOG */
.lang_ch .home-info_left,
.lang_en .home-info_left{
    display: none;
}

.lang_ch .home-info_right,
.lang_en .home-info_right{
    height: 500px;
}

.lang_ch .footer_infoList{
    width: 300px;
}


/* _______________________________________

    共通　PDF ボタン
__________________________________________ */

.pdfBtns{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 96%;
    max-width: 530px;
    margin: 0 auto 28px;
}
.pdfBtn{
    color: #333;
    border: 1px solid #ccc;
    width: 260px;
}
.pdfBtn--reservation{
    transition: all .4s;
    color: #fff;
    background-color: #aaad2c;
}
.pdfBtn a{
    transition: all .4s;
    display: flex;
    justify-content: center;
    align-items: center;
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    line-height: 1.2;
    padding: 20px;
}
.pdfBtn a:before{
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 8px;
    border-color: transparent transparent transparent #333;
    margin-right: 10px;
}

.pdfBtn--reservation a:before{
    border-color: transparent transparent transparent #fff;
}

@media screen and (min-width: 769px){
    .pdfBtn a:hover{
        opacity: 0.7;
    }
    /*
    .pdfBtn--reservation:hover{
        background-color: #88ccc4;
    }
    .pdfBtn--reservation:hover a{
        opacity: 1;
    }
    */

    .pdfBtn a br{ display: none; }
}
@media screen and (max-width: 768px){
    .pdfBtn{
        width: calc( 100% / 2 - 5px);
    }
    .pdfBtn a{
        height: 100%;
        padding: 10px 0;
    }
}



/* _______________________________________

    ページャー
__________________________________________ */

.paging{
    
}



/* _______________________________________

    下部固定バナー
__________________________________________ */

#flo_bnr{
    z-index: 5;
    position: fixed;
    bottom: 0;
    left: 0;
    text-align: center;
    /* background-color: #532c27; */
    background: #434456;
		background: -moz-linear-gradient(left, #c7c8cd 0%, #c7c8cd 50%, #434456 50%, #434456 100%);
		background: -webkit-gradient(linear, left center, right center, from(#c7c8cd), color-stop(50%, #c7c8cd), color-stop(50%, #434456), to(#434456));
		background: -webkit-linear-gradient(left, #c7c8cd 0%, #c7c8cd 50%, #434456 50%, #434456 100%);
		background: -o-linear-gradient(left, #c7c8cd 0%, #c7c8cd 50%, #434456 50%, #434456 100%);
		background: linear-gradient(to right, #c7c8cd 0%, #c7c8cd 50%, #434456 50%, #434456 100%);
    width: 100%;
}
#flo_bnr img{
    vertical-align: bottom;
    max-width: 100%;
}
#flo_bnr .sp{
    display: none;
}

@media screen and (max-width: 768px){
    #flo_bnr .pc{
        display: none;
    }
    #flo_bnr .sp{
        display: block;
    }    
}