@charset "utf-8";
/* CSS Document */

.p-logo {
		padding-left: 15px;
	}
/*----------------------------
* メニュー開閉ボタン
*----------------------------*/
.menu-btn {
	right: 20px;
    z-index: 50;
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
	top: 13px;
}
.menu-btn-tel {
	right: 80px;
    z-index: 50;
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
	top: 13px;
	padding: 3px!important;
}
/*----------------------------
* メニュー本体
*----------------------------*/
.menu-bio{
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    width: 35vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding-top: 150px;
    font-family: 'Noto Sans JP';
    background: rgb(238, 238, 238, 0.85);
}

.menu__item {
/*  width: 80%;*/
/*	margin-top: 15px;*/
  height: auto;
    padding: 20px 0;
    color: #fff;
    box-sizing: border-box;
}
.menu__item:first-child {
}
.menu__item {
	
}
	.menu-bio .nav-link  {
		padding: 2px 15px;
	}
	.menu__item a {
		 color: #393E46 !important;
		font-weight: bold;
		font-size: 140%;
		display: block;
		text-decoration: none;
	}
	.menu__item_sub a {
		color: #ffffff!important;
		font-size: 120%;
		display: block;
		font-weight: normal;
		margin-left: 15px;
	}
	.menu__item a:hover {
		text-decoration: underline;
	}
	
	button.menu-btn, .menu-btn-tel {
		border: none;
		background-color: transparent;
		padding: 7px;
		position: fixed;
	}
button.menu-btn:hover {
	opacity: 0.5;
}

@media screen and (min-width: 768px) and (max-width:1199.98px) {
	.menu-bio{
		width: 80vw;
	}

}

@media screen and (max-width:575.98px) {
	.menu-bio{
		width: 100vw;
	}
	.menu__item, .menu__item_sub {
		width: 100%;
/*		padding: 2px 0;*/
	}
	.menu__item a {
    color: #393E46 !important;
    font-weight: bold;
    font-size: 120%;
    display: block;
    text-decoration: none;
}
	.menu__item_sub a{
		font-size: 14px;
		color: #393E46 !important
	}
	
	.nav-link {
		padding: 5px 15px;
	}
	.menu__item {
    height: auto;
    padding: 10px 0;
    color: #fff;
    box-sizing: border-box;
}
}
/*----------------------------
* アニメーション部分
*----------------------------*/

/* アニメーション前のメニューの状態 */
.menu , .menu-bio {
  transform: translateX(100vw);
  transition: all .3s linear;
}
/* アニメーション後のメニューの状態 */
.menu.is-active , .menu-bio.is-active {
  transform: translateX(0);
}