@charset "UTF-8";
/* CSS Document */

		.block01,
		.block02 {
			margin: 9rem 0;
		}



		.imgList01 {
			list-style: none;
			padding: 0;
			margin: 0;
			display: grid;
			gap: 1rem;
			margin-bottom: 9rem;
		}

		.imgList01.cols-4 {
			grid-template-columns: repeat(4, 1fr);
		}

		.imgList01.cols-3 {
			grid-template-columns: repeat(3, 1fr);
		}

		.imgList01.cols-2 {
			grid-template-columns: repeat(2, 1fr);
		}

		.imgList01.cols-1 {
			grid-template-columns: 1fr;
		}

		/* 画像1枚用：中央寄せ・90%幅（PCサイズ） */
		.imgList01.single-image {
			display: flex;
			/* ← gridではなくflexに切り替え */
			justify-content: center;
			/* ← 中央寄せ */
			max-width: 920px;
			margin: 9rem auto;
		}

		.imgItem {
			display: flex;
			flex-direction: column;
			/*text-align: center;*/
		}

		.imgItem img {
			width: 100%;
			height: auto;
			object-fit: cover;
			margin: 0.5rem 0;
			border-radius: 20px;
		}

		.image-title {
			font-weight: 700;
			color: #82765D;
			margin-bottom: 0.3rem;
		}

		.image-caption {
			font-size: 90%;
			color: #82765D;
			margin-top: 0.3rem;
		}

		/* レスポンシブ折り返し */
		@media screen and (max-width: 1024px) {

			.imgList01.cols-4,
			.imgList01.cols-3 {
				grid-template-columns: repeat(2, 1fr);
			}
		}

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

			.imgList01.cols-4,
			.imgList01.cols-3,
			.imgList01.cols-2 {
				grid-template-columns: 1fr;
			}
		}


		.block03,
		.block04 {
			display: flex;
			align-items: flex-start;
			gap: 9rem;
			margin-bottom: 9rem;
		}

		/* 左寄せ（画像 → テキスト） */
		.block03 {
			flex-direction: row;
		}

		/* 右寄せ（画像 ← テキスト） */
		.block04 {
			flex-direction: row-reverse;
		}

		.media-img {
			width: 470px;
			flex-shrink: 0;
			object-fit: cover;
			border-radius: 20px;
		}

		.media-text {
			flex: 1;
			text-align: left;
		}

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

			.block03,
			.block04 {
				flex-direction: column;
			}

			.media-img {
				width: 100%;
			}
		}

		.status {
			width: 88px;
			font-size: 1.2rem;
			font-weight: 600;
			text-align: center;
			display: inline-block;
			flex-wrap: wrap;
			align-items: center;
			justify-content: center;
			margin: 0.3rem 30px 0px 0
				/*40px*/
		}

		/* 「メニュー・商品」カテゴリに属する status */
		.category.menu+.status.open {
			background-color: #FF2084;
			color: #eee;
		}

		/* 「キャンペーン」カテゴリに属する status */
		.category.other+.status.open {
			background-color: #82146E;
			color: #eee;
		}

		.status.close {
			font-weight: 400;
			border: 2px solid #CCC;
			color: #82765D;
		}

		.news02Section .infoWrap .new {
			display: none;
		}