@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@300&family=Roboto:wght@100..900&display=swap');
#contents { width: 100%!important; max-width: 100%!important; padding: 0; margin: 0; }
#pisss { width: 100%!important; max-width: 100%!important; }
#pi { width: 100%!important; max-width: 100%!important; margin: 0; background-color: transparent!important; padding: 0; }
#pi > img { display: none!important; }
picture	{ width: 100%; vertical-align: bottom; line-height: 1;  }
@media (min-width: 768px)	{
	.result_suggest_title .result_suggest_list { margin: 0 -1.5rem 0; }
}
.section_main, 
.seach_sort_wrapper,
.search_contents,
.bread	{ background-color: #fff; }
.seach_sort_wrapper,
.search_contents,
.bread,
.store_footer	{ position: relative; z-index: 2; }
.result_suggest	{ margin: 0; }

.pi_description	{ padding: 0!important; background-color: #fff; }

.pi_lgzformat	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; padding: 0; margin: 0; letter-spacing:0; background-color: #ffffff; }
.pi_lgzformat div	{ letter-spacing:0; }
.pi_lgzformat *	{ letter-spacing:0; font-family: "Roboto", "Noto Sans JP", sans-serif; font-weight: 400; font-style: normal; font-size:14px; line-height:1.75; font-feature-settings: "palt"; -webkit-text-size-adjust:100%; color:#1A1A1A; -webkit-font-smoothing: antialiased; font-feature-settings: normal!important; }
.pi_lgzformat .serif	{ font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 300; font-style: normal; }
.pi_lgzformat img, 
.pi_lgzformat picture	{ width: 100%; vertical-align: bottom; line-height: 1;  }
.pi_lgzformat ul:before,
.pi_lgzformat ol:before,
.pi_lgzformat dl:before, 
.pi_lgzformat ul:after, 
.pi_lgzformat ol:after, 
.pi_lgzformat dl:after	{ display: none!important; }
.pi_lgzformat video, 
.pi_lgzformat img	{ width: 100%; vertical-align: bottom; line-height: 0; }
.pi_lgzformat a, 
.pi_lgzformat a:hover { text-decoration:none; }
.pi_lgzformat .small {font-size:80%;}
.pi_lgzformat .center-text	{ text-align: center; }

/* ------------ ANIMATION ------------- */
.scrollIn	{ opacity: 0; }
.scrollIn.active	{ transition: opacity 1.4s cubic-bezier(.24,.155,.275,.945); opacity: 1; transition-delay: .3s; }
@keyframes fadein	{ 
	from	{ opacity: 0; }
	to	{ opacity: 1; }
}
@keyframes blur	{ 
	from	{ opacity: 0; filter: blur(20px); }
	to	{ opacity: 1; filter: blur(0px); }
}

/* ------------ MAIN IMG ------------- */
.main_wrapper	{ width: 100%; position: relative; display: -webkit-flex; display: flex; padding: 0; margin: 0 0 4cqw; }
.main_wrapper picture,
.main_wrapper img	{ display: block; width: 100%; }
.main_wrapper .main_title	{ position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 100%; left: 0; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1cqw; }
.main_title > h1	{ color:#fff; font-size: clamp(14px, 62px, 6vw); line-height: 1; font-weight: 700; letter-spacing:.03em; text-align: center; opacity: 0; transform: translateY(20px); transition: all 1s; }
.main_title > h2	{ color:#fff; font-size: clamp(12px, 24px, 2vw); line-height: 1.6; font-weight: 500; letter-spacing:.06em; text-align: center; opacity: 0; transform: translateY(20px); transition: all 1s; }
.main_title.active > h1	{ opacity: 1; transition-delay: .2s; transform: translateY(0); }
.main_title.active > h2	{ opacity: 1; transition-delay: .6s; transform: translateY(0); }
@media (min-width: 1000px) {
	.main_title > h1 br	{ display: none; }
}
@media (max-width: 999.9px) {
	.main_wrapper	{ margin: 0 0 8cqw; }
	.main_title > h1	{ top: 4%; }
	.main_title > h1	{ font-size: 10vw; line-height: 1.4; }
	.main_title > h2	{ font-size: 4.4vw; }
}

/* ------------ MID AREA ------------- */
.holiday_contents	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 8cqw; }
.section_inner	{ width: 100%; display: -webkit-flex; display: flex; line-height: 1; background-color: #fff; }
.section_inner.section01	{ background-color: #AE7260; }
.section_inner.section02	{ background-color: #9B5A46; }
.section_inner.section03	{ background-color: #56141F; }
.section_inner.section04	{ background-color: #2B3E63; }
.section_inner.section05	{ background-color: #6B5A4E; }
.section_img	{ width: 40%; padding: 0 0 0 2.8cqw; position: relative; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: flex-end; }
.section_img_inner	{ width: auto; height: calc(100vh - 60px); position: -webkit-sticky; position: sticky; top: 60px; left: 0; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: center;  }

.section_img picture,
.section_img img	{ width: 100%; height: 100%; object-fit: cover; }
.section_detail	{ min-width: 572px; width: 60%; padding: 0 2.8cqw; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.detail_header	{ width: 100%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; margin: 0 0 30px; }
.detail_header > h2	{ color:#fff; text-align: center; font-size: clamp(22px, 32px, 1.9vw); line-height: 1.4; }
.detail_items	{ width: 100%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; flex-direction: column; position: relative; }
@media (min-width: 1000px) {
	.detail_items	{ margin: 0 0 2cqw;  }
	.detail_items > .swiper-wrapper	{ display: -webkit-flex; display: flex; flex-wrap: wrap; gap: 2cqw; width: 100%; max-width: 880px; }
	.detail_items > .swiper-wrapper > .swiper-slide	{ width: calc(50% - 1cqw); height: auto; background-color: #f5f5f5; border-radius: 16px; padding: 12px; }
}

.js-linked-swiper	{ width: 100%; position: relative; container-type: inline-size; }
.js-linked-swiper .item_swiper	{ width: 100%; position: relative; z-index: 1; }
.moreinfo	{ position: absolute; top: 0; left: 0; background-color: rgba(224, 218, 207,1); z-index: 4; line-height: 1; padding: 8px; border-radius: 30px; }
.moreinfo span	{ font-size: 12px; line-height: 1; font-weight: 500; color: rgba(33, 33, 33,1); letter-spacing:.06em; }
.toggle-category	{ width: 100%; display: -webkit-flex; display: flex; position: relative; container-type: inline-size; }
.toggle-category > a	{ width: 100%; position: relative; display: none; z-index: 1; }
.toggle-category > a.nolink	{ pointer-events: none; }
.toggle-category > a.nonchange, 
.toggle-category > a.active	{ display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.toggle-category > a.nolink	{ pointer-events: none; }
.toggle-category > a > i	{ width: 100%; aspect-ratio: 64 / 41; overflow: hidden; margin: 0 0 30px; }
.toggle-category > a > i img	{ width: 100%; height: 100%; object-fit: cover; transition: all .5s; }
.toggle-category > a > strong	{ width: 77%; font-size: 14px; line-height: 1.3; font-weight: 500; margin: 0 0 5px; z-index: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.toggle-category > a > b	{ width: 23%; white-space: nowrap; font-size: 14px; line-height: 1.3; font-weight: 500; text-align: right; margin: 0 0 5px; z-index: 1; }
.toggle-category > a > span	{ width: 100%; color:#212121; font-size: 12px; line-height: 1.3; font-weight: 400; letter-spacing:.06em; margin: 0 0 10px; z-index: 1; }

.color-dots-list	{ width: 100%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
.color-dots-list > .color-dots-wrapper	{ width: 100%; display: -webkit-flex; display: flex; gap: 10px; }
.color-dots-list > .color-dots-wrapper .color-dot-item	{ width: 22px; height: 22px; aspect-ratio: 1 / 1; border-radius: 50%; background-color: #fff; border: 1px solid #fff; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
.color-dots-list > .color-dots-wrapper .color-dot-item > span.dot	{ width: 100%; height: 100%; aspect-ratio: 1 / 1; border-radius: 50%; background-color: #fff; border: 1px solid #ddd; }

.color-dots-list > .color-dots-wrapper .color-dot-item > span.dot.color01	{ background-color: #0f4; }
.color-dots-list > .color-dots-wrapper .color-dot-item > span.dot.color02	{ background-color: #f40; }
.color-dots-list > .color-dots-wrapper .color-dot-item > span.dot.color03	{ background-color: #04f; }
.color-dots-list > .color-dots-wrapper .color-dot-item > span.dot.color04	{ background-color: #0f0; }
.color-dots-list > .color-dots-wrapper .color-dot-item.active	{ border: 1px solid #000; }
.color-dots-list > .color-dots-wrapper .color-dot-item.active > span.dot	{ border: 2px solid #fff; }

@media (min-width: 1000px) {
	.toggle-category > a:hover	{ opacity: 1; }
	.toggle-category > a:hover > i img	{ transform: scale(1.04); }
	.color-dots-list > .color-dots-wrapper .color-dot-item:hover	{ cursor: pointer; }
}

.toggle_navigation	{ padding: 2px; border-radius: 30px; border: 1px solid #212121; line-height: 1; position: absolute; top: 62cqw; left: 0; background-color: #fff; z-index: 3; }
.toggle_navinner.single	{ pointer-events: none; }
.toggle_navinner	{ display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 0; }
.toggle_navinner > button	{ min-width: 90px; background-color: #fff; color:#212121; border-radius: 20px; padding: 5px 10px; font-size: 12px; line-height: 1; font-weight: 500; letter-spacing:.04em; height: 21px; transition: all .5s; }
.toggle_navinner > button.active	{ background-color: #212121; color:#fff; }

@media (max-width: 999.9px) {
	.holiday_contents	{ margin: 0 0 10cqw; }
	.section_inner	{ flex-wrap: wrap; }
	.section_img	{ width: 100%; padding: 0 6.4%; }
	.section_img_inner	{ width: 100%; height: auto; top: auto; left: auto; align-items: center; justify-content: center;  }
	.section_detail	{ min-width: 100%; width: 100%; padding: 12cqw 2cqw 0; }
	.detail_header	{ margin: 0 0 30px; }
	.detail_header > h2	{ font-size: 4.6cqw; line-height: 1.6; }
	.detail_items	{ padding: 0 0 10px; margin: 0 0 12cqw; }
	.detail_items > .swiper-wrapper > .swiper-slide	{ width: 100%; height: auto; background-color: #f5f5f5; border-radius: 16px; padding: 12px; }
}

.pi_lgzformat .swiper-pagination-bullet	{ width: 8px; height: 8px; background: #000; opacity: .1; }
.pi_lgzformat .swiper-pagination-bullet-active { background: #000; opacity: 1; }
.pi_lgzformat .swiper-horizontal > .swiper-pagination-bullets, 
.pi_lgzformat .swiper-pagination-bullets.swiper-pagination-horizontal, 
.pi_lgzformat .swiper-pagination-custom, 
.pi_lgzformat .swiper-pagination-fraction	{ bottom: -30px; }
@media (min-width: 1000px) {
	.pi_lgzformat .swiper-pagination	{ display: none; }
}

/* ------------ VIDEO AREA ------------- */
.videoarea	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; }
.videowrapper	{ max-height: calc(100vh - 80px); position: relative; aspect-ratio: 9 / 16; background: url(conceptmovie.jpg) center center / cover no-repeat; }
.videowrapper a	{ display: block; position: relative; transition: all .5s; }
.videowrapper a::before	{ content:""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; background: rgba(0,0,0,.8) url(button.svg) center center / 200px no-repeat; opacity: 0; transition: all .5s; }
#audiobutton	{ position: absolute; bottom: 10px; left: 10px; width: 40px; height: 40px; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; background: url(icon-on.svg) center center / contain no-repeat; opacity: .5; transition: all .5s; }
#audiobutton.active	{ background: url(icon-off.svg) center center / contain no-repeat; }
@media (min-width: 1000px) {
	#audiobutton:hover	{ opacity: 1; }
}
@media (max-width: 767.9px) {
	.videowrapper	{ width: 100%; max-width: 100%; margin: 0 0 2cqw; }
	#audiobutton	{ left: auto; right: 10px; width: 30px; height: 30px; }
}

/* ------------ ITEM AREA ------------- */
.itemsetwraporld	{ width: 100%; max-width: 1600px; display: -webkit-flex; display: flex; flex-wrap: wrap; align-items: flex-start; position: relative; background-color: #fff; padding: 0 3%; gap: 0 4%; margin: 0 0 140px; }
.itemsetwraporld h4	{ width: 100%; margin: 0 0 40px; padding: 0; color:#2a2625; font-size: clamp(15px, 34px, 1.8vw); font-weight: 500; letter-spacing:.08em; line-height: 1.6; }
.itemsetwrapimg	{ width: 48%; position: -webkit-sticky; position: sticky; top: 60px; right: 0; }
.itemsetheader	{ width: 100%; height: 180px; background-color: #00FF00; display: -webkit-flex; display: flex; align-items: center; position: relative; opacity: 0; transform: translateY(10px); transition: all .9s; }
.itemsetheader.active	{ opacity: 1; transform: translateY(0px); }
.itemsetimages	{ width: 100%; padding: 0; }
.itemsetwrapper	{ margin: 0; }
.itemsetinnersplit	{ padding: 0 2%; }
.itemsetinner	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 48%; }
.itemsetinner > h3	{ width: 100%; margin: 0 0 30px; padding: 0; color:#2a2625; font-size: clamp(17px, 34px, 1.8vw); font-weight: 500; letter-spacing:.08em; line-height: 1; }
.itemsetinner > h4	{ width: 100%; margin: 0 0 60px; padding: 0; color:#2a2625; font-size: clamp(13px, 20px, 1.1vw); font-weight: 500; letter-spacing:.08em; line-height: 1.6; }
.itemset	{ width: 100%; overflow: hidden; padding: 0; margin: 0; list-style: none; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; }
.itemset li	{ width: 100%; }
.itemset li:first-child	{ width: 100%; line-height: 1; overflow: hidden; aspect-ratio: 1 / 1; position: relative; }
.itemset li:first-child .itemimg	{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; transition: all .3s; }
a:hover .itemset li:first-child .itemimg	{ transform: scale(1.05); transform-origin: center; }
.itemset li:nth-child(2)	{ padding: 8px; color:#2a2625; font-size: 15px; font-weight: 500; line-height: 1.7; letter-spacing:.08em; }
.itemset li:nth-child(2) > span	{ color:#888888; font-weight: 400; }
@media (max-width: 999.99px) {
	.itemsetimages	{ padding: 0; }
	.itemsetinner	{ margin: 0 0 30px; }
	.itemset li:nth-child(2)	{ font-size: 12px; line-height: 1.5; padding: 5px 0; }
	.itemset li:nth-child(2) > span	{ font-size: 12px; line-height: 1.2; }
}

.item-detailarea	{ display: -webkit-flex; display: flex; flex-wrap: wrap; gap: 20px 2%; flex-wrap: wrap; margin: 0; }
.item-detailarea > a	{ width: 32%; }
@media (min-width: 1000px) {
	.itemwaprep .itemsetwrapimg	{ order: 2; }
	.itemwaprep .itemsetinner	{ order: 1; }
	.itemsetinner	{ padding: 40px 0 0; }
	.itemsetinner h4 br.both	{ display: inline-block; }
	.itemsetinnersplit	{ width: 100%; display: -webkit-flex; display: flex; gap: 1.2%; align-items: flex-end; }
	.itemsetinnersplit .itemsetinner	{ width: 50%; }
	.itemsetinnersplit .item-detailarea	{ gap: 2.2%; flex-wrap: nowrap; }
	.itemsetinnersplit .item-detailarea > a	{ width: 50%; }
	.itemsetinnersplit .itemsetinner h4,
	.itemsetinnersplit .itemsetimages	{ padding: 0; }
}
@media (max-width: 999.99px) {
	.itemsetwraporld	{ padding: 0 6.4%; margin: 0 0 40px; }
	.itemsetwraporld h4	{ margin: 0 0 20px; }
	.itemsetwrapimg	{ width: 100%; margin: 0 0 30px; }
	.itemsetinner	{ width: 100%; margin: 0; }
	.itemsetinner h3	{ margin: 0 0 20px; }
	.itemsetinner h4	{ margin: 0 0 30px; }
	.itemsetinner h4 br	{ display: none; }
	.item-detailarea	{ padding: 0; margin: 0 0 40px; }
	.item-detailarea  .itemsetwrapper	{ margin: 0; }
	.itemsetwraporld	{ margin: 0; }
}

.moinfarea	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; padding: 60px 4%; background-color: #f4f3f3; position: relative; }
.moinfdith	{ width: 100%; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: space-between; position: relative; }
.moinfdith.conm	{ background-color: #222a30; }
.moinfdith-txt	{ width: 46%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 60px 2% 0; }
.moinfdith-txt-inner	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.moinfdith-txt-inner > h3	{ color:#2a2625; font-size: clamp(22px, 40px, 2vw); font-weight: 700; line-height: 1.2; letter-spacing:.06em; margin: 0 0 1.8em; }
.moinfdith-txt-inner > h4	{ color:#2a2625; font-size: clamp(14px, 38px, 1.5vw); font-weight: 700; line-height: 1.8; letter-spacing:.06em; margin: 0 0 1.8em; }
.moinfdith-txt-inner > p	{ width: 100%; color:#2a2625; font-size: clamp(13px, 22px, 1.05vw); font-weight: 500; line-height: 1.8; letter-spacing:.06em; text-align: center; margin: 0 0 .5em; }
.moinfdith-txt-inner > p > strong	{ color:#2a2625; font-size: clamp(14px, 38px, 1.3vw); font-weight: 700; }
.moinfdith-txt-inner > p > b	{ color:#2a2625; font-size: clamp(14px, 22px, 1.1vw); font-weight: 700; }
.moinfdith-txt-inner > p > span	{ color:#2a2625; font-size: clamp(14px, 28px, .9vw); font-weight: 500; }
.moinfdith-txt-inner > p.btm	{ margin: 0 0 1.5em; }
.moinfdith.conm .moinfdith-txt-inner > h3, 
.moinfdith.conm .moinfdith-txt-inner > h4, 
.moinfdith.conm .moinfdith-txt-inner > p	{ color:#fff; }
.moinfdith-txt-inner > a	{ margin: 1em 0 0; width: 100%; max-width: 300px; padding: 20px; color:#fff; background-color: #222a30; font-size: 14px; line-height: 1; font-weight: 700; letter-spacing:.06em; text-align: center; text-decoration: none!important; }
.moinfdith-txt-inner > a:hover	{ color:#fff; background-color: #194c72; }
.moinfdith-img	{ width: 50%; position: -webkit-sticky; position: sticky; top: 60px; left: 0;}
.moinfdith.conm .moinfdith-txt	{ order: 2; }
.moinfdith.conm .moinfdith-img	{ order: 1; }
@media (max-width: 1000px) {
	.moinfarea	{ padding: 20px 4%; }
	.moinfdith	{ flex-wrap: wrap; }
	.moinfdith-txt	{ width: 100%; padding: 3em 5% 0; }
	.moinfdith-img	{ width: 100%; }
	.moinfdith-txt	{ order: 2; }
	.moinfdith-img	{ order: 1; }
	.moinfdith-txt-inner > h3	{ margin: 0 0 1em; }
	.moinfdith-txt-inner > a	{ width: 100%; max-width: 100%; }
	.moinfdith-txt-inner > p	{ text-align: left; }
	.moinfdith-txt-inner > p br.pc	{ display: none; }
}

/* ------------ CAMPAIGN ------------- */
.campaign_wrapper	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; }
.campaign_wrapper > h3	{ width: 100%; margin: 0 0 2cqw; padding: 0; }
.campaign_wrapper > h3 span	{ color:#2a2625; font-size: clamp(17px, 38px, 2.2vw); font-weight: 500; letter-spacing:.02em; line-height: 1.5; background: linear-gradient(transparent 70%, #f2cf39 0%); }
.campaign_wrapper > strong	{ font-size: clamp(14px, 22px, 1.6vw); font-weight: 500; letter-spacing:.02em; line-height: 1.5; margin: 0 0 2cqw; }
.campaign_inner	{ margin: 0 0 1cqw; }
.campaign_inner > strong	{ width: 100%; position: relative; display: -webkit-flex; display: flex; justify-content: flex-start; margin: 0 0 .3cqw; }
.campaign_inner > strong::after	{ content:""; width: 100%; height: 1px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); border-top: 1px dotted #999; }
.campaign_inner > strong span	{ font-size: clamp(14px, 18px, 1.3vw); font-weight: 500; line-height: 1.8; letter-spacing:.1em; background-color: #fff; z-index: 1; padding: 0 .5cqw 0 0; }
.campaign_inner > p	{ font-size: clamp(13px, 16px, 1.2vw); font-weight: 400; line-height: 1.8; letter-spacing:.06em; margin: 0 0 .8em; padding: 0 1em; }
.campaign_inner > p b	{ font-size: clamp(13px, 16px, 1.2vw); font-weight: 700; line-height: 1.8; letter-spacing:.06em; }
.campaign_inner > ul	{ width: 100%; padding: 0 1em 0 2.4em; }
.campaign_inner > ul > li	{ list-style-type: disc; font-size: clamp(13px, 16px, 1.2vw); font-weight: 400; line-height: 1.8; letter-spacing:.06em; }
@media (max-width: 1000px) {
	.campaign_wrapper > h3	{ margin: 0 0 4cqw; }
	.campaign_wrapper > h3 span	{ font-size: 4.8cqw; }
	.campaign_wrapper > strong	{ margin: 0 0 6cqw; font-size: 4.4cqw; }
	.campaign_inner	{ margin: 0 0 4cqw; }
	.campaign_inner > p	{ padding: 0; }
	.campaign_inner > ul	{ padding: 0 0 0 1em; }
}

/* ------------ BLOCK ------------- */
@media (max-width: 999.9px)	{ .pconly { display: none!important; } }
@media (min-width: 1000px)	{ .pconly { display: inline-block; } }
@media (max-width: 999.9px)	{ .sponly { display: inline-block; } }
@media (min-width: 1000px)	{ .sponly { display: none!important; } }
.no-transition * {
  transition: none !important;
}
