/* 週間天気予報 */
table.weather { border-collapse: separate; border-spacing: 2px; margin-top:1.2em; }
table.weather th { color:#ffffff; padding:0.2em; text-align:center; }
table.weather td { color:#ffffff; padding:0.2em; text-align:center; }
table.weather tr.tr-week th { background-color:#808080; padding:0.5em 0.2em; border-radius:5px 5px 0 0 / 5px 5px 0 0; }
table.weather tr.tr-week th.sun { background-color:#80785f; }
table.weather tr.tr-week th.sat { background-color:#617b90; }
table.weather tr.tr-icon td { padding:1em 0.2em; }
table.weather tr.tr-temp-max td { background-color:#b07676; }
table.weather tr.tr-temp-min td { background-color:#617b90; }


/*               トップページ　ゲストルーム               */

.contents_outer.bg_gold.guestroomwrap {
    padding-bottom: 50px;
}

.mainannex-wrap {
    width: 100%;
    height: 560px;
    position: relative;
}

.border-top,
.border-bottom {
    width: 1120px;
    height: 86px;
    position: absolute;
    z-index: 5;
}

.border-left,
.border-right {
    width: 86px;
    height: 388px;
    position: absolute;
    top: 86px;
    z-index: 5;
}

.border-top {
    background: url('../../img/top_guest_room/border-top.png') no-repeat;
}

.border-bottom {
    bottom: 0;
    background: url('../../img/top_guest_room/border-bottom.png') no-repeat;
}

.border-left {
    left: 0;
    background: url('../../img/top_guest_room/border-left.png') no-repeat;
}

.border-right {
    right: 0;
    background: url('../../img/top_guest_room/border-right.png') no-repeat;
}

.mainbuildingwrap,
.annexbuildingwrap {
    position: relative;
    overflow: hidden;
    width: 50%;
    float: left;
}


/**
 * 写真部分
 */

.mainbuildingphoto,
.annexbuildingphoto {
    display: block;
    width: 100%;
    height: 560px;
}

.mainbuildingphoto {
    background: url(../../img/top_guest_room/mainbuilding_photo.jpg) no-repeat center / cover;
}

.annexbuildingphoto {
    background: url(../../img/top_guest_room/annexbuilding_photo.jpg) no-repeat center / cover;
}

.mainbuilding-box,
.annexbuilding-box {
    /* font-family: 'Roboto'; */
    box-sizing: border-box;
    position: absolute;
    width: 160px;
    height: 160px;
    padding: 30px 20px;
    font-size: 18px;
    color: #fff;
}

.mainbuilding-txt {
    position: relative;
    display: block;
}

.mainbuilding-txt:before,
.annexbuilding-txt:before {
    content: '';
    position: absolute;
    width: 9px;
    height: 16px;
    z-index: 3;
}

.mainbuilding-txt:before {
    top: 37px;
    left: 14px;
    background: url(../../img/top_guest_room/arrow_left.png) no-repeat;
}

.annexbuilding-txt:before {
    top: 67px;
    right: 34px;
    background: url(../../img/top_guest_room/arrow_right.png) no-repeat;
}

.guestroom-ja {
    font-size: 15px;
    display: block;
}

.mainbuilding-box {
    background-color: rgba(14, 43, 71, .9);
    top: 210px;
    left: 400px;
    text-align: right;
}

.annexbuilding-box {
    background-color: rgba(7, 61, 78, .9);
    top: 210px;
    right: 400px;
}

.main-popup-txt,
.annex-popup-txt {
    width: 100%;
    text-align: center;
    position: absolute;
    z-index: 10;
    color: #fff;
    font-size: 23px;
}

.main-popup-txt {
    top: 260px;
    /*top: 248px;*/
    left: 40px;
}

.annex-popup-txt {
    top: 260px;
    /*top: 248px;*/
    right: 42px;
}

.sub-popup-mainbuilding {
    /* font-weight: bold; */
}

.sub-popup-txt {
    font-size: 17px;
}

.sub-popup-en {
    display: block;
    font-size: 10px;
    margin-bottom: 5px;
}

.main-popup-txt a,
.annex-popup-txt a {
    color: #fff;
    display: block;
    width: 100%;
}

.mainbuildingcontent {
    height: 560px;
}


/*               トップページ　レストラン＆バー               */


/**
 * 拡大した時に枠外の画像隠すための処理
 */

.home_restaurant_bar_box a {
    position: relative;
    overflow: hidden;
    display: block;
}
.home_restaurant_bar_box a > img:first-child {
    transition: transform 1s ease;
    transform: scale(1.01);
}
.home_restaurant_bar_box a:hover > img:first-child {
    transform: scale(1.2);
}
a.home_restaurant_bar_box_frame::after{
content: "";
    position: absolute;
    top: 10px; left: 10px;
    width: calc(100% - 20px); height: calc(100% - 20px);
    display: block;
    border: 1px solid #ffffff;
    box-sizing: border-box;
}
@media screen and (max-width: 600px) {
    a.home_restaurant_bar_box_frame::after{
        top: 3px; left: 3px;
        width: calc(100% - 6px); height: calc(100% - 6px);
    }
}
