@charset "UTF-8";

/**
 * オリジナルcss
 */

#header {
	width: 100%;
	z-index: 100;
	transition: .3s;
	/* height: 69px; */
	padding: 12px 72px;
	position: sticky;
	top: 0;
	left: 0;
}

#header.header_top {
	position: fixed;
}

.admin-bar #header {
	margin-top: 32px;
}

#header-in {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.site_info {
	text-align: center;
	line-height: 1;

	.logo {
		margin: 0;
		width: 175px;

		a {
			line-height: 1;
			display: inline-block;
			width: 100%;
			height: 100%;
		}
	}
}

.header_navi_menu {
	display: flex;
	align-items: center;
	gap: 32px;
	list-style: none;
	margin: 0;

	li {
		height: 100%;
		position: relative;

		a {
			display: block;
			height: 100%;
			display: flex;
			justify-content: center;
			align-items: center;
			text-decoration: none;
			font-size: 1.6rem;
			font-weight: 400;
			color: var(--c1);
		}
	}

	li.header_menu_tel {
		a {
			font-size: 1.8rem;
			letter-spacing: 0.1em;
			display: flex;
			align-items: center;
			gap: 0.5em;
		}

		a::before {
			display: inline-block;
			content: '';
			background-image: url(../images/header/tel_icon.png);
			background-repeat: no-repeat;
			background-position: center;
			background-size: contain;
			height: 1.6em;
			aspect-ratio: 1;
			transition: filter 0.3s;
			filter: invert(1);
		}
	}

	li.header_menu_contact {
		a {
			color: var(--c1);
			border: 1px solid var(--c1);
			border-radius: 100vw;
			padding: 0 32px;

		}
	}
}


#header.header_top {
	.header_navi_menu a {
		color: #fff;
		transition: all 0.3s;
		filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.3));
	}

	li.header_menu_tel {

		a::before {
			filter: invert(0);
		}
	}

	li.header_menu_contact {
		a {
			color: #fff;
			border: 1px solid #fff;
			border-radius: 100vw;
			padding: 0 32px;

		}
	}
}

#header.header_bg {
	background-color: rgb(255, 255, 255, 0.9);

	.header_navi_menu a {
		color: var(--c1);
		transition: all 0.3s;
		filter: none;
	}

	li.header_menu_tel {
		a::before {
			filter: invert(1);
		}
	}

	li.header_menu_contact {
		a {
			color: var(--c1);
			border: 1px solid var(--c1);
		}
	}
}

@media screen and (max-width: 1280px) {
	#header {
		padding: 12px 40px;
	}

	.header_navi_menu {
		display: flex;
		align-items: center;
		gap: 32px;
		list-style: none;
		margin: 0;

		li a {
			font-size: 1.4rem;
		}
	}
}

@media screen and (max-width: 1024px) {
	#header {
		padding: 8px 16px;
	}

	.header_navi_menu {
		display: none;
	}

}

@media screen and (max-width:782px) {
	.admin-bar #header {
		margin-top: 46px;
	}
}

@media screen and (max-width:740px) {
	#header.header_valid .logo_image_b {
		max-width: 88px;
	}

}

@media screen and (max-width:768px) {
	#header {
		padding: 8px 12px;
	}

	.site_info {

		.logo {
			order: 1;
			width: 120px;

			img {
				display: block;
			}
		}
	}

	.header_navi_menu li.header_contact {
		display: none;
	}
}

@media screen and (max-width:500px) {}