@charset "EUC-JP";
@import url(//use.fontawesome.com/releases/v5.0.11/css/all.css);

#header{
	display: flex;
	justify-content: space-between;
	padding: 20px;
	position:relative;
}
#header h1{
	position:absolute;
	top:45px;
	left:155px;
	height:107px;
	padding:5px 0px 0px 0px;
	font-family: "Sawarabi Gothic";
	font-size:1.8rem;
	line-height:140%;
	color:#000000;
	letter-spacing:0.1px;
	font-family: 'Montserrat', sans-serif;
}
#header h1 span{
	display:block;
	font-size:1.6rem;
}
#header h2{
	width:110px;
	position: absolute;
	top:12px;
	left:20px;
}
#header p.htex_p{
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	height:0px;
}
#header ul.nav{
	margin:0px 0px 0px 0px;
	padding:45px 0px 0px 0px;
	list-style:none;
	font-family: "Mplus 1p";
	width:650px;
	text-align:right;
	position: relative;
}
#header ul.nav li{
	display: inline-block;
	margin:0px 15px 0px 0px;
	padding:0px 0px 0px 0px;
	font-size:1.6rem;
}
#header ul.nav li a{
	color:#000;
}
#header ul.nav li a:hover{
	color:#cccccc;
}
#header ul.nav li.hn_over a,#header ul.nav li.hn_over a:hover{
	font-weight:bolder;
	border-bottom:1px solid;
	padding-bottom: 2px;
}
#header ul.nav li.hn_form{
	position: absolute;
    right: -30px;
    top:0px;
}
#header ul.nav li select{
	font-size:1.6rem;
}
#n_menu{
	display: none;
}
.nav-button {
  display: none;
}
.nav-wrap.open {
  display: block;
}
.nav-wrap.close {
  display: none;
}
@media screen and (max-width: 970px) {
	#header h1{
		top:50px;
		left:155px;
	}
	#header h2{
		top:20px;
		left:25px;
	}
	#header ul.nav{
		margin:0px 0px 0px 0px;
		padding:80px 20px 0px 0px;
    }
}
@media screen and (min-width: 769px) {
  .nav-wrap {
    display: block !important;
  }
}
.content {
  padding: 20px;
}
@media screen and (max-width: 768px) {
	#header h1{
		position:absolute;
		top:30px;
		left:110px;
	}
	#header h2 img{
		width:70px;
		height:auto;
	}
  #n_menu{
  	display:block;
	position:absolute;
	top:25px;
	right:25px;
	width:40px;
	}
  .nav-button {
    display: block;
    cursor: pointer;
  }
  .nav-wrap {
    position: fixed;
    right: 0;
    top: 0;
    display: none;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
    .nav {
      height: 100%;
      position: relative;
      overflow-x: hidden;
      overflow-y: auto;
    }
  }
  #header ul.nav{
      width:100%;
    }
  #header ul.nav li{
      display: block;
	  font-size:1.8rem;
      margin: 2em;
	  text-align:center;
    }
	#header ul.nav li.hn_form{
	position: static;
	color:#fff;
	}
	#header ul.nav li select{
	color:#fff;
	font-size:1.8rem;
	}
	#header ul.nav li a{
      color:#ffffff;
    }
  .nav-button,
  .nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .nav-button {
    z-index: 20;
    position: relative;
    width: 40px;
    height: 36px;
  }
  .nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
  }
  .nav-button.active span {
    background-color: #fff;
  }
  .nav-button span:nth-of-type(1) {
    top: 0;
  }
  .nav-button span:nth-of-type(2) {
    top: 16px;
  }
  .nav-button span:nth-of-type(3) {
    bottom: 0;
  }
  .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(16px) rotate(-45deg);
    transform: translateY(16px) rotate(-45deg);
  }
  .nav-button.active span:nth-of-type(2) {
    opacity: 0;
  }
  .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-16px) rotate(45deg);
    transform: translateY(-16px) rotate(45deg);
  }
}