@charset "utf-8";

/*++ all ++--------------------------------*/
body{
margin:0;
padding:0;
background:url(../images/background.jpg) repeat-x #EEEEED;
font-size:12px;
line-height:1.4;
color:#000;
}
#bgborder{
width:772px;
background:url(../images/bgborder.gif) repeat-y #FFF;
}
#wrap{
padding:0 0 20px;
width:770px;
}


/*++ initialize ++--------------------------------*/
h1,h2,h3,h4,h5{
margin:0;
padding:0;
font-size:12px;
line-height:1.2;
}
dl,dt,dd,p{
margin:0;
padding:0;
}
ul,li{
margin:0;
padding:0;
list-style:none;
}
a img{
border:0;
vertical-align:top;
}


/*++ clearfix ++--------------------------------*/
.clear{
clear:both;
}
.clearfix:after{ /* for New Browser */
content:"."; 
display:block; 
height:0; 
clear:both; 
visibility:hidden;
}
.clearfix{
display:inline-block; /* for IE */
}
/* Hides from IE-mac \*/
* html .clearfix{ height:1%; }
.clearfix{ display:block; }
/* End hide from IE-mac */



/*++ link ++--------------------------------*/
a{
color:#2530D9;
text-decoration:none;
}
a:hover{
color:#5B65F5;
text-decoration:underline;
}



/*++ header ++--------------------------------*/
#hBorder{
margin:0 0 5px;
width:771px;
height:128px;
background:url(../images/header_right.gif) no-repeat top right;
}
#header{
position:relative;
width:770px;
height:89px;
background:url(../images/headerbg.jpg) repeat-x;
}
#header h1{
padding:9px 0 0 5px;
font-size:10px;
font-weight:normal;
color:#FFF;
}
#header .hLogo{
position:absolute;
bottom:0;
left:0;
}
#header .hContact{
position:absolute;
bottom:0;
right:10px;
width:191px;
height:66px;
}
#header .hContact a{
display:block;
width:191px;
height:56px;
background:url(../images/contact.jpg) no-repeat;
text-indent:-99999px;
}
#header .hContact a:hover{
background-position:0 -56px;
}

/*++ navi ++--------------------------------*/
#navi li{
float:left;
}
#navi a{
display:block;
height:33px;
text-indent:-99999px;
}
.naviTop a{width:110px; background:url(../images/bt_top.jpg) no-repeat;}
.naviPlace a{width:110px; background:url(../images/bt_place.jpg) no-repeat;}
.naviStaff a{width:111px; background:url(../images/bt_staff.jpg) no-repeat;}
.naviPromise a{width:110px; background:url(../images/bt_promise.jpg) no-repeat;}
.naviAccess a{width:110px; background:url(../images/bt_access.jpg) no-repeat;}
.naviInfo a{width:109px; background:url(../images/bt_info.jpg) no-repeat;}
.naviCost a{width:110px; background:url(../images/bt_cost.jpg) no-repeat;}
#navi a:hover{
background-position:0 -33px;
}



/*++ footer ++--------------------------------*/
#footer{
background:#20005D;
color:#FFF;
}
#footer .fDetail{
width:770px;
background:url(../images/footerborder.gif) right repeat-y;
text-align:center;
}
#footer .fDetail p{
padding:20px 0;
}



/*++ underCommon ++--------------------------------*/
#contWrap{
margin:0 auto;
padding:14px 0 0;
width:760px;
}
#underPage #contWrap{
width:740px;
}
h3.midashi{
margin:0 0 10px;
padding:7px 0 5px 15px;
border-bottom:solid 3px #675f9f;
background:#150a5b;
font-size:14px;
color:#FFF;
}
table.hyoLayout{
border-top:solid 1px #CCC;
border-right:solid 1px #CCC;
}
table.hyoLayout td,
table.hyoLayout th{
padding:5px;
border-bottom:solid 1px #CCC;
border-left:solid 1px #CCC;
}
table.hyoLayout th{
background:#e6e8f7;
}


/*++ topPage ++--------------------------------*/
#contGyoumu{
padding:0 0 10px;
border-bottom:solid 1px #D5D5D3;
background:url(../images/contborder.gif) repeat-y;
}
.barGyoumu{
margin:0 0 15px;
}
#gWrap{
position:relative;
width:750px;
height:305px;
margin:0 0 0 4px;
}
.gBox{
position:absolute;
width:245px;
background:url(../images/g_bg.gif) repeat-y;
border-top:solid 1px #D5D5D3;
border-bottom:solid 1px #D5D5D3;
}
.gBox#gFudo{height:135px; left:0;}
.gBox#gSaimu{height:135px; left:252px;}
.gBox#gHomu{height:135px; left:505px;}
.gBox#gKoken{height:165px; top:143px;left:0;}
.gBox#gSonota{height:165px; top:143px;left:252px;}
#gLogo{
position:absolute;
right:20px;
bottom:10px;
}
.gBox li{
font-size:10px;
}
.gBox img{
margin:10px 0 10px;
}
.gBox h3{
margin:0 0 5px 10px;
font-weight:normal;
font-size:10px;
}
.gBox .gDetail{
position:absolute;
bottom:0;
right:5px;
padding:0 5px 7px;
text-align:right;
}
#topUnder{
margin:20px 0 0;
min-height:500px;
height:500px;
}

.barNews{
margin:0 0 10px;
}
#newsBox{
float: left;
width:270px;
}
#newsBox dt{
padding:0 0 0 11px;
background:url(../images/news_icon.gif) no-repeat left;
}
#newsBox dd{
margin:0 0 20px 10px;
}
#topMap{
float: right;
padding:0 0 10px;
width:448px;
height:395px;
text-align:center;
}
#topMap dt{
margin:0 0 10px;
}
table.placeHyo{
border-top:solid 3px #CCC;
margin:0 0 20px;
}
#topMap .kouken{
	padding:0 0 15px 0;
}
table.placeHyo th{
padding:10px;
border-bottom:solid 3px #EEE;
background:#DDD;
}
table.placeHyo td{
padding:10px;
background:#FFF;
border-bottom:solid 1px #DDD;
}

/*++ promisePage ++--------------------------------*/
#promiseWrap{
position:relative;
margin:0 auto;
width:710px;
}
#promiseWrap .pPhoto{
position:absolute;
top:16px;
right:0;
}
.number1{
margin:0 0 15px;
width:493px;
background:url(../images/pr_number1_bg.jpg) repeat-y;
}
.nut1{
padding:32px 10px 2px 70px;
background:url(../images/pr_number1.jpg) no-repeat left top;
}
.nub1{
height:14px;
background:url(../images/pr_number1_b.jpg) no-repeat left bottom;
}
.nut2{
padding:30px 10px 2px 70px;
background:url(../images/pr_number2.jpg) no-repeat left top;
}
.number3{
margin:0 0 15px;
width:710px;
background:url(../images/pr_number3_bg.jpg) repeat-y;
}
.nut3{
padding:30px 10px 6px 70px;
background:url(../images/pr_number3.jpg) no-repeat left top;
}
.nub3{
height:14px;
background:url(../images/pr_number3_b.jpg) no-repeat left bottom;
}
.nut4{
padding:32px 10px 6px 70px;
background:url(../images/pr_number4.jpg) no-repeat left top;
}
.nut5{
padding:32px 10px 6px 70px;
background:url(../images/pr_number5.jpg) no-repeat left top;
}
.nut6{
padding:32px 10px 6px 70px;
background:url(../images/pr_number6.jpg) no-repeat left top;
}
.nut7{
padding:32px 10px 6px 70px;
background:url(../images/pr_number7.jpg) no-repeat left top;
}
.nut8{
padding:32px 10px 6px 70px;
background:url(../images/pr_number8.jpg) no-repeat left top;
}


/*++ placePage ++--------------------------------*/
.placeInfo{
position:relative;
margin:0 0 40px;
}
.placeInfo p,
.placeDaihyo p{
margin:0 0 8px;
}
.placeInfo dt{
padding:15px;
width:530px;
background:url(../images/st__border.gif) repeat-y #EEE;
}
.placeInfo dd{
position:absolute;
right:0;
}
.plPhoto1{top:0;}
.plPhoto2{top:130px;}
.plPhoto3{top:260px;}
.placeDaihyo{
margin:0 0 40px;
padding:15px;
background:url(../images/st__border.gif) repeat-y #EEE;
}
.txtRight{
text-align:right;
}
.txtBlue{
color:#0e37ab;
}
.hyoPlace{
width:380px;
border-top:solid 3px #a4a4a4;
margin:0 0 20px;
}
.hyoPlace dt{
float:left;
padding:10px 0 10px 10px;
width:80px;
border-bottom:solid 3px #EEE;
background:#DDD;
}
.hyoPlace dd{
float:left;
padding:10px 0 10px 10px;
width:280px;
background:#FFF;
border-bottom:solid 1px #DDD;
}
.plSyo{
padding:24px 0;
}
.plSya{
padding:16px 0;
}
.placeGaiyo{
position:relative;
height:330px;
}
.plImage{
position:absolute;
top:0;
left:400px;
}
.plImage dl{
position:absolute;
width:160px;
height:140px;
font-size:10px;
text-align:center;
}
.plImage dl#plImage01{top:0;left:0;}
.plImage dl#plImage02{top:0;left:170px;}
.plImage dl#plImage03{top:150px;left:0;}
.plImage dl#plImage04{top:150px;left:170px;}
.plImage img{
margin:0 0 5px;
border:solid 1px #75689a;
}
.linkBox{
padding:20px 10px;
border-top:solid 1px #999;
}
.linkDetail{
margin:10px 0 0;
padding:10px;
background:#EEE;
border:solid 1px #DDD;
}
.linkDetail dt{
float:left;
margin:0 20px 0;
}
.linkDetail dd{
float:left;
}
.linkDetail span{
font-weight:bold;
}


/*++ staffPage ++--------------------------------*/
.stName{
width:210px;
text-align:center;
font-weight:bold;
}
table.hyoStaff td.stPhoto{
padding:0;
}
table.hyoStaff table.hyoKeireki td{
padding:0;
vertical-align:top;
border:none;
}
.staffWrap{
margin:0 0 30px;
padding:0 0 30px;
border-bottom:solid 1px #CCC;
}
.hyoStaff th,
.hyoStaff td{
padding:5px;
border-bottom:solid 2px #FFF;
}
.hyoStaff th{
text-align:left;
}
.bgcolor01{background:#E7E7E7;}
.bgcolor02{background:#F3F3F3;}


/*++ promisePage ++--------------------------------*/
#promiseWrap{
position:relative;
margin:0 auto;
width:710px;
}
#promiseWrap .pPhoto{
position:absolute;
top:16px;
right:0;
}
.number1{
margin:0 0 15px;
width:493px;
background:url(../images/pr_number1_bg.jpg) repeat-y;
}
.nut1{
padding:32px 10px 2px 70px;
background:url(../images/pr_number1.jpg) no-repeat left top;
}
.nub1{
height:14px;
background:url(../images/pr_number1_b.jpg) no-repeat left bottom;
}
.nut2{
padding:30px 10px 2px 70px;
background:url(../images/pr_number2.jpg) no-repeat left top;
}
.number3{
margin:0 0 15px;
width:710px;
background:url(../images/pr_number3_bg.jpg) repeat-y;
}
.nut3{
padding:30px 10px 6px 70px;
background:url(../images/pr_number3.jpg) no-repeat left top;
}
.nub3{
height:14px;
background:url(../images/pr_number3_b.jpg) no-repeat left bottom;
}
.nut4{
padding:32px 10px 6px 70px;
background:url(../images/pr_number4.jpg) no-repeat left top;
}
.nut5{
padding:32px 10px 6px 70px;
background:url(../images/pr_number5.jpg) no-repeat left top;
}
.nut6{
padding:32px 10px 6px 70px;
background:url(../images/pr_number6.jpg) no-repeat left top;
}
.nut7{
padding:32px 10px 6px 70px;
background:url(../images/pr_number7.jpg) no-repeat left top;
}
.nut8{
padding:32px 10px 6px 70px;
background:url(../images/pr_number8.jpg) no-repeat left top;
}



/*++ infoPage ++--------------------------------*/
.infoBox{
position:relative;
margin:0 auto 30px;
width:710px;
background:url(../images/in_bg.jpg) repeat-y;
}
.infoTop{
padding:10px;
background:url(../images/in_top.jpg) no-repeat top left;
}
.infoImg{
position:absolute;
bottom:15px;
right:20px;
}
.infoBox p{
padding:8px 0;
}
.infoBox p.bbox{
padding:8px 0 0;
}
.infoBox p.box1{
width:500px;
}
.infoBottom{
height:15px;
background:url(../images/in_bottom.jpg) no-repeat left bottom;
}



/*++ accessPage ++--------------------------------*/
#accessWrap{
position:relative;
width:740px;
height:718px;
}
.mapLarge{
position:absolute;
top:300px;
left:0;
}
.mapDetail{
position:absolute;
top:0;
left:460px;
}
.mapDetail p{
margin:0 0 5px;
}
.mapDetail span{
padding:0 5px 0 0;
font-weight:bold;
}



/*++ contactPage ++--------------------------------*/
.contactText{
margin:0 0 15px;
}
table.contactForm{
margin:0 auto;
}
.contactForm th{
border-left:solid 3px #a4a4a4;
background:#E7E7E7;
text-align:left;
font-weight:normal;
}
.contactForm th,
.contactForm td{
padding:5px;
border-bottom:solid 2px #FFF;
}