@charset 'UTF-8';

#fwCms_wrapper,
.jBox-wrapper {

	/* 非表示 */
	.ksDisplayNon {
		display: none !important;
	}

	.ksDisplayHidden {
		visibility: hidden !important;

		@media (max-width: 500px) {
			display: none !important;
		}
	}


	/*----------------------------------------------------------
	【商品一覧系・共通制御】
		.viewPc_BoxList
		.viewPc_BoxSlide
		.viewPc_WideList
		.viewSp_BoxList
		.viewSp_BoxSlide
	----------------------------------------------------------*/

	/*----------------------------------------------------------
	【CPNT大枠】 表示タイプ毎の独自補正
	----------------------------------------------------------*/
	/*【PC】*/
	@media (min-width: 769px) {
		.viewPc_BoxList {}

		.viewPc_BoxSlide {
			margin-left: auto;
			margin-right: auto;
			padding-left: 0;
			padding-right: 0;
			padding-bottom: 50px;
			width: 100%;

			.neoSwiper {
				padding-left: 4px;
				padding-right: 8px;
			}
		}

		.viewPc_WideList {}
	}

	/*【SP】*/
	@media (max-width: 768px) {
		.viewSp_BoxList {}

		.viewSp_BoxSlide {
			margin-left: auto;
			margin-right: auto;
			padding-left: 2px;
			padding-right: 2px;

			.neoSwiper {
				padding-left: 1px;
				padding-right: 7px;
			}
		}

		.viewSp_BoxSlide {
			/*
			padding-bottom: 20px;
*/
		}
	}


	/* サイドメニューありの時の幅調整 */
	/*
	&.layoutType2 .frame_MB,  
	&.layoutType3 .frame_MB {
		@media (min-width: 769px) {
			.viewPc_BoxList {}

			.viewPc_BoxSlide {
				padding-left: 0;
				padding-right: 0;
				width: 100%;
				
				.neoSwiper {
					padding-left: 8px;
					padding-right: 8px;
				}
			}

			.viewPc_WideList {}
		}

		@media (max-width: 768px) {
			.viewSp_BoxList {}

			.viewSp_BoxSlide {
				padding-left: 2px;
				padding-right: 2px;

				.neoSwiper {
					padding-left: 5px;
					padding-right: 5px;
				}
			}

			.viewSp_BoxSlide {}
		}
	}
*/

	/*----------------------------------------------------------
	【商品一覧系・共通制御】 スライダーデザイン
	----------------------------------------------------------*/
	.splide {}

	.splide__arrow--prev {
		left: -30px;

		@media (max-width: 768px) {
			left: -5px;
		}
	}

	.splide__arrow--next {
		right: -30px;

		@media (max-width: 768px) {
			right: -5px;
		}
	}

	.splide__pagination {
		bottom: -25px;
	}

	.splide__pagination__page {
		border-radius: 10px;
		width: 2em;
		height: 9px;
		margin: 4px 8px 2px;
	}

	.splide__pagination__page:hover {
		background: var(--global_clr_green);
	}

	.splide__pagination__page.is-active {
		background: var(--global_clr_green);
		margin: 0 15px;
	}


	/*----------------------------------------------------------
	【商品一覧系・共通制御】 スライダーデザイン（Swiper）
	----------------------------------------------------------*/
	.swiper-button-prev,
	.swiper-button-next {
		align-items: center;
		background: #ccc;
		border: 0;
		border-radius: 50%;
		cursor: pointer;
		display: -ms-flexbox;
		display: flex;
		height: 2em;
		-ms-flex-pack: center;
		justify-content: center;
		opacity: 0.7;
		padding: 0;
		position: absolute;
		top: 50%;
		margin-top: -22px;
		transform: translateY(-50%);
		width: 2em;
		z-index: 5;

		&:after {
			position: absolute;
			font-size: 16px;
			color: #000;
			font-weight: bold;
			text-shadow: 1px 0 1px #666;
			left: 34%;
		}

		&:hover {
			background: #eee;

			&:after {
				color: #FF0000;
				text-shadow: 1px 0 1px #FFF;
			}
		}

		&:focus {
			outline: 2px solid #0bf;
			outline-offset: 2px;

			@media (max-width: 768px) {
				outline-offset: 0;
			}
		}

		&.swiper-button-disabled {
			opacity: 0.3;

			&:after {
				color: #FFF;
				font-weight: bold;
				text-shadow: 1px 0 1px #EEE;
			}
		}
	}

	.swiper-pagination {
		bottom: 0;

		.swiper-pagination-bullet {
			background: #333;
			border: 0;
			border-radius: 6px;
			display: inline-block;
			height: 9px;
			margin: 0 2px;
			width: 40px;
			transition: transform .2s linear;

			@media (max-width: 768px) {
				margin: 0 4px;
				width: 26px;
			}

			@media (max-width: 500px) {
				width: calc((100% - 100px) / 10);
			}

			&.swiper-pagination-bullet-active {
				background: var(--global_clr_green);
			}
		}
	}

	.frame_MH,
	.frame_MB,
	.frame_MF {
		.swiper-button-prev {
			left: -5px;

			@media (max-width: 768px) {
				left: 1px;
			}
		}

		.swiper-button-next {
			right: -5px;

			@media (max-width: 768px) {
				right: 1px;
			}
		}

		.swiper-button-prev,
		.swiper-button-next,
		.swiper-pagination {
			display: none;
		}

		.setSwiper .swiper-button-prev,
		.setSwiper .swiper-button-next {
			display: flex;
		}

		.setSwiper .swiper-pagination {
			display: initial;
		}
	}


	/*----------------------------------------------------------
    【商品一覧系・商品ブロックエリア 共通制御】 
     ┗ .itemBlock
        ┗ .itemBlockHeader
           └ .itemTopIcoArea
              └ .icoType_Compare
              └ .icoType_Ranking 
              └ .icoType_Notice 
           └ .icoType_Favorite
           └ .itemBlockImg
           └ .icoType_Service
        ┗ .itemBlockBody
           └ .itemBlockName
           └ .itemBlockInfo
           └ .itemIcoInfo
              └ .icoType_Passport
              └ .icoType_Status
    ----------------------------------------------------------*/

	/*----------------------------------------------------------
	【商品一覧系】 商品ブロックエリア Lv1・大枠の制御 ※ここには大枠の .itemBlock の制御のみ記述
	----------------------------------------------------------*/
	.itemBlock {
		height: initial;
		min-width: 220px;
		margin: 3px 0;
		padding: 4px 6px 1px;
		border-radius: 10px;
		background-color: var(--global_clr_white);
		box-shadow: 0 1px 5px 0 #8592B8;

		/*デフォルト [cp_slide_width="M"] */
		width: calc((100% - 182px) / 12);
		@media (max-width: 2900px) { width: calc((100% - 168px) / 11);}
		@media (max-width: 2680px) { width: calc((100% - 154px) / 11);}
		@media (max-width: 2460px) { width: calc((100% - 140px) / 10);}
		@media (max-width: 2240px) { width: calc((100% - 126px) / 9);}
		@media (max-width: 2020px) { width: calc((100% - 112px) / 8);}
		@media (max-width: 1800px) { width: calc((100% - 98px) / 7);}
		@media (max-width: 1580px) { width: calc((100% - 84px) / 6);}
		@media (max-width: 1360px) { width: calc((100% - 70px) / 5);}
		@media (max-width: 1140px) { width: calc((100% - 56px) / 4);}
		@media (max-width: 920px)  { width: calc((100% - 42px) / 3);}
		@media (max-width: 768px)  { width: 100%;}
	}
	/*【サイズ別の幅設定（商品Box型・左右ぶち抜き）】単純に画面幅から算出*/
	.neoSwiperProd[cp_slide_width="S"] {
		.itemBlock {
			min-width: initial;
			width: calc((100% - 210px) / 15);
			@media (max-width: 2780px) { width: calc((100% - 196px) / 14);}
			@media (max-width: 2600px) { width: calc((100% - 182px) / 13);}
			@media (max-width: 2420px) { width: calc((100% - 168px) / 12);}
			@media (max-width: 2240px) { width: calc((100% - 154px) / 11);}
			@media (max-width: 2060px) { width: calc((100% - 140px) / 10);}
			@media (max-width: 1880px) { width: calc((100% - 126px) / 9);}
			@media (max-width: 1700px) { width: calc((100% - 112px) / 8);}
			@media (max-width: 1520px) { width: calc((100% - 98px) / 7);}
			@media (max-width: 1340px) { width: calc((100% - 84px) / 6);}
			@media (max-width: 1160px) { width: calc((100% - 70px) / 5);}
			@media (max-width: 980px)  { width: calc((100% - 56px) / 4);}
			@media (max-width: 820px)  { width: calc((100% - 42px) / 3);}
			@media (max-width: 768px)  { width: 100%;}
		}
	}

	.neoSwiperProd[cp_slide_width="L"] {
		.itemBlock {
			width: calc((100% - 154px) / 11);
			@media (max-width: 2760px) { width: calc((100% - 140px) / 10);}
			@media (max-width: 2520px) { width: calc((100% - 126px) / 9);}
			@media (max-width: 2280px) { width: calc((100% - 112px) / 8);}
			@media (max-width: 2040px) { width: calc((100% - 98px) / 7);}
			@media (max-width: 1800px) { width: calc((100% - 84px) / 6);}
			@media (max-width: 1560px) { width: calc((100% - 70px) / 5);}
			@media (max-width: 1320px) { width: calc((100% - 56px) / 4);}
			@media (max-width: 1080px) { width: calc((100% - 42px) / 3);}
			@media (max-width: 840px)  { width: calc((100% - 28px) / 2);}
			@media (max-width: 768px)  { width: 100%;}
		}
	}

	/*【サイズ別の幅設定（商品Box型・サイドメニューあり）】単純に画面幅から算出*/
	&.layoutType2 .frame_MB [cp_slide_width="L"] .itemBlock,
	&.layoutType3 .frame_MB [cp_slide_width="L"] .itemBlock {
		width: calc((100% - 140px) / 10);
		@media (max-width: 2780px) { width: calc((100% - 126px) / 9);}
		@media (max-width: 2540px) { width: calc((100% - 112px) / 8);}
		@media (max-width: 2300px) { width: calc((100% - 90px) / 7);}
		@media (max-width: 2060px) { width: calc((100% - 90px) / 6);}
		@media (max-width: 1820px) { width: calc((100% - 70px) / 5);}
		@media (max-width: 1580px) { width: calc((100% - 56px) / 4);}
		@media (max-width: 1340px) { width: calc((100% - 42px) / 3);}
		@media (max-width: 1100px) { width: calc((100% - 28px) / 2);}
		@media (max-width: 768px) { width: 100%;}
	}

	&.layoutType2 .frame_MB [cp_slide_width="M"] .itemBlock,
	&.layoutType3 .frame_MB [cp_slide_width="M"] .itemBlock {
		width: calc((100% - 168px) / 12);
		@media (max-width: 2780px) { width: calc((100% - 154px) / 11);}
		@media (max-width: 2580px) { width: calc((100% - 140px) / 10);}
		@media (max-width: 2380px) { width: calc((100% - 126px) / 9);}
		@media (max-width: 2180px) { width: calc((100% - 112px) / 8);}
		@media (max-width: 1980px) { width: calc((100% - 98px) / 7);}
		@media (max-width: 1780px) { width: calc((100% - 84px) / 6);}
		@media (max-width: 1580px) { width: calc((100% - 70px) / 5);}
		@media (max-width: 1380px) { width: calc((100% - 56px) / 4);}
		@media (max-width: 1180px) { width: calc((100% - 42px) / 3);}
		@media (max-width: 980px) { width: calc((100% - 28px) / 2);}
		@media (max-width: 768px) { width: 100%;}
	}

	&.layoutType2 .frame_MB [cp_slide_width="S"] .itemBlock,
	&.layoutType3 .frame_MB [cp_slide_width="S"] .itemBlock {
		width: calc((100% - 186px) / 14);
		@media (max-width: 2900px) { width: calc((100% - 172px) / 13);}
		@media (max-width: 2720px) { width: calc((100% - 168px) / 12);}
		@media (max-width: 2540px) { width: calc((100% - 154px) / 11);}
		@media (max-width: 2360px) { width: calc((100% - 140px) / 10);}
		@media (max-width: 2180px) { width: calc((100% - 126px) / 9);}
		@media (max-width: 2000px) { width: calc((100% - 112px) / 8);}
		@media (max-width: 1820px) { width: calc((100% - 98px) / 7);}
		@media (max-width: 1640px) { width: calc((100% - 84px) / 6);}
		@media (max-width: 1460px) { width: calc((100% - 70px) / 5);}
		@media (max-width: 1280px) { width: calc((100% - 56px) / 4);}
		@media (max-width: 1100px) { width: calc((100% - 42px) / 3);}
		@media (max-width: 920px) { width: calc((100% - 28px) / 2);}
		@media (max-width: 768px) { width: calc((100% - 28px) / 2);}
	}

	/*【サイズ別の幅設定（商品List型Cpnt）】商品情報・ランキングは24の約数のみ*/
	&.layoutType2 .frame_MB .MK4PFRDL010_02 .itemBlock,
	&.layoutType3 .frame_MB .MK4PFRDL010_02 .itemBlock,
	&.layoutType2 .frame_MB .MK4PFRRK001_10 .itemBlock,
	&.layoutType3 .frame_MB .MK4PFRRK001_10 .itemBlock {
		width: calc((100% - 120px) / 8);
		@media (max-width: 2360px) { width: calc((100% - 90px) / 6);}
		@media (max-width: 1840px) { width: calc((100% - 48px) / 4);}
		/* @media (max-width: 1580px) { width: calc((100% - 48px) / 4);} */
		@media (max-width: 1360px) { width: calc((100% - 36px) / 3);}
		@media (max-width: 1080px) { width: calc((100% - 22px) / 2);}
		@media (max-width: 830px) { width: 100%;}
		@media (max-width: 768px) { width: 100%;}
	}

	/* 【.itemBlock】表示タイプ毎の独自補正（PC）*/
	@media (min-width: 769px) {
		.viewPc_BoxList {
			.neoSwiperWrapper {
				display: flex;
				flex-wrap: wrap;
				row-gap: 15px;
				column-gap: 15px;

				.itemBlock {
					min-width: initial;
				}
			}
		}

		.viewPc_BoxSlide {
			.neoSwiperProd {
				position: relative;
				padding-left: 8px;
				padding-right: 14px;

				.neoSwiperWrapper {
					padding-left: 5px;
					padding-right: 5px;
					display: flex;
					column-gap: 16px;
					row-gap: 12px;
					width: 100%;
					overflow-x: hidden;

					&.swiper-wrapper {
						column-gap: initial;
						row-gap: initial;
						overflow-x: initial;
						flex-wrap: initial;
						position: initial;
						padding-bottom: 32px;
					}
				}

				.swiper {
					position: initial;

					.itemBlock {
						min-width: initial;
					}
				}
			}
		}

		/* Wideだけはどんな状況でも最優先style適用 */
		.viewPc_WideList {
			.itemBlock {
				display: flex;
				width: 100% !important;
				margin: 0 0 30px !important;
			}
		}
	}

	/* 【.itemBlock】表示タイプ毎の独自補正（SP）*/
	@media (max-width: 768px) {
		.viewSp_BoxList {
			.neoSwiperWrapper {
				padding: 10px 5px;
			}

			.neoSwiperWrapper {
				display: flex;
				column-gap: 16px;
				flex-wrap: wrap;

				&.swiper-wrapper {
					column-gap: initial;
					flex-wrap: initial;
				}
			}

			.itemBlock {
				display: flex;
				column-gap: 20px;
				margin: 0 0 20px;
			}
		}

		.viewSp_BoxSlide {
			.neoSwiperProd {
				position: relative;
				padding-left: 8px;
				padding-right: 10px;

				.neoSwiperWrapper {
					padding-left: 5px;
					padding-right: 5px;
					display: flex;
					column-gap: 16px;
					row-gap: 12px;
					width: 100%;
					overflow-x: hidden;

					/*
					flex-wrap: wrap;
	*/
					&.swiper-wrapper {
						column-gap: initial;
						row-gap: initial;
						overflow-x: initial;
						flex-wrap: initial;
						position: initial;
						padding-bottom: 40px;
					}
				}

				.swiper {
					position: initial;

					.itemBlock {
						min-width: initial;
					}
				}
			}
		}
	}

	/* △.itemBlock△ */


	/*----------------------------------------------------------
	【商品一覧系】 商品ブロックエリア Lv2・ブロックヘッダの制御 ※ .itemBlockHeader 以降はここに記述
        ┗ .itemBlockHeader
           └ .itemTopIcoArea
              └ .icoType_Compare
              └ .icoType_Ranking 
              └ .icoType_Notice 
           └ .icoType_Favorite
           └ .itemBlockImg
           └ .icoType_Service
	----------------------------------------------------------*/
	.itemBlockHeader {
		display: grid;
		grid: auto auto auto / auto 30px;

		.itemTopIcoArea {
			grid-area: 1 / 1 / 2 / 2;
		}

		.icoType_Favorite {
			grid-area: 1 / 2 / 2 / 3;
			margin-bottom: 15px;
		}

		.itemBlockImg {
			grid-area: 2 / 1 / 3 / 3;
		}

		.icoType_Service {
			grid-area: 3 / 1 / 4 / 3;
		}

		/*----------------------------------------------------------
		【商品一覧系】 商品ブロックエリア Lv3・商品画像上部
		----------------------------------------------------------*/
		.itemTopIcoArea {
			display: flex;
			justify-content: start;
			flex-wrap: wrap;
			column-gap: 5px;
			margin: 0 0 15px;
		}

		/*----------------------------------------------------------
		【商品一覧系】 商品ブロックエリア Lv3・商品画像
		----------------------------------------------------------*/
		.itemBlockImg {
			display: flex;
			justify-content: center;
			margin-bottom: 15px;

			img {
				max-width: 180px;
				max-height: 180px;
			}
		}

		/*----------------------------------------------------------
		【商品一覧系】 商品ブロックエリア Lv3・サービス系アイコン
		  ※common.cssにて制御
		----------------------------------------------------------*/
	}

	/* 【.itemBlockHeader】表示タイプ毎の独自補正（PC）*/
	@media (min-width: 769px) {
		.viewPc_BoxList {
			.itemBlockHeader {
				.itemBlockImg {
					img {
						width: 180px;
						max-width: 180px;
						max-height: 180px;
					}
				}
			}
		}

		/*
		.viewPc_BoxSlide {
			.itemBlockHeader {
			}
		}
	*/
		.viewPc_WideList {
			.itemBlockHeader {
				min-width: 230px;
				max-width: 230px;
				margin: 0 20px 0 0;

				.itemBlockImg {
					img {
						width: 180px;
						max-width: 180px;
						max-height: 180px;
					}
				}

				/* SP化直前の微調整 */
				@media (max-width: 860px) {
					min-width: initial;
					max-width: initial;
					width: 38%;

					.itemBlockImg {
						img {
							width: 100%;
							max-width: initial;
							max-height: initial;
						}
					}
				}
			}
		}
	}

	/* 【.itemBlockHeader】表示タイプ毎の独自補正（SP）*/
	@media (max-width: 768px) {
		.viewSp_BoxList {
			.itemBlockHeader {
				width: 120px;
				height: fit-content;
				display: grid;
				grid: auto auto auto auto / 120px;

				.itemTopIcoArea {
					grid-area: 1 / 1 / 2 / 2;
					column-gap: 0;
					margin: 0 0 10px;
				}

				.itemBlockImg {
					grid-area: 2 / 1 / 3 / 2;
				}

				.icoType_Service {
					grid-area: 3 / 1 / 4 / 2;
				}

				.icoType_Favorite {
					grid-area: 4 / 1 / 5 / 2;
					margin: 3px auto 0 8px;
				}

			}
		}

		.viewSp_BoxSlide {
			.itemBlockHeader {
				.itemBlockImg {
					img {
						width: 150px;
						max-width: 150px;
						max-height: 150px;
					}
				}
			}
		}
	}

	/* △.itemBlockHeader△ */


	/*----------------------------------------------------------
	【商品一覧系】 各種表示項目制御（汎用利用可能なように、.itemBlock 配下ではなく外だし記述。）
	----------------------------------------------------------*/

	/* 商品名等 */
	a.itemBlockName {
		text-decoration: underline;
		color: var(--global_clr_black);
		font-weight: bold;
		display: inline-block;
		word-break: break-all;

		&:hover {
			text-decoration: none;
		}
	}

	.itemBlockName {
		span {
			color: var(--global_clr_black);
			font-weight: bold;
		}

		span:empty {
			display: none;
		}

		.itemNameInfo {
			display: block;
			display: -webkit-box;
			overflow: hidden;
			margin-bottom: 4px;
			text-overflow: ellipsis;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 3;
			min-height: 60px;
		}

		.itemModelNum {
			display: block;
			display: -webkit-box;
			overflow: hidden;
			text-overflow: ellipsis;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 2;
			min-height: 40px;
		}

		.itemNameInfo,
		.itemModelNum {
			span {
				display: contents;

				&::before {
					content: "　";
				}

				&::after {
					content: "";
				}
			}

			span:first-child,
			span:empty {
				&::before {
					content: "";
				}
			}
		}

		.itemBlockInfo {
			margin: 5px 0;
		}
	}

	.itemBlockInfo {
		margin-top: 4px;
	}

	/* 在庫情報・納期情報 */
	.itemStockDeliveryInfo {
		display: flex;
		justify-content: space-between;
		padding: 0 0 2px;
	}

	/* 在庫情報 */
	.itemStockInfo {
		font-weight: bold;
		color: var(--global_clr_darkblue);

		@media (max-width: 768px) {
			display: inline-block;
			margin-bottom: 5px;
		}

		&.val01 {
			color: var(--global_clr_darkblue);
		}

		&.val02 {
			color: var(--global_clr_darkred);
		}

		&.val03 {
			color: var(--global_clr_gray);
		}

		/*	緑　　・1201：在庫あり、2201：予約受付中
			赤系　・1202：在庫残少、1203：残りわずか
			黒　　・1206：お取り寄せ 
			グレー・1204：在庫なし、1205：ネット在庫完売、2202：予約受付終了
		*/
		/*	緑　　・1201：在庫あり
			赤系　・1202：残りわずか
			黒　　・1203：お取り寄せ
			グレー・1204：完売 */
		&.val1201,
		&.val2201,
		&.itemStockInfo_1201,
		&.itemStockInfo_2201 {
			color: var(--global_clr_green);
		}

		&.val1202,
		&.val1203,
		&.itemStockInfo_1202 {
			color: var(--global_clr_darkred);
		}

		&.val1206,
		&.itemStockInfo_1206,
		&.itemStockInfo_1203 {
			color: var(--global_clr_black);
		}

		&.val1204,
		&.val1205,
		&.val2202,
		&.itemStockInfo_1204,
		&.itemStockInfo_1205,
		&.itemStockInfo_2202 {
			color: var(--global_clr_bluegray);
		}
	}

	/* 納期情報 */
	.itemDeliveryInfo {
		font-weight: bold;
		color: var(--global_clr_darkblue);

		&.val01 {
			color: var(--global_clr_darkblue);
		}

		&.val02 {
			color: var(--global_clr_darkgray);
		}

		&.val03 {
			color: var(--global_clr_gray);
		}
	}


	/*----------------------------------------------------------
	【商品一覧系】 商品ブロックエリア Lv2・ブロックボディの制御 ※ .itemBlockBody 以降はここに記述
        ┗ .itemBlockBody
           └ .itemBlockName
           └ .itemBlockInfo
           └ .itemIcoInfo
              └ .icoType_Passport
              └ .icoType_Status
	----------------------------------------------------------*/
	.itemBlockBody {}

	/* 【.itemBlockBody】表示タイプ毎の独自補正（PC）*/
	@media (min-width: 769px) {
		.viewPc_BoxList {
			.itemBlockBody {
				max-width: 272px;
				margin: 0 auto;

				.itemIcoInfo {
					max-width: 224px;
					margin: 0 0 0 auto;
				}
			}
		}

		.viewPc_BoxSlide,
		.viewPc_BoxList {
			.itemBlockBody {
				max-width: 272px;
				margin: 0 auto;

				.itemIcoInfo {
					min-width: 218px;
					max-width: 224px;
					margin: 0 0 0 auto;
				}
			}

			.neoSwiperProd[cp_slide_width="M"] {
				.itemBlockBody {
					.itemIcoInfo {
						min-width: 180px;
						max-width: 186px;

						.icoType_Passport {
							li {
								>span {
									width: 180px;
									padding: 2px 0 0 30px;
								}

								.icoPassport {
									letter-spacing: -1.5px;
									;
								}

								.icoMorePassport {
									width: 168px;
									letter-spacing: -1.8px;
									padding: 2px 0 0 13px;

									.big_text {
										width: 30px;
										height: 30px;
										top: -2px;
										left: -15px;
										background: var(--global_clr_darkred) url(/excludes/KEC/common/img/icon/ico_an_01_box.svg) no-repeat top 2px left 2px;
										background-size: 27px;
									}
								}

								.icoMoreValue {
									width: 168px;
									letter-spacing: -1.1px;
									padding: 2px 0 0 15px;

									.big_text {
										width: 30px;
										height: 30px;
										top: -4px;
										left: -15px;
										font-size: 1.7rem;
									}
								}

								.icoCampaign {
									letter-spacing: -0.6px;
								}

								.icoCoupon {
									letter-spacing: -1.2px;
								}
							}
						}

						.icoType_Status {
							column-gap: 8px;
							max-width: 174px;
						}
					}
				}
			}

			.neoSwiperProd[cp_slide_width="S"] {
				.itemBlockBody {
					.itemBlockInfo {

						.itemBlockIncTitle {
							width: 100%;
						}
					}

					.itemIcoInfo {
						min-width: 156px;
						max-width: 186px;

						.icoType_Passport {
							background: none;
							background-size: 28px;

							li {
								>span {
									width: 156px;
									padding: 2px 0 0 4px;
								}

								.icoPassport {
									letter-spacing: -1.5px;
									background: none;
									background-size: 28px;
								}

								.icoMorePassport {
									width: 156px;
									letter-spacing: -1.8px;
									padding: 2px 0 0 2px;
									margin-left: 0px;

									.big_text {
										display: none;
									}
								}

								.icoMoreValue {
									width: 156px;
									letter-spacing: -2.0px;
									padding: 2px 0 0 16px;
									margin-left: 0px;

									.big_text {
										width: 17px;
										height: 26px;
										top: -1px;
										left: 0px;
										font-size: 1.4rem;
										border-radius: 6px;
										padding: 4px 0 0 2px;
										background: transparent;
									}
								}

								.icoCampaign {
									letter-spacing: -0.6px;
									background: none;
								}

								.icoCoupon {
									letter-spacing: -1.2px;
									background: none;
								}
							}
						}

						.icoType_Status {
							column-gap: 8px;
							max-width: 156px;
							margin-right: 0;
						}
					}
				}
			}
		}

		.viewPc_WideList {
			.itemBlockBody {
				flex: 1;
				padding-right: 10px;

				/* 名称全表示化 */
				.itemBlockName {
					min-height: inherit;
				}

				.itemBlockReviewArea {
					min-height: inherit;
				}

				.itemIcoArea {
					justify-content: start;

					li {
						margin: 0 10px 0 0;
					}
				}

				.itemNameInfo {
					-webkit-line-clamp: initial;
					min-height: initial;
				}

				.itemModelNum {
					-webkit-line-clamp: initial;
					min-height: initial;
				}
			}
		}
	}

	/* 【.itemBlockBody】表示タイプ毎の独自補正（SP）*/
	@media (max-width: 768px) {
		.viewSp_BoxList {
			.itemBlockBody {
				/* 画面幅 - itemBlockHeader幅 - 20px  */
				width: calc(100vw - 120px - 20px);
				margin-left: 10px;

				/* 名称全表示化 */
				.itemBlockName {
					min-height: inherit;
				}

				.itemBlockReviewArea {
					min-height: inherit;
				}

				.itemNameInfo {
					-webkit-line-clamp: 4;
					min-height: initial;
				}

				.itemModelNum {
					-webkit-line-clamp: 3;
					min-height: initial;
				}
			}
		}

		.viewSp_BoxSlide {
			.itemBlockBody {
				.cpHeadTitle h2 {
					font-size: 16px;
					letter-spacing: -0.5px;
					padding: 3px 0 0;
				}

				.itemIcoInfo {
					min-width: 202px;
					max-width: 202px;
					margin: 0 0 0 auto;
				}
			}

			.neoSwiperProd[cp_slide_width="M"] {
				.itemBlockBody {
					.itemIcoInfo {
						min-width: 186px;
						max-width: 186px;

						.icoType_Passport {
							li {
								>span {
									width: 186px;
								}

								.icoPassport {
									/* letter-spacing: -0.9px; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico180_passport.svg) no-repeat top 0px left -1px;
									background-size: 180px;
								}

								.icoMorePassport {
									/* width: 174px;
									letter-spacing: -1.6px; */
									/*SP時SVG化*/
									width: 186px;
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico180_more_passport.svg) no-repeat top 0px left 0px;
									background-size: 186px;
								}

								.icoMoreValue {
									/* width: 174px;
									letter-spacing: -0.8px; */
									/*SP時SVG化*/
									width: 186px;
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico180_more_value.svg) no-repeat top 0px left 0px;
									background-size: 186px;
								}

								.icoCampaign {
									/* letter-spacing: 0px; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico180_campaign.svg) no-repeat top 0px left -1px;
									background-size: 180px;
								}

								.icoCoupon {
									/* letter-spacing: -0.7px; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico180_coupon.svg) no-repeat top 0px left -1px;
									background-size: 180px;
								}
							}
						}

						.icoType_Status {
							column-gap: 2px;

							>li {
								>span {
									max-width: 92px;
								}
							}
						}
					}
				}
			}

			.neoSwiperProd[cp_slide_width="M"],
			.neoSwiperProd[cp_slide_width="S"] {
				.itemBlockBody {
					.itemBlockInfo {

						.itemBlockIncTitle {
							width: 100%;
						}
					}

					.itemIcoInfo {
						min-width: 142px;
						max-width: 186px;

						.icoType_Passport {
							background: none;
							background-size: 28px;
							justify-content: end;

							li {
								>span {
									width: 142px;
									padding: 2px 0 0 4px;
								}

								.icoPassport {
									/* letter-spacing: -1.5px;
									background: none;
									background-size: 28px; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico156_passport.svg) no-repeat top 7px left 5px;
									background-size: 132px;
								}

								.icoMorePassport {
									width: 142px;
									letter-spacing: -1.8px;
									padding: 2px 0 0 2px;
									margin-left: 2px;
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_darkred) url(/excludes/KEC/common/img/icon_sp/ico156_more_passport.svg) no-repeat top 5px left 5px;
									background-size: 132px;
									padding: 0;
									margin-left: 0;
									height: 26px;
									margin-top: 0;

									.big_text {
										display: none;
									}
								}

								.icoMoreValue {
									width: 142px;
									letter-spacing: -2.0px;
									padding: 2px 0 0 16px;
									margin-left: 2px;

									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_darkred) url(/excludes/KEC/common/img/icon_sp/ico156_more_value.svg) no-repeat top 5px left 5px;
									background-size: 132px;
									padding: 0;
									margin-left: 0;
									height: 26px;
									margin-top: 0;

									.big_text {
										width: 17px;
										height: 26px;
										top: -1px;
										left: 0px;
										font-size: 1.4rem;
										border-radius: 6px;
										padding: 4px 0 0 2px;
										background: transparent;

										@media (max-width: 768px) {
											display: none;
										}
									}
								}

								.icoCampaign {
									/* letter-spacing: -0.6px;
									background: none; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico156_campaign.svg) no-repeat top 7px left 5px;
									background-size: 132px;
								}

								.icoCoupon {
									/* letter-spacing: -1.2px;
									background: none; */
									/*SP時SVG化*/
									text-indent: -9999px;
									background: var(--global_clr_white) url(/excludes/KEC/common/img/icon_sp/ico156_coupon.svg) no-repeat top 7px left 5px;
									background-size: 132px;
								}
							}
						}

						.icoType_Status {
							column-gap: 8px;
							max-width: 142px;
							margin-right: 0;
						}
					}
				}
			}
		}
	}

	/* △.itemBlockBody△ */


	.itemBlockPriceIncArea {
		display: flex;
		justify-content: end;
		align-items: baseline;
		flex-wrap: wrap;
		margin: 0 0 5px;

		.itemBlockIncTitle {
			font-size: 12px;
			font-weight: normal;
			margin: 0 5px 0 0;

			@media (max-width: 768px) {}
		}

		.itemBlockIncPrice {
			color: var(--global_clr_red);
			font-size: 18px;
			font-weight: bold;
			letter-spacing: -0.5px;
		}

		.itemBlockIncUnit {
			color: var(--global_clr_red);
			font-size: 13px;
			font-weight: bold;
			margin: 0;
		}

		.itemBlockIncInfo {
			font-size: 11px;
			font-weight: normal;
		}
	}

	/* 表示タイプ毎の独自補正（SP）*/
	@media (max-width: 768px) {
		.viewSp_BoxSlide {
			.itemBlockPriceIncArea {
				.itemBlockIncTitle {
					display: block;
					width: 100%;
				}
			}
		}
	}

	.itemBlockSeparateArea {
		display: flex;
		justify-content: end;
		align-items: baseline;
		font-size: 13px;
		font-weight: bold;

		.itemBlockSeparatePrice {}

		.itemBlockSeparateUnit {}

		.itemBlockSeparateInfo {
			font-size: 11px;
			font-weight: normal;
		}
	}



	/*----------------------------------------------------------
	  ページネーション機能
	----------------------------------------------------------*/
	.pagination {
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 6px;
		margin: 20px auto 50px;

		@media (max-width: 768px) {
			column-gap: 3px;
			margin: 15px auto 40px;
		}

		.paginationLink {
			display: flex;
			justify-content: center;
			align-items: center;
			flex-wrap: wrap;
			border-radius: 8px;
			border: solid 2px var(--global_clr_iceblue);

			.paginationNum {
				display: inline-block;
				font-weight: bold;
				text-align: center;
				min-width: 44px;
				padding: 10px;
				white-space: nowrap;
				border-radius: 8px;

				@media (max-width: 960px) {
					min-width: 32px;
					padding: 10px 2px;
				}

				@media (max-width: 900px) {
					min-width: 28px;
					padding: 10px 1px;
				}

				@media (max-width: 840px) {
					min-width: 24px;
					padding: 10px 0;
				}

				@media (max-width: 768px) {
					min-width: 28px;
					min-height: 40px;
					padding: 10px 2px;
				}
			}

			a {
				text-decoration: none;
				background: var(--global_clr_white);
				color: var(--global_clr_black);
			}

			a:hover {
				background: var(--global_clr_black);
				color: var(--global_clr_white);
				text-decoration: none;
			}

			span {
				background: var(--global_clr_brightgray);
				color: var(--global_clr_black);
			}

			&.isActive {
				background: var(--global_clr_black);
				pointer-events: none;

				span {
					background: var(--global_clr_black);
					color: var(--global_clr_white);
				}
			}

			&.disabled {
				pointer-events: none;

				span {
					background: var(--global_clr_brightgray);
					color: var(--global_clr_gray);
					color: #bbbbbb;
				}
			}
		}
	}


	/*----------------------------------------------------------
	  共通：データ「0」件時のメッセージ
	----------------------------------------------------------*/
	.cpServerError,
	.cpResultNoData {
		max-width: 1260px;
		margin: 0 auto;
		padding: 20px 20px;
		min-height: 320px;

		@media (max-width: 768px) {
			padding: 20px 5px;
		}

		.cpAnnounceHead {
			display: inline-block;
			width: 99.8%;
		}

		.cpAnnounceMsg,
		.cpResultNoDataHead {
			border-bottom: 2px solid var(--global_clr_lightgray);
			margin: 20px auto;
			padding-top: 20px;
			font-weight: bold;
			font-size: 1.6rem;
			font-weight: bold;
			color: var(--global_clr_darkred);

			li {
				padding: 0 0 10px;
				margin: 0 0 15px;
			}

			h1 {
				font-size: 2.0rem;
				font-weight: bold;
				border-bottom: 0px solid var(--global_clr_lightgray);
			}
		}

		.cpAnnounceBody {
			padding-top: 40px;
			line-height: 2.6rem;
			color: var(--global_clr_black);
			display: flex;
			flex-direction: column;
			padding: 30px 0 20px;

			ul {
				margin: 0 auto 60px 0;
			}
		}
	}

	/*----------------------------------------------------------
	▼▼▼	各コンポーネント ▼▼▼
	----------------------------------------------------------*/

	/*----------------------------------------------------------
	  MK4PFRDH300_01：SCパンくずリスト
	----------------------------------------------------------*/
	.MK4PFRDH300_01 {
		margin-bottom: 30px;
	}

	.breadcrumbList {
		padding: 0 10px;

		@media (max-width: 768px) {
			padding: 0 5px 0 0;
		}

		ul {
			display: flex;
			overflow-x: auto;

			/* Microsoft Edgeへの対応 */
			-ms-overflow-style: none;
			/* Firefoxへの対応 */
			scrollbar-width: 1px;

			/* ドラッグ中のテキスト選択を防止 */
			user-select: none;
			-webkit-user-select: none;
			-moz-user-select: none;
			-ms-user-select: none;

			/* デフォルトは通常のカーソル */
			cursor: default;

			/* スクロール可能な場合のみgrabカーソルを適用 */
			&.is-scrollable {
				cursor: grab;

				&:active {
					cursor: grabbing;
				}
			}

			&::-webkit-scrollbar {
				width: 4px;
				height: 4px;
				display: 1px;
			}

			&::-webkit-scrollbar-thumb {
				background: #9da9bb;
				width: 20px;
				border-radius: 4px;
			}

			&::-webkit-scrollbar-track {
				background: var(--global_clr_brightgray);
				border-radius: 4px;
			}

			li {
				white-space: nowrap;
				height: 20px;
				display: table;
				margin: 4px 6px 6px 0;

				.homeLink {
					display: block;
					width: 23px;
					height: 23px;
					margin-top: -4px;
					background: url(../img/icon/bc_home.png) no-repeat;
				}

				a {
					pointer-events: auto;
				}
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRDT060_09：SC最優先お知らせ表示
	----------------------------------------------------------*/
	.MK4PFRDT060_09 {
		margin: 0 0 10px;

		.informationArea {
			display: flex;
			justify-content: center;
			background: var(--global_clr_brightgray);

			ul {
				display: flex;
				justify-content: center;
				background: var(--global_clr_brightgray);
				padding: 5px 0;

				align-items: start;
				flex-direction: column;
				row-gap: 10px;
				width: fit-content;
				margin: 7px auto;

				li {
					margin: 0 auto 0 0;

					.informationTitle {

						@media (max-width: 768px) {
							display: flex;
							flex-direction: column;
						}

						.title {
							padding-left: 12px;
						}
					}
				}
			}
		}
	}


	/*----------------------------------------------------------
		MK4PFRDT060_01：SCお知らせ一覧
		MK4ST_TOP_0001：セキュリティに関するお知らせ
	----------------------------------------------------------*/
	.cpntInfoType {

		.grow {
			flex-grow: 1;
		}

		.cpMain {
			padding: 10px 20px;
		}

		/*----------------------------------------
		SP時CPNTアコーディオン化制御
		  .cpView直下にcheckbox【.info_acc_check】 ※checked="checked"付与で初期OPEN化
		  .cpHeadTitle直下にlabel【.info_acc_check_btn】
		  ⇒ cpMain・cpFootをAccordion化
		----------------------------------------*/
		/* Accordion制御用の隠しcheckbox */
		.info_acc_check,
		.info_acc_check_btn {
			display: none;

			.text {
				display: none !important;
			}
		}

		@media (max-width: 768px) {
			.cpMain {
				padding: 10px 0;
				background: var(--global_clr_white);

				.info_acc_check~.info_lv1_title_wrap {
					display: flex;
				}

				/* Accordion開閉アイコン */
				.info_lv1_title_wrap .info_acc_check_btn {
					display: inline-block;
					opacity: 0.5;
					cursor: pointer;
					width: 32px;
					min-width: 32px;
					height: 32px;
					background-image: url(/excludes/KEC/common/img/icon/ico_circle_large_plus_g.svg);
					background-repeat: no-repeat;
					background-size: 26px;
					background-position: -2px -2px;

					/*（SP Only）*/
					@media (min-width: 769px) {
						display: none;
					}
				}

				/* AccordionOpen時 */
				.info_acc_check:checked~.info_lv1_title_wrap .info_acc_check_btn {
					background-image: url(/excludes/KEC/common/img/icon/ico_circle_large_minus_g.svg);
				}

				/* アコーディオン化 */
				.info_acc_check~.info_lv2_wrap,
				.info_acc_check~.info_lv1_foot {
					max-height: 0;
					opacity: 0;
					margin: 0;
					overflow: hidden;
					transition: max-height 0.2s, opacity 0.2s;
				}

				.info_acc_check:checked~.info_lv2_wrap,
				.info_acc_check:checked~.info_lv1_foot {
					max-height: 50000px;
					opacity: 1;
				}
			}
		}

		.info_lv1_wrap {
			margin-top: 10px;
			margin-bottom: 20px;

			@media (max-width: 768px) {
				margin-bottom: 0;
			}

			/* PC */
			@media (min-width: 769px) {
				>ul .info_lv1 {
					width: calc(100% / 2 - 10px);
				}

				&.pcCol1>ul .info_lv1 {
					width: calc(100% - 5px);
				}

				&.pcCol2>ul .info_lv1 {
					width: calc(100% / 2 - 10px);
				}

				&.pcCol3>ul .info_lv1 {
					width: calc(100% / 3 - 10px);
				}
			}

			>ul {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				padding-right: 20px;

				@media (max-width: 768px) {
					padding-right: 0;
				}

				.info_lv1 {
					display: inline-block;
					width: calc(100% / 2 - 5px);
					padding-left: 28px;
					padding-bottom: 20px;
					position: relative;

					/* SP時は１列 */
					@media (max-width: 768px) {
						width: calc(100% - 5px);
						padding-left: 5px;
						padding-bottom: 0;
						margin-bottom: 20px;
					}

					.info_lv1_title {
						display: inline-block;
						font-size: 16px;
						font-weight: bold;
						margin-bottom: 15px;
						margin-left: -5px;
						padding-left: 5px;
						width: 100%;
						border-bottom: 1px solid var(--global_clr_darkgray);
						position: relative;

						@media (max-width: 768px) {
							margin-left: 12px;
							padding-left: 5px;
						}

						.text {
							display: inline-block;
						}

						.icon {
							img {
								width: 14px;
								height: 18px;
								margin-left: 4px;
							}
						}

						&.ico_info {
							color: var(--global_clr_black);

							&::before {
								content: '';
								display: block;
								position: absolute;
								top: -3px;
								left: -20px;
								width: 24px;
								height: 24px;
								background-image: url(/excludes/KEC/common/img/icon/ico_notice.svg);
								background-repeat: no-repeat;

								@media (max-width: 768px) {
									top: 0;
									left: -15px;
									width: 20px;
									height: 20px;
								}
							}
						}

						&.ico_note {
							color: var(--global_clr_darkred);

							&::before {
								content: '';
								display: block;
								position: absolute;
								top: -1px;
								left: -22px;
								width: 24px;
								height: 24px;
								background-image: url(/excludes/KEC/common/img/icon/icon_note.svg);
								background-repeat: no-repeat;

								@media (max-width: 768px) {
									top: 1px;
									left: -15px;
									width: 18px;
									height: 18px;
								}
							}
						}

						&.ico_check {
							color: var(--global_clr_darkred);

							&::before {
								content: '';
								display: block;
								position: absolute;
								top: -1px;
								left: -22px;
								width: 24px;
								height: 24px;
								background-image: url(/excludes/KEC/common/img/icon/icon_ok.svg);
								background-repeat: no-repeat;

								@media (max-width: 768px) {
									top: 1px;
									left: -15px;
									width: 18px;
									height: 18px;
								}
							}
						}
					}

					.info_lv2_wrap {
						.info_lv2 {
							display: flex;
							flex-wrap: wrap;
							align-items: center;
							margin-bottom: 20px;

							@media (max-width: 768px) {
								margin-left: 6px;
							}

							.info_date {
								font-size: 1.2rem;
								font-weight: bold;
							}

							.icon {
								display: inline-block;
								margin-left: 10px;
								padding: 1px 5px;
								font-size: 1.2rem;
								font-weight: bold;
								color: var(--global_clr_white);

								background-color: var(--global_clr_blue);

								&&.new,
								&&[new_flg="9"] {
									background-color: var(--global_clr_red);
								}

								&&.info {
									background-color: var(--global_clr_blue);
								}

								&:empty {
									display: none;
								}
							}

							.info_text {
								display: inline-block;
								width: 100%;
								margin-top: 4px;

								&.small {
									font-size: 1.4rem;
									word-break: break-all;
								}

								&.flex {
									display: flex;
									flex-wrap: wrap;
									align-items: center;
								}

								img {
									max-width: 100%;
									max-height: 130px;
								}
							}
						}
					}

					.info_lv1_foot {
						position: absolute;
						bottom: 0;
						right: 20px;
						font-size: 13px;

						.info_lv1_footlink::before {
							content: '';
							display: block;
							position: absolute;
							top: 20%;
							right: -10px;
							width: 9px;
							height: 9px;
							border-top: 1px solid var(--global_clr_darkgray);
							border-right: 1px solid var(--global_clr_darkgray);
							-webkit-transform: rotate(45deg);
							transform: rotate(45deg);
						}
					}
				}
			}
		}

		/*アコーディオン時の余白調整*/
		&.cpntSpAccordion {
			& .info_lv1_wrap {
				&>ul {
					& .info_lv1 {
						& .info_lv2_wrap {
							& .info_lv2 {
								@media (max-width: 768px) {
									min-height: initial;
									margin-right: 10px;
									margin-left: 10px;
								}
							}
						}
					}
				}
			}
		}
	}

	.MK4PFRDT060_01 {
		max-width: 1260px;
		margin: 0 auto;

		@media (max-width: 768px) {
			margin-bottom: 40px;
		}
	}


	/*----------------------------------------------------------
	  MK4PFRDT070_01：SCお知らせ詳細
	----------------------------------------------------------*/
	.MK4PFRDT070_01 {
		max-width: 1260px;
		margin: 0 auto;
		padding-left: 20px;
		padding-top: 20px;
		min-height: 360px;

		@media (max-width: 768px) {
			padding-left: 5px;
			padding-top: 20px;
		}

		h1 {
			border-bottom: 2px solid var(--global_clr_lightgray);
			font-size: 2.0rem;
			font-weight: bold;
			letter-spacing: 1px;
			padding: 0 0 10px;
			margin: 0 0 15px;
		}

		.topicDateArea {
			display: flex;
			justify-content: end;
			margin: 0 0 15px;
		}

		.icon {
			display: inline-block;
			margin-left: 10px;
			padding: 1px 5px;
			font-size: 1.2rem;
			font-weight: bold;
			color: var(--global_clr_white);

			&.info {
				background-color: var(--global_clr_blue);
			}

			&.new,
			&[new_flg="9"] {
				background-color: var(--global_clr_red);
			}
		}

		.topicContentArea {
			line-height: 1.75;
			min-height: 500px;
			padding-left: 40px;
			word-wrap: break-word;

			@media (max-width: 768px) {
				padding-left: 5px;
			}
		}

		.cpMainBottom {
			display: flex;
			flex-direction: column;
			padding: 20px 0 20px;

			.cmnBtnCancel {
				min-width: 250px;
				width: initial;
				padding: 0 20px;
				white-space: nowrap;
			}
		}
	}

	/*----------------------------------------------------------
		サイドナビ型（SP時Dialog格納）.cpWrap.cpTypeSideNavi
		MK4PFRCG010_01  SCカテゴリリンク（サイド）
		MK4PFRDL020_01  SCカテゴリ別絞込（サイド）
		MK4PFRRK001_20  SCランキング絞込（サイド）
	----------------------------------------------------------*/
	.cpTypeSideNavi {
		background-color: var(--global_clr_lightgray);
		padding-top: 5px;
		border-radius: 8px;

		@media (max-width: 768px) {
			display: none;
		}

		.cpHeadTitle h2 {
			font-size: var(--global_font_size_large1);
			font-weight: bold;
			padding: 1px 0 6px 4px;
			margin-bottom: 0px;
		}

		.cpHeadText {
			font-size: var(--global_font_size_small1);
			color: var(--global_clr_darkgray)
		}

		.cpMainBody {
			margin-bottom: 4px;
		}

		.cpFoot {
			font-size: var(--global_font_size_small1);
			color: var(--global_clr_black)
		}

		.cpView {
			padding: 3px 3px 1px;
		}

		.cpSlideDownArea {
			background: var(--global_clr_white);
			border-radius: 5px;
			padding: 8px 4px 2px;

			.cpSlideDownList {
				background: var(--global_clr_white);
				line-height: 1.3;
				font-size: var(--global_font_size_normal);

				&.cpViewRecords {

					li.moreRecord {
						display: none;
					}
				}

				&.cpMoreRecords {}

				li {
					position: relative;
					padding: 3px 0 3px 0px;
				}

				h3 {
					font-size: 1.6rem;
					font-weight: bold;
					margin: 0 0 5px;
				}

				.itemLinkInfo {
					font-size: var(--global_font_size_small3);
					padding: 0 0 0 1px;
				}

				.showMoreInfo {
					display: flex;
					justify-content: center;
					padding: 10px 0 0;
				}

				.price {
					font-size: var(--global_font_size_small1);
				}

				.cpMemoText {
					font-size: var(--global_font_size_small1);
					color: var(--global_clr_darkgray);
				}

				.cpListLink {
					display: inline-block;
					width: 100%;
				}

				.priceInputArea {
					display: flex;
					margin: 5px 0 0;

					.elmInputPrice {
						border: 1px solid var(--global_clr_gray);
						border-radius: 3px;
						width: 70%;
						padding: 3px 6px 3px 3px;
						text-align: right;

						/*SP時iPhone対策*/
						@media (max-width: 768px) {
							font-size: 1.6rem;
						}
					}

					input[name="priceTo"] {
						margin: 0 0 0 15px;
					}
				}

				.showMoreInfoBlock {
					display: flex;
					align-items: center;
					column-gap: 3px;
					padding: 0 0 10px;

					.showMoreInfoLink {
						cursor: pointer;
					}
				}

				.cmnBtnCommon {
					width: 230px;
					font-size: var(--global_font_size_normal);
					height: 36px;
					margin: 5px auto 5px;
					padding-top: 1px;
					background-image: url(../img/icon/ico_filter.svg);
					background-repeat: no-repeat;
					background-size: 16px;

					&.condition {
						font-size: var(--global_font_size_small1);
						background-position: 8px 10px;
						padding-left: 14px;
					}

					&.price {
						background-position: 14px 10px;
						padding-left: 14px;
					}
				}

				.cmnBtnCancel {
					width: 230px;
					font-size: var(--global_font_size_normal);
					height: 36px;
					margin: 5px auto 5px;
					padding-top: 1px;
					background-image: url(../img/icon/ico_backspace.svg);
					background-repeat: no-repeat;
					background-size: 19px;
					background-position: 34px 8px;
					padding-left: 16px;
				}

				/* aタグリンクカテゴリ型 */
				&.cpListType_Cate {

					li {
						padding: 1px 12px 5px 0;
						margin-bottom: 6px;
						border-bottom: 1px dashed var(--global_clr_lightgray);

						&:last-child {
							border-bottom: 0px dashed var(--global_clr_lightgray);
						}

						&[level="0"] {
							font-size: var(--global_font_size_large1);
							font-weight: bold;

							.cpListLink {
								padding: 3px 0 3px 0px;
							}
						}

						&[level="1"] {
							font-size: var(--global_font_size_normal);
							padding-left: 5px;
						}

						&[level="2"] {
							font-size: var(--global_font_size_normal);
							padding-left: 15px;
						}

						&[level="3"] {
							font-size: var(--global_font_size_normal);
							padding-left: 25px;
						}

						&[level="4"] {
							font-size: var(--global_font_size_normal);
							padding-left: 35px;
						}

						&[level="5"] {
							font-size: var(--global_font_size_normal);
							padding-left: 35px;
						}

						&[level="6"] {
							font-size: var(--global_font_size_normal);
							padding-left: 45px;
						}

						&[level="7"] {
							font-size: var(--global_font_size_normal);
							padding-left: 55px;
						}

						h3 {
							font-weight: bold;
							margin: 0;
						}

					}

					.cpListLink {

						&::after {
							content: "";
							position: absolute;
							width: 8px;
							height: 8px;
							opacity: 0.7;
							border-right: 2px solid var(--global_clr_lightgray);
							border-bottom: 2px solid var(--global_clr_lightgray);
							top: 46%;
							right: 2px;
							transform: translate(0, -75%) rotate(-45deg);

							@media (max-width: 768px) {
								opacity: 0.7;
								border-right: 2px solid var(--global_clr_linkblue);
								border-bottom: 2px solid var(--global_clr_linkblue);
							}
						}

						&:hover {
							&::after {
								border-right: 2px solid var(--global_clr_linkblue);
								border-bottom: 2px solid var(--global_clr_linkblue);
							}
						}
					}
				}

				/* aタグリンク絞り込み型 */
				&.cpListType_Link {

					.cpListLink {
						padding: 0 0 0 10px;
					}
				}

				/* radio設置型 */
				&.cpListType_Radio {

					li {
						margin: 2px 3px 1px 0;
						padding: 2px;
						display: flex;
					}

					input[type="radio"] {
						margin: 1px 5px 3px 0;
						width: 18px;
						height: 18px;
						accent-color: var(--global_clr_blue);
						opacity: 0.8;
					}

					label {
						color: var(--global_clr_blue);
						flex: 1;
					}
				}

				/* checkbox設置型 */
				&.cpListType_Check {

					li {
						margin: 4px 1px 2px 2px;
						display: flex;
					}

					input[type="checkbox"] {
						margin: 1px 5px 2px 0;
						width: 18px;
						height: 18px;
						accent-color: var(--global_clr_blue);
						opacity: 0.8;
					}

					/* label {
						color: var(--global_clr_blue);
						flex: 1;
					} */
				}

				/* ボタン等の操作ブロック */
				&.cpList_ActBlock {
					padding: 2px;
					margin-top: 8px;
				}
			}
		}
	}



	/*----------------------------------------------------------
		MK4PFRDL020_01  SCカテゴリ別絞込（サイド）
	----------------------------------------------------------*/
	.MK4PFRDL020_01 {
		margin-bottom: 16px;
		background-color: var(--global_clr_iceblue) !important;

		@media (max-width: 768px) {
			margin-bottom: inherit;
		}
	}


	/*----------------------------------------------------------
	  MK4PFRRK001_30：SCランキング絞込（メイン）
	----------------------------------------------------------*/
	.MK4PFRRK001_30 {
		h2 {
			border-bottom: 1px solid var(--global_clr_gray);
			letter-spacing: -0.3px;
			padding: 0 0 10px;
		}

		ul {
			display: flex;
			flex-wrap: wrap;
			row-gap: 20px;
			column-gap: 15px;
			margin: 30px 0 0;
			padding: 0 0 0 15px;

			li {
				font-size: 1.8rem;
				width: calc((100% - 45px) / 4);

				@media (max-width: 1200px) {
					width: calc((100% - 45px) / 3);
				}

				@media (max-width: 960px) {
					width: calc((100% - 45px) / 2);
				}

				@media (max-width: 767px) {
					width: calc((100% - 45px) / 3);
				}

				@media (max-width: 620px) {
					width: calc((100% - 45px) / 2);
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4ST_WRD_0001：注目のキーワード
	  MK4ST_RNK_0010：Pickupランキング
	----------------------------------------------------------*/
	.MK4ST_WRD_0001,
	.MK4ST_RNK_0010 {
		.popularFeatureArea {
			ul {
				display: flex;
				overflow-x: scroll;

				/* &::-webkit-scrollbar {
					width: 6px;
					height: 6px;
				}

				&::-webkit-scrollbar-thumb {
					background: #00608d;
					width: 20px;
					border-radius: 3px;
				}

				&::-webkit-scrollbar-track {
					background: var(--global_clr_iceblue);
					border-radius: 3px;
				} */

				&.is-scrollable {
					cursor: grab;

					&:active {
						cursor: grabbing;
					}
				}

				&::-webkit-scrollbar {
					width: 4px;
					height: 4px;
					display: 1px;
				}

				&::-webkit-scrollbar-thumb {
					background: #9da9bb;
					width: 20px;
					border-radius: 4px;
				}

				&::-webkit-scrollbar-track {
					background: var(--global_clr_brightgray);
					border-radius: 4px;
				}

				li {
					display: table;
					margin: 10px 10px 20px 0;

					.popularFeature {
						color: var(--global_clr_black);
						white-space: nowrap;
						border: 2px solid var(--global_clr_gray);
						border-radius: 5px;
						padding: 10px;

						@media (max-width: 768px) {
							font-size: 13px;
						}
					}
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRCG010_03：SCカテゴリからさがす（バナー＆テキスト）
	----------------------------------------------------------*/
	.MK4PFRCG010_03 {

		@media (min-width: 880px) {
			margin-bottom: 80px;

			.cateNavigation {
				display: flex;
				flex-wrap: wrap;
				row-gap: 30px;
				column-gap: 20px;

				>li {
					position: relative;
					padding: 8px 8px 1px 8px;
					border-radius: 10px;
					box-shadow: 1px 1px 8px -3px var(--global_clr_linkblue);
					min-height: 420px;
					min-width: 250px;
					width: calc((100% - 100px) / 6);

					@media (max-width: 1680px) {
						width: calc((100% - 80px) / 5);
					}

					@media (max-width: 1420px) {
						width: calc((100% - 60px) / 4);
					}

					@media (max-width: 1140px) {
						width: calc((100% - 40px) / 3);
					}
				}

				.accordionWrap {

					/* 親/子 共通要素 */
					.qty {
						font-size: 1.3rem;
						color: var(--global_clr_bluegray);
						/* 26/01/23 非表示化 */
						display: none;

						&::before {
							content: ' （';
						}

						&::after {
							content: '）';
						}
					}

					/* 親階層 */
					.accordionItem {
						cursor: pointer;

						.cateBlockImgArea {
							display: flex;
							align-items: center;

							.contents_link {
								color: var(--global_clr_black);
								font-size: 1.9rem;
								font-weight: bold;
								width: 100%;
								padding: 0 0 10px 0;
								display: flex;
								justify-content: center;
								flex-direction: column;

								&:hover {
									color: var(--global_clr_linkblue);

									.contents_txt {
										position: relative;

										&::after {
											content: '';
											width: 12px;
											height: 12px;
											position: absolute;
											top: 32%;
											right: 0px;
											border-top: solid 2px var(--global_clr_linkblue);
											border-right: solid 2px var(--global_clr_linkblue);
											transform: rotate(45deg);
										}
									}
								}

								img {
									aspect-ratio: 4 / 3;
									margin: 0 0 10px 0;
								}
							}

							.navArrow {
								display: none;
							}
						}
					}

					/* 子階層 */
					.accordionText {
						padding: 5px 0;
						display: block !important;

						/* 子階層 */
						.cateList {
							padding-bottom: 40px;
							display: flex;
							flex-direction: column;
							row-gap: 3px;

							li {
								display: flex;
								justify-content: space-between;
								align-items: baseline;

								a {
									color: var(--global_clr_black);
									font-size: 1.6rem;
									font-weight: bold;
									width: 100%;
									padding: 3px 18px 3px 5px;
									position: relative;

									&:hover {
										color: var(--global_clr_linkblue);

										&::after {
											content: '';
											width: 12px;
											height: 12px;
											position: absolute;
											top: 37%;
											right: 0;
											border-top: solid 2px var(--global_clr_linkblue);
											border-right: solid 2px var(--global_clr_linkblue);
											transform: rotate(45deg);
										}
									}
								}
							}
						}

						/* ランキングリンク */
						.cateListRanking {
							font-size: 1.6rem;
							font-weight: bold;
							position: absolute;
							right: 10px;
							bottom: 5px;
						}
					}
				}
			}
		}

		@media (max-width: 879px) {

			.cateNavigation {
				display: inherit;

				&>li:last-child {
					border-bottom: 1px solid var(--global_clr_gray);
				}

				.accordionWrap {

					/* 親/子 共通要素 */
					.qty {
						font-size: 1.3rem;
						color: var(--global_clr_bluegray);
						/* 26/01/23 非表示化 */
						display: none;

						&::before {
							content: ' （';
						}

						&::after {
							content: '）';
						}
					}

					/* 親階層 */
					.accordionItem {
						cursor: pointer;

						.cateBlockImgArea {
							display: flex;
							align-items: center;
							border-top: 1px solid var(--global_clr_gray);

							.contents_link {
								color: var(--global_clr_black);
								font-size: 1.6rem;
								font-weight: bold;
								width: 100%;
								padding: 0px;
								display: contents;

								&:hover {
									color: var(--global_clr_linkblue);
								}

								img {
									border: 1px solid var(--global_clr_gray);
									width: 90px;
									min-width: 90px;
									margin: 8px 10px 8px 0;
									min-height: 68px;
								}

								.contents_txt {
									display: inline-block;
									padding-right: 32px;
								}
							}

							.navArrow {
								display: flex;
								align-items: center;
								justify-content: center;
								width: 50px;
								height: 76px;
								position: absolute;
								right: 0;

								&.open {

									span {

										&::after {
											transform: rotate(-45deg);
											margin-top: 8px;
											border-top: solid 4px var(--global_clr_blue);
											border-right: solid 4px var(--global_clr_blue);
										}
									}
								}

								span {
									position: absolute;
									top: 38%;
									right: 30px;

									&::after {
										content: '';
										width: 16px;
										height: 16px;
										border-top: solid 4px var(--global_clr_bluegray);
										border-right: solid 4px var(--global_clr_bluegray);
										position: absolute;
										transform: rotate(135deg);
										transition: all 0.2s;
									}
								}

								.navArrowTxt {
									display: none;
								}
							}
						}
					}

					/* 子階層 */
					.accordionText {
						display: none;
						padding: 5px 10px;

						/* 子階層 */
						.cateList {
							line-height: 1.8;

							li {
								border-bottom: 1px solid var(--global_clr_gray);
								display: flex;
								justify-content: space-between;
								align-items: baseline;

								&:first-child {
									border-top: 1px solid var(--global_clr_gray);
								}

								a {
									color: var(--global_clr_black);
									font-size: 1.6rem;
									font-weight: bold;
									width: 100%;
									padding: 8px 15px 8px 0;
									position: relative;

									&:hover {
										color: var(--global_clr_linkblue);
									}

									&::after {
										content: '';
										width: 12px;
										height: 12px;
										position: absolute;
										top: 37%;
										right: 2px;
										border-top: solid 3px var(--global_clr_bluegray);
										border-right: solid 3px var(--global_clr_bluegray);
										transform: rotate(45deg);
									}
								}
							}
						}

						/* ランキングリンク */
						.cateListRanking {
							margin: 20px 0 30px;

							a {
								display: flex;
								justify-content: end;
								padding: 0 0 25px;
								font-size: 1.6rem;
								font-weight: bold;
							}
						}
					}
				}
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRCG010_03：SCカテゴリからさがす（バナー＆テキスト）※Hit無し時のふるまい
	----------------------------------------------------------*/
	.MK4PFRCG010_03.neoNoCateView {
		@media (min-width: 880px) {
			.cateNavigation {
				>li {
					box-shadow: 1px 1px 6px -3px var(--global_clr_linkblue);
					min-height: 84px;
				}

				.accordionWrap {

					.accordionText {
						.cateList {
							padding-bottom: 5px;
						}
					}

					/* 親階層 */
					.accordionItem {
						cursor: pointer;

						.cateBlockImgArea {

							.contents_link {
								display: flex;
								flex-direction: row;
								column-gap: 5px;
								padding-right: 5px;
								align-items: center;

								&:hover {}

								.contents_txt {
									flex: 1;
									padding-right: 10px;
								}

								.lv1_wrap {
									margin: 0px auto;
									min-width: 40px;
									min-height: 40px;
									display: flex;
									align-items: center;

									img.lv1 {
										aspect-ratio: initial;
										max-height: 35px;
										max-width: 40px;
										margin: 0;
									}
								}
							}
						}
					}
				}
			}
		}

		@media (max-width: 879px) {

			.cateNavigation {
				display: inherit;

				&>li:last-child {
					border-bottom: 1px solid var(--global_clr_gray);
				}

				.accordionWrap {

					/* 親/子 共通要素 */
					.qty {
						font-size: 1.3rem;
						color: var(--global_clr_bluegray);
						display: none;

						&::before {
							content: ' （';
						}

						&::after {
							content: '）';
						}
					}

					/* 親階層 */
					.accordionItem {
						cursor: pointer;

						.cateBlockImgArea {
							display: flex;
							align-items: center;
							border-top: 1px solid var(--global_clr_gray);
							padding: 0px 3px 5px;
							position: relative;

							.contents_link {
								color: var(--global_clr_linkblue);
								font-size: 1.8rem;
								font-weight: bold;
								display: flex;
								flex-direction: row;
								column-gap: 5px;
								padding-right: 5px;
								align-items: center;
								width: initial;

								&:hover {
									color: var(--global_clr_linkblue);
								}

								.contents_txt {
									flex: 1;
									padding-right: 10px;
								}

								.lv1_wrap {
									margin: 0px auto;
									min-width: 40px;
									min-height: 40px;
									display: flex;
									align-items: center;


									img.lv1 {
										aspect-ratio: initial;
										max-height: 42px;
										max-width: 48px;
										margin: 0;
										min-width: initial;
										border: 0;
									}
								}
							}

							.navArrow {
								visibility: hidden;
								flex: 1;
								position: initial;
							}
						}
					}

					/* 子階層 */
					.accordionText {
						display: block !important;
						padding: 10px 0 0;

						/* 子階層 */
						.cateList {
							line-height: 2;

							li {
								border-bottom: 1px solid var(--global_clr_gray);
								display: flex;
								justify-content: space-between;
								align-items: baseline;

								&:first-child {
									border-top: 1px solid var(--global_clr_gray);
								}

								a {
									color: var(--global_clr_black);
									font-size: 1.6rem;
									font-weight: bold;
									width: 100%;
									padding: 8px 15px 8px 0;
									position: relative;

									&:hover {
										color: var(--global_clr_linkblue);
									}

									&::after {
										content: '';
										width: 12px;
										height: 12px;
										position: absolute;
										top: 37%;
										right: 2px;
										border-top: solid 3px var(--global_clr_bluegray);
										border-right: solid 3px var(--global_clr_bluegray);
										transform: rotate(45deg);
									}
								}
							}
						}

						/* ランキングリンク */
						.cateListRanking {
							margin: 10px 0 0;

							li {
								display: flex;
								justify-content: end;

								a {
									display: inline-block;
									margin-bottom: 10px;
									padding: 5px 0 5px;
									font-size: 1.6rem;
									font-weight: bold;
									letter-spacing: -1.0px;
								}
							}
						}
					}
				}
			}
		}
	}



	/*----------------------------------------------------------
	  MK4ST_CTG_0001：カテゴリ名称表示
	  MK4ST_CTG_0002：カテゴリ情報表示
	----------------------------------------------------------*/
	.MK4ST_CTG_0001 {
		margin-bottom: 5px;
	}

	.MK4ST_CTG_0002 {
		.cateInfo p {
			line-height: 1.75;

			.cateFeatureLink {
				display: flex;
				justify-content: end;
				margin: 0 10px;
			}
		}

		.cateBannerArea {
			display: flex;

			li {
				margin: 10px 20px 0 0;

				img {
					width: 100%;
				}
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRDL010_02：SC商品List_商品情報
	  MK4PFRRK001_10：SC商品List_ランキング
	----------------------------------------------------------*/
	.MK4PFRDL010_02,
	.MK4PFRRK001_10 {
		#productListConsole.fixed {
			@media (max-width: 768px) {
				position: fixed;
				top: 44px;
				left: 50%;
				width: calc(100% - 15px);
				padding: 4px;
				background-color: #fff;
				border: 1px solid var(--global_bdr_color);
				border-radius: 12px;
				z-index: 100;
				transform: translateX(-50%);
				box-shadow: 0px 2px 5px 2px rgb(0 0 0 / 20%) !important;
			}
		}

		.compareWrapper {
			position: fixed;
			z-index: 1000;
			background: rgba(244, 226, 166, 0.8);
			width: 100%;
			left: 0;
			bottom: 0;
			height: initial;
			opacity: 1;
			transition: max-height 0.3s, opacity 0.3s;

			&.close {
				height: 0;
				opacity: 0;
				transition: height 0.3s, opacity 0.3s;
			}

			@media(max-width: 768px) {
				bottom: 0;
			}

			.itemBlockMaster {
				display: none;
			}

			h3 {
				font-size: 1.8rem;
				font-weight: bold;
			}

			.differentCate {
				h3 {
					font-size: 1.5rem;
					font-weight: bold;

					@media(max-width: 768px) {
						width: 100%;
					}
				}

				.titleArea {
					font-size: 1.4rem;
				}
			}

			.swiper__arrow--prev {
				left: -15px;
			}

			.swiper__arrow--next {
				right: -15px;
			}

			.compareHeadArea {
				height: 53px;
				padding: 8px 20px 5px;
				display: flex;
				justify-content: space-between;
				align-items: center;

				@media(max-width: 768px) {
					height: initial;
					padding: 5px 5px 0 5px;
					flex-direction: column;
				}

				ul {
					display: flex;
					justify-content: space-between;
					align-items: center;
					padding: 5px 5px 5px 0;
					column-gap: 6px;

					@media(max-width: 768px) {
						padding: 5px 0 5px 0;
					}

					li {
						display: flex;
						align-items: end;

						&:nth-child(2) {
							border-bottom: 2px solid var(--global_clr_black);

							@media(max-width: 768px) {
								border: inherit;
							}
						}

						.compareItemNum {
							margin: 0 0 0 10px;
						}

						.cmnBtnCancel {
							font-size: var(--global_font_size_small2);
							width: 120px;
							height: 30px;
							margin: 0 0 0 5px;
							min-width: 100px;

							@media(max-width: 768px) {
								margin: 5px 10px 5px auto;
							}
						}

						.cmnBtnFunction {
							font-size: var(--global_font_size_small2);
							width: 120px;
							height: 30px;
							margin: 0 30px 0 10px;
							min-width: 100px;

							@media(max-width: 768px) {
								margin: 5px auto 5px 10px;
							}
						}
					}
				}

				.titleArea {
					li {
						align-self: self-start;
						flex-wrap: wrap;
					}

					@media(max-width: 768px) {
						width: 100%;
						display: flex;
						justify-content: start;
					}
				}

				.msgArea {
					flex: 1;
					min-width: 210px;

					@media(max-width: 768px) {
						width: 100%;
						margin: 0 0 0 8px;
					}

					li {

						a {
							font-size: var(--global_font_size_small1);
							font-weight: bold;
							white-space: nowrap;
						}
					}
				}

				.btnArea {

					@media(max-width: 768px) {
						max-width: 240px;
						height: 64px;
					}
				}
			}

			.compareBodyArea {
				height: 150px;
				padding: 0 10px 5px;

				@media(max-width: 768px) {
					height: 185px;
				}

				.neoSwiper {
					position: initial;
					padding-left: 15px;
					padding-right: 25px;

					.swiper-button-prev {
						top: 140px;
						left: 10px;
						background: #AAA;

						@media(max-width: 768px) {
							top: initial;
							bottom: 185px;
						}
					}

					.swiper-button-next {
						top: 140px;
						right: 10px;
						background: #AAA;

						@media(max-width: 768px) {
							top: initial;
							bottom: 185px;
						}
					}

					.neoSwiperWrapper {
						padding-left: 5px;
						padding-right: 5px;
						width: 100%;
						display: flex;
						flex-wrap: nowrap;
						column-gap: 0;
					}
				}

				.itemBlock {
					display: flex;
					height: 110px;

					width: calc((100% - 78px) / 6);

					@media (max-width: 1640px) {
						width: calc((100% - 65px) / 5);
					}

					@media (max-width: 1380px) {
						width: calc((100% - 52px) / 4);
					}

					@media (max-width: 1140px) {
						width: calc((100% - 39px) / 3);
					}

					@media (max-width: 920px) {
						width: calc((100% - 39px) / 3);
					}

					@media (max-width: 880px) {
						width: calc((100% - 26px) / 2);
					}

					@media (max-width: 768px) {
						width: calc((100% - 26px) / 2);
					}

					.itemBlockHeader {
						width: 96px;

						@media(max-width: 768px) {
							width: 80px;
						}

						.itemBlockImg {
							width: 100px;

							@media(max-width: 768px) {
								width: 80px;
							}

							img {
								margin: 0 10px 0 0;
								width: 80px;
								max-width: 80px;
								max-height: 80px;

								@media(max-width: 768px) {
									width: 72px;
									max-width: 72px;
									max-height: 72px;
								}
							}
						}
					}

					.itemBlockBody {
						flex: 1;
						padding: 2px 10px 0 0;

						@media(max-width: 768px) {
							flex: auto;
							padding: 2px 10px 0 6px;
						}

						.itemNameInfo,
						.itemModelNum {
							font-size: 1.2rem !important;
							min-height: 45px !important;
							-webkit-line-clamp: 3;
							margin-bottom: 4px;

							@media(max-width: 768px) {
								max-height: 30px !important;
							}
						}

						/* 価格は非表示化とする */
						.itemBlockInfo {
							display: none;
						}
					}
				}
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRDL010_02：SC商品List_商品情報
	----------------------------------------------------------*/
	.MK4PFRDL010_02 {

		.cpMainTop,
		.cpFoot {
			width: 100%;
		}

		.cpMainTop {
			@media (max-width: 1000px) {
				flex-direction: column;
			}

			@media (max-width: 768px) {
				flex-direction: column;
			}
		}

		.cpMainTopL {
			#narrow_open_btn {
				display: none;
			}

			@media (max-width: 768px) {
				display: flex;
				align-items: center;
				flex-direction: row;
				padding: 0px 8px;
				column-gap: 8px;

				.search_result_text {
					flex-shrink: 0;
					font-size: var(--global_font_size_small1);
				}

				#narrow_open_btn {
					display: block;
					width: 115px;
					height: 34px;
					margin-right: 0;
					font-size: var(--global_font_size_normal);
					background-image: url(/excludes/KEC/common/img/icon/ico_filter.svg);
					background-position: 16px 8px;
					background-size: 16px;
					background-repeat: no-repeat;
					padding-left: 16px;
				}
			}
		}

		.cpMainTopR {
			@media (max-width: 768px) {
				width: 100%;
				display: flex;
			}

			.listSortChangeArea {
				display: flex;
				justify-content: end;
				margin: 0 20px 10px 0;

				@media (max-width: 768px) {
					margin: 10px 0;
					width: 100%;
					display: flex;
					flex-direction: row;
					justify-content: space-around;

					li {
						display: flex;
						align-items: center;
					}
				}

				li {
					margin: 0 7px 0 0;
					padding: 5px 0;

					span {
						font-weight: bold;

						@media (max-width: 768px) {
							font-size: 1.4rem;
						}
					}

					select {
						border-radius: 8px;
						border: solid 2px var(--global_clr_iceblue);
						font-weight: bold;
						padding: 8px 4px;
						appearance: auto;
						background-color: white;
					}
				}
			}
		}

		.compare-attention {
			background-color: var(--global_clr_iceblue);
			text-align: center;
			padding: 10px 0;
			margin-bottom: 10px;
			border-radius: 9px;

			@media (max-width: 400px) {
				font-size: 0.8em;
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRRK001_10：SC商品List_ランキング
	----------------------------------------------------------*/
	.MK4PFRRK001_10 {

		.cpMainTop {
			margin-top: -5px;

			.cpMainTopR {
				#narrow_open_btn {
					display: none;
				}

				@media (max-width: 768px) {
					display: flex;
					align-items: center;
					flex-direction: row;
					padding: 0px 10px;

					#narrow_open_btn {
						display: block;
						width: 175px;
						height: 34px;
						margin: 0 0 12px auto;
						font-size: 1.5rem;
						background-image: url(/excludes/KEC/common/img/icon/ico_filter.svg);
						background-position: 12px 8px;
						background-size: 16px;
						background-repeat: no-repeat;
						padding-left: 16px;
					}
				}
			}
		}

		/* タブ切り替え */
		.rankingTab {
			flex: 1;
			display: flex;
			flex-wrap: wrap;
			gap: 0 10px;
			max-width: 1200px;

			@media (max-width: 768px) {
				gap: 0 3px;
				justify-content: space-between;
			}

			.rankingSpanArea {
				flex: 1;
				display: flex;
				justify-content: end;
				align-items: end;

				/*
				@media (max-width: 1024px) {
					width: 400px;
				}
				@media (max-width: 960px) {
					width: 300px;
				}*/
				@media (max-width: 1000px) {
					width: inherit;
					min-width: 300px;
					z-index: 2;
					margin: 0 0 -40px 0;
				}

				li {
					font-weight: bold;
					margin: 0 2px 2px 8px;
					border: 1px solid var(--global_clr_coolgray);
					background-color: var(--global_clr_lightgray);

					&:hover {
						background-color: var(--global_clr_brightgray);
					}

					a {
						font-weight: bold;
						white-space: nowrap;
						display: inline-block;
						padding: 4px 10px 3px;
					}

					&.selected {
						background-color: var(--global_clr_white);

						a {
							color: var(--global_clr_black);

							&:hover {
								text-decoration: none;
							}
						}
					}
				}
			}

			.rankingTabLabel {
				/*flex: 1 1;*/
				order: -1;
				opacity: .5;
				min-width: 110px;
				padding: .6em .6em;
				border-radius: 5px 5px 0 0;
				background-color: var(--global_clr_darkgray);
				color: #fff;
				font-size: .9em;
				text-align: center;
				cursor: pointer;

				@media (max-width: 880px) {
					min-width: 70px;
				}

				@media (max-width: 768px) {
					min-width: 94px;
				}

				&:hover {
					opacity: .8;
				}

				&:has(:checked) {
					opacity: 1;

					&+.rankingWrapper {
						display: block;
					}
				}

				&.sp_font_size_small3 {
					@media (max-width: 768px) {
						font-size: var(--global_font_size_small3);
					}
				}
			}

			input {
				display: none;
			}

			.rankingWrapper {
				display: none;
				width: 100%;
				padding: 20px 0 0;
				background-color: #fff;
				border-top: 1px solid var(--global_clr_darkgray);

				@media (max-width: 920px) {
					padding: 50px 0 5px;
				}
			}
		}

		.cpFoot {
			max-width: 1200px;
		}
	}


	/*----------------------------------------------------------
	  MK4PFRDL150_01：SC簡易商品情報表示
	----------------------------------------------------------*/
	.MK4PFRDL150_01 {
		max-width: 1260px;
		--itemBlockWrap_height: inherit;
		height: inherit;
		margin: 0 auto 40px;

		.cpMainBody {
			padding: 20px 0 0;
		}
	}


	/*----------------------------------------------------------
	  MK4PFRCM010_01：SC商品Box_Ajax切替枠

//	  MK4PFRNR030_01：SC商品Box_レコメンド
//	  MK4PFRDL300_01：SC商品Box_閲覧履歴
	----------------------------------------------------------*/
	.MK4PFRCM010_01

	/*	
	,
	.MK4PFRNR030_01,
	.MK4PFRDL300_01 
*/
		{
		margin-bottom: 5px;
		padding-bottom: 0;

		.cpMainTop {
			padding: 0 20px 10px 30px;
		}

		/* 切替メニュースライド */
		.neoSwiper_MK4PFRCM010_01.swiper-area {
			position: relative;
			height: 36px;
			margin: 5px 9px 0px 0px;
			background-color: var(--global_clr_brightgray);
			padding: 8px 3px 0px;
			border-radius: 1px;
			width: 100%;

			@media (max-width: 768px) {
				display: none;
			}

			.swiper {
				position: initial;

				.swiper-slide {
					text-align: center;
					font-weight: bold;
					border-right: 2px solid #CCC;
					/* min-width: 240px; */
				}
			}

			.swiper-button-prev {
				top: 4.0rem;
				left: -3.1rem;
				height: 36px;
				border-radius: 8px 0 0 8px;
			}

			.swiper-button-next {
				top: 4.0rem;
				right: -3.1rem;
				height: 36px;
				border-radius: 0 8px 8px 0;
			}
		}

		.pickUpCate {
			display: flex;

			div {
				a {
					display: block;
					white-space: nowrap;
					letter-spacing: 0.5px;
					cursor: pointer;
					width: 96%;
				}

				&.selected a {
					border-bottom: 2px solid var(--global_clr_black);
					color: var(--global_clr_black);
					text-decoration: none;
					padding: 0 0 2px;
					cursor: inherit;
				}
			}
		}

		@media (max-width: 500px) {
			.cpHeadTitle h2 {
				font-size: 16px;
				letter-spacing: -0.5px;
				padding: 3px 0 0;
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRCM010_01-Contents：SC商品Box_Ajax切替枠 配下Contents
	----------------------------------------------------------*/
	.MK4PFRCM010_01-Contents {
		margin-bottom: 15px;

		@media (max-width: 768px) {
			margin-bottom: 40px;
		}

		>.cpWrap {
			margin-bottom: 10px;
		}

		@media (min-width: 769px) {
			>.cpWrap {
				display: none;

				&.selected {
					display: block;
				}

				.cpHead {
					display: none;
				}

				.cpFoot {
					height: 24px;
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRDL500_01：SC特集一覧リンク（サイド）
	  MK4PFRDL500_03：SC特集一覧リンクAjax（サイド）
	----------------------------------------------------------*/
	.MK4PFRDL500_01,
	.MK4PFRDL500_03 {
		h1 {
			font-size: 2.0rem;
			font-weight: bold;
			border-bottom: 2px solid var(--global_clr_lightgray);
			padding: 0 0 10px;
			margin: 30px 0 20px;

			@media (max-width: 768px) {
				margin: inherit;
			}
		}

		.cpMain {
			background: var(--global_clr_white);
			padding: 0 5px 20px 10px;

			.specialListArea {
				display: flex;
				flex-wrap: wrap;
				row-gap: 20px;
				column-gap: 20px;

				@media (max-width: 768px) {
					margin: 15px;
				}

				@media (max-width: 500px) {
					display: inherit;
				}

				li {
					width: calc((100% - 60px) / 4);

					@media (max-width: 1280px) {
						width: calc((100% - 40px) / 3);
					}

					@media (max-width: 768px) {
						width: calc((100% - 20px) / 2);
						margin: 0 0 15px;
					}

					@media (max-width: 500px) {
						width: inherit;
					}

					a {
						color: var(--global_clr_black);
						line-height: 1.5;
						max-width: 300px;

						@media (max-width: 768px) {
							max-width: 100%;
						}

						.eyeCatchingImage {
							/* height: 140px; */
							overflow: hidden;

							@media (max-width: 570px) {
								height: inherit;
							}

							img {
								width: 100%;
								border: 1px solid var(--global_clr_gray);
							}
						}

						.specialTitle {
							font-size: 1.6rem;
							font-weight: bold;
							min-height: 48px;
							margin: 5px 0px 18px 13px;
							position: relative;

							&:before {
								content: '';
								display: block;
								position: absolute;
								top: 5px;
								left: -15px;
								width: 10px;
								height: 10px;
								border-top: 3px solid var(--global_clr_gray);
								border-right: 3px solid var(--global_clr_gray);
								-webkit-transform: rotate(45deg);
								transform: rotate(45deg);
							}

							@media (max-width: 400px) {
								font-size: inherit;
								min-height: inherit;
							}
						}
					}

					p,
					pre {
						font-size: 1.4rem;
						line-height: 1.5;
						padding: 0 6px 0 12px;

						@media (max-width: 400px) {
							display: none;
						}
					}
				}
			}
		}
	}

	/* 左右サイド配置時 */
	.frame_LH,
	.frame_LF,
	.frame_RH,
	.frame_RF {

		.MK4PFRDL500_01,
		.MK4PFRDL500_03 {
			@media (max-width: 768px) {
				margin: 20px 0 10px;

				.cpHeadTitle {
					align-items: center;
				}
			}

			h1 {
				font-size: 1.8rem;
				letter-spacing: -0.3px;
				margin: inherit;

				@media (max-width: 768px) {
					padding: 0 0 1px 5px;
				}
			}

			.specialListArea {
				margin: 15px 5px;
				display: inherit;

				li {
					width: inherit;

					a {
						max-width: 100%;

						.eyeCatchingImage {
							height: inherit;
						}

						.specialTitle {
							font-size: 1.4rem;
							min-height: inherit;
							margin: 5px 0px 18px 13px;
						}
					}

					p {
						display: none;
					}
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRDL510_01：SC特集詳細
	----------------------------------------------------------*/
	.MK4PFRDL510_01 {

		h1,
		h2 {
			font-size: 2.5rem;
			font-weight: bold;
			margin: 20px 0;
			padding: 0 0 15px 10px;
		}

		.specialKeyVisual {
			img {
				width: 100%;
			}
		}

		.specialLeadArea,
		.sectionLeadArea {
			margin: 0 0 30px;

			p {
				background: var(--global_clr_white);
				border: 2px solid var(--global_clr_gray);
				font-size: 1.6rem;
				line-height: 1.5;
				padding: 15px;
			}
		}

		section {
			margin: 0 0 40px;

			.itemPointInfo {
				position: relative;
				/* margin: 30px 0 25px; */
				padding: 20px 5px 5px 5px;

				span {
					display: inline-block;
					position: absolute;
					border-radius: 5px;
					color: #fff;
					font-weight: bold;
					font-size: 1.4rem;
					line-height: 35px;
					top: -20px;
					/* left: -5px; */
					padding: 0 10px 0 40px;

					background-color: #754c24;

					&::before {
						content: url(../img_sample/0030_img05.png);
						position: absolute;
						top: -6px;
						left: -5px;
						transform: scale(0.6);
					}

				}

				pre {
					display: block;
					display: -webkit-box;
					overflow: hidden;
					text-overflow: ellipsis;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 3;
					min-height: 60px;
				}

				li {
					position: relative;
					color: #754c24;
					font-size: 1.3rem;
					line-height: 1.75;
					padding: 0 0 0 15px;

					&::before {
						content: "●";
						position: absolute;
						top: 0;
						left: 0;
					}
				}
			}

			.otherItemsLink {
				display: block;
				border-radius: 45px;
				min-width: 220px;
				max-width: 250px;
				font-size: 14px;
				text-align: center;
				margin: 10px auto 0;
				padding: 10px;
			}

			/* １商品強調タイプ */
			&.specialTypeOneItem {
				.itemInfoArea {
					display: flex;
					justify-content: space-between;
					flex-wrap: wrap;
					border: solid 5px #754c24;
					padding: 15px;

					.itemImgArea {
						width: 45%;

						@media (max-width: 500px) {
							width: 100%;
						}

						img {
							width: 100%;
						}
					}

					.itemInfoDetail {
						width: 55%;
						padding: 0 0 0 20px;

						@media (max-width: 500px) {
							width: inherit;
							padding: 20px 0;
						}

						.itemBlockBody {
							margin: 15px 0;

							.itemNameInfo,
							.itemModelNum {
								min-height: inherit;
							}

							.itemBlockInfo {
								margin: 15px 0 0;
							}
						}
					}

					.itemDetailBtnArea {
						text-align: center;
						padding: 15px 0 0;

						&[data-type="2"] {
							display: none;
						}

						button,
						a {
							position: relative;
							color: #fff;
							font-weight: bold;
							letter-spacing: 2px;
							padding: 16px 15% 14px;

							background: #ed1a3b;
							border-bottom: 5px solid #a2071f;

							&::after {
								content: "▼";
								position: absolute;
								top: 29%;
								right: 7%;
								transform: rotate(270deg);
							}
						}
					}
				}
			}

			/* スライダー／リスト表示タイプ */
			&.specialTypeSliderItem,
			&.specialTypeListItem {
				.itemPointInfo {
					font-size: 13px;
					line-height: 1.5;
					min-height: 85px;
				}

				.itemTopIcoArea,
				.itemBlockImg,
				.icoType_Service {
					margin: 0 0 10px;

					/*	アイコン調整 */
					/* .icoGuarantee,
					.icoPostage,
					.icoInstallation {
						font-size: var(--global_font_size_small3);
						letter-spacing: inherit;
						width: 118px;
						padding: 2px 0 0 27px;
					} */

				}

				.itemNameInfo {
					/* min-height: inherit; */
				}

				.icoType_Passport {
					justify-content: center;
				}

				@media (max-width: 860px) {
					.itemPointInfo {
						p {
							display: -webkit-box;
							overflow: hidden;
							text-overflow: ellipsis;
							-webkit-box-orient: vertical;
							-webkit-line-clamp: 4;
							height: 80px;
						}
					}
				}
			}

			&.specialTypeListItem {
				.itemListArea {
					display: flex;
					flex-wrap: wrap;
					row-gap: 40px;
					column-gap: 16px;

					@media (max-width: 860px) {
						column-gap: 7px;

						.itemBlock {
							display: grid;
							grid: "itemPointInfo itemPointInfo"
								"itemBlockHeader itemBlockBody";
							column-gap: 20px;

							.itemPointInfo {
								grid-area: itemPointInfo;
							}

							.itemBlockHeader {
								grid-area: itemBlockHeader;
								width: 120px;
								height: fit-content;
							}

							.itemBlockBody {
								grid-area: itemBlockBody;
								width: calc(100vw - 170px);
							}

							.itemMakerName {
								font-size: 1.3rem;
							}

							.itemBlockIncTitle {
								width: 100%;
							}

							.otherItemsLink {
								min-width: inherit;
							}
						}
					}

					.itemCategoryNameTop {
						display: flex;
						justify-content: center;
						align-items: center;
						height: 50px;
						font-size: 15px;
						font-weight: bold;
						letter-spacing: 1px;
						line-height: 1.3;
						margin: 0 0 30px;
					}

					@media (max-width: 500px) {

						/* .icoPassport,
						.icoCampaign,
						.icoCoupon {
							background-size: 31px;
							width: inherit;
							white-space: inherit;
							height: initial;
							padding: 3px 8px 0 38px;
							line-height: 1.1;
						} */
					}
				}
			}
		}

		/* 花粉対策特集 */
		&.pollen {

			/* 文字色・ボーダー装飾 */
			h1 {
				position: relative;
				color: #754c24;

				&::after {
					content: '';
					position: absolute;
					background: repeating-linear-gradient(-45deg, #754c24, #754c24 2px, white 2px, white 4px);
					left: 0;
					bottom: 0;
					width: 100%;
					height: 7px;
				}
			}

			.specialLeadArea {
				background: #fff0c2;
				padding: 40px;

				@media (max-width: 500px) {
					padding: 12px 10px;
				}

				/* リード内にイラストを表示 */
				p {
					position: relative;
					border: 2px dashed #754c24;
					color: #754c24;
					padding: 15px 150px 15px 25px;

					@media (max-width: 500px) {
						padding: 10px;
					}

					&:after {
						content: "";
						position: absolute;
						background: url("../img_sample/0030_img03.png") no-repeat;
						background-size: 130px;
						bottom: 0;
						right: 12px;
						width: 130px;
						height: 205px;

						@media (max-width: 500px) {
							background: inherit;
							height: inherit;
						}
					}
				}
			}

			section {

				/* 文字色・ボーダー／強調装飾 */
				h2 {
					position: relative;
					color: #754c24;

					&::after {
						content: '';
						position: absolute;
						background: repeating-linear-gradient(-45deg, #754c24, #754c24 2px, white 2px, white 4px);
						left: 0;
						bottom: 0;
						width: 100%;
						height: 7px;
					}

					span {
						display: inline-block;
						background: linear-gradient(to bottom, #fff 50%, #fc3 50%, #fc3 90%, #fff 90%);
						padding: 0 7px 5px;
					}
				}

				.sectionLeadArea {
					position: relative;
					background-color: #fff0c2;
					padding: 20px;

					&::before {
						position: absolute;
						content: "";
						width: 2px;
						height: 21px;
						top: -10px;
						left: 50%;
						background-color: #754c24;
						transform: translateY(-50%);
					}

					@media (max-width: 500px) {
						padding: 12px 10px;
					}

					p {
						border: 2px dashed #754c24;
						color: #754c24;
					}
				}

				/* スライダーナビゲーション */
				.splide {
					margin: -5px 0 70px;
				}

				.splide__pagination__page.is-active {
					background: #fc3;
					margin: 0 15px;
				}

				.splide__pagination__page:hover {
					background: #fc3;
				}

				.itemBlock {
					box-shadow: inherit;
				}

				.otherItemsLink {
					background-color: #754c24;
					border: solid 1px #754c24;
					color: #fff;
					letter-spacing: -1px;
				}

				.itemPointInfo {
					border: solid 1px #754c24;
					margin: 10px 0 0;

					span {
						background-color: #754c24;

						&::before {
							content: url(../img_sample/0030_img05.png);
							position: absolute;
							top: -6px;
							left: -5px;
							transform: scale(0.6);
						}
					}

					li {
						position: relative;
						color: #754c24;
						font-size: 13px;
						line-height: 1.75;
						padding: 0 0 0 15px;

						&::before {
							content: "●";
							position: absolute;
							top: 0;
							left: 0;
						}
					}
				}

				&.specialTypeOneItem {
					.itemInfoArea {
						display: flex;
						justify-content: space-between;
						flex-wrap: wrap;
						border: solid 5px #754c24;
						padding: 15px;

						@media (max-width: 500px) {
							display: inherit;
							padding: 5px;
						}

						.itemImgArea {
							width: 45%;

							@media (max-width: 500px) {
								width: inherit;
							}

							img {
								width: 100%;
							}
						}

						.itemInfoDetail {
							width: 55%;
							padding: 0 0 0 20px;

							@media (max-width: 500px) {
								width: inherit;
								padding: 20px 0;
							}

							.itemNameInfo,
							.itemModelNum {
								min-height: inherit;
							}

							.itemBlockInfo {
								margin: 15px 0 0;
							}
						}

						.itemDetailBtnArea {
							text-align: center;
							padding: 15px 0 0;

							&[data-type="2"] {
								display: none;
							}

							button,
							a {
								background: #ed1a3b;
								border-bottom: 5px solid #a2071f;

								&::after {
									content: "▼";
									position: absolute;
									top: 29%;
									right: 7%;
									transform: rotate(270deg);
								}
							}
						}
					}
				}

				&.specialTypeSliderItem,
				&.specialTypeListItem {
					.itemCategoryNameTop {
						background-color: #ddc6b0;
						color: #754c24;
					}

					.itemBlockHeader {
						& .itemBlockImg {
							img {
								width: 100%;
								max-width: inherit;
								max-height: inherit;
							}
						}
					}

					.itemNameInfo {
						min-height: inherit;
					}

					.itemBlockInfo {
						margin: 10px 0 0;
					}
				}

				&.includeBannerArea {
					ul {
						display: flex;
						flex-wrap: wrap;
						row-gap: 20px;
						column-gap: 20px;

						@media (max-width: 768px) {
							row-gap: 15px;
							column-gap: 15px;
						}

						li {
							width: calc((100% - 20px) / 2);

							img {
								width: 100%;
								border: 1px solid var(--global_clr_lightgray);
							}
						}
					}
				}
			}
		}
	}


	/*----------------------------------------------------------
	  特集用Xポストリンク
	----------------------------------------------------------*/
	.cpMainBody_Fature {
		display: flex;
		align-items: center;
		justify-content: space-between;

		@media (max-width: 768px) {
			display: block;
		}
	}

	.icoPostX_Feature {
		display: flex;
		align-items: center;
		background-color: black;
		height: 20px;
		padding-top: 0;
		border-radius: 6px;
		border: 1px solid var(--global_clr_bluegray);
		width: 74px;
		min-width: 74px;
		white-space: nowrap;
		margin-right: 310px;

		@media (max-width: 980px) {
			margin-right: 20px;
		}

		@media (max-width: 768px) {
			margin: 10px 0 0 auto;
		}

		.text {
			color: var(--global_clr_white);
			padding: 0 10px 0px 24px;
			font-size: 1.4rem;
			display: inline-block;
		}

		&::before {
			content: "";
			position: absolute;
			width: 22px;
			height: 18px;
			background: transparent url(../img/icon/ico_x_w.svg) no-repeat top 2px left 10px;
			background-size: 11px;
		}

		&:hover {
			opacity: 0.7;

			.text {
				text-decoration: none;
			}
		}
	}

	/*----------------------------------------------------------
	  MK4ST_BNR_0001：注目の特集２列（大バナー）
	----------------------------------------------------------*/
	.MK4ST_BNR_0001 {

		&.cpntSpAccordion {

			.cpMain {

				@media (max-width: 768px) {
					background: var(--global_clr_white);
				}

				.cpMainBody {
					@media (max-width: 768px) {
						padding: 5px;
					}
				}
			}
		}

		.specialFeatureArea ul {
			display: flex;
			flex-wrap: wrap;
			gap: 15px;

			li {
				width: calc((100% - 45px) / 4);

				@media (max-width: 768px) {
					width: calc((100% - 15px) / 2);
				}

				img {
					width: 100%;
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4ST_BNR_0002：メーカーからさがす（小バナー）
	----------------------------------------------------------*/
	.MK4ST_BNR_0002 {

		&.cpntSpAccordion {
			.cpMain {

				@media (max-width: 768px) {
					background: var(--global_clr_white);
				}

				.cpMainBody {
					@media (max-width: 768px) {
						padding: 5px;
					}
				}
			}
		}

		.makerFeatureArea ul {
			display: flex;
			flex-wrap: wrap;
			row-gap: 15px;
			column-gap: 15px;

			li {
				width: calc((100% - 65px) / 5);

				@media (max-width: 1140px) {
					width: calc((100% - 48px) / 4);
				}

				@media (max-width: 920px) {
					width: calc((100% - 33px) / 3);
				}

				@media (max-width: 768px) {
					width: calc((100% - 18px) / 2);
					margin: 0;
				}

				img {
					width: 100%;
					max-width: 320px;

					@media (max-width: 768px) {
						max-width: 360px;
					}
				}
			}
		}
	}

	/*----------------------------------------------------------
	  MK4PFRSS010_01：SC店舗在庫確認
	----------------------------------------------------------*/
	.MK4PFRSS010_01 {
		h1 {
			background: var(--global_clr_darkgray);
			font-size: 1.7rem;
			font-weight: bold;
			letter-spacing: 1.5px;
			color: var(--global_clr_white);
			margin: 0 0 20px 0;
			padding: 10px;

			@media (max-width: 500px) {
				margin: 0 0 10px;
			}
		}

		.stockItemNm {

			.itemNameInfo,
			.itemModelNum {
				display: -webkit-box;
				overflow: hidden;
				text-overflow: ellipsis;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
				margin-bottom: 4px;

				span {
					padding-right: 8px;

					&:last-child {
						padding-right: 0;
					}

					&:empty {
						display: none;
					}
				}
			}

			.itemModelNum {
				margin-bottom: 0;
			}

			ul {
				margin-bottom: 15px;
				display: flex;
				flex-direction: column;
				row-gap: 4px;

				li {
					margin-bottom: 0;
				}
			}
		}

		.shopStockLaedTxt {
			background: var(--global_bck_color);
			margin: 0 0 20px;
			padding: 15px;

			span {
				display: inline-block;
				color: var(--global_clr_darkred);
				font-size: 1.6rem;
				font-weight: bold;
				margin: 0 0 10px;
			}
		}

		dl {
			display: flex;
			flex-wrap: wrap;
			width: 100%;
			margin: 0 0 30px;

			@media (max-width: 500px) {
				display: inherit;
			}
		}

		dt {
			border-bottom: 1px solid var(--global_clr_gray);
			width: 15%;
			font-size: 16px;
			padding: 15px;

			@media (max-width: 500px) {
				width: inherit;
				padding: 10px 5px;

				&.StockAllTitle {
					display: none;
				}
			}

			.stockItemNm {
				font-size: 16px;
			}
		}

		dd {
			border-bottom: 1px solid var(--global_clr_gray);
			width: 85%;
			padding: 15px 15px 0;

			@media (max-width: 500px) {
				border-bottom: inherit;
				width: inherit;
				padding: 10px 5px;
			}

			/* 上部共通設定 */
			ul {
				display: flex;
				flex-wrap: wrap;
				column-gap: 5px;

				@media (max-width: 500px) {
					row-gap: 10px;
					margin: 0 0 12px;
				}

				li {
					display: flex;
					align-items: center;
					margin: 0 10px 10px 0;

					@media (max-width: 500px) {
						margin: 0;
					}

					input[type=checkbox] {
						margin: 0 5px 0 0;
						width: 25px;
						height: 25px;
						accent-color: var(--global_clr_blue);
					}

					label {
						font-weight: bold;
					}
				}
			}

			/* エリア */
			/* &:nth-child(4) li { */
			ul.storeAreaList li {
				width: 17%;
				min-width: 110px;
				min-height: 42px;
				position: relative;

				@media (max-width: 500px) {
					width: inherit;
					min-width: 100px;
				}

				/* エリアではinput隠す */
				input {
					width: 1px !important;
					height: 1px !important;
					position: absolute;
					appearance: none;
					opacity: 0.01;
					z-index: 1;

					&:checked~label {
						background: var(--global_clr_blue);
						color: var(--global_clr_white);
						font-weight: bold;
					}

					/* フォーカスあたったとき */
					&:focus-visible~label {
						outline: 2px solid #66f;
						border-radius: .2rem;
					}
				}

				label {
					border: 1px solid var(--global_clr_gray);
					border-radius: 5px;
					width: 100%;
					text-align: center;
					white-space: nowrap;
					padding: 10px;
					background-color: white;
					position: absolute;
					top: 0;
					left: 0;
					z-index: 5;

					@media (max-width: 500px) {
						padding: 8px 1px;
					}
				}
			}

			/* 都道府県 */
			/* &:nth-child(6) li { */
			ul.storePrefectureList li {
				width: 17%;
				min-width: 110px;

				@media (max-width: 500px) {
					width: inherit;
					min-width: 31%;
				}
			}
		}

		dd.stockAllBody {

			ul {
				@media (max-width: 768px) {
					flex-direction: column;
				}
			}
		}

		.messageWrap {
			flex: 1;

			>div {
				margin: 0 0 0 auto;
			}
		}

		.attention {
			color: var(--global_clr_darkred);
			margin: 5px 2px;
			border: 1px solid var(--global_clr_darkred);
			padding: 4px;
			font-size: 1.4rem;
			font-weight: bold;
		}

		.stockAttentionTxt {
			background: var(--global_bck_color);
			color: var(--global_clr_darkred);
			font-size: 1.8rem;
			font-weight: bold;
			padding: 15px;
			margin: 0 0 30px;
		}

		section {
			width: 100%;
			margin: 0 0 30px;

			h2 {
				background: var(--global_clr_darkgray);
				color: var(--global_clr_white);
				font-size: 1.6rem;
				font-weight: bold;
				letter-spacing: 1px;
				margin: 0 0 30px;
				padding: 6px 8px;
			}

			h3 {
				border-bottom: 1px solid var(--global_clr_gray);
				font-size: 2rem;
				font-weight: bold;
				margin: 0 0 15px;
				padding: 0 5px 10px;
			}

			.storeDetailList {
				.eachStoreDetail {
					display: flex;
					border-bottom: 1px solid var(--global_clr_gray);
					margin: 0 10px 20px;
					padding: 0 0 20px;

					@media (max-width: 900px) {
						display: inherit;
						width: inherit;
					}

					li {
						display: flex;
						align-items: center;

						&:first-child {
							width: 20%;

							@media (max-width: 900px) {
								width: inherit;
							}

							.storeName {
								font-size: 16px;
								font-weight: bold;

								@media (max-width: 900px) {
									font-size: 20px;
									margin: 0 0 10px;
								}
							}
						}

						&:nth-child(2) {
							width: 25%;

							@media (max-width: 900px) {
								display: flex;
								width: inherit;
							}

							.storeContactInfo {
								li {
									width: 100%;
									font-size: 13px;
									font-weight: normal;

									@media (max-width: 900px) {
										margin: 0 0 10px;
										font-size: inherit;
									}

									&:first-child {
										margin: 0 0 5px;

										@media (max-width: 900px) {
											margin: 0 0 10px;
										}
									}
								}
							}
						}

						&:nth-child(3) {
							width: 15%;
							font-weight: bold;

							@media (max-width: 900px) {
								width: inherit;
								margin: 0 0 10px;
							}

							span {
								margin: 0 auto;

								@media (max-width: 900px) {
									margin: inherit;
								}
							}
						}

						&:nth-child(4) {
							width: 10%;

							select {
								border: 1px solid var(--global_clr_gray);
								border-radius: 5px;
								min-width: 70px;
								padding: 10px 10px;
								background-color: white;

								&.disabled {
									background-color: var(--global_clr_brightgray);
									color: var(--global_clr_gray);
								}
							}
						}

						&:nth-child(5) {
							width: 30%;
							justify-content: end;

							@media (max-width: 900px) {
								width: inherit;
								margin: -20px 0 0;
							}

							input {
								@media (max-width: 900px) {
									margin: inherit;
								}
							}
						}

						.storeOpenTime,
						.storeTelNo {
							display: block;
							margin: 0 0 0 10px;

							@media (max-width: 600px) {
								font-size: inherit;
							}
						}

						/*	緑　　・1201：在庫あり、2201：予約受付中
							グレー・1204：在庫なし、1205：ネット在庫完売、2202：予約受付終了
							赤系　・1202：在庫残少、
							黒　　・1206：お取り寄せ */

						/*	緑　　・1201：在庫あり
							赤系　・1202：残りわずか
							黒　　・1203：お取り寄せ
							グレー・1204：完売 */
						.itemStockInfo_2,
						.itemStockInfo_1201 {
							color: var(--global_clr_green);
						}

						.itemStockInfo_3,
						.itemStockInfo_1202 {
							color: var(--global_clr_darkred);
						}

						.itemStockInfo_1203 {
							color: var(--global_clr_black);
						}

						.itemStockInfo_4,
						.itemStockInfo_1204 {
							color: var(--global_clr_bluegray);
						}

						.cmnBtnAddCart {
							background-position: 21px 9px;
						}

						.cmnBtnAddCart {
							@media (max-width: 768px) {
								width: 235px;
								background-position: 10px;
							}
						}
					}
				}
			}
		}

		.closeBtnArea {
			display: flex;
			justify-content: center;
			padding: 10px;
		}

		/*営業時間テキスト行替え対応*/
		.storeOpenTime{
			white-space: pre-line;
			flex:1;
		}
		.storeContactInfo li{
			align-items: flex-start !important;
		}
	}


	/*----------------------------------------------------------
	  レビュー表示
	----------------------------------------------------------*/
	.itemBlockReviewArea {
		display: flex;
		justify-content: end;
		margin: 5px 0;
		min-height: 20px;

		@media (max-width: 768px) {
			min-height: inherit;
		}

		a {
			text-decoration: underline;
			padding-left: 2px;
			padding-right: 2px;

			&:hover {
				text-decoration: none;
			}
		}

		ul {
			display: flex;

			.itemBlockReviewCnt {
				margin: 3px 0 0 0;
				font-size: var(--cmn_icon_font_size_S);

				@media (max-width: 768px) {
					margin: 1px 0 0 0;
					font-size: inherit;
				}

			}
		}
	}

	/*----------------------------------------------------------
	  レビュー・星/バーグラフ/評価
	----------------------------------------------------------*/
	.starRating {
		position: relative;
		z-index: 0;
		display: inline-block;
		white-space: nowrap;
		color: var(--global_clr_lightgray);
		font-size: 20px;
		margin: -4px 0 0;

		&:before,
		&:after {
			content: '★★★★★';
		}

		&:after {
			position: absolute;
			z-index: 1;
			top: 0;
			left: 0;
			overflow: hidden;
			white-space: nowrap;
			color: var(--global_clr_yellow);
		}

		&[data-rate="5"]:after,
		&[data-rate="5.0"]:after {
			width: 100%;
		}

		&[data-rate="4.5"]:after {
			width: 85%;
		}

		&[data-rate="4"]:after,
		&[data-rate="4.0"]:after {
			width: 76%;
		}

		&[data-rate="3.5"]:after {
			width: 66%;
		}

		&[data-rate="3"]:after,
		&[data-rate="3.0"]:after {
			width: 56%;
		}

		&[data-rate="2.5"]:after {
			width: 48%;
		}

		&[data-rate="2"]:after,
		&[data-rate="2.0"]:after {
			width: 38%;
		}

		&[data-rate="1.5"]:after {
			width: 28%;
		}

		&[data-rate="1"]:after,
		&[data-rate="1.0"]:after {
			width: 18%;
		}

		&[data-rate="0.5"]:after {
			width: 10%;
		}

		&[data-rate="0"]:after,
		&[data-rate="0.0"]:after {
			width: 0%;
		}
	}

	/* バーグラフ */
	.reviewScoreArea {
		display: flex;
		background: var(--global_clr_brightgray);
		border-radius: 10px;
		min-width: 340px;
		height: 205px;
		padding: 15px 0 5px 15px;

		.reviewScoreNumArea {
			font-size: 12px;
			padding: 3px 10px 0;
		}
	}

	.reviewInfoArea {
		display: flex;
		min-width: 450px;
		margin: 0 0 10px;

		@media (max-width: 500px) {
			min-width: inherit;
		}

		.reviewScoreTitle {
			display: block;
			font-size: 17px;
			font-weight: bold;
			margin: -2px 10px 0 0;
		}
	}

	.graphBarContainer {
		.reviewScoreGraph {
			display: flex;
			width: 100%;

			.graphBar {
				display: block;
				position: relative;
				height: 20px;
				min-width: 150px;
				color: var(--global_clr_white);
				line-height: 30px;
				margin: 0 auto 10px 8px;
				padding: 0 1px 1px 0;

				@media (max-width: 500px) {
					min-width: 230px;
				}

				@media (max-width: 440px) {
					min-width: 170px;
				}

				&::before {
					position: absolute;
					content: '';
					background: var(--global_clr_lightgray);
					width: 100%;
					height: 20px;
					top: 0;
					left: 0;
					z-index: 0;
				}

				.graphPercent {
					display: inline-block;
					background: var(--global_clr_yellow);
					min-height: 20px;
					position: absolute;
					width: 0;
					transition: all 0.5s;
				}
			}

			li:last-child {
				width: 80px;
				white-space: nowrap;
				text-align: right;
			}
		}
	}

	/* 評価設定 */
	.reviewStarsArea {

		span {
			display: flex;
			flex-direction: row-reverse;
			justify-content: flex-end;

			input[type='radio'] {
				display: none;

				&:checked~label {
					color: var(--global_clr_yellow);
				}
			}

			label {
				color: var(--global_clr_lightgray);
				font-size: 30px;
				padding: 0 5px;
				cursor: pointer;

				&:hover,
				&:hover~label {
					color: var(--global_clr_yellow);
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRPM000_06：SCレビュー一覧
	----------------------------------------------------------*/
	.MK4PFRPM000_06 {
		max-width: 1260px;
		margin-left: auto;
		margin-right: auto;

		.cpHeadTitle h2 {

			&::before {
				content: '';
				display: block;
				position: absolute;
				top: 2px;
				left: 8px;
				height: 21px;
				border-right: 4px solid var(--global_clr_bluegray);
			}
		}

		.cpHeadText {
			p.reviewNoteArea {
				border: 1px solid var(--global_clr_darkred);
				color: var(--global_clr_darkred);
				line-height: 1.5;
				margin: 30px 20px;
				padding: 15px 25px;

				span {
					font-weight: bold;
				}
			}
		}

		.reviewRegister,
		.reviewMoreView {
			a {
				display: block;
				width: 180px;
				cursor: pointer;
				font-size: 14px;
				text-align: center;
				margin: 10px 0 15px;
				padding-top: 12px;

				&:hover {
					text-decoration: none;
				}
			}
		}

		.reviewRegister {
			display: flex;
			justify-content: start;
			margin: 10px 0 25px 25px;

			@media (max-width: 500px) {
				justify-content: center;
				margin: 10px auto 25px;
			}
		}

		.reviewMoreView {
			display: flex;
			justify-content: end;

			@media (max-width: 500px) {
				justify-content: center;
			}
		}

		.reviewArea {
			display: flex;
			padding: 0 0 0 20px;

			@media (max-width: 800px) {
				padding: 0 0 0 5px;
			}

			@media (max-width: 500px) {
				display: inherit;
				padding: 0;
			}

			.reviewScoreArea {
				margin: 0 30px 0 0;

				@media (max-width: 800px) {
					margin: 0 15px 0 0;
				}

				@media (max-width: 500px) {
					margin: 0 0 40px;
				}
			}

			.reviewTextArea {
				width: 100%;

				.eachReview {
					border-bottom: 1px solid var(--global_clr_darkgray);
					margin: 0 0 30px;
					padding: 0 10px 5px;

					li {
						margin: 0 0 10px;

						@media (max-width: 768px) {}

						&:first-child {
							display: flex;
							justify-content: space-between;

							@media (max-width: 768px) {
								display: inherit;

								.reviewDate {
									margin: 5px 0 0;
								}
							}
						}

						&:nth-child(2) {
							@media (max-width: 768px) {
								display: gred;

								span {
									display: flex;
								}

								.reviewTitle {
									margin: 5px 0 0;
								}
							}
						}

						.reviewerName {
							margin: 0 5px 0 0;
							overflow-wrap: break-word;
						}

						.reviewTitle {
							font-weight: bold;
							overflow-wrap: break-word;
						}

						&.grid-bottom-left pre {
							overflow-wrap: break-word;
						}

						p {
							line-height: 1.75;
						}
					}
				}
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRRV010_01：Mレビュー投稿
	----------------------------------------------------------*/
	.MK4PFRRV010_01 {
		.customer-form-error {
			margin: 30px auto 40px !important;
		}

		.validation {
			display: inherit;

			.customer-form-column {
				margin: 0 0 15px;

				span:nth-child(2) {
					font-weight: bold;
				}

				.customer-form-input,
				.efo-input-area {
					input {
						width: 100%;
					}
				}
			}

			&.auto {
				.efo-column-name {
					font-weight: inherit !important;
				}

				.efo-input-area {
					font-size: var(--global_font_size_large2);
					font-weight: bold;
				}
			}

			.reviewStarAnnotation {}

			.reviewStarsArea {
				margin-left: -15px;
			}

			input[type="text"] {
				width: 50%;

				@media (max-width: 768px) {
					width: inherit;
				}
			}
		}

		.cpResultNoData {

			.cpAnnounceMsg {
				font-size: var(--global_font_size_large5);
				color: var(--global_clr_darkred);
				padding-left: 20px;
				border-bottom: none;
			}

			.cpAnnounceBody {
				padding-left: 20px;
			}
		}
	}


	/*----------------------------------------------------------
	  MK4PFRRV011_01：Mレビュー投稿完了
	----------------------------------------------------------*/
	.MK4PFRRV011_01 {
		section {
			margin: 0 auto;
			min-width: 300px;

			@media (max-width: 500px) {
				font-size: 1.75;
				width: 100%;
				padding: 0 10px;
			}

			h1 {
				font-size: 2em;
				border-bottom: 1px solid var(--global_clr_black);
				margin: 10px 0 20px;
			}

			.customerInfoArea {
				padding: 40px 20px;
				line-height: 1.5;

				.name {
					margin: 0 0 20px;

					span {
						font-size: 20px;
						font-weight: bold;
					}
				}

				p {
					margin: 0 0 20px;
				}
			}

		}

		.button a {
			white-space: nowrap;
		}
	}

	/* ↓↓↓ LINKIDS追記（スマホ絞り込みモーダル対応） ↓↓↓ */
	/*----------------------------------------------------------
		商品絞り込みモーダル  
	----------------------------------------------------------*/
	&#productNarrowModal {
		.jBox-container {
			.jBox-content {
				display: flex;
				flex-direction: column;
				gap: 20px;
			}
		}

		.jBox-content {
			padding: 15px 15px;
		}
	}

	/* ↑↑↑ LINKIDS追記（スマホ絞り込みモーダル対応） ↑↑↑ */
}



#fwCms_wrapper {

	/*----------------------------------------------------------
		MK4ST_QKS_0001：クイック検索（CPNT時・画像部など）
	----------------------------------------------------------*/
	.MK4ST_QKS_0001 {

		/* 画像縦サイズ・テキスト位置 */
		--this_img_height: 145px;
		--this_img_height_minus: -130px;
		--this_text_top: -70px;
		--this_text_left: 60%;

		@media (max-width: 768px) {
			--this_img_height: 115px;
			--this_img_height_minus: -100px;
			--this_text_top: -60px;
			--this_text_left: 40%;
		}

		margin-bottom: 50px;

		.cpHead {
			.cpHeadTitle {
				font-size: 16px;
				font-weight: bold;
				line-height: 24px;
			}
		}

		.cpMain {
			margin-top: var(--this_img_height);
		}

		.cpMainBody {
			position: relative;

			/* テキスト */
			.cpMainText {
				position: absolute;
				top: var(--this_text_top);
				left: var(--this_text_left);

				span {
					display: block;
					margin: 4px;
					padding: 2px 6px;
					border-radius: 4px;
					background: rgba(255, 255, 255, 0.8);
				}
			}

			.cpMainImage {
				top: var(--this_img_height_minus);
				position: absolute;
				width: 100%;
				border-radius: 15px 15px 0 0;
				opacity: 0.7;
				z-index: -1;
				background-image: url(/excludes/KEC/common/img/cpnt/MK4ST_QKS_0001/MK4ST_QKS_0001_pc.jpg);
				background-repeat: no-repeat;
				background-position-x: center;
				background-size: 100%;

				/* 画面サイズ別に背景調整 */
				@media (max-width: 1400px) {
					background-size: inherit;
				}

				@media (max-width: 1020px) {
					background-size: 100%;
					background-image: url(/excludes/KEC/common/img/cpnt/MK4ST_QKS_0001/MK4ST_QKS_0001_sp.jpg);
				}

				@media (max-width: 768px) {
					background-size: 140%;
					background-image: url(/excludes/KEC/common/img/cpnt/MK4ST_QKS_0001/MK4ST_QKS_0001_sp.jpg);
				}

				.viewArea {
					height: 80px;
				}

				.transArea {
					height: 100px;
					background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
				}

				.whiteArea {
					height: 100px;
					background-color: #FFF;
				}
			}
		}
	}

	/*----------------------------------------------------------
		MK4ST_QKS_0001：クイック検索（コンテンツ本体・CPNT時/Gヘッダ時 共通設定）
	----------------------------------------------------------*/
	.MK4ST_QKS_0001 .contents_MK4ST_QKS_0001,
	.c_menu_lv1_wrap .c_menu_lv2_wrap .contents_MK4ST_QKS_0001 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;

		.contents_box {
			margin: 4px;
			border: 3px solid #FFF;
			border-radius: 14px;
			background-color: #FFF;
			box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.35);

			/* 画面サイズ別に１行の数を分岐 */

			width: calc((100% - 64px) / 8);

			@media (max-width: 920px) {
				width: calc((100% - 32px) / 4);
			}

			@media (max-width: 768px) {
				margin: 3px;
				width: calc((100% - 24px) / 3);
			}

			.contents_link {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: vertical;
				-webkit-box-direction: reverse;
				-ms-flex-direction: column-reverse;
				flex-direction: column-reverse;
				color: var(--global_clr_black);

				&:hover {
					text-decoration: underline !important;
				}

				.icon {
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-align: center;
					-ms-flex-align: center;
					align-items: center;
					margin: 0;

					img {
						margin: 0 auto;
						width: 100%;
						border-radius: 4px 4px 14px 14px;
					}
				}

				.text {
					font-size: 15px;
					line-height: 16px;
					font-weight: bold;
					padding: 0px 2px;
					min-height: 30px;
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-pack: center;
					-ms-flex-pack: center;
					justify-content: center;
					-webkit-box-align: center;
					-ms-flex-align: center;
					align-items: center;

					@media (max-width: 1020px) {
						font-size: 14px;
						padding: 0;
					}

					@media (max-width: 768px) {
						font-size: 14px;
						padding: 0;
					}
				}
			}
		}
	}


	.MK4ST_QKS_0001 .contents_MK4ST_QKS_0001 {
		.contents_box {
			/* 画面サイズ別に１行の数を分岐 */

			width: calc((100% - 64px) / 8);

			@media (max-width: 920px) {
				width: calc((100% - 32px) / 4);
			}

			@media (max-width: 768px) {
				margin: 3px;
				width: calc((100% - 24px) / 3);
			}
		}
	}

	.c_menu_lv1_wrap .c_menu_lv2_wrap .contents_MK4ST_QKS_0001 {
		margin-left: 10px;
		column-gap: 18px;
		row-gap: 6px;

		.contents_box {
			width: calc((100% - 84px) / 3);

			/* 画面幅に合わせて横幅調整 */
			@media (max-width: 980px) {
				width: calc((100% - 56px) / 2);
			}

		}

		@media (max-width: 768px) {
			margin-top: 15px;
			margin-bottom: 40px;
			margin-left: 5px;
			column-gap: 6px;
			row-gap: 8px;

			.contents_box {
				width: calc((100% - 45px) / 3);
			}
		}
	}
}


/*------------------------------------------------------------
	MK4RFRCK010_01：SCカート投入ダイアログ
------------------------------------------------------------*/
.jBox-wrapper#cartAddModal {

	.jBox-container {
		min-width: 620px;
		min-height: 400px;

		@media (max-width: 768px) {
			min-width: auto;
			min-height: auto;
		}

		.jBox-title {
			.statusE {
				font-size: var(--global_font_size_small1);
			}
		}
	}
}

#fwCms_wrapper,
.jBox-wrapper {

	.MK4RFRCK010_01 {
		--itemBlockWrap_height: 220px;
		--msgHead_height: 30px;
		--msgFoot_height: 60px;
		--actionBlock_height: 100px;
		--msgBody_height: calc(100vh - 80px - (var(--itemBlockWrap_height) + var(--msgHead_height) + var(--msgFoot_height) + var(--actionBlock_height)));
		margin-bottom: 0;
		position: relative;

		.cpServerError {
			padding: 0 20px 20px;
			min-height: 80px;

			@media (max-width: 768px) {
				padding: 0 20px 20px;
				min-height: 80px;
			}

			.cpAnnounceMsg {
				border-bottom: 0 solid var(--global_clr_lightgray);

				@media (max-width: 768px) {
					margin: 5px auto;
				}
			}
		}

		.cpHead {
			color: white;
			background-color: var(--global_clr_darkgray);
			font-size: 15px;
			padding: 10px;
			margin-bottom: 10px;
		}

		.cpMainBody {
			padding: 10px 20px 10px 20px;

			@media (max-width: 768px) {
				padding: 5px 5px 10px 5px;
			}

			/* 商品情報ブロック */
			.itemBlockWrap {
				max-width: 560px;
				min-height: var(--itemBlockWrap_height);
				/* max-height: 300px; */
				margin: 0 auto;

				&.errorView {
					opacity: 0.5;
				}

				.itemBlockInfo {

					li {
						margin-right: 10px !important;

						dl {
							display: flex;

							dt {
								&::after {
									content: "：";
									position: absolute;
									margin: 0 5px;
								}
							}

							dd {
								width: 160px !important;
								padding: unset !important;
								text-align: end;
							}
						}
					}

					.itemBlockQtyArea {
						margin-right: 10px !important;

						.itemBlockQtyTitle {
							/* @media (max-width: 768px) {
							width: 89px !important;
						} */
						}

						.itemBlockQtyValue {
							text-align: center !important;
							/* @media (max-width: 768px) {
							min-width: 105px;
							width: auto !important;
						} */
						}
					}
				}
			}

			/* メッセージブロック */
			.msgBlock {
				/* padding: 0 40px; */
				max-width: 1260px;
				margin: 0 auto;

				@media (max-width: 768px) {
					padding: 0 5px;
				}

				.msgHead {
					padding-bottom: 10px;
					height: var(--msgHead_height);
					/* max-height: 80px; */
					height: auto;
					font-size: 16px;
					color: var(--global_clr_darkred);
					font-weight: bold;
					border-bottom: 1px solid var(--global_clr_gray);
				}

				.msgBody {
					margin: 5px auto;
					padding: 5px 10px 0;
					max-height: calc(var(--msgBody_height) - 70px);
					min-height: 120px;
					overflow-y: auto !important;
					font-size: 1.5rem;
					line-height: 2.2rem;
				}

				.msgFoot {
					height: var(--msgFoot_height);
					padding-top: 25px;
					font-size: 1.8rem;
					font-weight: bold;
					border-top: 1px solid var(--global_clr_gray);
					text-align: center;

					input[type="checkbox"] {
						width: 18px;
						height: 18px;
						margin-bottom: 4px;
					}
				}

				#msgAgreeCheck {
					margin: 0 1px 1px 0;
					width: 20px;
					height: 20px;
					accent-color: var(--global_clr_blue);
				}
			}

			/* アクションブロック */
			.actionBlock {
				/* position: absolute; */
				bottom: 0;
				/* width: calc(100vw - 60px); */
				padding-right: 10px;
				height: var(--actionBlock_height);

				@media (max-width: 768px) {
					bottom: unset;
					width: unset;
				}

				.msgAgreeWrap {
					width: 100%;
				}

				.msgAgree {
					display: flex;
					justify-content: center;
					flex-wrap: wrap;
					column-gap: 40px;
					row-gap: 10px;
				}
			}
		}

		/* カート投入Dialogxの下部BTNエリア */
		.cmnScreenBottomButtonsWrap {
			margin: 10px auto 0;
			padding: 20px 20px 0 20px;

			width: 560px;

			@media (max-width: 560px) {
				width: unset;
			}
		}
	}
}


/*------------------------------------------------------------
	MK4ST_GUI_0001：ガイド・ガイコン説明
------------------------------------------------------------*/
.jBox-wrapper#cartAddModal {

	.jBox-container {
		min-width: 620px;
		min-height: 300px;

		@media (max-width: 500px) {
			min-width: auto;
			min-height: auto;
		}
	}
}

#fwCms_wrapper,
.jBox-wrapper {

	.MK4ST_GUI_0001 {
		width: 720px;
		margin: 0 auto;
		;

		/* 罫線 */
		hr {
			margin: 0;
			padding: 0;
			border: 0;
			margin: 20px 0;
			border-top: 1px dashed #aaa;
		}

		/* メモテキスト */
		.memo_text {
			font-size: var(--global_font_size_small2);
			line-height: 1.4;
			display: inline-block;
			height: auto;
			flex: 1;
			margin-top: -1px;
			padding-bottom: 6px;
			padding-left: 15px;

			@media (max-width: 768px) {
				padding-top: 8px;
				padding-bottom: 10px;
				padding-left: 2px;
			}

			.memo_add {
				display: block;
				padding-left: 18px;

				&::before {
					content: '※';
					display: inline-block;
					width: 18px;
					margin-left: -18px;
				}
			}

		}

		/* サービス系 */
		.icoType_ServiceDetail {
			display: flex;
			flex-direction: column;
			row-gap: 10px;

			@media (max-width: 768px) {
				max-width: 90vw;
			}

			li {
				display: flex;

				@media (max-width: 768px) {
					flex-direction: column;
				}

				>span {
					margin-right: 58px;
				}
			}
		}

		/* あんパス系 */
		.icoType_Passport {
			display: flex;
			flex-direction: column;
			row-gap: 10px;

			@media (max-width: 768px) {
				max-width: 90vw;
			}

			li {
				display: flex;

				@media (max-width: 768px) {
					flex-direction: column;
				}

				span {
					min-width: 218px;
				}
			}
		}

		/* お知らせ系 */
		.icoType_Notice {
			display: flex;
			flex-direction: column;
			row-gap: 10px;

			@media (max-width: 768px) {
				max-width: 90vw;
			}

			li {
				display: flex;

				@media (max-width: 768px) {
					flex-direction: column;
				}

				span {
					min-width: 96px;
					margin-top: -1px;
				}
			}
		}

		/* ステータス系 */
		.icoType_Status {
			display: flex;
			flex-direction: column;
			row-gap: 10px;

			@media (max-width: 768px) {
				max-width: 90vw;
			}

			li {
				display: flex;

				@media (max-width: 768px) {
					flex-direction: column;
				}

				>span {
					margin-top: 1px;
					margin-right: 25px;
				}
			}
		}

		.common-button-group {

			@media (max-width: 768px) {
				max-width: 90vw;
			}
		}
	}
}



html.ios-device.keyboard-visible {
	.d-modal__backdrop {
		opacity: 1 !important;
		background-color: rgba(0, 0, 0, .82) !important;
	}
}

/* フォーカスの設定 */
#fwCms_wrapper,
.jBox-wrapper {

	input:not([type="submit"]),
	select {
		&:focus {
			outline: 2px solid rgb(2, 167, 212) !important;
			background-color: var(--form_bck_color_focus) !important;
			/* border-bottom: 2px solid rgb(2, 167, 212); */
		}
	}

	input[type="submit"],
	button,
	a {
		&:focus {
			outline: 2px solid rgb(2, 167, 212) !important;
		}
	}
}