/*GENERAL*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote {
  margin: 0;
  padding: 0;
} 
*, *:before, *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }
.left { float: left; }
.right { float: right; }
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
:focus { outline: none; }
.hidden { display: none; }
.clickableArea {width:100vw;height: 100vh;position: absolute;z-index: 1;}
span.nobreak, i.nobreak {white-space: nowrap; }

* html .clearfix { zoom: 1; }
/* IE6 */
*:first-child + html .clearfix { zoom: 1; }
/* IE7 */
img { max-width: 100%; display: block; -webkit-backface-visibility: hidden; -ms-transform: translateZ(0); -webkit-transform: translateZ(0); transform: translateZ(0); image-rendering: -moz-crisp-edges; image-rendering: -o-crisp-edges; image-rendering: -webkit-optimize-contrast; image-rendering: crisp-edges; -ms-interpolation-mode: nearest-neighbor;}
img.ctrImg { display: block; margin: auto; }

h1 {font-size: 2.9em; line-height: 1.2;}
h3 { font-size: 1.6rem; line-height: 1.3; }
h4 { font-size: 1.4rem; line-height: 1.3; }
p { font-size: 1rem; line-height: 1.6; }
a { text-decoration: none !important; z-index: 1;}
.zh h1, .zh h3, .zh p, .zh a, .zh small {position: relative;}
small { font-size: 14px; line-height: 1.5; }
.txtYellow {color: #ffd54a;}
.alignCtr { margin: auto; width: 90%; }
.noScroll { overflow: hidden; }
.txtCtr { text-align: center; }
.noPmargin > p { margin: 0; }
.fx {-moz-transition: all 0.3s ease-in-out;-o-transition: all 0.3s ease-in-out;transition: all 0.3s ease-in-out;}
.row1, .row2, .row3 {text-overflow: ellipsis;-webkit-box-orient: vertical;display: -webkit-box;overflow: hidden;white-space: normal; }
.row1 {-webkit-line-clamp: 1;}
.row2 {-webkit-line-clamp: 2;}
.row3 {-webkit-line-clamp: 3;}
.line-clamp {display: block; display: -webkit-box; -webkit-box-orient : vertical; position: relative; line-height: 1.2; overflow: hidden; text-overflow: ellipsis; padding: 0 !important; }
.line-clamp:after {content: ''; text-align : right; bottom: 0; right: 0; width: 25%; display : block; position: absolute; height: calc(1em * 1.2); background : linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 75%); }
@supports (-webkit-line-clamp: 1) {.line-clamp:after {display : none !important; } }
.line-clamp-1 {-webkit-line-clamp : 1; height : calc(1em * 1.2 * 1); }
.line-clamp-2 {-webkit-line-clamp : 2; height : calc(1em * 1.2 * 2); }
.line-clamp-3 {-webkit-line-clamp : 3; height : calc(1em * 1.2 * 3); }
.line-clamp-4 {-webkit-line-clamp : 4; height : calc(1em * 1.2 * 4); }
.line-clamp-5 {-webkit-line-clamp : 5; height : calc(1em * 1.2 * 5); }
.preloader { text-align: center; padding: 4em;color:#e2e5e7;}
#preloader {font-size: 0; padding: 0; text-align: center;color:#e2e5e7;}    
#preloader *, .preloader * {color: inherit;}
#preloader *:before {background-color: #e2e5e7; }
.lity{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;white-space:nowrap;background:#000;background:rgba(0,0,0,0.8);outline:none!important;opacity:0;-webkit-transition:opacity .3s ease;-o-transition:opacity .3s ease;transition:opacity .3s ease}
.lity.lity-opened{opacity:1}
.lity.lity-closed{opacity:0}
.lity *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
.lity-wrap{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;text-align:center;outline:none!important}
.lity-wrap:before{content:'';display:inline-block;height:100%;vertical-align:middle;}
.lity-loader{z-index:9991;color:#fff;position:absolute;top:50%;margin-top:-0.8em;width:100%;text-align:center;font-size:14px;font-family:Arial,Helvetica,sans-serif;opacity:0;-webkit-transition:opacity .3s ease;-o-transition:opacity .3s ease;transition:opacity .3s ease}
.lity-loading .lity-loader{opacity:1}
.lity-container{z-index:9992;position:relative;text-align:left;vertical-align:middle;display:inline-block;white-space:normal;max-width:100%;max-height:100%;outline:none!important}
.lity-content{z-index:9993;width:100%;-webkit-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .3s ease;-o-transition:-o-transform .3s ease;transition:transform .3s ease; position: relative; border: 15px solid #fff;background-color: #fff;max-height: 100vh!important;}
.lity-loading .lity-content,.lity-closed .lity-content{-webkit-transform:scale(.8);-ms-transform:scale(.8);-o-transform:scale(.8);transform:scale(.8)}
.lity-close{z-index:9994;width:35px;height:35px;position:fixed;right:10px; top: 10px; margin:auto;background-color: #000; -webkit-appearance:none;cursor:pointer;text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-family:Arial,Baskerville,monospace;line-height:32px;text-shadow:0 1px 2px rgba(0,0,0,0.6);border:0;outline:0;-webkit-box-shadow:none; box-shadow: 0 2px 3px rgba(0,0,0,.6); border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%; border: 2px solid #fff;}
.lity-close::-moz-focus-inner{border:0;padding:0}
.lity-image img{max-width:100%;display:block;line-height:0;border:0}
.lity-iframe .lity-container{width:100%;}
.lity-iframe-container{width:100%;height:0;padding-top:100vh;overflow:auto;pointer-events:auto;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-overflow-scrolling:touch}
.lity-iframe-container iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;-webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);box-shadow:0 0 8px rgba(0,0,0,0.6);}
.lity-hide{display:none!important}

.containerL { width: 100%; margin: auto; max-width: 1200px; }
.containerS { width: 100%; margin: auto; max-width: 1000px; }
@media (min-width: 1599px) {
  .containerL, .containerS {max-width: 1600px;}
}
.mbo {display: none!important;}
#tcBtn {display: inline-block;}

/* skeleton */
.skeleton {background-color: #e2e5e7; background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0)); background-size: 40px 100%; background-repeat: no-repeat; background-position: left -40px top 0; -webkit-animation: shine 1s ease infinite; animation: shine 1s ease infinite; }
@-webkit-keyframes shine {to {background-position: right -40px top 0;}}
@keyframes shine {to {background-position: right -40px top 0;}}

@-webkit-keyframes fadeoutW {
  0% {opacity: 1; }
  99% {opacity: 0; }
  100% {visibility: hidden; }
}
@keyframes fadeoutW {
  0% {opacity: 1; }
   99% {opacity: 0; }
  100% {visibility: hidden; }
}

@media (min-width: 48rem) {
  .float-effect {
    display: inline-block;transition-duration: 0.3s;transition-property: transform;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);transform: translateZ(0);box-shadow: 0 0 1px rgba(0, 0, 0, 0);}
  .float-effect:hover {transform: translateY(-5px);}
}

body { margin: 0px; background-color: #fff; position: relative; height: 100%; font-family: Noto Sans TC, "Microsoft YaHei","Source Han Sans",PingFangHK,"Heiti TC",Arial,Verdana,sans-serif; font-weight: 500;}
#bodyWrap {position: relative; margin: auto;}
#bodyContent {overflow: hidden;}

@media only screen and (max-width: 92rem) {
  html.buPage {font-size: 13px;}
}

@media only screen and (max-width: 80rem) {
  html.buPage {font-size: 11px;}
}

@media only screen and (max-width: 48rem) {
  html, body {font-size: 13px;}
  #bodyWrap { margin: auto; min-width: 0;  }
  .mbo {display: block!important;} .dko {display: none!important;}
}


#headerNew {position: absolute; top: 0; left: 0; width: 100%; z-index: 100; transition: all .2s linear;}
#headerNew .openrice-logo > img { max-width: 160px; float: left;}
#headerNew .headerDesktop .li {display: flex; flex-flow: row nowrap; justify-content: center; position: relative;}
#headerNew .headerDesktop .li > a {color: #fff; font-size: 1.215rem; position: relative; display: inline-block; line-height: 1;font-weight: 1000; margin: 0 1rem; letter-spacing: 1px;}
#headerNew .headerDesktop .li > a:before {content: ''; display: block; position: absolute; left: 0; bottom: -.6rem; width: 0%; height: 2px; background-color: #fff; transition: width 0.1s ease-in-out;}
#headerNew .headerDesktop .li > a.active:before {width: 100%;}

#headerNew2 {background: transparent;}
#headerNew2 .inner {padding: 15px 10px;position: relative; z-index: 99;}
#headerNew2 .inner .openrice-logo {display: block; max-width: 110px; }



@media (min-width: 48rem) {
  #headerNew > .inner {padding: 1.5rem;}
  #headerNew .maxWidth {max-width: 70%; margin: auto; text-align: right;}
  #headerNew .headerDesktop {padding: .85rem .8rem .9rem; display: inline-block;}
  #headerNew .openrice-logo > img {max-width: 8rem; position: absolute;}
  #headerNew .headerDesktop .li > a {font-size: 1rem;}
  #headerNew .headerDesktop .li > a:hover:before {width: 100%;}
  #headerNew2 {/*min-width: 264px;*/ width: 24%; z-index: 5; height: 100vh; position: fixed; top: 0; left: 0;}
  #headerNew2 .wrapper::-webkit-scrollbar {display: none;}
  #headerNew2 .wrapper {position: relative; -ms-overflow-style: none; scrollbar-width: none;overflow-y: scroll; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-flow: column nowrap;-webkit-flex-flow: column nowrap; flex-flow: column nowrap; -webkit-justify-content: space-between; justify-content: space-between; height: 100%; background: url(../images/page/menu_bg.jpg) center top / 100% 100%; }
  #headerNew2 .wrapper:after {content: ''; display: block; width: 100%; bottom: 0; left: 0; right: 0; padding-bottom: 80%; background: url(../images/page/menu_graphic@2x.png) no-repeat center bottom / 100% auto;}
  #headerNew2 .inner {padding: 0; }
  #headerNew2 .inner .headerDesktop .menuKv {background: url(../images/page/sidebar_title.png) no-repeat center center; background-size: contain; padding-bottom: 68%; margin: 1.5rem auto 1rem; max-width: 90%; display: block;}
  #headerNew2 .inner .headerDesktop .li {width: 95%; max-width: 15.5rem; margin: auto;padding:0 0.5rem;}

  #headerNew2 a.bu-link {display: block; font-weight: 800; font-size: 2rem; letter-spacing: 1px; margin: 20px 0; color: #fff; position: relative; }
  #headerNew2 a.bu-link:before {content: ''; display: block; width: 2.25rem; height: 2.25rem; border-radius: 50%; position: absolute; left: 9%; top: 0; bottom: 0; margin: auto; border: 1px solid #fff;}
  #headerNew2 a.bu-link.active {color:#4f1f0c; }
  #headerNew2 a.bu-link.active:before {background: url(../images/page/menu_icon.png) no-repeat center; background-size: 100%; border-color: rgba(255, 255, 255, 0); z-index: 1;}
  #headerNew2 a.bu-link > span {display: block; padding: 0 0 .35rem 4.15rem; position: relative;}
  #headerNew2 a.bu-link.active > span { background: url(../images/page/menu_bn_bg@2x.png) no-repeat center / 100% 100%;}

}

@media (min-width: 80rem) {
  #headerNew > .inner {padding: 1.25vw 0 0;}
  #headerNew .openrice-logo > img {max-width: 9vw; position: absolute;}
  #headerNew .headerDesktop .li > a {font-size: 1vw;}
}

@media (max-width: 48rem) {
  #headerNew {position: fixed;}
  #headerNew:not(.isTop) {background-color: #fff;}
  body.noScroll #headerNew {background-color: transparent;}
  #headerNew2 {position: fixed; top: 0; left: 0; width: 100%; z-index: 100; background-color: #fff; box-shadow: 0px 1px 6px 0px rgba(0,0,0,.15);}
  .noScroll #headerNew2 {z-index: 1000;}
  #headerNew2.is-scrolled {top: -60px; -webkit-transition: all .2s; -moz-transition: all .2s; transition: all .2s; }
  #headerNew2.is-scrollup {top: 0; -webkit-transition: all .2s; -moz-transition: all .2s; transition: all .2s; }
  #headerNew2 .inner {padding: 10px 15px;}
  #headerNew2 .inner .openrice-logo {max-width: 80px;}
  #headerNew > .inner {padding: 3vw 4vw;}
  #headerNew .maxWidth {max-width: 100%;}
  #headerNew .openrice-logo {max-width: 20vw; display: block; margin: auto;}
  #headerNew .openrice-logo > img {display: block; margin: auto; float: none; width: 100%;}
}


@media screen and (min-width: 769px) and (max-height: 769px) {
  #headerNew2 .inner .headerDesktop .menuKv {margin: 0 auto 25px;}
}
/* Laptop view */
@media screen and (min-width: 1024px) and (max-height: 650px) {
  #headerNew2 .inner .headerDesktop .menuKv {margin: 0 auto 25px;}
  
}
@media screen and (min-width: 1500px) and (max-height: 910px) {
  #headerNew2 .inner .headerDesktop .menuKv {margin: 15px auto;}
 
}




@media only screen and (max-width: 768px) {
  .grid-button {padding: 0; position: fixed; z-index: 100; right: 0px; top: 0px;}
  .grid-button .grid {position: relative;display: block; width: 40px; height: 40px; cursor: pointer; margin: 0 auto; transition: all 0.3s; }
  .grid-button .grid:after {content: ''; display: block; position: absolute; width: 70%; height: 70%; border-radius: 50%; left: 15%; top: 15%;}
  .grid-button .grid.open:after {border: 2px solid #fff;}
  .grid-button .grid > span {position:absolute;top: calc(50% - 1px);left:0;right:0;margin:auto;display:block;width: 50%;height:2px;background-color:#fff}
  #headerNew:not(.isTop) .grid-button .grid > span, .buPage .grid-button .grid:not(.open) > span {background-color: #132430;}
  .grid-button .grid > span:before,
  .grid-button .grid > span:after {content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: transform 0.3s; background-color: #fff;}
  #headerNew:not(.isTop) .grid-button .grid > span:before,
  #headerNew:not(.isTop) .grid-button .grid > span:after,
  .buPage .grid-button .grid:not(.open) > span:before,
  .buPage .grid-button .grid:not(.open) > span:after {background-color: #132430;}
  .grid-button .grid > span:before {-webkit-transform: translateY(-6px);transform: translateY(-6px);}
  .grid-button .grid > span:after {-webkit-transform: translateY(6px);transform: translateY(6px);}
  .grid-button .grid.open > span {background: 0 0;}
  .grid-button .grid.open > span:before{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}
  .grid-button .grid.open > span:after{-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}
  #headmenus {opacity: 1;visibility: visible;width: 100%; height: 100%;position: fixed; top: 0;left: 100%; z-index: 100; background: url(../images/page/menu_bg.jpg) center top / 100% 100%; transition: all .3s ease-in-out;}
  #headmenus.navOpened {left: 0; box-shadow: -4px 0px 4px rgba(0,0,0,0.15);}
  #headmenus > .wrap {overflow-y: scroll; padding: 7vw 0 0; text-align: left; height: 100%; margin: auto; }
  #headmenus > .wrap .mmenuKv {background: url(../images/page/sidebar_title.png) no-repeat center center; background-size: contain; padding-bottom: 50vw; margin-bottom: 7vw;}

  #headmenus > .wrap > a { display: block; width: 50%; margin: .5rem auto; position: relative; font-weight: 800; font-size: 5.25vw; line-height: 2.5; color: #fff; }
  #headmenus > .wrap > a:before {content: ''; display: block; width: 6vw; height: 6vw; border-radius: 50%; position: absolute; left: 4vw; top: 0; bottom: 0; margin: auto; border: 1px solid #fff;}
  #headmenus > .wrap > a.active {color:#4f1f0c;}
  #headmenus > .wrap > a.active:before {background: url(../images/page/menu_icon.png) no-repeat center; background-size: 120%; border-color: rgba(0, 0, 0, 0.0); z-index: 1;}
  #headmenus > .wrap > a > span {display: block; padding-left: 12vw; position: relative; }
  #headmenus > .wrap > a.active > span { background: url(../images/page/menu_bn_bg@2x.png) no-repeat center / 100% 100%;}

}
 


footer .contain1200 {max-width: 66rem; position: relative; margin: auto; z-index: 4;}
.buPage footer .contain1200 {max-width: 70rem;}
.footerWrap .footerTop {background: #000; padding: 30px 2rem; position: relative;}
.buPage .footerWrap .footerTop {padding: 30px; }
.footTopTxt {color: #fff;}
.footTopTxt p {font-weight: 600; font-size: 1.25rem;}
.footTopTxt small {font-size: 0.8rem; }
.buPage .footTopTxt small {font-size: .7rem; line-height: 1.45; display: block;}
.footTopSocialGroup {text-align: right;}
.footTopSocialGroup .foot-social {display: inline-block; vertical-align: middle; margin: 0 5px; }
.footTopSocialGroup .foot-social.ig {background: url(../images/social-icons/instagram.svg) no-repeat center center; width: 20px; height: 20px;}
.footTopSocialGroup .foot-social.yt {background: url(../images/social-icons/youtube.svg) no-repeat center center; width: 20px; height: 20px;}
.footTopSocialGroup .foot-social.fb {background: url(../images/social-icons/facebook.svg) no-repeat center center; width: 20px; height: 20px;}
.footerCR {color: #fff; margin-top: 5px; text-align: right;}
.footerCR > span {display: inline-block; vertical-align: middle;}
.footerCR > span.copyright-text {font-size: .7rem; margin-left: 5px;}

@media only screen and (min-width: 769px) {
  .buPage footer {position: absolute; bottom: 0;width: 100%; z-index: 4;}
}

@media only screen and (max-width: 640px) {
  .footerWrap .footerTop {padding: 1.5rem 1rem; text-align: center;}
  .footTopSocialGroup {text-align: center; margin-top: 20px;}
  .footerCR {text-align: center; margin-top: .85rem;}
  .footerCR > span#OR_FOOT_logo {max-width: 15px; vertical-align: top;}
  .footerCR .mRowDrop {display: block;}
}
@media (max-width: 360px) {.footerCR > span {font-size: 9px;}}




.buPage #bodyContent {background: #51cdcb url(../images/page/poi_bg.jpg) no-repeat center top / 120.375rem auto; position: relative;}
.buPage .result-container, .buPage #bodyContent > .inner {position: relative; margin: auto; max-width: 85rem;}




@media (min-width: 769px) {
  .buPage #bodyWrap {font-size: 0;}
  .buPage #bodyWrap:before {content: "";display: inline-block;width: 24%;/*min-width: 264px;*/height: 100vh;position: relative;}
  .buPage #bodyContent {min-height: 100vh;padding: 0px 0 135px;display: inline-block;position: relative; width: 76%;}
  .buPage #bodyContent > .inner {padding: 0 2rem;}
  .result_wrapper { padding:0px ;}
  /* .result-container { padding: 30px;} */
  .result-container { padding: 30px 0;}
  #bookingPage .result-container { padding: 10px 30px 30px;}
  .paddingtop80 { padding-top: 120px;}
}

/* @media (max-width: 1600px) {
  .buPage #bodyContent > .inner {max-width: 66rem; }
} */

@media (max-width: 768px) {
  .buPage #bodyContent {padding: 4rem 0 0; width: 100%; margin-left: 0; background: #51cdcb url(../images/page/poi_bg.jpg) no-repeat center top / 100% auto; }

}




.anchorNav {height: 3.5rem; position: relative; margin: 0px auto;text-align: center; z-index: 5;}
.anchorNav .container {-webkit-transition: all .2s; -moz-transition: all .2s; transition: all .2s; top: -70px; text-align: center; font-size: 0;}
.anchorNav.sticky .container {position: fixed; z-index: 5; width: 100%; max-width: 100%; right: 0; top: 0; padding: 5px; -webkit-transition: all .1s; -moz-transition: all .1s; transition: all .1s; box-shadow: 0px 0px 6px 1px rgba(0,0,0,.2); background: rgba(255, 255, 255, 0.9)}

.anchorNav .filterBtn, .anchorNav .allBtn {display: inline-block; vertical-align: middle; font-size: 1.6rem; font-weight: 700; text-align: center; color: #ffffff; line-height: 2; position: relative;  border-radius: 5rem; margin: 0 .35rem; cursor: pointer; background: #132430; background: linear-gradient(0deg, #132430 0%, #224458 100%); padding: 0 2.5rem .15rem; box-shadow: 1px 1px 4px 0px rgba(0,0,0,.3); min-width: 9rem; transition: all .3s;}

.anchorNav .filterBtn.active, .anchorNav .allBtn.active {background: #fed41a; background: linear-gradient(0deg, #fed41a 0%, #fedf22 100%); color: #132430;}

@media (min-width: 769px) {
  .anchorNav .filterBtn, .anchorNav .allBtn {min-width: 10.585rem;}
}




.catListTTImg {margin: 0 auto 45px; background: url(../images/page/TT-image@2x.png) no-repeat top center; background-size: contain; width: 275px; height: 68px; text-align: center; position: relative;}
.catListTTImg span {color: #132430; font-size: 32px; font-weight: 600; position: absolute; top: 0; left: 0; right: 0; letter-spacing: 2px; display: block; line-height: 65px;}
@media (min-width: 1218px) {
  .anchorNav.sticky .container {width: calc(76% + 0px);}
}
@media (max-width: 1217px) {
  .anchorNav.sticky .container {/*width: calc(100% - 280px);*/ width: 76%;}
}
@media (max-width: 768px) {
  .anchorNav {height: 45px; margin: 40px auto;}
  .anchorNav .container {font-size: 0; white-space: nowrap;overflow-y: scroll;-ms-overflow-style: none;scrollbar-width: none;}
  .anchorNav .container::-webkit-scrollbar {display: none;}
  .anchorNav.sticky .container {width:100%;}
  .anchorNav .filterBtn, .anchorNav .allBtn {font-size: 1.5rem!important; margin:3px; padding:0 2.5% ;}
  .catListTTImg {width: 20rem; height: 5rem; margin: 0 auto 20px;}
  .catListTTImg span {font-size: 2.25rem;top: 0%; line-height: 4.75rem;}
}




.subcatWrap {margin: 0px auto 50px;}
.subcatWrap .holder > .filterBtn {display: inline-block;vertical-align: middle;position: relative;margin: 0 8px;cursor: pointer;font-size: 1.3rem;color: #ed5e58;border-radius: 5px;letter-spacing: 1px;font-weight: 600;padding: 0.3em 3%;line-height: 2;border: 1px solid;}
.subcatWrap .holder > .filterBtn.active {background-color: #ed5e58; color: #fff; border-color: #ed5e58;}
@media (min-width: 769px) {
  .subcatWrap .holder > .filterBtn {min-width: 140px;}
}
@media (max-width: 768px) {
  .subcatWrap {margin-bottom: 30px;}
  .subcatWrap .holder > .filterBtn {font-size: 1.15rem; margin: 0 3px; line-height: 33px;padding:0 2.5% ;}
}



.poiList {margin: auto; font-size: 0; text-align: center; display: none;}
.poiList.active {display: block;}
.offerItem {box-shadow: 0px 1px 2px #ddd; position: relative; text-align: left; background-color: #fff;}

.buPage .pageTT {position: relative; margin: 2rem auto 0;}
.buPage .pageTT img {width: 100%;}


@media (min-width: 48rem) {
  #specialPage .pageTT {max-width: 32rem;}
  #bookingPage .pageTT {max-width: 25rem;}
  #voucherPage .pageTT {max-width: 26rem;}
  #tasPage .pageTT {max-width: 25rem;}
  #payPage .pageTT {max-width: 26rem;}
  .poiList {padding: 0;}
  .offerItem {width: 32%; display: inline-block; vertical-align: top; margin: 0 5px 15px; padding: 0 0 90px; max-width: 330px}
}

@media (min-width: 48rem) and (max-width: 110rem) {
  .buPage .pageTT {max-width: 37%!important;}
}

@media (max-width: 48rem) {
  .buPage .pageTT {margin: 2.5rem auto 0;}
  #specialPage .pageTT {max-width: 25rem;}
  #bookingPage .pageTT {max-width: 19rem;}
  #voucherPage .pageTT {max-width: 19rem;}
  #tasPage .pageTT {max-width: 19rem;}
  #payPage .pageTT {max-width: 19rem;}
  .result-container {padding: 0 20px 20px;}
  .paddingtop80 { padding-top: 50px;}
} 




#offerBlock {margin: 2.5rem 0 4.5rem; position: relative;}
.banner {margin: 0 auto; font-size: 0; box-sizing: content-box; border: 1px solid #9f9f9f; border-radius: 30px; overflow: hidden; background-color: #fff; }
.banner .info {text-align: center;}
.banner .info .bannerTT {font-size: 1.8rem; color: #333; font-weight: 800;}
.banner .info .offerTT {font-size: 2.25rem; border-radius: 5px; display: inline-block; color: #fff; font-weight: 800; padding: 0 1.5rem .25rem;}
.banner .info .txtRed {color: #ea2003;}
.banner .info .txtRed2 {color: #de0051;}
.banner .info .txtGreen {color: #1c9038;}
.banner .info .bgRed {background-color: #ea2003;}
.banner .info .bgRed2 {background-color: #de0051;}
.banner .info .bgGreen {background-color: #1c9038;}
.banner .info .bgDark {background-color: #61150b;}
.banner .info hr {display: block; margin: 1rem auto; max-width: 90%; border-width: 1px 0;}

.banner .info .code {font-size: 1.85rem; line-height: 1.8; display: inline-block; color: #fff; font-weight: 800; margin: 10px auto; padding: 0 15px 4px; border-radius: 6px; min-width: 12rem;}
.banner .info .code2 {display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; margin: .25rem auto;}
.banner .info .code2 small {display: block; font-size: 1.65rem; font-weight: 600; margin: 0 1rem;}
.banner .info .code2 span {display: block; border-radius: 4rem; border: 2px solid; font-size: 2rem; font-weight: 800; line-height: 1.5; padding: 0 2rem .25rem;}
.banner .info .code2.red {color: #ea2003;}
.banner .info .code2.red2 {color: #de0051;}
.banner .info .code2.green {color: #1c9038;}
.banner .info .tncBtn {margin: 0.5em 0; color: #777; font-size: .85rem; display: inline-block; border: 1px solid; border-radius: 5px; padding: 0 25px; line-height: 2; font-weight: 800;}
.banner .info .btn {color: #777; font-size: 1rem; border: 1px solid; margin-top: 10px; border-radius: 5px; padding: 0 25px 4px; display: inline-block; line-height: 1.5;}
.banner .info .note {color: #777; font-size: .925rem; display: block; font-weight: 800; margin-top: .75rem;}
.banner .img {position: relative;}

#bookingPage .banner .info hr {margin-bottom: 1.5rem; max-width: 87%;}
#bookingPage .banner .img {background: url(../images/page/02-booking/banner-booking.jpg) no-repeat center / cover;}
#voucherPage .banner .img {background: url(../images/page/03-voucher/banner-voucher.jpg) no-repeat center top / cover;}
#voucherPage .banner .info .bannerTT {font-size: 2.25rem; margin-bottom: .5rem;}
#voucherPage .banner .info .offerTT {margin-bottom: .85rem;}
#tasPage .banner .img {background: url(../images/page/04-tas/banner-tas.jpg) no-repeat center / cover;}
#payPage .banner .img {background: url(../images/page/05-orp/banner-orpay.jpg) no-repeat 80% center / cover;}
#payPage .banner .info {padding: 4rem 1.5rem;}
#payPage .banner .info .offerTT .small {display: block; font-size: 1.5rem; margin-bottom: .75rem;}
#payPage .banner .info .tncBtn {margin-top: 1rem; font-size: 1rem;}


@media (min-width: 769px) {
  .banner {position: relative; max-width: 74rem;}
  .banner .info {padding: 25px 20px; width: 49%; }
  .banner .img {position: absolute; right: 0; top: 0; height: 100%; width: 51%;}
  #bookingPage .banner .info {width: 45%;}
  #bookingPage .banner .img {width: 55%;}
  #voucherPage .banner .info {width: 45%; padding-top: 3rem;}
  #voucherPage .banner .img {width: 55%;}
  #tasPage .banner .info {width: 44%;}
  #tasPage .banner .img {width: 56%;}
  #payPage .banner .info {width: 53%;}
  #payPage .banner .img {width: 47%;}

  #offerBlock .deco {position: absolute;}
  #offerBlock .deco1 {background: url(../images/page/page_deco1@2x.png) no-repeat center / contain; width: 12%; padding-bottom: 14%; bottom: 90%; left: -5%; animation: float1 4s ease-in-out infinite alternate;}
  #offerBlock .deco2 {background: url(../images/page/page_deco3@2x.png) no-repeat center / contain; width: 15%; padding-bottom: 19%; bottom: 83%; right: -5%; animation: float2 4s ease-in-out infinite alternate;}
  #offerBlock .deco3 {background: url(../images/page/page_deco2@2x.png) no-repeat center / contain; width: 9%; padding-bottom: 11%; top: 109%; left: -5%; animation: float4 4s ease-in-out infinite alternate;}
  #offerBlock .deco4 {background: url(../images/page/page_deco4@2x.png) no-repeat center / contain; width: 9%; padding-bottom: 12%; top: 108%; right: -1%; animation: float1 3.5s .5s ease-in-out infinite alternate;}
}


@media (max-width: 640px) {
  .banner {max-width: calc(100% - 3rem); position: relative; border-radius: 15px;}
  .banner .img {padding-bottom: 57%; width: 100%;}
  .banner .info {padding: 15px 15px 25px;}
  #payPage .banner .info {padding: 2rem 1rem;}
  .banner .info .bannerTT {font-size: 1.7rem;}
  .banner .info .code {font-size: 1.45rem;}
  .banner .info .tncBtn {padding: 0 10px;}
}




@keyframes float1 {
  0% {transform: translateY(0)}
  to {transform: translateY(min(.8163265306vw + 6.9387755102px,20px))}
}
@keyframes float2 {
  0% {transform: translate(0) scale(1)}
  to {transform: translate(min(.4081632653vw + 3.4693877551px,10px),-5px) scale(1.03)}
}
@keyframes float3 {
  0% {transform: translate(0) rotate(0)}
  to {transform: translate(min(.8163265306vw + 6.9387755102px,20px),min(.4081632653vw + 3.4693877551px,10px)) rotate(-3deg)}
}
@keyframes float4 {
  0% {transform: translateY(max(-.1632653061vw + -2.387755102px,-5px))}
  to {transform: translateY(min(.4081632653vw + 3.4693877551px,10px))}
}






