@charset "utf-8";
/* CSS Document */
/*
Theme Name:ファイバーラボ株式会社
Theme URI:https://www.fiberlabs.co.jp/
Author: サンリズム株式会社
Author URI: https://sunrhythm.com
Description:ファイバーラボ株式会社　日本語Webサイトテーマ
Version: 1.0
*/

* {
	margin: 0;
	padding: 0;
}

/* @font-face でローカルフォントを優先 */
@font-face {
font-family: "Local Noto Sans JP";
src: local("Noto Sans JP");
}

body {
font-family: "Local Noto Sans JP", "Noto Sans JP", sans-serif;
    line-height: 1.8em;
}

ul {
	list-style: none;
}

body a {
    color: #00396E;
}

h2.titleSen {
    padding: 5px 0;
    border-bottom: solid 1px #6C6C6C;
    font-size: 22px;
    font-weight: normal;
	margin-bottom: 15px;
}

p.titleSub {
    font-size: 14px;
    text-align: right;
    color:#BDBDBD;
}

.taC {
    text-align: center;
}

p {
    line-height: 2em;
    margin-top: 15px;
}

table td,
table th {
    padding: 4px 10px;
}

table td {
    line-height: 2em;
}

/***** header ******/
header {
	position: fixed;
	top: 0;
	left:0;
	right: 0;
	background: #fff;
	z-index: 9999;
	box-shadow: 0 3px 3px 3px rgba(155, 155, 155, 0.3);
}

.headerCatchOunter {
    background: #00396E;
    padding: 5px 0;
}

.headerCatch {
    width: 1280px;
    margin: 0 auto;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
}

.headerOuterWrap {
    width: 1280px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.headerOuterWrap h1 {
    padding: 15px 0;
}

.headerOuterWrap ul {
    display: flex;
    margin: 0 30px 0 0;
}

.headerOuterWrap ul li {
    margin: 30px 0 30px 15px;
}

.headerOuterWrap ul li a {
    text-decoration: none;
    color: #191919;
}

.menu-pcglobal-container {
    width: 100%;
    border-style: solid;
    border-color: #00396E;
    border-width: 1px 0;
    height: 50px;
}

#menu-pcglobal {
    width: 1280px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    z-index: 9999;
}

#menu-pcglobal a {
    text-decoration: none;
    display: block;
    padding: 12px 0;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    color: #00396E;
    width: 213px;
    box-sizing: border-box;
    border-left: solid 1px #00396E;
    transition: .6s ease-in-out;
    background: #fff;
}

#menu-pcglobal li.current-menu-item a,
.current-menu-parent a{
    background: #ececec;
    color: #00396E;
}

#menu-pcglobal .current-menu-item ul li a{
    background: #ececec;
    color: #00396E;
}

ul.sub-menu {
    display: none;
}

.menu-item-has-children:hover .sub-menu {
  display: block;
    margin-top: 3px;
}

.menu-item-has-children:hover .sub-menu li a {
    box-sizing: border-box;
    border-top: solid 1px #00396E;
    border-bottom: solid 1px #00396E;
}

ul#menu-pcglobal li ul.sub-menu li a,
#menu-pcglobal li.current-menu-item .sub-menu a {
    background: #00396E;
    color: #fff;
}

#menu-pcglobal li:last-child a {
    border-right: solid 1px #00396E;
}

#menu-pcglobal a:hover,
#menu-pcglobal li.current-menu-item .sub-menu a:hover {
    background: #ececec;
    /*color:#fff;*/
    cursor: pointer;
}
#menu-pcglobal li .sub-menu a:hover {
    background: #ececec;
    color:#00396E;
    cursor: pointer;
}

/***** footer ******/
footer {
    background: #00396E;
    color: #fff;
    padding: 50px 0;
}
.footerOuter {
    width: 1180px;
    margin: 0 auto;
}

.footerOuter a {
    color: #fff;
    text-decoration: none;
}

.footerOuter .copyrights {
    font-size: 14px;
    padding: 5px 0;
    text-align: center;
    font-weight: bold;
}
.footerMenu {
    display: flex;
    justify-content: space-between;    
}

.footerMenu .footerMenuSec {
    width: 285px;
    margin: 20px 15px 20px 0;
    /*border-right: solid 1px #fff;*/
}

.footerMenu .footerMenuSec ul {
    margin: 20px 0 0 15px;
}

.footerMenu .footerMenuSec ul li {
    margin: 6px 0;
}

/***** top ******/
.sl {
    width: 1280px;
    margin: 200px auto 30px;
}

.newsListOuterWrap {
	height: 500px;
	overflow-y: auto;
}

.newsWrap {
    width: 1200px;
    margin: 30px auto;
}

.newsList {
	width: 1000px;
	margin: 30px auto;
}

.newsList li {
	padding: 15px 0;
	display: flex;
}

.newsList li a {
	display: flex;
}

.newsList li p {
	display: block;
	margin-right: 30px;
}

.greSqu {
	width: 100px;
	padding: 2px 0;
	text-align: center;
	color: #fff;
	background: #00D138;
}

.orgSqu {
	width: 100px;
	padding: 2px 0;
	text-align: center;
	color: #fff;
	background:#FFD600;
}

.newsList a {
	text-decoration: none;
	color: #292929;
}

.newsList a:hover {
	text-decoration: underline;
}

.whiteBgWrap {
	padding: 60px 0;
	background:#fffff;
}

.grayBgWrap {
	padding: 60px 0;
	background:#F8F8F8;
}

.catList {
	display: flex;
    flex-wrap: wrap;
	width: 1158px;
	margin: 30px auto;
}

.catList li {	
	width: 316px;
	margin: 30px;
	text-align: right;
	background: #fff;
	padding: 0 10px 10px 0;
}

.catList li a {
	text-decoration: none;
	color: #2F2F2F;
    transition: .4s ease-in-out;
	font-weight: bold;
	font-size: 18px;
}

.catList li a:hover,
.selList li a:hover,
.corpList li a:hover {
	opacity: .6;
}

.selList {
	display: flex;
    flex-wrap: wrap;
	width: 1158px;
	margin: 30px auto;
}

.selList li {
	padding: 20px;
	background: #EBEBEB;
	margin: 30px;
}

.selList li a {
	text-decoration: none;
	color: #2F2F2F;
    transition: .4s ease-in-out;
	font-weight: bold;
	font-size: 18px;
}

.corpList {
	display: flex;
    flex-wrap: wrap;
	width: 1158px;
	margin: 30px auto;
}

.corpList li {
	margin: 19px;
	text-align: center;
}

.corpList li a {
	text-decoration: none;
	color: #2F2F2F;
    transition: .4s ease-in-out;
	font-weight: bold;
	font-size: 18px;
}

/* 固定ページ共通 */
.home .contentsOuter {
	margin:200px auto;
	width:1280px;

}
.contentsOuter {
	margin:200px auto;
	width:1080px;

}

.contentsOuter h2,
.contentsOuter h3 {
    margin: 20px auto 10px;
}

.contentsOuter table {
    margin: 25px auto;
    width: 100% !important;
}

.corpTbl {

}

.corpTbl {
 width: 100%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
	margin: 15px auto 40px;
}
.corpTbl th {
	width: 300px;
 padding: 15px;
 background: #00396E;
 border: solid 1px #778ca3;
	color: #fff;
	white-space: nowrap;
}
.corpTbl td {
 padding: 15px;
 border: solid 1px #778ca3;
	text-align: left;
}

.corpUnderPic {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
    align-items: center;
}

.corpUnderPic p {
	text-align: center;
	margin: 0 50px;
}

/* 製品ページ関連 */
.page-template-page-products .gridlist li {
	width: 240px;
}

.page-template-page-products .gridlist li img {
	width: 100% !important;
	height: auto;
}

.subdes {
    line-height: 2em;
}

.subgroup {
    display: block;
    padding: 10px 15px;
    background: #00396E;
    color: #fff;
    margin: 20px 0 5px;
}

.parent-pageid-18552 .ichiran {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 30px;    
}

.parent-pageid-18552 .ichiran .ichiran-inner {
    margin: 15px;
    text-align: center;
    height: 200px;
    
}

.parent-pageid-18552 .ichiran .ichiran-inner .ichiran-title {
    font-size: 16px;
    margin-bottom: 10px;
}

.parent-pageid-18552 .ichiran .ichiran-inner img {
    width: 200px;
    height: auto;
}

/* やさしい用語解説 */
.techExplanWrap ul {
	display: flex;
	flex-wrap: wrap;
}

.techExplanWrap ul li {
	width: 25%;
}

.techExplanWrap ul li:hover{
}

.techExplanWrap ul li a {
	display: block;
	text-decoration: none;
	color: #363636;
	margin-bottom: 15px;
	padding: 10px 15px;
	box-sizing: border-box;
	transition: .6s ease-in-out;
}

.techExplanWrap ul li a:hover {
	background: #ececec;
	color: #00396E;
	cursor: pointer;
}


/* 沿革 */
.historyWrap table tr td:first-child {
    white-space: nowrap;
    width: 20%;
    background: #00396E;
    color: #fff;
    text-align: center;
    font-weight: bold;
    vertical-align: middle;
}