@charset "utf-8";
/* 返礼品の共通スタイル */

.ttl, .price { font-weight: bold; }
.item .img_wrap {
    position: relative;
    height: 0;
    background-color: #F8F8F6;
    padding-bottom: 100%;
}
.item .img_wrap img {
	width: auto;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    display: block;
}
.img_wrap .number {
	background: rgba(0,0,0,.7);
    padding: 8px 10px;
    position: absolute;
    color: #fff;
    line-height: 1.4rem;
    bottom: 0;
    right: 0;
	letter-spacing: 0;
	margin: 0;
}
.item a { color: inherit; }
.item-ttl {
    /* letter-spacing: 0; */
    /* margin: 1rem 0 0.5rem; */
    /* line-height: 3rem; */
    /* font-size: 16px; */
    /* font-size: 1.6rem; */
    /* line-height: 2.4rem; */
    /* font-weight: 500; */
    /* text-align: left; */
    /* margin: 0 0 20px; */
    padding-bottom: 10px;
    position: relative;
    text-align: left;
}
.item-ttl::before {
    content: "";
    width: 80%;
    height: 2px;
    background: #000;
    position: absolute;
    bottom: 0;
    left: 0;
}
.item .price {
    /* text-align: right; */
    /* color: #386c85; */
    /* font-weight: bold; */
    /* border-bottom: 2px dotted #b3d2cd; */
    /* display: inline; */
    /* font-size: 18px; */
    /* font-size: 1.8rem; */
}
.item .btn_wrap.col-1 {
	width: auto;
	margin: 2rem 5px 0 5px;
}
.intro_wrap .set {
	background: #F8F8F6;
    padding: 1rem;
}
.intro_wrap .set p:first-child {
	border-bottom: 1px dotted #d9d9d9;
    margin-bottom: 1rem;
}
.message .btn_wrap.col-2 { margin: 3rem auto 0; }

/* 配送方法 */
.save span {
    width: auto;
    text-align: center;
    letter-spacing: 0.2rem;
    line-height: 2rem;
    height: 2rem;
    margin-top: 5px;
    font-size: 14px;
    padding: 0 0.5em;
    color: #fff;
}
.save span.reizou {background: #0071BC;}
.save span.reitou {background: #2E456E;}
.save span.jyouon {background: #CB8C00;}
.save span.sonota {background: #ADADAD;}


/* 数量選択 */
.kosuu li { vertical-align: middle; }
.kosuu li:first-of-type {
    padding-right: 20px;
    box-sizing: content-box;
    width: 3em;
    height: auto;
}
.kosuu li .selectmenu select {
    width: 100%;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4rem;
    padding: 0 30px 0 10px;
    background: url(../img/common/arrow-pull.png) no-repeat 88% 65%, #fff;
    height: 2.4rem;
    border: 1px solid #DDDDDD;
    border-radius: 2px;
}

/* 種類 */
.sold .item-img,
.end .item-img { position: relative; }
.sold .item-img:after,
.end .item-img:after,
.yet .item-img:after{
	content: "";
	display: inline-block;
	position: absolute;
	background: #000;
	background: rgba(0,0,0,.65);
	width: 100%;
	height: 100%;
	text-align: center;
	color: #fff;
	top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	border-radius: 5px;	
}
.sold .item-img:before { 
	content: "売り切れ";
    padding: 0.5rem 1rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    color: #fff;
    min-width: 108px;
	font-size: 18px;
	font-size: 1.8rem;
}
.end .item-img:before { 
	content: "受付終了";
    padding: 0.5rem 1rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    color: #fff;
    min-width: 108px;	
	font-size: 18px;
	font-size: 1.8rem;
}
.yet .item-img:before { 
	content: "受付前";
    padding: 0.5rem 1rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    color: #fff;
    min-width: 108px;
	font-size: 18px;
	font-size: 1.8rem;
}
.limi-period:after {
	content: "";
	display: inline-block;
	background: url(../img/common/label-period.png) no-repeat;
	background-size: contain;
	width: 74.5px;
    padding-bottom: 74.5px;
	position: absolute;
	top: 5px;
	right: 10px;
}
.limi-stock:after {
	content: "";
	display: inline-block;
	background: url(../img/common/label-stock.png) no-repeat;
	background-size: contain;
	width: 74.5px;
    padding-bottom: 74.5px;
	position: absolute;
	top: 5px;
	right: 10px;
}
.sold .btn-red,
.cannot .btn-red,
.end .btn-red {
	background: url(../common/img/btn-bg_bl.png) repeat;
	opacity: 0.3 !important;
	filter: alpha(opacity=30) !important;
	-ms-filter: “alpha( opacity=30 )”!important;
	cursor: default !important;
}
.sold .btn-red a:hover,
.cannot .btn-red a:hover,
.end .btn-red a:hover {
	opacity: 1 !important;
	filter: alpha(opacity=100) !important;
	-ms-filter: “alpha( opacity=100 )”!important;
	cursor: default !important;
}

@media screen and (min-width: 1000px) {
	.add_wrap label { 
		line-height: 3.6rem;
		padding-right: 6rem;
	}
}

@media screen and (max-width: 999px) {
	.item .btn_wrap.col-1 { margin: 2rem auto 0; }	
	
	/* 数量選択、かごに追加 */
	.add_wrap .note { width: 100%; }	
	
	/* 種類 */
	.sold .item-img:before,
	.end .item-img:before,
	.yet .item-img:before {
		font-size: 16px;
		font-size: 1.6rem;
		min-width: 4em;
	}
	.limi-period:after,
	.limi-stock:after { right: 5px; }
}
@media screen and (max-width: 999px) and (min-width: 321px) {
	/* 数量選択、かごに追加 */
	.add_wrap .td { display: table-cell; }
	.add_wrap label { padding-right: 20px; }
}
@media screen and (max-width: 480px) {
	.message { padding: 5rem 3rem; }
}
@media screen and (max-width: 320px) {
	/* 数量選択、かごに追加 */
	.add_wrap { padding: 1rem 1rem 2rem; }
	.add_wrap .kosuu-form { display: inline-block; }	
}

/*=========================================
		cssハック
=========================================*/
/* IE9〜11 */
@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {
	.item .price { 
		display: inline-block;
		line-height: 1.8rem;
	}
	.item .price span { line-height: 1.6rem; }
	.save span {
		line-height: 1;
		padding: 11px 0 0;
		margin-top: 0;
	}
	li.item .img_wrap:before {
		line-height: 1;
		padding: 1.5rem 1rem 0.5rem;
	}
}
/* Edge12〜14 */
@supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {
	.item .price { 
		display: inline-block;
		line-height: 1.8rem;
	}
	.item .price span { line-height: 1.6rem; }
	.save span {
		line-height: 1;
		padding: 11px 0 0;
		margin-top: 0;
	}
	li.item .img_wrap:before {
		line-height: 1;
		padding: 1.5rem 1rem 0.5rem;
	}
}