@charset "utf-8";


/* -------------------------------------------------------
   shop
------------------------------------------------------- */

/* nav
------------------------------------------------------- */
.sNav{
  max-width: 1118px;
  margin:0 auto 50px;
  position: relative;
  z-index: 10;
}
.sNav ul{
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.sNav ul li{
  width: 15%;
}
.sNav ul li a{
  position:relative;
  text-decoration: none;
  font-size: 114%;
  color: #000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.sNav ul li a::before{
  content:"\f107";
  padding-right: 3px;
  font-family: "fontAwesome";
}
.sNav ul li a::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: #000;
  content: '';
  margin: auto;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
.sNav ul li a:hover::after {
  width: 100%;
}
@media all and (max-width: 767px) {
  .sNav{
    max-width:100%;
    margin:20px auto 30px;
  }
  .sNav ul{
    width: 90%;
    margin:0 auto;
    justify-content :space-between;
  } 
  .sNav ul li{
    width: 48%;
    text-align: left;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: solid 1px #ddd;
  }
}


/* shopInfo
------------------------------------------------------- */
.shopInfo{
  width: 100%;
  margin:0 auto 100px;
}
.shopInfo dt{
  display: block;
  position: relative;
  border-bottom: solid 1px #666;
  font-size: 166%;
  font-family: "ten-mincho", serif;
  font-feature-settings: "ss02";
  margin-bottom: 40px;
  padding-bottom: 10px;
  font-weight: normal;
  cursor: pointer !important;
}
.shopInfo dt::after{
  content: "\f107";
  font-family: "fontAwesome";
  position: absolute;
  right: 5px;
  top:0;
  bottom: 0;
  margin: auto;
  height: 1em;
}
.shopInfo dt.open::after{
  content: "\f106";
  font-family: "fontAwesome";
  position: absolute;
  right: 5px;
  top:0;
  bottom: 0;
  margin: auto;
  height: 1em;
}
.shopInfo dd{
  display: none;
  padding-bottom: 30px;
}
.shopInfoTxt{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.shopInfoTxt > table{
  width: 50%;
  border-top:solid 1px #ccc;
}
.shopInfoTxt > table th,
.shopInfoTxt > table td{
  padding:  12px 0;
  border-bottom:solid 1px #ccc;
}
.shopInfoTxt > table th{
  font-weight: normal;
  padding-right: 20px;
  text-align: left;
}
.shopInfoTxt > table th .fa{
  padding-right: 5px;
}
.shopInfoTxt > .shopMap{
  width: 45%;
}

@media all and (max-width: 767px) {
  .shopInfo{
    margin:0;
  }
  .shopInfoTxt > table,
  .shopInfoTxt > .shopMap{
    width: 100%;
  }
  .shopInfoTxt > table{
    margin-bottom: 20px;
  }
  .shopInfo dt{
    font-size: 146%;
  }
}

