@charset "utf-8";
/*
 * Get formating working in standard compliant browsers, add IE hacks to ie6.css and ie7.css files
 *
 * Reset CSS properties 
 */
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, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }
:focus { outline: 0; } 
body { line-height: 1; color: black; background: white; }
ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; } 
caption, th, td { text-align: left; font-weight: normal; }
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }
 
/* Start formatting */
html { height:100%; }
body { margin:0; padding:0; min-height:101%; font: 83%/1.4 Arial, "Lucida Grande", Hiragino Kaku Gothic Pro, ヒラギノ角ゴ Pro W3, "ＭＳ Ｐゴシック", Verdana, sans-serif; background-color:#f6f6f6;}
a, a:visited{ text-decoration:none; outline: none !important; color: #40658c; }
	a:active, a:hover{ text-decoration:underline; color: #d60; }
	a:focus { -moz-outline: none; }
button { }
blockquote { }
dd { line-height:22px; margin:0 0 2px 185px; padding:0 0 0 5px; }
dl { width:100%; padding: 0; margin: 0;}
dt { clear:left; font-weight:bold; line-height:22px; margin:0; padding:0 0 0 5px; float:left; }
em { }
form { margin:0; padding:0; }
h1 { font-size:125%; font-weight:600; margin:0 0 10px 0; color:#ce0621; border-bottom: 1px solid #e1e1e1; width:100%;font-family: Georgia, 'ＭＳ Ｐ明朝', serif; line-height:30px;
 }
	h1 a { }
		h1 a:hover { }
h2 { font-size:125%; font-weight:600; margin:0 0 10px 0; color:#ce0621; border-bottom: 1px solid #e1e1e1; width:100%;font-family: Georgia, 'ＭＳ Ｐ明朝', serif; line-height:30px;
 }
	h2 a { }
		h2 a:hover { }
h3 { font-size:95%; font-weight:600; margin:0; color:#393939; background:url(/images/icon_arrow.jpg) no-repeat; padding:0 0 5px 20px; line-height:12px; }
	h3 a { }
		h3 a:hover { }
h4 { font-size:125%; font-weight:600; margin:0 0 10px 0; color:#393939; border-bottom: 1px solid #e1e1e1; width:100%;font-family: Georgia, 'ＭＳ Ｐ明朝', serif; line-height:30px; } 
	h4 a { }
		h4 a:hover { }
h5 { font-size:100%; font-weight:600; margin:0 0 5px 0; }
	h5 a { }
		h5 a:hover { }
h6 { font-size:100%; font-weight:600; margin:0 0 5px 0; }
	h6 a { }
		h6 a:hover { }
img { border:none; }
	img a { border:none; }
input { vertical-align:top; margin: 0 0 5px 0; }
	input.error { border: 2px solid #f00; }
	input.field { width:250px; margin: 0 0 5px 0; }
	input.field_date { width:80px; margin: 0 0 5px 0; }
	input.field_medium { width:180px; margin: 0 0 5px 0; }
	input.field_number { width:20px; margin: 0 0 5px 0; }
	input.field_small { width:120px; margin: 0 0 5px 0; }
	input.invalid { border: 2px solid #f00; }
label { }
	label.eitheror { background: url(/images/stars.gif) no-repeat 100% -30px; }
	label.required { background: url(/images/stars.gif) no-repeat 100% 0; }
li { padding:0; margin:0; list-style:none; max-width:650px; }
	li li { padding:0; margin:0 0 0 10px;}
ol { padding:0; margin:0 0 15px 15px; max-width:650px; }
p { max-width:700px; padding: 0; margin: 0 0 10px 0; color:#666; line-height:17px; font-size:100%;}
select { }
	select.error { border: 2px solid #f00; }
	select.field { width:255px; margin: 0 0 5px 0; }
	select.field_range { width:110px; margin: 0 0 5px 0; }
	select.field_small { width:123px; margin: 0 0 5px 0; }
	select.field_time { width:40px; margin: 0 0 5px 0; }
	select.invalid { border: 2px solid #f00; }
table { }
td { vertical-align:top; }
textarea { }
	textarea.error { border: 2px solid #f00; }
	textarea.field { width:450px; height:150px; margin: 0 0 10px 0; }
	textarea.field_small { width:450px; height:70px; margin: 0 0 10px 0; }
	textarea.invalid { border: 2px solid #f00; }
th { text-align:left; }
	th a { }
		th a:hover { }
tr { }	
ul { padding:0; margin:0 0 15px 15px; }
ul ul { margin:2px 0 5px 0; }

#breadcrumb { clear:both; padding: 0 10px 10px 10px; }

#content { width:900px; margin:auto; clear:both; padding-top:20px; }
#content_frame { width:100%; background-color:#fff; padding-bottom:30px; margin-top:-10px; clear:both; }
#content_left { width:630px; float:left;  }
#content_left ol { padding-left:15px;color:#666;  }
#content_left ol li { list-style-type: decimal; }
#content_right { width:228px; float:right; background:#fbfbfb url(/images/right_bg.jpg) no-repeat; border:1px solid #e1e1e1; padding:10px; font-size:90%; line-height:15px; color:#2e2e2e;}
#content_right_text { width:250px; float:right;}
#content_right img { margin-bottom:5px;}
#footer { width:900px; margin:auto; padding:10px 0; clear:both; color:#424242; }
#footer_right { float:right; }
#footer_left { float:left; }
	#footer  p { margin:10px 0 15px 0; padding:0; font-size:85%; }
#footer_frame { width:100%; background:#f6f6f6 url(/images/footer_bg.gif) repeat-x; background-position:top;clear:both; height:100%; }
	
#header { width:900px; margin:auto; clear:both; margin-bottom:0;  } 
	#header ul { margin:0; padding:0; }
	#header li { display: inline; list-style-type: none; margin:0; padding:0; line-height:1; }
	#header #logo { float:left; margin:28px 0 0 18px; width:145px; height:55px;  } 
	#header #flag_frame { float:right; width:150px; margin-top:28px; }
	#header #flag_frame ul { margin:0; padding:0; }
	#header #flag_frame li { float:right; margin-left:10px; display: inline; list-style-type:none; }
 
	.flag_en { display:block; background: url(/images/btn_en.jpg); width:75px; height:27px; text-indent:-9999px; overflow:hidden;}
	.flag_en:hover { background:url(/images/btn_en.jpg) 0 -27px; }
	.flag_ja { display:block; background: url(/images/btn_ja.jpg); width:75px; height:27px; text-indent:-9999px; overflow:hidden; }
	.flag_ja:hover { background:url(/images/btn_ja.jpg) 0 -27px; }
	
	#header #top_menu { margin:0;  padding:0; color:#3c3c3c; clear:both; width:900px; }

		#header #top_menu li.right { padding:0; height:42px; background-position:right; float:right; clear:right; } 
		#header #top_menu a { width:180px; padding:0; margin:0; height:42px;line-height:34px; display:block; float:left; text-align:center;color:#4f4f4f; background:#fafafa url(/images/btn_bg.jpg) no-repeat; background-position:left; }
		#header #top_menu a.right { width:180px; padding:0; margin:0; height:42px;line-height:34px; display:block; float:left; text-align:center;color:#4f4f4f; background:#fafafa url(/images/btn_bg_right.jpg) no-repeat; }
		#header #top_menu a:hover { background:#fafafa url(/images/btn_hover.jpg) no-repeat; text-decoration:none; }
		#header #top_menu a:hover.right { background:#fafafa url(/images/btn_hover_right.jpg) no-repeat; text-decoration:none; }
		#header #top_menu li.current a { background:#fafafa url(/images/btn_current.jpg) no-repeat; text-decoration:none; float:left; }
		#header #top_menu li.current a.right { background:#fafafa url(/images/btn_current_right.jpg) no-repeat; text-decoration:none; float:left; }
			
#header_frame { width:100%; background: url(/images/header_bg02.jpg) repeat-x; height:140px; }
			
#navigation { float:left; width:200px; }
	#navigation h2 { position: relative; color: #fff; margin:0; padding: 5px 10px; background:#8ab2ca url(/images/navigation_top.png) no-repeat; font-size:120%;}	
		#navigation h2 a { color: #fff; }
			#navigation h2 a:hover { color: #3c5561; }
	#navigation ul { margin:0 0 20px 0; padding: 0; list-style: none; line-height:15px; }
		#navigation ul li { margin:0; padding:0;}
			#navigation ul li a { display:block; width:163px; text-decoration: none; outline: none; color: #424242; padding: 10px 10px 10px 25px; margin:0; border:1px solid #e3e3e3; border-top:none; border-bottom:1px dotted #afb1b1; background:#f2f5f7 url(/images/navigation_bg.png) no-repeat;}
				#navigation ul li a:hover { text-decoration: underline; background:#fff url(/images/navigation_bg_over.png) no-repeat;}
				#navigation li.bottom { background: url(/images/navigation_bottom.png) no-repeat; background-position:bottom; padding-bottom:5px;}
			#navigation ul li a.current {color:#424242;background:#fff url(/images/menu_selected.png) no-repeat;}
		#navigation ul ul { margin:0; padding: 0; list-style: none; }
			#navigation ul ul li { margin:0; padding:0;  }
				#navigation ul ul li a { display: block; width:163px; text-decoration: none; outline: none; color: #000; border-top: #d7d7d7 1px dotted; color: #444; background: #fff; margin:0; }
				#navigation ul ul li a.current { border:none; background: #696969; color:#fff; }
				#navigation ul ul li a.folder { background: url(/images/folder.png) no-repeat; padding: 1px 0 2px 18px; }
				#navigation ul ul li a.folder_current { width:172px; border:none; background: #696969 url(/images/folder.png) no-repeat; color:#fff; padding: 1px 0 2px 18px; }

.clear { clear:both; font-size:0px; padding:0; margin:0; }
.clear5 { clear:both; font-size:0px; padding:0; margin:5px 0 0 0; }
.clear10 { clear:both; font-size:0px; padding:0; margin:10px 0 0 0; }
.clear15 { clear:both; font-size:0px; padding:0; margin:15px 0 0 0; }
.clear20 { clear:both; font-size:0px; padding:0; margin:20px 0 0 0; }

.clear_line { clear:both; font-size:0px; padding:0; margin:0 0 10px 0; border-bottom:1px solid #e1e1e1; }
			
.form { min-height: 50px; }
	.form div.group { float: right;  padding: 0 0 10px 0; width:460px; line-height:18px; }		
	.form div.group li { color:#666; font-weight:bold; }	
	.form .field { border:1px solid #e1e1e1; padding:4px;}
	.form .field_small{ border:1px solid #e1e1e1; padding:4px;}
	.form div.note { float: left; clear:right; }
	.form label { float: left; width: 100px; clear: left; padding: 3px 12px 10px 0; margin: 0 5px 0 0; vertical-align:top; }
	.form_row { color:#666; clear:both; }
	.form label.error { color: #f00; position:relative; text-align:left; padding: 0; margin: 0 0 10px 0; z-index:5; float:left; font-weight:600;clear:left; width:250px; }
	.form label.help_display { float:none; background: url(/images/form_help.png) no-repeat top left; width:225px; padding: 2px 0 0 18px; margin: 0 5px; text-align:left; position:absolute; z-index:10; right:0; color:#e07814; }
	.form label.help_hidden { display:none; }
	.form label.marked { width: 170px; padding: 3px 15px 5px 0; margin: 0 5px 0 0; }
	.form label.over { color: #ccc; position:absolute; text-align:left; padding: 3px; z-index:10; float:none; }
	.form label.note { margin: 0; padding: 3px 0 0 0; float:none; text-align:left; }
	.form_button { clear:both; text-align:center; margin: 20px 0; padding: 20px 0 0 0; max-width:725px; }

.form_error { background: url(/images/error.gif) 5px 0 no-repeat; margin: 0 ; padding: 5px; height:32px; font-weight:600; }
.form_error p { padding-left:45px; color:#f00; line-height:32px; }

.form_feedback { clear:both; background: #fff url(/images/feedback.gif) 5px 0 no-repeat; margin: 0 0 10px 0; padding: 5px 20px 5px 46px; min-height:32px; font-weight:600; color:#333; border:1px solid #f8f8f8; -moz-border-radius: 3px; }

.form_frame { width:588px; background: url(/images/contact_bg.jpg) no-repeat; border:1px solid #e1e1e1; padding:20px; }

.front_area_box { width:630px; background: url(/images/front_area_box_line.gif) no-repeat; background-position:bottom; margin-bottom:10px; }
.front_area_box_bottom { width:630px; background-image:none; margin-bottom:10px; }
.front_area_box_left { width:305px; float:left; }
.front_area_box_right { width:305px; float:right; }

.hidden { display: none; }		

.practice { width:590px; background: #f5f5f5 url(/images/practice_bg.gif) repeat-y; padding:20px;}
.practice_image { width:590px; background:url(/images/practice_image.jpg) no-repeat; background-position:top; }
.practice_right { width:465px; float:right; }
.practice_right p { padding-left:20px; }
.rightbox_right { float:right; width:168px; line-height:32px; color:#666; }	
.rightbox_right a:visited { float:right; width:168px; line-height:32px; color:#666; }	
.rightbox_right a { float:right; width:168px; line-height:32px;  }	
.rightbox_right a:hover { text-decoration:underline;}		
.rightbox_right_phone { float:right; width:168px; }	

.service_box { width:590px; background: #f5f5f5 url(/images/service_box_bg.gif) repeat-y; padding:20px; margin-top:20px;}
.service_box_left { width:380px; float:left; }
.service_box_left img { margin-bottom:15px; }
.service_box_left img.bottom { margin-bottom:0; }
.service_box_right { width:170px; float:right; }
.service_box_right img { margin-bottom:15px; }
.service_box_right img.bottom { margin-bottom:0; }
.service_boxinside_left { width:170px; float:left; }

.service_contact { width:170px; float:right; margin-top:5px; }
.service_contact ul { margin:0; padding:0; }
.service_contact li { float:right; margin-left:10px; display: inline; list-style-type:none; }

.service_contact_en { display:block; background: url(/images/btn_contact_en.gif); width:170px; height:27px; text-indent:-9999px; overflow:hidden; }
.service_contact_en:hover { background:url(/images/btn_contact_en.gif) 0 -27px; }

.service_contact_ja { display:block; background: url(/images/btn_contact_ja.gif); width:170px; height:27px; text-indent:-9999px; overflow:hidden; }
.service_contact_ja:hover { background:url(/images/btn_contact_ja.gif) 0 -27px; }

.table_profile {}
.table_profile table { border-collapse: collapse; border-spacing: 0; width:100%;}
.table_profile td { vertical-align:top; border:1px solid #e1e1e1; padding:10px; color:#666; line-height:18px; font-size:95%; }
.table_profile td.left { vertical-align:top; background-color:#f5f5f5; border:1px solid #e1e1e1; font-weight:600; color:#565656; padding:10px; width:140px; line-height:18px; font-size:95%; }
.table_profile td.map { border:1px solid #e1e1e1; padding:0; }
