@charset "utf-8";
/* html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark */
html,body,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
abbr,address,cite,code,
del,dfn,em,img,ins,kbd,q,samp,
small,strong,sub,sup,var,
b,i,dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td,
article,aside,canvas,details,figcaption,figure,d
footer,header,hgroup,menu,nav,section,summary,
time,mark,audio,video { margin:0; padding:0; border:0; outline:0; vertical-align:bottom; background:transparent;}
body { line-height:1; -webkit-text-size-adjust: 100%;}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { display:block;}
ul li { list-style:none;}
blockquote, q { quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none;}

a { margin:0; padding:0; color: #666; text-decoration: none; vertical-align:baseline;}
a:hover { opacity: 0.7;}

del { text-decoration: line-through;}
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help;}
table { border-collapse:collapse; border-spacing:0;}

/* change border colour to suit your needs */ 
hr { display:block; height:1px; border:0;  border-top:1px solid #cccccc; margin:1em 0; padding:0;}
input, select { vertical-align:middle;}

/* ===================================================================================
  resetここまで
=================================================================================== */

body, p {
	font-family: 'メイリオ', Meiryo,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	color: #333;
	font-size: 15px;
}
a {
  color: #00AB4E;
  text-decoration: underline;
}

.sp_only {display: none;}
.wrap {
  background: #F2F9FD;
  padding: 80px 0 150px;
}

.shop_list {
  width: 1000px;
  margin: 0 auto;
  background: #fff;
  border-radius: 20px 20px 0 0;
}
.shop_list .title {
  text-align: center;
  background: #333;
  border-radius: 20px 20px 0 0;
  padding: 21px 0;
}
.shop_list .title h2 {
  color: #fff;
  font-size: 26px;
  line-height: 34px;
  letter-spacing: 2px;
  margin-bottom: 1em;

}
.shop_list .note p{
  color: #fff;
  font-weight: normal;
  font-size: 14px;
  line-height: 18px;
  margin-top: 0.5em;
}

.shop_list .annotation {
  text-align: center;
  font-weight: bold;
  font-size : 22px;
  letter-spacing : .08em;
  color : #ED1C24;
  margin: 45px 0 -30px;
}

.shop_list .annotation br {
  display: none;
}

.search_area h3 {
  color: #00AB4E;
  font-size: 20px;
  line-height: 70px;
  text-align: center;
  letter-spacing: 1px;
  width: 900px;
  margin: 60px auto 35px;
  background: #E5F7ED;
  border: solid 1px #00AB4E;
  border-radius: 10px;
}
.search_area_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 900px;
  margin: 0 auto 50px;
}
.search_area_list .area {
  width: 240px;
  margin-right: 60px;
}
.search_area_list .area h4 {
  font-size: 20px;
  line-height: 30px;
  letter-spacing: 1px;
  padding-left: 10px;
  border-left: solid 5px #333;
}
.search_area_list .area ul {
  display: flex;
  flex-wrap: wrap;
  min-height: 45px;
  margin: 7px 0 25px;
  padding-left: 10px;
}
.search_area_list .area ul li { margin: 0 10px 8px 0;}

.district { padding-bottom: 20px;}
.district h3 {
  color: #fff;
  font-size: 25px;
  text-align: center;
  line-height: 70px;
  letter-spacing: 2px;
  background: #333;
  margin-bottom: 30px;
}
.city_list {
  width: 900px;
  margin: 0 auto 30px;
  border: solid 1px #999;
}
.city_list h4 {
  color: #fff;
  font-size: 20px;
  text-align: center;
  line-height: 40px;
  letter-spacing: 1px;
  background: #999;
}
.city_list ul {
  display: flex;
  flex-wrap: wrap;
  width: 760px;
  margin: 20px auto;
}
.city_list ul li { margin: 0 12px 12px 0;}


.city {
  width: 900px;
  margin: 0 auto 80px;
}
.city h5 {
  font-size: 20px;
  line-height: 30px;
  font-weight: normal;
  padding-left: 10px;
  border-left: solid 5px #333;
}
.city .city_shop_list li { margin-top: 20px;}
.city .city_shop_list table {
  width: 100%;
  border: solid 1px #999;
}
.city .city_shop_list table th {
  font-weight: normal;
  text-align: center;
  width: 120px;
  padding: 17px 0;
  background: #F2F2F2;
  border-right: solid 1px #999;
  border-bottom: solid 1px #999;
}
.city .city_shop_list table td {
  padding: 17px 40px;
  border-bottom: solid 1px #999;
}
.city .city_shop_list table tr:last-of-type th,
.city .city_shop_list table tr:last-of-type td { border-bottom: none;}

#page_top{
  position: fixed;
  right: 30px;
  bottom: -100px;
}
#page_top a{
  position: relative;
  display: block;
  width: 70px;
  height: 70px;
  background: url("../img/page_top.jpg") 0 0 no-repeat;
  background-size: 100%;
  box-shadow: 3px 3px 5px rgba(0,0,0,0.1);
}


@media screen and (min-width:768px) and ( max-width: 1000px) {
  .sp_only {display: none;}
  .shop_list { width: 100%;}
  .search_area h3 { width: 90vw;}
  .search_area_list { width: 90vw;}
  .search_area_list .area {
    width: 210px;
    margin-right: 20px;
  }
  .city_list { width: 90vw;}
  .city_list ul { width: 76vw;}
  .city { width: 90vw;}
  
  #page_top a{
    width: 70px;
    height: 70px;
  }
  
}

@media screen and ( max-width: 767px) {
  body, p { font-size: 3.7vw;}
  a:hover { opacity: 1;}
  .sp_only {display: initial;}
  .pc_only {display: none;}
  .wrap { padding: 10.7vw 0 20vw;}

  .shop_list {
    width: 92vw;
    border-radius: 2.7vw 2.7vw 0 0;
  }
  .shop_list .title{
    border-radius: 2.7vw 2.7vw 0 0;
    padding: 5vw 1vw;
  }
  .shop_list .title h2 {
    font-size: 4vw;
    line-height: 5vw;
  }
  
  .shop_list .title p {
    font-size: 3.4vw;
    line-height: 4.25vw;
  }
  
  .shop_list .annotation {
    font-size : 4.27vw;
    line-height: 5.6vw;
    margin: 3.2vw 0 -3vw;
  }
    .shop_list .annotation br {
    display: block;
  }
  
  .search_area h3 {
    font-size: 4vw;
    line-height: 10.7vw;
    width: 84vw;
    margin: 5.3vw auto;
    border-radius: 1.3vw;
  }
  .search_area_list {
    display: block;
    width: 84vw;
    margin: 0 auto 12vw;
  }
  .search_area_list .area {
    width: 100%;
    margin-right: 0;
  }
  .search_area_list .area h4 {
    font-size: 4.8vw;
    line-height: 7.2vw;
    padding-left: 2.4vw;
    border-left: solid 1.3vw #333;
  }
  .search_area_list .area ul {
    display: flex;
    flex-wrap: wrap;
    height: auto;
    margin: 1.6vw 0 6.7vw;
    padding-left: 3.3vw;
  }
  .search_area_list .area ul li {
    margin-right: 2.7vw;
    margin-bottom: 2vw;
  }

  .district { padding-bottom: 9.3vw;}
  .district h3 {
    font-size: 4.8vw;
    line-height: 10.7vw;
    margin-bottom: 6.7vw;
  }
  .city_list {
    width: 84vw;
    margin: 0 auto 6.7vw;
  }
  .city_list h4 {
    font-size: 4vw;
    line-height: 8vw;
  }
  .city_list ul {
    display: flex;
    flex-wrap: wrap;
    width: 76.7vw;
    margin: 5.3vw auto;
  }
  .city_list ul li { margin: 0 2.7vw 3.3vw 0;}


  .city {
    width: 84vw;
    margin: 0 auto 6.7vw;
  }
  .city h5 {
    font-size: 4vw;
    line-height: 6vw;
    font-weight: normal;
    padding-left: 2vw;
    border-left: solid 0.9vw #333;
  }
  .city .city_shop_list li { margin-top: 4vw;}
  .city .city_shop_list table {
    width: 100%;
    border: solid 1px #999;
  }
  .city .city_shop_list table th {
    line-height: 1.4;
    vertical-align: middle;
    width: 16vw;
    padding: 3.1vw 0;

  }
  .city .city_shop_list table td {
    line-height: 1.4;
    vertical-align: middle;
    padding: 3.1vw 4.7vw;
  }
  
  #page_top a{
    width: 13.3vw;
    height: 13.3vw;
  }
}
