/* ==========================================
   SWELL Header Disable
========================================== */

.l-header,
.l-fixHeader {
	display: none !important;
}



/* ==========================================
   Custom Header
========================================== */

.hakajimai-header {
	position: sticky;

	top: 0;

	z-index: 1000;

	width: 100%;

	background: #fff;

	border-bottom:
		1px solid #dcdcd4;

	box-shadow:
		0 1px 4px
		rgba(0, 0, 0, .05);
}


.hakajimai-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 12px;

	width: 100%;
	max-width: 1080px;

	margin: 0 auto;
	padding: 10px 20px;
}



/* ==========================================
   Logo
========================================== */

.hakajimai-header-logo {
	flex-shrink: 0;

	line-height: 1.3;

	text-decoration: none !important;
}


.hakajimai-logo-main {
	display: flex;
	align-items: center;

	gap: 8px;

	color: #1f5c45;

	font-size: 1.25rem;
	font-weight: 800;

	white-space: nowrap;
}


.hakajimai-logo-main i {
	color: #1f5c45;
}


.hakajimai-logo-sub {
	display: block;

	color: #777;

	font-size: .68rem;
}



/* ==========================================
   Navigation
========================================== */

.hakajimai-global-nav ul {
	display: flex;
	align-items: center;

	flex-wrap: nowrap;

	gap: 16px;

	margin: 0;
	padding: 0;

	list-style: none;
}


.hakajimai-global-nav li {
	margin: 0;
}


.hakajimai-global-nav a {
	color: #333;

	font-size: .86rem;
	font-weight: 600;

	text-decoration: none;

	white-space: nowrap;

	transition: color .2s;
}


.hakajimai-global-nav a:hover,
.hakajimai-global-nav a:focus-visible {
	color: #1f5c45;
}


.hakajimai-header-logo:focus-visible,
.hakajimai-header-tel:focus-visible,
.hakajimai-header-cta:focus-visible,
.hakajimai-nav-toggle:focus-visible,
.hakajimai-global-nav a:focus-visible {
	outline:
		2px solid #1f5c45;

	outline-offset: 3px;
}

/* ==========================================
   Header Tel
========================================== */

.hakajimai-header-tel {
	display: flex;
	flex-direction: column;
	align-items: center;

	padding: 5px 14px;

	background: #fff3e3;

	border:
		2px solid #e8710a;

	border-radius: 10px;

	line-height: 1.3;

	text-decoration: none !important;

	white-space: nowrap;
}


.hakajimai-header-tel-num {
	color: #b65305;

	font-size: 1.12rem;
	font-weight: 900;
}


.hakajimai-header-tel-note {
	color: #777;

	font-size: .6rem;
	font-weight: 700;
}

/* ==========================================
   Header CTA
========================================== */

.hakajimai-header-cta {
	display: inline-flex;
	align-items: center;

	gap: 6px;

	padding: 10px 18px;

	background: #e8710a;

	border-radius: 999px;

	color: #fff !important;

	font-size: .88rem;
	font-weight: 700;

	text-decoration: none !important;

	white-space: nowrap;

	box-shadow:
		0 2px 6px
		rgba(232, 113, 10, .35);

	transition:
		background .2s,
		transform .2s;
}


.hakajimai-header-cta:hover {
	background: #b65305;

	transform: translateY(-1px);
}

/* ==========================================
   Menu Button
========================================== */

.hakajimai-nav-toggle {
	display: none;

	padding: 6px;

	background: none;

	border: none;

	color: #1f5c45;

	font-size: 1.5rem;

	cursor: pointer;
}

@media
	(min-width: 901px)
	and
	(max-width: 1180px) {

	.hakajimai-header-inner {
		gap: 13px;

		padding:
			10px
			14px;
	}


	.hakajimai-global-nav ul {
		gap: 10px;
	}


	.hakajimai-global-nav a {
		font-size: .8rem;
	}


	.hakajimai-logo-main {
		font-size: 1.1rem;
	}


/* 	.hakajimai-logo-sub {
		display: none;
	}
 */

	.hakajimai-header-tel {
		padding:
			4px
			10px;
	}


	.hakajimai-header-tel-num {
		font-size: 1rem;
	}


	.hakajimai-header-cta {
		padding:
			9px
			12px;

		font-size: .8rem;
	}

}

@media (max-width: 900px) {

	.hakajimai-header {
		position: sticky;

		top: 0;
	}


	.hakajimai-header-inner {
		position: relative;

		gap: 8px;

		padding:
			8px
			14px;
	}


	.hakajimai-header-tel {
		display: none;
	}


	.hakajimai-global-nav {
		display: none;

		position: absolute;

		top: 100%;
		right: 0;
		left: 0;

		padding:
			8px
			20px
			12px;

		background: #fff;

		border-bottom:
			1px solid #dcdcd4;

		box-shadow:
			0 6px 10px
			rgba(0, 0, 0, .08);
	}


	.hakajimai-global-nav.is-open {
		display: block;
	}


	.hakajimai-global-nav ul {
		flex-direction: column;

		align-items: stretch;

		gap: 0;
	}


	.hakajimai-global-nav li {
		border-bottom:
			1px solid #dcdcd4;
	}


	.hakajimai-global-nav li:last-child {
		border-bottom: none;
	}


	.hakajimai-global-nav a {
		display: block;

		padding:
			12px
			4px;
	}


	.hakajimai-nav-toggle {
		display: block;
	}


	.hakajimai-logo-main {
		font-size: 1.05rem;

		gap: 6px;
	}


	.hakajimai-logo-sub {
		font-size: .58rem;
	}


	.hakajimai-header-cta {
		margin-left: auto;

		padding:
			8px
			12px;

		font-size: .78rem;
	}


	html {
		scroll-padding-top: 70px;
	}
	
	.hakajimai-global-nav a.is-current {
		margin: 0 -8px;
		padding-right: 12px;
		padding-left: 12px;

		background: #e8f3ee;

		border-radius: 6px;
	}

}

@media (max-width: 420px) {

	.hakajimai-header-inner {
		padding:
			7px
			10px;
	}


	.hakajimai-logo-main {
		font-size: 1.05rem;
	}


	.hakajimai-header-cta {
		padding:
			7px
			10px;

		font-size: 12px;
	}


	.hakajimai-nav-toggle {
		font-size: 1.35rem;
	}

}

@media (min-width: 783px) {

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

}


@media (max-width: 782px) {

	.admin-bar
	.hakajimai-header {
		top: 46px;
	}

}

/* ==========================================
   Current Navigation
========================================== */

.hakajimai-global-nav a.is-current {
	position: relative;

	color: #1f5c45;

	font-weight: 800;
}


@media (min-width: 901px) {

	.hakajimai-global-nav a.is-current::after {
		content: "";

		position: absolute;

		right: 0;
		bottom: -8px;
		left: 0;

		height: 2px;

		background: #1f5c45;

		border-radius: 999px;
	}

}

/* ==========================================
   スマホ
   ロゴ下サブテキスト表示
========================================== */

@media (max-width: 900px) {

	.hakajimai-logo-sub {
		display: block !important;

		margin-top: 1px;

		color: #777;

		font-size: .58rem;
		font-weight: 500;
		line-height: 1.3;

		white-space: nowrap;
	}

}