/* Main Sections 
------------------------------------------------------------------------- */
* {
  margin: 0;
  padding: 0;
}
body {
  background-color: #ccc;
  width: 100%;
}

div, p, img, a, td, ul, ol {
    font-size: 1em; 
}

ol {
    margin-left: 1em;
    padding-left: 1em;
}
ol li {
    margin-left: 1em;
    padding: 0 0 .5em.3em;
    list-style: decimal;
}
h1, h2, h3, h4 {
  font-weight: bold;
  letter-spacing: .07em;
}
h1 { font-size: 218% }
h2 { font-size: 164%; }
h3 { font-size: 145%; }
h4 { font-size: 118%; letter-spacing: .15em }

a, a:link { 
  text-decoration: none;
  border-bottom:1px;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
  border-bottom:1px solid #00f;
}

a img, img {
    border: none;
}

ul {
    list-style: none;
    margin: 0 0 20px 1em;
}
li {
    list-style: none;
    padding-left: 1em;
    margin-bottom: 3px;
}

.clear {
  clear: both;
  height: 1px;
  margin: -1px 0 0;
  font-size: 1px;
}

#page {
  margin: 0 auto;
  width: 755px;
  background-color:#fff;
}

#contents {
  float: left;
  width: 530px;
  margin-top: 6px;
  margin-left: 7px;
  line-height: 1.5em;
  font-size: 90%;
}

/* Special text formatting 
------------------------------------------------------------------------------- */
h2, h2 a, h2 a:visited, h3, h3 a, h3 a:visited {
	color: #333;
}

h2, h2 a, h2 a:hover, h2 a:visited, h3, h3 a, h3 a:hover, h3 a:visited, #sidebar h2, cite {
	text-decoration: none;
}
h2 a:hover, h3 a:hover {
  color: #06c;
  border-bottom: 1px dotted #06c;
}

h2.pagetitle {
  margin-top: 30px;
  text-align: center;
}


h4.date-header {
  margin-top: 0;
  font-size: 90%;
  color: #f93;
  background: url(../../../images/date_icon.gif) no-repeat 38% 50%;
}

blockquote {
    margin: 0 0 0 30px;
    padding: 10px 0 0 20px;
    font-size: 88%;
    line-height: 1.5em;
    color: #666;
    background: url(../../../images/quotes.gif) no-repeat top left;
}

blockquote p { margin-top: 0; }

blockquote cite {
  margin: 5px 0 0;
  display: block;
}
code {
  font: 1em/2.5em 'Courier New', Courier, monospace;
  color: #444;
  white-space: pre; 
    width: 350px;
    height: auto;
	overflow: auto;
    display: block;
    border: 1px solid #999;
    border-width: 2px 0;
    padding: 1em;
    margin: 0 0 1em 0;
    background-color: #fafafa;
}
li code { width: 330px }

acronym, abbr, span.caps {
	font-size: 90%;
	letter-spacing: .07em;
	cursor: help;
	border-bottom: 1px dotted #3f3f3f;
}

.center { text-align: center;}
.alignright { float: right; }
.alignleft { float: left; }

hr { display: none; }


.error, .message {
    padding: 12px;
    background-color: red;
    color: #fff;
}
.message {
    background-color: green;
}

/* Header 
------------------------------------------------------------------------- */

#header {
  width:735px;
  height:138px;
  background-image: url(../../../images/header.jpg);
  background-repeat: no-repeat;
  background-position-x: center;
  background-color:#fff;
  margin-top: 30px;
  margin-bottom: 9px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 0px;
  padding-bottom: 0px;
}

#wrap_header a {
  text-decoration: none;
  border-bottom: none;
}

/* Search Form 
------------------------------------------------------------------------------- */
#search {
    position: absolute;
    right: 60px;
    top: 40px;
    padding: 15px 15px 0;
}
form.FSF_form {
    margin: 0;
    padding: 0;
    width: auto;
    text-align: right !important;
}

input.FSF_input { 
    display: inline;
    height: 17px;
    border: 1px solid #ddd;
    border-left-color: #c3c3c3;
    border-top-color: #7c7c7c;
    background: #fff url(../../../images/input-bg.gif) repeat-x top left;
    margin: -1px 3px 0;
    padding: 3px 0 0;
}
input.FSF_submit { 
    display: inline;
    margin: -1px 0 0;
    padding: 0;
    height: 22px;
    line-height: 22px;
}


/* Post (main content entries)
------------------------------------------------------------------------- */
.post {
  margin:1em 0;
}

.post p {
  padding-top: 15px;
  line-height: 150%;
}

.post h3 {
  color: #f63;
  padding-bottom: 3px;
  margin-top: 5px;
  margin-bottom: 5px;
}
.post ul li {
  background: url(../../../images/tictac_orange.gif) no-repeat 0 6px;
  margin-left: 0em;
}

/* Related Links 
------------------------------------------------------------------------- */
#navlist li { 
    display: inline;
    list-style-type: none;
    padding-right: 20px;
}

/* UserComments 
------------------------------------------------------------------------- */                        
.comment {
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    position: relative;
    padding: 10px;
    overflow: hidden;
}
.commentAlt {
    background-color: #f4f4f4;
}
.commentAuthor {
    background-color: #ffc;    
}
.commentMe {
    background-color: #ccf !important;
    padding-top: 5px;
}
.commentNum {
    font-family: Arial, sans-serif;
    font-size: 50px;
    line-height: 30px;
    position: absolute;
    top: 0;
    right: 0;
    color: #f2f2f2;
    font-weight: bold;
    letter-spacing: -4px;
    z-index: 1;
}
.commentAlt .commentNum {
    color: #eaeaea;
}
.commentMe .commentNum {
    color: #b0b0ff;
}
.commentAuthor .commentNum {
    color: #f3f3bb;
}
.commentTitle {
    position: relative;
    z-index: 10;
    color: #999;
}
.commentTitle span {
    text-transform: uppercase;
    font-size: 86%;
}
.commentTitle strong {
  color: #693;
  font-size: 110%;
  text-transform: none;
  font-weight: normal;
  margin-right: 6px;
}
.comment .content {
    position: relative;
    z-index: 10;
}


/* Sidebar 
------------------------------------------------------------------------- */

#sidebar {
  float: left;
  width: 192px;
  margin: -10px 5px 0px 0px;
  padding: 0px 0px 0px 0px;
  font-size: 75%;
  line-height: 1.4em;
  color: #000;
}

/* サイドバータイトル */
#sidebar h2 {
  padding: 0px 0px 0px 0px;
  color: #666;
  height: 10px !important; /* for most browsers */
  height /**/:47px; /* for IE5/Win */
}

#sidebar li {
  margin: 0px;
}

#sidebar ul { 
  margin: 0px;
}

#sidebar ul ul.topnav li.category {
  padding: 6px 0px 0px 30px;
  list-style:none;
  color: #33746c;
  background-image:url(../../../images/side-subject.gif);
  background-position-x: left;
}

#sidebar div.sub ul li.category {
  list-style:none;
  color: #33746c;
  background-image:url();
  background-color:#eeeeee;
}

#sidebar div.sub ul li.last {
  margin-bottom:10px;
  list-style:none;
  color: #33746c;
  background-image:url();
  background-color:#EFF8F1;
}

#sidebar div.sub div.sub ul li.last {
  margin-bottom: -3px;
  list-style:none;
  color: #33746c;
  background-image:url();
  background-color:#EFF8F1;
}

#sidebar ul, #sidebar p {
  padding: 5px 0px 1em 0px;
  margin-left: 0px;
  background-color:#fff;
}

#sidebar ul ul {
  margin-top: 5px;
  margin-left: 0px;
  background-color:#fff;
}
#sidebar ul ul ul {
  border-bottom: none;
  margin-top: 5px;
  margin-left: -30px;
  margin-bottom: 0px;
  padding-top: 0px;
  padding-bottom: 3px;

  background-repeat: no-repeat;
  background-position-x: left;
  background-color:#fff;
}
#sidebar ul li ul li {
  background-image: url();
  background-repeat: no-repeat;
  background-color:#EFf8F1;
}

/* Footer 
------------------------------------------------------------------------- */

#footer {
  width:735px;
  height:10px;
  clear:both;
  background-image: url(../../../images/footer.jpg);
  background-repeat: no-repeat;
  background-position-x: center;
  background-color:#fff;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
}

#footer p {
  background-color:#cc0;
  text-align:right;
  padding: 20px 10px 20px 10px;
}

#footer a {border-bottom: none;}

#bw_footer {
  text-align:right;
  width:735px;
  height:10px;
  clear:both;
  background-color:#fff;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  font-size:12px;
}
#bw_footer a { border-bottom: none; }

/* Forms 
------------------------------------------------------------------------------- */
form {
	width: 360px;
	text-align: left;
	clear: both;
	padding-bottom: 20px;
	border: none;
}
form.full { width: 100%; }


fieldset {
    border: none;
}

legend {
	display: none;
}
form h3 {
	clear: both;
	padding: 15px 0 5px;
	font-size: 14px;
	font-family: Helvetica, Arial, sans-serif;
	color: #000;
	font-weight: bold;
}

form label,
form p {
	display: block;
	clear: both;
	width: 310px;
	font-size: 1em;
	line-height: 1.5em;
	padding: 0 0 9px;
}

form input {
	display: block;
	margin-top: 3px;
}

form select {
	float: left;
	display: block;
}

form label.first,
form label.city {
    clear: left;
    margin-right: 10px;
    width: 150px;
}

form label.second,
form label.state {
	float: left;
	clear: none;
	margin: 0 10px 0 0;
	width: 150px;
}
form label.state { width: 60px; }

form label.first input,
form label.city input,
form label.second input {
	float: left;
	width: 150px;
	padding: 0;
}

form label.state select {
	width: 60px;
	float: left;
	margin-top: 3px;
}

form label.zip,
form label.zip input {
	float: left;
	width: 80px;
}
form label.zip { clear: none; }

form label {
	float: left;
	clear: left;
	width: 310px;
	margin: 0;
	line-height: 1.5em;
}

form label input {
	float: left;
	width: 310px;
	padding: 0;
}

form input.radio,
form input#radiobutton_1,
form input#radiobutton_2,
form input#radiobutton_3,
form input#radiobutton_4 {
	clear: left;
	float: left;
	padding: 0;
	margin: 0;
}

form label.radio,
form label.radioitem {
	clear: none;
	margin: 0 0 0 25px;
	padding: 0 0 15px;
}

form input.checkbox,
form input#checkbox_1,
form input#checkbox_2,
form input#checkbox_3,
form input#checkbox_4 {
	clear: both;
	float: left;
	padding: 0;
	margin: 0;
}

form label.checkbox {
	clear: none;
	margin: 0 0 0 25px;
	padding: 0 0 15px;
}
/* style the form elements to look similar across browsers ... emulates Safari */
form label input,
form textarea {
    border: 1px solid #ddd;
    border-left-color: #c3c3c3;
    border-top-color: #7c7c7c;
    padding: 0 2px;
    height: 18px;
    line-height: 20px;
    background: #fff url(../../../images/input-bg.gif) repeat-x top left;
}
form input.checkbox,
form select {
    border: 1px solid #ddd;
    border-left-color: #c3c3c3;
    border-top-color: #7c7c7c;
    background-color: #fff;    
}
form textarea {
	margin-top: 3px;
	width: 383px;
	height: auto;
	display: block;
}

form label input.calc {
    text-align: right;
    width: 100px;
    clear: left;
    padding: 0;
}
form input.button {
    clear: left;
}

/* Special handling for images & alignment 
------------------------------------------------------------------------------- */

p img {
	padding: 0;
	max-width: 100%;
}

img.centered {
	display: block;
	margin: 0 auto;
}
img.alignright {
	padding: 4px;
	margin: 0 0 2px 7px;
	display: inline;
}
img.alignleft {
	padding: 4px;
	margin: 0 7px 2px 0;
	display: inline;
}

/* Fixes for RichText widgets
------------------------------------------------------------------------------- */
.MODX_RichTextWidget {
	float: left;
}

.MODX_RichTextWidget a {
	border: 0px;
}

.Title {
  border-left: #ca8 1em solid;
  border-bottom: dashed 1px #666;
  padding-left: 0.3em;
  font-weight: bold;
  font-size: 18px;
  color: #aaaa44;
}

.Code {
  line-height: 1.5em;
  border: #8b4513 1px solid;
  margin-top: 20px;
  padding-right: 5px;
  padding-left: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
  color: #000066;
  font-family: 'Courier New' , Monospace;
  background-color: #ff9933;
}

.bw_ad_a {
  height: 1ex;
  color: #00f;
  text-decoration: underline;
  font-family: Arial;
}
.bw_ad_a a {
  margin-bottom: 0px;
  padding-bottom: 0px;
  text-decoration: underline;
  font-family: Arial;
}
.bw_ad_a a:link {
  margin-bottom: 0px;
  padding-bottom: 0px;
  text-decoration: underline;
  font-family: Arial;
}
.bw_ad_a a:visited {
  margin-bottom: 0px;
  padding-bottom: 0px;
  text-decoration: underline;
  font-family: Arial;
}
.bw_ad_a a:hover {
  margin-bottom: 0px;
  padding-bottom: 0px;
  text-decoration: underline;
  font-family: Arial;
}
