@charset "utf-8";

.leadTxt {
	margin-top: var(--15px);
	line-height: 1.7;
}

/* contentsWrap */
.contentsWrap {
	padding: 0 0 var(--40px);
	margin-top: var(--40px);
	font-size: var(--14px);
	line-height: 1.7;
}
.contentsWrap:last-of-type {
	padding-bottom: var(--10px);
}
.contentsWrap + .contentsWrap {
	margin-top: 0;
}
.contentsWrap h3 {
	position: relative;
	padding-left: var(--25px);
	padding-bottom: var(--6px);
	margin-bottom: var(--15px);
	font-size: var(--18px);
	font-weight: 600;
	line-height: 1.5;
	border-bottom: 1px solid var(--baseColor);
}
.contentsWrap h3::before {
	content: "";
	position: absolute;
	width: var(--20px);
	height: var(--20px);
	background: url(/common/img/ico_hours.svg) no-repeat;
	background-size: contain;
	top: calc(50% - var(--2px));
	left: 0;
	transform: translateY(-50%);
}
.contentsWrap.access h3::before {
	background: url(/common/img/ico_train.svg) no-repeat;
	background-size: contain;
}
.contentsWrap.payment h3::before {
	background: url(/common/img/ico_money.svg) no-repeat;
	background-size: contain;
}
.contentsWrap.information h3::before {
	background: url(/common/img/ico_info.svg) no-repeat;
	background-size: contain;
}
.contentsWrap.floor h3::before {
	background: url(/common/img/ico_floor.svg) no-repeat;
	background-size: contain;
}
.contentsWrap.dutyfree h3::before,
.contentsWrap.recommend h3::before {
	background: url(/common/img/ico_shopguide.svg) no-repeat;
	background-size: contain;
}
.contentsWrap.eventnews h3::before {
	background: url(/common/img/ico_event.svg) no-repeat;
	background-size: contain;
}
.contentsWrap .pic {
	margin-top: var(--20px);
	text-align: center;
}
.contentsWrap .note {
	font-size: var(--12px);
}
.contentsWrap ul.note {
	margin-top: var(--10px);
}
.contentsWrap ul.indent li,
.contentsWrap dl.indent dd {
	text-indent: -1em;
	padding-left: 1em;
}
.contentsWrap sup {
	font-size: var(--10px);
	line-height: 1;
	position: relative;
	top: var(--1px);
}

/* hours */
.hours .ttl {
	font-size: var(--15px);
	font-weight: 600;
	line-height: 1.6;
}
.hours dl {
	margin-top: var(--8px);
	display: flex;
	flex-wrap: wrap;
}
.hours dl + dl {
	margin-top: 0;
}
.hours dl dt {
	padding-right: 1em;
}

/* floor */
/* dutyfree */
.contentsWrap.floor,
.contentsWrap.dutyfree {
	padding-bottom: var(--50px);
}

/* information */
.contentsWrap .itemWrap .itemList {
	margin-top: var(--25px);
	padding-bottom: var(--30px);
}
.contentsWrap .itemWrap .itemList:last-child {
	padding-bottom: 0;
}
.contentsWrap .itemWrap .itemList + .itemList {
	margin-top: 0;
}
.contentsWrap .itemWrap .itemList h4 {
	background: #f2f2f2;
	border-top: 1px solid var(--grayBorderColor);
	font-size: var(--15px);
	font-weight: 600;
	line-height: 1.5;
	padding: var(--6px) var(--10px) var(--7px);
	margin-bottom: var(--15px);
}
.contentsWrap .itemWrap .itemList h5 {
	margin-top: var(--16px);
	font-size: var(--14px);
	line-height: 1.7;
	font-weight: 600;
}
.contentsWrap .itemWrap .itemList ul.note {
	margin-top: var(--15px);
}
.contentsWrap .itemWrap .itemList ul.note li + li {
	margin-top: var(--5px);
}

/* recommend */
.contentsWrap.recommend {
	padding-bottom: var(--50px);
}
.contentsWrap.recommend h4 {
	font-size: var(--16px);
	line-height: 1.5;
	font-weight: 600;
	margin-top: var(--18px);
}
.contentsWrap.recommend .slide {
	margin-top: var(--15px);
}
.contentsWrap.recommend .slide + h4 {
	margin-top: var(--40px);
}
.contentsWrap.recommend .slide + .moreBtn {
	margin-top: var(--30px);
}

/* swiperOthers */
.contentsWrap .swiperOthers:not(.swiper-initialized) .swiper-wrapper {
	gap: 0 25px;
}
.contentsWrap .swiperOthers .swiper-slide {
	padding-bottom: var(--20px);
	width: calc((100% - 50px) / 2.52);
}
@media (max-width: 768px) {
	.contentsWrap .swiperOthers:not(.swiper-initialized) .swiper-wrapper {
		gap: 0 12px;
	}
	.contentsWrap .swiperOthers .swiper-slide {
		width: calc((100% - 24px) / 2.52);
	}
}
.contentsWrap .swiperOthers .swiper-slide a {
	display: block;
}
.contentsWrap .swiperOthers .swiper-slide a .pic {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	position: relative;
	margin-top: 0;
}
.contentsWrap .swiperOthers .swiper-slide a .shopLogo {
	border: 1px solid var(--grayBorderColor);
}
.contentsWrap .swiperOthers .swiper-slide a .pic img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
.contentsWrap .swiperOthers .swiper-slide a .detail {
	margin-top: var(--10px);
	line-height: 1.5;
}
.contentsWrap .swiperOthers .swiper-slide a .detail .shopFloor {
	font-size: var(--12px);
}
.contentsWrap .swiperOthers .swiper-slide a .detail .shopName {
	margin-top: var(--4px);
	font-size: var(--14px);
	font-weight: 600;
}
.contentsWrap .swiperOthers .swiper-slide a .detail .shopCategory {
	margin-top: var(--6px);
	font-size: var(--11px);
	color: #747474;
}

/* swiperEvent */
.contentsWrap .swiperEvent:not(.swiper-initialized) .swiper-wrapper {
	gap: 0 25px;
}
.contentsWrap .swiperEvent .swiper-slide {
	padding-bottom: var(--20px);
	width: calc((100% - 25px) / 2);
}
@media (max-width: 768px) {
	.contentsWrap .swiperEvent:not(.swiper-initialized) .swiper-wrapper {
		gap: 0 20px;
	}
	.contentsWrap .swiperEvent .swiper-slide {
		width: calc((100% - 20px) / 2);
	}
}
.contentsWrap .swiperEvent .swiper-slide a {
	display: block;
}
.contentsWrap .swiperEvent .swiper-slide a .pic {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	position: relative;
	margin-top: 0;
}
.contentsWrap .swiperEvent .swiper-slide a .pic img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
.contentsWrap .swiperEvent .swiper-slide a .txt {
	font-size: var(--14px);
	margin-top: var(--12px);
	line-height: 1.5;
}


/* moreBtn　少し小さいバージョン */
.foreignWrap .contentsWrap.floor h3 + .moreBtn {
	margin-top: var(--25px);
}
.foreignWrap .contentsWrap.floor .moreBtn,
.foreignWrap .contentsWrap.dutyfree .moreBtn {
	margin-top: var(--20px);
	width: 76.119403%;
}
.foreignWrap .contentsWrap.floor .moreBtn + .moreBtn,
.foreignWrap .contentsWrap.dutyfree .moreBtn + .moreBtn {
	margin-top: var(--15px);
}
.foreignWrap .contentsWrap.floor .moreBtn a,
.foreignWrap .contentsWrap.dutyfree .moreBtn a {
	font-size: var(--13px);
	line-height: 1.4;
	padding: var(--8px) var(--28px) var(--9px);
}
.foreignWrap .contentsWrap.floor .moreBtn a::after,
.foreignWrap .contentsWrap.dutyfree .moreBtn a::after {
	width: var(--15px);
	height: var(--15px);
	top: calc(50% - var(--4px));
	right: var(--12px);
}
.foreignWrap .contentsWrap.floor .moreBtn.btnBlank a::after,
.foreignWrap .contentsWrap.dutyfree .moreBtn.btnBlank a::after {
	width: var(--13px);
	height: var(--13px);
	top: calc(50% - var(--1px));
	right: var(--12px);
}
.foreignWrap .contentsWrap.floor .moreBtn.btnPdf a::after,
.foreignWrap .contentsWrap.dutyfree .moreBtn.btnPdf a::after {
	width: var(--21px);
	height: var(--21px);
	top: calc(50% - var(--1px));
	right: var(--13px);
}
.foreignWrap .contentsWrap.floor .moreBtn.iconInline a,
.foreignWrap .contentsWrap.dutyfree .moreBtn.iconInline a {
	padding: var(--8px) var(--13px) var(--9px);
}
.foreignWrap .contentsWrap.floor .moreBtn.btnPdf.iconInline a::after,
.foreignWrap .contentsWrap.dutyfree .moreBtn.btnPdf.iconInline a::after {
	top: 0;
	right: 0;
}