body {
  margin: 0 20px;
  text-align: center;
  font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;;
  font-size: 1em
  padding-bottom: 20px;
  background-color: #ccc;
}

a:hover {
  color: #f00;
  text-decoration: none;
}

em { 
  font-weight: bold;
  font-style: normal;
}

/* Header */

div#header {
  width: 910px;
  margin: 0 auto;
  text-align: left;
  background-color: #fff;  
  border-right: 1px solid #bbb;
  border-left: 1px solid #bbb;
}

div#header  h1.siteName {
  margin: 0;
  padding: 10px 20px 10px 20px;
  height: 81px;

}

div#header div.globalNavigation {
  float: right;
  padding: 10px 20px 0 0;
  text-align: right;
}

div#header div.globalNavigation p.userName {
  margin: 0;
  padding: 0 0 5px 0;
  font-size: 1em;
}

div#header ul.navigation {
  margin: 0;
  padding: 0;
}

div#header ul.navigation li {
  display:inline;
  margin-left: 5p#x;
  font-size: 0.8em;
}

/* Content */

div#content {
  position: relative;
  min-height: 400px;
  width: 910px;
  margin: 0 auto 5px auto;
  padding: 0 0 10px 0;
  text-align: left;
  background-color: #fff;
  border-right: 1px solid #bbb;
  border-bottom: 1px solid #bbb;
  border-left: 1px solid #bbb;
  -webkit-border-bottom-right-radius: 10px;
  -webkit-border-bottom-left-radius: 10px;
  -moz-border-radius-bottomright: 10px;
  -moz-border-radius-bottomleft: 10px;
}

div#topImage {
  text-align: center;
  margin: 0 0 20px 0;
  padding: 0;
  height: 280px;
}

div#loginContainer {
  position: relative;
}

div#loginContainer div.description {
  margin: 0 20px 0 463px;
  min-height: 251px;
}

div#loginContainer div.description h2 {
  margin: 0 0 10px 0;
  padding: 0;
}

div#loginContainer div.description p {
  margin: 0 0 10px 0;
  line-height: 1.5em;
}

div#login {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  width: 385px;
  margin: 0 20px;
  padding: 16px 20px 11px 20px;
  background-color: #eee;
  border: 1px solid #ccc;
}

div#login input.text, div#register input.text, div#forgotPass input.text, div#resetPass input.text {
  margin: 0 0 10px 0;
  padding: 3px;
  width: 375px;
  font-size: 1em;
}

/* Login */
div#login div.submit {
  text-align: right;
}

div#login ul.navigation {
  margin: 0;
  padding: 0 0 0 20px;
}

div#login ul.navigation li {
  margin-bottom: 5px;
  font-size: 0.9em;
}

div#loginError {
  margin: 0;
  padding: 0;
}

div#loginError div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 20px 0 20px;
  padding: 10px;
  width: 403px;
  border: 1px dashed #f00;
  background-color: #ffe5e5;
  font-size: 0.9em;
  color: #f00;

}

/* Register */
div#register {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  width: 385px;
  margin: 0 auto 10px auto;
  padding: 20px 20px 15px 20px;
  background-color: #eee;
  border: 1px solid #ccc;
}

div#register select.text {
  margin: 0 0 10px 0;
  padding: 3px;
  width: 80px;
  font-size: 1em;
}

div#register label {
  display: block;
}

div#register h2.pageName {
  margin: 0 0 10px 0;
  font-size: 1em;
}

div#register p.description {
  margin: 0 0 10px 0;
  line-height: 1.5em;
}

div#register div.submit {
  text-align: right;
}

div#register ul.navigation {
  margin: 0;
  padding: 0 0 0 20px;
}

div#register ul.navigation li {
  margin-bottom: 5px;
  font-size: 0.9em;
}

div#registerSuccess div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #00f;
  background-color: #e5e5ff;
  font-size: 0.9em;
  color: #00f;
}

div#registerError div.message, div#registerError div.error-message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #f00;
  background-color: #ffe5e5;
  font-size: 0.9em;
  color: #f00;
}

/* For got pass */
div#forgotPass {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  width: 385px;
  margin: 0 auto 10px auto;
  padding: 20px;
  background-color: #eee;
  border: 1px solid #ccc;
}

div#forgotPass h2.pageName{
  margin: 0 0 10px 0;
  font-size: 1em;
}

div#forgotPass p.description {
  margin: 0 0 10px 0;
  line-height: 1.5em;
}

div#forgotPass div.submit {
  text-align: right;
}

div#forgotPassSuccess div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #00f;
  background-color: #e5e5ff;
  font-size: 0.9em;
  color: #00f;
}

div#forgotPassError div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #f00;
  background-color: #ffe5e5;
  font-size: 0.9em;
  color: #f00;
}

/* Reset pass */
div#resetPass {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  width: 385px;
  margin: 0 auto 10px auto;
  padding: 20px;
  background-color: #eee;
  border: 1px solid #ccc;
}

div#resetPass h2.pageName {
  margin: 0 0 10px 0;
  font-size: 1em;
}

div#resetPass p.description {
  margin: 0 0 10px 0;
  line-height: 1.5em;
}

div#resetPass div.submit {
  text-align: right;
}

div#resetPassSuccess div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #00f;
  background-color: #e5e5ff;
  font-size: 0.9em;
  color: #00f;
}

div#resetPassError div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #f00;
  background-color: #ffe5e5;
  font-size: 0.9em;
  color: #f00;
}

div#activateSuccess div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 auto 10px auto;
  padding: 10px;
  width: 403px;
  border: 1px dashed #00f;
  background-color: #e5e5ff;
  font-size: 0.9em;
  color: #00f;
}

/* Policy */
div#policy {
  margin: 0 20px;
}

div#policy h2.pageName{
  margin: 0 0 10px 0;
  font-size: 1.3em;
}

/* Main */
div#main {
  float: right;
  margin: 0 20px 0 0
;
  width: 654px;
}

div#main label {
  display: block;
}

div#main label.checkbox, div#main div.checkbox label, div.checkbox {
  display: inline;
}

div#main div.select label, div#main div.select {
  display: inline;
}

div#register div.select label, div#register div.select {
  display: inline;
}

div#main input.text {
  margin: 0 0 10px 0;
  padding: 3px;
  font-size: 1em;
  width: 644px;
}

div#main textarea.text {
  margin: 0 0 10px 0;
  padding: 3px;
  width: 644px;
  font-size: 1em;
}

div#main select.text {
  margin: 0 0 10px 0;
  padding: 3px;
  width: 80px;
  font-size: 1em;
}

div#main div.submit {
  text-align: right;
}

div#main div.submit input {
  width: 100px;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

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

div.pagination {
  margin: 0 0 10px 0;
  padding: 0;
}

/* Pagination */
div.pagination span {
  border:0;
  margin:0;
  padding:0;
  font-size:11px;
  margin-right: 5px;
}

div.pagination a{
  border:solid 1px #9aafe5;
  margin-right: 5px;
}

div.pagination span.previous-off,
div.pagination span.next-off {
  border:solid 1px #DEDEDE;
  color:#888888;
  display:block;
  float:left;
  font-weight:bold;
  margin-right: 5px;
  padding:3px 4px;
}

div.pagination span.next a,
div.pagination span.previous a {
  font-weight:bold;
} 

div.pagination span.current{
  background:#2e6ab1;
  color:#FFFFFF;
  font-weight:bold;
  display:block;
  float:left;
  padding:4px 6px;
}

div.pagination a:link,
div.pagination a:visited {
  color:#0e509e;
  display:block;
  float:left;
  padding:3px 6px;
  text-decoration:none;
}

div.pagination a:hover{
  border:solid 1px #0e509e;
}

div#main div.profileSuccess div.message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 0 10px 0;
  padding: 10px;
  border: 1px dashed #00f;
  background-color: #e5e5ff;
  font-size: 0.9em;
  color: #00f;
}

div#main div.errorMessage div.message, div#main div.errorMessage div.error-message {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin: 0 0 10px 0;
  padding: 10px;
  border: 1px dashed #f00;
  background-color: #ffe5e5;
  font-size: 0.9em;
  color: #f00;
}

div#bookEdit img {
  vertical-align: top;
}

div#bookEdit img.bookImage {
  float: left;
  margin: 0 20px 20px 0;
  padding: 5px;
  border: 1px solid #808080;
}

div#bookEdit p {
  margin: 0 0 5px 0;
  padding: 0;
  font-size: 0.9em;
}

div#bookEdit p.title {
  font-size: 1.2em;
  font-weight: bold;
}

div#proposedTag {
  width: 654px;
  margin: 0 0 10px 0;
  font-size: 0.9em;
  line-height: 1.7em;
}

div#proposedTag a {
  margin: 0 0.5em 0 0;
}

div#proposedTag a.selectedTag {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 3px;
  background:#2e6ab1;
  color:#fff;
  text-decoration: none;
}

div#proposedTag p {
  margin: 0;
  padding: 0;
}

div#content div.globalNavigation {
  padding: 15px 0;
  width: 216px;
  background-color: #eee;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  -webkit-border-top-right-radius: 10px;
  -webkit-border-bottom-right-radius: 10px;
  -moz-border-radius-topright: 10px;
  -moz-border-radius-bottomright: 10px;
}

div#content div.globalNavigation ul {
  margin: 0;
  padding: 0;
}

div#content div.globalNavigation ul li {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

div#content div.globalNavigation ul li a{
  display: block;
  width: 176px;
  padding: 5px 20px;
}

div#content div.globalNavigation ul li a:hover {
  background-color: #e0e0e0;
}

div#content div.tagList {
  padding: 20px;
  width: 176px;
}

div#content div.tagList ul {
  margin: 0;
  padding: 0;
}

div#content div.tagList ul li {
  margin: 0 0 5px 0;
  padding: 0;
  list-style-type: none;
  font-size: 0.9em;
}

div#content div.tagList ul li a.selectedTag {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 3px;
  background:#2e6ab1;
  color:#fff;
  text-decoration: none;
}

div#main h2.pageName {
  margin: 0 0 10px 0;
  padding: 6px 10px;
  height: 25px;
  background: url("/img/pageName.png") no-repeat;
  font-size: 1.3em;
  color: #fff;
}

div#main ul.viewSwitch {
  margin: 0;
  padding: 0;
  text-align: right;
}

div#main ul.viewSwitch li {

  display:inline;
  font-size: 0.9em;
}

div#listView {
  margin: 0;
  padding: 0;
}

div#listView img.bookCover {
  float: left;
  /* Images margin is inline;  */
  margin: 0 0 10px 0;
  padding: 2px;
  border: 1px solid #808080;
}

div#listView div.description {
  margin: 0 0 0 78px;
  padding: 0;
}

div#listView hr {
  margin: 10px 0;
  padding: 0 0 0;
  border-style: dashed;
  clear: both;
}

div#listView p.title {
  margin: 0 0 5px 0;
  font-weight: bold;
}

div#listView p.author {
  font-size: 0.8em;
  margin: 0 0 5px 0;
}

div#listView p.publisher {
  font-size: 0.8em;
  margin: 0 0 5px 0;
}

div#listView p.rating {
  font-size: 0.8em;
  margin: 0 0 10px 0;
}

div#listView p.rating img {
  vertical-align: top;
}

div#listView ul {
  margin: 0;
  padding: 0;
}

div#listView li {
  margin-right: 5px;
  display:inline;
  font-size: 0.8em;
}

ul#thumbnailView {
  margin: 0;
  padding: 0;
  list-style: none;
}

ul#thumbnailView li {
  display: inline;
}

ul#thumbnailView li a {
  float: left;
  display: block;
  /* margin-right HTML inline.  */
  margin: 0 20px 10px 0;
  padding: 5px;
  border: 1px solid #808080;
}

ul#thumbnailView li a:hover {
  border: 1px solid #f00;
}

ul#thumbnailView li {
  margin: 0 0 10px 0;
}

div#main div.calilLibrary div.list p, div#main div.library div.list p {
  margin: 0 0 5px 0;
  padding: 0;
  width: 327px;
  display: block;
  float: left;
  font-size: 0.9em;
}

div#main div.calilLibrary div.list p img, div#main div.library div.list p img {
  vertical-align: top;
}

div#main div.library div.list p span.rentalOK,
div#main div.library div.list p span.rentalNG,
div#main div.library div.list p span.none {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  margin: 0 3px 0 0;
  padding: 3px;
  color:#fff;
  text-decoration: none;
}

div#main div.library div.list p span.rentalOK {
  background: #1776e5;
}

div#main div.library div.list p span.rentalNG {
  background: #e51616;
}

div#main div.library div.list p span.none {
  background: #808080;
}

div#main div.calilLibrary p.loading img, div#main div.library p.loading img {
 margin-right: 3px;
 vertical-align: top;
}

/* Footer */

div#footer {
  height: 1em;
  width: 910px;
  margin: 0 auto;
  text-align: left;
  clear: both;
}

div#footer ul.navigation {
  margin: 0;
  padding: 0 20px;
}

div#footer ul.navigation li {
  margin-right: 1em;
  display:inline;
  font-size: 0.9em;
}

div#footer ul.navigation li address {
  display:inline;
}
