.cart_table {width:100%; display:flex; align-items:center;  box-sizing:border-box; padding:20px; border:1px solid #999; margin-top:-1px}
.cart_table h4 {margin-bottom:15px; font-weight:600;  font-size:1.15em}
.cart_table p.img {width:98px;border:1px solid #ddd; line-height:0; flex-shrink:0; margin-right:20px;  box-sizing:border-box}
.cart_table p.img img {width:100%}
.cart_table p:first-child input {margin-right:20px}
.cart_table .product_name {width:100%;  }
.cart_table .product_name .number i {font-size:20px; margin-left:3px; vertical-align:0px}
.cart_table .product_name h3 {font-size:1.18em; color:#000;  margin-bottom:5px; font-weight:500}
.cart_table .product_name h3 a {color:#000; }
.cart_table .product_name h3 label.label {vertical-align:5px; margin-left:5px}

.cart_table .product_name p {font-size:.97em; color:#333}
.cart_table .product_name p.cart_table_pay {font-size:1em; color:#111; font-weight:500}
.cart_table .product_name p.cart_table_pay + p {margin-top:4px}
 
.cart_table .button {margin-left:auto; text-align:right;  width:100px;    }
.cart_table a.s_btn {width:auto;  white-space:nowrap;  margin:2px 0; width:100%; line-height:31px}
 
 
.cart_pay {width:100%; background-color:#f7f7f7; padding:22px 0;  display:flex; align-items:Center; justify-content:center; font-size:1.15em}
.cart_pay p {margin:0 15px; text-align:center}
 

.info_bg_box {background-color:#f7f7f7; padding:15px; width:100%; display:inline-block; box-sizing:border-box}

  
.pay_link {display:flex; flex-wrap:wrap }
.pay_link p input {  display:none;  }
.pay_link p input + label {width:130px; border-radius:3px; margin:2px 0; margin-right:10px; height:40px; border:1px solid #111; color:#111; display:inline-block; display:flex; align-items:Center; justify-content:center; opacity:.3;  }
.pay_link p input:checked + label {opacity:1}
 

.mypage .cart_table .product_name h3 {font-size:1.1em; font-weight:400}
.mypage .cart_table .product_name h3  a { color:#222; }
 

@media all and (max-width:900px) {
	.cart_table {flex-wrap:wrap;  justify-content:flex-end; padding-bottom:15px; align-items:start;}
	.cart_table div {width:100%}
	.cart_table .product_name h3 {font-size:1.1em}
	.cart_table p.check {width:25px}
	.cart_table p.img {width:70px; margin-right:0}
	.cart_table .product_name {width:calc(100% - 75px); padding-left:10px; box-sizing:border-box; }

	.cart_table .button {display:flex; width:100%;  gap:5px; margin-top:10px;  justify-content:flex-end }

	.cart_table a.s_btn {width:80px; display:inline-block}

	.cart_pay  {font-size:1em; gap:7px; flex-wrap:wrap; padding-top:12px}
	.cart_pay p {margin:0; }
	.cart_pay p.m_100   {  font-size:1.1em; padding-top:10px;  }
	.cart_pay p.m_100 br {display:none; }

	.pay_link p input + label {width:100px;  margin-right:5px; height:35px;    }

	.cart .cart_table {justify-content:flex-start; padding:15px}
	.cart .cart_table p.img {width:50px; }
	.cart .cart_table .product_name  {width:calc(100% - 100px); }
	.cart .cart_table .product_name p.cart_table_pay + p {font-size:.89em; font-weight:400}
	.cart .cart_table .product_name p.cart_table_pay {font-size:.9em; margin-top:5px}

	.cart.order .cart_table .product_name  {width:calc(100% - 60px); }
	.cart.order  p.img {width:60px; }
 }
 



 .shop ul.product{flex-wrap:wrap; }
 ul.product li .photo img{top:50%; transform: translate(-50%, -50%);}

 @media all and (min-width:900px) {
 
	  .shop ul.product{gap:30px 1%;}
	   .shop ul.product li{width:calc(33.3333% - 8px);}
 }