@charset "utf-8";

/* ===================================================================
　header
=================================================================== */
* {
	box-sizing:border-box;
}

body {
	margin:0;
}

header {
	font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', '游明朝','Yu Mincho', '游明朝体', 'YuMincho','ＭＳ Ｐ明朝', 'MS PMincho', serif;
	font-size: 1.8rem;
	font-weight: bold;
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	position:relative;
	padding: 50px 20px 20px 20px;
	width: 100%;
	min-width: 1440px;
}

header img {
	height: 40px;
	margin-right: 15px;
	width:auto;
}


/* ===================================================================
　PCメニュー
=================================================================== */
.pc-menu .menu {
	display:flex;
	gap:14px;
	list-style:none;
	padding:0;
	margin:0;
}
.pc-menu a {
	display:block;
	padding:6px 10px;
	color:#333;
	text-decoration:none;
}
.pc-menu a:hover {
	color:#1d5abd;
	text-decoration:underline;
}
.hamburger {
	display:none;
}

.sp-menu {
	display:none;
}













/* ===================================================================
	スマートフォン用記述（640px以下）
=================================================================== */
@media screen and (max-width:640px){
header {
	padding: 40px 10px 15px 10px;
	width: 100%;
	min-width: 100%;
}
header img {
	margin-right: 0px;
	width:100%;
	height: auto;
}

	
.pc-menu {
	display:none;
}

/* ハンバーガー */
.hamburger {
	display:block;
	width:40px;
	height:35px;
	border:0;
	background:none;
	position:relative;
	cursor:pointer;
	z-index:1002;
}

.hamburger span {
	position:absolute;
	left:0;
	width:35px;
	height:3px;
	background:#333;
	transition:.3s;
}
.hamburger span:nth-child(1){
	top:5px;
}
.hamburger span:nth-child(2){
	top:16px;
}
.hamburger span:nth-child(3){
	top:27px;
}

/* ドロワー */
.sp-menu {
	display: block;
	position:fixed;
	top:0;
	right:-100%;
	width:85%;
	height:100vh;
	background:#fff;
	padding-top:80px;
	box-shadow:-5px 0 15px rgba(0,0,0,.15);
	transition:.4s;
	z-index:1001;
}

.sp-menu.active {
	right:0;
}

.sp-menu ul {
	list-style:none;
	margin:0;
	padding:0 30px;
}

.sp-menu li {
	margin-bottom:20px;
}

.sp-menu a {
	display:block;
	padding:15px;
	color:#333;
	text-decoration:none;
}
.sp-menu a:hover {
	color:#1d5abd;
	text-decoration:underline;
	background-color: #edf4ff;
}
/* オーバーレイ */
.overlay {
	display:block;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	background:rgba(0,0,0,.5);
	opacity:0;
	visibility:hidden;
	transition:.4s;
	z-index:1000;
}

.overlay.active {
	opacity:1;
	visibility:visible;
}

/* 三本線→× */
.hamburger.active span:nth-child(1){
	top:16px;
	transform:rotate(45deg);
}
.hamburger.active span:nth-child(2){
	opacity:0;
}
.hamburger.active span:nth-child(3){
	top:16px;
	transform:rotate(-45deg);
}


}/*▼削除しない▼*/


/* ウインドウ縮小時のオーバーレイ非表示 */
@media screen and (min-width:640px){
	.overlay {
		display:none;
	}

}/*▼削除しない▼*/