@charset "utf-8";
/*
  CSS のみのドロップダウンメニュー
  Copyright Rectus Inc, 2019
  https://www.rectus.co.jp/
  Released under the MIT license
*/

#navi {
	display: none;
}
#menu-navibtn {
	display: none;
}
 @media screen and (max-width: 980px) {
#navi {
	display: block;
	background-color: rgba(0,0,0,0.9);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
}
/* チェックボックスを非表示 */
#navi input {
	display: none;
}
/* 上部メニュー */
#navi .menu {
	width: 100%;
	padding-bottom: 60px;
}
#navi .menu-parent {
	line-height: 59px;
	white-space: nowrap;
}

#navi .menu-parent a {
	display:block;
	color:#FFF;
}

#navi .menu-parent > a:before {
    content: "\f105";
    font-family: FontAwesome;
    margin-right:0.75rem;
}

/* パソコンでは V を非表示 */
.menu-parent .pd {
	display: none;
}
/* 上部メニューの最後の項目 */
.menu-parent:last-child {
	margin-right: 0px;
}
#menu-navibtn {
	cursor: pointer;
	cursor: hand;
}
/* スマホの際に V を表示 */
.menu-parent .pd {
	display: inline-block;
	width: 100%;
}
#navi .menu {
	display: none;
}
.menu-parent {
	height: auto;
	width: 100%;
	padding: 0px 20px;
	border-bottom: 1px solid #777;
}
.menu-parent:first-child {
}
.menu-parent i {
	padding: 0px 6px;
}
/* メニューを移動させないため */
#menu-navibtn:checked ~ #navi {
	position: fixed;
	overflow-y: scroll;
	overflow-x: hidden;
	height: 100%;
}
/* ハンバーガーメニューがクリックされた時 */
#menu-navibtn:checked ~ * .menu {
	display: block;
	opacity: 1;
}
#menu-navibtn:checked ~ * .menu-parent {
	max-height: inherit;
	overflow-y: visible;
	min-height: 59px;
}
#menu-navibtn:checked ~ * .menu-child {
	max-height: 0;
	overflow-y: hidden;
	visibility: hidden;
}
/* 子メニュー */
.menu-parent .menu-child {
	border-top: 1px solid #DDD;
	position: relative;
	padding: 0 20px;
	opacity: 1;
	top: 0;
	margin-left: auto;
	left: auto;
	width: auto;
}
.menu-parent > label:hover {
	cursor: pointer;
	cursor: hand;
}
/* 子メニューがクリックされた時 */
#navi input[type="checkbox"]:checked ~ .menu-child {
	max-height: inherit;
	min-height: 60px;
	overflow-y: visible;
	visibility: visible;
}
.angletoggle:before {
	font-family: FontAwesome;
	content: "\f107";
	font-style: normal;
}
#navi input[type="checkbox"]:checked ~ * .angletoggle:before {
	font-family: FontAwesome;
	content: "\f106";
	font-style: normal;
}
/* 子メニュー */
.menu-child li {
	border-bottom: 1px solid #777;
}
.menu-child li a {
}
/* 余分な最後の線を消去 */
.menu-child li:last-child {
	border: none;
}
#navi #navibtn {
	display: block;
	position: fixed;
	/*! top: 10px; */
	right: 0;
	z-index: 10;
}

#navi #navibtn:before {
	content:"メニュー";
	font-size:12px;
	position:absolute;
	color:#FFF;
	bottom:1px;
	text-align:center;
	width:100%;
	letter-spacing:-2px;
	font-weight:bold;
}

#navibtn span {
	display: block;
	width: 59px;
	height: 59px;
	background:#000;
}
#navibtn span span {
	display: block;
	overflow: hidden;
	width: 1px;
	height: 1px;
}
#navibtn span span::before,  #navibtn span span::after,  #navibtn span::after {
	position: absolute;
	left: 10px;
	content: "";
	width: 40px;
	height: 3px;
	background-color: #FFF;
	transition: .2s;
}
/* 上の棒 */
#navibtn span span::before {
	top: 10px;
}
#menu-navibtn:checked ~ #navi label#navibtn span span::before {
	top: 22px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
/* 下の棒 */
#navibtn span::after {
	bottom: 23px;
}
#menu-navibtn:checked ~ #navi label#navibtn > span::after {
	bottom: 34px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
/* 中の棒 */
#navibtn span span::after {
	top: 21px;
}
#menu-navibtn:checked ~ #navi label#navibtn span span::after {
	display: none;
}

}