﻿@charset "UTF-8";
@import url(//fonts.googleapis.com/earlyaccess/notosanstc.css);

:root {
    --mainColor:#ff4d8e;
    --mainColorDeeper:#ffadbf;
    --subColor: #fffcce;
    --subColor2: #fffcce;
    --borderColor: #efe99c;
    --BlockBackColor: #ffffff;
    --TextForeColor: #000000;
}

body, html {
    height: 100%;
}

body {
    background: #f9f9f9;
    font-family: "Noto Sans TC",'Microsoft JhengHei', sans-serif;
    color: #555;
}

p, a {
    color: #555;
    font-size: 16px;
    line-height: 24px;
}

a {
    cursor: pointer !important;
    outline: none;
}

    a img {
        outline: none;
    }

img {
    border: 0;
}
/*a:hover { color:var(--mainColor);}*/
.inner {
    width: 1200px;
    margin: 0 auto;
    overflow: hidden;
}

.page {
    position: relative;
    min-height: 100%;
}

.main {
    clear: both;
    width: 1200px;
    min-height: calc( 100% - 310px);
    padding: 170px 0 50px 0;
    margin: 0 auto;
    position: relative;
}
.main.foridx { padding:40px 0;}

.hidden {
    overflow: hidden;
}

.clearb {
    clear: both;
}

img {
    max-width: 100% !important;
    height: auto !important;
    _width: expression(this.width > 100 ? "100%" : this.width) !important;
}

/* ----------default---------- */
.box {
    background: #fff;
    border: 1px solid #ddd;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
}

.pd30 {
    padding: 30px;
}

.title1 {
    font-size: 26px;
    position: relative;
    padding-bottom: 10px;
    border-bottom: 2px solid #eee;
    margin-bottom: 10px;
}

    .title1:after {
        content: '';
        position: absolute;
        left: 0;
        top: 100%;
        width: 50px;
        height: 2px;
        background: var(--mainColor);
    }

    .title1 .more {
        color: #868686;
        position: absolute;
        right: 0;
        top: 10px;
        font-size: 14px;
        color: #494949;
    }

        .title1 .more:hover {
            opacity: 0.7;
        }

.title2 {
    background: #ebf7f5;
    color: #0a4e44;
    font-size: 22px;
    margin-bottom: 10px;
    line-height: 30px;
    padding: 5px 10px;
}

.title3 {
    color: var(--mainColor);
    font-size: 22px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    margin-bottom: 20px;
}

.txt-bold {
    font-weight: bold;
}

.txt-g {
    color: var(--mainColor);
}

a.txt-g:hover {
    text-decoration: underline;
}

.txt-o {
    color: #f76a00;
}

.txt-y {
    color: #ffff54;
}

.txt-gray {
    color: #999;
}

.txt-w {
    color: #fff;
}

.txt-pink {
    color: #ff6784;
}

.txt-red {
    color: #ff492b;
}

.txt-big {
    font-size: 30px;
    line-height: 36px;
}

.txt-24 {
    font-size: 24px;
    line-height: 30px;
}

.txt-20 {
    font-size: 20px;
    line-height: 24px;
}

.txt-small {
    font-size: 14px;
    line-height: 18px;
}

.txt-center {
    text-align: center;
}

.txt-right {
    text-align: right;
}

.txt-line {
    text-decoration: underline;
}

a.txt-line:hover {
    opacity: 0.7;
}

.v-middle, .v-middle img {
    vertical-align: middle;
}

.m-b-m {
    margin-bottom: 20px;
}

.m-b-s {
    margin-bottom: 10px;
}

.m-t-L {
    margin-top: 50px;
}

.m-t-m {
    margin-top: 20px;
}

.m-t-s {
    margin-top: 10px;
}

.m-r-m {
    margin-right: 20px;
}

.m-r-s {
    margin-right: 10px;
}

.m-l-L {
    margin-left: 50px;
}

.m-l-m {
    margin-left: 20px;
}

.m-l-s {
    margin-left: 10px;
}

.dash-line {
    display: block;
    clear: both;
    width: 100%;
    height: 1px;
    border-top: 1px dashed #ddd;
    margin: 20px 0;
}

.bt-line {
    border-top: 1px solid #ddd;
    padding-top: 10px;
    clear: both;
}
/*btns*/
.btn {
    display: inline-block;
    padding: 8px 25px;
    font-size: 16px;
    cursor: pointer;
    font-family: "Noto Sans TC",'Microsoft JhengHei', sans-serif;
    border-radius: 3px;
    vertical-align: middle;
}

.btn-green {
    background: var(--mainColor);
    color: #fff;
}

    .btn-green:hover {
        background: var(--mainColorDeeper);
    }

.btn-block {
    display: block;
    padding: 10px 0;
    text-align: center;
    font-size: 22px;
}

.btn-white {
    background: #fff;
    border: 1px solid #ddd;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
}

    .btn-white:hover {
        border: 1px solid #ccc;
        color: var(--mainColor);
    }

.btn-red {
    background: var(--mainColorDeeper);
    color: #000;
}

    .btn-red:hover {
        background: #da390e;
    }

.btn-pink {
    background: #ff6784;
    color: #fff;
}

    .btn-pink:hover {
        background: #ee4c6a;
    }

.btn-disable {
    background: #a9a9a9;
    color: #d8d8d8;
}

/* ----------input style---------- */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

:after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

::-webkit-input-placeholder {
    color: #ccc;
}

::-moz-placeholder {
    color: #ccc;
}

:-ms-input-placeholder {
    color: #ccc;
}

input:-moz-placeholder {
    color: #ccc;
}

input, textarea, select, button {
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    border: none;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

*:focus {
}

.input-default {
    background: #fff;
    color: #555;
    border-radius: 0;
    width: 100%;
    margin: 3px 0;
    padding: 8px;
    font-size: 16px;
    border: 1px solid #ddd;
    font-family: 'Microsoft JhengHei', sans-serif;
}

    .input-default:focus {
        border: 1px solid rgba(24,170,148,.5);
        -moz-box-shadow: 0 0 2px 1px rgba(24,170,148,.3);
        -webkit-box-shadow: 0 0 2px 1px rgba(24,170,148,.3);
        box-shadow: 0 0 2px 1px rgba(24,170,148,.3);
    }

.form-default .field {
    line-height: 24px;
    margin-bottom: 10px;
}

    .form-default .field:after, .form-default .field:before, .row:after, .row:before {
        clear: both;
        display: table;
        content: " ";
    }

.form-default .label {
    display: inline-block;
    width: 20%;
    margin-right: 1%;
    color: #000;
    vertical-align: middle;
}

.form-default .txt {
    display: inline-block;
    width: 76%;
    color: #888;
    vertical-align: middle;
}

.must:after {
    content: "*";
    color: #ff5b4a;
}

.input-gray {
    background: #eee;
    color: #333;
    border: 1px solid #eee;
    border-radius: 3px;
    width: 100%;
    margin: 3px 0;
    padding: 8px;
    font-size: 16px;
    font-family: 'Microsoft JhengHei', sans-serif;
}

    .input-gray:focus {
        border: 1px solid #ccc;
    }

    .input-gray::-webkit-input-placeholder {
        color: #999;
    }

    .input-gray::-moz-placeholder {
        color: #999;
    }

    .input-gray:-ms-input-placeholder {
        color: #999;
    }

    .input-gray:-moz-placeholder {
        color: #999;
    }
/*select stlye*/
select.input-default {
    height: 40px;
    background: url(../images/icon-selectarrow.png) right 8px top 15px no-repeat #fff !important;
    background-size: 11px 7px !important;
}

select.input-gray {
    height: 40px;
    background: url(../images/icon-selectarrow.png) right 8px top 15px no-repeat #eee !important;
    background-size: 11px 7px !important;
}
/*radio style*/
.radio-style input[type="radio"] {
    display: none;
}

.radio-style label {
    display: inline-block;
    cursor: pointer;
    margin-right: 20px;
}

.radio-style input[type="radio"] + span:before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.25em;
    border-radius: 1em;
    border: 0.125em solid #fff;
    box-shadow: 0 0 0 1px #ccc;
    margin-right: 0.5em; /*transition: 0.5s ease all;*/
}

.radio-style input[type="radio"]:checked + span:before {
    background: var(--mainColor);
    box-shadow: 0 0 0 1px var(--mainColor);
}
/*checkbox style*/
.check-style {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 20px;
    cursor: pointer;
    font-size: 16px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    .check-style input {
        position: absolute;
        opacity: 0;
    }

.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: #eee;
    border-radius: 3px;
}

.check-style input:checked ~ .checkmark {
    background-color: var(--mainColor);
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.check-style input:checked ~ .checkmark:after {
    display: block;
}

.check-style .checkmark:after {
    left: 7px;
    top: 4px;
    width: 6px;
    height: 9px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
/*size*/
.input-default.xs, .input-gray.xs {
    width: 50px;
}

.input-default.s, .input-gray.s {
    width: 80px;
}

.input-default.m, .input-gray.m {
    width: 140px;
}

.input-default.L, .input-gray.L {
    width: 260px;
}

/* ----------header---------- */
header {
    width: 100%;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
}

    header .inner {
        position: relative;
        height: 120px;
    }

a.logo {
    display: block;
    position: absolute;
    left: 0;
    top: 25px;
    width: 300px;
    height: 70px;
}

.member-nav {
    position: absolute;
    top: 25px;
    right: 0;
}

    .member-nav a {
        display: inline-block;
        margin-left: 10px;
        position: relative;
    }

        .member-nav a:hover {
            opacity: 0.7;
        }

    .member-nav img {
        vertical-align: middle;
        margin-right: 5px;
    }

    .member-nav a i {
        display: inline-block;
        font-size: 12px;
        width: 18px;
        height: 18px;
        line-height: 18px;
        color: #fff;
        background: var(--mainColor);
        border-radius: 50%;
        text-align: center;
    }

.search {
    position: absolute;
    top: 65px;
    right: 0;
    border: 1px solid var(--mainColor);
}

    .search .input-default {
        width: 160px;
        margin: 0;
        padding: 5px;
        font-size: 15px;
        height: 32px;
        border: none;
    }

    .search .searchBTN {
        display: inline-block;
        vertical-align: top;
        width: 32px;
        height: 32px;
        background: url(../images/icon-search-w.png) center no-repeat var(--mainColor);
        background-size: 18px 18px;
        cursor: pointer;
    }

        .search .searchBTN:hover {
            opacity: 0.7;
        }

nav {
    clear: both;
    width: 100%;
    background: var(--mainColor);
}

    nav ul {
        width: 1200px;
        margin: 0 auto;
        text-align: right;
    }

        nav ul li {
            display: inline-block;
        }

            nav ul li a {
                display: block;
                color: #fff;
                font-size: 20px;
                padding: 0 20px;
                line-height: 40px;
            }

                nav ul li a:hover, nav ul li a.active {
                    background: var(--mainColorDeeper);
                    color: #f7ff9c;
                }

                nav ul li a:hover, nav ul li a.hightlight {
                    color: #f7ff9c;
                }

a.menu_btn, a.search_btn {
    display: none;
}

/* ----------footer---------- */
footer {
    width: 100%;
    clear: both;
    background: #fff;
    border-top: 1px solid #eee;
    text-align: center;
}

    footer .inner {
        overflow: hidden;
    }

    footer .txt-g {
        font-size: 20px;
        margin: 30px 0 20px 0;
    }

    footer .foot-contact {
        padding-top: 10px;
    }

        footer .foot-contact span {
            display: inline-block;
            margin: 3px 10px;
        }

        footer .foot-contact img {
            vertical-align: middle;
        }

        footer .foot-contact a {
            text-decoration: underline;
        }

            footer .foot-contact a:hover {
                color: var(--mainColor);
            }

        footer .foot-contact span, footer .foot-contact img {
            vertical-align: middle;
        }

    footer .copy {
        text-align: center;
        background: #494949;
        color: #fff;
        font-size: 13px;
        padding: 15px 0;
        margin-top: 20px;
    }

/* ----------商品列表選單---------- */
.prd-menu {
    width: 250px;
    position: fixed;
    top: 120px;
    z-index: 100;
}

.prd-menu h3 { width:100%; cursor:pointer; background:url(../images/icon-rightarrow-w.png) top 8px right 10px no-repeat var(--mainColor); background-size:18px 18px; padding-left:10px; line-height:40px; font-size:16px; font-weight:normal; color:#fff;}
.prd-menu h3.active { background:url(../images/icon-xx-white.png) top 8px right 10px no-repeat var(--mainColor); background-size:18px 18px;}

    /*.third-level{ position: absolute; top:0; left:250px; width: 250px; display:none;}
.third-level > li{ height:44px; background:#fff;}
.third-level > li:hover { background:#f6f6f6; }
.second-level{ position: absolute; top:0; left:250px; width:250px; display:none;}
.second-level > li{ position: relative; height:45px; background:#fff;}
.second-level > li:hover { background:#f6f6f6; }
.second-level > li a { line-height:44px;}*/
    .prd-menu .list {
        position: relative;
        background: #fff;
    }

        .prd-menu .list li {
            height: 46px;
            width: 250px;
        }

            .prd-menu .list li:hover { /*background:#f6f6f6;*/
                box-shadow: 0 0 8px 2px rgba(0,0,0,.1);
            }
        /*.prd-menu .list li:hover > ul{ display: inline;}*/
        .prd-menu .list a {
            color: #333;
            padding: 0 0 0 15px;
            display: block;
            line-height: 45px;
            border-bottom: 1px solid #ddd;
            font-size: 18px;
        }

            .prd-menu .list a:hover, .prd-menu .list li:hover a {
                color: var(--mainColor);
            }

        .prd-menu .list li:last-child a {
            border-bottom: none;
        }

    .prd-menu .arrow.active_p {
        color: var(--mainColor);
    }

    .prd-menu .sub {
        display: none;
        width: 950px;
        background: #fff;
        position: absolute;
        top: 0;
        left: 250px;
        padding: 20px;
        min-height: 460px;
        box-shadow: 0 0 5px 2px rgba(0,0,0,.1);
    }

    .prd-menu .sub-item {
        overflow: hidden;
        clear: both;
        border-bottom: 1px dashed #ddd;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }

        .prd-menu .sub-item:last-child {
            border-bottom: none;
        }

    .prd-menu .sub a {
        border: none;
        padding-left: 0;
        color: #555;
    }

    .prd-menu .list li:hover .sub a {
        color: #555;
    }

    .prd-menu .sub a:hover {
        text-decoration: underline;
    }

    .prd-menu .sub a.cate, .prd-menu .list li:hover a.cate {
        display: block;
        float: left;
        width: 16%;
        color: var(--mainColor);
        font-size: 16px;
        line-height: 30px;
    }

    .prd-menu .sub .item {
        float: right;
        width: 83%;
    }

        .prd-menu .sub .item a {
            display: inline-block;
            font-size: 15px;
            line-height: 30px;
            font-weight: normal;
        }

            .prd-menu .sub .item a:after {
                content: '|';
                padding: 0 10px;
                color: #ccc;
            }

            .prd-menu .sub .item a:last-child:after {
                content: '';
            }

    .prd-menu i {
        display: inline-block;
        margin-right: 10px;
        vertical-align: middle;
    }

i.pico1 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon1.png) no-repeat center;
}

i.pico2 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon2.png) no-repeat center;
}

i.pico3 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon3.png) no-repeat center;
}

i.pico4 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon4.png) no-repeat center;
}

i.pico5 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon5.png) no-repeat center;
}

i.pico6 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon6.png) no-repeat center;
}

i.pico7 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon7.png) no-repeat center;
}

i.pico8 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon8.png) no-repeat center;
}

i.pico9 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon9.png) no-repeat center;
}

i.pico10 {
    width: 22px;
    height: 22px;
    background: url(../images/nav-list-icon10.png) no-repeat center;
}

.prd-menu .arrow {
    background: url(../images/prd-arrow.png) top 17px right 20px no-repeat;
    background-size: 7px 13px;
}

    .prd-menu .arrow.active {
        background: url(../images/prd-arrow-down.png) top 22px right 17px no-repeat;
        background-size: 13px 7px;
    }

/* ----------浮動購物車---------- */
#cart {
    position: fixed;
    top: 100px;
    right: -340px;
    width: 340px;
    z-index: 999;
    -webkit-transition: right .5s ease-out;
    -moz-transition: right .5s ease-out;
    -o-transition: right .5s ease-out;
    transition: right .5s ease-out;
}

    #cart:hover {
        right: 0;
    }

#cart-btn {
    display: flex;
    position: absolute;
    left: -40px;
    top: 0;
    width: 40px;
    height: 150px;
    padding: 20px 0 0 0;
    justify-content: center;
    align-items: center;
    writing-mode: vertical-lr;
    color: #fff;
    line-height: 18px;
    background: url(../images/icon-cart.png) 9px 10px no-repeat #373737;
    background-size: 19px 15px;
    border-radius: 5px 0 0 5px;
    z-index: 1000;
}

#cart i {
    display: block;
    position: absolute;
    left: -20px;
    top: -6px;
    font-size: 12px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    color: #fff;
    background: var(--mainColor);
    border-radius: 50%;
    text-align: center;
    z-index: 1001;
}

#cart .cart-wrap {
    position: absolute;
    left: 0;
    top: 0;
    padding: 20px;
    width: 340px;
    border-radius: 0 0 5px 5px;
    min-height: 200px;
    background: #373737;
}

#cart .list {
}

    #cart .list .item {
        padding: 5px;
        margin-bottom: 5px;
        background: #fff;
    }

        #cart .list .item span, #cart .list .item a {
            display: inline-block;
            vertical-align: middle;
        }

            #cart .list .item span.p-name {
                width: 68%;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }

            #cart .list .item span.p-num {
                width: 25%;
                padding: 0 1%;
            }

            #cart .list .item a.del {
                width: 5%;
            }

                #cart .list .item a.del:after {
                    content: "×";
                    font-size: 13px;
                    color: #999;
                }

span.acttag {
    background: var(--mainColor);
    color: #fff;
    font-size: 13px;
    line-height: 15px;
    padding: 0 5px;
    margin-right: 5px;
}

/* ----------index--------- */
.area {
    overflow: hidden;
    clear: both;
    margin: 30px 0;
}
/*banner*/
.idx-banner {
    background: #e0ecea;
    width: 100%;
    padding-top:160px;
}

    .idx-banner .inner {
        position: relative;
        width: 1200px;
        margin: 0 auto;
        height: 460px;
        overflow: visible;
    }

    .idx-banner .swiper-container {
        width:100%;
        margin: 0 auto;
    }
/*促銷區塊*/
.promotion {
    float: left;
    width: 49%;
    margin-right: 1%;
}

    .promotion .box {
        padding: 20px 25px;
    }

    .promotion h3 {
        font-size: 24px;
        margin: 20px 0 20px 0;
    }

    .promotion img {
        width: 340px;
        height: 320px;
    }
/*新聞*/
.news {
    float: right;
    width: 49%;
    margin-left: 1%;
}

.news-wrap {
    padding-left: 20px;
}

    .news-wrap a {
        display: block;
        position: relative;
        padding: 8px 0;
        border-bottom: 1px dashed #ddd;
    }

        .news-wrap a:hover {
            color: var(--mainColor);
        }

        .news-wrap a:last-child {
            border-bottom: none;
        }

        .news-wrap a:before {
            position: absolute;
            content: "";
            top: 50%;
            -webkit-transform: translateY(-50%);
            -moz-transform: translateY(-50%);
            -o-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
            transform: translateY(-50%);
            margin-left: -10px;
            width: 0;
            height: 0;
            border-top: 5px solid transparent;
            border-bottom: 5px solid transparent;
            border-left: 5px solid var(--mainColor);
            margin-right: 5px;
        }

        .news-wrap a .date {
            position: absolute;
            width: 100px;
            top: 10px;
            right: 0;
            color: #bbb;
        }
/*商品*/
.prd-wrap1 { overflow: hidden; }
.prd-wrap1 .box { text-align: center; display:block; float: left; height:350px; width: 19%; padding: 15px; margin-right:1%; margin-bottom: 10px; position: relative;}
.prd-wrap1 .box:nth-child(5n) { margin-right: 0; }
.prd-wrap1 .box h3 { text-align: left !important; font-size:17px; line-height: 18px; height:36px;}
.prd-wrap1 .box .o-price { text-decoration:line-through; color:#999; font-size: 14px; text-align:left; margin-top:10px;}
.prd-wrap1 .box .r-price { color:red; font-size: 18px; text-align:left;}
.prd-wrap1 .box .btn-cart { display: block; padding:4px 0; text-align: center; border:1px solid var(--mainColor); color:var(--mainColor); border-radius: 3px; margin-top: 10px; font-size:15px;}
.prd-wrap1 .box .btn-cart:hover { opacity: 0.7;}
.prd-wrap1 .box img { width: 160px; height: 160px;}
.prd-wrap1 .ico-new { position: absolute; left: 0; top: 0; width: 60px; height: 60px; background:url(../images/prd-pro1.png) top left no-repeat; background-size: 60px 60px; }
.prd-wrap1 .ico-pro { position: absolute; left: 0; top: 0; width: 60px; height: 60px; background:url(../images/prd-pro2.png) top left no-repeat; background-size: 60px 60px; }
.prd-wrap1 .box:hover{ border: 1px solid var(--mainColorDeeper);}

/* ---------- 內頁 ---------- */
.right-area {
    width: 930px;
    float: right;
    padding-bottom: 50px;
}

.right-area-center {
    width: 930px;
    padding-bottom: 50px;
    margin: 0px auto;
    float: initial
}

.left-area {
    width: 250px;
    float: left;
    padding-top: 450px;
}

.banner {
    width: 100%;
    height: 250px;
    overflow: hidden;
    margin-bottom: 20px;
    color: #fff;
}

    .banner .txt {
        width: 35%;
        margin-right: 5%;
        height: 150px;
        float: right;
        padding: 80px 15px 20px 15px;
        text-align: center; /*background: #fff;*/
    }

    .banner h1 {
        font-size: 30px;
        position: relative;
    }

        .banner h1:after {
            content: '';
            position: absolute;
            left: 0;
            right: 0;
            top: 100%;
            margin: 10px auto;
            width: 50px;
            height: 3px;
            background: #fff;
            border-radius: 5px;
        }

    .banner h2 {
        font-size: 16px;
        line-height: 24px;
        margin-top: 20px;
        opacity: 0.8;
    }
/*.banner.bn1 { background:url(../images/banner-about.jpg) top left no-repeat #53c1dd; }
.banner.bn2 { background:url(../images/banner-news.png) top left no-repeat #74adb9; }
.banner.bn3 { background:url(../images/banner-member.png) top left no-repeat #82c6c9; }
.banner.bn4 { background:url(../images/banner-instru.png) top left no-repeat #58a7c8; }
.banner.bn6 { background:url(../images/banner-contact.jpg) top left no-repeat #5bb8aa; }
.banner.bn7 { background:url(../images/banner-search.jpg) top left no-repeat #0076aa; }*/

/* ----------關於瑞春---------- */
.about1 {
    clear: both;
    overflow: hidden;
    padding: 30px;
    margin-bottom: 20px;
}

    .about1 .left {
        float: left;
        width: 60%;
        line-height: 26px;
    }

    .about1 .right {
        float: right;
        width: 40%;
    }

.about2 {
    clear: both;
    overflow: hidden;
    padding: 30px;
    margin-bottom: 20px;
}

    .about2 .field {
        display: inline-block;
        width: 45%;
        overflow: hidden;
        clear: both;
        margin: 0 4% 30px 0;
    }

        .about2 .field .imgs {
            float: left;
            width: 80px;
        }

        .about2 .field .txt {
            float: right;
            width: calc( 100% - 80px);
        }

        .about2 .field h3 {
            font-size: 24px;
            color: #383838;
            margin-bottom: 10px;
        }

.about-line {
    display: block;
    width: 80%;
    height: 10px;
    border-bottom: solid 1px #ff6784;
    text-align: center;
    margin: 50px auto;
}

    .about-line span {
        display: inline-block;
        background-color: #f9f9f9;
        padding: 0 30px;
        font-size: 24px;
        font-style: italic;
    }

.about3 {
    clear: both;
    overflow: hidden;
    padding: 30px;
}

    .about3 h3 {
        font-size: 24px;
        margin-bottom: 20px;
    }

.timeline {
    float: left;
    width: calc( 60% - 40px);
    padding-left: 40px;
}

    .timeline .years {
        height: 60px;
        position: relative;
    }

    .timeline .num {
        color: var(--mainColor);
        position: absolute;
        top: 0;
        left: -40px;
    }

    .timeline .txt {
        position: absolute;
        left: 20px;
        top: 0;
        border-left: 4px solid #dbdbdb;
        padding-left: 20px;
        height: 60px;
    }

        .timeline .txt p {
            position: relative;
        }

            .timeline .txt p:before {
                position: absolute;
                top: 1px;
                left: -30px;
                content: "";
                width: 16px;
                height: 16px;
                border-radius: 50%;
                background: var(--mainColor);
            }

    .timeline .years:last-child .txt {
        border-left: 4px solid #fff;
    }

.about3 .imgs {
    float: right;
    width: 35%;
    text-align: center;
}

    .about3 .imgs p {
        font-size: 14px;
        margin-bottom: 10px;
    }

/* ---------- tabs ---------- */
.tabs {
    position: relative;
    height: 40px;
    border-bottom: 1px solid #ddd;
    z-index: 0;
}

    .tabs ul {
        position: absolute;
        left: 0;
        bottom: 2px;
        z-index: 1;
        height: 39px;
    }

        .tabs ul li {
            display: inline-block;
            background: #e0e0e0;
            border: 1px solid #e0e0e0;
            border-bottom: 1px solid #ddd;
            border-radius: 3px 3px 0 0;
            margin-right: 3px;
        }

            .tabs ul li:hover {
                background: #fff;
            }

            .tabs ul li.active {
                background: #fff;
                border-bottom: 1px solid #fff;
                -webkit-box-shadow: 0px -1px 2px 0px rgba(0,0,0,0.07);
                -moz-box-shadow: 0px -1px 2px 0px rgba(0,0,0,0.07);
                box-shadow: 0px -1px 2px 0px rgba(0,0,0,0.07);
            }

                .tabs ul li.active a {
                    color: var(--mainColor);
                }

            .tabs ul li a {
                display: block;
                padding: 0 30px;
                line-height: 40px;
                font-size: 18px;
            }

.tab-content {
    padding: 20px;
    min-height: 340px;
    background: #fff;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.07);
}

/* ---------- page ----------*/
.page {
    clear: both;
    margin: 20px 0;
    text-align: center;
}

    .page a {
        display: inline-block;
        padding: 3px 8px;
        margin: 4px;
        vertical-align: middle;
    }

        .page a:hover {
            opacity: 0.7;
        }

    .page .arrow {
        border: solid var(--mainColor);
        border-width: 0 3px 3px 0;
        padding: 3px;
    }

    .page .next {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }

    .page .prev {
        transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
    }

    .page .active {
        background: var(--mainColor);
        color: #fff;
        border-radius: 2px;
    }
/*廣告版位*/
.AD {
    margin: 10px 0;
    text-align: center;
}

/* ---------- 注意事項區塊 ---------- */
.note {
    background: #e9f4f2;
    padding: 15px;
    margin: 10px 0;
    border: 1px solid #a7dbd3;
    border-radius: 3px;
    color: #1f4b43;
}

ol.num {
    padding-left: 20px;
}

    ol.num li {
        list-style: decimal;
        line-height: 24px;
    }

ul.dot {
    color: var(--mainColor);
    padding-left: 20px;
}

    ul.dot li {
        list-style: disc;
        color: #1f4b43;
        line-height: 24px;
    }

.note2 {
    background: #eee;
    padding: 15px;
    margin: 10px 0;
    border-radius: 3px;
    color: #666;
}

    .note2 ul.dot {
        color: #818181;
        padding-left: 20px;
    }

        .note2 ul.dot li {
            list-style: disc;
            color: #666;
            line-height: 24px;
        }

/* ---------- 商品列表 ---------- */
.prd-list {
}

    .prd-list .item {
        padding: 8px;
        border-bottom: 1px dashed #ddd;
    }

        .prd-list .item:hover {
            background: #fffbee;
        }

        .prd-list .item:last-child {
            border-bottom: none;
        }

    .prd-list .imgs {
        display: inline-block;
        vertical-align: middle;
        width: 8%;
        margin-right: 1%;
    }

        .prd-list .imgs img {
            width: 70px;
            height: 70px;
            box-shadow: 0 0 0 1px #ddd;
        }

    .prd-list .info {
        display: inline-block;
        vertical-align: middle;
        width: 56%;
        margin-right: 1%;
    }

        .prd-list .info h3 {
            font-weight: bolder;
            color: #333;
            line-height: 20px;
        }

        .prd-list .info .cate {
            display: inline-block;
            margin-right: 5px;
            color: #999;
            border: 1px solid #ccc;
            padding: 2px;
            font-size: 14px;
            font-weight: lighter;
        }

            .prd-list .info .cate.red {
                border: 1px solid #ff492b;
                color: #ff492b;
            }

        .prd-list .info p {
            font-size: 15px;
            margin-top: 5px;
            line-height: 18px;
            color: #777;
            margin-bottom: 10px;
        }

    .prd-list .price {
        display: inline-block;
        vertical-align: middle;
        width: 14%;
        margin-right: 1%;
    }

    .prd-list .num {
        display: inline-block;
        vertical-align: middle;
        width: 10%;
        margin-right: 1%;
    }

        .prd-list .num .input-default {
            padding: 5px;
            margin: 0 0 5px 0;
        }

        .prd-list .num .btn-green {
            display: block;
            width: 100%;
            text-align: center;
            padding: 0;
            line-height: 32px;
            font-size: 15px;
            border-radius: 3px;
        }

    .prd-list .btns {
        display: inline-block;
        vertical-align: middle;
        width: 5%;
    }

    .prd-list .btn-like, .prd-list .btn-money, .prd-list .btn-dislike {
        display: block;
        width: 100%;
        height: 32px;
        border: 1px solid #ddd;
        border-radius: 3px;
    }

        .prd-list .btn-like:hover, .prd-list .btn-money:hover, .btn-dislike:hover {
            border: 1px solid #ccc;
        }

    .prd-list .btn-like {
        background: url(../images/icon-like.png) no-repeat center #fff;
        background-size: 21px 21px;
        margin-bottom: 5px;
    }

        .prd-list .btn-like.active {
            background: url(../images/icon-like-active.png) no-repeat center #fff;
            background-size: 21px 21px;
        }

    .prd-list .btn-dislike {
        background: url(../images/icon-dislike.png) no-repeat center #fff;
        background-size: 21px 21px;
        margin-bottom: 5px;
    }

    .prd-list .btn-money {
        background: url(../images/icon-money.png) no-repeat center #fff;
        background-size: 21px 21px;
    }

.tab-content .item {
    padding: 8px 0 !important;
}
/* 模式切換 */
.prd-mode {
    margin: 10px 0;
    text-align: right;
}

    .prd-mode a {
        display: inline-block;
        margin-left: 20px;
        opacity: 0.4;
        color: #555;
        font-size: 14px;
    }

        .prd-mode a:hover {
            opacity: 0.8;
        }

        .prd-mode a img {
            margin-right: 5px;
            vertical-align: middle;
            width: 22px;
            height: 22px;
        }

        .prd-mode a.active {
            opacity: 1;
        }
/* 排序 */
.sort {
    font-size: 14px;
}

    .sort select.input-default {
        width: 120px;
        margin: 0;
        padding: 5px;
        font-size: 14px;
        height: 30px;
        background: url(../images/icon-selectarrow.png) right 8px top 10px no-repeat #fff !important;
        background-size: 11px 7px !important;
    }

/* 圖片模式 */
.prd-list.img-mode {
}

    .prd-list.img-mode .item {
        display: inline-block;
        padding: 8px 0;
        width: 31%;
        border-bottom: 0;
        margin: 0 1% 30px 1%;
    }

        .prd-list.img-mode .item:hover {
            background: none;
        }

    .prd-list.img-mode .imgs {
        display: block;
        text-align: center;
        vertical-align: middle;
        width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
    }

        .prd-list.img-mode .imgs img {
            width: 180px;
            height: 180px;
            box-shadow: 0 0 0 1px #ddd;
        }

    .prd-list.img-mode .info {
        display: block;
        width: 100%;
        margin-right: 1%;
        text-align: left;
    }

    .prd-list.img-mode .img-info {
        text-align: left;
        margin-top: 10px;
    }

    .prd-list.img-mode .price {
        display: inline-block;
        vertical-align: middle;
        width: 35%;
        margin-right: 1%;
    }

    .prd-list.img-mode .num {
        display: inline-block;
        vertical-align: middle;
        width: 35%;
        margin-right: 1%;
    }

    .prd-list.img-mode .btns {
        display: inline-block;
        vertical-align: middle;
        width: 20%;
    }
/* ---------- 商品詳情 ---------- */
.prd-detail {
    overflow: hidden;
    margin-bottom: 30px;
    background: #fff;
    padding: 20px;
    box-shadow: 0 0 3px 0 rgba(0,0,0,.1);
}

    .prd-detail .left {
        float: left;
        width: 43%;
    }

        .prd-detail .left img {
            border: 1px solid #ddd;
        }

    .prd-detail .right {
        float: right;
        width: 55%;
    }

    .prd-detail .title {
        font-size: 30px;
        list-style: 40px;
        color: #333;
        margin-bottom: 10px;
    }

    .prd-detail .stitle {
        font-size: 18px;
        list-style: 25px;
        color: #888;
        margin-bottom: 10px;
    }

    .prd-detail .adver span {
        display: inline-block;
        vertical-align: middle;
        padding: 5px 10px;
        font-size: 14px;
        background: #fff7e1;
        color: #fa7000;
        margin-right: 5px;
    }

    .prd-detail .price {
        font-size: 17px;
        margin: 20px 0;
    }

        .prd-detail .price span {
            display: inline-block;
            vertical-align: middle;
        }

        .prd-detail .price .p1 {
            margin-right: 10px;
            font-size: 18px;
            font-size: 16px;
            color: #888;
            text-decoration: line-through;
            margin-bottom: 10px;
        }

        .prd-detail .price .p2 {
            font-size: 30px;
            line-height: 30px;
            color: #ff492b;
        }

.radio-select {
    margin-bottom: 10px;
}

    .radio-select input[type="radio"] {
        display: none;
    }

        .radio-select input[type="radio"] + label {
            display: inline-block;
            vertical-align: middle;
            font-size: 16px;
            border: 1px solid #ddd;
            cursor: pointer;
            padding: 5px 10px;
            margin: 5px 0 5px 0;
        }

        .radio-select input[type="radio"]:checked + label {
            color: #fa8100;
            border: 1px solid #fa8100;
        }

.buynumber {
    display: inline-block;
    border: 1px solid #ddd;
}

    .buynumber .minus, .buynumber .plus {
        cursor: pointer;
        padding: 0 7px;
        line-height: 34px;
        display: inline-block;
        vertical-align: middle;
        text-align: center;
    }

    .buynumber .minus {
        border-right: 1px solid #ddd;
    }

    .buynumber .plus {
        border-left: 1px solid #ddd;
    }

    .buynumber input[type="text"] {
        height: 34px;
        width: 80px;
        text-align: center;
        font-size: 17px;
        display: inline-block;
        vertical-align: middle;
    }

.prd-detail .field {
    overflow: hidden;
    clear: both;
    font-size: 17px;
    line-height: 24px;
    margin-bottom: 15px;
}

    .prd-detail .field .ti {
        float: left;
        width: 22%;
        color: #000;
    }

    .prd-detail .field .txt {
        float: right;
        width: 76%;
        margin-left: 2%;
    }

.prd-btns {
    margin-top: 20px;
}

    .prd-btns .btn-white, .prd-btns .btn-green {
        text-align: center;
        display: inline-block;
        padding: 10px 0;
        width: 150px;
    }

    .prd-btns .btn-green {
        border: 1px solid #fa9900;
    }

.detail-area {
    clear: both;
    margin-top: 10px;
    font-size: 15px;
    line-height: 25px;
    background: #fff;
    padding: 20px;
    box-shadow: 0 0 3px 0 rgba(0,0,0,.1);
}

.detail-ck {
    margin-top: 20px;
}

/* 商品圖 */
.swiper-slide {
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.swiper-container.mySwiper2 {
    width: 100%;
    height: 360px;
    margin-left: auto;
    margin-right: auto;
}

.swiper-slide {
    background-size: cover;
    background-position: center;
}

.mySwiper2 {
    height: 80%;
    width: 100%;
}

.mySwiper {
    height: 20%;
    box-sizing: border-box;
    padding: 10px 0;
}

    .mySwiper .swiper-slide {
        width: 25%;
        height: 100%;
        opacity: 0.4;
        margin-top: 10px;
    }

    .mySwiper .swiper-slide-thumb-active {
        opacity: 1;
    }

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* 反應價格popup */
.money-pop {
    background: #fff;
    border-radius: 5px;
    padding: 20px;
    width: 600px;
}

    .money-pop .xx {
        float: right;
        padding: 0 0.4em;
        font-size: 24px;
        color: #ccc;
    }


/* 搜尋(右欄) */
.search-panel1 {
    overflow: hidden;
}

    .search-panel1 .field1 {
        float: left;
        width: 65%;
    }

    .search-panel1 .field2 {
        float: left;
        width: 15%;
    }

    .search-panel1 .field3 {
        float: left;
        width: 20%;
    }

    .search-panel1 .input-gray {
        display: inline-block;
        width: 48%;
        margin: 0 1% 10px 0;
        padding: 11px;
    }

.btn-search {
    border: 1px solid #efe99c;
    color: var(--mainColor);
    font-size: 18px;
    background: -moz-linear-gradient(top, #ffffff 0%, #fffcce 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%,#fffcce 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffffff 0%,#fffcce 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fffcce',GradientType=0 ); /* IE6-9 */
}

    .btn-search:hover {
        background: #fffbb7;
    }

.search-panel1 .btn-search {
    display: block;
    text-align: center;
    padding: 15px 0;
    margin-right: 10px;
}

    .search-panel1 .btn-search img {
        display: block;
        margin: 5px auto;
    }

.search-panel1 .field3 .btn-white {
    font-size: 16px;
}
/* 搜尋(左欄) */
.search-panel2 {
}

    .search-panel2 .field1 {
        margin-bottom: 10px;
    }

    .search-panel2 .field2 {
        margin-bottom: 10px;
    }

    .search-panel2 .field3 .btn {
        width: 48%;
        margin: 0;
        padding: 10px 0;
        text-align: center;
    }

        .search-panel2 .field3 .btn:first-child {
            margin-right: 1%;
        }

        .search-panel2 .field3 .btn:last-child {
            margin-left: 1%;
        }

    .search-panel2 .btn-search img {
        margin-right: 5px;
    }

/* ---------- 會員專區 ---------- */
.tabs.formember ul li {
}

    .tabs.formember ul li a {
        padding: 0 26px;
    }

.repair-tag1 {
    display: inline-block;
    border-radius: 3px;
    border: 2px solid #ff2074;
    color: #ff2074;
    padding: 5px;
}

.repair-tag2 {
    display: inline-block;
    border-radius: 3px;
    border: 2px solid #0a94ff;
    color: #0a94ff;
    padding: 5px;
}
/*留言板*/
.comments {
    overflow: hidden;
    clear: both;
    padding-bottom: 10px;
}

    .comments .user {
        float: left;
        width: 48px;
        height: 48px;
        background: url(../images/icon-user.png) no-repeat center;
        background-size: 48px 48px;
    }

    .comments .right {
        float: right;
        width: calc( 100% - 60px);
    }

.popbox {
    clear: both;
    position: relative;
    width: 100%;
    height: 120px;
}

    .popbox .arrow {
        width: 10px;
        height: 10px;
        overflow: hidden;
        position: relative;
        float: left;
        top: 15px;
        right: -1px;
    }

        .popbox .arrow .outer {
            width: 0;
            height: 0;
            border-right: 10px solid #ccc;
            border-top: 5px solid transparent;
            border-bottom: 5px solid transparent;
            position: absolute;
            top: 0;
            left: 0;
        }

        .popbox .arrow .inner {
            width: 0;
            height: 0;
            border-right: 10px solid #ffffff;
            border-top: 5px solid transparent;
            border-bottom: 5px solid transparent;
            position: absolute;
            top: 0;
            left: 2px;
        }

    .popbox .message-body {
        float: left;
        width: calc( 100% - 40px);
        height: auto;
        border: 1px solid #CCC;
        background-color: #ffffff;
        padding: 6px 8px;
        border-radius: 3px;
    }

    .popbox textarea {
        border: none;
        font-size: 16px;
        line-height: 23px;
        width: 100%;
    }

.reply {
    width: 70%;
    background: #e9f4f2;
    padding: 10px 2%;
    margin-left: 26%;
}

/*會員專區輪播*/
.member-slide {
    width: 100%;
    height: 290px;
    margin-bottom: 20px !important;
}

    .member-slide .swiper-slide {
        overflow: hidden;
        clear: both;
    }

        .member-slide .swiper-slide .L {
            float: left;
            width: 450px;
            margin-right: 10px;
        }

        .member-slide .swiper-slide .R {
            float: right;
            width: 450px;
            margin-left: 10px;
        }

    .member-slide .swiper-pagination-bullet {
        background: #ccc !important;
        box-shadow: none !important;
    }

    .member-slide .swiper-pagination-bullet-active {
        background: var(--mainColor) !important;
    }

/* ---------- table ---------- */
.table-default {
    clear: both;
    width: 100%;
    margin: 10px 0;
    line-height: 22px;
}

    .table-default thead {
        font-weight: bolder;
        text-align: left;
        border-bottom: 1px solid #dfdfdf;
    }

        .table-default thead th {
            padding: 6px;
        }

    .table-default tbody tr {
        border-bottom: 1px solid #dfdfdf;
    }

        .table-default tbody tr:nth-child(odd) {
            background: #f9f9f9;
        }

        .table-default tbody tr:hover {
            background: #fffbee !important;
        }

        .table-default tbody tr.disable {
            background: #dfdfdf;
        }

            .table-default tbody tr.disable:hover {
                background: #dfdfdf !important;
            }

    .table-default tbody td {
        padding: 6px;
        vertical-align: middle;
    }

    .table-default .w05 {
        width: 5%;
    }

    .table-default .w1 {
        width: 10%;
    }

    .table-default .w15 {
        width: 15%;
    }

    .table-default .w2 {
        width: 20%;
    }

    .table-default .w25 {
        width: 25%;
    }

    .table-default .w3 {
        width: 30%;
    }

    .table-default .w35 {
        width: 35%;
    }

    .table-default .w4 {
        width: 40%;
    }

    .table-default .w5 {
        width: 50%;
    }

    .table-default .btn {
        padding: 5px 10px;
        font-size: 16px;
        margin-right: 5px;
    }

        .table-default .btn:last-child {
            margin-right: none;
        }

/* ---------- 操作說明 ----------*/
.QA-height {
    min-height: 400px;
}

.QA-wrap {
    border-bottom: 1px dashed #ddd;
    padding: 10px 0;
}

a.QA {
    display: block;
    font-size: 18px;
    line-height: 22px;
}

    a.QA .date {
        color: #999;
        font-size: 16px;
        float: right;
    }

.anwsers {
    display: none;
    background: #f3fbfa;
    color: #3e514e;
    padding: 20px;
    font-size: 16px;
    line-height: 24px;
    border-radius: 5px;
    margin: 10px 0 0 30px;
}

    .anwsers ol {
    }

        .anwsers ol li {
            margin-bottom: 10px;
        }

/* ---------- 相關連結 ----------*/
.forlinks a.field {
    display: inline-block;
    width: 48%;
    height: 100px;
    line-height: 70px;
    border: 1px solid #ddd;
    padding: 10px;
    margin: 0 10px 10px 0;
    vertical-align: middle;
}

.forlinks .field img {
    display: inline-block;
    width: 80px !important;
    vertical-align: middle;
}

.forlinks .field p {
    display: inline-block;
    width: calc( 100% - 100px );
    line-height: normal;
    margin-left: 10px;
    vertical-align: middle;
}

.forlinks a.field:hover {
    border: 1px solid #119581;
}

/* ---------- 聯絡我們 ----------*/
.contact-info .field {
    display: inline-block;
    width: 49%;
    margin-bottom: 10px;
    vertical-align: top;
}

    .contact-info .field .txt-g {
        display: inline-block;
        width: 28%;
        vertical-align: top;
    }

        .contact-info .field .txt-g img {
            vertical-align: middle;
            margin-right: 5px;
        }

    .contact-info .field .txt {
        display: inline-block;
        width: 70%;
        vertical-align: top;
    }

/* ---------- 產品代尋 ----------*/
#uploadFile {
    width: 300px;
    color: #666;
    border: none;
    background: none;
    font-size: 16px;
    padding: 6px 10px;
    border: 1px solid #ddd;
    background: #eee;
    border-radius: 0;
    vertical-align: middle;
}

.fileUpload {
    display: inline-block;
    position: relative;
    padding: 3px 15px;
    vertical-align: middle;
}

    .fileUpload input.upload {
        position: absolute;
        top: 0;
        right: 0;
        margin: 0;
        padding: 0;
        cursor: pointer;
        opacity: 0;
        filter: alpha(opacity=0);
    }

/* ---------- 會員註冊/登入 ----------*/
.login-bpx {
    width: 400px;
    margin: 20px auto;
    padding: 40px;
}

.reg-box {
    padding: 40px 60px;
    margin: 20px auto;
}

.reg-tabcontent {
    margin-top: 40px;
    display: none;
}

.half-wrap {
    width: 100%;
    clear: both;
}

    .half-wrap .left-field {
        display: inline-block;
        width: 48%;
        margin-right: 1%;
        vertical-align: top;
    }

    .half-wrap .right-field {
        display: inline-block;
        width: 48%;
        margin-left: 1%;
        vertical-align: top;
    }

.form-default.forhalf .label {
    width: 140px;
    margin-right: 0;
}

.form-default.forhalf .txt {
    width: calc( 100% - 150px)
}

#tab-company:checked ~ #company, #tab-personal:checked ~ #personal {
    display: block !important;
}

input[type="radio"].tabradio {
    display: none;
}

    input[type="radio"].tabradio + label:before {
        content: '';
        display: inline-block;
        width: 16px;
        height: 16px;
        background: url(../images/radio-img.png) no-repeat center;
        background-size: 16px 16px;
        margin-right: 0.5em;
        cursor: pointer;
    }

    input[type="radio"].tabradio:checked + label:before {
        background: url(../images/radio-img-ch.png) no-repeat center;
        background-size: 16px 16px;
        margin-right: 0.5em;
    }

/* ---------- 購物車 ----------*/
.step-title {
    width: 100%;
    background: #fff;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.1);
}

    .step-title div {
        display: inline-block;
        width: 33%;
        padding: 15px 0;
        text-align: center;
        color: #d5d5d5;
        border-bottom: 2px solid #fff;
        font-size: 20px;
    }

    .step-title i {
        display: inline-block;
        width: 40px;
        padding: 10px;
        border-radius: 50%;
        background: #d2d2d2;
        color: #fff;
        margin-right: 10px;
    }

    .step-title div.active {
        color: var(--mainColor);
        border-bottom: 2px solid var(--mainColor);
    }

        .step-title div.active i {
            background: var(--mainColor);
        }

.table-default.forcheckout {
}

    .table-default.forcheckout thead {
        font-weight: normal;
        text-align: left;
        border-bottom: 1px solid #ddd;
        border-top: 1px solid #ddd;
        background: #f6f6f6;
    }

    .table-default.forcheckout tbody tr:nth-child(odd) {
        background: #fff;
    }

    .table-default.forcheckout tbody td {
        padding: 10px 6px;
    }

div.check-img {
}

    div.check-img .left {
        float: left;
        width: 14%;
        margin-right: 4%;
    }

        div.check-img .left img.check-img {
            max-width: 100% !important;
            height: auto !important;
            _width: expression(this.width > 100 ? "100%" : this.width) !important;
            border: 1px solid #ddd;
        }

    div.check-img .right {
        float: right;
        width: 82%;
        color: #000;
    }

.btn-del {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../images/icon-del.png) no-repeat center;
    background-size: 19px 19px;
    vertical-align: middle;
}

    .btn-del:hover {
        opacity: 0.7;
    }

.act-txt {
    margin-top: 10px;
    color: #666;
}

.row2-wrap {
    overflow: hidden;
    clear: both;
    margin: 15px 0;
}

    .row2-wrap .left {
        float: left;
        width: 50%;
    }

    .row2-wrap .right {
        float: right;
        width: 50%;
        text-align: right;
    }

.cost-wrap {
    float: right;
    width: 400px;
}

    .cost-wrap .field {
        margin-bottom: 10px;
        color: #333;
    }

    .cost-wrap .item {
        display: inline-block;
        width: 58%;
        text-align: left;
        vertical-align: middle;
    }

    .cost-wrap .cost {
        display: inline-block;
        width: 40%;
        vertical-align: middle;
        font-weight: bolder;
        text-align: right;
    }

.payment {
}

.form-default.small {
    width: 80%;
}

    .form-default.small .label {
        width: 18%;
    }

    .form-default.small .txt {
        width: 80%;
    }

/* 出貨條款 */
.rule-pop {
    background: #fff;
    border-radius: 5px;
    max-width: 760px;
}

    .rule-pop .inn {
        padding: 50px;
    }

    .rule-pop h1 {
        font-size: 24px;
        color: var(--mainColor);
        text-align: center;
        margin-bottom: 30px;
    }

    .rule-pop ul {
        color: #818181;
        padding-left: 20px;
    }

        .rule-pop ul li {
            list-style: disc;
            color: #666;
            line-height: 24px;
        }

    .rule-pop .xx {
        float: right;
        padding: 0 0.4em;
        margin-top: 10px;
        font-size: 20px;
        color: #ccc;
    }

/*缺貨提醒*/
#stock-warning {
    position: fixed;
    top: 40%;
    left: 50%;
    margin-left: -160px;
    background: rgba(0,0,0,.9);
    color: #fff;
    border-radius: 5px;
    padding: 30px 20px;
    width: 320px;
    text-align: center;
    line-height: 24px;
    -moz-animation: hidethis .3s ease-in 4s forwards;
    -webkit-animation: hidethis .3s ease-in 4s forwards;
    -o-animation: hidethis .3s ease-in 4s forwards;
    animation: hidethis .3s ease-in 4s forwards; /* -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards;*/
}

@keyframes hidethis {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-webkit-keyframes hidethis {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/* ---------- 問號提示 ----------*/
.ps-area {
    display: inline-block;
    vertical-align: text-top;
    position: relative;
}

    .ps-area .ps-btn {
        display: inline-block;
        margin-left: 5px;
        font-size: 13px;
        padding: 0 6px;
        line-height: 20px;
        vertical-align: middle;
        background: var(--mainColor);
        color: #fff;
        border-radius: 50%;
        cursor: pointer;
    }

    .ps-area .ps-box {
        display: none;
        background: rgba(0,0,0,.8);
        color: #fff;
        border-radius: 5px;
        padding: 10px;
        width: 320px;
        position: absolute;
        top: 30px;
        left: 0;
        z-index: 99;
    }

        .ps-area .ps-box h3 {
            font-size: 18px;
            color: #fff;
        }

            .ps-area .ps-box h3:before {
                content: '‧';
                color: #fff;
            }

        .ps-area .ps-box p {
            color: #CCC;
        }

/* ---------- 完成畫面 ----------*/
.check-circle {
    border: 2px solid #00a0e9;
    text-align: center;
    width: 45px;
    padding-top: 15px;
    height: 45px;
    border-radius: 50%;
    margin: 10px auto;
}

    .check-circle .check {
        stroke-dasharray: 130px 130px;
        stroke-dashoffset: 130px;
        -webkit-transition: stroke-dashoffset 4.1s linear 0s;
        transition: stroke-dashoffset 500ms ease-in-out;
    }

.success-box {
    text-align: center;
}

    .success-box .check-circle {
        display: inline-block;
        vertical-align: middle;
    }

    .success-box .txt {
        display: inline-block;
        vertical-align: middle;
        margin-left: 10px;
    }

/* ---------- 發燒活動 ---------- */
.banner.foract {
    height: auto;
}

.act-prd {
    overflow: hidden;
    background: #fff;
    padding: 20px;
    border: 1px solid #ddd;
}

    .act-prd .left {
        float: left;
        width: 300px;
    }

        .act-prd .left img {
            border: 1px solid #ddd;
            width: 300px;
        }

    .act-prd .right {
        float: right;
        width: calc( 100% - 340px );
        line-height: 26px;
    }

    .act-prd h3.ti {
        font-weight: bolder;
        color: #333;
        font-size: 18px;
        line-height: 28px;
        margin-bottom: 10px;
    }

    .act-prd .detail {
        border-top: 1px solid #ddd;
        padding-top: 20px;
        margin-top: 20px;
    }

        .act-prd .detail .txt {
            width: 100%;
            margin-left: 0;
            position: relative;
        }

#countdown {
    margin-bottom: 10px;
    font-size: 20px;
    text-align: center;
    line-height: 25px;
    background: #f8ffca;
    padding: 5px 10px;
}

    #countdown span {
        vertical-align: middle;
    }

    #countdown .area {
        padding: 0 8px;
        background: #f76a00;
        color: #fff;
        border-radius: 5px;
    }

/* 浮動icon */
.floating_icon {
    font-family: "Lucida Grande","Helvetica","Arial","微軟正黑體修正","微軟正黑體",sans-serif;
    line-height: 1;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    position: fixed;
    z-index: 250;
    bottom:30px;
    right:30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    animation-name: bounce_in_animation;
    animation-duration: 250ms;
}
