@charset "UTF-8";
#bottom-contact{
	display: block;
}
footer {
	padding-top: 130px;
}
/*------------------------
SHOP
------------------------*/
#shop .inner{
	padding: 80px 0 150px
}
#shop .floormap{
	margin-bottom: 60px;
}

/* BOX */
#shop .box-wrap .box{
	width: 50%;
	position: relative;
}
#shop .box-wrap .box a{
	display: block;
	padding: 40px 40px 30px 0;
}
#shop .box-wrap .box:nth-child(2n) a {
	padding: 40px 0 30px 40px;
}
#shop .box-wrap .box::before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 0;
	right: 0;
	background-size: 6px 2px;
	background-image: linear-gradient(to right, #c8c8c8 1px, transparent 1px);
	background-repeat: repeat-x;
	background-position: top;
}
#shop .box-wrap .box:nth-child(2n-1)::after {
	content: "";
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background-size: 1px 5px;
	background-image: linear-gradient(to bottom, #c8c8c8 1px, transparent 1px);
	background-repeat: repeat-y;
	background-position: top right;
}

/* text */
#shop .box-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#shop .box-wrap .box .text{
	flex: 1;
}
#shop .box-wrap .box .title{
	display: flex;
	align-items: baseline;
	margin-bottom: 8px;
}
#shop .box-wrap .box .title .num{
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: bold;
	border-radius: 5px;
	margin-right: 10px;
	line-height: 1;
	padding: 0px 10px 0;
}
#shop .box-wrap .box .title h3{
	font-size: 24px;
	letter-spacing: .04em;
	font-weight: bold;
	flex: 1;
	transition: all .3s ease 0s;
	text-align: justify;
	line-height: 1.4;
}
#shop .box-wrap .box a:hover h3{
	color: var(--green);
}
#shop .box-wrap .box .textarea{
	font-size: 17px;
	font-weight: 500;
}
#shop .box-wrap .box .time-wrap{
	display: flex;
	align-items: flex-start;
}
#shop .box-wrap .box .time-wrap .ttl{
	border: 1px solid var(--brown);
	color: var(--brown);
	font-size: 15px;
	padding: 3px 10px;
	line-height: 1.5;
	font-weight: 500;
	margin-right: 10px;
}
#shop .box-wrap .box .time-wrap .time{
	flex: 1;
	font-size: 16px;
}

/* IMG */
#shop .box-wrap .box .shopimg{
	width: 100%;
	height: 345px;
	margin-bottom: 15px;
	transition: opacity 0.3s ease 0s;
}
#shop .box-wrap .box .shopimg img{
	object-fit: contain;
	border-radius: 8px;
	border: 1px solid #dcdcdc;
	box-sizing: border-box;
}
#shop .box-wrap .box a:hover .image{
	opacity: .7;
}