@charset "utf-8";
/* 雑貨 */

:where(.lp-daichi) {
	--lp-bg: #eaf7ff;
	--deli-border: #47b4dd;
	--deli-title: #1180c6;
	--lead-text: #303f89;
	--reccom-bg: #92e0f4;
	--reccom-title: #3d6887;
	--reccom-list-bg: #fffff7;
	--push-title: #bf3604;
	--point-bg: #ff9c00;
	--point-reserve: #ca3400;
	--point-reserve-bg: #fffe8e;

	--minM15maxM8: clamp(-0.938rem, -1.373rem + 1.46vw, -0.5rem);
	--minM14maxM16: clamp(-1rem, -1.124rem + 0.42vw, -0.875rem);
	--minM12max0: clamp(-0.75rem, -1.497rem + 2.49vw, 0rem);
	--minM12max15: clamp(-0.75rem, -2.43rem + 5.61vw, 0.938rem);
	--minM10maxM4: clamp(-0.625rem, -0.998rem + 1.25vw, -0.25rem);
	--minM7maxM5: clamp(-0.438rem, -0.562rem + 0.42vw, -0.313rem);
	--minM7max10: clamp(-0.438rem, -1.496rem + 3.53vw, 0.625rem);
	--minM2max0: clamp(-0.125rem, -0.249rem + 0.42vw, 0rem);
	--min0max4: clamp(0rem, -0.249rem + 0.83vw, 0.25rem);
	--min0max6: clamp(0rem, -0.373rem + 1.25vw, 0.375rem);
	--min0max7: clamp(0rem, -0.436rem + 1.46vw, 0.438rem);
	--min0max10: clamp(0rem, -0.622rem + 2.08vw, 0.625rem);
	--min0max30: clamp(0rem, -1.867rem + 6.24vw, 1.875rem);
	--min1max12: clamp(0.063rem, -0.622rem + 2.29vw, 0.75rem);
	--min2max3: clamp(0.125rem, 0.063rem + 0.21vw, 0.188rem);
	--min3max5: clamp(0.188rem, 0.063rem + 0.42vw, 0.313rem);
	--min5max7: clamp(0.313rem, 0.188rem + 0.42vw, 0.438rem);
	--min5max10: clamp(0.313rem, 0.001rem + 1.04vw, 0.625rem);
	--min5max15: clamp(0.313rem, -0.31rem + 2.08vw, 0.938rem);
	--min6max8: clamp(0.375rem, 0.251rem + 0.42vw, 0.5rem);
	--min7max10: clamp(0.438rem, 0.251rem + 0.62vw, 0.625rem);
	--min8max20: clamp(0.5rem, -0.247rem + 2.49vw, 1.25rem);
	--min8max25: clamp(0.5rem, -0.558rem + 3.53vw, 1.563rem);
	--min9max11: clamp(0.563rem, 0.438rem + 0.42vw, 0.688rem);
	--min10max12: clamp(0.625rem, 0.501rem + 0.42vw, 0.75rem);
	--min10max15: clamp(0.625rem, 0.314rem + 1.04vw, 0.938rem);
	--min10max18: clamp(0.625rem, 0.127rem + 1.66vw, 1.125rem);
	--min10max30: clamp(0.625rem, -0.62rem + 4.16vw, 1.875rem);
	--min10max38: clamp(0.625rem, -1.118rem + 5.82vw, 2.375rem);
	--min12max15: clamp(0.75rem, 0.563rem + 0.62vw, 0.938rem);
	--min12max17: clamp(0.75rem, 0.438rem + 1.04vw, 1.063rem);
	--min12max20: clamp(0.75rem, 0.25rem + 1.67vw, 1.25rem);
	--min14max21: clamp(0.875rem, 0.438rem + 1.46vw, 1.313rem);
	--min14max23: clamp(0.875rem, 0.313rem + 1.88vw, 1.438rem);
	--min15max20: clamp(0.938rem, 0.626rem + 1.04vw, 1.25rem);
	--min15max24: clamp(0.938rem, 0.377rem + 1.87vw, 1.5rem);
	--min15max30: clamp(0.938rem, 0.004rem + 3.12vw, 1.875rem);
	--min16max18: clamp(1rem, 0.875rem + 0.42vw, 1.125rem);
	--min16max24: clamp(1rem, 0.502rem + 1.66vw, 1.5rem);
	--min16max25: clamp(1rem, 0.44rem + 1.87vw, 1.563rem);
	--min16max40: clamp(1rem, -0.494rem + 4.99vw, 2.5rem);
	--min17max30: clamp(1.063rem, 0.253rem + 2.7vw, 1.875rem);
	--min18max20: clamp(1.125rem, 1rem + 0.42vw, 1.25rem);
	--min18max21: clamp(1.125rem, 0.938rem + 0.62vw, 1.313rem);
	--min18max22: clamp(1.125rem, 0.876rem + 0.83vw, 1.375rem);
	--min18max24: clamp(1.125rem, 0.752rem + 1.25vw, 1.5rem);
	--min18max30: clamp(1.125rem, 0.378rem + 2.49vw, 1.875rem);
	--min19max22: clamp(1.188rem, 1.001rem + 0.62vw, 1.375rem);
	--min19max24: clamp(1.188rem, 0.876rem + 1.04vw, 1.5rem);
	--min20max26: clamp(1.25rem, 0.877rem + 1.25vw, 1.625rem);
	--min20max50: clamp(1.25rem, -0.617rem + 6.24vw, 3.125rem);
	--min23max28: clamp(1.438rem, 1.126rem + 1.04vw, 1.75rem);
	--min23max32: clamp(1.438rem, 0.877rem + 1.87vw, 2rem);
	--min25max30: clamp(1.563rem, 1.25rem + 1.04vw, 1.875rem);
	--min25max35: clamp(1.563rem, 0.938rem + 2.08vw, 2.188rem);
	--min25max40: clamp(1.563rem, 0.629rem + 3.12vw, 2.5rem);
	--min30max40: clamp(1.875rem, 1.253rem + 2.08vw, 2.5rem);
	--min32max46: clamp(2rem, 1.129rem + 2.91vw, 2.875rem);
	--min60max75: clamp(3.125rem, 2.005rem + 3.74vw, 4.25rem);
	--min50max75: clamp(3.125rem, 1.569rem + 5.2vw, 4.688rem);
	--min50max98: clamp(3.125rem, 0.137rem + 9.98vw, 6.125rem);
	--min90max115: clamp(5.625rem, 4.069rem + 5.2vw, 7.188rem);
	--min90max175: clamp(5.625rem, 0.335rem + 17.67vw, 10.938rem);
	--min90max180: clamp(5.625rem, 0.023rem + 18.71vw, 11.25rem);
	--min110max195: clamp(6.875rem, 1.585rem + 17.67vw, 12.188rem);
	--min242max435: clamp(15.125rem, 3.113rem + 40.12vw, 27.188rem);
	--min340max960: clamp(21.25rem, -17.339rem + 128.9vw, 60rem);
	--min344max838: clamp(21.5rem, -9.247rem + 102.7vw, 52.375rem);
	--min360max840: clamp(22.5rem, -7.375rem + 99.79vw, 52.5rem);

	--point-gap: 2px;

}

.js-item-sales {
	--cart-indent: 26px;
}

.lp-daichi {
	background: var(--lp-bg);
}
.lp-daichi :is(.text.-border,.text.-push) {
	font-family: var(--font-gothic);
}

.deli-sec {
	width: min(640px,100%);
	margin-inline: auto;
	padding-inline: 10px;
	padding-block: var(--min15max20) var(--min15max30);
	box-sizing: border-box;
	border: var(--min2max3) solid var(--deli-border);
	background-color: #fff;
	text-align: center;
}
.deli-sec dt {
	color: var(--deli-title);
	font-size: var(--min18max22);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.deli-sec dt::before,
.deli-sec dt::after {
	content: "";
	display: block;
	height: 1px;
	width: 30px;
	background-color: var(--deli-title);
}
.deli-sec dd {
	font-size: var(--min20max26);
	margin-top: 7px;
}
.deli-sec dd .num {
	font-size: 67%;
	border: solid 1px;
	border-radius: 20px;
	padding-block: 6px;
	padding-inline: 8px;
	margin-right: var(--min10max15);
	line-height: 1;
	transform: translateY(-3px);
  display: inline-block;
}
.deli-sec dd .note {
	font-size: 70%;
}
.deli-sec dd .num:nth-of-type(2) {
	margin-left: var(--min0max30);
}
.deli-sec dd + dt {
	margin-top: var(--min10max15);
}

.lead-area {
	font-family: var(--font-minchou);
	padding-block: var(--min30max40);
	padding-inline: 15px;
}
.lead-area .text {
	font-size: var(--min19max24);
	color: var(--lead-text);
	letter-spacing: 0.175rem;
	text-align: center;
	line-height: 1.75;
}

.lead-area + .contents-area {
	padding-top: 0;
}

.contents-area {
	position: relative;
	z-index: 0;
	overflow: hidden;
	background-size: var(--min340max960);
}
.contents-area .catch {
	font-family: var(--font-minchou);
	font-size: var(--min23max32);
	line-height: 1.2;
}
.contents-area .grid .catch {
	font-size: var(--min23max28);
}
.block-grid.-col2.-item .specwrap:has(.-reccom) {
	padding: 0;
}
.block-grid.-col2.-item .specwrap:has(.-reccom) .cv-btn:not(:has(.point)) {
	padding-inline: var(--min10max13);
	padding-top: var(--min10max13);
}
.block-grid.-reccom {
	grid-template-columns: auto 1fr;
	background-color: var(--reccom-bg);
	font-family: var(--font-minchou);
	align-items: center;
}
.block-grid.-reccom .title {
	color: var(--reccom-title);
	font-size: var(--min16max24);
	white-space: nowrap;
	width: var(--min90max180);
	box-sizing: border-box;
	display: grid;
	height: 100%;
	place-content: center;
	padding-inline: 10px;
	position: relative;
	line-height: 1.2;
	background-repeat: no-repeat;
	background-image: var(--reccom-title-bg);
	background-position: 100% 0px,0px 100%;
	background-size: var(--min50max75);
}

.block-grid.-reccom.-M .title {
	width: var(--min90max115);
	background-position: calc(-1*var(--min16max40)) var(--min0max6), calc(-1*var(--minM12max15)) calc(100% + var(--min10max12));
}
.block-grid.-reccom .title::after {
	content: "";
	display: block;
	width: var(--min32max46);
	aspect-ratio: 44/37;
	-webkit-mask: url(/external/category/image/common/icon/reccom_finger.svg) no-repeat center / contain;
	mask: url(/external/category/image/common/icon/reccom_finger.svg) no-repeat center / contain;
	background-color: var(--reccom-title);
	margin-inline: auto;
}
.block-grid.-reccom .title .str {
	margin-top: var(--min5max15);
}
.reccom-list {
	background-color: var(--reccom-list-bg);
	font-size: var(--min18max24);
	line-height: 1.2;
	padding-inline: 15px;
	padding-block: var(--min10max20);
	box-sizing: border-box;
	height: 100%;
	padding-inline: var(--min17max30);
	padding-block: var(--min10max30);
	border-block: var(--min3max5) solid var(--reccom-bg);
}
.reccom-list.-M {
	padding-inline: 20px 10px;
}
.reccom-list li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--min7max10);
}
.reccom-list li::before {
	content: "";
	display: block;
	width: var(--min18max30);
	background: url(/external/category/image/common/icon/check_red.png) no-repeat center top / contain;
	margin-top: -2px;
}
.reccom-list li + li {
	margin-top: var(--min8max20);
}

.block-grid.-col1 * + .specwrap > .detail {
		width: min(var(--min360max840), 100%);
		margin-inline: auto;
}
.block-grid.-col1 * + .specwrap > .detail + .cv-btn {
	padding-top: var(--min10max20);
}
.block-grid.-col2.-item .specwrap {
	padding-top: var(--min15max30);
}
.block-grid.-push {
	column-gap: var(--min20max50);
}
.block-grid.-push > .push-sec {
	padding-top: 10px;
}
.push-sec .title {
	display: flex;
	font-size: var(--min19max22);
	color: var(--push-title);
	justify-content: flex-start;
	text-align: left;
	padding: 0;
}
.push-sec .texts + .image {
	margin-top: var(--min15max30);
}
.block-grid[class*="item"] .specwrap .title + .text {
		margin-top: var(--min5max10);
}

.block-grid[class*="item"] .specwrap:has( > .dialog-opener:only-child) {
	margin-top: var(--min25max40);
}

.point-unit {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	margin-left: auto;
	justify-content: right;
	line-height: .9;
	align-items: stretch;
}
.point-unit:not(.-L) {
	flex-wrap: wrap;
}
.point-unit .balloon {
	padding-block: 5px 2px;
	padding-inline: 10px;
	color: var(--point-bg);
	border: 2.5px solid var(--point-bg);
	position: relative;
	text-align: center;
	white-space: nowrap;
	display: grid;
	place-content: center;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 10px;
}
.point-unit.-L .balloon {
	margin-right: 10px;
	margin-bottom: 0;
	width: auto;
}
:is(.block-grid.-col1:has(.-reserve), .point-unit.-saleOff) .balloon {
	width: auto;
}
.point-unit .balloon::before,
.point-unit .balloon::after {
	content: "";
	display: inline-block;
	position: absolute;
	left: calc(42% - var(--min6max8));
	width: var(--min12max15);
	height: fit-content;
	aspect-ratio: 15/13;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	top: var(--minM2max0);
	margin-block: auto;
}
.point-unit:has(.reserve:only-child) .balloon::before,
.point-unit:has(.reserve:only-child) .balloon::after {
	left: 50%;
}
.point-unit .balloon::before {
	background-color: var(--point-bg);
	bottom: -37px;
}
.point-unit .balloon::after {
	background-color: #fff;
	bottom: -29px;
}
.point-unit.-L .balloon::before,
.point-unit.-L .balloon::after {
	left: calc(45% - 7px);
	bottom: 0;
}
:is(.block-grid.-col1, .point-unit.-saleOff) .balloon::before,
:is(.block-grid.-col1, .point-unit.-saleOff) .balloon::after {
	transform: rotate(30deg) translate(1px,1px);
	left: auto;
}
:is(.block-grid.-col1, .point-unit.-saleOff) .balloon::before {
	right: calc(-1*var(--min9max11));
}
:is(.block-grid.-col1, .point-unit.-saleOff) .balloon::after {
	right:calc(-1*var(--min5max7));
}
.point-unit .balloon .text.-off {
	margin: 0;
	font-weight: bold;
	font-size: var(--min16max18);
}
.point-unit .balloon .text.-off .pt {
	font-size: calc(var(--min16max18) - 3px);
	margin-left: var(--point-gap);
}
.block-grid.-col1 .point-unit .balloon + .pointwrap {
	margin-top: 0;
}
.point-unit.-reserve .balloon + .pointwrap {
	margin-top: 10px;
}
.point-unit .pointwrap {
	width: 100%;
	font-size: var(--min18max20);
	display: grid;
	grid-template-columns: 42% 1fr;
	justify-content: flex-end;
}
.point-unit .pointwrap:has(:only-child) {
	grid-template-columns: 1fr;
	justify-content: flex-end;
}
.point-unit .sum,
.cv-btn .js-item-sales.-cart6 .item-summary .info .point {
	background: var(--point-color);
	color: #fff;
	font-size: var(--min18max20);
	font-weight: bold;
	text-align: right;
	padding-block: 5px 2px;
	padding-inline: 8px;
	box-sizing: border-box;
	line-height: 1;
	height: 100%;
}
.cv-btn .js-item-sales.-cart6 .item-summary .info .point {
	margin-top: 0;
}
.block-grid.-item.-col1 .point-unit.-L .pointwrap {
	margin-top: 0;
	width: min(430px, 100%);
}
.point-unit .sum::before {
	content: "合計";
	display: inline-block;
	font-size: var(--min12max15);
	font-weight: 100;
	transform: translateY(-1px);
	margin-right: var(--point-gap);
}
.point-unit .sum::after {
	content: "ポイント";
	display: inline-block;
}
.point-unit .sum::after,
.cv-btn .js-item-sales.-cart6 .item-summary .info .point .unit {
	font-size: var(--min12max15);
	font-weight: 100;
	margin-left: var(--point-gap);
}
.point-unit :is(.reserve,.set,.saleSetPoint) {
	background: var(--point-reserve-bg);
	color: var(--point-reserve);
	font-weight: bold;
	text-align: right;
	padding-block: 5px 2px;
	padding-inline: 8px;
	box-sizing: border-box;
	line-height: 1;
}
.point-unit .reserve:only-child {
	margin-left: auto;
	background: var(--point-bg);
	width: 100%;
	color: #fff;
	text-align: center;
}
.point-unit :is(.reserve,.set,.saleSetPoint)::before {
	display: inline-block;
	font-size: var(--min12max15);
	font-weight: 100;
	margin-right: var(--point-gap);
	transform:translateY(-1px);
}
.point-unit .reserve::before {
	content: "うち予約特典";
}
.point-unit .reserve:only-child::before {
	content: none;
}
.point-unit .set::before {
	content: "うちセット特典";
}
.point-unit .saleSetPoint::before {
	content: "うちセット特典ポイント";
}
.point-unit :is(.reserve,.set)::after {
	content: "ポイント";
	display: inline-block;
	font-size: var(--min12max15);
	font-weight: 100;
	margin-left: var(--point-gap);
}
.block-grid.-item .block-grid.-intro + .point-unit {
	margin-top: var(--min25max30);
}
.block-grid[class*="item"] .specwrap.-kodawari .cartwrap {
	padding-bottom: var(--min10max13);
}

/* どこでもカート */
.block-grid[class*="item"] .text.-push + .cv-btn:has(.point) {
	margin-top: 7px;
}
.cv-btn:has(.point-unit) .js-item-sales.-cart6 .item-summary .info .point {
	display: none;
}
.cv-btn .js-item-sales.-cart6 .item-summary .info .brand-name {
	grid-template-columns: auto 1fr;
	order: 2;
	width: 100%;
	font-size: var(--min18max24);
	line-height: 1.2;
	font-family: var(--font-minchou);
	column-gap: 6px;
}
.cv-btn .js-item-sales.-cart6 .item-summary .info .brand-name::before {
	margin-top: var(--min0max4);
	width: var(--min18max21);
}
.cv-btn .js-item-sales.-cart6 .item-summary .info:has(.point) .brand-name {
	margin-top: 5px;
}
.cv-btn .js-item-sales.-cart6 .item-summary .info .point {
	order: 1;
	margin-left: auto;
}
.cv-btn .js-item-sales.-cart6 .item-summary .info .point::before,
.cv-btn .js-item-sales.-cart6 .item-summary .info .point::after {
	content: none;
}
.block-grid[class*="item"] .specwrap:has(.js-item-sales:empty) :is(.text.-push,.cv-btn:has(.js-item-sales:empty)) {
	display: none;
}

@media (max-width: 479px) {

	:root {
		--h-gMenu: 50px;
	}

	.lp-daichi .text.-lead {
		text-align: left;
	}

	.lead-sec .text {
		text-align: left;
	}
	
	.deli-sec dd .num:nth-of-type(2) {
		margin-top: 10px;
	}

	.point-unit.-L .balloon {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}
	.point-unit.-L .balloon::before,
	.point-unit.-L .balloon::after {
		left: calc(42% - 6px);
		right: auto;
		transform: none;
	}
	.point-unit.-L .balloon::before {
		bottom: -36px;
	}
	.point-unit.-L .balloon::after {
		bottom: -29px;
	}

	.block-grid[class*="item"] + .block-grid.-col1 {
		padding-top: 0;
	}
}