@charset "UTF-8";
/* CSS Document */

/* --------------------------------------------------------------
                NJCO Header Design
----------------------------------------------------------------- */
.header {
	position: fixed;
	z-index: 2000;
	top: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	/*min-width: 1024px;*/
	background: #fff;
	-webkit-box-shadow: 0 6px 3px -3px rgba(0, 0, 0, .1);
	box-shadow: 0 6px 3px -3px rgba(0, 0, 0, .1);
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.header nav {
	margin-left: 7%;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
.header ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 740px;
	margin: 0 0 0 auto;
	padding: 0;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.header ul li {
	list-style: none;
}
.header a {
	font-weight: bold;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 80px;
	text-decoration: none;
	color: #000;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.header a:before {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 4px;
	content: '';
	-webkit-transition: -webkit-transform .3s;
	transition: -webkit-transform .3s;
	transition: transform .3s;
	transition: transform .3s, -webkit-transform .3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
	pointer-events: none;
	background: #f18e43;
}
.header a:hover:before {
	-webkit-transform: scale(1, 1);
	transform: scale(1, 1);
	-webkit-transform-origin: left top;
	transform-origin: left top;
}
.header .current {
	color: #f18e43;
}
.header li:hover .menu {
	max-height: 9999px;
	opacity: 1;
}
.header .logo {
	width: 223px;
	margin: 0 0 0 50px;
}
.header .logo a:before {
	display: none;
}
.header .menu {
	position: absolute;
	z-index: 2;
	left: 0;
	overflow: hidden;
	width: 100%;
	max-height: 0;
	-webkit-transition: all .1s ease-in;
	transition: all .1s ease-in;
	text-align: center;
	opacity: 0;
	background: #f6f6f6;
}
.header .menu .menu-inner {
	display: block;
	max-width: 100%;
}
.header .menu .menu-inner ul {
	display: block;
	padding: 20px 0 30px;
}
.header .menu a {
	font-size: 1.4rem;
	font-weight: normal;
	position: relative;
	height: auto;
	padding: 10px 0 10px 10px;
}
.header .menu a:before {
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	margin-top: 1px;
	content: '';
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #ff7a22;
	background: none;
}
.header .ob-submenu {
	max-width: inherit;
	margin-right: 290px;
	padding: 20px 0 30px;
	text-align: right;
}
.header .ob-submenu ul {
	display: inline-block !important;
	max-width: inherit;
	padding: 0 20px 0 0 !important;
	vertical-align: top;
}
.header .ob-submenu li {
	display: block;
}
.header .company-submenu {
	max-width: 290px;
	margin-right: 175px;
}
.header .products-submenu {
	max-width: 290px;
	margin-right: 360px;
}
.header .topics-submenu {
	max-width: 290px;
	margin-right: 275px;
}
.header .dl_contents-submenu {
	max-width: 290px;
	margin-right: 80px;
}
.header .lang {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.header .lang span {
	font-weight: bold;
	color: #999;
}
.header .lang a:before {
	display: none;
}
.header .contact {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 150px;
	text-align: center;
	color: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#246cad), to(#1d5699));
	background: -webkit-linear-gradient(#246cad, #1d5699);
	background: linear-gradient(#246cad, #1d5699);
}
.header .contact a {
    font-size: 1.15rem;
	position: relative;
	padding-left: 15px;
	color: #fff;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.header .contact a:before {
	position: absolute;
	top: 50%;
	left: 15px;
	width: 15px;
	height: 15px;
	margin-top: 2px;
	content: '';
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	opacity: .7;
	background: url(https://www.njco.co.jp/assets/img/common/icon_contact.png) no-repeat left top;
	background-size: contain;
}
.header-open {
	z-index: 9999;
}
.header-spmenu {
	display: none;
}
.header-spmenu a:before {
	display: none;
}
.header-en ul {
	max-width: 840px;
}

@media only screen and (max-width: 767px) {
  body {
    font-family: YakuHanJP,apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
    min-width: 100%;
  }
    .ispc {
    display: none;
  }

  .issp {
    display: inline-block;
  }

  .issp--inline {
    display: inline;
  }

  .header {
    min-width: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
  }

  .header ul {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

  .header a {
    height: 50px;
  }
    .header .contact {
font-size: 1.0rem;
width: 90px;
}
    
.header .contact a {
    font-size: 10px;
position: relative;
padding-left: 15px;
color: #fff;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
  /*.header li:nth-child(-n + 6) {
    display: none;
  }*/

  .header .logo {
    width: 180px;
  }

  .header .logo {
    margin-left: 15px;
  }

  .header .contact a:before {
    left: 5px;
  }

  .header-spmenu {
    position: fixed;
    z-index: 9999;
    top: 0;
    right: 0;
    display: block;
    width: 50px;
    height: 50px;
  }

  .header-spmenu-open {
    z-index: 10004;
  }
    
    
}