@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
*{	
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #122948;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 16px;
	font-style: normal;
	font-weight: normal;
	line-height: 1.8;
	letter-spacing: 0.12em;
	text-align: justify;
}
html { box-sizing: border-box; scroll-behavior: smooth; } *, *:before, *:after { box-sizing: inherit; }

a,input.confirm{ transition: .3s; }
a:hover,input.confirm:hover{ opacity: .7; }

br{ line-height: inherit; }

span, a, strong, small{ color: inherit; font-size: inherit; font-family: inherit; font-weight: inherit;}

ul li{list-style: none;}

input,textarea{border: #D1D1D1 1px solid; width:100%;}

.sp{ display: none!important; }
.flex{ display: flex; flex-wrap: wrap;}
.wrap{ margin: 0 auto; }



header{
	margin-left: 30px;
	height: 97px;
}
	header h1{vertical-align: middle;}
	header nav{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	header nav .head-logo{ width: 324px; }
	header nav ul li{
		color: #012343;
		display: inline-block;
		font-weight: 600;
		height: 97px;
		letter-spacing: 0.08em;
    	padding: 32px 50px;
		position: relative;
		text-align: center;
		vertical-align: middle;
	}
	header nav ul li span { display: block; font-family: 'Noto Sans JP'; font-size: 12px; font-weight: 500; letter-spacing: 0.05em; line-height: 1; text-align: center; }
	header nav ul li:last-child{ background: #012343; color: #fff; padding: 35px;}
	header nav ul li:nth-child(n+2):nth-last-child(n+2)::after {
		content: '';
		position: absolute;
		left: 0;
		top: calc(50% - 22px);
		background: rgba(112,112,112,.34);
		height: 44px;
		width: 1px;
	}

header.fixed{
	margin-left: 0;
	width: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	z-index: 9999;
	transition: .3s;
}
	header.fixed h1{margin-left: 30px;}

footer small{ background: #B7A260; color: #fff; display: block; font-size: 14px; padding: 20px 0; text-align: center; }

@media(max-width: 768px){
	*{ font-size: 4vw; letter-spacing: 0.05em;}
	
	.sp{ display: block!important; }
	.pc{ display: none !important; }
	
	.body-wrap{position: relative;}
	
	header{
		margin-left: 0;
		height: 65px;
		position: inherit;
		z-index: 1;
	}
		header h1{line-height: 65px; margin-left: 15px;}
		header h1 img{height: 40px; vertical-align: middle;}
	
		header nav{background: rgba(0,0,0,.9); display: block; height: 100%; position: fixed; width: 100%; visibility: hidden; margin-top: -65px;}
		header nav.active{opacity: 1; visibility: visible;}
	
		header nav ul li a{font-size:3.2vw; font-family: inherit;transition: unset;}	
		header nav ul{ 
			display: flex;
			flex-direction: column;
			justify-content: center;
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}
		header nav .head-logo{ width: 324px; }
		header nav ul li{
			color: #fff;
			display: block;
			height: auto;
			letter-spacing: 0.08em;
			padding: 20px 50px;
			position: relative;
			text-align: center;
			vertical-align: middle;
		}
		header nav ul li span { display: block; font-family: inherit; font-size: 10.667vw; font-weight: bold;}
		header nav ul li:last-child{ background:none; padding: 32px 50px;}
		header nav ul li:nth-child(n+2):nth-last-child(n+2)::after {
			content: '';
			position: absolute;
			left: 0;
			top: calc(50% - 22px);
			background: rgba(112,112,112,.34);
			height: 44px;
			width: 1px;
		}
	header.fixed{position: inherit;}	
	
	.menu-btn{ width: 65px; height: 65px; background:#122948; position: fixed; top: 0; right: 0; z-index: 10000; align-items:center; justify-content:center; }
	.menu-btn p{ color: #fff; font-family: 'Noto Sans JP'; font-size: 12px; letter-spacing:1px; line-height: 1em; text-align: center; }
	.menu-btn .inner{ width: 6vw; height: 4.3vw; position: relative; margin: 15px auto 5px; z-index: 9999;}
	.menu-btn .inner span{ width: 100%; height: 2px; background: #fff; position: absolute; left: 0; transition: .3s;}
	.menu-btn .inner span:nth-of-type(1){ top: 0; height:2px; }
	.menu-btn .inner span:nth-of-type(2){ top: 50%; transform: translateY(-50%); }
	.menu-btn .inner span:nth-of-type(3){ bottom: 0; }
	.menu-btn.active{background: none;}
	.menu-btn.active p{display: none;}
	.menu-btn.active .inner span:nth-of-type(1){ transform: rotate(45deg); top: 3vw; }
	.menu-btn.active .inner span:nth-of-type(2){ opacity: 0; }
	.menu-btn.active .inner span:nth-of-type(3){ transform: rotate(-45deg); bottom: 1vw; }
	
	
	footer small{ font-size: 0.5em; padding: 20px 0; }
}