/*@import url(products.css);*/

.shopping-step {
    text-align: center;
    font-weight: bold;
    max-width: 790px;
    margin: 15px auto 25px;
    position: relative;
}
.shopping-step ul{
  display: inline-block;
  width: 100%;
  background: #f0f0f0;
}
.shopping-step li {
    margin: 0 0 10px;
    width: 260px;
    height: 39px;

    line-height: 50px;
    display: block;
    float: left;
    width: 33.3333%;
    position: relative;
    box-sizing: border-box;
    font-size: 20px;
    font-weight: bold;
    color: #006633;
    font-family: 'PMingLiU','新細明體';
    opacity: 0.4;
}
.shopping-step li.current{
  opacity: 1;
}
.shopping-step li.step1{
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
}
.shopping-step li.step3{
  border-top-right-radius: 30px;
  border-bottom-right-radius: 30px;
}
.shopping-step li:before{
  content: '';
  display: block;
  width: 54px;
  height: 54px;
  background: url(../images/step_circle.png) no-repeat;
  position: absolute;
  left: -15px;
  top:-3px;
}
.shopping-step li:after{
  content: '';
  display: inline-block;
  position: absolute;
  left: 35px;
  top:-35px;
  font-size: 15px;
  color: #006734;
}
.shopping-step li.step1:after{
  content: 'STEP.01';
}
.shopping-step li.step2:after{
  content: 'STEP.02';
}
.shopping-step li.step3:after{
  content: 'STEP.03';
}


.shopping-title {
    color: #0062a9;
    font-size: 16px;
    font-weight: normal;
    text-align: left;
    padding: 5px 0 10px;
    margin-top: 40px;
}
.shopping-title i{
  margin-right: 8px;
  font-size: 24px;
  position: relative;
  top:3px;
}
.shopping-title .i-invl,
.shopping-title .i-car,
.shopping-title .i-list{
  background: url(../images/icon_cart.png) no-repeat;
  width: 31px;
  height: 30px;
  display: inline-block;
  margin-right: 10px;
  position: relative;
  top:8px;
}
.shopping-title .i-invl{
  background-image: url(../images/icon_cart2.png);
}
.shopping-title .i-car{
  background-position: 100% 0;
}

.shopping-title.noline{
  border: none;
}
.shopping-title .cart-icon{
  font-size: 18px;
  position: relative;
  top:2px;
  margin-right: 5px;
}

.delivery-list {
    /*border-width: 1px 0;*/
    margin-bottom: 0px;
    background: #f8f8f8;
    background: #FFF;
    border: none;
}
.delivery-list .item {
    overflow: hidden;
    margin-bottom: 3px;
    margin-top: 3px;
}
.delivery-list .item + .item {
    border-top: 1px dashed rgba(141,194,31,0.4);
}
.delivery-list .item:first-child{
  border-top: 1px dashed rgba(141,194,31,0.4);
}
.delivery-list .item:last-child{
  border-bottom: 1px dashed rgba(141,194,31,0.4);
}
.delivery-list .form-group {
    display: table;
    width: 100%;
    margin-bottom: 1px;
    box-sizing: border-box;
}
.delivery-list .delivery-radio {
    display: table-cell;
    vertical-align: middle;
    width: 235px;
    background: rgba(243,249,232,0.4);
    color: #585756;
    font-size: 15px;
    font-weight: bold;
    padding: 15px 10px 15px 60px;
    position: relative;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}
.delivery-list .delivery-radio span {
    display: inline-block;
    width: 47px;
    line-height: 60px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    margin-right: 15px;
}
.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;
    background: #f8f8f8;
    font-size: 15px;
    color: #444;
}
.delivery-list .txt b {
    color: #006633;
}

.purchase-box {
    border: 1px solid #DCDCDC;
    padding: 0 5px;
}
.purchase-info {
    text-align: center;
    font-size: 18px;
    padding: 25px 10px;
}
.purchase-info strong {
    color: #FF7330;
}
.plus-list .item {
    text-align: center;
}
.plus-list .offers {
    margin: 0 0 10px;
    line-height: 1.2;
}
.plus-list .form-group .qty-box {
    width: 100px;
    display: inline-block;
}
.plus-list .form-group .specification {
    width: 188px;
    display: inline-block;
    height: 25px;
    line-height: 23px;
}

.payment-box {
    background: rgba(215,220,203,0.2);
    overflow: hidden;
    font-size: 15px;
    box-sizing: border-box;
    margin-top: 3px;
    padding: 10px 0;

}
.payment-box .shopping-title {
    margin: 0px 15px;
    box-sizing: border-box;
    padding-right: 15px;
    display: inline-block;
    float: left;
}
.payment {
    margin: 0;
    box-sizing: border-box;
    padding: 0 10px;
    display: block;
    text-align: left;
    margin-top: 5px;
    float: right;
    display: inline-block;

}
.payment label {
    display: inline-block;
    text-align: center;
    background: transparent;
    color: #585752;
    line-height: 1.5;
    padding: 4px 20px;
    border: solid 1px #68A0d3;
    background: #FFF;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
}
.payment label.checked,
.invoice-info label.checked {
    color: #0061a9;
    font-weight: bold;
}
.payment.haschoice{
  float: right;
}

.shopping-form{
  background: #f8fbf2;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 25px;
}
.shopping-form .form-box{
  max-width: none;
}
.shopping-form .form-box .control-label{
  float: none;
  width: 100%;
  padding-left: 0;
}
.shopping-form .form-box .control-box{
  width: 100%;
}
.shopping-form .form-box .name .radio-box{
  right: 0;
  /*top:-30px;*/
}
.shopping-form .same-check{
  display: block;
  width: 100%;
  text-align: center;
  margin: 5px 0 20px;
  box-sizing: border-box;
  padding: 25px 15px;
  font-size: 15px;
  font-weight: bold;
  color: #8dc21f;
  border: solid 1px #8dc21f;
}
.ffbox{
  margin: 0 -10px;
}
.f-row{
  display: inline-block;
  width: 100%;
}
.f-row .col{
  float: left;
  width: 50%;
  box-sizing: border-box;
  padding: 0 10px;
}
.shopping-form.sameheight{
  min-height: 807px;
}

.shopping-form.invoice-info{
  box-sizing: border-box;
  padding: 20px;
}
.invoice-info .form-box label{
  display: inline-block;
  text-align: center;
  background: transparent;
  color: #0061a9;
  border: solid 1px #0061a9;
  line-height: 1.5;
  padding: 5px 35px;
  background: #FFF;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
  margin-bottom: 5px;
}
.invoice-info {
    position: relative;
    margin: 0;
    padding: 0;
}
.invoice-info .shopping-title {
    position: static;
    margin: 0 0 15px;
}
.invoice-info .form-box {
    max-width: none;
    text-align: center;
    padding: 0;
    display: inline-block;
    width: 100%;
    margin-top: 20px;
}
.invoice-info .i-top-bg{
  box-sizing: border-box;
  display: inline-block;
  width: 100%;

}

.i-rihgt-bg{
  box-sizing: border-box;
  display: inline-block;
  padding: 0 15px;
}
.invoice-info .txt {
    margin-top: 20px;
    color: #52525;
    font-size: 15px;
    text-align: left;
    margin-bottom: 20px;
}
.invoice-form {
    max-width: 597px;
    margin: 20px auto 0;
}
.invoice-form .form-control{
  max-width: 427px;
  width: 100%;
  box-sizing: border-box;
  margin:  5px auto;
}

.success-box {
    border-top: 1px solid #ffcdc6;
    border-bottom: 1px solid #ffcdc6;
    padding: 0 15px 20px;
    margin-top: 30px;
}
.success-box:after {
    display: none;
}
.success-box .msg {
    margin-top: 45px;
}
 .order-id-box {
    width: 100%;
    max-width: 443px;
    border-radius: 12px;
    margin: 23px auto 15px ;
    padding: 5px 10px;
    text-align: center;
    color: #FFf;
    font-size: 17px;
    background: #8DC21f;
    font-weight: bold;
    box-sizing: border-box;
    position: relative;
}
.order-id-box:before{
  content: '';
  display: block;
  width: 17px;
  height: 20px;
  background: url(../images/cart/blue_icon.png) no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  top:-20px;
  margin: 0 auto;
}
.success-box .btn-box {
    padding-top: 50px;
}
.success-box .btn-box a {
    text-decoration: none;
}
.shopping-title.fomr-t{
  background: #f5f5f5;
  text-align: center;
  color: #0061a9;
  font-weight: 16px;
  padding: 10px;
  box-sizing: border-box;
}

@media screen and (max-width: 1000px) {
  .payment{
    float: left;
    padding-bottom: 20px;
  }
  .shopping-form .form-box .col{
    float: none;
    width: 100%;
  }
}
@media screen and (max-width: 980px) {
  .payment-box .shopping-title{
    border-right: none;
  }
  .delivery-list .delivery-radio{
    width: 160px;
  }
  .shopping-step{padding-top: 40px;}
  .shopping-step li{
    display: block;
    float: none;
    width: 260px;
    margin: 0 auto 40px;
    height: auto;
    background: #f0f0f0;
    border-bottom-right-radius: 30px;
    border-top-right-radius: 30px;
  }
  .shopping-step ul{
    background: transparent;
  }
  .shopping-step li.step3{margin-bottom: 0;}
}
@media screen and (max-width: 850px) {
  .f-row .col{
    width: 100%;
    float: none;
    margin: 10px auto;
  }
  .shopping-form.sameheight{
    min-height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .shopping-form .form-box .name .radio-box{
    top:0;
  }
    .payment{
      text-align: center;
    }
    .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;
    }
    .invoice-info .form-box label{
      width: 100%;
      padding: 10px 15px;
    }

    .payment.haschoice{
      float: none;
      margin-bottom: 15px;
    }
    .invoice-form .form-control{
      width: 100%;
      float: none;
      margin: 10px auto;
    }
    .payment-box .shopping-title{
      padding-right: 0;
    }
    .i-rihgt-bg,
    .invoice-info .i-top-bg{
      float: none;
      width: 100%;
    }
    .invoice-info .i-top-bg{
      border-right: none;
    }
    .shopping-form.invoice-info{
      padding: 10px;
    }
}

@media screen and (max-width: 700px) {
    .payment-box .shopping-title {
        float: none;
    }
    .payment {
        display: block;
        float: none;
        text-align: center;
    }
    .payment label {
        display: block;
        margin-bottom: 5px;
        text-align: center;
    }
    .payment-box .shopping-title{
      text-align: center;
    }
}
@media screen and (max-width: 550px) {

}
