@charset "UTF-8";

.main-title h2 {
  margin: 0 0 20px 20px;
}

.main-title h1::after {
  content: '';
  display: block;
  width: 36px;
  height: 3px;
  background-color: black;
  margin-top: 20px;
}


/* 商品部分 */
.main {
  width: 100%;
  max-width: 90%;
  margin: 0 50px 0 50px;
}

.goods1 {
  display: flex;
  height: 500px;
  margin-top: 50px;
  margin-bottom: 20px;
}

.cart {
  max-width: 90%;
  height: auto;
}


.imgbox {
  width: 500px;
  height: 500px;
  padding: 20px;
  background-color: cadetblue;
}


/* 増やす減らすボタン部分 */
.cart-number {
  width: 300px;
  display: flex;
  margin-left: 20px;
}

.text {
  max-width: 100%;
  margin-bottom: 50px;
}


.btn-number {
  width: 50px;
  height: 50px;
  margin-left: 10px;
  border-radius: 12px;
}

.btn-number:hover {
  background-color: rgb(253, 111, 111);
}

.input-text {
  width: 150px;
  height: 50px;
  line-height: 40px;
  font-size: 20px;
  text-align: center;
  margin-left: 10px;
}


/* 説明部分 */
.cart-text {
  width: 500px;
  margin: 10px 0 0 50px;
}

.cart-text h2 {
  margin-bottom: 50px;
  font-size: 30px;
  color: #505050;
  /*文字色*/
  padding: 0.5em;
  /*文字周りの余白*/
  display: inline-block;
  /*おまじない*/
  line-height: 1.3;
  /*行高*/
  background: #dbebf8;
  /*背景色*/
  vertical-align: middle;
  border-radius: 25px 0px 0px 25px;
  /*左側の角を丸く*/
}

.cart-text h2:before {
  content: '●';
  color: white;
  margin-right: 8px;
}

.text {
  background-image: linear-gradient(180deg, #ccc 1px, transparent 1px);
  /* 罫線の色と太さ  */
  background-size: 100% 1.5em;
  /* 行の高さ */
  line-height: 1.5em;
  /* 文字の高さ */
  padding-bottom: 1px;
  /* 最終行の下にも罫線を引く */
}



/* 合計部分 */
.last-title h2::after,
.last-text2::after,
.last-ontext::after {
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  background-color: rgb(221, 219, 219);
  margin-top: 20px;
}



.absolute {
  position: static;
  /* ←固定表示をやめて自然に下に流す */
  margin-top: 50px;
  padding: 20px;
  background-color: #f8f8f8;
  border-radius: 8px;
}



.last-title,
.last-nuber,
.last-cash,
.last {
  margin: 30px 0 0 20px;
}

.last-text,
.last-ontext,
.cart-last {
  margin: 30px 30px 80px 20px;
}

.last-text2 {
  font-size: 28px;
}

.ontext {
  font-size: 23px;
  margin-top: 20px;
}


.last-text strong {
  font-size: 30px;
  color: green;
}

.cart-last p {
  font-size: 23px;
}


.last input,
.cartin {
  font-family: serif;
  background-color: cadetblue;
  display: inline-block;
  min-width: 180px;
  margin-bottom: 30px;
  line-height: 48px;
  border-radius: 24px;
  font-size: 14px;
}

.last input:hover,
.cartin:hover {
  background-color: aquamarine;
}


.last-nuber p:hover,
.last-cash p:hover {
  color: red;
}



/* 430px以下の時 */
@media (max-width: 430px) {
  .main {
    margin-left: 20px;
  }


  .goods1 {
    display: block;
    height: auto;
  }

  .imgbox {
    width: 300px;
    height: 300px;
  }


  .cart-text {
    width: 420px;
    margin-left: 0;
  }

  .cart-text h2 {
    width: 300px;
    font-size: 26px;
  }

  .cart-text p {
    max-width: 90%;
    margin-left: 0;
  }

  .absolute {
    margin: 0;
    height: auto;
    width: 400px;
  }

  .absolute p {
    font-size: 20px;
  }

  .last-text2 {
    width: 300px; 
    font-size: 16px;
  }


  .last-text2 p{
   word-break: keep-all;
  }

  .last-text2 strong {
    font-size: 18px;
  }


  .last input {
    width: 300px;
  }


  /* フッター */
  .footer ul {
    font-size: 12px;
  }

}