/* --------------------------------------------------------------------------------
icon
-------------------------------------------------------------------------------- */

@font-face {
  font-family: "icon";
  src: url("./icon.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
i.icon {
  font-family: "icon";
  line-height: 1em;
}
i.icon-facebook:before {
  content: "\e900";
}
i.icon-instagram:before {
  content: "\e901";
}
i.icon-line:before {
  content: "\e902";
}
i.icon-new-window:before {
  content: "\e903";
}



/* --------------------------------------------------------------------------------
store-detail
-------------------------------------------------------------------------------- */

div#content div.store-detail {
  text-align: justify;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-weight: normal;
}
div#content div.store-detail p.headline,
div#content div.store-detail h2 {
	color: #666666;
}
div#content div.store-detail p.headline {
  text-align: left;
	font-size: 18px;
	border-bottom: 1px solid #cccccc;
	margin-bottom: 60px;
	padding-bottom: 5px;
}
div#content div.store-detail p.headline span {
	font-size: 12px;
}
div#content div.store-detail h2 {
	text-align: center;
	font-size: 30px;
	font-weight: normal;
	line-height: 35px;
	margin-bottom: 20px;
}
div#content div.store-detail div.slide {
	margin-bottom: 40px;
}
div#content div.store-detail div.slide div.image {
	position: relative;
	overflow: hidden;
	margin-bottom: 10px;
	padding-bottom: 41.66%;
  opacity: 0;
  transition: 1s oacity ease-in-out;
}
div#content div.store-detail div.slide.active div.image {
  opacity: 1;
}
div#content div.store-detail div.slide div.image p.row {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
}
div#content div.store-detail div.slide div.image p.row img {
	width: 100%;
	height: auto;
}
div#content div.store-detail div.slide div.navi {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	height: 10px;
}
div#content div.store-detail div.slide div.navi p.button {
	width: 50px;
	height: 10px;
	cursor: pointer;
	background-color: #e5e5e5;
	transition: 0.25s background-color ease;
}
@media (max-width:767px) {
div#content div.store-detail div.slide div.navi p.button {
	width: 35px;
}
}
div#content div.store-detail div.slide div.navi p.button:not(:last-child) {
	margin-right: 5px;
}
div#content div.store-detail div.slide div.navi p.button:hover,
div#content div.store-detail div.slide div.navi p.button.active {
	background-color: #808080;
}
div#content div.store-detail div.slide p.caption {
	/* font-size: 12px; */
	font-size: 13px;
	line-height: 10px;
	margin-top: -10px;
}
div#content div.store-detail div.body {
	max-width: 600px;
	/* font-size: 12px; */
	font-size: 13px;
	line-height: 22px;
	margin: auto;
}
div#content div.store-detail div.body a {
	text-decoration: underline;
}
div#content div.store-detail div.body br.small {
	display: none;
}
div#content div.store-detail div.body p.tel a {
	text-decoration: none;
	color: #000000;
}
@media (max-width:767px) {
div#content div.store-detail div.body p.tel a {
	text-decoration: underline;
	color: #666666;
}
div#content div.store-detail div.body br.small {
	display: inline;
}
}
div#content div.store-detail div.body ul.sns {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0px;
}
div#content div.store-detail div.body ul.sns li {
	font-size: 22px;
}
div#content div.store-detail div.body ul.sns li:not(:last-child) {
	margin-right: 5px;
}
div#content div.store-detail div.body ul.sns li a {
	text-decoration: none;
	color: #000000;
	transition: 0.25s color ease;
}
div#content div.store-detail div.body ul.sns li a:hover {
	color: #666666;
}
div#content div.store-detail div.body hr {
	border-color: #cccccc;
	margin: 40px 0px;
}
div#content div.store-detail div.body p.indent {
  text-indent: -1em;
  padding-left: 1em;
}
div#content div.store-detail div.body div.charter,
div#content div.store-detail div.body div.access {
	margin-top: 40px;
	padding: 20px;
	background-color: #ededed;
}
div#content div.store-detail div.body div.charter h3,
div#content div.store-detail div.body div.access h3 {
	font-size: 14px;
	font-weight: normal;
	border-bottom: 1px solid #ffffff;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
div#content div.store-detail div.body div.charter p.button {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size: 14px;
	margin-top: 20px;
}
div#content div.store-detail div.body div.charter p.button a {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 180px;
	height: 36px;
	text-decoration: none;
	color: #000000;
	background-color: #ffffff;
	border-radius: 5px;
	transition: 0.25s color ease, 0.25s background-color ease;
}
div#content div.store-detail div.body div.charter:has(p.button-moc) {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-bottom: 0px;
}
div#content div.store-detail div.body div.charter:has(p.button-moc) p.button {
	margin: 0px 10px 20px 10px;
}
div#content div.store-detail div.body div.charter p.button a:hover {
	color: #ffffff;
	background-color: #666666;
}
div#content div.store-detail div.body div.charter p.button-moc a {
	color: #ffffff;
	background-color: #6f1525;
}
div#content div.store-detail div.body div.charter p.button-moc a:hover {
	background-color: #a1685f;
}



/* --------------------------------------------------------------------------------
modal
-------------------------------------------------------------------------------- */

div#modal {
	box-sizing: border-box;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
  overflow: auto;
	z-index: 9999;
	pointer-events: none;
	padding: 100px 0px;
	opacity: 0;
	-webkit-overflow-scrolling: touch;
}
div#modal.active {
	pointer-events: auto;
	opacity: 1;
	transition: 0.25s opacity ease;
}
div#modal > div.background {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	background-color: rgba(4, 28, 44, 0.8);
}
div#modal div.inner-modal {
  box-sizing: border-box;
	position: relative;
	max-width: 1040px;
  width: calc(100% - 40px);
	margin: auto;
  padding: 40px;
	background-color: #ffffff;
}
div#modal div.inner-modal p.button-close {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
	position: absolute;
	width: 160px;
  height: 35px;
	left: calc(50% - 80px);
	bottom: -55px;
  text-align: center;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-size: 14px;
  color: #ffffff;
  border: 1px solid #ffffff;
	cursor: pointer;
  border-radius: 5px;
  transition: 0.25s background-color ease;
}
div#modal div.inner-modal p.button-close:hover {
  color: #000000;
  background-color: #ffffff;
}
div#modal div.container {
  display: none;
}
div#modal div.container.active {
  display: block;
}
@media (max-width:767px) {
div#modal {
	padding: 60px 0px;
}
div#modal div.inner-modal {
  padding: 20px;
}
}
