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

/*===========================================
  PC common
=============================================*/
/* 下層共通パーツ
-------------------------------------------*/	
#contentsWrapper .pageTitle { position:relative;}
#contentsWrapper .pageTitle h2{
 position:absolute;
 color:#FFF;
 font-size:28px;
 bottom:30px;
 left:30px;
}
/* メイン
-------------------------------------------*/
#main h4 {
 background:#0073d2;
 color:#FFF;
 font-size:24px;
 padding:12px 20px;
 margin-bottom:25px;
}
#main h5 {
 color:#0073d2;
 font-size:20px;
 padding:10px 10px;
}

/* サイド
-------------------------------------------*/
#side #spSideNav { display:none;}
#side h2{
 font-size:18px;
 border-top: 2px solid #0073d2;
 border-left: 2px solid #0073d2;
 text-align:center;
 padding:24.5px 20px 24.5px 0;
}
#side .sideNav {
 border-top: 2px solid #0073d2;
 margin-right:20px;
 margin-bottom:40px;
}
#side .sideNav dt{
 padding:18.5px 10px;
 border-bottom:1px dotted #0073d2;
 background:url(/images/side_plus.png) no-repeat center right 10px;
 cursor:pointer;
}
#side .sideNav dt:hover{
 color:#e63250;
 background:url(/images/side_plus_on.png) no-repeat center right 10px #FFF;
}
#side .sideNav dt.active{
 color:#FFF;
 background:url(/images/side_batsu.png) no-repeat center right 10px #0073d2;
}
#side .sideNav dt.page {
 background:url(/images/arr_08.png) no-repeat center right 10px;
}
#side .sideNav dt.page a {
 display:block;
}
#side .sideNav dt.page.current {
 background:#0073D2;
}
#side .sideNav dt.page.current a{
 color:#FFF;
}
#side .sideNav dd li{
 border-bottom:1px dotted #0073d2;
}
#side .sideNav dd li a {
 display:block;
 padding:17px 10px;
}
#side .sideNav dd.active li a {
 background:#cce3f6;
}
#side .catalogLink a{
 display:block;
 padding:18.5px 10px;
 background:url(/images/arr_01.png) no-repeat center right 10px #191919;
 background-size:20px auto;
 color:#FFF;
 margin:0 20px 20px 0;
}
#side .catalogLink a:hover{
 background:url(/images/arr_01.png) no-repeat center right 10px #E63250;
 background-size:20px auto;
}
#side .laboEntry a{
 display:block;
 background:url(/images/side_laboEntry.jpg) no-repeat top center;
 width:220px;
 height:220px;
 position:relative;
 margin-bottom:20px;
 color:#FFF;
}
#side .laboEntry a:hover{
 background:url(/images/side_laboEntry_on.jpg) no-repeat top center;
}
#side .laboEntry p {
 position: absolute;
 bottom:10px;
 left:10px;
 width:160px;
}

#laboratory #side .sideNav dt.page {
 background:url(/images/arr_01.png) no-repeat center right 10px;
 background-size:20px auto;
}
#laboratory #side .sideNav dd.active li a{
 background:rgba(0,115,210,0.2);
}
#laboratory #side .sideNav dt.subcate {
 background:url(/images/side_plus.png) no-repeat center right 10px rgba(0,115,210,0.2);
}
#laboratory #side .sideNav dt.subcate.active{
 background:url(/images/side_batsu.png) no-repeat center right 10px rgba(0,115,210,0.2);
}
#laboratory #side .sideNav dt.page.current {
 background:#0073D2;
}
/*a:hover img {
 opacity: 0.5;
 filter: alpha(opacity=50);
 -moz-opacity: 0.8;
 -webkit-transition: 0.3s ease-in-out;
 -moz-transition: 0.3s ease-in-out;
 -o-transition: 0.3s ease-in-out;
 transition: 0.3s ease-in-out;
}*/
#side .ban {
 margin-bottom:20px;
}

/* common parts
-------------------------------------------*/	
.bgGray { background:#191919; color:#FFF;}
.bgGray h2.mi { color:#FFF;}
.bgBlue {
 background:url(/images/bg_blue.jpg) repeat-y,#0073d2;
 background-size:100% auto;
 color:#FFF;
}
.bgWh { background:#FFF; color:#191919;}
.words { 
 padding-left:10px; 
 padding-right:10px;
 font-size:16px;
 line-height:28px;
}
.words a{ text-decoration:underline;}

.ph img {
 width:100%;
 height:auto;
 vertical-align:top;
}
.red { color:#e63250;}
.blue { color:#0073d2;}
hr.blue {
 margin:0;
 border: 0 none; 
 height: 1px; 
 color: #0073d2;
 background-color: #0073d2;
}
.flex { 
 display: table-cell;
 vertical-align:middle;
}
.btd{
 border-top:1px dotted #0073d2;
}
.bbd{
 border-bottom:1px dotted #0073d2;
}


/* headline
-------------------------------------------*/	
h2.pagetit { display:none;}
h2.mi {
 font-size:24px;
 padding-left:10px;
 margin-bottom:20px;
 font-weight:400;
}
h3.mi {
 font-family: 'Roboto', sans-serif;
 font-weight:500;
 font-size:20px;
 color:#0073d2;
 letter-spacing:1px;
 padding-left:10px;
 margin-bottom:15px;
}


/* table
-------------------------------------------*/
table{
 border-collapse: collapse;
 width:100%;
 margin-bottom:40px;
 font-size:16px;
 line-height:30px;
 text-align:center;
}
table tr{}
table th, 
table td{
	background:#FFF;
 border:#0073d2 1px solid;
}
table th{
 padding:10px;
 vertical-align:middle;
 text-align:center;
}
table td{
 padding:10px;
 text-align:center;
}
table tr:nth-child(2n) th,
table tr:nth-child(2n) td{ background:#f0f0f0;}

/* clm para
-------------------------------------------*/
.clm2:after,
.clm3:after,
.para2:after{
 content: "."; 
 display: block; 
 height: 0; 
 font-size:0;	
 clear: both; 
 visibility:hidden;
}
.clm2 li{
 width:460px;
 float:left;
 margin-right:20px;
}
.clm2 li:nth-child(2n),
.para2 li:nth-child(2n){
  margin-right:0px;
 }
.clm3 li,
.para2 li{
 width:300px;
 float:left;
 margin-right:20px;
}
.para2 li p{ padding:5px 10px;}

.clm3 li:nth-child(3n){margin-right:0px;}
#main .clm3 li:nth-child(3n){margin-right:20px;}
#main .clm3 li:nth-child(2n){margin-right:0px;}

.arrList{ margin-bottom:30px;}
.arrList li{
 padding:0 10px 10px 10px;
 text-indent:-1.3em;
 margin-left:1.3em;
 line-height:1.75em;
}
.arrList li:before{
 content:'\f04b';
 font-family: FontAwesome;
 padding-right:10px;
 color:#595757;
}
.arrList.bl li:before{
 content:'\f04b';
 font-family: FontAwesome;
 padding-right:10px;
 color:#0073d2;
}

/* tabStyle
-------------------------------------------*/	
.tabStyle { 
 display:table; 
	width:100%;
	margin-bottom:20px;
}
.tabStyle li{
 display: table-cell;
	width:50%;
 border:2px solid #FFF;
 box-sizing:border-box;
	text-align:center;
	background:#191919;
	cursor:pointer;
}
.tabStyle li a {
 display:block;
 padding:15px 0;
}
.tabStyle li:hover{
	background:#E63250;
}
.tabStyle li.active{
 display: table-cell;
 border: none;
	background:#0073d2;
}
.tabStyle.cell4 li {
	width:25%;
}


/* thumbnails
-------------------------------------------*/
.thumbnails .ph{
 position:relative;
 margin-bottom:12px;
 max-height:200px;
 overflow:hidden;
}
.thumbnails span.bar {
 display:block;
 /* background:#e63250; */
 height:10px;
 position:absolute;
 bottom:0;
 left:50%;
 width:0;
 transition: all 0.2s ease-out;
}

.thumbnails a:hover span.bar {
 width:100%;
 left:0%;
 transition: all 0.2s ease-out;
}


/* linkBtn
-------------------------------------------*/	
p.linkBtn {
 margin:0 auto;
 width:100%;
background-attachment: scroll, scroll, scroll, scroll;
background-clip: border-box, border-box, border-box, border-box;
background-color: rgba(0, 0, 0, 0);
background: 
-moz-linear-gradient(45deg, transparent 0px, #191919 0px), 
-moz-linear-gradient(135deg, transparent 10px, #191919 10px), 
-moz-linear-gradient(225deg, transparent 0px, #191919 0px), 
-moz-linear-gradient(315deg, transparent 10px, #191919 10px);
background: 
-webkit-linear-gradient(45deg, transparent 0px, #191919 0px), 
-webkit-linear-gradient(135deg, transparent 10px, #191919 10px), 
-webkit-linear-gradient(225deg, transparent 0px, #191919 0px), 
-webkit-linear-gradient(315deg, transparent 10px, #191919 10px);
background: 
-ms-linear-gradient(45deg, transparent 0px, #191919 0px), 
-ms-linear-gradient(135deg, transparent 10px, #191919 10px), 
-ms-linear-gradient(225deg, transparent 0px, #191919 0px), 
-ms-linear-gradient(315deg, transparent 10px, #191919 10px);
background-origin: padding-box, padding-box, padding-box, padding-box;
background-position: left bottom, right bottom, right top, left top;
background-repeat: no-repeat;
background-size: 50% 50%;
}
p.linkBtn.line {
	background:url(/images/lineBtn_center.png) repeat-x;
	position:relative;
 background-size:auto 100%;
}

p.linkBtn a {
 display:block;
 padding:17.5px 0;
	height:60px;
	box-sizing:border-box;
 background: url(/images/arr_01.png) no-repeat center right 20px;
 background-size:20px auto;
 color:#FFF;
 text-align:center;
}
p.linkBtn.back a {
 background: url(/images/arr_04.png) no-repeat center left 20px;
 background-size:20px auto;
}
p.linkBtn.pdf a {
 background: url(/images/icon_pdf.png) no-repeat center right 20px;
 background-size:20px auto;
}
p.linkBtn:hover,
p.linkBtn.line:hover {
background-attachment: scroll, scroll, scroll, scroll;
background-clip: border-box, border-box, border-box, border-box;
background-color: rgba(0, 0, 0, 0);
background: 
-moz-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(135deg, transparent 10px, #e63250 10px), 
-moz-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(315deg, transparent 10px, #e63250 10px);
background: 
-webkit-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(135deg, transparent 10px, #e63250 10px), 
-webkit-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(315deg, transparent 10px, #e63250 10px);
background: 
-ms-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(135deg, transparent 10px, #e63250 10px), 
-ms-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(315deg, transparent 10px, #e63250 10px);
background-origin: padding-box, padding-box, padding-box, padding-box;
background-position: left bottom, right bottom, right top, left top;
background-repeat: no-repeat;
background-size: 50% 50%;
}
p.linkBtn.line:before{
	content:'';
	position:absolute;
	top:0;
	left:0;
 width:15px;
 height:60px;
 background:url( /images/lineBtn_left.png);    
 background-size:contain;
 vertical-align:middle;
}
p.linkBtn.line:after{
	content:'';
	position:absolute;
	top:0;
	right:0;
 width:15px;
 height:60px;
 background:url( /images/lineBtn_right.png);    
 background-size:contain;
 vertical-align:middle;
}
p.linkBtn.line:hover:before,
p.linkBtn.line:hover:after{
	content:none;
}

/* borderBtn
-------------------------------------------*/	
p.borderBtn {
 border:2px solid #FFF;
 box-sizing:border-box;
	background-color:#191919;
}
p.borderBtn a {
 display:block;
 padding:15px 0;
	height:56px;
	box-sizing:border-box;
 background: url(/images/arr_01.png) no-repeat center right 20px;
 background-size:20px auto;
 color:#FFF;
 text-align:center;
}
p.borderBtn:hover {
 border:2px solid #e63250;
 background:#e63250;
}
/* backBtn
-------------------------------------------*/	
p.borderBtn.back {
	width:300px;
}
p.borderBtn.back a{
	background: url(/images/arr_04.png) no-repeat center left 20px;
 background-size:20px auto;
}
















/* SP */
@media screen and (max-width: 767px) {	
/*===========================================
  SP common
=============================================*/
/* 下層共通パーツ
-------------------------------------------*/	
#contentsWrapper .pageTitle { position:relative;}
#contentsWrapper .pageTitle h2{ display:none;}

/* メイン
-------------------------------------------*/
#main h4 {
 font-size:15px;
 padding:7px 3.5%;
 margin-bottom:15px;
}
#main h5 {
 font-size:14px;
 padding:0 3.5%;
 margin-bottom:10px;
}
/* サイド
-------------------------------------------*/
#side #pcSideNav { display:none;}
#side #spSideNav { display: block;}
#side #spSideNav dt{
 font-size:12.5px;
 padding:10px 0;
 background:url(/images/arr_05.png) no-repeat center right 5% #FFF;
 background-size:10px auto;
 text-align:center;
 border-bottom:1px solid #000;
 cursor:pointer;
}
#side #spSideNav dd li {
 border-bottom: 1px dotted #191919;
}
#side #spSideNav dd li:last-child{
 border-bottom: none;
}
#side #spSideNav dd li a {
 display:block;
 text-align:center;
 padding:10px 0;
 background:url(/images/arr_07.png) no-repeat center right 5% #FFF;
 background-size:10px auto;
}

#laboratory #side #spSideNav dt{
	border-bottom:1px solid #FFF;
	background:url(/images/arr_02.png) no-repeat center right 5% #191919;
 background-size:15px auto;
}
#laboratory #side #spSideNav dd li {
 border-bottom: 1px dotted #FFF;
}
#laboratory #side #spSideNav dd li a {
 background:url(/images/arr_01.png) no-repeat center right 5% #191919;
 background-size:15px auto;
}

/* common parts
-------------------------------------------*/	
.words { 
 padding-left:3.5%; 
 padding-right:3.5%;
 font-size:12.5px;
 line-height:20px;
}
.words a{ text-decoration:underline;}

.youtube {
 position: relative;
 padding-bottom: 56.25%;
 padding-top: 30px;
 height: 0;
 overflow: hidden;
}
.youtube iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}

/* headline
-------------------------------------------*/	
h2.pagetit {
 display: block;
 background:#191919;
 color:#FFF;
 padding:10px 0;
 text-align:center;
 font-size:12.5px;
}
#laboratory h2.pagetit {
 background:#FFF;
 color:#191919;
}
h2.mi {
 font-size:18px;
 padding-left:3.5%;
 margin-bottom:10px;
}
h3.mi {
 font-family: 'Roboto', sans-serif;
 font-weight:500;
 font-size:12.5px;
 color:#0073d2;
 letter-spacing:1px;
 padding-left:3.5%;
 margin-bottom:5px;
}

/* thumbnails
-------------------------------------------*/
.thumbnails .ph{ margin-bottom:10px;}
.thumbnails span.bar { display:none;}
.thumbnails a:hover span.bar { display:none;}


/* linkBtn
-------------------------------------------*/	
p.linkBtn {
 margin:0 3.5%;
 width:93%;
background-image: 
-moz-linear-gradient(45deg, transparent 0px, #191919 0px), 
-moz-linear-gradient(135deg, transparent 5px, #191919 5px), 
-moz-linear-gradient(225deg, transparent 0px, #191919 0px), 
-moz-linear-gradient(315deg, transparent 5px, #191919 5px);
background-image: 
-webkit-linear-gradient(45deg, transparent 0px, #191919 0px), 
-webkit-linear-gradient(135deg, transparent 5px, #191919 5px), 
-webkit-linear-gradient(225deg, transparent 0px, #191919 0px), 
-webkit-linear-gradient(315deg, transparent 5px, #191919 5px);
background-image: 
-ms-linear-gradient(45deg, transparent 0px, #191919 0px), 
-ms-linear-gradient(135deg, transparent 5px, #191919 5px), 
-ms-linear-gradient(225deg, transparent 0px, #191919 0px), 
-ms-linear-gradient(315deg, transparent 5px, #191919 5px);
}
p.linkBtn a {
 font-size:12.5px;
 padding:10px 0;
	height:40px;
	box-sizing:border-box;
 background: url(/images/arr_01.png) no-repeat center right 10px;
 background-size:16px auto;
 color:#FFF;
 text-align:center;
}
p.linkBtn:hover,
p.linkBtn.line:hover {
background-attachment: scroll, scroll, scroll, scroll;
background-clip: border-box, border-box, border-box, border-box;
background-color: rgba(0, 0, 0, 0);
background-image: 
-moz-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-moz-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-image: 
-webkit-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-webkit-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-image: 
-ms-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-ms-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-origin: padding-box, padding-box, padding-box, padding-box;
background-position: left bottom, right bottom, right top, left top;
background-repeat: no-repeat;
background-size: 50% 50%;
}
p.linkBtn.line:before{
	content:'';
	position:absolute;
	top:0;
	left:0;
 width:10px;
 height:40px;
 background:url( /images/lineBtn_left.png);    
 background-size:contain;
 vertical-align:middle;
}
p.linkBtn.line:after{
	content:'';
	position:absolute;
	top:0;
	right:0;
 width:10px;
 height:40px;
 background:url( /images/lineBtn_right.png);    
 background-size:contain;
 vertical-align:middle;
}
p.borderBtn {
	background:url(/images/lineBtn_center.png) repeat-x;
	position:relative;
 background-size:auto 100%;
}
p.borderBtn {
 border: none;
 margin:0 3.5%;
 width:93%;
}
p.borderBtn:before{
	content:'';
	position:absolute;
	top:0;
	left:0;
 width:10px;
 height:40px;
 background:url( /images/lineBtn_left.png);    
 background-size:contain;
 vertical-align:middle;
}
p.borderBtn:after{
	content:'';
	position:absolute;
	top:0;
	right:0;
 width:10px;
 height:40px;
 background:url( /images/lineBtn_right.png);    
 background-size:contain;
 vertical-align:middle;
}
p.borderBtn a {
 font-size:12.5px;
 padding:10px 0;
	height:40px;
	box-sizing:border-box;
 background: url(/images/arr_01.png) no-repeat center right 10px;
 background-size:16px auto;
 color:#FFF;
 text-align:center;
}
p.borderBtn:hover {
 border:none;
 background:none;
background-attachment: scroll, scroll, scroll, scroll;
background-clip: border-box, border-box, border-box, border-box;
background-color: rgba(0, 0, 0, 0);
background-image: 
-moz-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-moz-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-moz-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-image: 
-webkit-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-webkit-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-webkit-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-image: 
-ms-linear-gradient(45deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(135deg, transparent 5px, #e63250 5px), 
-ms-linear-gradient(225deg, transparent 0px, #e63250 0px), 
-ms-linear-gradient(315deg, transparent 5px, #e63250 5px);
background-origin: padding-box, padding-box, padding-box, padding-box;
background-position: left bottom, right bottom, right top, left top;
background-repeat: no-repeat;
background-size: 50% 50%;
}
p.borderBtn:hover:before,
p.borderBtn:hover:after{
	content:none;
}

/* backBtn
-------------------------------------------*/	
p.borderBtn.back {
	margin:0 3.5%;
 width:93%;
}

/* table
-------------------------------------------*/
table{
 margin-bottom:40px;
 font-size:10px;
 line-height:20px;
}
table th, 
table td{
 padding:4px 5px;
}


.clm2 li,
.clm3 li{
 width:100%;
 float:none;
 margin-right:0px;
}


.para2 {
 margin:0 3.5%;
 width:93%;
}
.para2 li:nth-child(2n){margin-right:0px;}
.para2 li{
 width:48%;
 float:left;
 margin-right:3.5%;
}
.para2 li p{ padding:5px 0;}

/* tabStyle
-------------------------------------------*/
.tabStyle {
 margin-bottom: 10px;
}
.tabStyle li {
 border: 1px solid #fff;
	vertical-align:middle;
}
.tabStyle li a{
	padding:9px 0;
	vertical-align:middle;
}


}