/*
  base
 */
body {
  border-top: #de0000 5px solid;
  background: #F7F7F7;
}
/*
  columns layouts
 */
#main {
  background: #FFF;
}
.main_container {
  width: 958px;
  margin-right: auto;
  margin-left: auto;
  *zoom: 1;
}
.main_container:before,
.main_container:after {
  display: table;
  content: "";
  line-height: 0;
  clear: both;
}
.span_left {
  width: 195px;
  margin-right: 14px;
}
.span_center {
  width: 540px;
  margin: 0px;
}
.span_right {
  width: 195px;
  margin-left: 14px;
  position: relative;
  word-break: break-all;
}
.span_checkout {
  width: 700px;
}
.span_cart {
  width: 747px;
  margin-left: 2px;
}
.offset_checkout {
  margin-left: 128px;
}
.span_product {
  width: 745px;
  margin-left: 4px;
  position: relative;
}
.span_cart {
  width: 747px;
  margin-left: 2px;
}
.span_auth {
  width: 400px;
  margin-left: 278px;
}
.span_address {
  width: 458px;
  margin-left: 250px;
}

.span_complite {
  width: 747px;
  margin-left: 100px;
}

.page_title {
  margin: 0px;
  background: #F7F7F7;
  border: #EEE 1px solid;
  border-bottom: #AAA 1px solid;
  padding: 0px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
#title.page_title {
  margin-bottom: 25px;
}
#name.page_title {
  margin-bottom: 0px;
}
#name.page_title h2, #title.page_title h2, #result.page_title h2 {
  border-left: #314c99 4px solid;
  line-height: 140%;
  padding: 4px 8px 3px 8px;
  color: #111;
  font-weight: bold;
  font-size: 18px;
  margin: 7px 7px 7px 8px;
}
#result.page_title h2 span#number{
  border-left: #333 1px solid;
  padding-top: 5px;
  padding-left: 8px;
  font-weight: normal;
  font-size: 13px;
}
.span_main_column {
  width: 958px;
  padding-top: 30px;
  padding-bottom: 100px;
  border: #E8E8E8 1px solid;
  border-radius: 4px;
  margin-top: -3px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
.span_empty {
  width: 480px;
  margin-left: 239px;
}
/*
 common
 */
.product_code {
  font-size: 0.8em;
  font-weight: normal;
  color: #333;
}
.important {
  font-size: 1.4em;
  margin: 20px 0px;
  padding: 20px;
  border: #CCC 1px solid;
  text-align: center;
  line-height: 1.5em;
  font-weight: bold;
  color: #222;
}
.required {
  color: #F06;
  margin-left: 5px;
}
.strike-price {
  color: #333;
  font-size: 0.85em;
  font-weight: bold;
}
/*
 common button
 */
button#proceed {
  float: right;
  margin-left: 5px;
}
button#ok {
}
a.back {
  display: block;
  background: url(images/backarrow.gif) 0px 5px no-repeat;
  padding-left: 15px;
  color: #666;
  font-size: 0.9em;
  margin: 10px 0px 0px 5px;
  width: 150px;
}

a.test {
  border: ridge;
}

/*
  common forms
 */
ul.errorlist {
  list-style-type: none;
  margin-left: 0px;
  margin-bottom: 5px;
}
ul.errorlist li {
  background: url(images/arrow.gif) 0px 2px no-repeat;
  padding-left: 15px;
}
.errorlist, .error {
  color: #F06;
}
/*
  header
 */
#header #logo {
  margin: 46px 0px 45px 0px;
  float: left;
}
#header #banner {
  margin: 35px 0px 0px 0px;
  float: right;
}
/*
 
 */
form.addcart {
  margin-bottom: 0px;
}

/*
  header
 */
#topbar {
  margin-top: 0px;
  margin-bottom: 17px;
  background: #FAFAFA;
  border: #E8E8E8 1px solid;
  padding: 6px;
  height: 26px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
#topbar #search_form {
  float: left;
  margin-left: 0px;
}
#topbar #search_form #label {
  font-weight: bold;
  margin-left: 10px;
  margin-right: 10px;
  font-size: 12px;
  display: inline-block;
  margin-top: 3px;
}
#topbar #search_form input#id_keyword {
  width: 242px;
}

.ui-autocomplete {
    max-height: 225px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 20px;
}

#topbar ul#user a {
  color: #333;
}
#topbar ul#user span {
  font-weight: normal;
  margin-left: 10px;
}
#topbar ul#user {
  float: right;
  margin: 4px 10px 0px 0px;
  font-size: 0.95em;
  font-weight: bold;
  list-style-type: none;
}
#topbar ul#user li {
  float: left;
  margin-left: 28px;
  padding-left: 18px;
  background: url(images/arrow2.gif) 0px 3px no-repeat;
  line-height: 19px;
}
/*
  footer
 */
div#footer-border {
  margin-top: 40px;
  height: 4px;
  width: 100%;
  background: url(images/footer-border.gif) 0px 0px repeat;
}
#footer {
  background: #F7F7F7;
}
a#pagetop {
  float: right;
  margin-top: 15px;
}
img#opensorce {
  margin-top: 19px;
  float: left;
}
div#kamakura {
  margin-top: 10px;
  float: left;
  /*margin-left: 25px;*/
}
div#armuniversity {
  margin-top: 10px;
  margin-left: 20px;
  float: left;
}

div#copyright {
  clear: left;
  margin-top: 150px;
  margin-bottom: 10px;
}
#footer #informations li {
  line-height: 25px;
  padding-left: 0px;
  margin-left: 0px;
  list-style: none;
  /*background: url(images/arrow.gif) 1px 0 no-repeat #F7F7F7;*/
}
#footer #informations ul {
  padding-left: 0px;
  margin-left: 0px;
}
#footer #informations {
  margin: 50px 0  30px 0;
}
#footer #informations a {
  color: #999;
  font-weight: bold;
}
/*
  dotted wide line
 */
div.dwl {
  margin: 0px 0px 10px 0px;
  height: 4px;
  width: 100%;
  background: url(images/dwl.gif) 0px 0px repeat;
}
/*
  left pane
 */
div.left-panel {
  padding: 0px;
  margin: 0px 0px 35px 0px;
  color: #444444;
}
div.left-panel div.cont{
  margin-top: 20px;
}
div.left-panel#index ul {
  list-style-type: none;
  margin-left: 0px;
}
div.left-panel#index a {
  color: #333333;
}
div.left-panel#index li {
  background: url(images/arrow.gif) 0px 2px no-repeat;
  margin: 7px 0px 0px 0px;
  padding-left: 15px;
}
div.left-panel#pdf a{
  color: #333333;
  margin-top: 10px;
}
div.left-panel#pdf ul {
  list-style-type: none;
  margin-left: 0px;
}
div.left-panel#pdf li {
  background: url(images/arrow.gif) 0px 2px no-repeat;
  padding-left: 15px;
}
div.left-panel#book a {
  color: #333333;
}
div.left-panel#book img {
  margin-top: 7px;
}
div.left-panel#book ul {
  margin: 0px;
  list-style-type: none;
}
/*
  delivery
 */
div.right-panel #arrival.date{
  color: #555555;
  font-weight: bold;
  background: #F5F5F5;
  font-size: 0.9em;
  padding: 4px 0px 4px 12px;
  margin-bottom: 3px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
}
div.right-panel #arrival.date span{
  position:absolute;
  left: 130px;
  font-size: 1.0em;
}
/*
  right pane
 */
div.right-panel {
  padding: 0px;
  margin: 0px 0px 30px 0px;
  font-size: 0.9em;
}
div.right-panel div.cont{
  margin-top: 20px;
}
div.right-panel#channel .cont{
  margin: 0px;
  padding: 0px;
  border-left:#E5E5E5 1px solid;
  border-right:#E5E5E5 1px solid;
  border-bottom:#E5E5E5 1px solid;
}
div.right-panel#mag:after {
  clear: both;
  display: table;
  content: "";
  line-height: 0;
}
div.right-panel#mag {
  font-size:12px;
}
div.right-panel#mag a {
  color: #333333;
  text-decoration: none;
}
div.right-panel#mag a:hover {
  color: #777777;
}
div.right-panel#mag ul{
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  border-left:#E5E5E5 1px solid;
  border-right:#E5E5E5 1px solid;
  border-bottom:#E5E5E5 1px solid;
}
div.right-panel#mag li {
  border-top:#AFAFAF 1px dotted;
  background: #FAFAFA;
  height: 64px;
  clear: both;
}
div.right-panel#mag li img {
  width: 50px;
  height: 50px;
  float: left;
  margin: 7px;
  border-radius: 5px;
}
div.right-panel#mag li div{
  padding: 7px 0px 0px 0px;
  width: 125px;
  float: left;
  word-wrap: break-word;
}
div.right-panel#wiki ul {
  margin-left: 1px;
  font-size:12px;
  list-style-type: none;
}
div.right-panel#wiki li {
  padding-left: 15px;
  background: #F00;
  background: url(images/arrow.gif) 0px 2px no-repeat;
  list-style: none;
}
div.right-panel#contribute{
  font-size:12px;
}
div.right-panel#contribute a {
  color: #666666;
  font-weight: bold;
}
div.right-panel#contribute ul {
  margin: 0px;
  list-style-type: none;
}
div.right-panel#contribute li {
  background: url(images/arrow.gif) 0px 2px no-repeat;
  background:#F5F5F5;
  padding: 5px 15px 5px 15px;
  margin-top: 5px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
}
/*
div.right-panel#workingday #holiday {
  margin: 0px 0px 15px 0px;
  color: #4f4f4f;
  font-size: 12px;
  border-radius: 4px;
}
div.right-panel#workingday #holiday #title{
  color: #FFF;
  background: rgb(142, 146, 153);
  font-weight: bold;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  text-align: center;
}
div.right-panel#workingday #holiday p{
  padding: 7px 5px 8px;
  margin:0;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-left: thin solid #ccc;
  border-right: thin solid #ccc;
  border-bottom: thin solid #ccc;
}
*/
div.right-panel#workingday #calendar {
  font: normal 12px/20px Helvetica, Arial, sans-serif;
  color: #000000;
  text-align: center;
}
div.right-panel#workingday #calendar .monthname {
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: rgb(142, 146, 153);
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
div.right-panel#workingday #calendar table{
  margin-bottom: 15px;
  width: 100%;
  background: rgb(248, 248, 248);
}
div.right-panel#workingday #calendar th {
  font-size: 11px/20px;
  color: #555;
  background: rgb(230, 232, 233)
}
div.right-panel#workingday #calendar td {
  text-align: center;
  color: #333;
}
div.right-panel#workingday #calendar .day {
  font-weight: bold;
  color: #FFF;
}
div.right-panel#workingday .legend {
  text-align: left;
  margin-left: 0px;
}
div.right-panel#workingday .today{
  font-size: 1.1em;
  text-decoration: underline;
}
div.right-panel#workingday .holiday {
  background: rgb(255, 197, 94);
}
div.right-panel#workingday .shipping {
  background: #5D96BC;
}
div.right-panel#workingday .business {
  background: #36688C;
}
/*
	top
 */
.center-panel div.cont{
  margin-top: 20px;
}
.center-panel#image {
  margin-bottom: 25px;
}
.center-panel#image a img{
  width: 500px;
  height: 500px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.center-panel#image #name {
  font-size: 15px;
  font-weight: bold;
  margin-top: 8px;
  margin-bottom: 4px;
}
.center-panel#image #description {
  font-size: 11px;
  width: 500px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.center-panel#image a {
  color: #333;
  text-decoration: none;
}
.center-panel#notes {
  border: 4px;
  border-color: #DDD;
  border-style: solid;
  margin-bottom: 30px;
}
.center-panel#notes li {
  margin: 15px;
}
.center-panel#pickups {
  margin-bottom: 45px;
}
.center-panel#pickup {
  margin-bottom: 25px;
}
.center-panel#pickup p#mag-latest-entry-image {
  text-align:center;
  margin-bottom: 20px;
}
.center-panel#pickup #mag-latest-entry {
  font-size: 0.85em;
  padding-bottom: 2px;
  font-weight: bold;
}
.center-panel#pickup #mag-latest-entry-title {
  font-size: 1.2em;
  padding-top: 2px;
  font-weight: bold;
}
.center-panel #recommend {
  margin-bottom: 60px;
}
.center-panel #recommend ul {
  list-style-type: none;
  margin-left: 0px;
}
.center-panel #recommend li.item {
  padding: 10px 0px 20px 0px;
  border-bottom: #DDD 1px solid;
  height: 120px;
  clear:both;
}
.center-panel #recommend li.item .thumbnail {
  float: left;
  width: 120px;
}
.center-panel #recommend li.item .info {
  float: left;
  width: 350px;
  margin-left: 20px;
  margin-top: 10px;
}
.center-panel #recommend li.item .info .name {
  font-size: 1em;
  font-weight: bold;
}
.center-panel #recommend li.item .info .short_note {
  margin-top: 15px;
  font-size: 0.95em;
}
.center-panel#supplier ul {
  list-style-type: none;
  padding: 0px;
  margin: 0px;
}
.center-panel#supplier li {
  float: left;
}
.center-panel#mailmagazine {
  margin-top: 40px;
}
.center-panel#mailmagazine div#category_title{
  font-size: 1.05em;
  font-weight: bold;
}
.center-panel#mailmagazine ul {
  list-style-type: none;
  margin-top: 25px;
  margin-left: 0px;
}
.center-panel#mailmagazine li {
  border-top: #AFAFAF 1px dotted;
  height: 75px;
  clear: both;
}
.center-panel#mailmagazine img{
  width: 75px;
  height: 75px;
  display: inline-block;
  float: left;
}
.center-panel#mailmagazine div.title{
  display: block;
  margin-top: 20px;
  margin-left: 100px;
}


/*
 * recommend
 */

#easyrec-recommend div.historical_related {
  width: 540px; /*745*/
  position: relative;
  top: -10px;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#easyrec-recommend .historical_related #title {
  height: 38px;
  font-size: 11pt;
  font-weight: bold;
  color: #333;
}

#easyrec-recommend div.historical_related .btn-prev,
#easyrec-recommend div.historical_related .btn-next {
  padding: 0;
  margin: 10px 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  width: 16px;
  height: 100px;
  display: inline-block;
  background-color: #555;
  float: left;
}
#easyrec-recommend div.historical_related .jp-disabled {
  color: #aaa;
}
#easyrec-recommend div.historical_related a.jp-previous {
    margin-right:15px;
}

#easyrec-recommend div.historical_related a.jp-next {
    margin-left:15px;
}
#easyrec-recommend div.historical_related .holder {
    border-bottom: #999 1px dotted;
    line-height: 38px;
}
#easyrec-recommend div.historical_related .holder a {
    font-size:12px;
    cursor:pointer;
    margin:0 5px;
}

#easyrec-recommend div.historical_related .holder a.jp-current {
    font-weight:bold;
    color: #0a7fd2;
}

#easyrec-recommend div.historical_related .btn-prev span,
#easyrec-recommend div.historical_related .btn-next span {
  color: white;
  font-family: arial;
  font-size: 18px;
  font-weight: bold;
  display: block;
  margin: 35px 0;
  padding: 0;
  text-align: center;
  cursor: pointer;
}

#easyrec-recommend div.historical_related .btn-prev img,
#easyrec-recommend div.historical_related .btn-next img {
  padding: 43px 2px 0 3px;
}

#easyrec-recommend div.historical_related ul.items {
  width: 540px;
  margin: 10px 4px;
  padding: 0;
  display: inline-block;
  float: left;
}
#easyrec-recommend div.historical_related > ul.items > .itemrow {
  overflow: hidden;
}
#easyrec-recommend div.historical_related ul.items li {
  float: left;
  padding: 0;
  margin: 0 7px;
  width: 120px;
  list-style-type: none;
  text-align: center;
}
/* ここだけtopページ用 */
#easyrec-recommend div.historical_related ul#items li.item {
  list-style-type: none;
}
#easyrec-recommend div.historical_related ul.items li a {
  text-decoration: none;
}
#easyrec-recommend div.historical_related ul.items li img {
  height: 100px;
  width: 100px;
  display: block;
  margin: auto;
}
#easyrec-recommend div.historical_related ul.items li div.info {
  font-size: 0.9em;
  width: 100%;
  display: block;
  margin-top: 10px;
  margin-right: auto;
  margin-left: auto;
}
#easyrec-recommend div.historical_related ul.items li div.name {
  display: inline;
}
#easyrec-recommend div.historical_related ul.items li div.price {
  display: inline;
  margin-left: 5px;
  color: black;
}
#easyrec-recommend div.historical_related ul.items div.itemrow {
  margin: 10px 0px;
}

/*
  products - products list
 */
ul.products_summary {
  margin: 0px;
  list-style-type: none;
  font-size: 0.95em;
}
ul.products_thumb:after {
  content: "";
  clear: left;
  display: block;
}
ul.products_summary li.item {
  border-bottom: #999 1px dotted;
  padding-bottom: 5px;
}
ul.products_summary li.item:after {
  content: "";
  clear: both;
  display: block;
}
ul.products_summary li.item .thumbnail {
  padding: 15px 0px 10px 10px;
  float: left;
  width: 120px;
}
ul.products_summary li.item .desc {
  width: 600px;
  float: right;
  padding: 15px 0px 15px 10px;
}
ul.products_summary li.item .info .name {
  font-size: 1em;
  font-weight: bold;
  font-size: 1.15em;
}
ul.products_summary li.item .info .short_note {
  margin-top: 15px;
  font-size: 0.95em;
}
ul.products_summary li.item .condition {
  margin-top: 15px;
  font-size: 0.95em;
}
ul.products_summary li.item .condition #price {
  position:absolute;
  left: 310px;
}
ul.products_summary li.item .condition #price .value {
  font-size: 1.1em;
  font-weight: bold;
  color: #F00;
  margin-left: 3px;
}
ul.products_summary li.item .condition #price .yen {
  font-size: 0.85em;
  margin-left: 3px;
}
ul.products_summary li.item .condition #price .backorder {
  position:relative;
  margin-left: 15px;
}
ul.products_summary li.item .condition #quantity {
  float: right;
  line-height: 1em;
}
ul.products_summary li.item .condition #quantity .stock {
  margin-right: 20px;
  text-align: right;
}
form.addcart input.quantity {
  width: 35px;
  /*pointer-events: none;*/
}
ul.products_summary li.item .condition #quantity-message {
  float: right;
  font-size: 1em;
  margin-right: 15px;
}
ul.products_summary li.item div#separator {
  margin: 0px;
}
/*
  thumbnail
 */
.row-products {
  margin-left: 0;
}
ul.products_thumb {
  list-style-type: none;
  margin: 0px;
}
ul.products_thumb div.product {
  float: left;
  border-bottom: #F0F0F0 1px solid;
  color: #333;
  display: block;
  padding: 10px 9px 9px 10px;
  border: #FFF 1px solid;
  width: 128px;
  word-wrap: break-word;
}

ul.products_thumb a:hover {
  text-decoration: none;
}

ul.products_thumb div.item{
  width: 128px;
  min-height: 215px;
}

ul.products_thumb div.item p,span {
  color: #333;
  text-decoration: none;
}

ul.products_thumb div.product:hover{
  border: #777 1px dotted;
  text-decoration: none;
}

ul.products_thumb .detail{
  padding: 10px 10px 0px 0px;
}
ul.products_thumb .detail p{
  font-size: 12px;
  margin-bottom: 0;
  line-height: 140%;
}
ul.products_thumb .price{
  color: #333;
  font-size: 10px;
  font-weight: bold;
}
ul.products_thumb div #quantity-message {
  font-size: 11px;
}
ul.products_thumb div #quantity {
  font-size: 0.8em;
}
ul.products_thumb div input.quantity {
  width: 20px;
}
/*
	products - sort order, number of items of products
 */
#display {
	padding: 0px;
	font-size: 0.95em;
  line-height: 100%;
  height: 41px;
  border-bottom: #999 1px dotted;
}
#display a {
  color: #333;
}
#display #sort {
  float: left;
  margin-left: 5px;
  margin-top: 6px;
}
#display .label {
  margin-right: 5px;
  margin-top: 5px;
}
#display #sort select {
  width: 120px;
  margin-top: 5px;
}
#display #number {
  float: left;
  margin-top: 15px;
  margin-left: 25px;
}
#display .number a {
  border: #DDD 1px solid;
  padding: 3px 5px 3px 5px;
  margin-right: 2px;
}
#display .number a:hover {
color: #FFF;
background: #111;
text-decoration: none;
border-color: #111;
}
#display .number .active {
	border: #DE0000 1px solid;
  padding: 3px 5px 3px 5px;
  margin-right: 2px;
}
#display #style ul{
	float: right;
	margin-top: 10px;
  list-style-type: none;
}
#display #style li{
  float: left;
}
#display #style li a, #display #style li span {
  font-size: 12px;
  margin-left: 4px;
  display:block;
  padding:0 6px 0 24px;
  border:1px solid;
  border-radius: 3px;        /* CSS3草案 */  
  -webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 3px;   /* Firefox用 */ 
}
#display #style li span {
  border-color:#de0000;
}
#display #style li a {
  border-color:#DDD;
}
#display #style li a:hover {
  border-color:#333;
  text-decoration:none;
}
#display #style li.list_text span, #display #style li.list_text a {
  background:url(images/icon_text.gif) 5px 5px no-repeat;
}
#display #style li.list_thumb span, #display #style li.list_thumb a {
  background:url(images/icon_thumbnail.gif) 5px 5px no-repeat;
}
/*
	products - pagenation of products
 */ 
#pagination {
	text-align: right;
  font-size: 0.95em;
  clear: both;
  padding-top: 11px;
  border-bottom: #999 1px dotted;
}
#pagination .number a {
	border: #DDD 1px solid;
  color: #333;
}
#pagination .number a:hover {
  color: #FFF;
  background: #111;
  text-decoration: none;
  border-color: #111;
}
#pagination .number span.active {
	border: #DE0000 1px solid;
}
#pagination .number a, #pagination .number span.active {
  margin-right: 3px;
  padding: 3px 7px;
  min-width: 50px;
}
/*
 product
 */ 
#product .contents {
  width: 445px;
  margin: 17px 17px 0px 4px;
  float: left;
}
#product .data {
	width: 261px;
  margin-top: 17px;
  float: right;
}
#product #description {
  font-size: 1em;
  margin-bottom: 30px;
  line-height: 180%;
}
#product #description blockquote {
  font-size: 13px;
  line-height: 20px;
}
/*
#product #description h2 {
  font-size: 1.3em;
  margin: 50px 0px 15px 0px;
  border-top: 1px dotted #999;
  padding-top: 6px;
  display: block;
  clear: both;
}
*/
#product #description em {
  color: #F06;
  font-style: normal;
}
#product #description div.image-content img {
  max-width: 200px;
  max-height: 200px;
  margin-top: 15px;
}
#product #description:after {
  display: block;
  content: "";
  line-height: 0;
  clear: both;
}
#product .contents #description a[target="_blank"]:after {
  /*content: "";*/
  background-image: url(images/out.png);  
  background-repeat: no-repeat;
  width: 13px;
  height: 13px;
  top: 3px;
  left: 3px;
  margin-right: 7px;
  position: relative;
  display: inline-block;
}
#product .contents #description p {
  margin-top: 15px;
  margin-bottom: 20px;
}
#product .contents #description table {
  border: 1px solid #ddd;
  border-spacing: 0; 
  border-collapse: collapse;
  background-color: transparent;
  width: 100%;
  max-width: 100%;
  margin-bottom: 30px;
}
#product .contents #description table thead {
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
}
#product .contents #description table th {
  border: 1px solid #eee;
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
#product .contents #description table td {
  border: 1px solid #eee;
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
#product .contents #description table tr:nth-child(odd) {
  background-color: #f9f9f9;
}

#product .contents #description > h1,
#product .contents #description > h2,
#product .contents #description > h3,
#product .contents #description > h4,
#product .contents #description > h5,
#product .contents #description > h6 {
  line-height: 100%;
}

#product .contents #description > h1 {
  font-size: 24px;
}
#product .contents #description > h2 {
  font-size: 21px;
}
#product .contents #description > h3 {
  font-size: 17px;
}
#product .contents #description > h4 {
  font-size: 15px;
}
#product .contents #description > h5 {
  font-size: 13px;
}
#product .contents #description > h6 {
  font-size: 12px;
}

#product #category {
  font-size: 0.9em;
  padding-top: 15px;
  border-top: #999 1px dotted;
}
#product #category #title {
  font-size: 11pt;
  font-weight: bold;
  color: #333;
}
#product #category ul {
  list-style-type: none;
  margin: 10px 0px 0px 0px;
}
#product .related {
  margin-top: 30px;
}
#product .related #title {
  border-top: #999 1px solid;
  border-bottom: #999 1px dotted;
  height: 38px;
  font-size: 11pt;
  font-weight: bold;
  line-height: 38px;
  color: #333;
  margin-top: 30px;
}
#product .data table {
	margin: 5px 0px 0px 0px;
	font-size: 0.9em;
	width: 260px;
}
#product .data th {
  width: 32%;
}
#product .data td {
  width: 68%;
}
#product .data .thumbnail img {
  width: 250px;
  height: 250px;
}
#product .data .price {
	font-size: 1.2em;
	font-weight: bold;
	color: #F00;
	letter-spacing: 0.12em
}
#product .data .yen {
	font-size: 0.85em;
	margin-left: 2px;
}
#product table.vol-discount {
  border: #ddd 1px solid;
  border-collapse: collapse;
  width: 100%;
}
#product table.vol-discount th {
  text-align: right;
  width: 50%;
  padding-right: 0px;
}
#product table.vol-discount td {
  text-align: right;
  padding-right: 8px;
}
#product table.vol-discount th,
#product table.vol-discount td {
  border: none;
  background-color: white;
  border-bottom: #ddd 1px solid;
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 0;
  margin: 0;
}

#product div.historical_related {
  width: 745px;
  margin: 0;
  padding: 0;
}
#product .historical_related #title {
  border-top: #999 1px solid;
  border-bottom: #999 1px dotted;
  height: 38px;
  font-size: 11pt;
  font-weight: bold;
  line-height: 38px;
  color: #333;
  margin-top: 30px;
}
#product div.historical_related .holder {
  display: none;
}
#product div.historical_related .btn-prev,
#product div.historical_related .btn-next {
  padding: 0;
  margin: 10px 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  width: 16px;
  height: 100px;
  display: inline-block;
  background-color: #555;
  float: left;
}
#product div.historical_related .jp-disabled {
  background-color: #aaa;
}
#product div.historical_related .btn-prev span,
#product div.historical_related .btn-next span {
  color: white;
  font-family: arial;
  font-size: 18px;
  font-weight: bold;
  display: block;
  margin: 35px 0;
  padding: 0;
  text-align: center;
  cursor: pointer;
}
/*
#product div.historical_related .btn-prev img,
#product div.historical_related .btn-next img {
  padding: 43px 2px 0 3px;
}
*/
#product div.historical_related ul.items {
  width: 706px;
  margin: 10px 0;
  padding: 0;
  display: inline-block;
  float: left;
}
#product div.historical_related ul.items li {
  float: left;
  margin: 0 5px 0 5px;
  padding: 0;
  width: 130px;
  list-style-type: none;
  text-align: center;
}
#product div.historical_related ul.items li a {
  text-decoration: none;
}
#product div.historical_related ul.items li img {
  height: 100px;
  width: 100px;
  display: block;
  margin: auto;
}
#product div.historical_related ul.items li div.info {
  font-size: 0.9em;
  width: 120px;
  display: block;
  margin-top: 10px;
  margin-right: auto;
  margin-left: auto;
}
#product div.historical_related ul.items li div.name {
  display: inline;
}
#product div.historical_related ul.items li div.price {
  display: inline;
  margin-left: 5px;
  color: black;
}
#product div.admonition {
  color: black;
  background-color: #fff8dc;
  border-color: #556b2f;
  padding-left: 20px;
  border: 1px solid transparent;
  border-radius: 3px;
  margin-bottom: 15px;
}
#product div.admonition p {
  margin: 0px;
}
#product div.admonition p.admonition-title {
  font-weight: bold;
}

#easyrec-history {
  padding-top: 50px;
}

.span_cart div.historical_related {
  width: 745px;
  margin: 0;
  padding: 0;
}
.span_cart .historical_related #title {
  border-top: #999 1px solid;
  border-bottom: #999 1px dotted;
  height: 38px;
  font-size: 11pt;
  font-weight: bold;
  line-height: 38px;
  color: #333;
  margin-top: 30px;
}
.span_cart div.historical_related .holder {
  display: none;
}
.span_cart div.historical_related .btn-prev,
.span_cart div.historical_related .btn-next {
  padding: 0;
  margin: 10px 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  width: 16px;
  height: 100px;
  display: inline-block;
  background-color: #555;
  float: left;
}
.span_cart div.historical_related .jp-disabled {
  background-color: #aaa;
}
.span_cart div.historical_related .btn-prev span,
.span_cart div.historical_related .btn-next span {
  color: white;
  font-family: arial;
  font-size: 18px;
  font-weight: bold;
  display: block;
  margin: 35px 0;
  padding: 0;
  text-align: center;
  cursor: pointer;
}
/*
#product div.historical_related .btn-prev img,
#product div.historical_related .btn-next img {
  padding: 43px 2px 0 3px;
}
*/
.span_cart div.historical_related ul.items {
  width: 706px;
  margin: 10px 0;
  padding: 0;
  display: inline-block;
  float: left;
}
.span_cart div.historical_related ul.items li {
  float: left;
  margin: 0 5px 0 5px;
  padding: 0;
  width: 130px;
  list-style-type: none;
  text-align: center;
}
.span_cart div.historical_related ul.items li a {
  text-decoration: none;
}
.span_cart div.historical_related ul.items li img {
  height: 100px;
  width: 100px;
  display: block;
  margin: auto;
}
.span_cart div.historical_related ul.items li div.info {
  font-size: 0.9em;
  width: 120px;
  display: block;
  margin-top: 10px;
  margin-right: auto;
  margin-left: auto;
}
.span_cart div.historical_related ul.items li div.name {
  display: inline;
}
.span_cart div.historical_related ul.items li div.price {
  display: inline;
  margin-left: 5px;
  color: black;
}
/*
	checkout
 */ 
.checkout_page_title {
	margin: 0px 0px 20px 0px;
	padding-bottom: 10px;
	border-bottom: #999 1px dotted;
}
.checkout_page_title span {
	font-size: 1.5em;
	font-weight: bold;
	padding: 20px 20px 20px 5px;
}
/*
	user
 */ 
#user div.box {
	margin-left: 15px;
	float: left;
}
/*
  userdetail
 */
#userdetail #title {
	margin: 0px 0px 20px 0px;
	padding-bottom: 10px;
	font-size: 1.5em;
	font-weight: bold;
	border-bottom: #999 1px dotted;
}
#orderhistory #title {
	margin: 0px 0px 20px 0px;
	padding-bottom: 10px;
	font-size: 1.5em;
	font-weight: bold;
	border-bottom: #999 1px dotted;
}
#orderhistory .order-info table {
  width: 200px;
  font-size: 0.9em;
}
#orderhistory .order-detail table {
  width: 350px;
  font-size: 0.9em;
}
/*
  confirm & complete
  */
table.orderdetail td.itemimage {
  padding: 3px;
  width: 128px;
}
table.orderdetail th {
  width: 110px;
  font-weight: bold;
  background: #F7F7F7;
}
table.orderdetail textarea {
  width: 300px;
}
table.orderdetail .memo {
  color: #666;
}
.ask {
  margin: 0px 0px;
  padding: 30px;
  border: #CCC 1px solid;
}
.ask .confirmation {
  font-size: 1.4em;
  line-height: 1.5em;
  font-weight: bold;
  color: #222;
  text-align: center;
  margin-bottom: 0px;
}
.ask .confirmation button {
  margin-left: 15px;
  display: inline-block;
}
/*
  page
  */
#page {
  margin-left: 20px;
  margin-right: 20px;
}
#page h2 {
  padding: 5px 0px 5px 0px;
  font-size: 1.45em;
  font-weight: bold;
  border-top: thin solid #666;
  border-bottom: dotted 1px #bbb;
  margin: 65px 0 18px;
}
#page h3 {
  font-size: 1.2em;
  margin: 30px 0px 0px 0px;
}
#page h4 {
  font-size: 1em;
  margin: 11px 0px 4px 0px;
}
#page table {
  margin: 5px 0px 0px 0px;
  font-size: 0.9em;
}
#page table th{
  width: 120px;
  background-color: #F3F3F3;
}
#page #faq ul {
  list-style: none;
  margin-left: 5px;
}
#page #faq p.question {
  font-weight: bold;
}
#page #faq p.answer {
  margin: 0 15px 25px;
}
#page div.image-content img{
  margin: 20px 0 30px 0;
}

/*
  payment, shipping, destination
  */
#payment ul.selection li, #shipping ul.selection li, #destination ul.selection li {
  margin: 5px 0px 5px 0px;
}
#payment ul.selection li label, #shipping ul.selection li label, #destination ul.selection li label {
  font-weight: bold;
  /*display: inline;*/
}
#payment ul.selection li .description, #shipping ul.selection li .description, #destination ul.selection li .description {
  color: #333;
  margin-left: 50px;
}

/*
  cart
 */
#cart #clear {
  float: left;
}
/*
 common table
 */
#caption {
  font-size: 1.1em;
  font-weight: bold;
  margin: 10px 0px 8px;
}
table.order_items {
  font-size: 1em;
}
table.order_items span.name {
  font-size: 0.95em;
}
table.order_items td.image img {
  width:50px;
  height:50px;
}
table.order_items td.pcs span.quantity {
  margin-right: 5px;
}
table.order_items .delete {
  text-align: center;
  width:50px;
}
table.order_items .image {
  text-align: center;
  width:70px;
}
table.order_items .name {
  text-align: left;
}
table.order_items .price {
  text-align: right;
  width: 120px;
}
table.order_items .pcs_control {
  text-align: right;
  width: 100px;
}
table.order_items .pcs .quantity {
  text-align: right;
  padding-right: 10px;
}
table.order_items .pcs button{
  text-align: right;
}
table.order_items .pcs {
  text-align: right;
  width: 40px;
}
table.order_items .removed_pcs {
  text-align: right;
  width: 200px;
}
table.order_items .total {
  text-align: right;
  width: 75px;
}
table.order_items tfoot td {
  text-align: right;
}
table.order_items tfoot .all{
  font-weight: bold;
}
table.order_items .subtotal th, 
table.order_items .shipping th, 
table.order_items .discount th, 
table.order_items .charge th,
table.order_items .all th {
  text-align: right;
}
table.order_items td.link {
  text-align: left;
}
/*
 common table
 */
table.form th {
  width: 150px;
  font-weight: bold;
  background: #F7F7F7;
}
table.form select#id_kind {
  width: 320px;
}
table.form input#id_number {
  width: 150px;
}
table.form input#id_name {
  width: 200px;
}
table.form input#id_mail {
  width: 200px;
}
table.form input#company {
  width: 200px;
}
table.form input#id_address {
  width: 550px;
}
table.form input#id_phone {
  width: 150px;
}
table.form input#id_username {
  width: 200px;
}
table.form input#id_password {
  width: 200px;
}
table.form input#id_phone {
  width: 150px;
}
table.form textarea#id_message {
  width: 550px;
}
/*
 destination
 */
table.destination th {
  background: #F7F7F7;
  text-align: center;
  width: 40px;
  vertical-align: middle;
}
/*
 document
 */
table.document th {
  background: #F7F7F7;
  text-align: center;
  width: 40px;
  line-height: 20px;
  vertical-align: middle;
}
table.document td {
  line-height: 25px;
  vertical-align: middle;
}
table.document span.addition {
  float: right;
  display:inline-block;
  vertical-align: middle;
}
table.document span.print_name_title {
  display:inline-block;
  vertical-align: middle;
}
table.table-in-table {
  margin: 5px;
  font-size: 0.9em;
  border: 1px solid #dddddd;
}
table.table-in-table tr,
table.table-in-table td,
table.table-in-table th {
  border: 1px solid #dddddd;
  line-height: 25px;
  vertical-align: middle;
}
textarea#id_order_memo-memo {
  margin: 8px;
  width: 90%;
  height: 100px;
}
input#id_order_memo-customerside_order_num {
  margin: 8px;
  width: 90%;
}
table.document input[type="text"][id*="name"] {
  width: 180px;
}
table.document input[type="text"][id*="date"] {
  width: 90px;
}
/*
 order-history
 */
.pagination {
  right: 10px;
  text-align: right;
}
ul#order-history {
  list-style-type: none;
  margin-left: 9px;
  width: 730px;
}
ul#order-history li {
  border-bottom: #000 1px solid;
  margin-top: 22px;
  padding-bottom: 40px;
}
ul#order-history dl.summary:after {
  display: block;
  content: "";
  line-height: 0;
  clear: both;
}
ul#order-history dl.summary {
  font-size: 14px;
  color: #444;
  border-left: #314c99 4px solid;
  padding-left: 13px;
  margin-bottom: 25px;
}
ul#order-history dl.summary dt {
  float: left;
  font-weight: normal;
  margin-left: 0px;
  line-height: 24px;
}
ul#order-history dl.summary dd {
  float: left;
  font-weight: bold;
  margin-left: 2px;
  margin-right: 40px;
  line-height: 24px;
}
table.history {
  width: 730px;
}
/*
 payment
 */
table.payment {
  margin-bottom: 30px;
}
table.payment th {
  font-weight: bold;
  width: 70px;
}
div.payment_method {
  padding: 0px;
  margin-bottom: 30px;
}
div.payment_method h2 {
  border-top: #999 1px solid;
  border-left: #999 1px dotted;
  border-right: #999 1px dotted;
  font-weight: bold;
  font-size: 14px;
  background: #eee;
  margin: 0px;
  padding-left: 10px;
}
div.payment_method .content{
  border-bottom: #999 1px dotted;
  border-left: #999 1px dotted;
  border-right: #999 1px dotted;
  padding: 40px 40px 30px 40px;
}
div.payment_method .content:after {
  display: table;
  content: "";
  line-height: 0;
  clear: both;
}
div.payment_method .content .left{
  width: 330px;
  float: left;
}
div.payment_method .content .info{
  color: #444;
  font-size: 0.85em;
}
div.payment_method .content .right{
  width: 248px;
  float: left;
  margin-left: 40px;
}
div.payment_method .content .right .info{
  border-top: #999 1px dotted;
  padding-top: 10px;
}
div.payment_method .content .account{
  width: 220px;
  float: left;
  margin-left: 0px;
  list-style-type: none;
}
div.payment_method .content .account li{
  margin-bottom: 15px;
  border: #AAA 1px solid;
  padding: 10px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
/*
 mypage
 */
#mypage-link {
  margin-left: 0px;
  list-style-type: none;
}
#mypage-link li {
  margin-right: 10px;
  float: left;
  padding-left: 5px;
}
/*
  sns-buttons
 */
div#top-sns-buttons {
  margin-top: 15px;
}
div#item-sns-buttons {
  margin-top: 20px;
}
div#item-sns-buttons a {
  margin-top: 20px;
}
.fb_edge_widget_with_comment {
  position: relative;
  margin-top: 8px;
}
/*
  page howto links
*/
div#how-index div.left {
  border-right: #ddd 1px solid;
  padding-right: 0px;
}
div#how-index .action {
  margin: 30px 0px 30px 35px;
}
div#how-index .action ul {
  margin-left: 10px;
  list-style-type: none;
}
div#how-index .action li {
  background: url(images/arrow.gif) 0px 2px no-repeat;
  padding-left: 15px;
}
/*
 international & amazon
 */
#other-shops {
  margin-bottom: 15px;
}
#about_delivery {
  float:right;
  margin-top: 1px;
  margin-right: 3px;
  padding-left: 14px;
  color: #555;
  font-size: 10px;
  background: url(images/arrow.gif) 0px 2px no-repeat;
}
/*
 supplier
 */
ul#supplier {
  margin-left: 0px;
  list-style-type: none;
}
ul#supplier li {
  margin-top: 30px;
  padding-top: 30px;
  border-top: #DDD 1px solid;
}
ul#supplier li img {
  margin-right: 20px;
}
/*
 class="pressrelease"
 */
h1.pressrelease {
  font-size: 24px;
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
}
dl.pressrelease dd {
  margin-bottom: 15px;
}

p#coupon-message {
  /*border: #eee 1px solid;
  background: #F7F7F7;*/
  color: #333;
  padding: 10px;
  text-align: left;
}
/*
  cart csv
 */
div#cartcsv_opener {
  margin: 20px 0px 15px 0px;
}
#cartcsv {
  border: #ddd 1px solid;
  padding: 10px 20px;
  margin: 0px 0px 40px 0px;
}
#cartcsv pre {
  padding: 10px;
  margin: 10px;
}
#cartcsv #description {
  margin: 0px 20px 20px 20px;
}
#cartcsv form {
  margin: 20px 30px 10px 30px;
}
#cartcsv h2 {
  font-size: 1.1em;
  margin: 0px;
}
/*** Rapiro ***/
#rapiro { 
  background: -moz-linear-gradient(top, #010101, #30303A);
  background: -webkit-gradient(linear, left top, left bottom, from(#010101), to(#30303A));
  height: 152px;
}
#rapiro #text {
  float: left;
  text-align: left;
  margin-top: 30px;
  margin-left: 30px;
}
#rapiro #text p.L { 
  font-size: 24px;
  color: #fff;
  margin-top: 0;
  margin-bottom: 20px;
  letter-spacing: 0.05em;
}
#rapiro #text p { 
  font-size: 14px;
  line-height: 20px;
  margin: 0;
  color: #eee;
}
#rapiro #text p a { 
  color: #72cea2;
}
#rapiro img { 
  float: right;
  margin-top: 7px;
  margin-right: 25px;
}

/*** category ***/
/*** for 年末セール ***/
.simpleTree a[href^="/catalog/list/1/"] {
  font-weight: bold;
  font-size: 30px;
}
.simpleTree a[href^="/catalog/list/1/"] span.count {
  font-weight: normal;
  font-size: 14px;
  margin-left: 3px;
}
#openall {
  margin-left: 38px;
}

/*** flash ***/
.flash-notify a {
  color: #34a5f5 !important;
}

.products_summary
.flash-notify {
  float: right;
  margin-top: 8px;
}

div.tooltipster-content span {
  color: #FFF;
}
div.generic_page {
  padding: 0 30px 0 30px;
}

#item-description-updated {
  float: right;
}
/*** loader circle animation and thanks message for checkout pay ***/ 
#loader {
  border: 5px solid #f3f3f3;
  border-radius: 50%;
  border-top: 5px solid #3498db;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -50px;
  margin-left: -50px;
  transform: translate(-50%, -50%);
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
#dark-cover { 
  position:fixed; 
  top:0; 
  left:0; 
  background:rgba(0,0,0,0.6); 
  z-index:3; 
  width:100%; 
  height:100%; 
  display:none;
}
