@charset "UTF-8";
/* CSS Document */
.hamburger-demo-menulist summary {
  margin-bottom: 10px;
}
.hamburger-demo-menulist .article ul li {
  font-size: 14px;
  line-height: 20px;
}
/* 全体調整CSS */
.hamburger-demo-menubox * {
  font-size: 16px;
}
.hamburger-demo-menubox li {
  font-size: 14px;
}
/* hamburgerここから */
/* inputを非表示 */
.input-hidden {
  display: none;
}
/* label */
.hamburger-demo-switch {
  cursor: pointer;
  position: absolute;
  right: 3%;
  top: 0; /* ハンバーガーアイコンの位置（上から） */
  z-index: 9999;
  width: 4em; /* アイコン（クリック可能領域）の幅 */
  height: 4em; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburger-demo-switch {
  position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after {
  width: 25px;
  height: 3px;
  background: #333; /* ハンバーガーアイコンの色 */
  position: absolute;
  top: 50%;
  left: 50%;
  transition: .3s;
  content: "";
}
.hamburger-switch-line1 {
  transform: translate(-50%, -50%);
}
.hamburger-switch-line1:before {
  transform: translate(-50%, -300%);
}
.hamburger-switch-line1:after {
  transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1 {
  width: 0;
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:before {
  transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:after {
  transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburger-demo-menuwrap {
  position: fixed;
  height: 100%;
  background: #fafafa; /* メニューエリアの背景色 */
  padding: 5em 3% 2em;
  z-index: 9998;
  transition: .3s;
  overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
  top: 0;
  left: 100%;
  width: 70%;
}
/* メニューリスト */
.hamburger-demo-menulist {
  margin-right: 3%;
  padding-left: 5% !important; /* !important不要な場合もあり */
  list-style: none;
}
.hamburger-demo-menulist li a {
  text-decoration: none;
  color: #333; /* メニューリストの文字色 */
  display: block;
  padding: .5em 0;
}
/* メニューエリア･アニメーション */
/* 右から */
#hamburger-demo1:checked ~ .hamburger-demo-menuwrap {
  left: 30%;
}
/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburger-demo-cover {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9997;
  background: rgba(3, 3, 3, .5);
  display: block;
}
@media all and (min-width: 768px) {
  .hamburger-demo-menubox {
    display: none;
  }
}
/* PCではハンバーガーメニューを表示しない */
@media (min-width: 960px) {
  .hamburger-demo-menubox {
    display: none;
  }
}