/*-------------------------
head
-------------------------*/
.cart-head {
  padding: 10px 0;
}
.cart-head h1 {
  padding-bottom: 0;
}

@media screen and (min-width: 960px) {
  .cart {
    display: grid;
  }
  .cart-pc-2col {
    display: grid;
    grid-template-columns: auto 400px;
    grid-gap: 40px;
    margin-left: auto;
    margin-right: auto;
  }
  .cart-pc-right {
    background: var(--bg___gray);
  }
  .cart-head {
    padding: 30px 0 10px 0;
  }
}
.cart-empty {
  height: 100vh;
  padding: 40px var(--sp-side-space);
  text-align: center;
}
.cart-empty___button {
  margin-top: 80px;
}
.cart-empty___button a {
  border: 1px solid var(--gray);
  color: var(--gray);
}

@media screen and (min-width: 960px) {
  .cart-empty___button {
    width: 300px;
    margin-left: auto;
    margin-right: auto;
  }
}
.cart-item {
  padding: 20px var(--sp-side-space) 0 var(--sp-side-space);
  margin-bottom: 40px;
  border-top: 10px solid var(--border___gray_bold);
}
.cart-item___image {
  text-align: center;
  margin-bottom: 10px;
  margin-top: 30px;
}
.cart-item___image img {
  width: 30vw;
}
.cart-item___name {
  margin: 5px 0 10px 0;
  text-align: justify;
  text-justify: inter-ideograph;
}
.cart-item___2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.cart-item___quantity-price{
  margin-bottom: 10px;
}
.cart-item___quantity {
  font-size: var(--font-size___h1);
  border-bottom: 2px solid var(--gray);
  margin-left: 5px;
}
.cart-item___quantity input[type=text] {
  width: 2em;
  line-height: 1;
  border: 0;
  text-align: center;
}
.cart-item___quantity-area {
  margin: 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.cart-item___quantity_t {
  font-size: var(--font-size___small2);
}
.cart-item___quantity_update {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  margin-left: 5px;
}
.cart-item___quantity_update a {
  border: 1px solid var(--gray);
  border-radius: 3px;
  font-size: var(--font-size___small2);
  color: var(--gray);
  line-height: 1;
  padding: 0.4em 0.3em;
  display: inline-block;
}
.cart-item___price {
  font-size: var(--font-size___h1);
  text-align: right;
}
.cart-item___price-area {
  margin-left: auto;
}
.cart-item___unit-price {
  text-align: right;
  color: var(--gray);
  font-weight: 350;
}
.cart-item___option {
  font-size: var(--font-size___small1);
  background: #f7f7f7;
  padding: 0.5em 1em;
  margin: 1px 0.8em;
  line-height: 1.7;
}



@media screen and (min-width: 960px) {
  .cart-item {
    display: grid;
    grid-template-columns: 10vw auto;
    padding-left: var(--pc-side-space);
    grid-gap: 60px;
    padding: 40px 70px;
  }
  .cart-item:first-child {
    border-top: 0;
  }
  .cart-item___image img {
    max-width: 100%;
  }
  .cart-item___name {
    margin-bottom: 40px;
  }
  .cart-item___options {
    padding: 10px 40px;
  }
  .cart-item___option {
    padding-left: 40px;
    padding-right: 40px;
  }
}