.qty-box
{
    position:relative;
    display:inline-block;
    width:100px;
    max-width:none;
    padding:0 29px;
    box-sizing:border-box
}

.qty-box .form-control
{
    position:relative;
    text-align:center;
    height:30px;
    line-height:28px;
    color:#777;
    background:#fff;
    border:1px solid #ddd;
    margin:0;
    padding:0 5px;
    z-index:1;
    border-radius:0
}

.qty-box .form-control:focus
{
    border-color:#f2951d
}

.qty-box .btn
{
    width:30px;
    height:30px;
    line-height:28px;
    font-size:19px;
    color:#666;
    border:1px solid #ddd;
    position:absolute!important;
    z-index:0;
    top:0
}

.qty-box .btn:hover
{
    border-color:#f2951d;
    background:#eee;
    z-index:2
}

.qty-box .less
{
    left:0
}

.qty-box .add
{
    right:0
}

.align-left.info
{
    width:250px
}

.table-h td
{
    padding:12px 6px;
    line-height:1.4;
    text-align:center;
    min-width:76px
}

.table-h .btn-holder
{
    min-width:30px
}

.table-h thead th
{
    color:#777;
    background:#eee;
    padding:12px
}

.table-h tbody tr
{
    border-bottom:1px dashed #bbb
}

.table-h .align-left
{
    text-align:left
}

.table-h a
{
    display:inline-block;
    vertical-align:middle
}

.table td span
{
    color:#EC4724
}

.table-v
{
    border:solid #ddd;
    border-width:1px 0
}

.table-v tr:first-child
{
    background:#FAFAFA
}

.table-v tr:nth-child(2n)
{
    background:#EDFAFA
}

.table-v th,.table-v td
{
    padding:10px 35px;
    vertical-align:middle
}

.table-v th
{
    text-align:left;
    width:100px;
    border-right:1px solid #ccc
}

.table-v strong
{
    color:#197292
}

.form-title
{
    display:block;
    margin-top:5px;
    font-family:'Roboto Condensed';
    font-size:45px;
    color:#003F86;
    text-align:center
}

.shopping-title
{
    background:url(../../images/common/videos/title_bg.png);
    color:#fff;
    font-family:'Lato','微軟正黑體','文泉驛正黑','WenQuanYi Zen Hei','儷黑 Pro','LiHei Pro','Microsoft JhengHei','微软雅黑','メイリオ','맑은 고딕',sans-serif;
    font-size:20px;
    font-weight:400;
    line-height:1.3;
    padding:8px 16px 8px 36px;
    position:relative;
    margin:0 0 35px
}

.shopping-title:before
{
    content:'';
    display:inline-block;
    width:8px;
    height:8px;
    background:#fff;
    position:absolute;
    left:15px;
    top:17px;
    -moz-transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
    -o-transform:rotate(45deg);
    -ms-transform:rotate(45deg);
    transform:rotate(45deg)
}

.shopping-step
{
    background:#eee;
    text-align:center;
    border-radius:14px;
    margin-bottom:40px;
    font-size:18px;
    color:#999
}

.shopping-step li
{
    position:relative;
    padding:10px 40px
}

.shopping-step li+li:before
{
    content:"";
    background:url(../../images/common/cart/step_arrow.png) 0 50% no-repeat;
    display:inline-block;
    vertical-align:middle;
    width:45px;
    height:90px;
    position:absolute;
    left:-30px;
    top:50%;
    margin-top:-45px
}

.shopping-step li.current
{
    color:#197292
}

.shopping-step li,.shopping-step li > *
{
    display:inline-block;
    vertical-align:middle
}

.shopping-step li .num
{
    background:#fff;
    width:30px;
    height:30px;
    line-height:30px;
    color:#bbb;
    font-family:'Lato',sans-serif;
    font-weight:900;
    border-radius:15px
}

.shopping-step li.current .num
{
    color:#197292
}

.shopping-step li .icon
{
    background-image:url(../../images/common/cart/step_ic.png);
    width:35px;
    height:35px;
    margin:0 10px
}

.shopping-step li.step1 .icon
{
    background-position:0 0
}

.shopping-step li.step2 .icon
{
    background-position:50% 0
}

.shopping-step li.step3 .icon
{
    background-position:100% 0
}

.shopping-step li.step1.current .icon
{
    background-position:0 100%
}

.shopping-step li.step2.current .icon
{
    background-position:50% 100%
}

.shopping-step li.step3.current .icon
{
    background-position:100% 100%
}

.delivery-list
{
    border:solid #bbb;
    border-width:1px 0;
    margin-bottom:30px
}

.delivery-list .item
{
    overflow:hidden
}

.delivery-list .item + .item
{
    border-top:1px dashed #bbb
}

.delivery-list .form-group
{
    display:table;
    width:100%
}

.delivery-list .delivery-radio
{
    display:table-cell;
    vertical-align:middle;
    width:30%;
    background:#F7F7F7;
    color:#1A7292;
    font-size:15px;
    font-weight:700;
    padding:15px 10px 15px 50px;
    position:relative;
    box-sizing:border-box
}

.delivery-list .delivery-radio:before
{
    position:absolute;
    top:50%;
    left:15px;
    margin:-8px 0 0
}

.delivery-list .delivery-radio input
{
    position:absolute;
    top:50%;
    left:50%;
    margin:-6px 0 0 -6px
}

.delivery-list .txt
{
    display:table-cell;
    vertical-align:middle;
    padding:15px
}

.delivery-list .txt b
{
    color:#F2856C;
    text-decoration:underline
}

.no-item
{
    padding:20px 0 40px;
    text-align:center;
    border-bottom:1px solid #eee;
    margin:0
}

.cart-table .indent
{
    border-top:hidden
}

.cart-table .indent td
{
    padding-top:0
}

.cart-table .pd-id
{
    color:#666;
    font-size:13px
}

.cart-table .pd-name
{
    color:#004088;
    font-size:15px
}

.cart-table .plus-tag
{
    display:inline-block;
    color:#FF2626;
    margin-top:4px
}

.cart-table a:hover .pd-name
{
    text-decoration:underline
}

.cart-table .img
{
    width:80px
}

.cart-table a.pic
{
    position:relative;
    overflow:hidden
}

.cart-table .indent .img .pic
{
    position:relative;
    left:30px
}

.cart-table .indent .info
{
    padding-left:35px
}

.cart-table .ibtn.delete
{
    text-indent:0;
    transition:all .3s ease
}

.cart-table .ibtn.delete:hover
{
    color:red
}

.cart-table .tag
{
    background:#FF2626;
    color:#fff;
    font-size:13px;
    display:inline-block;
    vertical-align:text-bottom;
    padding:2px 6px;
    border-radius:4px;
    margin-right:6px
}

.sum-box
{
    padding-top:2px
}

.sum-table tr
{
    background:#FDEBE8;
    color:#555
}

.sum-table tr+tr
{
    border-top:1px solid #fff
}

.sum-table td
{
    text-align:right;
    padding:12px 30px
}

.sum-table td:last-child
{
    width:15%
}

.sum-table tr:last-child td
{
    color:#2D7791
}

.sum-table tr:last-child td:last-child
{
    font-size:16px;
    font-weight:700
}

.sum-table td .form-control
{
    display:inline-block;
    width:auto;
    margin:0
}

.payment-box
{
    background:#eee;
    border:1px solid #DCDCDC;
    border-width:1px 0;
    overflow:hidden;
    font-size:15px;
    margin-top:2px;
    padding:5px 0
}

.payment-box .shopping-title
{
    float:left;
    margin:10px 15px
}

.payment
{
    float:right;
    margin:10px 15px 0;
    text-align:right
}

.payment label,.invoice-info label
{
    display:inline-block;
    text-align:center;
    background:#fff;
    line-height:1.5;
    padding:5px 15px;
    margin:0 5px 10px;
    min-width:148px;
    border-radius:15px;
    box-sizing:border-box
}

.payment label.checked,.invoice-info label.checked
{
    color:#fff;
    background:#2D7791
}

.plus-content
{
    border:5px solid #E8E8E8
}

.plus-txt
{
    background:#F6F6F6;
    text-align:center;
    color:#2C7791;
    font-size:18px;
    padding:15px
}

.plus-txt b
{
    color:#EB4624
}

.plus-list-box
{
    padding:30px 30px 0
}

.plus-list
{
    margin:0 -10px
}

.plus-list .item
{
    width:20%;
    padding:0 10px
}

.plus-list .item:nth-child(5n+1)
{
    clear:left
}

.plus-list .box
{
    max-width:270px;
    margin:0 auto 40px
}

.plus-list .pic-box
{
    position:relative;
    overflow:hidden
}

.plus-list .pic
{
    display:block;
    position:relative;
    overflow:hidden
}

.plus-list .pic:before
{
    content:"";
    background:url(../../images/common/products/hover.png) 50% 60% no-repeat rgba(251,207,199,0.80);
    display:block;
    position:absolute;
    z-index:1;
    top:0;
    bottom:0;
    left:0;
    right:0;
    opacity:0;
    transition:all .3s
}

.plus-list .box:hover .pic:before
{
    background-position:50% 50%;
    opacity:1
}

.plus-list .name
{
    color:#666;
    font-size:15px;
    font-weight:700;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    height:27px
}

.plus-list .box:hover .name
{
    color:#1B7292
}

.plus-list .btn-group
{
    overflow:hidden
}

.plus-list .txt
{
    text-align:center;
    font-size:13px;
    margin-bottom:8px
}

.plus-list .member-price
{
    text-decoration:line-through;
    height:23px
}

.plus-list .price
{
    color:#F2856C;
    height:36px
}

.plus-list .price b
{
    font-size:20px
}

.plus-list .pd-info
{
    margin:12px 0 6px
}

.plus-list .pd-info select.form-control
{
    max-width:none;
    border-radius:0
}

.plus-list .qty-box
{
    float:left
}

.plus-list .btn.addcart
{
    height:30px;
    background:#1B7292;
    border:1px solid #1B7292;
    color:#fff;
    font-size:16px;
    font-weight:700;
    line-height:30px;
    width:calc(100% - 110px);
    float:right
}

.plus-list .btn.addcart:hover
{
    background:#DEE834;
    color:#1B7292
}

.plus-list .btn.addcart .icon
{
    width:20px;
    height:20px;
    margin:0 6px 5px 0;
    background-position:-80px -87px
}

.plus-list .btn.addcart:hover .icon
{
    background-position:-80px -107px
}

.shopping-form
{
    padding-top:70px;
    margin:0 -34px
}

.shopping-form .shopping-title
{
    position:absolute;
    top:-45px;
    left:0;
    right:0
}

.shopping-form .row
{
    display:table;
    width:100%;
    table-layout:fixed;
    border-spacing:34px 0
}

.shopping-form .row:after
{
    display:none
}

.shopping-form .col
{
    display:table-cell;
    vertical-align:top;
    width:50%;
    position:relative;
    background:#F4F4F4;
    border:3px solid #ddd;
    border-radius:12px
}

.shopping-form .tips
{
    min-height:0
}

.shopping-form .btn.select-store
{
    border:1px solid #ddd;
    width:145px;
    height:30px;
    line-height:28px;
    color:#999;
    font-size:15px;
    border-radius:5px;
    background:#fff
}

.shopping-form .btn.select-store:hover
{
    background:#2D7791;
    color:#fff
}

.shopping-form .btn.select-unable
{
    color:#2D7791;
    text-decoration:underline;
    vertical-align:baseline
}

.shopping-form .btn.select-unable:hover
{
    color:#F3856D;
    text-decoration:none
}

.shopping-form .same-check
{
    padding:30px 30px 0
}

.shopping-form .same-check label
{
    display:block;
    background:#2D7791;
    text-align:center;
    color:#fff;
    font-size:15px;
    font-weight:700;
    padding:4px 10px
}

.invoice-info-box
{
    border:3px solid #DDD;
    text-align:center
}

.invoice-info
{
    background:#eee;
    padding:15px 15px 5px
}

.invoice-form .form-box
{
    padding:25px 15px 0
}

.invoice-form .row
{
    margin:0 -8px
}

.invoice-form .col
{
    padding:0 8px
}

.invoice-form .control-label
{
    display:none
}

.invoice-txt
{
    padding:25px 15px
}

.invoice-txt span
{
    color:#E55957
}

.invoice-txt a
{
    color:#2C7791
}

.invoice-txt a:hover
{
    text-decoration:underline
}

.alert-notice-editor
{
    background:#F8F8F8;
    max-width:1000px;
    margin:3.6em auto 1.8em;
    padding:3% 20px 4%;
    box-sizing:border-box
}

.success-box .order-id
{
    background:#1B7292;
    font-size:15px;
    font-weight:700;
    border-radius:8px;
    line-height:1.5;
    padding:8px 16px;
    color:#fff;
    font-size:15px;
    font-weight:bold;
    max-width:570px;
    margin:1.6em auto
}

@media screen and (max-width: 1200px) {
    .plus-list .item
    {
        width:25%
    }
    
    .plus-list .item:nth-child(5n+1)
    {
        clear:none
    }
    
    .plus-list .item:nth-child(4n+1)
    {
        clear:left
    }
}

@media screen and (max-width: 1000px) {
    .plus-list .item
    {
        width:33.33%
    }
    
    .plus-list .item:nth-child(4n+1)
    {
        clear:none
    }
    
    .plus-list .item:nth-child(3n+1)
    {
        clear:left
    }
    
    .shopping-step li
    {
        padding:10px 25px
    }
    
    .shopping-form,.shopping-form .row,.shopping-form .col
    {
        display:block;
        width:auto;
        margin:0;
        padding:0;
        border:0;
        background:none
    }
    
    .shopping-form .col + .col
    {
        margin-top:1.8em
    }
    
    .shopping-form .shopping-title
    {
        position:static
    }
    
    .shopping-form .form-box
    {
        max-width:none;
        background:#F4F4F4;
        border:3px solid #ddd;
        border-radius:12px
    }
    
    .shopping-form .same-check
    {
        padding:0 0 10px
    }
}

@media screen and (max-width: 767px) {
    .table-h
    {
        border-top:1px dashed #bbb
    }
    
    .table-h thead
    {
        display:none
    }
    
    .table-h tr,.table-h td
    {
        display:block;
        text-align:left
    }
    
    .table-h td+td
    {
        border-left:0
    }
    
    .table-h td[data-title]:before
    {
        content:attr(data-title);
        display:inline-block;
        color:#aaa;
        font-size:13px
    }
    
    .table-h tr
    {
        padding:10px 0;
        position:relative
    }
    
    .table-h td
    {
        padding:0;
        line-height:2
    }
    
    .table-h td a
    {
        display:inline-block;
        line-height:1.5
    }
    
    .table-v th,.table-v td
    {
        padding:8px 12px
    }
    
    .table-v th
    {
        width:90px
    }
    
    .align-left.info
    {
        width:inherit;
        padding-right:40px;
        box-sizing:border-box
    }
    
    .shopping-step li
    {
        font-size:15px
    }
    
    .shopping-step li .num
    {
        width:22px;
        height:22px;
        line-height:22px
    }
    
    .shopping-step li .icon
    {
        width:30px;
        height:30px;
        background-size:90px auto;
        margin:0 4px
    }
    
    .delivery-list .form-group,.delivery-list .delivery-radio,.delivery-list .txt
    {
        display:block
    }
    
    .delivery-list .delivery-radio
    {
        width:auto
    }
    
    .delivery-list .txt
    {
        border-width:1px 0 0
    }
    
    .cart-table tbody tr
    {
        padding-left:94px
    }
    
    .cart-table .img
    {
        position:absolute;
        left:0;
        top:10px
    }
    
    .cart-table .indent .img .pic
    {
        left:0
    }
    
    .cart-table .indent .info
    {
        padding-left:0
    }
    
    .cart-table td .ibtn.delete
    {
        position:absolute;
        right:0;
        top:9px
    }
    
    .sum-table tr
    {
        padding:10px 15px
    }
    
    .sum-table td,.cart-table .indent .info
    {
        padding:0
    }
    
    .sum-table td:first-child
    {
        float:left;
        text-align:left
    }
    
    .sum-table td:last-child
    {
        width:auto
    }
    
    .plus-list-box
    {
        padding:25px 20px 0
    }
    
    .plus-list
    {
        margin:0 -7px
    }
    
    .plus-list .item
    {
        padding:0 7px;
        width:50%
    }
    
    .plus-list .item:nth-child(3n+1)
    {
        clear:none
    }
    
    .plus-list .item:nth-child(2n+1)
    {
        clear:left
    }
    
    .plus-list .box
    {
        margin-bottom:30px
    }
}

@media screen and (max-width: 630px) {
    .shopping-step li
    {
        display:block
    }
    
    .shopping-step li+li:before
    {
        width:12px;
        height:24px;
        background-size:contain;
        top:0;
        left:50%;
        margin:-12px 0 0 -6px;
        transform:rotate(90deg)
    }
    
    .shopping-step li .num
    {
        margin-right:5px
    }
}

@media screen and (max-width: 400px) {
    .payment-box .shopping-title,.payment
    {
        float:none
    }
    
    .payment label,.invoice-info label
    {
        display:block;
        margin:0 0 10px
    }
    
    .plus-list .item
    {
        width:100%
    }
}