@charset "utf-8";

/*+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
取り扱い店
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+*/
.page-header {
	background-image: url("../img/shop/header.jpg");
}

/*+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- 都道府県
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+*/
.shop-prefecture {
	padding-bottom: 0;
}

.shop-prefecture .section-description {
	margin-bottom: 6px;
}

.shop-prefecture table {
	margin-bottom: -20px;
}

.shop-prefecture th {
	padding-bottom: 6px;
	font-weight: 800;
}

.shop-prefecture td {
	padding-bottom: 20px;
}

.shop-prefecture-ul {
	display: flex;
	margin: 0 -11px -13px 0;
	flex-flow: wrap;
}

.shop-prefecture-li {
	margin: 0 11px 13px 0;
	cursor: pointer;
	transition: 0.1s ease-in-out;
}

.shop-prefecture-li::before {
	display: inline-block;
	width: 0.4em;
	height: 0.4em;
	margin-right: 0.5em;
	border-top: 1px solid;
	border-right: 1px solid;
	vertical-align: 0.2em;
	content: "";
	transform: rotate(45deg);
}

.shop-prefecture-li:not([data-prefecture]) {
	color: var(--color-gray);
	pointer-events: none;
}

@media (min-width: 768px) {
.shop-prefecture .section-description {
	margin-bottom: 30px;
}

.shop-prefecture table {
	margin-bottom: -26px;
	line-height: 1.3;
}

.shop-prefecture th {
	width: 16%;
	min-width: 150px;
	padding-bottom: 26px;
}

.shop-prefecture td {
	padding-bottom: 26px;
}

.shop-prefecture-ul {
	margin-right: -21px;
}

.shop-prefecture-li {
	margin-right: 21px;
	border-bottom: 1.5px solid transparent;
}

.shop-prefecture-li.select,
.shop-prefecture-li:hover {
	border-color: inherit;
}
}

@media (max-width: 767.9px) {
.shop-prefecture-li {
	padding: 0 9px;
	border: 1.5px solid;
}

.shop-prefecture-li.select,
.shop-prefecture-li:hover {
	border-color: var(--color-black);
	background: var(--color-black);
	color: var(--color-white);
}
}

/*+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- 一覧
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+*/
.shop-list {
	padding-top: 0;
}

.shop-list .heading_border {
	margin-top: 97px;
}

.shop-ul {
	margin-bottom: -50px;
}

.shop-li {
	margin-bottom: 50px;
}

.shop-li .image {
	margin-bottom: 24px;
}

.shop-li th {
	width: 116px;
}

@media (min-width: 640px) {
.shop-ul {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
}

.shop-li {
	width: 48.3%;
}
}

@media (min-width: 768px) {
.shop-list .heading_border {
	margin-top: 110px;
}

.shop-ul {
	margin-bottom: -60px;
}

.shop-li {
	margin-bottom: 60px;
}

.shop-li .image {
	margin-bottom: 40px;
}

.shop-li th {
	width: 128px;
}
}
