h1 {
  color: #4d4d4d;
  font-style: normal;
  font-weight: 700;
  line-height: 2.462rem;
  font-size: 2.462rem;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 16px;
  margin-top: 8px;
}
p {
  margin-bottom: 0;
}

.totalprice {
  font-size: 1.4em;
}
.totalprice-block {
  margin-bottom: 10px;
}
.totalprice-block > span {
  display: flex;
  justify-content: space-between;
}
.icon-close {
  cursor: pointer;
}

.cart-container {
  display: flex;
  margin-bottom: 20px;
}

.column {
  margin-right: 8px;
  padding: 16px;
}
.column:first-of-type {
  margin-right: 0;
}
.column-wrapper {
  margin-right: 8px;
  width: 68%;
}
.blue-button {
  width: 100%;
  text-align: center;
}

.right-bar {
  width: 32%;
}
.field.code {
  display: flex;
}
.field.code input {
  width: auto;
}

.field.code input,
.field.code button.blue-button {
  width: 100%;
}

.field.code button.blue-button {
  margin-top: 10px;
}

.field.code .blue-button {
  display: flex;
  width: 46%;
  height: 40px;
  justify-content: center;
  align-items: center;
}
.item-info img {
  display: initial;
  width: 120px;
}
.product-item-details a {
  font-weight: 700;
  color: #4d4d4d;
}
.product-item-details a:hover {
  color: #0066c8;
}
.col.item {
  display: flex;
}
.field.qty .quantitySelect {
  width: 85px;
  height: 50px;
}
select {
  width: 85px;
  height: 50px;
}
.hidden {
  display: none !important;
}
.field.qty {
  display: flex;
  align-items: center;
}
.icon-close:before {
  color: rgb(233, 28, 36);
  margin-left: 16px;
}

.p-bold {
  margin: initial;
  margin-bottom: 1.6em;
}
.item {
  border: initial;
}

.col.item {
  padding: 16px 8px 16px 0;
}
.col {
  padding: 8px;
  display: table-cell;
  vertical-align: middle;
}
th.col,
td.price,
td.subtotal {
  white-space: nowrap;
}
th.col span {
  content: attr(data-th);
  display: inline-block;
  float: left;
  margin-right: 16px;
  width: 30%;
  color: #adadad;
  font-weight: 400;
}
.col.item {
  padding-left: 0;
}
.col.subtotal {
  padding-right: 0;
}
.item-info {
  border-top: #e5e5e5 solid 1px;
  border-bottom: #e5e5e5 solid 1px;
}
thead::after {
  height: 1px;
  display: block;
  background: #5e5e5e;
}
.fieldset > .field.loaded,
.fieldset > .field.choice.loaded,
.field.loaded {
  margin: 0;
}
.button-wrapper {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin-right: 10px;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  max-width: 100%;
}
.proceed {
  margin-top: 10px;
}
.proceed > span {
  display: flex;
  justify-content: space-between;
}
.cart-container .right-bar .grey {
  text-decoration: none;
  margin-bottom: 10px;
}
.coupon-wrapper button {
  margin-left: 3px;
}
@media only screen and (max-width: 1024px) {
  .field.code {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .field.code input,
  .field.code button.blue-button {
    width: 100%;
  }
  .field.code button.blue-button {
    margin-top: 10px;
  }
  thead tr {
    display: none;
  }
  tbody tr {
    display: flex;
    flex-direction: column;
  }

  td.status:before {
    content: "ステータス";
    /* float: left; */
  }
  td.qty:before {
    content: "注文数";
    /* float: left; */
  }
  td.price:before {
    content: "金額";
    /* float: left; */
  }
  td.subtotal:before {
    content: "合計";
    /* float: left; */
  }
  tbody td.col {
    display: flex;
  }
  .field.qty {
    display: flex;
  }

  td:before {
    width: 30%;
    display: inline-block;
    color: #adadad;
  }
  .coupon-wrapper button {
    margin-left: 0;
  }
}

.item_list_container {
  overflow: hidden;
  max-width: 100vw;
  padding: 0 2% 0 2%;
}

@media only screen and (max-width: 768px) {
  .cart-container {
    display: block;
  }
  .column-wrapper {
    margin: 0;
    margin-bottom: 16px;
  }
  .right-bar {
    width: 100%;
  }

  .column-wrapper {
    margin-right: 8px;
    width: 100%;
  }
  .item_list_container {
    padding: 0;
    margin-top: 5px;
  }

  .item_list_container > .block-recently_viewed_products {
    margin: 0 -5px 0 -5px;
  }
}

.linkbox {
  position: relative;
}

.linkbox button {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;

  /* buttonのスタイル削除 */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.item_list_container > div {
    margin-bottom: 50px;
}