@charset "utf-8";

/* CSS Document */
/* reset */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote { margin:0; padding:0; }
table { border-collapse:collapse; border-spacing:0; font-size:inherit; }
fieldset, img { border:0; }
address, caption, cite, code, dfn, em, th, var { font-style:normal; font-weight:normal; }
ol, ul { list-style:none; clear:both; margin:0; padding:0; }
caption, th { text-align:left; }
html, body {
	margin:0 auto;
	padding:0;
	height:100%;
	width:100%;
}
body {
	/*
	font-size: 85%;
	line-height: 1.4em;
	*/
	font-size: 80%;
	line-height: 1.2em;
	font-family:verdana, arial, helvetica, clean, sans-serif, "ヒラギノ角ゴ Pro W3", "ＭＳ　Ｐゴシック", Osaka;
	word-break:break-all;
	color:#000000;
    scrollbar-base-color: #CCCCCC;
    scrollbar-track-color: #C0C0C0;
    scrollbar-face-color: #FFFFFF;
    scrollbar-shadow-color: #FFFFFF;
    scrollbar-darkshadow-color: #C0C0C0;
    scrollbar-highlight-color: #FFFFFF;
    scrollbar-3dlight-color: #C0C0C0;
    scrollbar-arrow-color: #808080;
	background-color:#f4f4f4;
}

a { color:#000000; text-decoration:underline; }
	a:link { }
	a:hover { color: #666666; }
	a:visited { }


/*---------------------------------
	Base Block
*/

#wrapper {
	width: 1008px;
	margin: auto;
	text-align: center;
}
#header{
	text-align: left;
	height: 275px;
}
	#header #head {
		width: 1008px;
		height: 82px;
		background:url(../images/head_bg.jpg) top no-repeat;
		position: relative;
	}
		#header #head h1 {
			position: absolute;
			left: 18px;
			top: 5px;
		}
		#header #head ul {
			position: absolute;
			float: right;
			right: 15px;
			top: 25px;
			margin: 0;
			padding: 0;
			display: inline;
		}
		#header #head ul li.login {
		}
	#header #topimg{
		height: 154px;
	}
	#header ul#grobalmenu {
		background:url(../images/gm_bg.gif) bottom repeat-x;
		background-color:#FFFFFF;
		border:1px solid #CCCCCC;
		width: 1000px;
		height: 36px;
		margin: 5px 0 0 2px;
		_margin: 3px 0 0 2px;
		padding: 4px 0 0 0;
		clear:both;
	}
		#header ul#grobalmenu li{
			float: left;
			height: 40px;
			margin: 0 0 0 4px;
			_margin: 0 0 -4px 4px;
			padding: 0;
			line-height: 0; /* for IE space bug */
		}
		#header ul#grobalmenu li a{
			line-height: normal; /* for IE space bug */
		}

#content {
	width: 1001px;
	clear: both;
	text-align: left;
	margin-left:2px;
	*margin-left:0;
	*margin-top:11px;
	_margin-top:4px;
}
#footer {
	background: url(../images/shadow_btm.png) center top no-repeat;
	width: 980px;
	height: 80px;
	text-align: right;
	font-size: small;
	padding: 1em 0;
	position: relative;
}
	#footer .copyright {
	}
	#footer .logo {
		margin-left: 6px;
		vertical-align: middle;
	}
	#footer ul.footmenu {
		padding: 1em 0;
		float: right;
	}
	#footer ul.footmenu li {
		float: left;
		border-right: 1px solid #666666;
		padding-left: 0.4em;
		padding-right: 0.4em;
		color: #999999;
		white-space: nowrap;
	}
	#footer ul.footmenu li.last {
		border: none;
		padding-right: 0;
	}
	#footer #jprs img {
		/*
		border: 1px solid #e2e2e2;
		*/
		position: absolute;
		left: 0;
		top: 5px;
	}


/*--------------
	Common Classes
*/
#content p {
	line-height: 1.6em;
}
/* font color */
.fred { color: #cc0000; }
.fblue { color: #003399; }
.fbold { font-weight: bold; }
.fsmall { font-size: small; }

.tright { text-align: right; }

.clear {
	clear: both;
}
.spacer {
	clear: both;
	display: block;
	height: 30px;
}
.totop {
	text-align: right;
	margin: 5px;
	padding-top: 30px;
}
ul.topicpath {
	margin-left: 20px;
	margin-bottom: 20px;
	font-size: small;
}
	ul.topicpath li {
		display: inline;
	}
	ul.topicpath li a {
		padding-right: 10px;
		background: url(../images/topicpath.png) right center no-repeat;
	}
div.line {
	height: 1px;
	width: 800px;
	margin: 40px auto;
	clear: both;
	background: url(../images/hrline.png) left top repeat-x;
}

hr.separator {
	border: none;
	clear: both;
	_height: 1px;
	_border: 1px solid #ffffff;
	margin: 0;
}

/*--------------
	Page - TOP /index.html
*/
#mainarea1 {
}
	#mainarea1 div.textblock {
		float: left;
		width: 643px;
		text-align: center;
		background-color:#FFFFFF;
		border:1px solid #CCCCCC;
	}
		#mainarea1 div.textblock h1 {
			padding: 25px 20px 20px 20px;
			text-align: left;
		}
		#mainarea1 div.textblock p {
			padding: 0 35px 20px;
			text-align: left;
		}
		#mainarea1 div.textblock img.cut {
			margin: 5px auto 40px auto;
		}
	#mainarea1 div.subblock {
		float: right;
		width: 350px;
	}
		#mainarea1 div.subblock ul#topbanners {
		}
		#mainarea1 div.subblock ul#topbanners li {
			margin: 0;
		}
		#mainarea1 div.subblock ul#topbanners li.product {
			padding: 0;
			margin-bottom:2px;
		}
		#mainarea1 div.subblock ul#topbanners li.reqdoc {
			padding: 0 5px 3px 0;
		}
		
		#mainarea1 div.subblock div#topnews {
			border: 1px solid #CCCCCC;
			position: relative;
			background-color:#FFFFFF;
		}
			#mainarea1 div.subblock div#topnews h2 {
				font-weight: normal;
				margin: 10px;
				font-size: 110%;
			}
			#mainarea1 div.subblock div#topnews ul.feeds {
				display: inline;
				position: absolute;
				right: 5px;
				top: 10px;
			}
				#mainarea1 div.subblock div#topnews ul.feeds li {
					float: left;
					margin-left: 3px;
				}
			#mainarea1 div.subblock div#topnews dl {
				clear: both;
				margin: 10px;
				font-size: small;
				line-height: 1.2em;
			}
				#mainarea1 div.subblock div#topnews dl dt.date {
					margin-top: 0.4em;
				}
				#mainarea1 div.subblock div#topnews dl dd.title {
					border-bottom: 1px solid #d5d5d5;
					padding-bottom: 0.5em;
				}
				#mainarea1 div.subblock div#topnews dl dd a:link {
					text-decoration: underline;
					font-weight: bold;
				}
				#mainarea1 div.subblock div#topnews dl dd a:hover,
				#mainarea1 div.subblock div#topnews dl dd a:visited {
					color: #666666;
				}
				#mainarea1 div.subblock div#topnews div.detail {
					text-align: right;
					padding: 0 0.5em;
					font-size: small;
					line-height: 1.2em;
					margin-bottom:15px;
					clear:both;
				}

#features {
}
	#features h1 {
		padding: 0 0 15px 0;
	}
	#features ul {
		width: 931px;
		height: 180px;
		margin: 0 auto 20px auto;
	}
		#features ul li {
			height: 180px;
			display: block;
			overflow: hidden;
			float: left;
			color: #ffffff;
			font-weight: bold;
			position: relative;
		}
		#features ul li.feat1 {
			width: 233px;
			background:url(../images/top_feat1.png) left top no-repeat;
		}
		#features ul li.feat2 {
			width: 233px;
			background:url(../images/top_feat2.png) left top no-repeat;
		}
		#features ul li.feat3 {
			width: 233px;
			background:url(../images/top_feat3.png) left top no-repeat;
		}
		#features ul li.feat4 {
			width: 232px;
			background:url(../images/top_feat4.png) left top no-repeat;
		}
		#features ul li span.detail {
			position: absolute;
			bottom: 10px;
			right: 10px;
		}
		#features ul li a {
			display: block;
			padding: 53px 0 0 15px;
			width: 232px;
			height: 180px;
			color: #ffffff;
		}
		#features ul li a:link,
		#features ul li a:visited,
		#features ul li a:active {
			text-decoration: none;
		}
		#features ul li a:hover,
		#features ul li a:hover span {
			text-decoration: underline;
		}

#mainarea2 {
	padding-bottom: 50px;
}
	#mainarea2 div.textblock {
		float: left;
	}
		#mainarea2 div.textblock h1 {
			padding: 20px;
		}
		#mainarea2 div.textblock p {
			padding: 0 20px 20px;
		}
		#mainarea2 div.textblock ul#topextra {
			padding-left: 20px;
		}
			#mainarea2 div.textblock ul#topextra li {
				float: left;
			}
			#mainarea2 div.textblock ul#topextra li img {
				margin-right: 3px;
			}
	#mainarea2 img.cut {
		float: right;
		padding-top: 20px;
		margin-right: 100px;
	}

/*--------------
	Page - Concept /concept/
*/
h1.ttl {
	padding: 20px;
}
#featblock1,
#featblock2,
#featblock3,
#featblock4 {
	clear: both;
	padding-bottom:30px;
	width: 971px;
}
div.textblock blockquote {
	background-color: #ffffcc;
	padding: 10px;
	margin: 10px 10px 0 10px;
}
div.textblock blockquote ul {
	list-style: disc;
	margin-left: 2em;
}

div.textblock h3 {
	padding: 20px 0 5px 20px;
}
div.textblock p {
	padding: 10px 20px 0 20px;
}

#featblock1,
#featblock3 {
}
	#featblock1 div.textblock,
	#featblock3 div.textblock {
		width: 528px;
		float: left;
	}
	#featblock1 img.cut,
	#featblock3 img.cut {
		float: right;
		margin-top: 5px;
		margin-bottom: 20px;
	}
#featblock2,
#featblock4 {
}
	#featblock2 div.textblock,
	#featblock4 div.textblock {
		width: 517px;
		float: right;
	}
	#featblock2 img.cut,
	#featblock4 img.cut {
		float: left;
		margin-top: 5px;
		margin-bottom: 20px;
		margin-left: 10px;
	}

/*--------------
	Page - News /news/
*/

#newsarea {
}
	#newsarea div.nextback {
		padding: 20px;
	}
	#newsarea h1 {
		padding: 20px;
		text-align: left;
		display: block;
	}
	#newsarea div.textblock {
		float: left;
		width: 643px;
		text-align: center;
		background-color:#FFFFFF;
		border:1px solid #CCCCCC;
	}
		#newsarea div.textblock div.newsblock {
			padding: 20px 20px 20px;
			text-align: left;
		}
		#newsarea div.textblock div.newsblock span.date {
			margin-bottom: 0.2em;
			display: block;
		}
		#newsarea div.textblock div.newsblock h2 {
			font-weight: bold;
			font-size: 100%;
			margin-bottom: 1em;
		}
		#newsarea div.textblock div.newsblock h2 a {
			text-decoration: none;
		}
		#newsarea div.textblock div.newsblock div.text {
			border-bottom: 1px solid #e2e2e2;
			padding-bottom: 10px;
		}
			#newsarea div.textblock div.newsblock div.text p {
				padding: 0 0 1em 0;
				/*  
				padding: 0 20px 20px;
				*/
			}
		
	#newsarea div.subblock {
		float: right;
		width: 350px;
	}
		
		#newsarea div.subblock div#topnews {
				border: 1px solid #CCCCCC;
				position: relative;
				background-color:#FFFFFF;
		}
			#newsarea div.subblock div#topnews h2 {
				font-weight: normal;
				margin: 10px;
				font-size: 110%;
			}
			#newsarea div.subblock div#topnews ul.feeds {
				display: inline;
				position: absolute;
				right: 5px;
				top: 10px;
			}
				#newsarea div.subblock div#topnews ul.feeds li {
					float: left;
					margin-left: 3px;
				}
			#newsarea div.subblock div#topnews dl {
				clear: both;
				margin: 10px;
				font-size: small;
				line-height: 1.2em;
				margin-bottom: 30px;
			}
				#newsarea div.subblock div#topnews dl dt.date {
					margin-top: 0.4em;
				}
				#newsarea div.subblock div#topnews dl dd.title {
					border-bottom: 1px solid #d5d5d5;
					padding-bottom: 0.5em;
				}
				#newsarea div.subblock div#topnews dl dd a:link {
					text-decoration: underline;
					font-weight: bold;
				}
				#newsarea div.subblock div#topnews dl dd a:hover,
				#newsarea div.subblock div#topnews dl dd a:visited {
					color: #666666;
				}
				#newsarea div.subblock div#topnews div.detail {
					text-align: right;
					padding: 0 0.5em;
					font-size: small;
					line-height: 1.2em;
					margin-bottom:15px;
					clear:both;
				}


/*--------------
	Page - Result /result/
*/

div.resultblock {
	margin: 0 20px 50px 20px;
	position: relative;
	clear: both;
}
	div.resultblock div.thumb {
		width: 325px;
		height: 260px;
		text-align: right;
	}
	div.resultblock div.thumb img {
		border: 1px solid #e2e2e2;
	}
	div.resultblock div.about {
		position: absolute;
		left: 345px;
		top: 0;
		width: 595px;
	}
		div.resultblock div.about p.name {
			font-weight: bold;
		}
		div.resultblock div.about p.url {
			font-size: small;
		}
			div.resultblock div.about p.url a {
				text-decoration: none;
			}
		div.resultblock div.about table.detailtable {
			margin: 10px 0;
		}	
			div.resultblock div.about table.detailtable th,
			div.resultblock div.about table.detailtable td {
				padding: 2px 7px;
				border-bottom: 1px solid #ffffff;
			}
			div.resultblock div.about table.detailtable th {
				background: url(../../result/images/bg_detailttl.png) #272b35 left repeat-y;
				font-weight: normal;
				color: #ffffff;
				font-size: small;
				width: 8em;
			}
		div.resultblock div.about div.case {
			background-color: #ffffcc;
		}
			div.resultblock div.about div.case span.summary {
				font-weight: bold;
				display: block;
				margin-bottom: 0.5em;
				background: url(../images/arrow_mini.png) left center no-repeat;
				padding-left: 10px;
			}
			div.resultblock div.about div.case span.title {
				display: block;
				padding-left: 10px;
			}
			div.resultblock div.about div.case span.detail {
				position: absolute;
				right: 10px;
				bottom: 10px;
				text-decoration: underline;
			}
			div.resultblock div.about div.case a {
				padding: 10px;
				display: block;
				text-decoration: none;
			}
			div.resultblock div.about div.case a:hover {
				text-decoration: underline;
			}

div.caseblock {
	width: 940px;
	margin: 0 auto;
	clear: both;
	position: relative;
}
	div.caseblock div.imageblock {
		width: 300px;	
		text-align: right;
		float: left;
	}
		div.caseblock div.imageblock p.image {
			margin-top: 1.4em;
		}
		div.caseblock div.main p.image {
			margin-top: 0;
		}
		div.caseblock div.imageblock p.caption {
			font-size: small;
			padding: 5px;
		}
	div.caseblock div.text {
		width: 640px;
		float: right;
	}
		div.caseblock div.text div.headtitle {
			background-color: #f6f6f6;
			line-height: 1.8em;
		}
			div.caseblock div.text div.headtitle p {
				padding: 30px 20px;
			}
	div.caseblock div.text p {
		padding: 15px 20px;
		line-height: 1.8em;
	}
		div.caseblock div.text p span.name_customer,
		div.caseblock div.text p span.name_interviewer {
			margin-right: 0.5em;
			font-weight: bold;
		}
		div.caseblock div.text p span.name_customer {
			color: #003366;
		}
		div.caseblock div.text p span.name_interviewer {
			color: #666666;
		}
div.casedetail {
	clear: both;
	/*
	background-color: #f6f6f6;
	border: 1px solid #e2e2e2;
	*/
	border-top: 1px dotted #999999;
	width: 940px;
	margin: 0 auto;
	position: relative;
	margin-bottom: 40px;
}
	div.casedetail div.imageblock {
		width: 300px;
		padding: 40px 0;
		text-align: right;
	}
		div.casedetail div.imageblock p.image img {
			border: 1px solid #cccccc;
			/*
			*/
		}
	div.casedetail div.text {
		font-size: small;
		position: absolute;
		left: 320px;
		top: 40px;
	}

/*--------------
	Page - common
*/
.pageblock_main {
	margin-top:5px;
	*margin-top:0;
	background-color:#FFFFFF;
	border:1px solid #CCCCCC;
}
	.pageblock_main h1 {
		padding:25px 0 10px;
	}
	.pageblock_main h1 img {
		margin: 0 0 20px 20px;
	}
	.pageblock_main div.subblock {
		float: left;
		width: 255px;
		position: relative;
		margin-top:5px;
	}
		.pageblock_main div.subblock dl.pagemenu {
			float: right;
		}
	.pageblock_main div.textblock {
		width: 740px;
		float: right;
	}
		.pageblock_main div.textblock p {
			padding: 0 20px 20px;
			text-align: left;
		}
		.pageblock_main div.textblock p.text_left {
			margin:0;
			padding:10px;
		}
		.pageblock_main div.textblock p.text_block_left {
			margin-left:16px;
		}
		.pageblock_main div.textblock p.subcap {
			margin:20px 0 0 15px;
		}
		.pageblock_main div.textblock img.cut {
			margin: 5px 0 20px 20px;
		}
		.pageblock_main div.textblock h2 {
			margin:0 0 20px 10px;
		}
		.pageblock_main div.textblock span.image_right {
			float:right;
			margin:0 15px 30px 15px;
		}
	
.pageblock_content {
	clear: both;
	width: 930px;
	margin: 20px auto 30px auto;
}
	.pageblock_content h2 {
		border-bottom: 1px solid #e2e2e2;
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
	.pageblock_content .oneblock {
		clear: both;
		margin-bottom: 30px;
	}
		.pageblock_content .oneblock div.cut {
			width: 300px;
			text-align: center;
			float: right;
		}
		.pageblock_content .oneblock div.cut span.caption {
			width: 300px;
			display: block;
			text-align: center;
			font-size: small;
			line-height: 1.2em;
			padding: 0.4em 0;
		}
		.pageblock_content .oneblock h3 {
			background: url(../images/mark_dice.png) left top no-repeat;
			padding: 10px 10px 10px 40px;
			font-size: 1.3em;
			/*
			letter-spacing: 0.1em;
			*/
		}
		.pageblock_content .oneblock h4 {
			float: left;
			width: 610px;
			margin: 10px 0 5px 0;
			font-size: 1em;
			line-height: 1em;
			color: #333333;
			position: relative;
		}
			.pageblock_content .oneblock h4.logo {
				font-family: Tahoma, Arial, Verdana;
				font-size: 1.6em;
				line-height: 1em;
				font-weight: normal;
				margin: 10px 0 5x 0;
			}
			.pageblock_content .oneblock h4.logo span.sub {
				font-size: small;
				font-weight: normal;
				display: block;
			}
			.pageblock_content .oneblock h4.logo span.sub2 {
				font-size: small;
				font-weight: normal;
				margin-left: 0.5em;
				font-family: Verdana, Arial;
			}
			.pageblock_content .oneblock h4.logo span.link {
				position: absolute;
				right: 0;
				bottom: 0;
				font-size: small;
				/*
				background: url(../images/link_blank.png) right center no-repeat;
				padding-right: 15px;
				*/
			}
		.pageblock_content .oneblock div.textblock {
			background-color: #f1f6ff;
			width: 610px;
			float: left;
		}
		.pageblock_content .oneblock div.textblock.wfull {
			width: 930px;
		}
		.pageblock_content .oneblock div.textblock p {
			padding: 10px;
		}
	.pageblock_content div.totop {
		padding-top: 0;
	}


dl.pagemenu {
	width: 250px;
	border-bottom: 1px solid #e2e2e2;
}
	dl.pagemenu dt a,
	dl.pagemenu dd a,
	dl.pagemenu dd em {
		display: block;
		padding: 5px 10px;
		text-decoration: none;
	}
	dl.pagemenu dd a {
		padding: 10px 0 10px 15px;
	}
	dl.pagemenu dt {
		width: 250px;
		border-bottom: 1px solid #d6d6d6;
		font-weight: bold;
	}
		dl.pagemenu dt span.sub {
			display: block;
			font-size: smaller;
			line-height: 1em;
			padding-left: 20px;
		}
	dl.pagemenu dd {
		border-top: 1px solid #e2e2e2;
		border-left: 1px solid #e2e2e2;
		border-right: 1px solid #e2e2e2;
		background-color: #f9f9f9;
	}
	dl.pagemenu dd:hover {
		background-color: #EEEEEE;
	}


/*--------------
	Page - Service /service/
*/
#servicemap {
	text-align: center;
	clear: both;
}
	#servicemap h2 {
		width: 900px;
		text-align: left;
		font-size: 1.2em;
		margin: 10px auto;
	}
	#servicemap img.cut {
		margin: 0 auto;
	}

.col_ad {
	color: #000000;
}
.col_proservice {
	color: #304399;
}
.col_sp {
	color: #019a91;
}
.col_intra {
	color: #7a8b94;
}
.col_probo {
	color: #999999;
}
.col_project {
	color: #996600;
}
.col_edm {
	color: #4b3188;
}


/*--------------
	Page - Price /price/
*/

#pricemain {
	padding: 20px 25px;
}
	#pricemain h2 {
		margin-bottom: 25px;
	}
	#pricemain div.textblock p {
		padding: 0 25px 20px 0;
	}
	#pricemain img.cut {
		margin: 20px 0;
	}

div.priceTextblock {
	margin: 0.5em 0 1.5em 0;
}

table.priceTable {
	border-collapse: collapse;
	border-color:#666666;
	margin-bottom:5px;
}
	table.priceTable th,
	table.priceTable td {
		border: 1px solid #BBBBBB;
		padding: 5px;
	}
	table.priceTable td.price {
		background-color:#DFE6F0;
	}
	table.priceTable th {
		font-weight: bold;
		font-size: small;
		text-align: center;
		border: 1px solid #666666;
		background-color: #f6f6f6;
	}
		table.priceTable th span.sub {
			font-size: smaller;
			line-height: 1em;
			font-weight: normal;
		}
	table.priceTable td.Td1 { width: 150px; text-align: center; font-weight: bold; }
	table.priceTable td.Td2 { width: 150px; }
	table.priceTable td.Td3 { width: 150px; }
	table.priceTable td.Td4 { width: 150px; font-size: small; }
	table.priceTable td.Td5 { width: 76px; }
	table.priceTable td.Td6 { width: 76px; }
	table.priceTable td.Td7 { width: 76px; }
	table.priceTable td.Td8 { width: 100px; font-size: smaller; }

table.planA td { background-color: #ffebad; }
	table.planA td.Td1 { background-color: #ffebad; }
table.planB td { background-color:#d1f2d1; }
	table.planB td.Td1 { background-color: #d1f2d1; }
table.planC td { background-color: #f9ddf1; }
	table.planC td.Td1 { background-color: #f9ddf1; }
table.planD td { background-color: #e1e7f9; }
	table.planD td.Td1 { background-color: #e1e7f9; }
/*
table.planAa td { background-color: #ffffcc; }
	table.planAa td.Td1 { background-color: #ffcc33; }
table.planBb td { background-color: #e5ebff; }
	table.planBb td.Td1 { background-color: #b4c2f0; }
table.planCc td { background-color: #ffeefa; }
	table.planCc td.Td1 { background-color: #f0abdc; }
table.planDd td { background-color: #e4ffe4; }
	table.planDd td.Td1 { background-color: #8ddf8d; }
*/

.optionblock ul {
	list-style: disc;
	font-size: 1em;
	line-height: 1.4em;
}
	.optionblock ul li {
		margin-left: 1.4em;
	}

#price_contact {
	
}
	#price_contact h3 {
		font-weight: normal;
		font-size: 1em;
		margin-bottom: 0.5em;
	}
	#price_contact img.logo {
		vertical-align: middle;
		margin-right: 10px;
	}
	#price_contact img.logo {
		vertical-align: middle;
		margin-right: 5px;
	}
	#price_contact div.button {
		background-color: #f8f8f8;
		padding: 30px;
		text-align: center;
	}


