@media screen and (max-width:640px){

img{
		max-width: 100%;
		height: auto;
		width /***/:auto;

		padding:0px;
		margin:0px;
		vertical-align:baseline;
		vertical-align:middle;

}

/* -- reset end -- */



/*共通部分*/

html{
	height:100%;
}

body{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:12px;
	letter-spacing:0.1em;
	height:100%;
}

a:hover img{
		opacity:0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha( opacity=70 )";
}

h1{
	font-size:20px;
	line-height:40px;
	height:40px;
	margin-top:0px;
	padding-left:10px;
	font-weight:normal;
}

#container{
	width:640px;
	min-height:100%;
	height:auto;
}

/*
header{
	background:url(./../img/head_bg.jpg) repeat-x;
	width:100%;
	height:40px;
}
header h1{
	font-size:26px;
	background:transparent;
}
#head_icon{
	width:50px;
}
*/
/**/
header{
	width:100%;
	height:40px;
	background:url(./../img/head_bg.jpg) repeat-x;
}
header h1{
	background:transparent;
	margin-top:0px;
	padding-top:2px;
	padding-left:10px;
	line-height:38px;
	font-size:26px;
	font-weight:normal;
}
header .icon{
	float:left;
	height:35px;
	margin:4px 8px 0 9px;
}
header .title{
	float:left;
	width:auto;
	height:auto;
	padding:0;
	margin:0;
}
/**/
footer{
	width:640px;
	height:90px;
	position:relative;
	bottom:0px;
}
#ft_bar{
	width:100%;
	height:26px;
	position:absolute;
	top:44px;
}
#ft_icon{
	width:100%;
	text-align:center;
	position:absolute;
	top:3px;
}
footer p{
	position:absolute;
	top:44px;
	font-size:14px;
	height:25px;
	margin-top:4px;
	width:100%;
	text-align:center;
}

address{
	text-align:right;
	margin-right:20px;
	font-style:normal;
	position:relative;
	z-index:6;
}
address strong{
	font-size:12px;
}
address strong a{
	font-style:normal;
	text-decoration:none;
}
address strong a:hover{
}

.clearfix:after{
		content: ".";
		display: block;
		height: 0;
		font-size:0;
		clear: both;
	visibility:hidden;
}
.clearfix{
	display: inline-block;
}



/*--- 背景 ---*/
.no-margin{
	margin:0px;
	padding:0px;
	background-image:url(../img/back.gif);
	background-repeat:repeat-y;
}

.back{
	margin:0px;
	padding:0px;
	background-image:url(../img/back.gif);
	background-repeat:repeat-y;
	width:1024px;
}

/*--- ヘッダー ---*/
.head{
	margin:0px;
	padding:0px;
	background-repeat:repeat-x;
}
.breadcrumbs_list{
	margin:24px 0 10px 24px;
	padding:0;
	padding-top:2px;
	padding-left:6px;
	height:20px;
	line-height:20px;
	width:640px;
	font-size:9pt;
}
/*--- フッター ---*/
.foot{
	clear:both;
	width:640px;
	height:25px;
	margin:0;
}
.foot div{
	padding-top:8px;
	height:25px;
	font-size:11px;
	text-align:center;
}
/*--- 構成 ---*/
.menu{
	float:left;
	width:370px;
	height:633px;
	margin-left:24px;
	font-size:11pt;
}

/*================================
サブページ共通部品
==================================*/

/* コンテンツ部分 */
#content_box{
	margin-top:10px;
	margin-right:auto;
	margin-left:10px;
	width:620px;
	min-height:600px;
}

#sub_menu{
		width:620px;
		margin:0 auto;
		padding-bottom:0px;
		min-height:600px;
		position:relative;
}

#sub_menu h2,
#head_title h2{
		display:none;
		width:620px;
		height: 60px;
		background: url('../img/ico_title-1-smart.png') no-repeat 14px 19px;
}

#head_title{
		display:block;
}
#head_title h2{
		display:block;
		margin-bottom:10px;
}

#sub_menu a{
	text-decoration:none;
}
#sub_menu a:hover{
	text-decoration:none;
}

#sub_menu h2 div,
#head_title h2 div{
		padding-top:16px;
		padding-left:52px;
		font-size:20px;
		font-weight:normal;
		border-width:0px;
		border-style:solid;
		letter-spacing:4px;
}


/* トピックパス部分 */
#t_path2{
		height: auto;
		line-height: 20px;
		margin-top: 25px;
/*
		width: 615px;
		padding-left: 5px;
*/
		width: 620px;
		margin-left: auto;
		margin-right: auto;
}
#t_path2 a{
	text-decoration:none;
}
#t_path2 a:hover{
	text-decoration:none;
}

/* 詳細コンテンツ */
#sub_content{
	padding-bottom:0px;
	margin-left:0px;
	width:620px;
	float:left;
}

/*フッター*/
footer{
	width:100%;
	height:70px;
	position:relative;
	bottom:0px;
}

footer p{
	position:absolute;
	top:44px;
	font-size:14px;
	height:25px;
	margin-top:4px;
	width:100%;
	text-align:center;
}

#footer2{
	width:100%;
	height:26px;
	position:relative;
	bottom:0px;
}
#footer2 p{
	position:absolute;
	top:4px;
	font-size:14px;
	height:21px;
	margin-top:0px;
	width:100%;
	text-align:center;
}


/*------------------------------------------------------------ */
/*---かな・カナ書き方 トップ---------------------------------- */
/*------------------------------------------------------------ */

#con_top{
}

.top_explain1{
	font-size:13px;
	line-height:200%;
	font-size:14px;
	padding:0px;
	margin:10px 20px;
	font-size:16px;
}

#explain1_default{		/*　スマートフォン以外用　メニュー位置　説明文字 */
		display:none;
}
#explain1_smart{		/*　スマートフォン用　メニュー位置　説明文字 */
		display:inline;
}

.top_explain2{
	padding:20px;
	margin-top:20px;
	margin-bottom:20px;
	font-size:16px;
	width:575px;
	line-height:120%;

}

/* トップページの説明欄のボタン */
.explain_menu{
 	display:inline-block;
	padding:0px;
 	height:22px;
 	width:74px;
 	text-align:center;

	border-radius:3px;					/* CSS3 */
	-webkit-border-radius:3px;	/* Safari,Google Chrome用 */
	-moz-border-radius:3px; 		/* Firefox用 */

	line-height:150%;

}
.explain_menu div{

	padding:0px;
	margin-top:11px;

	line-height:20%;

}

.credit_table{
	margin-left:20px;
	margin-right:20px;
	line-height:150%;

}
.credit_table .row1{
	height:40px;
}

.credit_table .row1 th{
	font-size:17px;
	font-weight:bold;
}


/*------------------------------------------------------------ */
/*---かな・カナ書き方　　書き方ページ------------------------- */
/*------------------------------------------------------------ */
/*--- メニュー部 ---*/
.menu_title{
	width:240px;
	height:40px;
	background:url('../img/ico_title-1.png') 10px 10px no-repeat;
	font-size:11pt;
	border-width:1px;
	border-style:solid;
}

.menu_title div{
		margin-top:10px;
		margin-left:10px;
}

.menu_title img{
	margin:8px;
	float:left;
}
.menu_title span{
	margin:12px;
	float:left;
}
.menu_kana{
	float:left;
	position:relative;
	margin-top:5px;
	width:620px;
	height:56px;
	font-size:12pt;
	border-bottom-width:1px;
	border-bottom-style:dashed;
}
.menu_kana .title{
	float: left;
	margin: 12px 5px 0 28px;
	width: 261px;
	height: 28px;
	font-size: 15pt;
}
.menu_kana .title a{
	display:inline-block;
	width:100%;
	height:100%;

}

.menu_kana .no_sel{
	padding-top:5px;
	padding-bottom:3px;
	text-align:center;

	border-radius:5px;					/* CSS3 */
	-webkit-border-radius:5px;	/* Safari,Google Chrome用 */
	-moz-border-radius:5px; 		/* Firefox用 */
}
.menu_kana .sel{
	padding-top:5px;
	padding-bottom:3px;
	text-align:center;

	border-radius:5px;					/* CSS3 */
	-webkit-border-radius:5px;	/* Safari,Google Chrome用 */
	-moz-border-radius:5px; 		/* Firefox用 */
}
.menu_kana a{
	text-decoration: none;
}
.menu_kana a:link{
	text-decoration:none;
}
.menu_kana a:visited{
	text-decoration:none;
}
.menu_kana a:active{
	text-decoration:none;
}
.menu_kana a:hover{
	text-decoration:none;
}
.menu_sel{
		position:absolute;
		width:10px;
		height:10px;
		background:url('../img/kana_sel.png') no-repeat 0 0;
}
#menu_hira_sel{
		left:154px;
		top:2px;
}

#menu_kata_sel{
	left: 452px;
	top: 2px;
	display:none;
}

/*　サブメニュー 文字選択 */
.kana{
		float:left;
}

.kana table{
	border-collapse:separate;
	border-spacing:15px;
}
.kana tr{

}
.kana td{
	margin:0px;
	padding:0px;
	width:86px;
	height:50px;
	line-height:30px;
	text-align:center;
	font-size:20px;
	font-weight:normal;
	text-align:center;
}
.kana .non{
}

.kana .non img{
		width:45px;
		height:45px;
}


.kana .sub{
}
.kana .sub_non{
}
.kana td a{
	text-decoration:none;
	vertical-align:middle;
	display:block;
	padding-top:8px;
	width:84px;
	height:35px;
}
.kana td a:link{
	text-decoration:none;
}
.kana td a:visited{
	text-decoration:none;
}
.kana td a:active{
	text-decoration:none;
}
.kana td a:hover{
	text-decoration:none;

}
.kana span:hover{
		cursor: pointer;
}


/*------------------------------------------------------------ */
/*--- コンテンツ部 ---*/
#sub_content .title{
	width:620px;
	height:42px;
	margin:0 auto;
	margin-left:0px;
}
#sub_content .title div{
	padding-top:10px;
	padding-left:14px;
	font-size:14pt;
}
#sub_content .contents_left{
	float:left;
	margin-top:20px;
	width:240px;
	display:block;
}
#sub_content .contents_right{
	float:left;
	margin-top:20px;
	margin-left:0px;
	width:380px;
	display:block;
}
/* かな表示枠 */
#sub_content .kana_waku{
	clear:both;
	width:238px;
	height:260px;
	margin:0px;
	display:block;

	/* Chrome対応.下に下がる */
	border-style:solid;
	border-width:1px;
}

#sub_content .kana_waku .kana{
	clear:both;
	margin-top:20px;
	margin-left:20px;
	width:200px;
	height:180px;
	display:block;

	border-radius:5px;					/* CSS3 */
	-webkit-border-radius:5px;	/* Safari,Google Chrome用 */
	-moz-border-radius:5px; 		/* Firefox用 */
}
#sub_content .kana_waku .kana p{
	font-size:10pt;
	line-height:120%;
	padding:5px;
}

/*再生領域*/
#video{
	height:180px;
	width:270px;
		margin-left:-30px;
		margin-top:0px;

}

/*動画枠*/
.movie{
		width:200px;
		height:180px;
		overflow:hidden;
		text-align:center;
		margin-top:20px;
		margin-left:auto;
		margin-right:auto;
}



#sub_content .kana_waku .btn{
	float:left;
	margin-top:14px;
	margin-left:22px;
	width:200px;
	height:34px;
}
#sub_content .kana_waku .btn img{
	float:left;
	margin-left:10px;
	margin-right:10px;
}
/*------------------------------------------------------------ */
/* Stroke */
#sub_content .stroke{
	width:380px;
	display:block;
	float:left;
}
#sub_content .stroke .s_title{
	height:40px;
	width:380px;
}
#sub_content .stroke .s_title div{
	clear:both;
	padding-top:7px;
	padding-left:20px;
	font-size:16pt;
	font-weight:bold;
}
#sub_content .stroke .s_detail{
	margin:10px;
	font-size:14px;
}
#sub_content .stroke .char .char_frame{
		display:inline-block;
		width:52px;
		height:52px;
		overflow:hidden;

		margin:6px 6px;
		border-width:2px;
		border-style:solid;
		border-radius:5px;					/* CSS3 */
		-webkit-border-radius:5px;	/* Safari,Google Chrome用 */
		-moz-border-radius:5px; 		/* Firefox用 */
}


#sub_content .stroke .char{
	margin-top:20px;
	margin-left:20px;
}
#sub_content .stroke .char img{
		max-width:none;
	margin-top:5px !important;
	margin-left:-5px !important;
		height:42px !important;
}

#sub_content .stroke .char img:hover{
		opacity:0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha( opacity=70 )";
}

/*------------------------------------------------------------ */
/* Practice */
#sub_content .practice{
	margin-top:10px;
	margin-bottom:6px;
	width:380px;
	float:left;
}
#sub_content .practice .p_title{
	height:40px;
	width:380px;
}
#sub_content .practice .p_title div{
	clear:both;
	padding-top:7px;
	padding-left:20px;
	font-size:16pt;
	font-weight:bold;
}
#sub_content .practice .p_detail{
	margin-top:10px;
	margin-left:10px;
}
#sub_content .practice .p_detail img{
	margin-left:14px;
}
#sub_content .practice ul{
	margin:0px;
	padding:0px;
}
#sub_content .practice li{
	margin:10px 10px 10px 20px;
	padding:0px 0px 0px 8px;
	list-style-type:none;
	background:url(../img/p_list.gif) left no-repeat;
	text-indent:4px;
	background-position:left 14px !important;
}
#sub_content .practice li span{
	display:inline-block;
	width:170px;
	font-size:16pt;
	margin-top:0px;
}


}
