/*ハンバーガーメニューここから*/
html, body {
	color: #4e4e4e;
}
#hbgButton_container {
	vertical-align: middle;
}
.hamburger-menu {
	width: 50px;
	height: 50px;
	position: relative;
	border: none;
	appearance: none;
	padding: 0;
	cursor: pointer;
	z-index: 3;
	display: block;
}
.hamburger-menu__bar {
	display: inline-block;
	width: 88%;
	height: 3.2px;
	background: #242424;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	transition: .5s;
}
.hamburger-menu__bar:first-child {
	top: 16px;
}
.hamburger-menu__bar:nth-child(2) {
	top: 32px;
}
.hamburger-menu--open .hamburger-menu__bar {
	top: 50%;
}
.hamburger-menu--open .hamburger-menu__bar:first-child {
	transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.hamburger-menu--open .hamburger-menu__bar:last-child {
	transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
/* コンテンツの上に重ねて表示したい場合のみ追加 */

.navigation {
	position: absolute;
	top: -100vh;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: #FFF;
	z-index: 2;
	/*変更*/
	visibility: hidden;
	transition: transform .5s ease-out,
				visibility .5s;
}
.navigation_flex_wrap {
	height:100%;
}
.navigation_flex {
	display: flex;
	height: 100%;
}
.navigation__img {
	width: 100%;
}
.navigation__img {
	width:40vw;
	text-align: center;
}
.navigation__img img {
	width: 60%;
}
.navigationListWrapper{
	width:60vw;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:auto;
}
.navigation__list {
	width: 35%;
	margin:0;
}
.navigation_flex li {
	list-style: none;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin:1rem 0;
}
.navigation__link,
.navigation__link__small a{
	color: #4e4e4e;
	position: relative;
	display: inline-block;
	text-decoration: none;
}
.navigation__link__small {
	align-items: center;
	display: flex;
}
.navigation__link__small::before {
	background-color: #000;
	content: '';
	height: 1.5px;
	width: 40px;
	margin-left: 40px;
	margin-right: 23px;
}
/* 下線のスタイル */
.navigation__link::after,
.navigation__link__small a::after{
	background-color: #333; /* 下線の色 */
	bottom: -4px; /* 要素の下端からの距離 */
	content: ""; /* 要素に内容を追加 */
	height: 1.9px; /* 下線の高さ */
	left: -7%; /* 要素の左端からの距離 */
	position: absolute; /* 絶対位置指定 */
	transform: scale(0, 1); /* 下線を横方向に0倍、縦方向に1倍に変形（非表示） */
	transform-origin: right top; /* 変形の原点を右上に指定 */
	transition: transform .3s; /* 変形をアニメーション化 */
	width: 114%; /* 要素の幅 */
}
/* リンクにホバーした際の下線の表示 */
.navigation__link:hover::after,
.navigation__link__small a:hover::after{
	transform-origin: left top; /* 変形の原点を左上に指定 */
	transform: scale(1, 1); /* 下線を横方向に1倍、縦方向に1倍に変形（表示） */
}
.navigation__list-item {
	width: 100%;
	margin-bottom: 1em;
}
.navigation_sns {
	display: flex;
	justify-content:center;
	background-color:#F7F8FC;
	box-shadow:0 0 5px 1px #999;
	border-radius:50px;
	margin:auto;
}
.navigation_sns a {
	max-width: 30%;
	width: calc(100% / 3);
	text-align: center;
}
.navigation_sns a img {
	padding: .5rem;
	max-width: 70%;
	min-width:60px;
	display:block;
	margin:auto;
}
.sns-pc{
	width:70%;
}
.sns-sp{
	display:none;
}

/* メニューが開いた状態 */
.navigation.is-active {
	visibility: visible;
	transform:translatey(100vh);
}

/*ハンバーガーメニューここまで（ PC ）*/
/*レスポンシブ対（ SP ）*/
@media screen and (max-width:767px) {
	.navigation_flex_wrap{
		margin-top:2rem;
	}
	.navigation_flex {
		display: block;
	}
	.navigation_flex li {
		font-size: 18px;
		margin: 0.8rem 0;
	}
	.navigation__img {
		display: none;
	}
	.navigationListWrapper{
		gap:0;
	}
	.navigation__list {
		width: 100%;
	}
	.navigationListSecond{
		transform:translatey(-0.8rem);
		margin-bottom:-0.8rem;
	}
	.navigation__link__small::before {
		margin-left: 0px;
	}
	.navigation__link::after,
	.navigation__link__small a::after {
		bottom: -2.5px;
		height: 1.7px;
	}
	.navigation__list-item {
		margin-bottom: 12px;
	}
	.sns-pc{
		display:none;
	}
	.sns-sp{
		display:block;
	}
}