﻿
@media screen and (max-width: 767px) {
    .product-container {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        margin-top: 70px;
    }
    
    .product-container > .area1 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area1 > .content {
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 30px;
        overflow: hidden;
        padding: 40px 0px;
    }

    .product-container > .area1 > .content > h1 {
        color: #e50044;
        font-size: 36px;
        letter-spacing: 2px;
        line-height: 36px;
    }

    .product-container > .area1 > .content > .classification-box {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-title {
        flex-shrink: 0;
        width: 236px;
        height: 38px;
        border: 1px solid #d9d9d9;
        border-radius: 30px;
        color: #737373;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 2px;
        line-height: 16px;
        padding: 10px 20px;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-title > p {
        pointer-events: none;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content {
        width: 100%;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification {
        width: 100%;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 20px;
        column-gap: 40px;
        
        padding-top: 20px;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content > a {
        flex-shrink: 0;
        box-sizing: border-box;
        color: #737373;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 2px;
        line-height: 15px;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content > a > span {
        pointer-events: none;
    }

    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content > a.active {
        color: #72151a;
    }
    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content > a.active:link { color: #72151a; }
    .product-container > .area1 > .content > .classification-box > .collapse-box > .collapse-content > .classification > .content > a.active:active { color: #72151a; }

    .product-container > .area1 > .content > .pc { display: none; }

    /* ---------------------------------------------------------------------------------------------------- */

    .product-container > .area2 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area2 > .content {
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 50px;
        padding: 40px 0px;
    }

    .product-container > .area2 > .content > .product-box {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 40px;
    }

    .product-container > .area2 > .content > .product-box > .item {
        flex-shrink: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .product-container > .area2 > .content > .product-box > .item > .img-box {
        width: 100%;
    }

    .product-container > .area2 > .content > .product-box > .item > .img-box > img {
        max-width: 100%;
    }

    .product-container > .area2 > .content > .product-box > .item > p.name {
        width: 100%;
        color: #666666;
        font-weight: 700;
        letter-spacing: 2px;
        margin-top: 10px;
        text-align: center;
        /* 單行省略 */
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .product-container > .area2 > .content > .product-box > .item > p.price {
        width: 100%;
        color: #666666;
        font-weight: 700;
        letter-spacing: 2px;
        margin-top: 10px;
        text-align: center;
        /* 單行省略 */
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    /* ---------------------------------------------------------------------------------------------------- */

    .product-container > .area3 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area3 > .content {
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 50px;
        padding-bottom: 40px;
    }

    .product-container > .area3 > .content > .pagination-box {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
    }

    .product-container > .area3 > .content > .pagination-box > a {
        width: 50px;
        height: 50px;
        box-sizing: border-box;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .product-container > .area3 > .content > .pagination-box > a:link { color: #000000; }
    .product-container > .area3 > .content > .pagination-box > a:active { color: #000000; }

    .product-container > .area3 > .content > .pagination-box > a.prev-link,
    .product-container > .area3 > .content > .pagination-box > a.next-link {
        font-size: 26px;
    }

    .product-container > .area3 > .content > .pagination-box > a.item-link {
        border: 1px solid #000000;
        border-radius: 50%;
    }

    .product-container > .area3 > .content > .pagination-box > a.item-link.active {
        background-color: #000000;
        border-radius: 50%;
        color: #ffffff;
        cursor: default;
    }
}

@media screen and (min-width: 768px) {
    .product-container {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        margin-top: 90px;
    }
    
    .product-container > .area1 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area1 > .content {
        max-width: var(--page-max-width);
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 50px;
        overflow: hidden;
        padding: 50px 0px;
    }

    .product-container > .area1 > .content > h1 {
        color: #e50044;
        font-size: 36px;
        letter-spacing: 2px;
        line-height: 36px;
    }

    .product-container > .area1 > .content > .classification-box {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 40px;
    }

    .product-container > .area1 > .content > .classification-box a:link { color: #737373; }
    .product-container > .area1 > .content > .classification-box a:hover { color: #737373; }
    .product-container > .area1 > .content > .classification-box a:active { color: #737373; }

    .product-container > .area1 > .content > .classification-box > .main-box {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 20px;
        column-gap: 40px;
    }

    .product-container > .area1 > .content > .classification-box > .main-box > button {
        flex-shrink: 0;
        width: 236px;
        height: 38px;
        background-color: rgba(0, 0, 0, 0);
        border: 1px solid #000000;
        border-radius: 30px;
        box-sizing: border-box;
        color: #737373;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 2px;
        line-height: 16px;
        outline: none;
        padding: 10px 20px;
    }
    .product-container > .area1 > .content > .classification-box > .main-box > button:hover { background-color: #000000; color: #ffffff; }

    .product-container > .area1 > .content > .classification-box > .main-box > button > span {
        pointer-events: none;
    }

    .product-container > .area1 > .content > .classification-box > .main-box > button.active {
        background-color: #72151a;
        border: 1px solid #72151a;
        color: #ffffff;
        position: relative;
    }
    .product-container > .area1 > .content > .classification-box > .main-box > button.active:hover { color: #ffffff; }

    .product-container > .area1 > .content > .classification-box > .main-box > button.active::after {
        content: "";
        width: 0px;
        height: 0px;
        border: 10px solid;
        border-color: #72151a transparent transparent transparent;
        position: absolute;
        bottom: -20px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
    }

    .product-container > .area1 > .content > .classification-box > .sub-box {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .product-container > .area1 > .content > .classification-box > .sub-box > .item {
        width: 100%;
        min-height: 50px;
        display: none;
        justify-content: center;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 20px;
        column-gap: 40px;
    }

    .product-container > .area1 > .content > .classification-box > .sub-box > .item.active {
        display: flex;
    }

    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a {
        flex-shrink: 0;
        box-sizing: border-box;
        color: #737373;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 2px;
        line-height: 15px;
    }
    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a:hover { color: #000000; }

    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a > span {
        pointer-events: none;
    }

    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a.active {
        color: #72151a;
    }
    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a.active:link { color: #72151a; }
    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a.active:hover { color: #72151a; }
    .product-container > .area1 > .content > .classification-box > .sub-box > .item > a.active:active { color: #72151a; }

    .product-container > .area1 > .content > .mobile { display: none; }

    /* ---------------------------------------------------------------------------------------------------- */

    .product-container > .area2 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area2 > .content {
        max-width: var(--page-max-width);
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 50px;
        padding-bottom: 50px;
    }

    .product-container > .area2 > .content > .product-box {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 40px;
    }

    .product-container > .area2 > .content > .product-box > .item {
        flex-shrink: 0;
        width: calc((100% - 120px) / 4);
        height: 303px;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .product-container > .area2 > .content > .product-box > .item > .img-box {
        width: 100%;
        height: 240px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }

    .product-container > .area2 > .content > .product-box > .item > .img-box > img {
        max-width: 100%;
        max-height: 100%;
        transition: all 0.5s;
    }

    .product-container > .area2 > .content > .product-box > .item:hover > .img-box > img {
        transform: scale(1.05);
    }

    .product-container > .area2 > .content > .product-box > .item > p.name {
        width: 100%;
        color: #666666;
        font-weight: 700;
        letter-spacing: 2px;
        margin-top: 10px;
        text-align: center;
        /* 單行省略 */
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .product-container > .area2 > .content > .product-box > .item > p.price {
        width: 100%;
        color: #666666;
        font-weight: 700;
        letter-spacing: 2px;
        margin-top: 10px;
        text-align: center;
        /* 單行省略 */
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    /* ---------------------------------------------------------------------------------------------------- */

    .product-container > .area3 {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

    .product-container > .area3 > .content {
        max-width: var(--page-max-width);
        width: var(--page-width);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 50px;
        padding-bottom: 50px;
    }

    .product-container > .area3 > .content > .pagination-box {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
    }

    .product-container > .area3 > .content > .pagination-box > a {
        width: 50px;
        height: 50px;
        box-sizing: border-box;
        color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .product-container > .area3 > .content > .pagination-box > a:link { color: #000000; }
    .product-container > .area3 > .content > .pagination-box > a:hover { background-color: #000000; border-radius: 50%; color: #ffffff; }
    .product-container > .area3 > .content > .pagination-box > a:active { color: #000000; }

    .product-container > .area3 > .content > .pagination-box > a.prev-link,
    .product-container > .area3 > .content > .pagination-box > a.next-link {
        font-size: 26px;
    }

    .product-container > .area3 > .content > .pagination-box > a.item-link {
        border: 1px solid #000000;
        border-radius: 50%;
    }

    .product-container > .area3 > .content > .pagination-box > a.item-link.active {
        background-color: #000000;
        border-radius: 50%;
        color: #ffffff;
        cursor: default;
    }
}