@charset "utf-8";

/*
 * ------------------------------------------
 * 変数
 * ------------------------------------------
 */
 :root {
    --black: #303033;
	--black_b: #47474B;
    --blue: #193cb4;
    --blue_2: #0968B7;
    --red: #E60012;
    --white: #fff;
    --gray: #CFCFCF;
	--gray_2: #E5E5E5;
    --light: #ccc;
}

/*--------------------------------------------------*/
/*reset
/*--------------------------------------------------*/
p, dl, dt, dd {
	margin: 0;
	padding: 0;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
img {
	vertical-align: bottom;
}

label{
	cursor: pointer;
}

textarea,input,select{
	border:1px solid var(--light);
	padding:4px;
	box-sizing: border-box;
}
textarea[disabled],input[disabled],select[disabled] {
	cursor: not-allowed !important;
	background-color: #eee;
	opacity: 1;
}

input[type="checkbox"]:checked ,
input[type="radio"]:checked{
	accent-color:var(--black_b);
}

/*--------------------------------------------------*/
/*共通設定
/*--------------------------------------------------*/
body {
	font: 14px/1.5 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	min-width: 1024px;
	color: var(--black);
	background: var(--white);
}
.fL {
	float: left;
}
.fR {
	float: right;
}


.fRed{
	color:#FF0000;
}
.baseColor {
	color:#00BEF2;
}

.dN-pc {
	display: none;
}

/*--link--*/
a {
	text-decoration: none;
	color: var(--black);
}
a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}
a {
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}
/*--ボックス--*/
.box1000 {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}
/*--border--*/
.dotLineT {
	border-top: 1px dotted var(--light);
}
.dotLineB {
	border-bottom: 1px dotted var(--light);
}
.textbox{
	border: solid 2px #69C5F1;
	padding: 3px;
	color : #69C5F1;
}

/* スマホ非表示 */
.sp-only {
	display: none;
}

.mesBox_2{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;
	padding: 0;
}
.redBox{
	padding: 0.5em 1em;
	margin: 1em 0;
	font-weight: bold;
	color: #ff0000;
	background: var(--white);
	border: solid 3px #ff0000;
	border-radius: 10px;
}
.redBox p{
	margin: auto;
	padding: 0;
	text-align: center;
}
.centerRed {
	font-weight: normal;
	font-size: 14px;
	text-align: center;
	color: #ff0000;
}

/*--------------------------------------------------*/
/*header
/*--------------------------------------------------*/
header {
	width: 100%;
	min-width: 1024px;
	padding: 10px 0;
	border-bottom: 1px solid var(--light);
}
header h1 {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}
/*--------------------------------------------------*/
/*メイン画像部分（カスタマイズ可能）
/*--------------------------------------------------*/
.mainKV .pc {
  margin-bottom: 64px;
}
.mainKV .sp {
  display: none;
}
#mainWrap {
	width: 100%;
	min-width: 1024px;
	padding: 32px 0;
}
#mainWrap .mainImg {
	background-color: var(--white);
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}
/*--動画サイズ設定--*/
#mainWrap .mainImg iframe,
#mainWrap .mainImg video {
	width: 100%;
	max-width: 1000px;
	background-color: #000;
}
/*--画像サイズ設定--*/

#mainWrap .mainImg img {
	width: 100%;
}
/*--動画+画像の設定--*/
#mainWrap .movPic {
	display: table;
	table-layout: fixed;
}
#mainWrap .movPic .movBox {
	display: table-cell;
	width: 70%;
	vertical-align: middle;
}
#mainWrap .mainImg .picBox {
	display: table-cell;
	width: 30%;
	vertical-align: middle;
	/* background: #000; *//* Old Browsers */
	/* background: -webkit-linear-gradient(135deg, #000 60%, #04004D); *//*For Old WebKit*/
	/* background: linear-gradient(135deg, #000 60%, #04004D); *//*For Modern Browser*/
	/* background: -mos-linear-gradient(135deg, #000 60%, #04004D); *//*For Old WebKit*/
}
.box25per{ width: 25% !important; }
.box30per{ width: 30% !important; }
.box35per{ width: 35% !important; }
.box40per{ width: 40% !important; }
.box45per{ width: 45% !important; }
.box50per{ width: 50% !important; }
.box55per{ width: 55% !important; }
.box60per{ width: 60% !important; }
.box65per{ width: 65% !important; }
.box70per{ width: 70% !important; }
.box75per{ width: 75% !important; }
.box100per{ width: 100% !important; }

#mainWrap .movPic img {
	width: auto;
	max-width: 300px;
	max-height: 400px;
}
/* youtubeの隙間を埋める */
#mainWrap .mainImg iframe,
#mainWrap .mainImg video {
	vertical-align: bottom;
}

.mesBox{
	max-width: 1000px;
	width: 100%;
	margin:0 auto;
	padding-top:10px;
	font-size: 18px;
	text-align: left;
}

.mesBox p {
	line-height: 200%;
}

/*--------------------------------------------------*/
/*footer
/*--------------------------------------------------*/
footer {
	width: 100%;
	min-width: 1024px;
	border-top: 1px solid  var(--black_b);
	clear: both;
	padding-top: 20px;
}
/* ページトップ */
.pTop {
	text-align: right;
}
.pTop a {
	display: inline-block;
	padding: 4px 16px 4px 32px;
	position: relative;
	color: var(--black_b);
}
.pTop a::after {
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -1px;
	border-top: 2px solid var(--black_b);
	border-left: 2px solid var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

#footerKotei{
	margin: 3em 0 0 0;
}
h2.list-title {
    font-size: 32px;
	font-weight: 300;
	letter-spacing: 0.2em;
	text-align: center;
	margin: 0;
	line-height: 36px;
}

.list-title small {
    font-size: 14px;
	letter-spacing: 0;
    margin-bottom: 40px;
    display: block;
}
footer .fWrap {
	max-width: 1000px;
	width: 100%;
	min-height: 120px;
	margin: 0 auto;
	position: relative;
}
footer h1 {
	position: absolute;
	width: 300px;
	height: 50px;
	top: 0;
	left: 0;
	font-size: 14px;
	font-weight: normal;
}
footer h1 img {
	width: 160px;
	vertical-align: middle;
	margin-left: 10px;
}
footer .yamazaki {
	display: flex;
    vertical-align: middle;
    position: absolute;
    top: 0px;
    left: 0;
    font-size: 14px;
    font-weight: normal;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
    text-align: left;
}
footer .yamazaki img {
	width: 80px;
}
footer .fOperating {
	position: absolute;
	width: 300px;
	height: 20px;
	top: 64px;
	left: 0;
	font-size: 14px;
	font-weight: normal;
	margin: 0.67em 0;
}
footer .fOperating img {
	width: 110px;
	vertical-align: middle;
	margin-left: 10px;
	margin-bottom: 8px;
}
footer .fBox {
	position: absolute;
	width: 550px;
	top: 100px;
	left: 0;
}
footer ul.fNavi li {
	display: inline-block;
	padding: 0 16px 0 0;
	font-size: 12px;
}
footer dl.fInfo {
	position: absolute;
	width: 256px;
	top: 7%;
	right: 0;
	padding: 15px 0 15px 32px;
	border-left: 1px solid var(--light);
}
footer dl.fInfo dd img {
	height: 26px;
	vertical-align: middle;
	margin: 0 4px 4px 0;
}
footer dl.fInfo dd {
	font-size: 11px;
	line-height: 1.4;
}
footer dl.fInfo li.tell {
	font-size: 24px;
	max-resolution: 4px 0 6px;
}
.copyright {
	min-width: 1024px;
	background:  var(--black_b);
	color: var(--white);
	clear: both;
	font-size: 12px;
	padding: 8px 0;
	text-align: center;
	margin-top: 32px;
}
/*--------------------------------------------------*/
/*各ページタイトルなど
/*--------------------------------------------------*/
.pageTitle {
	font-size: 24px;
	color:  var(--black_b);
	text-align: center;
	font-weight: normal;
	margin: 1em auto;
}
/*--------------------------------------------------*/
/*カテゴリー
/*--------------------------------------------------*/
section.cl {
    margin-bottom: 40px;
}
#cateWrap {
	padding: 32px 0;
}
#cateList {
	width: 1020px !important;
	margin: 0 auto;
	padding-top: 24px;
}

#cateList a{
	display:block;
	width: 320px;
	float: left;
	margin: 6px 10px 30px;
}

#cateList dt {
	box-sizing: border-box;
	border-radius: 8px;
	display: table-cell;
	border: none;
	vertical-align: middle;
}
#cateList dt img{
	border-radius: 7px;
	width: 100%;
}

/*矢印*/
#cateList dd {
	display: inline-block;
	padding: 0 0 0 16px;
	position: relative;
	font-size:small;
}
#cateList dd::after {
	position: absolute;
	top: 0px;
	left: 3px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: 7px;
	border-top: 2px solid  var(--black_b);
	border-right: 2px solid  var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*--------------------------------------------------*/
/*サブカテゴリ
/*--------------------------------------------------*/
p.breadcrumbs {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 30px;
	font-size: 12px;
}

p.breadcrumbs a {
	display: inline-block;
	padding: 4px 2px 4px 14px;
	vertical-align:middle;
	position: relative;
	text-decoration: underline;
}
p.breadcrumbs a:last-child{
	text-decoration: none ;
}
p.breadcrumbs a::after {
	position: absolute;
	top: 42%;
	left: 0;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-bottom: 2px solid  var(--black_b);
	border-left: 2px solid  var(--black_b);
	-webkit-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	transform: rotate(225deg);
}
/*--------------------------------------------------*/
/*商品一覧
/*--------------------------------------------------*/

#itemWrap {
	max-width: 1000px;
	width:100%;
	margin: 0 auto;
	overflow:hidden;
	padding: 32px 0;
}
/*--ページナビ--*/
ul.pageNav {
	display: table;
	max-width: 1000px;
	width: 100%;
	margin: 0 auto 16px;
	font-size: 20px;
}
ul.pageNav li {
	display: table-cell;
	padding: 5px 0;
}
ul.pageNav li.next {
	width: 30%;
	text-align: right;
}
ul.pageNav li.next a {
	display: inline-block;
	padding: 4px 20px;
	position: relative;
}
ul.pageNav li.next a::after {
	position: absolute;
	top: 0;
	right: 2px;
	display: block;
	content: '';
	width: 10px;
	height: 10px;
	margin-top: 10px;
	border-top: 3px solid var(--black_b);
	border-right: 3px solid var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

ul.pageNav li.prev {
	width: 30%;
	text-align: left;
}
ul.pageNav li.prev a {
	display: inline-block;
	padding: 4px 20px;
	position: relative;
}
ul.pageNav li.prev a::after {
	position: absolute;
	top: 0;
	left: 2px;
	display: block;
	content: '';
	width: 10px;
	height: 10px;
	margin-top: 10px;
	border-bottom: 3px solid var(--black_b);
	border-left: 3px solid var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
ul.pageNav li.number {
	width: 40%;
	text-align: center;
}
/*--一覧--*/

#itemWrap ul.itemList{
	display: flex;
	flex-wrap: wrap;
	justify-content: left;
}
ul.itemList {
	max-width: 1024px !important;
	width: 100% !important;
	margin: 0 auto;
}
ul.itemList li {
	text-align: left;
    box-shadow: 1px 1px 10px #DDD;
	border-radius: 5px;
	margin: 0 8px 30px 10px;
	position: relative;
	/* width: 230px; */
	width: calc(25% - 20px);
	height: auto !important;
}
ul.itemList li a{
	display: block;
}

ul.itemList li img {
	border-radius: 5px 5px 0 0;
	width: 100%;
	height: 232px;
	object-fit: cover;
}
ul.itemList li .one {
	float: none;
	clear: both;
	margin-left: auto;
	margin-right: auto;
}
/*商品画像：中*/
ul.itemList li.item320 {
	width: 232px;
	/* width: 320px; */
	/* margin-right:12px !important; */
}
ul.itemList li.item320 img {
	margin-bottom: 4px;
	border-radius: 5px 5px 0 0;
	width: 100%;
	/* height: 320px */
}
/*商品画像：大*/
ul.itemList li.item488 {
	width: 488px;
	height: 488px;
	margin-right:24px !important;
}
/*商品残が0*/
ul.itemList li .soldoutFrame {
	position: relative;
}
ul.itemList li img.soldoutOpacity {
	opacity: 0.5;
	width: 100%;
}
ul.itemList li p.soldoutMessage {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	margin: 0;
	padding: 15px 0px;
	background-color: var(--white)FFFAA;
	color:#FF6666;
	font-weight:bold;
	text-align: center;
	font-size: 16px;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
/* 受付終了 */
ul.itemList li img.lblDisabled {
	border-radius: unset;
	position: absolute;
	width: inherit;
	top: 0;
}
/*商品残が定数以下の時*/
ul.itemList.stock {
	text-align: center;
	font-size: 0;
}
ul.itemList.stock li {
	float: none;
	font-size: 14px;
	display: inline-block;
	vertical-align: top;
	margin: 8px 28px 30px;
}
/*矢印*/
ul.itemList li span {
	display: block;
	padding: 6px 4px 6px 16px;
	position: relative;
	font-size: small;
}
ul.itemList li span.indexItemName::after {
	position: absolute;
	top: 5px;
	left: 3px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: 7px;
	border-top: 2px solid  var(--black_b);
	border-right: 2px solid  var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/**
 * 品切れ, ポイント不足, 注文済ラベル表示
 * ラベルの表示位置は画像に対して中央のため、ラベル表示のときのみsoldoutImageボックスで囲う 
 * SYSTEM-3229 【商品受取】品切れ中などの表示がズレて表示しまう
 */
.soldoutFrame .soldoutImage {
	position: relative;
	padding: 0; /* ul.itemList li span のスタイル打ち消し */
	display: block; /* blockが打ち消される案件があるため */
}
.soldoutFrame .soldoutImage::after {
	content: none; /* after要素に矢印が入ってしまうため */
}
.soldoutFrame .soldoutImage .soldoutImage_opacity {
	opacity: 0.5;
	width: 100%;
}
.soldoutFrame .soldoutImage .soldoutImage_message {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.soldoutFrame .soldoutImage .soldoutImage_message > span {
	display: block;
  width: 100%;
  background: var(--white)FFFAA;
  font-size: 16px;
  font-weight: bold;
  color: #FF6666;
  padding: 15px 0.5em;
  text-align: center;
}
.soldoutFrame .soldoutImage .soldoutImage_message > span::after {
	content: none; /* after要素に矢印が入ってしまうため */
}

/* 注釈文 */
.attention_text {
	margin: auto;
	max-width: 1000px;
	width: 100%;
}
/*カテゴリーナビ*/
.cateNavBox {
	padding: 0 0 32px
}
ul.cateNav {
	width: 720px;
	margin: 0 auto;
	text-align: center;
}
ul.cateNav li {
	display: inline-block;
	margin: 0 4px 16px;
}
ul.cateNav li a {
	display: block;
	padding: 6px 14px;
	border: 1px solid var(--black_b);
}
ul.cateNav li a:hover {
	color: var(--blue);
	border: 1px solid var(--blue);
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
.naireList {
	display: block;
	width: 5.4em;
	margin: 0.1em 0.1em;
	padding: 0.2em 0.1em 0.1em 0.3em;
	color: var(--white);
	background-color: #00A0FF;
}
/*--------------------------------------------------*/
/*商品詳細
/*--------------------------------------------------*/
#detailWrap {
	padding:20px 0 32px 0;
}
p.catePrev {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 30px;
	font-size: 12px;
}
p.catePrev a {
	display: inline-block;
	padding: 4px 14px;
	vertical-align:middle;
	position: relative;
}
p.catePrev a::after {
	position: absolute;
	top: 50%;
	left: 2px;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	margin-top: -3px;
	border-bottom: 2px solid var(--black_b);
	border-left: 2px solid var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*詳細ボックス*/
.detailBox {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}
.detailImg {
	width: 500px;
	float: left;
}

.detailImg .bxslider img{
	width: 500px;
	height: 500px;
}

ul#bx-pager {
	text-align: center;
	font-size:0;
}
ul#bx-pager li {
	display:inline-block;
	padding:0 10px;
}
ul#bx-pager li a {
	filter: alpha(opacity=50);
	-moz-opacity: 0.50;
	opacity: 0.50;
}
ul#bx-pager li a:hover, ul#bx-pager li a.active {
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
.detailTx {
	width: 450px;
	float: right;
}
ul.itemDetail li {
	border-bottom: 1px solid var(--light);
	padding: 8px 0;
}
ul.itemDetail li.itemCode {
  font-size: 1.3rem;
}
ul.itemDetail li.itemName {
	border: none;
	font-size: 24px;
	color:  var(--black_b);
	padding-bottom: 0;
}
ul.itemDetail li.itemName h1 {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
ul.itemDetail li h2 {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
.frm_product_detail select{
	margin: 0.5em 0;
}

/* ロゴ画像 */
ul.itemDetail li.logoImage img {
	max-width: 200px;
}
.detailTx dl {
	width: 100%;
	display: table;
}
.detailTx dl dt {
	display: table-cell;
	width: 20%;
	padding: 8px 0;
	border-bottom: 1px solid var(--light);
}
.detailTx dl dd {
	display: table-cell;
	width: auto;
	padding: 8px;
	border-bottom: 1px solid var(--light);
}
.detailTx h5.fRed{
	font-size: 14px;
}

ul.itemCaution li {
	padding: 8px 0;
	font-size:11px;
	line-height: 1.6;
}

.cartBtn {
		width:220px;
		float:left;
}
.cartBtn a {
	display:block;
	width:auto;
	position:relative;
	border-radius:5px;
	padding:15px 20px;
	background: var(--black_b);
	font-size:16px;
	line-height:1.0;
	color:var(--white);
	text-align:center;
	}
.cartBtn a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
	
/* .cartBtn a::before {
	font-family: 'FontAwesome';
	content: '\f06b';
	display:block;
	position: absolute;
	color:var(--white);
	font-size:30px;
	top:11px;
	left:20px;
} */

.cartBtnDisable a {
	background: var(--light);
	color: var(--white);
	pointer-events: none;
}

/*注文+お気に入りボタン*/
.btnBox {
	padding: 2em 0 3em;
}

.likeBtn {
		width:220px;
		float:right;
}
.likeBtn a {
	border: #D76C21 1px solid;
	color: #D76C21;
	display:block;
	width:auto;
	position:relative;
	border-radius:5px;
	padding:14px 20px;
	font-size:16px;
	line-height:1.0;
	text-align:center;
	}
	
.likeBtn a::before {
	font-family: 'FontAwesome';
	content: '\f006';
	display:block;
	position: absolute;
	color:#D76C21;
	font-size:20px;
	top:12px;
	left:14px;
}

.likeBtnDisable a { 
	background: var(--light);
	border:none;
	color: var(--white);
	pointer-events: none;
}
.likeBtnDisable a::before { 
	color: #a0a0a0;
}

/* アレルギーアイコン */
.detailBox .allergiesIcon li {
	float:left;
	margin-right:5px;
}
.detailBox .allergiesIcon img {
	width: 25px;
}

.etcBtn a {
	display:block;
	width:auto;
	height:30px;
	position:relative;
	border-radius:5px;
	padding:19px 0 2px 24px;
	background:var(--black_b);
	font-size:16px;
	line-height:1.0;
	color:var(--white);
	text-align:center;
}
/* 続きを読むアコーディオンボタン */
.grad-wrap {
	position: relative;
}
.grad-wrap + .grad-wrap {
	margin-top: 40px;
}
.grad-trigger {
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: -35px;
	left: 0;
	width: 120px;
	margin: auto;
	padding: 5px;
	color: var(--black_b);
	text-align: center;
	cursor: pointer;
	transition: .2s ease;
	text-decoration: underline;
}
.grad-trigger::after {
	content: "続きを読む" /*クリック前のボタンのラベル*/
}
.grad-trigger .fa {
	margin-right: .5em;
}
.grad-item {
	position: relative;
	margin-bottom: 40px;
	overflow: hidden;
}
.grad-item p {
	margin-bottom: 20px;
}
.grad-item.is-hide {
	height: 150px; /*商品説明隠した後の高さ*/
}
.grad-item.main_comment.is-hide {
	height: 150px; /*商品内容隠した後の高さ*/
}
.grad-item::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 40px; /*グラデーションで隠す高さ*/
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, var(--white) 100%);
	background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, var(--white) 100%);
}
.grad-trigger.is-show {
	bottom: -2em;
}
.grad-trigger.is-show::after {
	content: "閉じる" /*クリック後にボタンのラベルを変える*/
}
.grad-trigger.is-show + .grad-item::before {
	display: none;
}
.naireDetail {
	display: block;
	width: 5.4em;
	margin: 0.5em 0.1em;
	padding: 0.2em 0.1em 0.1em 0.3em;
	color: var(--white);
	font-size: 16px;
	background-color: #00A0FF;
}

/*--------------------------------------------------*/
/*入力フォームページ
/*--------------------------------------------------*/
.likeWrap{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 40px 0 80px;
}

.likeWrap h1{
	font-size: 14px;
	text-align: center;
}

.likeWrap h2{
	font-size: 12px;
	text-align: center;
}

.likeWrap h1.error{
	color: #F00;
	font-size: 16px;
}
.likeWrap h2.error{
	color: #F00;
}
/* アイコン凡例 */
.likeWrap .iconLegendBox{
	margin-bottom: 10px;
}
.likeWrap .iconLegendBox dl{
	display: table;
	width:100%;
}
.likeWrap .iconLegendBox dt{
	width: 30px;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.likeWrap .iconLegendBox dt.dtRecBtn{
	background:#5CB1B1;
	color:var(--white);
}
.likeWrap .iconLegendBox dt.dtDelBtn{
	background:#D9534F;
	color:var(--white);
}
.likeWrap .iconLegendBox dd{
	padding: 0 8px;
}

.likeWrap .likeBox{
	width:auto;
	border: 1px solid var(--light);
	border-top: none;
	margin-bottom:24px;
}

.likeWrap .likeBox dl{
	/* display: table; */

	width:100%;
}

.likeWrap .likeBox dl img{
	width:80px;
}

.likeWrap .likeBox dt{
	display: table-cell;
	width: 100px;
	padding: 8px;
	text-align: center;
	vertical-align: middle;
	border-top: 1px solid var(--light);
	border-right: 1px dotted var(--light);
	padding: 16px 0 16px 16px;
	width: 110px;
}

.likeWrap .likeBox dd{
	display: table-cell;
	padding: 8px;
	border-top:1px solid var(--light);
	vertical-align: middle;
}
/* ギフトを受け取るボタン */
.likeWrap .likeBox dd.dlRecBtn{
	width:180px;
	text-align:center;
	border-left:1px solid var(--light);
	border-right: 1px solid var(--light);
}
.likeWrap .likeBox dd.dlRecBtn a {
	display: inline-block;
	margin: 4px 0;
	position: relative;
	padding:4px 8px 4px 20px;
	border-radius:5px;
	background:var(--black_b);
	color:var(--white);
}
.likeWrap .likeBox dd.dlRecBtn a::before {
	font-family: 'FontAwesome';
	content: '\f00c';
	display: inline-block;
	position: absolute;
	top:4px;
	left:6px;
	color:var(--white);
}
/* 品切れボタン */
.likeWrap .likeBox dd.dlDisBtn{
	/* width:200px; */
    width: 180px; /* ギフトを受け取るボタンに合わせる */
	text-align: center;
	border-left: 1px solid var(--light); /* ギフトを受け取るボタンに合わせる */
    border-right: 1px solid var(--light); /* ギフトを受け取るボタンに合わせる */
}
.likeWrap .likeBox dd.dlDisBtn span {
	display: inline-block;
	margin: 4px 0;
	position: relative;
	padding:4px 8px 4px 20px;
	border-radius:5px;
	background:var(--light);
	color:var(--white);
}
.likeWrap .likeBox dd.dlDisBtn span::before {
	font-family: 'FontAwesome';
	content: '\f119';
	display: inline-block;
	position: absolute;
	top:4px;
	left:6px;
	color:var(--white);
}

.likeWrap .likeBox dd.dlBtn{
	width:120px;
	text-align:center;
	border-left:1px dotted var(--light);
}

.likeWrap .likeBox dd.dlBtn a {
	display: inline-block;
	margin: 4px 0;
	position: relative;
	padding:4px 8px 4px 20px;
	border-radius:5px;
	background:#D9534F;
	color:var(--white);
}
.likeWrap .likeBox dd.dlBtn a::before {
	font-family: 'FontAwesome';
	content: '\f00d';
	display: inline-block;
	position: absolute;
	top:8px;
	left:6px;
	color:var(--white);
}

.likeWrap .likeBox dd.numBtn{
	width:40px;
	text-align:center;
}
.likeWrap .likeBox dd.numBtn i{
	display:block;
	font-size:120%;
}

.likeWrap .likeBox dd.selectBtn{
	width:130px;
	text-align:center;
}
.likeWrap .likeBox dd.selectBtn a{
	display: inline-block;
	margin: 0;
	position: relative;
	padding:8px 10px 8px 10px;
	border-radius:5px;
	background:var(--black_b);
	color:var(--white);
}
/* お客様情報入力に進むボタン */
.formInputBtn{
    width:320px;
    margin: 0 auto 10px;
}
.formInputBtn a::before {
    font-family: 'FontAwesome';
    content: '\f044';
    position:absolute;
    top:12px;
    left:18px;
    font-size:30px;
    line-height:1.0;
    color:var(--white);
}
.formInputBtn a{
    display: block;
    padding: 16px 0 10px 20px;
    position: relative;
    border-radius:5px;
    background:var(--black_b);
    color:var(--white);
    text-align:center;
    font-size:16px;
}
/* ほしい！リストボタン */
.favoriteBtn{
	width:320px;
	margin: 0 auto 10px;
}
.favoriteBtn a::before {
	font-family: 'FontAwesome';
	content: '\f006';
	position:absolute;
	top:10px;
	left:18px;
	font-size:24px;
	line-height:1.0;
	color: #D76C21;
}
.favoriteBtn a{
	border:1px solid #D76C21;
	display: block;
	padding: 10px 0 10px 20px;
	position: relative;
	border-radius:5px;
	/* background:#F93; */
	color: #D76C21;
	text-align:center;
	font-size:16px;
}


/*ギフトボタン*/
.giftBtn {
		width:320px;
		margin: 0 auto;
}

.giftBtn a,
.giftNone a,
.queBtnBox .fixBtn a {
	display: block;
	padding: 10px 0 10px;
	position: relative;
	border:1px solid var(--black_b);
	border-radius:5px;
	background:var(--white);
	color:var(--black_b);
	text-align:center;
	font-size:16px;
	}
	
.giftBtn a::after,
.giftNone a::after,
.queBtnBox .fixBtn a::after {
	position: absolute;
	top: 50%;
	left: 20px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-bottom: 2px solid var(--black_b);
	border-left: 2px solid var(--black_b);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.giftNone {
		width:320px;
		margin:0 auto;
}


/*メールアドレス入力部の注意文言*/
.mail_attention{
	background-color: #EFEFEF;
    padding: 4px;
}

/*--商品情報まわり--*/
.selectItem_wrapper{
	background: var(--light);
	/* padding: 1px; */
}

.selectItemBox{
	background: var(--white);
}


.selectItemBox dl{
	display: table;
	margin: 0;
	width: 100%;
}


.likeWrap .likeBox,
.likeWrap .likeBox dt,
.likeWrap .likeBox dd,
.likeWrap .likeBox dd.dlBtn{
	border:none;
}

.likeWrap .likeBox dl{
	border: 1px solid var(--light);
}

.likeWrap .likeBox dl img{
	border: 1px solid var(--light);
	width: 110px;
}

.selectItemBox .itemName{
	text-align: left;
	font-size: 14px;
}

/*  カウンター   */
.counterGroup{
	overflow: hidden;
	margin: 0 auto;
	border: 1px solid var(--light);
	border-radius: 5px;
	display: table;
}
.counterGroupBtn{
	outline: 0;
	padding:8px 10px;
	width: 25px;
	background: #f5f5f5;
	color: #707070;
	font-size: 16px;

	text-decoration: none;
	cursor: pointer;
	display: table-cell;
}
.counterGroupIndicator{
	display: table-cell;
	font-size: 14px;
	padding: 0 14px;

}

.selectItemBox .dlBtn{
	font-size: 12px;
}

.likeWrap .likeBox dd.dlBtn a{
	color: var(--white);
	background: #D8534E;
	padding: 10px 10px 10px 25px;
	border-radius: 5px;
	text-decoration: none;
	font-size:14px;
}
.likeWrap .likeBox dd.dlBtn a::before {
	font-family: 'FontAwesome';
	content: '\f00d';
	display: inline-block;
	position: absolute;
	top: 10px;
	left: 9px;
	color: var(--white);
}

.likeWrap .likeBox dd{
    box-sizing: border-box;
	display: table-cell;
	vertical-align: middle;
	padding:10px 16px;
	/* width: 100%; */
	word-break: break-word;
}
.likeWrap .likeBox dd.num {
	width : 130px;
}
/* .likeWrap .likeBox dd.num{
	width:auto;
} */

/*配送フォーム-------------------------------*/
.formWrap {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding-bottom:40px;
}



.formWrap h2{
	font-size:14px;
	font-weight:normal;
	text-align:center;
}

.formWrap .formBox{
	margin: 3em auto;
	font-size: 16px;
	width:auto;
	}

.formWrap .formBox dl{
	display: table;
	width:100%;
}

.formWrap .formBox dt,
.formWrap .formBox dd{
	border-bottom: 1px solid var(--light);
	display: table-cell;
	padding: 16px;
	vertical-align: middle;
	word-break: break-all;
}
.formWrap .formBox dt{
	width: 200px;
}

.formWrap .formBox dd{
	width: auto;
}

.formWrap .formBox sup{
	color: #F00;
	margin: 0 0 0 2px;
}

.formWrap .formBox dl label{
	display: table-cell;
	width: 100px;
	}
	
.formWrap .formBox dl label input{
	margin-right: 5px;
	}

.formWrap .formBox input[type="text"] {width: 80%;}

/*入力エラー*/
.errorBox{
	width:auto;
	border-radius: 8px;
	border: 2px solid #f00;
	background-color: #ffe8e8;
	color: #f00;
	padding:24px;
	font-size: 15px;
}
.errorBox p{
	font-size:20px;
	font-weight: bold;
	padding-bottom:20px;
}
.errorBox.question{
	margin: 0 auto 16px;
	max-width: 640px;
	padding: 16px;
}

.formWrap .formBox input.error,
.formWrap .formBox select.error,
.formWrap .formBox textarea.error{
	background-color: #ffe8e8;
}
p.error{
	font-size: 15px;
	color: #F00;
	padding: 5px;
	background-color: #fdf0af;
	margin-top: 10px;
	font-weight: bold;
}
/*名前*/
.formWrap .formBox .name input,
.formWrap .formBox .name02 input{
	width:240px;
	margin:0 20px 0 8px;
}

.formWrap .formBox .name br,
.formWrap .formBox .name02 br{
	display:none;
}

/*郵便番号*/
.formWrap .formBox .zip input{width: 60px;}

.formWrap .formBox .zip a.zipSearch{
	display: inline;
	margin-left: 10px;
	color: var(--black_b);
	text-decoration: underline;
	}


/*住所*/
.formWrap .formBox .address select{width: 200px;}
.formWrap .formBox .address table{width: 100%;}
.formWrap .formBox .address table th{
	width: 15%;
	font-weight: normal;
	text-align: left;
	vertical-align:text-top;
	
}
.formWrap .formBox .address table td{
	width: auto;
	vertical-align:text-top;
	padding-bottom:8px;
}
.formWrap .formBox .address table td input{margin-bottom: 2px;}

/*電話+fax*/
.formWrap .formBox dl.tel input{width: 60px;}

/*email*/
.formWrap .formBox input[type="email"]{width: 400px;}
.formWrap .formBox .eMail div{margin : 8px 0 2px;}

/*生年月日*/
.formWrap .formBox .birth p{
	padding: 8px 0 0;
}

/*コード番号*/
.formWrap .formBox .code input{
	width: 60px;
	margin-bottom: 8px;
}

/*非活性時の背景色(selectタグなど無色用)*/
.formWrap .formBox .disabled_color{
	background-color: #EBEBE4;
}

div.another label{
	display:block;
	width:auto;
	padding: 10px;
	background: var(--light);
	font-size:16px;
}

/*プライバシー*/
#privacy_include{
	width:990PX;
	height:300px;
	margin:0 auto;
	overflow:auto;
	border:2px solid #efefef;
	/*border-bottom:none;*/
}
#privacy_include p{
	padding-bottom:8px;
}

.prLavel{
	width:968px;
	text-align:center;
	background:#efefef;
	padding:12px;
	margin:0 auto;
	font-size: 20px;
	font-weight: bold;
	color: #f00;
}
.prLavel .attention{
	color: var(--white);
	background: #f00;
	font-size: 14px;
	padding: 5px;
	position:relative;
	top:-2px;
}
.prLavel input[type=checkbox] {
	display: none;
}

.checkbox {
	box-sizing: border-box;
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	margin: 0 20px 8px 0;
	padding: 12px 10px 12px 50px;
	border-radius: 8px;
	vertical-align: middle;
	cursor: pointer;
}
.checkbox:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 17px;
	display: block;
	margin-top: -9px;
	width: 7px;
	height: 12px;
	border-right: 3px solid #f00;
	border-bottom: 3px solid #f00;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 20;
}
.checkbox:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 10px;
	display: block;
	margin-top: -11px;
	width: 20px;
	height: 20px;
	border: 2px solid #bbb;
	border-radius: 6px;
	content: '';
	background: var(--white);
}
input[type=checkbox]:checked + .checkbox:before {
	opacity: 1;
}
.prBox{padding:20px;}

/* 注意事項 */
.noticeWrap {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding-bottom:40px;
}
.noticeWrap .noticeBox {
	width:auto;
	padding: 20px;
}
.noticeWrap .noticeBox ul {
	padding: revert;
}
.noticeWrap .noticeBox li {
	list-style: disc;
}

.formBtnBox{
	width:640px;
	margin:0 auto;
	padding:30px 0 40px;
}

.formBtnBox li{
	width:300px;
	margin:0 10px;
}

.formBtnBox li.giftBtn{
	float: left;
}


/*160223 変更＆追加*/
.formBtnBox li.nextBtn,
.formBtnBox li.sendBtn{
	float: right;
}
.formBtnBox .questionsTx {
	padding: 10px 0;
	text-align: center;
}
.formBtnBox .questionsBtn {
	margin: 0 auto;
	width: 300px;
}
.nextBtn a,
.sendBtn a,
.questionsBtn a {
	display: block;
	padding: 10px 0;
	font-size: 16px;
	position: relative;
	background: var(--black_b);
	border: 1px solid var(--black_b);;
	color: var(--white);
	border-radius: 5px;
	text-align: center;
}

.nextBtn a::after,
.sendBtn a::after,
.questionsBtn a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.finishBox{
	width:700px;
	padding: 20px 40px;
	margin: 80px auto 120px;
}

.finishBox h1{
	padding-bottom: 24px;
}

.finishBox p {
	font-size: 18px;
	text-align:center;
	padding:20px 0;
}
.finishBox dl dt{ padding-bottom: 4px;}
.finishBox dl dd{
	position: relative;
	padding: 0 0 4px 16px;
	}
	
.finishBox dl dd::before{
	position: absolute;
	top: 7px;
	left: 2px;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	background:#DDD;
	border-radius: 100%;
}
.finishBox .cautionTx{
	font-size: 14px;
	text-align:left;
}

.finishBox a{
	color: var(--black_b);
	text-decoration: underline;
}

/*160803 フォームボタン追加*/
.nextBtn input{
	display: block;
	width: 100%;
	padding: 10px 0 10px;
	font-size:16px;
	position: relative;
	background:var(--light);
	border:1px solid var(--light);
	color:var(--white);
	border-radius:5px;
	text-align:center;
}
.nextBtn input.checkOk{
	background: var(--black_b);
	border:1px solid var(--black_b);;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

.nextBtn input.checkOk:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

.nextBtn span{
	position: relative;
	display: block;
}

.nextBtn span::before {
	position: absolute;
	top: 50%;
	right: 20px;
	display: inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 100;
}

.naireNotice {
	color: #FF0000;
	font-size: small;
	margin-top: 10px;
}

/*--------------------------------------------------*/
/*アンケートページ
/*--------------------------------------------------*/
.suWrap{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding:20px 0 40px;
}

.suWrap h1{
	min-width: 1024px;
	font-size: 22px;
	font-weight:bold;
	text-align: center;
	padding-bottom:24px;
}

.suWrap h1 i{
	display: none;
	/* font-size: 42px;
	color: #00BEF2;
	vertical-align: middle; */
}

.suWrap h2{
	min-width: 1024px;
	font-size: 16px;
	font-weight:normal;
	text-align: center;
	padding-bottom:24px;
}

.suWrap dl{
	width: 100%;
	margin-bottom:24px;
}

.suWrap dl dt{
	border-bottom:1px solid var(--light);
	font-weight: bold;
	padding:8px;
	overflow-y:auto;
	max-height:300px;
}

.numList{
	display: inline-block;
	background: var(--light);
	color: var(--black_b);
	line-height:1.0;
	padding: 8px 11px;
	margin-right: 10px;
	}

.suWrap dl dt .fRed{
	font-size: 12px;
	padding-left: 12px;
	}

.suWrap dl dd{
	padding: 10px 0 30px;
}

.suWrap dl dd label{
	margin-right:15px;
	white-space: nowrap;
	padding-bottom: 10px;
}

.suWrap dl dd textarea{
	width:800px;
	height:100px;
}
.suWrap dl dd .error {
	padding: 8px;
	margin-bottom: 8px;
	border: 1px dotted #ebccd1;
	color: #a94442;
	background-color: #f2dede;
}

.suWrap .description{
	padding-top: 5px;
	padding-left: 48px;
	font-size: smaller;
}

.suBeforeBtn {
	font-size: 16px;
	padding-bottom: 20px;
	text-align: center;
}

.suBtn {
	max-width:360px;
	margin: 0 auto;
}

.suBtn a {
    box-sizing: border-box;
    color: #fff;
    background: #404048;
    display: block;
    width: 100%;
    min-width:300px;
    line-height:30px;
    letter-spacing:0.2em;
    position: relative;
    border-radius: 5px;
    padding: 8px;
    font-size: 18px;
    text-align: center;
    text-decoration: none;
    margin:auto;
    margin-top:10px;
}
.suBtn a::after {
	position: absolute;
	top: 50%;
	right: 14px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* 住所自動入力ボタン */
.addrEntry {
	background: var(--black_b);
	border-radius: 8px;
	box-sizing: border-box;
	color: var(--white);
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	width: 120px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	margin-left: 10px;
	border: none;
}

/* メール再入力フォーム */
.confirm_mail{
	padding:19px 0 0;
}

/*--------------------------------------------------*/
/*固定のお気に入りボタン
/*--------------------------------------------------*/
.goLike a{
	width:210px;
	position: fixed;
	bottom: 10px;
	right: -170px;
	display: block;
	background: var(--white);
	color: #D76C21;
	font-size: 12px;
	text-align:center;
	padding:5px;
	line-height:1.4;
	border: 1px #D76C21 solid;
	border-radius:5px 0 0 5px;
}

.goLike a:hover{
	right:0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}

.count{
	display:table-cell;
	width:40px;
	text-align:center;
	line-height:1.0;
	padding-right:8px;
	border-right:1px solid var(--white); 
}
.count:before {
	font-family: 'FontAwesome';
	content: '\f006';
	display: block;
	font-size: 22px;
}

.countTx{
	font-size:14px;
	display:table-cell;
	vertical-align:middle;
	padding-left:8px;
}

/*--------------------------------------------------*/
/*固定のカートボタン
/*--------------------------------------------------*/
.goCart a{
	width:210px;
	position: fixed;
	bottom: 60px;
	right: -170px;
	display: block;
	background: var(--black_b);
	color: var(--white);
	font-size: 12px;
	text-align:center;
	padding:5px;
	line-height:1.4;
	border-radius:5px 0 0 5px;
}

.goCart a:hover{
	right:0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}

.cartCount{
	display:table-cell;
	width:40px;
	text-align:center;
	line-height:1.0;
	padding-right:8px;
	border-right:1px solid var(--white);
}
.cartCount:before {
	font-family: 'FontAwesome';
	content: '\f07a';
	display: block;
	font-size: 22px;
}
/*--------------------------------------------------*/
/*20160418　デジカタ用ページ
/*--------------------------------------------------*/
.digiBox{
	display: table;
	width: 900px;
	margin: 0 auto;
	padding: 20px 0 64px;
}

.digiImg{
	display: table-cell;
	width: 320px;
	vertical-align: top;
}

.digiImg img{
	max-width: 320px;
}

.digiR{
	box-sizing: border-box;
	display: table-cell;
	width: 580px;
	padding-left: 40px;
	vertical-align: top;
}

.digiR dl.digiContents {
	width: 100%;
	display: table;
}

.digiR dl.digiContents dt {
	display: table-cell;
	width: 20%;
	padding: 8px 0;
}

.digiR dl.digiContents dd {
	display: table-cell;
	width: auto;
	padding: 8px;
}

.digiR .btnBox {
	background:url(../../img/common/bg_stripe.png) 0 0 #9DD8F6;
	padding: 20px 0;
	margin-bottom: 24px;
}

.digiBtn {
		width:300px;
		margin: 0 auto;
}
.digiBtn a {
	display:block;
	width:auto;
	height:30px;
	position:relative;
	border-radius:5px;
	padding:19px 0 2px 0;
	background:var(--black_b);
	font-size:16px;
	line-height:1.0;
	color:var(--white);
	text-align:center;
	}
	
.digiBtn a::before {
	font-family: 'FontAwesome';
	content: '\f02d';
	display:block;
	position: absolute;
	color:var(--white);
	font-size:30px;
	top:11px;
	left:20px;
}

.digiStep dt{
	width: 60px;
	background: var(--light);
	color: var(--white);
	line-height: 1.0;
	text-align: center;
	padding: 4px;
	border-radius: 5px;
	margin-bottom: 4px;
}

.digiStep dd{margin-bottom: 16px;}

.formWrap .formBox .apNum input[type="text"] {width: 200px;}

/*-------------------------------*/
/*20160422　チケットID用
/*------------------------------*/

.digiR ul.itemDetail li {border-bottom: none;}


.digiCode {
	text-align: center;
	margin: 12px 0 0;
	padding: 20px 0 0;
	box-shadow:0px 0px 2px 0px rgba(0,0,0,0.2);
	-moz-box-shadow:0px 0px 2px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 2px 0px rgba(0,0,0,0.2);
}

.digiCode dl {width: 320px; margin: 0 auto 12px;}
.digiCode dl dt{padding-bottom: 4px; text-align: left; font-weight: bold;}
.digiCode dl dd{padding-bottom: 12px;}
.digiCode dl dd input[type="text"] {width: 100%; font-size: 21px;}
.digiCode .codeImg {padding: 20px 0 40px;}
.digiCode .codeImg img{width: 240px;}

.digiCodeKigen{ text-align: center; padding-bottom: 20px;}

.digiBtnBox {
	background:url(../../img/common/bg_stripe.png) 0 0 #9DD8F6;
	padding: 10px 20px;
	text-align: center;
}

.digiBtnBox a {
	display: inline-block;
	padding: 6px 40px 6px 20px;
	font-size:16px;
	position: relative;
	background:var(--black_b);
	border:1px solid var(--black_b);
	color:var(--white);
	border-radius:5px;
	text-align:center;
}

.digiBtnBox a::after{
	position: absolute;
	top: 50%;
	right: 20px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -5px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


.digiCodeRiyou{
	width: 900px;
	/*background: #F5F5F5;*/
	border-top: 1px dotted var(--light);
	margin:0 auto;
	padding: 32px;
	margin-bottom: 32px;
	font-size:14px;
	box-sizing: border-box;
}

.digiCodeRiyou dl dt{
	font-size: 18px;
	margin-bottom:10px;
}

.digiCodeRiyou a{
	text-decoration: underline;
}

.digiBtnBox02 {
	padding-top: 16px;
	text-align: center;
}
.digiBtnBox02 a {
	display: inline-block;
	padding: 6px 30px 6px 20px;
	font-size:14px;
	position: relative;
	background:#999;
	border:1px solid #999;
	color:var(--white);
	border-radius:5px;
	text-align:center;
	text-decoration: none;
}

.digiBtnBox02 a::after{
	position: absolute;
	top: 50%;
	right: 20px;
	display:inline-block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -5px;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*--------------------------------------------------*/
/*20161101　メッセージ送信・一覧
/*--------------------------------------------------*/

#messageBoard {
	margin: 0 auto;
	padding: 10px 0;
	border: 5px solid #EFEFEF;
	vertical-align: middle;
}

#messageBoard dt {
	margin: 0 50px;
}

#messageList {
	margin: 0 0 20px 0;
	height: 100px;
	overflow: auto;
}
#messageList p.message {
	color: #000;
	text-align: left;
}
#messageList p.self {
	background-color: var(--white)FE0;
}

#messageList hr{
	height: 2px;
	background-color: #EFEFEF;
	border: none;
	color: #EFEFEF;
}

#messageBoard textarea {
	width:100%;
}

#messageBoardLeftWrap {
	float:left;
	width:70%;
}
#messageBoardRightWrap {
	float:right;
	width:30%;
}

#messageBoardRightWrap a.sendBtn {
	width:200px;
	font-size:20px;
	text-decoration:none;
	display:block;
	text-align:center;
	color:var(--white);
	background-color: #FFCD1E;
	border-radius:15px;
	margin: 0 auto;
}

#sendMessageResponse {
	text-align:center;
}

#messageBoardAnnotation{
	width:100%;
	font-size:12px;
	margin: 0 auto;
	text-align: center;
}

#messageBoardProvision {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
	vertical-align: middle;
	text-align: center;
	color: #61419A;
}

/*--------------------------------------------------*/
/*clearfix
/*--------------------------------------------------*/
.clear {
	clear: both;
}
.cl:after {
	content: "";
	clear: both;
	display: block;
}

/*--------------------------------------------------*/
/*footer移動ボタン
/*--------------------------------------------------*/
.pfooter {
    padding: 20px 50px 0;
}
.pfooter a {
    display: block;
    text-align: center;
    padding: 10px;
	margin-bottom: 20px;
    color: var(--white);
    border-radius: 5px; /*CSS3草案*/
    -webkit-border-radius: 5px; /*Safari,Google Chrome用*/
    -moz-border-radius: 5px; /*Firefox用*/
    background: #69C5F1;/* Old Browsers */
    background: -webkit-linear-gradient(to bottom, #69C5F1, #9DD8F6); /*For Old WebKit*/
    background: linear-gradient(to bottom, #69C5F1, #9DD8F6); /*For Modern Browser*/
}

/*--------------------------------------------------*/
/*ページャー
/*--------------------------------------------------*/
.pagerWrap {
	font-size: 0;
	margin: 10px 0 26px;
	text-align: center;
}

.pagerWrap li {
	font-size: 16px;
	display: inline-block;
	text-align: center;
	margin: 0 4px;
	cursor: pointer;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
.pagerWrap li.now {
	background:  var(--light);
	color: var(--black_b);
	padding: 8px 16px;
}
.pagerWrap li a {
	border: 1px solid var(--black_b);
    display: block;
	padding: 8px 16px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.pagerWrap li a:hover {
	background:  var(--black_b);
	color: var(--white);
}

#logout_btn {
	display: block;
	max-width: 180px;
	height: 28px;
	line-height: 30px;
	letter-spacing: 0.2em;
	position: relative;
	border-radius: 10px;
	padding-top: 5px;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 5px;
	background: #2490D0;
	font-size: 15px;
	font-weight: bold;
	color: var(--white);
	text-align: center;
	text-decoration: none;
	margin: 10px auto 20px;
}


#search_btn {
	display: block;
	max-width: 180px;
	height: 28px;
	line-height: 30px;
	letter-spacing: 0.2em;
	position: relative;
	border-radius: 10px;
	padding-top: 5px;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 5px;
	background: #2490D0;
	font-size: 15px;
	font-weight: bold;
	color: var(--white);
	text-align: center;
	text-decoration: none;
	margin: 10px auto 20px;
}
@media screen and (min-width:768px) and (max-width:1023px){
	.likeWrap .likeBox dd{
		width: 420px;
	}
}

/* SMS送信フォーム */
@media screen and (max-width:599px) {
    .camBox {
        margin: 0 auto;
        width: 85%;
    }
}
@media screen and (min-width:600px) {
    .camBox {
        margin: 20px auto 0;
        max-width: 800px;
        width: 90%;
    }
}
.camBox .prizeImg {
    background-color: var(--white);
    margin: 0 auto;
    overflow: hidden;
    padding: 20px 0 0 0;
    text-align: center;
}
@media screen and (min-width:1280px) {
    .camBox .prizeImg {
        width: 800px;
    }
}
.camBox .prizeImg img {
    width: 100%;
}
@media screen and (min-width:960px) {
    .camBox .prizeImg img {
        max-width: 800px;
    }
}
.camBox > p:first-child,
.camBox h2 {
    font-size: 18px;
    font-weight: bold;
    padding: 10px 0 0;
    text-align: center;
}
@media screen and (min-width:960px) {
    .camBox > p:first-child,
    .camBox h2 {
        padding: 32px 0 16px;
    }
}
.camBox dl dt {
    font-weight: bold;
    padding-top: 32px;
    padding-bottom: 5px;
}
.cambox dl dt:not(:first-child) {
    font-weight: bold;
    padding-top: 32px;
}
.camBox dl dd {
    font-size: 13px;
}
.camBox dl dd table {
    border-bottom: 1px solid #ddd;
    width: 100%;
}
.camBox dl dd table th {
    background: #efefef;
    border-top: 1px solid #ddd;
    padding: 8px;
}
.camBox dl dd table td {
    border-top: 1px solid #ddd;
    padding: 8px;
}
.camBox strong {
    color: #f90;
    display: block;
}
.camBox .cauTx {
    font-size: 12px;
    padding-top: 4px;
}
.camBox dl dd ul li {
    padding-left: 13px;
    position: relative;
}
.camBox dl dd ul li::before {
    background: var(--black);
    border-radius: 50%;
    content: "";
    display: block;
    height: 4px;
    left: 4px;
    position: absolute;
    top: 8px;
    width: 4px;
}
/*ボタンデザイン_デフォルト_ブルー*/
.camBox .btnBox {
    text-align: center;
    padding: 24px 0 32px;
}
.camBox .btnBox button {
    appearance: none;
    background: var(--black_b);
    border-radius: 12px;
    border: none;
    box-sizing: border-box;
    color: var(--white);
    cursor: pointer;
    display: inline-block;
    font-size: 24px;
    height: 64px;
    letter-spacing: .2em;
    line-height: 64px;
    max-width: 375px;
    outline: none;
    padding: 0 0 0 48px;
    position: relative;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    width: 100%;
}
@media screen and (min-width:960px) {
    .camBox .btnBox button {
        font-size: 26px;
        height: 80px;
        line-height: 80px;
        width: 320px;
    }
}
.camBox .btnBox button::before {
    background-size: 38px;
    content: "";
    display: block;
    height: 42px;
    left: 56px;
    margin-top: -21px;
    position: absolute;
    top: 50%;
    width: 42px;
}
.camBox .btnBox button:hover {
    background: #0091c2;
}
/*ボタンアイコン_フキダシ*/
.camBox .btnBox.iconSms button::before {
    background: transparent;
    content: '\f075';
    font-family: FontAwesome;
    font-size: 38px;
    line-height: normal;
    margin-top: -24px;
    margin-left: -15px;
}
/*ボタンアイコン_矢印*/
.camBox .btnBox.iconNext button::before {
    background: transparent;
    content: '\f0a9';
    font-family: FontAwesome;
    font-size: 40px;
    left: 30px;
    line-height: normal;
    margin-top: -18px;
}
@media screen and (min-width:320px) and (max-width:479px) {
    .camBox .btnBox.iconSms button::before,
    .camBox .btnBox.iconNext button::before {
        margin-left: -10px;
    }
}
@media screen and (min-width:480px) and (max-width:599px) {
    .camBox .btnBox.iconSms button::before,
    .camBox .btnBox.iconNext button::before {
        margin-left: 15px;
    }
}
@media screen and (min-width:600px) and (max-width:959px) {
    .camBox .btnBox.iconSms button::before,
    .camBox .btnBox.iconNext button::before {
        margin-left: 25px;
    }
}
@media screen and (min-width:960px) {
    .camBox .btnBox.iconSms button::before,
    .camBox .btnBox.iconNext button::before {
        font-size: 40px;
        left: 65px;
    }
}
/*結果*/
.camBox > p.description {
    font-weight: normal;
    padding: 10px 0 32px;
    text-align: center;
}
.camBox form div {
    background: url("/receive/img/sms_send/bg_form.png") 0 0;
    border-radius: 12px;
    box-sizing: border-box;
    margin: 20px auto 0;
    max-width: 375px;
    padding: 16px;
    width: 100%;
}
@media screen and (min-width:960px) {
    .camBox form div {
        padding: 24px;
        width: 640px;
    }
}
.camBox form div {
    text-align: center;
}
.camBox form div p:first-child {
    font-size: 16px;
    font-weight: bold;
    padding: 0 0 8px;
    text-align: center;
}
.camBox form div p {
    font-size: 12px;
    margin: 0 auto;
    padding: 8px 0 2px;
    text-align: left;
    width: 100%;
}
@media screen and (min-width:960px) {
    .camBox form div p {
        width: 320px;
    }
}
.camBox form div input {
    box-sizing: border-box;
    font-size: 13px;
    padding: 4px;
    width: 100%;
}
@media screen and (min-width:960px) {
    .camBox form div input {
        width: 320px;
    }
}
.camBox.result .cauTx {
    padding: 0 0 16px;
}
@media screen and (min-width:960px) {
    .camBox.result .cauTx {
        margin: 0 auto;
        padding: 0;
        width: 640px;
    }
}

/*利用済み*/
.camBoxContents p{
    font-size: 13px;
    padding: 10px 0 24px;
    text-align: center;
}

/*エラーメッセージ*/
.camBox .errorBox {
    background: #ffe8e8;
    border-radius: 12px;
    border: 1px solid #f00;
    box-sizing: border-box;
    color: #f00;
    margin: 0 auto 16px;
    max-width: 640px;
    padding: 16px;
}
.camBox .errorBox p {
    font-weight: bold;
    text-align: left;
}
.camBox .errorBox li {
    font-size: 13px;
    padding-left: 13px;
    position: relative;
}
.camBox .errorBox li::before {
    background: #f00;
    border-radius: 50%;
    content: "";
    display: block;
    height: 4px;
    left: 4px;
    position: absolute;
    top: 8px;
    width: 4px;
}

/*--------------------------------------------------*/
/*ポイント関連
/*--------------------------------------------------*/

/* 商品一覧　ポイント数デザイン */
ul.itemList .itemPoint {
	display: inline-block;
	background-color: #CAA846;
	padding: 3px 5px;
	color: var(--white);
	font-weight: bold;
	margin: 3px 0 10px 16px;
}
ul.itemList .itemPoint::after {
	display: none!important;
}
/* 商品詳細　ポイント数デザイン */
ul.itemDetail .detail_itemPoint {
	display: inline-block;
	background-color: #CAA846;
	padding: 3px 10px;
	color: var(--white);
	font-weight: bold;
	border-bottom: none;
	margin: 8px 0 0;
	font-size: 18px;
}

.userBoxCateMain{
	width: 998px;
	margin: 0 auto 20px;
	overflow: hidden;
	padding: 2em 0;
	border: solid 1px var(--light);
	position: relative;
	border-radius: 8px;
	background: #EFEFEF;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4f4f2', endColorstr='#b3e2de',GradientType=0 );
}
.userBoxCate{
	padding: 0 32px;
	display: flex;
	justify-content: space-between;
	overflow: hidden;
}
.userBoxCate .userPoint{
	font-size: 18px;
	padding: 0 20px 6px;
	line-height: 1.5em;
	min-width: 300px;
}
.userBoxCate .userCartBtn{
	font-size: 18px;
	padding: 0 0 20px;
	line-height: 1.5em;
	min-width: 250px;
}
.messageBox{
	background-color: var(--white);
	font-size: 13px;
	text-align: left;
	font-weight: normal;
	margin: 20px 32px 0;
	padding: 20px 32px;
	color: var(--black);
	border-radius: 8px;
}
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}
.cartBtnTop {
	background-color: var(--black_b);
	padding: 15px 30px;
	border-radius: 5px;
	color: var(--white);
	margin-top: 30px;
}
.cartBtnTop:before {
	font-family: 'FontAwesome';
	content: '\f07a';
	display: inline-block;
	font-size: 22px;
	padding-right: 15px;
}
.userPointHistoryTop {
	background-color: var(--black_b);
	padding: 15px 15px;
	border-radius: 5px;
	color: var(--white);
	margin-top: 20px;
}
.userPointHistoryTop:before {
	font-family: 'FontAwesome';
	content: '\f1da';
	display: inline-block;
	font-size: 22px;
	padding-right: 15px;
}
.userPointHistoryDetail {
	background-color: var(--black_b);
	padding: 10px 20px;
	border-radius: 5px;
	color: var(--white);
}
/*ポイント履歴*/
.userExpirationPoints{
	font-size: 13px;
	text-align: left;
	font-weight: normal;
	margin: 20px 32px 0;
	padding: 20px 32px;
}

/*--------------------------------------------------*/
/*商品詳細文　グレー枠
/*--------------------------------------------------*/
.itemCommentBox {
	border: 1px solid var(--grey);
	padding: 5px;
}
/*--------------------------------------------------*/
/*商品詳細文　記号インデント
/*--------------------------------------------------*/
.itemCommentSymbolWrap {
	clear: left;
}
.itemCommentSymbolWrap .itemCommentBold {
	font-weight: bold;
}
.itemCommentSymbolWrap .symbol {
	float: left;
	width: 1em;
}
.itemCommentSymbolWrap .indent {
	width: calc(100% - 1em);
	float: left;
}
/*--------------------------------------------------*/
/*商品詳細文　テキストリンク
/*--------------------------------------------------*/
.itemCommentLink {
	color: var(--black_b);
	text-decoration: underline;
}
/*--------------------------------------------------*/
/*メイン画像下注釈
/*--------------------------------------------------*/
p.detailImgNote {
	padding-bottom: 5px;
	font-size: 12px;
	text-align: right;
}
/*--------------------------------------------------*/
/*アイコン 冷蔵・冷凍など
/*--------------------------------------------------*/
.itemCommentIcon {
	border-radius: 5px;
	color: var(--white);
	display: inline-block;
	margin-bottom: 8px;
	padding: 5px 8px;
	letter-spacing: 2px;
}
.icon_g {
	background: #00a95f;
}
.icon_b {
	background: #00a0e9;
}
/*越境EC対応*/

.formWrap .formBox input[type="text"][name="memo01"]{
	width:240px;
}
.formWrap .formBox input[type="text"][name="memo02"]{
	width:240px;
}
.formWrap .formBox input[type="text"][name="memo03"]{
	width:240px;
}
.formWrap .formBox input[type="text"][name="memo06"]{
	width:240px;
}
.formWrap .formBox input[type="text"][name="memo07"]{
	width:240px;
}
.formWrap .formBox input[type="text"][name="memo08"]{
	width:240px;
}

.delivDetail {
	display: inline-block;
	background-color: var(--gray_2);
	padding: 3px 10px;
	border-bottom: none;
	margin: 8px 0 0;
	font-size: 18px;
}

.delivInput{
	display: inline-block;
	background-color: var(--gray_2);
	padding: 3px 10px;
}

.selectItem_info {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

.likeWrap .likeBox .selectItem_info dl dt {
	width: 80%;
	text-align: right;
}

/* --------------------------------------------------------------------
	お支払い方法選択画面
-------------------------------------------------------------------- */
/*支払方法フォーム-------------------------------*/
.payFormWrap {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding-bottom:40px;
}
.payFormWrap h2{
	font-size:14px;
	font-weight:normal;
	text-align:center;
}
.payFormWrap p{
	font-size:14px;
	text-align:center;
}
.payFormWrap .payFormBox{
	width:auto;
	border: 1px solid var(--light);
	border-top: 3px solid #999999;
}
.payFormWrap .payFormBox dl{
	display: table;
	width:100%;
}
.payFormWrap .payFormBox dt{
	display: table-cell;
	width: 20%;
	padding: 16px;
	background: #ECEFF1;
	vertical-align: middle;
	border-top: 1px solid var(--light);
}
.payFormWrap .payFormBox dd{
	display: table-cell;
	width: auto;
	padding: 16px;
	vertical-align: middle;
	border-top: 1px solid var(--light);
}
.payFormWrap .payFormBox sup{
	color: #F00;
	margin: 0 0 0 2px;
}
.payFormWrap .payFormBox dl label{
	display: block;
}
.payFormWrap .payFormBox dl label:nth-of-type(2n){
	margin: 0 0 8px;
}
.payFormWrap .payFormBox dl label input{
	margin: 0 8px 0 0;
}
.paymentMethod{
	height: 30px;
}
.paymentImage{
	height: auto;
}
.amex{
	width: 5%;
}
.diners{
	width: 7%;
}


/* --------------------------------------------------------------------
	お客様情報入力画面
    receive/form/input
-------------------------------------------------------------------- */
/*
 * TODO: 暫定対応のため、CSSクラス詳細度は高く設定している。案件によりカスタマイズする運用を見込んでいるならベースのCSSは詳細度は低めに保っておくべき。
 *
 * ラベルとinputの縦位置を揃える
 * iOSで入力時に縦位置がズレるため対応
 *
 * 【コード例】
 * <dd class="input-inline-box">
 *   ラベル名_1
 *   <input name="input_1">
 *   ラベル名_2
 *   <input name="input_2">
 * </dd>
 */
.formWrap .formBox dd.input-inline-box {
    display: flex;
    flex-wrap: wrap; /* エラーメッセージに影響出るため */
    align-items: center;
}
.formWrap .formBox dd.input-inline-box input {
    margin: 0 0.5em;
}
.formWrap .formBox dd.input-inline-box p.error {
    width: 100%; /* flexの影響のため、width:100%を設定 */
}

/*
 * 郵便番号の設定
 * ラベルとinputの距離を短くしたい場合
 */
.formWrap .formBox dd.input-inline-box.input-inline-box--num input {
    margin: 0 0.2em;
}

/*
 * メールアドレスの設定
 * ボックス内のアイテムを横幅いっぱいに配置する
 */
.formWrap .formBox dd.input-inline-box.input-inline-box--full > * {
    width: 100%;
}



/* --------------------------------------------------------------------
	ユニWEBボタン
    
    - サービスを展開するターゲットIDは管理画面で登録
-------------------------------------------------------------------- */
/* フッターメニューに設置するウィジェットボタン */
button#uniweb-open {
    text-align: left;
    cursor: pointer;
    text-decoration: none;
    /* リンク設定と同じにする */
	color: var(--black);
    -webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

button#uniweb-open:hover {
    /* リンク設定と同じにする */
    filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

/* フローティングのウィジェットボタン */
button#uniweb-open-fixed {
    position: fixed;
    bottom:70px;
    right:5px;
    width:40px;
    height:40px;
    border-radius:50%;
    box-shadow: 0 0 8px 2px var(--gray);
}

/* デフォルトはフローティングのウィジェットボタンは表示しない */
button#uniweb-open-fixed {
    display: none;
}