body {
	margin: 0;
	padding: 0;
	background-color: #660099;
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 font-size: 13px;
  *font-size: small;
  *font: x-small;
 line-height: 18px;
 color: #333333;
}

div {
	margin: 0;
	padding: 0;
	background-color: #FFFFFF;
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 font-size: 13px;
  *font-size: small;
  *font: x-small;
 line-height: 18px;
 color: #333333;
}

td {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", 
Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 12px;
	line-height: 18px;
	color: #333333;
	vertical-align: top;
} 

/* table1 */
table.lesson{
	margin-left: 10px;
	background-color:#ffffff;
}

table.contact{
	margin-left: 30px;
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.contact th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.contact td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
}

table.contact2{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
}

.contact2 td{
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}


table.contact3{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.contact3 th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.contact3 td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
}


table.order2{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.order2 th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.order2 td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
}



table.order3{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
}

.order3 td{
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	background-color: #FFF;
	border-top-color: #FFF;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;
}


.lm_table{
	background-color: #FFF;
	width: 150px;
	border: 1px solid #CC99CC;
}

.lm_td{
	background-color: #FFF;
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: #CC99CC;
	border-right-color: #CC99CC;
	border-left-color: #CC99CC;
}

.lm_td_2{
	background-color: #FFF;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CC99CC;
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: #CC99CC;
	border-right-color: #CC99CC;
	border-left-color: #CC99CC;
}

table.price{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.price th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.price td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
}

table.order{
	margin-left: 30px;
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.order th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	vertical-align: middle;
}
.order td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
	vertical-align: middle;
	text-align: center;
}

table.order2{
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	border: 1px solid #CCC;
}

.order2 th{
	color:#330000;
	background-color:#F2F2F2;
	background-position:left top;
	padding:0.3em;
	text-align:center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	vertical-align: middle;
}
.order2 td{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding:0.2em 0.4em;
	vertical-align: middle;
	text-align: center;
}


/* flame */
.bg_left{
	background-image:url(images/bg_left.gif);
	background-repeat: repeat-y;
	width: 6px;
}

.bg_right{
	background-image:url(images/bg_right.gif);
	background-repeat: repeat-y;
	width: 6px;
}

.bg_w{
	background-color: #FFF;
	width: 5px;
}

.main{
	background-color:#FFF;
	width: 800px;
}

.header_line{
	background-image: url(images/header_line.gif);
	background-repeat: repeat-x;
}

.logo_sub{
	float: right;
	padding-top: 16px;
	padding-bottom: 16px;
}

.top_img{
	background-image: url(images/top_img.jpg);
	background-repeat: no-repeat;
	background-position: top;
	height: 490px;
	vertical-align: bottom;
}

.contents{
	padding-right: 30px;
	padding-left: 30px;
	background-color: #FFF;
}

.title{
	padding-top: 43px;
	padding-bottom: 43px;
}

.lesson_contents{
	padding-left: 20px;
	background-color: #FFF;
	}
	
	
.prod_contents{
	padding-left: 20px;
	background-color: #FFF;
	}

/* font */

a:link    {font-size: 12px; line-height: 16px; text-decoration:none; color:#890099 }
a:visited {font-size: 12px; line-height: 16px; text-decoration:none; color:#890099 }
a:active  {font-size: 12px; line-height: 16px; text-decoration:none; color:#890099 }
a:hover   {font-size: 12px; line-height: 16px; text-decoration:underline; color:#890099 }

span.type2 a:link    {font-size: 11px; line-height: 14px; text-decoration:none; color:#890099 }
span.type2 a:visited {font-size: 11px; line-height: 14px; text-decoration:none; color:#890099 }
span.type2 a:active  {font-size: 11px; line-height: 14px; text-decoration:none; color:#890099 }
span.type2 a:hover   {font-size: 11px; line-height: 14px; text-decoration:underline; color:#890099 }


h1 {
  font-size: 125%;
  margin-top: 0;
  margin-bottom: 0;
}

h2 {
  font-size: 125%;
  margin-top: 0;
  margin-bottom: 0;
}

h3 {
  font-size: 125%;
  margin-top: 0;
  margin-bottom: 0;
}

h4 {
  font-size: 105%;
  margin-top: 0;
  margin-bottom: 0;
}

h5 {
	font-size: 100%;
	background-image: url(images/icon02.gif);
	background-repeat: no-repeat;
	font-weight: bold;
	color: #890099;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #890099;
	padding-left: 18px;
	padding-bottom: 3px;
}

h6 {
  font-size: 100%;
  margin-top: 0;
  margin-bottom: 0;
}

.j16_v {
	font-size: 16px;
	line-height: 24px;
	margin-top: 5px;
	margin-bottom: 5px;
	color: #939;
}

.txt_line {
	font-size: 12px;
	line-height: 22px;
	color: #333;
	background-image: url(images/txt_line.gif);
	background-repeat: repeat;
	padding-right: 2px;
	padding-left: 2px;
}


.11px {  font-size: 11px;
  margin-top: 0;
  margin-bottom: 0;
}

.small {  font-size: 80%;
  margin-top: 0;
  margin-bottom: 0;
}

.top_date {
	color: #333;
	font-size: 11px;
	_font-size: 80%;
	line-height: 110%;
	text-align: left;
	vertical-align: top;
	padding-top: 0px;
	padding-right: 5px;
	padding-bottom: 3px;
}

.top_info {
	color: #333;
	font-size: 11px;
	_font-size: 80%;
	line-height: 110%;
	text-align: left;
	vertical-align: top;
	padding-top: 3px;
	padding-right: 5px;
	padding-bottom: 0px;
}

.info_date {
	color: #333;
	font-size: 13px;
	_font-size: 80%;
	line-height: 160%;
	text-align: left;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 0px;
	height: 30px;
	width: 180px;
	padding-left: 5px;
}

.info_contents {
	color: #555;
	font-size: 13px;
	_font-size: 80%;
	line-height: 160%;
	text-align: left;
	vertical-align: top;
	width: 560px;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	height: 30px;
}

.profile_contents {
	color: #555;
	font-size: 13px;
	_font-size: 80%;
	line-height: 160%;
	text-align: left;
	vertical-align: top;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 30px;
	height: 30px;
}

.top_profile{
	font-size: 11px;
	line-height: 16px;
	color: #333333;
	vertical-align: top;
} 


.prod_title{
	font-size: 12px;
	line-height: 16px;
	color: #890099;
	font-weight: bold;
	list-style-position: outside;
	list-style-image: url(images/icon02.gif);
	list-style-type: square;
	margin-left: 20px;
}


.welcome{
	text-align: center;
	vertical-align: middle;
	height: 400px;
	width: 780px;
}

.eiji{ime-mode:disabled}



/* icon */

.icon{
	padding-right: 5px;
	padding-left: 2px;
}
.icon2{
	padding-top: 20px;
	padding-left: 2px;
}


/* 画像 */

.profile {
	float:left;
	margin-right: 20px;
}

/* footer */
.copyright{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 10px;
	line-height: normal;
	font-weight: normal;
	font-variant: normal;
	color: #FFF;
	background-color: #890099;
	text-align: right;
	padding: 5px;
}



/* サイドメニューは絶対配置 */
#sidenavi {
  position: absolute;
  left: 0;
}

/* サイドコンテンツは絶対配置 */
#sidebox {
  position: absolute;
  top: 0;
  right: 0;
}


/* ナビゲーション，フッタでは折り返しを抑制 */
#navi, #footer {
  white-space: nowrap;
}

/* ナビゲーション，フッタの箇条書きは横並びリスト */
#navi ul, #footer ul {
  margin: 0;
  list-style: none;
}

#navi ul li, #footer ul li {
  display: inline;
  padding-left: 16px;
  padding-right: 0.5em;
  background: left center no-repeat;
}

/* ハイパーリンク付き画像は枠なし */
a img {
  border: none;
}

/* 画像のみのボックスのパディングは 0 とする */
.imgbox {
  padding: 0;
  
}




/* ---------- バグ回避 ----------- */

/* IE6 で画像が消えることがあるバグを回避 */
.contents img {
  position: relative;
}

/* IE6/IE7 で垂直配置がずれるバグを回避 */
html[lang^="ja"] #sidenavi {
  margin-top: 0;
}