@charset "utf-8";

/* =========================================
	header
========================================= */

/* クローンはfixed（ただしoverflowは親から継承させない） */
.is-headerClone{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:1000;
	overflow:visible !important; /* ✅ cloneだけは hidden にさせない */
}

/* header共通 */
.header,
.header__sp{
	z-index:1000;
	top:0;
	left:0;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	padding-top:30px;
	overflow:visible !important; /* ✅ ここは visible 固定 */
}

/* header内コンテナ */
.header .l-container,
.header__sp .l-container{
	background-color:#fff;
	border-radius:100vh;
	box-shadow:0 4px 6px rgba(0,0,0,0.2);
	padding:0 30px;
	height:100px;
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
}

/* logo */
.header__logo{
	display:block;
}

.header__logo img{
	display:block;
	width:100%;
	max-width:270px;
	height:auto;
}

/* right */
.header .headerRight,
.header__sp .headerRight{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	width:calc(100% - 180px);
}

/* nav */
.header__nav{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	width:100%;
	gap: 24px;
}

.header__navList{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:24px;
}

.header__navItem{
	display:flex;
	align-items:center;
	justify-content:center;
}

.header__navItem > a:hover{
	color:#E18173;
}

.header__navItem-text{
	display:flex;
	align-items:center;
	justify-content:center;
}

/* nav arrow */
.header__navItem-anc{
	padding-right:20px;
	position:relative;
}

.header__navItem-anc::after{
	content:"";
	position:absolute;
	right:0;
	width:8px;
	height:8px;
	border-right:2px solid #E18173;
	border-bottom:2px solid #E18173;
	transform:rotate(45deg);
	margin-bottom:2px;
}

/* contact */
.header__navContact{
	height:50px;
	max-width:270px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
}

.header__navContact-text{
	font-size:18px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.header__navContact-anc{
	padding-right:20px;
	position:relative;
}

.header__navContact-anc::after{
	content:"";
	position:absolute;
	right:0;
	width:8px;
	height:8px;
	border-right:2px solid #fff;
	border-bottom:2px solid #fff;
	transform:rotate(45deg);
	margin-bottom:2px;
}

/* =========================================================
	Media Queries
========================================================= */

/* =========================
	@media 1200px
========================= */
@media screen and (max-width:1200px){
	.header__navList{
		display:none !important;
	}
}

/* =========================
	@media 768px
========================= */
@media screen and (max-width:768px){
	.header .l-container,
	.header__sp .l-container{
		height:80px;
		padding:0 20px;
	}

	.header .headerRight,
	.header__sp .headerRight{
		width:auto;
	}

	.header__nav{
		display:none !important;
	}
}
