@charset "UTF-8";
/* CSS Document */
/* 彼方号 ドロワーナビ（海道丸テンプレート準拠 / カラーのみ彼方号仕様） */


/******************************************************

PC設定 960px以上の場合に適用

*******************************************************/

.drawerNav {
	display: none; /* ドロワーナビは非表示 */
	}



/******************************************************

設定 768〜959pxの場合に適用

*******************************************************/

@media screen and (max-width: 959px){

.drawerNav {
	display: block; /* ドロワーナビを表示する */
    width: 100%;
    height: 0;
    position: fixed;
	top: 0;
    z-index: 9300;
	}

.drawerNav__btn { /* トグルボタンのクリッカブルエリア */
	position: fixed;
	right: 0;
	top: 0;
	background: #dbedf8;
	width: 80px;
	height: 80px;
	z-index: 900;
	transition: .3s;
	}

.drawerNav__btn:hover {
	cursor: pointer;
	}

.drawerNav__btnIcon { /* トグルボタンのアイコン(ハンバーガー) */
	width: 40px;
	height: 2px;
	background: transparent;
	position: relative;
	display: block;
	top: 39px;
	left: 20px;
	transition: .3s;
	}

.drawerNav__btnIcon::before {
	content: '';
	width: 40px;
	height: 2px;
	background-color: #222;
	display: block;
	position: absolute;
	top: 5px;
	transition: .3s;
	-webkit-transition: .3s;
	border-radius: 5px;
	}

.drawerNav__btnIcon::after {
	content: '';
	width: 40px;
	height: 2px;
	background-color: #222;
	display: block;
	position: absolute;
	top: -5px;
	transition: .3s;
	-webkit-transition: .3s;
	border-radius: 5px;
	}

.drawerNav__btn:hover .drawerNav__btnIcon::before {
	top: 0;
}

.drawerNav__btn:hover .drawerNav__btnIcon::after {
	top: 0;
}

.drawerNav__content.open {
	display: block;
	}

.drawerNav__content {
	display: none;
	width: 100%;
	min-height: 100vh;
	height: auto;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background-color: rgba(34,50,64, 0.98);
	overflow-y: scroll;
	}

.drawerNav__wrapper {
	display: block;
	position: relative;
}

.drawerNav__logo {
	position: absolute;
	left: 0;
	top: 24px;
	display: block;
}

.drawerNav__logo-img {
	height: 36px;
	width: auto;
}

.drawerNav__closeBtn {
	width: 70px;
	height: 70px;
	position: absolute;
	right: 0;
	top: 50px;
	transition: .3s;
}

.drawerNav__closeBtn:hover {
	opacity: .8;
	cursor: pointer;
}

.drawerNav__closeBtn::before {
	display: inline-block;
	content: "";
	width: 50px;
	height: 2px;
	background-color: #FFF;
	position: absolute;
	top: 34px;
	left: 10px;
	transform: rotate(20deg);
}

.drawerNav__closeBtn::after {
	display: inline-block;
	content: "";
	width: 50px;
	height: 2px;
	background-color: #FFF;
	position: absolute;
	bottom: 34px;
	left: 10px;
	transform: rotate(-20deg);
}

.drawerNav__box {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100%;
	min-height: 100vh;
	height: auto;
	overflow-y: scroll;
	padding-top: 170px;
	display: flex;
	justify-content: space-between;
	}

.drawerNav__column {
	width: 22%;
}

.drawerNav__item {
	margin-bottom: 50px;
}

.drawerNav__link {
	color: #FFF;
	font-weight: 600;
	display: inline-block;
	width: 100%;
	padding-bottom: 10px;
	transition: .3s;
	border-bottom: 1px solid rgba(255,255,255,0.25);
	font-size: 16px;
}

.drawerNav__link:hover {
	opacity: .7;
}

.drawerNav__children {
	margin-top: 20px;
}

.drawerNav__children-item {
	line-height: 2.2;
}

.drawerNav__children-link {
	color: #FFF;
	transition: .3s;
	font-size: 14px;
}

.drawerNav__children-link:hover {
	opacity: .7;
}

.drawerNav__children-link::before {
	content: "-";
	margin-right: 10px;
}


}




/******************************************************

SPの設定 767px以下の場合に適用

*******************************************************/

@media screen and (max-width: 767px){

.drawerNav__btn {
	width: 50px;
	height: 50px;
	}

.drawerNav__btnIcon {
	width: 20px;
	height: 1px;
	top: 25px;
	left: 15px;
	}

.drawerNav__btnIcon::before {
	width: 20px;
	height: 1px;
	top: 3px;
	}

.drawerNav__btnIcon::after {
	width: 20px;
	height: 1px;
	top: -3px;
	}

.drawerNav__closeBtn {
	width: 50px;
	height: 50px;
	position: fixed;
	right: 0;
	top: 0;
	transition: .3s;
}

.drawerNav__closeBtn::before {
	width: 30px;
	height: 1px;
	top: 24px;
}

.drawerNav__closeBtn::after {
	width: 30px;
	height: 1px;
	bottom: 25px;
}

.drawerNav__box {
	padding-top: 0;
	display: block;
	border-top: 1px solid rgba(255,255,255,0.25);
	margin-top: 60px;
}

.drawerNav__column {
	width: 100%;
}

.drawerNav__item {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.25);
}

.drawerNav__link {
	font-size: 14px;
	padding: 15px 0 15px 10px;
	border-bottom: none;
}

.drawerNav__link:hover {
	opacity: .7;
}

.drawerNav__children {
	margin-top: 0;
	margin-bottom: 12px;
	display: none;
}

.drawerNav__children-item {
	line-height: 2.2;
	margin-bottom: 3px;
}

.drawerNav__children-link {
	color: #FFF;
	display: inline-block;
	width: 100%;
	background-color: rgba(255,255,255, .15);
	padding: 5px 15px;
	transition: .3s;
}

.drawerNav__children-link:hover {
	opacity: .7;
	cursor: pointer;
}

.drawerNav__children-link::before {
	margin-right: 5px;
}

.drawerNav__parent {
	position: relative;
}

.accordionBtn {
	position: absolute;
	right: 0;
	top: 0;
	height: 50px;
	width: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	}

.accordionBtnIcon {
	position: relative;
	z-index: 9990;
	transition: .3s;
	width: 30px;
	height: 30px;
	display: inline-block;
	}

.accordionBtn:hover,
.accordion__box li a:hover {
	cursor: pointer;
	}

.accordionBtnIcon::before {
	content: '';
	background: #FFF;
	width: 17px;
	height: 1px;
	display: block;
	position: absolute;
	top: 14px;
	left: 5px;
	}

.accordionBtnIcon::after {
	content: '';
	background: #FFF;
	width: 1px;
	height: 17px;
	display: block;
	position: absolute;
	top: 6px;
	left: 13px;
	}

.openAccordionBtn .accordionBtnIcon::after {
	display: none;
	}

.drawerNav__logo {
	position: fixed;
	left: 0;
	top: 0;
	height: 50px;
	padding: 0 15px;
	display: flex;
	align-items: center;
}

.drawerNav__logo-img {
	height: 28px;
}


}
