@charset "UTF-8";
/* CSS Document */

.pc_none {
	display: block !important;
}

.tbl_none {
	display: none !important;
}

.sp_none {
	display: none !important;
}


#contents {
	float: none;
	width: 0px;
}


ul.under_link {
	overflow: hidden;
	width: 800px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	-moz-column-gap: 24px;
	column-gap: 24px;
	row-gap: 16px;
	margin: 0 auto;
	padding-bottom: 32px;
}

ul.under_link li {
	display: block;
	margin-bottom: 5px;
	margin-right: 5px;
	text-align: center;
	width: 300px;
}

.shoptour-content-title {
	letter-spacing: 1px;
	margin-bottom: 0.6em;
	font-size: 40px;
	font-family: "Playfair Display", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	padding: 8px 0;
}

.shopimage-area {
	margin-bottom: 60px;
}

/* コーディネート */

.shoptour-content-wrapper {
	width: 1000px;
	margin: 0 auto;
	padding-top: 10px;
	/* overflow: hidden; */
	display: block;
}

.shoptour-content {
	display: block;
	margin: 0 auto 120px;
}

/* 
.shoptour-content-wrapper ul li:nth-child(1){
	margin-bottom: 56px;
} */

/* 
.shoptour-content-wrapper ul li:last-child{
	margin-bottom: 56px;
} */

.shoptour-content-wrapper a {
	display: block;
	/* margin-bottom: 2px; */
}

.shoptour-content-wrapper a.itemTitle {
	font-size: 16px;
	line-height: 1.1em;
	padding-bottom: 20px;
	padding-top: 15px;
}

.ttl_shop1 {
	font-family: serif;
	font-size: 30px;
	padding: 8px 0;
	display: block;
	overflow: hidden;
}

.ttl_shop2 {
	font-size: 12px;
	padding: 16px 0;
	display: block;
	overflow: hidden;
	text-align: center;
}

.ttl_shop3 {
	font-family: 'Noto Serif JP', serif;
	font-size: 16px;
	padding: 10px 0;
	display: block;
	overflow: hidden;
	border-top: 1px solid #424242;
	border-bottom: 1px solid #424242;
	background-color: transparent;
	line-height: 1.8;
	font-weight: 400;
}

.main-ttl {
	text-align: center;
	width: 1000px;
	position: relative;
	margin: 0 auto 24px;
}

.main-ttl img {
	margin: 0 auto;
	width: 100%;
	height: auto;
}

.ttl-read {
	text-align: center;
	margin: 0 auto 40px;
}

.ttl-read p {
	/* font-family: 'Noto Serif JP', serif; */
	font-size: 15px;
	line-height: 1.7em;
	font-weight: 400;
	font-feature-settings: "palt";
	letter-spacing: 1px;
}

.ttl-read-note {
	display: block;
	font-size: 12px;
	margin-top: 8px;
}


.shop-image-whole {
	/* text-align: center; */
	width: 100%;
	position: relative;
	aspect-ratio: 1000/658;
	margin-bottom: 60px;
}

.shop-image-detail {
	text-align: center;
	position: relative;
	margin-bottom: 60px;

}

.shop-image-detail {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
	position: relative;
}


.shop-image-whole img,
.detail-image-block img {
	width: 100%;
}

.whole-image-aspect {
	aspect-ratio: 500/329;
}

.detail-image-aspect {
	aspect-ratio: 8/11;
}


.brand-logo-container {
	position: absolute;
	z-index: 1;
	top: 0%;
	left: 3%;
}

.brand-logo-container-l {
	position: absolute;
	z-index: 1;
	top: -9%;
	left: 0;
}

.brand-logo-container-r {
	position: absolute;
	z-index: 1;
	top: -9%;
	right: 0;
}


.brand-logo-container,
.brand-logo-container-l,
.brand-logo-container-r {
	& img {
		aspect-ratio: 5/1;
	}
}

.shop-image-detail.shop-image-detail-reverse {
	flex-direction: row-reverse;
}


.small_read2 a,
.shop-image-credit-l a,
.shop-image-credit-r a {
	margin-bottom: 8px;
}

.shop-image-credit-l a:not(:last-child),
.shop-image-credit-r a:not(:last-child) {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 14px;
}


.icn_check {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	color: #fff;
	background-color: #212121;
	border-radius: 4px;
	padding: 2px 8px;
	margin-left: 8px;
}


.small_read1 {
	line-height: 1.7em;
	text-align: center;
	text-decoration: none;
}

.small_read2 {
	font-size: 14px;
	left: 50px;
	line-height: 1.7em;
	position: absolute;
	top: 440px;
	text-align: left;
	color: #fff;
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.7);
	padding: 1.5%;
}

/* .small_read2 a{
    color: #fff;
} */
.small_read2 span {
	color: #fff;
	display: block;
}

.shop-image-credit-r {
	font-size: 14px;
	line-height: 1.7em;
	/* position: absolute;
    top: 260px;
	right: 22px; */
	text-align: left;
	/* color: #fff;
	background-color: rgba(255, 255, 255, 0.7); */
	text-decoration: none;
	padding: 1.5%;
}


.shop-image-credit-l {
	font-size: 14px;
	line-height: 1.7em;
	/* position: absolute;
    top: 260px;
	right: 22px; */
	text-align: left;
	/* color: #fff;
	background-color: rgba(255, 255, 255, 0.7); */
	text-decoration: none;
	padding: 1.5%;
}

.small_read3 {
	font-size: 12px;
	left: 450px;
	line-height: 1.7em;
	position: absolute;
	top: 454px;
	text-align: left;
	color: #000;
	text-decoration: none;
}

.small_read3 a {
	color: #000;
}

.small_read3 span {
	color: #000;
	display: block;
}

.coordinate-link {
	text-decoration: underline;
	position: relative;
}

.coordinate-link::after {
	transform: translate(-3px, -2px) rotate(45deg);
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #313131;
	border-right: 1px solid #313131;
	margin-left: 7px;
}


.brand-link {
	margin: 0 auto;
}

.content-btn {
	background: #3e3e3e;
	border-radius: 4px;
	color: #fff;
	display: block;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin: 40px auto 0;
	padding: 20px 0;
	text-align: center;
	width: 80%;
	max-width: 320px;
}

.content-btn:hover {
	opacity: 0.7;
}

.bland-name {
	letter-spacing: 1px;
	margin-bottom: 0.6em;
	color: #333;
	font-size: 32px;
	font-family: "Playfair Display", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.font-larger {
	font-size: 40px;
}

.staff-desc-name {
	display: block;
	font-size: 20px;
	margin: 0 0 16px;
	line-height: 1.5em;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}

.staff-desc-text {
	display: block;
	width: 350px;
	margin: 0 0 24px;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}


/* itemlist */

.itemlist {
	margin-bottom: 80px;
}

.itemlist ul {
	width: 800px;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	margin: 0 auto 24px;
}

.itemlist ul>li {
	/*background: #f7f6f2;*/
	box-sizing: border-box;
	margin-top: 12px;
	padding: 12px;
	width: calc(50% - 6px);
}


.itemlist ul>li a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.itemlist ul>li p {
	margin-top: 8px;
	flex-grow: 1;
}

.itemlist ul>li b {
	display: block;
}

.itemlist ul>li img {
	aspect-ratio: 5/6;
	width: 100%;
}

.itemlist ul .m-btn-active {
	height: 32px;
	line-height: 32px;
	margin-top: auto;

}

.staff-name {
	margin-bottom: 1em;
}

.itemlist-headline {
	width: 96%;
	font-size: 20px;
	margin: 32px auto 0;
	text-align: center;
	display: flex;
	align-items: center;
	letter-spacing: .5px;
	font-family: "Playfair Display", "Zen Old Mincho", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.itemlist-headline:before,
.itemlist-headline:after {
	content: "";
	height: 1px;
	flex-grow: 1;
	background-color: #a9a7a0;
}

.itemlist-headline:before {
	margin-right: 1rem;
}

.itemlist-headline:after {
	margin-left: 1rem;
}

/* スライダー */

.slider-contents-main {
	/* ?? */
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1
}


.slider-contents-main-wrapper {
	/* wrapper??????? */
	width: 100%;
	/*height: 300px;*/
	/* ?????? */
	position: relative;
	width: 100%;
	height: auto;
	z-index: 1;
	display: flex;
	transition-property: transform;
	box-sizing: content-box;
}

.slider-contents {
	/* ??????????????????????????? */
	color: #ffffff;
	width: 100%;
	height: 100%;
	text-align: center;
	/*line-height: 300px;*/
	text-align: center;
	font-size: 0;
	/* background-color: #e3e0dd; */

}

.swiper-pagination-bullets {
	position: static;
}

/*
	.swiper-pagination-bullet {
	  width: 12px !important;
	  height: 12px !important;
	  margin: 0 0 0 10px !important;
	 background: #333 !important;
	}
  
	.swiper-pagination-bullet:first-child {
	  margin: 0 !important;
	}
  */
.slider-contents img {
	width: 100%;
	aspect-ratio: 5/6;
}

.swiper-button-prev:after,
.swiper-button-next:after {
	display: none;
}


.slider-contents-btn-prev {
	background: url(../esw250912_tomorrowland_st/arrow_back.svg) 10px center no-repeat;
	width: 55px;
	height: 55px;
	background-size: 19px auto;
	z-index: 2;
	cursor: pointer;
	position: static;
	margin-top: 0;
}

.slider-contents-btn-next {
	background: url(../esw250912_tomorrowland_st/arrow_forward.svg) 28px center no-repeat;
	width: 55px;
	height: 55px;
	background-size: 19px auto;
	z-index: 2;
	cursor: pointer;
	position: static;
	margin-top: 0;
}

.slider-contents-main .swiper-pagination .swiper-pagination-bullet,
.slider-contents-main2 .swiper-pagination .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	margin: 0 7px;
	display: inline-block;
	background: none;
	border-radius: 0;
	border: 1px solid #9E9E9E;
	box-sizing: border-box;
	opacity: 1;
	cursor: pointer;
}

.slider-contents-main .swiper-pagination .swiper-pagination-bullet-active,
.slider-contents-main2 .swiper-pagination .swiper-pagination-bullet-active {
	background: #9E9E9E;
	opacity: 1;
}


.button-sandp {
	display: block;
	background-image: url(../esw250912_tomorrowland_st/icon_pause.svg);
	background-size: 24px;
	width: 24px;
	height: 24px;
	margin-left: 16px;
	z-index: 2;
}

.button-sandp.paused {
	background-image: url(../esw250912_tomorrowland_st/icon_start.svg);
}

.swiper-command-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
}


/* insta */

.staff-insta-link {
	margin: 0 auto 104px;
}

.insta-link-wrapper {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin: 32px auto 20px;
}

.insta-link-inner {
	display: flex;
	flex-direction: column;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	align-items: center;
}

.insta-link-inner img {
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
}

.insta-link-inner:hover {
	opacity: .7;
}

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

	.maincode-area {
		margin-bottom: 100px;
	}


	.small_read1 {
		line-height: 1.7em;
		position: absolute;
		top: 50%;
		right: 50px;
		transform: translate(0, -50%);
		width: 470px;
		text-decoration: none;
	}

	.detail-image-block {
		width: 500px;
	}

	.shop-image-detail {
		width: 1000px;
		margin: 0 auto 60px;
	}


	.small_read2,
	.shop-image-credit-l,
	.shop-image-credit-r {
		& a:hover {
			opacity: 0.6;
		}
	}

	.small_read3 a:hover {
		color: #7a5a37;
	}


	.ttl_shop3 {
		padding: 10px 8px;
		letter-spacing: -0.02em;
		border: none;
		/* border-top: 1px solid #424242;
	border-bottom: 1px solid #424242; */
		background-color: rgba(255, 255, 255, 0.7);
	}

	.brand-logo-container-r,
	.brand-logo-container-l {
		width: 480px;
	}

	/* PC itemlist*/
	.itemlist ul {
		width: 1000px;
	}

	.itemlist ul>li {
		width: calc(25% - calc(36px / 4));
	}

	.itemlist ul>li:not(:first-of-type) {
		margin-left: 12px;
	}

	.itemlist-headline {
		width: 800px;
	}

	.itemlist .m-btn-inactive {
		transition: all 0.2s linear;
	}

	.slider-contents-main {
		width: 1000px;
		margin: auto;
	}

	.slider-contents-main {
		width: 460px;
		margin: auto;
	}

	.spacer {
		display: none;
	}


}

@media screen and (max-width: 640px) {

	#contents {
		width: 100%;
		position: relative;
		padding-top: 0px;
	}

	.main-ttl {
		width: auto;
		margin: 0 12px;
	}

	.main-ttl img {
		width: 100%;
		/* margin: 32px auto 0; */
	}

	.ttl-read {
		width: calc(100% - 24px);
		padding: 56px 12px 0;
		position: relative;
	}

	.ttl-read p {
		font-size: 13px;
		text-align: left;
		margin: 0 auto 60px;
	}

	.ttl-read::before {
		position: absolute;
		display: block;
		content: '';
		width: 95%;
		background-color: #424242;
		height: 1px;
		top: 12%;
		left: 50%;
		transform: translateX(-50%);
	}

	.ttl-read::after {
		position: absolute;
		display: block;
		content: '';
		width: 95%;
		background-color: #424242;
		height: 1px;
		bottom: 12%;
		left: 50%;
		transform: translateX(-50%);
	}

	.shop-image-detail {
		display: block;
	}

	.shop-image-detail .img-tall {
		margin-bottom: 16px;
	}


	ul.under_link {
		display: block;
		padding-left: 0;
		width: auto;
		margin: 0 auto 24px;
	}

	ul.under_link li {
		width: 90%;
		margin: 16px auto 8px;
	}





	/* コー�?ィネイ�? */

	.shoptour-content-wrapper {
		width: auto;
		/* margin-right: 12px;
	margin-left: 12px; */
	}

	.shoptour-content {
		display: block;
		float: none;
		width: auto;
		height: auto;
		margin: 0 0 80px;
	}

	.shoptour-content-wrapper a.itemTitle {
		font-size: 16px;
		line-height: 1.1em;
		padding-bottom: 20px;
		padding-top: 15px;
	}

	.ttl_shop1 {
		font-size: 20px;
		padding: 10px 0 0;
	}

	.ttl_shop2 {
		font-size: 11px;
	}

	.ttl_shop3 {
		font-size: 13px;
	}


	.brand-logo-container-l,
	.brand-logo-container-r {
		position: initial;
		margin-left: 8px;
	}

	.brand-logo-container img,
	.brand-logo-container-l img,
	.brand-logo-container-r img {
		aspect-ratio: 5/1;
		width: 80vw;
	}

	.shop-image-whole {
		color: #000;
		width: 100%;
		/* position:static; */
		height: auto;
		margin-bottom: 30px;
	}

	.shop-image-detail {
		width: 90%;
		margin: 0 auto 60px;
	}


	.small_read1 a {
		padding: 10px 0 0 10px;
		background-color: #dcdcdc;
	}

	.small_read1 p {
		padding: 5px 0px 5px 10px;
		background-color: #eee;
		margin-bottom: 5px;
		padding-top: 5px;
		text-align: left;
	}

	.small_read2,
	.shop-image-credit-l,
	.shop-image-credit-r {
		width: 100%;
		font-size: 105%;
		margin-top: 5px;
		margin-bottom: 10px;
		line-height: 1.7em;
		position: static;
		top: 0px;
		left: 0px;
		padding: 0;
	}

	.small_read2 a,
	.shop-image-credit-l a,
	.shop-image-credit-r a {
		padding: 5px 0 0 5px;
		color: #000;
		font-size: 14px;
		text-align: left;
		display: block;
	}

	.small_read3 {
		width: 100%;
		font-size: 105%;
		margin-top: 5px;
		margin-bottom: 10px;
		line-height: 1.7em;
		position: static;
		top: 0px;
		left: 0px;
	}

	.small_read3 a {
		padding: 10px 0 0 10px;
		background-color: #dcdcdc;
	}


	.small_read3 p {
		padding: 5px 0px 5px 10px;
		background-color: #eee;
		margin-bottom: 5px;
	}

	.shop-image-detail .credit {
		width: calc(100% - 60px);
	}


	.content-btn {
		padding: 15px 0;
	}

	.itemlist ul {
		width: 100%;
	}


	.itemlist-headline {
		font-size: 18px;
		letter-spacing: -2px;
	}

	.staff-insta-link {
		margin: 0 auto 80px;
	}

	.staff-desc-text {
		width: 100%;
	}

	.insta-link-wrapper {
		width: 73%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.spacer {
		display: block;
		width: 96px;
	}

	.ls-none {
		letter-spacing: 0.5px;
	}

	.shoptour-content-title {
		font-size: 36px;
	}



}