@charset "utf-8";
/* CSS Document */

/* ---------------------------------------------------------
共通
----------------------------------------------------------*/
* {
	outline:none;
	letter-spacing:0em;
}

html, body {
	height:100%;
	height:auto !important;
	min-height:100%;
}

html {
	background:#fff;
}

body {
	font-family: "メイリオ",Meiryo,Verdana,sans-serif,"ヒラギノ丸ゴ Pro W4","Hiragino Maru Gothic Pro";
	/* font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; */
	font-size: 14px;
	color: #666;
	background-color: #fff;
	line-height: 1.4em;
	min-width: 960px;
	
	background-image: url(../img/cmn/bg_body.png);
	background-position: center 217px;
	background-repeat: repeat-y;
}

h1, h2, h3, h4, h5, h6, p {
	font-weight:normal;
	overflow: visible;
}

ul li {
	list-style-type:none;
}
a:link,
a:visited {
    color: #666;
    text-decoration: none;
}
a:link:hover,
a[href]:hover {
    color:#888;
    text-decoration: underline;
}	

.c_both {
	line-height: 0;
	display: block;
	height: 0px;
	margin: 0px;
	padding: 0px;
	clear: both;
}
.c_both hr {
	border-style: none;
	border-width: 0px;
	display: none;
	visibility: hidden;
	height: 0px;
	width: 0px;
}
/*clearfix */
.clearfix {
	overflow: visible;
}
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.red{
	color: #D81834;
}
.small{
	font-size: 12px;
}
.smallest{
	font-size: 10px;
}
/* ---------------------------------------------------------
	header
----------------------------------------------------------*/
#header_wrap{
	border-top: 3px solid #E30A2A;
	background-color: #fff;
}
#header_wrap h1{
	width: 960px;
	margin: 0 auto;
	text-align: right;
	padding-top: 5px;
	font-size: 12px;
	font-weight: bold;
	background: transparent;
}
#header{
	width: 960px;
	margin: 0 auto;
}
#header .left{
	float: left;
}
#header .left .logo{
	margin-top: -5px;
	margin-bottom: 15px;
	overflow: visible;
}
#header .right{
	float: right;
}
#header .right .head-nav{
	font-size: 12px;
	float: right;
}
#header .right .head-nav ul{
	margin-top: 15px;
}
#header .right .head-nav ul li{
	float: left;
	margin-right: 28px;
	background: url(../img/cmn/pic_arrow.png) no-repeat left center;
	padding-left: 15px;
	font-weight: bold;
}
#header .right .head-nav ul li.right{
	margin-right: 0;
}
#header .right .tel{
	float: left;
	margin-top: 12px;
	margin-right: 20px;
}
#header .right .tel p{
	padding-top: 4px;
	font-size: 12px;
	font-weight: bold;
}
#header .right .btn{
	float: right;
	margin-top: 12px;
}
/* ---------------------------------------------------------
	gnavi
----------------------------------------------------------*/
#gnav{
	margin: 0 auto;
	background: url(../img/cmn/bg_gnav.png)
}
#gnav ul{
	width: 960px;
	height: 70px;
	margin: 0 auto;
}
#gnav ul li{
	float: left;
}
/* ---------------------------------------------------------
	container
----------------------------------------------------------*/
#container{
	width: 960px;
	margin: 0 auto;
}
#mainimg{
	width: 960px;
	margin: 0 auto;
	margin-top: 10px;
	margin-bottom: 35px;
}
#mainimg.top{
	margin-top: 10px;
	margin-bottom: 20px;
}
/* ---------------------------------------------------------
	main
----------------------------------------------------------*/
#main.main_column{
	padding-top:2px;
	
}

#main{
	width: 733px;
	float: left;
}
#main h3{
	border-bottom: 1px solid #121011;
	padding-bottom: 6px;
	padding-left: 15px;
}
#main .sec{
	margin-bottom: 30px;
	text-align: left;
}
#main .sec .inner{
	padding: 15px;
}
/*****top*****/
#main.top h3{
	border-bottom: 1px solid #121011;
	padding-bottom: 6px;
	padding-left: 0;
}
#main .sec.news{
	margin-bottom: 40px;
}
#main .sec.news .inner{
	padding: 15px 0;
}
#main .sec.news .inner dl{
	max-height: 178px;
	font-weight: bold;
	position: relative;
	overflow-y: auto;
}
#main .sec.news .inner dl dt{
	position: absolute;
	width: 120px;
	left: 0;
	padding: 12px 0px;
	border-top: 1px dotted #666;
}
#main .sec.news .inner dl dt.ceil{
	border-top: 0;
}
#main .sec.news .inner dl dd{
	margin-left: 120px;
	padding: 12px 0px;
	margin-right: 20px;
	border-top: 1px dotted #666;
}
#main .sec.news .inner dl dd.ceil{
	border-top: 0;
}
#main .sec.recommended{
	line-height: 1.2em;
	margin-bottom: 0;
}
#main .sec.recommended .inner{

}
#main .sec.recommended .inner .img{
	margin-bottom: 5px;
}
#main .sec.recommended .inner .name{
	margin-bottom: 5px;
}
#main .sec.recommended .inner .price{
	text-align: right;
}
#main .sec.recommended .inner .item-r01,
#main .sec.recommended .inner .item-r02{
	float: left;
	width: 160px;
	margin-right: 20px;
	margin-bottom: 25px;
}
#main .sec.recommended .inner .item-r02{
	
}
#main .sec.recommended .inner .item-r01.right,
#main .sec.recommended .inner .item-r02.right{
	margin-right: 0;
}
#main .sec.banner ul li{
	margin-bottom: 25px;
}
#main .sec.banner .inner{
	margin-bottom: 25px;
}
#main .sec.feature.sec{
	margin-bottom: 70px;
}
#main .sec.feature .inner ul li.left{
	float: left;
}
#main .sec.feature .inner ul li.right{
	float: right;
}
#main .sec.payment .inner table{
	width: 100%;
}
#main .sec.payment .inner table th,
#main .sec.payment .inner table td{
	height: 54px;
	vertical-align: middle;
	border: 1px solid #ccc;
	padding: 0 15px;
	font-size: 12px;
	font-weight: bold;
	color: #333;
	line-height: 1.2em;
}
#main .sec.payment .inner table th{
	background: #f5f5f5;
}
#main .sec.payment .inner table td img{
	vertical-align: bottom;
}
/*****concept*****/
#main.concept .sec-01{
	margin-bottom: 60px;
}
#main.concept .sec-01 .inner .left{
	float: left;
	margin-top: 68px;
}
#main.concept .sec-01 .inner .right{
	float: right;
	width: 390px;
	margin-top: 45px;
}
#main.concept .sec-01 .inner .right p.catch{
	margin-bottom: 15px;
}
#main.concept .sec-01 .inner .right p{
	font-weight: bold;
}
#main.concept .sec-01 .inner .right a{
	display: block;
	margin-top: 15px;
}
#main.concept .sec-02 .inner .pic{
	float: right;
	margin-left: 20px;
}
#main.concept .sec-02 .inner p{
	margin-bottom: 20px;
	font-weight: bold;
}
#main.concept .sec-02 .inner ul li{
	font-weight: bold;
	padding-bottom: 5px
}
#main.concept .sec-02 .inner li span.maru{
	background: url(../img/concept/pic_maru.png);
	width: 20px;
	height: 28px;
	padding-left: 10px;
	padding-top: 8px;
	margin-right: 4px;
	display: inline-block;
	vertical-align: middle;
}
#main.concept .sec-02 .inner ul{
	margin-bottom: 20px;
}
#main.concept .bnr{
	margin-bottom: 40px;
}
#main.concept .history{
	position: relative;
}
#main.concept .history .inner{
	min-height: 275px;
}
#main.concept .history .pic{
	position: absolute;
	right: 15px;
	top: -24px;
}
#main.concept .history dl{
	position: relative;
}
#main.concept .history dl dt,
#main.concept .history dl dd{
	font-weight: bold;
	padding-top: 8px;
	padding-bottom: 8px;
}
#main.concept .history dl dt{
	position: absolute;
	left: 0;
	width: 65px;
}
#main.concept .history dl dd{
	margin-left: 65px;
}
/*****guide*****/
#main.guide .flow dl{
	margin-bottom: 60px;
}
#main.guide .flow dl dt{
	background-image: url(../img/guide/pic_arrowline.png);
	background-repeat: no-repeat;
	background-position: left bottom;
	padding: 10px 0;
	padding-bottom: 25px;
	font-weight: bold;
}
#main.guide .flow dl dt.nobottom{
	background: none;
	padding-bottom: 0;
}
#main.guide .flow dl dd{
	background-image: url(../img/guide/pic_arrowline.png);
	background-repeat: no-repeat;
	background-position: left bottom;
	padding: 25px 0;
	padding-top: 0;
	padding-left: 20px;
}
#main.guide .flow .box h4{
	background-image: url(../img/cmn/bg_h4.png);
	background-repeat: no-repeat;
	height: 29px;
	padding-left: 25px;
	padding-top: 10px;
	font-weight: bold;
}
#main.guide .flow .box{
	border: 1px solid #eee;
	border-top: 0px;
	margin-bottom: 10px;
}
#main.guide .flow .box .inner{
	padding: 25px;
	padding-top: 10px;
	padding-bottom: 30px;
}
#main.guide .flow .box .inner p{
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 15px;
}
#main.guide .return ul{
	margin-bottom: 15px;
}
#main.guide .return ul li{
	background: url(../img/cmn/pic_maru.png) no-repeat left 15px;
	padding-left: 10px;
	font-weight: bold;
	padding-top: 10px;
	padding-bottom: 10px;
}
#main.guide .return ul li span.small{
	padding-left: 10px;
}
#main.guide .return p{
	font-weight: bold;
	margin-bottom: 15px;
}
#main.guide .return .box{
	border: 1px solid #ccc;
	padding: 25px;
}
#main.guide .return .box .left{
	float: left;
}
#main.guide .return .box .right{
	float: left;
	width: 445px;
	margin-left: 50px;
}
#main.guide .return .box p{
	margin-bottom: 0;
}
/*****faq*****/
#main.faq .sec1 h3{
	margin-bottom: 15px;
}
#main.faq .sec1 dl dt span.bg{
	display: block;
	float: left;
	background-color: #E30A2A;
	color: #fff;
	padding: 3px;
	width: 32px;
	text-align: center;
}
#main.faq .sec1 dl dt span.txt{
	display: block;
	float: left;
	background-color: #F0F1F1;
	width: 654px;
	padding: 3px;
	font-weight: bold;
	padding-left: 6px;
}
#main.faq .sec1 dl dt{
	overflow: hidden;
	margin-bottom: 10px;
}
#main.faq .sec1 dl dd{
	clear: both;
	font-size: 12px;
	font-weight: bold;
	color: #333;
	margin-bottom: 25px;
}
#main.faq .sec1 p{
	font-weight: bold;
}
#main.faq .sec1 p.url{
	float: left;
	width: 231px;
	margin-top: 50px;
	margin-left: 30px;
}
#main.faq .sec1 .qr{
	padding-top: 20px;
	padding-left: 10px;
	padding-bottom: 30px;
}
#main.faq .sec1 .qr img{
	float: left;
}
/*****contact*****/
#main.contact .sec-01 .inner ul li{
	font-weight: bold;
}
#main.contact .sec-01 .inner ul{
	margin-bottom: 20px;
}
#main.contact .sec-01 .inner table{
	width: 100%;
}
#main.contact .sec-01 .inner table td,
#main.contact .sec-01 .inner table th{
	border-bottom: 1px dotted #999;
	padding-top: 15px;
	padding-bottom: 15px;
	border-right: none;
}
#main.contact .sec-01 .inner table td{
	font-size: 12px;
}
#main.contact .sec-01 .inner table th{
	width: 165px;
	padding-left: 20px;
	text-align: left;
	vertical-align: top;
}
#main.contact .sec-01 .inner table td input[type="text"]{
	border: 1px solid #ccc;
	padding: 3px;
}
#main.contact .sec-01 .inner table td input#sei,
#main.contact .sec-01 .inner table td input#mei
{
	width: 110px;
	margin-left: 5px;
}
#main.contact .sec-01 .inner table td input#mail1{
	margin-bottom: 5px;
}
#main.contact .sec-01 .inner table td input#mail1,
#main.contact .sec-01 .inner table td input#mail2{
	width: 400px;
}
#main.contact .sec-01 .inner table td input#tel1,
#main.contact .sec-01 .inner table td input#tel2,
#main.contact .sec-01 .inner table td input#tel3{
	width: 70px;
}
#main.contact .sec-01 .inner table td input#num{
	width: 100px;
	margin-right: 10px;
}
#main.contact .sec-01 .inner table td textarea{
	width: 400px;
	height: 250px;
	border: 1px solid #ccc;
	padding: 3px;
}
#main.contact .sec-01 .inner .btn{
	text-align: center;
	padding-top: 30px;
}
/*****privacy*****/
#main.privacy .sec-01 .box h4{
	background-image: url(../img/cmn/bg_h4.png);
	background-repeat: no-repeat;
	height: 29px;
	padding-left: 25px;
	padding-top: 10px;
	font-weight: bold;
}
#main.privacy .sec-01 .box{
	margin-bottom: 10px;
}
#main.privacy .sec-01 .box .inner{
	padding: 20px;
	padding-top: 5px;
	padding-right: 0;
	font-size: 12px;
}
#main.privacy .sec-01 .box .inner p{
	font-weight: bold;
	color: #333;
}
/*****company law*****/
#main.company .sec-01 h3,
#main.law .sec-01 h3{
	margin-bottom: 30px;
}
#main.company .sec-01 .inner ul li,
#main.law .sec-01 .inner ul li{
	display: table;
	padding: 5px 0;
	font-weight: bold;
	border-bottom: 1px solid #d8d8d8;
	width: 100%;
}
#main.company .sec-01 .inner ul li span,
#main.law .sec-01 .inner ul li span{
	display: table-cell;
	padding: 5px;
	padding-left: 20px;
}
#main.company .sec-01 .inner ul li span.head,
#main.law .sec-01 .inner ul li span.head{
	width: 180px;
	border-left: 4px solid #E30A2A;
}
/* ---------------------------------------------------------
	side
----------------------------------------------------------*/
#side{
	width: 194px;
	float: right;
}
#side input[type="text"]{
	border: 1px solid #ccc;
}
#side .ssec{
	border: 1px solid #ccc;
	padding: 12px;
	margin-bottom: 10px;
}
#side .ssec h3{
	margin-bottom: 14px;
	text-align: left;
}
#side #login{
	font-size: 12px;
	font-weight: bold;
	text-align: left;
}
#side #login input[type="text"]{
	width: 164px;
}
#side #login input[type="checkbox"]{
	vertical-align: middle;
}
#side #login dl{
	margin-bottom: 14px;
}
#side #login dt{
	margin-left: 6px;
}
#side #login dd.mini{
	text-align: center;
	font-size: 10px;
}
#side #login .btn{
	text-align: center;
}
#side #cart{
	font-weight: bold;
}
#side #cart dl{
	position: relative;
	margin-bottom: 10px;
}
#side #cart dl dt,
#side #cart dl dd{
	padding: 3px 0;
}
#side #cart dl dt{
	position: absolute;
	width: 66px;
	font-size: 12px;
}
#side #cart dl dd{
	margin-left: 66px;
	font-size: 16px;
}
#side #cart .btn{
	text-align: center;
}
#side #category.ssec{
	padding: 0;
	border: 0;
}
#side #category.ssec h3{
	margin-bottom: 0px;
	padding-top: 5px;
}
#side #category.ssec h3 img{
	display: block;
}
#side #category ul{
	border: 1px solid #ccc;
	border-bottom: none;
}
#side #category li{
	border-bottom: 1px solid #ccc;
	background: url(../img/cmn/pic_arrow_g.png) no-repeat 8px center;
	font-size: 12px;
	font-weight: bold;
}
#side #category li a{
	display: block;
	width: 100%;
	padding: 8px;
	padding-left:24px;
	text-align:left;
	color: #3d3935;	
}
#side #category li.bottom{
	border: 0px;
}
#side #search input[type="text"]{
	width: 164px;
	margin-bottom: 12px;
}
#side #search .btn{
	text-align: center;
}
#side #bnrs.ssec{
	border: 0;
	padding: 0;
}
#side #bnrs.ssec img{
	display: block;
}
#side #bnrs.ssec li{
	margin-bottom: 10px;
}
#side #fb.ssec{
	border: 0;
	padding: 0;
}

/* ---------------------------------------------------------
	pagetop
----------------------------------------------------------*/
#pagetop{
	clear: both;
	width: 960px;
	margin: 0 auto;
	text-align: right;
	margin-top: 60px;
}
/* ---------------------------------------------------------
	footer
----------------------------------------------------------*/
#footer_wrap{
	border-top: 3px solid #7f7f7f;
	min-height: 160px;
	background-color: #f5f5f5;
	width: 100%;
}
#footer{
	width: 960px;
	margin: 0 auto;
	padding-top: 30px;
}
#footer ul.foot-nav{
	text-align: center;
	margin-bottom: 54px;
}
#footer ul.foot-nav li{
	display: inline;
	font-size: 12px;
	font-weight: bold;
	margin: 0 3px;
}
#footer ul.foot-nav li a{
	color: #333;
}
#footer_wrap .copy{
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	color: #333
}
.dum_img {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

#header_wrap{
	background:none;
}
#topcolumn{
	padding:0;
}
.prod_list_cb {
	border-top-style: dashed;
	border-top-color: #999;
	border-top-width: 0;
	padding-top: 0;
	margin-top: 0;
	overflow: hidden;
}
.prod_list_cb.bdr_1  {
	border-top-width: 1px;
	padding-top: 20px;
	margin-top: 20px;
}
div.list_area {
	width: 223px;
	margin-left: 15px;
	padding-bottom: 0;
	float: left;
	overflow: visible;
}
div.listphoto {
	float: none;
}

div.listrightbloc h3 {
	font-size: 14px;
	line-height: 1.4;
	font-weight: normal;
	margin-top: 6px;
	text-align:left;
	padding-left: 0!important;
	border-bottom: none!important;
}
div.listrightbloc .pricebox{
	text-align:right;
}

h2.title {
margin-bottom: 10px;
padding: 8px;
border-top: solid 2px #666;
color:#666;
padding-left:20px;
text-align:left;
background:none;
font-size: 18px;
font-weight:bold;
border-bottom:solid 1px #ccc;

}
.sale_price {
    color: #E30A2A;
}
.pagenumber_area{
	text-align:left;
	
}
#page_navi_bottom {
	margin-top: 4em;
	border-top:solid 1px #ccc
}
#detailarea h3 {
	text-align:left;
	border-bottom:none;
	font-size: 16px;
	font-weight: normal;
	margin-top: 10px;
	margin-bottom: 1em;
}
#detailarea div.photo {
	margin-bottom: 1em;
	text-align: center;
}
div#detailphotobloc {
	width: 420px;
	float: left;
}
#detailrightbloc {
	width: 270px;
	padding-right: 20px;
	float: right;
}
#detailrightbloc .cart_area {
	background: none;
	border: none;
	padding: 0;
}
#detailarea,
.sub_area {
	overflow: hidden;
	text-align: left;
}
div.subphotoimg {
	width: 130px;
	margin-left: 10px;
	margin-top: 10px;
	float: left;
}
div.subphotoimg a img {
	display: block;
}
#detailrightbloc .sale_price {
	color: #5B4B3B;
}
#detailrightbloc .sale_price ,
#detailrightbloc .normal_price {
	/* text-align: right; */
}
#detailrightbloc .sale_price .price ,
#detailrightbloc .normal_price .price {
	color: #990000;
}
#detailrightbloc .sale_price .price{
	font-size: 18px;
	color: #E30A2A;
}
#detailrightbloc div.classlist {
	background: none;
	margin-top: 10px;
	padding-bottom: 0;
}
dl.quantity {
	margin-bottom: 10px;
}
div#customervoice_area {
    clear: both;
	text-align:left;
    padding: 35px 0 0 0;
}
div#customervoice_area h3{
	margin-bottom:10px;
	border-bottom: solid 2px #E30A2A;
	font-weight: bold;
}

div#customervoice_area .review_bloc {
	background:none;
}
#main.contact{
	/* margin-top:30px; */
}
div#undercolumn_cart .point_announce {
    padding: 20px;
    margin-bottom: 20px;
    border: solid 1px #ddd;
    background: #f3f3f3;
    font-size: 120%;
    text-align: center;
    line-height: 140%;
}
.attention{
	color:#E30A2A;
}