@charset;
/* CSS Document */
body{
	width: 100%;
	line-height: 1.8em;
	background-color:#0F0906;
}
section{
	padding:80px 30px;
}
.header-wrap{
	position: fixed;
	width: 100%;
	top: 0;
	padding-top: 10px;
	background:rgba(11,44,99,0.5);
	z-index: 20;
	box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
  -moz-box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
}
.page h1{
	position: absolute;
	top: 400px;
	left: 50px;
	text-shadow: 0px 0px 40px #fff;
}
.top-sec{
	z-index: 10;
	background-image: linear-gradient(-30deg, #0F0906, #0b2863);
	top: 500px;
	width: 100%;
}
/*各ページのＴＯＰ画像表示*/
.works .fix-back{
	background: url("../img/page/top-works.jpg") no-repeat center top;
	background-size: 100%;
	background-attachment: fixed;
	height: 500px;
	z-index: 1;
}
.system .fix-back{
	background: url("../img/page/top-system.jpg") no-repeat center top;
	background-size: 100%;
	background-attachment: fixed;
	height: 500px;
	z-index: 1;
}
.company .fix-back{
	background: url("../img/page/top-company.jpg") no-repeat center top;
	background-size: 100%;
	background-attachment: fixed;
	height: 500px;
	z-index: 1;
}
.contact .fix-back{
	background: url("../img/page/top-contact.jpg") no-repeat center top;
	background-size: 100%;
	background-attachment: fixed;
	height: 500px;
	z-index: 1;
}
.equipment .fix-back{
	background: url("../img/page/top-equipment.jpg") no-repeat center top;
	background-size: 100%;
	background-attachment: fixed;
	height: 500px;
	z-index: 1;
}

.catch{
	font-size: 7.5vw;
	text-align: center;
	padding-top: 300px;
}
.flex2{
	display: flex;
	justify-content: space-around;
}
#current a{
	color:#31d8ff;
}
.company dl{
	border: 1px solid #888;
	margin: 0 10px 30px 10px;
	padding: 20px;
}
.company dl dt{
	font-weight: bold;
	font-size: 16px;
	font-family: "kan415typos-std",sans-serif;
	color: #cce4ff;
	display: inline-block;
}
.company dl dd{
	padding-left: 20px;
	margin-bottom: 10px;
}
dl.cowork{
	padding-left: 50px;
}
/*works*/
dl.cowork dt{
	font-weight: bold;
	display: block;
	letter-spacing: 4px;
	font-family: "kan415typos-std",sans-serif;
	font-size: 16px;
	padding: 10px 0 4px 20px;
	margin-left: -30px;
	margin-bottom: 10px;
color: #fff;/*文字色*/
background: #234087;/*背景色*/
border-left: solid 5px #3047b7;/*左線*/
border-bottom: solid 3px ##000;/*下線*/
}
dl.cowork dd{
	padding-left: 30px;
	padding-bottom: 20px;
}
/*system*/
ol.flow {
	border: 1px solid #fff;
	padding: 30px;
	margin-bottom: 100px;
}
ol.flow li{
	padding-bottom: 10px;
	padding-left: 40px;
	clear: both;
}
ol.flow li img{
	margin: 10px 0 0 20px;
	box-shadow: 2px 2px 3px #000;
}
ol.flow li::after{
	content:url("../img/page/arrow.png");
	display: block;
	clear: both;
	width: 90px;
	margin: 0 auto;
}
ol.flow li span{
	font-weight: bold;
	display: block;
	letter-spacing: 4px;
	font-family: "kan415typos-std",sans-serif;
	font-size: 16px;
	padding: 10px 0 4px 20px;
	margin-left: -30px;
	margin-bottom: 10px;
color: #fff;/*文字色*/
background: #234087;/*背景色*/
border-left: solid 5px #3047b7;/*左線*/
border-bottom: solid 3px ##000;/*下線*/
}
ol.flow img{
	width: 200px;
	height: auto;
}
/*equipment*/
.equipment-t caption{
	text-align: center;
	font-size: 20px;
	padding-top: 50px;
}
.equipment-t{
	width: 100%;
	border: 1px solid #fff;
	border-collapse: collapse;
}
.equipment-t th{
	text-align: center;
	border: 1px solid #fff;
	padding: 10px;
}
.equipment-t td{
	padding: 10px;
	border: 1px solid #fff;
}
.system .inner img{
	box-shadow: 2px 2px 3px #000;
}
.products ul{
	margin:20px 20px 30px 20px;
	padding: 20px;
	border: 1px solid #cce4ff;
}
.products ul li{
	list-style-type: disc;
	list-style-position: inside;
}
h3{
border-bottom: solid 3px #cce4ff;
position: relative;
font-family: "kan415typos-std",sans-serif;
font-size: 16px;
padding: 10px 0 4px 20px;
}
h3:after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #31d8ff;
bottom: -3px;
width: 20%;
}
/*form*/
form table{
	width: 100%;
	margin-top: 30px;
}
.formtable th{
  border-bottom: 1px solid #fff;
}
.formtable td input{
  width: 70%;
  padding-left: 30px;
  line-height: 2em;
}
.formtable td select{
  line-height: 2em;
  padding: 4px;
}
.formtable td textarea{
  width: 70%;
  padding-left: 30px;
  line-height: 2em;
}
 p.submit{
  margin-top: 20px;
  text-align: center;
}
/*ナビゲ―ション----------------------- */
/*メインナビ*/
.main-nav ul{
	/*width: 100%;*/
	width: 1290px;
	padding: 10px 0 0 0;
	display: flex;
	justify-content:space-around;
	text-align: center;
}
.main-nav ul li{
	width: 20%;
}
.main-nav ul li a span{
	display: block;
}
.main-nav ul li a{
	display: block;
	border: 2px solid #fff;
	-webkit-transition: 0.5s;
  transition: 0.5s;
}
.main-nav ul li a:hover{
	background:linear-gradient(to bottom right,#FFF,#3047b7 20%,#0b2863);
	border-color: #0b2863;
	letter-spacing: 2px;
}

/*ヘッダー部分*/
.logo{
	width: 140px;
	float: left;
	padding-left: 10px;
}
.logo img{
	width: 100%;
}
.logo-next{
	float: left;
	font-family: "kozuka-gothic-pro",sans-serif;
	letter-spacing: 2px;
	padding: 20px 0 0 20px;
	line-height: 2em;
}
.logo-next span.f30{
	letter-spacing: 4px;
	font-family: "kan415typos-std",sans-serif;
}
.add0{
	vertical-align: 20px;
}
.header-add-inner p a:hover{
	opacity: 0.4;
}
/*ふわっと表示*/
.fade-in {
  transition: opacity 2.8s;
  -moz-transition: opacity 2.8s;
  -webkit-transition: opacity 2.8s;
  -o-transition: opacity 2.8s;
}
/*TOPフッターのサイトマップ*/
.foot{
	background-color: #0F0906;
	padding: 50px 0;
}
footer ul{
	display: -webkit-flex;
	 display: -moz-flex;
	 display: -ms-flex;
	 display: -o-flex;
	display: flex;
	width: 90%;
	justify-content: space-around;
	margin: 0 auto;
	font-size: 14px;
}
footer nav ul li a:before{
	content:">>";
	float: left;
	margin-right: 10px;
}


/*ＦＯＯＴの会社概要*/
.foot-co{
	padding-top: 40px;
}
.foot-co img{
	width: 140px;
	float: left;
	margin-right: 20px;
	padding-bottom: 40px;
	padding-top: 10px;
}
ul.banner li{
	padding: 10px;
	max-width: 200px;
}
ul.banner li img{
	width: 100%;
}

.copy{
	text-align: center;
}
/* スマホスマホスマホ　*/
/* スマホスマホスマホ　*/
/* スマホスマホスマホ　*/
/* スマホスマホスマホ　*/
@media(max-width: 639px) {
	body{

  }
  section{
  	padding:30px 10px;
  }
  .header-wrap{
  	position: fixed;
  	width: 100%;
  	top: 0;
  	padding-top: 6px;
  	background:rgba(11,44,99,0.5);
  	z-index: 20;
  	box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
    -webkit-box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
    -moz-box-shadow: 0px 3px 1px -1px rgba(0,0,0,0.6);
  }
  .top-sec{
  	z-index: 10;
  	background-image: linear-gradient(-30deg, #0F0906, #0b2863);
  	top: 500px;
  	width: 100%;
  }
  /*各ページのＴＯＰ画像表示*/
  .concept .fix-back{
  	background: url("../img/top/main.jpg") no-repeat center top;
  	background-size: cover;
  	background-attachment: fixed;
  	height: 400px;
  	z-index: 1;
  }
  .concept .fix-back2{
  	background: url("../img/top/main2.jpg") no-repeat 50% 35%;
  	background-size: cover;
  background-attachment: fixed;
  	height: 200px;
  	z-index: 1;
  }
  .concept .fix-back3{
  	background: url("../img/top/main3.jpg") no-repeat center bottom;
  	background-size: cover;
  background-attachment: fixed;
  	height: 300px;
  	z-index: 1;
  }
  .concept .fix-back4{
  	background: url("../img/top/main4.jpg") no-repeat center bottom;
  	background-size: cover;
  background-attachment: fixed;
  	height: 400px;
  	z-index: 1;
  }
	/*system*/
	ol.flow {
		border: 1px solid #fff;
		padding: 10px;
		margin-bottom: 30px;
	}
	ol.flow li{
		padding-bottom: 10px;
		padding-left: 10px;
		clear: both;
	}
	ol.flow li img{
		margin:0;
		box-shadow: 2px 2px 3px #000;
	}
	ol.flow li::after{
		content:url("../img/page/arrow.png");
		display: block;
		clear: both;
		width: 90px;
		margin: 0 auto;
	}
	ol.flow li span{
		font-weight: bold;
		display: block;
		letter-spacing: 2px;
		font-family: "kan415typos-std",sans-serif;
		font-size: 14px;
		padding: 10px 0 4px 10px;
		margin-left: 0px;
		margin-bottom: 10px;
	color: #fff;/*文字色*/
	background: #234087;/*背景色*/
	border-left: solid 5px #3047b7;/*左線*/
	border-bottom: solid 3px ##000;/*下線*/
	}
	ol.flow img{
		width: 100%;
		height: auto;
	}
  .catch{
  	font-size: 30px;
		font-weight: bold;
  	text-align: center;
  	padding-top: 200px;
  }
  .flex2{
  	display:block;
		text-align: center;

  }
	.flex2 img{
		width: 44%;
	}
	.m20{
		margin: 4px;
	}
  /*ナビゲ―ション----------------------- */
  /*ヘッダー部分*/
  .logo{
  	width: 80px;
  	float: left;
  	padding-left: 4px;
  }
  .logo img{
  	width: 100%;
  }
  .logo-next{
  	float: left;
  	font-family: "kozuka-gothic-pro",sans-serif;
  	letter-spacing: 1px;
  	padding: 4px 0 0 10px;
  	line-height: 2em;
  }
  .logo-next span.f30{
  	letter-spacing: 1px;
  	font-family: "kan415typos-std",sans-serif;
  }
  /*.add0{
  	vertical-align: 20px;
  }
  .header-add-inner p a:hover{
  	opacity: 0.4;
  }*/
  /*ふわっと表示*/
  .fade-in {
    transition: opacity 2.8s;
    -moz-transition: opacity 2.8s;
    -webkit-transition: opacity 2.8s;
    -o-transition: opacity 2.8s;
  }
	.inner h1{
		font-size: 16px;
	}
	.pt40{
		padding-top: 0;
	}
	.inner-mini img{
		max-width:100%;
	}
  /*TOPフッターのサイトマップ*/
  .foot{
  	background-color: #0F0906;
  	padding: 30px 0;
  }
  footer ul{
  	width: 100%;
  	display: block;
  }
	footer nav ul li{
		display: inline-block;
		width: 49%;
	}
	footer nav ul li a{
		display: block;
		padding-left: 20px;
	}
  footer nav ul li a:before{
  	content:">";
  	float: left;
  	margin-right: 10px;
  }
  /*ＦＯＯＴの会社概要*/
  .foot-co{
  	padding-top: 20px;
  }
  .foot-co img{
  	width: 80px;
  	float: left;
  	margin-right: 10px;
  	padding-bottom: 10px;
  	padding-top: 10px;
  }
  ul.banner li{
  	padding: 10px;
  	max-width: 200px;
  }
  ul.banner li img{
  	width: 100%;
  }

  .copy{
  	text-align: center;
  }
	/*ナビゲーション*/
	 nav.pure-drawer{
		background-color: #000;
	}
 nav.pure-drawer ul{
	 padding: 10px;
 }
 nav.pure-drawer ul li{
	 border-bottom: 1px dotted #fff;
 }
 nav.pure-drawer ul li a{
	 padding: 10px;
	 display: block;
 }
 .page h1{
 	position: absolute;
 	top: 100px;
 	left: 10px;
 	text-shadow: 0px 0px 40px #fff;
 }
 .page h1 span{
	 display: block;
 }
 .f60{
	 font-size: 24px;
 }
 .top-sec{
 	z-index: 10;
 	background-image: linear-gradient(-30deg, #0F0906, #0b2863);
 	top: 150px;
 	width: 100%;
 }
 /*各ページのＴＯＰ画像表示*/
 .works .fix-back{
 	background: url("../img/page/top-works.jpg") no-repeat center top;
 	background-size: 100%;
 	background-attachment: fixed;
 	height: 150px;
 	z-index: 1;
 }
 .system .fix-back{
 	background: url("../img/page/top-system.jpg") no-repeat center top;
 	background-size: 100%;
 	background-attachment: fixed;
 	height: 150px;
 	z-index: 1;
 }
 .company .fix-back{
 	background: url("../img/page/top-company.jpg") no-repeat center top;
 	background-size: 100%;
 	background-attachment: fixed;
 	height: 150px;
 	z-index: 1;
 }
 .contact .fix-back{
 	background: url("../img/page/top-contact.jpg") no-repeat center top;
 	background-size: 100%;
 	background-attachment: fixed;
 	height: 150px;
 	z-index: 1;
 }
 .equipment .fix-back{
 	background: url("../img/page/top-equipment.jpg") no-repeat center top;
 	background-size: 100%;
 	background-attachment: fixed;
 	height:150px;
 	z-index: 1;
 }
 .page h2{
	 padding-top: 10px;
	 padding-bottom: 10px;
	 font-size: 24px;
 }
 dl.cowork{
 	padding-left: 20px;
 }
 dl.cowork dd{
	 padding-left: 10px;
 }
 /*form*/
 form table{
 	width: 100%;
 	margin-top: 30px;
 }
 .formtable th{
   border-bottom: 1px solid #fff;
	 width: 100%;
	 display: block;
 }
 .formtable td{
	 display: block;
 }
 .formtable td input{
   width: 100%;
   padding-left: 30px;
   line-height: 2em;
 }
 .formtable td select{
   line-height: 2em;
   padding: 4px;
 }
 .formtable td textarea{
   width: 100%;
   padding-left: 30px;
   line-height: 2em;
 }
  p.submit{
   margin-top: 20px;
   text-align: center;
 }
}
/*　********クリアフィックス*****************　*/
.clearfix:after {
    content: "";
    clear: both;
    display: block;
}
@media(min-width: 640px) {
	.pc-none{
		display: none;
	}
}
@media(max-width: 639px) {
	.sp-none{
		display: none;
	}
}

@media(max-width: 1400px)and(min-width:640px){
	body,section,.fix-back,.header-wrap,header{
		min-width: 1400px;
	}
}
