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

/******* 地図成形 *******/
#japan-map div div.area div {
	border: 1px #ffffff solid;
	text-align: center;
	font-size: 14px;
 	display: flex;
		display: -webkit-flex;
 	align-items: center; /* 縦方向中央揃え */
 		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 	justify-content: center; /* 横方向中央揃え */
 		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	border-radius: 3px;
		-webkit-border-radius: 6px;
	position: absolute;
	box-sizing: border-box;
	transition: 0.2s;
}
#japan-map div div.area div:hover {
	opacity: 0.5;
	transition: 0.2s;
}

#japan-map {
	display: block;
	width: 777px;
	height: 482px;
	background-color: none;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
#japan-map p.area-title {
	display: none;
}

/* 北海道・東北 */

#hokkaido-touhoku {
	width: 136px;
	display: block;
	height: 265px;
	position: absolute;
	left: 638px;
}
#hokkaido-touhoku div.area div {
	background-color: #1fa9d8;
	color: #ffffff;
}

#hokkaido {	
	width: 133px;
	height: 70px;
    left: 3px;
}
#aomori {
	width: 133px;
	height: 43px;
	left: 3px;
	top: 96px;
}
#akita {
	width: 67px;
	height: 42px;
	left: 3px;
	top: 139px;

}
#iwate {
	width: 67px;
	height: 42px;
	left: 70px;
	top: 139px;
}
#yamagata {
	width: 67px;
	height: 42px;
	top: 181px;
	left: 3px;
}
#miyagi {
	width: 67px;
	height: 42px;
	top: 181px;
	left: 70px;
}
#fukushima {
	width: 67px;
	height: 42px;
	top: 223px;
	left: 70px;
}

/* 関東 */

#kantou {
	width: 158px;
	display: block;
	height: 174px;
	position: absolute;
	top: 265px;
	left: 623px;
	z-index: 2;
}
#kantou div.area div {
	background-color: #4cb03e;
	color: #ffffff;
}
#ibaraki {
	width: 52px;
	height: 85px;
	top: 0px;
	left: 100px;
}
#tochigi {
	width: 50px;
	height: 42px;
	top: 0px;
	left: 50px;
}
#gunma {
	width: 50px;
	height: 42px;
	top: 0px;
	left: 0px;
}
#saitama {
	width: 100px;
	height: 43px;
	top: 42px;
	left: 0px;
}
#chiba {
	width: 52px;
	height: 84px;
	top: 85px;
	left: 100px;
}
#tokyo {
	width: 100px;
	height: 42px;
	top: 85px;
	left: 0px;
}
#kanagawa {
	width: 67px;
	height: 42px;
	top: 127px;
	left: 0px;
}

/* 中部 */

#tyubu {
	width: 270px;
	height: 211px;
	position: absolute;
	left: 438px;
	top: 223px;
}
#tyubu div.area div {
	background-color: #e8971d;
	color: #ffffff;
}

#niigata {
	width: 85px;
	height: 42px;
	left: 185px;
}
#toyama {
	width: 67px;
	height: 42px;
	left: 118px;
}
#ishikawa {
	width: 50px;
	height: 57px;
	left: 68px;
}
#fukui {
	width: 68px;
	height: 42px;
	left: 0px;
	z-index: 2;
}
#nagano {
	width: 67px;
	height: 85px;
	left: 118px;
	top: 42px
}
#yamanashi {
	width: 67px;
	height: 42px;
	left: 118px;
	top: 127px;
}
#gifu {
	width: 50px;
	height: 55px;
	left: 68px;
	top: 57px
}
#shizuoka {
	width: 67px;
	height: 42px;
	left: 118px;
	top: 169px;
}
#aichi {
	width: 50px;
	height: 57px;
	top: 112px;
	left: 68px;
}

/* 近畿 */

#kinki {
	width: 186px;
	height: 211px;
	position: absolute;
	left: 320px;
	top: 223px;
}
#kinki div.area div {
	background-color: #9a60b7;
	color: #ffffff;
}

#kyoto {
	width: 67px;
	height: 84px;
	left: 51px;
}
#shiga {
	width: 68px;
	height: 42px;
	top: 42px;
	left: 118px;
}
#osaka {
	width: 67px;
	height: 85px;
	top: 84px;
	left: 51px;
}
#nara {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 118px;
}
#mie {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 152px;
}
#wakayama {
	width: 113px;
	height: 42px;
	top: 169px;
	left: 61px;
}
#hyogo {
	width: 51px;
	height: 98px;
	left: 0px;
}

/* 中国 */

#tyugoku {
	width: 151px;
	height: 98px;
	position: absolute;
	left: 169px;
	top: 223px;
}
#tyugoku div.area div {
	background-color: #ff6f0f;
	color: #ffffff;
}
#tottori {
	width: 50px;
	height: 49px;
	left: 101px;
}
#okayama {
	width: 50px;
	height: 49px;
	top: 49px;
	left: 101px;
}
#shimane {
	width: 51px;
	height: 49px;
	left: 50px;
}
#hiroshima {
	width: 51px;
	height: 49px;
	top: 49px;
	left: 50px;
}
#yamaguchi {
	width: 50px;
	height: 98px;
	left: 0px;
}

/* 四国 */

#shikoku {
	width: 184px;
	height: 84px;
	position: absolute;
	left: 169px;
	top: 350px;
}
#shikoku div.area div {
	background-color: #e5546a;
	color: #ffffff;
}
#kagawa {
	width: 92px;
	height: 42px;
	right: 0px;
}
#ehime {
	width: 92px;
	height: 42px;
	left: 0px;
}
#tokushima {
	width: 92px;
	height: 42px;
	right: 0px;
	top: 42px;
}
#kochi {
	width: 92px;
	height: 42px;
	left: 0px;
	top: 42px;
}

/* 九州・沖縄 */

#kyusyu {
	width: 152px;
	height: 247px;
	position: absolute;
	left: 0px;
	top: 235px;
}
#kyusyu div.area div {
	background-color: #4dbdb8;
	color: #ffffff;
}
#fukuoka {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 0px;
}
#saga {
	width: 50px;
	height: 50px;
	left: 51px;
	top: 0px;
}
#nagasaki {
	width: 50px;
	height: 50px;
	left: 1px;
	top: 0px;
}
#oita {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 50px;
}
#kumamoto {
	width: 50px;
	height: 100px;
	left: 51px;
	top: 50px;
}
#miyazaki {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 100px;
}
#kagoshima {
	width: 68px;
	height: 49px;
	left: 83px;
	top: 150px;
}
#okinawa {
	width: 50px;
	height: 50px;
	left: 1px;
	top: 197px;
}


/* #search-result
--------------------------------------------*/
#search-result.wrap {
	display: -webkit-flex;
	display: flex;
}


/* .shop-search-box
--------------------------------------------*/
.shop-search-box {
	background: #fff;
	border-radius: 6px;
	padding: 40px;
	width: 80%;
	margin: 40px auto;
	box-shadow: 0px 0px 10px -5px #4a4a4a;
}
.shop-search-box ul li h4 {
	font-weight: bold;
	font-size: 20px;
	text-align: center;
}
.shop-search-box ul li [type="submit"] {
	width: 300px;
	margin: 20px auto 0;
	display: block;
}
.shop-search-box ul li ul {
	display: flex;
	flex-wrap: wrap;
}
.shop-search-box ul li ul li {
	width: calc((100% - 60px) / 3);
	margin: 0 10px;
}

.shop-search-area .subtitle {
	text-align: center;
	margin-bottom: 40px;
}
.shop-search-area .subtitle .wow {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}


/* #side
--------------------------------------------*/
#side .search-whole-country {
	background: #e9f0ec;
    padding: 10px 20px 20px 20px;
}


/* .page-prefecture
--------------------------------------------*/
.page-prefecture .post-title {
	margin: 0 0 40px 0;
	display: -webkit-flex;
	display: flex;
}
.page-prefecture .post-title .title {
	padding: 20px;
	line-height: 1.4;
	background: #26383c;
	color: #fff;
	width: 100%;
	box-sizing: border-box;
	border-radius: 0 14px 14px 0;
}
.page-prefecture .post-title:before {
	content: "";
	width: 8px;
	background: #72BC78;
}
.page-prefecture .search-box h4 {
	margin-bottom: 20px;
}

.page-prefecture .bnr-area {
	width: 80%;
	margin: 40px auto;
}
.page-prefecture .search-box {
	background: #e9f0ec;
	padding: 20px;
}
.page-prefecture .search-box .searchandfilter ol,
.page-prefecture .search-box .searchandfilter ul {
    padding: 0;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children {
	margin-top: 10px;
	margin-left: 0;
	display: flex;
	flex-wrap: wrap;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li {
	width: calc((100% - 20px) / 3);
	margin-right: 10px;
	display: -webkit-flex;
	display: flex;
    align-items: center;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li:nth-of-type(3n) {
	margin-right: 0;
}
.page-prefecture .search-box .searchandfilter .sf-field-submit [type="submit"] {
	width: 200px;
}
.page-prefecture .shop-list {
	margin-top: 40px;
}
.page-prefecture .search-box .searchandfilter ul li ul li label {
	font-weight: bold;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li label {
	font-weight: normal;
}
.page-prefecture .pref-upper-contents,
.page-prefecture .pref-contents-list,
.page-prefecture .pref-middle-contents,
.page-prefecture .pref-under-contents {
	margin-top: 60px;
}
.page-prefecture .pref-middle-contents {
	margin-bottom: 60px;
}


/*.shop-list
--------------------------------------------*/
.shop-list ul {
	margin: 0;
	padding: 0;
}
.shop-list ul li {
	padding-left: 0;
}
.shop-list ul li:before {
	content: none;
}
.shop-list ul li h3 {
	margin: 0;
}
.shop-list ul li .shop-discription {
	margin: 10px 0;
}
.shop-list ul li .shop-discription p {
	margin: 0;
}
.shop-list .sort-menu {
	margin-bottom: 20px;
	font-weight: bold;
}
.shop-list .sort-menu ul {
	display: flex;
	justify-content: flex-end;
}
.shop-list ul li th {
	background: #F0EFE9;
	color: #383838;
	width: 20%;
}
.shop-list ul li td .store_options_1,
.shop-list ul li td .store_options_2 {
	display: flex;
	flex-wrap: wrap;
}
.shop-list ul li td .store_options_1 li,
.shop-list ul li td .store_options_2 li {
	margin-bottom: 0;
	margin: 5px 10px 5px 0;
	width: 108px;
	border-radius: 30px;
	text-align: center;
	padding: 4px 0;
	line-height: 1;
	color: #fff;
	font-weight: bold;
}
.shop-list ul li td .store_options_1 li {
	background: #31beca;
}
.shop-list ul li td .store_options_2 li {
	background: #faba43;
}


/* .pagenation
--------------------------------------------*/
.pagenation ul{
	display: flex;
	justify-content: center;
	margin: 3em;
	list-style: none;
}
.pagenation li{
	margin: 0 5px;
}
.pagenation li.active,
.pagenation li a{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #26383c;
	box-sizing: border-box;
	font-weight: bold;
    padding: 10px;
    width: 50px;
    height: 50px;
    font-size: 16px;
}
.pagenation li a{
	color: #26383c;
	text-decoration: none;
}
.pagenation li.active,
.pagenation li a:hover{
	color: #ffffff;
	text-decoration: none;
	background: #26383c;
}


/* .searchandfilter
--------------------------------------------*/
.searchandfilter ul li:before {
	content: none;
}
.sf-field-submit [type="submit"] {
	background: #72BC78;
	border-radius: 8px;
	margin: 0 auto;
	display: block;
	width: 140px;
	padding: 8px 0;
}
.sf-field-submit [type="submit"]:hover {
	opacity: 0.8;
}
.searchandfilter h4 {
	font-weight: bold;
	color: #26383c;
}
.searchandfilter li[data-sf-field-input-type=checkbox] label,
.searchandfilter li[data-sf-field-input-type=radio] label,
.searchandfilter li[data-sf-field-input-type=range-radio] label,
.searchandfilter li[data-sf-field-input-type=range-checkbox] label {
	width: calc(100% - 16px - 10px);
}
.searchandfilter ul li li {
	display: flex;
	align-items: center;
	line-height: 1.4;
	font-size: 14px;
	margin: 5px 0;
}
.search-box .searchandfilter ul li li {
	flex-wrap: wrap;
}


/* form
--------------------------------------------*/
input[type="checkbox"],
input[type="radio"] {
    height: 18px;
    width: 18px;
	background: #fff;
	/* -webkit-appearance: none; */
	border: 1px solid #666;
}
input[type="checkbox"] {
	border-radius: 4px;
}
input[type="checkbox"]:checked {
	background: #26383c;
}





/****************************************
	レスポンシブ

****************************************/
@media screen and (max-width: 767px) {

/* #japan-map
--------------------------------------------*/
#japan-map {
	display: block;
	width: 100%;
	height: auto;
}
#hokkaido-touhoku, #kantou, #tyubu, #kinki, #tyugoku, #shikoku, #kyusyu {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: auto;
	position: static;
	margin-left: 0px;
	margin-right: 0px;
}
#japan-map div div.area {
	font-size: 14px;
 	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
#japan-map div div.area a {
	height: auto;
	width: 25%;
}
#japan-map div div.area div {
 	display: block;
	border-radius: 0px;
	position: static;
	height: auto;
	font-size: 16px;
	width: 100%;
	padding: 0.5em 0.3em 0.5em 0.3em;
}
#japan-map div div.area a {
	text-decoration: none;
}
.shop-search-box {
    border-radius: 6px;
    padding: 10px;
    width: 100%;
    margin: 20px auto;
}
.shop-search-box ul li ul li {
    width: calc((100% - 40px) / 2);
    margin: 0 10px;
}


/* pagenation
--------------------------------------------*/
.pagenation li.active,
.pagenation li a {
	padding: 5px;
    width: 36px;
    height: 36px;
    font-size: .857rem;
}


/* #search-result
--------------------------------------------*/
#search-result.wrap {
	display: block;
}


/* .page-prefecture
--------------------------------------------*/
.page-prefecture .post-title {
	margin: 0 0 20px 0;
}
.page-prefecture .post-title .title {
	padding: 10px;
	border-radius: 0 10px 10px 0;
	font-size: 20px;
}
.page-prefecture .post-title:before {
	width: 4px;
}
.page-prefecture .bnr-area {
    width: 90%;
    margin: 20px auto;
}
.page-prefecture .search-box {
    padding: 10px;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li {
	width: calc((96% - 5px) / 2);
	margin-right: 5px;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li:nth-of-type(2n) {
	margin-right: 0;
}
.page-prefecture .search-box .searchandfilter ul li ul li ul.children li:nth-of-type(3n) {
	margin-right: 5px;
}
.page-prefecture .pref-upper-contents,
.page-prefecture .pref-contents-list,
.page-prefecture .pref-middle-contents,
.page-prefecture .pref-under-contents {
	margin-top: 40px;
}
.page-prefecture .pref-middle-contents {
	margin-bottom: 40px;
}


/* .shop-list
--------------------------------------------*/
.shop-list ul li th,
.shop-list ul li td {
	display: block;
	width: 100%;
	padding: 4px 10px;
	border: none;
}
.shop-list ul li td .store_options_1 li,
.shop-list ul li td .store_options_2 li {
    margin: 3px 6px 3px 0;
    width: 90px;
    font-size: 10px;
}
.shop-list ul li .shop-discription,
.shop-list ul li .shop-discription p {
	font-size: 14px;
}


} /* レスポンシブ max-767px */