body {
    font-family: 'roboto', sans-serif, 'Microsoft JhengHei';
    margin: 0;
    color: #6c6c6c;
    font-size: 14px;
    line-height: 1.5;
}

html,
body {
    max-width: 100%;
    width: 100%;
    max-height: 100%;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.6;
}

a, button, input[type='submit'] {
    cursor: pointer;
}

a {
    color: #5E6A6D;
}

    a:hover {
        color: #3f494b;
        text-decoration: none;
    }

.w-80 {
    width: 80% !important;
}

.w-75 {
    width: 75% !important;
}

/*
.border-top {
    border-top: 1px solid #7E878A !important;
}

.border-bottom {
    border-bottom: 1px solid #7E878A !important;
}
*/

.mt-150 {
    margin-top: 150px;
}

.mt-100 {
    margin-top: 100px;
}

.mb-200 {
    margin-bottom: 150px;
}

.mt-50 {
    margin-top: 50px;
}

.icon::before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/* -----font----- */
small,
div small,
.small {
    font-size: 12px;
}

p,
div p,
.p {
    font-size: 13px;
    line-height: 1.6;
}

label {
    line-height: 0.8;
}

span {
    line-height: 1.6;
}

.ft-thin {
    font-weight: 100;
}

.ft-extra-light {
    font-weight: 200;
}

.ft-light {
    font-weight: 300;
}

.ft-regular {
    font-weight: 400;
}

.ft-medium {
    font-weight: 500;
}

.ft-semi-bold {
    font-weight: 600;
}

.ft-bold {
    font-weight: 700;
}

h1,
.ft-h1 {
    font-size: 22px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1;
}

h2,
.ft-h2 {
    font-size: 20px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1;
}

h3,
.ft-h3 {
    font-size: 18px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1.2;
}

h4,
.ft-h4 {
    font-size: 16px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1.4;
}

h5,
.ft-h5 {
    font-size: 14px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1.5;
}

h6,
.ft-h6 {
    font-size: 13px;
    margin-left: 0;
    margin-right: 0;
    line-height: 1.5;
}

/* -----color----- */
.text-pine {
    color: #5E6A6D;
}

.text-steel {
    color: #7E878A;
}

.text-darkgray {
    color: #646971;
}

.text-ashgray {
    color: #C7C7C7;
}

.text-darkblack {
    color: #3F454F;
}

.text-golden {
    color: #BE812B;
}

.text-cadet {
    color: #7E878A;
}

.text-grey {
    color: #6c6c6c;
}

.text-red {
    color: #D36A62;
}

.text-error {
    color: #D36A62 !important;
    font-weight: bolder;
}

    .text-error ul {
        margin: 0;
        padding: 0;
    }

    .text-error li {
        list-style: none;
    }

.text-content p,
.text-content span,
.text-content a,
.text-content div,
.text-content ul li,
.text-content h1,
.text-content h2,
.text-content h3,
.text-content h4,
.text-content h5,
.text-content h6 {
    font-size: 14px;
}

.text-content a {
    color: #5E6A6D;
}

    .text-content a:hover {
        color: #3d4446;
    }


section.frame-s {
    width: 100%;
    max-width: 800px;
    min-height: 300px;
}

section.frame-l {
    width: 100%;
    max-width: 100%;
    min-height: 500px;
    margin-top: 120px;
}

/* -----bg----- */
.bg-content-light {
    background-color: #F7F7F7;
}

.bg-cadet {
    background-color: #7E878A;
}

.bg-ashgray {
    background-color: #C7C7C7;
}

.bg-pine {
    background-color: #7E878A;
}

.bg-cadetlight {
    background-color: #dbe0e2;
}

.bg-darkblack {
    background-color: #3F454F;
}

.bg-darklight {
    background-color: #656A72;
}

.bg-golden {
    background-color: #BE812B;
}

/* -----button----- */
button,
button:hover,
button:focus,
button:active,
button:link,
button:checked {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
}

button {
    background-color: transparent;
    border: 0px;
}

nav li.nav-item.dropdown button {
    color: #5e6a6d !important;
}

    nav li.nav-item.dropdown button:hover {
        color: #3f494b !important;
    }

.dropdown-menu.show a.dropdown-item,
.dropdown-menu.show button.dropdown-item {
    background-color: transparent;
}

.btn-share {
    background-color: transparent;
    border-radius: 0px;
    border: none;
    cursor: pointer;
}

    .btn-share:focus,
    .btn-share:hover {
        opacity: 0.7;
        outline: none;
    }


#membertab ul > li > .btn-member {
    background-color: #dbe0e2;
    color: #5E6A6D;
    font-size: 14px;
    font-weight: bold;
}

    #membertab ul > li > .btn-member:hover,
    #membertab ul > li > .btn-member:focus,
    #membertab ul > li > .btn-member:active,
    #membertab ul > li > .btn-member.active {
        background-color: #5E6A6D;
        color: #fff;
        transition: all 0.4s ease-out;
    }


#membertab ul > li.nav-item {
    margin-right: 2px;
    /*
   border-bottom: 2px solid #c7c7c7;
*/
}


    #membertab ul > li.nav-item:last-child {
        margin-right: 0px;
    }

.btn-golden {
    background-color: #A5793C;
    color: #fff;
    font-size: 14px;
    height: 45px;
    width: 100%;
    padding-top: 10px;
}

    .btn-golden:hover {
        background-color: #BE812B;
        color: #fff;
        transition: all 0.4s ease-out;
    }

.btn-grey {
    background-color: #E0E0E0;
    color: #BE812B;
    width: 100%;
    height: 45px;
    font-size: 14px;
    padding-top: 10px;
}

    .btn-grey:hover {
        background-color: #eaeaea;
        color: #BE812B;
        transition: all 0.4s ease-in;
    }

button.btn,
a.btn {
    border-radius: 0px;
    font-weight: 600;
    max-height: 40px;
    height: auto;
    width: 100%;
}

.btn-non {
    background-color: transparent;
}

    .btn-non:hover {
        opacity: 0.7;
    }

    .btn-non.btn-more:hover {
        background-color: #7E878A;
        transition: all 0.2s ease-in;
        color: #fff;
    }

.btn-more {
    background-color: transparent;
    color: #999;
}

    .btn-more:hover {
        background-color: #666;
        transition: all 0.2s ease-in;
        color: #fff;
    }

.btn-facebook {
    background-color: #345995;
    color: #fff;
    font-size: 14px;
}

    .btn-facebook:hover {
        background-color: #294574;
        color: #fff;
        transition: all 0.2s ease-in;
    }

.btn-google {
    background-color: #3f82f8;
    color: #fff;
    font-size: 14px;
}

    .btn-google:hover {
        background-color: #3673de;
        color: #fff;
        transition: all 0.2s ease-in;
    }

.btn-non-facebook {
    color: #345995;
    background-color: #eaeaea;
    font-size: 14px;
}

    .btn-non-facebook:hover {
        background-color: #ddd;
        color: #345995;
        transition: all 0.2s ease-in;
    }

.btn-non-google {
    background-color: #eaeaea;
    color: #3f82f8;
    font-size: 14px;
}

    .btn-non-google:hover {
        background-color: #ddd;
        color: #3f82f8;
        transition: all 0.2s ease-in;
    }

.btn-forgot {
    padding: 0;
    margin: 0;
    background-color: transparent;
    color: #888;
}

    .btn-forgot:hover {
        color: #666;
    }

div .btn-arrow-pine {
    background-color: transparent;
    color: #5E6A6D !important;
    font-size: 14px;
    font-weight: 600;
}

    div .btn-arrow-pine:focus::before {
        background-image: url(../../../images/angle-down-solid.png);
        background-repeat: no-repeat;
        background-position: center centerl;
        background-size: 30px auto;
    }

.btn-secondary {
    font-size: 14px;
}

/* -----form----- */
form input[type=text],
form input[type=date],
form input[type=tel],
form input[type=number],
form input[type=password],
form input[type=email],
select {
    border: 1px solid #ddd;
    padding: 7px 3px;
    color: #3F454F;
    background-color: #fff;
    border-radius: 0px;
    font-size: 16px;
    font-family: "roboto";
    padding-left: 12px;
    height: 40px;
}

    form select,
    section select,
    select:not(#YearMouth) {
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        -ms-appearance: none;
        -o-appearance: none;
        background-image: url(../../../images/angle-down-solid.png) !important;
        background-repeat: no-repeat;
        background-size: 9px auto;
        background-position: 90% center;
        height: 40px;
    }

#DataFrom select,
#membertab select,
select,
input[type=text],
input[type=date],
input[type=tel] {
    height: 40px !important;
}

textarea {
    color: #3F454F;
}

    textarea:hover {
        background-color: #F3F3F3;
    }

option:checked {
    background-color: #fff;
    color: #3F454F;
    height: 100%;
}

[type=submit],
button[type=button],
a.btn,
button.btn {
    -webkit-appearance: none;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder,
select::-ms-input-placeholder,
input::-ms-input-placeholder,
input[type=text]::-ms-input-placeholder,
input[type=password]::-ms-input-placeholder,
.input-group input[type=text]::-webkit-input-placeholder {
    color: #aaa;
    font-size: 14px;
    font-weight: 400;
    text-align-last: center;
}

input[type=text]:-ms-input-placeholder {
    font-size: 13px;
}

input::-moz-placeholder,
input:-ms-placeholder,
input::-webkit-placeholder,
input[type=text]::-webkit-placeholder,
input[type=text]:-ms-placeholder,
input[type=password]::-webkit-placeholder,
input[type=password]:-ms-placeholder,
textarea:-moz-placeholder {
    color: #999;
    font-size: 14px;
    font-weight: 400;
}

input[type=text]::placeholder,
input[type=text]::-webkit-placeholder,
input[type=password]::-webkit-placeholder,
input[type=password]::placeholder {
    font-size: 13px;
    color: #999;
}

input:focus::-webkit-input-placeholder {
    color: transparent;
}

input:focus:-moz-placeholder {
    color: transparent;
}

textarea:focus::-webkit-input-placeholder {
    color: transparent;
}

textarea:focus::-webkit-input-placeholder {
    color: transparent;
}


input[type=text]:focus::-webkit-input-placeholder {
    color: transparent;
}

input[type=text]:focus:-moz-placeholder {
    color: transparent;
}

input[type=date] {
    background-size: 14px auto;
    appearance: none;
    -webkit-appearance: none;
    color: #5E6A6D !important;
    font-size: 14px !important;
    display: inline-block !important;
    visibility: visible !important;
}

/* -----navbar----- */
header nav {
    z-index: 1;
    box-shadow: 15px;
    top: 0;
}

nav.bg-white {
    opacity: 0.95;
}

/*

img.navbar-logo {
    width: 160px;
    padding: 3px;
}
*/

img.navbar-logo {
    height: 60px;
}

div.navbar-collapse li {
    padding: 0px 10px;
    line-height: 2.4;
}

    div.navbar-collapse li div.dropdown-menu {
        line-height: 1.5;
    }

div.collapse li:hover {
    color: #3F454F;
}

div.collapse li a.nav-link {
    font-size: 14px;
}

i.fa-bars {
    width: 18px;
}

li.dropdown a.dropdown-item,
div.navbar-collapse {
    font-size: 14px;
    color: #5E6A6D;
}

    li.dropdown a.dropdown-item:hover,
    div.navbar-collapse:hover {
        color: #3F454F;
    }

/* -----搜尋框 search----- */
#carouselFade .carousel-item {
    max-height: 700px;
    max-width: 100%;
    width: 100%;
}

#carouselFade picture img {
    max-width: 100%;
    max-height: 100%;
    height: 100%;
    width: auto;
    object-fit: cover;
}

#carouselFade picture img {
    height: 700px;
}

span.carousel-control-next-icon {
    position: relative;
    z-index: 1;
}

.search-frame {
    position: relative;
    max-width: 400px;
    background-color: rgba(63, 69, 79, 0.9);
    text-align: left;
}

.search-center .search-frame {
    transform: translateY(35%);
    -webkit-transform: translateY(35%);
    -moz-transform: translateY(35%);
    -o-transform: translateY(35%);
    -ms-transform: translateY(35%);
}

#search {
    height: 700px;
}

    #search div input[type="text"],
    #search div input[type="number"],
    #search div input[type="date"] {
        border: 0px;
        padding: 5px;
        font-size: 15px;
        padding-left: 15px;
        color: #5E6A6D;
        height: 45px;
        font-weight: bold;
    }

    #search select {
        border-radius: none;
        -moz-appearance: none;
        -webkit-appearance: none;
        -ms-appearance: none;
        appearance: none;
    }

    #search .search-select {
        background-image: url(../../../Images/angle-down-solid.png);
        background-repeat: no-repeat;
        background-size: 8px auto;
        background-position: right center;
        margin-right: 25px;
        border: none;
    }

    #search select.search-select,
    #search select option {
        border: 0px;
        padding: 5px;
        font-size: 15px;
        padding-left: 15px;
        color: #5E6A6D;
        height: 45px;
        font-weight: bold;
        background-color: #fff;
        max-width: 100%;
        margin-right: auto;
        text-align: center;
    }

.search-select:hover,
.search-select:link,
.search-select:focus {
    outline: none;
}

#search .search-select-f-night {
    background-color: #fff;
}

#search .search-select-f-people {
    background-color: #fff;
}

#search select option {
    width: 100% !important;
}

#search .input-group,
#search .input-group-append,
#search .form-control,
#search .btn {
    border-radius: 0px;
}

#search input[type=text].text-error {
    color: #D36A62;
}

#search .error {
    background-image: url(../../../Images/baseline/baseline-feedback-24px.png);
    background-repeat: no-repeat;
    background-position: left 3px;
    background-size: 15px auto;
    color: #ff796f;
    font-size: 12px;
    font-weight: 700;
    padding-left: 22px;
}

.btn.btn-weeks {
    border: 0px;
    background-color: #fff;
    color: #5E6A6D;
    font-size: 14px;
    max-height: 45px;
    /*padding-top: 13px;*/
    font-weight: bold;
}

.btn.btn-weeks-icon {
    border: 0px;
    background-color: #fff;
    color: #5E6A6D;
    max-height: 45px;
    /*padding-top: 10px;*/
    font-weight: bold;
}

    .btn.btn-weeks-icon:hover,
    .btn.btn-weeks:hover,
    #search .form-control,
    #search div input[type="number"]:focus,
    #search div input[type="date"]:focus {
        outline: none;
    }

/* -----首頁 index----- */
main.content-margin {
    margin-top: 300px;
    text-align: center;
}

main .title-line {
    text-align: center;
    line-height: 1.1;
}

    main .title-line span:last-child {
        display: block;
        color: #6c6c6c;
        opacity: 0.8;
        position: relative;
        padding: 0 50px;
    }

        main .title-line span:last-child::after {
            border: 1px solid #ddd;
        }

main #ad picture img:hover {
    opacity: 0.8;
}

.ft-title-en {
    display: block;
    font-size: 42px;
    color: #646971;
    opacity: 0.3;
    font-weight: 100;
    font-family: 'Roboto', sans-serif;
    letter-spacing: -0.5px;
    line-height: 0.9;
}

.ft-title-cn {
    font-weight: 400;
    font-size: 23px;
    color: #7E878A;
}

.border-link {
    border-bottom: 1px solid #ddd;
    margin-top: 250px;
}

#promotion .card-body {
    /*height: 170px;*/
}

#promotion .card-text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    content: "...";
    line-height: 1.8;
}

#promotion img {
    width: 100%;
    height: 100%;
    min-width: 100%;
    max-width: 100%;
}
/* Chrome, Safari, AND NOW ALSO the Edge Browser and Firefox */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    #promotion img {
        height: auto;
    }
}

/* Chrome 29+ */
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm) {
    #promotion img {
        height: auto;
    }
}

/* Chrome 22-28 */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    #promotion img {
        height: auto;
    }
}

#promotion .card:hover {
    background-color: #fff;
    box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.08) !important;
}

#promotion .card-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#promotion {
    margin-bottom: 100px;
}

.line-height {
    line-height: 1.6;
}

#promotion table tr td:first-child {
    margin-top: 40px;
}

#promotion .icon-calendar {
    background-image: url(../../../Images/baseline/baseline-calendar_today-24px.png);
    background-repeat: no-repeat;
    background-position: left 2px;
    background-size: 17px auto;
    width: 20px;
}

#promotion .icon-subject {
    background-image: url(../../../Images/baseline/baseline-subject-24px.png);
    background-repeat: no-repeat;
    background-size: 17px auto;
    background-position: left 3px;
    width: 20px;
}

#promotion .icon-creditcard {
    background-image: url(../../../Images/baseline/baseline-credit_card-24px.png);
    background-repeat: no-repeat;
    background-size: 17px auto;
    background-position: left 3px;
    width: 20px;
}

/* -----專案頁 promotions > promo----- */
footer.promo-footer {
    margin-top: 500px;
    bottom: 0;
    z-index: -99;
    position: relative;
}

.bg-promotion {
    max-width: 100%;
    height: 450px;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    z-index: -99;
    background-image: url(../images/promotions-bg.jpg);
    position: absolute;
}

#promotion img:hover {
    opacity: 0.85;
}

img#PackageImageLarge {
    height: 100%;
    max-height: 600px;
    max-width: 100%;
}


section.promo-top {
    /*top: 370px;
    position: relative;*/
}

.promo-title {
    top: 0;
    position: relative;
    z-index: 1;
    background-color: rgba(49, 54, 62, 0.9);
    height: 100%;
    max-height: 100px;
}

    .promo-title h1 {
        padding: 20px 30px 10px 20px !important;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.promo-date {
    background-color: #7E878A;
    max-height: 40px;
    height: 100%;
}

    .promo-date h4 {
        padding: 2px 0 10px 20px !important;
    }

.promo-content {
    height: 100%;
    /*max-height: 330px;*/
    background-color: #fff;
}

    .promo-content ul {
        padding: 10px 20px 0 20px;
    }

#PromoBlock .nav-pills .nav-link {
    border-radius: 0px;
    padding: 3px 1px;
}

#PromoBlock .nav-item a {
    margin-right: 20px;
}

#PromoBlock .nav-link {
    padding: 0px;
}

#PromoBlock .nav-pills .nav-link.active {
    color: #5E6A6D;
}

#PromoBlock .nav-pills .nav-link.active,
#PromoBlock .nav-pills .show > .nav-link {
    background-color: #fff;
    border-bottom: 1.5px solid #7E878A;
}

#PromoBlock .promo-content #pills-tabContent {
    padding: 0px 20px;
}

#PromoBlock .tab-content ul li {
    font-size: 14px;
    line-height: 1.8;
}

#PromoBlock .tab-content .tab-pane.fade {
    /*max-height: 220px;*/
}

/* -----專案頁之房間 promotions > room----- */

.room-hover-state {
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    position: relative;
}

.room-image-1 {
    max-height: 200px;
    height: auto;
}

.room-bg {
    height: 100%;
    max-height: 100%;
    width: 100%;
    background-color: #fff;
}

.room-mention {
    height: auto;
    max-height: 140px;
    overflow: hidden;
}

.room-info {
    max-height: 440px;
    height: auto;
}

    .room-info table tr td:first-child {
        width: 30px;
        text-align: center;
    }

.room-type-h {
    min-height: 100%;
    height: 100%;
}


td.room-info-title {
    width: 50px;
}

.room-booking-bg {
    height: 100%;
    max-width: 100%;
    max-height: 620px;
}

.room-booking-right {
    max-width: 260px;
    width: 100%;
    height: auto;
}

.room-img-hover .img-more-hover {
    display: none;
}


#room-calendar-web table tr td.day-height {
    width: 150px;
    max-height: 100%;
    height: 80px;
    vertical-align: top;
}



#room-calendar-web tbody tr td:hover,
#room-calendar-mobile table tr:hover {
    background-color: #F3F3F3;
}

#room-calendar-web {
    display: block;
}

#room-calendar-mobile {
    display: none;
}

#room-search-mobile {
    display: none;
}

/* -----專案頁之跳視窗 promotions > modal----- */
div.modal-dialog .modal-header {
    max-height: 50px;
}

div.modal-header button.close {
    padding: 8px 15px;
}

div .modal-body-content {
    max-height: 200px;
}

div.modal-body table ul li {
    line-height: 1.7;
}

    div.modal-body table ul li.text-darkblack {
        list-style-type: none;
        margin-left: -18px;
    }


/* ----搜尋頁面 Search results----- */
#search-results {
    margin-top: 100px;
}

div.room-type-show:hover,
div.room-type-show:focus {
    background-color: #eaeaea;
    transition: 1s;
    -webkit-transition: 1s;
}

div.room-type-show a:hover {
    transition: all 1s ease;
    -webkit-transition: 2s;
}

div.room-type-hide {
    background-color: #7E878A;
    color: #fff;
}

    div.room-type-hide:hover,
    div.room-type-hide:focus {
        background-color: #5E6A6D;
    }

div .search-results-title {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.promo-img {
    width: 320px;
    max-width: 100%;
}

/* -----登入頁 login----- */
.bg-white.login-frame {
    max-height: 600px;
    width: 100%;
    max-width: 700px;
    margin-top: 120px;
}

.login-frame input[type=email],
.login-frame input[type=password] {
    padding-left: 8px;
    font-weight: 600;
}

.login-frame input::placeholder {
    padding-left: 8px;
}

footer.login-footer {
    margin-top: 120px;
}

/* ----- 結帳頁 booking form ----- */
.btn-order-info {
    color: #5E6A6D;
    font-size: 12px;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 3px 10px;
    margin-left: 3px;
    font-weight: bold;
    background-color: #fff;
}

    .btn-order-info:hover,
    .btn-order-info:focus {
        color: #fff;
        background-color: #7E878A;
        outline: none;
        transition: all 0.4s ease-out;
    }

.order-info-img:hover,
.room-image-1:hover {
    opacity: 0.8;
    border: 2px solid #eaeaea;
}

.text-center.order-info-note {
    margin-top: -16px;
}

td.order-price-title {
    padding-right: 100px;
}

.modal table tr td.modal-room-note {
    max-width: 180px;
}

div.formOrderInvoiceContent {
    display: none;
}

#formOrderContent,
#orderInfoNote {
    display: none;
}

.btn-bustimeline {
    color: #5E6A6D;
    font-size: 12px;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 5px 10px;
    font-weight: 500;
    background-color: #fff;
    width: 100%;
    max-width: 100px;
}

    .btn-bustimeline:hover,
    .btn-bustimeline:focus,
    .btn-bustimeline.active {
        color: #fff;
        background-color: #7E878A;
        outline: none;
        transition: all 0.4s ease-out;
        border: 1px solid #7E878A;
    }

.timelinecolumn:hover,
.timelinecolumn.active {
    background-color: #eaeaea;
}

.btn-optional {
    background-color: rgba(219, 224, 226, 0.8);
}

    .btn-optional:hover {
        background-color: #f1f1f1;
    }

.btn-optional-content {
    margin-left: 31px;
}

.btn-optional.active {
    color: #fff;
    background-color: #7E878A;
}

    .btn-optional.active .text-pine {
        color: #fff;
    }


/* -----付款頁面 payments----- */
label.paymentChecked {
    background-color: transparent;
    padding: 12px 10px;
    color: #656A72;
}

    label.paymentChecked:hover,
    div.payment-method:hover {
        background-color: #fff;
        border: 2px solid #BE812B;
        color: #BE812B;
    }

div.payment-method {
    height: 80px;
}

/* -----會員專區 member ----- */
.tabarrow {
    max-width: 50px;
}

.orderstate {
    display: block;
    text-align: right;
}

.orderlistbar {
    background-color: #dbe0e2;
    color: #5E6A6D;
    cursor: pointer;
    outline: none;
}

/* -----order ----- */
section .border-top {
    border-color: #ddd !important;
}

/* -----住宿券voucher----- */
.Introduction .Note {
    color: #D36A62 !important;
    font-weight: bolder;
}

.Introduction {
    line-height: 160%;
}

/* -----footer----- */
footer {
    margin-bottom: 0;
    bottom: 0;
}

    footer.bg-cadet {
        max-height: 130px;
        min-height: 90px;
        padding-top: 40px;
        padding-bottom: 50px;
        max-width: 100%;
        width: 100%;
        bottom: 0;
    }

    footer div .ft-h5.text-white:hover {
        border-bottom: 1px solid;
        padding-bottom: 2px;
    }


@media all and (max-width:320px) {

    /* -----search----- */
    .btn.btn-weeks {
        display: none;
    }

    #search select.search-select {
        width: 50px;
    }

    div .promo-date {
        max-height: 60px;
        overflow: hidden;
    }
}


@media (min-width:321px) and (max-width:575.98px) {

    .btn.btn-weeks {
        display: none;
    }

    span.btn-weeks {
        padding-right: 8px;
        padding-left: 11px;
    }
}

@media (max-width:430px) {

    .search-frame {
        width: 100%;
    }
}

@media all and (max-width: 575.98px) {
    #carouselFade .carousel-inner {
        max-height: 640px;
    }

    #search {
        height: 640px;
    }

    header.bg-search {
        height: 600px;
        max-height: 100%;
        max-width: 100%;
        width: 100%;
    }

    .search-frame {
        max-width: 400px;
        /*height: 500px;*/
        margin-left: auto;
        margin-right: auto;
    }

    .search-center .search-frame {
        transform: translateY(15%);
        -ms-transform: translateY(15%);
    }

    #search .input-w {
        width: 272px;
    }

    main.content-margin {
        margin-top: 200px;
        text-align: center;
    }

    #title div span.border-top {
        display: none;
    }

    .ft-title-en {
        font-size: 30px;
    }

    span.ft-title-cn {
        font-size: 20px;
        line-height: 0.4;
    }

    footer.bg-cadet {
        max-height: 150px;
        padding-top: 34px;
        max-width: 100%;
    }

    #promo-icon {
        display: none;
    }

    div.promo-content {
        height: 100%;
        /*max-height: 360px;*/
        background-color: #fff;
        overflow-y: scroll;
    }

    .room-image-1 {
        max-width: 100%;
        height: auto;
    }

    img.order-info-img {
        max-width: 300px;
    }

    section.ordersuccess-frame h1 {
        font-size: 20px;
    }

    section.ordersuccess-frame h3 {
        font-size: 16px;
    }

    .bustimelinetext {
        text-align: left;
    }

    img#PackageImageLarge {
        max-height: 150px;
    }


    .orderstate {
        text-align: right;
        display: block;
    }

    #promotion .card-body {
        /*height: 160px !important;*/
    }
}

@media all and (max-width: 767.98px) {


    .search-center .search-frame {
        transform: translateY(15%);
    }

    #room-calendar-mobile {
        display: block;
    }

    #promo-icon {
        display: none;
    }

    #search-results-content {
        margin-top: 30px;
    }

    div.order-info-content {
        margin-left: 10px;
    }

    .modal table tr td.modal-room-note {
        max-width: 100px;
    }

    #orderRoomList tr td img.room-list {
        display: none;
    }

    nav.fixed-top,
    footer.fix {
        position: initial;
    }

    #membertab ul > li.nav-item {
        margin-right: 0px;
        margin-bottom: 1px;
    }

    img#PackageImageLarge {
        height: auto;
    }

    section.shadow-sm.mt-100 {
        margin-top: 30px;
        ;
    }


    #promotion .card-body {
        height: auto;
    }
}

@media all and (max-width: 991.98px) {
    #room-calendar-web {
        display: none;
    }

    #room-calendar-mobile {
        display: block;
    }

    #room-search-mobile {
        display: block;
    }

    #search-results #search {
        width: 100% !important;
    }

    div .promo-img {
        display: none !important;
    }

    #promotion .card-body {
        height: auto;
    }

    section.frame-l,
    section.frame-s {
        min-height: auto;
        max-height: auto;
    }
}



@media (max-width:576px) {
    #carouselFade picture img {
        height: auto;
        width: 100%;
    }

    .search-center {
        height: auto !important;
        margin-top: 40%;
    }

        .search-center .search-frame {
            transform: none;
        }
}

@media all and (max-width: 1199.98px) {

    #promotion .card-body {
        /*height: 220px;*/
    }
}

/* -----For Firefox---- */
@-moz-document url-prefix() {
    #promotion p.card-text {
        overflow: hidden;
        max-height: 100px;
        -moz-box-orient: vertical;
        box-orient: vertical;
    }

    .carousel.slide div img {
        height: 700px;
        width: 100%;
        display: table-cell;
    }
}



/* -----Firefox---- */
@-moz-document url-prefix() {
    #promotion p.card-text {
        overflow: hidden;
        max-height: 100px;
        -moz-box-orient: vertical;
        box-orient: vertical;
    }

    .carousel.slide div img {
        height: 700px;
        width: 100%;
        display: table-cell;
    }
}


/* -----IE8~10---- */
@media screen\0 {
    .ie8910 {
        property: value;
    }

    select::-ms-expand,
    form select::-ms-expand {
        display: none;
    }

    .input-group-append label.btn-weeks {
        padding-top: -40px;
    }

    .carouselFade .carousel-inner .carousel-item picture img {
        height: 700px;
    }

    button.js-show-room.btn {
        margin-top: 20px;
    }

    button.btn-order-info i {
        margin-top: 15px !important;
    }
}

.cart-title {
    color: #2a2e36;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.2rem;
}

@media (min-width: 300px) {
    .cart-title-box {
        text-align: center;
        padding: 50px 0px 10px 0px;
    }
}

@media (min-width: 768px) {
    .cart-title-box {
        text-align: center;
        padding: 50px 0px 20px 0px;
    }
}

@media (min-width: 300px) {
    .cart-room-sub-box {
        padding: 0;
        margin-top: 6px;
    }
}

@media (min-width: 768px) {
    .cart-room-sub-box {
        padding: 0px;
        margin: 0 4px 0 4px;
    }
}

@media (min-width: 300px) {
    .cart-room-sub-row {
        margin-top: 0px;
    }
}

@media (min-width: 768px) {
    .cart-room-sub-row {
        margin-top: 10px;
        padding-right: 10px;
    }
}

.cart-cupon-input-text {
    border-radius: 4px 0 0 4px !important;
}

.cart-cupon-input-text：foucs {
    border-color: #2e6b38;
}

.cart-cupon-btn {
    background-color: #2e6b38;
    color: #fff;
    font-size: 0.875rem;
}

    .cart-cupon-btn:hover {
        background-color: #007a38;
        color: #fff;
        box-shadow: 0 4px 9px 0 rgba(19,93,116,0.09);
    }

.cart-room-prize {
    letter-spacing: 0rem;
    display: inline;
    color: #000;
    font-size: 1rem;
    font-weight: 500;
    float: right;
}

.cart-room-prize-s {
    letter-spacing: 0rem;
    display: inline;
    float: right;
}

.cart-room-prize-total {
    letter-spacing: 0rem;
    display: inline;
    color: #2e6b38;
    font-size: 1.25rem;
    font-weight: 500;
    float: right;
}

.cart-room-prize-total-des {
    display: inline;
    color: #2e6b38;
    font-weight: 400;
}

.cart-add-box {
    margin: 20px 0;
}

@media (min-width: 300px) {
    .cart-add-row-box {
        padding: 4px 0;
    }
}

@media (min-width: 768px) {
    .cart-add-row-box {
        padding: 4px 15px 0 0;
    }
}

.cart-des-title {
    font-size: 1rem;
    color: #000;
    margin: 20px 0 10px 0;
}

.cart-pay-box {
    background-color: #f8f8f8;
    padding: 14px 8px;
    margin-top: 10px;
    border-radius: 4px;
}

.cart-pay-text {
    color: #000;
    padding-left: 10px;
}

.form-check-label {
    font-size: 0.875rem;
    font-weight: 500;
}

.cart-done {
    margin-top: 50px;
}

.cart-done-title-box {
    text-align: center;
    margin: 10px 0 30px 0;
}

.cart-done-title {
    font-size: 20px;
    font-weight: 300;
    color: #000000;
}

    .cart-done-title::before {
        content: "/";
        padding-right: 6px;
    }

    .cart-done-title::after {
        content: "/";
        padding-left: 6px;
    }

.cart-done-th-col-2 {
    width: 28%;
    text-align: end;
    padding: 8px !important;
    margin: 0;
}

.cart-done-th-col {
    padding: 8px !important;
    margin: 0;
}

.cart-done-hotel-img-title {
    font-size: 1rem;
    color: #000;
    font-weight: 400;
    margin: 20px 0 6px 0;
}

@media (min-width: 300px) {
    .cart-done-hotel-des-box {
        margin-bottom: 40px;
    }
}

@media (min-width: 992px) {
    .cart-done-hotel-des-box {
        margin-bottom: 30px;
    }
}

.cart-status-title {
    font-weight: 900;
    font-size: 22px;
    letter-spacing: 0.1rem;
}

    .cart-status-title.succes {
        color: #2e6b38;
        font-weight: 900;
    }

    .cart-status-title.cancel {
        color: #f0584e;
        font-weight: 900;
    }

.order-psssword {
    font-weight: 600;
    color: #2e6b38;
}

.cart-done-room-box {
    margin-bottom: 20px;
}

.frame-bg {
    box-shadow: 0 4px 8px 0 rgba(7,35,42,0.06);
    background-color: #fff;
    border-radius: 4px;
}

form, div .line-box:last-child {
    border-bottom: 0;
}

.line-box {
    width: 100%;
}

@media (min-width: 300px) {
    .line-box {
        padding: 20px 16px;
        border-bottom: 1px solid;
        border-color: #dddddd;
    }
}

@media (min-width: 768px) {
    .line-box {
        border-bottom: 1px solid;
        border-color: #dddddd;
        margin-bottom: 0px;
        padding: 30px 16px;
    }
}

@media (min-width: 300px) {
    .line-box.mobile-pb-0 {
        padding: 30px 16px 0 16px;
    }
}

@media (min-width: 300px) {
    .unline-box.login {
        padding: 30px 20px;
    }
}

@media (min-width: 300px) {
    .unline-box {
        padding: 20px 16px;
    }
}

@media (min-width: 768px) {
    .unline-box {
        margin-bottom: 0px;
        padding: 30px 16px;
    }
}

@media (min-width: 768px) {
    .unline-box.login {
        margin-bottom: 0px;
        padding: 50px 30px;
    }
}

.html-editor.text-content img {
    width: 100% !important;
}

.check-unline-box {
    margin-bottom: 0px;
    padding: 16px 16px;
}

.form-check {
    position: relative;
    display: inline-block;
    padding-left: 1.25rem;
}

.home-icon-tooltip {
    width: 14px;
    color: #808080;
}

.home-btn-tooltip {
    padding: 0px;
    margin-left: 4px;
    background: none;
    width: auto !important;
}

.des-tip {
    font-size: 0.75rem;
    font-weight: 400;
    color: #007a38;
}

.des-tip-bg {
    background-color: rgba(0,122,56,0.05);
    padding: 10px;
    border-radius: 4px;
    text-align: center;
}

.input-text-thsr {
    margin-right: 36px;
}

.des-error {
    font-size: 0.875rem;
    font-weight: 400;
    color: #f52c00;
}

.des-tip {
    font-size: 0.875rem;
    font-weight: 400;
    color: #A5793C;
}

.des-error-bg {
    background-color: rgba(245,44,0,0.05);
    padding: 10px;
    border-radius: 4px;
    text-align: center;
}

.btn-main, a.btn-main {
    color: #fff;
    background-color: #A5793C;
    border-radius: 4px !important;
    padding: 9px;
    font-size: 0.875rem;
    letter-spacing: 0.1rem;
    height: 40px !important;
}

    .btn-main:hover {
        color: #fff;
        background-color: #A5793C;
        box-shadow: 0 4px 9px 0 rgba(46,107,56,0.18);
    }

.btn-s-main {
    font-size: 0.75rem;
    color: #fff;
    background-color: #A5793C;
    letter-spacing: 0.05rem;
    padding: 6px 14px;
}

    .btn-s-main:hover {
        color: #fff;
        background-color: #A5793C;
        box-shadow: 0 4px 9px 0 rgba(130,102,68,0.22);
    }

.btn-second, a.btn-second {
    color: #2e6b38;
    background-color: #efefef;
    padding: 9px;
    font-size: 0.875rem;
    letter-spacing: 0.1rem;
    height: 40px !important;
}

    .btn-second:hover {
        color: #007a38;
        background-color: #f2f2f2;
    }

.btn-page-down, .cart-box {
    margin-top: 60px;
}

.trip-check-box {
    margin: 10px 0 0 0;
    padding: 12px;
}

    .trip-check-box.active, .trip-check-box:hover {
        background-color: #f4f8f9;
        border-radius: 8px;
    }

.trip-title {
    font-size: 0.875rem;
    color: #000;
    font-weight: 400;
    margin-left: 8px;
}

.trip-des {
    color: #808080;
    font-weight: 300;
    display: block;
}

.trip-text-title {
    font-size: 1.125rem;
    font-weight: 500;
}

.trip-text-box {
    margin-top: 26px;
}

.trip-bus-box {
    padding: 0 30px;
}

.trip-bus-title-box {
    text-align: center;
    margin-top: 30px;
}

@media (min-width: 300px) {
    .trip-bus-title-box.thsr.left {
        margin-top: 26px;
    }
}

@media (min-width: 992px) {
    .trip-bus-title-box.thsr.left {
        margin-top: 0px;
    }
}

.trip-bus-title-box.thsr {
    text-align: center;
    margin-top: 0px;
}

.trip-bus-title::before {
    content: "/ ";
}

.trip-bus-title::after {
    content: " /";
}

.trip-bus-title::before {
    content: "/";
    margin-right: 6px;
}

.trip-bus-title::after {
    content: "/";
    margin-left: 6px;
}

.trip-bus-title {
    font-size: 1.25rem;
    color: #000;
    font-weight: 400;
}

.trip-location {
    font-size: 1rem;
    color: #2e6b38;
    font-weight: 500;
}

    .trip-location.start {
        margin-left: 34%;
    }

    .trip-location.end {
        margin-right: 34%;
    }

.trip-location-icon {
    fill: #2e6b38;
    width: 20px;
}

.trip-location-box-top {
    padding: 14px 0;
    border-top: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    text-align: center;
    margin-top: 10px;
}

.trip-location-box-center {
    text-align: center;
    padding: 6px 0;
}

.trip-location-box-down {
    padding: 6px;
    text-align: center;
}

    .trip-location-box-down.active, .trip-location-box-down:hover {
        background-color: #f4f8f9;
        border-radius: 8px;
    }

.trip-location-m {
    font-size: 1rem;
    color: #000;
    font-weight: 400;
}

.trip-location-s {
    font-size: 0.75rem;
}

.trip-radio {
    position: relative;
    right: 60%;
}

    .trip-radio.js-shuttle {
        right: 10%;
    }

@media (min-width: 300px) {
    .thsr-box {
    }
}

@media (min-width: 768px) {
    .thsr-box {
    }
}

@media (min-width: 300px) {
    .thsr-col-right-padding {
        padding: 0 15px 0 30px;
    }
}

@media (min-width: 992px) {
    .thsr-col-right-padding {
        padding: 0 15px;
    }
}

.home-icon-tooltip.thsr {
    margin-right: 16px;
}

.input-text-thsr {
    margin-right: 36px;
}

.thsr-status-box {
    background-color: #f2f2f2;
    border-radius: 4px;
    padding: 20%;
    text-align: center;
}

span.thsr-location {
    font-weight: 500;
}

.btn-s-second {
    color: #2e6b38;
    background-color: #efefef;
    border-radius: 20px;
    font-size: 0.75rem;
    letter-spacing: 0.1rem;
    padding: 6px 14px;
}

    .btn-s-second:hover {
        color: #007a38;
        background-color: #f2f2f2;
    }

.tooltip-description .tooltip-description-content {
    border-bottom: 1px dotted #971F24;
}

.tooltip-description .tooltip-description-icon {
    font-size: 22px;
    padding-right: 6px;
    padding-top: 3px;
}

.cart-price-total {
    color: #971F24;
}
