*:after {
  display: block;
  clear: both; }

html {
  font-size: 0.9em;
  color: #333333;
  background-color: #f3f3f3;
  line-height: 1.56;
  font-family: "MS PGothic","Osaka",Arial,sans-serif; }
  html:lang(en) {
    font-family: Verdana, sans-serif; }
    html:lang(en) #main {
      line-height: 1.3; }

body {
  width: 898px;
  margin: 0 auto;
  background-color: white;
  border: 1px solid #dddddd; }

a img {
  border: none; }
a:link {
  color: blue; }
a:visited {
  color: navy; }
a:hover, a:active, a:focus {
  color: red; }

#site_name, #site_navi, #contents_navi {
  margin: 0;
  padding: 0; }

#site_name {
  float: left;
  padding-left: 12px; }
  #site_name img {
    vertical-align: bottom;
    margin: 15px 5px 8px; }
    #site_name img.address {
      margin-left: 15px; }

#site_navi {
  float: right;
  padding: 27px 15px 0 0; }

#contents_navi {
  clear: both;
  background-color: #05112b;
  background-image: url("/images/header/cnavi_bg.jpg");
  background-repeat: repeat-x;
  margin: 0;
  padding: 0 10px 0; }
  #contents_navi li {
    display: inline-block;
    background-image: url("/images/header/cnavi_line.jpg");
    background-repeat: no-repeat;
    background-position: right top;
    margin: 0;
    padding: 7px 10px 4px 7px; }
    #contents_navi li.current {
      font-weight: bolder; }
  #contents_navi a:link, #contents_navi a:visited {
    text-decoration: none;
    color: white; }
  #contents_navi a:hover, #contents_navi a:active, #contents_navi a:focus {
    text-decoration: none;
    color: #cccccc; }

#subcontents_navi {
  clear: both;
  background-color: white;
  background-image: url("/images/header/scnavi_bg.jpg");
  background-repeat: repeat-x;
  margin: 0;
  padding: 0 10px 0; }
  #subcontents_navi li {
    display: inline-block;
    background-image: url("/images/header/scnavi_line.gif");
    background-repeat: no-repeat;
    background-position: right center;
    margin: 0;
    padding: 7px 10px 4px 7px; }
  #subcontents_navi a {
    font-size: 90%; }
  #subcontents_navi a:link, #subcontents_navi a:visited {
    text-decoration: none;
    color: #666666; }
  #subcontents_navi a:hover, #subcontents_navi a:active, #subcontents_navi a:focus {
    text-decoration: none;
    color: black; }
  #subcontents_navi a:hover, #subcontents_navi a:active, #subcontents_navi a:focus {
    text-decoration: none;
    color: black; }
  #subcontents_navi li.current {
    font-weight: bolder; }

#tree_navi {
  margin: 0 0 20px;
  padding: 5px 10px 5px 17px;
  background-image: url("/images/header/tnavi_bg.jpg");
  background-repeat: repeat-x;
  background-position: 0px 0px;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #dddddd; }
  #tree_navi .current {
    font-weight: bolder; }
  #tree_navi li {
    display: inline-block; }

#main {
  width: 840px;
  margin: 0 auto; }
  #main:after {
    content: ""; }

#footer {
  padding: 10px 10px 0 5px;
  background-color: #f9f9f9;
  border-top: 1px solid #dddddd; }
  #footer a:link {
    color: #333333;
    text-decoration: none; }

address {
  text-align: right;
  font-size: smaller; }

.sitemap ul {
  margin-left: 30px;
  font-size: 130%;
  list-syle-type: disc; }
  .sitemap ul ul {
    font-size: 100%;
    margin-left: 0px;
    padding-left: 0px;
    list-style-type: disc; }
    .sitemap ul ul ul {
      font-size: 90%;
      padding-left: 20px;
      list-style-type: none; }
.sitemap a:link {
  text-decoration: none; }
.sitemap a:hover {
  text-decoration: underline; }

.member p {
  text-align: center; }
.member .large_photo {
  border-bottom: 1px solid gray;
  padding-bottom: 15px; }
.member strong {
  text-decoration: none; }
