/* RESET ================================================= */	
	
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

* {	
	margin: 0;
	padding: 0;
	border-spacing: 0;
	}

img {
	border: none;
	}
	
/* BODY ================================================= */
	
body {
	font-size: medium;	
	font-family: Calibri, Tahoma, Geneva, Arial, Helvetica, Verdana, sans-serif, serif;
	}	
	
/* HEADER ================================================= */
	
div#page_top, div#page_top_wrapper, nav.language_selection, header, nav.site_nav  {
	display: none;
	}
	
/* PAGE CONTENT ================================================= */	
	
div#page_content {
	margin: auto;
	background: #FFFFFF;
	width: 95%;
	clear: both;
	}

section {
	width: 100%;
	}

div#welcome_box, div#welcome, div#welcome_text {
	display: none;
	}
	
article {
	width: 100%;
	display: inline-block;
	float: left;
	margin: auto;
	}
	
article#presentation {
	width: 100%;
	}

article aside {
    width: 30%;
    text-align: center;
	display: inline-block;
	float: left;
	}

article aside.left_col {
	}
	
article aside.middle_col {
	margin-left: 5%;
	margin-right: 5%;
	}

article aside.right_col {
	}
	
article h1 {
	padding-top: 1.250em;
	font-size: 2.2em;
	color: #006083;
	}
	
article aside > h2 {
	padding-top: 0em;
	font-size: 1.7em;
	color: #006083;
	}
	
article h2 {
	padding-top: 1.250em;
	padding-bottom: 0.25em;
	font-size: 1.7em;
	color: #006083;
	}	

article h3 {
	padding-top: 1.250em;
	padding-bottom: 0.25em;
	font-size: 1.5em;
	color: #006083;
	}	

article h4 {
	padding-top: 1.250em;
	font-size: 1.3em;
	color: #006083;
	}

article h5 {
	padding-top: 1.250em;
	font-size: 1.1em;
	color: #006083;
	font-weight: bold;
	}	

article h6 {
	padding-top: 1.250em;
	font-size: 1.1em;
	color: #000000;
	font-weight: bold;
	}	
	
article p {
	padding-top: 1em;
	font-size: 1.1em;
	text-align: justify;
	clear: left;
	}	

article > ul li {
	text-align: justify;
	}	
	
article a, article a:hover, article a:active, article a:visited {
	font-weight: bold;
	color: #0099cc;
	text-decoration: underline;
	}
	
strong {
	font-weight: bold;
	}

.JP {	
	color: #006083;	
	font-weight: bold;
	}
	
.JP2 {
	color: #006083;
	font-size: 1.3em;
	}
	
.JP3 {
	color: #006083;
	font-size: 1.6em;
	}

.JP2, .JP3 {
	font-family: 'Meiryo UI','Meiryo','MS PGothic', 'Verdana',sans-serif;
	}	
	
p.note {
	font-size: 0.9em;
	}
	
article img {
	max-width: 90%;
	padding-top: 1.250em;
	}

img.right {
	float: right;
	}	

table {
    border-collapse: collapse;
	width: 90%;
	margin: 1em auto 0 auto;
	}

td {
    border: 1px solid #646464;
	min-width: 10%;
	padding: 1em 0.125em 1em 0.125em;
	text-align: center;
	font-size: 1.1em;
	vertical-align: middle;
	}	

td.table_image {
	min-width: 1%;
	}	

td.advantage {
	text-align: left;
	}	

td.drawback {
	text-align: left;
	}
	
th {
    border: 1px solid #646464;
	min-width: 18%;
	padding: 1em 0.125em 1em 0.125em;
	vertical-align: middle;
	text-align: center;
	font-size: 1.1em;	
	}	

table.vocabtable td {
    border: 1px solid #646464;
	min-width: 18%;
	padding: 0.125em 0.125em 0.125em 1em;
	text-align: left;
	font-size: 1em;
	vertical-align: middle;
	}		

table.vocabtable th {
    border: 1px solid #646464;
	min-width: 18%;
	padding: 0.125em 0.125em 0.125em 0.125em;
	vertical-align: middle;
	text-align: center;
	font-size: 1.1em;	
	}
	
article > ul {
	font-size: 1.1em;
	}

figure img {
	display: block;
	margin: 0 auto;
	padding: 0.5em 0 0.5em 0;
	max-width: 100%;
	}	

figcaption {
	display: block;
	margin: 0 auto;
	font-style: italic;
	font-size: 0.9em;
	padding-top: 0em;
	text-align: center;
	}
	
.kanji {
	position: relative;
	cursor: help;
	border-bottom: dashed 1px #00b0f0;
	}
	
.ruby {
	display: none;
	}

.kanji:hover {
	text-shadow: 0 0 1px #00b0f0;}	
	
.kanji:hover .ruby {
	display: block;
	position: absolute;
	z-index: 1;
	left: 0px;
	background: black;
	color: #ffffff;
	text-align: center;
	white-space: nowrap;
	padding: 4px 8px 4px 8px;
	margin-top: 8px;
	-moz-border-radius: 0.188em;
	-webkit-border-radius: 0.188em;
	border-radius: 0.188em;    
	}

.ruby:before {
	content: ' ';
	position: absolute;
	width: 0; 
	height: 0; 
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 10px solid black;
	margin-top: 0;
	left: 0;
	top: -8px;
	}

div.youtube {
	display: none;
	}

iframe {
	border: 0;
	}	

section p {
	clear: both;
	}

/* PAGE CONTENT RIGHT COLUMN ================================================= */	

nav.section_nav, a#back2top, div#announcement, div#google_adsense .back2top_text {
	display: none;
	}
	
/* FORM ================================================= */

form {
	border: solid 0.125em #6BF398;	
	-webkit-border-radius: 0.250em;
	-moz-border-radius: 0.250em;
	border-radius: 0.250em;
	padding-left: 1em;
	margin-top: 1em;
	}
	
label {
	display: block;
	}

input, select {
	display: block;
	width: 50%;
	height: 1.8em;
	border: solid 0.125em #646464;	
	-webkit-border-radius: 0.250em;
	-moz-border-radius: 0.250em;
	border-radius: 0.250em;
	font-size: 1.1em;
	}	

textarea {
	display: block;
	width: 80%;
	min-height: 18em;
	border: solid 0.125em #646464;	
	-webkit-border-radius: 0.250em;
	-moz-border-radius: 0.250em;
	border-radius: 0.250em;
	font-size: 1.1em;
	resize: none;
	overflow: auto;
	padding: 0.5em;
	}	
	
button {
	display: block;
	margin: 1em 0em 1em 30%;
	width: auto;
	padding: 0.250em 1em 0.250em 1em;
	font-size: 1.2em;
	}

.texticon {
	font-size: 1.5em;
	}	

.antispam { display:none;}

form#paypal {
	border: none;
	margin: 0;
	padding: 0.5em 0 0 0;
	}

form#paypal > input, form#paypal > select {
	border: 0;
	display: inline;
	height: auto;
	width: auto;
	}	

/* SITE MAP ================================================= */

ul#sitemap {
	font-size: 1.5em;
	}

ul#sitemap li {
	padding-left: 1em;
	font-size: 0.9em;
	}	

ul#sitemap ul {
	margin-bottom: 0.5em;
	}
	
/* FOOTER ================================================= */
	
div#page_bottom, footer, footer aside {
	display: none;
	}
