@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');

:root {
    --color-brown: #663606;
    --color-green: #357a16;
}

#container{
    min-width: 1280px;
}

/* Rest
-----------------------------------------------------------------------*/
.family-lp {
    line-height: 1;
    background: #FFF;
    -webkit-highlight: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: text;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
}
.family-lp, .family-lp div, .family-lp span, .family-lp iframe,
.family-lp h1, .family-lp h2, .family-lp h3, .family-lp h4, .family-lp h5, .family-lp h6, .family-lp p, .family-lp blockquote, .family-lp pre,
.family-lp a, .family-lp address, .family-lp cite,.family-lp del,.family-lp em,.family-lp img,
.family-lp small, .family-lp strike, .family-lp sub, .family-lp sup,
.family-lp b, .family-lp u, .family-lp i, .family-lp center, .family-lp dl, .family-lp dt, .family-lp dd, .family-lp ol, .family-lp ul, .family-lp li,
.family-lp form, .family-lp label, .family-lp table, .family-lp caption, .family-lp tbody, .family-lp tfoot, .family-lp thead, .family-lp tr, .family-lp th, .family-lp td,
.family-lp article, .family-lp aside, .family-lp canvas, .family-lp details, .family-lp embed,
.family-lp figure, .family-lp figcaption, .family-lp footer, .family-lp header,
.family-lp menu, .family-lp nav, .family-lp section, .family-lp time, .family-lp audio, .family-lp video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
}
.family-lp article, .family-lp main, .family-lp aside, .family-lp details, .family-lp figure,
.family-lp footer, .family-lp header, .family-lp hgroup, .family-lp menu, .family-lp nav, .family-lp section {
    display: block;
}
.family-lp article{
    z-index: 1;
    position: relative;
}
.family-lp ol, .family-lp ul {
    list-style: none;
}

.family-lp .display-pc{
    display: block !important;
}
.family-lp .display-sp{
    display: none !important;
}
@media screen and (max-width:787px){
    .family-lp .display-pc{
        display: none !important;
    }
    .family-lp .display-sp{
        display: block !important;
    }
}

.family-lp .nolink {
    pointer-events: none;
    text-decoration-line: none;
    color: inherit !important;    
}

.family-lp .fc-green{
    color: var(--color-green);
}

.family-lp .ta-l{
    text-align: left;
}
.family-lp .ta-r{
    text-align: right;
}
.family-lp .ta-c{
    text-align: center;
}

/* content
-----------------------------------------------------------------------*/

.family-lp{
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 20px;
    line-height: 2;
    color: var(--color-brown);
    font-weight: 700;
    padding-top: 120px;
}
.family-lp img{
    width: 100%;
}
.family-lp a,
.family-lp .over{
    transition: opacity .25s;
}
.family-lp a:hover,
.family-lp .over:hover{
    opacity: .7;
}
.family-lp strong{
    font-weight: 900;
}

.family-lp .content-top{
    padding: 80px 0 350px;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/mv_bg01.webp") 50% 100% no-repeat;
    background-size: cover;
    position: relative;
}

.family-lp .mv{
    padding: 0 5.2%;
    position: relative;
}
.family-lp .mv .mv-ti{
    margin: 0 auto;
    width: 35.625%;
    max-width: 684px;
    position: absolute;
    top: 8.11%;
    left: 0;
    right: 0;
    z-index: 1;
}
.family-lp .mv .mv-img{
    margin: 0 auto;
    max-width: 1720px;
    line-height: 0;
    position: relative;
}
.family-lp .mv .mv-img .img-art{}
.family-lp .mv .mv-img .img-art span{
    display: block;
    position: absolute;
}
.family-lp .mv .mv-img .img-art .img-art01{
    top: -3.78%;
    left: -1.1%;
    width: 30.1744%;
}
.family-lp .mv .mv-img .img-art .img-art02{
    top: 32.3%;
    left: 1.16%;
    width: 13.6%;
}
.family-lp .mv .mv-img .img-art .img-art03{
    bottom: -6.33%;
    right: -2.21%;
    width: 46%;
}
.family-lp .mv .mv-img .img-art .img-art04{
    bottom: 0;
    left: 0;
    width: 38%;
}
.family-lp .mv .mv-txt{
    margin: 0 auto;
    text-align: center;
    color: #ffffff;
    line-height: 1;
    position: absolute;
    bottom: 3.1%;
    left: 0;
    right: 0;
}
.family-lp .mv .mv-txt .txt-ja{
    font-size: 1.67vw;
    font-weight: 900;
    text-shadow: 0px 0px 10px #663606;
}
.family-lp .mv .mv-txt .txt-en{
    font-size: 0.9375vw;
    font-weight: 500;
    margin-top: 1.1em;
    text-shadow: 0px 0px 10px #663606;
}
@media screen and (min-width:1921px){
    .family-lp .mv .mv-txt .txt-ja{
        font-size: 32px;
    }
    .family-lp .mv .mv-txt .txt-en{
        font-size: 18px;
    }
}
@media screen and (max-width:1280px){
    .family-lp .mv .mv-txt .txt-ja{
        font-size: 21.63px;
    }
    .family-lp .mv .mv-txt .txt-en{
        font-size: 12.14px;
    }
}

.family-lp .content-top .top-txt{
    text-align: center;
    padding: 140px 0 0;
}
.family-lp .content-top .top-txt h2{
    font-size: 40px;
    line-height: 1.3;
    font-weight: 900;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/top_txt_line01.webp") 50% 100% no-repeat;
    margin-bottom: 50px;
    padding-bottom: 32px;
}
.family-lp .content-top .top-txt p{
    font-size: 24px;
    font-weight: 500;
}

.family-lp .content-top .top-art01{
    width: 100%;
    min-width: 1600px;
    line-height: 1;
    margin: 0 auto;
    padding-left: 8.33%;
    position: absolute;
    bottom: 450px;
    right: 0;
}
.family-lp .content-top .top-art01 img{
    width: 335px;
}
.family-lp .content-top .top-art02{
    width: 1280px;
    margin: 0 auto;
    text-align: right;
    line-height: 1;
    position: absolute;
    bottom: 111px;
    left: 0;
    right: 0;
}
.family-lp .content-top .top-art02 img{
    width: 462px;
    margin-right: -160px;
}
.family-lp .content-top .top-art03{
    width: 100%;
    min-width: 1600px;
    position: absolute;
    bottom: 0;
    right: 0;
}
@media screen and (min-width:1921px){
    .family-lp .content-top .top-art01{
        bottom: 23.4vw;
        padding-left: 8.33vw;
    }
    .family-lp .content-top .top-art02{
        width: 100%;
    }
    .family-lp .content-top .top-art02 img{
        margin-right: 8.33%;
    }
}


.family-lp .sec-block{
    margin-top: -261px;
    padding: 261px 0 0;
    position: relative;
}
.family-lp #sec-point.sec-block{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border01.webp") 50% 0 no-repeat;
    background-size: 1920px 300px;
}
.family-lp #sec-hotel.sec-block{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border02.webp") 50% 0 no-repeat;
    background-size: 1920px 300px;
}
.family-lp #sec-spot.sec-block{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border03.webp") 50% 0 no-repeat;
    background-size: 1920px 300px;
}
.family-lp #sec-event.sec-block{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border04.webp") 50% 0 no-repeat;
    background-size: 1920px 300px;
    margin-bottom: 0;
}
@media screen and (min-width:1921px){
    .family-lp #sec-point.sec-block{
        background-size: 100% 300px;
    }
    .family-lp #sec-hotel.sec-block{
        background-size: 100% 300px;
    }
    .family-lp #sec-spot.sec-block{
        background-size: 100% 300px;
    }
    .family-lp #sec-event.sec-block{
        background-size: 100% 300px;
    }
}
.family-lp .sec-block .sec-bg{}
.family-lp #sec-point.sec-block .sec-bg{
    background: #c0d781;
}
.family-lp #sec-hotel.sec-block .sec-bg{
    background: #e8f2d0 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_bg01.webp") 50% 224px no-repeat;
    background-size: 1920px auto;
    padding-top: 140px;
    padding-bottom: 400px;
}
.family-lp #sec-spot.sec-block .sec-bg{
    background: #fff0d1;
    padding-top: 120px;
    padding-bottom: 400px;
}
.family-lp #sec-event.sec-block .sec-bg{
    background: #fff2e7;
    padding-top: 160px;
}
@media screen and (min-width:1921px){
    .family-lp #sec-hotel.sec-block .sec-bg{
        background-size: 100%;
    }
}

.family-lp .sec-block .sec-inner{
    margin: 0 auto;
    width: 1280px;
    position: relative;
}

.family-lp .sec-block .sec-ti{}
.family-lp .sec-block .sec-ti h2{
    font-size: 74px;
    font-weight: 900;
    line-height: 1.257;
    display: inline-block;
    position: relative;
}
.family-lp .sec-block .sec-ti .ti-sub{
    font-size: 32px;
    font-weight: 900;
    display: inline-block;
    position: relative;
}
.family-lp .sec-block .sec-ti .ti-lead{
    font-size: 20px;
}

/* img-block */
.family-lp .img-block01{}
.family-lp .img-block01 .img-block-inner{
    position: relative;
    line-height: 0;
}
.family-lp .img-block01 figure{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.family-lp .img-block01 figcaption{
    position: absolute;
    line-height: 1.5;
}

/* .hotel-btn */
.family-lp .hotel-btn{
    display: flex;
}
.family-lp .hotel-btn a{
    position: relative;
    display: block;
    font-size: 24px;
    line-height: 1.5;
}
.family-lp .hotel-btn a strong{
    font-size: 28px;
}
.family-lp .hotel-btn a:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 30px 10px;
    position: absolute;
    top: 10px;
    left: 10px;
}
.family-lp .hotel-btn .btn-bg{
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 21px 20px 21px 120px;
    border-radius: 30px 10px;
}

.family-lp #htl-kids .hotel-btn a:before{
    background: #d3e69f;
}
.family-lp #htl-kids .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico01.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-deck .hotel-btn a:before{
    background: #b8dbfb;
}
.family-lp #htl-deck .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico02.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-mori .hotel-btn a:before{
    background: #dcc5a5;
}
.family-lp #htl-mori .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico03.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-executive .hotel-btn a:before{
    background: #f3dc7e;
}
.family-lp #htl-executive .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico04.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-buffet .hotel-btn a:before{
    background: #f6c6d6;
}
.family-lp #htl-buffet .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico05.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-spring .hotel-btn a:before{
    background: #fbd29d;
}
.family-lp #htl-spring .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico06.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}
.family-lp #htl-saezuri .hotel-btn a:before{
    background: #d3e69f;
}
.family-lp #htl-saezuri .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico07.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}

.family-lp #htl-other .hotel-btn a:before{
    background: #a8dee8;
}
.family-lp #htl-other .hotel-btn .btn-bg{
    background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico08.webp") 25px 50% no-repeat;
    background-size: 77px auto;
}

/* #sec-point */
.family-lp #sec-point{
    color: #6e553b;
}
.family-lp #sec-point .sec-inner{
    padding: 145px 0 388px;
}
.family-lp #sec-point .sec-ti{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_ti_line01.webp") 0 100% no-repeat;
    padding-bottom: 30px;
    font-weight: 900;
    line-height: 1;
    position: relative;
    z-index: 1;
}
.family-lp #sec-point .sec-ti h2{
    font-size: 61px;
    z-index: 1;
}
.family-lp #sec-point .sec-ti h2:after{
    content: "";
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_ti_art02.webp") 0 0 no-repeat;
    background-size: 100%;
    width: 101px;
    height: 116px;
    position: absolute;
    top: -80px;
    right: -70px;
}
.family-lp #sec-point .sec-ti h2 span{
    font-size: 72px;
    color: #1d5e00;
}
.family-lp #sec-point .sec-ti h3{
    font-size: 48px;
    margin-top: 20px;
    padding-left: 50px;
    position: relative;
    z-index: 1;
}
.family-lp #sec-point .sec-ti p{
    font-size: 74px;
    margin-top: 20px;
    padding-left: 50px;
    position: relative;
    z-index: 1;
}
.family-lp #sec-point .sec-ti p > span{
    font-size: 103px;
    color: #1c5d00;
}
.family-lp #sec-point .sec-ti p > span .number{
    /*font-size: 118px;*/
    display: inline-block;
    width: 68px;
    height: 112px;
}
.family-lp #sec-point .sec-ti .sec-ti-art{
    width: 200px;
    position: absolute;
    bottom: -15px;
    left: 0;
}

.family-lp #sec-point .map-img{
    width: 744px;
    position: absolute;
    top: 190px;
    right: -8px;
}

.family-lp #sec-point .point-list{
    position: relative;
}
.family-lp #sec-point .point-block{
    text-align: center;
    position: relative;
}
.family-lp #sec-point .point-block .sec-txt{
    position: absolute;
}
.family-lp #sec-point .point-block h3{
    font-weight: 700;
    font-size: 38px;
    line-height: 1.15;
    letter-spacing: 0.05em;
    margin-bottom: 15px;
}
.family-lp #sec-point .point-block h3 strong{
    font-size: 46px;
    letter-spacing: 0;
}
.family-lp #sec-point .point-block p{}
.family-lp #sec-point .point-block p strong{
    font-size: 24px;
}
.family-lp #sec-point .point1{
    margin-top: 80px;
    margin-left: 85px;
    width: 683px;
    height: 596px;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg01.webp") 50% 50% no-repeat;
    z-index: 3;
}
.family-lp #sec-point .point1 .sec-txt{
    top: 160px;
    left: 100px;
}
.family-lp #sec-point .point1 h3{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no01.webp") 50% 50% no-repeat;
    padding-left: 75px;
    padding-bottom: 30px;
    color: #589334;
}
.family-lp #sec-point .point1 .sec-txt p strong{
    color: #589334;
}
.family-lp #sec-point .point2{
    margin-top: -450px;
    margin-left: 715px;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg02.webp") 50% 50% no-repeat;
    width: 612px;
    height: 507px;
}
.family-lp #sec-point .point2 .sec-txt{
    top: 96px;
    left: 44px;
}
.family-lp #sec-point .point2 h3{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no02.webp") 50% 50% no-repeat;
    padding-left: 65px;
    padding-bottom: 30px;
    color: #188fd4;
}
.family-lp #sec-point .point2 .sec-txt p strong{
    color: #188fd4;
}
.family-lp #sec-point .point3{
    margin-top: -120px;
    margin-left: 335px;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg03.webp") 50% 50% no-repeat;
    width: 725px;
    height: 495px;
    z-index: 2;
}
.family-lp #sec-point .point3 .sec-txt{
    top: 65px;
    left: 85px;
}
.family-lp #sec-point .point3 h3{
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no03.webp") 50% 50% no-repeat;
    padding-left: 65px;
    padding-bottom: 30px;
    color: #e75b3b;
}
.family-lp #sec-point .point3 .sec-txt p strong{
    color: #e75b3b;
}
.family-lp #sec-point .point-img{
    width: 446px;
    position: absolute;
    bottom: 35px;
    left: -55px;
    z-index: 5;
}

.family-lp #sec-point .sec-art{
    position: absolute;
}
.family-lp #sec-point .sec-art01{
    width: 256px;
    top: 85px;
    left: -174px;
}
.family-lp #sec-point .sec-art02{
    width: 328px;
    top: -162px;
    right: -63px;
}
.family-lp #sec-point .sec-art03{
    width: 520px;
    bottom: -438px;
    right: -273px;
}

/* #sec-hotel */
.family-lp #sec-hotel{
}
.family-lp #sec-hotel .sec-ti{
    text-align: right;
    position: relative;
}

.family-lp #sec-hotel .sec-ti h2{
    color: #287108;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_ti_line01.webp") 100% 100% no-repeat;
    margin-bottom: 90px;
    padding-bottom: 20px;
}
.family-lp #sec-hotel .sec-ti .ti-sub{
    color: #287108;
}
.family-lp #sec-hotel .sec-ti .ti-sub:after{
    content: "";
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_ti_art02.webp") 0 0 no-repeat;
    background-size: 100%;
    width: 101px;
    height: 116px;
    position: absolute;
    top: -40px;
    left: -95px;
}
.family-lp #sec-hotel .sec-ti .sec-ti-art{
    display: block;
    width: 153px;
    position: absolute;
    bottom: 0;
    right: 710px;
}

.family-lp #sec-hotel .hotel-block{}
.family-lp #sec-hotel .block-hd{
    display: flex;
    flex-direction: column;
    position: relative;
}
.family-lp #sec-hotel .block-hd .img-block01{
    width: 728px;
}
.family-lp #sec-hotel .hotel-block-ti{
    text-align: center;
    position: relative;
    width: 440px;
    height: 375px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}
.family-lp #sec-hotel .hotel-block:nth-child(2n+1) .block-hd{
    /*margin-right: 0;
    margin-left: auto;*/
    align-items: flex-end;
}
.family-lp #sec-hotel .hotel-block:nth-child(2n+1) .hotel-block-ti{
    /*margin-right: 0;
    margin-left: auto;*/
}
.family-lp #sec-hotel .hotel-block-ti .ti-txt{
    position: relative;
    z-index: 1;
}
.family-lp #sec-hotel .hotel-block-ti h3{
    font-size: 36px;
    line-height: 1.3;
    font-weight: 900;
}
.family-lp #sec-hotel .hotel-block-ti h3 span{
    font-size: 28.8px;
}
.family-lp #sec-hotel .hotel-block-ti p{
    font-size: 26px;
    line-height: 1.5;
}
.family-lp #sec-hotel .hotel-block-ti .ti-bg{
    width: 360px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.family-lp #sec-hotel .gallery-block{
    position: relative;
}

/* #sec-hotel > #htl-kids */
.family-lp #sec-hotel #htl-kids{}
.family-lp #sec-hotel #htl-kids .block-hd{
    margin-bottom: 42px;
}
.family-lp #sec-hotel #htl-kids .hotel-block-ti,
.family-lp #sec-hotel #htl-kids .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-kids .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-kids .hotel-btn a{
    color: var(--color-green);
}
.family-lp #sec-hotel #htl-kids .block-hd .hotel-block-txt{
    width: 355px;
    position: absolute;
    top: 403px;
}
.family-lp #sec-hotel #htl-kids .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-kids .block-hd .img-block01{
    margin-top: -208px;
    margin-left: 355px;
}
.family-lp #sec-hotel #htl-kids .gallery{}
.family-lp #sec-hotel #htl-kids .gallery-block{}
.family-lp #sec-hotel #htl-kids .gb01 .item01{
    width: 581px;
    margin-left: 431px;
}
.family-lp #sec-hotel #htl-kids .gb01 .item02{
    width: 513px;
    margin-top: -132px;
    margin-left: auto;
    margin-right: 0;
}
.family-lp #sec-hotel #htl-kids .gb01 .item02 figcaption{
    top: -2em;
    right: 114px;
}
.family-lp #sec-hotel #htl-kids .gb02{
    margin-top: -344px;
}
.family-lp #sec-hotel #htl-kids .gb02 .item01{
    width: 392px;
}
.family-lp #sec-hotel #htl-kids .gb02 .item01 figcaption{
    bottom: -2em;
    left: 0;
}
.family-lp #sec-hotel #htl-kids .gb02 .item02{
    width: 429px;
    margin-top: -102px;
    margin-left: 314px;
}
.family-lp #sec-hotel #htl-kids .gb02 .item02 figcaption{
    bottom: -2em;
    left: 1em;
}
.family-lp #sec-hotel #htl-kids .gb02 .item03{
    width: 385px;
    margin-top: -208px;
    margin-left: auto;
    margin-right: 0;
}
.family-lp #sec-hotel #htl-kids .gb02 .item03 figcaption{
    bottom: -2em;
    right: 0;
}
.family-lp #sec-hotel #htl-kids .gb02 .item04{
    width: 347px;
    margin-top: -174px;
    margin-left: 553px;
}
.family-lp #sec-hotel #htl-kids .gb02 .item04 figcaption{
    bottom: -2em;
    right: 3.5em;
}
.family-lp #sec-hotel #htl-kids .gb03{
    margin-top: -66px;
}
.family-lp #sec-hotel #htl-kids .gb03 .item01{
    width: 419px;
}
.family-lp #sec-hotel #htl-kids .gb03 .item01 figcaption{
    bottom: -2em;
    left: 1em;
}
.family-lp #sec-hotel #htl-kids .gb03 .item02{
    width: 419px;
    margin-top: -110px;
    margin-left: 400px;
}
.family-lp #sec-hotel #htl-kids .gb03 .item02 figcaption{
    bottom: -2em;
    right: 0;
}
.family-lp #sec-hotel #htl-kids .gb03 .item03{
    width: 419px;
    margin-top: -345px;
    margin-left: auto;
    margin-right: 0;
    padding-bottom: 62px;
}
.family-lp #sec-hotel #htl-kids .gb03 .item03 figcaption{
    bottom: -2em;
    left: 1em;
}

.family-lp #sec-hotel #htl-kids .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-kids .sec-art01{
    width: 245px;
    top: 193px;
    right: 30px;
}
.family-lp #sec-hotel #htl-kids .sec-art02{
    width: 296px;
    top: -143px;
    right: -57px;
}
.family-lp #sec-hotel #htl-kids .sec-art03{
    width: 330px;
    bottom: 95px;
    left: 68px;
}
.family-lp #sec-hotel #htl-kids .sec-art04{
    width: 147px;
    top: 19px;
    left: 440px;
}
.family-lp #sec-hotel #htl-kids .sec-art05{








    width: 112px;
    bottom: -103px;
    left: 122px;
}
.family-lp #sec-hotel #htl-kids .sec-bg-art01{
    width: 369px;
    top: 65px;
    right: 13px;
}
.family-lp #sec-hotel #htl-kids .sec-bg-art02{
    width: 233px;
    top: 270px;
    left: -48px;
}
.family-lp #sec-hotel #htl-kids .sec-bg-art03{
    width: 265px;
    bottom: -55px;
    right: 350px;
}
.family-lp #sec-hotel #htl-kids .sec-bg-art04{
    width: 294px;
    bottom: 68px;
    left: 194px;
}

.family-lp #sec-hotel #htl-kids .sec-txt{
    margin-top: 90px;padding-left: 245px;
}
.family-lp #sec-hotel #htl-kids .btn-area{
    margin-top: -120px;
    padding-right: 10px;
}
.family-lp #sec-hotel #htl-kids .btn-area .hotel-btn{
    justify-content: flex-end;
}

/* #sec-hotel > #htl-deck */
.family-lp #sec-hotel #htl-deck{
    margin-top: 210px;
}
.family-lp #sec-hotel #htl-deck .block-hd{
    margin-bottom: 35px;
}
.family-lp #sec-hotel #htl-deck .hotel-block-ti,
.family-lp #sec-hotel #htl-deck .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-deck .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-deck .hotel-btn a{
    color: #1d5992;
}
.family-lp #sec-hotel #htl-deck .block-hd .hotel-block-txt{
    width: 310px;
    position: absolute;
    top: 408px;
}
.family-lp #sec-hotel #htl-deck .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-deck .block-hd .img-block01{
    margin-top: -210px;
    margin-right: 338px;
}
.family-lp #sec-hotel #htl-deck .gallery{}
.family-lp #sec-hotel #htl-deck .gallery-block{}
.family-lp #sec-hotel #htl-deck .gb01 .item01{
    width: 554px;
    margin-left: 15px;
}
.family-lp #sec-hotel #htl-deck .gb01 .item02{
    width: 349px;
    margin-top: -240px;
    margin-left: 505px;
}
.family-lp #sec-hotel #htl-deck .btn-area{
    margin-top: -125px;
}

.family-lp #sec-hotel #htl-deck .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-deck .sec-art01{
    width: 393px;
    top: -58px;
    left: 42px;
}
.family-lp #sec-hotel #htl-deck .sec-art02{
    width: 515px;
    top: 35px;
    right: 54px;
}
.family-lp #sec-hotel #htl-deck .sec-bg-art01{
    width: 370px;
    top: 32px;
    right: 308px;
}

/* #sec-hotel > #htl-mori */
.family-lp #sec-hotel #htl-mori{
    margin-top: 238px;
}
.family-lp #sec-hotel #htl-mori .block-hd{
    margin-bottom: 220px;
}
.family-lp #sec-hotel #htl-mori .hotel-block-ti,
.family-lp #sec-hotel #htl-mori .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-mori .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-mori .hotel-btn a{
    color: #a96609;
}
.family-lp #sec-hotel #htl-mori .block-hd .hotel-block-txt{
    width: 340px;
    position: absolute;
    top: 405px;
}
.family-lp #sec-hotel #htl-mori .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-mori .block-hd .img-block01{
    margin-top: -209px;
    margin-left: 348px;
}
.family-lp #sec-hotel #htl-mori .gb01 .item01{
    width: 419px;
    margin-left: 15px;
}
.family-lp #sec-hotel #htl-mori .gb01 .item01 figcaption{
    bottom: -3.5em;
    left: 2em;
}
.family-lp #sec-hotel #htl-mori .gb01 .item02{
    width: 419px;
    margin-top: -250px;
    margin-left: 450px;
}
.family-lp #sec-hotel #htl-mori .gb01 .item02 figcaption{
    bottom: -2em;
    left: 1.5em;
}
.family-lp #sec-hotel #htl-mori .gb01 .item03{
    width: 419px;
    margin-top: -420px;
    margin-left: auto;
    margin-right: 16px;
    padding-bottom: 137px;
}
.family-lp #sec-hotel #htl-mori .gb01 .item03 figcaption{
    bottom: -3.5em;
    right: -0.5em;
}
.family-lp #sec-hotel #htl-mori .btn-area{
    margin-top: 30px;
    padding-right: 10px;
}
.family-lp #sec-hotel #htl-mori .btn-area .hotel-btn{
    justify-content: flex-end;
}

.family-lp #sec-hotel #htl-mori .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-mori .sec-art01{
    width: 152px;
    top: 343px;
    right: 76px;

}
.family-lp #sec-hotel #htl-mori .sec-art02{
    width: 248px;
    top: -105px;
    left: 50px;
}
.family-lp #sec-hotel #htl-mori .sec-art03{
    width: 435px;
    top: -110px;
    left: 395px;
}
.family-lp #sec-hotel #htl-mori .sec-art04{
    width: 207px;
    top: -228px;
    right: 25px;
}
.family-lp #sec-hotel #htl-mori .sec-bg-art01{
    width: 318px;
    top: -88px;
    left: 358px;
}
.family-lp #sec-hotel #htl-mori .sec-bg-art02{
    width: 214px;
    bottom: 10px;
    right: 50px;
}

/* #sec-hotel > #htl-executive */
.family-lp #sec-hotel #htl-executive{
    margin-top: 210px;
}
.family-lp #sec-hotel #htl-executive .block-hd{
    margin-bottom: 37px;
}
.family-lp #sec-hotel #htl-executive .hotel-block-ti,
.family-lp #sec-hotel #htl-executive .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-executive .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-executive .hotel-btn a{
    color: #ae7700;
}
.family-lp #sec-hotel #htl-executive .block-hd .hotel-block-txt{
    width: 350px;
    position: absolute;
    top: 405px;
}
.family-lp #sec-hotel #htl-executive .block-hd .hotel-block-txt p{
    letter-spacing: -0.05em;
}
.family-lp #sec-hotel #htl-executive .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-executive .block-hd .img-block01{
    margin-top: -213px;
    margin-right: 356px;
}
.family-lp #sec-hotel #htl-executive .gallery{}
.family-lp #sec-hotel #htl-executive .gallery-block{}
.family-lp #sec-hotel #htl-executive .gb01 .item01{
    width: 553px;
    margin-left: 230px;
}
.family-lp #sec-hotel #htl-executive .gb01 .item02{
    width: 447px;
    margin-top: -219px;
    margin-left: auto;
    margin-right: 94px;
}
.family-lp #sec-hotel #htl-executive .btn-area{
    margin-top: -54px;
    padding-left: 40px;
}

.family-lp #sec-hotel #htl-executive .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-executive .sec-art01{
    width: 409px;
    top: -35px;
    left: -87px;
}
.family-lp #sec-hotel #htl-executive .sec-art02{
    width: 86px;
    bottom: -38px;
    left: 140px;
}
.family-lp #sec-hotel #htl-executive .sec-art03{
    width: 474px;
    top: 85px;
    right: -20px;
}
.family-lp #sec-hotel #htl-executive .sec-bg-art01{
    width: 360px;
    top: 128px;
    left: 576px;
}

/* #sec-hotel > #htl-buffet */
.family-lp #sec-hotel #htl-buffet{
    margin-top: 181px;
}
.family-lp #sec-hotel #htl-buffet .block-hd{
    margin-bottom: 37px;
}
.family-lp #sec-hotel #htl-buffet .hotel-block-ti,
.family-lp #sec-hotel #htl-buffet .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-buffet .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-buffet .hotel-btn a{
    color: #c8467a;
}
.family-lp #sec-hotel #htl-buffet .block-hd .hotel-block-txt{
    width: 350px;
    position: absolute;
    top: 385px;
}
.family-lp #sec-hotel #htl-buffet .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-buffet .block-hd .img-block01{
    margin-top: -209px;
    margin-left: 345px;
}
.family-lp #sec-hotel #htl-buffet .gb01 .item01{
    width: 534px;
    margin-left: 200px;
}
.family-lp #sec-hotel #htl-buffet .gb01 .item02{
    width: 512px;
    margin-top: -251px;
    margin-left: auto;
    margin-right: 80px;
}
.family-lp #sec-hotel #htl-buffet .gb01 .item03{
    width: 431px;
    margin-top: -45px;
    margin-left: auto;
    position: relative;
    z-index: 1;
}
.family-lp #sec-hotel #htl-buffet .gb01 .item04{
    width: 419px;
    margin-top: -200px;
    margin-left: auto;
    margin-right: 405px;
}
.family-lp #sec-hotel #htl-buffet .btn-area{
    margin-top: -168px;
}

.family-lp #sec-hotel #htl-buffet .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-buffet .sec-art01{
    width: 208px;
    top: -13px;
    right: 142px;
}
.family-lp #sec-hotel #htl-buffet .sec-art02{
    width: 581px;
    bottom: 120px;
    left: 0px;
}
.family-lp #sec-hotel #htl-buffet .sec-bg-art01{
    width: 372px;
    bottom: 110px;
    left: 248px;
}

/* #sec-hotel > #htl-spring */
.family-lp #sec-hotel #htl-spring{
    margin-top: 247px;
}
.family-lp #sec-hotel #htl-spring .block-hd{
    margin-bottom: 32px;
}
.family-lp #sec-hotel #htl-spring .hotel-block-ti,
.family-lp #sec-hotel #htl-spring .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-spring .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-spring .hotel-btn a{
    color: #e05e1f;
}
.family-lp #sec-hotel #htl-spring .block-hd .hotel-block-txt{
    width: 320px;
    position: absolute;
    top: 405px;
}
.family-lp #sec-hotel #htl-spring .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-spring .block-hd .img-block01{
    margin-top: -213px;
    margin-right: 339px;
}
.family-lp #sec-hotel #htl-spring .gb01 .item01{
    width: 512px;
    margin-left: 28px;
}
.family-lp #sec-hotel #htl-spring .gb01 .item01 figcaption{
    bottom: -2em;
    left: 1.5em;
}
.family-lp #sec-hotel #htl-spring .gb01 .item02{
    width: 420px;
    margin-top: -278px;
    margin-left: auto;
    margin-right: 41px;
    position: relative;
    z-index: 1;
}
.family-lp #sec-hotel #htl-spring .gb01 .item02 figcaption{
    bottom: -2em;
    left: 3em;
}
.family-lp #sec-hotel #htl-spring .gb01 .item03{
    width: 419px;
    margin-top: -108px;
    margin-left: 445px;
}
.family-lp #sec-hotel #htl-spring .btn-area{
    padding-right: 10px;
}
.family-lp #sec-hotel #htl-spring .btn-area .hotel-btn{
    justify-content: flex-end;
}

.family-lp #sec-hotel #htl-spring .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-spring .sec-art01{
    width: 240px;
    top: 100px;
    left: 32px;
}
.family-lp #sec-hotel #htl-spring .sec-art02{
    width: 216px;
    top: 34px;
    left: 552px;
}
.family-lp #sec-hotel #htl-spring .sec-art03{
    width: 337px;
    bottom: 12px;
    left: 85px;
}
.family-lp #sec-hotel #htl-spring .sec-bg-art01{
    width: 260px;
    bottom: -230px;
    right: 344px;
}
.family-lp #sec-hotel #htl-spring .sec-bg-art02{
    width: 364px;
    bottom: 20px;
    left: 260px;
}

/* #sec-hotel > #htl-saezuri */
.family-lp #sec-hotel #htl-saezuri{
    margin-top: 150px;
}
.family-lp #sec-hotel #htl-saezuri .block-hd{
    margin-bottom: 0px;
}
.family-lp #sec-hotel #htl-saezuri .hotel-block-ti,
.family-lp #sec-hotel #htl-saezuri .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-saezuri .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-saezuri .hotel-btn a{
    color: var(--color-green);
}
.family-lp #sec-hotel #htl-saezuri .block-hd .hotel-block-txt{
    width: 350px;
    position: absolute;
    top: 400px;
}
.family-lp #sec-hotel #htl-saezuri .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-saezuri .block-hd .img-block01{
    margin-top: -210px;
    margin-left: 356px;
}
.family-lp #sec-hotel #htl-saezuri .btn-area{
    margin-top: 40px;
    padding-right: 115px;
}
.family-lp #sec-hotel #htl-saezuri .btn-area .hotel-btn{
    justify-content: flex-end;
}

.family-lp #sec-hotel #htl-saezuri .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-saezuri .sec-art01{
    width: 289px;
    top: 110px;
    right: 307px;
}
.family-lp #sec-hotel #htl-saezuri .sec-art02{
    width: 636px;
    bottom: -240px;
    left: -20px;
}
.family-lp #sec-hotel #htl-saezuri .sec-bg-art01{
    width: 372px;
    bottom: -160px;
    left: 217px;
}

/* #sec-hotel > #htl-other */
.family-lp #sec-hotel #htl-other{
    margin-top: 210px;
}
.family-lp #sec-hotel #htl-other .block-hd{
    margin-bottom: 0px;
}
.family-lp #sec-hotel #htl-other .hotel-block-ti,
.family-lp #sec-hotel #htl-other .block-hd .hotel-block-txt span,
.family-lp #sec-hotel #htl-other .gallery-block .img-block01 figcaption,
.family-lp #sec-hotel #htl-other .hotel-btn a,
.family-lp #sec-hotel #htl-other .welcome-baby h4{
    color: #0e7e92;
}
.family-lp #sec-hotel #htl-other .block-hd .hotel-block-txt{
    width: 570px;
    margin-top: -154px;
    margin-right: 386px;
}
.family-lp #sec-hotel #htl-other .block-hd .hotel-block-txt span{
    font-weight: 900;
}
.family-lp #sec-hotel #htl-other .welcome-baby{
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: 610px;
    height: 145px;
    background: #f5fae9 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/htl-other_ico01.webp") 20px 50% no-repeat;
    background-size: 152px auto;
    border-radius: 15px;
    padding-left: 192px;
    box-sizing: border-box;
}
.family-lp #sec-hotel #htl-other .welcome-baby h4{
    font-size: 23px;
    font-weight: 900;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/htl-other_txt_art01.webp") 50% 50% no-repeat;
    background-size: 397px auto;
    line-height: 1;
}
.family-lp #sec-hotel #htl-other .welcome-baby p{
    font-size: 18px;
    line-height: 1.5;
    margin-top: 0.8em;
}
.family-lp #sec-hotel #htl-other .btn-area{
    margin-top: 35px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-right: 190px;
}
.family-lp #sec-hotel #htl-other .btn-area .hotel-btn{
    justify-content: flex-end;
}

.family-lp #sec-hotel #htl-other .sec-art{
    position: absolute;
}
.family-lp #sec-hotel #htl-other .sec-art01{
    width: 379px;
    top: 100px;
    left: -80px;
}


/* #sec-spot */
.family-lp #sec-spot{}
.family-lp #sec-spot .sec-ti{
    position: relative;
}

.family-lp #sec-spot .sec-ti h2{
    color: #b94e00;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-spot_ti_line01.webp") 0% 100% no-repeat;
    margin-bottom: 90px;
    padding-bottom: 20px;
}
.family-lp #sec-spot .sec-ti h2 span{
    font-size: 63px;
    color: var(--color-brown);
}
.family-lp #sec-spot .sec-ti .ti-sub{
    color: #b94e00;
}
.family-lp #sec-spot .sec-ti .ti-sub:after{
    content: "";
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-spot_ti_art02.webp") 0 0 no-repeat;
    background-size: 100%;
    width: 101px;
    height: 116px;
    position: absolute;
    top: -50px;
    right: -95px;
}
.family-lp #sec-spot .sec-ti .sec-ti-art{
    display: block;
    width: 432px;
    position: absolute;
    top: 0;
    right: 182px;
}

.family-lp #sec-spot .spot-block{
    position: relative;
}
.family-lp #sec-spot .block-hd{
    display: flex;
    flex-direction: column;
    position: relative;
}
.family-lp #sec-spot .block-hd .img-block01{
    position: relative;
    z-index: 2;
}
.family-lp #sec-spot #spot01 .block-hd .img-block01,
.family-lp #sec-spot #spot02 .block-hd .img-block01{
    width: 515px;
}
.family-lp #sec-spot #spot03 .block-hd .img-block01,
.family-lp #sec-spot #spot04 .block-hd .img-block01,
.family-lp #sec-spot #spot05 .block-hd .img-block01{
    width: 475px;
}
.family-lp #sec-spot .spot-block-ti{
    text-align: left;
    position: relative;
    width: 100%;
    display: block;
    align-items: center;
    z-index: 1;
}
.family-lp #sec-spot .spot-block-ti .ti-txt{
    position: relative;
    z-index: 1;
}
.family-lp #sec-spot .spot-block-ti h3{
    font-size: 36px;
    line-height: 1;
    color: #924c00;
    margin-top: 0.2em;
}
.family-lp #sec-spot .spot-block-ti h3 span{
    font-size: 24px;
}
.family-lp #sec-spot .spot-block-ti p{
    font-size: 26px;
    line-height: 1.5;
    color: #bd6507;
}
.family-lp #sec-spot .spot-block-ti .ti-bg{
    width: 238px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
}
.family-lp #sec-spot .spot-block:nth-child(2n+1) .block-hd{
    align-items: flex-end;
}
.family-lp #sec-spot .spot-block:nth-child(2n+1) .spot-block-ti{
    text-align: right;
}
.family-lp #sec-spot .spot-block:nth-child(2n+1) .spot-block-ti .ti-bg{
    left: auto;
    right: 0;
}

.family-lp #sec-spot .gallery{
    pointer-events: none;
}

.family-lp #sec-spot .sec-txt p{
    font-weight: 500;
    color: var(--color-brown);

}



.family-lp #sec-spot .sec-txt .spot-btn{
    display: inline-block;
}
.family-lp #sec-spot .sec-txt .spot-btn a{
    font-size: 22px;
    color: #bd6507;
    display: block;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/spot-btn-ico01.webp") 0 50% no-repeat;
    background-size: auto 38px;
    padding-left: 45px;
    height: 38px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -0.1em;
}

.family-lp #sec-spot .gallery-block{
    position: relative;
}

.family-lp #sec-spot .sec-art,
.family-lp #sec-spot .sec-tree{
    position: absolute;
}
.family-lp #sec-spot .sec-tree01{
    width: 136px;
}
.family-lp #sec-spot .sec-tree02{
    width: 133px;
}

/* #sec-spot > #spot01 */
.family-lp #sec-spot #spot01{
    margin-top: 110px;
}
.family-lp #sec-spot #spot01 .spot-block-ti{
    margin-bottom: 30px;
    padding: 80px 0 0 72px;
}
.family-lp #sec-spot #spot01 .spot-block-ti .ti-bg{
    left: 10px;
}
.family-lp #sec-spot #spot01 .block-hd .img-block01{
    margin-left: 72px;
}
.family-lp #sec-spot #spot01 .gallery{
    width: 100%;
    position: absolute;
    top: 110px;
    left: 0;
}
.family-lp #sec-spot #spot01 .gb01 .item01{
    width: 396px;
    margin-left: auto;
    margin-right: 278px;
}
.family-lp #sec-spot #spot01 .gb01 .item02{
    width: 396px;
    margin-top: 17px;
    margin-left: auto;
    margin-right: 100px;
}
.family-lp #sec-spot #spot01 .sec-txt{
    width: 630px;
    margin-top: 25px;
    margin-left: 72px;
}

.family-lp #sec-spot #spot01 .sec-tree{
    top: 95px;
    left: 430px;
}
.family-lp #sec-spot #spot01 .sec-art01{
    width: 353px;
    top: -68px;
    right: -50px;
}

/* #sec-spot > #spot02 */
.family-lp #sec-spot #spot02{
    margin-top: 45px;
}
.family-lp #sec-spot #spot02 .spot-block-ti{
    margin-bottom: 30px;
    padding: 80px 85px 0 0;
}
.family-lp #sec-spot #spot02 .spot-block-ti .ti-bg{
    right: 24px;
}
.family-lp #sec-spot #spot02 .block-hd .img-block01{
    margin-right: 70px;
}
.family-lp #sec-spot #spot02 .gallery{
    width: 100%;
    position: absolute;
    top: 110px;
    left: 0;
}
.family-lp #sec-spot #spot02 .gb01 .item01{
    width: 396px;
    margin-left: 280px;
}
.family-lp #sec-spot #spot02 .gb01 .item02{
    width: 396px;
    margin-top: 20px;
    margin-left: 100px;
}
.family-lp #sec-spot #spot02 .sec-txt{
    margin-top: 25px;
}
.family-lp #sec-spot #spot02 .sec-txt p{
    text-align: right;
}

.family-lp #sec-spot #spot02 .sec-tree{
    top: 80px;
    right: 443px;
}
.family-lp #sec-spot #spot02 .sec-art01{
    width: 224px;
    top: -65px;
    left: 115px;
}

/* #sec-spot > #spot03 */
.family-lp #sec-spot #spot03{
    margin-top: 90px;
}
.family-lp #sec-spot #spot03 .spot-block-ti{
    margin-bottom: 15px;
    padding: 60px 0 0 85px;
}
.family-lp #sec-spot #spot03 .spot-block-ti .ti-bg{
    left: 25px;
}
.family-lp #sec-spot #spot03 .spot-block-ti h3{
    letter-spacing: -0.075em;
}
.family-lp #sec-spot #spot03 .block-hd .img-block01{
    margin-left: 80px;
}
.family-lp #sec-spot #spot03 .gb01 .item01{
    width: 380px;
    margin-top: -150px;
    margin-left: 578px;
}
.family-lp #sec-spot #spot03 .sec-txt{
    position: absolute;
    bottom: 273px;
    left: 578px;
}

.family-lp #sec-spot #spot03 .sec-tree{
    top: 90px;
    left: 400px;
}
.family-lp #sec-spot #spot03 .sec-art01{
    width: 306px;
    top: -180px;
    right: 0;
}

/* #sec-spot > #spot04 */
.family-lp #sec-spot #spot04{
    margin-top: 20px;
}
.family-lp #sec-spot #spot04 .spot-block-ti{
    margin-bottom: 15px;
    padding: 70px 45px 0 0;
}
.family-lp #sec-spot #spot04 .block-hd .img-block01{
    margin-right: 40px;
}
.family-lp #sec-spot #spot04 .gb01 .item01{
    width: 383px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: 50px;
}
.family-lp #sec-spot #spot04 .sec-txt{
    width: 435px;
    margin-left: auto;
    margin-top: 5px;
}

.family-lp #sec-spot #spot04 .sec-tree{
    top: 80px;
    right: 317px;

}
.family-lp #sec-spot #spot04 .sec-art01{
    width: 451px;

    bottom: -165px;
    right: 0px;
}

/* #sec-spot > #spot05 */
.family-lp #sec-spot #spot05{
    width: 760px;
    margin-top: -750px;
}
.family-lp #sec-spot #spot05 .spot-block-ti{
    margin-bottom: 30px;
    padding: 80px 0 0 60px;
}
.family-lp #sec-spot #spot05 .block-hd .img-block01{
    margin-left: 55px;
}
.family-lp #sec-spot #spot05 .gb01 .item01{
    width: 383px;
    margin-top: 20px;
}
.family-lp #sec-spot #spot05 .sec-txt{
    width: 320px;
    position: absolute;
    bottom: 15px;
    left: 400px;
}

.family-lp #sec-spot #spot05 .sec-tree{
    top: 88px;
    left: 360px;
}
.family-lp #sec-spot #spot05 .sec-art01{
    width: 414px;
    top: -95px;
    left: 205px;
}

/* #sec-event */
.family-lp #sec-event{}
.family-lp #sec-event .sec-ti{
    text-align: right;
    position: relative;
}
.family-lp #sec-event .sec-ti h2{
    color: #d1284c;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-event_ti_line01.webp") 100% 100% no-repeat;
    padding-bottom: 20px;
}
.family-lp #sec-event .sec-ti h2:after{
    content: "";
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-event_ti_art02.webp") 0 0 no-repeat;
    background-size: 100%;
    width: 101px;
    height: 116px;
    position: absolute;
    top: -40px;
    left: -95px;
}
.family-lp #sec-event .sec-ti h2 span{
    font-size: 63px;
    color: var(--color-brown);
}
.family-lp #sec-event .sec-ti .sec-ti-art{
    display: block;
    line-height: 1;
    width: 487px;
    position: absolute;
    bottom: 0;
    left: 90px;
}

.family-lp #sec-event .event-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 90px;
}
.family-lp #sec-event .event-list:after{
    content: "";
    display: block;
    width: 400px;
}
.family-lp #sec-event .event-list .event-item{
    width: 400px;
    padding-bottom: 40px;
    margin-bottom: 80px;
    position: relative;
}
.family-lp #sec-event .event-list .event-item a{
    display: flex;
    flex-direction: column;
    color: var(--color-brown);
}
.family-lp #sec-event .event-list .event-img{
    position: relative;
    line-height: 1;
    padding: 0 15px 15px 0;
}
.family-lp #sec-event .event-list .event-img:before{
    content: "";
    width: 96.25%;
    height: 96.25%;
    position: absolute;
    bottom: 0;
    right: 0;
    border-radius: 50px 20px
}
.family-lp #sec-event .event-list .event-img img{
    position: relative;
    z-index: 1;
    border-radius: 50px 20px;
}
.family-lp #sec-event .event-list .event-txt{
    margin-top: 1em;
}
.family-lp #sec-event .event-list .event-label{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    width: 220px;
    height: 35px;
    font-weight: 500;
    border-radius: 9999px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.family-lp #sec-event .event-list .cate-special{}
.family-lp #sec-event .event-list .cate-special .event-img:before,
.family-lp #sec-event .event-list .cate-special .event-label{
    background: #d56e6e;
}
.family-lp #sec-event .event-list .cate-sightseeing{}
.family-lp #sec-event .event-list .cate-sightseeing .event-img:before,
.family-lp #sec-event .event-list .cate-sightseeing .event-label{
    background: #84ba6c;
}
.family-lp #sec-event .event-list .cate-event{}
.family-lp #sec-event .event-list .cate-event .event-img:before,
.family-lp #sec-event .event-list .cate-event .event-label{
    background: #ecae5e;
}
.family-lp #sec-event .event-list .cate-other{}
.family-lp #sec-event .event-list .cate-other .event-img:before,
.family-lp #sec-event .event-list .cate-other .event-label{
    background: #6e553b;
}

/* .content-bottom */
.family-lp .content-bottom{
    padding: 70px 0 0;
    background: #fff2e7;
}
.family-lp .content-bottom .reserve-btn{}
.family-lp .content-bottom .reserve-btn span{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 480px;
    height: 90px;
    margin: 0 auto;
    padding-left: 60px;
    background: #357a16 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btn_ico01.webp") 90px 50% no-repeat;
    background-size: 38px auto;
    border-radius: 9999px;
    font-size: 30px;
    color: #ffffff;
    cursor: pointer;
}

.family-lp .content-bottom .brand-area{
    width: 1045px;
    margin: 78px auto 0;
    padding-bottom: 90px;
    text-align: center;
    background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btm_art01.webp"),url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btm_art01.webp");
    background-size: 226px auto,226px auto;
    background-repeat: no-repeat,no-repeat;
    background-position: 0 100%,100% 100%;
}
.family-lp .content-bottom .brand-area .brand-logo{
    width: 320px;
    margin: 0 auto;
}
.family-lp .content-bottom .brand-area .hotel-name{
    font-size: 24px;
    margin-top: 10px;
}

@media screen and (max-width:1099px){
    
    .family-lp{
        padding-top: 100px;
    }
    
}

@media screen and (max-width:787px){
    
    #container{
        min-width: 100%;
    }
    
    .family-lp{
        font-size: 3.47vw;
        line-height: 1.75;
    }

    .family-lp .content-top{
        padding: 5.33% 0 52.26%;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/mv_bg01t_sp.webp"),url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/mv_bg01b_sp.webp");
        background-size: 100%, 100%;
        background-position: 50% 0, 50% 100%;
        background-repeat: no-repeat,no-repeat;
    }

    .family-lp .mv{
        padding: 0 4%;
    }
    .family-lp .mv .mv-ti{
        width: 74.67%;
        max-width: 100%;
        top: 15.74%;
    }
    .family-lp .mv .mv-img{
        max-width: 100%;
    }
    .family-lp .mv .mv-img .img-art .img-art01{
        top: -3.4%;
        left: -3.5%;
        width: 67.68%;
    }
    .family-lp .mv .mv-img .img-art .img-art02{
        top: 53%;
        left: 3%;
        width: 24.5%;
    }
    .family-lp .mv .mv-img .img-art .img-art03{
        bottom: -4%;
        right: -4.5%;
        width: 96.52%;
        z-index: 1;
    }
    .family-lp .mv .mv-img .img-art .img-art04{
        bottom: 0;
        left: 0;
        width: 80.72%;
    }
    .family-lp .mv .mv-txt{
        text-align: left;
        color: #ffffff;
        line-height: 1.2;
        position: absolute;
        bottom: 6%;
        left: 6.67%;
        right: 0;
    }
    .family-lp .mv .mv-txt .txt-ja{
        font-size: 5.067vw;
    }
    .family-lp .mv .mv-txt .txt-en{
        font-size: 3.2vw;
    }
    
    .family-lp .content-top .top-txt{
        text-align: center;
        padding: 26.67% 0 0;
    }
    .family-lp .content-top .top-txt h2{
        font-size: 5.6vw;
        line-height: 1.5;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/top_txt_line01.webp") 50% 100% no-repeat;
        margin-bottom: 6.67%;
        padding-bottom: 0.62em;
        display: inline-block;
    }
    .family-lp .content-top .top-txt p{
        font-size: 3.73vw;
    }

    .family-lp .content-top .top-art01{
        width: 34.9vw;
        min-width: auto;
        padding-left: 0;
        position: absolute;
        top: 155vw;
        bottom: auto;
        left: -8.13vw;
        right: auto;
    }
    .family-lp .content-top .top-art01 img{
        width: 100%;
    }
    .family-lp .content-top .top-art02{
        width: 61.6%;
        margin: 0 auto;
        text-align: center;
        position: absolute;
        bottom: -2vw;
    }
    .family-lp .content-top .top-art02 img{
        width: 100%;
        margin-right: -8vw;
    }
    
    .family-lp .sec-block{
        margin-top: -14.53%;
        padding: 14.53% 0 0;
    }
    .family-lp #sec-point.sec-block{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border01_sp.webp") 50% 0 no-repeat;
        background-size: 100% auto;
    }
    .family-lp #sec-hotel.sec-block{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border02_sp.webp") 50% 0 no-repeat;
        background-size: 100% auto;
    }
    .family-lp #sec-spot.sec-block{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border03_sp.webp") 50% 0 no-repeat;
        background-size: 100% auto;
    }
    .family-lp #sec-event.sec-block{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec_bg_border04_sp.webp") 50% 0 no-repeat;
        background-size: 100% auto;
    }

    .family-lp .sec-block .sec-bg{}
    .family-lp #sec-point.sec-block .sec-bg{}
    .family-lp #sec-hotel.sec-block .sec-bg{
        background: #e8f2d0 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_bg01_sp.webp") 50% 83vw no-repeat;
        background-size: 100% auto;
        padding-top: 0;
        padding-bottom: 0;
    }
    .family-lp #sec-spot.sec-block .sec-bg{
        padding-top: 0;
        padding-bottom: 0;
    }
    .family-lp #sec-event.sec-block .sec-bg{
        padding-top: 0;
    }
    
    .family-lp .sec-block .sec-inner{

        margin: 0 auto;
        width: 100%;
        padding: 0 6.67%;
    }
    
    .family-lp .sec-block .sec-ti{}
    .family-lp .sec-block .sec-ti h2{
        font-size: 6.93vw;
    }
    .family-lp .sec-block .sec-ti .ti-sub{
        font-size: 4.27vw;
    }
    .family-lp .sec-block .sec-ti .ti-lead{
        font-size: 3.47vw;
    }
    
    /* img-block */
    .family-lp .img-block01{}
    .family-lp .img-block01 .img-block-inner{
        position: relative;
        line-height: 0;
    }
    .family-lp .img-block01 figure{}
    .family-lp .img-block01 figcaption{
        font-size: 3.2vw;
    }

    /* .hotel-btn */
    .family-lp .hotel-btn{
        display: flex;
    }
    .family-lp .hotel-btn a{
        position: relative;
        display: block;
        font-size: 3.87vw;
        line-height: 1.35;
    }
    .family-lp .hotel-btn a strong{
        font-size: 4.48vw;
    }
    .family-lp .hotel-btn a:before{
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        display: block;
        border-radius: 4vw 1.33vw;
        position: absolute;
        top: 1.33vw;
        left: 1.33vw;
    }
    .family-lp .hotel-btn .btn-bg{
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        padding: 2vw 2vw 2vw 16vw;
        border-radius: 4vw 1.33vw;
    }
    

    .family-lp #htl-kids .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico01.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-deck .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico02.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-mori .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico03.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-executive .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico04.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-buffet .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico05.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-spring .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico06.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }

    .family-lp #htl-saezuri .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico07.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }
    
    .family-lp #htl-other .hotel-btn .btn-bg{
        background: #ffffff url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/hotel-btn-ico08.webp") 2.67vw 50% no-repeat;
        background-size: 11.3vw auto;
    }
    
    /* #sec-point */
    .family-lp #sec-point{}
    .family-lp #sec-point .sec-inner{
        width: 100%;
        padding: 19.3% 0 35%;
    }
    .family-lp #sec-point .sec-ti{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_ti_line01.webp") 6.67vw 100% no-repeat;
        background-size: 54vw auto;
        padding-bottom: 3%;
        padding-left: 6.67%;
    }
    .family-lp #sec-point .sec-ti h2{
        font-size: 5.67vw;
    }
    .family-lp #sec-point .sec-ti h2:after{
        width: 9.73vw;
        height: 12vw;
        position: absolute;
        top: -8vw;
        right: -8vw;
    }
    .family-lp #sec-point .sec-ti h2 span{
        font-size: 6.67vw;
    }
    .family-lp #sec-point .sec-ti h3{
        font-size: 4.53vw;
        margin-top: 0.5em;
        margin-left: 5.3%;
        padding-left: 0;
    }
    .family-lp #sec-point .sec-ti p{
        display: inline-block;
        font-size: 6.93vw;
        margin-top: 0.4em;
        margin-left: 5.3%;
        padding-left: 0;
    }
    .family-lp #sec-point .sec-ti p > span{
        font-size: 9.7vw;
    }
    .family-lp #sec-point .sec-ti p > span .number{

        width: 6.13vw;
        height: auto;
    }
    .family-lp #sec-point .sec-ti .sec-ti-art{
        width: 19.2%;
        position: absolute;
        bottom: -4.5%;
        left: 6.67%;
    }

    .family-lp #sec-point .map-img{
        width: 84.67%;
        position: relative;
        top: 0;
        right: -6%;
        margin-left: auto;
    }

    .family-lp #sec-point .point-list{}
    .family-lp #sec-point .point-block{}
    .family-lp #sec-point .point-block .sec-txt{
        position: absolute;
    }
    .family-lp #sec-point .point-block h3{
        font-size: 4.36vw;
        margin-bottom: 0.5em;
    }
    .family-lp #sec-point .point-block h3 strong{
        font-size: 5.2vw;
    }
    .family-lp #sec-point .point-block p{
    }
    .family-lp #sec-point .point-block p strong{
        font-size: 4.16vw;
    }
    .family-lp #sec-point .point1{
        margin-top: -12.8%;
        margin-left: -3.867%;
        width: 94.93%;
        height: 0;
        padding-bottom: 72.63%;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg01_sp.webp") 50% 50% no-repeat;
        background-size: 100% auto;
        z-index: 3;
    }
    .family-lp #sec-point .point1 .sec-txt{
        width: 100%;
        top: 20%;
        left: 5%;
    }
    .family-lp #sec-point .point1 h3{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no01.webp") 50% 100% no-repeat;
        background-size: 43.3vw auto;
        padding-left: 10%;
        padding-bottom: 0.5em;
    }
    .family-lp #sec-point .point1 .sec-txt p strong{
        letter-spacing: -0.05em;
    }
    .family-lp #sec-point .point2{
        margin-top: -6.27%;
        margin-left: auto;
        margin-right: -5.07%;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg02_sp.webp") 50% 50% no-repeat;
        background-size: 100% auto;
        width: 97.33%;
        height: 0;
        padding-bottom: 63.33%;
    }
    .family-lp #sec-point .point2 .sec-txt{
        width: 100%;
        top: 12%;
        left: 0;
    }
    .family-lp #sec-point .point2 h3{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no02.webp") 50% 100% no-repeat;
        background-size: 45.07vw auto;
        padding-left: 10%;
        padding-bottom: 0.5em;
    }
    .family-lp #sec-point .point2 .sec-txt p strong{
        letter-spacing: -0.05em;
    }
    .family-lp #sec-point .point3{
        margin-top: -10.67%;
        margin-left: -4%;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_tx_bg03_sp.webp") 50% 50% no-repeat;
        background-size: 100% auto;
        width: 96.4%;
        height: 0;
        padding-bottom: 69.87%;
    }
    .family-lp #sec-point .point3 .sec-txt{
        width: 100%;
        top: 10%;
        left: -3%;
        line-height: 1.65;
    }
    .family-lp #sec-point .point3 h3{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-point_no03.webp") 50% 100% no-repeat;
        background-size: 44vw auto;
        padding-left: 10%;
        padding-bottom: 0.5em;
    }
    .family-lp #sec-point .point-img{
        width: 69%;
        margin-top: -8.53%;
        margin-left: auto;
        position: relative;
        bottom: 0;
        left: 0;
    }

    .family-lp #sec-point .sec-art{
        position: absolute;
    }
    .family-lp #sec-point .sec-art01{
        width: 27.6vw;
        top: -33.73vw;
        left: -2.67vw;
    }
    .family-lp #sec-point .sec-art02{
        width: 35.73vw;
        top: 0;
        right: -6.67vw;
    }
    .family-lp #sec-point .sec-art03{
        width: 58.13vw;
        top: 19.2vw;
        left: -46.53vw;
    }

    /* #sec-hotel */
    .family-lp #sec-hotel{}
    .family-lp #sec-hotel .sec-inner{
        width: 100%;
        padding-top: 19.3%;
        padding-bottom: 35%;
    }
    .family-lp #sec-hotel .sec-ti{
        text-align: right;
        position: relative;
    }
    
    .family-lp #sec-hotel .sec-ti h2{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_ti_line01.webp") 100% 100% no-repeat;
        background-size: 150%;
        margin-bottom: 12%;
        padding-bottom: 0.5em;
    }

    .family-lp #sec-hotel .sec-ti .ti-sub:after{
        content: "";
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-hotel_ti_art02.webp") 0 0 no-repeat;
        background-size: 100%;
        width: 9.73vw;
        height: 12vw;
        position: absolute;
        top: -6.4vw;
        left: -8vw;
    }
    .family-lp #sec-hotel .sec-ti .sec-ti-art{
        display: block;
        width: 20.27vw;
        position: absolute;
        bottom: 15.6vw;
        left: 0;
    }
    
    .family-lp #sec-hotel .hotel-block{}
    .family-lp #sec-hotel .block-hd{
        display: flex;
        flex-direction: column;
        position: relative;
    }
    .family-lp #sec-hotel .block-hd .img-block01{
        width: 100%;
    }
    .family-lp #sec-hotel .hotel-block-ti{
        text-align: center;
        position: relative;
        width: 55.4%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
    }
    .family-lp #sec-hotel .hotel-block:nth-child(2n+1) .block-hd{
        /*margin-right: 0;
        margin-left: auto;*/
        align-items: flex-end;
    }
    .family-lp #sec-hotel .hotel-block:nth-child(2n+1) .hotel-block-ti{
        /*margin-right: 0;
        margin-left: auto;*/
    }
    .family-lp #sec-hotel .hotel-block-ti .ti-txt{
        margin: 0 auto;
        width: 120%;
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        transform: translateX(-10%) translateY(-50%);
    }
    .family-lp #sec-hotel .hotel-block-ti h3{
        font-size: 4.8vw;
    }
    .family-lp #sec-hotel .hotel-block-ti h3 span{
        font-size: 3.84vw;
    }
    .family-lp #sec-hotel .hotel-block-ti p{
        font-size: 3.47vw;
    }
    .family-lp #sec-hotel .hotel-block-ti .ti-bg{
        width: 100%;
        margin: 0 auto;
        line-height: 1;
        position: relative;
    }
    
    .family-lp #sec-hotel .gallery-block{
        position: relative;
    }
    
    #content-main.family-lp #sec-hotel .hotel-block{
        margin-top: 32.3%;
    }
    #content-main.family-lp #sec-hotel  .block-hd{
        margin-bottom: 0;
    }
    #content-main.family-lp #sec-hotel  .block-hd .hotel-block-txt{
        width: 100%;
        position: relative;
        top: 0;
        margin-top: 7.4%;
    }
    #content-main.family-lp #sec-hotel  .block-hd .img-block01{
        margin-top: -14.3%;
        margin-left: auto;
        margin-right: auto;
    }
    #content-main.family-lp #sec-hotel  .gallery{
        margin-top: 7.7%;
    }
    
    /* #sec-hotel > #htl-kids */
    .family-lp #sec-hotel #htl-kids.hotel-block{
            margin-top: 16%;
    }
    .family-lp #sec-hotel #htl-kids .gallery-block{}
    .family-lp #sec-hotel #htl-kids .gb01 .item01{
        width: 71.54%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb01 .item02{
        width: 57%;
        margin-top: -13.23%;
        margin-left: auto;
    }
    .family-lp #sec-hotel #htl-kids .gb01 .item02 figcaption{
        right: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb02{
        margin-top: -10.77%;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item01{
        width: 48.3%;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item01 figcaption{
        bottom: -2em;
        left: 0;
        letter-spacing: -0.1em;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item02{
        width: 53.1%;
        margin-top: 3%;
        margin-left: 26.77%;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item02 figcaption{
        bottom: -2em;
        left: auto;
        right: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item03{
        width: 47.7%;
        margin-top: -63.54%;

        margin-left: auto;
        margin-right: 0;

    }
    .family-lp #sec-hotel #htl-kids .gb02 .item03 figcaption{
        bottom: -2em;
        right: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item04{
        width: 43%;
        margin-top: 20%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb02 .item04 figcaption{
        bottom: 1.5em;
        right: -50%;
    }
    .family-lp #sec-hotel #htl-kids .gb03{
        margin-top: 8.9%;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item01{
        width: 58.46%;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item01 figcaption{
        bottom: -2em;
        left: 1em;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item02{
        width: 51.7%;
        margin-top: -48.15%;
        margin-left: auto;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item02 figcaption{
        bottom: -2em;
        right: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item03{
        width: 45.54%;
        margin-top: 8.3%;
        padding-bottom: 0;
    }
    .family-lp #sec-hotel #htl-kids .gb03 .item03 figcaption{
        bottom: -2em;
        left: 1em;
    }
    
    .family-lp #sec-hotel #htl-kids .sec-art{
        position: absolute;
    }
    .family-lp #sec-hotel #htl-kids .sec-art01{
        width: 26vw;
        top: 26vw;
        right: 5.33vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-art02{
        width: 27.47vw;
        top: -12.27vw;
        left: auto;
        right: -5.33vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-art03{
        width: 29.73vw;
        bottom: -4.4vw;
        left: 0;
    }
    .family-lp #sec-hotel #htl-kids .sec-art04{
        width: 15.3vw;
        top: auto;
        bottom: -10.4vw;
        left: 31.7vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-art05{
        width: 11.73vw;
        bottom: -25.3vw;
        left: 18.93vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-bg-art01{
        width: 34.4vw;
        top: 6.4vw;
        right: 7.6vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-bg-art02{
        width: 21.87vw;
        top: 30.93vw;
        left: -1.87vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-bg-art03{
        width: 24.7vw;
        bottom: -2.27vw;
        right: auto;
        left: 15.6vw;
    }
    .family-lp #sec-hotel #htl-kids .sec-bg-art04{
        width: 27.73vw;
        bottom: 6.67vw;
        left: 24.4vw;
    }
    
    .family-lp #sec-hotel #htl-kids .sec-txt{
        margin-top: 33.85%;
        padding-left: 0;
    }
    .family-lp #sec-hotel #htl-kids .btn-area{
        margin-top: 6.67%;
        padding-right: 1.33vw;
    }

    /* #sec-hotel > #htl-deck */
    .family-lp #sec-hotel #htl-deck .gallery-block{}
    .family-lp #sec-hotel #htl-deck .gb01 .item01{
        width: 68.46%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-deck .gb01 .item02{
        width: 42.77%;
        margin-top: -23.23%;
        margin-left: auto;
    }
    .family-lp #sec-hotel #htl-deck .btn-area{
        margin-top: 35.38%;
    }
    
    .family-lp #sec-hotel #htl-deck .sec-art{
        position: absolute;
    }
    .family-lp #sec-hotel #htl-deck .sec-art01{
        width: 42vw;
        top: -10.8vw;
        left: auto;
        right: -16.7vw;
    }
    .family-lp #sec-hotel #htl-deck .sec-art02{
        width: 47.6vw;
        top: auto;
        bottom: -26vw;
        right: auto;
        left: -2.67vw;
    }
    .family-lp #sec-hotel #htl-deck .sec-bg-art01{
        width: 34.27vw;
        top: 6.13vw;
        right: -7vw;
    }
    
    /* #sec-hotel > #htl-mori */
    .family-lp #sec-hotel #htl-mori .gb01 .item01{
        width: 64.4%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-mori .gb01 .item01 figcaption{
        left: 1em;
    }
    .family-lp #sec-hotel #htl-mori .gb01 .item02{
        width: 57.7%;
        margin-top: -12.77%;
        margin-left: auto;
    }

    .family-lp #sec-hotel #htl-mori .gb01 .item02 figcaption{
        bottom: -3.5em;
        left: auto;
        right: 0;
    }
    .family-lp #sec-hotel #htl-mori .gb01 .item03{
        width: 57.7%;
        margin-top: 10%;

        margin-left: 0;
        padding-bottom: 0;
    }
    .family-lp #sec-hotel #htl-mori .gb01 .item03 figcaption{
        right: -4em;
    }
    .family-lp #sec-hotel #htl-mori .btn-area{
        margin-top: 27.69%;
        padding-right: 1.33vw;
    }
    
    .family-lp #sec-hotel #htl-mori .sec-art{
        position: absolute;
    }
    .family-lp #sec-hotel #htl-mori .sec-art01{
        width: 18.27vw;
        top: auto;
        bottom: 2.5vw;
        right: 21.6vw;
    }
    .family-lp #sec-hotel #htl-mori .sec-art02{
        width: 26.4vw;
        top: -8.4vw;
        left: auto;
        right: 9.07vw;
    }
    .family-lp #sec-hotel #htl-mori .sec-art03{
        width: 33.3vw;
        top: 2vw;
        left: auto;
        right: -3.73vw;
    }
    .family-lp #sec-hotel #htl-mori .sec-art04{
        width: 22.4vw;
        top: auto;
        bottom: 31vw;
        right: auto;
        left: 0;
    }
    .family-lp #sec-hotel #htl-mori .sec-bg-art01{
        width: 42.13vw;
        top: 8.93vw;
        left: auto;
        right: 7.3%;
    }
    .family-lp #sec-hotel #htl-mori .sec-bg-art02{
        width: 28.53vw;
        bottom: -17.6vw;
        right: auto;
        left: 16.93vw;
    }

    /* #sec-hotel > #htl-executive */
    .family-lp #sec-hotel #htl-executive .gallery-block{}
    .family-lp #sec-hotel #htl-executive .gb01 .item01{
        width: 69.23%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-executive .gb01 .item02{
        width: 62.3%;
        margin-top: -4.6%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-hotel #htl-executive .btn-area{
        margin-top: 8.46%;
        padding-left: 0;
    }
    
    .family-lp #sec-hotel #htl-executive .sec-art01{
        width: 44vw;
        top: 12.27vw;
        left: -17.87vw;
    }
    .family-lp #sec-hotel #htl-executive .sec-art02{
        width: 9.33vw;
        bottom: auto;
        top: 74vw;
        left: -3.6vw;
    }
    .family-lp #sec-hotel #htl-executive .sec-art03{
        width: 12.4vw;
        top: 16vw;
        right: 12vw;
    }
    .family-lp #sec-hotel #htl-executive .sec-art04{
        width: 24vw;
        top: auto;
        bottom: 7vw;
        right: auto;
        left: 3.73vw
    }
    .family-lp #sec-hotel #htl-executive .sec-bg-art01{
        width: 43vw;
        top: 17.3vw;
        left: 22.7vw;
    }

    /* #sec-hotel > #htl-buffet */
    .family-lp #sec-hotel #htl-buffet .gb01 .item01{
        width: 67%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-buffet .gb01 .item02{
        width: 63%;
        margin-top: -13.54%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-hotel #htl-buffet .gb01 .item03{
        width: 60%;
        margin-top: 9.23%;
        margin-left: auto;
    }
    .family-lp #sec-hotel #htl-buffet .gb01 .item04{
        width: 58.46%;
        margin-top: -18.46%;
        margin-left: 0;
        margin-right: auto;
        position: relative;
        z-index: 1;
    }
    .family-lp #sec-hotel #htl-buffet .btn-area{
        margin-top: 9.23%;
    }
    .family-lp #sec-hotel #htl-buffet .btn-area .hotel-btn{
        justify-content: flex-end;
    }
    
    .family-lp #sec-hotel #htl-buffet .sec-art01{
        width: 22.4vw;
        top: 13.7vw;
        right: -1.87vw;
    }
    .family-lp #sec-hotel #htl-buffet .sec-art02{
        width: 45.07vw;
        bottom: 28.07vw;
        left: -3.2vw;
    }
    .family-lp #sec-hotel #htl-buffet .sec-bg-art01{
        width: 44.8vw;
        bottom: 31.47vw;
        left: 21.3vw;
    }

    /* #sec-hotel > #htl-spring */
    .family-lp #sec-hotel #htl-spring .gb01 .item01{
        width: 70.77%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-spring .gb01 .item01 figcaption{
        left: 1em;
    }
    .family-lp #sec-hotel #htl-spring .gb01 .item02{
        width: 58.46%;
        margin-top: 20%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-hotel #htl-spring .gb01 .item02 figcaption{
        left: 5.5em;
    }
    .family-lp #sec-hotel #htl-spring .gb01 .item03{
        width: 58.46%;
        margin-top: -12.6%;
        margin-left: 0;
    }
    .family-lp #sec-hotel #htl-spring .btn-area{
        margin-top: 8.77%;
        padding-right: 0;
    }
    .family-lp #sec-hotel #htl-spring .btn-area .hotel-btn{
        justify-content: flex-start;
    }
    
    .family-lp #sec-hotel #htl-spring .sec-art{
        position: absolute;
    }
    .family-lp #sec-hotel #htl-spring .sec-art01{
        width: 25.6vw;
        top: 16vw;
        left: 4vw;
    }
    .family-lp #sec-hotel #htl-spring .sec-art02{
        width: 24.67vw;
        top: 34.67vw;
        left: auto;
        right: 0;
    }
    .family-lp #sec-hotel #htl-spring .sec-art03{
        width: 37.87vw;
        bottom: auto;
        top: 50.67vw;
        left: 7.73vw;
    }
    .family-lp #sec-hotel #htl-spring .sec-bg-art01{
        width: 35.2vw;
        bottom: auto;
        top: 11.5vw;
        right: 10.27vw;
    }
    .family-lp #sec-hotel #htl-spring .sec-bg-art02{
        width: 48.53vw;
        bottom: 17vw;
        left: 15.2vw;
    }

    /* #sec-hotel > #htl-saezuri */
    .family-lp #sec-hotel #htl-saezuri .btn-area{
        margin-top: 47%;
        padding-right: 1.33vw;
    }
    .family-lp #sec-hotel #htl-saezuri .btn-area .hotel-btn{
        justify-content: flex-end;
    }
    
    .family-lp #sec-hotel #htl-saezuri .sec-art{
        position: absolute;
    }
    .family-lp #sec-hotel #htl-saezuri .sec-art01{
        width: 33.3vw;
        top: 30.5vw;
        right: 4.8vw;
    }
    .family-lp #sec-hotel #htl-saezuri .sec-art02{
        width: 56vw;
        bottom: -33.3vw;
        left: auto;
        right: -4vw;
    }
    .family-lp #sec-hotel #htl-saezuri .sec-bg-art01{
        width: 49.3vw;
        bottom: -9.07vw;
        left: auto;
        right: -2vw;
    }

    /* #sec-hotel > #htl-other */
    .family-lp #sec-hotel #htl-other .block-hd .hotel-block-txt{
        width: 100%;
        margin-top: 7.7%;
        margin-right: 0;
    }
    .family-lp #sec-hotel #htl-other .welcome-baby{
        width: 100%;
        height: auto;
        padding: 3.85% 0;
        background: #f5fae9 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/htl-other_ico01.webp") 2.93vw 50% no-repeat;
        background-size: 27% auto;
        border-radius: 2vw;
        padding-left: 30.77%;
    }
    .family-lp #sec-hotel #htl-other .welcome-baby h4{
        font-size: 3.376vw;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/htl-other_txt_art01.webp") 50% 50% no-repeat;
        background-size: 95% auto;
    }
    .family-lp #sec-hotel #htl-other .welcome-baby p{
        font-size: 2.93vw;
    }
    .family-lp #sec-hotel #htl-other .btn-area{
        margin-top: 5.4%;
        display: block;
        padding-right: 0;
    }
    .family-lp #sec-hotel #htl-other .btn-area .hotel-btn{
        margin-top: 6%;
        justify-content: flex-start;
    }

    .family-lp #sec-hotel #htl-other .sec-art01{
        width: 40.27vw;
        top: 12.67vw;
        left: -4.267vw;
    }


    /* #sec-spot */
    .family-lp #sec-spot{}
    .family-lp #sec-spot .sec-inner{
        width: 100%;
        padding-top: 19.3%;
        padding-bottom: 35%;
    }
    .family-lp #sec-spot .sec-ti{}

    .family-lp #sec-spot .sec-ti h2{
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-spot_ti_line01.webp") 0% 100% no-repeat;
        background-size: 100% auto;
        margin-bottom: 12%;
        padding-bottom: 0.5em;
    }
    .family-lp #sec-spot .sec-ti h2 span{
        font-size: 5.9vw;
    }
    .family-lp #sec-spot .sec-ti .ti-sub:after{
        width: 9.73vw;
        height: 12vw;
        position: absolute;
        top: -4vw;
        right: -6vw;
    }
    .family-lp #sec-spot .sec-ti .sec-ti-art{
        display: block;
        width: 46.7vw;
        top: auto;
        bottom: -35.2vw;
        right: -2vw;
    }

    .family-lp #sec-spot .spot-block{}
    .family-lp #sec-spot .block-hd{
        display: flex;
        flex-direction: column;
        position: relative;
    }
    .family-lp #sec-spot .block-hd .img-block01{}
    .family-lp #sec-spot #spot01 .block-hd .img-block01,
    .family-lp #sec-spot #spot02 .block-hd .img-block01{
        width: 79.23%;
    }
    .family-lp #sec-spot #spot03 .block-hd .img-block01,
    .family-lp #sec-spot #spot04 .block-hd .img-block01,
    .family-lp #sec-spot #spot05 .block-hd .img-block01{
        width: 73.08%;
    }
    .family-lp #sec-spot .spot-block-ti{}
    .family-lp #sec-spot .spot-block-ti .ti-txt{}
    .family-lp #sec-spot .spot-block-ti h3{
        font-size: 4.8vw;
    }
    .family-lp #sec-spot .spot-block-ti h3 span{
        font-size: 3.2vw;
    }
    .family-lp #sec-spot .spot-block-ti p{
        font-size: 3.47vw;
    }
    .family-lp #sec-spot .spot-block-ti .ti-bg{
        width: 36.6%;
    }

    .family-lp #sec-spot .sec-txt .spot-btn{
        display: inline-block;
        margin-top: 4%;
    }
    .family-lp #sec-spot .sec-txt .spot-btn a{
        font-size: 3.73vw;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/spot-btn-ico01.webp") 0 50% no-repeat;
        background-size: 100% auto;
        padding-left: 7.6vw;
        height: 6.27vw;
    }
    
    .family-lp #sec-spot .sec-art,
    .family-lp #sec-spot .sec-tree{
        position: absolute;
    }
    .family-lp #sec-spot .sec-tree01{
        width: 18.13vw;
    }
    .family-lp #sec-spot .sec-tree02{
        width: 17.73vw;
    }

    /* #sec-spot > #spot01 */
    .family-lp #sec-spot #spot01{
        margin-top: 29.23%;
    }
    .family-lp #sec-spot #spot01 .spot-block-ti{
        margin-bottom: 1em;
        padding: 12.3% 0 0 9.23%;
    }
    .family-lp #sec-spot #spot01 .spot-block-ti .ti-bg{
        left: 0;
    }
    .family-lp #sec-spot #spot01 .block-hd .img-block01{
        margin-left: 9.23%;
    }
    .family-lp #sec-spot #spot01 .gallery{
        width: 100%;
        position: relative;
        top: 0;
        left: 0;
        margin-top: 3%;
    }
    .family-lp #sec-spot #spot01 .gb01 .item01{
        width: 61%;
        margin-left: 0;
        margin-right: auto;
    }
    .family-lp #sec-spot #spot01 .gb01 .item02{
        width: 61%;
        margin-top: 3%;
        margin-left: auto;
        margin-right: 11.4%;
    }
    .family-lp #sec-spot #spot01 .sec-txt{
        width: 100%;
        margin-top: 6.15%;
        margin-left: 0;
    }

    .family-lp #sec-spot #spot01 .sec-tree{
        top: 12vw;
        left: auto;
        right: 12vw;
    }
    .family-lp #sec-spot #spot01 .sec-art01{
        width: 37.3vw;
        top: -1.87vw;
        right: -3.47vw;
    }

    /* #sec-spot > #spot02 */
    .family-lp #sec-spot #spot02{
        margin-top: 15.4%;
    }
    .family-lp #sec-spot #spot02 .spot-block-ti{
        margin-bottom: 1em;
        padding: 12.3% 9.23% 0 0;
    }
    .family-lp #sec-spot #spot02 .spot-block-ti .ti-bg{
        right: 0;
    }
    .family-lp #sec-spot #spot02 .block-hd .img-block01{
        margin-right: 9.23%;
    }
    .family-lp #sec-spot #spot02 .gallery{
        width: 100%;
        position: relative;
        top: 0;
        left: 0;
        margin-top: 9.7%;
    }
    .family-lp #sec-spot #spot02 .gb01 .item01{
        width: 61%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-spot #spot02 .gb01 .item02{
        width: 61%;
        margin-top: 3%;
        margin-left: 11.4%;
    }
    .family-lp #sec-spot #spot02 .sec-txt{
        width: 100%;
        margin-top: 6.15%;
        margin-left: 0;
    }
    .family-lp #sec-spot #spot02 .sec-txt p{
        text-align: left;
    }
    .family-lp #sec-spot #spot02 .sec-txt .spot-btn{
        display: block;
        text-align: right;
    }
    .family-lp #sec-spot #spot02 .sec-txt .spot-btn a{
        display: inline-block;
        text-align: left;
    }

    .family-lp #sec-spot #spot02 .sec-tree{
        top: 10.7vw;
        left: 11vw;
    }
    .family-lp #sec-spot #spot02 .sec-art01{
        width: 26.7vw;
        top: -6%;
        left: 4.27%;
    }

    /* #sec-spot > #spot03 */
    .family-lp #sec-spot #spot03{
        margin-top: 15.4%;
    }
    .family-lp #sec-spot #spot03 .spot-block-ti{
        margin-bottom: 0.75em;
        padding: 8.46% 0 0 9.23%;
    }
    .family-lp #sec-spot #spot03 .spot-block-ti .ti-bg{
        left: 0;
    }
    .family-lp #sec-spot #spot03 .block-hd .img-block01{
        margin-left: 9.23%;
    }
    .family-lp #sec-spot #spot03 .gb01 .item01{
        width: 58.46%;
        margin-top: 3%;
        margin-left: 0;
    }
    .family-lp #sec-spot #spot03 .sec-txt{
        width: 100%;
        position: relative;
        bottom: 0;
        left: 0;
        margin-top: 6.15%;
    }
    .family-lp #sec-spot #spot03 .sec-txt .spot-btn{
        display: block;
        text-align: right;
    }
    .family-lp #sec-spot #spot03 .sec-txt .spot-btn a{
        display: inline-block;
        text-align: left;
    }

    .family-lp #sec-spot #spot03 .sec-tree{
        top: 12vw;
        left: auto;
        right: 17vw;
    }
    .family-lp #sec-spot #spot03 .sec-art01{
        width: 32.7vw;
        top: 0;
        right: 0;
    }

    /* #sec-spot > #spot04 */
    .family-lp #sec-spot #spot04{
        margin-top: 15.4%;
    }
    .family-lp #sec-spot #spot04 .spot-block-ti{
        margin-bottom: 0.75em;
        padding: 9.23% 7.4% 0 0;
    }
    .family-lp #sec-spot #spot04 .block-hd .img-block01{
        margin-right: 7.4%;
    }
    .family-lp #sec-spot #spot04 .gb01 .item01{
        width: 58.9%;
        margin-top: 3%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-spot #spot04 .sec-txt{
        width: 100%;
        margin-left: 0;
        margin-top: 6.15%;
    }
    .family-lp #sec-spot #spot04 .sec-txt .spot-btn{
        display: block;
        text-align: right;
    }
    .family-lp #sec-spot #spot04 .sec-txt .spot-btn a{
        display: inline-block;
        text-align: left;
    }

    .family-lp #sec-spot #spot04 .sec-tree{
        top: 10vw;
        left: 26.7vw;
    }
    .family-lp #sec-spot #spot04 .sec-art01{
        width: 33vw;
        bottom: 33vw;
        right: auto;
        left: 0;
    }

    /* #sec-spot > #spot05 */
    .family-lp #sec-spot #spot05{
        width: 100%;
        margin-top: 29%;
    }
    .family-lp #sec-spot #spot05 .spot-block-ti{
        margin-bottom: 1em;
        padding: 12.3% 0 0 9.23%;
    }
    .family-lp #sec-spot #spot05 .block-hd .img-block01{
        margin-left: 9.23%;
    }
    .family-lp #sec-spot #spot05 .gb01 .item01{
        width: 58.9%;
        margin-top: 3%;
        margin-left: auto;
        margin-right: 0;
    }
    .family-lp #sec-spot #spot05 .sec-txt{
        width: 100%;
        position: relative;
        bottom: 0;
        left: 0;
        margin-top: 6.15%;
    }
    .family-lp #sec-spot #spot05 .sec-txt .spot-btn{
        display: block;
        text-align: right;
    }
    .family-lp #sec-spot #spot05 .sec-txt .spot-btn a{
        display: inline-block;
        text-align: left;
    }

    .family-lp #sec-spot #spot05 .sec-tree{
        top: 12vw;
        left: auto;
        right: 18.5vw;
    }
    .family-lp #sec-spot #spot05 .sec-art01{
        width: 54.93vw;
        top: -12%;
        left: auto;
        right: 3.3vw;
    }

    
    /* #sec-event */
    .family-lp #sec-event{}
    .family-lp #sec-event .sec-inner{
        width: 100%;
        padding-top: 19.3%;
    }
    
    .family-lp #sec-event .sec-ti{
        text-align: right;
        position: relative;
        padding-bottom: 33.85%;
    }
    .family-lp #sec-event .sec-ti h2{
        color: #d1284c;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-event_ti_line01.webp") 100% 100% no-repeat;
        background-size: 120%;
        margin-bottom: 0;
        padding-bottom: 0.5em;
    }
    .family-lp #sec-event .sec-ti h2:after{
        content: "";
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/sec-event_ti_art02.webp") 0 0 no-repeat;
        background-size: 100%;
        width: 9.73vw;
        height: 12vw;
        position: absolute;
        top: -4.67vw;
        left: -8vw;
    }
    .family-lp #sec-event .sec-ti h2 span{
        font-size: 5.9vw;
    }
    .family-lp #sec-event .sec-ti .sec-ti-art{
        width: 47.73vw;
        position: absolute;
        bottom: 0;
        left: 1.2vw;
    }

    .family-lp #sec-event .event-list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 5.4vw;
    }
    .family-lp #sec-event .event-list:after{
        content: none;
    }
    .family-lp #sec-event .event-list .event-item{
        width: 47.7%;
        padding-bottom: 6vw;
        margin-bottom: 13.85%;
    }
    .family-lp #sec-event .event-list .event-item a{}
    .family-lp #sec-event .event-list .event-img{
        padding: 0 2vw 2vw 0;
    }
    .family-lp #sec-event .event-list .event-img:before{
        content: "";
        width: 95.4%;
        height: 95.4%;
        position: absolute;
        border-radius: 6.67vw 2.67vw;
    }
    .family-lp #sec-event .event-list .event-img img{
        border-radius: 6.67vw 2.67vw;
    }
    .family-lp #sec-event .event-list .event-txt{
        margin-top: 0.5em;
    }
    .family-lp #sec-event .event-list .event-label{
        width: 100%;
        height: 1.75em;
        font-size: 3.2vw;
    }
    

    /* .content-bottom */
    .family-lp .content-bottom{
        padding: 13.85% 0 0;
        background: #fff2e7;
    }
    .family-lp .content-bottom .reserve-btn{}
    .family-lp .content-bottom .reserve-btn span{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 76.7%;
        height: 3em;
        margin: 0 auto;
        padding-left: 60px;
        background: #357a16 url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btn_ico01.webp") 14.67vw 50% no-repeat;
        background-size: 1.25em auto;
        border-radius: 9999px;
        font-size: 4.8vw;
        color: #ffffff;
    }

    .family-lp .content-bottom .brand-area{
        width: 100%;
        margin: 9.3% auto 0;
        padding-bottom: 7.5%;
        background: url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btm_art01.webp"),url("https://grand-mercure-yatsugatake-resortandspa.jp/tw/wp/wp-content/themes/grand/lp/family/images/btm_art01.webp");
        background-size: 24.2% auto,24.2% auto;
        background-repeat: no-repeat,no-repeat;
        background-position: -3.47% 100%,103.47% 100%;
    }
    .family-lp .content-bottom .brand-area .brand-logo{
        width: 48%;
        margin: 0 auto;
    }
    .family-lp .content-bottom .brand-area .hotel-name{
        font-size: 4.27vw;
        margin-top: 5%;
        line-height: 1.25;
    }
    
}


/* ↓↓↓ ボタン非表示 ↓↓↓ */
.family-lp #sec-hotel .btn-area .hotel-btn{
    visibility: hidden;
}
.family-lp #sec-spot .sec-txt .spot-btn{
    visibility: hidden;
}
/* ↑↑↑ ボタン非表示 ↑↑↑ */


/*.family-lp .inview_fadein,
.family-lp .inview_fadeins > * {
	opacity: 0;
}
.family-lp .inview_fadein_end:nth-child(10n+1) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) .2s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+2) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) .4s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+3) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) .6s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+4) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) .8s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+5) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 1s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+6) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 1.2s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+7) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 1.4s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+8) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 1.6s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n+9) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 1.8s forwards;
}
.family-lp .inview_fadein_end:nth-child(10n) {
	animation: anime01 2.5s cubic-bezier(.23,1,.32,1) 2s forwards;
}

@keyframes anime01 {
	0% {transform:translate(25px, 25px); opacity: 0;}
	100% {transform:translate(0, 0); opacity: 1;}
}

.family-lp .ani-rotation{
    animation: 5s linear infinite rotation;
}

@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}*/