/* Remove padding and margin */
* {
	margin: 0;
	padding: 0;
	border: 0;
} 

/* Body */
html, body {height: 100%;}

html {
	color: #444;
	background: #eaeaea;
	overflow-y: scroll; 
}

body, td {
	font-family: Arial, Verdana, sans-serif;
	font-size: 12px;
	line-height:1.5em;
}

/* Heading & Titles */
h1, h2 ,h3, h4, h5, h6, title, sub_title {font-weight: normal;}
h1 {font-size: 2.2em; color:#999;}
h2 {
	border-bottom:1px dotted #FF6600;
	color:#FF6600;
	font-size:1.6em;
	font-weight:bold;
	height:1.6em;
	line-height:1.6em;
	margin-bottom:15px;
}
h3 {font-size: 1.3em; color:#333; margin-top:5px; line-height: 1.3em; height: 1.3em;font-weight: bold;}
h4 {font-size: 1.4em; color:#ff6600;}
h5 {font-size: 1.2em; color:#999;}
h6 {font-size: 1.0em; color:#ff6600;}
p { margin-top:5px; margin-bottom:10px;}  

title {font-size: 1.8em; color:#999;}
sub_title {font-size: 1.4em; color:#ff6600;}


/* Linking */
a, a:link, a:visited {text-decoration: none; color: #03f;}
a:hover {text-decoration: underline;}
a img, a:link img, a:visited img {	border: 0;}
a.arrow_link, a.arrow_link:link, a.arrow_link:visited {background: url(/images/arrow_sml_blue.gif) no-repeat 0 50%; padding-left:7px;}


/* Floats */
.clear {clear:both;}
.right {float: right;}
.left {float: left;}  


/* Main */
#main_wrapper {
	background: url(/images/header_bg_tile.jpg) repeat-x 0 25px;
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -100px;
}

#main_wrapper_inner {
	width:900px;
}
#left_nav_wrapper {float:right; width:200px;}
#main_container {float:right; width:644px; position:relative;}

.margin_5 {margin: 5px;}
.margin_10 {margin: 10px;}

/* Forms */
input.text {
    padding: 3px;
    border: 1px solid #999999;    
} 

/* Tables */
table { 
	border-spacing: 0;
	border-collapse: collapse;
	vertical-align:middle;
}

/*#infotable{background: #eee;}*/
#infotable td{padding: 5px;}

td, th {
	text-align: left;
	font-weight: normal;
	vertical-align:middle;
} 

/* Lists */
ul.arrowed {margin: 0.5em 0 0 0; position:relative;}
.arrowed li {background: url(/images/arrow_sml_blue.gif) no-repeat 0 50%; padding-left:8px;}
li {list-style: none;}
.bulleted li {list-style-type: disc; position:relative;}
ul.bulleted {margin: 0.5em 0 1em 0; padding-left: 1em;}
.numbered li {list-style-type: decimal;}
ol.numbered {margin: 1em 0; padding-left: 2em;}

/* Message, Errors & Warnings */
.msg_op_success {display:block; background-color:#0c0; color:#fff;}
.msg_error {display:block; background-color:#f00; color:#fff;}
.msg_warning {display:block; background-color:#ff6; color:#f00;}

/* Header / Footer */
.push {height: 100px; margin-top:25px;}
#footer_wrapper{clear:both; border-top: 5px solid #666; font-size: 0.75em; background-color:#000; color:#555; height:95px;}
#footer_wrapper_inner {width:900px; }
#bottom_bar {border-top:1px dotted #333; line-height:15px; clear:both; }
.copyright {width:900px; text-align:right; position:relative; padding-top:5px;}
.copyright .privacy {right:0; text-align:left; position:absolute; width:644px;}

#privacy_mark {position:absolute; bottom:0px; left:-160px;}
#privacy_mark img {margin-top: 10px;}

/* Blog */
#blogFeed{margin-top: 30px;}


/* Menus */
#top_bar {height:25px; background-color:#000; border-bottom:1px solid #ccc; line-height:25px;}
#top_bar_links {width:900px; text-align:right;}
#top_bar_links a, #top_bar_links a:link, #top_bar_links a:visited {color:#ccc;}
#top_bar_links a:hover, .privacy a:hover {color:#fff; text-decoration:none; border-bottom:1px dotted #ccc;}

#left_navigation{margin-top: 200px; width: 150px; margin-left:40px; margin-right:10px;}

#top_navigation{height:80px; position:relative;}
#top_navigation ul {position:absolute; top:50px; height:20px;}
#top_navigation li { float:left; line-height:20px; margin-right:15px; }
#top_navigation a {color:#bdbdbd; font-weight:bold;}
#top_navigation a:hover {border-bottom: 1px dotted #ccc; color:#fff; text-decoration:none;}
#top_navigation .nav_hl a {border-bottom: 1px dotted #ccc; color:#fff; text-decoration:none;}

#footer_nav { width:644px; float:right; margin:10px 0; height:50px;}
#footer_nav li { float:left; width:22%; line-height:14px; margin-right:15px; }

#footer_wrapper a, footer_wrapper a:link, footer_wrapper a:visited {color:#999; border-bottom:1px solid #000;}
#footer_wrapper a:hover {color:#ccc; text-decoration:none; border-bottom:1px dotted #ccc;}

#footer_wrapper li a {font-size:12px; line-height:18px; }

#logo {position:absolute; right:0; bottom:15px;}
#banner_image {border: 2px solid #666; padding:20px; background-color:#fff; margin-bottom:20px;}

/* Company */

#col1 { width: 315px; margin-right: 10px; float: left; margin-bottom: 160px; }
#col2 { width: 315px; float: left; }
#col2 #spacer { height: 163px; }
#col2 #spacer_jp { height: 145px; }

#map {background: url(/images/static_map_jp.gif) no-repeat; height: 230px; width: 280px;}
#map_en {background: url(/images/static_map_en.gif) no-repeat; height: 230px; width: 280px;}
#map_jp {background: url(/images/static_map_en.gif) no-repeat; height: 230px; width: 280px;}

span.required
{
  color: red;
  vertical-align: top;
}

