@charset "UTF-8";  

body {
	font-size	: 3.8vw;
	line-height	: 180%;
	font-weight	: 400;
	-webkit-text-size-adjust: 100%; /* for iOS */
}  
.pc ,.pc2 {
	display: none !important;
}

.sp {
	display: inline-block !important;
}

.sp2 {
	display: block !important;
}


#wrapper {
	width: 100%;
	margin: auto;
	padding: 0;
	position: relative;
}


/*====================================
ヘッダー
=====================================*/
header {
	position: fixed;
	width: 100%;
	margin: 0 auto;
	padding: 3% 4.5%;
	display: flex;
	justify-content: space-between;
	top: 0;
	left: 0;
	z-index: 99;
}
	h1 {
		width: 44%;
		margin: 0;
		padding: 1% 0 0 0;
	}
		h1 a {
			display: inline-block;
			width: 100%;
			margin: 0;
			padding: 0;
		}
			h1 a img {
				width: 100%;
				height: auto;
			}
#fadeLayer {
	position: fixed;
    width: 100%;
	height: 100%;
    margin: 0 auto;
	background: rgba(0, 0, 0, 0.5);
	top: 0;
	left: 0;
	display: none;
	z-index: 50;
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
#fadeLayer.on {
	display: block;
}

div.sp_menu {
	position: fixed;
	width: 12%;
	margin: 0;
	padding: 0;
	top: 0.4em;
	right: 1.5%;
	z-index: 110;
}
div.sp_menu span.btn {
	display: block;
	width: 100%;
	height: 3.0em;
	background: rgba(136,136,136,0.2);
	border-radius: 0.5em;
	margin: auto;
	cursor: pointer;
}
	div.sp_menu span.btn:before,
	div.sp_menu span.btn:after,
	div.sp_menu span.btn span {
		display: block;
		width: 50%;
		height: 3px;
		border-radius: 1.5px;
		background-color: #5F728F;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		z-index: 1;
	}
	div.sp_menu span.btn span {
		top: calc(50% - 1.5px);
	}

	div.sp_menu span.btn:before {
		content: "";
		background-color: #0E6D4D;
		top: calc(30% - 1.5px);
	}
	div.sp_menu span.btn:after {
		content: "";
		background-color: #0E6D4D;
		bottom: calc(30% - 1.5px);
	}
	div.sp_menu span.btn.on span {
		width: 0;
	}

	div.sp_menu span.btn.on:before {
		top: calc(50% - 1.5px);
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	div.sp_menu span.btn.on:after {
		bottom: calc(50% - 1.5px);
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}

#accordion {margin: 0; padding: 0;}
#accordion .accordion_menu {
	display: none;
	position: fixed;
	width: 100%;
	margin: auto;
	padding: 0 0 30em;
	top: 0;
	left: 0;
	background: url(../images/common/sp_menu_bg.png) bottom left / 100% auto no-repeat ,rgba(255,255,255,0.95);
	overflow-y: auto;
	z-index: 100;
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
	#accordion .accordion_menu.on {
		display: block;
	}
	#accordion .accordion_menu ul {
		width: 100%;
		margin: 0 auto;
		padding: 20% 5% 8%;
		list-style: none;
	}
		#accordion .accordion_menu ul div.logo {
			width: 58%;
			margin: 0 auto;
			padding: 0 0 5%;
		}
			#accordion .accordion_menu ul div.logo img {
				width: 100%;
				height: auto;
			}
			#accordion .accordion_menu ul li {
				display: block;
				margin: 0;
				padding: 0;
			}
				#accordion .accordion_menu ul li a {
					display: block;
					margin: 5% auto 0;
					padding: 0;
					text-decoration: none !important;
				}
					#accordion .accordion_menu ul li a strong {
						display: inline-block;
						margin: 0;
						padding: 0;
						font-size: 4.4vw;
						line-height: 100%;
						color: #000 !important;
					}
					#accordion .accordion_menu ul li a span {
						display: inline-block;
						margin: 0 0 0 1.5em;
						padding: 0;
						font-size: 3.8vw;
						line-height: 180%;
						color: #0D3383 !important;
						font-family: "Cairo", sans-serif;
						font-optical-sizing: auto;
						font-weight: var(--weight-bold2);
					}
			#accordion .accordion_menu ul div.contact {
				margin: 8% auto 0;
				padding: 0;
			}
				#accordion .accordion_menu ul div.contact a {
					width: 80%;
					height: 3em;
					margin: 0 auto;
					padding: 0;
					font-size: 3.8vw;
					line-height: 180%;
					color: #fff !important;
					text-decoration: none !important;
					font-family: "Cairo", sans-serif;
					font-optical-sizing: auto;
					font-weight: var(--weight-bold2);
					background: #0E3383;
					border-radius: 1.5em;
					display: flex;
					justify-content: center;
					align-items: center;
				}



header nav {
	display: none;
}

/*====================================
共通
=====================================*/
main {
	margin: 0 auto;
	padding: 0;
}

div.contents_in {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

/*====================================
フッター
=====================================*/
footer {
	width: 100%;
	margin: 0 auto;
	padding: 10% 3.5% 5%;
	background: #141D30;
}
	footer div.footer_in {
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
		footer div.footer_in div.footer_nav {
			width: 100%;
			margin: 0 auto;
			padding: 0 0 8%;
		}
			footer div.footer_in div.footer_nav h6 {
				width: 50%;
				margin: 0 auto;
				padding: 0;
			}
				footer div.footer_in div.footer_nav h6 a {
					display: inline-block;
					width: 100%;
					margin: 0;
					padding: 0;
				}
					footer div.footer_in div.footer_nav h6 a img {
						width: 100%;
						height: auto;
					}
					footer div.footer_in div.footer_nav h6 a:hover {
						opacity: 0.8;
					}
			footer div.footer_in div.footer_nav ul {
				margin: 0 auto;
				padding: 5% 0 0;
				list-style: none;
			}
				footer div.footer_in div.footer_nav ul li {
					width: 100%;
					margin: 1em auto 0;
					padding: 0;
				}
					footer div.footer_in div.footer_nav ul li a {
						display: inline-block;
						margin: 0 auto;
						padding: 0;
						text-decoration: none !important;
					}
						footer div.footer_in div.footer_nav ul li a strong {
							display: inline-block;
							margin: 0;
							padding: 0;
							font-size: 3.8vw;
							line-height: 100%;
							color: #fff !important;
						}
						footer div.footer_in div.footer_nav ul li a span {
							display: inline-block;
							margin: 0 0 0 1em;
							padding: 0;
							font-size: 3.4vw;
							line-height: 180%;
							color: #5F728F !important;
							font-family: "Cairo", sans-serif;
							font-optical-sizing: auto;
							font-weight: var(--weight-bold2);
						}
				footer div.footer_in div.footer_nav ul div.contact {
					display: inline-block;
					margin: 1em auto 0;
					padding: 0;
				}
					footer div.footer_in div.footer_nav ul div.contact a {
						width: 15em;
						height: 3em;
						margin: 0 auto;
						padding: 0;
						font-size: 3.8vw;
						line-height: 180%;
						color: #fff !important;
						text-decoration: none !important;
						font-family: "Cairo", sans-serif;
						font-optical-sizing: auto;
						font-weight: var(--weight-bold2);
						background: #5B616F;
						border-radius: 1.5em;
						display: flex;
						justify-content: center;
						align-items: center;
					}
		footer div.footer_in div.footer_copy {
			width: 100%;
			margin: 0 auto;
			padding: 8% 0 0;
			border-top: 1px solid #33384D;
		}
			footer div.footer_in div.footer_copy div.foot_bnr {
				margin: 0;
				padding: 0;
				display: flex;
				justify-content: space-between;
			}
				footer div.footer_in div.footer_copy div.foot_bnr a {
					display: inline-block;
					width: 48%;
					margin: 0;
					padding: 0;
				}
					footer div.footer_in div.footer_copy div.foot_bnr a img {
						width: 100%;
						height: auto;
					}
			footer div.footer_in div.footer_copy div.copy {
				margin: 8% auto 0;
				padding: 0;
				font-size: 3.0vw;
				line-height: 160%;
				font-family: "Cairo", sans-serif;
				font-optical-sizing: auto;
				font-weight: var(--weight-bold1);
				font-style: normal;
				color: #5F728F;
			}


#page_top {
    position: fixed;
	display: none;
	width: 8%;
    bottom: 1em;
    right: 3%;
	z-index: 90;
}
	#page_top img {
		width: 100%;
		height: auto;
	}

