@charset "utf-8";
/*------------------------------------------------------------
	リセット
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figure { margin: 0; padding: 0; background: transparent; border: 0; outline: 0; font-size: 1em; }
body, table, input, textarea, select, option { font-family: HiraKakuProN-W3; font-size: 1em; } article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary { display: block; } ol, ul { list-style: none; } blockquote, q { quotes: none; } :focus { outline: 0; } ins { text-decoration: none; } del { text-decoration: line-through; }

/*------------------------------------------------------------
	リンク
------------------------------------------------------------*/
a {
	color: #2490d0;
	text-decoration: none;
}
a:link { }
a:visited { }
a:hover { }
a:active { }

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	line-height: 1.3;
	-webkit-text-size-adjust: none;
	color: #333;
}

#main_contents {
	/*padding-top: 70px;*/
}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/

.logo {
	width: 140px;
	height: auto;
}



/*------------------------------------------------------------
	サイドメニュー
------------------------------------------------------------*/

.side_menu ul {
	width: 100%;
	height: auto;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin: 5px 0;
}
.side_menu ul li {
	float: left;
	font-size: 0.75em;
	width: 20%;
	height: 55px;
	padding: 10px 0;
	vertical-align: middle;
	vertical-align: top;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5)/*開始色*/, to(#ddd));/*終了色*/
}

.side_menu ul li a {
	color: #666;
	display: block;
	text-align: center;
}

.side_menu ul li a.m2 {
	border-left: 1px solid #ccc;
}
.side_menu ul li img {
	margin: 0 auto;
	max-width: 30px;
	max-height: 30px;
}

/*------------------------------------------------------------
	検索
------------------------------------------------------------*/
.search_box {
	vertical-align: middle;
	text-align: center;
	width: 90%;
	display: table;
    margin: 0 auto;
	padding: 20px 10px 20px 5px;
}
.search_box div {
	display: table-cell;
	padding-right: 30px;
}
.search_box div:last-child {
	width: 80px;
	padding-right: 0;
}
#keyword {
	width: 100%;
	height:40px;
	border:solid 1px #c0c0c0;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background:#fff;
    vertical-align: middle;
	box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.2) inset;
}
input.search_submit {
	width:80px;
	height:40px;
	background:#333;
	border:solid 1px #333;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	vertical-align: middle;
	color: #eee;
	font-size: 0.75em;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#555)/*開始色*/, to(#222));/*終了色*/
}
.main_visual_box {
	height: 190px;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.item .vis {
	line-height: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 0;
}

.keyword {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 20px;
}

.keyword a {
	color: -webkit-link;
	text-decoration: underline;
	cursor: auto;
	}


/*------------------------------------------------------------
	タイトル
------------------------------------------------------------*/
center h2 {
	width: 100%;
	color: #000;
	padding: 10px 0;
	font-size: 18px;
	/* font-weight: normal; */
	vertical-align:middle;
	border-bottom:#ececec 1px solid;
	margin: 5% 0;
	text-align:left;
	position: relative;
}

center h2:before {
	content: "";
	margin-left: 10px;
}

center h2:after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: " ";
	width: 26px;
	height: 1px;
	background-color: #9f9270;
}

center .inner {
	padding: 0 3%;
}

/*------------------------------------------------------------
	コンテンツレイアウト
------------------------------------------------------------*/

.contents {
	border-top: #efede9 3px solid;
	padding: 5px 0;
}

.contents span {
	font-size: 1.0rem;
	color: #333;
}

.contents ul {
	width: 100%;
	display: table;
}

img {
	width: 100%;
}

.contents ul li {
	padding: 5px;
}

.contents ul li a {
	font-size:0.6em;
	color: #999;
}


h3 {
	color: #333;
	font-size: 1.25em;
}

p.name {
	color: #333;
	font-size: 1.25em;
	margin-bottom:3px;
	font-weight:bold;
}

.contents_arw {
	color: #2490d0;
	font-size: 1.5em;
	text-align: right;
	}


.contents_arw:after {
	font-family: 'FontAwesome';
	content: "\f105";
	}


p.button {
	height: 40px;
	line-height: 40px;
	text-align: center;
	vertical-align: middle;
	font-size: 0.9em;
	font-weight: bold;
	width: 95%;
	background: #f5f5f5;
	text-align: center;
	margin-top:25px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #f5f5f5;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}

p.button a {
	display: block;
}


/*------------------------------------------------------------
	横コンテンツ
------------------------------------------------------------*/


.contents ul li div.contents_img {
	display: table-cell;
	width: 40%;
	vertical-align: top;
	padding:0 10px 0 0;
}

.contents ul li div.contents_text {
	display: table-cell;
	width: 55%;
	vertical-align: top;
}

.contents ul li div.contents_arw {
	display: table-cell;
	width: 5%;
	vertical-align: middle;
	text-align: right;
}

/*イベント*/
.event .contents ul li a {
	font-size:0.75em;
	color: #999;
}

.event .contents ul li {
	border-bottom: 1px #ddd solid;
	padding: 10px;
}


/*スペシャル*/
.special .contents ul li a {
	font-size:0.75em;
	color: #999;
}

.special .contents ul li {
	border-bottom: 1px #ddd solid;
	padding: 10px;
	}


/*------------------------------------------------------------
	特集
------------------------------------------------------------*/

.contents ul li.contents_box {
	display: table-cell;
	width: 50%;
	vertical-align: top;
}

.contents ul li.contents_center {
	display: table-cell;
	width: 50%;
	vertical-align: top;
}

.contents_after {
	padding: 5px 0;
}

/*------------------------------------------------------------
	新着アイテム
------------------------------------------------------------*/

.contents ul li.contents_box {
	display: table-cell;
	width: 33%;
	vertical-align: top;
}

.new .contents ul li span.new_icon {
	position: absolute;
	top: 5px;
	left: 5px;
	background: #e30000;
	display: block;
	width: 30px;
	height:30px;
	line-height: 30px;
	text-align:center;
	vertical-align:middle;
	color: #fff;
	font-size: 0.75em;
	}


.contents_after {
	padding: 5px 0;
}

/*------------------------------------------------------------
	ランキング
------------------------------------------------------------*/

.rank .contents ul li div.contents_img {
	display: table-cell;
	width: 40%;
	vertical-align: top;
	margin: 0 10px 0 0;
}

.rank .contents ul li div.contents_text {
	display: table-cell;
	width: 60%;
	vertical-align: top;
}


.rank .contents ul li {
	border-bottom: 1px #ccc solid;
	padding: 10px;
}

.rank .contents ul li p.rank_num {
	width: 60px;
	height: 20px;
	line-height: 20px;
	vertical-align: middle;
	text-align:center;
	color: #fff;
	background: #2490d0;
	margin: 0 0 5px 0;
	font-size: 1.25em;
	border: 1px solid #2490d0;
}


/* タブデザイン設定 */
.tabarea {
	background: #fff;
	width:100%;
	margin:5px 0 15px;
}
ul.tabs {
	margin:0 auto;
	padding:0px;
	background: #ccc;
	display:table;
	width:96%;
}
ul.tabs li {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	color: #fff;
	display:table-cell;
	text-align:center;
	padding:10px 0;
	font-size:0.75em;
	width:25%;
}

ul.tabs li:first-child{
	border-left: 1px solid #ccc;
}

ul.tabs li:last-child{
	border-right: 1px solid #ccc;
}

ul.tabs li:not(:last-child){
	border-right:1px solid #fff;
}

div.ranking {
	background: #fff;
}
.tabarea .selected {
	background: #fff;
	color: #2490d0;
}

#ranking_2, #ranking_3, #ranking_4 {
	display: none;
}

/*タブ2*/
.tabarea2 {
	background: #fff;
	width:100%;
	margin:5px 0 15px;
}

.tabarea2 .selected {
	background: #fff;
	color: #2490d0;
}

#ranking_6, #ranking_7, #ranking_8 {
	display: none;
}



/*------------------------------------------------------------
	おすすめアイテム
------------------------------------------------------------*/

.recommend .contents ul li.contents_box {
	display: table-cell;
	width: 25%;
	vertical-align: top;
}


/*------------------------------------------------------------
	カテゴリ
------------------------------------------------------------*/

.cate .contents ul {
	display: table;
	width: 100%;
	border-bottom: 1px #ddd solid;
}

.cate .contents ul li {
	display: table-cell;
	width: 50%;
	text-align: left;
	height: 50px;
	line-height: 50px;
	border-left: 1px #ddd solid;
	font-size:1.5em;
	vertical-align:middle;
}

div.contents_subject {
	float: left;
	vertical-align:middle;
	color: #333;
}


/*------------------------------------------------------------
	価格
------------------------------------------------------------*/

.price .contents ul {
	display: table;
	width: 100%;
}

.price .contents ul li {
	text-align: left;
	height: 40px;
	line-height: 40px;
	font-size:1.5em;
	vertical-align:middle;
	border-bottom: 1px #ddd solid;
}

div.contents_subject {
	width: 80%;
	vertical-align:middle;
	color: #333;
}


/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/

.footer ul {
	display: table;
	width: 90%;
	margin: 15px auto;
}

.footer ul li {
	display: table-cell ;
	width: 25%;
	text-align: center;
	font-size: 0.75em;
}

.back {
	width: 100%;
	background-color: #333;
	padding: 10px 0 0 0;
}

.back p {
	text-align:center;
	color: #fff;
	padding:10px 0;
}

.back p.copyright {
	font-size: 0.5em;
}

.pc a {
	color: #fff;
}

/*------------------------------------------------------------
	クリアフィクス
------------------------------------------------------------*/
.cf:after{
	content: "";
	display: block;
	clear: both;
}
.cf {
	zoom:1;
}



/*------------------------------------------------------------
	resizeimage
------------------------------------------------------------*/

.resizeimage img { width: 90%; }

h1.logo span {
    text-indent: -9999px;
    display: block;
}


.spacer {
    display: table-cell;
    width: 100%;
    height: 20px;
}

#ad_area {
    margin-bottom: 20px;
    text-align: center;
}

.header_spacer {
    display: table-cell;
    width: 40%;
}

/*------------------------------------------------------------
	カルーセルエリア
------------------------------------------------------------*/
.carousel_area {
    margin: 0 auto;
    width: 100%;
    height: auto;
}

.carousel_area ul.slick-dots {
    bottom: auto;
}

.carousel_area img {
    max-width: 100%;
    height: auto;
}
.center {
    margin: 0 auto;
}

#ad_area .ad {
    width: 95%;
    height: auto;
    margin: 0 auto;
}

.osusume .top_banner {
	overflow: hidden;
}

.osusume .top_banner li {
	float: left;
	width: 32%;
	margin: 0 2% 0 0;
}

.osusume .top_banner li:first-child {
	float: none;
	width: 100%;
	margin: 3% 0;
}

.osusume .top_banner li:last-child {
	margin-right: 0;
}

.hot_keyword_search .inner .kouho p:last-child {
	margin-top: 0;
	text-align: left;
	line-height: 2.5em;
}

.hot_keyword_search .inner .kouho p a {
	display: inline-block;
	margin-right: 2%;
}

.hot_keyword_search .inner p:last-child {
	margin: 5% 0 0;
}

.ranking_tabs ul.ui-tabs-nav {
	overflow: hidden;
}

.ranking_tabs ul.ui-tabs-nav li {
	float: left;
	width: 20%;
	border-bottom: 2px solid #282828;
	box-sizing: border-box;
	border-right: 1px solid #fff;
}

.ranking_tabs ul.ui-tabs-nav li a {
	display: block;
	background-color: #eeeeee;
	height: 38px;
	line-height: 38px;
	font-size: 14px;
}

.ranking_tabs ul.ui-tabs-nav li:last-child a {
	background-color: #b74429;
	color: #fff;
}

.ranking_tabs ul.ui-tabs-nav li.ui-tabs-active a {
	background-color: #2e2e2e;
	color: #fff;
}

.ranking_tabs .ranking_list-t li {
	overflow: hidden;
	border-bottom: 1px dashed #b1b1b1;
	padding: 3%;
	box-sizing: border-box;
	display: table;
}

.ranking_tabs .ranking_list-t li figure {
	float: left;
	width: 28%;
	display: table-cell;
}

.ranking_tabs .ranking_list-t li .ly {
	float: right;
	width: 68%;
	text-align: left;
	display: table-cell;
	vertical-align: middle;
}

.ranking_tabs .ranking_list-t li .ly .rank {
	vertical-align: bottom;
	margin: 0 0 2%;
}

.ranking_tabs .ranking_list-t li .ly .rank img {
	width: 10%;
	vertical-align: bottom;
}

.ranking_tabs .ranking_list-t li .ly .rank img:last-child {
	width: 25%;
}

.ranking_tabs .ranking_list-t li .ly p {
	font-size: 3vw;
	color: #666;
	line-height: 1.4em;
}

.ranking_tabs .ranking_list-t li:nth-of-type(1) img:first-child,
.ranking_tabs .ranking_list-t li:nth-of-type(2) img:first-child,
.ranking_tabs .ranking_list-t li:nth-of-type(3) img:first-child {
	margin-right: 5px;
}

.ranking_tabs .ranking_list-t li .ly p.explain {
	font-size: 3.2vw;
	color: #000;
}

.ranking_tabs .ranking_list-t li .ly p.price {
	text-align: right;
}

.ranking_tabs .ranking_list-t li .ly p.price a {
	display: inline-block;
	width: 30%;
	padding: 2px 0;
	text-align: center;
	font-size: 3vw;
	color: #fff;
	background-color: #333;
	margin-left: 10px;
	border: 1px solid #ccc;
}

.ranking_tabs .ranking_list-b {
	overflow: hidden;
}

.ranking_tabs .ranking_list-b li {
	float: left;
	width: 32%;
	margin-right: 2%;
	margin-top: 3%;
}

.ranking_tabs .ranking_list-b li:nth-child(3n) {
	margin-right: 0;
}

.ranking_tabs .ranking_list-b li .rank {
	text-align: left;
	margin: 0 0 2%;
}

.ranking_tabs .ranking_list-b li .rank img {
	width: 18%;
}

.ranking_tabs .ranking_list-b li p.name {
	font-size: 3vw;
	text-align: left;
	margin: 5% 0;
	font-weight: normal;
}

.ranking_tabs .ranking_list-b li p.price a {
	display: inline-block;
	width: 60%;
	padding: 3px 0;
	text-align: center;
	font-size: 3vw;
	color: #fff;
	background-color: #333;
	margin-left: 10px;
	border: 1px solid #ccc;
}

.kouho {
	width: 85%;
	margin: 5% auto;
	padding: 5%;
	background-color: #f5f5f5;
	font-size: 0.75em;
	line-height: 1.4em;
	position: relative;
}

.kouho:after {
	position: absolute;
	top: -15px;
	left: 50%;
	margin-left: -15px;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 15px 15px 15px;
	border-color: transparent transparent #f5f5f5 transparent;
}

.slick-next {
	right: 15px !important;
}

.slick-prev {
	left: 15px !important;
	z-index: 9;
}
