/*
 * shoplist
 */
 .shoplist{
	margin-top:40px;
	margin-bottom:70px;
}
.shoplist .row{
	display: flex;
	column-gap: 20px;
}
.shoplist .item{
	min-width:250px;
	position:relative;

	margin-top:50px;
	border:3px solid #bbb;
	padding:20px;
	border-radius:5px;
	background-color:#f9fbe7;
}
.shoplist .item .catch{
	text-align:center;
	font-weight:bold;
}
.shoplist .item .thumb img{
	min-width:200px;
	max-width:400px;
	width:250px;
	border-radius:3px;
}
@media only screen and (max-width: 560px) {
	.shoplist .item .thumb img{
		width:100%;
	}
}
.shoplist .item .genre{
	font-size:0.9rem;
	position:absolute;
	top:0px;
	right:0px;
	border-radius: 0px 0px 0px 3px;
	background-color:rgba(0,0,0,0.3);

	color:#fff;
	text-align:center;
	font-size:1rem;

	font-weight:bold;
	padding:10px;
}

.shoplist .item .body{
	margin-top:20px;
}
.shoplist .item .text{
}
.shoplist .item .info{
	margin-top:10px;
}
.shoplist .item .campaign{
	font-weight:bold;
}
.shoplist .item .name{
	font-size:22px;
	font-weight:bold;
}
.shoplist .item .btn{
	margin-top:20px;
	width:100%;
}
.shoplist .item .btn .col{
	width:100%;
}
.shoplist .item .star_row{
	font-size:20px;
	font-weight:bold;
}
.shoplist .item .star_str{
	color:#ffc107;
}
.shoplist .item .star{
	color:#f44336;
}

.shoplist .to-hikaku .fa-star{
	color:#ffb300;

}



.shoplist.one{
	margin-top:30px;
	margin-bottom:30px;
}
.shoplist.one .item{
	margin-top:30px;
}


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

	.shoplist .row{
		column-gap: 7px;
	}
	.shoplist .item{
		padding:15px 15px 15px 15px;
	}
	.shoplist .item .body{
		margin-top:15px;
	}
	.shoplist .item .btn{
		margin-top:15px;
	}
	.shoplist .item .genre{
		font-size:0.6rem;
		padding:5px;
	}

	.shoplist .item p{
		margin-top:10px;
		margin-bottom:10px;
	}

	.shoplist .row.liquid{
		display: block;
	}
	.shoplist .item .catch{
		margin-top:10px;
	}

}



/*
 * grade
 */
 .grade .mark{
	display:flex;
	align-items: center;
	justify-content: center;

	margin:0 auto;

	font-size:45px;
	font-weight:bold;

	width:50px;
	height:50px;
	text-align:center;

	vertical-align: middle;
	color:#fff;
	padding:0;
	border-radius:50%;
}
.grade .mark.s{
	background-color:#e94709;
}
.grade .mark.a{
	background-color:#ff8f00;
}
.grade .mark.b{
	background-color:#fdd835;
}

.grade .number{
	display:flex;
	align-items: center;
	justify-content: center;

	margin:0 auto;

	font-size:45px;
	font-weight:bold;

	width:50px;
	height:50px;
	text-align:center;

	vertical-align: middle;
	padding:0;
	border-radius:50%;
}
.grade .number.s{
	color:#e94709;
}
.grade .number.a{
	color:#ff8f00;
}
.grade .number.b{
	color:#fdd835;
}


/*
 * custom_btn_primary
 */
 a.custom_btn_primary {
	display: inline-block;
	/*width: max-content;*/
	width:calc(100% - 60px);
	/*min-width:100%;*/
	text-align: center;
	border-radius: 3px;
	font-size:1.2rem;
	white-space: nowrap;
	color: #fff;
	background-color: #ff1744;
	-webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
	box-shadow: 0 3px 5px rgba(0, 0, 0, .3);

	border-bottom: 5px solid #b71c1c;
	padding:20px 30px 20px 30px;
	text-decoration: none;
	font-weight:bold;
	position:relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
a.custom_btn_primary::after {
	font-family:'FontAwesome';
	content: "\f105";
	position:absolute;
	right:20px;
	top:50%;
	transform: translateY(-50%) translateX(0);
	-webkit-transform: translateY(-50%) translateX(0);
}
a.custom_btn_primary:hover {
	margin-top: 3px;
	border-bottom: 2px solid #b71c1c;
}

@media only screen and (max-width: 500px) {
	a.custom_btn_primary {
		font-size:0.9rem;
	}
}

a.custom_btn_primary.sub {
	background-color: #4caf50;
	border-bottom: 5px solid #388e3c;
}
a.custom_btn_primary.sub:hover {
	border-bottom: 2px solid #388e3c;
}

a.custom_btn_primary.info {
	background-color: #1565c0;
	border-bottom: 5px solid #0d47a1;
}
a.custom_btn_primary.info:hover {
	border-bottom: 2px solid #0d47a1;
}


/*
 * btn-wrap
 */
 .btn-wrap{
	text-align:center;
	margin-top:30px;
	margin-bottom:30px;
}
.btn-wrap p{
	margin:0;
}
.btn-wrap-0{
	text-align:center;
	margin-bottom:0px;
}
.btn-wrap .text{
	margin-bottom:5px;
	font-size:0.9em;
	color:#d50000;
}
.btn-wrap .cta-info-bottom,
.btn-wrap-0 .cta-info-bottom
{
	margin-top:3px;
	font-size:0.85em;
	color:#d50000;
}
@media only screen and (max-width: 560px) {
	.btn-wrap .cta-info-bottom,
	.btn-wrap-0 .cta-info-bottom
	{
		font-size:0.7em;
	}
}


/*
 * name: shoptable_single
 * view: shoptable.php
 */
table.shoptable_single .title{
	font-size:0.8rem;
	color:#666;
}
table.shoptable_single tr th{
	font-size:0.8rem;
}
@media only screen and (max-width: 560px) {
	table.shoptable_single .title{
		white-space: nowrap;
		font-size:0.65rem;
	}
	table.shoptable_single tr td{
		padding:8px;
	}

}

/*
 * name: giftcard_list
 * view: giftcard_list.php
 */
.post .giftcard_list a.item{
	display: block;
	margin-bottom:30px;
	text-decoration:none;
	color:#444;
	padding:10px;
}
.post .giftcard_list a.item:hover{
	background-color:#fafafa;
}
.post .giftcard_list .name{
	font-weight:bold;
}
.post .giftcard_list .info{
	margin-top:10px;
}
.post .giftcard_list .url{
	margin-top:10px;
	color:#0b57d0;
	text-decoration:underline;
}
