@charset "utf-8";

*{ /* Reset default css of all browsers*/
padding: 0px;
margin: 0px;
}

/* General elements */

em{
font-style: normal;
font-weight: bold;
}

strong{
font-weight: bold;
color:red;
}

a, a:link{
color:#5050a0;
text-decoration: none;
}

a:hover, a:visited:hover{
color: orange;
}

a:visited{
color: #984a80;
}

.hidden{
display: none;
}

img{
border: 0px;
}

.accesskey{
font-size: 90%;
font-family: monospace;
margin: 0px 2px;
text-decoration: underline;
font-family: monosapce;
}

blockquote {
width: 85%;
margin: 20px 10px 20px 2em;
padding: 1em;
border-left: 10px solid #dde;
border-bottom: none;
background: #eef url(../img/banner/top_right.png) no-repeat right top;
color: #000;
}

cite{
font-size: 80%;
font-style: normal;
background: transparent url(../img/banner/arrow_hand.png) 20px 30% no-repeat;
padding-left: 50px;
}

cite:before {
content: "\"";
}

cite:after {
content: "\" \304b \3089 \5f15 \7528 ";
}

input,
textarea{
padding: 3px;
}

textarea{
width: 90%;
}

table{
width: 100%;
margin: 25px 10px;
border-collapse : collapse;
}

table caption{
background-color: #5f7786;
color: white;
width: 7em;
padding: 5px;
margin: 20px auto 40px auto;
}

thead{
border: 1px solid #777;
}

thead th{
vertical-align : middle;
text-align: center;
border-left: 1px solid white;
color: white;
background: #91afc7 url("../img/th.bg.png") bottom left repeat-x;
padding: 5px;
}

tbody th{
text-align: left;
color: white;
background-color:#5e7e8f;
border: 1px solid white;
padding: 5px 5px 5px 10px;
}

tbody th[colspan]{
text-align: center;
}

tbody td.ok,
tbody td.ok:hover{
color: white;
background-color:#006400;
}

tbody td.ng,
tbody td.ng:hover{
color: white;
background-color:#9e0000;
}

thead th:first-child{
border-left: 1px solid #777;
}

tbody td{
font-size: 90%;
border: 1px solid #777;
vertical-align : middle;
empty-cells : show;
padding: 10px 0.5em;
}

tbody td:hover{
background-color : #f3f3eb;
}

.right-box{
clear: right;
float: right;
margin: 10px 0px 15px 10px;
padding: 0px;
}

.left-box{
float: left;
margin: 15px 0px 10px 10px;
padding: 0px;
}

.shadow{
background: url("../img/shadow.png") no-repeat bottom right;
clear: right;
float: right;
margin: 10px 0px 15px 25px;
padding: 0px;
position: relative;
}
  
.shadow img {
display: block;
margin: -16px 0px -11px -40px;
padding: 4px;
position: relative;
}

/* Framework overview */

body{
background: #e4e6ef url("../img/gradation.png") left top repeat-x;
}

#content{
margin: 0px auto;
}

/* #head - contains logo, current-path, search form in the site */

#head h1{ /* DO NOT specify width, background */
float: left;
padding: 20px 0px;
text-indent: -9999em;
}

#head div#pan-navigation{ /* DO NOT specify padding, background */
padding: 13px 20px 15px 20px;
margin: 0px 25px;
font-size: 90%;
border-top: 1px solid #cdcdcd;
border-bottom: 1px solid #cdcdcd;
color: #444;
clear: left;
}

#head div#pan-navigation p.time{
float: left;
width: 300px;
}

#head div#pan-navigation p.nav{
width: 100%;
text-align: right;
}

p.description{
display:none;
}

#form{ /* DO NOT specify width */
padding-top: 25px;
float: left;
text-align: right;
height: 70px;
}

#form h2{
width: 250px;
height: 17px;
margin-bottom: 7px;
background: white url("../img/sitesearch.png") left top no-repeat;
}

#form h2 label{
display: none;
}

#form dl dt{
display: none;
}

#form p{
font-size: 90%;
margin-left: 25px;
margin-bottom: 5px;
}

#form p input.text-box{
color: #777;
font-size: 90%;
padding: 3px;
width: 300px;
}

#form p input.text-box:hover{
color: #333;
}

#form p input.submit{
font-size: 90%;
padding: 0px 2px;
letter-spacing: 2px;
}

/* #body  - contains main content, and their meta information  */

#body{
margin: 30px 0px 0px 290px;
}

#body #main{
float: right;
width: 100%;
padding: 0px 0px 50px 0px;
margin: 0px 25px 0px 0px;
}

#body #meta{
float: right;
width: 230px;
padding: 0px 25px 0px 0px;
margin: 0px 0px 0px -290px;
font-size: 85%;
}

#body #pr{
padding: 40px 20px 0px 0px;
margin: 0px 25px 10px 25px;
height: 150px;
font-size: 160%;
font-weight: bold;
overflow:hidden;
color: white;
text-indent: -9999em;
background: white url("../img/PR/PR.1280.png") left top no-repeat;
}

br#end-body{
clear:left;
}

/* #body > #meta */

#body #meta h3{
text-align: center;
padding: 25px 0px 5px 0px;
margin-bottom: 10px;
border-bottom: 1px dashed #acacac;
}

#body #meta ul{
list-style: none none inside;
margin: 10px 0px;
}

#body #meta ul li{
margin: 5px 0px;
}

#body #meta p{
margin: 10px 0px;
}

#nl{
margin-bottom: 20px;
}

#nl h2{
font-size: 100%;
text-align: center;
padding: 5px;
margin-bottom: 5px;
background-color: #c8c8c8;
color: white;
}

#body #meta #nl h3{
border: none;
text-align: left;
padding: 8px 0px 5px 40px;
margin: 0px;
font-size: 90%;
background: white url(../img/item/item1.png) 3px center no-repeat;
}

#body #meta #nl h3#item2{
background-image: url(../img/item/item2.png);
}

#body #meta #nl h3#item3{
background-image: url(../img/item/item3.png);
}

#body #meta #nl h3#item4{
background-image: url(../img/item/item4.png);
}

#nl ol{
padding: 10px 0px 0px 0px;
list-style: none none inside;
}

#nl ol ul{
display:none;
}

#nl ol li{
padding: 4px 7px;
margin-bottom: 4px;
border: 1px solid #c6c6c6;
}

#nl ol li:hover{
background: #f3f3f3 none right bottom no-repeat;
}

#nl ol li a{
color: #555;
font-weight: bold;
text-decoration: none;
}

.recent,
.archives{
padding-left: 20px;
}

.recent li,
.archives li{
list-style: disc url("../img/list.png") outside;
}

/* #body > #main */

#body #main{
line-height: 150%;
}

#body #main p, #body #main table, #body #main h3,
#body #main h4,#body #main h5, #body #main address,
#body #main div,#body #main img{
padding-left: 20px;
}

#body #main p{
padding: 12px 0px 12px 20px;
}

#body #main ul,
#body #main ol,
#body #main dl,
#body #main pre{
padding: 15px 0px 15px 40px;
}

#body #main dl.em dt{
float: left;
}

#body #main dl dd{
padding: 5px 0px 5px 35px;
background: transparent url(../img/arrow.png) 3px 40% no-repeat;
}

#body #main p.forthback{
font-size: 90%;
text-align: right;
}

#body #main p.forthback a.btn_next{
margin-left: 1em;
}

#body #main h2{ /* DO NOT specify width */
font-size: 125%;
border-bottom: 1px solid #6c616d;
padding: 7px 0px 5px 20px;
margin: 5px 0px 25px 0px;
background: transparent url(../img/h2.png) left bottom repeat-x;
}

#body #main h2 a{
color: black;
}

#body #main h3{
border-left: 0.5em solid #8d5191;
border-bottom: 1px solid #d6d6d6;
padding: 5px 15px;
margin: 25px;
}

#body #main ol.index{
width: 75%;
font-size: 90%;
margin: 20px 5px 20px 25px;
background-color: #eee;
border: 1px solid #aaa;
list-style-position: inside;
padding: 10px 20px;
}

#body #main ol.index a{
text-decoration: none;
}

#body #main .catcher{
width: 75%;
font-size: 90%;
margin: 20px 5px;
background-color: #e0ecff;
border: 1px solid green;
list-style-position: inside;
padding: 10px 20px;
}

#body #main #screen h2{
display: none;
}

#body #main #screen p{
margin-bottom: 15px;
text-align: right;
}

#body #main #screen select{
font-size: 80%;
}

#body #main #screen option{
padding-left: 5px;
}

#body #main div.reply dl,
#body #main dl.post-info{
padding: 10px 0px 10px 30px;
color: #608020;
}

#body #main div.reply dl dt,
#body #main div.reply dl dd,
#body #main dl.post-info dt,
#body #main dl.post-info dd{
display: inline;
font-size: 85%;
padding: 0px;
background-image: none;
}

#body #main div.reply dl dt:after,
#body #main dl.post-info dt:after{
content: ": ";
}

#body #main div.reply dl dd:after,
#body #main dl.post-info dd:after{
content: " | ";
}

.alpslab-slide{
margin-left: 100px;
}

fieldset.bbs{
width: 90%;
padding-bottom: 40px;
margin: 20px 5%;
border: 1px solid #ccc;
}

fieldset.bbs legend{
text-align:center;
padding: 3px 15px;
margin: 0px 0px 10px 30px;
border: 1px solid #ccc;
}

p.comment-status{
border: 1px solid #ccc;
text-align: center;
width: 80%;
padding: 10px 0px;
margin: 20px auto;
background: white url(../img/banner/stripe.png) left top repeat-x;
}

#body #main dl.url{
padding: 0px;
margin: 0px;
}

#body #main dl dt{
font-weight: bold;
margin-bottom: 10px;
}

#body #main dl dd,
#body #main dl.form dd{
background: white none;
}

#body #main dl.url dd{
border: 1px solid #aaa;
font-size: 80%;
padding: 0px 1em;
margin-top: 10px;
font-family: monospace;
background: #eee none;
}

/* #foot - contains links to non-primitive contents and copyright */

#foot{
clear: both;
padding: 15px 0px;
margin: 40px 0px 0px 0px;
line-height: 170%;
font-size: 85%;
letter-spacing: 1px;
border-top: 1px solid #555;
background: #b8b6b6 url(../img/foot.bg.png) bottom right repeat-x;
color: white;
}

#foot a{
color: white;
text-decoration: none;
}

#foot a:hover{
font-weight: bold;
}

#foot p, #foot ul{
text-indent: 100px;
}

#foot ul li{
display: inline;
margin-right: 10px;
}

#foot ul li:before{
content: "|";
margin-right: 20px;
}

#foot ul li:first-child:before{
display:none;
}

/* calender related elements */

div#calender table{
margin: 0px;
}

div#calender td{
text-align: center;
padding: 0px;
}

div#calender td.saturday,
div#schedule dt.saturday{
color: blue;
font-weight: bold;
}

div#calender td.holiday,
div#schedule dt.holiday,
div#schedule span.h-name{
color: red;
font-weight: bold;
}

div#calender td.today{
font-weight: bold;
background: white url(../img/today.bg.png) left top repeat-x;
}

div#schedule span.h-name{
margin-left: 1em;
}

div#calender td a{
display: block;
background: #bfbfbf;
color: white;
}

div#body div#main div#schedule dl{
margin: 2em 0;
border-bottom: 1px dotted #ccc;
}

div#body div#main div#schedule dt{
padding: 5px 1em;
border-top: 1px dotted #ccc;
}

div#body div#main div#schedule dd{
padding: 3px;
margin: 0.5em 2em;
background: white none;
}

/* Reading marathon related element */

p.cover{
float: left;
}

div.book-information{
float: left;
padding: 0px;
margin: 20px 0px 0px 0px;
}

div.book-information strong{
font-size: 110%;
}

div.book-information ul{
font-size: 85%;
}

/* Other */

ul.navi{
text-align: center;
}

ul.navi li{
display: inline;
padding: 0px 1em 10px 25px;
background: url(../img/banner/arrow.png) left top no-repeat;
}

#back-t,
.top,
form#admin,
address{
margin : 0 1em;
text-align: right;
font-size: 80%;
}

/* Framework */

#wrapper1{
padding-left: 4px;
background: white url("../img/shadow/shadow-left.png") left top repeat-y;
width: 90%;
margin: 0px 5%;
}

#wrapper2{
padding-right: 4px;
background: white url("../img/shadow/shadow-right.png") right top repeat-y;
}

#head h1{
width: 500px;
background: transparent url("../img/logo/1024.png") 40px 15px no-repeat;
}

#foot p,
#foot ul{
text-indent: 30px;
}
