// <!-- -------------common----------------->

$main-color: #727679;


body {
    background-color: #FCFCFC;
}

h4,
.h4 {
    font-weight: bold;
    color: #34404B;
}

.btn-outline-custom {
    color: #707070;
    border-color: #707070;
}

ul {
    display: block;
    list-style-type: none;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}

a {
    color: $main-color;
    &:hover {
        color: #FFAC73;
        text-decoration: none;
    }
}

:focus {
    outline: -webkit-focus-ring-color auto 0;
}

shadow {
    box-shadow: 0 1px 10px #cecece;
}

.tel {
    color: #EE751B;
    font-size: 1.5rem;
    font-weight: bold;
    @media(max-width: 576px) {
        font-size: 1rem;
    }
    &:hover {
        color: #EE751B;
    }
}

.loading-move {
    animation-name: move;
    animation-duration: 2s;
    animation-delay: 0;
    animation-iteration-count: infinite;
    animation-direction: normal;
    animation-timing-function: linear;
}

@keyframes move {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.new {
    position: absolute;
    right: 0;
    top: 0;
    background-color: #FF0000;
    color: #fff;
    padding: 0.3rem 0.6rem;
    font-size: 0.625rem;
}

.className {
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #EE7800;
    color: #fff;
    padding: 0.3rem 0.6rem;
    font-size: 0.75rem;
    @media(max-width: 576px) {
        font-size: 0.9375rem;
    }
}

.gotop-btn-wrapper {
    z-index: 1031;
}

// 專欄文章內容頁文章限寬1120
.container-width-column {
    max-width: 1120px;
    margin: 0 auto;
}

// 個案頁廣告限寬795
.container-width-ad {
    max-width: 768px;
}

// CTA
.formBtn {
    width: 47%;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        width: 91%;
    }
    &--mr {
        margin-right: 2%;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            margin-right: 0;
        }
    }

    .btn {
        padding: 1.2rem 0.75rem;
    }
}


// swiper
.swiper-button-next,
.swiper-button-prev {
    color: #FFF !important;
}

.swiper-pagination {
    position: unset;
    transform: translate3d(0, 5px, 0);
    color: $main-color;
}

.bg-ad {
    background-color: rgba(255, 255, 255, 0.7);
}

.bg-lightgray {
    background-color: #FCFCFC;
}

@mixin bgImage {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.divider {
    width: 100%;
    height: 1px;
    background-color: #AAAAAA;
    &--mg {
        margin: 0 0 2rem;
    }
}


// <!-- -----------------breadcrumb ------------------------>

.breadcrumb {
    background-color: #FCFCFC;
    @media(max-width: 576px) {
        margin-bottom: 0;
        display: block;
    }

    li {
        @media(max-width: 576px) {
            display: inline;
        }
    }

    a {
        font-size: 0.75rem;
    }

    .breadcrumb-item.active {
        a {
            color: #AAAAAA;
        }
    }

    // SEO 優化
    h1 {
        font-size: 0.75rem;
        font-weight: 400;
        line-height: 2.3;
        margin-bottom: 0;
        @media(max-width: 576px) {
            display: inline;
        }
    }
}

// <!-- --------------------Case Swiper-------------------->

.caseSlider {
    max-width: 1310px;
    margin: 0 auto;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        max-width: 100%;
    }
    &__bgImg {
        height: 860px;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center;
        position: relative;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            height: 250px;
        }

        &:hover {
            cursor: pointer;
            transition: all 300ms ease-in-out;
            img {
                transform: scale(1.2);
                transition: all 300ms ease-in-out;
                @media(max-width: 576px) {
                    transform: scale(1);
                }
            }
        }


        // 桌機版
        img {
            position: absolute;
            right: 30px;
            bottom: 25px;
            width: 30px;
            height: 30px;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                right: 10px;
                bottom: 10px;
                opacity: 1;
            }
        }
    }
    &__link {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        max-width: 1310px;
        margin: 0 auto;
        background: #fff;
        min-height: 860px;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            min-height: unset;
        }

        &:hover {
            cursor: pointer;
        }

        &--mx {
            max-width: 1120px;
        }
    }

    &__img {
        max-width: 100%;
    }

    picture {
        img {
            position: absolute;
            right: 10px;
            bottom: 10px;
            width: 30px;
            height: 30px;
        }
    }

    .morePhotoTip {
        position: absolute;
        color: #FFF;
        right: 75px;
        bottom: 50px;
        padding: 0.2rem 0.8rem;
        background-color: rgba(0, 0, 0, 0.45);
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 0.9rem;
            right: 10px;
            bottom: 10px;
        }
    }

}

// <!-- -------------Info Board----------------->

.info {
    margin: 0 0 1.8rem;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        margin: 0 0 1rem;
    }

    &--shadow {
        box-shadow: 0 1px 10px #cecece;
    }
    &__items {
        font-size: 1.2rem;
        text-align: center;
        color: #34404B;
        font-weight: 800;
        padding: 0;
        min-height: 4.5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 1rem;
            padding: 0.5rem;
        }

        &__title {
            color: #727679;
            font-weight: 400;
            font-size: 1rem;
        }

        &--ellipse {

            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 1;
            height: calc(19.2px * 1 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;

            @media(max-width: 576px) {
                height: calc(16px * 1 *1.5);
                min-height: 0;
                padding: 0;
            }

        }

        > div {
            padding: 0 1rem;
        }
    }

    .container--padding {
        padding: 1.2rem 0;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 0 1.875rem;
        }
    }

    &__option {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 100%;
    }

    .mh {
        min-height: 75px;
    }

    .border-below {
        border-bottom: 1px solid #cecece;
    }

    .small {
        color: #727679;
        font-size: 80%;
        transform: scale(0.85);
    }

    .border-sidebar {
        position: relative;
        &::after {
            content: '';
            display: inline-block;
            width: 1px;
            height: calc(150px * 0.8); // 外層高度的80%
            background-color: #cecece;
            transform: translate3d(0, 0, 0);
            position: absolute;
            left: 100%;
            top: 12px;
        }
    }
}

// <!-- -----------------------內文 article------------------>

.article {
    color: $main-color;

    &--style {
        background-color: #fff;
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
        transition: height 300ms ease-in-out;
        @media(max-width: 576px) {
            background-color: transparent;
            box-shadow: unset;
        }
    }

    &__title {
        color: #34404B;
        font-size: 1.5rem;
        font-weight: bold;
        margin-bottom: 0.5rem;
    }

    &__contexts {
        font-size: 1.1rem;
        line-height: 1.8;
        height: 50px;
        overflow: hidden;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 1rem;
        }
        &.active {
            height: auto;
            overflow: visible;
        }

        // 專欄有使用
        img {
            max-width: 80%;
            margin: 0.5rem 0;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                max-width: unset;
                width: 100%;
                height: auto;
            }
        }

        table {
            width: unset !important;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                width: 100% !important;
            }
        }

        // 專欄有使用
        &__note {
            width: 99.5%;
            margin: 1.8rem auto;
            font-size: 1.125rem;
            padding: 1rem;
            border: 1px solid #727679;
            > div {
                word-wrap: break-word;
                word-break: break-all;
            }
            span {
                font-weight: bold;
            }
        }

        &--longHeight {
            height: auto;
            transition: height 300ms ease-in-out;
            @media(max-width: 576px) {
                height: auto;
            }
        }
    }

    &__wrapper {
        padding: 0.75rem 1rem;
    }

    &__wrapper__note {
        color: #AAA;
    }

    // h4 {
    //     margin-bottom: 0;
    // }

    .small {
        padding: 0.5rem 0;
        font-size: 80%;
    }

    &__readMore {
        margin-left: auto;
        margin-right: auto;
        color: #FFAC73;
        text-align: center;
        font-size: 90%;
        padding: 0 0 1rem;
        transform: translateY(-20px);
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            width: 100%;
            margin: 0;
        }
        &:hover {
            cursor: pointer;
        }

        &::before {
            content: '';
            display: inline-block;
            background: linear-gradient(0deg,#FCFCFC 0%,rgba(255,255,255,0.454219) 100%);
            width: 100%;
            height: 25px;
            transition: all 300ms ease-in-out;
        }

        // 專欄有使用
        &--gradHight {
            transform: translateY(75px);
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                transform: translateY(-20px);
            }

            &::before {
                background: linear-gradient(0deg, rgba(252,252,252,0.9) 0%, rgba(255,255,255,0.9) 28%, rgba(255,255,255,0.5) 66%, rgba(255,255,255,0) 100%);
                position: absolute;
                bottom: 75px;
                left: 0;
                height: 340%;
                @media(max-width: 576px) {
                    background: linear-gradient(0deg,#FCFCFC 0%,rgba(255,255,255,0.454219) 100%);
                    position: unset;
                    height: 25px;
                }
            }
        }

        &.active {
            display: none;
            &::before {
                background: unset;
            }
        }

        i {
            transition: all 300ms ease-in-out;
            &.is-rotate {
                transform: rotate(180deg);
            }
        }

        &__text {
            transition: all 300ms ease-in-out;
            &.is-open {
                height: 0;
            }
        }
    }
}

// 專欄手機版有使用
@media(max-width: 576px) {
    .article__contexts * {
        max-width: calc(100vw - 32px) !important;
        height: auto !important;
        word-break: break-word;
    }
    .article__contexts iframe {
        min-height: calc(100vw / 16 * 9);
    }
}


// <!-- --------------社群媒體 social media---------------->

.scMedia {
    padding: 1rem 0;

    &__block {
        width: 35%;
        margin-left: auto;
        margin-right: auto;
        transition: all 300ms ease-in-out;
        @media(max-width: 992px) {
            width: 50%;
        }
        @media(max-width: 768px) {
            width: 70%;
        }
        @media(max-width: 576px) {
            width: 100%;
        }
        &--noneStyle {
            width: unset;
            margin-left: unset;
            margin-right: unset;
        }
    }

    &__list {
        display: flex;
        justify-content: space-around;
        background-color: #FFF;
        box-shadow: 0 1px 10px #cecece;
        border-radius: 45px;
        padding: 1rem 2.8rem;
        transition: all 300ms ease-in-out;

        @media(max-width: 768px) {
            padding: 1rem 0.8rem;
        }

        @media(max-width: 576px) {
            box-shadow: none;
            border-radius: 0;
            padding: 0;
            background-color: #FCFCFC;
        }

        &--noneStyle {
            background-color: transparent;
            box-shadow: none;
            border-radius: 0;
            padding: 1rem;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                padding: 0;
            }
        }
    }

    .like-o {
        display: block;
        &.active {
            display: none;
        }
    }

    .like {
        display: none;
        &.active {
            display: block;
        }
    }
    &__box {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: space-around;

        a {
            width: 16%;
        }
    }
}

// <!-- ------------------相關標籤 tag---------------------->

.relTag {
    padding: 1rem 0;
    a {
        margin: 0 0 0.6rem 0.6rem;
        color: inherit;
        transition: all 300ms ease-in-out;
        &:hover {
            color: #FFAC73;
            border-color: #FFAC73;
        }
    }

    &__items {
        width: 100%;
        display: flex;

        &__title {
            width: 7%;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                width: 30%;
            }
        }
        &__tags {
            width: 93%;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                width: 70%;
            }
        }
    }
}


// <!-- --------------------CASE DATA----------------->

.caseData {
    color: $main-color;
    padding: 0.5rem 0 0;
    margin-bottom: 3rem;

    &__infoBlock {
        position: relative;
        box-shadow: 0 1px 10px #cecece;
        padding: 1rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 0;
        }
    }

    h4 {
        padding: 0.5rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 1rem 0.5rem 0.5rem;
        }

        small {
            color: $main-color;
            font-size: 80%;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 60%;
            }
        }
    }

    &__vr {
        position: absolute;
        top: 15px;
        right: 15px;
        text-align: center;
        color: #EE751B;
        border: 1px solid #EE751B;
        border-radius: 0.25rem;
        line-height: 1;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            top: 16px;
            right: 15px;
        }

        &:hover {
            cursor: pointer;
        }

        &__big {
            font-size: 265%;
            font-weight: bold;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 170%;
            }
        }

        &__text {
            &::before {
                content: '全景預覽';
                display: inline-block;
                transform: scale(0.8);
                @media(max-width: 576px) {
                    transform: scale(0.6);
                }
            }
        }

    }

    &__infoItems {
        padding: 0.5rem;
    }

    &__infoItems__list {
        display: flex;
        &--lf {
            flex-basis: 15%;
            flex-grow: 0;
            max-width: 15%;
            display: flex;
            justify-content: start;
            align-items: start;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                flex-basis: 25%;
                max-width: 25%;
            }
            @media(max-width: 321px) {
                flex-basis: 30%;
                max-width: 30%;
            }
        }
        &--rt {
            flex-basis: 80%;
            flex-grow: 0;
            max-width: 80%;
            justify-content: start;
            word-break: break-all;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                flex-basis: 70%;
                max-width: 70%;
            }
        }
        .small {
            color: #AAA;
        }
    }

    &__designerBlock {
        display: flex;
        box-shadow: 0 1px 10px #cecece;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            justify-content: space-around;
            align-items: center;
            padding: 0;
        }

        ul {
            list-style-type: none;
            padding: 0.6rem;
        }

        &__designer {
            width: 50%;
            display: flex;
            flex-direction: column;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                width: 60%;
            }

            &--pc {
                padding: 1rem 0.9rem;
                width: 50%;
                height: 100%;
            }

            &--above {
                height: 75%;
            }

            &--below {
                height: 25%;
                border-top: 1px solid #727679;
            }
        }

        &__avatar {
            width: 50%;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                width: 40%;
            }

            &--img {
                height: 370px;
                background-repeat: no-repeat;
                background-size: contain;
                background-position: center;
                transition: all 300ms ease-in-out;

                @media(max-width: 1199px) {
                    height: 100%;
                    background-size: contain;
                }

                @media(max-width: 576px) {
                    height: 190px;
                    background-size: contain;
                }

            }
        }
    }

}


// <!-- ---------------------個案影片拍攝----------------------->


.caseVideo {
    margin: 0 0 3rem;

    &__block {
        margin: 1rem 0 0;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            margin: 0;
        }
    }

    &__bgImg {
        height: 406px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        position: relative;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            height: 250px;
        }
    }
    &__play {
        position: absolute;
        top: 43%;
        left: 47%;
        width: 55px;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            top: 43%;
            left: 45%;
            width: 55px;
        }
    }
}

// <!-- --------------------分類主選單--------------------->

.mainSort {
    padding: 1rem 0;

    &__state {
        font-size: 1rem;
        padding: 0.6rem 1rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 0.875rem;
            padding: 0.6rem 0;
        }

        span {
            color: #EE751B;
            font-size: 1.25rem;
            font-weight: bold;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 0.875rem;
            }
        }
    }

    &__wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        padding: 0 1rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 0;
        }


        &__item {
            width: 19%;
            margin: 0 1% 1rem 0;
            display: flex;
            justify-content: center;
            align-items: center;
            border: 1px solid transparent;
            box-shadow: 2px 3px 5px 2px #eee;
            transition: all 300ms ease-in-out;

            @media(max-width: 576px) {
                width: 23%;
                margin: 0 2% 0.5rem 0;
            }

            // 第4個以後出現margin
            &:nth-child(4n) {
                & ~ .mainSort__wrapper__item {
                    margin: 0 1% 1rem 0;
                    transition: all 300ms ease-in-out;
                    @media(max-width: 576px) {
                        margin: 0 2% 0.5rem 0;
                    }

                    &:hover,
                    &:active,
                    &.active {
                        color: #EE751B;
                        border: 1px solid #EE751B;
                    }
                }
            }

            &:hover,
            &:active,
            &.active {
                color: #EE751B;
                border: 1px solid #EE751B;
            }
        }

        a:not([href]) {
            &:hover {
                color: #EE751B;
                text-decoration: none;
            }
        }

    }

    .btn {
        font-size: 1rem;
        padding: 0.875rem 0.55rem;
        border-radius: 0.25rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 0.875rem;
            border-radius: 0;
            padding: 0.575rem 0.55rem;
        }

    }

}

@media(max-width: 576px) {
    .mainSort__wrapper__item,
    .mainSort__wrapper__item:nth-child(4n) ~ .mainSort__wrapper__item {
        &:hover {
            color: inherit;
            border: 1px solid transparent;
        }
    }

    .mainSort__wrapper__item,
    .mainSort__wrapper__item:nth-child(4n) ~ .mainSort__wrapper__item {
        &:active,
        &.active {
            color: #EE751B;
            border: 1px solid #EE751B;
        }
    }

}


// <!-- --------------------分類次選單--------------------->

.subSort {
    padding: 1rem 0;
    background-color: transparent;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        background-color: #F4F4F4;
    }

    &__wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: space-around;
        padding: 1.45rem 0.5rem;
        margin: 0 1.7rem 0 1rem;
        border-radius: 5px;
        background-color: #F4F4F4;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 0;
            margin: 0 0.1rem;
        }

        &__item {
            width: 20.5%;
            margin: 0 .5% 0.5rem 0;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: all 300ms ease-in-out;

            @media(max-width: 576px) {
                width: 23%;
                margin: 0 2% 0.5rem 0;
                border-radius: 0;
            }

            // 第4個以後出現margin
            &:nth-child(4n) {
                & ~ .subSort__wrapper__item {
                    margin: 0.7rem 4% 0 0;
                    @media(max-width: 576px) {
                        margin: .0 2% 0 0;
                    }
                }
            }

            &:hover,
            &:active,
            &.active {
                color: #EE751B;
            }
        }

        &__itemPC {
            margin: 0.5rem 1rem;
            padding: 0.2rem;

            &:hover,
            &:active,
            &.active {
                color: #EE751B;
            }
        }
    }

    a {
        border: 1px solid #E0E0E0;
    }

    .btn {
        font-size: 0.875rem;
        padding: 0.275rem 0.175rem;
    }
}

// <!-- -------------------你可能想看---------------------->

.likeSee {

    &__rule {
        margin: 0 0 1rem;
    }

    &__bgImg {
        height: 430px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        // transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            height: 217px;
        }
    }

    &__tag {
        padding: 0.5rem 0;
        &--item {
            margin: 0 0.2rem 0 0;
            &.active {
                color: #EE751B;
            }
        }
    }

    &__state {
        display: flex;
        justify-content: space-between;
        align-items: center;

        a {
            padding: 0 0.25rem;
            &.active {
                color: #EE751B;
            }
        }

        &__filter--divider {
            height: 12px;
            display: inline-block;
            border: 0.5px solid #9d9d9d;
        }
        &__filter--offset {
            position: absolute;
            right: 10px;
        }
    }
}


.card {
    border: none;
    font-size: 0.75rem;
}

.card-body {
    padding: 0.5rem 0.5rem 0.5rem 0;
}

.card-img-top {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

// 桌機版要中斷點、手機版中斷點拿掉
@media(max-width: 576px) {
    .card-columns {
        -webkit-column-count: 2;
        column-count: 2;
        column-gap: 13px;
    }

    .card-columns .card {
        display: inline-block;
        width: 98%;
    }
}


// <!--------------------- AD --------------------------->

// .ad {
// position: fixed;
// z-index: 1025;
// bottom: 30px;
// display: none;
//     @media(max-width: 576px) {
//         display: none;
//     }
//     &__bgImg {
//         height: 150px;
//         background-repeat: no-repeat;
//         background-size: cover;
//         background-position: center;
//     }
// }

.ad {
    position: sticky;
    z-index: 1025;
    bottom: 30px;
    display: none;
    @media(max-width: 576px) {
        display: none;
    }

    &__bgImg {
        height: 80px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
    }
}


// <!-- -----------最新|人氣- 卡片列表------------->

// 專欄、主題企劃、設計師個案最新有使用
.cardList {
    margin: 1rem 0 0;

    &__filter {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 1rem 0.5rem;

        a {
            padding: 0 0.35rem;
            &.active {
                color: #EE751B;
            }
        }

        &--divider {
            height: 12px;
            display: inline-block;
            border: 0.5px solid #9d9d9d;
        }
    }

    &__item {
        box-shadow: 0 1px 10px #eee;
        margin: 0 0 1.5rem;

        &__bgImg {
            height: 365px;
            background-repeat: no-repeat;
            background-size: 100%;
            background-position: center;
            position: relative;
            @media(max-width: 576px) {
                height: 215px;
            }
        }

        &__content {
            padding: 0.5rem 1rem;
        }

        &--title {
            font-size: 1.125rem;
            font-weight: bold;
            margin: 0.5rem 0;
            color: $main-color;
        }

        &--ellipse {
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 2;
            height: calc(18px * 1 *1.4);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                height: calc(18px * 2 *1.4);
            }
        }

        p {
            font-size: 0.75rem;
        }

        a {
            color: #AAAAAA;
        }
    }

    // <!-- 3欄式PC、2欄式mb version -->
    &__items {
        box-shadow: 0 1px 10px #eee;
        margin: 0 0 1.5rem;

        &__bgImg {
            height: 293px;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center;
            position: relative;
            @media(max-width: 576px) {
                height: 215px;
            }
            @media(max-width: 321px) {
                height: 193px;
            }
            &--theme {
                @media(max-width: 576px) {
                    height: 145px;
                }
                @media(max-width: 321px) {
                    height: 125px;
                }
            }
            &--center {
                display: flex;
                justify-content: center;
                align-items: center;
            }
            img {
                width: 50px;
                height: 50px;
            }
        }

        &__content {
            padding: 0.5rem 1rem;
        }

        &--title {
            font-size: 1.125rem;
            font-weight: bold;
            margin: 0.5rem 0;
            color: $main-color;
        }

        &--title2 {
            font-size: 1.125rem;
            font-weight: bold;
            margin: 0 0 0.5rem;
            color: #43484C;
        }

        &--ellipse {
            font-size: 1.125rem;
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 2;
            height: calc(18px * 2 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                height: calc(18px * 2 *1.5);
            }
        }

        &--ellipse2 {
            font-size: 1.125rem;
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 1;
            height: calc(18px * 1 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                height: calc(18px * 1 *1.5);
            }
        }

        // 主題企劃使用
        .themecontent {
            color: $main-color;
            font-size: 1rem;
            margin-bottom: 0;

            &--ellipse {
                font-size: 1rem;
                -webkit-box-orient: vertical;
                -moz-box-orient: vertical;
                box-orient: vertical;
                -webkit-line-clamp: 3;
                height: calc(16px * 3 *1.5);
                overflow: hidden;
                text-overflow: ellipsis;
                display: -webkit-box;
            }
        }

    }
}


// <!-- -------------------------------------主題企劃 Banner ---------------------------------------------->

.themeBanner {

    &__imgBlock {
        display: flex;
        width: 100%;

        &__item {
            width: calc(100% / 3);
            position: relative;
            cursor: pointer;
            transition: all 300ms ease-in-out;
            &:hover {
                .overlay {
                    opacity: 1;
                }
            }
        }
        a {
            display: block;
        }
        img {
            width: 100%;
            max-width: 100%;
        }
    }

    .overlay {
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        p {
            color: #FFF;

        }
        &__title {
            font-weight: bold;
            font-size: 1.125rem;
            letter-spacing: 0.72px;
            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
        }
    }

}

// <!-- -------------------------------------當月主題企劃---------------------------------------------->

.pd-0 {
    @media(max-width: 576px) {
        padding: 0;
    }
}
.mg-0 {
    @media(max-width: 576px) {
        margin: 0;
    }
}
.themeArea {
    padding: 5.5rem 15px 0.5rem;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        padding: 0;
    }
    &__state {
        position: sticky;
        top: 100px;
        padding: 0 0 0 15px;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            position: unset;
            padding: 0;
        }
        &__img {
            width: 100%;
        }
        &__caption {
            padding: 1rem 0.5rem;
        }
        .title {
            color: #4D4D4D;
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
        }
        h2 {
            font-size: 2rem;
            font-weight: bold;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 1.375rem;
            }
        }
        p {
            color: #4D4D4D;
            font-size: 1.125rem;
            letter-spacing: 0.9px;
            margin: 1rem 0;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 1rem;
                letter-spacing: 0.28px;
            }
        }
    }
    &__list {
        .themeCard {
            display: block;
            &:hover {
                .cardList__items--title2 {
                    color: #EE7800;
                }
            }
        }
    }
    .capital {
        color: #E0E0E0;
        font-size: 3.75rem;
        font-weight: bold;
        letter-spacing: 2.4px;
        margin-bottom: 0;
        padding: 0 1.5rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 2.5rem;
            letter-spacing: 1.6px;
            margin-bottom: -6px;
        }
    }
}

// 動態輪播圖(主題企劃有使用)
#themeBanner {
    .swiper-scrollbar-block {
        position: absolute;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        display: flex;
        padding: 0 15px;
        margin: 5px 0;
        z-index: 10;
    }
    .carouselPrimary-bullet {
        position: relative;
        width: 100%;
        height: 4px;
        margin: 0 5px;
        background-color: rgba(0, 0, 0, 0.1);
        flex: 1 1 auto;
    }

    .carouselPrimary-bullet:after {
        content: "";
        background: #EE7800;
        position: absolute;
        width: 0;
        height: 100%;
        left: 0;
        top: 0;
    }
    .carouselPrimary-bullet--active:after {
        width: 0;
        animation-name: progress;
        animation-duration: 4s;
        animation-timing-function: linear;
    }
}

@keyframes progress {
    0% {
        width: 0;
    }
    100% {
        width: 100%;
    }
}

// <!-- -----------------------------大 Banner-------------------------------------->

.banner {
    // height: 50.2vh;
    // overflow: hidden;
    &--offset {
        margin-top: calc(56px);//navbar 高度
    }
    &__bgImg {
        height: 470px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        // background-position-x: center;
        transition: all 300ms ease-in-out;

        // height: 180%;
        // position: relative;
        // top: -100%;
        @media(max-width: 576px) {
            height: 240px;
        }
        &--fixed {
            background-attachment: fixed;
            z-index: 1;
        }
    }
}

// <!-- -----------------------------設計師(PC-左:資訊欄/右: 4項選項)------------------->

.dBlock {
    background-color: #FCFCFC;
    padding: 1rem 30px 0.5rem;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        background-color: #F4F4F4;
        padding: 1rem 15px 0.5rem;
        position: relative;
    }
}
.avatar {
    width: 200px;
    height: 200px;
    border: 3px solid #FFF;
    border-radius: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        width: 188px;
        height: 188px;
        position: absolute;
        top: -140px;
    }
    &--sm {
        width: 42px;
        height: 42px;
        position: unset;
    }
}
.infoCard {
    color: #727679;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    background-color: rgba(244, 244, 244, 0.8);
    transition: all 300ms ease-in-out;
    @media(max-width: 576px) {
        background-color: transparent;
        padding: 0 1.5rem 0 0;
        margin: 3rem 0 0;
    }
    &--offset {
        transform: translateY(-150px);
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            transform: translateY(-165px);
        }
    }
    &--sticky {
        position: sticky;
        top: 350px;
        z-index: 1010;
    }
    > ul {
        line-height: 1.8;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            line-height: 2;
        }
        a {
            &:hover {
                color: #727679;
            }
        }
    }
    li {
        margin: 0.3rem 0;
    }
    &__name {
        color: #43484C;
        line-height: 1.3;
        font-size: 1.75rem;
        font-weight: bold;
        text-align: center;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 1.25rem;
            padding: 0 0.5rem;
            width: 100%;
            margin: 0 auto;
        }
        span {
            font-size: 1.25rem;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 1rem;
            }
        }
    }
    &__cmy {
        font-size: 1.25rem;
        text-align: center;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 1.125rem;
            padding: 0 0.5rem;
            width: 100%;
            margin: 0 auto;
        }
    }
    &__approve {
        color: #EE7800;
        font-size: 1rem;
        text-align: center;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            padding: 0 0.5rem;
            width: 100%;
            margin: 0 auto;
        }
    }
    &__more {
        color: #FFAC73;
        text-align: center;
        cursor: pointer;
        &.is-hidden {
            display: none;
        }
    }
    &__otherInfo {
        display: none;
        width: 100%;
        &.is-open {
            display: block;
        }
    }
    &__detail {
        width: 100%;
        aside {
            display: flex;
            line-height: 2;
        }
        &__l {
            flex-basis: 30%;
            flex-grow: 0;
            max-width: 30%;
            display: flex;
            justify-content: flex-end;
            align-items: flex-start;
            transition: all 300ms ease-in-out;
            @media(max-width: 1280px) {
                flex-basis: 40%;
                max-width: 40%;
            }
            @media(max-width: 576px) {
                flex-basis: 35%;
                max-width: 35%;
            }
        }
        &__r {
            flex-basis: 70%;
            flex-grow: 0;
            max-width: 70%;
            justify-content: start;
            word-break: break-all;
            transition: all 300ms ease-in-out;
            @media(max-width: 1280px) {
                flex-basis: 60%;
                max-width: 60%;
            }
            @media(max-width: 576px) {
                flex-basis: 65%;
                max-width: 65%;
            }
            a:hover, a:focus {
                color: #EE7800 !important;
            }
        }
        .title {
            color: #AAAAAA;
            font-size: 1.125rem;
            font-weight: bold;
            transform: translateX(-15px);
        }
    }
}
.listNav {
    &--sticky {
        @media(max-width: 576px) {
            position: sticky;
            top: 56px; // navbar 高度
            width: 100%;
            z-index: 1010;
        }
    }
    ul {
        @media(max-width: 576px) {
            justify-content: space-around;
            background-color: #fff;
        }
        li {
            margin: 0 0.8rem;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                margin: 0;
                width: 25%;
                max-width: 25%;
            }
        }
        a {
            padding: 0.5rem 2.5rem;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                padding: 1rem 0.5rem;
                text-align: center;
                font-size: 1.125rem;
            }
            &.active {
                color: #EE7800;
                border-bottom: 2px solid #EE7800;
                transition: all 300ms ease-in-out;
                @media(max-width: 576px) {
                    border-bottom: 3px solid #EE7800;
                }
            }
        }
    }
}
#nav-collapse {
    display: none;
}
.nav-collapse-fixed {
    position: fixed;
    top: 66px; // navbar 高度
    z-index: 1010;
    width: 100%;
}
.nav-collapse {
    padding: 1rem 0;
    background-color: #FCFCFC;

    li {
        margin: 0 2rem;
    }
    a {
        padding: 0.5rem 2.5rem;
        &.active {
            color: #EE7800;
            border-bottom: 2px solid #EE7800;
        }
    }
}
// 設計師頁面--影音
.dVideo {
    padding: 1rem 0;
    &__now {
        &__bgImg {
            height: 500px;
            @include bgImage();
            display: flex;
            justify-content: center;
            align-items: center;
            img {
                width: 100px;
                height: 100px;
            }
        }
        &__subtitle {
            color: #43484C;
            font-size: 1.5rem;
            font-weight: bold;
            &--ellipse {
                -webkit-box-orient: vertical;
                -moz-box-orient: vertical;
                box-orient: vertical;
                -webkit-line-clamp: 1;
                height: calc(24px * 1 *1.5);
                overflow: hidden;
                text-overflow: ellipsis;
                display: -webkit-box;
            }
        }
    }
    &__stay {
        &__bgImg {
            height: 130px;
            @include bgImage();
            display: flex;
            justify-content: center;
            align-items: center;
            img {
                width: 45px;
                height: 45px;
            }
        }
        &__item {
            min-height: 100%;
            display: flex;
            flex-direction: column;
            justify-content:flex-start;
        }
        &__subtitle {
            color: #727679;
            font-weight: bold;
            font-size: 1rem;
            &--ellipse {
                font-size: 1rem;
                -webkit-box-orient: vertical;
                -moz-box-orient: vertical;
                box-orient: vertical;
                -webkit-line-clamp: 2;
                height: calc(16px * 2 *1.5);
                overflow: hidden;
                text-overflow: ellipsis;
                display: -webkit-box;
                transition: all 300ms ease-in-out;
            }
        }
        &__tag {
            display: flex;
            flex-wrap: wrap;
            margin: 0.3rem 0 0 0;
        }
    }
    &__mainTitle {
        color: #AAAAAA;
        font-size: 2rem;
    }
}

// 設計師頁面--關於
.dAbout {
    @media(max-width: 576px) {
        padding: 2rem 0;
    }
    &__item {
        margin: 0 0 2rem;
        &__title {
            color: #AAAAAA;
            font-size: 2rem;
            transition: all 300ms ease-in-out;
            @media(max-width: 576px) {
                font-size: 1.125rem;
            }
        }
        &__content {
            color: #43484C;
        }
    }
}

// 設計師頁面滾動帶出設計師資訊小區塊
.hintInfo {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFF;
    padding: 0.5rem 1rem;
    &--sticky {
        @media(max-width: 576px) {
            position: sticky;
            top: 56px; // navbar 高度
            width: 100%;
            z-index: 1010;
        }
    }
    &__name {
        color: #43484C;
        font-size: 0.9375rem;
        font-weight: bold;
        &--ellipse {
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 1;
            height: calc(15px * 1 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
        }
        span {
            font-size: 0.9rem;
        }
    }
    &__cmy {
        font-size: 0.875rem;
        &--ellipse {
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 1;
            height: calc(14px * 1 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
        }
    }

    &__seo {
        font-size: 1rem;
        text-align: center;
        padding: 1rem;
        transition: all 300ms ease-in-out;
        @media(max-width: 576px) {
            font-size: 1.125rem;
            padding: 0 0.5rem;
            width: 100%;
            margin: 0 auto;
        }
    }

}

.hintInfo_listNav {
    &--sticky {
        position: sticky;
        top: 56px; // navbar 高度
        width: 100%;
        z-index: 1010;
    }
}


// 瀑布流-設計師最新 masonry

.grid:after {
    content: '';
    display: block;
    clear: both;
}

/* ---- .grid-item ---- */

.grid-sizer,
.grid-item {
    width: calc(100% / 3 * 1);
    @media(max-width: 576px) {
        width: calc(100% / 2 * 1);
    }
}

.grid-item {
    float: left;
    padding: 0 5px;
    .cardList__items__content {
        background: #FFF;
    }
    @media(max-width: 576px) {
        &.cardList__items {
            margin: 0 0 0.5rem;
        }
        .cardList__items__content {
            padding: 0.3rem 0.3rem;
            background: #FFF;
        }
        .cardList__items--title {
            margin: 0 0 0 0;
        }
        .cardList__items--ellipse {
            -webkit-box-orient: vertical;
            -moz-box-orient: vertical;
            box-orient: vertical;
            -webkit-line-clamp: 1;
            height: calc(16px * 1 *1.5);
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            transition: all 300ms ease-in-out;
        }
        p {
            margin-bottom: 0.5rem;
        }
        a {
            font-size: 0.75rem;
        }
    }
}

.grid-item img {
    display: block;
    max-width: 100%;
}


.freeCall {
    width: 100%;
    text-align: center;
    background: linear-gradient(180deg, rgba(244,244,244,0.9) 0%, rgba(244,244,244,0.9) 100%);
    &--fixed {
        position: fixed;
        bottom: 57px;
        z-index: 1011;
    }
}
