@charset "utf-8";

/*====================================
			common.css
			
			0. browser reset
			1. basics
			   1-1. header
			   1-2. footer
			   1-3. sidebar
			2. elements
			3. etc

====================================*/



/*====================================

			0. browser reset

====================================*/

body,h1,h2,h3,h4,h5,h6,ul,li,table,th,td,
dt,dd,form,input,p,object,dl,dt,dd {
	margin:0;
	padding:0;
}

h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	
}

img {
	border:none;
}

table {
	width:100%;
	border:none;
	border-collapse:collapse;
}

ul {
	list-style:none;
}

td {
	border:none;
	vertical-align:top;
	}
	
a,a:visited {
	color:#111ccc;
	text-decoration:none;
}

a:hover {
	color:#111ccc;
	text-decoration:underline;
}


/*====================================

			1. basics

====================================*/
body {
	font-size:79%;
	line-height:1.7;
	color:#333333;
	background:url(../images/common/h_line.gif) repeat-x left top;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','ＭＳ Ｐゴシック',sans-serif;
	}

#ContentWrap {
	width:940px;
	padding:50px 0 50px 0;
	margin:0 auto;
}

#mainContent {
	width:670px;
	float:right;
	font-size:119%;
}

.font20 {
	font-size:164%;
	}

.font18 {
	font-size:154%;
	}

.font16 {
	font-size:139%;
	}

.font14 {
	font-size:108%;
	}

.font12 {
	font-size:93%;
	}

.font10 {
	font-size:85%;

	}

/*------------------------------------
		1-1. header
------------------------------------*/

#header {
	width:940px;
	margin:0 auto;
	padding:20px 0 10px 0;
}

#headLogo {
	width:154px;
	float:left;
}

#headSub {
	width:200px;
	float:right;
}

#headSub h1 {
	font-weight:normal;
	text-align:right;
	 display:inline; 
}

#headSub table {
	width:200px;
}

#headSub table td {
	text-align:right;
}

#gNavi {
	background:url(../images/common/g_navi_bg.gif) repeat-x left top;
	width:100%;
	height:77px;
	}

#gNaviInner {
	width:945px;
	padding:5px 0 0 0;
	margin:0 auto;
}

#gNavi ul {
	list-style:none;
	margin:0 auto;
	}
	
#gNavi ul li {
	float:left;
	}
	
#gNavi ul li img {
	vertical-align:bottom;
}
	
#gNavi p {
	padding:8px 0 0 4px;
}

#gNavi p a,#gNavi p a:visited {
	color:#111111;
	text-decoration:none;
}

#gNavi p a:hover {
	color:#111111;
	text-decoration:underline;
}

/*------------------------------------
		1-2. footer
------------------------------------*/

#footerNavi {
	background:#f0f0f0;
	padding:8px 0 6px 0;
}

#footerNavi ul {
	list-style:none;
	width:940px;
	margin:0 auto;
	color:#828282;
}

#footerNavi ul li {
	float:left;
	padding:0 8px 0 0;
	margin:0 8px 0 0;
	line-height:1.2;
	border-right:1px solid #828282;
}

#footerNavi ul li.last {
	border:none;
}

#footerNavi a,#footerNavi a:visited {
	color:#828282;
	text-decoration:none;
}

#footerNavi a:hover {
	color:#cb100e;
	text-decoration:underline;
}

#footer {
	background:#5c5c5c url(../images/common/footer_line.gif) no-repeat center 182px;
	padding:45px 0 15px 0;
	color:#b2b2b2;
}

#footer a,#footer a:visited {
	color:#b2b2b2;
	text-decoration:none;
}

#footer a:hover {
	color:#b2b2b2;
	text-decoration:underline;
}

#footerInner {
	width:940px;
	padding:0 0 50px 0;
	margin:0 auto;
}

#footerTxt01 {
	width:230px;
	margin:0 20px 0 0;
	float:left;
	line-height:1.6;
}

#footerTxt02 {
	width:220px;
	margin:0 15px 0 0;
	float:left;
	line-height:1.6;
}

#footerTxt03 {
	width:110px;
	margin:0;
	float:left;
	line-height:1.6;
}

#footerTop {
	width:70px;
	padding:5px 0 0 0;
	float:right;
}






/*------------------------------------
		1-3. sidebar
------------------------------------*/
#sideBar {
	width:225px;
	float:left;
	
}

#sideBar dt {
	font-weight:bold;
	border-top:2px solid #999999;
	border-bottom:1px solid #d6d6d6;
}

#sideBar dt span {
  display:block;
  padding:10px 0 10px 0;
  width:225px;
}

#sideBar dt a {
	display:block;
	padding:10px 0 10px 0;
	width:225px;
}

#sideBar dt a:hover {
	background:#f3f3f3;
}

#sideBar dd {
	border-bottom:1px solid #d6d6d6;
}

#sideBar dd a,.side_list a {
	display:block;
	background:url(../images/common/arrow_s.gif) no-repeat 20px 18px;
	padding:10px 10px 10px 30px;
}

.side_list a {
	border-bottom:1px solid #d6d6d6;
	}

#sideBar dd a:hover,.side_list a:hover {
	background:#f3f3f3 url(../images/common/arrow_s.gif) no-repeat 20px 18px;
}

#sideWork{
	background:#f9f9f9;
	padding:20px;
}



/*====================================

			2. elements

====================================*/

/*------------------------------------
			common
------------------------------------*/

.borderH2 {
	padding:0 0 12px 0;
	margin:0 0 20px 0;
	border-bottom:1px solid #111111;
}

.borderH2 h2 {
	font-weight:bold;
	font-size:154%;
	line-height:0.7;
}

.borderH2L {
	padding:0 0 25px 0;
	margin:0 0 30px 0;
	border-bottom:5px solid #404040;
}

.borderH2L p {
	font-weight:bold;
	font-size:28px;
	line-height:0.7;
	color:#404040;
}

.flBox01 {
	border:1px solid #cccccc;
	padding:20px;
	width:285px;
	float:left;
}

.flBox02 {
	border:1px solid #cccccc;
	padding:20px;
	width:285px;
	float:right;
}

.sideBorderPic {
	width:180px;
	height:88px;
	border:1px solid #e0e0e0;
}

.subTi {
	border-left:4px solid #cc0000;
	background:#efefef;
	font-size:134%;
	padding:5px 0 5px 12px;
}

.content_table {
	border-collapse:collapse;
	}
	
.content_table th {
	padding:6px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
	background:#efefef;
	border:1px solid #999999;
}

.border_box {
	border:1px solid #cccccc;
	padding:10px;
	}

.content_table th.grad_bg {
	padding:6px;
	background:#f0f0f0 url(../img/grad_bg.gif) repeat-x left top;
	border:1px solid #999999;
	}

.content_table td {
	padding:6px;
	background:#ffffff;
	border:1px solid #999999;
}

#bottomContact {
	border:2px solid #cecece;
	background:url(../images/common/bottom_contact_bg.gif) repeat-x left top;
	padding:10px 0 7px 0;
}

.arrow_mark_s {
	background:url(../images/common/triangle-s.gif) no-repeat left 0.5em;
	padding:0 0 0 10px;
}

.title_dot {
	font-size:130%;
	font-weight:bold;
	background:url(../images/common/line.gif) no-repeat left bottom;
	padding:0 0 3px 0;
	margin-bottom:20px;
}

.border_list {
    font-size:93%;
	background:url(../images/common/line.gif) no-repeat left bottom;
	padding:0 0 10px 0;
	margin-bottom:10px;
	}
	
.grad_bg_gen {
	padding:2px 6px 2px 0;
	background:#f0f0f0 url(../images/common/grad_bg.gif) repeat-x left top;
	}

.nList {
	list-style-position:inside;
	margin-left:20px;
	}
	
.nList li {
	margin-bottom:3px;

	}

/*------------------------------------
			top
------------------------------------*/

#topLead {
	width:754px;
	padding:50px 0 0 0;
	margin:0 auto;
}

#topLead h2 {
	width:544px;
	padding:0 0 0 80px;
	float:left;
}

#topLead p {
	width:130px;
	padding:52px 0 0 0;
	float:right;
	text-align:right;
}

#topFeature {
	width:940px;
	padding:50px 0 0 0;
	margin:0 auto;
}

.topFeature01 {
	width:300px;
	padding:0 20px 0 0;
	float:left;
	}
	
.topFeature02 {
	width:300px;
	padding:0;
	float:right;
	}
	
.topFeatureImg {
	border:1px solid #e0e0e0;
	width:298px;
	height:186px;
}

.topVoice01 {
	width:320px;
	float:left;
}

.topVoice02 {
	width:320px;
	float:right;
}

.topVoicePic {
	width:128px;
	padding:0 15px 0 0;
}

.topVoicePic p {
	border:1px solid #e0e0e0;
}

.topService01 {
	width:200px;
	padding:0 30px 0 0;
	float:left;
}

.topService02 {
	width:200px;
	padding:0;
	float:right;
}

.topSeminorPic {
	border:1px solid #e0e0e0;
	width:197px;
	height:121px;
	float:left;
}

.topSeminorTxt {
	width:455px;
	float:right;
}

/*------------------------------------
			blog
------------------------------------*/

.blog_title {
	background:url(../images/common/line.gif) no-repeat left bottom;
	width:100%;
	padding:0 0 0 0;
}

.blog_title h3 {
	width:405px;
	float:left;
	border-left:3px solid #cb100a;
	padding:0 0 0 8px;
	font-weight:bold;
}
	
.blog_title p {
	width:160px;
	padding:0.3em 5px 0 0;
	float:right;
	text-align:right;
	}
	
.entry_body {
	padding:20px;
	background:url(../images/common/line.gif) no-repeat left bottom;
	font-size:123%;
	}
	
.entry_bottom {
	text-align:right;
	padding:0 5px 0 0;
	margin-bottom:80px;
	}


/*------------------------------------
			  faq
------------------------------------*/

ul.faq_list {
	margin:0 0 10px 0;
	list-style:none;
	}
	
ul.faq_list li {
	padding:0 0 5px 22px;
	background:url(../faq/images/q_ico.gif) no-repeat left 3px;
	}
	
.faq_box01 {
	padding:10px 10px 10px 32px;
	border:1px solid #cccccc;
	background:#efefef url(../faq/images/q_ico.gif) no-repeat 10px 11px;
}

.faq_box02 {
	padding:10px 10px 10px 32px;
	border-left:1px solid #cccccc;
	border-bottom:1px solid #cccccc;
	border-right:1px solid #cccccc;
	margin-bottom:5px;
	background:url(../faq/images/a_ico.gif) no-repeat 10px 11px;
	
}

.faq_body {
	padding-top:20px;
	}
	
	
/*------------------------------------
			portfolio
------------------------------------*/

.portfolio_box {
	width:100%;
	margin-bottom:50px;
	padding:0;
	}
	
.portfolio_box2 {
	width:100%;
	padding:0 0 0 50px;
	margin-bottom:15px;
	}
	
.portfolio_box h4 {
	font-size:128%;
	font-weight:bold;
	background:url(../images/common/triangle-s.gif) no-repeat left 0.5em;
	padding:0 0 20px 10px;
   
	}
    

	
.portfolio_thumb {
	width:203px;
	float:left;
	}
	
.portfolio_thumb2 {
	width:168px;
	float:left;
	text-align:center;
	padding-right:25px;
	margin:0 0 25px 0;
	}
	
.portfolio_thumb2_np {
	width:168px;
	float:left;
	text-align:center;
	margin:0 0 25px 0;
	}
	
.portfolio_txt {
	width:430px;
	float:right;
	}

#portfolio_txt02 {
	padding-right:20px;
	}
	
#portfolio_ph {
	width:220px;
	background:#ffffff;
        padding-bottom:15px;
	}
	
p.imageblock {
      border: 1px solid #CCCCCC;
      padding: 3px;
      width: 203px;
   }
   
 p.imageblock2 {
      border: 1px solid #CCCCCC;
      padding: 3px;
      width: 162px;
	  margin-bottom:3px;
   }

.ico_area {
	margin-bottom:5px;
}

.ico_area ul {
	list-style:none;
	}
	
.ico_area ul li {
	width:58px;
	padding:0 5px 5px 0;
	height:16px;
	float:left;
	}
	

/*------------------------------------
			sitemap
------------------------------------*/

table.sitemap_table {
	border-collapse:separate;
	}

table.sitemap_table td {
	padding:20px;
	}
	
/*------------------------------------
			dictionary
------------------------------------*/

ul.dictionary_list {
	list-style:none;
	margin-left:20px;
	}

ul.dictionary_list li {
	width:200px;
	padding:0 10px 15px 0;
	float:left;
	font-weight:bold;
	}
	
/*------------------------------------
			strength
------------------------------------*/

.idea_table {
	}
	
.vMiddle_cell {
	vertical-align:middle;
	}

.vBottom_cell {
	vertical-align:bottom;
	}
	
/*------------------------------------
			special
------------------------------------*/

.prof_ph01 {
	float:left;
	width:145px;
	}
	
.prof_text01 {
	float:right;
	width:355px;
	}
	
.prof_ph02 {
	float:left;
	width:106px;
	}
	
.prof_text02 {
	float:right;
	width:394px;
	}
	
.side_thumb_inner {
	padding:15px 10px;
	}
	
.side_thumb_inner table {
	margin-bottom:10px;
	}

/*====================================

			3. etc

====================================*/

.arrLink {
	background:url(../images/common/arrow_s.gif) no-repeat left 0.7em;
	padding:0 0 0 8px;
}

.red {
	color:#cc0000;
}

.blue {
	color:#0e29cb;
	}

.gray_box {
	background:#efefef;
	padding:15px;


	}
	

.yellow_box {
	background:#fffff0;
	border:1px solid #cccccc;
	padding:10px;
	}
	
.border_box {
	border:1px solid #cccccc;
	padding:10px;
	}

.aCenter {
	text-align:center;
}

.aRight {
	text-align:right;
}

.border {
	border-bottom:1px solid #cccccc;
}

.clear {
  clear:both;
}


.clearfix:after {  
    visibility: hidden;  
    display: block;  
    font-size: 0;  
    content: " ";  
    clear: both;  
    height: 0;  
    }  
* html .clearfix             { zoom: 1; } /* IE6 */  
*:first-child+html .clearfix { zoom: 1; } /* IE7 */  

.font20 {
	font-size:164%;
	}

.font18 {
	font-size:154%;
	}

.font16 {
	font-size:139%;
	}

.font14 {
	font-size:108%;
	}

.font12 {
	font-size:93%;
	}

.font10 {
	font-size:80%;

	}
	
.marginB3 {
	margin-bottom:3px;
}

.marginB5 {
	margin-bottom:5px;
}

.marginB10 {
	margin-bottom:10px;
}

.marginB15 {
	margin-bottom:15px;
}

.marginB20 {
	margin-bottom:20px;
}
.marginB25 {
	margin-bottom:20px;
}

.marginB30 {
	margin-bottom:30px;
}

.marginB40 {
	margin-bottom:40px;
}

.marginB50 {
	margin-bottom:50px;
	}

.marginB60 {
	margin-bottom:60px;
}

.marginT20 {
	margin-top:20px;
	}

.marginR3 {
	padding-right:3px;
	}

.marginR10 {
	margin-right:10px;
}
.marginR15 {
	margin-right:15px;
}

.marginR30 {
	margin-right:30px;
}

.paddingR10 {
	padding:0 10px 0 0;
	}
	
.paddingR5 {

	padding:0 5px 0 0;
	}
	
.paddingB10 {
	padding:0 0 10px 0;
	}

.padding0_3_0_0 {
       padding:0 3px 0 0;
}





blockquote{
background-color: #efefef;  /*背景色*/
padding: 5px 5px 5px 5px;  /*パディング幅（上・右・下・左）*/
border: #bbbbbb 1px solid;  /*まわりの枠（色・太さ・スタイル）*/
border-left: #bbbbbb 5px solid;  /*左の枠（色・太さ・スタイル）*/
margin: 3px 15px 3px 15px;  /*マージン幅（上・右・下・左）*/
}



a:hover img{
opacity:0.8;
filter:alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}


