@charset "utf-8";

@import url("modal.css");

/* 変数 */
:root {

	/* color */
	--okm-red: #e60039; 
	--basic-black: #333; 
	--basic-blue: #75a5b4;
	--text-blue: #7fa4b2; 

	--supermarket-color: #96b374;
	--drugstore-color: #7482b3;


	/* フォント */
	--okm-shin-go-l: "UD Shin Go Light" , "UDShinGoPro-Light", sans-serif;
	--okm-shin-go-r: "UD Shin Go Regular" ,  "UDShinGoPro-Regular", sans-serif;
	--okm-shin-go-m: "UD Shin Go Medium" , "UDShinGoPro-Medium" , sans-serif;
	--okm-shin-go-db: "UD Shin Go DemiBold" , "UDShinGoPro-DeBold", sans-serif;
	--okm-shin-go-b: "UD Shin Go Bold" , "UDShinGoPro-Bold", sans-serif;
	--okm-shin-go-h: "UD Shin Go Heavy" , "UDShinGoPro-Heavy" , sans-serif;

}

.main article p:has(+ul),
.main article p:has(+ol),
.main article p:has(+p){
	margin-bottom: 0; 
}

.okm--style--page--title span {
	display: block; 
	word-break: keep-all; 
	line-height: 1.4; 
}

/* フィルター */

hr.product-filter__divider {
	border: none;
	outline: none; 
	height: 40px; 
}

.product-filter {
	width: min(calc(100% - 40px), 1200px); 
	margin: 0 auto clamp(40px, calc(100vw * 80 / 1200) , 80px); 
}

.product-filter__category,
.product-filter__purpose {

}

.product-filter__title {
	font-size:20px; 
	font-family: "UD Shin Go Medium", sans-serif;
	line-height: 1;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--basic-black);
	margin-bottom: 13px;
	position: relative;
}

.product-filter__lead {
  font-size: 14px;
  line-height: 1.785;
  letter-spacing: 0;
  margin-bottom: 20px;
}

.product-filter__description,
.product-filter__note {
	display: block; 
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
}

.product-filter__list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 10px;
	line-height: 1.5;
}

/* カテゴリから選ぶ */
.product-filter__category .product-filter__item {
	font-size:clamp(12px, calc(100vw * 14 / 1200) , 14px); 
	font-family: "UD Shin Go Medium", sans-serif;
	line-height: 1.5;
	letter-spacing: 0.025em;
	color: #fff;
	background-color: #939393;
	padding: 13px 22px 13px 61px; 
	padding: 9px 17px 9px 50px; 
	border-radius: 5px;
	position: relative;
	cursor: pointer;
	transition: background-color .3s ease;
}

.product-filter__category .product-filter__item.on {
	background-color: var(--basic-blue);
}

.supermarket .product-filter__category .product-filter__item.on {
	background-color: var(--supermarket-color);
}

.drugstore .product-filter__category .product-filter__item.on {
	background-color: var(--drugstore-color);
}


.product-filter__category .product-filter__item:hover {
	background-color: #666; 
}

.product-filter__category .product-filter__label {
	display: inline-block; 
	line-height: 1.5;
}

.product-filter__category .product-filter__item::before {
	content: "";
	display: inline-block;
	position: absolute;

	width: 42px;
	height: 42px;
	border-radius: 42px;

	background-repeat: no-repeat;
	background-position: center;
	background-size:cover; 

	top: 50%;
	transform: translateY(-50%);
	left: 6px;

	border: 2px solid #939393;
	background-color: #939393;
	transition: background-color ease 0.3s, border ease 0.3s ;
}





.product-filter__category .product-filter__item:hover::before {
	border: 2px solid #666;
	background-color: #666;
}

/* ↓ カテゴリのアイコン設定 ↓ */

.product-filter__category .product-filter__item#all{
  padding-left: 44px;
}

.product-filter__category .product-filter__item#all::before {
  background-image: url('/exhibition/store/assets/images/all-products-off.png');
  background-image: url('/exhibition/store/assets/images/all-products-off.svg');
  background-size: 20px 17px;
  width: 30px;
  height: 30px;
  border-radius: 35px;
  border: none;
  background-color: #fff;
  left: 8px;
}





.product-filter__category .product-filter__item#showcase::before {
	background-image: url('/exhibition/store/assets/images/showcase.png');
}

.product-filter__category .product-filter__item#showcase-option::before {
	background-image: url('/exhibition/store/assets/images/showcase-option.png');
}

.product-filter__category .product-filter__item#store-management-system::before {
	background-image: url('/exhibition/store/assets/images/store-management-system.png');
}

.product-filter__category .product-filter__item#gondola::before {
	background-image: url('/exhibition/store/assets/images/gondola.png');
}

.product-filter__category .product-filter__item#promotion-display::before {
	background-image: url('/exhibition/store/assets/images/promotion-display.png');
}

.product-filter__category .product-filter__item#product-display::before {
	background-image: url('/exhibition/store/assets/images/product-display.png');
}

.product-filter__category .product-filter__item#digital-signage::before {
	background-image: url('/exhibition/store/assets/images/digital-signage.png');
}

.product-filter__category .product-filter__item#counter::before {
	background-image: url('/exhibition/store/assets/images/counter.png');
}

.product-filter__category .product-filter__item#cart-system::before {
	background-image: url('/exhibition/store/assets/images/cart-system.png');
}

.product-filter__category .product-filter__item#ai-camera::before {
	background-image: url('/exhibition/store/assets/images/ai-camera.png');
}

.product-filter__category .product-filter__item#security::before {
	background-image: url('/exhibition/store/assets/images/security.png');
}

.product-filter__category .product-filter__item#sanitary-management::before {
	background-image: url('/exhibition/store/assets/images/sanitary-management.png');
}

.product-filter__category .product-filter__item#automated-warehouse::before {
	background-image: url('/exhibition/store/assets/images/automated-warehouse.png');
}

.product-filter__category .product-filter__item#waterproof-board::before {
	background-image: url('/exhibition/store/assets/images/waterproof-board.png');
}





.product-filter__category .product-filter__item#cat788::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-filter__category .product-filter__item#cat789::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-filter__category .product-filter__item#cat786::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-filter__category .product-filter__item#cat790::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}



.supermarket .product-filter__category .product-filter__item.on#all::before {
  background-image: url('/exhibition/store/assets/images/all-products-on_supermarket.svg');
}

.drugstore .product-filter__category .product-filter__item.on#all::before {
  background-image: url('/exhibition/store/assets/images/all-products-on_drugstore.svg');
}





/* ↑ カテゴリのアイコン設定 ↑ */

.product-filter__item::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	top: 48%;
	transform-origin: center; 
	transform: translateY(-50%) rotate(45deg);
	right: 8px;
}



/* 目的から選ぶ */
.product-filter__purpose ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.product-filter__purpose ul li {
  font-size: 14px;
  font-family: "UD Shin Go Medium", sans-serif;
  line-height: 1;
  letter-spacing: 0.025em;
  color: #fff;
  background-color: #232323;
  padding: 6px 20px 7px 12px;
  border-radius: 50px;
  position: relative;
  cursor: pointer;
  transition: all ease 0.3s;
}

.product-filter__purpose ul li.on {
  background-color: var(--basic-blue);
}

.supermarket .product-filter__purpose ul li.on {
  background-color: var(--supermarket-color);
}

.drugstore .product-filter__purpose ul li.on {
  background-color: var(--drugstore-color);
}

.product-filter__purpose ul li::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-right: 1.2px solid #fff;
  border-bottom: 1.2px solid #fff;
  top: 44%;
  transform: translateY(-50%) rotate(45deg);
  right: 8px;
}

.product-filter__purpose .product-filter__label {
	line-height: inherit; 
}

/* アコーディオン */
.accordion__toggle {
	cursor: pointer; 
	position: relative; 
}

.accordion__toggle:after {
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
	transform-origin: center;
    transform: rotate(45deg);
    right: 30px;
    top: 0.25em;
    transition: transform ease 0.3s;
}

.accordion__toggle.open:after {
    transform: rotate(-135deg);
}

.accordion__content {
	padding: 13px 0 0; 
	margin: 0;
}

/* インデックスリスト */
.product-list {
	width: min(calc(100% - 40px), 1200px); 
	margin: 0 auto 80px;

	display: flex;
	flex-wrap: wrap;
	flex-direction: column; 
	gap: 40px; 
}



.product-list_category_title {
	font-size: 20px;
	font-family: "UD Shin Go Medium", sans-serif;
	letter-spacing: 0.025em;
	line-height: 1;
	padding: 12px 60px;
	border-radius: 5px;
	color: #fff;
	background-color: var(--basic-blue);
	position: relative;
	margin-bottom: 40px;
}

.supermarket .product-list_category_title {
	background-color: var(--supermarket-color);
}

.drugstore .product-list_category_title {
	background-color: var(--drugstore-color);
}

.product-list_category_title::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 50px;
	height: 50px;
	border-radius: 50px;

	background-image: url(''); 
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: center;
	background-size: contain; 

	top: 50%;
	transform: translateY(-50%);
	left: 6px;
	border: 2px solid v ar(--basic-blue);
	background-color: var(--basic-blue);
}

.supermarket .product-list_category_title::before {
	border: 2px solid v ar(--supermarket-color);
	background-color: var(--supermarket-color);
}

.drugstore .product-list_category_title::before {
	border: 2px solid v ar(--drugstore-color);
	background-color: var(--drugstore-color);
}

/* ↓ カテゴリタイトル ↓ */


.product-list_category_title.showcase::before {
	background-image: url('/exhibition/store/assets/images/showcase.png');
}

.product-list_category_title.showcase-option::before {
	background-image: url('/exhibition/store/assets/images/showcase-option.png');
}

.product-list_category_title.store-management-system::before {
	background-image: url('/exhibition/store/assets/images/store-management-system.png');
}

.product-list_category_title.gondola::before {
	background-image: url('/exhibition/store/assets/images/gondola.png');
}

.product-list_category_title.promotion-display::before {
	background-image: url('/exhibition/store/assets/images/promotion-display.png');
}

.product-list_category_title.product-display::before {
	background-image: url('/exhibition/store/assets/images/product-display.png');
}

.product-list_category_title.digital-signage::before {
	background-image: url('/exhibition/store/assets/images/digital-signage.png');
}

.product-list_category_title.counter::before {
	background-image: url('/exhibition/store/assets/images/counter.png');
}

.product-list_category_title.cart-system::before {
	background-image: url('/exhibition/store/assets/images/cart-system.png');
}

.product-list_category_title.ai-camera::before {
	background-image: url('/exhibition/store/assets/images/ai-camera.png');
}

.product-list_category_title.security::before {
	background-image: url('/exhibition/store/assets/images/security.png');
}

.product-list_category_title.sanitary-management::before {
	background-image: url('/exhibition/store/assets/images/sanitary-management.png');
}

.product-list_category_title.automated-warehouse::before {
	background-image: url('/exhibition/store/assets/images/automated-warehouse.png');
}

.product-list_category_title.waterproof-board::before {
	background-image: url('/exhibition/store/assets/images/waterproof-board.png');
}





.product-list_category_title.cat788::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-list_category_title.cat789::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-list_category_title.cat786::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}

.product-list_category_title.cat790::before {
	background-image: url('/exhibition/store/assets/images/dummy_icon.jpg');
}


/* ↑ カテゴリタイトル ↑ */




.product-item {
	width: 100%; 
	margin: auto;
	padding-bottom: 40px; 
	border-bottom: 1px dotted #666; 
}

.product-item:last-of-type, 
.product-item:has(+ .product-item > .product-list_category_title) {
	border-bottom: none;
}

.product-item__category {
	/* display: none; */ 
}

.product-item__content {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 15px; 
}

.product-item__text {
	display: contents;
}

.product-item__header { 
	grid-row: 1; 
	align-self: start; 
}

.product-item__photo { 
	grid-row: 2; 
}

.product-item__figure {
	margin-top: 30px; 
}

.product-item__figure:first-child {
	margin-top: 0; 
}

.product-item__body { 
	grid-row: 3; 
	align-self: start; 
}

.product-item__body p {
	display: block; 
	margin: 0;
}

.product-item__description p:last-shild {
	margin: 0 0 1.5em 0;
	border: 1px solid #000;
}

.product-item__description p > img:first-child {
	margin-top: 1.5em;
}

.product-item__tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center; 
	flex-direction: row; 
	gap: 10px; 
	margin-bottom: 20px;
}

.product-item__tag {

}

.product-item__tag__label {
	display: block; 
	font-size:clamp(12px, calc(100vw * 14 / 1200) , 14px); 
	font-family: var(--okm-shin-go-m)
	text-align: center;
	line-height: 1;
	color: #fff;
	background-color: var(--basic-black);
	padding: 6px 12px;
	border-radius: 26px;




}

.product-item__name {
	font-size:clamp(18px, calc(100vw * 20 / 1200) , 20px); 
	font-family: var(--okm-shin-go-m);
	letter-spacing: 0.025em; 
	line-height: 1.4; 
	color: var(--basic-black);
	margin-bottom: 8px;
}

.product-item__type {
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
	font-family: var(--okm-shin-go-m);
	letter-spacing: 0.025em; 
	color: var(--basic-blue);
	
}

.supermarket .product-item__type {
	color: var(--supermarket-color);
}

.drugstore .product-item__type {
	color: var(--drugstore-color);
}

.product-item__description {
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
	margin-bottom: 1.5em;
	display: block; 
}

.product-item__description__figure {
	margin: 30px 0;
	border: 1px solid #000;
}

.product-item__description__columns {
	display: grid; 
	grid-template-columns: repeat(2, 1fr); 
	column-gap:clamp(10px, calc(100vw * 20 / 1200) , 30px); 
	row-gap: 30px; 
	margin-top: 30px;
}

.product-item__description__column {

}

.product-item__description .product-item__description__column p > img:first-child {
	margin-top: 0;
}

.product-item__description h4 {
	display: block; 
	font-size:clamp(16px, calc(100vw * 18 / 1200) , 18px); 
	font-family: var(--okm-shin-go-m);
	line-height: 1;
	padding-bottom: 1em;
	margin: 2em 0 1em;
	border-bottom: 1px solid #ccc;

}

.product-item__points {

}

.product-item__points-title {
	font-family: var(--okm-shin-go-b);
	color: var(--basic-blue); 
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
	margin-bottom: 0.25em;
}

.supermarket .product-item__points-title {
	color: var(--supermarket-color); 
}

.drugstore .product-item__points-title {
	color: var(--drugstore-color); 
}

.product-item__points h4 {
	font-family: var(--okm-shin-go-db);
}

.product-item__points p:has(+ h4) {
	display: block; 
	margin-bottom: 1em;
}

.product-item__points p:has(+ ul) {
	margin-bottom: 0;
}

.product-item__points ul {
	list-style-type: disc; 
	padding-left: 1.25em; 
	margin-bottom: 1em;
}

.product-item__points ul:last-child {
	margin-bottom: 0;
}

.product-item__movie,
.product-item__info {
	display: block; 
	width: fit-content; 
	margin: 20px 0 0 auto;
	line-height: 1;
}


.product-item__info a {
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
	font-family: var(--okm-shin-go-m);
	position: relative;
	display: block; 
	color: var(--basic-blue); 
}

.supermarket .product-item__info a {
	color: var(--supermarket-color); 
}

.drugstore .product-item__info a {
	color: var(--drugstore-color); 
}

.product-item__movie button {
	cursor: pointer; 
	font-size:clamp(14px, calc(100vw * 16 / 1200) , 16px); 
	font-family: var(--okm-shin-go-m);
	position: relative;
	display: block; 
	padding-right: 40px; 
	border: none;
	background-color: transparent; 
	outline: none; 
}

.product-item__movie button:after {
	content: ""; 
	display: inline-block; 
	position: absolute; 
	right: 0px; 
	top: 50%; 
	transform: translateY(-55%);
	height: 1.2em; 
	aspect-ratio: 83 / 52;
	object-fit: cover; 

	background-image: url('/exhibition/store/images/play_movie.png'); 
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: center;
	background-size:cover; 

}

.product-item__info a[target="_blank"]:after {
	margin-right: 0;
}



/* ==================================================
= Media Queries
================================================== */

/* 480px未満 */
@media only screen and (max-width: 479px) {


}

/* 480px以上 */
/* スマホ */
@media only screen and (min-width: 480px) {


}

/* 568px以上 */
/* タブレット */
@media only screen and (min-width: 568px) {


}

/* 667px以上 */
/* タブレット */
@media only screen and (min-width: 667px) {


}

/* 768px以上 */
/* タブレット */
@media only screen and (min-width: 768px) {

	/* アコーディオン */
	.accordion__toggle {
		cursor: unset; 
	}

	.accordion__toggle:after {
		display: none; 
	}

}

/* 1024px以上 */
/* PC */
@media only screen and (min-width: 1024px) {

	.product-filter__category .product-filter__item {
		padding: 13px 22px 13px 61px; 
	}

	.product-filter__category .product-filter__item::before {
		width: 50px;
		height: 50px;
		border-radius: 50px;
	}

	.product-item__content {
		grid-template-columns: 1fr 1fr;
		grid-template-columns: 420px 1fr; 
		gap: 60px; 
	}

	.product-item__text {
		display: grid; 
		grid-template-rows: auto auto; 
		grid-column: 2 / 3; 
		grid-row: 1 / 2; 
		align-content: start; 
		gap: 10px; 
	}

	.product-item__photo {
		grid-column: 1 / 2; 
		grid-row: 1 / 2; 
	}

	.product-item__header { 
		grid-row: 1; 
	}

	.product-item__body { 
		grid-row: 2; 
	}



}

