/**
 * basic
 */

body{
  font-family: "MS PGothic",Osaka,"ヒラギノ角ゴ StdN",Sans-Serif;
  /**font-family: Verdana, メイリオ, Meiryo, 'ＭＳ ゴシック', sans-serif;*/
  font-size:80%;
  line-height: 1;
  background:url(../images/background.png) repeat-y center top #EEE;
}

a img,
:link img,
:visited img {
  border: none;
}

img.icon{
  margin-left:0.5em;
  }

a {text-decoration: none; outline:0;}
a:link {color: #4b7bac; outline:0;}
a:visited {color: #4b7bac; outline:0;}
a:active {color: #4b7bac; outline:0;}
a:hover {
  color: #4b7bac;
  text-decoration:underline;
  outline:0;
}

#wrapper{
	width:764px;
	margin:0 auto;
	padding:0px 30px 0 30px;
}

#main_area{
	float:left;
	width:553px;
	margin:0 38px 15px 0;
	clear:both;
  }
  
#main_area.full{
  float:none;
  width:100%;
}

#sub_area{
  float:left;
  width:173px;
  margin-bottom:15px;
  z-index:0;
  }
  
#sub_area a{
  z-index:0;
  }
  
/**
 * Rollover
 */
 a img:hover{
  /* IE */
  filter: alpha(opacity=80);
  background-color:#FFF;
  /* Safari Opera */
  opacity:0.80;
  /* Firefox Netscape */
  -moz-opacity:0.80;
}

 .active img{
  /* IE */
  filter: alpha(opacity=40);
  background-color:#FFF;
  /* Safari Opera */
  opacity:0.40;
  /* Firefox Netscape */
  -moz-opacity:0.40;
}


/**
 * Header
*/
#header{
  position:relative;
  }
  
#header h1{
	margin:0 0 20px 0;
}

#header .info{
	position:absolute;
	right:0;
	top:5px;
	text-align:center;
  }
  
#header ul.info li{
  margin:2px 0;
  list-style:none;
  font-size:85%;
  color:#999;
  letter-spacing:0.1em;
  }

#header .flash{
  margin:15px 0;
  border:solid 1px #CCC;
   }

#header ul#g_navi{
  height:58px;
  margin:15px 0;
  }

#header ul#g_navi a{
  color: #333;
  text-decoration: none;
}

#header ul#g_navi a:hover,
#header ul#g_navi a:active {
  background: #003d7b;
  color:#FFF;
}

#header ul#g_navi li {
  list-style: none;
  float: left;
  position: relative;
  margin: 0 0 0 5px;
  width: 91px;
  height: 2.5em;
  line-height: 2.5em;
  text-align: center;
  font-size:95%;
}

#header ul#g_navi li.first{
  margin-left:0;
  }

#header ul#g_navi li a{
  display: block;
  width: 91px;
}
/*#header ul#g_navi li.active{
  background-color:#FFCC00;
  }*/

/* 下層のメニューを不可視に */
#header ul#g_navi li ul {
  display: none;
  /*border-left:solid 1px #CCC;
  border-right:solid 1px #CCC;
  border-bottom:solid 1px #CCC;*/
}

/* 疑似要素 :hover で下層のメニューを可視に */
#header ul#g_navi li:hover ul {
  display: block;
  position: absolute;
  top:58px;
  left:0;
  z-index: 100;
}

#header ul#g_navi li ul li {
  background-color:#d1e8fa;
  float: none;
  margin: 0;
  font-weight: normal;
  text-align: left;
  text-indent:1em;
  color:#000;
  width:155px;
    /* IE */
  filter: alpha(opacity=85);
  /* Safari Opera */
  opacity:0.85;
  /* Firefox Netscape */
  -moz-opacity:0.85;
  /*border-top:solid 1px #333;*/
  z-index: 100;
}

#header ul#g_navi li ul li a{
  width:155px;
  z-index: 100;
	}

#header ul#g_navi { /* IE6 対策 */
  behavior: url("csshover.htc");
}

/**
 * topic_path
*/

#topic_path{
	margin:0;
	font-size:85%;
}

#topic_path li {
	display:inline;
	line-height:110%;
	list-style-type:none;
}

#topic_path li a {
	padding-right:10px;
	background:url(../images/topicpath.gif) no-repeat right center;
}

/**
 * Common
*/
#main_area h2{
  margin: 15px 0;
}

#main_area h3{
	margin:15px 0;
	border-top:solid 5px #D9D8CE;
	padding:15px 0 15px 15px;
	font-size: 130%;
	background:url(../images/icn_plus.gif) no-repeat center left;
	border-bottom:solid 1px #D9D8CE;
	color: #003C7B;
	line-height:1.3;
  }
  
#main_area h4{
	margin:10px 0;
	padding:0.5em 0 0.5em 0px;
	font-size: 115%;
	border-bottom:dotted 1px #CCC;
	color: #003C7B;
	line-height:1.3;
  }

#main_area h6{
	margin:0px 0;
	padding:0.5em 0 0.5em 0px;
	font-size: 115%;
	border-bottom:dotted 1px #CCC;
	color: #003C7B;
	line-height:1.3;
  }
 
.border{
	border-bottom:dotted 1px #CCC;
	margin-bottom:8px;
  }
  
h4 span.sub_icon,
.sub_icon{
   font-weight:normal;
   font-size:85%;
   padding:3px 10px;
   color:#FFF;
   background-color:#003C7B;
   margin-right:0.5em;
   }

/*.sub_iconB{
   font-weight:bold;
   font-size:100%;
   padding:5px 10px;
   color:#FFF;
   background-color:#003C7B;
   margin-right:0.5em;
   border-left:solid 5px #3366cc;
   }*/
  
#main_area ol{
  margin:1em 0 1em 40px;
  }
  
#main_area ol li{
  list-style:decimal;
  line-height:1.5;
  margin:0.2em 0;
  }

#main_area ul{
  margin:1em 0 1em 20px;
  }
  
#main_area ul li{
  list-style:disc;
  line-height:1.5;
  margin:0.3em 0;
  }

p.catch{
  font-size:110%;
  font-weight: bold;
  margin:0.5em 0;
}

p.bold{
  font-weight: bold;
  margin:0.5em 0;
}
 
p.link a{
  background:url(../images/arrow_01.gif) no-repeat center left;
  /*padding-left:20px;*/
}

p.link{
  margin:0.3em 0 !important;
}

p.more_watch{
  clear: both;
  margin:0.5em 20px 0 0;
  font-size:85%;
  text-align:right;
}

p.lead{
  line-height: 1.6;
}

.caution{
  font-size:85%;
  color:#666666;
  line-height:1.3;
  letter-spacing:0.01em;
  margin:1em 0 0 0;
  font-weight: normal;
}

span.caution{
    margin-left:1em;
}

strong{
  font-size:110%;
}

strong.red{
  color:#FF0000;
}

.small{
  font-size:85%;
  font-weight:normal;
}

.center{
  text-align:center;
  }
  
img.right{
 float:right;
 margin:0 0 0 10px;
 }
 
 img.left{
 float:right;
 margin:0 10px 0 0;
 }
 
 img.border{
   border:solid 1px #DDD;
   }
  
/**
 * common_box
*/

.box{
  clear:both;
  margin-bottom:1em;
  width:100%;
  border-bottom:solid 1px #DDD;
  padding-bottom:1em;
  /*border:solid 1px #DDD;
  padding:10px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;*/
  }

.boxB{
  clear:both;
  margin-bottom:0.5em;
  width:100%;
  padding-bottom:1em;
  }

.box_01{
	padding:15px;
	border:solid 1px #EEE;
	background-color:#fafafa;
  }
  
.box_01 h5{
  margin:0 0 0.5em 0;
  padding-left:10px;
  border-left:solid 5px #333;
  font-size:110%;
  }
  
.box_01 p.sub{
  margin-bottom:1em;
  font-size:85%;
  }
  
.box_01 p{
  margin:0;
  }
  
  
/**
 * Home
*/
#main_area .ad{
 margin-bottom:15px;
 }
 
#main_area .youtube{
 margin-bottom:15px;
 }
 
 /**
 * news
*/
.news{
  margin-bottom:15px;
  }

.news h2{
  margin-bottom:10px;
  }

.news dl{
  /*height:150px;
  overflow: auto;*/
  background:url(../images/line_01.gif) no-repeat center top;
  padding-top:17px;
}

.news dl dt{
  float:left;
  width:85px;
  clear:both;
  line-height:1.5;
  margin-bottom:0.8em;
  background:url(../images/icn_plus.gif) no-repeat center left;
  padding-left:12px;
}

.news dl dd{
	width:455px;
	_width:450px;
	line-height:1.5;
	margin-bottom:0.8em;
	margin-left:98px;
}

.news dl dd img.right
{
  width:80px;
}

span.genre{
   color:#FFF;
   background-color:#BBB;
   padding:2px 5px;
   font-size:85%W;
   margin-right:0.5em;
  }


/**
 * data
*/
.data{
  margin-bottom:15px;
  }

.data dl{
  /*height:150px;
  overflow: auto;
  background:url(../images/line_01.gif) no-repeat center top;*/
  padding-top:10px;
}

.data dl dt{
  float:left;
  width:85px;
  clear:both;
  line-height:1.5;
  margin-bottom:0.8em;
  padding-top:0.8em;
  padding-left:12px;
  background:url(../images/icn_plus.gif) no-repeat 0 15px;
  border-top:dotted 1px #CCC;
}

.data dl dd{
  width:455px;
  _width:450px;
  line-height:1.5;
  margin-bottom:0.8em;
  padding-top:0.8em;
  margin-left:98px;
  border-top:dotted 1px #CCC;
}



/**
 * caution
 */
.caution_box{
  clear:both;
  margin:1em 0 0 0;
  padding:10px;
  line-height:1.4;
  background:url(../images/back_line_04.png);
}

.caution_box p.ttl{
  background:url(../images/icns/error.png) no-repeat center left;
  padding-left:20px;
  font-weight:bold;
  margin:0;
}

.caution_box
.caution_box ul{
  margin:0 1em;}

/**
 * button
 */
div.btn{
  text-align: center;
  clear:both;
  margin:1em 0;
  }
  
/**
 * sub_area
 */

#sub_area ul.banner{
  margin:15px 0 0 0;
}

#sub_area ul li{
  list-style:none;
  margin-bottom:5px;
  }
  
#sub_area  p.company_info{
margin-top:20px;
  line-height:1.6;
  font-size:85%;
  color:#666;
  }
  
#sub_area  p.company_info span{
  font-size:110%;
  color:#003D7B;
  }
#sub_area  p.credit{
margin-top:30px;
  line-height:1;
  font-size:85%;
  color:#333;
  }

/**
 * Footer
 */
#footer{
  clear:both;
  background-color:#003d7b;
  text-align:center;
  padding:20px;
  width:784px;
  margin:0 auto;
}

#footer ul.sub_navi{
  margin:0 0 1em 0;
  }

#footer ul.sub_navi li{
  list-style: none;
  display: inline;
  margin-left:0.5em;
  padding-left:1em;
  border-left:solid 1px #FFF;
  line-height:1;
  font-size:85%;
  }
 
#footer ul.sub_navi li.first{
  border-left: none;
  }
  
#footer ul.sub_navi li a {text-decoration: none; outline:0;}
#footer ul.sub_navi li a:link {color: #FFF; outline:0;}
#footer ul.sub_navi li a:visited {color: #FFF; outline:0;}
#footer ul.sub_navi li a:active {color: #FFF; outline:0;}
#footer ul.sub_navi li a:hover {
  color: #FFF;
  text-decoration:underline;
  outline:0;
}

#footer p.copy{
  clear:both;
  text-align:center;
  color:#FFF;
  font-size:80%;
  }
 
/**
 * icns
 */
.icon{
  vertical-align:middle;
  }

/**
 * clearfix
 */
.clearfix: after{
  content: "";
  display: block;
  visibility: hidden;
  clear: both;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
}

* html .clearfix{
  display: inline-block;
}

/**
 * ie7
 */
*: first-child+html .clearfix {
  display: inline-block;
}

/**
 * ie8
 */
html>/**/body .clearfix
{
  display: inline-block;
}

/**
 * contents_company
 */
#main_area.company ul.partner{
  margin: 0;
}

#main_area.company ul.partner li{
  list-style: none;
  border-bottom:dotted 1px #DDD;
  padding: 10px 0;
}

#main_area.company ul.partner li img{
  vertical-align: middle;
  margin-right:1em;
}

#main_area.company ul.partner li a:hover{
  text-decoration: none !important;
}

/**
 * contents_case
 */

   
/**
 * contents_material
 */
#main_area.material table.list{
  border-collapse:collapse;
  width:100%;
  border:solid 1px #DDD;
  margin:1em 0;
  }
  
#main_area.material table.list td.content h4{
  margin:0 0 1em 0 !important;
  }
 
#main_area.material table.list td{
  padding:10px;
  }
  
#main_area.material table.list tr,
#main_area.material table.list td{
  border-bottom:solid 1px #DDD;
  /*border-top:solid 4px #DDD;*/
  }
 
#main_area.material table.list td.cover img{
   width:100px;
   }
   
#main_area.material table.list td.cover{
  vertical-align:top;
  width:10%;
  }

#main_area.material table.list td span.price{
  font-size:110%;
  font-weight:bold;
  color:#FF3300;
  }

#main_area.material table.list td.btn{
  width:10%;
  border-left:dotted 1px #DDD;
  }
  
/**
 * contents_press
 */
#main_area.press table.list{
  border-collapse:collapse;
  width:100%;
  border:solid 1px #DDD;
  margin:1em 0;
  }
  
#main_area.press table.list td.content h4{
  margin:0 0 1em 0 !important;
  }
 
#main_area.press table.list td{
  padding:10px;
  }
  
#main_area.press table.list tr,
#main_area.press table.list td{
  border-bottom:solid 1px #DDD;
  /*border-top:solid 4px #DDD;*/
  }
 
#main_area.press table.list td.cover img{
   width:100px;
   }
   
#main_area.press table.list td.cover{
  vertical-align:top;
  width:10%;
  }


/**
 * contents_seminar
 */
#main_area.seminar.full #content{
  width:720px;
  margin:0 auto;
}
 
#main_area.seminar.full .box_01 ul.list
{
  padding:10px;
  margin:1em 0;
  background-color:#FFF;
}

#main_area.seminar.full .box_01 ul.list li{
  margin:0 0 0 30px;
  line-height:1.6;
}
 
table.seminar {
	width:100%;
	margin:1em 0;
	border-collapse:collapse;
	}

table.seminar th {
	width:18%;
	padding:10px;
	border:1px #ece9e3 solid;
	font-weight:bold;
	color:#515151;
	}

table.seminar th.title {
	background:#ece9e3;
	padding:10px;
	font-size:110%;
	font-weight:bold;
	color:#515151;
	}

table.seminar td {
	padding:5px;
	border:1px #ece9e3 solid;
	line-height:1.5;
	}

table.seminar dl {
width:100%;
}
table.seminar dt {
float:left;
clear:both;
width:90px;
}
table.seminar dd {
margin-left:100px;
padding-left:5px;
}


/**
 * baloon
 */ 
.hotspot {
  color:#fff;
  padding-bottom:1px;
  cursor:pointer;
}

#tt {
  position:absolute;
  display:block;
  background:url(images/tt_left.gif) top left no-repeat}
  
#ttcont {
  display:block;
  padding:10px;
  margin-left:5px;
  background:#666;
  color:#FFF;
  line-height:1.5;
  font-size:85%;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;}

.syokai-area dt{
float:left;
width:130px;
height:200px;
clear:both;
padding-left:20px;
}
.syokai-area dd{
margin-left:150px;
}
