html,
body {
	background-color: #fff;
}

#landing {
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url(../product/category01/images/category-bg.jpg);
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url(../product/category01/images/category-bg.jpg);
	background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url(../product/category01/images/category-bg.jpg);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url(../product/category01/images/category-bg.jpg);
	background-attachment: fixed;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#landing h1,
#landing p {
	color: #fff;
	text-align: center;
	max-width: 768px;
	margin-left: auto;
	margin-right: auto;
}

#product h3 {
	text-align: left;
}

.product-group {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}
.product-group:not(:last-of-type) {
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
	margin-bottom: var(--header-height);
}
.product-group > * {
	margin: 0 var(--padding-lr) var(--header-height) 0;
	width: calc( ( 100vw - var(--padding-lr) * 2 ) / 3 - (var(--padding-lr) / 3 * 2) );
}
.product-group > *:nth-of-type(3n) {
	margin-right: 0;
}
.product-group a {
	display: block;
	font-size: 0.8em;
	line-height: 1.25;
	text-align: center;
	color: inherit;
	text-decoration: none;
}
.product-group a img {
	margin-bottom: 0.25em;
}
.product-group a:hover {
	color: var(--main-color);
}
.product-group img {
	width: calc( ( 100vw - var(--padding-lr) * 2 ) / 3 - (var(--padding-lr) / 3 * 2) );
	height: calc( ( 100vw - var(--padding-lr) * 2 ) / 3 - (var(--padding-lr) / 3 * 2) );
	object-fit: contain; /* fill (default) | contain | cover | none | scale-down */
	border: 1px solid #e5e5e5;
}
@media (min-width:641px) {
	.product-group > * {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 4 - (var(--padding-lr) / 4 * 3) );
	}
	.product-group > *:nth-of-type(3n) {
		margin-right: var(--padding-lr);
	}
	.product-group > *:nth-of-type(4n) {
		margin-right: 0;
	}
	.product-group img {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 4 - (var(--padding-lr) / 4 * 3) );
		height: calc( ( 100vw - var(--padding-lr) * 2 ) / 4 - (var(--padding-lr) / 4 * 3) );
	}
}
@media (min-width:801px) {
	.product-group > * {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
	}
	.product-group > *:nth-of-type(4n) {
		margin-right: var(--padding-lr);
	}
	.product-group > *:nth-of-type(5n) {
		margin-right: 0;
	}
	.product-group img {
		width: calc( ( 100vw - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
		height: calc( ( 100vw - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
	}
}
@media (min-width:1281px) {
	.product-group > * {
		width: calc( ( var(--container-width) - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
	}
	.product-group img {
		width: calc( ( var(--container-width) - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
		height: calc( ( var(--container-width) - var(--padding-lr) * 2 ) / 5 - (var(--padding-lr) / 5 * 4) );
	}
}

#submenu {
	background-color: var(--main-color);
	color: #fff;
	font-size: 0.8em;
	padding: var(--padding-lr);
}
#submenu h3 {
	color: #fff;
	margin-bottom: var(--padding-lr);
}
#submenu ul {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
#submenu li {
	width: 100%;
	text-align: center;
	padding: 1em;
}
@media (min-width:481px) {
	#submenu li {
		width: 50%;
	}
}
@media (min-width:641px) {
	#submenu li {
		width: 33.3333%;
	}
}
@media (min-width:701px) {
	#submenu li {
		width: 25%;
	}
}
@media (min-width:901px) {
	#submenu li {
		/*width: 20%;*/
	}
}
#submenu a {
	display: block;
	color: #fff;
	font-weight: 400;
	line-height: 1.2em;
	text-decoration: none;
	opacity: 0.7;
}
#submenu a:hover {
	opacity: 1;
}


