@charset "utf-8";
#header,
#footer{
	font-size:14px;
	font-family:'BIZ UDPMincho', '游明朝体', 'YuMincho', '游明朝', 'Yu Mincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', HiraMinProN-W3, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	font-weight:500;
	line-height:1.6;
	position:relative;
	z-index:0;
}
#footer address{
	font-style:normal;
	font-size:16px;
}
#footer hr{
	background-image:linear-gradient(to right, rgba(51,51,51,0),rgba(51,51,51,.75),rgba(51,51,51,0));
	border:0;
	height:1px;
	margin:6rem 0;
	padding:0;
}
#header a,
#footer a{
	text-decoration:none;
}
#header{
	background:rgba(44,14,0,.9);
	color:rgba(255,255,255,1);
	position:relative;
}
#header #menuToggle input[type='checkbox'],
#header #menuToggle > span{
	display:none;
}
#header div.menu-menu-container{
	background:rgba(44,14,0,.9);
	position:relative;
	width:100%;
	z-index:10;
}
#header ul#menu{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:20px;
	justify-content:space-around;
	list-style-type:none;
	line-height:1.2;
	margin:1.2rem auto 0 auto;
	max-width:1320px;
	overflow:visible;
	padding:1rem 0;
	position:relative;
	text-align:center;
	z-index:20;
	width:100%;
}
#header ul#menu{
	display:table;
}
#header ul#menu li{
	display:table-cell;
	position:relative;
	text-align:center;
	vertical-align:middle;
}
#header ul#menu li a{
	color:rgba(255,255,255,1);
	display:table-cell;
	font-size:13px;
	line-height:1.2;
	margin:0;
	padding:1rem;
	position:relative;
	text-align:center;
	text-decoration:none;
	text-shadow:0px 0px 3px rgba(255,255,255,.6);
	vertical-align:middle;
	white-space:nowrap;
}
#header ul#menu li a{
	width:100%;
}
#header ul#menu li:first-of-type a{
	margin:0;
	overflow:hidden;
	padding:1rem 0;
}
#header ul#menu li:first-of-type a img{
	background:rgba(255,255,255,0);
	display:inline-block;
	height:auto;
	width:130px;
}
#header ul#menu li a:hover{
	opacity:0.8;
	text-decoration:none;
}
#header .menu-item-has-children {
	position:relative;
}
#header ul#menu > li > ul.sub-menu{
	background:rgba(255,255,255,.7);
	border-radius:2px;
	display:none;
	left:1rem;
	line-height:1;
	list-style:none;
	margin:0;
	padding:.3rem 1rem .5rem 1rem;
	position:absolute;
	top:80%;
	vertical-align:top;
	z-index:5000;
}
/* Edge */
_:-ms-lang(x)::backdrop, #header ul#menu > li > ul.sub-menu{
	top:2.8em;
}
/* IE11 */
#header ul#menu > li > ul.sub-menu{
	top:2.8em;
}
#header ul#menu > li > ul.sub-menu > li{
	display:inline-block;
	height:100%;
	line-height:1;
	margin:0;
	padding:0;
	vertical-align:top;
	width:100%;
}
#header ul#menu > li > ul.sub-menu > li > a{
	color:rgba(44,14,0,1);
	display:inline-block;
	height:100%;
	line-height:1.2;
	margin:0;
	padding:0;
	text-shadow:0px 0px 1px rgba(0,0,0,.2);
	vertical-align:middle;
	white-space:nowrap;
	width:100%;
}
#header ul#menu > li:hover > ul.sub-menu{
	display:block;
}
.nowrap{
	display:inline-block;
	white-space:nowrap;
}
#footer{
	background:rgba(44,14,0,.9);
	clear:both;
	color:rgba(255,255,255,1);
	padding:3%;
}
#footer .footer-links{
	align-items:center;
	display:flex;
	justify-content:center;
}
#footer .footer-links a{
	color:rgba(255,255,255,1);
	text-decoration:none;
}
#footer .footer-links > div{
	padding:1rem;
}
#footer .footer-links a.footer-logo{
	display:inline-block;
	height:110px;
	margin:0;
	padding:1rem;
	position:relative;
	overflow:hidden;
	text-indent:110%;
	white-space:nowrap;
	width:300px;
}
#footer .footer-links a.footer-logo:before{
	background:url('https://hakonenanase.com/wp-content/uploads/misc/nanase_logo_w.png') 50% 50% / contain rgba(255,255,255,0) no-repeat;
	bottom:0;
	content:'';
	display:inline-block;
	left:0;
	margin:0;
	opacity:1;
	padding:0;
	position:absolute;
	right:0;
	top:0;
}
#footer .footer-links a.footer-logo:hover{
	opacity:0.8;
}
#footer hr{
	margin:2rem 0;
	padding:0;
}
@media all and (-ms-high-contrast:none){ /* IE10 later */
}
#footer #copyright{
	font-size:8px;
	line-height:1.1;
	margin:1rem 1rem 2rem 1rem;
	padding:;
	text-align:center;
}

@media all and (min-width:1025px) and (max-width:1203px){
	#header ul#menu li:first-of-type a img{
		width:130px;
	}
	#header ul#menu li a{
		display:inline-block;
		white-space:normal;
		word-wrap:break-word;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(3) a{
		width:4em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(4) a{
		width:5em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(5) a{
		width:3em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(6) a{
		width:5em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(7) a{
		width:4em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(8) a{
		width:4em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(9) a{
		width:3em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(10) a{
		width:4em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(11) a{
		width:4em;
	}
	#header .menu-menu-container ul#menu li:nth-of-type(12) a{
		width:4em;
	}
}

@media all and (max-width:1024px){
	#header .sp-header-img{
		display:block;
		height:auto;
		margin:0 auto;
		max-width:320px;
		padding:10px 0;
		width:60%;
	}
	#header ul#menu li a{
		white-space:normal;
		word-wrap:break-word;
		width:auto !important;
	}
	#header #menuToggle{
		background:rgba(0,0,0,0.5);
		border-radius:3px;
		display:block;
		height:32px;
		margin:0;
		padding:0.2rem;
		position:fixed;
		transform:translate3d(0px, 0px, 100px);
		top:0.2rem;
		left:0.2rem;
		z-index:30;
		-webkit-user-select:none;
		user-select:none;
		width:43px;
	}
	#header #menuToggle input[type='checkbox']{
		cursor:pointer;
		display:block;
		height:40px;
		left:0;
		position:absolute;
		opacity:0;
		top:0;
		transform:translate3d(0px, 0px, 200px);
		z-index:40;
		width:40px !important;
		-webkit-touch-callout:none;
	}
	#header #menuToggle > span{
		display:block;
		width:33px;
		height:4px;
		margin:5px;
		position:relative;
		background:rgba(255,255,255,1);
		border-radius:3px;
		z-index:1;
		transform-origin:4px 0px;
		transition:transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
								background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
								opacity 0.55s ease;
	}
	#header #menuToggle span:nth-last-child(2){
		transform-origin:0% 100%;
	}
	#header #menuToggle input:checked ~ span{
		opacity:1;
		transform:rotate(45deg) translate(-2px, -1px);
		background:rgba(255,255,255,1);
	}
	#header #menuToggle input:checked ~ span:nth-last-child(3){
		opacity:0;
		transform:rotate(0deg) scale(0.2, 0.2);
	}
	#header #menuToggle input:checked ~ span:nth-last-child(2){
		transform:rotate(-45deg) translate(0, -1px);
	}
	#header ul#menu{
		align-items:flex-start;
		border-style:none;
		display:flex;
		height:auto;
		justify-content:space-around;
		margin:auto;
		overflow-y:scroll;
		padding:0;
		list-style-type:none;
		width:100%;
		-webkit-font-smoothing:antialiased;
		-webkit-overflow-scrolling:touch;
		z-index:100;
		width:98%;
	}
	#header ul#menu li:before,
	#header ul#menu li:after{
		display:none;
	}
	#header ul#menu li{
		display:inline-block;
		line-height:1;
		margin:0;
		padding:0;
		font-size:8px;
		width:50%;
	}
	#header ul#menu li:first-of-type{
		display:inline-block;
		order:-2;
		width:100%;
	}
	#header ul#menu li:nth-of-type(1),
	#header ul#menu li:nth-of-type(2),
	#header ul#menu li:last-of-type{
		border-style:none;
	}
	#header ul#menu li:last-of-type{
		display:inline-block;
		order:-1;
		width:100%;
	}
	#header ul#menu li a{
		background:rgba(50,50,50,.8);
		border-style:none;
		display:block;
		font-size:13px;
		font-weight:400;
		line-height:2;
		margin:.3rem;
		padding:0.5rem 0;
	}
	#header ul#menu li:first-of-type a{
		border-style:none;
		height:auto;
		margin:0 auto;
		padding:0.3rem 0;
		width:100%;
	}
	#header ul#menu li:first-of-type a img{
		display:block;
		height:auto;
		margin:auto;
		max-width:130px;
		min-width:100px;
		padding:0;
		width:60%;
	}
	#header ul#menu li:nth-of-type(12) a {
		white-space:normal;
		width:auto;
	}
	#header ul#menu > li > ul.sub-menu,
	#header ul#menu > li:hover > ul.sub-menu,
	#header ul#menu > li:active > ul.sub-menu{
		align-items:center;
		background:transparent;
		display:flex;
		justify-content:space-around;
		left:0;
		list-style:none;
		margin:auto;
		padding:0;
		position:relative;
		top:0;
		width:96%;
	}
	#header ul#menu > li > ul.sub-menu > li{
		display:inline-block;
		margin:0 .6rem 0 -0.6rem;
		padding:0;
		width:50%;
	}
	#header ul#menu > li > ul.sub-menu > li:last-of-type{
		margin:0;
		padding:0;
	}
	#header ul#menu > li > ul.sub-menu > li > a{
		background:rgba(50,50,50,.8);
		border-style:none;
		color:rgba(255,255,255,1);
		display:inline-block;
		margin:.3rem;
		padding:0.8rem 0;
	}
	#header #menuToggle:has(> input#check:checked){
		background:rgba(0,0,0,0);
	}
	#header #menuToggle input#check:checked ~ div.menu-menu-container{
		transform:none;
	}
	#footer hr{
		margin:4rem auto;
	}
	#footer .footer-links{
		display:block;
		font-size:10px;
	}
	#footer .footer-links > div{
		padding:0;
	}
	#footer .footer-links a.footer-logo{
		display:block;
		height:91px;
		margin:1rem auto 0 auto;
		padding:0;
		position:relative;
		overflow:hidden;
		text-indent:100%;
		white-space:nowrap;
		width:250px;
	}
	#footer .footer-links address{
		font-size:7px;
		text-align:left;
	}
	#footer .footer-links > div:nth-of-type(2){
		display:block;
		height:auto;
		margin:0 auto;
		padding:3rem 0 !important;
		text-align:center;
		width:20em;
	}
	#footer #copyright{
		padding-bottom:3rem;
	}
}
@media all and (max-width:480px){
	#header input{
		width:100% !important;
	}
	#header input[type='checkbox']{
		width:auto !important;
	}
}