@charset "UTF-8";

div.product {
    display: flex;
    justify-content: space-between;
	margin-bottom:130px;
}

.details {
    width: 460px;
}

.product .item{
	width:500px;
}
#products li{
	margin-bottom:20px;
}
.image_area{
	width: 500px;
	height:400px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #BFBFBF;
	padding: 30px 30px;
}
.image_area img{
	max-width:100%;
	max-height: 100%;
    flex-shrink: 0;
}
.images {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
	align-items: center;
}

.images img {
    width: 92px;
    height: auto;
    margin: 10px 5px;
    cursor: pointer;
	border: 1px solid #BFBFBF;
}

.details h1 {
    background-color: #FFFFFF;
    font-size: 20px;
    margin: 0 0 5px;
    padding: 0;
	text-align: left;
	color: #000;
	font-weight:500;
}
.details h1 + p{
	color:#000;
}

.price {
    font-weight: normal;
    text-align: left;
	font-size:24px;
	color:#000;
	font-weight:500;
}

.price span {
    font-size: 23px;
    font-weight: 500;
    margin-left: 5px;
}
.price span + span{
	font-size:14px;
	font-weight: normal;
}

.variation,
.quantity {
	padding: 10px;
	background: #E6E6E6;
}
.quantity{
	margin:0 0 30px;
}

.variation select{
    margin-left: 1em;
}

.quantity input {
    width: 50px;
    margin-left: 1em;
    padding-left: 5px;
}

.add_cart {
    width: 100%;
    padding:20px 10px;
    color: #FFFFFF;
    background-color: #000000;
    border:none;
    border-radius: 5px;
	font-size: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
}

a.go_review{
	margin:20px 0 0;
	border-bottom: 1px solid #999;
	position:relative;
	margin-left: 1.5em;
}

.description {
    margin-top: 35px;
	font-size: 16px;
}

.description h2{
    font-size: 30px;
    text-align: center;
	margin:0 0 40px;
}

.option a{
	display:block;
	border-bottom:1px solid #BFBFBF;
	padding: 10px 30px;
}
	.option a:first-child{
		border-top:1px solid #BFBFBF;
	}

.checked_items {
    position: relative;
    margin: 50px 0;
}
.checked_items h2{
	text-align:left;
	font-size:16px;
	font-weight:500;
}
	.checked_items h2:after{
		content:"＞＞";
		margin-left:10px;
		letter-spacing: -9px;
	}

#products {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    margin-top: 20px;
    justify-content: inherit;
}

#products .product {
    width: 140px;
    min-width: 140px;
    margin-right:32px;
}

.checked_items .product a > div {
    height: 100px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.checked_items .product a > p{
	font-size:16px;
	line-height: normal;
}

.move_scroll {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 40px;
	display: none;
	background: #000;
	color:#fff;
	border: none;
	font-size: 26px;
}

button.move_scroll:hover {
    opacity: 1;
}

.move_scroll#next {
    right: 0;
}

@media screen and (max-width: 1024px) {


	/* 商品詳細 */
	div.product{
		display:block;
		margin-bottom:50px;
	}
	.image_area, .details{
		width:auto;
		margin-bottom: 10px;
	}
	.images{
		margin-bottom:30px;
	}
	.product .item{
		width:100%;
		margin:0 auto;
	}
	.image_area{
		padding:10px;
	}
	ge_area > img{
		max-width: 100%;
		width: auto;
		margin: 0 auto;
		display: block;
	}
	.price, .reduce, .variation, .quantity, #stock{
		text-align:right;
	}
	.beans_item dt{
		display:flex;
		justify-content: space-between;
		align-items: center;
	}

	#products{
		margin:20px -2% 0 0;
	}
	#products .product{
		width:18%;
		margin-right:2%;
	}

}

@media screen and (max-width: 896px) {


	#products .product{
		width:31%;
	}
	.checked_items .product a > p{
		font-size:14px;
	}

}

@media screen and (max-width: 480px) {

	.beans_item div{
		flex-direction: column;
	}
	.beans_item dt{
		font-weight:500;
	}
	.beans_item dt::after{
		content:none;
	}
	#stock{
		text-align:left;
	}
	.variation select, .quantity input{
		height:40px;
	}

	.gift_p .products li{
		width:100%;
	}

}
