a {color: #B40000;}
a:visited, a:hover, a:active {color: #E90000;}
a:hover, a:active {text-decoration: none;}

body {
  background: url(img/bg.jpg) repeat 0 -5px;
  padding-bottom: 30px;
}

/*** layout blocks ***/
#header {
  text-align: center;
  background: url(img/header_bg.jpg) repeat-x center top;
  width: 100%;
  height: 373px;
  margin: 0;
  padding: 0;
}
#header-inner {
  width: 935px;
  height: 373px;
  margin: 0 auto;
}
#header-inner img {
  margin: 0 auto;
}

#wrapper {
  text-align: center;
  background: url(img/wrapper_bg.png) repeat-x;
  margin: 0;
}

ul#mainmenu {
  text-align: left;
  width: 920px;
  height: 47px;
  margin: 0 auto;
  padding: 23px 0;
}
* html ul#mainmenu {margin: 0;}

ul#mainmenu li {
  float: left;
  display: inline;
  margin: 0;
  padding: 0;
}

#contents-head {
  clear: both;
  background: url(img/contents_head.png) no-repeat;
  width: 900px;
  height: 26px;
  margin: 0 auto;
}

#contents-foot {
  background: url(img/contents_foot.png) no-repeat;
  width: 900px;
  height: 26px;
  margin: 0 auto;
}


/*** contents layout ***/
#contents {
  text-align: left;
  background: url(img/contents_bg.png) repeat-y;
  width: 900px;
  margin: 0 auto;
}

#contents-left {
  float: left;
  display: inline;
  width: 175px;
  margin: 2px 18px;
}

#contents-body {
  float: left;
  display: inline;
  background: url(img/contents_body.jpg) repeat-y;
  width: 474px;
}

#contents-right {
  float: left;
  display: inline;
  text-align: center;
  width: 215px;
}

/*** contents-left ***/
dl#information {
  font-size: 13px;
  margin: 5px;
  padding: 0;
}

dl#information dt {
  margin: 5px 0;
  padding: 0;
}

dl#information dd {
  margin: 0;
  padding: 0 0 5px;
  border-bottom: 1px dotted black;
}

/*** contents-body ***/
ul#page-navi {
  width: 390px;
}
ul#page-navi li {
  float: left;
  display: inline;
  margin: 0 20px 0 0;
  padding: 10px 0;
}

#contents-body h2 {
  margin-bottom: 20px;
}
.section {
  margin: 10px 10px 20px;
}

.section2 {
  margin: 10px 10px 20px;
  text-align:center;
}

.section h3 {
  color: #B30000;
  font-size: 14px;
  line-height: 1;
  background: url(img/h3_bg.png) no-repeat;
  margin-bottom: 10px;
  padding: 12px 0 12px 40px;
}

.section .text-box1 {
  font-size: 12px;
  background-color: #FFFBE1;
  margin-bottom: 5px;
  padding: 0 10px;
  border: 2px solid #F7DBAD;
}

.section .text-box2 {
  font-size: 12px;
  background-color: white;
  margin-bottom: 5px;
  padding: 0 10px;
  border: 2px solid #CECECE;
}

.section .text-box3 {
  font-size: 12px;
  background-color: white;
  margin-bottom: 5px;
  padding: 0 10px;
  border: 2px solid #CECECE;
}

.section .text-box-qa {
  font-size: 12px;
  margin-bottom: 5px;
  padding: 5px 5px;
}

.section p {
  line-height: 1.8;
  margin: 10px 0;
}

.section table {
  font-size: 12px;
  text-align: left;
  line-height: 1.5;
  width: 390px;
  margin: 10px 0;
  border-collapse: collapse;
  border: none;
}
.section table * {
  border-collapse: collapse;
  border: none;
}
.section table tr {
  background: url(img/border1.png) no-repeat 0 bottom;
}
.section table tr th {
  vertical-align: top;
}
.section table tr th h4 {
  font-size: 12px;
  padding: 10px 5px 10px 15px;
  background: url(img/mark.png) no-repeat 0 13px;
}
.section table tr td {
  padding: 10px 0 10px 5px;
}
.section table p {
  line-height: 1.5;
  margin: 0 0 5px;
  padding: 0;
}

.page-top, .page-top:visited {
  float: right;
  color: black;
  font-size: 12px;
  text-decoration: none;
}
.page-top:hover, .page-top:active {
  color: #E90000;
}

a.link {
  background: url(img/link.png) no-repeat 0 50%;
  padding: 2px 0 0 10px;
}

/* index.html */
#index {
  text-align: center;
  margin-bottom: 20px;
}

#index2 {
  text-align:center;
  padding: 3px 20px 10px 20px;
}

#index2 table tr {
  background: url(img/border2.png) no-repeat 0 bottom;
}

#index2 table tr th {
  width: 120px;
}

.index-summary {
  text-align:left;
  color: #000000;
  background-color: #ffffff;
  margin: 5px 0;
  padding: 5px;
}

/* about.html */
#about {
  padding: 3px 20px;
}

/* entry.html */
#entry {
  padding: 3px 20px;
}
#entry table tr {
  background: url(img/border2.png) no-repeat 0 bottom;
}
#entry table tr th {
  width: 120px;
}

#entry .kodougu {
  float: left;
  display: inline;
  margin: 0 5px 5px 0;
}

#download-box {
  padding: 15px;
}
#download-btn {
  margin: 0 0 15px;
}
#adobe-reader {
  float: left;
  display: inline;
  margin-right: 10px;
}
#download-box p {
  line-height: 1.4;
  margin: 0;
}

/* schedule.html */
#schedule {
  padding: 3px 20px;
}

.schedule-summary {
  color: #5F0500;
  background-color: #EFE7BF;
  margin: 10px 0;
  padding: 10px;
}

ul.schedule-list {
  margin: 0 0 20px;
  padding: 0;
}
ul.schedule-list li {
  list-style: none;
  background: url(img/list_bg.png) no-repeat 0 bottom;
  margin: 0;
  padding: 12px 15px 10px 25px;
}

/* contact.html */
#contact {
  padding: 3px 20px;
}
#mailto {
  margin: 10px 0;
}
#contact-tel h4 {
  font-size: 12px;
  padding: 10px 5px 0 15px;
  background: url(img/mark.png) no-repeat 0 10px;
}
#contact-tel p {
  line-height: 1.3;
  margin: 5px 20px 10px;
}

#contact2 {
  margin: 10px 10px 20px;
}

/*** contents-right ***/
#contents-right .banner-box {
  margin: 0 auto 15px;
}

#contents-right .banner-box2 {
  margin: 0 auto 10px;
}

#contents-left .banner-box3 {
  margin: 30px 3px 0 0;
}


/* Q & A */

#qa {
  padding: 3px 20px;
}

.qa-summary {
  color: #5F0500;
  background-color: #EFE7BF;
  margin: 10px 0;
  padding: 10px;
}

ul.qa-list {
  margin: 0 0 20px;
  padding: 0;
}

ul.qa-list li {
  list-style: none;
  background: url(img/list_qabg.png) no-repeat 0 bottom;
  margin: 0;
  padding: 12px 15px 10px 30px;
}

#qa2 p {
  margin: 5px 0 10px 0px;
  padding: 3px 30px;
}

p.q {
	font-size: 12px;
	margin: 10px 5px;
	padding: 3px 0 3px 28px;
	background: url(img/ico01_q.gif) 9px 7px no-repeat #efefef;
}

p.a {
	font-size: 12px;
	margin: 10px 5px;
	padding: 3px 5px 3px 28px;
	background: url(img/ico02_a.gif) 9px 7px no-repeat;
}