@charset "utf-8";

html {
  background: #EBEBEC url(../img/html_bg.jpg) repeat-y center top;
  }

body {
  background: url(../img/body_bg.gif) no-repeat center top;
  text-align: center;
  font-size: 12px;
  color: #333333;
  font-family: "ＭＳ Pゴシック", Osaka, Verdana, "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", sans-serif;
  }

#wrapper {
  width: 780px;
  margin: 0 auto;
  text-align: left;
  }
  
#content {
  width: 740px;
  margin-left: 20px;
  }
  
a {
  color: #3300cc;
  }
  
a:hover {
  color: #FF9900;
  }
  
strong {
  font-weight: bold;
  }


.annotation {
  padding-left: 1em;
  background: url(../img/annotation_bg.gif) no-repeat 0 4px;
  color: #ff0000;
  }
  
.annotation strong {
  font-weight: normal;
  }


/* color
---------------------------------------------------------------------------------------- */

.cff0000 {
  color: #FF0000;
  font-weight: normal;
  }
  
.cff9900 {
  color: #ff9900;
  font-weight: bold;
  }
 
  
/* #header
---------------------------------------------------------------------------------------- */

#header {
  position: relative;
  height: 84px;
  background: url(../img/header_bg.jpg) no-repeat center top;
  }
  
#en #header {
  background: url(../img/header_bg_en.jpg) no-repeat center top;
  }
  
#header h1 {
  position: absolute;
  top: 13px;
  left: 10px;
  line-height: 1;
  font-weight: bold;
  font-size: 10px;
  color: #ffffff;
  }
  
#logo {
  position: absolute;
  top: 29px;
  left: 5px;
  }
  
#headerTel {
  position: absolute;
  top: 39px;
  right: 100px;
  }
  
#buEnglish {
  position: absolute;
  top: 39px;
  right: 10px;
  }
  

/* #globalNavi
---------------------------------------------------------------------------------------- */
 
#globalNavi {
  overflow: hidden;
  height: 39px;
  }
  
#globalNavi ul li {
  float: left;
  width: 190px;
  }
  
#globalNavi ul li#globalNavi01 { width: 210px;}

#globalNavi ul li a {
  overflow: hidden;
  display: block;
  widht: 190px;
  height: 0 !important;
  height /**/: 39px;
  padding-top: 39px;
  background-image: url(../img/global_navi.jpg);
  background-repeat: no-repeat;
  }

#globalNavi ul li#globalNavi01 a { background-position: 0 0;}
#globalNavi ul li#globalNavi02 a { background-position: -210px 0;}
#globalNavi ul li#globalNavi03 a { background-position: -400px 0;}
#globalNavi ul li#globalNavi04 a { background-position: -590px 0;}

#globalNavi ul li#globalNavi01 a:hover { background-position: 0 -39px;}
#globalNavi ul li#globalNavi02 a:hover { background-position: -210px -39px;}
#globalNavi ul li#globalNavi03 a:hover { background-position: -400px -39px;}
#globalNavi ul li#globalNavi04 a:hover { background-position: -590px -39px;}


/* path
---------------------------------------------------------------------------------------- */

.path {
  text-align: right;
  margin-bottom: 4px;
  }

.path li {
  display: inline;
  padding-left: 5px;
  }
  
.path li img {
  vertical-align: bottom;
  }

/* mainContent
---------------------------------------------------------------------------------------- */

#mainContent {
  float: right;
  width: 495px;
  margin: 20px 0;
  }
  
#mainContent .box {
  margin-bottom: 20px;
  }
  
#mainContent .box02 {
  width: 495px;
  margin-bottom: 20px;
  }
  
#mainContent .box03 {
  width: 475px;
  margin: 0 10px 20px;
  }
  
#mainContent .section {
  width: 495px;
  margin-bottom: 1em;
  background: url(../img/line_bot.gif) repeat-x left bottom;
  } 
  
.boxBorder {
  margin-bottom: 20px;
  border: 5px solid #efeeee;
  padding: 10px;
  }
  
.boxBorderL {
  float: left;
  width: 315px;
  } 
  
.boxBorderR {
  float: right;
  width: 138px;
  }  
  
#mainContent .box h2 {
  margin-bottom: 10px;
  }
  
#mainContent .box h2.marB5 {
  margin-bottom: 5px;
  }
  
table .table03 p.marB0 {
  margin-bottom: 0px;
  }
  
#mainContent .box h3 {
  margin-bottom: 10px;
  }
  
#mainContent .box h4 {
  margin-bottom: 10px;
  }
  
#mainContent .box .boxR443 h4 {
  margin-bottom: 5px;
  }
  
#mainContent .box h5 {
  margin-bottom: 5px;
  }
  
#mainContent .box .boxR300 h5 {
  margin-bottom: 10px;
  }
  
.boxBorder h3 {
  margin-bottom: 10px;
  }
  
.boxBorder ul li {
  line-height: 1.5;
  margin-bottom: 2px;
  }

#mainContent .box p {
  margin-bottom: 1em;
  line-height: 1.5;
  }
  
#en #mainContent .box p, #en #mainContent .boxBorder p  {
  margin-bottom: 1em;
  line-height: 1.7;
  }
  
#en #mainContent .boxBorder p,.cff9900 {
  margin-bottom: 0;
  }
  
#en #mainContent .boxBorder p.cff9900 {
  margin-bottom: 1em;
  }
  
#en #mainContent .boxBorder ul {
  margin-bottom: 1em;
  }

#en #mainContent .boxBorder li {
  line-height: 1.7;
  }
  
.leadArea strong {
  font-weight: bold;
  color: #ff9900;
  }
  
.pagetop {
  text-align: right;
  }
  
.divImgArea {
  text-align: center;
  margin-bottom: 2px;
  }
  
.divImgArea img {
  vertical-align: top;
  }
  
.divImgArea02 {
  margin-bottom: 2px;
  }


/* boxL boxR
--------------------------------------------------- */
  
.boxL22 {
  display: inline; /* forIE */
  float: left;
  width: 22px;
  margin-left: 10px;
  }

.boxL55 {
  display: inline; /* forIE */
  float: left;
  width: 55px;
  margin-left: 7px;
  }

.boxL165 {
  float: left;
  width: 165px;
  }

.boxL180 {
  float: left;
  width: 180px;
  padding-bottom: 10px;
  }
  
.boxL220 {
  float: left;
  width: 220px;
  padding-bottom: 10px;
  }

.boxL231 {
  float: left;
  width: 231px;
  padding-bottom: 10px;
  }

.boxL242 {
  float: left;
  width: 242px;
  padding-bottom: 10px;
  margin:0 5px 5px 0;
  height:207px;
  }

.boxL350 {
  float: left;
  width: 350px;
  padding-bottom: 10px;
  }
  
.boxR125 {
  float: right;
  width: 125px;
  padding-bottom: 10px;
  }
  
.boxR231 {
  float: right;
  width: 231px;
  padding-bottom: 10px;
  }
  
.boxR232imgBox {
  float: right;
  width: 232px;
  margin: 0 0 20px 15px;
  padding-bottom: 10px;
  }

.boxR242 {
  float: right;
  width: 242px;
  padding-bottom: 10px;
  }
  
.boxR285 {
  float: right;
  width: 285px;
  padding-bottom: 10px;
  }
  
.boxR300 {
  float: right;
  width: 300px;
  }

.boxR305 {
  float: right;
  width: 305px;
  padding-bottom: 10px;
  }
  
.boxR399 {
  display: inline; /* for IE */
  float: right;
  width: 399px;
  margin-right: 7px;
  }

.boxR443 {
  display: inline; /* for IE */
  float: right;
  width: 443px;
  margin-right: 10px;
  }
  

/* sideContent
---------------------------------------------------------------------------------------- */

#sideContent {
  float: left;
  width: 215px;
  margin: 30px 0;
  } 
  
#sideContent .box{
  margin-bottom: 15px;
  } 
  
#en #sideContent .box{
  margin-bottom: 10px;
  } 
  
#sideContent .box ul.arrow01 {
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  }
  
#sideContent .box ul.arrow01 li {
  border-bottom: 1px solid #cccccc;
  line-height: 1.5;
  }
  
#sideContent .box ul.arrow01 li a{
  width: 193px !important;
  width /**/: 213px;
  display: block;
  padding: 10px 0 10px 20px;
  background: url(../img/arrow01.gif) no-repeat 10px 14px;
  color: #3300cc;
  text-decoration: none;
  }
  
#sideContent .arrow01 li a:hover {
  color: #FF9900;
  text-decoration: underline;
  }

  

/* footer
---------------------------------------------------------------------------------------- */

#footer {
  background: url(../img/foote_bg.gif) no-repeat left top;
  padding: 20px 10px 15px;
  }
  
#footerL {
  float: left;
  width: 330px;
  }
  
#footerL dt, #footerL dd {
  line-height: 1.5;
  }
  
#footerR {
  float: right;
  width: 420px;
  text-align: right;
  line-height: 1.5;
  }

address {
  margin: 0 auto;
  width: 790px;
  } 


/* margin
---------------------------------------------------------------------------------------- */

.marB5 { margin-bottom: 5px; }

.marB1em { margin-bottom: 1em; }


/* arrow
---------------------------------------------------------------------------------------- */

#mainContent .arrow01 li a {
  padding-left: 12px;
  background: url(../img/arrow01.gif) no-repeat 0 2px;
  color: #3300cc;
  text-decoration: none;
  }
  
#mainContent .arrow01 li a:hover {
  color: #FF9900;
  text-decoration: underline;
  }
  
.arrow02 li {
  margin-bottom: 5px;
  padding-left: 15px;
  background: url(../img/arrow02.gif) no-repeat 8px 9px;
  line-height: 1.5;
  }
  
.arrow03 li {
  padding: 5px 0 5px 22px;
  background: url(../img/arrow03.gif) no-repeat 5px 9px;
  line-height: 1.5;
  }
  
.arrow03 li a {
  text-decoration: none;
  color: #333333;
  }

.arrow03 li a:hover {
  text-decoration: underline;
  color: #FF9900;
  }
  

/* li
---------------------------------------------------------------------------------------- */  

.table01 td li {
  margin-bottom: 3px;
  }

li.lastLi, form .table02 td li.lastLi {
  margin-bottom: 0px;
  }
  
form .table02 td li {
  margin-bottom: 10px;
  }
  
ol {
  margin-left: 30px;
  }
  
ol li {
  padding: 5px 0;
  line-height: 1.5;
  }
  
dl.note dt {
  line-height: 1.5;
  }
  
dl.note dd {
  margin: -1.5em 0 5px 0;
  padding: 0 0 0 1em;
  line-height: 1.5;
  }
  
.numberIcon {
  list-style: none;
  margin: 0;
  padding: 0;
  }
  
.numberIcon li {
  margin-bottom: 5px;
  padding: 5px 0 5px 35px;
  background-repeat: no-repeat;
  background-position: 0 2px;
  }
  
.number01 {  background-image: url(../img/icon_number01b.gif);}
.number02 {  background-image: url(../img/icon_number02b.gif);}
.number03 {  background-image: url(../img/icon_number03b.gif);}
.number04 {  background-image: url(../img/icon_number04b.gif);}
.number05 {  background-image: url(../img/icon_number05b.gif);}
  

/* dl
---------------------------------------------------------------------------------------- */
 
.newsList dt {
  padding: 5px 0 5px 17px;
  background: url(../img/arrow01.gif) no-repeat 5px 9px;
  line-height: 1.5;
  }
  
.newsList dd {
  margin: -2.3em 0 2px 0;
  padding: 5px 0 5px 8em;
  background: url(../img/line_bot.gif) repeat-x left bottom;
  line-height: 1.5;
  }

.table03 dl dt {
  font-weight: bold;
  }
  
.table03 dl dd {
  margin-bottom: 5px;
  }


/* table
---------------------------------------------------------------------------------------- */

.table01 {
  margin-bottom: 10px;
  }

.table01 tr {
  background: url(../img/line_bot.gif) repeat-x left bottom;
  }
  
.table01 th, .table01 td {
  vertical-align: top;
  padding: 10px;
  line-height: 1.5;
  }
  
.table01 th {
  color: #032164;
  }
  
.table01 th .year02 {
  font-weight: normal;
  color: #333333;
  }
  
.table02 {
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  }
  
.table02 th, .table02 td {
  border-right: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 10px;
  vertical-align: top;
  font-weight: normal;
  line-height: 1.5;
  }
  
.table02 th {
  background: #f2f5f8;
  }
  
.table03 {
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  margin: 5px 0 5px;
  }
  
.table03 th, .table03 td {
  border-right: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 5px;
  vertical-align: top;
  font-weight: normal;
  line-height: 1.5;
  }
  
.table03 th {
  background: #f2f5f8;
  }
  

/* form
---------------------------------------------------------------------------------------- */
  
.input01 {
  width: 150px;
  }
  
.input02 {
  width: 80px;
  }
  
.input03 {
  width: 270px;
  }
  
.lastLi input {
  margin-bottom: 5px;
  }
  
.submitArea {
  margin-top: 10px;
  text-align: center;
  }
  
.submitArea input {
  padding: 3px 5px 2px;
  }
  
.required {
  font-weight: bold;
  color:#ff0000;
  }
  

/* company.html
---------------------------------------------------------------------------------------- */
  
#companyMessage {
  background: url(../img/message_bg.jpg) no-repeat right bottom;
  padding: 3px 0 15px;
  }


/* contact.html
---------------------------------------------------------------------------------------- */  
  
.reportList li {
  display: inline;
  padding-right: 20px;
  }
  
.reportList li span {
  font-size: 20px;
  color: #ff6600;
  font-weight: bold;
  }
  

/* faq.html
---------------------------------------------------------------------------------------- */  

.faqBox {
  border: 5px solid #efeeee;
  padding: 10px 10px 0;
  margin-bottom: 15px;
  }
  
.faqBox li {
  line-height: 1.5;
  margin-bottom: 10px;
  }

.faqBox li a {
  text-decoration: none;
  background: url(../img/arrow01.gif) no-repeat 0 2px;
  padding-left: 12px;
  }

.faqList {
  background: url(../img/line_bot.gif) repeat-x left bottom;
  margin-bottom: 5px;
  }

.faqList dt {
  background: url(../img/faq_q.gif) no-repeat 0 7px;
  padding: 10px 0 10px 30px;
  line-height: 1.5;
  font-weight: bold;
  }
  
.faqList dd {
  background: url(../img/faq_a.gif) no-repeat 0 7px;
  padding: 8px 0 15px 30px;
  line-height: 1.5;
  margin-bottom: 1em;
  }
  
 
/* technology.html
---------------------------------------------------------------------------------------- */  
 
.buAreaR {
  text-align: right;
  }
  
  
/* technology08.html
---------------------------------------------------------------------------------------- */  
 
ol.technology08Flow {
  list-style: none;
  width: 475px;
  margin: 0 0 0 10px;
  padding: 0;
  }
  
ol.technology08Flow img {
  vertical-align: top;
  }
  
.tec08Flow01 {
  background: url(../img/tec08Flow01.gif) repeat-y 0 0;
  }
  
.tec08Flow02 {
  background: url(../img/tec08Flow02.gif) no-repeat center top;
  }
  
.tec08Flow03 {
  padding: 7px 0;
  background: url(../img/tec08Flow03.gif) no-repeat center bottom;
  }
  
ol.technology08Flow li {
  margin-bottom: 2px;
  padding-bottom: 25px;
  background: url(../img/arrow04.gif) no-repeat center bottom;
  }
  
ol.technology08Flow li.technology08FlowLast {
  background: none;
  }
  
ol.technology08Flow li ol {
  margin: 0;
  padding: 0;
  list-style: none;
  }

ol.technology08Flow li ol li{
  background: none;
  margin: 0 0 10px;
  padding: 0 0 10px 0;
  border-bottom: 1px solid #cccccc;
  }
  
.tec08Img {
  text-align: center;
  }
 
 
/* technology09.html
---------------------------------------------------------------------------------------- */  

.ptxt_ml {
	margin-left:26px;
}

 
/* example.html
---------------------------------------------------------------------------------------- */  

.exampleBox {
  margin-bottom: 5px;
  margin-right: 5px;
  }

#mainContent .box .exampleBox .boxL242 h3, #mainContent .box .exampleBox .boxR242 h3 {
  margin: 0;
  padding: 0;
  }
  
.boxL242 img {
  cursor: pointer;
  }

.pointer_img {
  }


/* new_parts.html
---------------------------------------------------------------------------------------- */  
#new_parts {
}

#new_parts h4 {
	font-size:17px;
	padding-left:17px;
	color:#002193;
	background: url(../img/arrow03.gif) no-repeat 0px 5px;
}

.box_line {
  background: url(../img/line_bot.gif) repeat-x left top;
  padding-top:10px;

}

#new_parts ul {
    list-style: none;
    width: auto;
    line-height: 1.3;
}
 
#new_parts li {
    margin-bottom: 8px;
    padding-left: 1em; /*1em（1文字）分、右に動かす*/
    text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
}


/* .clearfix
---------------------------------------------------------------------------------------- */

.clearfix:after {
    content: "."; 
    display: block; 
    height: 1px; 
    clear: both; 
    visibility: hidden;
}

.clearfix { display: inline-block; }

.clr {
	clear:both;
}

/*\*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/**/


/* .Thumbnail
---------------------------------------------------------------------------------------- */

#thumbnail li{
  position: relative;
  }

.thumbnail{
  position: absolute;
  top: 0;
  left: 0;
    z-index:100;
	visibility:hidden;
	background-color:#ffffff;
	border:1px black solid;
}








/* .Sonota
---------------------------------------------------------------------------------------- */
.movi_title {
display:block;
background:url(../img/num_bg.gif) no-repeat 0 0;
background-repeat: no-repeat;
width: 242px;
color:#042E8E;
font-weight:bold;
font-family:Arial, Helvetica, sans-serif;
}

.movi_title_11 {
font-size:12px;
}

.movi_title span {
	display:block;
	padding:13px 0 5px 40px;
}

:root .movi_title span {
letter-spacing:-0.05em;
}
.movi_title img {
margin:12px 5px 0px 5px;
float:left;
}

:roo .movi_title img {
margin:12px 5px 0px 5px;
float:left;
}

/* 左のボックスのNEW */
.boxL242 {
position:relative;
	height: auto;
}

.boxL242 .new {
position:absolute;
left:-3px;
top:-5px;
}

/* 右のボックスのNEW */
.boxR242 {
position:relative;
}

.boxR242 .new {
position:absolute;
left:-3px;
top:-5px;
}



/* .Youtube
---------------------------------------------------------------------------------------- */
.youtube_box {
	margin-bottom: 30px;
}
.youtube_box h3 {
	color: #fff;
	font-size: 13px;
	padding: 3px 5px 5px 10px;
	margin-bottom: 5px!important;
	background:url(../img/youtube_h3_repeat.png) repeat-y 0 0;
	border-bottom:2px dotted #D5D1D1;
	background-position: bottom;
	height: auto;
	letter-spacing: -0.5px;
}
.youtube_box span {
	font-size: 11px;
	letter-spacing: -0.5px;
}
.youtube_boxCn li{
	margin-bottom: 30px;
}

/* グローバルナビのツリーメニュー */
#globalNavitree {
  width: 780px;
}
.navtree {
  width: 780px;
  height: 39px;
  margin: 0 auto;
  padding: 0;
  display: flex;
}
.navtree li {
  position: relative;
  list-style: none;
}
.navtree li a {
  display: block;
  width: auto;
  height: 39px;
  text-align: center;
  text-decoration: none;
}
.navtree > li:hover > a {/*layer-1*/
  color: orange;
  background: #afc6e2;
}
.navtree > li li:hover > a {/*layer-2*/
  color: olive;
  background: #afc6e2;
}
.navtree li ul {
  top: 39px;
  left: 0px;
  position: absolute;
}
.navtree li ul li {
  overflow: hidden;
  height: 0;
}
.navtree li ul li a {
}
.navtree li:hover > ul > li {
  overflow: visible;
  height: 39px;
}
.nolink {
	pointer-events: none;
}