/* -------------------------------------------------------------- common -------------------------------------------------------------- */
/* input, form */
input[type="text"], input[type="password"] { height:18px; padding:3px 5px; color:#777; line-height:20px; background:#fff; border:1px solid #dadada; }
input[type="text"]:focus, input[type="password"]:focus { border:1px solid #dadada; }
input[type="radio"] { width:13px; height:13px; padding:0; margin:-1px 2px 0 0; vertical-align:middle; } 
input[type="checkbox"] { width:13px; height:13px; padding:0; margin:-1px 2px 0 0; vertical-align:middle; }
input[type="image"] { border:none; }
input[type="file"] { height:28px; line-height:28px; background:#fff; border:1px solid #dadada; }
input[type="submit"] { padding-bottom:2px; }
select { height:26px; padding:3px; color:#777; border:1px solid #dadada; }
textarea { _margin-top:-1px; padding:4px; border:1px solid #dadada; }
textarea:focus { border:1px solid #dadada; }

/* align, float */
.al_l { text-align:left!important; }
.al_c { text-align:center!important; }
.al_r { text-align:right!important; }
.al_j { text-align:justify!important; }
.fl { float:left; }
.fr { float:right; }
.clear { clear:both; }
.vat { vertical-align:top; }
.vam { vertical-align:middle; }
.vab { vertical-align:bottom; }

/* display */
.inblock { display:inline-block; }
.none { display:none!important; }
.blind { visibility:hidden; }
.hide { overflow:hidden; visibility:hidden; position:absolute; width:0; height:0; font-size:0; line-height:0; }
.bgn { background:none!important; }
.bdn { border:none!important; }

/* margin, padding */
.mg0 { margin:0!important; }
.mt10 { margin-top:10px!important; }
.mb10 { margin-bottom:10px!important; }
.mb20 { margin-bottom:20px!important; }
.mb30 { margin-bottom:30px!important; }
.mb40 { margin-bottom:40px!important; }
.mb50 { margin-bottom:50px!important; }


/* -------------------------------------------------------------- layout -------------------------------------------------------------- */
/* skipToContent */
#wrap { }
#wrap:after { content:""; display:block; visibility:hidden; clear:both; }
	.inner { overflow:hidden; width:1000px; margin:0 auto; }	
	
#header { width:100%; background:#fff; padding-top:88px; } 
#header:after { content:""; display:block; visibility:hidden; clear:both; }
	h1 { position:absolute; top:27px; }
	.util { position:absolute; top:40px; padding-left:840px; }
	.util li { float:left; padding:0 0 0 17px; background:url(../images/common/util_sp.gif) 8px 2px no-repeat; }
	.util li a { color:#555; font-weight:bold; font-size:12px; }
	#gnb { background:#085b97; z-index:998; height:43px; }
	.mainmenu { width:1000px; margin:0 auto; border-left:1px solid #4684b1;}		
	ul.menu li { position:relative; float:left; width:199px; height:43px; z-index:9999; border-right:1px solid #4684b1; }
	* html ul.menu li {display:inline;zoom:1;}
	*+html ul.menu li {display:inline;zoom:1;}
	ul.menu li a { position:relative; display:block; width:100%; height:100%; line-height:43px; text-align:center; background:#085b97; color:#fff; font-weight:bold; font-size:16px;}	
	ul.menu li a:hover { background:#004b82; }
	ul.sub {display:none;}
	* html ul.sub {zoom:1;position:relative;}
	*+html ul.sub {zoom:1;position:relative;}
	ul.sub li { float:none; height:35px; }
	ul.sub li a { font-size:13px;  line-height:35px; }
	ul.menu {zoom:1;}
	ul.menu:after {height:0;visibility:hidden;content:".";display:block;clear:both;}

#container.pg-idx { position:relative; height:618px; margin:0 auto; background:url(../images/main/bg_wrap.jpg) 50% 0 no-repeat!important; }
#container:after { content:""; display:block; visibility:hidden; clear:both; }
	.spot-txt { position:absolute; top:110px; left:50%; margin-left:-350px; text-align:center; color:#7b7b7b; font-size:15px; }
	.spot-txt dt { margin-bottom:10px; font-size:36px; color:#2760ac;  font-weight:600; }
	.spot-txt dd { font-size:26px; color:#252525; }
	.spot-txt span { font-weight:bold;  font-weight:600; }
	.sub-spot { top:170px; left:70px; }
	
	/* main */
	.ico-grp { overflow:hidden; position:absolute; top:250px; }
	.ico-grp li { float:left; margin-right:20px; }
	.ico-grp li a { display:block; width:192px; height:205px; padding-top:15px; text-indent:-5000px; }
	.ico-grp li a.ico1 { background:url(../images/main/ico1.png) 0 15px no-repeat; }
	.ico-grp li a.ico2 { background:url(../images/main/ico2.png) 0 15px no-repeat; }
	.ico-grp li a.ico3 { background:url(../images/main/ico3.png) 0 15px no-repeat; }
	.ico-grp li a.ico4 { background:url(../images/main/ico4.png) 0 15px no-repeat; }
	.ico-grp li a.ico5 { background:url(../images/main/ico5.png) 0 15px no-repeat; }
	.ico-grp li a:hover, .ico-grp li a.on { background-position:0 bottom; margin-top:-15px; height:225px; }
	
	/* sub */
	#s-spot { position:relative; height:187px; background:#fafafc url(../images/common/s-spot.jpg) 50% 0 no-repeat; }
	#s-spot ul.s-txt { position:absolute; top:65px; padding-left:20px; color:#7b7b7b; }
	#s-spot ul.s-txt li.txt1 { font-size:31px; margin-bottom:10px; color:#2760ac;  font-weight:600; }
	#s-spot ul.s-txt li.txt2 { font-size:20px; }
	#s-spot ul.s-txt li.txt2 span { color:#252525; font-weight:600; }

#aside { position:relative; float:left; width:200px; }
#aside h2 { width:200px; height:85px; padding-top:55px; text-align:center; font-size:28px; color:#fff; font-weight:600; background:#085b97 url(../images/common/h2_arr.gif) 50% 104px no-repeat; }
#aside p { width:200px; position:absolute; top:38px; text-align:center; color:#6a8fb4; font-weight:bold; font-size:11px; }
	.snb { width:200px; }
	.snb li {  }
	.snb li a { display:block; height:35px; color:#505050; padding:15px 0 0 35px; font-size:14px; font-weight:600; border-bottom:1px solid #c9c9c9; border-right:1px solid #c9c9c9; border-left:1px solid #c9c9c9;}
	.snb li a:hover, .snb li a.on { height:35px; border:none; color:#fff; font-size:14px; background:#6b7f93 url(../images/common/snb_on.gif) 24px 17px no-repeat; }
	
	#cwrap { overflow:hidden; float:right; width:755px; }
	.tit-grp { position:relative; height:90px; margin-bottom:40px; border-bottom:2px solid #080808; }
	.tit-grp h3 {  position:absolute; top:40px; left:0; font-size:32px; color:#222; }
	.loc { position:absolute; top:58px; right:0; }
	.loc li { float:left; padding-left:20px; background:url(../images/common/loc_arrow.gif) 5px 50% no-repeat; font-size:13px; color:#555; }
	.loc li.home { text-indent:-5000px; background:url(../images/common/loc_home.gif) 0 3px no-repeat; }
	.contents { overflow:hidden; width:755px; margin: 0 0 50px 0; min-height:500px; }

	
#footer { width:100%; height:90px; padding-top:30px; border-top:1px solid #ccc; }
#footer .inner { overflow:hidden; position:relative; width:1000px; margin:0 auto; height:56px; background:url(../images/common/foot_logo.gif) 0 50% no-repeat; }
#footer .inner address { position:absolute; top:10px; left:190px; }
#footer .inner p { position:absolute; top:30px; left:190px; }
