.hanNav .nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0,0,0,0.95);
  color: #FFF;
  visibility: hidden;/* 初期：非表示 */
  opacity: 0;
  transition: 0.3s ease-in-out;/* ふわっと表示 */
  text-align: center;
  padding-top: 5px
}
.hanNav .nav ul { list-style:none; display:flex; flex-wrap:wrap; border-top:#FFF 2px solid }
.hanNav .nav ul li { width:50%; border-bottom:#FFF 2px solid; text-align:left; box-sizing:border-box }
.hanNav .nav ul li:nth-of-type(2n) { border-left:#FFF 2px solid }
.hanNav .nav ul li:nth-child(2n+1):last-child { width:100% }
.hanNav .nav a { color: #FFF; padding:10px; display:block }
/* ナビゲーションボタン（開く） */
button#headNavBtn {
  position: fixed;
  top: 15px;
  right: 10px;
  padding: 0;
  outline: none;
  border: none;
  background: transparent none;
  display: block;
  width: 30px;
  height: 30px;
  cursor: pointer;
  font-size: 30px;
}
button#headNavBtn::before {
  font-family: "Font Awesome 5 Free"; content:"\f0c9"; font-weight:900;
  color: #333
}
body.open button#close { display:block; width:80%; margin:20px auto }

/* ナビゲーションボタン（閉じる） */
button.open#headNavBtn { z-index: 200 }
button.open#headNavBtn::before {
  font-family: "Font Awesome 5 Free"; content:"\f00d"; font-weight:900;
  color: #FFF
}
/* ナビゲーションメニュー 開いた時*/
body.open .nav {
  visibility: visible;
  opacity: 1
}