/*レスポンシブ*/
@media screen and (min-width: 769px) {
	.fieldset-vertical .form-control {
		padding-left: 12px;
	}

	/** フリーページ **/
	.pane-header+.pane-globalnav+.block-faq,
	.pane-header+.pane-globalnav+.block-guide,
	.pane-header+.pane-globalnav+.block-privacy {
		max-width: var(--responsive-sys-container-width);
		margin: 24px auto 80px;
		padding-top: 162px;
	}

	.block-faq h1,
	.block-guide h1,
	.block-privacy h1 {
		margin-bottom: 9px;
		padding: 16px 0;
	}

	.block-faq-intro,
	.block-guide-intro {
		margin-bottom: 68px;
	}

	.block-faq-intro--text,
	.block-guide-intro--text {
		margin-bottom: 30px;
	}

	.block-faq-intro--nav,
	.block-guide-intro--nav {
		display: flex;
		flex-wrap: wrap;
		column-gap: 20px;
		row-gap: 12px;
	}

	.block-faq-intro--nav li,
	.block-guide-intro--nav li {
		width: 275px;
	}

	.block-faq-intro--nav li a,
	.block-guide-intro--nav li a {
		padding: 27px 0;
		border-radius: 5px;
		text-align: center;
	}

	.block-guide-intro--nav li:not(:last-child) {
		margin-bottom: 0;
	}

	.block-faq-intro--nav li span,
	.block-guide-intro--nav li span {
		position: relative;
		padding-right: 17px;
		font-size: 16px;
	}

	.block-faq-intro--nav li span:after,
	.block-guide-intro--nav span:after {
		content: "";
		position: absolute;
		top: 6px;
		right: 0;
		width: 8px;
		height: 8px;
		transform: rotate(45deg);
		border-right: 1px solid #111;
		border-bottom: 1px solid #111;
	}

	.block-faq-intro--nav a:after,
	.block-guide-intro--nav a:after {
		content: none;
	}

	.block-faq-section:not(:last-child),
	.block-guide-section:not(:last-child) {
		margin-bottom: 68px;
	}

	.block-faq h2,
	.block-guide h2 {
		padding: 12px 0;
	}

	.block-privacy h2 {
		padding-bottom: 12px;
	}

	.block-faq-section,
	.block-guide-section {
		scroll-margin-top: 162px;
	}

	.block-faq-section dt {
		padding: 10px 24px;
		background: #f0f0f0;
		cursor: pointer;
	}

	.block-faq-section dt:before,
	.block-faq-section dt:after {
		right: 24px;
	}

	.block-faq-section dt span {
		padding-left: 40px;
		font-size: 18px;
	}

	.block-privacy-section:not(:last-child) {
		margin-bottom: 68px;
	}

	.block-guide-section--box:not(:last-child) {
		margin-bottom: 28px;
	}

	.block-guide-section--text {
		margin-bottom: 0;
		font-size: 14px;
	}

	.block-guide h3 {
		margin-bottom: 16px;
		padding: 12px 0;
		font-size: 18px;
	}

	/* ランディングページ */
	.block-landingpage h2[class^="block-landingpage"] {
		margin: 60px 0 20px 0;
		font-size: 24px;
		font-weight: 500;
	}

	.block-landingpage .block-landingpage-login--member>h2[class^="block-landingpage"],
	.block-landingpage-form>h2[class^="block-landingpage"],
	.block-landingpage-order--host>h2[class^="block-landingpage"] {
		margin: 0 0 20px 0;
	}

	.block-landingpage .block-landingpage-login--member>h2.block-landingpage-login--first-time-header {
		margin: 60px 0 20px 0;
	}

	#lp_clear_skin .item-frame .desc-box .pop {
		font-size: 40px;
		font-weight: bold;
	}

	#lp_clear_skin #sec_main .desc-box .text {
		font-size: 16px;
		line-height: 1.6;
	}

	#lp_clear_skin #sec_main .button.days10 a {
		width: 240px;
		height: 40px;
		border-radius: 40px;
		font-size: 18px;
		line-height: 38px;
	}

	#lp_clear_skin #sec_story .pop {
		font-size: 26px;
	}

	#lp_clear_skin #sec_story .button.days10 a {
		width: 320px;
	}

	#lp_clear_skin #sec_story .kome-list li {
		font-size: 12px;
	}

	#lp_clear_skin .item-frame .desc-box .text,
	#lp_clear_skin #sec_offer .notice-list li,
	.pane-landingpage-contents .detail-box .dl-table dt,
	.pane-landingpage-contents .detail-box .dl-table dd {
		font-size: 14px;
	}

	#lp_clear_skin .item-frame .desc-box .text {
		margin: 0 0 20px;
		font-weight: bold;
	}

	#lp_clear_skin .item-frame .item-desc {
		font-size: 16px;
		font-weight: normal;
	}

	#lp_clear_skin #sec_nayami .line01 {
		font-size: 22px;
	}

	#lp_clear_skin #sec_nayami h2 {
		margin: 0 0 50px 0;
		font-size: 50px;
	}

	#lp_clear_skin #sec_nayami .nayami-list {
		margin: 0 0 50px 0;
	}

	#lp_clear_skin #sec_nayami .nayami-list li {
		width: 280px;
		height: 280px;
		margin: 0 20px;
		font-size: 48px;
	}

	#lp_clear_skin #sec_nayami .line01 {
		margin: 0 0 50px 0;
	}

	#lp_clear_skin #sec_offer .details {
		padding: 80px 100px;
	}

	#lp_clear_skin #sec_offer .ttl-point {
		margin: 0 0 45px 0;
		font-size: 32px;
	}

	#lp_clear_skin #sec_offer .point-list {
		margin: 0 0 40px 0;
	}

	#lp_clear_skin #sec_offer .point-list li {
		width: 17.5%;
	}

	#lp_clear_skin #sec_offer .middle-text {
		font-size: 19px;
	}

	#lp_clear_skin #sec_offer .trial-button {
		margin: 60px 0;
	}

	#lp_clear_skin #sec_offer .trial-button a {
		height: 120px;
		background: linear-gradient(90deg, rgba(213, 8, 8, 1) 0%, rgba(237, 9, 141, 1) 100%);
		font-size: 35px;
		line-height: 120px;
	}

	.pane-landingpage-contents .detail-box .detail-ttl,
	.pane-landingpage-contents #frmLP .action-buttons .btn.btn-primary {
		font-size: 20px;
	}

	.pane-landingpage-contents .detail-box .dl-table dt {
		width: 25%;
		padding: 20px;
	}

	.pane-landingpage-contents .detail-box .dl-table dd {
		width: 75%;
		padding: 20px;
	}

	.pane-landingpage-contents .detail-box .notice-list li,
	.pane-landingpage-contents .detail-box p {
		font-size: unset;
	}

	.block-landingpage-login--member .block-landingpage-login--member-body {
		margin: 0;
	}

	.pane-landingpage-contents #frmLP .action-buttons .btn.btn-primary[name="order"] {
		width: 520px;
		padding: 20px 0;
	}

	.page-menu .wrapper {
		overflow-x: visible;
	}

	.fieldset-vertical .form-label+.constraint+.form-control {
		width: auto;
	}
}

@media (max-width: 780px) {
	.container:not(:has(.block-header-logo)) {
		& .btn {
			&.btn-default {
				font-size: var(--txt-20);
				max-width: 250px;
			}

			&.btn-default[value="戻る"] {
				font-size: var(--txt-20);
				max-width: 250px;
			}

			&.btn-danger {
				font-size: var(--txt-16);
				/*max-width: 80px;
				*/
				max-width: 250px;
				/*max-height: 38px;
				*/
			}

			&.block-arrival-notice--btn {
				max-width: none;
			}
		}

		.action-buttons {
			margin-top: 8.33vw;

			.action:last-of-type {
				margin-top: 4.17vw;
			}
		}

		.pane-main select {
			border: 1px solid #ccc;
			height: 4.4rem;
		}

		.pane-main input:not([type="checkbox"], [type="radio"], [type="button"], [type="submit"]) {
			height: 4.4rem;
		}

		/* /.container:not(:has(.block-header-logo)) */
	}

	.modal-wrapper .modal-footer .btn+.btn {
		margin-top: 4.17vw;
	}

	/* 入力ページのinput幅（郵便番号以外） */
	.form-group:not([class*="--zip"]) input {
		width: 100%;
	}

	body:not(:has(.block-topic-path)) .wrapper>.pane-footer {
		margin-top: 26.67vw;
		/* /body:not(:has(.block-topic-path)) .wrapper>.pane-footer  */
	}

	/* /@media (max-width: 780px) */
}

/* PCのみ----*/
@media screen and (min-width: 1025px) {
	#search_view {
		z-index: 999999;
		height: 100%;
		padding: 0 !important;

		.search_inner {
			width: min(53.33vw, 1024px);
			display: grid;
			grid-template-columns: 1fr 1fr;
			column-gap: var(--txt-12);
			background: unset !important;
			margin: 40px auto auto;
			z-index: 1;
			border: none;
			overflow: auto;

			form {
				width: 100%;
				border: 1px solid var(--form--border-color);
				border-radius: 8px;
				padding: min(0.63vw, 12px) min(0.89vw, 17px) min(0.63vw, 12px) 0;

				.block-header-search--keyword {
					width: calc(100% - 20px);
					height: 20px;
					border: 0;
					outline: none;
					font-size: var(--txt-12);
					padding: 0 10px 0 20px;
					background: unset;
				}

				.block-header-search--submit {
					width: 20px;
					height: 22px;
					background: url(../../img/usr/common/icon_search.svg) no-repeat center center / 100%;
				}
			}

			.search-box {
				background: #fff;
				padding: 20px 14px 28px;

				.search-box-list {
					margin-left: var(--txt-26);
					font-size: var(--txt-16);
					font-weight: bold;
					line-height: calc(24/16);
					color: var(--gray2--text-color);

					.list-item {
						+.list-item {
							margin-top: var(--txt-16);
						}
					}
				}

				&.-recommend {
					padding: 32px 33px;
				}

				.search-box-title {
					font-size: var(--txt-10);
					font-weight: bold;
					line-height: calc(15/10);
					color: var(--gray--text-color);
					border: none;
					margin-bottom: 8px;
					padding: 0;
				}
			}

			.search-card {
				+.search-card {
					margin-top: var(--txt-16);
				}

				figure {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					column-gap: var(--txt-16);

					picture {
						display: block;
						aspect-ratio: 90/109;
						width: min(4.69vw, 90px);
						height: auto;
					}

					figcaption {
						width: calc(100% - min(4.69vw, 90px));
					}
				}

				.search-card-date {
					color: var(--gray--text-color);
				}
			}
		}

		.search_bg {
			width: 100%;
			height: 100%;
			background-color: rgba(22, 31, 53, 0.8);
			backdrop-filter: blur(10px) !important;
			z-index: 0;
			position: absolute;
		}

		.block-search-logo {
			display: none;
		}
	}

	.pane-header {

		/* スクロール時 */
		&.is-scrolled {
			.container {
				height: min(9.77vw, 100px);
			}

			.block-header-logo {
				width: calc(min(15.43vw, 158px) * 1.25);
				left: min(2.73vw, 28px);
				transition: all 0.3s 0s ease;
			}

			.block-header-nav {
				padding: 0 min(9.38vw, 45px) 0 calc(min(2.73vw, 28px) + (min(15.43vw, 158px) * 1.25)) !important;
				column-gap: min(8.96vw, 51px) !important;
			}
		}
	}
}

/* PC～TB----*/
@media (max-width: 1024px) {
	/* ========================カテゴリ一覧======================== */
	/* .block-thumbnail-t {
		.block-thumbnail-t--items {
			grid-template-columns: repeat(auto-fill, clamp(200px,18.09vw,220px))!important;
			margin-bottom: min(6.58vw,80px);
			gap: min(3.29vw,40px) min(2.38vw,29px)!important;
		}
	}
	*/
}

/* TB----*/
@media (max-width: 1024px) {

	.tb-only,
	.tb-sp-only {
		display: block;
	}

	.pc-only,
	.sp-only {
		display: none;
	}

	/* ボタン */
	.btn {
		width: 100%;
		margin: auto;
		background: unset;
		border: none;

		&.btn-primary {
			font-size: var(--txt-22);
			font-family: var(--font-family-serif);
			font-weight: 600;
			line-height: calc(31/22);
			width: 100%;
			padding: min(3.2vw, 17px) 0 var(--txt-16);
			color: #fff;
			border: 1px solid var(--color-primary);
			background: var(--color-primary);
			transition: all .4s;
			display: flex;
			justify-content: center;
			align-items: center;
			margin: auto;

			&:hover {
				opacity: .8;
				transition: all .4s;
				background: var(--color-light-pink);
				color: var(--color-primary);
			}
		}

		&.btn-secondary {
			font-size: var(--txt-22);
			font-family: var(--font-family-serif);
			font-weight: 600;
			line-height: calc(31/22);
			width: 100%;
			padding: min(2.21vw, 17px) 0 var(--txt-16);
			color: #fff;
			/* border: 1px solid #121212;
			*/
			background: var(--color-deep-burgundy);
			transition: all .4s;
			display: flex;
			justify-content: center;
			align-items: center;
			margin: auto;

			&:hover {
				opacity: .8;
				transition: all .4s;
			}

			&.btn-login {
				background: var(--color-accent);
			}

			&.btn-dio-login {
				background: var(--color-deep-burgundy);
			}

			&.btn-img {
				padding: 0;
			}
		}
	}

	.pane-header {
		.block-header-logo {
			width: auto;
			height: min(22.08vw, 106px);
			left: min(2.73vw, 28px);
			aspect-ratio: 168/106;
			transition: all 0.3s 0s ease;
		}

		.block-header-info-frame {
			padding: calc((32px - var(--txt-18) - (26px - var(--txt-18))) / 2);
		}

		.block-header-info {
			font-size: var(--txt-18);
			line-height: calc(26/18);
			vertical-align: middle;
			/* height: min(4.69vw,36px);
			*/
		}

		.block-header-logo {
			width: min(26.27vw, 269px);
			left: min(2.73vw, 28px);
		}

		.block-header-nav {
			padding: 0 min(9.38vw, 45px) 0 calc(min(26.27vw, 269px) + min(2.73vw, 28px));
			column-gap: min(8.96vw, 51px) !important;
		}

		#header_menu {
			width: 100%;
			/*min(7.94vw,61px)*/
			height: auto !important;
			aspect-ratio: 57/44;

			span {
				/* font-size: var(--txt-18);
				*/
				/* line-height: 1!;
				*/
				display: flex;
				align-items: center;
				justify-content: center;
				width: 50px;
				height: auto;
			}

			/* &::before {
				width: 8px;
			}
			&::after {
				width: 8px;
			}
			*/
		}

		/* スクロール時 */
		&.is-scrolled {
			.container {
				height: min(12.77vw, 100px);
			}

			.block-header-logo {
				width: calc(min(15.43vw, 158px) * 1.25);
				left: min(2.73vw, 28px);
			}

			.block-header-nav {
				padding: 0 min(9.38vw, 45px) 0 calc(min(2.73vw, 28px) + (min(15.43vw, 158px) * 1.25)) !important;
				column-gap: min(8.96vw, 51px) !important;
			}

			#header_menu {
				width: auto;
			}
		}
	}

	body {
		&.body-fixed {
			.pane-header {

				.block-header-info-frame,
				.block-header-nav .block-headernav--item-list.left-list {
					display: none;
				}

				.block-header-logo {
					width: auto;
					height: 100%;
				}
			}

			.container {
				background: var(--color-header-bg);
			}

			#menu_view {
				padding: 0 !important;
				height: 100svh;

				.menu_inner {
					padding-top: min(20.83vw, 160px);
					background: var(--color-header-bg);
				}

				.block-navi-menu-contents {
					width: 100%;
					margin: auto;
					background: var(--color-header-bg);
					flex-direction: column;

					+.block-navi-menu-contents {
						margin-top: 100px;
					}

					.block-navi-menu {
						width: 90vw;
						margin: auto;

						+.block-navi-menu {
							margin: 30px auto 0;
							padding: 30px 0 0;
							border-top: 1px solid #ccc;
						}
					}

					.block-header-menu--title {
						font-size: var(--txt-32);
						font-weight: bold;
						font-family: var(--font-family-serif);
						color: var(--accent--text-color);
					}

					.header-categorytree-list {
						width: 90vw;
						margin: min(8.33vw, 38px) auto min(8.33vw, 64px);
						display: grid;
						grid-template-columns: repeat(4, 1fr);
						gap: min(5.21vw, 25px) min(1.67vw, 8px);
					}

					.header-categorytree-item {
						figure {
							display: block;
							text-align: center;
							font-size: var(--txt-16);
							font-family: var(--font-family-serif);

							img {
								width: 100%;
								margin-bottom: min(1.04vw, 5px);
							}

							figcaption {
								font-size: var(--txt-18);
								line-height: calc(24/18);
							}
						}
					}

					.header-genretree-list {
						max-width: var(--container-width-s);
						margin: auto;
						display: grid;
						grid-template-columns: repeat(3, 1fr);
						gap: 20px 100px;

						li {
							a {
								position: relative;
								display: flex;
								justify-content: space-between;
								align-items: center;
								font-size: var(--txt-16);
								font-family: var(--font-family-serif);
								line-height: calc(24/16);

								&::after {
									content: "";
									width: 1em;
									height: 1em;
									background: #A71F24;
									display: inline-block;
								}
							}
						}
					}
				}

				.block-header-menu-list {
					width: 100%;
					padding: 0;

					.header-menu-link-list {
						width: 100%;
						height: auto;
						display: grid;
						grid-template-columns: 1fr 1fr;
						gap: 1px;
						background: #ccc;
						border: 1px solid #ccc;
						color: #121212;

						&.-top {
							height: min(96px);
						}

						&.-menu {
							.header-menu-link {
								font-family: var(--font-family-serif);
							}
						}

						.header-menu-link {
							width: 100%;
							height: 100%;
							border: none;
							background: #fff;
							color: var(--accent--text-color);
							font-size: var(--txt-24);
							font-weight: medium;
							line-height: calc(64/24);
							display: flex;
							align-items: center;
							justify-content: center;
							transition: ease .4s;
							text-decoration: none;

							&:hover {
								transition: ease .4s;
								opacity: .6;
							}
						}
					}

					.btn-layout {
						width: calc(100% - min(8.85vw, 68px)*2);
						margin: auto;
						padding: var(--txt-52) 0;
					}
				}

				.block-brand-list__navi--menu {
					width: 100%;
				}

				.block-pagelink-list__navi--menu {
					padding: var(--txt-52) 0;
					border-top: 1px solid #ccc;
					padding: 10.83vw 5vw;

					ul {
						/* width: 86.67vw;
						*/
						/* margin: auto;
						display: flex;
						flex-wrap: wrap;
						*/
						justify-content: space-between;
						/* row-gap: min(6.67vw, 32px);
						*/
						display: grid;
						grid-template-columns: auto 48.29vw;
						grid-template-rows: repeat(5, 1fr);
						letter-spacing: -0.06em;
						row-gap: 6.67vw;
					}

					li {
						width: calc(100% - 48.68%);
						font-size: var(--txt-16);
						line-height: calc(17/12);
						white-space: nowrap;

						/* &:nth-child(odd) {
							width: 48.68%;
						}
						*/
						&:last-child(2) {
							grid-column: 1 / span 2;
							grid-row: 4 / span 1;
							width: 100%;
							height: 100%;
						}

						&:last-child {
							grid-column: 1 / span 2;
							grid-row: 5 / span 1;
							width: 100%;
							height: 100%;
						}
					}
				}

				/* 新規会員バナー */
				.block-banner-list__navi {
					padding: var(--txt-52) 0;
					border-top: 1px solid #ccc;

					/* border-bottom: 1px solid #ccc;
					*/
					ul {
						width: calc(100% - min(8.85vw, 68px)*2);
						margin: auto;
						display: flex;
						column-gap: min(5.21vw, 40px);
						justify-content: center;

						li {
							width: 100%;
							height: auto;
							text-align: center;
						}
					}
				}

				/* SNS */
				.block-sns-list__navi--menu {
					padding: var(--txt-52) 0;
					border-top: 1px solid #ccc;

					/* border-bottom: 1px solid #ccc;
					*/
					ul {
						width: calc(100% - min(8.85vw, 68px)*2);
						margin: auto;
						display: flex;
						column-gap: min(5.21vw, 40px);

						li {
							width: min(6.67vw, 32px);
							height: auto;
							aspect-ratio: 1/1;

							img {
								width: 100%;
							}
						}
					}
				}

				/* マイページ：ポイント */
				.block-header-member-list {
					padding: min(5.21vw, 40px) 0;
					text-align: center;

					.member-point {
						font-size: var(--txt-16);
						font-weight: 600;
						line-height: calc(40/16);
						color: var(--color-gray);

						span {
							font-size: var(--txt-14);
							line-height: calc(40/14);

							&.member-point-total {
								font-size: var(--txt-28);
								font-weight: bold;
								line-height: calc(40/28);
								color: var(--color-deep-burgundy);

								.u-fs-s {
									font-size: var(--txt-16);
									line-height: calc(40/16);
								}
							}
						}
					}

					.member-rank {
						font-size: var(--txt-16);
						font-weight: 600;
						line-height: calc(24/16);
						color: var(--color-gray);

						.member-rank-user {
							font-size: var(--txt-16);
							font-weight: 600;
							line-height: calc(24/16);
							color: var(--color-accent);
							margin-left: var(--txt-32);
						}
					}
				}

				/* マイページ：ログインSP */
				.block-mypage-list__navi {
					padding: min(5.21vw, 40px) 0 0;

					.navi-menu-title {
						font-size: var(--txt-24);
						font-weight: bold;
						line-height: calc(40/24);
						text-align: center;
					}

					.navi-menu-text {
						font-size: var(--txt-16);
						font-weight: 500;
						line-height: calc(28/16);
						text-align: center;
					}

					.block-mypage-login-form {
						.form-group {
							width: 75vw;
							margin: min(5.08vw, 39px) auto;

							+.form-group {
								margin-bottom: 0;
							}

							input::placeholder,
							textarea::placeholder {
								color: var(--color-soft-greige);
								opacity: 1;
								font-size: var(--txt-12);
							}

							input {
								width: 100%;
								height: min(9.38vw, 72px);
								padding: min(2.34vw, 18px) min(1.3vw, 10px) min(2.47vw, 19px) min(3.26vw, 25px);
								font-size: var(--txt-24);
								line-height: calc(35 / 24);
								border: 1px solid var(--color-gray);
							}

							label {
								font-size: var(--txt-12);
								line-height: calc(28/12);

								span {
									/* color: var(--color-accent);
									*/
									margin-left: var(--txt-12);
								}
							}
						}

						.form-link {
							width: 100%;
							text-align: center;
							margin: var(--txt-12) auto min(5.21vw, 40px);

							a {
								color: var(--color-wine);
								font-size: var(--txt-16);
								font-weight: 500;
								line-height: calc(28/16);
								padding-bottom: 4px;
								border-bottom: 1px solid var(--color-wine);
							}
						}

						.btn {
							width: min(78.26vw, 601px);
							height: min(11.98vw, 92px);
							margin-top: var(--txt-16);
						}
					}

					.block-mypage-login-amazon {
						width: 100%;
						padding: min(5.21vw, 40px) 0 var(--txt-52);
						margin-top: min(5.21vw, 40px);
						border-top: 1px solid #ccc;
						text-align: center;

						.mypage-login-amazon-title {
							font-size: var(--txt-16);
							font-weight: bold;
							line-height: calc(28/16);
							text-align: center;
							margin-bottom: 8px;
						}

						a {
							aspect-ratio: 287/51;
							width: min(37.37vw, 287px);
							height: auto;
							text-align: center;
							display: inline-block;
						}
					}
				}

				/* マイページ：ログインtb */
				.block-mypage-list__navi--menu {
					padding: 0 0 min(10.42vw, 80px);

					.mypage-menu-contents {
						margin-left: var(--txt-52);

						+.mypage-menu-contents {
							margin-top: 6.77vw;
						}

						.mypage-menu-contents-title {
							font-size: var(--txt-24);
							font-weight: 600;
							line-height: calc(64/24);
						}

						.mypage-menu-contents-text {
							padding-left: var(--txt-32);

							* {
								font-size: var(--txt-24);
								font-weight: 600;
								line-height: calc(64/24);
								color: var(--color-gray);

								.btn * {
									color: #fff;
								}
							}

							.btn-layout {
								width: min(78.26vw, 601px);
								height: min(12.5vw, 96px);
							}

							.mypage-menu-contents-list {
								overflow: hidden;
							}
						}

						.mypage-menu-contents--bookmark {
							.mmypage-menu-contents-list {
								display: flex;

								li {
									display: block;
									background: antiquewhite;
									aspect-ratio: 133 / 160;
									width: min(17.32vw, 160px);
								}
							}
						}
					}
				}
			}
		}
	}

	/* 検索フォーム---- */
	#search_view {
		z-index: 999999;
		height: 100%;
		padding: 0 !important;
		overflow-y: auto;

		.block-search-header {
			width: 100%;
			height: min(22.08vw, 106px);
			position: relative;
			display: flex;
			justify-content: flex-end;
			align-items: center;
			padding-right: min(8.75vw, 42px);
			background: var(--color-header-bg);
			z-index: 3;

			.block-search-logo {
				z-index: 3;
				width: auto;
				height: 100%;
				/* aspect-ratio: 1/1;
				*/
				position: absolute;
				left: 0;
				top: 0;
			}

			.block-header-search--close {
				position: relative;
				width: min(10.83vw, 52px);
				height: auto;
				aspect-ratio: 52/48;
				display: block;
				z-index: 4;

				&::before {
					content: "";
					display: block;
					width: 8px;
					height: 1px;
					background: var(--color-text);
					position: absolute;
					top: 0%;
					left: 50%;
					transform: translateX(-50%);
				}

				&::after {
					content: "";
					display: block;
					width: 24px;
					height: 1px;
					background: var(--color-text);
					position: absolute;
					top: 100%;
					left: 50%;
					transform: translateX(-50%);
				}

				button {
					background: unset;
					border: none;
					position: relative;
					width: 100%;
					height: auto;
					aspect-ratio: 52 / 48;
					display: flex;
					justify-content: center;
					align-items: end;
					font-family: var(--font-family-corp);
					font-size: min(2.5vw, 12px);
				}
			}
		}

		.search_inner {
			width: 100%;
			display: block;
			z-index: 1;
			padding: 0;
			position: relative;
			background: var(--color-header-bg);
			overflow-y: auto !important;

			form {
				display: block;
				width: 100%;
				padding: min(0.63vw, 12px) min(0.89vw, 17px) min(0.63vw, 12px) 0;
				margin: 0;
				background: #fff;

				.block-header-search--keyword {
					width: calc(100% - 20px);
					height: 20px;
					border: 0;
					outline: none;
					font-size: var(--txt-12);
					padding: 0 10px 0 20px;
					background: unset;
				}

				.block-header-search--submit {
					width: 20px;
					height: 22px;
					background: url(../../img/usr/common/icon_search.svg) no-repeat center center / 100%;
				}
			}

			.search-box {
				/* background: #fff;
				*/
				padding: min(5vw, 24px) min(6.67vw, 32px) min(8.33vw, 40px);

				form {
					display: flex;
					justify-content: space-between;
					align-items: center;
					width: 100%;
					padding: min(2.47vw, 19px) min(3.91vw, 30px) min(2.47vw, 19px) min(3.91vw, 30px);
					border: 1px solid #ccc;

					.block-header-search--keyword {
						width: calc(100% - var(--txt-20));
						height: 20px;
						border: 0;
						outline: none;
						font-size: var(--txt-18);
						padding: 0;
						background: unset;
					}

					.block-header-search--submit {
						width: var(--txt-20);
						height: auto;
						aspect-ratio: 20/22;
						background: url(../../img/usr/common/icon_search.svg) no-repeat center center / 100%;
					}
				}

				.search-box-list {
					margin-left: var(--txt-26);
					font-size: var(--txt-16);
					font-weight: bold;
					line-height: calc(24/16);
					color: var(--gray2--text-color);

					.list-item {
						+.list-item {
							margin-top: min(3.65vw, 28px);
						}
					}
				}

				&.-recommend {
					padding: 32px 33px;
				}

				.search-box-title {
					font-size: var(--txt-12);
					font-weight: bold;
					line-height: calc(60/12);
					color: var(--gray--text-color);
					border: none;
					margin-bottom: 0;
					padding: 0;
				}
			}

			.search-card {
				+.search-card {
					margin-top: var(--txt-16);
				}

				figure {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					column-gap: var(--txt-16);

					picture {
						display: block;
						aspect-ratio: 90/109;
						width: min(4.69vw, 90px);
						height: auto;
					}

					figcaption {
						width: calc(100% - min(4.69vw, 90px));
					}
				}

				.search-card-date {
					color: var(--gray--text-color);
				}
			}
		}

		.search_bg {
			width: 100%;
			height: 100%;
			background-color: rgba(22, 31, 53, 0.8);
			backdrop-filter: blur(10px) !important;
			z-index: 0;
			position: absolute;
		}

		form {
			.toggle-menu-content--check {
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-start;
				gap: 2.5vw;
				padding: 4.17vw 6.67vw;

				li {
					width: fit-content !important;
					background: none;
					border: none;
					height: auto;
				}

				.btn-check {
					display: none;
				}

				.btn-label {
					display: inline-flex;
					align-items: center;
					justify-content: flex-start;
					gap: 1.69vw;
					border-radius: 50px;
					cursor: pointer;
					background: #D0C4C6;
					color: #fff;
					font-size: var(--txt-16);
					font-weight: bold;
					transition: all .2s;
					user-select: none;
					padding: 1.46vw 2.08vw 1.88vw 2.08vw;
				}

				.btn-check:checked {
					+.btn-label {
						background: var(--color-accent);
						color: #fff;
						padding: 1.46vw 2.08vw 1.88vw 2.08vw;

						&::before {
							content: "";
							font-size: var(--txt-16);
							font-weight: bold;
							width: 3.13vw;
							height: 1.88vw;
							background: url(../../img/usr/common/icon_checked.svg) no-repeat center center / 100%;
						}
					}
				}
			}

			.js-toggle-menu {
				& .toggle-menu-content {
					li {
						height: auto;
						display: block;
						padding-left: 0;
					}
				}
			}
		}

		.form-submit {
			padding: min(5.21vw, 40px);

			button {
				width: min(53.91vw, 414px);
			}
		}

		.search-box-item-keywords {
			width: 86.67vw;

			.search-box-list {
				.list-item {
					font-size: var(--txt-16);
					font-weight: 600;

					+.list-item {
						margin-top: min(5.83vw, 28px);
					}
				}
			}
		}

		.search-catfood-navi {
			width: 86.67vw;
			background: #FBEEEE;
			padding: var(--txt-20) var(--txt-24) var(--txt-24);
			text-align: center;
			margin: 0 auto min(8.33vw, 40px);

			.search-box-title {
				font-size: var(--txt-20);
				font-weight: 600;
				font-family: var(--font-family-serif);
				margin-bottom: 4px;
			}

			.search-box-sub-title {
				font-size: var(--txt-16);
				font-weight: 600;
				margin-bottom: var(--txt-16);
			}

			ul {
				display: grid;
				grid-template-columns: repeat(2, 50%);
				gap: min(3.33vw, 16px) min(2.29vw, 11px);

				.btn {
					&.btn-primary {
						font-size: var(--txt-15);
						letter-spacing: -0.08em;
						color: var(--color-text);
						border: 1px solid var(--color-text);
						background: white;
					}

					&:hover {
						background: var(--color-light-pink);
					}
				}
			}
		}

		.js-toggle-menu.-form {
			form {
				margin: 0;
				padding: 0;
			}

			& .toggle-menu-content {
				li {
					height: auto;
					display: block;
					padding-left: 0;
				}
			}
		}

		.block-list__navi--menu {
			.toggle-menu-btn {
				background: #fff;
			}
		}

		&.current {
			.block-search-header {
				.block-search-logo {
					/* position: absolute;
					top: 0;
					left: 0;
					*/
					z-index: 3;
					width: auto;
					height: 100%;
					aspect-ratio: 168/106;
					position: absolute;
					left: 0;
					top: 0;
				}

				.block-header-search--close {
					/* position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					*/
					position: relative;
					width: min(10.83vw, 52px);
					height: auto;
					aspect-ratio: 52/48;
					display: block;
					z-index: 4;

					&::before {
						content: "";
						display: block;
						width: 24px;
						height: 1px;
						background: var(--color-text);
						position: absolute;
						top: 25%;
						left: 50%;
						transform: translate(-50%, -50%) rotate(45deg);
					}

					&::after {
						content: "";
						display: block;
						width: 24px;
						height: 1px;
						background: var(--color-text);
						position: absolute;
						top: 25%;
						left: 50%;
						transform: translate(-50%, -50%) rotate(-45deg);
					}

					button {
						background: unset;
						border: none;
						position: relative;
						width: 100%;
						height: auto;
						aspect-ratio: 52 / 48;
						display: flex;
						justify-content: center;
						align-items: end;
						font-family: var(--font-family-corp);
						font-size: min(2.5vw, 12px);
					}
				}
			}
		}

		/* 下部 */
		.block-pagelink-list__navi--menu {
			padding: var(--txt-52) 0;
			border-top: 1px solid #ccc;
			padding: 10.83vw 5vw;

			ul {
				/* width: 86.67vw;
				*/
				/* margin: auto;
				display: flex;
				flex-wrap: wrap;
				*/
				justify-content: space-between;
				/* row-gap: min(6.67vw, 32px);
				*/
				display: grid;
				grid-template-columns: auto 48.29vw;
				grid-template-rows: repeat(5, 1fr);
				letter-spacing: -0.06em;
				row-gap: 6.67vw;
			}

			li {
				width: calc(100% - 48.68%);
				font-size: var(--txt-16);
				line-height: calc(17/12);
				white-space: nowrap;

				/* &:nth-child(odd) {
					width: 48.68%;
				}
				*/
				&:last-child(2) {
					grid-column: 1 / span 2;
					grid-row: 4 / span 1;
					width: 100%;
					height: 100%;
				}

				&:last-child {
					grid-column: 1 / span 2;
					grid-row: 5 / span 1;
					width: 100%;
					height: 100%;
				}
			}
		}

		.block-pagelink-list__navi--menu {
			ul {
				gap: min(5.83vw, 28px) min(8.33vw, 40px);
				justify-content: flex-start;
			}

			li {
				width: fit-content;
				font-size: var(--txt-14);

				/* line-height: calc(17/12);
				*/
				&:nth-child(odd) {
					width: fit-content;
				}

				&:nth-child(even) {
					width: fit-content;
				}
			}
		}

		.block-header-menu-list {
			width: 100%;
			padding: 0;

			.header-menu-link-list {
				width: 100%;
				height: auto;
				display: grid;
				grid-template-columns: 1fr 1fr;
				gap: 1px;
				background: #ccc;
				border: 1px solid #ccc;

				&.-top {
					height: min(96px);
				}

				&.-menu {
					.header-menu-link {
						font-family: var(--font-family-serif);
					}
				}

				.header-menu-link {
					width: 100%;
					height: 100%;
					border: none;
					background: #fff;
					color: var(--accent--text-color);
					font-size: var(--txt-24);
					font-weight: medium;
					line-height: calc(64/24);
					display: flex;
					align-items: center;
					justify-content: center;
					transition: ease .4s;
					text-decoration: none;

					&:hover {
						transition: ease .4s;
						opacity: .6;
					}
				}
			}

			.btn-layout {
				width: calc(100% - min(8.85vw, 68px)*2);
				margin: auto;
				padding: var(--txt-52) 0;
			}
		}

		.block-header-menu-list {
			&.-menu {
				.header-menu-link {}
			}

			.header-menu-link-list {

				/* .-top {
					height: min(96px);
				}
				*/
				.header-menu-link {
					font-size: var(--txt-20);
					font-family: var(--font-family-serif);
					font-weight: bold;
					line-height: 1;
					padding-block: 5.21vw;
				}
			}
		}

		.block-pagelink-list__navi--menu {
			ul {
				gap: min(5.83vw, 28px) min(8.33vw, 40px);
				justify-content: flex-start;
			}

			li {
				width: fit-content;
				font-size: var(--txt-14);

				/* line-height: calc(17/12);
				*/
				&:nth-child(odd) {
					width: fit-content;
				}

				&:nth-child(even) {
					width: fit-content;
				}
			}
		}

		.block-sns-list__navi--menu {
			padding: var(--txt-52) 0;
			border-top: 1px solid #ccc;

			/* border-bottom: 1px solid #ccc;
			*/
			ul {
				width: calc(100% - min(8.85vw, 68px)*2);
				margin: auto;
				display: flex;
				column-gap: min(5.21vw, 40px);

				li {
					width: min(6.67vw, 32px);
					height: auto;
					aspect-ratio: 1/1;

					img {
						width: 100%;
					}
				}
			}
		}
	}

	.pane-header {
		.container {
			position: relative;
		}

		/* search */
		.block-headernav--item-search-fb {
			.block-headernav--item-search-inner {
				flex-wrap: wrap;
				row-gap: 0.5em;
				margin-left: min(2vw, 30px);
			}
		}

		.block-global-search {
			width: min(50vw);
		}

		.block-search-tag {
			width: 100%;

			a {
				font-size: var(--txt-12);
				padding: min(0.27vw, 4px) min(0.6vw, 9px) min(0.33vw, 5px) min(0.73vw, 11px);
			}
		}

		.block-headernav--item-right {
			width: 183px !important;

			.block-headernav--item-list-inner {
				justify-content: flex-end;
			}

			li {
				width: auto;
				height: min(5.47vw, 42px);
			}

			.block-headernav--item-list {
				&.left-list {
					justify-content: flex-end;
				}

				&.right-list {
					width: auto;
					height: min();
					aspect-ratio: 61/37.5;
				}
			}

			.block-headernav--item-search {
				margin-right: min(5.0vw, 36px);

				#header_search {
					width: auto;
					height: min(8.0vw, 52px);
					aspect-ratio: 28/40;
					background: url(../../img/usr/common/icon_search_sp.svg)no-repeat center top / 100%;
					display: inline-block;
					font-size: 0;
					/*10px*/
					padding-top: 3.8rem;
					text-align: center;
				}
			}

			.block-headernav--item-text {
				font-size: 0;
				display: inline-block;
				width: 70px;
				padding-top: 3.8rem;
				text-align: center;
				color: var(--color-deep-burgundy);
			}

			.block-headernav--item-login {
				height: min(7.8vw, 42px);
				margin-right: min(2.4vw, 30px);
				max-height: 42px;
			}

			.block-headernav--item-cart {
				height: min(7.6vw, 44px);
				max-height: 44px;

				a {
					.block-headernav--cart-count {
						min-width: min(5.83vw, 28px);
						height: min(5.83vw, 28px);
						font-size: var(--txt-20);
						line-height: calc(min(6.92vw, 38px) / min(5vw, 24px));
						padding: 0 calc((min(5.83vw, 28px) - 1em) / 2);
						left: calc(100% - 7px);
					}
				}
			}
		}

		/* 上に来ているとき */
		&.is-top {
			.block-headernav--item-right {
				.block-headernav--item-search {
					#header_search {
						background: url(../../img/usr/common/icon_search_txt_sp.svg) no-repeat center top / auto 100%;
						aspect-ratio: 26 / 45;
						padding-top: 4.3rem;
						height: 100%;
					}
				}
			}
		}
	}

	/* footer---- */
	/* マウスストーカーのスタイル */
	.mouse-stalker {
		display: none;
	}

	.pane-footer {
		.block-footernav--item-list {
			li {
				width: 100% !important;
				height: fit-content;
				padding: 0 !important;
				border-left: none !important;

				a {
					font-size: var(--txt-24) !important;
					font-family: var(--font-family-serif);
					line-height: calc(60/24);
					height: min(11.07vw, 85px);
				}
			}
		}

		.block-footernav-menu {
			.block-footernav--item-list {
				grid-template-columns: 1fr 1fr;

				li {
					a {
						font-size: var(--txt-24) !important;
						font-family: var(--font-family-serif);
						line-height: calc(60/24);
						height: min(11.07vw, 85px);
					}
				}
			}
		}

		.block-footernav-info {
			padding: min(10.42vw, 80px) 0;

			.block-footernav-info-list {
				grid-template-columns: 1fr;
				row-gap: min(10.42vw, 80px);
			}

			.block-footernav-info-item {
				&.-company {
					width: min(76.04vw, 584px);
					margin: auto;

					.info-company-item {
						row-gap: min(4.69vw, 36px);

						.footer-logo {
							width: min(29.04vw, 220px);
						}

						.footer-tel {
							width: min(43.49vw, 334px);

							.tel-number {
								a {
									font-size: var(--txt-52);
									line-height: calc(75/52);
								}

								a[href^="tel:"] {
									pointer-events: none;
								}
							}

							.tel-text {
								margin-top: min(0.78vw, 6px);
								font-size: var(--txt-24);
								line-height: calc(40/24);

								span {
									font-size: var(--txt-16);
								}
							}
						}

						.info-company-other {
							width: min(56.25vw, 432px);
							margin: auto;

							ul {
								justify-content: space-around;
								column-gap: min(5.21vw, 40px);
							}
						}
					}
				}

				&.-calendar {
					width: 75vw;
					display: block;
					margin: auto;

					.info-calendar-heading {
						text-align: center;
						font-size: var(--txt-24);
						font-family: var(--font-family-serif);
						/*font-family: var(--font-family-corp);
						*/
						margin-bottom: min(7.08vw, 34px);
					}

					.info-calendar-item {
						width: min(65.42vw, 500px);
						height: auto;
						margin: 4px auto;
						/* aspect-ratio: 1/1;
						*/
						display: flex;
						align-items: center;
						justify-content: center;

						table {
							border-spacing: min(7.25vw, 30px) min(0.83vw, 4px);

							td {
								width: min(6.67vw, 32px);
							}
						}
					}

					.info-calendar-text {
						width: 100%;
						margin-top: min(7.08vw, 34px);

						.info-calendar-heading {
							font-size: var(--txt-24);
							line-height: calc(35/24);
							margin-bottom: 4px;
						}

						.c-text {
							font-size: var(--txt-16);

							+.c-text {
								margin-top: calc(var(--txt-16) * (24/16));
							}
						}
					}
				}
			}

			.block-footernav--text-list {
				width: 78.13vw;
				gap: var(--txt-24) min(5.21vw, 40px);
				flex-wrap: wrap;
				margin-top: min(10.42vw, 80px);
				justify-content: flex-start;

				li {
					a {
						font-size: var(--txt-16);
						line-height: calc(24/16);
					}

					&:nth-child(1) {
						order: 1;
					}

					&:nth-child(2) {
						order: 2;
					}

					&:nth-child(3) {
						order: 3;
					}

					&:nth-child(4) {
						order: 4;
					}

					&:nth-child(5) {
						order: 5;
					}

					&:nth-child(6) {
						order: 3;
					}

					&:nth-child(7) {
						order: 6;
					}
				}
			}
		}

		#footer_pagetop {
			a {
				height: 52px;
				padding: var(--txt-12) 0 min(0.52vw, 10px);

				&::after {
					top: calc(50% - min(2.08vw, 16px) / 2);
					left: calc(50% - min(2.08vw, 16px) / 2);
				}

				span {
					font-size: var(--txt-12);
				}
			}
		}

		.block-footernav-adout {
			width: 100%;
			background: url(../../img/usr/common/footer_about_bg_sp.png)no-repeat center top / cover;
			padding: min(10.42vw, 80px) min(10.16vw, 78px);

			.block-footernav-adout-list {
				width: 100%;
				display: block;
			}

			.block-footernav-adout-item {
				&.-adout {
					width: 100%;
					padding: var(--txt-32) min(6.51vw, 50px);

					.footernav-adout-item-heading {
						font-size: var(--txt-24);
						line-height: calc(35/24);
					}

					.c-text {
						font-size: var(--txt-22);
						line-height: calc(31/22);
						margin: var(--txt-16) 0 var(--txt-20);
					}

					.footernav-adout-btns {
						width: 100%;
						gap: var(--txt-16) var(--txt-32);

						.btn-layout {
							width: min(31.25vw, 240px);

							.btn-primary {
								font-size: var(--txt-20);
							}
						}
					}
				}

				&.-magazine {
					width: 100%;
					margin-top: min(4.43vw, 34px);

					.footernav-adout-item-heading {
						font-size: var(--txt-32);
						margin-bottom: min(5.21vw, 40px);
						color: #fff;
					}

					.footernav-adout-magazine-form {
						.block-footer-magazine {
							width: 100%;
							height: min(9.38vw, 72px);
							padding: var(--txt-18) min(1.3vw, 10px) min(2.47vw, 19px) min(3.26vw, 25px);
							font-size: var(--txt-24);
							line-height: calc(35/24);
						}

						.block-footer-magazine--submit {
							height: min(9.38vw, 72px);
							font-size: var(--txt-24);
							/* border-radius: 8px;
							*/
							margin-top: var(--txt-24);
						}
					}
				}
			}
		}

		.block-copyright {
			width: 100%;
			height: min(7.55vw, 58px);
			font-size: var(--txt-16);
			line-height: calc(60/16);
			margin: 0;
		}
	}

	/* カレンダー */
	#js_calendar_replace {
		text-align: -webkit-center;
	}

	.block-calendar {
		top: unset;
		right: unset;
		padding: var(--txt-20) 0;
	}

	.block-calendar-slide-area,
	.block-calendar-month-area,
	.block-calendar table {
		width: 90%;
	}

	.block-calendar-slide-area-wrapper {
		max-height: unset;
		align-items: center;
	}

	.block-calendar-slide-area {
		padding: 0 min(0.08vw, 10px);
	}

	.block-calendar-title {
		display: none;
		/*font-size: var(--txt-24);
		*/
	}

	.block-calendar-month {
		font-size: var(--txt-16);
	}

	.block-calendar-month b {
		font-size: var(--txt-32);
	}

	.block-calendar-prev,
	.block-calendar-next {
		font-size: var(--txt-16);
	}

	.block-calendar-prev:hover,
	.block-calendar-next:hover {
		opacity: .7;
	}

	.block-calendar-prev {
		display: none;
		left: 0;
		padding-left: 20px;
		background: url(../../img/usr/common/calendar_prev.svg) no-repeat left center / auto;
	}

	.block-calendar-next {
		right: 0;
		padding-right: 20px;
		background: url(../../img/usr/common/calendar_next.svg) no-repeat right center / auto;
	}

	.block-calendar table {
		width: 100%;
		text-align: center;
		margin: 0 auto;
	}

	.block-calendar table tr {
		width: auto;
	}

	.block-calendar table th {
		width: auto;
		text-align: center;
		padding: 2px 0;
		color: #ccc;
	}

	.block-calendar table th span {
		font-size: var(--txt-12);
	}

	.block-calendar table td {
		height: unset;
	}

	.block-calendar table td span {
		font-size: var(--txt-16);
	}

	.block-calendar p {
		max-width: unset;
		font-size: var(--txt-12);
		padding: min(2.08vw, 10px) min(6.25vw, 30px) 0;
	}

	#js_calendar_replace {
		width: 100%;

		div {
			padding-top: 1vw;
		}
	}

	.block-calendar {
		max-width: 100%;
	}
}

/* =========================================================TOPページコンテンツ内ここから========================================================= */
/* TOP */
@media screen and (max-width: 769px) {
	.page-top .pane-contents {
		margin-bottom: 16.67vw;
	}
}

/* TOPおすすめ */
@media screen and (max-width: 769px) {
	.block-top-recommend {
		padding-block: clamp(16px, 4vw, 28px);

		& .block-top-recommend__inner {
			max-width: 100%;
			padding-inline: clamp(12px, 4vw, 20px);
		}

		/* & .block-top-recommend__title {
			font-size: var(--txt-18);
			margin-bottom: clamp(12px, 4vw, 20px);
		}
		*/
		/* ===== 上段：ヒーロー（SPは縦並び） ===== */
		/* & .block-top-recommend__heroRow {
			grid-template-columns: 1fr;
			gap: 12px;
		}
		*/
		.block-top-recommend__heroRow .play-btn,
		.block-top-recommend__heroRow .stop-btn {
			width: 6.25vw;
			top: 2.63vw;
			right: 2.63vw;
		}

		& .block-top-recommend__heroAside {
			grid-template-columns: 1fr 1fr;
			gap: 12px;
			margin-left: 0;

			& .block-top-recommend__hero {
				&:nth-child(-n+2) {
					grid-column: auto;
				}

				&:nth-child(n+3) {
					grid-column: auto;
				}
			}
		}

		& .block-top-recommend__caption {
			font-size: var(--txt-12);
			margin-top: 6px;
		}

		/* ===== まとめてgrid ===== */
		& .block-top-recommend__heroRow {
			grid-template-columns: 1fr 1fr;
			grid-template-rows: auto;
			gap: 8.33vw 4.17vw;
			padding: 0;
		}

		/* 左上ヒーロー動画大 */
		& .block-top-recommend__heroRow .block-top-recommend__hero--main {
			grid-column: 1 / span 2;
			grid-row: initial;
			padding: 0;
		}

		/* 右上カード中 */
		& .block-top-recommend__heroRow .block-top-recommend__hero {
			grid-column: 1 / span 1;
			grid-row: initial;
			padding: 0;
		}

		& .block-top-recommend__heroRow .block-top-recommend__hero:nth-of-type(even) {
			grid-column: 2 / span 1;
		}

		/* ===== 下段：商品グリッド（SP=2列 / 極小=1列） ===== */
		& .block-top-recommend__list {
			--gap: 12px;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: var(--gap);
		}

		@media (max-width: 360px) {
			& .block-top-recommend__list {
				grid-template-columns: 1fr;
			}
		}

		& .block-top-recommend__item {
			&>a {
				transition: opacity .12s ease;

				&:active {
					opacity: .96;
				}
			}
		}

		& .block-top-recommend__meta {
			padding: 8px 8px 10px;
		}

		.block-top-recommend__hero--main .block-top-recommend__name {
			font-size: var(--txt-20);
			/* font-weight: 600;
			*/
		}

		& .block-top-recommend__price {
			font-size: var(--txt-16);
		}

		& .block-top-recommend__cta {
			margin-top: clamp(16px, 4vw, 24px);

			& .block-top-recommend__button {
				&:active {
					background: var(--color-primary);
					color: #fff;
				}
			}
		}
	}
}

@media screen and (max-width: 769px) {
	#block_of_top_body {

		/* .block-top-body--items {
			li {
				width: min(65.23vw, 500px) !important;
			}
		}
		*/
		& #top-slider-warp {
			overflow-y: visible;
			overflow-x: clip;

			&::before {
				content: "";
				aspect-ratio: 768/298;
				width: 100vw;
				background: url(../../img/usr/top/block_top_topic_bg_sp.svg) center bottom / 100% no-repeat;
				bottom: min(9.64vw, 185px);
				left: 50%;
				transform: translateX(-50%);
			}
		}

		& #top-slider-warp {
			.swiper-pagination-bullets {
				bottom: -13.17vw;
			}

			span.swiper-pagination-bullet {
				width: 3.5vw;
				height: 3.5vw;
				margin: 0 1vw;
			}

			span.swiper-pagination-bullet-active {
				width: 8.33vw;
			}

			/* .swiper-pagination-bullets {
				bottom: -57px;
				gap: min(2.34vw, 18px);
			}
			span.swiper-pagination-bullet {
				width: min(1.82vw, 14px);
				height: min(1.82vw, 14px);
			}
			span.swiper-pagination-bullet-active {
				aspect-ratio: 46 / 14;
				width: min(5.99vw, 46px);
				height: min(1.82vw, 14px);
			}
			*/
		}

		#top-slider-warp:not(.swiper) {
			max-width: 100%;
			overflow-x: scroll;

			#top-slider:not(.swiper-wrapper) {
				display: flex;
				max-width: fit-content;
				width: fit-content;
				overflow-x: scroll;
				padding-inline: 8vw;

				li {
					width: 83.33vw;
				}
			}
		}
	}

	.block-top-recommend {
		padding-block: clamp(16px, 4vw, 28px);

		& .block-top-recommend__inner {
			max-width: 100%;
			padding-inline: clamp(12px, 4vw, 20px);
		}

		& .block-top-recommend__title {
			font-size: var(--txt-18);
			margin-bottom: clamp(12px, 4vw, 20px);
		}

		/* ===== 上段：ヒーロー（SPは縦並び） ===== */
		/* & .block-top-recommend__heroRow {
			grid-template-columns: 1fr;
			gap: 12px;
		}
		*/
		& .block-top-recommend__heroAside {
			grid-template-columns: 1fr 1fr;
			gap: min(4.17vw, 32);
			margin: 0;

			& .block-top-recommend__hero {
				&:nth-child(1) {
					margin-right: 0;
				}

				&:nth-child(-n+2) {
					grid-column: unset;
					margin-left: 0;
				}

				&:nth-child(-n+2) {
					grid-column: unset;
					margin-right: 0;
				}

				&:nth-child(n+3) {
					grid-column: unset;
					margin-left: 0;
				}
			}
		}

		& .block-top-recommend__caption {
			font-size: var(--txt-12);
			margin-top: 6px;
		}

		/* ===== 下段：商品グリッド（SP=2列 / 極小=1列） ===== */
		& .block-top-recommend__list {
			--gap: 12px;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: var(--gap);
		}

		@media (max-width: 360px) {
			& .block-top-recommend__list {
				grid-template-columns: 1fr;
			}
		}

		& .block-top-recommend__item {

			/* タップ操作向けの軽い演出 */
			&>a {
				transition: opacity .12s ease;

				&:active {
					opacity: .96;
				}
			}
		}

		& .block-top-recommend__meta {
			padding: 8px 8px 10px;
		}

		& .block-top-recommend__name {
			font-size: var(--txt-12);
		}

		& .block-top-recommend__price {
			font-size: var(--txt-12);
		}

		& .block-top-recommend__cta {
			margin-top: clamp(16px, 4vw, 24px);

			& .block-top-recommend__button {
				&:active {
					background: var(--color-primary);
					color: #fff;
				}
			}
		}
	}

	/* TOPニュース */
	.block-top-topic {
		& .block-top-topic--body {
			overflow: unset;

			& .block-topic--items {
				&>li {
					+li {
						padding-top: min(2.47vw, 19px);
					}
				}
			}

			&::before {
				aspect-ratio: 768/298;
				width: 100vw;
				background: url(../../img/usr/top/block_top_topic_bg_sp.svg) center bottom / 100% no-repeat;
				bottom: min(-7.42vw, -57px);
			}
		}

		.block-topic--items {
			width: min(85vw, 477px);
			/*width: min(62.11vw, 477px);
			*/
		}

		.block-top-topic--comment {
			font-size: var(--txt-18);
		}

		.block-top-topic--next-page {
			margin-top: min(5.21vw, 40px);
		}

		.block-icon-image--table-cell-angle-right {
			vertical-align: bottom;
			display: none;
		}

		ul.block-topic--items>li dd .block-top-topic--icon-image img {
			margin-right: 0;
		}
	}

	.page-top ul.block-topic--items>li dt,
	.page-brandtop ul.block-topic--items>li dt,
	.page-category ul.block-topic--items>li dt {
		font-size: var(--txt-16);
		margin-bottom: 4px;
	}

	/* TOP新商品 */
	.block-top-category__list {
		width: min(89.58vw, 688px);
		gap: min(1.3vw, 10px);
		margin: auto;

		.block-top-category__label {
			font-size: var(--txt-18);
			line-height: calc(24/18);
		}

		.block-top-category__figure {
			width: 100%;
			height: auto;
			aspect-ratio: 1/1;

			picture {
				width: 100%;
				height: 100%;
				display: block;

				img {
					width: 100%;
					height: 100%;
				}
			}
		}
	}

	/* TOPキャンペーンバナー */
	.block-top-campaign {
		.block-bottom-bnr__list {
			max-width: 89.58vw;
			grid-template-columns: 1fr;
			gap: min(2.6vw, 20px);
		}

		.block-top-category__item {
			width: 100%;
			height: auto;
			aspect-ratio: 684/219;

			.block-bottom-bnr__thumb {
				picture {
					display: block;

					img {
						width: 100% !important;
						height: 100% !important;
					}
				}
			}

			img {
				display: block;
				width: 100% !important;
				height: 100% !important;
			}
		}
	}

	/*tama オリジナル*/
	@media screen and (max-width: 769px) {
		.block-tama-original {
			margin-block: 8.33vw;

			.block-tama-original__slider:not(.swiper) {
				max-width: 100%;
				overflow-y: scroll;
			}

			.block-tama-original__list:not(.swiper-wrapper) {
				display: flex;
				max-width: fit-content;
				width: fit-content;
				overflow-y: scroll;
				padding-inline: 20px;

				.block-tama-original__item {
					width: 83.33vw;
				}
			}

			.block-tama-original__item {
				width: min(65.23vw, 500px);
			}
		}
	}

	.block-thumbnail-favorite {
		aspect-ratio: 36/32;
		width: clamp(28px, 7.5vw, 36px);

		.heart {
			width: 100%;
			height: 100%;
		}
	}
}

/* TOP新商品 */
/*レスポンシブ*/
@media screen and (max-width: 769px) {
	.block-top-new {
		padding-block: clamp(16px, 4vw, 28px);

		& .block-top-new__inner {
			max-width: 100%;
			padding-inline: clamp(12px, 4vw, 20px);
		}

		& .block-top-new__title {
			font-size: var(--txt-18);
			margin-bottom: clamp(12px, 4vw, 20px);
		}

		/* ===== カード：2列（極小は1列） ===== */
		& .block-top-new__list {
			--gap: 12px;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: var(--gap);
		}

		@media (max-width: 360px) {
			& .block-top-new__list {
				grid-template-columns: 1fr;
			}
		}

		& .block-top-new__thumb {}

		& .block-top-new__meta {
			padding: 8px;
		}

		& .block-top-new__name {
			font-size: var(--txt-12);
		}

		& .block-top-new__note {
			font-size: var(--txt-11);
		}

		& .block-top-new__price {
			font-size: var(--txt-12);
		}

		& .block-top-new__item>a {
			transition: opacity .12s ease;

			&:active {
				opacity: .96;
			}
		}

		& .block-top-new__cta {
			margin-top: clamp(16px, 4vw, 24px);

			& .block-top-new__button {
				&:active {
					background: var(--color-primary);
					color: #fff;
				}
			}
		}
	}
}

/* TOP読み物 */
@media screen and (max-width: 769px) {
	.block-top-reading {
		/* padding-block: clamp(16px, 4vw, 28px);
		*/
		margin-bottom: 0;

		&::before {
			/* width: 89.58vw;
			background: url(../../img/usr/top/read_bg01_sp.svg) repeat-x top left / 100%;
			aspect-ratio: 688 / 757;
			left: calc(50% - 36.04vw);
			bottom: min(10.42vw, 80px);
			border-radius: 18.75vw 0 0 18.75vw;
			*/
			width: 100%;
			aspect-ratio: 688 / 969;
			background: #EEE2CC;
			opacity: 0.4;
			left: 0;
			bottom: 30vw;
			border-radius: 0;
		}

		&::after {
			width: min(56.51vw, 434px);
			aspect-ratio: 434 / 381;
			bottom: unset;
			top: 0;
			left: 50%;
			transform: translateX(min(527px, 27.45vw));
		}

		& .block-top-reading__inner {
			max-width: 100%;
			/* padding-inline: clamp(12px, 4vw, 20px);
			*/
		}

		& .block-top-reading__title {
			font-size: var(--txt-18);
			margin-bottom: clamp(12px, 4vw, 20px);
		}

		& .block-top-reading__titleIcon {
			margin-right: 2.5vw;
			width: 8.96vw;
			height: 7.92vw;
		}

		/* 上：カードは 2列 */
		& .block-top-reading__swiper {
			display: block;
		}

		& .block-top-reading__card {
			width: min(48.05vw, 368px);
			flex-shrink: 0;
		}

		& .block-top-reading__figure .block-top-reading__img {
			object-fit: cover;
		}

		& .block-top-reading__meta {
			padding: 8px 8px 10px;
		}

		& .block-top-reading__name {
			font-size: var(--txt-20);
		}

		& .block-top-reading__info {
			font-size: var(--txt-16);
		}

		& .block-top-reading__date {
			font-size: var(--txt-16);
		}

		/* 下 */
		& .block-top-reading__banners {
			gap: 12px;
			margin-top: clamp(16px, 4vw, 24px);
			width: min(88.28vw, 678px);
			margin-inline: auto;
		}

		& .block-top-reading__bnr .block-top-reading__bnrImg {
			border-radius: 8px;
		}

		& .block-top-reading__bnr .block-top-reading__bnrCaption {
			font-size: var(--txt-12);
			margin-top: 6px;
		}

		& .block-top-reading__figure {
			& .block-top-reading__label {
				top: min(5.21vw, 40px);
				padding: min(1.43vw, 11px) min(3.39vw, 26px);
				font-size: var(--txt-18);
				width: min(5.21vw, 40px);
				min-height: min(17.97vw, 138px);
				display: flex;
				align-items: center;
				justify-content: center;
			}
		}
	}

	/* 極小端末で 1 列に */
	@media (max-width: 360px) {
		.block-top-reading {
			& .block-top-reading__swiper {
				grid-template-columns: 1fr;
			}
		}
	}
}

/* TOPランキング */
/*レスポンシブ*/
@media screen and (max-width: 769px) {
	.block-top-event:not(.block-top-newitem) {
		/* padding-block: clamp(16px, 4vw, 28px);
		*/
		padding-bottom: 0;
		background: url(../../img/usr/top/top_ranking_bg_sp.svg) 0px bottom / cover no-repeat;

		.block-top-event--goods {
			padding: 4.17vw 5vw 0 9.58vw;
		}

		& .block-top-title {
			font-size: var(--txt-32);
			margin-bottom: clamp(12px, 4vw, 20px);
			/* &>span {
				font-size: var(--txt-12);
			}
			*/
		}

		& .block-top-ranking--goods-image {
			figure {
				background-color: #fff;
				align-items: center;
			}

			.block-thumbnail-favorite {
				width: 6.67vw;
				height: 5.83vw;
				right: 1.67vw;
				bottom: 1.67vw;

				.heart {
					width: 6.67vw;
					height: 5.83vw;
				}
			}
		}

		& .block-top-rankiSng--goods-rank-1,
		& .block-top-ranking--goods-rank-2,
		& .block-top-ranking--goods-rank-3,
		& .block-top-ranking--goods-rank-4,
		& .block-top-ranking--goods-rank-5 {
			grid-column: auto;
			grid-row: auto;
		}

		& .block-top-ranking--description {
			padding: 8px 8px 10px;
		}

		& .block-top-ranking--goods-name {
			font-size: var(--txt-12);
		}

		& .variation-name {
			font-size: var(--txt-11);
		}

		/* ===== ランキング（縦並び） ===== */
		& .block-top-ranking--items {
			grid-template-columns: 1fr;
			display: grid;
			grid-template-columns: 1fr;
			gap: 9.38vw 0;
		}

		& .block-top-ranking--item {
			border-radius: 10px;
			overflow: visible;

			&>a {
				gap: 5.83vw;
				grid-template-columns: 41.67vw 1fr;
			}
		}

		& .block-top-ranking--items {
			grid-template-columns: 1fr;
			grid-template-rows: unset;
		}

		@media (max-width: 360px) {
			& .block-thumbnail-t--items {
				grid-template-columns: 1fr;
			}
		}

		/* レビュー☆ */
		.revico-star-zone {
			.revico-star-block--title {
				font-size: var(--txt-18);
				font-weight: normal;
			}

			.revico-star-block--total {
				font-size: var(--txt-18);
				font-weight: normal;
			}
		}

		/* CTA ボタン */
		& .block-top-event__button {
			&:active {
				background: var(--color-primary);
				color: #fff;
			}
		}

		.block-top-event__more {
			margin-top: 8.33vw;
		}

		/* ランキング波アニメーション */
		.swell-block-fullWide__SVG {
			height: 15vw !important;
		}
	}
}

/* TOPレビュー */
/*レスポンシブ*/
@media screen and (max-width: 768px) {
	.block-top-review {
		padding-block: clamp(16px, 4vw, 28px);

		&::before {
			content: "";
			aspect-ratio: 768 / 158;
			background: url(../../img/usr/top/top_review_bg_sp.svg) center center / 100% no-repeat;
		}

		& .block-top-review__inner {
			max-width: 100%;
			/* padding-inline: clamp(12px, 4vw, 20px);
			*/
		}

		.block-top-review__swiper {
			display: block;
			padding-bottom: 6px;
		}

		.block-top-review__item {
			width: min(48.05vw, 368px);
			flex-shrink: 0;
		}

		& .block-top-review__title {
			font-size: var(--txt-32);
			margin-bottom: clamp(12px, 4vw, 20px);
		}

		/* 2列（極小で1列） */
		/* & .block-top-review__list {
			--gap: 12px;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: var(--gap);
		}
		*/
		.block-top-review__top {}

		& .block-top-review__cardinner {
			width: 100%;
			padding: min(6.12vw, 47px) min(2.6vw, 20px) min(2.6vw, 20px);
			margin-inline: auto;
			grid-template-columns: 1fr min(13.28vw, 102px);
			column-gap: min(2.47vw, 19px);
		}

		@media (max-width: 360px) {
			& .block-top-review__list {
				grid-template-columns: 1fr;
			}
		}

		& .block-top-review__card {}

		& .block-top-review__excerpt {
			font-size: var(--txt-16);
		}

		& .block-top-review__bottom {
			/* grid-template-columns: 52px 1fr;
			column-gap: 8px;
			*/
			align-items: flex-start;
			grid-template-rows: auto;
			row-gap: min(1.04vw, 8px);
		}

		& .block-top-review__avatarWrap {
			aspect-ratio: 1/1;
			max-width: 102px;
		}

		& .block-top-review__avatar {
			width: 100%;
		}

		& .block-top-review__meta .block-top-review__prodName,
		& .block-top-review__meta .block-top-review__rating {
			font-size: var(--txt-16);
		}
	}
}

/*TOPセレクトブランド*/
@media screen and (max-width: 769px) {
	.block-top-brand {
		padding-block: clamp(16px, 4vw, 28px);

		& .block-top-brand__inner {
			max-width: 100%;
			padding-inline: clamp(12px, 4vw, 20px);
		}

		& .block-top-brand__title {
			font-size: var(--txt-32);
			margin-bottom: clamp(12px, 4vw, 20px);
		}

		/* 2列グリッド */
		& .block-top-brand__list {
			--gap: 12px;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: min(3.13vw, 24px) min(4.17vw, 32px);
		}

		& .block-top-brand__figure .block-top-brand__logo {
			left: 12px;
			bottom: -34px;
			width: 112px;
			height: 112px;
		}

		& .block-top-brand__body {
			padding: min(2.08vw, 16px) 0 0;
			/* ロゴ分の余白を増やす */
		}

		& .block-top-brand__name {
			font-size: var(--txt-16);
		}

		& .block-top-brand__desc {
			font-size: var(--txt-16);
		}

		.block-top-brand__cta {
			margin-top: min(5.21vw, 40px);
		}

		@media (max-width: 360px) {
			& .block-top-brand__list {
				grid-template-columns: 1fr;
			}
		}
	}

	/* TOP下部横長バナー */
	.block-bottom-bnr {
		padding-block: min(16.67vw, 128px) min(4.17vw, 32px) !important;

		.block-bottom-bnr__list,
		.block-bottom-bnr__main {
			max-width: 1130px;
		}

		.block-bottom-bnr__list {
			grid-template-columns: 1fr !important;
			gap: min(4.17vw, 32px);
			margin: 0 auto;
			justify-content: center;
			width: min(78.13vw, 600px);

			.block-bottom-bnr__item {
				width: min(78.13vw, 600px);
				aspect-ratio: 600/192;

				img {
					width: 100%;
					height: auto;
				}
			}
		}

		.block-bottom-bnr__main {
			margin: min(4.17vw, 32px) auto 0;
			width: min(78.13vw, 600px);

			img {
				width: 100%;
				height: auto;
			}
		}
	}
}

/* TOPビデオ */
/*レスポンシブ*/
@media screen and (max-width: 1200px) {
	.block-top-video {
		.block-top-video-inner {
			width: min(93.5vw, 1122px);
		}
	}
}

@media screen and (max-width: 1024px) {
	.block-top-video {
		.block-top-video-inner {
			grid-template-columns: 1fr;
			width: min(89.84vw, 780px);
		}

		.block-tama-original__more {
			.btn {
				border-color: #fff;
				color: #fff;
				background: var(--color-primary);
				margin-top: auto;
			}
		}
	}
}

@media screen and (max-width: 768px) {
	.block-top-video {
		.block-top-video-textarea {
			padding: min(3.39vw, 34px) min(2.5vw, 12px);
			display: grid;
			grid-template-columns: min(41.15vw, 316px) 1fr;
			align-items: center;
			gap: min(2.29vw, 11px);

			.block-top-video-textbox {
				&:first-child {
					padding-inline: min(2.73vw, 21px) min(0.91vw, 7px);

					.block-top-video-title {
						font-size: var(--txt-24);
						line-height: calc(48 / 36);
					}

					.block-top-video-subtitle {
						font-size: var(--txt-24);
						line-height: calc(48 / 36);
					}
				}

				&:nth-child(2) {
					padding-inline: 0;
				}
			}

			.block-top-video-text {
				font-size: var(--txt-14);
				text-align: left;
				margin-bottom: min(3.33vw, 16px);
			}
		}

		.block-tama-original__more {
			.btn {
				font-size: var(--txt-12);
				line-height: calc(25/20);
			}

			& .btn.btn-arrow {
				& span {
					margin-left: 1vw;
					width: 3vw;
					height: 3vw;
				}
			}
		}

		.block-top-video-inner {
			&::after {
				/* width: min(67.58vw, 519px);
				top: min(50.26vw, 386px);
				left: min(-20.31vw, -156px);
				*/
				top: auto;
				bottom: -42vw;
				left: -26vw;
				width: 75.42vw;
				height: 75.42vw;
			}
		}
	}
}

/* =========================================================TOPページコンテンツ内ここまで========================================================= */
/* =========================================================検索結果ページここから========================================================= */
@media screen and (max-width: 769px) {
	.block-search {
		margin-top: 0;
		padding-top: 3vw;

		/* ポップアップここから */
		#block-search-facets {
			position: fixed;
			inset: 0;
			justify-content: center;
			align-items: center;
			min-height: 100svh;
			backdrop-filter: blur(10px);
			background-color: initial;
			z-index: 99999;
			display: none;
			transition: all .7s ease;

			form {
				background: rgba(246, 244, 240, 0.96);
				width: 90%;
				margin: 0 auto;
				margin-top: 4.17vw;
				padding: 8.33vw 6.67vw 50vw;
				position: relative;
				height: 100svh;
				overflow-y: scroll;
				-ms-overflow-style: none;
				scrollbar-width: none;
				/* overscroll-behavior-y: contain;
				*/
				overscroll-behavior-y: none;
				bottom: -30%;
				/* transition: transform 1.2s, opacity 1s, visibility 1s;
				*/
				/* transform: translateY(30px);
				*/
				opacity: 0;

				/* visibility: hidden;
				*/
				& .block-search__title {
					background: none;
				}
			}
		}

		#block-search-facets.open {
			display: block;
		}

		html.noscroll {
			position: fixed;
			left: 0;
			right: 0;
			width: 100%;
			overflow-y: scroll;
			overflow-x: hidden;
		}

		#block-search-facets form.is-active {
			bottom: 0;
			transition: all .3s ease;
			/* transition: transform 1.2s, opacity 2s, visibility 1s;
			*/
			/* 親にtransform設定しているとfixedが効かなくなる*/
			/* transform: translateX(0);
			*/
			opacity: 1;
			/* visibility: visible;
			*/
		}

		#block-search-facets form::-webkit-scrollbar {
			display: none;
		}

		& .block-search__actions {
			position: fixed;
			width: 100%;
			bottom: 0;
			left: 0;
		}

		& .block-search__facetTitle {
			font-size: var(--txt-20);
			margin: 8.33vw 0 32px;
		}

		.toggle-icon {
			margin-right: 0;
		}

		.block-search__actionsResult {
			display: none;
		}

		.block-search__resultAmount {
			display: flex;
			flex-direction: row-reverse;
			column-gap: 5vw;
		}

		& .block-search__submit {
			border: 1px solid var(--color-gray);
			background: var(--main--background-color);
			color: var(--color-text);
			padding: 16px 16px;
			cursor: pointer;
			border-radius: 0;
		}

		& .block-search__actions {
			background: rgba(246, 244, 240, 0.96);
			padding: 6.67vw;
		}

		& .block-search__resetBtn {
			font-size: var(--txt-16);
			color: var(--color-text);
			border: 0;
			background: initial;
			text-decoration: underline;
			text-underline-offset: 8px;
			margin: 0;
			padding: 0;
			width: fit-content;
		}

		& .block-search__filterBtn {
			margin-top: 0 !important;
		}

		/* 閉じるボタン */
		.block-search-closeBtn {
			position: absolute;
			top: 6.67vw;
			right: 6.67vw;
			width: 4.17vw;
			height: 4.17vw;
			border: 0;
			background: url(../../img/usr/common/icon_close.svg) no-repeat center center / 100%;
		}

		/* ポップアップここまで */
		& .block-search__title {
			background: var(--color-grayish-ivory);
			margin: 0;
			padding: 0 5vw 2vw;
			/* padding: 8.33vw 5vw 0;
			*/
		}

		& .block-search__input {
			padding: 3.96vw 6.25vw;
			font-size: var(--txt-18);
			height: 13.33vw;
		}

		.block-search__queryRow {
			position: relative;
		}

		.block-search__queryRow .block-search__submit {
			position: absolute;
			top: 50%;
			right: 5vw;
			transform: translateY(-50%);
			width: auto;
			height: 4.38vw;
			aspect-ratio: 37 / 41;
			background: url(../../img/usr/common/icon_search.svg) no-repeat center top / 100%;
			background-size: contain;
			border: 0;
			padding: 3.17vw;
		}

		.block-search__form {
			padding: 6.67vw 6.67vw 10.83vw;
			margin-bottom: 0;
		}

		#block-search-asidetitle {
			text-align: center;
		}

		.block-search__controls {
			display: none;
		}

		.block-search__openSubmit {
			position: relative;
			background: var(--color-accent);
			border-color: var(--color-accent);
			color: #fff;

			&::before {
				content: "";
				top: 50%;
				left: 6.67vw;
				transform: translateY(-50%);
				position: absolute;
				width: 5vw;
				height: 3.33vw;
				background: url(../../img/usr/common/icon_filter_white.svg) no-repeat center top / 100%;
				background-size: contain;
			}
		}

		& .block-search__layout {
			display: grid;
			grid-template-columns: 1fr;
			gap: 0;
			/* margin-top: 16.67vw;
			*/
		}

		& .block-search__section {
			padding: 0 5vw;
		}

		#block-search-products-title {
			margin-top: 10vw;
		}

		.block-search__displayMethod {
			display: none;
		}

		.block-search__hitRange {
			text-align: center;
			margin-bottom: min(10vw, 48px);
		}

		.block-search__tabContener {
			display: block;
			margin-right: calc(50% - 50vw);
			margin-left: calc(50% - 50vw);
		}

		.block-search__tabControl {
			max-width: none;
		}

		& .block-search__section--products div.block-thumbnail-t {
			.block-thumbnail-t--items {
				padding: 0;
			}
		}

		/* 絞り込み条件タグ */
		.block-search__filterTagControls {
			display: flex;
			flex-direction: column;
			gap: 0;
			padding: 0 5vw;
			margin-top: 5vw;
		}

		.block-search__filtetxt {
			font-size: var(--txt-14);
			margin-bottom: 1.67vw;
		}

		.block-search__filterTag-items {
			gap: 2.5vw;
		}

		.block-search__resetTagBtn {
			margin-top: 2.5vw;
			text-align: center;
		}

		/* 読み物　検索結果 */
		.block-search__section--articles {
			margin-top: 10vw;
		}

		.block-search_articlesbody {
			row-gap: 40px;

			& .block-search__articlesList {
				margin: 12.92vw 0 0;
				row-gap: 10.83vw;
				grid-template-columns: 1fr 1fr;
				column-gap: 5vw;
			}

			.block-search__articlesItem {
				display: grid;
				grid-template-columns: 1fr;
				row-gap: 16px;
			}

			& .block-search__articlesTitle {
				font-size: var(--txt-16);
			}

			& .block-search__badge {
				font-size: var(--txt-10);
			}
		}

		/* ページネーション */
		& .block-pager ul {
			margin-top: 16.67vw;
		}
	}
}

@media screen and (max-width: 480px) {
	.block-top-topic--icon {
		max-height: fit-content;
	}

	/* TOPランキング */
	/* .block-top-event {
		padding-block: 13.333vw 0 !important;
	}
	*/
	.block-search {

		/* 読み物　検索結果 */
		.block-search_articlesbody {
			.block-search__articlesList {
				grid-template-columns: 1fr;
			}
		}
	}
}

/* =========================================================検索結果ページここまで========================================================= */
/* =========================================================商品詳細ページここから========================================================= */
@media screen and (max-width: 769px) {
	.page-goods .block-goods-detail {
		padding: 0;
	}

	/* コメント */
	div.block-goods-detail div.block-goods-comment2 {
		margin-block: 6.67vw 0;
	}

	/* 上部左サイド */
	.pane-goods-left-side {
		padding: 0 5vw;
	}

	.block-goods-detail .block-goods-detail--color-variation-goods-image .swiper-slider-main {
		/* height: 107.92vw;
		*/
		max-height: 100%;
		margin-bottom: 0;
		/* margin-bottom: 4.67vw;
		*/
	}

	.block-goods-detail--color-variation-goods-thumbnail-form .swiper-slider-thumbnail {
		margin: 0;
		overflow: visible;
	}

	.block-goods-gallery>ul {
		row-gap: 0;
		flex-wrap: nowrap !important;
		overflow: scroll;
	}

	.block-goods-gallery ul li {
		min-width: auto;
		flex-basis: auto;
		padding: 2.08vw !important;
	}

	.block-goods-gallery ul li+li a {
		margin-left: 0;
	}

	.swiper-slider-main .video {
		height: 58.33vw;
	}

	.block-goods-gallery .video {
		height: stretch;
	}

	/* 上部右サイド */
	.pane-goods-right-side {
		margin-top: 8.33vw;
		padding: 0 5vw;
	}

	.page-goods .block-goods-name h1.block-goods-name--text {
		font-size: var(--txt-24);
	}

	/* もっと見るボタン */
	.js-morebtn.close {
		height: 45vw;
		overflow: hidden;
		position: relative;

		&::after {
			content: "もっと読む";
			position: absolute;
			width: 100%;
			height: 32.08vw;
			bottom: 0;
			left: 0;
			background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 80%);
			font-size: 2.92vw;
			display: flex;
			align-items: end;
			justify-content: center;
		}
	}

	/* コメント1 */
	.block-goods-product-overview {
		font-size: 16px;
		/* font-size: var(--txt-16);
		*/
		line-height: 2;
	}

	.goods-detail-description-wrap {
		margin-top: 6.88vw;
	}

	.goods-detail-tag {
		margin-top: 4.38vw;

		.block-goods-tag {
			gap: 3.33vw;
			margin-bottom: 1.67vw;
		}

		.ico-frame {
			padding: 2.08vw 3.96vw 1.9vw;
		}
	}

	/* コメント2 特徴 */
	.block-goods-feature {
		grid-template-columns: 1fr;

		p {
			font-size: var(--txt-14);
			/* font-size: var(--txt-16);
			*/
			margin-bottom: 2.5vw;
		}

		ul {
			grid-template-columns: 1fr 1fr 1fr 1fr;
			gap: 3.33vw 2.08vw;

			img {
				height: fit-content;
			}

			figcaption {
				margin-top: 1.04vw;
				font-size: var(--txt-14);
				/* font-size: var(--txt-11);
				*/
			}
		}
	}

	.block-add-cart {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		padding: 6.67vw 5vw 0;
		margin-top: 10.83vw;
	}

	.block-variation--item-list {
		gap: 6.04vw;
	}

	.block-variation--item {
		padding: 3.54vw 2vw;
		margin-right: 0;
	}

	.block-variation {
		.second-row {
			gap: 1.67vw;
		}
	}

	/* SALE時 */
	.block-variation {
		.block-thumbnail-t--default-price.small {
			font-size: var(--txt-12);
		}

		.block-goods-price--price .small {
			font-size: var(--txt-22);
		}
	}

	.block-goods-qty-point {
		gap: 5vw;

		.goods_point_ {
			letter-spacing: -0.02em;
			margin-top: -2vw;

			strong {
				display: block;
				padding-left: 0;
			}

			b {
				font-size: var(--txt-24);
			}
		}
	}

	/* .block-goods-point-sp {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 6.04vw;
		margin-top: 2.5vw;
		.goods_point_ {
			text-align: center;
			b {
				font-size: var(--txt-14);
				color: var(--color-text);
				font-weight: normal;
			}
		}
	}
	*/
	.block-goods-qty {
		font-weight: normal;
		gap: 5.63vw;

		p {
			font-size: var(--txt-16);
		}

		.block--goods-qty-frame {
			border-radius: 6px;
			width: 41.67vw;
			height: 13.33vw;
		}

		.block--goods-qty-btn.plus::before,
		.block--goods-qty-btn.plus::after,
		.block--goods-qty-btn.minus::before {
			width: 4.17vw;
		}
	}

	.block-add-cart .block-add-cart--btn {
		padding: 3.33vw 3.54vw 3.54vw;
		margin-top: 7.92vw;
	}

	/* カートボタン下固定時 */
	.block-following-area-fixed {
		opacity: 0;
		transform: translateY(100%);
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		transition: transform .25s ease, opacity .2s ease;
		background-color: #fff;
		padding: 3.13vw 5vw;
		z-index: 99;

		.block-following-area {
			display: flex;
			gap: 6.67vw;

			& button a {
				pointer-events: none;
			}
		}
	}

	.block-following-area-fixed.is-show {
		opacity: 1;
		transform: translateY(0);

		&.is-up {
			transform: translateY(100%);
			/* 初期は下に隠す */
			transition: transform .25s ease, opacity .2s ease;
		}

		&.is-down {
			transform: translateY(0);
			/* 上にスライド */
			transition: transform .25s ease, opacity .2s ease;
		}

		.block-order--btn.btn {
			display: block;

			a &:hover {
				color: var(--color-text);
			}
		}

		button.btn {
			margin: 0;
			border-radius: 4px;
			font-size: var(--txt-16);
			padding: 3.33vw 3.33vw 3vw;
			font-family: var(--font-family-base);
		}
	}

	.dummy {
		display: none;
		margin-top: 40px;
	}

	/*  addカートエリアと下部コメント部分エリアの境目調整 */
	/* 子要素（要素ノード）がない場合 */
	.block-goods-first-limited-order:not(:has(*)),
	.block-goods-detail--promotion-freespace:not(:has(*)) {
		display: none;
	}

	/* 関連商品 */
	div.block-accessory-list {
		margin: 16.67vw auto 0;
	}

	.block-thumbnail-t .block-thumbnail-t--items.swiper-wrapper {
		padding-left: 5vw;
	}

	.block-thumbnail-t {
		.block-goods-tag {
			gap: 2.29vw;
			margin-bottom: 1vw;
		}

		.ico-frame {
			font-size: var(--txt-14);
			padding: 1.04vw 1.88vw 1.25vw;
		}
	}

	/* 最近見た商品 */
	#block_of_itemhistory {
		margin: 16.67vw auto 0;
	}

	/* 下部コメント部分エリア */
	.block-goods-bottom-comment {
		padding: 10vw 5vw 13.75vw;
		margin-top: 0;

		p {
			font-size: 16px;
		}

		h3 {
			padding-bottom: 4.17vw;
		}

		ol {
			padding-left: 5vw;
		}

		/* 新規会員登録バナー */
		.block-goods-new-member-bnr {
			margin-bottom: 16.67vw;
		}

		/* 成分・原材料セクション */
		.block-goods-material {
			margin-top: 16.67vw;
		}

		/* 表 */
		.c-table-wrap {
			-ms-overflow-style: thin;
			scrollbar-width: thin;

			&::-webkit-scrollbar {
				display: thin;
			}
		}

		.c-table.-sp-column th,
		.c-table.-sp-column td {
			display: block;
			width: 100%;
		}

		.c-table__body {
			padding: 4.58vw 6.67vw 4.58vw 9.17vw;
			font-size: 16px;
			/* font-size: var(--txt-16);
			*/
		}

		.c-table__head {
			padding: 4.79vw 5vw;
			font-size: 16px;
			/* font-size: var(--txt-16);
			*/
		}

		/* 商品説明セクション */
		.block-goods-productDescription {
			margin-top: 16.67vw;
		}

		.block-goods-productDescription--card:not(:has(.block-goods-productDescription--cardwrap)) {
			grid-template-columns: 1fr;
			/* row-gap: 5vw;
			*/
			padding: 8.33vw;
		}

		.block-goods-productDescription--card+.block-goods-productDescription--card {
			margin-top: 40px;
		}

		.block-goods-productDescription--card:has(.block-goods-productDescription--cardwrap) {
			padding: 8.33vw;
		}

		.block-goods-productDescription--cardwrap {
			display: flex;
			flex-direction: column-reverse;
			row-gap: 5vw;

			.block-goods-productDescription--pic {
				width: 100%;
			}
		}

		.block-goods-productDescription--txt {
			margin-top: 5vw;
		}

		.block-goods-productDescription--pic {
			img {
				height: auto;
			}
		}

		.block-goods-productDescription--notes {
			margin-top: 5vw;
		}

		/* 商品説明　テキストベースセクション */
		& .block-goods-productDescription--text-based {
			h3 {
				margin-bottom: 0;
			}

			section {
				margin-top: 16.67vw;
			}

			& .text-based-listitem {
				dt {
					padding: 6.67vw 0 2.5vw;
				}

				dd {
					font-size: 16px;
				}
			}

			.text-based-notes {
				color: var(--color-gray);
				margin-top: 6.67vw;
			}

			.product-icon-list {
				margin-top: 6.67vw;
				grid-template-columns: 1fr 1fr 1fr;
				gap: 5vw 7.29vw;
			}
		}

		/* その他情報 */
		.block-goods-productInfo.close {
			&::after {
				background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #F8F7F4 80%);
			}
		}

		/* /.block-goods-bottom-comment */
	}

	/* AiReco レコメンド */
  .block-aireco-recommend {
    margin: 16.67vw auto 0;
  }

}

/*ぱんくず*/
@media screen and (max-width: 769px) {
	.pane-contents div.block-topic-path {
		padding: 4.17vw 0;
		margin: 26.67vw 0 0;
		overflow-x: scroll;

		.block-topic-path--list {
			padding: 0 5vw;
			white-space: nowrap;
		}

		.block-topic-path--list li,
		.block-topic-path--delimiter {
			padding-right: 2.08vw;
		}
	}
}

/* =========================================================商品詳細ページここまで========================================================= */
/* =========================================================カテゴリ一覧========================================================= */
/* 上部フリーエリア */
@media screen and (max-width: 1216px) {
	.block-category-list--header-freespace {
		.block-category__features {
			overflow-x: scroll;
			padding-bottom: 20px;
		}
	}
}

@media screen and (max-width: 769px) {
	.block-category-list--header-freespace {
		.block-category__videoarea {
			height: 50vw;
		}

		h2 {
			margin-block: 16.67vw 8.33vw;
		}

		/* ナビエリア */
		& .block-category__nav {
			margin-bottom: 8.33vw;
			padding-inline: 8vw;

			p {
				row-gap: 5vw;
			}

			i {
				padding-inline: 2vw 2vw;
			}
		}

		/* 初回限定エリア */
		.block-category__limited:has(a) {
			padding-block: 1.25vw 2.71vw;
			padding-inline: 2.08vw;

			a {
				margin: 0;
				font-weight: 600;
				padding: 1vw 5vw 2vw;
			}

			.block-category__limited-title {
				font-size: var(--txt-24);
				line-height: 1.3;

				.block-category__limited-label {
					font-size: var(--txt-24);
				}

				strong {
					font-size: var(--txt-32);
					font-weight: 500;
				}

				.block-category__limited-unit {
					font-size: var(--txt-24);
				}
			}

			.block-category__limited-txt {
				font-size: var(--txt-18);
			}
		}

		/* 特徴エリア */
		.block-category__features {
			padding: 8.33vw 0 0;

			&::before {
				aspect-ratio: 768 / 158;
				background: url(/img/usr/top/top_review_bg_sp.svg) center center / 100% no-repeat;
			}
		}

		.block-category__feature {
			width: 100%;
			overflow-x: scroll;
			padding-inline: 8.33vw;
		}

		.block-category__feature-card {
			min-width: 45.83vw;
			width: 45.83vw;
		}

		h3 {
			column-gap: 2vw;
		}

		.block-category__feature-sectionIcon {
			width: 10vw;
			height: auto;
		}

		.block-category__feature-card-image {
			height: auto;

			figcaption {
				padding: 0.83vw 3.33vw;
				letter-spacing: -0.07em;
			}
		}

		.block-category__feature-card-body-image img {
			width: 12.42vw;
		}
	}
}

/* PC～TB----*/
@media screen and (max-width: 1024px) {
	.block-thumbnail-t {
		.block-thumbnail-t--items:not(.swiper-wrapper) {
			padding: 0 min(3.71vw, 38px);
			justify-content: center;
			/* grid-template-columns: repeat(auto-fill, clamp(200px,11.3vw,217px))!important;
			*/
			margin-bottom: min(4.17vw, 80px);
			/* gap: min(2.03vw,39px) min(1.46vw,28px)!important;
			*/
		}

		.block-thumbnail-t--item {

			/* width: clamp(200px,11.3vw,217px)!important;
			*/
			a {}

			.block-thumbnail-t--goods-image {
				figure {
					aspect-ratio: 220 / 263;
					padding: 0;
					background: none;
					position: relative;

					picture {
						display: block;
						width: 100%;
						height: 100%;
						overflow: hidden;
					}

					.block-thumbnail-favorite {
						border: none;
						padding: 0;
						margin: 0;
						aspect-ratio: 28/24;
						width: 28px;
						height: 24px;
						background: none;
						position: absolute;
						bottom: 0;
						right: 0;

						.heart {
							width: 28px;
							height: 24px;
							display: block;
							background: url('../../img/usr/common/icon_bookmark01.svg') no-repeat center / contain;
						}

						&.is-active {
							.heart {
								background: url('../../img/usr/common/icon_bookmark02.svg') no-repeat center / contain;
							}
						}
					}
				}
			}

			.block-thumbnail-t--goods-description {
				.block-goods-tag {
					display: flex;
					flex-wrap: wrap;
					gap: min(1.25vw, 6px);
					margin-bottom: min(0.31vw, 6px);

					.goods-tag {
						border: 1px solid var(--color-gray);
						width: fit-content;
						padding: min(0.1vw, 3px) min(0.8vw, 16px) min(0.32vw, 5px) min(0.8vw, 10px);
						font-size: var(--txt-12);
						font-weight: 400;
						line-height: calc(20/12);
					}

					.goods-tag--limitedtime {}

					.goods-tag--sale {}

					.goods-tag--soldout {}
				}

				.block-thumbnail-t--goods-name {
					font-size: var(--txt-16);
					font-weight: 600;
					line-height: calc(24/16);
					color: var(--color-text);
					margin-bottom: 8px;
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 3;
					overflow: hidden;
				}

				.variation-name {
					display: none;
				}

				.block-thumbnail-t--price-items {
					.block-thumbnail-t--price {
						font-size: var(--txt-16);
						font-weight: 400;
						line-height: calc(24/16);

						&::after {
							font-size: var(--txt-12);
						}
					}
				}
			}

			.revico-star-zone {
				margin-top: min(0.47vw, 9px);
			}
		}
	}

	/* レーティング---- */
	.revico-star-zone {
		.revico-star-block--title {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block--total {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block {
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}

		.revico-star-block--rate {
			width: 96px;
		}

		.starability-result {
			width: 96px;
		}
	}

	/* バッジ---- */
	.block-icon {
		top: min(-1.56vw, -16px);
		right: min(0.98vw, 10px);
		width: min(7.55vw, 38px);

		.badge {
			width: 100%;
			height: 100%;
			margin: 0;
			padding: 0;
		}
	}

	/* ページャー---- */
	.block-pager {
		max-width: 1216px;
		justify-content: center;
		margin: 0 auto;

		.block-pager-list {
			margin: 0 auto min(18.75vw, 90px);
		}

		.block-pager-list-item {
			justify-content: center;

			/* margin-right: min(8.13vw,39px);
			*/
			a {
				font-size: var(--txt-20);
				line-height: calc(23/20);
			}

			/* &.block-pager-list-item--first {
				height: var(--txt-16);
				margin-right: min(5vw,24px);
			}
			&.block-pager-list-item--prev {
				width: auto;
				height: var(--txt-16);
				margin-right: min(6.67vw,32px);
			}
			&.block-pager-list-item--next {
				height: var(--txt-16);
				margin-right: min(5vw,24px);
			}
			&.block-pager-list-item--last {
				height: var(--txt-16);
			}
			&:nth-last-child(5),&:nth-last-child(6) {
				display: none !important;
			}
			&:nth-last-child(3) {
				margin-right: min(1.67vw,32px);
			}
			*/
			&.current {
				a {
					&::after {
						width: min(8.33vw, 40px);
					}
				}
			}

			span {
				&.visually-hidden {
					position: absolute;
					width: 1px;
					height: 1px;
					padding: 0;
					margin: -1px;
					overflow: hidden;
					clip: rect(0, 0, 0, 0);
					white-space: nowrap;
					border: 0;
				}
			}

			&.-ellipsis {}
		}

		&.block-goods-list-pager {}
	}

	/* =========================================================カテゴリ一覧ページここまで========================================================= */
}

/* ========================tab======================== */
@media screen and (max-width: 768px) {
	.pane-header {
		.block-headernav--item-left {
			&.cat-life-30 {
				opacity: 0;

				/* transition: opacity .4s ease;
				*/
				img {
					width: min(7.5vw, 42px);
					height: auto;
					display: block;
					aspect-ratio: 51 / 56;
				}
			}
		}
	}

	/* =========================================================カテゴリ一覧========================================================= */
	.block-thumbnail-t {
		.block-thumbnail-t--items {
			grid-template-columns: 1fr 1fr !important;
			gap: min(8.33vw, 64px) min(4.17vw, 32px) !important;
		}

		.block-thumbnail-t--item {

			/* max-width: unset!important;
			*/
			a {}

			.block-thumbnail-t--goods-image {
				figure {
					picture {}

					.block-thumbnail-favorite {
						.heart {}

						&.is-active {
							.heart {}
						}
					}
				}
			}

			.block-thumbnail-t--goods-description {
				.block-goods-tag {
					display: flex;
					flex-wrap: wrap;
					gap: min(1.25vw, 6px);
					margin-bottom: min(0.31vw, 6px);

					.goods-tag {
						border: 1px solid var(--color-gray);
						width: fit-content;
						padding: min(0.1vw, 3px) min(0.8vw, 16px) min(0.32vw, 5px) min(0.8vw, 10px);
						font-size: var(--txt-12);
						font-weight: 400;
						line-height: calc(19/12);
					}

					.goods-tag--limitedtime {}

					.goods-tag--sale {}

					.goods-tag--soldout {}
				}

				.block-thumbnail-t--goods-name {
					font-size: var(--txt-20);
					font-weight: 600;
					line-height: calc(29/20);
					color: var(--color-text);
					margin-bottom: min(2.08vw, 16px);
				}

				.variation-name {
					display: none;
				}

				.block-thumbnail-t--price-items {
					.block-thumbnail-t--price {
						font-size: var(--txt-16);
						font-weight: 400;
						line-height: calc(24/16);

						&::after {
							font-size: var(--txt-12);
						}
					}
				}
			}

			.revico-star-zone {
				margin-top: min(0.47vw, 9px);
			}
		}
	}

	/* レーティング---- */
	.revico-star-zone {
		.revico-star-block--title {
			font-size: var(--txt-16);
			line-height: calc(20/16);
		}

		.revico-star-block--total {
			font-size: var(--txt-16);
			line-height: calc(20/16);
		}

		.revico-star-block--rate {
			width: min(12.5vw, 96px);
			margin-right: min(0.52vw, 4px);
		}

		.starability-result {
			width: min(12.5vw, 96px);
			background-size: min(25.52vw, 196px) auto;
		}
	}

	/* バッジ---- */
	.block-icon {
		top: min(-2.08vw, -16px);
		right: min(1.3vw, 10px);
		width: clamp(38px, 7.55vw, 58px);
	}

	/* ページャー---- */
	.block-pager {
		max-width: 1216px;
		justify-content: center;
		margin: 0 auto;

		.block-pager-list {
			margin: 0 auto min(18.75vw, 90px);
		}

		.block-pager-list-item {
			justify-content: center;

			/* margin-right: min(8.13vw,39px);
			*/
			a {
				font-size: var(--txt-20);
				line-height: calc(23/20);
			}

			/* &.block-pager-list-item--first {
				height: var(--txt-16);
				margin-right: min(5vw,24px);
			}
			&.block-pager-list-item--prev {
				width: auto;
				height: var(--txt-16);
				margin-right: min(6.67vw,32px);
			}
			&.block-pager-list-item--next {
				height: var(--txt-16);
				margin-right: min(5vw,24px);
			}
			&.block-pager-list-item--last {
				height: var(--txt-16);
			}
			&:nth-last-child(5),&:nth-last-child(6) {
				display: none !important;
			}
			&:nth-last-child(3) {
				margin-right: min(1.67vw,32px);
			}
			*/
			&.current {
				a {
					&::after {
						width: min(8.33vw, 40px);
					}
				}
			}

			span {
				&.visually-hidden {
					position: absolute;
					width: 1px;
					height: 1px;
					padding: 0;
					margin: -1px;
					overflow: hidden;
					clip: rect(0, 0, 0, 0);
					white-space: nowrap;
					border: 0;
				}
			}

			&.-ellipsis {}
		}

		&.block-goods-list-pager {}
	}

	/* フィルター---- */
	.pane-main div.block-goods-list--params {
		width: min(66.67vw, 320px);
		justify-content: center !important;
		margin: min(11.46vw, 55px) auto min(17.5vw, 84px) !important;

		.block-filter {
			width: min(15.83vw, 121px);

			.block-filter--header {
				padding: min(4.17vw, 32px) 0;

				&::before {
					width: min(7.5vw, 36px) !important;
					height: min(5vw, 24x) !important;
				}
			}
		}

		.block-goods-list--sort-order-items {
			width: min(51.88vw, 398px) !important;

			.block-sort--header {
				h2 {
					font-size: var(--txt-20);

					/* padding-left: min(10.83vw,83px)!important;
					*/
					&::after {
						/* aspect-ratio: 13 / 25;
						*/
						width: min(4.38vw, 33px);
						top: 50%;
						right: min(5.21vw, 25px);
					}
				}
			}
		}

		.block-sort--element {
			left: 50%;
			transform: translateX(-50%);
		}
	}

	/* =========================================================カテゴリ一覧ページここまで========================================================= */
}

/* ========================SP======================== */
@media screen and (max-width: 480px) {

	.sp-only,
	.tb-sp-only {
		display: block;
	}

	.tb-only,
	.pc-only {
		display: none;
	}

	body {
		#search_view .search_inner {
			border-top: none;
		}

		.pane-header {
			.block-headernav--item-list {
				&.left-list {
					width: calc(100% - min(16.46vw, 55px));
					/* width: calc(100% - min(11.46vw, 55px));
					*/
				}

				&.right-list {
					width: min(11.46vw, 55px);
				}
			}

			.block-header-info-frame {
				padding: calc((20px - var(--txt-12) - (17px - var(--txt-12))) / 2);
			}

			.block-header-info {
				font-size: var(--txt-12);
				line-height: calc(17/12);
			}

			.block-header-nav {
				padding: 0 min(4.96vw, 19px) 0 min(27.92vw, 134px) !important;
				;
				column-gap: min(8.96vw, 51px) !important;
			}

			/* .block-headernav--item-left {
				&.cat-life-30 {
					display: none;
				}
			}
			*/
			#header_menu {
				width: auto;

				span {
					max-width: 44px;
				}

				&.active {
					span {
						/* font-size: var(--txt-12);
						*/
						/* line-height: calc(15 /12);
						*/
					}
				}
			}

			.block-header-logo {
				width: min(35.42vw, 170px);
			}

			.container {
				height: min(15vw, 72px);
			}

			/* search */
			.block-headernav--item-search {
				margin-right: min(5.0vw, 36px);

				#header_search {
					width: auto;
					height: min(7.0vw, 40px);
					aspect-ratio: 28/40;
					background: url(../../img/usr/common/icon_search_sp.svg)no-repeat center top / 100%;
					display: inline-block;
					font-size: 0;
					/*10px*/
					padding-top: 3.8rem;
					text-align: center;
				}
			}

			.block-headernav--item-search-fb {
				.block-headernav--item-search-inner {
					flex-wrap: wrap;
					row-gap: 0.5em;
					margin-left: min(2vw, 30px);
				}
			}

			.block-global-search {
				width: min(50vw);
			}

			.block-search-tag {
				width: 100%;

				a {
					font-size: var(--txt-12);
					padding: min(0.27vw, 4px) min(0.6vw, 9px) min(0.33vw, 5px) min(0.73vw, 11px);
				}
			}

			.block-headernav--item-right {
				width: 163px !important;
				margin-left: 2rem;

				.block-headernav--item-list-inner {
					justify-content: flex-end;
					margin-right: 2rem;
				}

				.block-headernav--item-text {
					font-size: 0;
					/*9px*/
					width: 48px;
					padding-top: 3.4rem;
					text-align: center;
				}
			}

			.block-headernav--item-list {
				&.left-list {
					justify-content: flex-end;
				}

				&.right-list {
					width: min(6.46vw, 55px);
					height: auto !important;
					aspect-ratio: 55/33.5;
					justify-content: flex-end;
					align-items: center;
				}
			}

			.block-headernav--item-search {
				width: min(6.04vw, 29px);
				margin-right: min(5vw, 24px);
				/*padding-top: 0.1rem;
				*/
			}

			.block-header-nav .tb-sp-only {
				width: 100%;
				display: inline-block;
				font-size: 0;
				/*9px*/
				aspect-ratio: 31/39;
				margin-right: min(3vw, 36px);
			}

			.block-headernav--item-login {
				width: min(7.5vw, 36px);
				margin-right: min(5vw, 24px);
			}

			.block-headernav--item-cart {
				width: min(7.5vw, 36px);

				a {
					.block-headernav--cart-count {
						min-width: min(5.83vw, 28px);
						height: min(5.83vw, 28px);
					}
				}
			}

			/* スクロール時 */
			&.is-scrolled {
				.block-header-logo {
					width: auto;
					height: calc(100% * 1.20);
					transition: all 0.3s 0s ease;
				}

				.block-headernav--item-left {
					&.cat-life-30 {
						opacity: 1;
						/* transition: opacity .4s ease;
						*/
					}
				}

				.block-headernav--item-list {
					&.right-list {
						width: min(11.46vw, 55px);
					}
				}

				.block-headernav--item-right {
					.block-headernav--item-list-inner {
						margin-right: -8px;
					}
				}
			}

			/* 上に来ているとき */
			&.is-top {
				.block-headernav--item-right {
					li {
						height: 100%;
					}

					.block-headernav--item-search {
						#header_search {
							padding-top: 3.9rem;
						}
					}
				}
			}
		}

		&.body-fixed {
			#menu_view {
				.menu_inner {
					padding-top: min(22.08vw, 106px);
				}

				.block-navi-menu-contents {
					.header-categorytree-item {
						figure {
							figcaption {
								font-size: var(--txt-14);
								line-height: calc(15/12);
								font-family: var(--font-family-corp);
								padding-top: 0.5rem;
							}
						}
					}
				}

				.block-header-menu-list {
					&.-menu {
						.header-menu-link {}
					}

					.header-menu-link-list {

						/* .-top {
							height: min(96px);
						}
						*/
						.header-menu-link {
							font-size: var(--txt-20);
							font-family: var(--font-family-serif);
							font-weight: bold;
							line-height: 1;
							padding-block: 5.21vw;
						}
					}
				}

				.block-pagelink-list__navi--menu {
					ul {
						gap: min(5.83vw, 28px) min(8.33vw, 40px);
						justify-content: flex-start;
					}

					li {
						width: fit-content;
						font-size: var(--txt-14);

						/* line-height: calc(17/12);
						*/
						&:nth-child(odd) {
							width: fit-content;
						}

						&:nth-child(even) {
							width: fit-content;
						}
					}
				}
			}

			.pane-header {
				&.block-headernav--item-list {
					&.right-list {
						width: min(10.83vw, 52px);
						aspect-ratio: 52 / 47;
					}
				}
			}
		}
	}

	/* ご注文方法の指定---- */
	.block-order-method--goods-item-image figure {
		background-color: white;
	}

	/* 検索フォーム---- */
	#search_view {
		.search_inner {
			padding: 0;
		}
	}

	/* footer---- */
	.pane-footer {
		.block-footernav--item-list {
			border-left: none;
			border-right: none;

			li {
				width: 100% !important;
				height: fit-content;
				padding: 0 !important;

				a {
					font-size: var(--txt-16) !important;
					font-family: var(--font-family-serif);
					line-height: calc(35/16);
					height: min(11.04vw, 53px);
				}
			}
		}

		.block-footernav-menu {
			.block-footernav--item-list {
				border-left: none;
				border-right: none;
				grid-template-columns: 1fr 1fr;

				li {
					a {
						font-size: var(--txt-16) !important;
						font-family: var(--font-family-serif);
						line-height: calc(35/16);
						height: min(11.04vw, 53px);
					}
				}
			}
		}

		.block-footernav-info {
			padding: min(10.83vw, 52px) 0;

			.block-footernav-info-list {
				grid-template-columns: 1fr;
				row-gap: min(10.83vw, 52px);
			}

			.block-footernav-info-item {
				&.-company {
					width: min(85.42vw, 410px);
					margin: auto;

					.info-company-item {
						row-gap: var(--txt-20);

						.footer-logo {
							width: min(38.33vw, 184px);
						}

						.footer-tel {
							width: min(42.71vw, 205px);

							.tel-number {
								a {
									font-size: var(--txt-32);
									line-height: calc(46/32);
									white-space: nowrap;
									font-weight: 600;
								}

								a[href^="tel:"] {
									pointer-events: none;
								}
							}

							.tel-text {
								margin-top: min(0.78vw, 6px);
								font-size: var(--txt-20);
								line-height: calc(28/20);

								span {
									font-size: var(--txt-16);
								}
							}
						}

						.info-company-other {
							width: min(64.38vw, 309px);
							margin: auto;

							ul {
								justify-content: space-around;
								column-gap: min(2.71vw, 13px);

								li {
									font-size: var(--txt-12);
									line-height: calc(34/12);
								}

								.icon_mark {
									&.-privacy {
										width: min(13.33vw, 64px);
									}
								}
							}
						}
					}
				}

				&.-calendar {
					width: min(82.71vw, 397px);
					display: block;
					margin: auto;

					.block-calendar {
						padding: 0;
					}

					.info-calendar-item {
						/* width: 100%;
						*/
						width: revert-rule;
						margin: 3px auto;
						box-shadow: 0 0 8px rgba(242, 239, 233, 1);
						border-radius: 6px;

						table {
							border-spacing: unset;

							td {
								span {
									width: 5vw;
									height: fit-content;
								}
							}
						}
					}

					.info-calendar-text {
						width: 100%;

						.info-calendar-heading {
							font-size: var(--txt-24);
							line-height: calc(35/24);
							margin-bottom: min(2.71vw, 13px);
						}

						.c-text {
							font-size: var(--txt-14);

							+.c-text {
								margin-top: calc(var(--txt-14) * (24/14));
							}
						}
					}
				}
			}

			.block-footernav--text-list {
				width: min(83.92vw, 374px);
				gap: min(5.83vw, 28px) min(8.33vw, 40px);
				flex-wrap: wrap;
				justify-content: center;
				margin-top: min(16.67vw, 80px);

				li {
					a {
						font-size: var(--txt-14);
						line-height: calc(24/14);
					}
				}
			}
		}

		#footer_pagetop {
			a {
				height: 52px;
				padding: var(--txt-12) 0 min(2.082vw, 10px);

				&::after {
					top: calc(50% - min(3.33vw, 16px) / 2);
					left: calc(50% - min(3.33vw, 16px) / 2);
				}

				span {
					font-size: var(--txt-12);
				}
			}
		}

		.block-footernav-adout {
			width: 100%;
			background: url(../../img/usr/common/footer_about_bg_sp.png)no-repeat center top / cover;
			padding: min(10.42vw, 50px) min(6.25vw, 30px) min(6.25vw, 30px);

			/* .block-footernav-adout-list {
				width:100%;
				display: block;
			}
			*/
			.block-footernav-adout-item {
				&.-adout {
					width: 100%;
					padding: var(--txt-24) min(7.29vw, 35px);

					.footernav-adout-item-heading {
						font-size: var(--txt-20);
						line-height: calc(29/20);
					}

					.c-text {
						font-size: var(--txt-16);
						line-height: calc(24/16);
						margin: min(2.71vw, 13px) 0 var(--txt-19);
					}

					.footernav-adout-btns {
						width: min(73.13vw, 351px);
						gap: min(2.5vw, 10px) min(2.08vw, 12px);

						.btn-layout {
							width: min(35.42vw, 170px);

							.btn-primary {
								font-size: var(--txt-14);
								line-height: calc(20/14);
							}
						}
					}
				}

				&.-magazine {
					width: 100%;
					margin-top: var(--txt-24);

					.footernav-adout-item-heading {
						font-size: var(--txt-32);
						margin-bottom: min(5.42vw, 26px);
					}

					.footernav-adout-magazine-form {
						.block-footer-magazine {
							width: 100%;
							height: min(11.38vw, 52px);
							padding: min(2.08vw, 10px) min(2.08vw, 10px) min(2.08vw, 10px) var(--txt-19);
							font-size: var(--txt-16);
							line-height: calc(24/16);
						}

						.block-footer-magazine--submit {
							height: min(11.38vw, 52px);
							font-size: var(--txt-16);
							/* border-radius: 4px;
							*/
							margin-top: var(--txt-16);
						}
					}
				}
			}
		}

		.block-copyright {
			height: min(4.95vw, 38px);
			font-size: var(--txt-12);
			line-height: calc(34/12);
		}
	}

	/* =========================================================カテゴリ一覧========================================================= */
	.block-thumbnail-t {
		.block-thumbnail-t--items {
			padding: 0 min(5vw, 24px);
			margin-bottom: min(16.67vw, 80px);
			gap: min(8.33vw, 40px) min(4.17vw, 20px) !important;
		}

		.block-thumbnail-t--item {

			/* width: clamp(200px,11.3vw,217px)!important;
			*/
			a {}

			.block-thumbnail-t--goods-image {
				figure .img-center {
					img {
						aspect-ratio: 5/6;
					}

					picture {
						display: block;
						width: 100%;
						height: 100%;
						overflow: hidden;
					}

					.block-thumbnail-favorite {
						aspect-ratio: 36/32;
						width: clamp(28px, 7.5vw, 36px);

						.heart {
							width: 100%;
							height: 100%;
						}
					}
				}
			}

			.block-thumbnail-t--goods-description {
				.block-goods-tag {
					display: flex;
					flex-wrap: wrap;
					gap: min(1.25vw, 6px);
					margin-bottom: min(0.31vw, 6px);

					.goods-tag {
						border: 1px solid var(--color-gray);
						width: fit-content;
						padding: min(0.1vw, 3px) min(0.8vw, 16px) min(0.32vw, 5px) min(0.8vw, 10px);
						font-size: var(--txt-12);
						font-weight: 400;
						line-height: calc(19/12);
					}

					.goods-tag--limitedtime {}

					.goods-tag--sale {}

					.goods-tag--soldout {}
				}

				.block-thumbnail-t--goods-name {
					/*font-family: var(--font-family-serif);
					*/
					font-size: var(--txt-20);
					font-weight: 600;
					line-height: calc(28/20);
					color: var(--color-text);
					margin-bottom: 8px;
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 3;
					overflow: hidden;
				}

				.variation-name {
					display: none;
				}

				.block-thumbnail-t--price-items {
					.block-thumbnail-t--price {
						font-size: var(--txt-16);
						font-weight: 400;
						line-height: calc(24/16);

						&::after {
							font-size: var(--txt-12);
						}
					}
				}
			}

			.revico-star-zone {
				margin-top: min(0.47vw, 9px);
			}
		}
	}

	/* レーティング---- */
	.revico-star-zone {
		.revico-star-block--title {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block--total {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block {
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}

		.revico-star-block--rate {
			width: min(20.42vw, 98px);
		}

		.starability-result {
			width: min(20.42vw, 98px);
			background-size: min(40.83vw, 196px) auto;
		}
	}

	/* バッジ---- */
	.block-icon {
		top: min(-3.33vw, -16px);
		right: min(2.08vw, 10px);
		width: min(12.08vw, 40px);
	}

	/* ページャー---- */
	/* .block-pager {
		max-width: 1216px;
		margin: 0 auto min(18.75vw,90px);
		justify-content: center;
		.block-pager-list-item {
			justify-content: center;
			margin-right: min(8.13vw,39px);
			a {
				font-size: var(--txt-20)!important;
				line-height: calc(23/20);
			}
			.block-pager-list-item--first {
				height: var(--txt-16)!important;
				margin-right: min(5vw,24px);
			}
			.block-pager-list-item--prev {
				width: auto;
				height: var(--txt-16)!important;
				margin-right: min(6.67vw,32px);
			}
			.block-pager-list-item--next {
				height: var(--txt-16)!important;
				margin-right: min(5vw,24px);
			}
			.block-pager-list-item--last {
				height: var(--txt-16)!important;
			}
			/ &:nth-last-child(5),&:nth-last-child(6) {
				display: none!important;
			}
			&:nth-last-child(3) {
				margin-right: min(1.67vw,32px);
			}
			&.current {
				a {
					&::after{
						width: min(8.33vw,40px);
					}
				}
			}
			span {
				&.visually-hidden {
					position: absolute;
					width: 1px;
					height: 1px;
					padding: 0;
					margin: -1px;
					overflow: hidden;
					clip: rect(0,0,0,0);
					white-space: nowrap;
					border: 0;
				}
			}
			&.-ellipsis {
			}
		}
		&.block-goods-list-pager {
		}
	}
	*/
	/* フィルター---- */
	.pane-main div.block-goods-list--params {
		width: max(326px, 67.71vw) !important;

		.block-filter {
			width: min(16.46vw, 79px);

			.block-filter--header {
				padding: min(6.67vw, 32px) 0;

				&::before {
					width: min(7.5vw, 36px) !important;
					height: min(5vw, 24x) !important;
				}
			}
		}

		.block-goods-list--sort-order-items {
			width: min(51.88vw, 249px) !important;

			.block-sort--header {
				h2 {
					font-size: var(--txt-20);

					&::after {
						/* aspect-ratio: 13 / 25;
						*/
						width: min(4.38vw, 21px);
						top: 50%;
						right: min(5.21vw, 25px);
					}
				}
			}
		}

		.block-sort--element {
			width: 66.67vw;
		}
	}

	/* =========================================================カテゴリ一覧ページここまで========================================================= */
}

/* SP----*/
@media screen and (max-width: 480px) {
	div.block-thumbnail-t {
		.block-thumbnail-t--items {
			padding: 0 min(5vw, 24px);
			margin-bottom: min(16.67vw, 80px);
			gap: min(8.33vw, 40px) min(4.17vw, 20px) !important;
		}

		.block-thumbnail-t--item {
			.block-thumbnail-t--goods-image {
				figure {
					picture {
						display: block;
						width: 100%;
						height: 100%;
						overflow: hidden;
					}

					.block-thumbnail-favorite {
						aspect-ratio: 36/32;
						width: clamp(28px, 7.5vw, 36px);

						.heart {
							width: 100%;
							height: 100%;
						}
					}
				}
			}

			.block-thumbnail-t--goods-description {
				.block-goods-tag {
					display: flex;
					flex-wrap: wrap;
					gap: min(1.25vw, 6px);
					margin-bottom: min(0.31vw, 6px);

					.goods-tag {
						border: 1px solid var(--color-gray);
						width: fit-content;
						padding: min(0.1vw, 3px) min(0.8vw, 16px) min(0.32vw, 5px) min(0.8vw, 10px);
						font-size: var(--txt-12);
						font-weight: 400;
						line-height: calc(19/12);
					}
				}

				.block-thumbnail-t--goods-name {
					font-size: var(--txt-16);
					font-weight: 600;
					line-height: calc(28/20);
					color: var(--color-text);
					margin-bottom: 8px;
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 3;
					overflow: hidden;
				}

				.variation-name {
					display: none;
				}

				.block-thumbnail-t--price-items {
					.block-thumbnail-t--price {
						font-size: var(--txt-16);
						font-weight: 400;
						line-height: calc(24/16);

						&::after {
							font-size: var(--txt-12);
						}
					}
				}
			}

			.revico-star-zone {
				margin-top: min(0.47vw, 9px);
			}
		}
	}

	/* レーティング */
	.revico-star-zone {
		.revico-star-block--title {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block--total {
			font-size: var(--txt-12);
			line-height: calc(17/12);
		}

		.revico-star-block {
			display: flex;
			justify-content: flex-start;
			align-items: center;
		}

		.revico-star-block--rate {
			width: min(20.42vw, 98px);
		}

		.starability-result {
			width: min(20.42vw, 98px);
			background-size: min(40.83vw, 196px) auto;
		}
	}

	/* バッジ */
	.block-icon {
		top: min(-3.33vw, -16px);
		right: min(2.08vw, 10px);
		width: min(12.08vw, 40px);
	}

	/* ページャー---- */
	.block-pager {
		max-width: 1216px;
		/* margin: 16.67vw auto min(18.75vw, 90px);
		*/
		justify-content: center;

		.block-pager-list {
			column-gap: 0.63vw;
		}

		.block-pager-list-item {
			justify-content: center;
			/* margin-right: min(8.13vw, 39px);
			*/
			width: 8.33vw;
			height: 8.33vw;

			a {
				font-size: var(--txt-20) !important;
				line-height: calc(23/20);
			}

			/* &.block-pager-list-item--first {
				height: var(--txt-16) !important;
				margin-right: min(5vw, 24px);
			}
			*/
			&.block-pager-list-item--prev {
				/* width: auto;
				height: var(--txt-16) !important;
				margin-right: min(6.67vw, 32px);
				*/
				background-size: 1.3vw;
				width: 10.83vw;
				height: 6.67vw;
			}

			&.block-pager-list-item--next {
				/* height: var(--txt-16) !important;
				margin-right: min(5vw, 24px);
				*/
				background-size: 1.3vw;
				width: 10.83vw;
				height: 6.67vw;
			}

			/* &.block-pager-list-item--last {
				height: var(--txt-16) !important;
			}
			*/
			/* &:nth-last-child(5),&:nth-last-child(6) {
				display: none !important;
			}
			*/
			&:nth-last-child(3) {
				margin-right: min(1.67vw, 32px);
			}

			&.current {
				a {
					&::after {
						width: min(8.33vw, 40px);
					}
				}
			}

			span {
				&.visually-hidden {
					position: absolute;
					width: 1px;
					height: 1px;
					padding: 0;
					margin: -1px;
					overflow: hidden;
					clip: rect(0, 0, 0, 0);
					white-space: nowrap;
					border: 0;
				}
			}
		}
	}

	/* フィルター */
	.block-goods-list--params {
		width: max(326px, 67.71vw) !important;

		.block-filter {
			width: min(16.46vw, 79px);

			.block-filter--header {
				padding: min(6.67vw, 32px) 0;

				&::before {
					width: min(7.5vw, 36px) !important;
					height: min(5vw, 24x) !important;
				}
			}
		}

		.block-goods-list--sort-order-items {
			width: min(51.88vw, 249px) !important;

			.block-sort--header {
				h2 {
					font-size: var(--txt-20);

					&::after {
						width: min(4.38vw, 21px);
						top: 50%;
						right: min(5.21vw, 25px);
					}
				}
			}
		}
	}
}

/* =========================================================フリーページ　※コラム以外 ここから========================================================= */
@media screen and (max-width: 768px) {
	.page-contentspages {
		.block-freepage {
			padding-inline: 8.33vw;

			.block-freepage__nav {
				p {
					display: flex;
					flex-wrap: wrap;
					justify-content: center;
					line-height: 3;
				}

				i {
					padding-inline: 0.5vw 1.5vw;
				}
			}

			figure {
				margin-block: 3.33vw;
				text-align: center;
			}

			img {
				height: auto;
			}

			section {
				margin-top: 16.67vw;
				padding-inline: 0;

				p {
					line-height: 2;
					overflow-wrap: break-word;
				}
			}

			h2 {
				margin-bottom: 6.67vw;
				display: grid;
				grid-template-columns: 5.42vw 1fr;
				gap: 3.13vw;

				&::before {
					width: 5.42vw;
					height: 5vw;
					margin-right: 3.13vw;
				}

				span {
					display: block;
					width: fit-content;

					&:after {
						border-width: 3.5vw 2vw 4vw 0px;
					}
				}
			}

			p+p {
				margin-top: 9.38vw;
			}

			li {
				line-height: 1.8;
			}

			.list-l {
				ul {
					margin-block: 3.33vw;

					li {
						font-size: var(--txt-16);
						color: var(--color-gray);
						font-weight: 500;
						margin-top: 0;
						margin-left: 0;
					}
				}

				li {
					font-size: var(--txt-16);
					font-weight: 600;
				}

				li+li {
					margin-top: 1vw;
				}
			}

			.list-l~p {
				line-height: 1.7;
				margin-top: 3.33vw;
			}

			/* 表 */
			.c-table-wrap {
				-ms-overflow-style: thin;
				scrollbar-width: thin;

				&::-webkit-scrollbar {
					display: thin;
				}
			}

			.c-table.-sp-column th,
			.c-table.-sp-column td {
				display: block;
				width: 100%;
			}

			.c-table__body {
				padding: 4.17vw 7.5vw;
			}

			.c-table__head {
				padding: 4.17vw 6.67vw;
			}

			/* ボタン */
			.block-freepage__btn {
				margin-bottom: 8.33vw;
			}

			.btn-primary {
				max-width: 66.67vw;
				margin-top: 8.33vw;
			}

			/* 余白 */
			.u-mb-l {
				margin-bottom: 8.33vw;
			}

			/* grid 2列 */
			.grid-col2 {
				gap: 3.33vw;
				grid-template-columns: 1fr;
				margin-bottom: 3.33vw;
			}

			/* 特典ページ */
			.tokuten-merit {
				grid-template-columns: 1fr;
			}

			h2:has(span) {
				grid-template-columns: auto;
				gap: 2vw;
			}

			/* プライバシーページ */
			.privacy-flex {
				flex-direction: column;
				align-items: flex-start;
				row-gap: 9vw;
			}

			/* FAQページ */
			&.block-faq {
				padding-inline: 4.17vw;

				section {
					padding-inline: 4.17vw;
				}
			}

			.block-faq-nav {
				p {
					justify-content: flex-start;
					padding: 4.17vw 5vw;
					row-gap: 2vw;

					i {
						padding: 0 0.4em;
					}
				}

				.navfaq {
					margin-bottom: 4.9vw;
				}
			}

			.block-faq-nav+.block-faq-nav {
				margin-top: 8.33vw;
			}

			.c-faq+.c-faq {
				padding-top: 6.67vw;
				margin-top: 6.67vw;
			}

			.c-faq__ques {
				padding-left: 6vw;
				text-indent: -5.5vw;
				margin-left: 0;
				margin-bottom: 3.33vw;
			}

			.c-faq__ques::before {
				width: 5vw;
				padding-right: 1vw;
				text-align: right;
			}

			.c-faq__ans {
				padding-left: 6vw;
				text-indent: -5.5vw;
				margin-left: 0;
			}

			.c-faq__ans::before {
				width: 5vw;
				padding-right: 1vw;
				text-align: right;
			}

			/* /block-freepage */
		}
	}
}

/* =========================================================フリーページ　※コラム以外 ここまで========================================================= */
/* =========================================================買い物かご ここから========================================================= */
@media screen and (max-width: 768px) {
	.cart-sub {
		.pane-main {
			margin-top: 8.33vw;

			h1 {
				margin-bottom: 4.17vw;
			}

			h2,
			.block-order-estimate--dest-title,
			.block-order-estimate--orderer-title,
			.block-order-estimate--regular-cycle-title {
				margin: 16.67vw 0 6.67vw;
			}

			.block-cart--continue-shopping {
				margin-top: 8.33vw;
			}

			/* 左右の余白 */
			.block-cart--body,
			.block-order-method,
			.block-order-estimate {
				padding: 0 4vw;
				margin: 0;
			}

			/* 共通商品名 */
			.block-cart--goods-list-item .block-cart--goods-list-item-name,
			.block-order-method--goods-name,
			.block-order-estimate--goods-name {
				font-size: var(--txt-20);
			}

			/* カートページ */
			.block-cart--procedure-container {
				width: 100% !important;
				padding: 4vw 4vw;
				z-index: 999999;
			}

			.block-cart--procedure-container.block-cart--procedure-container__fixed {
				top: 0;
			}

			.block-cart--order.action-buttons {
				margin-top: 2vw;
			}

			.block-cart--order-button-description {
				text-align: center;
				font-size: var(--txt-16);
			}

			.block-cart--contents {
				border: 0;
				margin-top: 5vw;
			}

			.block-cart--rule {
				padding: 0 2vw 1vw;
				background: none;
				text-align: center;
				margin-bottom: 6.67vw;
			}

			.block-cart--rule-container {
				border: none;
			}

			.block-cart--goods-list li {
				padding: 4vw 3vw;
				border-bottom: none;
			}

			.block-cart--goods-list-item-input-row {
				display: flex;
				gap: 2vw;
				justify-content: flex-end;
			}

			.block-cart--goods-list-item-delete-btn {
				font-size: var(--txt-14);
				height: 4.4rem;
			}

			select {
				width: 100%;
				height: 100%;
				padding: 0;
			}

			.block-cart--goods-list-item-input-cell-right {
				width: 30%;
			}

			.block-cart--procedure-container {
				padding: 4vw 7vw;
				width: 100% !important;
			}

			.block-cart--procedure-container__fixed .action-buttons {
				width: 100%;
			}

			.block-cart--procedure-container__fixed .action {
				padding: 0;
			}

			/* お気に入り登録中の商品 */
			.block-bookmarkslider {
				.block-bookmarklist-content .swiper-bookmarklist .swiper-wrapper {
					padding-left: 5vw;
				}

				h2 {
					font-family: var(--font-family-serif);
					font-size: var(--txt-24);
					font-weight: 600;
				}
			}

			/* 最近見た商品 */
			.block-cart-recent-item--header span {
				font-family: var(--font-family-serif);
				font-size: var(--txt-24);
				font-weight: 600;
			}

			/* methodページ */
			.block-order-method--promotion,
			.block-order-method--point-use,
			.block-order-method--payment-method,
			.block-order-method--coupon {
				padding: 0;
				border-bottom: 0;
			}

			.block-regular-cycle--cycle-type {
				display: block;
			}

			input[type="radio"] {
				margin-bottom: 0;
			}

			.block-order-method--procedure {
				padding: 5vw;
				background: var(--color-pager-current);
			}

			select[name="pointpay_num"] {
				width: 30%;
				margin-right: 2vw;
			}

			/* estimate */
			.block-order-estimate--commit-btn {
				margin: 0 auto;
			}

			.block-order-estimate--return-agree.btn {
				font-size: var(--txt-18);
				color: var(--color-text);
				background: #fff;
				border: 1px solid #121212;
				max-width: 320px;
			}

			div.fieldset-vertical div.form-group.block-order-estimate--mailnews:last-of-type {
				border-bottom: 1px solid #CCCCCC;
			}

			.btn.block-order-estimate--change-btn {
				font-size: var(--txt-16);
				color: var(--color-text);
				background: #fff;
				border: 1px solid #121212;
				max-width: 100px;
				min-width: auto;
				top: 3vw;
				right: 3vw;
			}

			.block-order-estimate--discount-info .block-order-estimate--point .block-order-estimate--change-btn,
			.block-order-estimate--discount-info .block-order-estimate--promotion-code .block-order-estimate--change-btn,
			.block-order-estimate--discount-info .block-order-estimate--coupon .block-order-estimate--change-btn,
			.block-order-estimate--method-pay-content .block-order-estimate--change-btn,
			.block-order-estimate--change-btn {
				top: 3vw;
				right: 3vw;
			}

			.block-order-estimate--regular-cycle-confirmation .btn.block-order-estimate--change-btn {
				top: 0;
			}

			.block-order-estimate--regular-cycle li {
				padding: 0;
			}

			.block-order-estimate--regular-cycle>li>span,
			.block-order-estimate--regular-cycle>li>span:first-of-type {
				padding: 1vw;
			}

			.block-order-estimate--goods-item-regular-info--next-amt-data {
				font-weight: normal;
			}

			.block-order-estimate--pay-input .fieldset-vertical div.form-label {
				background: none;
			}

			/* order 注文完了ページ */
			.block-order-complete {
				padding-inline: 8.33vw;
			}

			.block-order-complete--body,
			.block-order-complete--wrapper {
				padding: 0;
			}

			.block-order-complete--orderid td {
				text-align: left;
			}

			.block-order-complete--home {
				margin: 13.33vw auto min(52px, 16.67vw);
				text-align: center;
			}

			.block-order-complete__list {
				grid-template-columns: 1fr;
				gap: 8.33vw;

				img {
					width: 100%;
					height: auto;
				}

				.block-order-complete__txt {
					font-size: 1.2rem;
				}
			}
		}
	}
}

/* =========================================================買い物かご ここまで========================================================= */
/* =========================================================ブランド一覧ここから========================================================= */
@media screen and (max-width: 768px) {
	.page-brandlist {

		/* .pane-contents {
			margin-top: 8.33vw;
		}
		*/
		h1 {
			padding: 0 0 8.33vw;
		}

		.block-brand-list {
			padding-inline: 4.79vw;
		}

		.block-brand-list--items {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 6.67vw 4.17vw;
		}

		/* .block-brand-list--item:last-child .block-brand-list--item-name {
			margin-top: 5.83vw;
		}
		*/
		.block-brand-list--item-comment {
			-webkit-line-clamp: 4;
		}

		.block-brand-list--caution {
			margin-top: 8.33vw;
		}
	}
}

/* =========================================================ブランド一覧ここまで========================================================= */
/* =========================================================ブランド商品一覧（ブランドTOP）ここから========================================================= */
@media screen and (max-width: 768px) {
	.page-brandtop {

		/* みたままエリア */
		.block-no-code-cms {

			/* 動画MV */
			.block-brandtop__videoarea {
				height: 50vw;
			}

			/* 画像MV */
			.block-no-code-cms--image.sp {
				display: block;
			}

			.block-no-code-cms--image.pc {
				display: none;
			}

			/* 旗 */
			.block-no-code-cms--image.flag {
				margin-top: -10.42vw;

				img {
					width: 15vw;
					height: 15vw;
					margin: 2.92vw;
				}
			}

			h1 {
				margin-block: 8.33vw;
				font-weight: 500;

				span {
					font-size: var(--txt-22);
					display: block;
				}
			}

			h2 {
				margin-block: 0 5vw;
			}

			ul {
				& li {
					padding-left: 7.67vw;
					margin-bottom: 3.54vw;
					font-size: 16px;

					&:after {
						width: 5.67vw;
						height: 5.67vw;
					}
				}
			}

			.block-no-code-cms--two-column {
				display: flex;
				flex-direction: column;
				align-items: center;
				row-gap: 11.46vw;
				padding-inline: 5vw;
			}

			.block-no-code-cms--two-column:first-of-type {
				.block-no-code-cms--image {
					width: auto;

					img {
						height: 47.92vw;
					}
				}
			}

			.block-no-code-cms--two-column:last-of-type {
				margin-top: 12.5vw;
				flex-direction: column-reverse;
				line-height: 1.8;

				.block-no-code-cms--two-column-left-ratio-0 {
					font-size: 16px;
				}
			}

			.block-no-code-cms--text {
				font-size: 16px;
			}

			.block-no-code-cms--text-align-1 {
				padding-inline: 5vw;

				.block-no-code-cms--button {
					padding: 3.65vw;
					margin-top: 13.33vw;
				}
			}
		}

		.block-goods-list--params {
			display: none;
		}

		/* 下部商品エリア */
		.block-top-event:not(.block-top-newitem) {
			div.block-thumbnail-t .block-thumbnail-t--items:not(.swiper-wrapper) {
				background: #fff;
			}

			.block-top-event--goods {
				padding: 0;
			}
		}
	}
}

/* =========================================================ブランド商品一覧（ブランドTOP）ここまで========================================================= */
/* =========================================================マイページ ここから========================================================= */
@media screen and (max-width: 768px) {
	body.page-menu {

		.block-mypage--customer-status,
		.page-menu .block-mypage--subscription,
		.block-mypage--order-status,
		.block-mypage--coupon,
		.block-mypage--favorite,
		.block-mypage--restocking {
			padding: 0 5vw;
			width: 100%;
		}

		.pane-main>div.block-mypage:first-of-type {
			padding-inline: 0;
		}

		.block-mypage--head {
			margin-bottom: 5vw;
		}

		.block-mypage-head {
			padding: 0;

			.text-link {
				padding-left: 6vw;
				font-size: var(--txt-14);
			}
		}

		.block-mypage--logout {
			font-size: var(--txt-14);
		}

		.block-mypage--rank-status-purchase .block-mypage--rank-status-meter-message::after {
			display: none;
		}

		.order-status-item--head {
			height: auto;
			padding: 0;
			margin-bottom: 4vw;
		}

		.order-status-item--dt-wrap {
			justify-content: right;
		}

		/* 下部リンク */
		/* .block-mypage-footermenu {
			margin: 16.67vw auto;
		}
		.block-mypage-footermenu--nav-title {
			border-bottom: 0;
		}
		.block-mypage-footermenu--nav-title:before {
			content: "";
			aspect-ratio: 13 / 25;
			width: min(2.71vw, 13px);
			height: auto;
			background: url(../../img/usr/common/icon_toggle_arrow.svg) no-repeat center center / 100%;
			display: inline-block;
			position: absolute;
			top: 50%;
			transform: translate(-50%, -50%) rotate(180deg);
			transition: all .4s;
			display: none;
		}
		.block-mypage-footermenu--nav-sub-title {
			margin-top: 2vw;
		}
		.block-mypage-footermenu--nav-list {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 0 4vw;
		}
		.block-mypage-footermenu--nav-item {
			padding: 0;
			width: 100%;
			border-bottom: 1px solid #CCCCCC;
		}
		.block-mypage-footermenu--nav .block-mypage-sidemenu--nav-link {
			font-size: var(--txt-18);
			display: block;
			padding: 0 6vw 2vw 0;
			letter-spacing: -0.03em;
			border-bottom: 0;
		}
		.block-mypage--withdrawal-link {
			margin: 0;
			text-align: center;
		}
		*/
		/* サイドメニュー　歯車ボタン */
		.block-mypage-sidemenu--menu-btn {
			padding: 1px 6px;
			border-radius: 50%;
			border: 1px solid #ccc;
			display: none;
		}

		.wrapper:has(.pane-header) .block-mypage-sidemenu.is-open {
			height: 100%;
			top: 0;
			z-index: 99999;
		}

		.block-mypage-sidemenu--nav-item {
			padding: 0;
		}

		.block-mypage-sidemenu--nav-link {
			padding: 4.4vw 12.67vw 4.4vw 4vw;
			display: block;
		}

		.block-mypage-sidemenu--nav {
			padding: 10vw 6.67vw 0;
			overflow: scroll;
		}

		.block-mypage-sidemenu--close-btn-wrap {
			padding: 7.67vw 6.67vw;
		}

		.block-mypage-sidemenu--close-menu-btn {
			padding: 2vw 8vw;
			border-radius: 0;
			font-size: var(--txt-22);
			font-family: var(--font-family-serif);
		}

		/* /body.page-menu */
	}
}

/* =========================================================マイページ ここまで========================================================= */
/* =========================================================マイページ下層 ここから========================================================= */
@media screen and (max-width: 768px) {
	.mypage-sub {
		.pane-main>div:first-of-type {
			padding-inline: 5vw;
		}

		h1 {
			margin: 0;
			padding-inline: 0;
		}

		div.form-group {
			border-top: 0;
		}

		div.form-label,
		.fieldset-vertical div.constraint {
			background: none;
		}

		div.fieldset-vertical div.form-group:last-of-type {
			border-bottom: 0;
		}

		.action-buttons .action+.action {
			margin-top: 4.17vw;
		}

		.action-buttons .action .btn.btn-primary {
			max-width: 250px;
			width: 100%;
			font-size: var(--txt-20);
			padding-block: var(--txt-15) var(--txt-16);
			color: var(--color-text);
			border-color: var(--color-text);
			background: var(--main--background-color);
		}

		.block-regular-purcharse-list--regular-list {
			margin: 4.17vw 0 0;
			padding: 0;
		}

		/* 購入履歴 */
		.block-purchase-history--list {
			margin-top: 8.33vw;
		}

		.block-purchase-history--search-frame {
			background: none;

			.form-group {
				margin: 0;
				padding: 3vw 4vw;
				background: var(--tag-background-color);
			}
		}

		.block-purchase-history-detail {
			.action-buttons .action .btn {
				max-width: 320px;
			}
		}

		[class^="status-progress"] {
			letter-spacing: -0.07em;
		}

		/* クーポンの確認 */
		.block-coupon-list--header,
		.block-coupon-list--list {
			padding-inline: 5vw;
		}

		/* お気に入り */
		.block-favorite .action-buttons .action .btn {
			max-width: 320px;
		}

		.block-favorite--image figure {
			height: 100%;
		}

		/* 入荷案内お知らせ */
		.block-arrival-notice-list--image figure {
			height: 100%;
		}

		.block-favorite--delete-item .btn.btn-danger {
			font-size: 1.4rem;
			margin: 0 0 0 auto;
		}

		/* 会員登録　確認ページ */
		.block-member-info-confirmation--login-state-saving .form-control {
			text-align: center;
		}

		/* 会員情報変更 */
		.legend {
			font-family: var(--font-family-serif);
			font-size: var(--txt-24);
			font-weight: 600;
			border-bottom: 0;
		}

		/* メールアドレスの変更 */
		.block-login--display-password {
			display: block;
		}

		/* 指紋・顔認証などの設定 */
		.block-member-biometric .action {
			text-align: center;
		}

		/* お問い合わせ履歴一覧 */
		.block-inquiry-history--body li {
			border-bottom: 1px solid #ccc;
		}

		.block-inquiry-history--body li:first-child {
			border-top: 1px solid #ccc;
		}

		/* お問い合わせ履歴詳細 */
		.block-inquiry-history-detail>p,
		.block-inquiry-history-detail>div,
		.block-inquiry-history-detail--title>h2,
		.block-inquiry-history-detail--title>p,
		.block-inquiry-history-detail--message {
			margin-inline: 0;
			padding: 0;
		}

		/* 下部リンク */
		.block-mypage-footermenu {
			margin: 16.67vw auto;
		}

		.block-mypage-footermenu--nav-title {
			padding-left: 8vw;
			padding-block: 0;
			border-bottom: 0;
			margin-block: 10vw 0;
		}

		.block-mypage-footermenu--nav-title:before {
			content: "";
			aspect-ratio: 13 / 25;
			width: min(2.71vw, 13px);
			height: auto;
			background: url(../../img/usr/common/icon_toggle_arrow.svg) no-repeat center center / 100%;
			display: inline-block;
			position: absolute;
			top: 50%;
			transform: translate(-50%, -50%) rotate(180deg);
			transition: all .4s;
			display: none;
		}

		.block-mypage-footermenu--nav-title:after {
			width: 7vw;
			height: 7vw;
			background-size: contain;
		}

		.block-mypage-footermenu--nav-sub-title {
			margin-top: 2vw;
		}

		.block-mypage-footermenu--nav-list {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 0 4vw;
		}

		.block-mypage-footermenu--nav-item {
			padding: 0;
			width: 100%;
			border-bottom: 1px solid #CCCCCC;
		}

		.block-mypage-footermenu--nav .block-mypage-sidemenu--nav-link {
			font-size: var(--txt-18);
			display: block;
			padding: 0 6vw 2vw 0;
			letter-spacing: -0.03em;
			border-bottom: 0;
		}

		.block-mypage--withdrawal-link {
			margin: 0;
			text-align: center;
		}
	}
}

/* =========================================================マイページ下層 ここまで========================================================= */
/* =========================================================ログインページ ここから========================================================= */
@media screen and (max-width: 768px) {
	.page-login {
		.pane-main {
			.block-login--member-body {
				padding: 0;
				border: none;
			}

			.block-login--display-password {
				text-align: center;
			}

			.block-login--first-time-body {
				padding: 0;
				border: none;
			}

			.block-login--member-message,
			.block-login--amazon .block-cart--amazonpay-description,
			.block-login--first-time-message {
				text-align: left;
				font-size: var(--txt-16);
			}

			.block-login--ask-password {
				a {
					font-size: var(--txt-16);
				}
			}

			/* /.pane-main */
		}
	}
}

/* =========================================================ログインページ ここまで========================================================= */
/* =========================================================退会ページ ここから========================================================= */
@media screen and (max-width: 768px) {
	.page-withdrawal {
		.action-buttons .action .btn.block-withdrawal--forward {
			margin-top: 4.17vw;
		}

		.block-login--display-password {
			text-align: center;
		}
	}
}

/* =========================================================退会ページ ここまで========================================================= */
/* =========================================================
トピック一覧（お知らせ一覧/詳細） ここから
========================================================= */
@media screen and (max-width: 768px) {

	.page-topicdetaillist,
	.page-topic {
		.pane-main>div:first-of-type {
			padding-inline: 5vw;
		}

		.pane-main {
			h1 {
				margin: 0 0 40px;
				padding-inline: 0;
			}

			.block-topic--items {
				border-top: 0;
			}

			ul.block-topic--items>li+li {
				padding-top: 5vw;
			}

			ul.block-topic--items>li dt {
				font-size: var(--txt-18);
				margin: 0 0 1.67vw;
				width: 100%;
			}

			ul.block-topic--items>li dd {
				font-size: var(--txt-18);
			}

			.block-icon-image-double-small {
				display: none;
			}

			.block-pager {
				display: none;
			}

			.block-topic-page--article-body {
				margin: 0;
			}
		}
	}
}

/* =========================================================
トピック一覧（お知らせ一覧） ここまで
========================================================= */

/* =========================================================
イベントページ ここから
========================================================= */
@media screen and (max-width: 768px) {
	body.page-event {
		.pane-main {
			padding-inline: 5vw;
		}
	}
}

/* =========================================================
イベントページ ここまで
========================================================= */


/* =========================================================
1279px~770px全体調整 ここから
========================================================= */
@media screen and (min-width:770px) and (max-width:1279px) {

	/* TOPページ */
	.block-top-category,
	.block-top-newitem,
	.block-top-topic,
	.block-top-brand__inner,
	.block-bottom-bnr,
	.block-top-campaign {
		padding-inline: 20px;
	}

	.block-tama-original {
		.block-tama-original__slider {
			max-width: 95vw;
		}
	}

	.block-top-event:has(.block-top-ranking) {
		.block-top-event--goods {
			padding-inline: 40px 20px;
		}
	}

	.block-bottom-bnr__list {
		img {
			height: auto;
		}
	}

	/* 商品詳細 */
	.page-goods .block-goods-detail {
		padding-inline: 20px;
	}

	.block-goods-qty-point {
		flex-wrap: wrap;
	}

	.block-goods-feature {
		ul {
			grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
		}
	}

	#block_of_itemhistory {
		.block-thumbnail-t--items:not(.swiper-wrapper) {
			padding-inline: 20px;
		}
	}

	/* 検索ページ */
	.block-search {
		& .block-search__layout {
			padding-inline: 20px;
		}

		& .block-search__title {
			text-align: center;
		}

		.block-search__queryRow .block-search__submit {
			display: none;
		}

		.block-search__openSubmit {
			display: none;
		}

		.block-search-closeBtn {
			display: none;
		}
	}

	/* マイページ配下 */
	.mypage-sub {
		.pane-main>div {
			padding-inline: 20px;
		}
	}
}

/* =========================================================
1279px~770px全体調整 ここまで
========================================================= */