@charset "utf-8";

/* Layout  */

html, body{
  height: 100%;
  background: #CCC;
}

#container{
  height: 100%;
  width: 742px;
  margin: 0 auto 0 auto;
  position: relative;
}

#sidebar{
  left: 0;
  position: absolute;
  width: 142px;
}

#main{
  background: url('/common/images/bg-1008.png') repeat-y left top;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 0 -60px 142px;  /* the bottom margin is the negative value of the footer's height */
}

#contents{ 
  width: 540px;
  padding: 30px;
  overflow: hidden;
}

#footer, .push{
  height: 30px; /* .push must be the same height as .footer */
}

#footer{
  clear: both;
  margin: 0 0 0 142px;  
  }

#footer .copyright{
  width: 540px;
  padding: 0 30px 0 30px;
}



/* Common  */

* { margin:0; padding:0;}


body{
  font-size: small;
  font-family: Times,'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  line-height: 1.7em;
}

h1{
  font-size: 2.6em;
  letter-spacing: 0.05em;
  margin-bottom: 30px;
}

h2{
  font-size: 1.3em;
  letter-spacing: 0.05em;
  margin-bottom: 12px;
}

h3{
  font-size: 1em;
  letter-spacing: 0.1em;
  margin-bottom: 6px;
}

p{
  margin-bottom: 20px;
}

p.spec{
  margin-bottom: 0;
}

p.noMargin{
  margin-bottom: 6px;
}

ul{
  margin: 0 0 20px 20px;
}

table td{
  vertical-align: top;
}

.article{
  margin-bottom: 20px;
  overflow: hidden;
  clear: both;
}

.back{
  margin: 45px 0;
}

/*  logo */
.logo{
  display: block;
  background: url('/common/images/logo-1092.png') no-repeat left top;
  width: 111px;
  height: 97px;
  margin: 30px 0 70px 0;
}

* html .logo{
  background: none;
  filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=/common/images/logo--latest.png);
}

.logo a{
  display: block;
  width: 111px;
  height: 97px;
}

.displayNone{
  display: none;
}

/* side menu */

#menu{
  margin-left: 12px;
}

#menu li{
  font-size: 1.1em;
  line-height: 1em;
  letter-spacing: 0.1em;
  list-style: none;
  margin-bottom: 30px;
}

#menu a:link { text-decoration:none; color:#000; }
#menu a:visited { text-decoration:none; color:#000; }
#menu a:hover { text-decoration: none; color:#C00;}
#menu a:active { text-decoration:none; color:#000; }

#main a:link { text-decoration:none; color:#C00; }
#main a:visited { text-decoration:none; color:#C00; }
#main a:hover { text-decoration: none; color:#FFF; background:#C00; }
#main a:active { text-decoration:none; color:#C00; }
a img, a:hover img{border: none;}

#main a.linkH1:link { text-decoration:none; color:#000; }
#main a.linkH1:visited { text-decoration:none; color:#000; }
#main a.linkH1:hover { text-decoration: none; color:#000; background:none; }
#main a.linkH1:active { text-decoration:none; color:#000; }

.active a:link { text-decoration:none; color:#000; }
.active a:visited { text-decoration:none; color:#000; }
.active a:hover { text-decoration: none; color:#000; background:none; }
.active a:active { text-decoration:none; color:#000; }

#footer a:hover { text-decoration: none; background:none; }

.copyright{
  overflow: hidden;
  font-size: .85em;
}

.copyright span{
 font-family: Verdana,sans-serif;
}



/* Contents */

/* News */
#news{
  margin-bottom: 20px;
}

#news h2.archive{
  margin-bottom: 20px;
}

.entry h2{
  font-size: 1em;
  letter-spacing: 0.1em;
  margin-bottom: 0;
}

#main a.linkH2:link { text-decoration:none; color:#000; }
#main a.linkH2:visited { text-decoration:none; color:#000; }
#main a.linkH2:active { text-decoration:none; color:#000; }
#main a.linkH2:hover { text-decoration: none; color:#FFF; }


#news h3{
	margin-bottom: 10px;
	font-size: 1em;
	clear: both;
}

#news .entry{
  overflow: hidden;
  width: 540px;
  clear: both;
}

#news img.alignright{
  float: right;
  margin:  0 0 20px 20px;
}

#news img.alignleft{
  float: left;
  margin:  0 20px 20px 0;
}

#news .date{
    font-size: .85em;
    margin-bottom: 10px;
}

#news .more{
  margin-top: -20px;
}

#news a.subscribeLink{
  margin-bottom: 45px;
  display: block;
  padding: 10px 10px 10px 10px;
}

#news a.subscribeLink,
#news a.subscribeLink:link,
#news a.subscribeLink:visited{
  background: #C00;
  color: #FFF;
}

#news a.subscribeLink:hover{
  background: #FFF;
  color: #C00;
}

.navigation{
  width: 540px;
  overflow: hidden;
  margin-bottom: 40px;
}
.navigation .older{
  float: right;
  width: 200px;
  text-align: right;
}

.navigation .newer{
  float: left;
  width: 200px;
}


/* Pick Up */
#pickupList .thumbnail{
 margin: 0 0 0 -30px;
 width: 600px;
}

#pickupList .last{
	margin-bottom: 60px;
}


#pickup .item{
	margin-bottom: 45px;
	border: solid 1px red;
}

#pickup .photo{
  text-align: center;
  margin-top: 50px;
  margin-bottom: 50px;
}

.photo a {
  background: none;
}

#pickup h2{
	margin-top:20px;
}

#pickup h2, #pickup p{
  margin-bottom: 0;
  line-height: 180%;
}


#pickup .credit{
  margin-bottom: 30px;
}

#pickup .small{
 height: 400px;
}

#pickup .medium{
}

#pickup .large{
}

/* Catalogue */

#catalog h1.title,
#pickupList h2.title,
#pickup h2.title{
  font-size: 1.3em;
  margin-bottom: 12px;
}

#catalog h2{
  line-height: 1.7em;
  font-size: 2.0em;
  letter-spacing: 0.05em;
  margin-bottom: 30px;
  float: left;
}

#catalog .photo{
  clear: both;
}

#catalog .control{
  margin-top: 6px;
  float: right;
  width: 270px;
  text-align: right;
}

.specList{
  clear: both;
  margin: 0 0 30px;
  padding-top: 30px;
}

.specList a{
 background: none;
}

.specList td{
  vertical-align: top;
}

.specList .spec{
  word-break: break-all;
  padding-top: 3px;
}

/*
#catalog .specList table td img{
  margin-bottom: 3px;
}
*/

.spec h3{
  margin-bottom: 3px;
}

.specList ul{
  list-style: none;
  margin: 0 0 15px 0;
}

.specList li{
  line-height: 1.2em;
  font-family: Verdana,sans-serif;
  font-size: .85em;
  margin-bottom: 6px;
}

#catalog .spring10 #video{
	margin-left:-30px;
	width:600px;
	height:394px;
	margin-bottom:75px;
	background-color:#000;
}

#catalog .spring10 .caption{
	margin:0 0 40px 0;
	padding-top:15px;
}


#pickupList h1.title{
	margin-bottom: 20px;
}

/* Contact */

#contact form .formError {
  color: #f00; 
}

#contact form .notice {
  color: #f00;
  margin-bottom: 1em;
} 

#contact td {
  padding: 0em .5em .5em 0em;
}

/* Shop */

.with_photo{
 width: 540px;
 overflow: hidden;
}

.with_photo .description{
 float: left;
 width: 330px;
}

.with_photo img{
  float: right;
}


#shopImages{
  margin: 0 0 20px 0;
  height: 304px;
  width: 540px;
  overflow: hidden;
 padding: 0;
}

#shopImages li{
  height: 304px;
  list-style: none;
  margin: 0;
  padding: 0;
}



/* Subscribe */

#mailmagazine .block, #mailmagazine .subscribeBlock {
	margin-bottom: 30px;
	width: 540px;
	overflow: hidden;
	position: relative;
}

#mailmagazine .left_column{
	float: left;
	width: 100px;
	font-weight: bold;
}

#mailmagazine .right_column{
	float: right;
	width: 440px
}

#mailmagazine .right_column .subscription{
	padding-left: 18px;
}

#mailmagazine .right_column .stop{
	padding-left: 18px;
}

.subscribeBlock table{
	width: 540px;
}

.subscribeBlock th, .subscribeBlock td{
	padding-bottom: 12px;
}

.subscribeBlock th{
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	width: 150px;
}

.subscribeBlock span{
	padding-right: 18px;
}

.subscribeBlock td .other{
	padding-top: 5px;
	display: block;
}

#mailmagazine .block input.submit{
	width: 150px;
}

#mailmagazine .fieldWithErrors{
	display: inline;
}

#mailmagazine .errorExplanation{
	color: red;
}

.errorExplanation h2{
	display: none;
}

.errorExplanation p{
	margin-bottom: 10px;
}

#mailmagazine .block a.back{
	margin: 0;
	display: block;
	float: left;
}