/*↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 綠界提供 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓   */
.apple-pay-button {
    display: inline-block;
    background-size: 100% 60%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    border-radius: 5px;
    padding: 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 200px;
    min-height: 32px;
    max-height: 64px;
}

.apple-pay-button-black {
    background-image: -webkit-named-image(apple-pay-logo-white);
    background-color: black;
}

.apple-pay-button-white {
    background-image: -webkit-named-image(apple-pay-logo-black);
    background-color: white;
}

.apple-pay-button-white-with-line {
    background-image: -webkit-named-image(apple-pay-logo-black);
    background-color: white;
    border: .5px solid black;
}
/*↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ 綠界提供 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑*/
.shopping-step {
    text-align: center;
    margin: 0 -45px 50px;
}

.shopping-step li {
    position: relative;
    padding: 0 5px;
    color: #999;
    font-family: 'Inder', '文泉驛正黑', 'WenQuanYi Zen Hei', '儷黑 Pro', 'LiHei Pro', '微軟正黑體', 'Microsoft JhengHei', '微软雅黑', 'メイリオ', '맑은 고딕', sans-serif;
    font-size: 16px;
    padding: 3px 45px;
}

.shopping-step li + li:before {
    content: '\f105\f105';
    color: #2a3070;
    font-family: 'icon-font' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.2em;
    position: absolute;
    left: -6px;
    top: 50%;
    margin-top: -10px;
}

.shopping-step li.current {
    color: #1d96de;
}

.shopping-step li .num,
.shopping-step li .txt {
    display: inline-block;
    vertical-align: middle;
}

.shopping-step li .num {
    color: #fff;
    font-family: Lucida Bright, Georgia, serif;
    font-size: 25px;
    font-weight: 500;
    background: #aaa;
    width: 50px;
    height: 50px;
    line-height: 50px;
    border-radius: 50%;
    margin-right: 4px;
}

.shopping-step li.current .num {
    background: #1d96de;
}

.delivery-list {
    border: 1px solid #ddd;
    border-width: 1px 0;
    margin-bottom: 30px;
}

.delivery-list .item {
    /* overflow: hidden; */
    padding: 2px 0;
}

.delivery-list .item + .item {
    border-top: 1px solid #ddd;
}

.delivery-list .form-group {
    display: table;
    width: 100%;
}

.delivery-list .delivery-radio {
    display: table-cell;
    vertical-align: middle;
    width: 28%;
    border: 1px dashed #ccc;
    border-width: 0 1px 0 0;
    color: #1b4eab;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.4;
    padding: 8px 10px 8px 40px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.delivery-list .delivery-radio.checked {
    color: #28bdb3;
}

.delivery-list .delivery-radio:before {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 15px;
    margin: -8px 0 0;
}

.delivery-list .txt {
    display: table-cell;
    vertical-align: middle;
    padding: 12px 15px;
    font-size: 14px;
    line-height: 1.5;
}

.delivery-list .txt b {
    color: #28bdb3;
}

.no-item {
    padding: 20px 0 40px;
    text-align: center;
    border-bottom: 1px solid #ddd;
    margin: 0;
}

.cart-table .pd-id {
    display: inline-block;
    color: #888;
    font-size: 13px;
    margin: 6px 0;
}

.cart-table .pd-name {
    color: #01215D;
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
}

.cart-table a:hover .pd-name {
    text-decoration: underline;
    color: #056cc0;
}

.cart-table .img {
    width: 80px;
    padding-left: 12px;
    border-right: 0 hidden;
}

.cart-table a.pic {
    position: relative;
    overflow: hidden;
}

.cart-table a.pic:before {
    content: ' ';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(194, 164, 69, 0.60);
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.cart-table a.pic:hover:before {
    opacity: 1;
}

.cart-table .btn.delete {
    color: #444;
    width: 30px;
    height: 30px;
    font-size: 20px;
}

.cart-table .btn.delete:hover {
    color: #28bdb3;
}

.cart-table .btn.delete .ic {
    vertical-align: middle;
}

.cart-table .indent {
    border-top: hidden;
}

.cart-table .indent td {
    padding-top: 0;
}

.cart-table .indent .img .pic {
    position: relative;
    left: 30px;
}

.cart-table .indent .info {
    padding-left: 35px;
}

.cart-table .tag {
    background: #28bdb3;
    color: #fff;
    font-size: 13px;
    display: inline-block;
    vertical-align: text-bottom;
    padding: 2px 6px;
    border-radius: 4px;
    margin-right: 6px;
}

.cart-table .plus-tag {
    display: inline-block;
    color: #28bdb3;
}

.cart-table tfoot {
    background: none;
    color: #444;
    font-size: 13px;
}

.cart-table tfoot tr {
    background: #fff;
}

.cart-table tfoot td {
    text-align: right;
    padding: 10px 30px;
}

.cart-table tfoot td:last-child {
    width: 20%;
}

.cart-table tfoot tr:last-child td {
	color: #28bdb3;
    font-size: 15px;
    letter-spacing: 0.04em;
}

.cart-table tfoot tr:last-child td .ic {
    font-size: 20px;
    vertical-align: middle;
    margin: 0 6px 3px 0;
}

.cart-table tfoot tr:last-child td:last-child {
    font-weight: bold;
}

.cart-table tfoot td .form-control {
    display: inline-block;
    width: auto;
    margin: 0;
}

.payment-box {
    clear: both;
    border-bottom: 1px solid #ddd;
    padding: 20px 0;
}

.payment-box .shopping-title {
    float: left;
    margin: 5px 10px 5px 0;
}

.payment {
    float: left;
    margin: 5px 0 0;
}

.payment label,
.invoice-info label {
    display: inline-block;
    text-align: center;
    font-size: 13px;
    line-height: 1.5;
    padding: 6px 16px;
    margin: 0 0 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 6px;
}

.payment label.checked,
.invoice-info label.checked {
    color: #28bdb3;
    font-weight: bold;
}

.plus-box {
    margin-top: 40px;
}

.plus-list-box {}

.plus-txt {
    font-size: 16px;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 10px;
}

.plus-txt b {
    color: #28bdb3;
    text-decoration: underline;
}

.plus-list {
    margin: 0 -18px;
}

.plus-list .item {
    width: 25%;
    padding: 0 18px;
}

.plus-list .item:nth-child(4n+1) {
    clear: left;
}

.plus-list .box {
    max-width: 330px;
    margin: 0 auto 60px;
    position: relative;
}

.plus-list .pic-box {
    position: relative;
    overflow: hidden;
}

.plus-list .pic {
    display: block;
    position: relative;
    overflow: hidden;
}

.plus-list .pic:before {
    content: '';
    display: block;
    background: url('../../images/common/products/hover.png') 50% 50% no-repeat  rgba(36, 153, 223, 0.60);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.plus-list .box:hover .pic:before {
    opacity: 1;
}

.plus-list .txt {
    position: relative;
    padding-top: 6px;
}

.plus-list .offers {
    color: #BD1300;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 0.1em;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 44px;
}

.plus-list .name {
    color: #111;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 30px;
}

.plus-list .pd-info {
    padding: 10px 0 0;
}

.plus-list .pd-info select.form-control {
    margin: 0;
}

.plus-list .qty-box,
.plus-list .btn.addcart {
    margin-top: 8px;
    display: inline-block;
    vertical-align: middle;
}

.plus-list .qty-box {
    margin-right: 6px;
}

.plus-list .btn.addcart {
    background: #931815;
    color: #fff;
    font-family: 'Inder', sans-serif;
    font-size: 13px;
    letter-spacing: 0.1em;
    padding: 0 10px;
    line-height: 30px;
    border-radius: 3px;
}

.plus-list .btn.addcart:hover {
    background: #CB211D;
}

.plus-list .btn.addcart .ic {
    vertical-align: text-bottom;
    font-size: 1.2em;
}

.shopping-form {
    margin: 1.7em 0 0;
    overflow: hidden;
}

.shopping-form .row {
    margin: 0 -2%;
}

.shopping-form .col {
    float: left;
    width: 50%;
    padding: 0 2%;
}

.shopping-form .reminder {
    display: inline-block;
    vertical-align: middle;
    background: none;
    padding: 5px 10px;
}

.shopping-form .form-box {
    padding: 0;
}

.shopping-form .btn.select-store {
    width: 145px;
    height: 30px;
    line-height: 28px;
    color: #444;
    padding: 0 10px;
    border: 1px solid #ccc;
    background: #fff;
    margin-bottom: 6px;
}

.shopping-form .btn.select-store:hover {
    background: #28bdb3;
    color: #fff;
}

.shopping-form .btn.select-unable {
    color: #28bdb3;
    text-decoration: underline;
    vertical-align: baseline;
}

.shopping-form .btn.select-unable:hover {
    color: #056cc0;
}

.same-check {
    display: inline-block;
    vertical-align: middle;
    padding: 5px 10px;
}

.same-check label {
    display: inline-block;
}

.invoice-info-box {
    border: 1px solid #ddd;
    border-width: 1px 0;
    padding: 20px 0;
}

.invoice-info-box .shopping-title {
    float: left;
    margin: 5px 10px 5px 0;
}

.invoice-info {
    float: left;
    margin: 5px 0 0;
}

.invoice-form {
    clear: both;
    overflow: hidden;
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
}

.invoice-form .form-box {
    max-width: 700px;
    margin: 0;
    padding: 0;
}

.invoice-form .control-label {
    display: none;
}

.invoice-form .control-box {
    margin: 0;
}

.invoice-txt {
    padding: 10px 0;
}

.invoice-txt span {
    color: #d22c00;
}

.invoice-txt a {
    color: #1d96de;
    text-decoration: underline;
}

.invoice-txt a:hover {
    text-decoration: none;
}

.alert-fancybox .fancybox-skin {
    padding-top: 4px !important;
}

.alert-notice-editor {
    background: #fff;
    max-width: 1000px;
    margin: 2.4em auto 1.8em;
    padding: 3% 20px 4%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.success-box .success-msg2 {
    color: #045497;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 15px;
}

.success-box .success-msg2 span {
    color: #A41A17;
}

.success-box .order-id {
    margin: 1.7em auto;
    max-width: 360px;
}

.shopping-notice .form-box {
    padding: 10px 0 15px;
    margin: 0 auto;
    font-size: 16px;
    border-bottom: 1px solid #ddd;
}

@media screen and (max-width: 1600px) {
    .plus-list {
        margin: 0 -7px;
    }
    .plus-list .item {
        padding: 0 7px;
        width: 33.33%;
    }
    .plus-list .item:nth-child(4n+1) {
        clear: none;
    }
    .plus-list .item:nth-child(3n+1) {
        clear: left;
    }
    .shopping-form .col {
        width: 100%;
    }
    .shopping-form .col + .col {
        margin-top: 1.7em;
        border-top: 1px solid #ddd;
        padding-top: 1.7em;
    }
}

@media screen and (max-width: 1100px) {
    .plus-list .item {
        width: 50%;
    }
    .plus-list .item:nth-child(3n+1) {
        clear: none;
    }
    .plus-list .item:nth-child(2n+1) {
        clear: left;
    }
}

@media screen and (max-width: 1000px) {
    .plus-list .item {
        width: 33.33%;
    }
    .plus-list .item:nth-child(2n+1) {
        clear: none;
    }
    .plus-list .item:nth-child(3n+1) {
        clear: left;
    }
}

@media screen and (max-width: 820px) {
    .plus-list .item {
        width: 50%;
    }
    .plus-list .item:nth-child(3n+1) {
        clear: none;
    }
    .plus-list .item:nth-child(2n+1) {
        clear: left;
    }
}

@media screen and (max-width: 767px) {
    .shopping-step {
        margin: 0 -20px 30px;
    }
    .shopping-step li {
        padding: 3px 20px;
    }
    .delivery-list .form-group,
    .delivery-list .delivery-radio,
    .delivery-list .txt {
        display: block;
    }
    .delivery-list .delivery-radio {
        width: auto;
        padding-left: 45px;
        border-width: 0 0 1px;
    }
    .delivery-list .delivery-radio:before {
        left: 15px;
    }
    .delivery-list .txt {
        border-width: 1px 0 0;
    }
    .cart-table tbody tr {
        padding-left: 95px;
        padding-right: 40px;
    }
    .cart-table .pd-name {
        line-height: 1.2;
    }
    .cart-table .pd-id {
        margin: 0;
    }
    .cart-table .img {
        position: absolute;
        left: 10px;
        top: 10px;
        padding: 0;
        width: 70px;
    }
    .cart-table td .btn.delete {
        position: absolute;
        right: 0;
        top: 5px;
    }
    .cart-table .indent .img .pic {
        left: 0;
    }
    .cart-table .indent .info {
        padding-left: 0;
    }
    .sum-box {
        float: none;
        width: auto;
        max-width: none;
    }
    .cart-table tfoot tr {
        padding: 4px 10px;
        overflow: hidden;
    }
    .cart-table tfoot td,
    .cart-table .indent .info {
        padding: 0;
    }
    .cart-table tfoot td:first-child {
        float: left;
        text-align: left;
        font-size: 14px;
    }
    .cart-table tfoot td:last-child {
        width: auto;
    }
    .plus-list .offers {
        font-size: 20px;
        height: 34px;
        letter-spacing: 0.05em;
    }
    .plus-list .name {
        font-size: 16px;
        height: 27px;
        letter-spacing: 0.05em;
    }
}

@media screen and (max-width: 550px) {
    .shopping-step {
        margin: 0 0 30px;
    }
    .shopping-step li {
        display: block;
        float: none;
        width: auto;
        padding: 0;
    }
    .shopping-step li + li:before {
        content: '\f103';
        display: block;
        position: relative;
        top: 0;
        left: 0;
        margin: 0;
    }
    .shopping-step li .num {
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 15px;
    }
    .plus-list .item {
        width: 100%;
    }
    .plus-list .item:nth-child(n) {
        clear: none;
    }
}
