/* Shared desktop navigation for every page except the renewed home page. */
@media screen and (min-width: 681px) {
	html body[id]:not(#index) nav#gnav {
		position: sticky !important;
		top: 0 !important;
		z-index: 1000 !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		background: rgba(253, 252, 249, .97) !important;
		border-bottom: 1px solid #e8e3da !important;
		box-shadow: 0 6px 22px rgba(61, 53, 42, .035) !important;
		backdrop-filter: blur(12px);
	}
	html body[id]:not(#index) nav#gnav ul.contents {
		display: flex !important;
		width: min(1220px, calc(100% - 40px)) !important;
		min-height: 72px !important;
		height: auto !important;
		margin: 0 auto !important;
		padding: 0 !important;
		align-items: center !important;
		justify-content: center !important;
		gap: clamp(15px, 2vw, 32px) !important;
		list-style: none !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li {
		margin: 0 !important;
		line-height: 1.4 !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li a {
		position: relative !important;
		display: block !important;
		padding: 27px 0 24px !important;
		color: #4b4740 !important;
		background: transparent !important;
		border: 0 !important;
		font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		letter-spacing: .045em !important;
		line-height: 1.4 !important;
		text-align: center !important;
		text-decoration: none !important;
		white-space: nowrap !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li a span,
	html body[id]:not(#index) nav#gnav ul.contents li a br {
		display: none !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li a::after {
		content: "" !important;
		position: absolute !important;
		right: 0 !important;
		bottom: 16px !important;
		left: 0 !important;
		display: block !important;
		height: 2px !important;
		background: #40594a !important;
		transform: scaleX(0) !important;
		transform-origin: center !important;
		transition: transform .2s ease !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li a:hover,
	html body[id]:not(#index) nav#gnav ul.contents li.current a {
		color: #40594a !important;
	}
	html body[id]:not(#index) nav#gnav ul.contents li a:hover::after,
	html body[id]:not(#index) nav#gnav ul.contents li.current a::after {
		transform: scaleX(1) !important;
	}

	/* Keep the renewed home layout, but use the same typography and colors. */
	html body#index nav#gnav ul.contents li a {
		color: #4b4740 !important;
		font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		letter-spacing: .045em !important;
	}
	html body#index nav#gnav ul.contents li a::before {
		background: #40594a !important;
	}
	html body#index nav#gnav ul.contents li a:hover,
	html body#index nav#gnav ul.contents li.current a {
		color: #40594a !important;
	}
}
