/*商品画像サムネ用*/
.left img.mainImage {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100% !Important;
}
ul.thum {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
ul.thum li {
  aspect-ratio: 1/1;
  width: calc(100% / 5 - 4.8px);
}
.left img.thumb {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100% !important;
  height: auto !Important;
}

/* オプション用 */
#option_tbl {
  width: 100%;
  font-size: 1.0rem;
  margin-top: 24px;
  margin-bottom: 24px;
}
#option_tbl th {
  vertical-align: middle;
  padding: 12px;
}
#option_tbl td {
  vertical-align: middle;
  padding: 12px;
}
#option_tbl .cell_2 {
  display: flex;
  align-items: center;
}
#option_tbl .cell_2 span {
  margin-left: 12px;
}

@media screen and (max-width: 768px) {
  dl.pro_price dt {
    font-size: 1.0rem !important;
  }
  dl.pro_price dd {
    font-size: 1.0rem !important;;
  }
  #option_tbl {
    font-size: 0.9rem;
  }
}

/* お気に入りアプリ用*/
div.AQ_Favorites_Product {
  width: 40px !important;
  height: 40px !important;
  background: #FFF;
  box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 6px !important;
  left: auto !important;
  right: 12px;
}

/* 商品詳細PC用 */

.left {
	width: 40%;
	float: left;
	box-sizing: border-box;
}
.right {
	position: relative;
	width: 60%;
	float: left;
	box-sizing: border-box;
	padding: 0px 0px 0px 36px;
	overflow: hidden;
	font-size: 16px;
	line-height: 1.5;
}

.main_image {
}
.main_image img {
	width: 100%;
	height: 512px;
	object-fit: cover;
	object-position: center center;
}

.left img.mainImage {
	width: calc(100% - 2px);
	height: calc(1024px * 0.4);
	object-fit: contain;
	object-position: center center;
}
.left img.thumb {
	width: calc(100% / 4 - 4px);
	height: calc(1024px * 0.4 / 4);
	object-fit: cover;
	object-position: center center;
	margin: 0;
	padding: 0;
	padding-top: 5px;
}
.left img.thumb:hover {
	opacity: 0.5;
	transition: 0.5s;
}
.bread {
	padding: 0px 0px 0px 0px;
}

.review {
	padding: 12px 0px 12px 0px;
	line-height: 1.6;
}

.pro_name {
	padding: 24px 0px 24px 0px;
	font-size: 24px;
}
.note {
}
dl.pro_ex {
	margin: 24px 0px 24px 0px;
}
dl.pro_ex dt {
	width: 120px;
	float: left;
	float: clear;
	padding: 6px 0px 6px 0px;
	text-align: center;
}
dl.pro_ex dd {
	padding: 6px 0px 6px 24px;
	border-bottom: 1px dotted #AAA;
}

.notice {
	display: block;
	padding: 12px;
	font-size: 14px;
	color: #F00;
	border: 1px solid #F00;
	line-height: 1.3;
	margin: 0px 0px 24px 0px;
}
.notice .title {
	display: block;
	width: 100%;
	padding: 0px 0px 6px 0px;
	font-weight: bold;
}
dl.pro_price {
	margin: 24px 0px 24px 0px;
	font-size: 24px;
}
dl.pro_price dt {
	line-height: 36px;
	width: 120px;
	height: 36px;
	float: left;
	float: clear;
	padding: 6px 0px 6px 0px;
	text-align: center;
	color: #999;
	font-size: 80%;
	border-bottom: 1px solid #CCC;
}
dl.pro_price dd {
	line-height: 36px;
	height: 36px;
	padding: 6px 0px 6px 140px;
	border-bottom: 1px solid #CCC;
}
.cartbutton {
	width: 100%;
	font-size: 20px;
	padding: 6px;
	background: #AAA;
	color: #FFF;
	font-family: fot-tsukuardgothic-std, sans-serif;
	border-radius: 6px;
	cursor: pointer;
	margin-top: 12px;
}
.cartbutton:hover {
	background: yellowgreen;
	transition: 0.5s;
}

.fbbutton {
	width: 100%;
	font-size: 16px;
	padding: 6px;
	background: #FFF;
	color: #F26284;
	font-family: fot-tsukuardgothic-std, sans-serif;
	border-radius: 6px;
	cursor: pointer;
	margin-top: 12px;
	margin-bottom: 12px;
	text-align: right;
}
button:focus {
	outline: 0;
}

img.icon {
	position: absolute;
	top: 6px;
	right: 6px;
	display: block;
	overflow: hidden;
	width: 56px;
	height: 56px;
	line-height: 56px;
	border-radius: 56px;
	color: #FFF;
	text-align: center;
	background: yellowgreen;
	box-shadow: 1px 1px 3px #AAA;
	font-size: 15px;
	z-index: 99;
}

h3 {
  position: relative;
  text-align: center;
  color: #999;
font-weight; normal;
}
h3 span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 64px 1em;
  background-color: #fff;
  text-align: left;
}
h3::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #AAA;
}

.other {
	margin-bottom: 12px;
}

#smp_cartin {
	display: none;
}

.share {
	float: right;
	margin: 24px 0px 24px 0px;
}
.share li {
	float: left;
	margin-left: 6px;
}


/* 商品詳細スマホ用 */

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

.left {
	float: none;
	width: 100%;
}

.right {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.main_image {
}
.main_image img {
	height: calc(100vw - 24px);
}

.left img.mainImage {
	width: 100%;
	height: calc(100vw - 24px);
}

.left img.thumb {
	width: calc(100% / 4 - 4px);
	height: calc(100vw / 4 - 12px);
}

.left img.thumb:hover {
	opacity: 1.0;
	transition: none;
}

.bread {
	padding: 0px 0px 0px 0px;
}
.review {
	padding: 36px 0px 36px 0px;
	line-height: 1.6;
}
h2.pro_name {
	padding: 24px 0px 24px 0px;
	font-size: 24px;
}
.note {
}
dl.pro_ex {
	margin: 24px 0px 24px 0px;
}
dl.pro_ex dt {
	width: 120px;
	float: left;
	float: clear;
	padding: 6px 0px 6px 0px;
	text-align: center;
}
dl.pro_ex dd {
	padding: 6px 0px 6px 140px;
	border-bottom: 1px dotted #AAA;
}

.cartbutton {
	background: yellowgreen;
}
.cartbutton:hover {
	background: yellowgreen;
	transition: none;
}

img.icon {
	top: 12px;
	right: 12px;
}

#pc_cartin {
}

#smp_cartin {
	position: fixed;
	display: block;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 64px;
	text-align: center;
	background: rgba(255,255,255,0.9);
	box-sizing: border-box;
	z-index: 9999999;
}

#smp_cartin button.smp_cart {
	display: block;
	width: calc(100% - 24px);
	height: 52px;
	float: left;
	line-height: 52px;
	margin: 6px 12px 6px 12px;
	font-size: 18px;
	background: yellowgreen;
	color: #FFF;
	border-radius: 6px;
	box-sizing: border-box;
	font-family: fot-tsukuardgothic-std, sans-serif;
}
#smp_cartin button.smp_fb {
	display: block;
	width: calc(20% - 12px);
	height: 52px;
	float: left;
	margin: 6px 6px 6px 6px;
	line-height: 52px;
	font-size: 18px;
	background: #F26284;
	color: #FFF;
	border-radius: 6px;
	box-sizing: border-box;
	font-family: fot-tsukuardgothic-std, sans-serif;
}

.smp_space_margin {
	display: block;
	width: 100%;
	height: 24px;
	background: #FFF;
}

#myfooter {
	padding-bottom: 80px;
}

}