.expiration_date{
  background-color: #f0f0f0;
  border:solid 2px;
  width: 100%;
  margin-top:40px;
  padding: 15px;
}

.okaimonobukuro {
  border:1px solid #FC5C65;
  border-radius: 10px;
  margin-top:10px;
  padding: 15px;
}
.okaimonobukuro .color--red {
  color: red;
  font-size:1.2em;
}
.okaimonobukuro a:before {
    content: "\f0da";
    font-family: "Font Awesome 5 free";
    font-weight: 600;
}
.okaimonobukuro .btn{
	text-align: left;
}


.input_prepend_block{
	display: flex;
	align-items: center;
}
.input-prepend.input-append input {
  font-size: 24px;
  padding-top: 11px;
  padding-bottom: 11px;
  width: 100px;
  text-align: right;
}
.input-prepend .add-on:first-child,
.input-prepend .btn:first-child,
.input-prepend.input-append .add-on:last-child,
.input-prepend.input-append .btn:last-child{
	display: none;
}
.input-prepend.input-append input{
	margin:0;
	border:1px solid #ccc;
	border-radius: 5px;
	padding-top:5px;
	padding-bottom:5px;
	font-size: 18px;
	width: 80px;
}


.grouplist{
	display: flex;
	flex-wrap: wrap;
	background: #f9f7f2;
	padding:0 5px;
}
.grouplist li{
	margin:10px 5px;
	border:1px solid #d2cec8;
	border-radius: 5px;
	background: #fff;
}
.grouplist li a{
	display: block;
	padding:5px 6px 4px;
	line-height: 1;
	font-size:12px;
}


.itemdata{
	display: flex;
}
.itemdata .spblock,
.itemdata .spblock .grouplist{
	display: none;
}
.itemdata .itemimage{
	width: 500px;
}
.itemdata .itemimage .ofimg:before{
	padding-bottom:90%;
}


#view,
#view > *{
	position: relative;
	width:500px;
	height:500px;
}
#view > *{
	position:absolute;
	left:0;
	top:0;
	display: flex;
	align-items: center;
	justify-content: center;
}


.thumbBtn{
	display: flex;
	justify-content: center;
  flex-wrap:wrap;
}
.thumbBtn li.img_box{
	width:22.75%;
	margin-left:3%;
	margin-top:20px;
	border:2px solid #e8e6df;
	box-sizing: border-box;
	padding:10px;
}
.thumbBtn li.img_box:hover{border-color:#f3e6b9;}
.thumbBtn li.img_box.active{border-color:#ffc4bd;}
.thumbBtn li.img_box{
	cursor: pointer;
}
.thumbBtn li.img_box:nth-child(4n + 1){
	margin-left:0;
}
.itemdata .itemname{
	flex: 1;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 0%;
    box-sizing: border-box;
	padding-left:30px;
}
.itemname .name{
	font-size:22px;
	font-weight: normal;
	line-height: 1.1;
	padding-bottom:23px;
    margin:0;
}


.commentblock{
	margin-top:30px;
	display: flex;
	flex-wrap: wrap;
}
.commentblock .sp_title{
	display: none;
	font-weight: bold;
	margin-bottom:10px;
}
.commentblock .block_section{
	width: 100%;
}




.datablock{
	margin:40px auto 1px;
}
.datablock table.style th{
	width: 160px;
}



.kanrenlink li + li{
	margin-top:7px;
}
.kanrenlink a{
	display: flex;
	border:1px solid #ddd;
	border-radius: 20px;
	line-height: 1;
	padding:12px 13px;
}
.kanrenlink a span{
	flex: 1;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 0%;
    box-sizing: border-box;
	padding-right:20px;
	padding-left:1em;
	font-weight: bold;
}
.kanrenlink a:after{
	content: "\f138";
	font-family: "Font Awesome 5 free";
	font-weight: 600;
}



.btn-addcart.btn{
	background: #FC5C65;
	color: #fff;
	font-weight: bold;
	border:none;
	padding:17px 25px;
	width: 100%;
	box-sizing: border-box;
	transition: background 0.3s;
}
.btn-addcart.btn:hover{
	background: #fca65c;
}
.btn-addcart.btn i{
	margin-right:10px;
}



.tudukeru a{
	display: inline-block;
	font-weight: bold;
}
.tudukeru i{
	margin-right:6px;
	color: #FC5C65;
	font-size:22px;
	line-height: 1;
	vertical-align: text-bottom;
	transition: color 0.3s;
}
.tudukeru a:hover i{
	color:#fca65c;
}



.snslink{
	display: flex;
	flex-wrap: wrap;
}
.snslink > *{
	margin-right:10px;
}

.snslink .mail a,
.snslink .facebook a{
	display: inline-block;
	border-radius:3px;
	color: #fff;
	font-size:13px;
	line-height:20px;
	padding:0 10px;
}
.snslink .mail a:hover,
.snslink .facebook a:hover{
	text-decoration: none;
}
.snslink .mail a i,
.snslink .facebook a i{
	margin-right:5px;
	color: #fff;
}
.snslink .mail a{background: #ff9930;}
.snslink .facebook a{background: #3B5A98;}
.snslink .mail a:hover{background: #ce7c29;}
.snslink .facebook a:hover{background: #0a358c;}


.share{align-items:center;display:flex;justify-content:center;
	padding-bottom:20px;
}
.share__tit{
	font-size:14px;
	font-weight: bold;
	margin-bottom:0;
}
.share .snslist{
	display:flex;
	list-style: none;
	margin-left:0;
	margin-bottom:0;
}
.share .snslist__item{
	padding-left:7px;
	line-height: 1;
}
.share a{font-size:21px}
@media screen and (max-width: 740px){
	.share a{font-size:30px}
}
.share a .fab.fa-facebook-square{color:#3664a2}
.share a .fab.fa-twitter-square{color:#67add3}
.share a .fab.fa-line{color:#43cb01}
.share a .fa-envelope{color:#fc5c65}



@media screen and (max-width:740px){
	.commentblock{margin-top:0;}
	.commentblock .datablock{order: 1;}
	.commentblock .itemcomment_pc{order: 2;}
	.commentblock .product_linkbox{order: 3;}
	.product_linkbox{
		margin-top:40px;
	}
	.commentblock .sp_title{
		display: block;
	}


	.itemdata .grouplist{
		display: none;
	}
	
	.itemdata{
		display: block;
	}
	.itemdata .itemimage{
		margin-right:auto;
		margin-left:auto;
	}
	.itemdata .itemname{
		padding-left:0;
	}
	
	.itemname .name{
		padding-top:20px;
		padding-bottom:0;
	}
	
	.datablock{
		margin-top:20px;
	}
	.datablock table.style,
	.datablock table.style tbody,
	.datablock table.style tr{
		display: block;
		border: none;
	}
	.datablock table.style th,
	.datablock table.style td{
		display: inline-block;
		border: none;
		padding-top:3px;
		padding-bottom:3px;
		padding-left:0;
		padding-right: 0;
	}
	.datablock table.style th{
		width: auto;
		background: none;
	}
	.datablock table.style th::after{
		content: "¡§";
	}


	.together-block.mar_t_80{margin-top:40px;}
}
@media screen and (max-width:640px){
	.datablock{
		width: 100%;
	}
}
@media screen and (max-width:550px){
	.itemdata .itemimage{width:100%;}
	#view,
	#view > *{
		width: 100%;
		height: 89.37vw;
	}
}