@charset "utf-8";

/* --------------------------------
	Theme CSS for EC-CUBE 3
-------------------------------- */


/* --------------------------------
	Common
-------------------------------- */

body {
	font-family: Roboto, "游ゴシック", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	line-height: 1.4;
	background-color: #f2f2f2;
	color: #525263;
	-webkit-text-size-adjust: 100%;
}

.img_center,
.txt_center {
	text-align: center;
}
.img_right,
.txt_right {
	text-align: right;
}

/****** Base Layout Setting ********/

#header {
	background: #fff;
}
#contents {
	background: #fff;
}

/****** Header Setting ********/


.header_logo_area {
	margin-right: 100px;
}
.header_logo_area .header_logo a:link,
.header_logo_area .header_logo a:visited,
.header_logo_area .header_logo a:hover,
.header_logo_area .header_logo a:active {
	text-decoration: none;
	color: #000;
}
.header_logo_area .header_logo a:hover {
	color: #666;
}


/****** Side Setting ********/

/****** Footer Setting ********/

/****** Effect Setting ********/


/****** Each BlockParts Setting ********/

/* cart area */

#cart_area {
	width: 100%;
	position: absolute;
	right: 0; top: 0;
	z-index: 11;
}
#cart_area p {
	margin: 0;
}
#cart_area p.cart-trigger {
	position: absolute;
	right: 65px;
}

#cart .inner {
	background: #f3f3f3;
}


/* search area */

#search {
	background: #EBEBEB;
	padding: 16px 8px;
}
#search select {
	width: 100%;
}

/* snsbtn_area */
.snsbtn_area .snsbtn {
    float: left;
    height: 20px;
    margin: 0 10px 10px 0;
}

/* --------------------------------
	Top Page
-------------------------------- */

.front_page a:hover img {
	opacity: 0.8;
}
.front_page #contents .row > div {
	padding-bottom: 8px;
}
.front_page #contents .row.no-padding > div {
	padding-bottom: 0;
}

/* Comment Area */

.front_page .comment_area h4 {
	font-size: 24px;
	font-size: 2.4rem;
	margin: 0 0 2px;
}
.front_page .comment_area h5 {
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0;
}
.front_page .comment_area p {
	margin: 10px 0 15px;
}

/* Item List */

.front_page .item_comment {
	color: #444;
}
.front_page .item a {
	padding-bottom: 0;
}
.front_page .item a:hover {
	opacity: 0.8;
}
.front_page .item a:hover img {
	opacity: 1;
}
.front_page #contents_top .item_comment {
	color: #525263;
	font-weight: normal;
	font-size: 14px;
	font-size: 1.4rem;
}
.front_page #contents_top .item_comment.text-warning,
.front_page #contents_top .item_name.text-warning {
	color: #9a947e;
	font-weight: bold;
	font-size: 16px;
	font-size: 1.6rem;
}
.front_page .more_link.text-warning {
	font-weight: bold;
	color: #9A947E;
}

/* news_area */

.news_contents {
	padding: 0;
}
#news_area {
	background: #F8F8F8;
}
#news_area .heading01 {
	padding: 8px;
	text-align: center;
	margin: 0;
}

/* txt_bnr */

.txt_bnr_area {
	padding: 0 0 16px;
}

.txt_bnr {
	background: #f8f8f8;
	border: 1px solid #D9D9D9;
	font-weight: bold;
	padding: 16px;
	margin: 12px 0 0;
	text-align: center;
}
.txt_bnr strong {
	color: #DE5D50;
	font-size: 20px;
	font-size: 2rem;
}
.txt_bnr strong strong {
	font-size: 32px;
	font-size: 3.2rem;
}

.item_gallery {
	clear: both;
}

/* --------------------------------
	Detail Page
-------------------------------- */

#item_detail + row {
	margin-top: -1px;
	background: #fff;
}

/*#item_detail .btn_area li:last-child {
    padding-left: 0;
}
*/


/* Slider */
.slick-loading .slick-list {
    background: #fff url('ajax-loader.gif') center center no-repeat;
}


/* Arrow */

.slick_prev,
.slick_next {
	font-size: 18px;
	font-size: 1.8rem;
	width: 40px; height: 40px;
	line-height: 40px;
}

/* Dots */
.slick-slider {
    /* margin-bottom: 30px; */
}

.slick-dots {
    position: absolute;
    bottom: -45px;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}
.slick-dots li button:before {
	content:" ";
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    text-align: center;
    opacity: .25;
    background-color: black;
	border-radius: 50%;

}
.slick-dots li.slick-active button:before {
    opacity: .75;
    background-color: black;
}

.slick-dots li button.thumbnail img {
	width: 0; height: 0;
}

#item_photo_area .slick-slide {
	text-align: center;
}
#item_photo_area .slick-slide img {
	display: inline-block;
}


/******************************
	Media Query
*******************************/

@media only screen and (max-width: 767px) {

	/* --------- common ---------- */


	/****** Header Setting ********/


	/****** Side Setting ********/


	/****** Effect Setting ********/


}
@media only screen and (min-width: 768px) {

	/* --------- common ---------- */

	#contents {
		padding-top: 30px;
	}

	/****** Header Setting ********/

	/****** Layout ********/

	/* header */

	#header .header_logo_area {
		float: left;
		margin-right: 265px;
	}
	#header #drawer #search {
		position: relative;
	}
	#search {
		background: none;
		padding: 0;
	}
	#member {
		float: right;
	}

	.member ul li {
		display: inline-block;
	}



	/****** Side Setting ********/

	/****** Footer Setting ********/

	/****** Each BlockParts Setting ********/

	/* search area */

	#search select {
		width: auto;
		max-width: 180px;
	}
	/* cart */

	#cart .inner {
		position: absolute;
		right: 0; top: 0;
	}
	#cart_area {
		top: 0; right: 16px;
	}
	#cart_area p {
		border: 1px solid #D9D9D9;
		float: right;
		min-width: 256px;
	}
	#cart_area p.cart-trigger {
		position: relative;
		right: 0;
	}
	#cart_area .inner {
		min-width: 256px;
	}
	#cart_area .cart_price {
		font-size: 12px;
	}
	#cart_area .cart_price .price {
		font-size: 16px;
	}


	/* --------------------------------
		Top Page
	-------------------------------- */

	.front_page #contents .row {
		padding-bottom: 24px;
	}
	/* Comment Area */

	.front_page .comment_area h4 {
		font-size: 32px;
		font-size: 3.2rem;
		margin: 0 0 8px;
	}
	.front_page .comment_area h5 {
		font-size: 20px;
		font-size: 2rem;
	}
	.front_page .comment_area p {
		font-size: 20px;
		font-size: 2rem;
		margin: 24px 0 24px;
	}

	/* news_area */

	.news_contents {
		padding: 0 16px 0 0;
	}

	#news_area .heading01 {
		padding: 16px;
		text-align: left;
	}
	#news_area {
		margin-bottom: 32px;
	}


	/* txt_bnr */

	.txt_bnr_area {
		padding-left: 16px;
	}

	.txt_bnr {
		margin:0 0 16px;
	}

	/* --------------------------------
		Detail Page
	-------------------------------- */

	#item_photo_area .slick-dots {
		margin: 0 -16px;
		position: relative;
		bottom: 0;
	}
	#item_photo_area .slick-dots::after {
		content: "";
		display: table;
		clear: both;
	}

	#item_photo_area .slick-dots li {
		width: 33.33333333%; height: auto;
		padding: 16px;
		margin: 0;
		float: left;
	}

	.slick-dots li button.thumbnail {
		width: 100%; height: auto;
		padding: 0;
	}
	.slick-dots li button.thumbnail img {
		width: 100%; height: auto;
		opacity: 0.8;
	}
	.slick-dots li button.thumbnail:hover img,
	.slick-dots li.slick-active button.thumbnail img {
		opacity: 1;
	}
	.slick-dots li button.thumbnail::before {
		display: none;
	}
}

/* --------------------------------
    display mask
-------------------------------- */
.prevention-masked {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3040;
    background-color: #000;
    filter: alpha(opacity=50);
    opacity: .5;
}

.extra-form {
  margin: 10px 0;
}


.side .category-nav .toggle { display: none; }
.side .category-nav li ul { display: block; }
.side .category-nav li { position: relative; display: inline-block; width: 100%; }
.side .category-nav > li > a { padding: 0 1em; height: 55px; line-height: 55px; border-bottom: none; }
.side .category-nav li a { display: block; }
.side .category-nav li ul { position: absolute; z-index: 100; top: 100%; left: 0; width: 100%; box-shadow: 1px 1px 2px rgba(0,0,0,0.1); }
.side .category-nav li ul li { float: left; overflow: hidden; width: 100%; height: 0; transition: .2s; }
.side .category-nav li ul li a { text-align: left; }
.side .category-nav > li:hover > a {} .side .category-nav > li:hover li:hover > a { background: rgba(204, 204, 204, 0.1)} .side .category-nav > li:hover > ul > li { overflow: visible; height: 50px; }
.side .category-nav li ul li ul { top: 0; left: 100%; }
.side .category-nav li:last-child ul li ul { left: 100%; width: 100%; }
.side .category-nav li ul li ul:before { position: absolute; content: ">"; top: 13px; left: -15px; width: 0; height: 0; }
.side .category-nav li:last-child ul li ul:before { position: absolute; content: "&gt;"; top: 13px; left: -15px; width: 0; height: 0; /* content: "&lt;"; top: 13px; left: 200%; margin-left: -15px; */ }
.side .category-nav li ul li:hover > ul > li { overflow: visible; height: 50px; }
.side .category-nav li ul li ul li a {}
.side .category-nav li:hover ul li ul li a:hover { background: rgba(204, 204, 204, 0.1)}
.side .category-nav ul > li > a,
.side .category-nav ul > li > ul > li > a,
.side .category-nav ul > li > ul > li > ul > li a { padding-left: 10px; }

.navSpecial ul.category-navSpecial	{ border-radius: 5px; border: 2px solid #ccc; }
ul.category-navSpecial	{ display: block; margin: 0; padding: 0; list-style: none; background-color: #ffffff; }
ul.category-navSpecial > li	{ display: -webkit-flex; display: flex; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; border-bottom: 1px solid #ccc; background-color: #ffffff; }
ul.category-navSpecial > li:last-child	{ border-bottom: 0px solid #fff; }
/* ul.category-navSpecial > li > a	{ font-size: 16px; color:#412525; font-weight: 700; padding: 8px 12px 8px 20px; width: calc(100% - 50px); position: relative; background-color: #ffffff; } */
ul.category-navSpecial > li > a	{ font-size: 16px; color:#412525; font-weight: 700; padding: 8px 12px 8px 20px; width: 100%; position: relative; background-color: #ffffff; }
ul.category-navSpecial > li > a img	{ width: 100%; max-width: 120px; }
ul.category-navSpecial > li > a:hover	{ color:#830000; text-decoration: none; background-color: #ffe9e9; }
ul.category-navSpecial > li > a:before { content: ''; width: 8px; height: 8px; position: absolute; top: 50%; left: 5px; margin-top: -4px; border: 0px; border-top: solid 2px #992d2d; border-right: solid 2px #992d2d; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
ul.category-navSpecial > li > a.down	{ width: 50px; border-left: 1px solid #e9e9e9; position: relative; }
ul.category-navSpecial > li > a.down i	{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 18px; }
ul.category-navSpecial > li > a.down i.fa-chevron-down	{ display: none; }
ul.category-navSpecial > li > a.down.collapsed i.fa-chevron-down	{ display: inline-block;  }
ul.category-navSpecial > li > a.down i.fa-chevron-up	{ display: inline-block; }
ul.category-navSpecial > li > a.down.collapsed i.fa-chevron-up	{ display: none; }
ul.category-navSpecial > li > a.down:before	{ display: none; }
ul.category-navSpecial > li > ul	{ width: 100%; margin: 0; padding: 0; list-style: none; }
ul.category-navSpecial > li > ul > li	{ width: 100%; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; border-top: 1px solid #e9e9e9; }
ul.category-navSpecial > li > ul > li > a	{ display: block; width: 100%; font-size: 14px; color:#666666; font-weight: 400; padding: 5px 10px 5px 30px; width: 100%; position: relative; background-color: #ffffff; }
ul.category-navSpecial > li > ul > li > a:hover	{ color:#830000; text-decoration: none; background-color: #ffe9e9; }
ul.category-navSpecial > li > ul > li > a:before { content: ''; width: 5px; height: 5px; position: absolute; top: 55%; left: 15px; margin-top: -4px; border: 0px; border-top: solid 1px #992d2d; border-right: solid 1px #992d2d; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
@media only screen and (max-width: 767px) {
	.navSpecial	{ display: none; }
}
/* ------------ clearfix ------------- */
span.clearfix	{ display:block; }
.clearfix:after	{ content:"."; display:block; height:0; clear:both; visibility:hidden; font-size:0; line-height:0; }
.clearfix	{ *overflow:hidden; *zoom:1; }
.clearfix:not(:target)	{ /* overflow:hidden\9; */ /* zoom:1\9; */ }
* html .clearfix	{ height:1%; overflow:visible; }

