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;
}
.select2-container{
  margin-bottom:10px;
}

.coupon-applied{
  font-style: italic;
}
.icon-keyboard_arrow_down {
  float: right;
  font-size: 2rem;
}
.icon-keybord_arrow_up {
  transform: rotate(180deg);  
}
/* .cart-container .form-cart .title .note div { */
.note {
  color: #e91c24;
  font-family: 'Montserrat-Regular';
  font-style: normal;
  font-weight: 400;
  line-height: 1.846rem;
  font-size: 1.3rem;
  margin: 16px 0;
  text-transform: initial;
}
.totalprice {
  font-size: 1.4em;
}
.totalprice-block {
  margin-bottom: 10px;
}
.totalprice-block > span {
  display: flex;
  justify-content: space-between;
}
.total-price-block {
  margin-bottom: 10px;
}
.total-price-block > span {
  display: flex;
  justify-content: space-between;
}
.icon-close {
  cursor: pointer;
}

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

.column {
  margin-right: 8px;
  padding: 16px;
}
.column:first-of-type {
  margin-right: 0;
}
.column:nth-of-type(2)  {
  margin-right: 0;
}
.column:nth-of-type(3)  {
  margin-right: 0;
}
.column:nth-of-type(4)  {
  margin-right: 0;
}
.column-wrapper {
  margin-right: 8px;
  width: 67%;
}
.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 {
  width:190px;
  position: relative;
}

.product-item-details a {
  font-weight: 700;
  color: #4d4d4d;
}
.product-item-details a:hover {
  color: #0066c8;
}
.product-item-name {
  /*position: absolute;*/
  top: 50%;
  transform: translate(0, -50%);
  margin-left:5px;
}
.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;
  border: none;
}

.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;
}

.order-handling .orange-box .column-2{
  display: flex;
  flex-direction: row;
}
.order-handling .orange-box .column-2 div {
padding: 10px 50px;
flex-direction: column;
justify-content: center;
align-items: flex-start;
margin-bottom: 5px;
}
.column-2 .block p {
margin-bottom: 0;
}
.column-2#mywarehouse {
margin-right: 16px;
}
.column-2 #mywarehouse span {
flex: 3 0 20px;
}

.column-2 #nowshipping span {
flex: 3 0 20px;
}

.order-handling .orange-box .column-2 .block div {
display: flex;
width: 70%;
flex-direction: row;
padding: 0;
}
.check-out .block.checked, .check-out .block.unchecked{
  display: inline-flex;
  flex-direction: row;
  cursor: pointer;

}

.shippingmethod.block.checked:first-child, .shippingmethod.block.unchecked:first-child, .shippingmethod.block.unchecked.bold.linkbox:first-child, .shippingmethod.block.checked.bold.linkbox:first-child {
  margin-top:10px;
}
.select2.select2-container.select2-container--default {
  margin-bottom:10px;
}
.check-out .shippingmethod.block.checked, .check-out .shippingmethod.block.unchecked, .shippingmethod.block.unchecked.bold.linkbox, .shippingmethod.block.checked.bold.linkbox{
display: block;
flex-direction: row;
cursor: pointer;
padding: 0;
}

.shipping-desc, .shipping-delivery {
font-size: 11px;
margin: 4px 0;
display: block;
position: relative;
}

.shipping-delivery a {
position: relative;
display: contents;
}

.shipping-rate {
  float: right;
  padding-right: 10px;
}

.column.order-handling{
  margin-bottom: 0;
}

.order-handling .block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 10px;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

.order-handling .block p{
  margin-bottom: 0;
}

.radio {
  display: block !important;
  width: 10px;
  height: 10px;
  border: #e5e5e5 solid 1px;
  border-radius: 10px;
  flex-shrink: 0;
  margin-right: 10px;
  margin-left: -20px;
}

.balloon1-top {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #f2f6f5;
}

@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: "Status";
    /* float: left; */
  }
  td.qty:before {
    content: "Qty";
    /* float: left; */
  }
  td.price:before {
    content: "Unit Price";
    /* float: left; */
  }
  td.subtotal:before {
    content: "Subtotal";
    /* 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;
  }
  .order-handling .orange-box .column-2 div {
    padding: 10px 50px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 5px;
    margin-right:0px;
  }

  .order-handling .orange-box .column-2{
    display: flex;
    flex-direction: column-reverse;
  }
  
  .radio {
    display: block !important;
    width: 10px;
    border: #e5e5e5 solid 1px;
    border-radius: 10px;
    flex-shrink: 0;
    margin-right: 10px;
    margin-left:-20px;
  }
  .item-info:after {
    content:initial;
  }
}
.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;
}

.shippingmethod button {
  position: relative;
  padding: 10px;
}
.shipping_company_icon {
  width:50px;
}

/* -- OVERWRITE CLASSES FOR RECOMMENDED SECTION -- */
.cart-product-item-name {
  /* border: 1px solid green; */
  position: inherit;
  margin: 0px 0 0 0 !important;
}
#recommend_items_slide {
  max-height: 350px !important;
  margin: 0 0 20px 0;
}