
/* --- common style ---------------------------------------------------- */

html {
	height:100%;
}

body {
	margin:0 0 1px 0;
	border:none;
	padding:0 0 0 0;
	height:100%;
	font-size:0.8em;
	line-height:1.5;
}

h1,h2,h3,h4,h5,h6,p,table,tr,th,td,dl,dt,dd,img,span,div {
	margin:0 0 0 0;
	border:none;
	padding:0 0 0 0;
}

h1,h2,h3,h4,h5,h6 {
	font-weight:normal;
}

table,
table tr,
table tr th,
table tr td {
	border-collapse:collapse;
	text-align:left;
	vertical-align:top;
}

table caption {
	display:none;
}

.clear:after {
   content: ".";
   display:block;
   clear:both;
   height:0;
   visibility:hidden;
}
.clear { display:inline-block; }
/* exlude MacIE5 \*/
* html .clear { height:1% }
.clear {display:block;}
/* end MacIE5 */

.f_clear {
	clear:both;
}

a { cursor:pointer; }
a:link { color:#b1410f; text-decoration:none; }
a:visited { color:#b1410f; text-decoration:none; }
a:active { color:#c72201; text-decoration:none; }
a:hover { color:#c72201; text-decoration:underline; }



/* --- site layout ----------------------------------------------------------- */

body {
	text-align:center;
	background:#452519 url(../img/bg_layout.jpg) repeat-x;
}

div#layout {
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	width:900px;
}


div#layout div#header {
	position:relative;
	overflow:hidden;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	width:900px;
	height:110px;
	background:url(../img/bg_header.jpg) no-repeat;
	text-align:left;
}

div#layout div#wrapper {
	overflow:hidden;
	margin:0 auto 0 auto;
	padding:0 0 30px 0;
	width:900px;
	background:#f4ede7 url(../img/bg_wrapper.jpg) repeat-x 0px 0px;
	text-align:left;
}

#topP div#layout div#wrapper {
	background:#f4ede7 url(../img/bg_wrapper.jpg) repeat-x 0px 360px;
}

div#wrapper div#main {
	overflow:hidden;
	float:right;
	display:inline;
	margin:0 20px 0 0;
	padding:0 0 0 0;
	width:640px;
	color:#452519;
}

#topP div#wrapper div#main {
	overflow:hidden;
	float:none;
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:900px;
}

div#wrapper div#navi {
	overflow:hidden;
	float:left;
	display:inline;
	margin:0 0 0 20px;
	padding:0 0 0 0;
	width:200px;
	text-align:left;
}

div#layout div#footer {
	clear:both;
	margin:0 auto 0 auto;
	padding:10px 0 10px 0;
	width:900px;
	background:#f4ede7;
	text-align:center;
	color:#452519;
}


/* --------------------------------------------------------------------------- */
/* --- header ---------------------------------------------------------------- */
/* --------------------------------------------------------------------------- */

div#header h1 {
	position:absolute;
	top:15px;
	left:0px;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:260px;
	height:30px;
	background:url(../img/logo_01.png) no-repeat;
}

div#header h1 a,
div#header h1 a span {
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:260px;
	height:30px;
}

div#header h1 a {
}

div#header p {
	position:absolute;
	top:0px;
	right:0px;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:179px;
	height:39px;
}

div#header p a,
div#header p a span {
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:179px;
	height:39px;
}

div#header p a { background:url(../img/btn_h_contact.jpg) no-repeat 0px 0px; }
div#header p a:hover { background:url(../img/btn_h_contact.jpg) no-repeat -179px 0px; }

div#header ul {
	list-style:none;
	position:absolute;
	right:0px;
	bottom:5px;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:718px;
	height:55px;
}

div#header ul li {
	float:left;
	display:inline;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	height:55px;
}

div#header ul li a,
div#header ul li a span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	height:55px;
}

div#header ul li#gn_home a {
	width:114px;
	background:url(../img/bg_navi_list.jpg) no-repeat 0px 0px;
}
div#header ul li#gn_home a:hover,
div#header ul li#gn_home a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat 0px -55px;
}

div#header ul li#gn_course a {
	width:110px;
	background:url(../img/bg_navi_list.jpg) no-repeat -114px 0px;
}
div#header ul li#gn_course a:hover,
div#header ul li#gn_course a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat -114px -55px;
}

div#header ul li#gn_profile a {
	width:130px;
	background:url(../img/bg_navi_list.jpg) no-repeat -224px 0px;
}
div#header ul li#gn_profile a:hover,
div#header ul li#gn_profile a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat -224px -55px;
}

div#header ul li#gn_gallery a {
	width:118px;
	background:url(../img/bg_navi_list.jpg) no-repeat -354px 0px;
}
div#header ul li#gn_gallery a:hover,
div#header ul li#gn_gallery a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat -354px -55px;
}

div#header ul li#gn_access a {
	width:112px;
	background:url(../img/bg_navi_list.jpg) no-repeat -472px 0px;
}
div#header ul li#gn_access a:hover,
div#header ul li#gn_access a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat -472px -55px;
}

div#header ul li#gn_contact a {
	width:134px;
	background:url(../img/bg_navi_list.jpg) no-repeat -584px 0px;
}
div#header ul li#gn_contact a:hover,
div#header ul li#gn_contact a.now {
	background:url(../img/bg_navi_list.jpg) no-repeat -584px -55px;
}



/* --------------------------------------------------------------------------- */
/* --- navi ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

div#navi div {
	overflow:hidden;
	margin:0 0 15px 0;
	padding:0 0 0 0;
	width:200px;
	background:#5d3c31;
}

div#navi div h2 {
	overflow:hidden;
	margin:10px 0 10px 0;
	padding:0 0 0 0;
	width:200px;
	height:40px;
}

div#navi div h2 a,
div#navi div h2 a span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:200px;
	height:40px;
}

div#navi div ul {
	list-style:none;
	overflow:hidden;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	width:200px;
}

div#navi div ul li {
	list-style:none;
	overflow:hidden;
	margin:0 0 5px 0;
	padding:0 0 0 0;
	width:200px;
	height:30px;
	background:url(../img/bg_navi_arrow.jpg) no-repeat 6px 7px;
	text-indent:26px;
	line-height:30px;
	color:#ffffff;
}

div#navi div ul li a {
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:200px;
	height:30px;
	color:#ffffff;
}

div#navi div ul li a.now {
	background-color:#7d635a;
}

div#navi p {
	margin-bottom:10px;
}




/* --------------------------------------------------------------------------- */
/* --- footer ---------------------------------------------------------------- */
/* --------------------------------------------------------------------------- */

div#footer a {
	text-decoration:underline;
	color:#452519;
}

div#footer ul {
	list-style:none;
	margin:0 0 5px 0;
	border-bottom:1px solid #d0b597;
	padding:0 0 10px 0;
	width:900px;
}

div#footer ul li {
	display:inline;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

div#footer p {
	margin:0 0 0 0;
	padding:0 0 5px 0;
	widows:900px;
}

div#footer p a {
	text-decoration:none;
}



/* --------------------------------------------------------------------------- */
/* --- main ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

div#main p {
	margin-left:1em;
	margin-bottom:1.5em;
}

div#main p.p_ml_2em {
	margin-left:3em;
}

div#main p.p_txt_right {
	text-align:right;
}

div#main p.p_txt_center {
	text-align:center;
}

div#main p span.span_bold {
	font-weight:bold;
}

div#main p.img_right,
div#main img.img_right {
	float:right;
	display:inline;
	margin-bottom:3px;
	margin-left:10px;
}

div#main p.img_left,
div#main img.img_left {
	float:left;
	display:inline;
	margin-bottom:3px;
	margin-right:10px;
}
div#main p.img_center,
div#main img.img_center {
	text-align:center;
}

div#main p.page_top {
	clear:both;
	margin-top:20px;
	line-height:15px;
	text-align:right;
}

div#main p.page_top img {
	margin:0 2px 0 0;
	vertical-align:bottom;
}



/* --------------------------------------------------------------------------- */
/* --- topP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#topP div#main p#top_img {
	overflow:hidden;
	margin:0 0 20px 0;
	padding:0 0 0 0;
	width:900px;
	height:360px;
}

#topP div#main div#box_greeting { /* === IE6 === */
	float:left;
	display:inline;
	overflow:hidden;
	margin:0 0 0 20px;
	padding:0 0 0 0;
	width:468px;
	background:url(../img/bg_box_greeting_01.jpg) no-repeat;
}

#topP div#main div#box_greeting h2 {
	overflow:hidden;
	margin:0 0 15px 20px;
	padding:0 0 0 0;
	width:428px;
	height:53px;
	background:url(../img/ttl_top_greeting.png) no-repeat;
}

#topP div#main div#box_greeting h2 span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:428px;
	height:53px;
}

#topP div#main div#box_greeting div {
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:468px;
	background:url(../img/bg_box_greeting_02.jpg) no-repeat bottom
}

#topP div#main div#box_greeting div p {
	margin-right:20px;
	margin-left:20px;
}

#topP div#main div#box_news {
	float:right;
	display:inline;
	overflow:hidden;
	margin:0 20px 0 20px;
	padding:0 0 0 0;
	width:370px;
}

#topP div#main div#box_news h2 {
	overflow:hidden;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	width:370px;
	height:20px;
}

#topP div#main div#box_news h2.h2_news {
	background:url(../img/ttl_top_news.png) no-repeat;
}

#topP div#main div#box_news h2.h2_blog {
	background:url(../img/ttl_top_blog.png) no-repeat;
}

#topP div#main div#box_news h2 span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:370px;
	height:20px;
}

#topP div#main div#box_news ul {
	list-style:none;
	margin:0 0 30px 10px;
	padding:0 0 0 0;
	width:360px;
}

#topP div#main div#box_news ul li {
	overflow:hidden;
	margin:0 0 5px 0;
	padding:0 0 0 0;
	width:360px;
	height:24px;
	background:url(../img/arrow_01.jpg) no-repeat 0px 7px;
}

#topP div#main div#box_news ul li a {
	display:block;
	margin:0 0 0 18px;
	padding:0 0 0 0;
	width:342px;
	height:24px;
	line-height:24px;
	font-weight:bold;
	font-size:1.1em;
}

#topP div#main div#box_news p {
	margin:0 0 15px 10px;
	padding:0 0 0 0;
	width:352px;
}






/* --------------------------------------------------------------------------- */
/* --- inner ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

div#wrapper p#bread {
	margin:10px 0 15px 20px;
	color:#573b31;
}

div#wrapper p#bread a {
	text-decoration:underline;
	color:#573b31;
}

div#wrapper p#bread a.now {
	text-decoration:none;
}

#infoP div#main h2,
#courseP div#main h2,
#profileP div#main h2,
#galleryP div#main h2,
#accessP div#main h2,
#contactP div#main h2,
#privacyP div#main h2,
#sitemapP div#main h2 {
	overflow:hidden;
	margin:0 0 15px 0;
	padding:0 0 0 0;
	width:640px;
	height:110px;
}

#infoP div#main h2 span,
#courseP div#main h2 span,
#profileP div#main h2 span,
#galleryP div#main h2 span,
#accessP div#main h2 span,
#contactP div#main h2 span,
#privacyP div#main h2 span,
#sitemapP div#main h2 span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:640px;
	height:110px;
}

/*#infoP div#main h2,
#courseP div#main h2,
#profileP div#main h2,
#galleryP div#main h2,
#accessP div#main h2,
#contactP div#main h2,
#privacyP div#main h2,
#sitemapP div#main h2 {
	overflow:hidden;
	margin:0 0 15px 0;
	padding:0 0 0 0;
	width:640px;
	height:30px;
}

#infoP div#main h2 span,
#courseP div#main h2 span,
#profileP div#main h2 span,
#galleryP div#main h2 span,
#accessP div#main h2 span,
#contactP div#main h2 span,
#privacyP div#main h2 span,
#sitemapP div#main h2 span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:640px;
	height:30px;
}

#infoP div#main p#p_catchcopy,
#courseP div#main p#p_catchcopy,
#profileP div#main p#p_catchcopy,
#galleryP div#main p#p_catchcopy,
#accessP div#main p#p_catchcopy,
#contactP div#main p#p_catchcopy,
#privacyP div#main p#p_catchcopy,
#sitemapP div#main p#p_catchcopy {
	overflow:hidden;
	margin:0 0 15px 0;
	padding:0 0 0 0;
	width:640px;
	height:110px;
}

#infoP div#main p#p_catchcopy span,
#courseP div#main p#p_catchcopy span,
#profileP div#main p#p_catchcopy span,
#galleryP div#main p#p_catchcopy span,
#accessP div#main p#p_catchcopy span,
#contactP div#main p#p_catchcopy span,
#privacyP div#main p#p_catchcopy span,
#sitemapP div#main p#p_catchcopy span {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:640px;
	height:110px;
}*/

#infoP div#main h3,
#courseP div#main h3,
#profileP div#main h3,
#galleryP div#main h3,
#accessP div#main h3,
#contactP div#main h3,
#privacyP div#main h3,
#sitemapP div#main h3 {
	clear:both;
	overflow:hidden;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	width:640px;
	height:25px;
	background:url(../img/ttl_h3.png) no-repeat;
	line-height:25px;
	font-size:1.2em;
	font-weight:bold;
	color:#482219;
}

#infoP div#main h4,
#courseP div#main h4,
#profileP div#main h4,
#galleryP div#main h4,
#accessP div#main h4,
#contactP div#main h4,
#privacyP div#main h4,
#sitemapP div#main h4 {
	clear:both;
	overflow:hidden;
	margin:0 0 10px 1em;
	padding:0 0 0 0;
	width:625px;
	height:20px;
	background:url(../img/ttl_h4.png) no-repeat;
	line-height:20px;
	font-weight:bold;
	text-indent:1em;
	color:#bd6238;
}




/* --------------------------------------------------------------------------- */
/* --- infoP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#infoP div#navi div h2 {
	background:url(../img/ttl_navi_info.png) no-repeat;
}

#infoP div#main h2 {
	background:url(../img/ttl_h2_info.png) no-repeat;
}

/*#infoP div#main p#p_catchcopy {
	background:url(../img/catchcopy_info.jpg) no-repeat;
}*/

#infoP div#main div {
	overflow:hidden;
	margin:0 0 25px 0;
	border-bottom:1px dotted #452519;
	padding:0 0 0 0;
	width:640px;
}

#infoP div#main div h3 span {
	float:left;
	display:inline;
	margin:0 9px 0 0;
	padding:0 0 0 0;
	width:100px;
	height:25px;
}





/* --------------------------------------------------------------------------- */
/* --- courseP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#courseP div#navi div h2 {
	background:url(../img/ttl_navi_course.png) no-repeat;
}

#courseP div#main h2 {
	background:url(../img/ttl_h2_course.png) no-repeat;
}

/*#courseP div#main p#p_catchcopy {
	background:url(../img/catchcopy_course.jpg) no-repeat;
}*/






/* --------------------------------------------------------------------------- */
/* --- profileP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#profileP div#navi div h2 {
	background:url(../img/ttl_navi_profile.png) no-repeat;
}

#profileP div#main h2 {
	background:url(../img/ttl_h2_profile.png) no-repeat;
}

/*#profileP div#main p#p_catchcopy {
	background:url(../img/catchcopy_profile.jpg) no-repeat;
}*/





/* --------------------------------------------------------------------------- */
/* --- galleryP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#galleryP div#navi div h2 {
	background:url(../img/ttl_navi_gallery.png) no-repeat;
}

#galleryP div#main h2 {
	background:url(../img/ttl_h2_gallery.png) no-repeat;
}

/*#galleryP div#main p#p_catchcopy {
	background:url(../img/catchcopy_gallery.jpg) no-repeat;
}*/

#galleryP div#main div {
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:640px;
}

#galleryP div#main div p {
	overflow:hidden;
	float:left;
	display:inline;
	margin:0 5px 15px 5px;
	padding:0 0 0 0;
	width:200px;
	height:200px;
	text-align:center;
	line-height:200px;
}

#galleryP div#main div p img {
	vertical-align:middle;
}





/* --------------------------------------------------------------------------- */
/* --- accessP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#accessP div#navi div h2 {
	background:url(../img/ttl_navi_access.png) no-repeat;
}

#accessP div#main h2 {
	background:url(../img/ttl_h2_access.png) no-repeat;
}

/*#accessP div#main p#p_catchcopy {
	background:url(../img/catchcopy_access.jpg) no-repeat;
}*/





/* --------------------------------------------------------------------------- */
/* --- contactP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#contactP div#navi div h2 {
	background:url(../img/ttl_navi_contact.png) no-repeat;
}

#contactP div#main h2 {
	background:url(../img/ttl_h2_contact.png) no-repeat;
}

/*#contactP div#main p#p_catchcopy {
	background:url(../img/catchcopy_contact.jpg) no-repeat;
}*/

#contactP div#main table {
	margin:0 0 10px 40px;
	border-collapse:separate;
	padding:0 0 0 0;
	width:560px;
}

#contactP div#main table tr th,
#contactP div#main table tr td {
	margin:0 0 2px 0;
	border-bottom:1px solid #ab9089;
	padding:5px 5px 5px 5px;
}

#contactP div#main table tr th {
	width:140px;
}

#contactP div#main table tr td {
	position:relative;
}

#contactP div#main table tr td span {
	position:absolute;
	font-weight:bold;
}

#contactP div#main table tr td input.input_ml_50 {
	margin-left:50px;
}

#contactP div#main table tr td span.chb {
	font-weight:normal;
}






/* --------------------------------------------------------------------------- */
/* --- privacyP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#privacyP div#navi div h2 {
	background:url(../img/ttl_navi_privacy.png) no-repeat;
}

#privacyP div#main h2 {
	background:url(../img/ttl_h2_privacy.png) no-repeat;
}

/*#privacyP div#main p#p_catchcopy {
	background:url(../img/catchcopy_privacy.jpg) no-repeat;
}*/





/* --------------------------------------------------------------------------- */
/* --- sitemapP ------------------------------------------------------------------ */
/* --------------------------------------------------------------------------- */

#sitemapP div#navi div h2 {
	background:url(../img/ttl_navi_sitemap.png) no-repeat;
}

#sitemapP div#main h2 {
	background:url(../img/ttl_h2_sitemap.png) no-repeat;
}

/*#sitemapP div#main p#p_catchcopy {
	background:url(../img/catchcopy_sitemap.jpg) no-repeat;
}*/

#sitemapP div#main ul {
	list-style:none;
	overflow:hidden;
	margin:0 0 20px 1em;
	padding:0 0 0 0;
	width:250px;
}

#sitemapP div#main ul li {
	overflow:hidden;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	width:250px;
	height:25px;
}

#sitemapP div#main ul li a {
	display:block;
	overflow:hidden;
	margin:0 0 0 0;
	padding:0 0 0 0;
	width:250px;
	height:25px;
	background:url(../img/ttl_h3.png) no-repeat;
	line-height:25px;
	font-size:1.2em;
	font-weight:bold;
	color:#482219;
}

#sitemapP div#main ul li a:hover {
	text-decoration:none;
	color:#c72201;
}














