@charset "utf-8";
body{opacity:0;}
body.animated{opacity:1;}

body.en{font-family:"Noto Serif","Times New Roman","Georgia", serif;}
body.zh-cht{font-family: "Noto Serif TC","PingFang TC","Hiragino Sans CNS","Microsoft JhengHei",serif;}

/* -------------------------------------------------- */
/* header */
/* -------------------------------------------------- */
header .header-list{display:flex;align-items:center;font-size:1.8rem;color:#fff;text-align:center;}
header .header-list > li{padding-left:36px;position:relative;}
header .header-list > li + li::before{content:"/";position:absolute;left:1em;top:50%;margin-top:-0.75em;}
header .header-list > li a{color:#fff;line-height:1.5;display:inline-block;}
header .header-list > li a:hover{opacity:0.7;}
header .menu-btn a{white-space:nowrap;}
header #gnav2 .gnav2-inner{display:flex;align-items:center;}
header #header-btn2{display:none;}
header.fixed .header-list,
header.fixed .header-list > li a{color:#332e2d;}

body.en header .header-list{font-size:1.6rem;}
body.en header .menu-btn a{font-size:1.4rem;padding-left:20px;padding-right:20px;}

@media screen and (min-width:1px) and (max-width:1299px){
    header .header-list{font-size:1.6rem;}
    header .header-list > li{padding-left:20px;}
    header .header-list > li + li::before{left:7px;}
}
@media screen and (min-width:1px) and (max-width:1099px){
    header #gnav2{display:none;width:350px;height:100%;position:fixed;top:0;right:0;background:#332e2d;color:#fff;z-index:1001;padding:140px 30px 60px;overflow-y:auto;max-width:100%;}
    header #gnav2 .gnav2-inner{display:flex;flex-direction:column-reverse;align-items:flex-start;}
    header #gnav2 .gnav2-inner > *{width:100%;}
    header .menu-btn{display:block!important;}
    header .menu-btn a{background:#fff;color:#332e2d;border-color:#fff;width:100%;margin:0 auto;text-align:center;}
    header .menu-btn a:hover{background:transparent;color:#fff;}
    header .header-list{display:block;margin-top:30px;}
    header .header-list > li{border-bottom:1px solid #fff;padding-left:0;}
    header .header-list > li a{font-size:1.8rem;padding:20px 60px 20px 0;line-height:1.4;display:flex;align-items:center;width:100%;height:100%;position:relative;text-align:left;}
    header .header-list > li + li::before{display:none;}
    header .header-list > li a::after{content:"";display:block;width:21px;height:12px;background:url(/img/arrow03.png) no-repeat center center;background-size:contain;position:absolute;top:50%;right:0;margin-top:-6px;transition:.25s ease;}
    header .header-list > li a:hover::after{right:-5px;}
    header #header-btn2{position:relative;display:block;width:90px;height:90px;margin-left:10px;z-index:1003;}
    header #header-btn2 span{display:inline-block;transition:.2s,background .5s ease;box-sizing:border-box;width:32px;position:absolute;top:37%;right:28px;height:2px;background-color:#fff;}
    header #header-btn2 span:nth-of-type(1){transform:translateY(-7px);}
    header #header-btn2 span:nth-of-type(3){transform:translateY(7px);}
    header #header-btn2 small{color:#fff;font-size:1.2rem;font-weight:bold;display:block;padding-top:39px;transition:color .5s ease;}

    header.fixed .header-list > li a{color:#fff;}
    header.fixed #header-btn2 small{color:#332e2d;}
    header.fixed #header-btn2 span{background:#332e2d;}

    header.active #header-btn2 small{color:#fff!important;}
    header.active #header-btn2 span{background:#fff!important;}
    header.active #header-btn2 span:nth-of-type(1){transform:rotate(45deg);}
    header.active #header-btn2 span:nth-of-type(2){opacity:0;}
    header.active #header-btn2 span:nth-of-type(3){transform:rotate(-45deg);}
    header.active #header-btn2 small{font-size:0;color:#fff!important;}
    header.active #header-btn2 small::before{content:"Close";font-size:1.2rem;letter-spacing:0.05em;}
}
@media screen and (min-width:1px) and (max-width:999px){
    header #gnav2{padding-top:100px;}
	header #header-btn2{width:70px;height:60px;margin-left:5px;}
	header #header-btn2 span{width:25px;right:22px;height:1px;}
	header #header-btn2 span:nth-of-type(1){transform:translateY(-6px);}
	header #header-btn2 span:nth-of-type(3){transform:translateY(6px);}
	header #header-btn2 small{padding-top:30px;font-size:1.1rem;}
    header.fixed.active .logo a::before{opacity:1!important;}
}
@media screen and (min-width:1px) and (max-width:622px){
    header #gnav2{width:100%;}
    header .header-list > li a{font-size:1.6rem;}
    header.fixed.active .logo a::before{opacity:0!important;}
}

/* -------------------------------------------------- */
/* footer */
/* -------------------------------------------------- */
footer{padding-bottom:120px;}
footer .right{align-items:flex-end;}
footer .footer-reserve{text-align:center;display:inline-block;max-width:320px;margin-top:40px;width:100%;}
footer .footer-reserve .ttl{font-size:2.4rem;font-weight:bold;margin-bottom:5px;}
footer .footer-reserve .ttl::before{content:"";display:inline-block;width:16px;height:19px;background:url(/img/contact_icon01.png) no-repeat;background-size:contain;margin-right:15px;}
footer .footer-reserve .btn a{display:inline-block;background:#fff;color:#7f4438;border:1px solid #fff;font-size:1.8rem;font-weight:bold;width:100%;max-width:320px;padding:22px 50px 20px;position:relative;margin-top:8px;color:#332e2d!important;}
footer .footer-reserve .btn a::after{content:"";display:block;width:21px;height:12px;background:url(/img/arrow02.png) no-repeat center center;background-size:contain;position:absolute;right:20px;top:50%;margin-top:-6px;transition:.25s ease;}
footer .footer-reserve .btn a:hover{background:transparent;color:#fff!important;}
footer .footer-reserve .btn a:hover::after{right:15px;background-image:url(/img/arrow03.png);}
body.en footer .footer-reserve,
body.en footer .footer-reserve .btn a{max-width:450px;}

@media screen and (min-width:1px) and (max-width:999px){
    footer{padding-bottom:100px;}
	footer .footer-reserve .ttl{font-size:2rem;}
	footer .footer-reserve .btn a{padding:15px 50px 13px;font-size:1.6rem;}
	footer .footer-reserve .btn a::after{width:12px;height:8px;margin-top:-4px;}
}
@media screen and (min-width:1px) and (max-width:622px){
    footer{padding-bottom:60px;}
    footer .footer-reserve{margin-top:25px;}
	footer .footer-reserve .ttl{font-size:1.8rem;}
	footer .footer-reserve .btn a{width:250px;max-width:90%;}
    body.en footer .footer-reserve .btn a{width:300px;}
}

/* -------------------------------------------------- */
/* #pagetop */
/* -------------------------------------------------- */
#pagetop{bottom:40px;}

@media screen and (min-width:1px) and (max-width:622px){
    #pagetop{bottom:20px;}
}

/* -------------------------------------------------- */
/* #block-mv */
/* -------------------------------------------------- */
#block-mv{position:relative;height:calc(100vh - 80px);min-height:700px;overflow:hidden;margin-bottom:60px;}
#block-mv .box{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;color:#fff;text-shadow:0 0 5px rgba(16,17,69,1),0 0 5px rgba(16,17,69,0.5);pointer-events:none;padding-top:20px;text-align:center;}
#block-mv .box .container{display:flex;justify-content:center;align-items:center;height:100%;width:100%;}
#block-mv .txt{font-size:3.2rem;font-weight:bold;letter-spacing:0.4em;opacity:0;transform:translateY(-20px);}
#block-mv .txt::after{content:"";display:block;margin:20px 0;width:100%;height:1px;background:#fff;box-shadow:0 0 5px rgba(16,17,69,1),0 0 5px rgba(16,17,69,0.5);transform:scale(0,1);transform-origin:center top;}
#block-mv .ttl{font-size:4rem;font-weight:bold;display:inline-block;}
#block-mv .ttl span{display:block;opacity:0;transform:translateY(-20px);letter-spacing:0.4em;}
body.en #block-mv .txt{letter-spacing:0.1em;}
body.en #block-mv .ttl span{letter-spacing:0.1em;}

#block-mv #mv-slider{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;overflow:hidden;}
#block-mv #mv-slider div{height:100%;}
#block-mv #mv-slider .item{position:relative;}
#block-mv #mv-slider .item img{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:cover;}
#block-mv #mv-slider .slick-dots{position:absolute;z-index:5;bottom:60px;left:calc((100% - 1300px) / 2);display:flex;}
#block-mv #mv-slider .slick-dots > li{opacity:0.4;}
#block-mv #mv-slider .slick-dots > li.slick-active{opacity:1;}
#block-mv #mv-slider .slick-dots > li button{font-size:0;padding:10px 4px;cursor:pointer;}
#block-mv #mv-slider .slick-dots > li button::before{content:"";display:block;width:48px;height:4px;background:#fff;}

#block-mv.animated .ttl span{opacity:1;transform:none;transition:1s ease 1.2s;}
#block-mv.animated .txt::after{animation:mvline 1s ease 1.4s forwards;}
#block-mv.animated .txt{opacity:1;transform:none;transition:1s ease 1s;}

#block-mv #mv-slider .item.add-animation img{animation: zoomDown 8s linear 0s normal both;}

@keyframes zoomDown {0% {transform: scale(1.1);}70% {transform: scale(1);}}
@keyframes mvline{0%{transform:scale(0,1);}100%{transform:none;}}

@media screen and (min-width:1px) and (max-width:1339px){
    #block-mv #mv-slider .slick-dots{left:6%;}
}
@media screen and (min-width:1px) and (max-width:999px){
    #block-mv{position:relative;height:calc(100vh - 55px);}
}
@media screen and (min-width:1px) and (max-width:622px){
    #block-mv{min-height:400px;margin-bottom:30px;}
    #block-mv .container{padding:0 8%;}
    #block-mv .box{padding-top:0;padding-bottom:20px;}
    #block-mv .ttl{font-size:2.4rem;}
    #block-mv .txt::after{margin:15px 0;}
    #block-mv .txt{font-size:2rem;}
    #block-mv #mv-slider .slick-dots{bottom:20px;}
    #block-mv #mv-slider .slick-dots > li button::before{width:30px;height:3px;}
}

/* -------------------------------------------------- */
/* #block-strength */
/* -------------------------------------------------- */
#block-strength{background:url(/img/top/strength_back.jpg) no-repeat center center #333;background-size:cover;color:#fff;text-align:center;font-size:1.8rem;line-height:2;}
#block-strength .container{padding-top:80px;padding-bottom:80px;}
#block-strength .ttl{font-size:3.6rem;font-weight:bold;margin-bottom:20px;line-height:1.6;}
#block-strength .ttl span{font-size:4.7rem;}
#block-strength .ttl::before{content:"";display:block;width:60px;height:60px;margin:0 auto 30px;background:url(/img/top/strength_icon.png) no-repeat center center;background-size:contain;}
#block-strength p + p{margin-top:2em;}
#block-strength .btn{margin-top:45px;}

@media screen and (min-width:1px) and (max-width:622px){
    #block-strength{font-size:1.5rem;}
    #block-strength .container{padding-top:60px;padding-bottom:60px;}
    #block-strength .ttl{font-size:3rem;}
    #block-strength .ttl span{font-size:4.2rem;}
    #block-strength .ttl::before{width:40px;height:40px;margin:0 auto 20px;}
    #block-strength .btn{margin-top:30px;}
}

/* -------------------------------------------------- */
/* #block-dishes02 */
/* -------------------------------------------------- */
#block-dishes02{overflow:hidden;}
#block-dishes02 .list-slider{width:calc(100% + 40px);margin-left:-20px;}
#block-dishes02 .list-slider .item{padding:0 20px;}
#block-dishes02 .list-slider .item .img{margin-bottom:30px;overflow:hidden;}
#block-dishes02 .list-slider .item .img img{opacity:0;transform:scale(1.1);}
#block-dishes02 .list-slider .item .inner{text-align:center;}
#block-dishes02 .list-slider .item .ttl{font-size:2.4rem;font-weight:bold;}
#block-dishes02 .list-slider .slick-arrow{position:absolute;top:50%;z-index:2;width:48px;height:48px;border:1px solid #332e2d;background:url(/img/arrow01.png) no-repeat center center #fff;background-size:21px auto;margin-top:-24px;font-size:0;transition:.25s ease;}
#block-dishes02 .list-slider .slick-arrow:hover{opacity:0.7;}
#block-dishes02 .list-slider .slick-prev{left:-4px;transform:scale(-1,1);}
#block-dishes02 .list-slider .slick-next{right:-4px;}
#block-dishes02 .list-slider.animated .item .img img{transform:none;opacity:1;transition:1s ease;}

@media screen and (min-width:1px) and (max-width:999px){
    #block-dishes02 .list-slider{width:calc(100% + 20px);margin-left:-10px;}
    #block-dishes02 .list-slider .item{padding:0 10px;}
}
@media screen and (min-width:1px) and (max-width:622px){
    #block-dishes02 .list-slider{width:calc(100% + 10px);margin-left:-5px;}
    #block-dishes02 .list-slider .item{padding:0 5px;}
    #block-dishes02 .list-slider .item .img{margin-bottom:15px;}
    #block-dishes02 .list-slider .item .ttl{font-size:1.8rem;}
    #block-dishes02 .list-slider .item .btn .common-btn02{min-width:1px;width:90%;padding-right:20px;}
    #block-dishes02 .list-slider .slick-arrow{width:6.5vw;background-size:12px auto;}
    #block-dishes02 .list-slider .slick-prev{left:-5vw;}
    #block-dishes02 .list-slider .slick-next{right:-5vw;}
}

/* -------------------------------------------------- */
/* .block-access */
/* -------------------------------------------------- */
.block-access .map{width:100%;height:480px;position:relative;}
.block-access .map iframe{width:100%;height:100%;position:absolute;top:0;left:0;filter:grayscale(70%);}
.block-access .container{padding-top:80px;padding-bottom:80px;}
.block-access .parts-ttl{font-size:2.2rem;font-weight:bold;margin-bottom:20px;}
.block-access .parts-img{margin:60px auto;}
.block-access p{line-height:2;}
.block-access table{width:100%;max-width:905px;}
.block-access table th,
.block-access table td{border-bottom:1px solid #332e2d;padding:15px 0;}
.block-access table th{width:11em;font-size:1.8rem;font-weight:bold;}
body.en .block-access table th{width:14em;}

@media screen and (min-width:1px) and (max-width:767px){
  .block-access .parts-ttl{font-size:2rem;margin-bottom:10px;}
}
@media screen and (min-width:1px) and (max-width:622px){
    .block-access .parts-ttl{font-size:1.8rem;margin-bottom:5px;letter-spacing:0.02em;}
    .block-access .parts-img{overflow-x:auto;width:100%;padding:10px 0;margin:20px auto 30px;position:relative;cursor:pointer;}
    .block-access .parts-img img{display:block;max-width:unset;width:800px;height:auto;}
    .block-access .parts-img::before{content:"";display:block;width:100%;height:100%;background:#332e2d;opacity:0.3;position:absolute;top:0;left:0;z-index:1;}
    .block-access .parts-img::after{content:"";display:block;width:52px;height:52px;background:url(/img/access/swipe.png) no-repeat;background-size:contain;position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;z-index:2;}
    .block-access .parts-img.swipe::before,
    .block-access .parts-img.swipe::after{display:none;}
    .block-access .map{height:80vw;}
    .block-access .container{padding-top:60px;padding-bottom:60px;}
    .block-access table th{font-size:1.5rem;padding:10px 0;width:9em;}
    .block-access table td{font-size:1.4rem;padding:10px 0;}
}

/* -------------------------------------------------- */
/* #block-hotspa */
/* -------------------------------------------------- */
#block-hotspa .common-block02 .ttl{width:calc((100% - 40px) / 2);white-space:normal;}
#block-hotspa .common-block02 .ttl p{font-size:1.6rem;font-weight:normal;line-height:2;margin-top:20px;}
#block-hotspa .common-list01 > li{width:calc((100% - 40px) / 2);}
#block-hotspa .common-list01 > li .inner{text-align:left;}
#block-hotspa .common-list01 > li .inner p{line-height:1.8;}
#block-hotspa .common-list01 > li .inner p + p{margin-top:2em;}

@media screen and (min-width:1px) and (max-width:767px){
    #block-hotspa .common-block02 .ttl{width:100%;}
    #block-hotspa .common-block02 .ttl{text-align:center;}
}
@media screen and (min-width:1px) and (max-width:622px){
    #block-hotspa .common-block02 .ttl p{font-size:1.4rem;margin-top:15px;text-align:left;}
    #block-hotspa .common-list01 > li .ttl{font-size:2rem;text-align:center;}
    #block-hotspa .common-list01 > li{width:100%;}
}

/* -------------------------------------------------- */
/* #block-room */
/* -------------------------------------------------- */
#block-room .box{background:#fff;}
#block-room .box .box-inner{padding:25px;display:flex;gap:25px;align-items:center;max-width:1100px;margin:auto;}
#block-room .box .inner{flex:1;}
#block-room .box .item{flex:1;display:flex;align-items:center;gap:25px;}
#block-room .box .ttl{font-size:1.8rem;font-weight:bold;margin-bottom:5px;}
#block-room .box p{line-height:2;}
#block-room .common-block01{align-items:flex-start;}
#block-room .common-block01 .inner{align-self:flex-start;}
#block-room .common-block01 .info{background:#fff;padding:17px 20px 15px;margin-top:20px;}
#block-room .common-block01 .btn a{margin-left:auto;}
#block-room .common-block01 + .common-block01{margin-top:80px;}
#block-room .table{width:100%;max-width:905px;margin:auto;}
#block-room .table th,
#block-room .table td{border-bottom:1px solid #332e2d;padding:14px 0;}
#block-room .table th{font-size:1.8rem;font-weight:bold;}
#block-room .table td{line-height:2;padding-left:20px;}
body.en #block-room table th{width:9em;}

@media screen and (min-width:1px) and (max-width:767px){
    #block-room .box .box-inner{display:block;}
    #block-room .box .item{gap:20px;}
    #block-room .box .ttl{font-size:1.6rem;margin-bottom:0;}
    #block-room .box .icon{width:100px;}
    #block-room .box .item + .item{margin-top:25px;}
    #block-room .box p{line-height:1.8;}
    #block-room .common-block01 + .common-block01{margin-top:60px;}
}
@media screen and (min-width:1px) and (max-width:622px){
    #block-room .box .box-inner{padding:20px;}
    #block-room .box .icon{width:50px;}
    #block-room .box p{font-size:1.3rem;}
    #block-room .common-block01 .inner .ttl{font-size:2rem;}
    #block-room .table th{font-size:1.5rem;width:5.5em;}
    #block-room .table td{font-size:1.4rem;line-height:1.6;padding-left:10px;}
}

/* -------------------------------------------------- */
/* #block-info */
/* -------------------------------------------------- */
#block-info .container{display:flex;}
#block-info .left{width:25%;padding-right:40px;}
#block-info .left .logo{margin-bottom:35px;}
#block-info .right{flex:1;}
#block-info .list-info{display:flex;flex-wrap:wrap;gap:35px;}
#block-info .list-info > li{width:calc((100% - 70px) / 3);}
#block-info .list-info > li .item{font-size:1.4rem;}
#block-info .list-info > li .item .ttl{font-size:1.8rem;font-weight:bold;border-bottom:1px solid #332e2d;padding-bottom:15px;margin-bottom:15px;}
#block-info .list-info > li .item p + p{margin-top:1em;}
#block-info .list-info > li .item + .item{margin-top:35px;}

@media screen and (min-width:1px) and (max-width:999px){
    #block-info .container{display:block;}
    #block-info .left{text-align:center;width:100%;padding:0;margin-bottom:60px;}
    #block-info .left .logo{margin-bottom:20px;}
}
@media screen and (min-width:1px) and (max-width:622px){
    #block-info .left{margin-bottom:40px;}
    #block-info .left .logo{max-width:50%;margin:0 auto 20px;}
    #block-info .list-info{display:block;}
    #block-info .list-info > li{width:100%;}
    #block-info .list-info > li + li{margin-top:30px;}
    #block-info .list-info > li .item{font-size:1.2rem;}
    #block-info .list-info > li .item + .item{margin-top:30px;}
    #block-info .list-info > li .item .ttl{font-size:1.4rem;padding-bottom:5px;}
}

