@charset "UTF-8";

@font-face {
	font-family: "SoDoSans";
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/SoDoSans/SoDoSans-Regular.woff") format("woff2");
}

@font-face {
	font-family: "SoDoSans SemiBold";
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/SoDoSans/SoDoSans-SemiBold.woff") format("woff");
}

@font-face {
	font-family: "SoDoSans";
	font-style: normal;
	font-weight: 700;
	src: url("/common/fonts/SoDoSans/SoDoSans-Bold.woff") format("woff2");
}

@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/Noto_Sans_JP/NotoSansJP-Regular.otf") format("woff2");
}

@font-face {
	font-family: 'LanderGrande';
	font-style: normal;
	font-weight: 500;
	src: url("/common/fonts/Lander/LanderGrande-SemiBold.woff") format("woff")
}

@font-face {
	font-family: 'LanderGrande Book';
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/Lander/LanderGrande-Book.woff") format("woff")
}

@font-face {
	font-family: 'LanderGrande';
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/Lander/LanderGrande-Regular.woff") format("woff")
}


@font-face {
	font-family: 'LanderGrande';
	font-style: normal;
	font-weight: 700;
	src: url("/common/fonts/Lander/LanderGrande-Black.woff") format("woff")
}


* {
	box-sizing: border-box;
}

@media screen and (max-width: 1023px) {
	* {
		box-sizing: content-box;
	}

	img {
		max-width: none;
	}
}

:root {
	--color-main: #e9546b;
	--color-sub: #c95178;
	--color-btn: #ffffff;
	--color-white: #ffffff;
}


.mod-en {
	font-family: "SoDoSans SemiBold";
}

.title-en {
	font-family: "LanderGrande";
}

@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700&display=swap');

.mincho {
	font-family: 'Shippori Mincho', serif;
	font-weight: 500;
}

.mainContents {
	overflow-x: hidden;
	overflow-x: clip;
}

.mainContents img {
	width: 100%;
}

h2,
h3 {
	margin: 0;
}

p {
	margin: 0;
	letter-spacing: 0;
}

a {
	opacity: 1;
	transition: all 0.3s ease;
}

a:hover {
	opacity: 0.8;
	transition: all 0.3s ease;
}

.block_inner {
	width: 100%;
	height: 100%;
	position: relative;
}

.btn {
	width: calc(265 / 1440 * 100vw);
	height: calc(63 / 1440 * 100vw);
	background-color: var(--color-white);
	border: calc(2/1440*100vw) solid var(--color-white);
	color: var(--color-main);
	font-size: calc(24 / 1440 * 100vw);
	font-weight: 500;
	line-height: calc(32 / 24);
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: calc(36 / 1440 * 100vw);
	margin: calc(13 / 1440 * 100vw) 0 0;
}

.btn._b {
	background-color: var(--color-sub);
	color: var(--color-white);
	border: calc(2/1440*100vw) solid var(--color-sub);
}

.btn._w {
	width: calc(400 / 1440 * 100vw);
	background-color: transparent;
	color: var(--color-main);
	border: calc(2/1440*100vw) solid var(--color-main);
}

._detail {
	position: absolute;
	color: var(--color-main);
	font-size: calc(23 / 1440 * 100vw);
	font-weight: 500;
	font-feature-settings: "palt";
	border-bottom: solid 1px;
	padding-bottom: 1rem;
}

.item-wrap {
	position: absolute;
}

.item-ttl {
	font-size: calc(35.2 / 1440 * 100vw);
	font-weight: 500;
	color: var(--color-main);
	line-height: calc(40 / 32);
	margin: calc(21 / 1440 * 100vw) 0;
	font-feature-settings: "palt";
}

.item-txt {
	font-size: calc(23 / 1440 * 100vw);
	font-weight: 500;
	color: var(--color-main);
	line-height: calc(44 / 23);
	letter-spacing: 0.1rem;
	font-feature-settings: "palt";
}

.item-price_wrap {
	display: flex;
	align-items: center;
	gap: calc(32 / 1440 * 100vw);
}

.item-price_note {
	font-size: calc(20 / 1440 * 100vw);
	border: solid 1px;
	line-height: 1;
	padding: calc(3 / 1440 * 100vw) calc(14 / 1440 * 100vw);
	font-feature-settings: "palt";
	border-radius: calc(4 / 1440 * 100vw);
}

.item-price {
	font-size: calc(31.2 / 1440 * 100vw);
	font-weight: 500;
	color: var(--color-main);
	font-family: "SoDoSans";
}

.item-price span {
	font-size: calc(32/1440*100vw);
	font-weight: 600;
	color: var(--color-main);
}

.item-detail {
	font-size: calc(24/1440*100vw);
	line-height: calc(32/24);
	color: var(--color-main);
	font-weight: 500;
}

.item-note {
	font-size: calc(20/1440*100vw);
	line-height: calc(28/20);
	color: var(--color-main);
	font-weight: 500;
	margin-top: calc(10/1440*100vw);
}

.block_ttl {
	font-weight: 500;
	color: var(--color-main);
	font-size: calc(96 / 1440 * 100vw);
	position: absolute;
	letter-spacing: 1.7rem;
	line-height: 1.1;
	text-align: center;
}

.block_ttl span {
	font-size: calc(52 / 1440 * 100vw);
	letter-spacing: 1rem;
}

.sub_ttl {
	font-weight: 500;
	color: var(--color-main);
	font-size: calc(44 / 1440 * 100vw);
	position: absolute;
	letter-spacing: 1.7rem;
	line-height: 1;
}

.item-link {
	position: absolute;
	display: inline-block;
	cursor: pointer;
	/* background: rgba(0, 0, 0, 0.5) */
}

@media screen and (max-width: 1023px) {
	.btn {
		width: calc(280 / 375 * 100vw);
		height: calc(50 / 375 * 100vw);
		border: calc(1/375*100vw) solid var(--color-main);
		font-size: calc(16 / 375 * 100vw);
		font-weight: 500;
		border-radius: calc(26 / 375 * 100vw);
	}

	.btn._b {
		border: calc(1/375*100vw) solid var(--color-sub);
	}

	.btn._w {
		width: calc(240 / 375 * 100vw);
		height: calc(38 / 375 * 100vw);
		font-size: calc(14 / 375 * 100vw);
		border: calc(1/375*100vw) solid var(--color-main);
	}

	._detail {
		font-size: calc(14 / 375 * 100vw);
		padding-bottom: 0.6rem;
	}

	.item-ttl {
		font-size: calc(22/375*100vw);
		font-weight: 500;
	}

	.item-txt {
		font-size: calc(13 / 375 * 100vw);
	}

	.item-price {
		font-size: calc(20/375*100vw);
		font-weight: 500;
	}

	.item-price_s {
		font-size: calc(16/375*100vw);
		font-weight: 400;
		margin-bottom: calc(0/375*100vw);
	}

	.item-price span {
		font-size: calc(18/375*100vw);
		font-weight: 600;
	}

	.item-detail {
		font-size: calc(14/375*100vw);
		font-weight: 500;
	}

	.item-detail_s {
		font-size: calc(12/375*100vw);
		font-weight: 500;
	}

	.item-price_wrap {
		gap: calc(16 / 375 * 100vw);
	}

	.item-price_note {
		font-size: calc(13 / 375 * 100vw);
		padding: calc(1 / 375 * 100vw) calc(5 / 375 * 100vw);
		border-radius: calc(3 / 375 * 100vw);
	}

	.item-note {
		font-size: calc(13/375*100vw);
		font-weight: 500;
		margin-top: calc(0/375*100vw);
	}

	.block_ttl {
		font-size: calc(60 / 375 * 100vw);
		letter-spacing: 1rem;
		line-height: 1.1;
	}

	.block_ttl span {
		font-size: calc(33 / 375 * 100vw);
		letter-spacing: 0.6rem;
	}

	.sub_ttl {
		font-weight: 500;
		color: var(--color-main);
		font-size: calc(44 / 1440 * 100vw);
		letter-spacing: 1.7rem;
		line-height: 1;
	}
}


@media print,
screen and (min-width: 1024px) {
	.is-pc {
		display: block;
	}

	.is-sp {
		display: none;
	}
}

@media screen and (max-width: 1023px) {
	.is-pc {
		display: none;
	}

	.is-sp {
		display: block;
	}
}

/* ----------------------------------------------------------
bg
---------------------------------------------------------- */
._bg {
	width: 100%;
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

@media print,
screen and (min-width: 1024px) {
	.bg_01 {
		height: calc(904.5/1440*100vw);
		background-image: url(../images/bg_01.jpg);
	}

	.bg_02 {
		height: calc(3429/1440*100vw);
		background-image: url(../images/bg_02.webp);
	}

	.bg_03 {
		height: calc(2038/1440*100vw);
		background-image: url(../images/bg_03.jpg);
	}

	.bg_04 {
		height: calc(1467/1440*100vw);
		background-image: url(../images/bg_04.webp);
	}

	.bg_05 {
		height: calc(2034/1440*100vw);
		background-image: url(../images/bg_05.webp);
	}

	.bg_06 {
		height: calc(2704/1440*100vw);
		background-image: url(../images/bg_06.webp);
	}

	.bg_07 {
		height: calc(1500/1440*100vw);
		background-image: url(../images/bg_07.webp);
	}

	.bg_08 {
		height: calc(3033/1440*100vw);
		background-image: url(../images/bg_08.webp);
	}
}

@media screen and (max-width: 1023px) {
	.bg_01 {
		height: calc(1694/750*100vw);
		background-image: url(../images/sp/bg_01.jpg);
	}

	.bg_02 {
		height: calc(5694/750*100vw);
		background-image: url(../images/sp/bg_02.webp);
	}

	.bg_03 {
		height: calc(3163/750*100vw);
		background-image: url(../images/sp/bg_03.jpg);
	}

	.bg_04 {
		height: calc(2846 / 750 * 100vw);
		background-image: url(../images/sp/bg_04.webp);
	}

	.bg_05 {
		height: calc(3368 / 750 * 100vw);
		background-image: url(../images/sp/bg_05.webp);
	}

	.bg_06 {
		height: calc(4577/750*100vw);
		background-image: url(../images/sp/bg_06.webp);
	}

	.bg_07 {
		height: calc(2300/750*100vw);
		background-image: url(../images/sp/bg_07.webp);
	}

	.bg_08 {
		height: calc(4752/750*100vw);
		background-image: url(../images/sp/bg_08.webp);
	}
}


/* ----------------------------------------------------------
kv
---------------------------------------------------------- */
.kv_title {
	position: absolute;
	top: calc(90 / 1440 * 100vw);
	left: calc(638 / 1440 * 100vw);
}

.kv_title img {
	width: calc(149 / 1440 * 100vw);
}

.kv_item-name {
	position: absolute;
}

.kv_item-name a {
	font-size: calc(22/1440*100vw);
	font-weight: 300;
	color: var(--color-white);
	line-height: calc(32/22);
}

.kv_item-name._01 {
	top: calc(50 / 1440 * 100vw);
	right: calc(32 / 1440 * 100vw);
}

.kv_item-name._02 {
	top: calc(618 / 1440 * 100vw);
	left: calc(33 / 1440 * 100vw);
}

.kv_item-link {
	position: absolute;
	display: inline-block;
	cursor: pointer;
}

.kv_item-link._01 {
	width: calc(367 / 1440 * 100vw);
	height: calc(587 / 1440 * 100vw);
	top: calc(81 / 1440 * 100vw);
	left: calc(155 / 1440 * 100vw);
}

.kv_item-link._02 {
	width: calc(637 / 1440 * 100vw);
	height: calc(653 / 1440 * 100vw);
	top: calc(62 / 1440 * 100vw);
	right: calc(10 / 1440 * 100vw);
}


@media screen and (max-width: 1023px) {
	.kv_title {
		top: calc(24 / 375 * 100vw);
		left: calc(286 / 375 * 100vw);
	}

	.kv_title img {
		width: calc(68 / 375 * 100vw);
	}

	.kv_item-name a {
		font-size: calc(10 / 375 * 100vw);
		font-weight: 500;
	}

	.kv_item-name._01 {
		top: calc(316 / 375 * 100vw);
		right: calc(16 / 375 * 100vw);
	}

	.kv_item-name._02 {
		top: calc(675 / 375 * 100vw);
		left: calc(28 / 375 * 100vw);
	}

	.kv_item-link._01 {
		width: calc(179 / 375 * 100vw);
		height: calc(299 / 375 * 100vw);
		top: calc(352 / 375 * 100vw);
		right: calc(123 / 375 * 100vw);

	}

	.kv_item-link._02 {
		width: calc(302 / 375 * 100vw);
		height: calc(295 / 375 * 100vw);
		top: calc(33 / 375 * 100vw);
		left: calc(46 / 375 * 100vw);
	}
}

/* ----------------------------------------------------------
sakura
---------------------------------------------------------- */

.block-sakura {
	.item-wrap {
		&._01 {
			top: calc(456 / 1440 * 100vw);
			left: calc(410 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(124 / 375 * 100vw);
				left: calc(77 / 375 * 100vw);
			}

			.lead {
				.lead-txt {
					color: var(--color-white);
					writing-mode: vertical-rl;
					text-orientation: mixed;
					font-size: calc(29 / 1440 * 100vw);
					font-weight: 500;
					letter-spacing: 0.15rem;
					line-height: calc(53 / 29);

					.upright {
						text-orientation: upright;
					}

					@media screen and (max-width: 1023px) {
						font-size: calc(14 / 375 * 100vw);
					}
				}
			}

			.lead2 {
				position: absolute;
				top: calc(944 / 1440 * 100vw);
				left: calc(-178 / 1440 * 100vw);
				width: max-content;
				text-align: center;

				@media screen and (max-width: 1023px) {
					top: calc(788 / 375 * 100vw);
					left: calc(-59 / 375 * 100vw);
				}

				.item-txt {
					color: var(--color-main);
					font-size: calc(29 / 1440 * 100vw);
					font-weight: 500;
					position: relative;

					@media screen and (max-width: 1023px) {
						font-size: calc(15 / 375 * 100vw);
					}

					&._01::after,
					&._02::after {
						content: '×';
						position: absolute;
						bottom: calc(-116 / 1440 * 100vw);
						left: 50%;
						transform: translateX(-50%);
						font-size: calc(67 / 1440 * 100vw);
						color: var(--color-main);
						font-weight: 300;

						@media screen and (max-width: 1023px) {
							bottom: calc(-58 / 375 * 100vw);
							font-size: calc(36 / 375 * 100vw);
						}
					}

					&._02,
					&._03 {
						margin: calc(118 / 1440 * 100vw) 0 0;

						@media screen and (max-width: 1023px) {
							margin: calc(57 / 375 * 100vw) 0 0;
						}
					}

					&._04 {
						color: var(--color-white);
						font-size: calc(19 / 1440 * 100vw);
						top: calc(-236 / 1440 * 100vw);
						left: calc(878 / 1440 * 100vw);

						@media screen and (max-width: 1023px) {
							color: var(--color-white);
							font-size: calc(9 / 375 * 100vw);
							top: calc(174 / 375 * 100vw);
							left: calc(212 / 375 * 100vw);
						}
					}
				}
			}
		}

		&._02 {
			position: absolute;
			top: calc(2361 / 1440 * 100vw);
			left: calc(137 / 1440 * 100vw);
			text-align: center;

			@media screen and (max-width: 1023px) {
				top: calc(1583 / 375 * 100vw);
				left: calc(47 / 375 * 100vw);
			}

			.item-ttl {
				color: var(--color-white);
				font-size: calc(50 / 1440 * 100vw);
				font-weight: 300;
				letter-spacing: 0.25rem;

				@media screen and (max-width: 1023px) {
					font-size: calc(29 / 375 * 100vw);
					letter-spacing: 0.2rem;
				}
			}

			.item-txt {
				color: var(--color-white);
				margin: calc(21 / 1440 * 100vw) 0 0;
				letter-spacing: 0.25rem;

				@media screen and (max-width: 1023px) {
					font-size: calc(13 / 375 * 100vw);
					margin: calc(19 / 375 * 100vw) 0 0;
				}
			}

			.item-txt2 {
				font-size: calc(23 / 1440 * 100vw);
				font-weight: 500;
				color: var(--color-white);
				margin: calc(75 / 1440 * 100vw) 0 0;
				letter-spacing: 0.1rem;

				@media screen and (max-width: 1023px) {
					position: absolute;
					top: calc(489 / 375 * 100vw);
					left: calc(12 / 375 * 100vw);
					font-size: calc(13 / 375 * 100vw);
				}
			}

			.item {
				position: absolute;
				top: calc(-92 / 1440 * 100vw);
				left: calc(817 / 1440 * 100vw);
				width: max-content;
				text-align: left;

				@media screen and (max-width: 1023px) {
					top: calc(154 / 375 * 100vw);
					left: calc(146 / 375 * 100vw);

				}

				.item-ttl {
					font-size: calc(34 / 1440 * 100vw);
					font-weight: 500;

					@media screen and (max-width: 1023px) {
						font-size: calc(20 / 375 * 100vw);
					}
				}

				.item-txt {
					margin: calc(4 / 1440 * 100vw) 0 0;
					font-size: calc(25 / 1440 * 100vw);

					@media screen and (max-width: 1023px) {
						font-size: calc(16 / 375 * 100vw);
					}
				}

				.item-price {
					font-size: calc(44 / 1440 * 100vw);
					color: var(--color-white);
					font-family: 'Noto Sans JP';

					@media screen and (max-width: 1023px) {
						font-size: calc(30 / 375 * 100vw);
						font-weight: 300;
					}
				}
			}

			.item2 {
				position: absolute;
				top: calc(129 / 1440 * 100vw);
				left: calc(628 / 1440 * 100vw);
				width: max-content;
				text-align: right;

				@media screen and (max-width: 1023px) {
					top: calc(303 / 375 * 100vw);
					left: calc(-10 / 375 * 100vw);
					text-align: left;
				}

				.item-ttl {
					font-size: calc(34 / 1440 * 100vw);
					font-weight: 500;

					@media screen and (max-width: 1023px) {
						font-size: calc(20 / 375 * 100vw);
						line-height: 1.5;
					}
				}

				.item-txt {
					margin: calc(4 / 1440 * 100vw) 0 0;
					font-size: calc(25 / 1440 * 100vw);

					@media screen and (max-width: 1023px) {
						font-size: calc(16 / 375 * 100vw);
					}
				}

				.item-price {
					font-size: calc(44 / 1440 * 100vw);
					color: var(--color-white);
					font-family: 'Noto Sans JP';

					@media screen and (max-width: 1023px) {
						font-size: calc(30 / 375 * 100vw);
						font-weight: 300;

					}
				}
			}
		}

		&._03 {
			top: calc(3031 / 1440 * 100vw);
			left: calc(747 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(2557 / 375 * 100vw);
				left: calc(89 / 375 * 100vw);
			}

			.item-note {
				margin-top: 0;
				font-feature-settings: "palt";

				@media screen and (max-width: 1023px) {
					padding-left: calc(3 / 375 * 100vw);
				}
			}

			.item-price_note {
				color: var(--color-main);
			}

			.btn {
				width: calc(400 / 1440 * 100vw);
				height: calc(86 / 1440 * 100vw);
				margin: calc(29 / 1440 * 100vw) 0 0;
				border-radius: calc(42 / 1440 * 100vw);
				font-size: calc(26 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(245 / 375 * 100vw);
					height: calc(52 / 375 * 100vw);
					margin: calc(18 / 375 * 100vw) 0 0;
					border-radius: calc(26 / 375 * 100vw);
					transform: translate(calc(-24 / 375 * 100vw), 0px);
					font-size: calc(16 / 375 * 100vw);
				}
			}
		}


		.item-link {
			position: absolute;

			&._01 {
				width: calc(392 / 1440 * 100vw);
				height: calc(718 / 1440 * 100vw);
				top: calc(881 / 1440 * 100vw);
				left: calc(310 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(219 / 375 * 100vw);
					height: calc(450 / 375 * 100vw);
					top: calc(725 / 375 * 100vw);
					left: calc(77 / 375 * 100vw);
				}
			}

			&._02 {
				width: calc(240 / 1440 * 100vw);
				height: calc(422 / 1440 * 100vw);
				top: calc(-53 / 1440 * 100vw);
				left: calc(-421 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(161 / 375 * 100vw);
					height: calc(292 / 375 * 100vw);
					top: calc(-303 / 375 * 100vw);
					left: calc(18 / 375 * 100vw);

				}
			}

		}

		.item-ttl {
			margin: calc(27 / 1440 * 100vw) 0 calc(6 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {}
		}
	}

	.btn._w {
		position: absolute;
		top: calc(2249 / 1440 * 100vw);
		left: calc(512 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {}
	}

	.btn {
		@media screen and (max-width: 1023px) {
			border: calc(1 / 375 * 100vw) solid var(--color-white);
		}
	}
}

/* ----------------------------------------------------------
latte
---------------------------------------------------------- */

.block-latte {
	.item-wrap {
		&._01 {
			.lead2 {
				position: absolute;
				top: calc(700 / 1440 * 100vw);
				left: calc(162 / 1440 * 100vw);
				width: max-content;
				text-align: center;

				@media screen and (max-width: 1023px) {
					top: calc(888 / 375 * 100vw);
					left: calc(46 / 375 * 100vw);
					display: flex;
					gap: calc(66 / 375 * 100vw);
					align-items: center;
				}

				.item-txt {
					font-size: calc(31 / 1440 * 100vw);
					font-weight: 500;
					position: relative;
					line-height: 1.6;
					color: var(--color-white);

					&._01 {
						@media screen and (max-width: 1023px) {
							font-size: calc(15 / 375 * 100vw);
							font-weight: 400;
							line-height: 1.7;
						}
					}

					&._01::after {
						content: '×';
						position: absolute;
						bottom: calc(-116 / 1440 * 100vw);
						left: 50%;
						transform: translateX(-50%);
						font-size: calc(67 / 1440 * 100vw);
						color: var(--color-white);
						font-weight: 300;

						@media screen and (max-width: 1023px) {
							position: absolute;
							transform: none;
							margin: 0 calc(5 / 375 * 100vw);
							top: calc(-4 / 375 * 100vw);
							right: calc(-123 / 375 * 100vw);
							font-size: calc(34 / 375 * 100vw);
						}
					}

					&._02 {
						margin: calc(118 / 1440 * 100vw) 0 0;

						@media screen and (max-width: 1023px) {
							margin: 0;
							font-size: calc(15 / 375 * 100vw);
							font-weight: 400;
							line-height: 1.7;
						}
					}

					@media screen and (max-width: 1023px) {
						font-size: calc(14 / 375 * 100vw);
						line-height: 1.4;
					}
				}
			}
		}

		&._02 {
			top: calc(1255 / 1440 * 100vw);
			left: calc(816 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(1278 / 375 * 100vw);
				left: calc(81 / 375 * 100vw);
			}

			.item-ttl,
			.item-price,
			.item-price_note,
			.item-note {
				color: var(--color-white);
			}

			.item-note {
				@media screen and (max-width: 1023px) {
					font-size: calc(12 / 375 * 100vw);
					transform: translate(calc(-36 / 375 * 100vw), 0px);
					font-weight: 300;
				}
			}

			.-s {
				font-size: calc(6 / 375 * 100vw);
				padding-left: calc(6 / 375 * 100vw);

				@media screen and (max-width: 1023px) {
					font-size: calc(15 / 375 * 100vw);
					padding-left: calc(8 / 375 * 100vw);
				}
			}

			.btn {
				width: calc(400 / 1440 * 100vw);
				height: calc(86 / 1440 * 100vw);
				margin: calc(18 / 1440 * 100vw) 0 0;
				border-radius: calc(42 / 1440 * 100vw);
				font-size: calc(26 / 1440 * 100vw);
				font-size: calc(26 / 1440 * 100vw);


				@media screen and (max-width: 1023px) {
					width: calc(245 / 375 * 100vw);
					height: calc(52 / 375 * 100vw);
					margin: calc(14 / 375 * 100vw) 0 0;
					border-radius: calc(26 / 375 * 100vw);
					transform: translate(calc(-18 / 375 * 100vw), 0px);
					border: calc(1 / 375 * 100vw) solid var(--color-white);
					font-size: calc(16 / 375 * 100vw);
				}
			}
		}


		.item-link {
			position: absolute;

			&._01 {
				width: calc(800 / 1440 * 100vw);
				height: calc(730 / 1440 * 100vw);
				top: calc(380 / 1440 * 100vw);
				left: calc(570 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(350 / 375 * 100vw);
					height: calc(355 / 375 * 100vw);
					top: calc(423 / 375 * 100vw);
					left: calc(26 / 375 * 100vw);
				}
			}

			&._02 {
				width: calc(540 / 1440 * 100vw);
				height: calc(370 / 1440 * 100vw);
				top: calc(15 / 1440 * 100vw);
				left: calc(-635 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(290 / 375 * 100vw);
					height: calc(213 / 375 * 100vw);
					top: calc(-239 / 375 * 100vw);
					left: calc(-38 / 375 * 100vw);
				}
			}

		}

		.item-ttl {
			margin: calc(27 / 1440 * 100vw) 0 calc(6 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				margin: calc(6 / 375 * 100vw) 0 calc(5 / 375 * 100vw);
			}
		}
	}
}

/* ----------------------------------------------------------
soda
---------------------------------------------------------- */

.block-soda {
	.item-wrap {
		&._01 {
			top: calc(385 / 1440 * 100vw);
			left: calc(746 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(790 / 375 * 100vw);
				left: calc(26 / 375 * 100vw);
			}

			.item-txt {
				font-size: calc(23 / 1440 * 100vw);
				color: var(--color-sub);
				line-height: calc(44 / 23);
				letter-spacing: 0.43rem;
				font-feature-settings: "palt";

				@media screen and (max-width: 1023px) {
					font-size: calc(15 / 375 * 100vw);
					text-align: center;
					letter-spacing: 0.2rem;
					line-height: 1.7;
				}
			}

			.item-price_wrap {
				@media screen and (max-width: 1023px) {
					margin: calc(3 / 375 * 100vw) 0 0;
					transform: translate(calc(63 / 375 * 100vw), 0px);
				}
			}

			.item-ttl,
			.item-price,
			.item-price_note,
			.item-note {
				color: var(--color-sub);
			}

			.btn {
				width: calc(400 / 1440 * 100vw);
				height: calc(86 / 1440 * 100vw);
				margin: calc(26 / 1440 * 100vw) 0 0;
				border-radius: calc(42 / 1440 * 100vw);
				color: var(--color-sub);
				font-size: calc(26 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(245 / 375 * 100vw);
					height: calc(52 / 375 * 100vw);
					margin: calc(14 / 375 * 100vw) 0 0;
					border-radius: calc(26 / 375 * 100vw);
					transform: translate(calc(38 / 375 * 100vw), calc(6 / 375 * 100vw));
					border: calc(1 / 375 * 100vw) solid var(--color-white);
					font-size: calc(16 / 375 * 100vw);
				}
			}
		}


		.item-link {
			position: absolute;

			&._01 {
				width: calc(345 / 1440 * 100vw);
				height: calc(520 / 1440 * 100vw);
				top: calc(-200 / 1440 * 100vw);
				left: calc(-540 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(206 / 375 * 100vw);
					height: calc(295 / 375 * 100vw);
					top: calc(-368 / 375 * 100vw);
					left: calc(58 / 375 * 100vw);
				}
			}

		}

		.item-ttl {
			margin: calc(27 / 1440 * 100vw) 0 calc(6 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				margin: calc(27 / 375 * 100vw) 0 0;
				transform: translate(calc(63 / 375 * 100vw), 0px);
			}
		}

		.item-note {
			font-feature-settings: "palt";

			@media screen and (max-width: 1023px) {
				transform: translate(calc(63 / 375 * 100vw), 0px);
				margin-top: calc(10 / 375 * 100vw);
			}
		}
	}

	.btn._w {
		position: absolute;
		top: calc(962 / 1440 * 100vw);
		left: calc(515 / 1440 * 100vw);
		color: var(--color-sub);
		border: calc(2 / 1440 * 100vw) solid var(--color-sub);

		@media screen and (max-width: 1023px) {
			top: calc(1153 / 375 * 100vw);
			left: calc(68 / 375 * 100vw);
		}
	}

	._detail {
		top: calc(1082 / 1440 * 100vw);
		left: calc(521 / 1440 * 100vw);
		color: var(--color-sub);

		@media screen and (max-width: 1023px) {
			top: calc(1223 / 375 * 100vw);
			left: calc(68 / 375 * 100vw);
		}

	}
}

/* ----------------------------------------------------------
food
---------------------------------------------------------- */

.block-food {
	.block_ttl {
		top: calc(215 / 1440 * 100vw);
		left: calc(553 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {
			top: calc(100 / 375 * 100vw);
			left: calc(88 / 375 * 100vw);
		}
	}

	.item-wrap {
		&._01 {
			top: calc(569 / 1440 * 100vw);
			left: calc(246 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(627 / 375 * 100vw);
				left: calc(72 / 375 * 100vw);
			}

			.item {
				text-align: right;

				@media screen and (max-width: 1023px) {
					text-align: center;
				}

				.btn {
					margin: calc(13 / 1440 * 100vw) 0 0 auto;

					@media screen and (max-width: 1023px) {
						margin: calc(6 / 375 * 100vw) auto 0;
					}
				}
			}
		}

		&._02 {
			top: calc(1078 / 1440 * 100vw);
			left: calc(740 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(1247 / 375 * 100vw);
				left: calc(78 / 375 * 100vw);
			}
		}

		.item-link {
			position: absolute;

			&._01 {
				width: calc(470 / 1440 * 100vw);
				height: calc(350 / 1440 * 100vw);
				top: calc(0 / 1440 * 100vw);
				left: calc(470 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(291 / 375 * 100vw);
					height: calc(210 / 375 * 100vw);
					top: calc(-247 / 375 * 100vw);
					left: calc(-30 / 375 * 100vw);
				}
			}

			&._02 {
				width: calc(320 / 1440 * 100vw);
				height: calc(390 / 1440 * 100vw);
				top: calc(-20 / 1440 * 100vw);
				left: calc(-410 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(183 / 375 * 100vw);
					height: calc(245 / 375 * 100vw);
					top: calc(-267 / 375 * 100vw);
					left: calc(20 / 375 * 100vw);
				}
			}
		}

		.item {
			@media screen and (max-width: 1023px) {
				text-align: center;
			}
		}

		.item-ttl {
			margin: calc(27 / 1440 * 100vw) 0 calc(6 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				margin: calc(16 / 375 * 100vw) 0 calc(4 / 375 * 100vw);
			}
		}

		.item-txt {
			@media screen and (max-width: 1023px) {
				line-height: 2.7rem;
				letter-spacing: 0;
				font-size: calc(15 / 375 * 100vw);
			}
		}
	}

	.btn {
		@media screen and (max-width: 1023px) {
			width: calc(163 / 375 * 100vw);
			height: calc(38 / 375 * 100vw);
			margin: calc(6 / 375 * 100vw) auto 0;
			border: calc(1 / 375 * 100vw) solid var(--color-white);
			font-size: calc(15 / 375 * 100vw);
		}
	}

	.btn._w {
		position: absolute;
		top: calc(1524 / 1440 * 100vw);
		left: calc(515 / 1440 * 100vw);


		@media screen and (max-width: 1023px) {
			top: calc(1510 / 375 * 100vw);
			left: calc(63 / 375 * 100vw);
			width: calc(246 / 375 * 100vw);
			border: calc(1 / 375 * 100vw) solid var(--color-main);
		}
	}

	._detail {
		top: calc(1646 / 1440 * 100vw);
		left: calc(521 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {
			top: calc(1586 / 375 * 100vw);
			left: calc(68 / 375 * 100vw);
		}
	}
}

/* ----------------------------------------------------------
goods
---------------------------------------------------------- */

.block-goods {
	.block_ttl {
		top: calc(115 / 1440 * 100vw);
		left: calc(511 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {
			top: calc(165 / 375 * 100vw);
			left: calc(61 / 374 * 100vw);
		}
	}

	.item-wrap {
		&._01 {
			top: calc(620 / 1440 * 100vw);
			left: calc(618 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(788 / 375 * 100vw);
				left: calc(56 / 374 * 100vw);
			}
		}

		&._02 {
			top: calc(1191 / 1440 * 100vw);
			left: calc(388 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(1412 / 375 * 100vw);
				left: calc(44 / 374 * 100vw);
			}

			.item {
				text-align: right;

				@media screen and (max-width: 1023px) {
					text-align: center;
				}

				.btn {
					margin: calc(13 / 1440 * 100vw) 0 0 auto;

					@media screen and (max-width: 1023px) {
						margin: calc(6 / 375 * 100vw) auto 0;
					}
				}
			}
		}

		&._03 {
			top: calc(1772 / 1440 * 100vw);
			left: calc(763 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(1914 / 375 * 100vw);
				left: calc(32 / 374 * 100vw);
			}
		}

		.item-link {
			position: absolute;

			&._01 {
				width: calc(121 / 1440 * 100vw);
				height: calc(425 / 1440 * 100vw);
				top: calc(-20 / 1440 * 100vw);
				left: calc(-235 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(75 / 375 * 100vw);
					height: calc(265 / 375 * 100vw);
					top: calc(-288 / 375 * 100vw);
					left: calc(94 / 375 * 100vw);
				}
			}

			&._02 {
				width: calc(165 / 1440 * 100vw);
				height: calc(425 / 1440 * 100vw);
				top: calc(-20 / 1440 * 100vw);
				left: calc(500 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(103 / 375 * 100vw);
					height: calc(268 / 375 * 100vw);
					top: calc(-290 / 375 * 100vw);
					left: calc(96 / 375 * 100vw);
				}
			}

			&._03 {
				width: calc(275 / 1440 * 100vw);
				height: calc(262 / 1440 * 100vw);
				top: calc(37 / 1440 * 100vw);
				left: calc(-545 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(180 / 375 * 100vw);
					height: calc(174 / 375 * 100vw);
					top: calc(-198 / 375 * 100vw);
					left: calc(14 / 375 * 100vw);
				}
			}
		}

		.item {
			@media screen and (max-width: 1023px) {
				text-align: center;
			}
		}

		.item-txt {
			@media screen and (max-width: 1023px) {
				line-height: 2.7rem;
				letter-spacing: 0;
				font-size: calc(15 / 375 * 100vw);
			}
		}

		.item-ttl {
			margin: calc(11 / 1440 * 100vw) 0;

			@media screen and (max-width: 1023px) {
				margin: calc(16 / 375 * 100vw) 0 calc(4 / 375 * 100vw);
			}
		}
	}

	.btn {
		@media screen and (max-width: 1023px) {
			width: calc(163 / 375 * 100vw);
			height: calc(38 / 375 * 100vw);
			margin: calc(6 / 375 * 100vw) auto 0;
			border: calc(1 / 375 * 100vw) solid var(--color-white);
			font-size: calc(15 / 375 * 100vw);
		}
	}

	.btn._w {
		position: absolute;
		top: calc(2249 / 1440 * 100vw);
		left: calc(515 / 1440 * 100vw);
		color: var(--color-white);
		border: calc(2 / 1440 * 100vw) solid var(--color-white);

		@media screen and (max-width: 1023px) {
			top: calc(2170 / 375 * 100vw);
			left: calc(64 / 375 * 100vw);
			width: calc(246 / 375 * 100vw);
		}
	}
}

/* ----------------------------------------------------------
coffee
---------------------------------------------------------- */

.block-coffee {
	.block_ttl {
		top: calc(120 / 1440 * 100vw);
		left: calc(504 / 1440 * 100vw);
		letter-spacing: 1.2rem;

		@media screen and (max-width: 1023px) {
			top: calc(188 / 375 * 100vw);
			left: calc(58 / 375 * 100vw);
			letter-spacing: 0.75rem;
		}
	}

	.item-wrap {
		&._01 {
			top: calc(504 / 1440 * 100vw);
			left: calc(632 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(800 / 375 * 100vw);
				left: calc(37 / 375 * 100vw);
			}
		}
	}

	.item-link {
		position: absolute;

		&._01 {
			width: calc(220 / 1440 * 100vw);
			height: calc(470 / 1440 * 100vw);
			top: calc(-55 / 1440 * 100vw);
			left: calc(-339 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				width: calc(132 / 375 * 100vw);
				height: calc(291 / 375 * 100vw);
				top: calc(-337 / 375 * 100vw);
				left: calc(84 / 375 * 100vw);
			}
		}
	}

	.item {
		@media screen and (max-width: 1023px) {
			text-align: center;
		}
	}

	.item-ttl {
		@media screen and (max-width: 1023px) {
			margin: calc(13 / 375 * 100vw) 0 calc(9 / 375 * 100vw);
		}
	}

	.item-txt {
		@media screen and (max-width: 1023px) {
			font-size: calc(14 / 375 * 100vw);
		}
	}

	.btn {
		@media screen and (max-width: 1023px) {
			width: calc(163 / 375 * 100vw);
			height: calc(38 / 375 * 100vw);
			margin: calc(10 / 375 * 100vw) auto 0;
			border: calc(1 / 375 * 100vw) solid var(--color-white);
			font-size: calc(15 / 375 * 100vw);
		}
	}

	.btn._w {
		position: absolute;
		top: calc(958 / 1440 * 100vw);
		left: calc(515 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {
			top: calc(1058 / 375 * 100vw);
			left: calc(64 / 375 * 100vw);
			width: calc(246 / 375 * 100vw);
			border: calc(1 / 375 * 100vw) solid var(--color-main);

		}
	}
}

/* ----------------------------------------------------------
gift
---------------------------------------------------------- */

.block-gift {
	.block_ttl {
		top: calc(0 / 1440 * 100vw);
		left: calc(581 / 1440 * 100vw);

		@media screen and (max-width: 1023px) {
			top: calc(195 / 375 * 100vw);
			left: calc(105 / 375 * 100vw);
		}
	}

	.item-link {
		position: absolute;

		&._01 {
			width: calc(446 / 1440 * 100vw);
			height: calc(280 / 1440 * 100vw);
			top: calc(17 / 1440 * 100vw);
			left: calc(-520 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				width: calc(280 / 375 * 100vw);
				height: calc(177 / 375 * 100vw);
				top: calc(-220 / 375 * 100vw);
				left: calc(0 / 375 * 100vw);
			}
		}

		&._02 {
			width: calc(285 / 1440 * 100vw);
			height: calc(282 / 1440 * 100vw);
			top: calc(-362 / 1440 * 100vw);
			left: calc(-180 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				width: calc(175 / 375 * 100vw);
				height: calc(176 / 375 * 100vw);
				top: calc(-167 / 375 * 100vw);
				left: calc(-83 / 375 * 100vw);
			}
		}
	}

	.item-wrap {
		&._01 {
			top: calc(615 / 1440 * 100vw);
			left: calc(750 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(844 / 375 * 100vw);
				left: calc(52 / 375 * 100vw);
			}

			.sub_ttl {
				letter-spacing: 0.75rem;
				top: calc(-138 / 1440 * 100vw);
				left: calc(-275 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(-327 / 375 * 100vw);
					left: calc(44 / 375 * 100vw);
					font-size: calc(27 / 375 * 100vw);
					letter-spacing: 0.5rem;
					text-align: center;
					line-height: 1.2;
				}
			}

			.item-ttl {
				margin: calc(21 / 1440 * 100vw) 0 calc(6 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					text-align: center;
				}
			}

			.item-txt {
				font-size: calc(20 / 1440 * 100vw);
				font-weight: 500;
				color: var(--color-white);
				line-height: calc(34 / 20);
				letter-spacing: 0.05rem;
				font-feature-settings: "palt";

				@media screen and (max-width: 1023px) {
					font-size: calc(12.5 / 375 * 100vw);
				}
			}

			.btn {
				margin: calc(42 / 1440 * 100vw) 0 0;

				@media screen and (max-width: 1023px) {
					width: calc(165 / 375 * 100vw);
					height: calc(38 / 375 * 100vw);
					margin: calc(5 / 375 * 100vw) auto 0;
					border: calc(1 / 375 * 100vw) solid var(--color-white);
					font-size: calc(15 / 375 * 100vw);
				}
			}

			.btn._w1 {
				position: absolute;
				top: calc(370 / 1440 * 100vw);
				left: calc(-269 / 1440 * 100vw);
				width: calc(434 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(192 / 375 * 100vw);
					left: calc(4 / 375 * 100vw);
					width: calc(270 / 375 * 100vw);
					border: calc(1 / 375 * 100vw) solid var(--color-main);
					font-size: calc(14 / 375 * 100vw);
				}
			}
		}

		&._02 {
			top: calc(1615 / 1440 * 100vw);
			left: calc(750 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(1313 / 375 * 100vw);
				left: calc(170 / 375 * 100vw);
			}

			.sub_ttl {
				letter-spacing: 0.75rem;
				top: calc(-344 / 1440 * 100vw);
				left: calc(-393 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(-152 / 375 * 100vw);
					left: calc(-130 / 375 * 100vw);
					font-size: calc(27 / 375 * 100vw);
					letter-spacing: 0.5rem;
					text-align: center;
					line-height: 1.2;
					width: max-content;
				}
			}

			.img1 {
				position: absolute;
				width: calc(480 / 1440 * 100vw);
				top: calc(-184 / 1440 * 100vw);
				left: calc(-510 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(300 / 375 * 100vw);
				}
			}

			.img2 {
				position: relative;
				width: calc(527 / 1440 * 100vw);
				top: calc(-198 / 1440 * 100vw);
				left: calc(-45 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					width: calc(330 / 375 * 100vw);
					top: calc(178 / 375 * 100vw);
					left: calc(-148 / 375 * 100vw);
				}
			}

			.btn._w2 {
				position: absolute;
				top: calc(227 / 1440 * 100vw);
				left: calc(-302 / 1440 * 100vw);
				width: calc(528 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(426 / 375 * 100vw);
					left: calc(-146 / 375 * 100vw);
					width: calc(325 / 375 * 100vw);
				}
			}
		}

		&._03 {
			top: calc(2615 / 1440 * 100vw);
			left: calc(750 / 1440 * 100vw);

			@media screen and (max-width: 1023px) {
				top: calc(2105 / 375 * 100vw);
				left: calc(183 / 375 * 100vw);
			}

			.sub_ttl {
				letter-spacing: 0.75rem;
				top: calc(-524 / 1440 * 100vw);
				left: calc(-103 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(-246 / 375 * 100vw);
					left: calc(-37 / 375 * 100vw);
					font-size: calc(27 / 375 * 100vw);
					letter-spacing: 0.5rem;
					text-align: center;
					line-height: 1.2;
					width: max-content;
				}
			}

			.btn._w3 {
				position: absolute;
				top: calc(27 / 1440 * 100vw);
				left: calc(-253 / 1440 * 100vw);
				width: calc(430 / 1440 * 100vw);

				@media screen and (max-width: 1023px) {
					top: calc(59 / 375 * 100vw);
					left: calc(-132 / 375 * 100vw);
					width: calc(270 / 375 * 100vw);
				}
			}
		}
	}
}