.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

header {
  /* display: none; */
  height: 60px;
  position: fixed;
  width: 100%;
  z-index: 10;
  top: 0;
  background: white;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span,
#nav-open span:before,
#nav-open span:after {
  position: absolute;
  height: 3px;
  /*線の太さ*/
  width: 25px;
  /*長さ*/
  border-radius: 3px;
  background: #423f55;
  display: block;
  content: '';
  cursor: pointer;
  /* right: 90px; */
}

#nav-open span:before {
  bottom: -8px;
}

#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;
  /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  width: 90%;
  max-width: 300px;
  /*最大幅（調整してください）*/
  height: 100%;
  background: #ffffff;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(105%);
  transform: translateX(105%);
}

input {
  display: none;
}

#nav-input:checked~#nav-close {
  display: block;
  /*カバーを表示*/
  opacity: .5;
}

#nav-input:checked~#nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
}

label#nav-open {
  width: 10px;
  height: 10px;
  display: block;
  position: fixed;
  right: 37px;
  top: 20px;
}

.map {
  width: 270px;
  margin: 20px auto;
}

.map img {
  width: 100%;
}

div#nav-content li {
  padding: 7px 35px;
  border-bottom: 1px solid #ccc;
}

div#nav-content li:first-child {
  border-top: 1px solid #ccc;
}

.headInner {
  width: 100%;
  margin: 0 auto;
}

.logo {
  width: 110px;
  float: left;
  margin-top: 7px;
  padding-bottom: 8px;
  margin-left: 11px;
}

.logo img {
  width: 100%;
}

header nav {
  float: right;
  margin-top: 39px;
  display: none;
}

nav li {
  float: left;
  margin-right: 10px;
  color: #a7a6a6;
  font-weight: bold;
}

nav li:first-child {
  display: none;
}

.now a {
  color: #24232f;
  padding-bottom: 5px;
}

li.on {
  color: #a7a6a6;
}

li.uc {
  color: #e0e0e0;
  opacity: 0.5;
}