.rest01-template-03 .title {
    font-size: 26px;
    line-height: 1.25em;
    font-family: var(--font-family-title);
    color: var(--color-title);
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    font-weight: bold;
    width: 70%
}

@media(min-width: 740px) {
    .rest01-template-03 .title {
        width: 80%;
        font-size: var(--size-title)
    }
}

.rest01-template-03 .subtitle {
    font-size: 16px;
    line-height: 1.25em;
    font-family: "Noto Sans TC", "PingFang", "PingFangTC", "Microsoft JhengHei", Helvetica, Arial, sans-serif;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 2em;
    color: var(--color-title);
    opacity: .8
}

@media(min-width: 740px) {
    .rest01-template-03 .subtitle {
        font-size: 20px
    }
}

@media(min-width: 1500px) {
    .rest01-template-03 .subtitle {
        font-size: 22px
    }
}

@media(min-width: 1800px) {
    .rest01-template-03 .subtitle {
        font-size: 24px
    }
}

.rest01-template-03 .small {
    font-size: 14px
}

@media(min-width: 1500px) {
    .rest01-template-03 .small {
        font-size: 15px
    }
}

@media(min-width: 1800px) {
    .rest01-template-03 .small {
        font-size: 16px
    }
}

.rest01-template-03 .more {
    display: inline-flex;
    color: #c09544;
    line-height: 2.25em;
    transition: all .35s ease;
    font-size: 18px;
    align-items: center;
    flex-wrap: nowrap;
    font-family: "Montserrat", "PingFang", "PingFangTC", "Microsoft JhengHei", Helvetica, Arial, sans-serif;
    font-weight: 900
}

.rest01-template-03 .more img,
.rest01-template-03 .more svg {
    display: block;
    width: 20px;
    height: auto;
    margin-right: 8px;
    transition: all .35s ease
}

.rest01-template-03 .more:active img,
.rest01-template-03 .more:active svg,
.rest01-template-03 .more:hover img,
.rest01-template-03 .more:hover svg {
    margin-right: 16px
}

.rest01-template-03 .more span {
    white-space: nowrap;
    font-weight: 600;
    font-family: "Montserrat"
}

@media(min-width: 980px) {
    .rest01-template-03 .more {
        font-size: 24px
    }
}

@media(min-width: 1500px) {
    .rest01-template-03 .more {
        font-size: 30px
    }
}

@media(min-width: 1800px) {
    .rest01-template-03 .more {
        font-size: 36px
    }
}

.rest01-template-03 {
    overflow: hidden;
    position: relative;
    max-width: 100vw
}

@media(min-width: 1100px) {
    .rest01-template-03 .more {
        position: absolute;
        right: 0;
        bottom: 13vh
    }
}

.rest01-template-03 .space {
    display: none
}

@media(min-width: 980px) {
    .rest01-template-03 .space {
        content: "";
        display: block;
        width: 100%;
        height: 10vh;
        background-color: #fff;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 1
    }
}

@media(min-width: 980px) {
    .rest01-template-03 .container {
        display: flex;
        position: relative;
        z-index: 5
    }
}

@media(min-width: 0)and (max-width: 979px) {
    .rest01-template-03 .img-holder {
        margin-bottom: 40px
    }
}

@media(min-width: 980px) {
    .rest01-template-03 .img-holder {
        width: 58%
    }
}

.rest01-template-03 .img-holder img {
    display: block;
    width: 100%;
    height: auto
}

.rest01-template-03 .text .title {
    margin-bottom: 1em;
    font-weight: 500
}

@media(min-width: 1500px) {
    .rest01-template-03 .text .title {
        margin-bottom: .5em
    }
}

.rest01-template-03 .text .desc {
    margin-bottom: 1em;
    font-family: "Noto Sans TC", "PingFang", "PingFangTC", "Microsoft JhengHei", Helvetica, Arial, sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    font-weight: 400;
    width: 80%;
    line-height: 2
}

@media(min-width: 980px) {
    .rest01-template-03 .text {
        width: 43%;
        padding-left: 40px;
        padding-top: 5vw
    }
}

@media(min-width: 1500px) {
    .rest01-template-03 .text {
        padding-left: 60px
    }
}

@media(min-width: 1800px) {
    .rest01-template-03 .text {
        padding-left: 90px
    }
}

.rest01-template-03 .about-img-holder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

@media(min-width: 0)and (max-width: 739px) {
    .about-img-holder.desktop {
        display: none
    }
}

@media(min-width: 740px) {
    .about-img-holder.mobile {
        display: none
    }
}

.rest01-template-03 .text {
    width: 100%;
    height: 40vw;
    padding-left: 55vw;
    padding-right: 10vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    position: relative;
    margin-left: auto
}

@media(max-width: 739px) {
    .rest01-template-03 .text {
        padding: 200px 38px 0px;
        height: 100%
    }
}

.page-rest01-about {
    position: absolute;
    bottom: 50%;
    right: 4.1666666667vw;
    transform: translateY(-50%)
}

.page-rest01-about .swiper-pagination-bullet.swiper-pagination-bullet-active {
    transform: translateX(75%)
}

.page-rest01-about .swiper-pagination-bullet {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 1.875vw;
    height: 1.875vw;
    border-radius: initial;
    background: initial;
    font-size: clamp(14px, .9375vw, 18px);
    font-weight: 700;
    color: #fff;
    opacity: 1;
    transition: .5s;
    outline: none
}

.page-rest01-about .swiper-pagination-bullet::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 100%;
    width: 1.1458333333vw;
    height: 1px;
    background-color: #fff;
    transition: .5s;
    transform-origin: 100% 50%;
    transform: scaleX(0)
}

.page-rest01-about .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    transform: initial
}

.swiper-pagination.page-rest01-about span.swiper-pagination-bullet-active:before {
    background-color: #fff;
    border-color: #fff
}

.swiper-pagination.page-rest01-about span:before {
    border-color: #fff
}

/*# sourceMappingURL=03.css.map */