/* 
navigation */


*/
/* primary-navigation --------------- */

.primary-navigation ul {
	margin: 0;
}
.sub-menu {
	background-color: #f1f1f1;
	color: #333;
}
.primary-navigation li,
.sub-menu li {
	list-style: none;
	margin: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6em;
	color: var(--global--color-dark-gray);
}
.sub-menu h3 {
	color: var(--global--color-dark-gray);
}
.primary-navigation > div > .menu-wrapper li {
	position: relative;
}
.primary-navigation a,
.sub-menu a {
	display: block;
	text-decoration: none;
	padding: 10px 16px;
	text-align: left;
	color: #333;
}
.primary-navigation a:focus {
	position: relative;
/*	z-index: 99999; */
	outline-offset: 0;
	text-decoration-thickness: 2px;
}
li.menu-item-has-children {
	cursor: pointer;
}
@media ( max-width: 1027px ) {
	.sub-menu {
		z-index: 200;
	}
	.primary-navigation,
	.sub-menu {
		width: 100%;
		height: 100%;
		background-color: #f1f1f1;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 100;
		transform: translateX(100%);
		transition: all .5s;
		overflow-y: scroll;
		padding: 10px;
	}
	.primary-navigation-open .primary-navigation,
	.primary-navigation-open .sub-menu.active {
		transform: translateZ(0);
	}
	.primary-navigation li {
		font-size: 15px;
		color: #333;
	}
	.primary-navigation li.sp {
		display: none;
	}
	li.menu-item-has-children {
		padding: 10px 16px;
	}
	.primary-navigation a,
	.primary-navigation a:link,
	.primary-navigation a:visited {
		color: #333;
	}
	.admin-bar .primary-navigation > .primary-menu-container {
		top: 150px;
	}
	.primary-navigation .menu-wrapper,
	.sub-menu {
		padding: 80px 0 20px;
	}
	.menu-wrapper li {
		color: #333;
		border-color: #333;
		border-style: solid;
		border-width: 0 0 1px 0;
	}
	.menu-wrapper li.menu-item-has-children,
	.primary-navigation a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.primary-navigation .sub-menu a {
		padding-left: 8px;
	}
	.spbtn {
		max-width: 180px;
		text-align: center;
	}
}
@media (max-width: 482px) {
	.primary-navigation {
		width: 100%;
		transform: translate(100%);
	}
}
@media (min-width: 1028px) {
	.primary-navigation {
		width: auto;
		max-width: 860px;
		color: var(--global--color-dark-gray);
		margin-top: 15px;
		margin-bottom: 10px;
	}
	.primary-navigation > .primary-menu-container {
		padding: 0;
		overflow: initial;
		background: transparent;
	}
	.primary-navigation > div > .menu-wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		flex-wrap: nowrap;
		margin-left: auto;
		gap: 0 30px;
	}
	.primary-navigation li {
		font-size: 14px;
		font-weight: 600;
		line-height: 1.5em;
		display: inline-block;
		height: 40px;
		color: var(--global--color-dark-gray);
/*		transition: background-color .3s; */
	}
	.primary-navigation a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.menu-wrapper li.menu-item-has-children {
		padding-top: 10px;
		padding-bottom: 10px;
	}
/*
	li.menu-item-has-children::after {
		content: "";
		width: 12px;
		height: 12px;
		position: absolute;
		top: 36px;
		left: 50%;
		transform: translateX(-50%);
    	background-image: url(images/down.svg);
    	background-repeat: no-repeat;
    	background-position: center center;
		background-size: contain;
	}
*/
	.primary-navigation a:link,
	.primary-navigation a:visited {
		color: var(--global--color-dark-gray);
	}
	.primary-navigation a:active,
	.primary-navigation a:hover {
		border-bottom: 3px;
		opacity: 1;
		transition: opacity 1s linear;
	}
	.primary-navigation li.menu-item-has-children:hover > div,
	.primary-navigation li.menu-item-has-children:focus > div {
		transform: scaleY(1); /* ドロップダウンメニューの表示 */
	}
.sub-menu {
	position: absolute;
	top: 86px;
	left: 0;
	width: 100%;
	z-index: 100;
	padding: 20px;
	text-align: left;
	background-color: #f1f1f1;
	color: #fff;
	transform: scaleY(0); /* ドロップダウンメニューの非表示 */
	transform-origin: center top; /* 変形を適応する基準を設定 */
	transition: transform .3s; /* 表示の変化をアニメーション化 */
}
.sub-menu.active {
	transform: scaleY(1); /* ドロップダウンメニューの表示 */
}
	.sub-menu li {
		display: block;
		width: 100%;
	}
}
