/*
 * Hiraku Ver.1.0.2 (https://www.appleple.com)
 * Copyright appleple | MIT License
 *
 */
.js-hiraku-offcanvas-active {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100001;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); }

.js-hiraku-offcanvas-open {
  display: block; }

.js-hiraku-offcanvas-body {
  width: 100%;
  left: 0;
  transition: left 0.3s ease-in-out;
  z-index: 0; }

.js-hiraku-offcanvas-body-right {
  overflow-y: hidden;
  left: -70%;
  position: fixed; }

.js-hiraku-offcanvas-body-left {
  overflow-y: hidden;
  left: 70%;
  position: fixed; }

.js-hiraku-offcanvas-body-moving {
  left: 0;
  position: fixed; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar {
  display: block;
  width: 70%;
  z-index: 10002;
  position: fixed;
  top: 0;
  bottom: 0;
  max-width: 100%;
  background-color: #fff;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box; }

.js-hiraku-offcanvas:focus {
  background-color: rgba(0, 0, 0, 0.3); }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-right {
  right: 0;
  left: auto;
  margin-right: -70%;
  transition: margin-right 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-left {
  left: 0;
  right: auto;
  margin-left: -70%;
  transition: margin-left 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-right.active {
  margin-right: 0;
  transition: margin-right 0.3s ease-in-out; }

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar-left.active {
  margin-left: 0;
  transition: margin-left 0.3s ease-in-out; }

.js-hiraku-header-fixed {
  transition: margin-left 0.3s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }

.js-hiraku-offcanvas-body-right,
.js-hiraku-offcanvas-body-left {
  overflow: hidden; }

.js-hiraku-offcanvas-body-right .js-hiraku-header-fixed {
  margin-left: -70%; }

.js-hiraku-offcanvas-body-left .js-hiraku-header-fixed {
  margin-left: 70%; }

.js-hiraku-offcanvas-close-btn {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }

.hiraku-open-btn {
  background: transparent;
  padding: 8px;
  font-size: 14px;
  border: 0 none;
  cursor: pointer;
  background-color: #00AAFF;
  border-radius: 0.125rem;
  line-height: 1; }

.hiraku-open-btn-line {
  display: inline-block;
  position: relative;
  width: 16px;
  height: 2px;
  top: -1px;
  background-color: #fff;
  border-radius: 1px;
  transition: .1s all;
  vertical-align: middle; }

.hiraku-open-btn-line:before,
.hiraku-open-btn-line:after {
  content: "";
  display: block;
  position: absolute;
  background-color: #fff;
  width: 100%;
  height: 2px;
  border-radius: 1px;
  transition: .3s all; }

.hiraku-open-btn-line:before {
  top: -6px; }

.hiraku-open-btn-line:after {
  bottom: -6px; }

.hiraku-open-btn-label {
  display: inline-block;
  margin-left: 2px;
  font-size: 12px;
  color: #fff;
  font-family: "Noto Sans Japanese", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-weight: 700;
  vertical-align: middle; }

.hiraku-open-btn[aria-expanded="true"] .hiraku-open-btn-line {
  background-color: transparent; }

.hiraku-open-btn[aria-expanded="true"] .hiraku-open-btn-line:before {
  top: 0;
  transform: rotate(-45deg); }

.hiraku-open-btn[aria-expanded="true"] .hiraku-open-btn-line:after {
  bottom: 0;
  transform: rotate(45deg); }
