@charset "utf-8";


/*----------------------------------*/
/*          スタイル初期化          */
/*----------------------------------*/

/*height: 100vh;*/
html { height: 100%; }
#container{
	height:100%;
}
#dropmenu{
	height:auto;
  z-index: 20;
}


body,div,dl,dt,dd,ul,li,ol,li,h1,h2,h3,h4,h5,form,p,table,th,td{
	margin:0;
	padding:0;
}

body{
    font-family: '小塚ゴシック Pro','Kozuka Gothic Pro',sans-serif;
    line-height: 1.2;

	color:#333333;
}

a img,img{
	border:0;
}

ul,li,ol,li{
	list-style:none;
}

table{
    border-collapse:collapse;
    border-spacing:0;
}

caption,
th {
    text-align:left;
}

a{
	text-decoration:underline;
	color: #0096d4;
}

a:hover{
	text-decoration:none;
}


/*----------------------------------*/
/*          clearfix決定版          */
/*----------------------------------*/

.clearfix{
	zoom:1;
}

.clearfix:after{
	content:'';
	display:block;
	clear:both;
	height:0;
}


/*----------------------------------*/
/*          共通スタイル            */
/*----------------------------------*/

body{
	font-size:12px;
  height: 100%;             /* #wrapperのmin-heightに対して必要なもの */
}

#wrapper{
  height: 100%;         /* 中身が少なくても高さ100%にする */
}
#main_menu{
	width:85%;
	margin:0 auto;
background-color: #f2fffe;
border: 2px solid #55bdb2;
-moz-border-radius: 9px;
-webkit-border-radius: 9px;
border-radius: 9px;
-moz-box-shadow: 0px 0px 12px #000000;
-webkit-box-shadow: 0px 0px 12px #000000;
box-shadow: 0px 0px 12px #000000;
font-size:14px;
}


/*ヘッダ*/
#header{
	box-sizing: border-box;
	width: 100%;
	min-width: 1000px;
	margin: 0 auto 15px;
}
#header #logo{
	box-sizing: border-box;
	height: 84px;
}
#header .header_top{
	position: relative;
	height: 86px;
	border-bottom: 1px solid;
	margin: 0 auto;
}
#header .header_bar{
	height: 30px;
	background-color: #303030;
}
#header .header_bar .wrapper {
	width: 1000px;
	margin: 0 auto;
}
#header .header_bar .change_button{
	display: inline-block;
	width: 200px;
	color: white;
}
#header .header_bar .change_button ul li{
	box-sizing: border-box;
	width: 100px;
	height: 30px;
	text-align: center;
	font-size: 15px;
	padding-top: 8px;
	float: left;
}
#header .header_bar .change_button ul li.now{
	background-color: #c4424b;
}
#header .header_bar .change_button ul li:hover{
	background-color: #F03939;
	cursor: pointer;
}
#header #logo{
	float:left;
	width:450px;
}
#header #logo a { display: inline-block; }
#header #navi{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 100;
}
#header #navi .adult_change {
	/* display: inline-block; */
	display: none;
	vertical-align: middle;
	border-left: 1px solid #bbb;
}
#header #navi .adult_change span {
	display: inline-block;
	padding: 15px 10px;
}
#header #navi .adult_change span:hover { color: red; }
#header #navi ul.icons{
	display: inline-block;
	vertical-align: middle;
}
#header #navi ul.icons >li{
	display: inline-block;
	vertical-align: middle;
	position: relative;
}
#header #navi ul.icons >li.cart img{
	padding: 10px 6.5px;
}
#header #navi ul.icons >li.cart .count {
	position: absolute;
  right: 0;
  top: 0;
  font-size: 14px;
  padding: 2px 6px;
  background: red;
  color: white;
  font-weight: bold;
  border-radius: 14px;
}
#header #navi ul.icons >li.open {
	background-color: #eee;
}
#header #navi ul.icons >li >img { cursor: pointer; }
#header #navi ul.icons >li.signup img{
	padding: 10px;
}
#header #navi ul.icons >li .hidden_box {
	display: none;
	position: absolute;
	right: 0;
}
#header #navi ul.icons >li.open .hidden_box {	display: block; }
#header #navi ul.icons >li #signup_box{
	width: 350px;
	background-color: rgba(255,255,255,0.9);
	box-shadow: 0 0 8px rgba(34, 34, 34, .1);
	text-align: left;
	padding: 25px;
}
#header #navi ul.icons >li #signup_box .btn_area {
	margin-bottom: 15px;
}
#header #navi ul.icons >li #signup_box .btn_area .btn.signup { margin-bottom: 10px; }
#header #navi ul.icons >li #signup_box .btn_area .btn a {
	display: block;
	width: 60%;
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	text-align: center;
	border-radius: 30px;
	margin: 0 auto;
}
#header #navi ul.icons >li #signup_box .btn_area .btn.signup a {
	background: linear-gradient(to right, #F37A59, #D04F57);
	color: white;
	border: 2px solid transparent;
}
#header #navi ul.icons >li #signup_box .btn_area .btn.login a {
	border-top: 2px solid transparent;
  border-right: 2px solid #D04F57;
  border-bottom: 2px solid transparent;
  border-left: 2px solid #F37A59;
	font-weight: bold;
  background: linear-gradient(to right, #F37A59, #D04F57);
}
#header #navi ul.icons >li #signup_box .btn_area .btn.login a span {
	display: block;
	background-color: white;
	border-radius: 30px;
	color: #D04F57;
}
#header #navi ul.icons >li #signup_box .link_area {
	border-top: 1px solid #E16358;
	padding-top: 15px;
}
#header #navi ul.icons >li #signup_box .link_area ul { font-size: 0; }
#header #navi ul.icons >li #signup_box .link_area ul li {
	display: inline-block;
	width: 50%;
	font-size: 14px;
	margin-bottom: 10px;
}

#header #navi .top_search{
	display: inline-block;
	vertical-align: middle;
	position: relative;
	margin-right: 15px;
}
#header #navi .top_search form{
	display: table;
}
#header #navi .top_search form .text_area {
	display: table-cell;
}
#header #navi .top_search form .text_area input[type='text']{
	border: 1px solid #bbb;
	border-radius: 15px 0 0 15px;
	background-color: white;
	width: 200px;
	height: 30px;
	font-size: 15px;
	padding: 0 0 0 10px;
}
#header #navi .top_search form .text_area input[type='text']:focus { outline: 0; }
#header #navi .top_search form .submit_area {
	display: table-cell;
	vertical-align: middle;
}
#header #navi .top_search form .submit_area input[type="image"]{
	width: 20px;
	height: 20px;
	background-color: #3392FF;
	padding: 6px 10px 6px 5px;
	border-radius: 0 15px 15px 0;
}
#header #navi .top_search form .submit_area input[type="image"]:focus { outline: 0; }

#main_menu{
	background:url(../../../common/img/menu_bak.gif);
	margin-bottom:10px;
}

#main_menu ul li{
	float:left;
	font-weight:bold;
	font-size:14px;
}

#main_menu ul li a{
	color:#FFF;
	padding:15px 17px 15px 32px;
	display:block;
	background:url(../../../common/img/list_icon2.gif) no-repeat 17px center;
	text-decoration:none;
}

#main_menu ul li a:hover{
	background-color:#00685f;
}


/*フッタ*//*
#footer{
	margin-top:25px;
	border-top:1px solid #bfbfbf;
	padding-left: 5px;
}

#footer .navi{
	padding:12px 0 15px 0;
}

#footer .navi li{
	display:inline;
	background:url(../../../common/img/list_icon3.gif) no-repeat left 2px;
	padding:0 0 0 10px;
	margin:0 20px 0 0;
	font-size:11px;
}

#footer .navi li a{
	color:#555;
}*/
#footer{
	min-width: 1000px;
}
#footer .go_top{
	background-color: #E75252;
	height: 50px;
	width: 100%;
}
#footer .go_top:hover{
	opacity: 0.8;
}
#footer .go_top a{
	box-sizing: border-box;
	display: block;
	height: 100%;
	padding-top: 17px;
  text-decoration: none;
}
#footer .go_top a p{
	text-align: center;
	color: white;
	font-weight: 600;
	font-size: 16px;
}
#footer .box1{
	width: 100%;
	background-color: #e7e7e7;
}
#footer .box1 .table{
	display: table;
	width: 60%;
	padding-top: 30px;
	padding-bottom: 30px;
	margin: 0px auto;
}
#footer .box1 .table .table_row{
	display: table-row;
	margin: 0px auto;
}
#footer .box1 .table .table_row .table_cell{
	display: inline-block;
	width: 30%;
	float: left;
	margin-right: 5%;
}
#footer .box1 .table .table_row .table_cell:last-child{
	margin-right: 0;
}
#footer .box1 .table .table_row .table_cell .cell_head{
	font-weight: 600;
	font-size: 15px;
	padding: 5px 0px;
	border-bottom: 1px dotted;
}
#footer .box1 .table .table_row .table_cell ul{
	padding-top: 5px;
}
#footer .box1 .table .table_row .table_cell ul li{
	margin: 4px 0px;
}
#footer .bottom_logo{
	box-sizing: border-box;
	height: 88px;
	width: 100%;
	background-color: #e7e7e7;
	border-top: 1px solid;
	border-bottom: 1px solid;
}
#footer .bottom_logo img{
	display: block;
	margin: 0px auto;
}
#footer .box2{
	box-sizing: border-box;
	height: 50px;
	width: 100%;
	color: white;
	background-color: black;
	padding-top: 10px;
}
#footer .box2 .agreement{
	width: 100%;
}
#footer .box2 .agreement ul{
	padding-top: 10px;
	display: table;
	margin: 0px auto;
}
#footer .box2 .agreement ul li{
	display: table-cell;
	padding-left: 10px;
	padding-right: 10px;
	border-right: 1px solid white;
}
#footer .box2 .agreement ul li:last-child{
	border-right: 0;
}


#contents{
	width: 1000px;
	min-height:100%;
	margin: 0 auto;
}
#contents.full-screen {
	width: 100%;
	min-width: 1000px;
}
#contents #contents_wrapper { display:flex;}
#contents .contents_m{
	box-sizing: border-box;
	min-width: 600px;
	width: 100%;
}
#contents .contents_m.no-padding { padding: 0; }
#contents .contents_m >img{
	width: 100%;
}
#contents .contents_m .contents_box3{
	margin-bottom: 10px;
}
#contents .contents_m .contents_box3 .top_news{
	margin-bottom: 0px;
}
#contents .contents_m .contents_box3 .more p {
	text-align: right;
	font-size: 14px;
	margin-bottom: 10px;
}
#contents .contents_s{
	width: 200px;
	min-width: 200px;
	box-sizing: border-box;
	vertical-align: top;
}
#contents .contents_s h2,#contents .contents_s .list{
	box-sizing: border-box;
}
/*見出し*/
#contents h2{
	background-color: #303030;
	border:0px solid #fff;
	border-radius: 10px;
	padding:5px 0px 5px 10px;
	margin-bottom:1px;
	font-size:15px;
	color :#fff;
	text-shadow: 1px 1px 1px #000;
  margin-bottom: 10px;
	font-weight: 500;
}

#contents h3{
	border-left:5px solid #009185;
	padding:5px 8px 5px 7px;
	margin-bottom:15px;
	font-size:14px;
}


/*汎用スタイル*/
#contents .ta_left{
	text-align:left;
}

#contents .ta_right{
	text-align:right;
}

#contents .s{
	text-decoration:line-through;
}


/*----------------------------------*/
/*          トップページ            */
/*----------------------------------*/

#item_regist{
	display: flex;
}
#item_regist a{
	display: inline-block;
	border: 1px solid black;
	padding: 20px 70px;
  margin: 0px auto;
	font-size: 20px;
	font-weight: bold;
	color: white;
	background-color: #EA7237;
	text-decoration: none;
}
#item_regist a:hover{
	opacity: 0.8;
}

#contents .contents_m ul.attr_list li {
	display: inline-block;
	width: 49%;
	font-size: 14px;
	line-height: 2;
	color: #7D3333;
	vertical-align: top;
}
#contents .contents_m ul.attr_list li::before {
	content: "・";
}
p.hint{
	font-size: 15px;
	margin: 10px 0;
}
p.hint #access_change{
	color: red;
}
p.hint #access_change:hover{
	cursor: pointer;
}

/* slide_banner */
#contents .slide_banner .banner_container{
	position: relative;
	height: 200px;
	overflow: hidden;
}
#contents .slide_banner_goods .banner_container {
	height: 265px;
}
#contents .slide_banner .banner_container .banner_side{
	position: absolute;
	width: calc(50% - 250px);
	height: 200px;
	overflow: hidden;
	background-color: black;
	opacity: 0.5;
	z-index: 10;
}
#contents .slide_banner_goods .banner_container .banner_side {
	height: 265px;
	width: calc(50% - 500px);
}
#contents .slide_banner .banner_container .banner_right{
	margin-left: calc(50% + 250px);
}
#contents .slide_banner_goods .banner_container .banner_right {
	margin-left: calc(50% + 500px);
}
#contents .slide_banner .banner_container .banner_button{
	position: absolute;
	width: 500px;
	height: 200px;
	overflow: hidden;
	background-color: black;
	opacity: 0.5;
	z-index: 10;
	cursor: pointer;
}
#contents .slide_banner_goods .banner_container .banner_button {
	width: 1000px;
	height: 265px;
}
#contents .slide_banner .banner_container .banner_left_button{
	right:0px;
}
#contents .slide_banner .banner_container:hover .banner_button_arrow{
	opacity: 1;
}
#contents .slide_banner .banner_container .banner_button_arrow{
	opacity: 0;
	width: 20px;
	height: 20px;
	border-bottom: 5px solid white;
  border-right: 5px solid white;
	position: absolute;
	transition: opacity 1s;
}
#contents .slide_banner .banner_container .banner_button_arrow_left{
	right:0px;
	top:87.5px;
	transform: rotate(135deg);
}
#contents .slide_banner_goods .banner_container .banner_button_arrow_left {
	top:120px;
}
#contents .slide_banner .banner_container .banner_button_arrow_right{
	left:0px;
	top:87.5px;
	transform: rotate(-45deg);
}
#contents .slide_banner_goods .banner_container .banner_button_arrow_right {
	top:120px;
}
#contents .slide_banner .banner_container .banner_wrapper{
  position: absolute;
	margin-left: calc(50% - 250px);
	width: 500px;
	height: 200px;
}
#contents .slide_banner_goods .banner_container .banner_wrapper {
	margin-left: calc(50% - 500px);
	width: 1000px;
	height: 265px;
}
#contents .slide_banner .banner_container .banner_wrapper .banner_pager{
	position: absolute;
	opacity: 0;
	width: 500px;
	height: 20px;
	padding-top: 20px;
  bottom:0px;
	z-index: 10;
	transition: opacity 1s;
}
#contents .slide_banner_goods .banner_container .banner_wrapper .banner_pager {
	width: 1000px;
}
#contents .slide_banner .banner_container .banner_wrapper .banner_pager ul{
	height: 10px;
	text-align: center;
}
#contents .slide_banner .banner_container:hover .banner_wrapper .banner_pager{
	background: linear-gradient(to bottom,transparent 0,rgba(0,0,0,.9) 100%);
	opacity: 1;
}
#contents .slide_banner .banner_container:hover .banner_wrapper .banner_pager ul li{
  opacity: 1;
}
#contents .slide_banner .banner_container .banner_wrapper .banner_pager ul li{
	opacity: 0;
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #C0C0C0;
	cursor: pointer;
	z-index: 10;
	margin-left: 5px;
	margin-right: 5px;
	transition: opacity 0.5s;
}
#contents .slide_banner .banner_container .banner_wrapper .banner_pager ul li span{
	display: none;
}
#contents .slide_banner .banner_container .banner_wrapper .banner_pager ul li.current_position{
	background-color: red;
}
#contents .slide_banner .banner_container ul.banner_items{
	width: max-content;
	position: absolute;
	margin: 0;
	padding: 0;
	list-style: none;
}
/* explorer */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	#contents .slide_banner .banner_container ul.banner_items{
		width: 30000px;
	}
}
#contents .slide_banner .banner_container ul.banner_items li{
	box-sizing: border-box;
	display: inline;
	width: 500px;
  list-style: none;
	float: left;
	margin: 0;
	padding: 0;
}
#contents .slide_banner .banner_container ul.banner_items li img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#contents .slide_banner_goods .banner_container ul.banner_items li {
	width: 1000px;
}
#contents .slide_banner .banner_container ul li a{
	display: block;
}

/* top_banner */
#contents #top_banner {
	text-align: center;
	font-size: 0;
	padding: 15px;
}
#contents #top_banner table {
	border: 0;
	margin: 0;
}
#contents #top_banner table td {
	border: 0;
	padding: 0 0 0 15px;
}
#contents #top_banner table td:first-child { padding: 0; }
#contents #top_banner img {
	width: 100%;
	max-width: 500px;
	height: auto;
}

#contents .basket_container{
	margin-bottom: 10px;
	min-height: 200px;
}
#contents .basket_container>h1{
	margin-top: 75px;
}
#contents .basket{
	position: relative;
	min-height: 240px;
}
#contents .basket .main{
	box-sizing: border-box;
	display: inline-block;
	width: calc(100% - 310px);
}
#contents .basket .main .list ul li.item_list{
	height: 200px;
	position: relative;
	border-bottom: 1px solid;
	border-left: 1px solid;
	border-right: 1px solid;
	padding: 10px;
}
#contents .basket_orders .main .list ul li.item_list {
	height: 120px;
}
#contents .basket .main .list ul li.item_list:first-child{
	border-top: 1px solid;
}
#contents .basket .main .list ul li.item_list >div{
	position: relative;
	float: left;
	box-sizing: border-box;
	height: 200px;
}
#contents .basket_orders .main .list ul li.item_list >div{
	height: 120px;
}
#contents .basket .main .list ul li.item_list .img{
	width: 200px;
	margin-right: 10px;
}
#contents .basket .main .list ul li.item_list .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#contents .basket .main .list ul li.item_list .info{
	width: calc(100% - 410px);
	border-right: 1px solid;
}
#contents .basket .main .list ul li.item_list .info .attribute{
	margin-bottom: 10px;
}
#contents .basket .main .list ul li.item_list .info .attribute ul li{
	display: inline-block;
}
#contents .basket .main .list ul li.item_list .info .attribute span{
	display: inline-block;
	box-sizing: border-box;
	font-size: 12px;
	border-radius: 4px;
	padding: 5px 8px 5px 8px;
}
#contents .basket .main .list ul li.item_list .info .attribute span.dl{
	color: white;
	background-color: #404040;
}
#contents .basket .main .list ul li.item_list .info .attribute span.goods{
	color: white;
	background-color: #E75252;
}
#contents .basket .main .list ul li.item_list .info .attribute span.category{
	color: white;
	background-color: #71BFE9;
}
#contents .basket .main .list ul li.item_list .info .attribute span.new{
	color: white;
	background-color: #EB4EAC;
}
#contents .basket .main .list ul li.item_list .info .title{
	font-weight: 600;
	font-size: 14px;
	margin-bottom: 5px;
}
#contents .basket .main .list ul li.item_list .info .company{
	color:#5778ED;
}
#contents .basket .main .list ul li.item_list .info .delete{
	position: absolute;
	bottom: 0;
}
#contents .basket .main .list ul li.item_list .info .delete span{
	cursor: pointer;
}
#contents .basket .main .list ul li.item_list .info .delete span:hover{
	text-decoration: underline;
}
#contents .basket .main .list ul li.item_list .price{
	width: 200px;
	text-align: right;
}
#contents .basket .main .list ul li.item_list .price p{
	margin: 5px 0px;
}
#contents .basket .main .list ul li.item_list .price p.discount{
	display: inline-block;
	background-color: red;
	color: white;
	width: 150px;
	text-align: center;
	border-radius: 4px;
	padding:2px 0px;
}
#contents .basket .main .list ul li.item_list .price p.price_origin{
	color: red;
	font-size: 18px;
	font-weight: 600;
}
#contents .basket .main .list ul li.item_list .price p.quantity {
	font-size: 20px;
}
#contents .basket .main .list ul li.item_list .price p.quantity input {
	font-size: 20px;
}
#contents .basket .main .list ul li.item_list .price p.price_origin_onsale{
	text-decoration: line-through;
	opacity: 0.8;
}
#contents .basket .main .list ul li.item_list .price p.price_discount{
	color: red;
	font-size: 18px;
	font-weight: 600;
}
#contents .basket .main .list ul li.item_list .price p.product_point{
	position: absolute;
	bottom: 25px;
	right: 0;
	font-size: 15px;
	margin: 0;
}
#contents .basket .main .list ul li.item_list .price p.product_point span{
	font-size: 20px;
	font-weight: bold;
}
#contents .basket .main .list ul li.item_list .price p.subtotal{
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 18px;
	margin: 0;
}
#contents .basket .main .list ul li.item_list .price p.subtotal span.subtotal_number {
	font-size: 20px;
	color: red;
	font-weight: bold;
}
#contents .basket .main .result{
	box-sizing: border-box;
	padding: 10px;
}
#contents .basket .main .result p{
	text-align: right;
	font-weight: 600;
	font-size: 18px;
}
#contents .basket .main .result p span{
	color: red;
}
#contents .basket .main .submit {
	text-align: right;
}
#contents .basket .main .submit button {
	width: 224px;
  height: 54px;
  font-size: 18px;
	background: #404040;
  color: white;
}
#contents .basket #purchase{
	position: absolute;
	right: 0;
	top: 0;
	padding: 20px;
	box-sizing: border-box;
	width: 300px;
	background-color: #f6f6f6;
	border:solid;
}
#contents .basket #purchase .purchase_result{
	min-height: 50px;
}
#contents .basket #purchase .purchase_result p{
	font-weight: 600;
	font-size: 18px;
}
#contents .basket #purchase .purchase_result p span{
	float: right;
	color: red;
}
#contents .basket #purchase .product_point {
	text-align: right;
}
#contents .basket #purchase .product_point p {
	font-size: 18px;
}
#contents .basket #purchase .button_buy{
	text-align: center;
}
#contents .basket #purchase .button_buy button {
	display:inline-block;
	width: 224px;
	height: 54px;
	box-sizing: border-box;
	font-size:18px;
	font-family:Arial;
	border-radius: 4px;
	color:#ffffff;
	text-shadow:1px 1px 0px #1570cd;
 	-webkit-box-shadow: 1px 0px 0px -7px #97c4fe;
 	-moz-box-shadow: 1px 0px 0px -7px #97c4fe;
 	box-shadow: 1px 0px 0px -7px #97c4fe;
  text-decoration: none;
	background-color: #DB8D12;
}
#contents .basket #purchase .button_buy button:hover{
	opacity: 0.8;
	cursor: pointer;
}
/*end*/

#contents .basket2 {
	display: table;
	width: 100%;
	min-height: 240px;
}
#contents .basket2.normal { display: block;}
#contents .basket2 .main {
	box-sizing: border-box;
  display: table-cell;
  width: 68%;
	padding: 20px 10px 20px 20px;
}
#contents .basket2 .main .list table.basket_items_table { margin-top: 0; }
#contents .basket2 .main .list table.basket_items_table caption {
  color: black;
	background-color: #EBEBEB;
	border: 1px solid #ccc;
	border-bottom: 0;
}
#contents .basket2 .main .list table.basket_items_table tr { border-bottom: 1px solid #ccc; }
#contents .basket2 .main .list table.basket_items_table tr td { border: 0; }
#contents .basket2 .main .list table.basket_items_table tr td.img { width: 20%; }
#contents .basket2 .main .list table.basket_items_table tr td.img img {
	width: 100%;
	height: auto;
}
#contents .basket2 .main .list table.basket_items_table tr td.info {
	width: 50%;
	font-size: 15px;
	font-weight: bold;
}
#contents .basket2 .main .list table.basket_items_table tr td.count {
	width: 10%;
	font-size: 15px;
	font-weight: bold;
}
#contents .basket2 .main .list table.basket_items_table tr td.price {
	width: 10%;
	font-size: 15px;
	font-weight: bold;
}
#contents .basket2 .main .list table.basket_items_table tr td.delete { width: 10%; }
#contents .basket2 .main .list table.basket_items_table tr td.delete span {
	display: inline-block;
	padding: 2px 8px;
	background: #EBEBEB;
	cursor: pointer;
}
#contents .basket2 #purchase {
	display: table-cell;
	width: 32%;
  padding: 20px 20px 20px 10px;
	vertical-align: top;
	font-size: 14px;
}
#contents .basket2.normal #purchase {
	display: block;
	width: 40%;
	margin: 0 auto;
}
#contents .basket2 #purchase .wrapper {
	padding: 10px 5px;
	border: 1px solid #CCC;
	border-radius: 25px;
}
#contents .basket2 #purchase .red { color: red; }
#contents .basket2 #purchase .big {
	font-size: 20px;
	font-weight: bold;
}
#contents .basket2 #purchase .ft_right { float: right; }
#contents .basket2 #purchase .sum {
	padding: 0 5px;
	margin-bottom: 5px;
}
#contents .basket2 #purchase .sum_point {
	padding: 0 5px;
	margin-bottom: 5px;
}
#contents .basket2 #purchase .button {
	border-top: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
	padding: 10px;
	margin: 0;
}
#contents .basket2.normal #purchase .button {
	border: 0;
}
#contents .basket2 #purchase .button button {
	width: 90%;
	background-color: red;
	color: white;
	border: 0;
	border-radius: 25px;
	font-size: 16px;
	padding: 8px;
	cursor: pointer;
}
#contents .basket2 #purchase .add_info {
	font-weight: bold;
	margin: 20px;
}

#contents .contents_s{
	width:200px;
}

#contents .contents_s .contents_box1{
	margin-bottom:20px;
}

.contents_box1 select{
	width: 176px;
}
#contents .contents_s .contents_box1 .home_icon{
	width: 200px;
	height: 200px;
	background: url(../../../common/img/home_side1.png);
}
#contents .contents_s .contents_box1 .home18_icon{
	width: 200px;
	height: 200px;
	background: url(../../../common/img/home_side2.png);
}
#contents .contents_s .contents_box1 .go_home{
	text-align: center;
	font-size: 16px;
}
#contents .contents_s h2{
	background:url(../../../common/img/menu_bak.gif);
	padding:10px;
	margin:0;
	border:2px solid #d5d5d5;
	border-radius: 15px;
	font-size:15px;
}

#contents .contents_s .list{
	padding:10px;
}

#contents .contents_s .list dt{
	margin-bottom:2px;
}

#contents .contents_s .list dd{
	margin-bottom:8px;
}

#contents .contents_s .list p{
	text-align:center;
	margin:10px auto 0 auto;
}

#contents .contents_s .list li{
	padding:0px;
	margin:2px 0 4px 0;
	line-height:150%;
}


/*ログイン*/
#contents .contents_s .list .login input[type="submit"]{
	width: 100%;
	background: none;
	background-color:#3392ff;
	border: 1px solid #367ed2;
	border-radius: 20px;
	margin:5px 0 4px;
	display:block;
	text-decoration:none;
	font-weight:bold;
	color:white;
	padding:5px;
	text-align: center;
}
#contents .contents_s .list .login input[type="submit"]:hover{
	opacity: 0.8;
	cursor: pointer;
}
#contents .contents_s .list .login input[type="submit"]:focus { outline: 0; }
/* 商品属性 */
#contents .contents_s .attr_box {
	font-size: 12px;
	padding: 10px;
}
#contents .contents_s .attr_box .attr_name {
	border-bottom: 1px solid #eee;
	color: #85949e;
	line-height: 1.6em;
}
#contents .contents_s .attr_box ul.attr_value_list li {
	margin-top: 8px;
}
#contents .contents_s .attr_box ul.attr_value_list li a {
	display: block;
	position: relative;
}
#contents .contents_s .attr_box ul.attr_value_list li a::before {
	content: "";
  display: inline-block;
	position: absolute;
  width: 8px;
  height: 8px;
  border-right: 2px solid rgba(0,0,0,0.6);
  border-bottom: 2px solid rgba(0,0,0,0.6);
  box-sizing: border-box;
  transform: rotate(-45deg) translateY(-100%);
  right: 0;
  top: 50%;
}
#contents .contents_s .attr_box ul.attr_value_list li a:hover {
	text-decoration: none;
	opacity: 0.75;
}
#contents .contents_s .attr_box ul.attr_value_list li .attr_value {
	display: inline-block;
	max-width: 70%;
	vertical-align: middle;
}
#contents .contents_s .attr_box ul.attr_value_list li .count {
	display: inline-block;
	color: #85949e;
	vertical-align: middle;
}

#contents .contents_s ul.sidebar_list a{
	text-decoration: none;
}
#contents .contents_s ul.sidebar_list li{
	font-size: 11px;
	line-height: 1.4em;
	padding: 5px 10px;
	border-bottom: 1px dotted gray;
}
#contents .contents_s ul.sidebar_list li:hover{
	color: red;
}
#contents .contents_s .more{
	text-align: right;
	margin-top: 5px;
	font-weight: bold;
}
#contents .contents_s .more:hover {
	color: red;
}
#contents .contents_s .more::before {
	content: "▶";
}
#contents .contents_s_l {
	padding-right: 10px;
}
#contents .contents_s_r {
	padding-left: 10px;
}
/*ランキング*/
#contents .rank_box .list{
	padding-bottom:0;
}

#contents .rank_box .list .switch{
	margin:0 auto 10px auto;
	padding:0;
	text-align:center;
}

#contents .rank_box .list .switch li{
	display:inline;
	background:none;
	padding:0 8px;
	margin:0 -1px 0 0;
	border-right:1px solid #666;
	border-left:1px solid #666;
}

#contents .rank_box .list .rank li{
	background:none;
	padding:7px 0;
	border-top:1px dotted #CCC;
	zoom:1;
}

#contents .rank_box .list .rank li:after{
	content:'';
	display:block;
	clear:both;
	height:0;
}

#contents .rank_box .list .rank li h3{
	border:none;
	padding-left:30px;
	font-size:12px;
	background:no-repeat left top;
	margin: 0;
}
#contents .rank_box .list .rank li h3 .title_box {
	height: 4.2em;
  line-height: 1.4;
  overflow: hidden;
}
#contents .rank_box .list .rank li h3 .title_box a {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

#contents .rank_box .list .rank li.r1 h3{
	background-image:url(../../../common/img/rank01.gif);
}

#contents .rank_box .list .rank li.r2 h3{
	background-image:url(../../../common/img/rank02.gif);
}

#contents .rank_box .list .rank li.r3 h3{
	background-image:url(../../../common/img/rank03.gif);
}

#contents .rank_box .list .rank li.r4 h3{
	background-image:url(../../../common/img/rank04.gif);
}

#contents .rank_box .list .rank li.r5 h3{
	background-image:url(../../../common/img/rank05.gif);
}

#contents .rank_box .list .rank li.r6 h3{
	background-image:url(../../../common/img/rank06.gif);
}

#contents .rank_box .list .rank li.r7 h3{
	background-image:url(../../../common/img/rank07.gif);
}

#contents .rank_box .list .rank li.r8 h3{
	background-image:url(../../../common/img/rank08.gif);
}

#contents .rank_box .list .rank li.r9 h3{
	background-image:url(../../../common/img/rank09.gif);
}

#contents .rank_box .list .rank li.r10 h3{
	background-image:url(../../../common/img/rank10.gif);
}

#contents .rank_box .list .rank li .img{
	float:left;
	width:73px;
}

#contents .rank_box .list .rank li .img img{
	border: 1px solid #C2C2C2;
}

#contents .rank_box .list .rank li div p{
	width:85px;
	margin:0 0 3px auto;
	text-align:left;
}

#contents .rank_box .list .rank li div .price span{
	color:#D60000;
	font-weight:bold;
	padding-right:3px;
}

#contents .contents_s .list_owner{
	box-sizing: border-box;
	padding:10px;
	border:2px solid #d5d5d5;
	border-top:none;
}
#contents .contents_s .list_owner li{
	background:none;
	padding:7px 0;
	border-top:1px dotted #CCC;
	zoom:1;
}

#contents .contents_s .list_owner li:after{
	content:'';
	display:block;
	clear:both;
	height:0;
}

#contents .contents_s .list_owner li h3{
	border:none;
	margin-bottom:3px;
	padding-left:30px;
	font-size:12px;
}

#contents .contents_s .list_owner li .img{
	float:left;
	width:73px;
}

#contents .contents_s .list_owner li .img img{
	border: 1px solid #C2C2C2;
}

#contents .contents_s .list_owner li div p.price{
	width:97px;
	margin:0 0 3px auto;
	text-align:left;
}
#contents .contents_s .list_owner li div .price span{
	color:#D60000;
	font-weight:bold;
	padding-right:3px;
}
#contents .contents_s .list_owner li div p.cate{
	display: inline-block;
	margin-top: 20px;
	margin-left: 4px;
	padding: 2px 4px 2px 4px;
	border-radius: 4px;
	background-color: #D8D8D8;
}
#contents .regist #form_table form[name="sys_form"] table tr.regist_tag td{
	display: block;
	max-height: 200px;
	overflow: scroll;
}
#contents .regist #form_table form[name="sys_form"] table tr.regist_tag  td label{
	display: inline-block;
	min-width: 120px;
}
/* 2015/07/10 nagata add 商品ページ 説明レイアウト */
#inner { margin:0; position: relative;}
#inner #mainWrap {
	 width:590px;
	 margin-bottom: 100px;
	 background-color: white;
	 padding: 10px;
	 box-sizing: border-box;
 }
#inner #mainWrap .item_img {
	height: 500px;
  padding: 20px;
	box-sizing: border-box;
	margin-bottom: 10px;
	border: 1px solid #ccc;
}
#inner #mainWrap .item_img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#inner #mainWrap .sample_area{
	background-color: white;
	margin: 0 auto 10px;
}
#inner #mainWrap .sample_area .sample_img{
	display: inline-block;
	border: 1px solid #CCCCCC;
	padding: 5px;
}
#inner #mainWrap #product_review_summary{
	margin-bottom: 5px;
}
#inner #mainWrap #product_review_summary .review_summary_wrapper{
	display: flex;
}
#inner #mainWrap #product_review_summary .review_summary_star{
	display: inline-block;
	font-size: 0;
	margin: auto 0;
}
#inner #mainWrap #product_review_summary .review_summary_star span.star_l{
	display: inline-block;
	width: 10px;
	height: 20px;
	background: url(../../../common/img/star_off_l_30.png);
	background-size: contain;
}
#inner #mainWrap #product_review_summary .review_summary_star span.star_l.on{
	background: url(../../../common/img/star_on_l_30.png);
	background-size: contain;
}
#inner #mainWrap #product_review_summary .review_summary_star span.star_r{
	display: inline-block;
	width: 10px;
	height: 20px;
	background: url(../../../common/img/star_off_r_30.png);
	background-size: contain;
}
#inner #mainWrap #product_review_summary .review_summary_star span.star_r.on{
	background: url(../../../common/img/star_on_r_30.png);
	background-size: contain;
}
#inner #mainWrap #product_review_summary .review_summary_comment{
	display: inline-block;
	margin-left:10px;
}
#inner #mainWrap #product_review_summary .review_summary_comment .aver_count{
	font-size: 16px;
	line-height: 16px;
}
#inner #mainWrap #product_review_summary .review_summary_comment .aver_count span.review_summary_head{
	display: inline-block;
	width: 55px;
	font-size: 11px;
}
#inner #mainWrap #product_review_summary .review_summary_comment .aver_count span.review_summary_body{
	display: inline-block;
	font-weight: bold;
	font-size: 11px;
}
#inner #mainWrap #product_review_summary .review_summary_comment .aver_count .aver{
	box-sizing: border-box;
	height: 20px;
	border-bottom: 1px dotted;
	padding: 2px 0px 1px 0px;
}
#inner #mainWrap #product_review_summary .review_summary_comment .aver_count .count{
	box-sizing: border-box;
	height: 20px;
	padding-top: 4px;
}
#inner #mainWrap .product_note{
	padding: 20px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-size: 14px;
	line-height: 1.8;
}
#inner #mainWrap .product_note2 {
	padding: 20px;
	font-size: 14px;
	line-height: 1.8;
}
#inner #mainWrap .related_keywords {
	padding: 10px;
}
#inner #purchase{
	width: 385px;
	position: absolute;
	right: 0;
	top: 0;
	background: white;
  padding: 15px;
  box-sizing: border-box;
}
#inner #purchase .product_attribute {
	padding: 10px;
	margin-bottom: 15px;
}
#inner #purchase .product_attribute ul li {
	display: inline-block;
	margin-right: 10px;
}
#inner #purchase .product_title {
	font-size: 22px;
	font-weight: bold;
}
 #inner #purchase .product_price{
	 padding: 20px 15px;
	 border-bottom: 1px solid #ccc;
 }
#inner #purchase .product_price p{
   font-size: 16px;
	 margin-bottom: 15px;
}
#inner #purchase .product_price p span.money{
	font-size: 24px;
}
#inner #purchase .product_price .red{
	color: red;
}
#inner #purchase .product_price p span.product_point {
	font-size: 13px;
	color: black;
}
#inner #purchase .product_price p span.product_point .point {
	font-size: 22px;
	color: black;
}
#inner #purchase .product_price p span.discount {
	color: white;
	background-color: red;
	padding: 2px 4px;
	margin-right: 5px;
}
#inner #purchase .product_price p span.cancel {
	text-decoration: line-through;
}
#inner #purchase .product_buy {
	padding: 20px 15px;
	border-bottom: 1px solid #ccc;
}
#inner #purchase .product_buy .quantity { margin-bottom: 15px; }
#inner #purchase .product_buy .quantity span {
	padding: 5px 30px;
  border-radius: 14px;
  display: inline-block;
  color: red;
	font-size: 16px;
	border: 2px solid red;
	font-weight: bold;
}
#inner #purchase .product_buy .shipping {
	padding: 0 10px;
}
#inner #purchase .product_buy .shipping p {
	font-size: 16px;
	margin-bottom: 8px;
}
#inner #purchase .product_buy .buttons {
	text-align: center;
	margin: 30px 0 0;
}
#inner #purchase .product_buy .buttons img {
	cursor: pointer;
	border-radius: 25px;
}
#inner #purchase .product_favorite {
	text-align: center;
	padding: 20px 15px;
	border-bottom: 1px solid #ccc;
}
#inner #purchase .product_favorite img {
	cursor: pointer;
}
#inner #purchase .notice {
	padding: 20px 15px;
	border-bottom: 1px solid #ccc;
}
#inner #purchase .notice p {
	font-size: 13px;
	line-height: 2;
}
#inner #purchase .notice .red {
	color: red;
	font-weight: bold;
}
#inner #purchase .social_link {
	padding: 10px;
}
#inner #purchase .social_link ul li {
	display: inline-block;
	margin-right: 10px;
}
#inner #purchase .social_link ul li img {
	width: 32px;
	height: 32px;
}
.product_point span{
	color: #71841F !important;
}

#review .review_main{
	border: 1px solid #4AB1DD;
	border-radius: 4px;
	padding: 30px;
}
#review .review_main .review_nobody_commant .review_commant{
	display: inline-block;
	height: 50px;
	line-height: 25px;
}
#review .review_main .review_commant span{
	font-size: 15px;
	font-weight: bold;
}
#review .review_main .review_nobody_commant .review_button{
	display: inline-block;
	float: right;
}
#review .review_main .review_button button{
	width: 300px;
	height: 50px;
	border: 0;
	border-radius: 25px;
	background-color: #3392ff;
	color: white;
	font-size: 18px;
}
#review .review_main .review_button button:hover{
	opacity: 0.8;
}
#review .review_regist .review_button{
	text-align: center;
}
#review .review_regist span:hover{
	cursor: pointer;
}
#review .review_list_container{
	margin-top: 20px;
	padding: 10px;
	border: 1px solid;
}
#review .review_list{
	border-bottom : 1px dotted;
	padding: 10px;
}
#review .review_list:first-child{
	padding-top: 0px;
}
#review .review_list:last-child{
	border-bottom: none;
}
#review .review_list .area1{
	position: relative;
	height: 40px;
	margin-bottom: 10px;
}
#review .review_list .area1 .star{
	display: flex;
	position: absolute;
	font-size: 0px;
	width: 100px;
	height: 40px;
}
#review .review_list .area1 .star .star_wrapper{
	display: inline-block;
	margin: auto;
}
#review .review_list .area1 .title{
	display: flex;
	position: absolute;
	width: calc(100% - 130px - 58px);
	height: 40px;
	word-break: break-all;
	top:0px;
	left:130px;
	font-weight: bold;
	line-height: 20px;
	font-size: 20px;
}
#review .review_list .area1 .title span{
	display: inline-block;
	margin: auto 0px;
}
#review .review_list .area1 .delete{
	display: inline-block;
	position: absolute;
	right: 10px;
	padding: 2px 4px;
	font-size: 14px;
	border: 1px solid red;
	color:red;
}
#review .review_list .area1 .delete:hover{
	cursor: pointer;
}
#review .review_list .area2 .contents{
	margin-bottom: 10px;
	word-break: break-all;
}
#review .review_list .area2 .date{
	margin-bottom: 10px;
}
#review .review_regist span.star_l{
	display: inline-block;
	width: 20px;
	height: 40px;
	background: url(../../../common/img/star_off_l.png);
}
#review .review_regist span.star_l.on{
	background: url(../../../common/img/star_on_l.png);
}
#review .review_regist span.star_r{
	display: inline-block;
	width: 20px;
	height: 40px;
	background: url(../../../common/img/star_off_r.png)
}
#review .review_regist span.star_r.on{
	background: url(../../../common/img/star_on_r.png)
}
#review .review_list span.star_l{
	display: inline-block;
	width: 10px;
	height: 20px;
	background: url(../../../common/img/star_off_l_20.png);
}
#review .review_list span.star_l.on{
	background: url(../../../common/img/star_on_l_20.png);
}
#review .review_list span.star_r{
	display: inline-block;
	width: 10px;
	height: 20px;
	background: url(../../../common/img/star_off_r_20.png)
}
#review .review_list span.star_r.on{
	background: url(../../../common/img/star_on_r_20.png)
}

.clear { clear:both; }
.clear hr { display:none; }

#tabledata{
    line-height:150%;
    margin:5px auto 25px auto;
    border-collapse:collapse;
    border:1px solid #ccc;
}

#tabledata table th{
    border:1px solid #ccc;
    border-right:1px dotted #ccc;
    border-left:none;
    font-weight:bold;
    padding:8px 10px;
    text-align:center;
}


/*----------------------------------*/
/*      下層ページ共通スタイル      */
/*----------------------------------*/

/*テーブル、フォーム*/
#contents table{
	width:100%;
	line-height:150%;
	margin:5px auto 25px auto;
	border-collapse:collapse;
	border:1px solid #ccc;
}

#contents caption{
	background-color:#555555;
	color:#fff;
	font-size:14px;
	font-weight:bold;
	margin:0 auto;
	padding:5px 5px 5px 10px;
	text-align:left;
}

#contents table th{
	background-color:#F4F4F4;
	border:1px solid #ccc;
	border-right:1px dotted #ccc;
	border-left:none;
	font-weight:bold;
	padding:8px 10px;
	text-align:center;
}

#contents table th .att{
	color:#DF0000;
}

#contents table td{
	border:1px solid #ccc;
	border-right:1px dotted #ccc;
	border-left:none;
	padding:8px 10px;
	background-color:#FFF;
	text-align:center;
}

#contents table tr.goods td {
	background-color: #C3E8F1;
}
#contents table .hint{
	font-size:11px;
	color:#666;
}

#contents table td.ta_left{
	text-align:left;
}

#contents table td.validate {
	background-color:#fff4f4;
}

#contents table td.validate .error {
	border:none;
	color:#FF0000;
	font-size:11px;
	font-weight:bold;
	margin:5px 0 0;
	padding:0;
}

#contents .button{
	text-align:center;
	margin:10px auto 20px auto;
}

#contents .button input{
	margin:0 10px 0 0;
}





/*メッセージ*/
#contents .error{
	color:#F00;
	font-weight:bold;
}

#contents p.error{
	color:#F00;
	border:1px solid #F00;
	padding:10px;
	font-weight:bold;
	margin-bottom:15px;
}

#contents #message{
	line-height:150%;
	margin-left:7px;
}

#contents #message ul{
	margin-top:20px;
	line-height:140%;
}

#contents #message li{
	padding:0px;
	margin:0 0 7px 10px;
	line-height:140%;
}

#contents #message p{
	margin:10px 0 10px 0;
}


/*ページャー*/
#contents .search_page{
	margin:20px 0 35px 0;
	width: 70%;
}

#contents .search_page p span{
	font-size:15px;
	font-weight:bold;
}

#contents .search_page ul{
	margin:15px auto 20px auto;
}

#contents .search_page ul li{
	display:inline;
	margin-right:5px;
}

#contents .search_page ul li.focus{
	background-color:#555;
	color:#FFF;
	font-weight:bold;
	padding:5px 8px 5px 8px;
	border:1px solid #AAA;
}

#contents .search_page ul li a{
	display: inline-block;
	padding:5px 8px 5px 8px;
	border:1px solid #AAA;
}

#contents .search_page ul li a:hover{
	background-color:#ebebeb;
}








/*----------------------------------*/
/*    管理者トップページスタイル    */
/*----------------------------------*/

#contents .contents{
	margin-bottom:25px;
}

#contents .contents li{
	padding:0px;
	margin:0 0 10px 10px;
	font-weight:bold;
	line-height:140%;
}

#contents .contents li p{
	font-weight:normal;
	margin-top:4px;
}

#contents .as_info{
	margin:5px 0;
}

#contents .top_news{
	margin-bottom:25px;
}

#contents .top_news li{
	padding:0px;
	margin:0 0 10px 10px;
	line-height:140%;
}
span.arrow{
	display: inline-block;
	width: 6px;
	height: 6px;
	border-right: 2px solid;
	border-top: 2px solid;
	transform: rotate(45deg);
	margin-right: 5px;
}

#contents .top_page{
	margin-bottom:25px;
}

#contents .top_page li{
	padding:0px;
	margin:0 0 10px 10px;
	line-height:140%;
}

#contents .ta_right td{
	text-align:right;
}

#contents .tab_menu{
	text-align:right;
	margin:-5px 0 25px 0;
}

#contents .tab_menu span a{
	background-color:#555;
	color:#FFF;
	text-decoration:none;
	padding:4px 8px 3px 8px;
	margin-right:7px;
	border:1px solid #444;
}

#contents .tab_menu span a:hover{
	background-color:#222;
}

#contents .tab_menu #issue_loading,
#contents .tab_menu #aff_issue_loading,
#contents .tab_menu #sale_loading{
	margin-bottom:20px;
	height:20px;
}


/*----------------------------------*/
/*        商品の一覧スタイル        */
/*----------------------------------*/

#contents #search_table form{
	border:2px solid #DDD;
	background-color:#F4F4F4;
	width:85%;
	margin:0 auto 30px auto;
}

#contents #search_table form table{
	margin:10px auto 10px auto;
	border:none;
}

#contents #search_table form th,
#contents #search_table form td{
	text-align:left;
	border:none;
	background:none;
}

#contents #search_table form th{
	text-align:right;
}

#contents .entry{
	text-align:right;
	margin:0 0 10px 10px;
	font-weight:bold;
	line-height:140%;
}

#contents .entry a{
	padding:0px;
}

/*----------------------------------*/
/*        注文の一覧スタイル        */
/*----------------------------------*/

#contents .ta_right p{
	margin:5px 0 5px auto;
}


/*----------------------------------*/
/*        注文の詳細スタイル        */
/*----------------------------------*/

#contents .button span a{
	background-color:#555;
	color:#FFF;
	text-decoration:none;
	padding:8px 15px 7px 15px;
	margin-right:7px;
	border:1px solid #444;
	font-weight:bold;
}

#contents .button span a:hover{
	background-color:#222;

}




/*----------------------------------*/
/*        注文の登録スタイル        */
/*----------------------------------*/

#contents .attention{
	margin:20px auto;
	padding:20px;
	width:70%;
	text-align:center;
	border:1px solid #F00;
	font-weight:bold;
	margin-bottom:25px;

}


/*----------------------------------*/
/*   ユーザートップページスタイル   */
/*----------------------------------*/

#super_user{
	width:980px;
	margin:0 auto;
	text-align:center;
	background-color:#404040;
	padding-top:10px;
}

#super_user li{
}

#super_user li a{
	padding:5px;
	border:1px solid #CCC;
	width:100px;
	margin:0 auto;
	display:block;
	color:#FFF;
	text-decoration:none;
	font-weight:bold;
}



/*
----------------------------------
2015/06/23 nagata add
トップ ドロップダウンメニュー　多階層版
横サイズは1000ピクセル
----------------------------------
*/

#dropmenu {


    list-style-type: none;
    width: 1000px;
    margin: 0px auto;
    padding: 0;
	border-radius: 0px 0px 30px 30px / 0px 0px 30px 30px;

}
.fixedbar{
	position: fixed;
	top:0px;
}
#dropmenu li {
    position: relative;
    width: 20%;
    float: left;
    margin: 0;
    padding: 0;
    text-align: center;
		border-right: 1px solid white;
}
#dropmenu li a {
    display: block;
    margin: 0;
    padding: 16px 0;
	background:url(../../../common/img/menu_bak.gif);
    /*background: #55bdb2;*/
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    text-decoration: none;
	  text-shadow: 1px 1px 1px #000;
}
#dropmenu li ul {
    list-style: none;
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 0;
}
#dropmenu li ul li {
    overflow: hidden;
    width: 100%;
    height: 0;
    color: #fff;
    transition: .2s;
}
#dropmenu li ul li a {
    padding: 13px 15px;
	background:url(../../../common/img/menu_bak_li1.gif);
    /*background: #5F9EA0;*/
    text-align: left;
    font-size: 11px;
    font-weight: normal;
}
#dropmenu > li:hover > a {  background:url(../../../common/img/menu_bak_li1.gif) }
#dropmenu > li:hover li:hover > a {  background:url(../../../common/img/menu_bak_li2.gif) }
#dropmenu > li:hover > ul > li {
    overflow: visible;
    height: 38px;
}
#dropmenu li ul li ul {
    top: 0;
    left: 100%;
}
#dropmenu li:last-child ul li ul {
    left: -100%;
    width: 100%;
}
#dropmenu li ul li ul:before {
    position: absolute;
    content: "";
    top: 13px;
    left: -20px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left-color: #ffffff;
}
#dropmenu li:last-child ul li ul:before {
    position: absolute;
    content: "";
    top: 13px;
    left: 200%;
    margin-left: -20px;
    border: 5px solid transparent;
    border-right-color: #ffffff;
}
#dropmenu li ul li:hover > ul > li {
    overflow: visible;
    height: 38px;
}
#dropmenu li ul li ul li a {  background: #DC143C }
#dropmenu li:hover ul li ul li a:hover {  background: #DB7093 }

#category_list {
    list-style-type: none;
    width: 200px;
    margin: 0px auto;
    padding: 0;
}
#category_list li {
	box-sizing: border-box;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
#category_list >li {
	border-bottom: 1px solid white;
	border-left: 2px solid white;
	border-right: 2px solid white;
}
#category_list li a {
    display: block;
    margin: 0;
    padding: 11.5px 0 11.5px 10px;
	/*background:url(../../../common/img/menu_bak.gif);*/
	background-color: #CC9038;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    text-decoration: none;
	  text-shadow: 1px 1px 1px #000;
}
#category_list li ul {
    list-style: none;
    position: absolute;
    z-index: 100;
    top: 0;
    left: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
}
#category_list li ul li {
    overflow: hidden;
    width: 100%;
    height: 0;
    color: #fff;
    transition: .2s;
}
#category_list li ul li a {
    padding: 13px 15px;
	background:url(../../../common/img/menu_bak_li1.gif);
    /*background: #5F9EA0;*/
    text-align: left;
    font-size: 11px;
    font-weight: normal;
}
#category_list > li:hover > a {  background:url(../../../common/img/menu_bak_li1.gif) }
#category_list > li:hover li:hover > a {  background:url(../../../common/img/menu_bak_li2.gif) }
#category_list > li:hover > ul > li {
    overflow: visible;
    height: 38px;
}
#category_list li ul li ul {
    top: 0;
    left: 100%;
}
/*
#category_list li:last-child ul li ul {
    left: -100%;
    width: 100%;
}
*/
#category_list li ul li ul:before {
    position: absolute;
    content: "";
    top: 13px;
    left: -20px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left-color: #ffffff;
}
/*
#category_list li:last-child ul li ul:before {
    position: absolute;
    content: "";
    top: 13px;
    left: 200%;
    margin-left: -20px;
    border: 5px solid transparent;
    border-right-color: #ffffff;
}
*/
#category_list li ul li:hover > ul > li {
    overflow: visible;
    height: 38px;
}
#category_list li ul li ul li a {  background: #DC143C }
#category_list li:hover ul li ul li a:hover {  background: #DB7093 }

/*
------------------------------------------------------------
2015/07/09 nagata add
カテゴリ用アイコンの色指定 20色版

説明：
カテゴリの色はこの順番に機械的に割り当てます。
色数が不足した場合は、循環して同じ色を割り当てます。
任意の色をつけたい場合は管理画面の改造が必要です。

その他：
一般向け　button_color_9
成人向け　button_color_1
------------------------------------------------------------
*/

.button_color_1{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding:1px;
    border: 3px double #be0032;
}

.button_color_2{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #ef810f;
}

.button_color_3{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #d86011;
}

.button_color_4{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #e3c700;
}

.button_color_5{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #bbc000;
}

.button_color_6{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #97b64d;
}

.button_color_7{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #00b66e;
}

.button_color_8{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #008e94;
}

.button_color_9{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #006ab6;
}

.button_color_10{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #7445aa;
}

.button_color_11{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #a757a8;
}

.button_color_12{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #da508f;
}

.button_color_13{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #fbdade;
}

.button_color_14{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #f3ddb6;
}

.button_color_15{
    background-color:#fff;
    display:inline-block;
    margin:2px; padding: 1px;
    border: 3px double #fee967;
}

.button_color_16{
    background-color:#fff;
    display:inline-block;
    margin:2px; padding: 1px;
    border: 3px double #ccff99;
}

.button_color_17{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #aaffaa;
}

.button_color_18{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #cfeef3;
}

.button_color_19{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #cbdbe1;
}

.button_color_20{
    background-color:#fff;
    display:inline-block;
    margin:2px;
    padding: 1px;
    border: 3px double #d5c7fb;
}


/* レスポンシブ*/
a:link {text-decoration: none; color:inherit;}
a:visited {text-decoration: none; color:inherit;}
#dropmenu{
	width: 100%;
	min-width: 1000px;
	max-width: 1500px;
	margin: 0 auto 15px;
}
#dropmenu li{
	box-sizing: border-box;
	min-width: 200px;
}


/* ニュースボックス */
#contents #news_gallery { position: relative; }
#contents #news_gallery .news_box {
	display: flex;
}
#contents #news_gallery .news_box .mascot {
	margin-right: 20px;
}
#contents #news_gallery .news_box .mascot img { width: 300px; }
#contents #news_gallery .news_box .news {
	width: calc(95% - 683px);
	margin: 0 20px auto 0;
	box-sizing: border-box;
	border-top-right-radius:0;
	border-bottom-right-radius:0;
}
#contents #news_gallery .news_box .news .title {
	line-height: 30px;
  color: #96D6B1;
  font-weight: bold;
  font-size: 21px;
	margin-bottom: 10px;
}
#contents #news_gallery .news_box .news .title p {
	position: relative;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
#contents #news_gallery .news_box .news .title img {
	position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#contents #news_gallery .news_box .news .contents {
	background-color: white;
	height: 256px;
	font-size: 14px;
	margin: 0;
	overflow-y: scroll;
}
#contents #news_gallery .news_box .news .contents ul li {
	margin: 0 0 10px;
	font-weight: normal;
}
#contents #news_gallery .news_box .news .contents ul li::before {
	content: url("../../img/iconNewsList.gif");
}
#contents #news_gallery .news_box .news .contents ul li:last-child { margin-bottom: 0; }
#contents #news_gallery .news_box .news .contents ul li .date {
	font-weight: bold;
}
#contents #news_gallery .news_box .news .contents ul li .new {
	color: white;
  background: red;
  display: inline-block;
  padding: 0px 4px;
  font-size: 9px;
  line-height: 13px;
}
#contents #news_gallery .news_box .news .contents ul li .news-title {
	margin: 0;
}
/* ギャラリー */
#contents #news_gallery #gallWaku {
	width:360px;
	height:316px;
	overflow:hidden;
	position:absolute;
	right:5%;
	top: 0;
	border: 3px solid #96D6B1;
	border-top-right-radius: 40px;
	border-bottom-right-radius: 40px;
}
/* mascot-hukidasi */
#contents .mascot-hukidasi {
	position:relative;
  padding:10px 20px 10px 20px;
  margin:1em auto 0 25px;
  border:3px solid #96D6B1;
  color:#333;
  background:#fff;
  /* css3 */
  /*
  NOTES:
  -webkit-border-radius:240px 140px; // produces oval in safari 4 and chrome 4
  -webkit-border-radius:240px / 140px; // produces oval in chrome 4 (again!) but not supported in safari 4
  Not correct application of the current spec, therefore, using longhand to avoid future problems with webkit corrects this
  */
  -webkit-border-top-left-radius:40px;
  -webkit-border-bottom-left-radius:40px;
  border-top-left-radius:40px;
	border-bottom-left-radius:40px;
	border-radius: 40px;
}
#contents .mascot-hukidasi:before {
  content:"";
  position:absolute;
  z-index:2;
  top:16%;
  left: -25px;
  width:25px;
  height:25px;
  border-style:solid;
  border-width:3px 0 0 3px;
  border-color:#96D6B1;
  margin-right:-10px;
  background:transparent;
  /* css3 */
  -webkit-border-top-left-radius:60px 60px;
  -moz-border-radius-topleft:60px 60px;
  border-top-left-radius:60px 60px;
  /* reduce the damage in FF3.0 */
  display:block;
	box-sizing: border-box;
}

/* creates smaller curve */
#contents .mascot-hukidasi:after {
  content:"";
  position:absolute;
  z-index:2;
  top: calc(16% + 15px);
  left: -25px;
  width:25px;
  height:10px;
  border-style:solid;
  border-width: 3px 0 0 3px;
  border-color:#96D6B1;
  background:transparent;
  /* css3 */
  -webkit-border-top-left-radius:120px 50px;
  -moz-border-radius-topleft:120px 50px;
  border-top-left-radius:120px 50px;
  /* reduce the damage in FF3.0 */
  display:block;
	box-sizing: border-box;
}

/* creates a small circle to produce a rounded point where the two curves meet */
#contents .mascot-hukidasi > :first-child:before {
  content:"";
  position:absolute;
  z-index:1;
  top: calc(16% + 23px);
  left:-25px;
  width:3px;
  height:3px;
  margin-right:45px;
  background:#f3961c;
  /* css3 */
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  border-radius:10px;
}

/* creates a white rectangle to cover part of the oval border*/
#contents .mascot-hukidasi > :first-child:after {
  content:"";
  position:absolute;
  z-index:1;
  left:-23px;
  top:calc(16% + 3px);
  width:25px;
  height:15px;
	-webkit-border-top-left-radius:90px 60px;
  -moz-border-radius-topleft:90px 60px;
  border-top-left-radius:90px 60px;
  background:#fff;
}

/* お気に入り */
#contents #favorite .favorite_table .btn img {
	border-radius: 25px;
}


.change_button{
	color: white;
	text-align: center;
}
.change_button ul li{
	display: inline-block;
	box-sizing: border-box;
	width: 100px;
	height: 30px;
	text-align: center;
	padding-top: 8px;
	background-color : #303030;
}
.change_button ul li.now{
	background-color: #c4424b;
}
.change_button ul li:hover{
	background-color: #F03939;
	cursor: pointer;
}

div.inform {
	padding: 20px;
  border: 2px dotted red;
  background-color: #eee;
  font-size: 16px;
  font-weight: bold;
}

/* item_list_design1 */
/*
	商品を幅135pxの大きさで複数行で表示します。
	商品と商品の間は、javascriptのmargin_controlで調整します。
*/
#contents .item_list_design1 ul{
	font-size: 0;
	margin-right: 0px;
	display: table-cell;
}
#contents .item_list_design1 ul li{
	font-size: 12px;
	width:135px;
	margin:0 0 25px 0;
	line-height:150%;
	display:inline-block;
	vertical-align:top;

	box-sizing: border-box;
	height: 300px;
}
#contents .item_list_design1 ul li.show_more .table_box {
	display: table;
	width: 100%;
	height: 100%;
}
#contents .item_list_design1 ul li.show_more .table_box button {
	display: table-cell;
	width: 100%;
	height: 100%;
	border: none;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
}
#contents .item_list_design1 ul li.show_more .table_box button:focus { outline: 0; }
#contents .item_list_design1 ul li:hover p:not(.more):not(.outline){
	opacity: 0.6;
}
#contents .item_list_design1 a:hover{
	text-decoration: none;
}

/* item_list_design2 */
/*
	商品を幅135pxの大きさで一行で表示します。
	インデックスがあり、矢印ボタンを押して表示を変えます。
	javascriptのSlideMotionを利用します。
*/
#contents .item_list_design2 .arrow{
	position: relative;
}
#contents .item_list_design2 .arrow .arrow_left_box,#contents .item_list_design2 .arrow .arrow_right_box{
	top:20px;
}
#contents .item_list_design2 .arrow_left_area{
	width: 45px;
	height: 325px;
	display: table-cell;
}
#contents .item_list_design2 .arrow .arrow_left_box{
	position: absolute;
	width: 45px;
	height: 250px;
	opacity: 0.3;
}
#contents .item_list_design2 .arrow .arrow_active:hover{
	background-color: #A4A4A4;
	border-radius:4px;
	opacity: 1;
	cursor: pointer;
}
#contents .item_list_design2 .arrow .arrow_left{
	width: 45px;
	height: 72px;
	position: absolute;
	top:89px;
	background-image: url(../../../common/img/arrow_left.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
#contents .item_list_design2 .arrow_right_area{
	width: 45px;
	height: 325px;
	display: table-cell;
}
#contents .item_list_design2 .arrow .arrow_right_box{
	position: absolute;
	width: 45px;
	height: 250px;
	opacity: 0.3;
}
#contents .item_list_design2 .arrow .arrow_right{
	width: 45px;
	height: 72px;
	position: absolute;
	top:89px;
	background-image: url(../../../common/img/arrow_right.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
#contents .item_list_design2 ul {
	margin-right: 0px;
	display: table-cell;
	font-size: 0;
}
#contents .item_list_design2 ul li{
	width: 135px;
	font-size: 12px;
	box-sizing: border-box;
	animation-name : slidein;
	animation-duration: 1s;
}
@keyframes slidein {
	from{
		opacity: 0;
	}
	to{
		opacity: 1;
	}
}

/* item_list_design3 */
/*
	商品を一行で表示します。
	幅はjavascriptで、150pxくらいで調整されます。
	インデックスがあり、矢印ボタンを押して表示を変えます。
	javascriptのSlideMotion2を利用します。
	rankingクラスを追加することで、クラウンを表示できます。
*/
#contents .item_list_design3 >.title {
	position: relative;
	background-color: black;
	color: white;
	font-weight: bold;
	padding: 5px 10px;
	border-radius: 10px;
}
#contents .item_list_design3 .title .arrow_left {
	display: none;
	position: absolute;
	right: 35px;
	top: 5px;
	cursor: pointer;
}
#contents .item_list_design3 .title .arrow_left.on { display: block; }
#contents .item_list_design3 .title .arrow_right {
	display: none;
	position: absolute;
	right: 15px;
	top: 5px;
	cursor: pointer;
}
#contents .item_list_design3 .title .arrow_right.on { display: block; }
#contents .item_list_design3 ul li {
	display: none;
	position: relative;
	float: left;
	padding: 1%;
	box-sizing: border-box;
}
#contents .item_list_design3 ul li.on { display: inline-block; }

#contents .item_list_design3.ranking ul li:nth-child(1)::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	background-image: url(../../../img/crown-1.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 50px;
	height: 50px;
	transform: translateX(-50%);
}
#contents .item_list_design3.ranking ul li:nth-child(2)::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	background-image: url(../../../img/crown-2.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 50px;
	height: 50px;
	transform: translateX(-50%);
}
#contents .item_list_design3.ranking ul li:nth-child(3)::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	background-image: url(../../../img/crown-3.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 50px;
	height: 50px;
	transform: translateX(-50%);
}

/* item_list_design4 */
/*
	商品を幅50%の大きさで複数行で表示します。
	一行に２つの商品が入ります。
*/
#contents .item_list_design4 {
	display: flex;
	flex-wrap: wrap;
}
#contents .item_list_design4 .item_container {
	width: 50%;
	padding: 15px;
	box-sizing: border-box;
	border-bottom: 1px solid #FFAC5E;
}
#contents .item_list_design4 .show_more {
	width: 100%;
}
#contents .item_list_design4 .show_more button {
	width: 100%;
	height: 50px;
	font-size: 20px;
	border: 0;
	background: rgba(255, 120, 18, 0.1);
}
#contents .item_list_design4 .show_more button:hover {
	background: rgba(255, 120, 18, 0.5);
	cursor: pointer;
}
#contents .item_list_design4 .show_more button:focus { outline: 0; }

/* item_design1 */
#contents .item_design1 {
	width: 100%;
	position: relative;
	border:1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
}
#contents .item_design1 .new {
	position: absolute;
	left: 0;
	top: 0;
	padding: 0 6px;
	background-color: red;
	color: white;
	border-radius: 10px;
}
#contents .item_design1 .img{
	box-sizing: border-box;
	margin-bottom: 0px;
	padding-top: 10px;
	padding-bottom: 9px;
	border-bottom: 1px dotted #ccc;
}
#contents .item_design1 .img img{
	border:none;
}
#contents .item_design1 .title{
	margin: 10px;
	color: blue;
	height: 60px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;
	line-height: 1.3;
	word-wrap: break-word;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
}
#contents .item_design1 .cate{
	margin: 10px;
	height: 20px;
	text-align: center;
	background-color: #D8D8D8;
	border-radius: 4px;
}
#contents .item_design1 .price{
	margin: 10px;
	height: 60px;
}
#contents .item_design1 .price span{
	height: 18px;
	margin-bottom: 2px;
	display: block;
}
#contents .item_design1 .price span.onsale{
	background-color: red;
	border-radius: 4px;
	text-align: center;
	color:white;
}

#contents .item_design1 .hukidasi{
	position: relative;
	display: inline-block;
	border-bottom: 2px dotted Sienna;
	background-color: yellow;
	left:67.5px;
}
#contents .item_design1 .hukidasi .outline{
	visibility: hidden;
	position: absolute;
	width: 135px;
	background-color: red;
	color: white;
	text-align: center;
	border-radius: 10px;
	padding: 10px 5px;
	z-index: 100;
	top: 200%;
	left: 50%;
	box-sizing: border-box;
	margin-left: -68px;
}
#contents .item_design1 >a:hover ~.hukidasi .outline{
	visibility: visible;
}
#contents .item_design1 .hukidasi .outline::after{
	content: "";
	position: absolute;
	bottom: 100%;
	left: 50%;
	margin-left: -10px;
	border-width: 10px;
	border-style: solid;
	border-color: transparent transparent red transparent;
}
#contents .item_design1 .price span.price_detail{
	color:#d60000;
	font-size:14px;
	font-weight:bold;
}

#contents .item_design1 .outline{
	margin:5px 0 5px 0;
	font-size:12px;
	color:#666;
}

/* item_design2 */
#contents .item_design2 {
	position: relative;
	width: 100%;
}
#contents .item_design2 .new {
	position: absolute;
	left: 0;
	top: 0;
	padding: 0 6px;
	background-color: red;
	color: white;
	border-radius: 10px;
}
#contents .item_design2 .img { margin-bottom: 10px; }
#contents .item_design2 .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#contents .item_design2 .title {
	height: 4.2em;
	line-height: 1.4;
  overflow: hidden;
	margin-bottom: 5px;
}
#contents .item_design2 .title span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
#contents .item_design2 .attr {
	text-align: center;
  margin-bottom: 5px;
}
#contents .item_design2 .price {
	text-align: center;
	margin-bottom: 5px;
}
#contents .item_design2 .release {
	text-align: center;
}

/* item_design3 */
#contents .item_design3 { width: 100%; }
#contents .item_design3 .col1 {
  float: left;
	width: 200px;
	position: relative;
}
#contents .item_design3.new .col1::before {
	content: "";
	position: absolute;
	right: 0;
	top: -18px;
	background: url('../../img/imgNewIcon.png');
	width: 67px;
	height: 50px;
}
#contents .item_design3 .col2 {
	margin-left: 210px;
}
#contents .item_design3 .col2 .title {
	font-size: 14px;
	font-weight: bold;
	color: #FF8100;
	margin-bottom: 5px;
}
#contents .item_design3 .col2 .price {
	margin-bottom: 5px;
}
#contents .item_design3 .col2 .price .price {
	color: red;
	font-size: 15px;
}
#contents .item_design3 .col2 .price .price_origin {
	text-decoration: line-through;
	color: #888;
}
#contents .item_design3 .col2 .price .discount {
	display: inline-block;
	padding: 2px 4px;
	color: white;
	background-color: red;
}
#contents .item_design3 .col2 .price .point {
	background: red;
  color: white;
  padding: 2px 4px;
}
#contents .item_design3 .col2 .summary { margin-bottom: 5px; }
#contents .item_design3 .col2 .attr_list a {
	display: inline-block;
	padding: 2px 4px;
	background-color: #eee;
	margin: 0 4px 4px 0;
}

.searchfaled-message{
	font-size: 22px;
	text-align: center;
}

/* member login dialog */
body.member-login-dialog-active { overflow: hidden; }
.member-login-dialog {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
}
.member-login-dialog.open { display: block; }
.member-login-dialog-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.55);
}
.member-login-dialog-panel {
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 420px;
	max-width: calc(100% - 30px);
	padding: 28px;
	transform: translate(-50%, -50%);
	border-radius: 8px;
	background-color: #fff;
	box-shadow: 0 3px 18px rgba(0, 0, 0, 0.35);
}
.member-login-dialog-panel h2 {
	margin: 0 0 20px;
	font-size: 20px;
	text-align: center;
}
.member-login-dialog-close {
	position: absolute;
	top: 6px;
	right: 10px;
	border: 0;
	background: transparent;
	color: #555;
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
}
.member-login-dialog-panel label {
	display: block;
	margin-bottom: 5px;
	font-weight: bold;
}
.member-login-dialog-panel input[type="text"],
.member-login-dialog-panel input[type="password"] {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 14px;
	padding: 9px;
	border: 1px solid #bbb;
	border-radius: 3px;
	font-size: 15px;
}
.member-login-dialog-links a {
	display: block;
	margin-bottom: 7px;
}
.member-login-dialog-submit {
	margin-top: 18px;
	text-align: center;
}
.member-login-dialog-submit input {
	min-width: 150px;
	padding: 9px 22px;
	border: 0;
	border-radius: 20px;
	background: linear-gradient(to right, #F37A59, #D04F57);
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	cursor: pointer;
}
.member-login-sidebar-button,
.member-login-sidebar-button:visited {
	display: block;
	margin: 4px 0 12px;
	padding: 10px 8px;
	border-radius: 20px;
	background: linear-gradient(to right, #F37A59, #D04F57);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
.member-login-sidebar-button:hover,
.member-login-sidebar-button:focus {
	color: #fff;
	opacity: 0.9;
}

/* modern checkout */
#contents .checkout-shell {
	box-sizing: border-box;
	max-width: 1040px;
	margin: 22px auto 60px;
	padding: 0 18px;
	color: #263238;
}
#contents .checkout-shell .checkout-header {
	margin-bottom: 26px;
	padding: 26px 30px 22px;
	border: 1px solid #edf0f2;
	border-radius: 18px;
	background: linear-gradient(135deg, #fff 0%, #fff8f6 100%);
	box-shadow: 0 12px 32px rgba(54, 63, 69, 0.08);
}
#contents .checkout-shell .checkout-eyebrow {
	margin-bottom: 7px;
	color: #d95f57;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.18em;
}
#contents .checkout-shell .checkout-header h2 {
	margin: 0 0 8px;
	font-size: 28px;
	letter-spacing: 0.02em;
}
#contents .checkout-shell .checkout-lead {
	color: #66747b;
	font-size: 14px;
}
#contents .checkout-shell .checkout-steps {
	display: flex;
	width: 260px;
	margin-top: 20px;
}
#contents .checkout-shell .checkout-steps li {
	position: relative;
	box-sizing: border-box;
	width: 50%;
	color: #98a4aa;
	font-size: 12px;
	font-weight: bold;
}
#contents .checkout-shell .checkout-steps li::after {
	content: "";
	position: absolute;
	top: 14px;
	left: 70px;
	width: calc(100% - 72px);
	height: 2px;
	background-color: #e4e9eb;
}
#contents .checkout-shell .checkout-steps li:last-child::after { display: none; }
#contents .checkout-shell .checkout-steps span {
	display: inline-block;
	position: relative;
	z-index: 1;
	width: 28px;
	height: 28px;
	margin-right: 7px;
	border-radius: 50%;
	background-color: #e8edef;
	color: #7b898f;
	line-height: 28px;
	text-align: center;
}
#contents .checkout-shell .checkout-steps .active,
#contents .checkout-shell .checkout-steps .done { color: #d95f57; }
#contents .checkout-shell .checkout-steps .active span,
#contents .checkout-shell .checkout-steps .done span {
	background-color: #d95f57;
	color: #fff;
}
#contents .checkout-shell .checkout-body { min-height: 0; }
#contents .checkout-shell .checkout-body .main {
	display: block;
	width: 100%;
	margin: 0 0 22px;
	padding: 0;
}
#contents .checkout-shell .basket_items_table,
#contents .checkout-shell .checkout-card {
	width: 100%;
	margin: 0 0 22px;
	border: 1px solid #e4e8ea;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	background-color: #fff;
	box-shadow: 0 10px 26px rgba(54, 63, 69, 0.07);
	overflow: hidden;
}
#contents .checkout-shell .basket_items_table caption,
#contents .checkout-shell .checkout-card caption {
	padding: 16px 20px;
	border: 0;
	border-bottom: 1px solid #edf0f2;
	background: #fff;
	color: #263238;
	font-size: 18px;
	font-weight: bold;
	text-align: left;
}
#contents .checkout-shell .basket_items_table tr,
#contents .checkout-shell .checkout-card tr { border-bottom: 1px solid #edf0f2; }
#contents .checkout-shell .basket_items_table tr:last-child,
#contents .checkout-shell .checkout-card tr:last-child { border-bottom: 0; }
#contents .checkout-shell .basket_items_table td,
#contents .checkout-shell .checkout-card th,
#contents .checkout-shell .checkout-card td {
	box-sizing: border-box;
	padding: 16px 20px;
	border: 0;
}
#contents .checkout-shell .checkout-card th {
	width: 230px;
	background-color: #fbfcfc;
	color: #4d5c63;
	font-size: 14px;
}
#contents .checkout-shell .checkout-card td {
	color: #263238;
	font-size: 14px;
}
#contents .checkout-shell .checkout-card input[type="text"],
#contents .checkout-shell .checkout-card input[type="email"],
#contents .checkout-shell .checkout-card input[type="number"],
#contents .checkout-shell .checkout-card select {
	box-sizing: border-box;
	max-width: 100%;
	min-height: 42px;
	padding: 9px 12px;
	border: 1px solid #d7dde0;
	border-radius: 9px;
	background-color: #fff;
	font-size: 15px;
	transition: border-color 0.2s, box-shadow 0.2s;
}
#contents .checkout-shell .checkout-card input[type="text"]:focus,
#contents .checkout-shell .checkout-card input[type="email"]:focus,
#contents .checkout-shell .checkout-card input[type="number"]:focus,
#contents .checkout-shell .checkout-card select:focus {
	border-color: #d95f57;
	box-shadow: 0 0 0 3px rgba(217, 95, 87, 0.14);
	outline: 0;
}
#contents .checkout-shell #use_all {
	display: inline-flex;
	margin-left: 10px;
	color: #d95f57;
	font-weight: bold;
	align-items: center;
	cursor: pointer;
}
#contents .checkout-shell #use_all input { margin-right: 4px; }
#contents .checkout-shell .checkout-notice {
	margin: 0 0 22px;
	padding: 18px 20px;
	border: 1px solid #f1ded8;
	border-radius: 14px;
	background-color: #fffaf8;
	color: #68534d;
	line-height: 1.7;
	text-align: left;
}
#contents .checkout-shell .checkout-summary,
#contents .basket2.normal .checkout-summary {
	box-sizing: border-box;
	display: block;
	width: 100%;
	max-width: 520px;
	margin: 0 0 0 auto;
	padding: 0;
	font-size: 14px;
}
#contents .checkout-shell .checkout-summary .wrapper {
	padding: 20px;
	border: 1px solid #e4e8ea;
	border-radius: 16px;
	background-color: #fff;
	box-shadow: 0 10px 26px rgba(54, 63, 69, 0.07);
}
#contents .checkout-shell .checkout-summary .sum,
#contents .checkout-shell .checkout-summary .sum_point {
	padding: 0;
	margin-bottom: 10px;
}
#contents .checkout-shell .checkout-summary .button {
	margin-top: 16px;
	padding: 0;
	border: 0;
}
#contents .checkout-shell .checkout-summary .button button {
	width: 100%;
	padding: 13px 18px;
	border-radius: 10px;
	background: linear-gradient(to right, #ef765c, #d8525d);
	box-shadow: 0 8px 16px rgba(216, 82, 93, 0.2);
	font-size: 16px;
	font-weight: bold;
}
#contents .checkout-shell .checkout-summary .button button:hover { opacity: 0.9; }
#contents .checkout-shell .checkout-summary .add_info {
	margin: 16px 0 0;
	color: #627178;
	font-size: 13px;
}
#contents .checkout-shell .att {
	color: #d8525d;
	font-size: 12px;
	font-weight: normal;
}

/* payment completion */
#contents .checkout-complete-wrap {
	display: block;
	float: none;
	width: 100%;
}

#contents .checkout-complete-shell {
	max-width: 920px;
}

#contents .checkout-complete-card {
	display: flex;
	margin-bottom: 20px;
	padding: 20px 22px;
	border: 1px solid #dfeae4;
	border-radius: 16px;
	background-color: #f7fcf9;
	box-shadow: 0 8px 22px rgba(54, 63, 69, 0.06);
	align-items: center;
}

#contents .checkout-complete-icon {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	margin-right: 14px;
	border-radius: 50%;
	background-color: #2f9b70;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 42px;
	text-align: center;
}

#contents .checkout-complete-card h3 {
	margin: 0 0 5px;
	color: #263238;
	font-size: 18px;
}

#contents .checkout-complete-card p {
	color: #5e6d67;
	font-size: 14px;
}

#contents .payment-gateway-card,
#contents .payment-support-card,
#contents .payment-bank-card {
	box-sizing: border-box;
	margin-bottom: 18px;
	padding: 22px;
	border: 1px solid #e4e8ea;
	border-radius: 16px;
	background-color: #fff;
	box-shadow: 0 10px 26px rgba(54, 63, 69, 0.07);
}

#contents .payment-gateway-card {
	border-color: #f0d9d5;
	background: linear-gradient(135deg, #fff 0%, #fff8f6 100%);
}

#contents .payment-gateway-kicker {
	margin-bottom: 7px;
	color: #d95f57;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.16em;
}

#contents .payment-gateway-card h3,
#contents .payment-support-card h3 {
	margin: 0 0 9px;
	color: #263238;
	font-size: 19px;
}

#contents .payment-gateway-lead,
#contents .payment-support-card p {
	color: #5d6b71;
	font-size: 14px;
	line-height: 1.7;
}

#contents .payment-gateway-action {
	margin-top: 18px;
}

#contents .payment-gateway-action input,
#contents .payment-gateway-inline-form input[type="submit"] {
	padding: 13px 24px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(to right, #ef765c, #d8525d);
	box-shadow: 0 8px 16px rgba(216, 82, 93, 0.2);
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
}

#contents .payment-gateway-action p {
	margin-top: 8px;
	color: #7b878c;
	font-size: 12px;
}

#contents .payment-support-link {
	display: inline-block;
	margin-top: 8px;
	font-weight: bold;
}

#contents .payment-bank-table {
	width: calc(100% - 44px);
	margin: 0 22px 18px;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
}

#contents .payment-bank-table caption {
	margin: 0;
	padding: 18px 0 10px;
	background-color: transparent;
	color: #718087;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-align: left;
}

#contents .payment-bank-table th,
#contents .payment-bank-table td {
	padding: 13px 15px;
	border: 0;
	border-bottom: 1px solid #edf0f2;
}

#contents .payment-bank-table th {
	width: 190px;
	background-color: #f8fafb;
	color: #526168;
	font-size: 13px;
	text-align: left;
}

#contents .payment-bank-table td {
	background-color: #fff;
	color: #263238;
	font-size: 14px;
	text-align: left;
}

#contents .payment-bank-table .payment-bank-amount-row th,
#contents .payment-bank-table .payment-bank-amount-row td {
	background-color: #fff8f6;
	border-bottom-color: #f3dfda;
}

#contents .payment-bank-table .payment-bank-amount-row td {
	color: #d8525d;
	font-size: 19px;
	font-weight: bold;
}

#contents .payment-bank-table .payment-bank-order-row td {
	font-weight: bold;
	letter-spacing: 0.05em;
}

#contents .payment-bank-card {
	padding: 0;
	overflow: hidden;
}

#contents .payment-bank-header {
	padding: 22px 22px 18px;
	border-bottom: 1px solid #edf0f2;
	background: linear-gradient(135deg, #f8fcff 0%, #f7fcf9 100%);
}

#contents .payment-bank-kicker {
	margin-bottom: 7px;
	color: #2f9b70;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.16em;
}

#contents .payment-bank-header h3 {
	margin: 0 0 7px;
	color: #263238;
	font-size: 20px;
}

#contents .payment-bank-header p {
	color: #617178;
	font-size: 14px;
}

#contents .payment-bank-notice {
	margin: 0 22px 22px;
	padding: 15px 16px;
	border-left: 4px solid #efb963;
	border-radius: 10px;
	background-color: #fffaf2;
	color: #675d48;
	font-size: 13px;
	line-height: 1.7;
}

#contents .payment-bank-notice p {
	margin-bottom: 3px;
}

#contents .payment-bank-notice-title {
	color: #594b32;
	font-size: 14px;
	font-weight: bold;
}

#contents .payment-bank-example {
	margin-top: 9px;
}

#contents .payment-bank-example span {
	display: inline-block;
	margin-right: 8px;
	padding: 1px 7px;
	border-radius: 12px;
	background-color: #efb963;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
}

#contents .payment-gateway-inline-form input[type="submit"] {
	padding: 8px 14px;
	font-size: 13px;
}
