@charset "utf-8";
/*================================================================
 1 :  Basic Setting
================================================================*/


/*======== 1-1 :  Universal Selector ========*/

* {
	margin: 0;
	padding: 0;
	font-size:100%;
	color: #161616;
	text-align: left;
}

/*======== 1-2 :  <body> ========*/

body {
	text-align: center;
	height: 100%;
	background-color: #dfdfdf;
	font:12px/1.8 "MS Pゴシック", "ＭＳ Ｐゴシック", sans-serif, verdana, helvetica;
}
html* body {/*Safari + IE5.5-6*/
	font-size:11px;
}
* html body {/*IE5.5-6*/
	font-size:75%;
}
*:first-child+html body {/*IE7*/
	font-size:75%;
}

/*======== 1-3 :  Block Level ========*/

h1, div, p, ul, ol, li {
	font-size: 12px;
	text-align: left;
}
h2 {
	font-size: 14px;
	font-weight: bold;
	margin: 15px 0;
	padding: 0.3em 0;
	border-top: 1px solid #161616;
	border-bottom: 1px solid #161616;
	position: relative;
}
h3, h4 {
	font-size: 13px;
	font-weight: bold;
}
h5 {
	font-size: 12px;
	font-weight: bold;
}
/*IE6*/
* html h1, * html h2, * html div {
	height: 1px;
}

/*======== 1-4 :  List ========*/

ul {
	list-style: none;
	font-size: 12px;
}
ol {
	font-size: 12px;
	padding-left: 35px;
	margin-bottom: 10px;
}

/*======== 1-5 :  <a> ========*/

a:link {
	color: #0000CC;
	text-decoration: underline;
}
a:visited {
	color: #6666CC;
	text-decoration: none;
}
a:hover {
	color: #9999FF;
	text-decoration: none;
}
a:active {
	color: #9999FF;
	text-decoration: none;
}
a span {
	display: none;
}

/*======== 1-6 :  <hr> ========*/

hr {
	display: none;
}

/*======== 1-7 :  etc ========*/

img {
	border: none;
}
strong {
	font-weight: bold;
}
img.right {
	float: right;
	padding-left: 10px;
}
img.left {
	float: left;
	padding-right: 10px;
}
.center {
	text-align: center;
}
table.layout td {
	vertical-align: top;
	padding-right: 8px;
}

/*================================================================
 2 :  Layout Setting
================================================================*/


/*======== 2-1 :  div#All ========*/

div#All {
	width: 800px;
	margin: 0 auto;
	padding: 0 20px;
	background-image: url(../images/backAll.gif);
	background-repeat: repeat-y;
	height: 100%;
}

/*======== 2-2 :  div#Header ========*/

div#Header {
	width: 800px;
	margin-bottom: 10px;
	padding-bottom: 3px;
	background-repeat: no-repeat;
	position: relative;
}

/*======== 2-3 :  div#indexMain ========*/

div#indexMain {
	width: 800px;
	margin-top: 30px;
}
div#indexGroup {
	width: 415px;
	float: left;
}
div#indexGroup div {
	width: 408px;
	padding-left: 5px;
	list-style: none;
}
div#indexGroup div div {
	width: 190px;
	margin: 0 14px 14px 0;
	padding-left: 0;
	float: left;
}
div#indexGroup div div a {
	color: #ffffff;
	font-size: 1px;
	text-decoration: none;
	width: 188px;
	height: 2px;
	padding : 78px 0 0 2px;
	display: block;
	background-repeat: no-repeat;
}
div#indexGroup div div a:hover {
	background-position: 0 -80px;
}
div#indexImage {
	width: 380px;
	float: right;
}

/*======== 2-4 :  div#Main ========*/

div#Main {
	width: 600px;
	float: right;
}
div#wideMain {
	width: 800px;
	float: left;
}
div#Main div.Content, div#productsMain div.Content {
	padding-bottom: 10px;
}
div.Content p, div.Content dl {
	font-size: 12px;
	margin: 10px 0 10px 5px;
}
div.inContent {
	width: 600px;
	padding: 0 100px;
}

/*======== 2-4' :  div#navi ========*/

#navi {
}
#navi ul {
}
#navi ul li {
	font-size: 12px;
	display: inline;
}
#navi li a {
	padding-right: 15px;
	background-image: url(../images/arrowNavi.gif);
	background-position: right;
	background-repeat: no-repeat;
}

/*======== 2-5 :  div#Side ========*/

div#Side {
	width: 190px;
	float: left;
}
div#Side div.Content {
	width: 190px;
}
div#Side div.Content p {
	margin: 0 10px 10px 10px;
}
div#Side div.Content ul {
	background: #ffffff;
	width: 180px;
	margin: 0;
	padding: 0 4px 4px 4px;
	border-bottom: 1px solid #cecece;
	border-right: 1px solid #cecece;
	border-left: 1px solid #cecece;
	list-style: none;
}
div#Side div.Content ul li {
	font-size: 12px;
	background: #f3f3f3;
	border-bottom: 1px dotted #999999;
	background-image: url(../images/sideArrow.gif);
	background-repeat: no-repeat;
	background-position: 5px 12px;
}
div#Side div.Content ul li.root {
	font-weight: bold;
}
div#Side div.Content ul li.nolink {
	font-weight: bold;
	background-image: none;
	padding: 10px;
}
div#Side div.Content ul li a {
	color: #161616;
	padding: 10px 5px 10px 20px;
	display: block;
	width: 150px;
}
div#Side div.Content ul li a:link,
div#Side div.Content ul li a:visited {
	color: #161616;
	text-decoration: none;
}
div#Side div.Content ul li a:hover {
	color: #999999;
	text-decoration: underline;
}

/*======== 2-6 :  div#Footer ========*/

div#Footer {
	width: 800px;
	height: 60px; /* 任意の数値 */
	clear: both;
	border-top: 1px solid #bdbdbd;
}
div#Footer ul {
	float: left;
	padding: 5px 0;
}
div#Footer ul li {
	font-size: 11px;
	display: inline;
	border-right: 1px solid #161616;
}
div#Footer ul li.sitemap {
	padding-left: 7px;
	border-right: none;
}
div#Footer ul li a {
	color: #161616;
	margin-right: 7px;
	text-decoration: none;
}
div#Footer ul li a:hover {
	color: #161616;
	text-decoration: underline;
}
div#Footer p {
	font-size: 12px;
	float: right;
	text-align: right;
	height: 20px;
	padding: 5px 0;
}
div#Footer p img {
	vertical-align: middle;
	margin-left: 3px;
}

/* outline
---------------------------------------------------- */

h2 span.outline {
	color: #333399;
	border-left: 16px solid #333399;
	padding-left: 10px;
}
h2 span.right {
	font-weight: normal;
	position: absolute;
	top: 0.3em;
	right: 5px;
}
ul.outline, dl.outline {
	padding: 10px 0;
}
ul.outline li, dl.outline dt {
	font-weight: bold;
	list-style: none;
	background: url(../images/liOutline.gif) no-repeat 0 4px;
	margin-bottom: 5px;
	padding-left: 18px;
}
dl.outline dd {
	font-size: 11px;
	padding: 0 0 5px 18px;
}
ul.outline li.capital {
	background: none;
	margin-bottom: 5px;
	padding: 0.3em 5px;
	border-top: 1px solid #161616;
	border-bottom: 1px solid #161616;
}
ul.outline li.capital span.right {
	font-weight: normal;
	padding-left: 60px;
}
div.Content p.mincho {
	font: 13px/1.8 "ＭＳ 明朝", "細明朝体", "ヒラギノ明朝 Pro W3";
	width: 530px;
}

/* history
---------------------------------------------------- */

dl.history {
	width: 400px;
	margin: 0 30px 20px 20px;
}
dl.history dt {
	clear: both;
	float: left;
	width: 7.8em;
	padding: 5px 0;
	font-weight: bold;
}
dl.history dd {
	margin: 0;
	padding: 5px 5px 5px 7.8em;
	border-bottom: 1px dotted #999999;
}

/* profile
---------------------------------------------------- */

div.introduction {
	padding: 10px 5px 0 5px;
}
div.introduction strong {
	font-size: 14px;
}
div.introduction table {
	margin-top: 10px;
	clear: both;
}
div.introduction a.banner {
	color: #161616;
	font-weight: bold;
	text-decoration: none;
	background: url(../images/profileIntroBanner.gif) no-repeat 0 0;
	width: 255px;
	height: 17px;
	margin: 0 5px 5px 0;
	padding: 8px 5px 10px 30px;
	display: block;
}
div.introduction a.banner:hover {
	text-decoration: underline;
}
div.introduction .mainOffice dt {
	font-weight:  bold;
}
h3.profile {
	color: #333399;
	text-align: center;
	margin-bottom: 0.5em;
	padding: 0.3em 0;
	border-top: 1px solid #161616;
	border-bottom: 1px solid #161616;
	clear: both;
}
table.securityhouse {
	width: 600px;
}
.securityhouse td {
	vertical-align: top;
	padding: 0 3px;
}
.securityhouse td dl {
	margin: 0;
}
.securityhouse td dt {
	color: #333399;
	font-weight: bold;
	padding: 2px 5px;
	border: 1px solid #161616;
}
.securityhouse td dd li {
	font-size: 11px;
	line-height: 1.5;
	list-style: disc;
	margin-left: 16px;
}

/* products
---------------------------------------------------- */

table.products {
	margin-top: 15px;
}
table.products td {
	width: 190px;
	padding: 0 8px 0 0;
}
table.products td ul {
	padding: 10px 0;
}
table.products td ul li {
	background: url(../images/liProducts.gif) no-repeat 0 5px;
	padding-left: 14px;
}
table.products td ul li ul {
	padding: 5px 0 5px 5px;
}
table.products td ul li ul li {
	font-size: 11px;
	background: none;
	list-style: disc;
	padding-left: 5px;
}
table.products td li a {
	color: #161616;
	text-decoration: none;
}
table.products td li a:hover {
	color: #161616;
	text-decoration: underline;
}

/* view
---------------------------------------------------- */

table.view {
	border: 1px solid #999999;
	border-collapse: collapse;
}
table.view th, table.view td {
	border: 1px solid #999999;
	vertical-align: top;
	padding: 5px;
	border-collapse: collapse;
}
table.view th {
	background-color: #CCFFCC;
	width: 120px;
}

/* contact
---------------------------------------------------- */

div.inContact {
	width: 480px;
	padding: 0 159px;
}
fieldset {
	padding: 5px 0 10px 20px;
	border: none;
}
legend {
	font-weight: bold;
	border-left: 7px solid #009966;
	width: 400px;
	margin: 10px 0 7px -20px;
	padding: 0 0 0 7px;
}
fieldset br {
	clear: both;
}
label img {
	vertical-align: middle;
	margin-right: 3px;
	padding: 5px 0;
}
fieldset.customer label {
	width: 6em;
	float: left;
}
fieldset.academic label {
	width: 8em;
	float: left;
}
fieldset.customer input,
fieldset.customer select,
fieldset.academic input {
	margin-left: 1em;
	margin-bottom: 1em;
}
input, select, textarea {
	vertical-align: middle;
}
input#addressButton {
	text-align: center;
	width: 12em;
}
input:focus {
	background-color: #e7e7e0;
}
textarea:focus {
	background-color: #e7e7e0;
}
p.thankyou {
	font-weight: bold;
	text-align: center;
	padding: 150px 0 200px 0;
	width: 480px;
}
.errmsg {
	color: red;
	display: block;
	margin: 0 0 0 120px;
	padding-top: 0.5em;
	line-height: 1em;
}
.errmsg_global {
	background-color: red;
	color: white;
	padding-left: 5px;
}
p.submit {
	padding-left: 150px;
}
p.submit input {
	text-align: center;
}

/* recruit
---------------------------------------------------- */

ul.linkBanner {
	width: 580px;
	margin: 20px 0 0 20px;
	display: block;
}
ul.linkBanner li a {
	width: 270px;
	margin: 0 20px 10px 0;
	display: block;
	float: left;
	background-repeat: no-repeat;
	background-position: 0 0;
}
ul.linkBanner li.message a {
	height: 70px;
	background-image: url(../recruit/images/banner_message.jpg);
}
ul.linkBanner li.careerChange a {
	height: 70px;
	background-image: url(../recruit/images/banner_careerChange.jpg);
}
ul.linkBanner li.interview a {
	height: 70px;
	background-image: url(../recruit/images/banner_interview.jpg);
}
ul.linkBanner li.message a:hover,
ul.linkBanner li.careerChange a:hover,
ul.linkBanner li.interview a:hover {
	background-position: 0 -70px;
}
ul.linkBanner li.application a {
	height: 40px;
	background-image: url(../recruit/images/banner_application.gif);
}
ul.linkBanner li.entry a {
	height: 40px;
	background-image: url(../recruit/images/banner_entry.gif);
}
ul.linkBanner li.application a:hover,
ul.linkBanner li.entry a:hover {
	background-position: 0 -40px;
}

/* etc
---------------------------------------------------- */
.red {
	color: #CC0000;
	padding: 0 3px;
}

