
* {
	margin: 0px;
	padding: 0px;
/*	font-family: "SF Pro JP", "SF Pro Text", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", 繝｡繧､繝ｪ繧ｪ, Meiryo, "?ｭ?ｳ ?ｰ繧ｴ繧ｷ繝?け", "Helvetica Neue", Helvetica, Arial, sans-serif;*/
	font-family: "Noto Sans JP", sans-serif;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, "Segoe UI", "Helvetica Neue", Helvetica, sans-serif;
	font-family: 'Noto Serif JP', 'Noto Sans JP', sans-serif;
}

html, body {
	height: 100%;
}

input[type="text"], input[type="date"], input[type="time"], input[type="search"], input[type="password"], input[type="number"], input[type="email"], textarea, select {
	border: 1px solid #CCCCCC;
	padding: 5px 9px;
	border-radius: 5px;
}

input[type="text"]:focus, input[type="date"]:focus, input[type="time"]:focus, input[type="search"]:focus, input[type="password"]:focus, input[type="number"]:focus, input[type="email"]:focus, textarea:focus, select:focus {
	outline: 0;
	border-color: #28CA97;
	background-color: #ECFFF9;
}

.sp_nav {
	display: none;
}

.radio {
	width: 20px;
	height: 20px;
	position: relative;
	top: 3px;
	margin-right: 5px;
}

.check {
	width: 20px;
	height: 20px;
	position: relative;
	top: 3px;
	margin-right: 5px;
}

.none {
	display: none;
}

.error_input {
	background-color: rgb(255, 204, 204) !important;
	border: 1px solid #DD4B36 !important;
}

.flex {
	display: flex;
}

.header {
	width: 100%;
/*	position: absolute;*/
	top: 0px;
	left: 0px;
	z-index: 100;
/*	background: rgba();*/
}

.head_logo_box {
	width: 20%;
}

.head_logo_a {
	display: inline-block;
	width: 100px;
	height: 50px;
}

.head_logo_img {
/*	width: 80px;*/
	width: 200px;
/*	position: absolute;*/
/*	top: 10px;*/
/*	left: 3%;*/
	position: relative;
	top: 5px;
	left: 40px;
	z-index: 95;
}

.head_nav {
	width: 100%;
	padding-right: 30px;
/*	padding-top: 40px;*/
	justify-content: flex-end;
	align-items: center;
}

.nav_ul {
/*	width: 80%;*/
	width: 100%;
	gap: 10px;
	justify-content: flex-end;
}

.nav_ul > li {
	list-style: none;
}

.nav_ul > li a {
	color: #FFFFFF;
	color: #111111;
	text-decoration: none;
	padding: 1.5rem 1rem;
	border-radius: 30px;
}

.nav_ul > li a:hover {
	background: rgba(255, 255, 255, 0.4);
}

.footer {
/*	background: #eef5fc;*/
	background: #cae2f9;
	background: rgba(247, 129, 2, 0.15);
	color: #1A60A3;
	color: #111111;
	padding: 26px 24px;
	text-align: center;
}

.footer_nav {
	width: 75%;
	margin: auto;
	margin-bottom: 30px;
}

.footer_nav_ul {
	width: 100%;
	justify-content: center;
}

.footer_logo {
	width: 150px;
}

.footer_nav ul li > a {
	color: #1A60A3;
}

.fade {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.5s, transform 1s;
}

.fade.fade_in {
	opacity: 1;
	transform: translateY(0px);
}

.mail_input {
	width: calc(100% - 50px);
}

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

	.pc_nav {
		display: none !important;
	}
	
	.sp_nav {
		display: block;
	}
	
	.header {
		height: 80px;
	}
	
	.head_logo_img {
		width: 150px;
	}
	
	.menu-btn {
/*		position: fixed;*/
		position: absolute;
		top: 10px;
		right: 10px;
		display: flex;
		height: 60px;
		width: 60px;
		justify-content: center;
		align-items: center;
		z-index: 90;
/*		background-color: #3584bb;*/
	}
	.menu-btn span,
	.menu-btn span:before,
	.menu-btn span:after {
		content: '';
		display: block;
		height: 3px;
		width: 50px;
		border-radius: 3px;
		background-color: #ffffff;
		background-color: #6da6ff;
		position: absolute;
	}
	.menu-btn span:before {
		bottom: 14px;
	}
	.menu-btn span:after {
		top: 14px;
	}
	
	#menu-btn-check:checked ~ .menu-btn span {
		background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
	}
	#menu-btn-check:checked ~ .menu-btn span::before {
		bottom: 0;
		transform: rotate(45deg);
		background-color: #FFFFFF;
	}
	#menu-btn-check:checked ~ .menu-btn span::after {
		top: 0;
		transform: rotate(-45deg);
		background-color: #FFFFFF;
	}
	
	#menu-btn-check {
		display: none;
	}
	
	#menu-btn-check:checked ~ .menu-content {
		left: 0;/*メニューを画面内へ*/
	}
	
	.menu-content {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 100%;
		z-index: 80;
		background-color: #3584bb;
		background-color: #3584bbc4;
		transition: all 0.5s;/*アニメーション設定*/
	}
	.menu-content ul {
		padding: 100px 10px 0;
	}
	.menu-content ul li {
		border-bottom: solid 1px #ffffff;
		list-style: none;
	}
	.menu-content ul li a {
		display: block;
		width: 100%;
		font-size: 15px;
		font-weight: bold;
		box-sizing: border-box;
		color:#ffffff;
		color: #00052B;
		text-decoration: none;
		padding: 9px 15px 10px 0;
		position: relative;
	}
	.menu-content ul li a::before {
		content: "";
		width: 7px;
		height: 7px;
		border-top: solid 2px #ffffff;
		border-right: solid 2px #ffffff;
		transform: rotate(45deg);
		position: absolute;
		right: 11px;
		top: 16px;
	}

	.footer_nav {
		margin: 0px 0px 30px 0px;
		text-align: left;
	}

	.footer_nav > .nav_ul {
		flex-wrap: wrap;
		justify-content: unset;
		flex-direction: column;
	}
}

