@charset "utf-8";

/*=====================================

index.css

=====================================*/


/*-------------------------------------
 header
-------------------------------------*/
header {
	position: relative;
	z-index: 1000;
}

/* headerLogo
-------------------------------------*/
.headerLogo img {
	width: 230px;
}


/*-------------------------------------
 visualArea
-------------------------------------*/
.visualIndexSlider {
	position: relative;
	z-index: 5;
	background: #fff;
}
.visualIndexSlider .slide li {
	position: relative;
	width: 100vw;
	max-width: 1400px;
}
.visualIndexSlider .slide li .pic {
	position: relative;
	z-index: 1;
}
.visualIndexSlider .slick-dots {
	position: absolute;
	top: 65%;
	left: 0;
	right: 0;
	letter-spacing: -0.4em;
	text-align: center;
}
.visualIndexSlider .slick-dots li {
	display: inline-block;
	float: none !important;
	width: auto;
	margin: 0 13px;
	letter-spacing: normal;
}
.visualIndexSlider .slick-dots li button {
	display: block;
	width: 12px;
	height: 12px;
	padding: 0;
	line-height: 0;
	text-indent: -9999px;
	cursor: pointer;
	outline: none;
	border-radius: 100%;
	border: 2px solid #fff;
	background: #fff;
	overflow: hidden;
}
.visualIndexSlider .slick-dots li.slick-active button {
	background: #91004f;
}
.visualIndexSlider .scroll {
	position: absolute;
	left: 50%;
	bottom: 20px;
	width: 40px;
	height: 40px;
	margin: 0 0 0 -20px;
}


/*-------------------------------------
 mainArea
-------------------------------------*/
.mainArea {
	padding: 60px 0 30px 0;
}
.mainArea > .inner {
	width: auto;
	padding: 0;
}


/* section
-------------------------------------*/
.section {
	position: relative;
	padding: 0 0 50px 0;
}
.section h2 {
	text-align: center;
}
.section h2 em {
	margin: 0 -0.8em;
	padding: 0;
	transform-origin: top center;
	background: none;
}
.section h2 img {
	background: none;
}
.section h2:before {
	display: none;
}

/* searchBox
-------------------------------------*/
.searchBox {
	width: 1024px;
	margin: 0 auto;
}

/* storeArea
-------------------------------------*/
.storeArea {
	margin: 0 0 50px 0;
	padding: 70px 0;
	background: #f9f9f9;
}
.storeArea h2 em {
	margin: 0 -0.2em;
}
.storeLead {
	margin: 0 0 50px 0;
	font-size: 16px;
	line-height: 1.8;
	text-align: center;
}
.storeList h3 {
	margin: 0 0 15px 0;
	font-size: 18px;
}
.storeNote {
	margin: -10px 0 15px 0;
}

.storeClm {
  --item: 240px;
  --gap: 20px;
  --div: 4;

  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(var(--item), calc((100% - var(--gap) * (var(--div) - 1)) / var(--div)));
  grid-template-rows: auto auto auto;
  justify-content: start;
  column-gap: var(--gap);
	padding-bottom: 40px;
}
.storeList {
  display: grid;
  grid-row: span 3;
  grid-column: span var(--n, 1);
  grid-template: subgrid / subgrid;
}

.storeList:has(li:nth-child(2)) { --n: 2; }
.storeList:has(li:nth-child(3)) { --n: 3; }
.storeList:has(li:nth-child(4)) { --n: 4; }

.storeList h3,
.storeList p,
.storeList ul { grid-column: 1 / -1; }

.storeList h3 { grid-row: 1; }
.storeList p  { grid-row: 2; }
.storeList ul { grid-row: 3; }

.storeList ul {
  display: grid;
  grid-template-columns: subgrid;
  row-gap: var(--gap);
  align-content: start;
  margin: 0;
  padding: 0;
  list-style: none;
}
.storeList li {
  min-width: 0;
	text-align: center;
	vertical-align: top;
	box-sizing: border-box;
	overflow: hidden;
	overflow-wrap: anywhere;
}
.storeList ul li a {
	position: relative;
	display: block;
	overflow: hidden;
}
.storeList ul li p {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	color: #fff;
	font-size: 18px;
	text-align: center;
	word-break: normal;
	transform: translateY(-50%);
}
.storeList ul li p .fs {
	font-size: 0.8em;
}
.storeList ul li .storeMemo {
	padding-top: 5px;
	font-size: 13px;
}








/*-------------------------------------------------------------------
 Media Queries
-------------------------------------------------------------------*/
/* 
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {




}



/* SP layout
-------------------------------------------------------------------*/
@media screen and (max-width: 767px) {

/*-------------------------------------
 header
-------------------------------------*/
header {
	position: relative;
	z-index: 1000;
}

/* headerLogo
-------------------------------------*/
.headerLogo {
	padding: 0 0 5px 0;
}
.headerLogo img {
	width: 130px;
}


/*-------------------------------------
 visualArea
-------------------------------------*/
.visualIndexSlider {
	height: auto;
}
.visualIndexSlider .slide li {
	max-width: 640px;
}
.visualIndexSlider .slide li img {
	max-width: 100%;
}
.visualIndexSlider .slick-dots {
	top: 58%;
}
.visualIndexSlider .slick-dots li button {
	width: 15px;
	height: 15px;
	border: 1px solid #fff;
}
.visualIndexSlider .scroll {
	bottom: 15px;
	width: 60px;
	height: 60px;
	margin: 0 0 0 -30px;
	border-radius: 100%;
	background: url(/urban/images/0000/slide_scroll_sp.png) no-repeat 0 0;
	background-size: 60px 60px;
}
.visualIndexSlider .scroll img {
	opacity: 0;
}
.visualIndexSlider .scroll {
	-webkit-animation-name:scanimation;
	-webkit-animation-duration:2s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease;
	-moz-animation-name:scanimation;
	-moz-animation-duration:2s;
	-moz-animation-iteration-count:infinite;
	-moz-animation-timing-function:ease;
}
@-webkit-keyframes scanimation {
	0% {-webkit-transform:translate(0, 0);}
	50% {-webkit-transform:translate(0, -10px);}
	100% {-webkit-transform:translate(0, 0);}
}
@-moz-keyframes scanimation {
	0% {-moz-transform:translate(0, 0);}
	50% {-moz-transform:translate(0, -10px);}
	100% {-moz-transform:translate(0, 0);}
}

/*-------------------------------------
 mainArea
-------------------------------------*/
.mainArea {
	padding: 20px 0 10px 0;
}

/* section
-------------------------------------*/
.section {
	padding: 0 0 12px 0;
}

/* searchBox
-------------------------------------*/
.searchBox {
	width: auto;
	padding: 0 10px;
}

/* storeArea
-------------------------------------*/
.storeArea {
	margin: 0 0 50px 0;
	padding: 35px 0;
}
.storeLead {
	margin: 0 0 25px 0;
	font-size: 12px;
	text-align: left;
}
.storeList h3 {
	margin: 0 0 5px 0;
	font-size: 15px;
}
.storeNote {
	margin: 0 0 5px 0;
}
.storeClm {
--gap: 10px;
	grid-auto-flow: row;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	grid-template-rows: none;
	column-gap: var(--gap);
	row-gap: 40px;
}
.storeList {
	grid-row: auto;
	grid-column: 1 / -1;
	grid-template-columns: subgrid;
	grid-template-rows: none;
}
.storeList.storeListClmOne {
	grid-column: span 1;
}
.storeList h3,
.storeList p,
.storeList ul {
	grid-row: auto;
}
.storeList ul {
	grid-template-columns: subgrid;
	row-gap: var(--gap);
}
.storeList ul li p {
	font-size: 14px;
}
.storeList ul li .storeMemo {
	font-size: 12px;
}

}







/* PC layout
-------------------------------------------------------------------*/
@media screen and (min-width: 768px) {

.storeList ul li a img {
	-webkit-transition: .3s ease-in-out;
	backface-visibility: hidden;
}
.storeList ul li a:hover img {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
	opacity: 0.8;
}



}



