@charset "UTF-8";
/* CSS Document */

{
margin: 0px;
padding: 0px;
word-break: break-all;
}

/* Reset ------------------------------------------------------------------ */
/*
reset.css - resets default browser styling
http://tantek.com/log/2004/09.html#d06t2354
http://www.vox.com/.shared/css/base.css by beausmith.com
http://developer.yahoo.com/yui/reset/
*/
:link,:visited {
text-decoration: none;
}


/* FOR IE */  
@font-face {  
    font-family: IPAPGothic;  
    src: url(../font/ipagp.eot);  
    font-family: IPAPMincho;  
    src: url(../font/ipamp.eot);  
}  
/* FOR Firefox, Opera, Safari */  
@font-face {  
    font-family: IPAPGothic;  
    src: url(../font/ipagp.ttf) format("truetype");  
    font-family: IPAPMincho;  
    src: url(../font/ipamp.ttf) format("truetype");  
} 


html,body,div,th,td,
ul,ol,li,dl,dt,dd,
form,fieldset,input,textarea,
h1,h2,h3,h4,h5,h6,pre,code,p,blockquote,hr {
margin: 0;
padding: 0;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Osaka, Arial, "Arial Unicode MS", IPAPGothic, sans-serif;
}


h1,h2,h3,h4,h5,h6 {
font-size: 100%;
font-weight: normal;
}


table {
border-spacing: 0;
border-collapse:collapse;
}


th,td{
margin: 0;
padding: 0;
}


fieldset,img,abbr,acronym {
border: 0;
}
 
ol,ul {
list-style: disc;
}

a {
text-decoration: none;
outline: none;
}

a img,:link img,:visited img {
border: none;
}


/*\*/
* html .floatcontainer {
height: 1em;
overflow: visible;
}


/*div内の自動改行*/
div {
word-break: nomal;
word-wrap: break-word;
}


br.clear {
display: block;
clear: both;
}


/* リセットここまで ----------------------------------------------------------------- */


body {
direction: ltr;
text-align: left;
background-color: #ececec;
color: #888;
font-size: 10px;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}

a:link {
text-decoration: none;
color: #8ac;
}

a:visited {
text-decoration: none;
color: #cab;
}

a:hover {
text-decoration: none;
}

a:active {
text-decoration: none;
}

a img {
border: none;
}

p{
font-weight: normal;
font-style: normal;
font-size: 140%;
line-height: 1.6em;
}

th,td{
font-size: 100%;
line-height: 1.5em;
padding: 4px;
text-align: left;
}

th{
font-style: bold;
vertical-align: middle;
text-align: center;
}

td{
vertical-align: top;
}

.chart_bdr table{
border: solid 1px #333;
}


.chart_bdr th{
border: solid 1px #999;
}

.chart_bdr td{
border: solid 1px #999;
}


.caption {
font-size: 90%;
font-style: normal;
line-height: 1.5em;
color: #000000;
text-decoration: none;
}

.copyright {
font-size: 9px;
font-style: normal;
line-height: 150%;
color: #eee;
text-decoration: none;
}

h1{
font-weight: bold;
font-style: normal;
font-size: 240%;
line-height: 1.0em;
padding-bottom: 0.4em;
}

h2{
font-weight: bold;
font-style: normal;
font-size: 180%;
line-height: 1.6em;
padding-bottom: 0.4em;
}

h3{
font-weight: bold;
font-style: normal;
font-size: 150%;
line-height: 1.6em;
padding-bottom: 0.4em;
}

.underline {
	text-decoration: underline;
}


ruby {
ruby-align: auto;
ruby-overhang: whitespace;
ruby-position: above;
}


form {
margin: 1.4em 0 0;
}


#Wrapper {
margin: 0px auto;
padding: 0px 5px;
clear: none;
width: 760px;
}


#Header {
text-decoration: none;
background-image: url("../images/header.jpg");
margin: 0px;
padding: 4px 10px ;
clear: none;
height: 92px;
width: 740px;
}


#Header_top {
height: 79px;
}


#Header_btm {
font-size: 9px;
font-style: normal;
color: #999;
text-decoration: none;
clear: none;
height: 11px;
padding: 0 25px;
}


#Header_btm a {
color: #999;
}


#Main {
background-image: url("../images/main.jpg");
background-repeat: repeat-y;
margin: 0px;
padding: 0px;
clear: none;
height: auto;
width: 760px;
}


#Sidebarleft {
display: none;
font-weight: normal;
font-style: normal;
font-size: 140%;
line-height: 1.6em;
margin: 0px;
padding: 20px 10px 20px 20px;
clear: none;
float: left;
height: auto;
width: 240px;
}


#Content {
margin: 0px;
padding: 20px 40px 20px;
clear: none;
float: right;
height: auto;
width: 680px;
}


#Footer {
text-decoration: none;
background-image: url("../images/footer.jpg");
background-repeat: no-repeat;
margin: 0 0 20px 0;
padding: 20px;
clear: none;
float: left;
height: 40px;
width: 720px;
}

#foot_l {
clear: none;
float: left;
height: 12px;
}

#foot_r {
text-align: right;
clear: none;
float: right;
height: 12px;
}

#title {
text-align: left;
padding: 0px;
clear: none;
width: auto;
margin: 10px 0 20px;
}

#title_l {
text-align: left;
padding: 0px;
clear: none;
float: left;
width: auto;
margin:  0 2em 0 0;
}

#title_r {
text-align: left;
padding: 0px;
clear: none;
float: left;
width: 600px;
}

#title_r p {
line-height: 1em;
}

/*#title_r h1,h2 {
display: inline;
}*/

#skit, #lands, #grammar, #practice, #try_exp, #aboutj, .down  {
width: auto;
background-color: #fff;
padding: 1.0em 0 3.0em 1.0em;
}


#words  {
width: auto;
background-color: #fff;
}


#site_title {
float: left;
}


/*  メインメニュー------------------------------------ */

#menu ul {
display:block;
list-style-type: none;
margin:0;
padding:0;
float: right;
}

/* サブメニュー1段目 */
#menu ul ul{
display:none;
position:absolute;
top:100%;
left:0;
}

/* サブメニュー2段目以降 */
#menu ul ul ul {
top:0;
left:100%;
}

/* リスト */
#menu li {
float:left;
}

#menu li li {
clear:both;
}

#menu li:hover {
position:relative;
}

#menu li:hover > ul {
display: block
}

/* IE6用 */
* html #menu li {
behavior: expression(
this.onmouseover=new Function("this.className='column1'"),
this.onmouseout=new Function("this.className=''"),
this.style.behavior = 'none'
);
}

* html #menu li li {
behavior: expression(
this.onmouseover=new Function("this.className='column2'"),
this.onmouseout=new Function("this.className=''"),
this.style.behavior = 'none'
);
}

* html #menu li li li {
behavior: expression(
this.onmouseover=new Function("this.className='column3'"),
this.onmouseout=new Function("this.className=''"),
this.style.behavior = 'none'
);
}

#menu .column1 {position:relative;}
#menu .column1 ul {display:block;}
#menu .column1 * ul {display:none;}

#menu .column2 {position:relative;}
#menu .column2 ul {display:block;}
#menu .column2 * ul {display:none;}

#menu .column3 {position:relative;}
#menu .column3 ul {display:block;}
#menu .column3 * ul {display:none;}


#menu {
height: 18px;
width: 150px;
margin: 45px 20px 0 0;
padding: 0;
vertical-align: middle;
text-align: left;
background-repeat: none;
float: right;
border-top: thin solid #ccc;
}

/* メニューデザイン------------------------------------  */
#menu ul {
border-bottom: thin solid #ccc;
}

#menu li {
width:138px;
text-align: left;
border-left: thin solid #ccc;
border-right: thin solid #ccc;
padding: 1px 0 0 10px;
font-size: 10px;
}

/* IE以外 */
:root *> #menu li li {
text-align: left;
font-size: 10px;
background:#fff;
height: 20px;
position: relative;
right:1px;
}
/* IE以外ここまで */

#menu li li {
text-align: left;
font-size: 10px;
background:#fff;
height: 20px;
}

#menu li a{
display: block;
text-decoration:none;
font-weight: normal;
font-style: normal;
color:#;666
padding:0;
}

#menu li:hover {
color:#666;
}

#menu li li:hover {
background:#eee;
color:#666;
}

#menu .column1 {
color:#666;
}

#menu .column2, #menu .column3 {
color:#666;
background:#ccc;
}

/* メニューデザインここまで---------------------------  */


#goal {
height: auto;
width: 618px;
border: 4px solid #cab;
padding: 14px 12px 6px;
margin: 0 0 20px; 
}


.goal_icon, .article_icon {
height: 66px;
width: 66px;
float: left;
margin: 0 14px 10px 0; 
}


.goal_ttl_r {
height: auto;
width: 538px;
float: left;
/*position: relative;
top: 0.8em;*/
margin: 0.7em 0 2px; 
}


.article_ttl {
height: 45px;
width: 540px;
float: left;
position: relative;
top: 2.2em;
margin: 0 0 10px; 
}


/*.article_ttl_r {
height: 45px;
width: auto;
float: left;
position: relative;
top: 2.2em;
margin: 0 0 10px; 
}*/


/*@media screen and (-webkit-min-device-pixel-ratio:0) {*/
.article_ttl ruby{
ruby-align: auto;
ruby-overhang: whitespace;
ruby-position: above;
position: relative;
top: -0.6em;
}

.article_ttl_r {
height: 45px;
width: auto;
float: left;
position: relative;
top: 1.7em;
margin: 0 0 10px; 
}
/*}*/


.words_line {
width: 440px;
height: auto;
border-bottom: solid 1px #999999;
margin-bottom: 10px; 
}


.words_pic {
width: 160px;
height: 90px;
float: left;
margin: 0 20px 10px 0; 
}


.words_mp3 {
width: 20px;
height: 20px;
float: left;
margin: 35px 30px 45px 0;
}


.words_letter {
float: right;
}


.words_jh, .words_jr, .words_en {
width: 209px;
height: auto;
font-size: 140%;
line-height: 1.5;
text-align: left;
margin-bottom: 10px; 
}


.las_line {
width: 640px;
height: auto;
border-bottom: solid 1px #999999;
margin-bottom: 10px; 
}


.las_line_nb {
width: 640px;
height: auto;
margin-bottom: 11px; 
}


.las_v {
width: 160px;
height: 90px;
float: left;
margin: 0 10px 10px 0; 
}


.las_serifu {
float: right;
}


.las_jh_n, .las_jr_n, .las_en_n {
width: 100px;
height: 16px;
float: left;
font-size: 120%;
text-align: right;
line-height: 1.0;
margin: 4px 20px 10px 0; 
}


.las_jh, .las_jr, .las_en {
width: 340px;
height: auto;
float: left;
font-size: 140%;
line-height: 1.5;
margin-bottom: 10px; 
}


.gram_img {
height: 90px;
width: 160px;
float: left;
margin: 0 20px 20px 0;
border: solid 1px #999;
}


.tp_samp {
height: auto;
width: 640px;
margin: 10px 0 20px;
}


.tp_lr {
height: auto;
width: 640px;
border: solid 2px #999;
margin: 10px 0 20px;
padding: 10px 0 0;
}


.tp_samp_r {
height: auto;
width: 120px;
float: left;
}


.tp_samp_l {
height: auto;
width: 516px;
float: left;
border: solid 2px #999;
text-align: center;
padding: 10px 0 ;
}


.tp_samp_r2{
height: auto;
width: 516px;
float: left;
border: solid 2px #999;
text-align: center;
padding: 10px 0 ;
}


.tp_samp_l2 {
height: auto;
width: 120px;
float: left;
}


.tp_phrase {
background-color: #fee;
padding-top: 8px;
margin: 0 8px;
}


.tp_color {
background-color: #fee;
}


.tp_img {
height: 360px;
width: 640px;
margin: 10px 0 20px;
border: solid 1px #999;
}


.tp_line {
height: 90px;
width: 640px;
text-align: center;
margin: 0 0 20px;
}


.tp_line2 {
height: 54px;
width: 640px;
text-align: center;
margin: 0 0 20px;
}


.line0a {
float:  left;
margin-right: 17px;
text-align: center;
border: solid 1px #999;
}

.line0ae {
float:  left;
text-align: center;
border: solid 1px #999;
}

.line0 {
float:  left;
margin-right: 20px;
text-align: center;
}

.line0e {
float:  left;
text-align: center;
}

.line01 {
height: 90;
width: 90px;
float:  left;
text-align: center;
margin-right: 20px;
}

.line01e {
height: 90;
width: 90px;
float:  left;
text-align: center;
}

.line02 {
height: 90;
width: 200px;
float:  left;
text-align: center;
margin-right: 20px;
}

.line02e {
height: 90;
width: 200px;
text-align: center;
float:  left;
}

.line03 {
height: 90;
width: 310px;
float:  left;
text-align: center;
margin-right: 20px;
}

.line03e {
height: 90;
width: 310px;
float:  left;
text-align: center;
}


.gram_img {
height: 90px;
width: 160px;
float: left;
margin: 0 20px 20px 0;
border: solid 1px #999;
}


.indent { margin-left: 1.4em; }


.alignleft { text-align: left; }


.aligncenter { text-align: center; }


.alignright { text-align: right; }



/* 表定義 */

.chart td {
	padding: 4px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	line-height: 180%;
	text-align: center;
}



/* 表定義2 */

.chart_m table {
	border: solid 1px #333333;
}


.chart_m td,th {
	padding: 4px 6px;
	font-style: normal;
	border: solid 1px #999;
}


.chart_m img {
margin: 8px 0;
border: solid 1px #999;
}


.box {
border: solid 1px #888;
vertical-align: -0.7em;
_vertical-align: 0em;
*vertical-align: 0em;
}



/* 表定義3 */

.chartl01l td {
	padding: 4px 6px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	line-height: 180%;
}



/* 表定義4 */

.categoryW .chart_m td {
	padding: 4px 6px;
	font-weight: normal;
	font-style: normal;
	font-size: 12px;
	line-height: 180%;
	border: solid 1px #999;
	text-align: left;
	vertical-align: top;
}



/* 表定義5 */

.chart_cm td {
	padding: 4px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	line-height: 180%;
	text-align: center;
	vertical-align: middle;
}



/* 表定義6 */

.chart_cmb td {
	padding: 4px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	line-height: 180%;
	border-right: solid 1px #999;
	text-align: center;
	vertical-align: middle;
}

.bgc {
background-color: #f6f6f6;
}




/*1課50音表レイアウト用*/

.c50onz {
width: 628px;
height: auto;
padding: 10px;
margin: 0;
float: none;
}


.c1on {
width: auto;
height: auto;
margin-right: 10px;
border: solid 1px #999;
float: left;
}


.c1one {
width: auto;
height: auto;
margin: 0px;
border: solid 1px #999;
float: left;
}


.c1onw {
width: 90px;
height: auto;
margin-right: 10px;
float: left;
}


.boin_1 {
width: auto;
height: auto;
margin-right: 10px;
border: solid 1px #999;
float: left;
}

.lng_snd .boin_1 .hkn,.lng_snd .boin_1 .rmn {
color: #666;
width: 35px;
}


.boin_2 {
width: auto;
height: auto;
padding : 3px 0;
margin-right: 10px;
border: solid 1px #999;
float: left;
}


.lng_snd .boin_2 .hkn,.lng_snd .boin_2 .rmn {
color: #666;
width: 35px;
}




.hkn {
width: 88px;
text-align: center;
font-family: IPAPMincho;
font-weight: bold;
font-style: normal;
font-size: 210%;
line-height: 150%;
color: #f00;
padding: 1px 0 2px;
}


.kkn {
width: 88px;
text-align: center;
font-family: IPAPGothic;
font-weight: bold;
font-style: normal;
font-size: 210%;
line-height: 150%;
color: #00f;
padding: 2px 0 1px;
}


.rmn {
width: 88px;
text-align: center;
font-weight: bold;
font-style: normal;
font-size: 120%;
color: #666;
padding: 0 0 2px;
}


.ksnd {
width: 80px;
text-align: center;
font-style: normal;
padding: 4px 0 10px;
}


.b_y .c1on,.b_y .c1one {
background-color: #ffc;
}


.b_b .c1on,.b_b .c1one {
background-color: #dff;
}


.a_n .b_y .c1on,.a_n .b_y .c1one {
background-color: #bfb1d0;
}


.a_n .b_b .c1on,.a_n .b_b .c1one {
background-color: #e5dfec;
}


.ga_po .b_y .c1on,.ga_po .b_y .c1one {
background-color: #c2d69b;
}


.ga_po .b_b .c1on,.ga_po .b_b .c1one {
background-color: #eaf1dd;
}


.kya_pyo .b_y .c1on,.kya_pyo .b_y .c1one {
background-color: #fc6;
}


.kya_pyo .b_b .c1on,.kya_pyo .b_b .c1one {
background-color: #fde9d9;
}


.n_n .b_y .c1on,.n_n .b_y .c1one {
background-color: #e5dfec;
}


.n_n .hkn,.n_n .kkn,.n_n .rmn {
width: 133px;
}


.sml_tu .b_y .c1on,.sml_tu .b_y .c1one {
background-color: #ffff81;
}


.sml_tu .hkn,.sml_tu .kkn,.sml_tu .rmn {
width: 133px;
}


.lng_snd .b_y .c1on,.lng_snd .b_y .c1one, .lng_snd .b_y .boin_1,.lng_snd .b_y .boin_2 {
background-color: #ff99ff;
}


.lng_snd .b_b .c1on,.lng_snd .b_b .c1one, .lng_snd .b_b .boin_1,.lng_snd .b_b .boin_2 {
background-color: #ffc1ff;
}


.lng_snd .hkn,.lng_snd .kkn,.lng_snd .rmn {
width: 133px;
}



/*2課数字表レイアウト用*/

.suuji .c50onz {
width: 600px;
height: auto;
padding: 10px;
margin: 0;
float: none;
}


.suuji .c1on {
width: auto;
height: auto;
margin-right: 5px;
border: solid 1px #999;
float: left;
}


.suuji .c1one {
width: auto;
height: auto;
margin: 0px;
border: solid 1px #999;
float: left;
}


.suuji .c1onw {
width: 54px;
height: auto;
margin-right: 5px;
float: left;
}


.suuji .hkn {
width: 52px;
text-align: center;
font-weight: bold;
font-style: normal;
font-size: 120%;
color: #888;
padding: 2px 0 0;
}


.suuji .rmn {
width: 46px;
height: 30px;
text-align: left;
font-weight: bold;
font-style: normal;
font-size: 90%;
padding: 0 3px 2px;
}


.red {
color: #c69;
}


.suuji .b_y {
background-color: #ffc;
}


.suuji .b_b {
background-color: #dff;
}



/* 画像レイアウト用ボックス */

img.imgbox {
	margin: 0;
	padding: 0px 10px 2px 0px;
	text-align: left;
	vertical-align: top;
	border: none;
	float: left;
}


img.imgbox_r {
	margin: 0;
	padding: 0px 0px 2px 10px;
	text-align: left;
	vertical-align: top;
	border: none;
	float: right;
}


.imgbox_v {
	width: 64px;
	height: auto;
	margin: 0;
	padding: 0px 0px 10px 0px;
	text-align: left;
	vertical-align: top;
	border: none;
	float: left;
}



/*div内の自動改行*/

div     {
        word-break: nomal;
		word-wrap: break-word;
}



/* その他制御 */

.floatcontainer:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}



/*float解除用 */

br.clear {
    display: block;
    clear: both;
	visibility: hidden;
	height: 0;
}



/*\*/
* html .floatcontainer {
    height: 1em;
    overflow: visible;
}



