label {
  padding-top: 5px;
  padding-right: 10px;
  padding-bottom: 5px;
}
label input {
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  label input {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 480px) {
  label {
    font-size: 1rem;
  }
}

.title_wrap {
  padding-top: 0;
}
.title_wrap h1 {
  font-size: 2rem;
}

.content {
  display: flex;
  gap: 50px;
  justify-content: space-between;
}
@media screen and (max-width: 1180px) {
  .content {
    gap: 30px;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (max-width: 780px) {
  .content {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .content {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.col_cart {
  position: relative;
  width: 55%;
  padding: 0;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 50px;
  border-top: 1px solid #E0E0E0;
}
@media screen and (max-width: 940px) {
  .col_cart {
    width: 60%;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 780px) {
  .col_cart {
    width: 100%;
  }
}

.cart_row {
  display: flex;
  position: relative;
  padding: 0;
  margin: 0;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  .cart_row {
    display: block;
  }
}

.bottom_line {
  border-bottom: 1px solid #E0E0E0;
}

.empty_cart {
  position: relative;
  padding: 0;
  margin-top: 20px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}
.empty_cart p {
  font-size: 0.813rem;
  color: #666666;
}
@media screen and (max-width: 480px) {
  .empty_cart p {
    font-size: 1rem;
  }
}

.cart_item_image {
  position: relative;
  width: 30%;
  padding: 0;
  margin-top: 30px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 30px;
}
.cart_item_image img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 780px) {
  .cart_item_image {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 480px) {
  .cart_item_image {
    width: 100%;
    margin-bottom: 30px;
  }
}

.cart_item_text {
  position: relative;
  width: 40%;
  padding-top: 0;
  padding-left: 30px;
  padding-right: 0;
  padding-bottom: 20px;
  margin-top: 30px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  box-sizing: border-box;
}
.cart_item_text h2 {
  font-family: "PT Root", Helvetica, sans-serif;
  font-size: 0.813rem;
  margin-bottom: 5px;
}
@media screen and (max-width: 480px) {
  .cart_item_text h2 {
    font-size: 1.125rem;
  }
}
.cart_item_text p {
  font-family: "PT Root", Helvetica, sans-serif;
  font-size: 0.75rem;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .cart_item_text p {
    font-size: 1rem;
  }
}
.cart_item_text form {
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .cart_item_text form {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 780px) {
  .cart_item_text {
    padding-left: 20px;
    padding-bottom: 10px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 480px) {
  .cart_item_text {
    width: 100%;
    padding-left: 0;
  }
}

.old_price {
  color: #666666;
  text-decoration: line-through;
}

.quantity_form_container {
  display: flex;
  width: fit-content;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  align-items: center;
}
.quantity_form_container input,
.quantity_form_container button {
  border: none;
  background: rgba(0, 0, 0, 0);
  transition: all 0.4s ease;
}
.quantity_form_container input:focus,
.quantity_form_container button:focus {
  background: #CCCCCC;
  color: #000000;
  outline: none;
  box-shadow: 0 0 0 2px #CCCCCC;
  transition: all 0.4s ease;
}
.quantity_form_container button {
  font-family: "Nunito Sans", Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  display: flex;
  padding: 3px 8px;
  margin: auto;
  height: 100%;
  color: #666666;
  cursor: pointer;
  transition: all 0.4s ease;
}
@media (hover: hover) {
  .quantity_form_container button:hover {
    background: #CCCCCC;
    color: #000000;
    transition: all 0.4s ease;
  }
}

.quantity_form {
  font-family: "Roboto", Helvetica, sans-serif;
  font-size: 0.75rem;
  text-align: center;
  color: #333333;
  width: 40px;
  background: rgba(0, 0, 0, 0);
  padding-top: 5px;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .quantity_form {
    font-size: 0.875rem;
    width: 80px;
    padding-top: 7px;
    padding-bottom: 7px;
  }
}

.remove_button {
  font-family: "Nunito Sans", Helvetica, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: #666666;
  padding: 0;
  margin: 0;
  background: none;
  border: 0;
  cursor: pointer;
  appearance: none;
}
@media screen and (max-width: 480px) {
  .remove_button {
    font-size: 0.875rem;
  }
}

.cart_item_price {
  position: relative;
  width: 30%;
  padding-top: 30px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 30px;
  margin: 0;
}
.cart_item_price h3 {
  font-family: "PT Root", Helvetica, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  text-align: right;
  margin-right: 5px;
  margin-bottom: 5px;
}
.cart_item_price p {
  font-family: "PT Root", Helvetica, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: #666666;
  text-align: right;
  margin: 0;
}
@media screen and (max-width: 780px) {
  .cart_item_price {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 480px) {
  .cart_item_price {
    display: none;
  }
}

.cart_head {
  position: relative;
  padding-top: 20px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 20px;
  margin: 0;
}
.cart_head h2 {
  margin: 0;
}
@media screen and (max-width: 780px) {
  .cart_head {
    padding-top: 20px;
  }
}

.cart_subhead {
  position: relative;
  padding-top: 20px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 10px;
  margin: 0;
  border-top: 1px solid #E0E0E0;
}
.cart_subhead h3 {
  font-size: 0.875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .cart_subhead h3 {
    font-size: 1rem;
  }
}
.cart_subhead p {
  font-size: 0.75rem;
  color: #666666;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .cart_subhead p {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 780px) {
  .cart_subhead {
    padding-top: 20px;
  }
}

.form_item {
  position: relative;
  width: 48%;
  padding: 0;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 20px;
}
.form_item h3 {
  font-size: 0.813rem;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .form_item h3 {
    font-size: 1rem;
  }
}
.form_item p {
  font-size: 0.813rem;
  margin: 0;
}
@media screen and (max-width: 480px) {
  .form_item p {
    font-size: 1rem;
  }
}
@media screen and (max-width: 480px) {
  .form_item {
    width: 100%;
  }
}

.delivery_items, .payment_items {
  display: flex;
  flex-direction: column;
}
.delivery_items div, .payment_items div {
  display: flex;
}
.delivery_items input, .payment_items input {
  margin-right: 5px;
  margin-bottom: 5px;
}

.last_input {
  margin-bottom: 0;
}

.form_text {
  position: relative;
  width: 100%;
  padding: 0;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 20px;
}

.comment {
  width: 100%;
  font-family: "Nunito Sans", Helvetica, sans-serif;
  font-size: 0.813rem;
  font-weight: 400;
  color: #333333;
  line-height: 1.5;
  padding-top: 10px;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 10px;
  border: 1px solid #CCCCCC;
  border-radius: 3px;
  box-sizing: border-box;
}

.cart_text {
  position: relative;
  padding: 0;
  margin: 0;
}
.cart_text p {
  font-size: 0.75rem;
  color: #666666;
  line-height: 1.3;
  margin-bottom: 5px;
}
@media screen and (max-width: 480px) {
  .cart_text p {
    font-size: 0.875rem;
  }
}

.col_order {
  position: relative;
  width: 25%;
  padding-top: 30px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 50px;
  border-top: 1px solid #E0E0E0;
}
@media screen and (max-width: 940px) {
  .col_order {
    width: 40%;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 780px) {
  .col_order {
    width: 100%;
    padding-top: 25px;
  }
}

.order_text {
  position: relative;
  padding: 0;
  margin: 0;
}
.order_text p {
  font-family: "PT Root", Helvetica, sans-serif;
  font-size: 0.813rem;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .order_text p {
    font-size: 1rem;
  }
}
@media screen and (max-width: 480px) {
  .order_text h2 {
    font-size: 1.125rem;
  }
}

.total_price {
  font-size: 1rem;
}

.order_terms {
  position: relative;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 10px;
  margin: 0;
}
.order_terms p {
  font-size: 0.75rem;
  color: #333333;
  line-height: 1.5;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .order_terms p {
    font-size: 0.875rem;
  }
}

.complete_button {
  font-family: "Nunito Sans", Helvetica, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: #FFFFFF;
  width: 100%;
  padding-top: 15px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 15px;
  margin: 0;
  background: #000000;
  border: 0;
  border-radius: 3px;
  cursor: pointer;
  appearance: none;
}
@media screen and (max-width: 480px) {
  .complete_button {
    font-size: 1rem;
  }
}