/* デザインキット 全ページ共通のヘッダー */

.kd-header {
	position: relative;
	z-index: 40;
	background: #ffffff;
	border-bottom: 1px solid #dedede;
	color: #111111;
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}
.kd-header *, .kd-header *::before, .kd-header *::after { box-sizing: border-box; }

.kd-header__inner {
	display: flex;
	align-items: stretch;
	gap: 32px;
	min-height: 56px;
	padding: 0 24px;
}

.kd-header__logo {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	color: #111111;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .02em;
	text-decoration: none;
}

.kd-header__nav { flex: 1 1 auto; min-width: 0; }
.kd-header__nav ul { display: flex; gap: 8px; height: 100%; margin: 0; padding: 0; list-style: none; }
.kd-header__nav li { display: flex; }

.kd-header__link {
	display: flex;
	align-items: center;
	padding: 0 16px;
	color: #111111;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}
.kd-header__link:hover { background: #f6f6f4; }
.kd-header__link.is-current { border-bottom-color: #e8710a; }
.kd-header__short { display: none; }

.kd-header__admin {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	color: #111111;
	font-size: 14px;
	font-weight: 700;
}

@media (max-width: 767px) {
	.kd-header__inner {
		flex-wrap: wrap;
		gap: 0 16px;
		padding: 0 16px;
	}
	.kd-header__logo { min-height: 48px; }
	.kd-header__admin { margin-left: auto; min-height: 48px; }
	.kd-header__nav {
		order: 3;
		flex-basis: calc(100% + 32px);
		margin: 0 -16px;
		border-top: 1px solid #dedede;
		overflow-x: auto;
	}
	.kd-header__nav ul { gap: 0; }
	.kd-header__link { min-height: 48px; padding: 0 16px; font-size: 14px; }
	.kd-header__long { display: none; }
	.kd-header__short { display: inline; }
}

@media print {
	.kd-header { display: none; }
}
