@charset 'utf-8';

/* common
------------------------------------------------ */
#container { padding-top: 0; }
.hd-announcement { display: none; }
#contents { padding: 0; }

.lazy { transition: ease-out 0.6s; transform: translateY(40px); opacity: 0; }
.lazy-done { transform: translate(0); opacity: 1; }

@media screen and (max-width: 768px) {
	.lazy { transform: translateY(30px); }
	.lazy-done { transform: translateY(0); }
}

/* visual
------------------------------------------------ */
.lp-visual { position: relative; width: 100%; height: 100vh; overflow: hidden; }
.lp-visual-copy { position: absolute; bottom: 80px; left: 0; width: 100%; text-align: center; text-shadow: 2px 2px 0 rgba(255,255,255,1); font-size: 5.76vw; letter-spacing: 0.1em; line-height: 1.33333333333; color: #E46300; z-index: 2; }
.lp-visual-image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.lp-visual-image img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.lp-visual-scroll { position: absolute; bottom: 32px; left: 50%; margin-left: -600px; width: 1px; height: 145px; background-color: #fff; z-index: 3; }
.lp-visual-scroll span { position: absolute; top: 0; left: 50%; animation: lpVisualScroll 2.2s linear infinite; margin-left: -6px; width: 12px; height: 12px; background-color: #E46300; border-radius: 50%; }

.lp-visual.lazy { transform: none; opacity: 1; }
.lp-visual.lazy .lp-visual-copy,
.lp-visual.lazy .lp-visual-image,
.lp-visual.lazy .lp-visual-scroll { transition: ease-out 0.6s; }
.lp-visual.lazy .lp-visual-copy { transform: translateY(40px); opacity: 0; }
.lp-visual.lazy .lp-visual-image { opacity: 0; }
.lp-visual.lazy .lp-visual-scroll { opacity: 0; }
.lp-visual.lazy-done .lp-visual-copy { transition-delay: 0.2s; transform: translate(0); opacity: 1; }
.lp-visual.lazy-done .lp-visual-image { opacity: 1; }
.lp-visual.lazy-done .lp-visual-scroll { transition-delay: 0.4s; opacity: 1; }

@keyframes lpVisualScroll {
	0% {
		transform: translateY(0);
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80% {
		opacity: 1;
	}
	100% {
		transform: translateY(145px);
		opacity: 0;
	}
}

@media screen and (min-width: 1200px) {
	.lp-visual-copy { font-size: 7.2rem; }
}

@media screen and (min-width: 769px) {
}

@media screen and (max-width: 1240px) {
	.lp-visual-scroll { left: 20px; margin-left: 0; }
}

@media screen and (max-width: 768px) {
	.lp-visual { height: 100svh; }
	.lp-visual-copy { bottom: 40px; text-shadow: 1px 1px 0 rgba(255,255,255,1); font-size: 2rem; }
	.lp-visual-scroll { bottom: 20px; left: 15px; height: 80px; }
	.lp-visual-scroll span { margin-left: -4px; width: 8px; height: 8px; }

	@keyframes lpVisualScroll {
		0% {
			transform: translateY(0);
			opacity: 0;
		}
		40% {
			opacity: 1;
		}
		80% {
			opacity: 1;
		}
		100% {
			transform: translateY(80px);
			opacity: 0;
		}
	}
}

/* store
------------------------------------------------ */
.lp-store { position: relative; padding: 100px 0 110px; background-color: #FCF7EA; color: #070606; }
.lp-store-title { margin-bottom: 80px; text-align: center; font-size: 3.6rem; letter-spacing: 0.1em; line-height: 1.2; }
.lp-store-main { position: relative; }
.lp-store-main__media { position: relative; width: 100%; height: 188.75vw; }
.lp-store-main__media .photo,
.lp-store-main__media .deco { position: absolute; }
.lp-store-main__media .photo { box-shadow: 14px 20px 20px rgba(0,0,0,0.16); }
.lp-store-main__media .photo1 { top: 0; left: 0; width: 50%; }
.lp-store-main__media .photo2 { top: 13.3333333333vw; right: 0; width: 40.75%; }
.lp-store-main__media .photo3 { top: 70.6666666667vw; left: 16%; width: 63.3333333333%; }
.lp-store-main__media .photo4 { top: 125.666666667vw; left: 0; width: 48.3333333333%; }
.lp-store-main__media .photo5 { top: 152.5vw; right: 0; width: 55%; }
.lp-store-main__media .deco1 { top: 40.2877697842vw; left: 8.5%; width: 6.91666666667%; z-index: 2; }
.lp-store-main__media .deco2 { top: 37.7697841727vw; left: 0; width: 12.6666666667%; z-index: 1; }
.lp-store-main__media .deco3 { top: 44.2446043165vw; left: 10%; width: 27.3375%; z-index: 3; }
.lp-store-main__media .deco4 { top: 75.8273381295vw; right: 9.66666666667%; width: 1.83333333333%; }
.lp-store-main__info { position: relative; margin-top: 70px; }
.lp-store-main__info--copy { margin-bottom: 30px; text-align: center; font-size: 3rem; line-height: 1.2; }
.lp-store-main__info--text { font-size: 1.8rem; line-height: 2; color: #4B4B4B; }
.lp-store-main__info--text p + p { margin-top: 2em; }
.lp-store-detail { position: relative; margin-top: 80px; }
.lp-store-detail--name { margin: 0 auto 40px; padding: 16px 10px; max-width: 480px; border: 2px solid #070606; border-radius: 12px; text-align: center; font-size: 2.8rem; line-height: 1.2; }
.lp-store-detail__info { position: relative; }
.lp-store-detail__info dl > dt { margin-bottom: 10px; font-size: 2rem; font-weight: 700; line-height: 1.2; }
.lp-store-detail__info dl > dd { font-size: 1.6rem; line-height: 1.625; }
.lp-store-detail--map { position: relative; margin-top: 40px; padding-bottom: 41.6666666667%; width: 100%; height: 0; overflow: hidden; }
.lp-store-detail--map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media screen and (min-width: 1240px) {
	.lp-store-main__media { height: 2265px; }
	.lp-store-main__media .photo2 { top: 160px; }
	.lp-store-main__media .photo3 { top: 848px; }
	.lp-store-main__media .photo4 { top: 1508px; }
	.lp-store-main__media .photo5 { top: 1830px; }
	.lp-store-main__media .deco1 { top: 560px; }
	.lp-store-main__media .deco2 { top: 525px; }
	.lp-store-main__media .deco3 { top: 615px; }
	.lp-store-main__media .deco4 { top: 1054px; }
}

@media screen and (min-width: 769px) {
	.lp-store-main__info--text { margin: 0 80px; }
	.lp-store-detail__info { display: flex; flex-wrap: wrap; padding-left: 120px; }
	.lp-store-detail__info dl { width: calc(50% - 40px); }
	.lp-store-detail__info dl + dl { margin-left: 80px; }
	.lp-store-detail__info dl dt:not(:first-child) { margin-top: 24px; }
}

@media screen and (max-width: 768px) {
	.lp-store { padding: 50px 0; }
	.lp-store-title { margin-bottom: 40px; font-size: 1.8rem; }
	.lp-store-main__media { margin: 0 -20px; width: calc(100% + 40px); }
	.lp-store-main__media .photo { box-shadow: 6px 10px 10px rgba(0,0,0,0.16); }
	.lp-store-main__media .deco1 { top: 42vw; left: calc(8.5% + 20px); }
	.lp-store-main__media .deco2 { top: 46vw; left: 20px; }
	.lp-store-main__media .deco3 { top: 54vw; left: calc(8% + 20px); }
	.lp-store-main__media .deco4 { top: 84vw; }
	.lp-store-main__info { margin-top: 40px; }
	.lp-store-main__info--copy { margin-bottom: 20px; font-size: 1.6rem; line-height: 1.6; }
	.lp-store-main__info--text { font-size: 1.4rem; }
	.lp-store-detail { margin-top: 40px; }
	.lp-store-detail--name { margin-bottom: 20px; padding: 12px 8px; max-width: inherit; border-width: 1px; border-radius: 8px; font-size: 1.6rem; }
	.lp-store-detail__info { padding: 0 20px; }
	.lp-store-detail__info dl + dl,
	.lp-store-detail__info dl > dd + dt { margin-top: 20px; }
	.lp-store-detail__info dl > dt { font-size: 1.6rem; }
	.lp-store-detail__info dl > dd { font-size: 1.4rem; }
	.lp-store-detail--map { margin: 30px -20px 0; padding-bottom: 60%; width: calc(100% + 40px); }
}

/* limited
------------------------------------------------ */
.lp-limited { position: relative; color: #070606; }
.lp-limited-title { position: relative; padding-bottom: 44.1666666667%; width: 100%; height: 0; overflow: hidden; }
.lp-limited-title::before,
.lp-limited-title::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.lp-limited-title::before { background-color: rgba(0,0,0,0.3); z-index: 2; }
.lp-limited-title::after { background: url(../../img/lp-202309/limited_title_bg.jpg) no-repeat center center; background-size: cover; z-index: 1; }
.lp-limited-title .wrap { position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100%; height: 100%; z-index: 3; }
.lp-limited-title--name { position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 100%; text-align: center; font-size: 4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.2; color: #fff; }
.lp-limited-content { position: relative; padding: 100px 0; background-color: #ffecd6; }
.lp-limited-products { position: relative; }
.lp-limited-products--item { position: relative; }
.lp-limited-products--item:not(:first-child) { margin-top: 120px; }
.lp-limited-products__info { position: relative; }
.lp-limited-products--title { font-size: 3rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; }
.lp-limited-products--description { margin-top: 22px; font-size: 1.8rem; letter-spacing: 0.1em; line-height: 2; }
.lp-limited-products--description span { font-size: 1.4rem; color: #c00; }
.lp-limited-products--price { margin-top: 40px; font-size: 2.2rem; letter-spacing: 0.1em; line-height: 1.2; }
.lp-limited-products--btn { position: relative; margin-top: 70px; z-index: 1; }
.lp-limited-products--btn > a { display: block; position: relative; max-width: 328px; height: 68px; border: 1px solid #4B4B4B; text-align: center; font-size: 1.6rem; letter-spacing: 0.1em; line-height: 68px; color: #fff; }
.lp-limited-products--btn > a::after { content: ''; position: absolute; top: 3px; left: 3px; width: calc(100% - 6px); height: calc(100% - 6px); background-color: #4B4B4B; z-index: -1; }

@media screen and (min-width: 1240px) {
	.lp-limited-title { padding-bottom: 530px; }
}

@media screen and (min-width: 769px) {
	.lp-limited-content { overflow: hidden; }
	.lp-limited-products--item { display: flex; }
	.lp-limited-products__info { padding-top: 60px; width: calc(50% - 40px); }
	.lp-limited-products__photo { width: 50%; }
	.lp-limited-products__photo--main { transition-delay: 0.4s; }
	.lp-limited-products__photo--sub { position: absolute; bottom: 0; width: 56.6666666667%; }
	.lp-limited-products--item:nth-of-type(odd) .lp-limited-products__info { padding-right: 40px; }
	.lp-limited-products--item:nth-of-type(odd) .lp-limited-products__photo--sub { left: -150px; }
	.lp-limited-products--item:nth-of-type(even) { flex-flow: row-reverse; }
	.lp-limited-products--item:nth-of-type(even) .lp-limited-products__info { padding-left: 40px; }
	.lp-limited-products--item:nth-of-type(even) .lp-limited-products__photo--sub { right: -150px; }
}

@media screen and (min-width: 769px) and (max-width: 1100px) {
	.lp-limited-products__photo--sub { position: relative; bottom: auto; margin-top: 40px; width: 100%; }
	.lp-limited-products--item:nth-of-type(odd) .lp-limited-products__photo--sub { left: auto; }
	.lp-limited-products--item:nth-of-type(even) .lp-limited-products__photo--sub { right: auto; }
}


@media screen and (max-width: 1240px) {
	.lp-limited-title .wrap { width: calc(100% - 40px); }
}

@media screen and (max-width: 768px) {
	.lp-limited-title { padding-bottom: 60%; }
	.lp-limited-title--name { font-size: 1.8rem; }
	.lp-limited-content { padding: 50px 0; }
	.lp-limited-products--item { display: flex; flex-flow: column-reverse; }
	.lp-limited-products--item:not(:first-child) { margin-top: 60px; }
	.lp-limited-products--title { font-size: 1.8rem; }
	.lp-limited-products--description { margin-top: 10px; font-size: 1.4rem; }
	.lp-limited-products--description span { font-size: 1rem; }
	.lp-limited-products--price { margin-top: 20px; font-size: 1.6rem; }
	.lp-limited-products--btn { margin-top: 40px; }
	.lp-limited-products--btn > a { max-width: 200px; height: 48px; font-size: 1.2rem; line-height: 48px; }
	.lp-limited-products--btn > a::after { top: 2px; left: 2px; width: calc(100% - 4px); height: calc(100% - 4px); }
	.lp-limited-products__photo { margin-bottom: 30px; }
	.lp-limited-products__photo--sub { margin-top: 10px; }
	.lp-limited-products--item:nth-of-type(odd) .lp-limited-products__photo { margin-left: -20px; }
	.lp-limited-products--item:nth-of-type(even) .lp-limited-products__photo { margin-right: -20px; }
}

/* discounted
------------------------------------------------ */
.lp-discounted { position: relative; }
.lp-discounted-title { position: relative; padding-bottom: 30%; width: 100%; height: 0; overflow: hidden; }
.lp-discounted-title::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/lp-202309/discounted_title_bg.jpg) no-repeat center center; background-size: cover; z-index: 1; }
.lp-discounted-title .wrap { position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100%; height: 100%; z-index: 2; }
.lp-discounted-title--name { position: absolute; top: 50%; left: 70px; transform: translateY(-50%); font-size: 4rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.2; color: #fff; }
.lp-discounted-content { position: relative; padding: 80px 0; background-color: #F8F5FF; }
.lp-discounted-products { position: relative; }
.lp-discounted-products--item { position: relative; }
.lp-discounted-products--item > a { display: block; background-color: #DDDCFA; }
.lp-discounted-products--item:nth-of-type(even) > a { flex-flow: row-reverse; background-color: #fff; }
.lp-discounted-products__info { padding: 36px 30px; }
.lp-discounted-products--title { font-size: 2.4rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; color: #070606; }
.lp-discounted-products--title span { display: inline-block; margin-left: 1em; vertical-align: top; color: #c00; }
.lp-discounted-products--description { margin-top: 20px; font-size: 1.6rem; letter-spacing: 0.1em; line-height: 1.71428571429; color: #4B4B4B; }
.lp-discounted-products--description span { font-size: 1.4rem; }

@media screen and (min-width: 769px) {
	.lp-discounted-title { padding-bottom: 360px; }
	.lp-discounted-products--item:nth-of-type(2) { transition-delay: 0.4s; }
	.lp-discounted-products--item > a { display: flex; align-items: center; }
	.lp-discounted-products--photo { width: 45%; }
	.lp-discounted-products__info { width: 55%; }
	.lp-discounted-products--item:nth-of-type(even) .lp-discounted-products__info { text-align: right; }
}

@media screen and (max-width: 1240px) {
	.lp-discounted-title .wrap { left: 0; transform: none; width: calc(100% - 40px); }
	.lp-discounted-title--name { left: 20px; }
}

@media screen and (max-width: 768px) {
	.lp-discounted-title { padding-bottom: 40%; }
	.lp-discounted-title--name { font-size: 1.6rem; }
	.lp-discounted-content { padding: 40px 0; }
	.lp-discounted-products__info { padding: 26px 20px; }
	.lp-discounted-products--title { font-size: 1.6rem; }
	.lp-discounted-products--description { margin-top: 16px; font-size: 1.2rem; }
	.lp-discounted-products--description span { font-size: 1rem; }
}

/* about
------------------------------------------------ */
.lp-about { position: relative; padding: 90px 0 100px; color: #070606; }
.lp-about-content { position: relative; padding: 40px; border: 2px solid #D0D0D0; }
.lp-about-block { position: relative; z-index: 1; }
.lp-about-block:not(:first-child) { margin-top: 90px; }
.lp-about-block__info { position: relative; }
.lp-about-block--title { font-size: 3rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; }
.lp-about-block__frame { padding: 40px 40px 66px; }
.lp-about-block--explain { font-size: 1.8rem; letter-spacing: 0.1em; line-height: 2; color: #4B4B4B; }
.lp-about-block--btn { position: relative; margin-top: 45px; z-index: 1; }
.lp-about-block--btn > a { display: block; position: relative; max-width: 180px; height: 48px; border: 1px solid #4B4B4B; text-align: center; font-size: 1.3rem; letter-spacing: 0.1em; line-height: 48px; color: #fff; }
.lp-about-block--btn > a::after { content: ''; position: absolute; top: 3px; left: 3px; width: calc(100% - 6px); height: calc(100% - 6px); background-color: #4B4B4B; z-index: -1; }
.lp-about-block--photo { position: relative; }
.lp-about-block--photo figure { display: block; margin: 0; width: 100%; }
.lp-about-block--photo figcaption { margin-top: 20px; font-size: 1.4rem; letter-spacing: 0.05em; line-height: 1.71428571429; color: #979797; }

@media screen and (min-width: 769px) {
	.lp-about-block { display: flex; }
	.lp-about-block::after { content: ''; position: absolute; bottom: 0; width: calc(100% - 40px); height: calc(100% - 66px); background-color: #F5F5F5; z-index: -1; }
	.lp-about-block__info { width: 46.5949820789%; }
	.lp-about-block--title { height: 66px; }
	.lp-about-block--explain { transition-delay: 0.4s; }
	.lp-about-block--photo { transition-delay: 0.4s; }
	.lp-about-block--photo { width: 53.7634408602%; }
	.lp-about-block:nth-of-type(odd)::after { left: 0; }
	.lp-about-block:nth-of-type(odd) .lp-about-block--photo figcaption { padding-right: 80px; }
	.lp-about-block:nth-of-type(even) { flex-flow: row-reverse; }
	.lp-about-block:nth-of-type(even)::after { right: 0; }
	.lp-about-block:nth-of-type(even) .lp-about-block--title { text-align: right; }
	.lp-about-block:nth-of-type(even) .lp-about-block--photo figcaption { padding-left: 80px; }
}

@media screen and (max-width: 768px) {
	.lp-about { padding: 40px 0; }
	.lp-about-content { padding: 20px; border-width: 1px; }
	.lp-about-block { display: flex; flex-flow: column-reverse; }
	.lp-about-block:not(:first-child) { margin-top: 40px; }
	.lp-about-block__info { padding-bottom: 20px; }
	.lp-about-block--title { margin-bottom: 20px; font-size: 2.4rem; }
	.lp-about-block__frame { padding: 20px; background-color: #F5F5F5; }
	.lp-about-block--explain { font-size: 1.4rem; }
	.lp-about-block--btn { margin-top: 30px; }
	.lp-about-block--btn > a { margin: 0 auto; max-width: 200px; height: 48px; font-size: 1.2rem; line-height: 48px; }
	.lp-about-block--btn > a::after { top: 2px; left: 2px; width: calc(100% - 4px); height: calc(100% - 4px); }
	.lp-about-block--photo { margin-bottom: 40px; width: calc(100% + 41px);}
	.lp-about-block--photo figcaption { margin-top: 16px; font-size: 1rem; }
	.lp-about-block:nth-of-type(odd) .lp-about-block--photo figcaption { padding-right: 41px; }
	.lp-about-block:nth-of-type(even) .lp-about-block--photo { margin-left: -41px; }
	.lp-about-block:nth-of-type(even) .lp-about-block--photo figcaption { padding-left: 41px; }

}