@charset "UTF-8";






/* Reset */



body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li, 
brockquote, pre, table, caption, th, td, address, img,
form, fieldset, legend, object {
  margin: 0;
  padding: 0;
}
h1, h2, h3, h4, h5, h6, pre, table, code, kbd, samp, acronym, input, textarea, select {
  font-size: 100%;
}
a, ins {
  text-decoration: none;
}
address, em, cite, dfn, var {
  font-style: normal;
}
input, textarea {
  font-family: sans-serif;
  font-weight: normal;
}
img {
  vertical-align: baseline;
}
a img {
  border: none;
}






/* Setting */



html {  
  overflow-y: scroll;  
}
body {
  background: #F8F2EC;
  font-family: "メイリオ",verdana,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",sans-serif;
  font-size: 13px;
  color: #412A17;
  line-height:1.6;
}
* html body { /* for IE6 */
  font-size: small;
}
*:first-child+html body { /* for IE7 */
  font-size: small;
}
ul {
  list-style-position: outside;
  list-style-type: none;
}
ol {
  list-style-position: outside;
}
table {
  border-collapse: collapse;
}
legend {
  color: #333;
}
div#wrapper p,
div#wrapper ul,
div#wrapper ol,
div#wrapper dl,
div#wrapper blockquote,
div#wrapper pre,
div#wrapper table {
}






/* Option */



* html .smallFont {
  font-family: 'CI', 'lr oSVbN', sans-serif;
}
*:first-child+html .smallFont {
  font-family: 'CI', 'lr oSVbN', sans-serif;
}
* html ul li dl,
* html ol li dl {
  display: inline;
}
*:first-child+html ul li dl,
*:first-child+html ol li dl {
  display: inline;
}



.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}





/*---------------------------------------------

Font Size

20px : 154%
18px : 139%
16px : 124%
15px : 116%  125%
14px : 108%  117%
13px : 100%  108%
12px :  93%  100%
11px :  85%   92%

---------------------------------------------*/


#wrapper {
	margin: 0 auto;
	margin: 0 auto;
	width: 850px;
	background-image: url(img/bg.gif);
	background-repeat: repeat-y;
}
#header {
	width: 790px;
	margin: 0 20px 15px;
	padding:0 10px;
}
h1 {
	display: block;
	height: 20px;
	font-size: 77%;
	font-weight:normal;
	float:left;
}
#header p {
	display:inline;
	font-size: 77%;
	float:right;
}
#headerlogo{
	background:url(img/header.gif) no-repeat left top;
	position:relative;
	height:85px;
	width: 790px;
	margin-bottom:5px;
}
.headerlogo_btn{
	position:absolute;
	top:7px;
	left:455px;
}
#sitemap {
	display:block;
	float: right;
	font-size: 77%;
	height: 20px;
	width:100px;
	text-align:right;
}



#headernavi {
	width:790px;
	margin:0 20px;
	padding:0 10px;
}
#navi {
	overflow:hidden;
}
#navi li {
	float:left;
	display:inline;
	margin-left:5px;
	background-image:url(img/headermenu_02.gif);
	background-position:right top;
	background-repeat:no-repeat;
}
#navi li a {
	background-image:url(img/headermenu_01.gif);
	background-position:left top;
	background-repeat:no-repeat;
	padding:10px 15px 5px;
	color:#FFFFFF;
	font-weight:bold;
	display:block;
}
#navi li a:hover {
	color:#FFDEE6;
	text-decoration:underline;
}




.midashi {
	margin:0 20px 20px;
	width: 790px;
	background-image: url(img/menu01.gif);
	background-repeat: no-repeat;
	height: 42px;
	color: #FFFFFF;
	font-size: 153.9%;
	line-height: 42px;
	padding-left: 20px;
	display: block;
}
.midashi-mini {
	display: block;
	font-size: 116%;
	line-height:1.8;
	height: 26px;
	background-image: url(img/menu02.gif);
	background-repeat: no-repeat;
	color: #FFFFFF;
	padding-left: 20px;
	margin-bottom:20px;
}
.theme01 {
	font-size: 146.5%;
	font-weight: bold;
	color: #ff7397;
	margin-bottom: 15px;
	padding-left:10px;
	border-left:3px solid #ff7397;
}
.theme02 {
	font-size: 16px;
	font-weight: bold;
	color: #665555;
	margin-bottom: 15px;
}
#dottedbar {
	border-bottom:1px dotted #B8A698;
}



.service {
	width: 750px;
	margin: 0 50px 20px 50px;
}



.contentsbox {
	margin-bottom:20px;
	width:750px;
	border-bottom: 1px dotted #B8A698;
	padding-bottom: 10px;
}
.leftbox {
	width: 360px;
	float: left;
}
.rightbox {
	width: 360px;
	float: right;
}
.minitext {
	font-size: 84%;
}



#profbox {
	background-color:#F2EDE9;
	border:1px solid #B8A698;
	padding:10px;
	margin-bottom:20px;
}
#profbox h3 {
	font-size:146.5%;
}
#profbox #prof img {
	border: 1px solid #B8A698;
}

#prof {
	width:100%;
}
#prof th {
	text-align:left;
	vertical-align:top;
	padding:5px;
}
#prof td {
	padding:5px;
	vertical-align:top;
}
#prof b {
	font-size:146.5%;
	margin-right:15px;
}


.photo {
	background-image:url(img/bg_photo.gif);
	background-repeat:no-repeat;
	width:750px;
}
.photobox {
	float:left;
	width:220px;
	padding:5px 14px;
	display:block;
}
.photobox img {
	border:1px solid #B8A698;
}


.framebox {
	margin-bottom: 20px;
	display:block;
}
.framebox table {
	width: 750px;
	border-left: 1px solid #B8A698;
	border-top: 1px solid #B8A698;
}
.framebox th {
	border-right: 1px solid #B8A698;
	border-bottom: 1px solid #B8A698;
	text-align: left;
	vertical-align:top;
	padding: 10px;
	background-color: #F2EDE9;
}
.framebox td {
	border-right: 1px solid #B8A698;
	border-bottom: 1px solid #B8A698;
	padding: 10px;
	vertical-align:top;
}



#footer {
	margin: 0 auto;
	width: 750px;
	background-color: #3D3D3D;
	padding: 15px 30px;
	color: #C9C9C9;
}
#footer h2 {
	border-bottom: 1px dotted #C9C9C9;
	margin-bottom:5px;
}
.cate li {
	display:inline;
}
.cate a {
	color: #888888;
}
.cate a:hover {
	color:#E0E0E0;
}



#copy {
	line-height: 2.5em;
	text-align: right;
	color: #FFFFFF;
	font-size:77%;
	float:left;
	font-weight:normal;
}
#copy a {
	color:#FFFFFF;
}
#footer p {
	float:right;
}


#wrapper #ptop {
	text-align: right;
	margin: 0 55px 20px 0;
}

#wrapper .pagetop {
	font-size: 12px;
	line-height: 20px;
}
#bottom {
	width: 850px;
	background-image: url(img/bg_bottom.gif);
	height: 29px;
	background-repeat: no-repeat;
	margin: 0 auto;
}
#contact{
	background:url(img/contact_main.png) no-repeat center top;
	position:relative;
	width:750px;
	height:180px;
}
#contact .btn{
	position:absolute;
	top:60px;
	left:390px;
}
/*----------------------------------------------------
	#map_canvas
----------------------------------------------------*/
#map_canvas {
	margin:0 auto 20px;
	text-align: center;
}