/* -------------------------------------------------- 
General
 --------------------------------------------------*/

html {
	height: 100%;
}

body {
	font: 62.5% Sans-Serif; /* Resets 1em to 10px */
	color: #333;
	background: #fff;
	text-align: center;
	height: 100%;
	margin: 0;
	padding: 0;
}

h1, h2, h3 {
	font-weight: normal;
}

h1 {
	font-size: 4em;
}

h2 {
	font-size: 1.6em;
}

h3 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 0;
	padding: 0;
}

h1, h1 a, h1 a:hover, h1 a:visited {
	text-decoration: none;
	color: #333;
}

h2, h2 a, h2 a:visited {
	color: #333;
}

h2, h2 a, h2 a:hover, h2 a:visited {
	text-decoration: none;
}

a, h2 a:hover {
	color: #fa4246;
	text-decoration: none;
}

a:hover {
	color: #ff7f77;
	text-decoration: none;
}

a img {
	border: none;
}

hr {
	display: none;
}

ul {
	list-style: none;
}

/* -------------------------------------------------- 
Headers
 --------------------------------------------------*/

div#header h1 {
	margin: 0;
	padding: 0;
}

div#logo a {
	margin: 20px 120px 0 20px;
	display: block;
}

div#logo h1 a span {
	display: none;
}

div#header {
	width: 800px;
	height: 70px;
	margin: 0 auto;
	padding: 0;
}

div#logo h1 a {
	background: url(../images/logo.gif) no-repeat;
	width: 199px;
	height: 28px;
	float: left;
}

/* -------------------------------------------------- 
Footer Layout
 --------------------------------------------------*/

.wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -70px; /* the bottom margin is the negative value of the footer's height */
}

.push {
	height: 70px; /* .push must be the same height as .footer */
}

/* -------------------------------------------------- 
Footer
 --------------------------------------------------*/

#footer {
	margin: 0 auto;
	height: 70px; /* .push must be the same height as .footer */
	padding: 0;
	width: 200px;
}

div#copyright span {
	display: none;
}

div#copyright {
	margin: 0 0 0 8px;
	display: block;
	background: url(../images/copyright.gif) no-repeat;
	width: 173px;
	height: 14px;
	clear: both;
}

/* -------------------------------------------------- 
Language
 --------------------------------------------------*/

div#lang2 {
	margin: -12px 0 0;
	height: 30px;
}

div#japanese a span {
	display: none;
}

div#japanese a {
	margin: 0 28px 0 0;
	padding: 0 0 8px;
	display: block;
	background: url(../images/japanese.gif) no-repeat;
	width: 64px;
	height: 18px;
	float: right;
}

div#english a span {
	display: none;
}

div#english a {
	margin: 0;
	padding: 0 0 8px;
	display: block;
	background: url(../images/english.gif) no-repeat;
	width: 92px;
	height: 18px;
	float: right;
}

/* -------------------------------------------------- 
Main Layout
 --------------------------------------------------*/

#main {
	text-align: left;
	font-size: 1.2em;
	line-height: 1.6em;
	width: 760px;
	margin: 20px auto;
	padding: 0;
}

.alt {
	background-color: #eee;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
}

.red {
	color: #f00;
}