@charset "utf-8";
/*--------------------------------------------
  商品詳細画面用CSS
--------------------------------------------*/

/*--------------------------------------------
	共通
--------------------------------------------*/
#GoodsDetail .panNavBottom {
	margin-top: 50px;
}
.panNavBottom ul + ul {
	margin-top: 5px;
}

.sectionWrap {
	margin: 60px auto 0;
}

.contents .btn.addCart {
	background-color: #f77900;
	border: 1px solid #f77900;
	color: #fff;
}

.contents .btn.selectSku {
	background-color: #f77900;
	border: 1px solid #f77900;
	color: #fff;
	margin: 0;
}

.contents .btn.selectSku:hover,
.contents .btn.addCart:hover {
	border: inherit;
	color: #fff;
	opacity: .7;
}
.contents .btn.addCart::before {
	display: inline-block;
	content: "";
	width: 16px;
	height: 14px;
	margin-right: 8px;
	background: url(../images/icon_cart.svg) no-repeat center/16px 14px;
}

.contents .goodsDetail {
	margin-bottom:30px;
}

/* 製品テキストアイコン */
.itemTag .icon {
	background:#fff;
}
.itemIconWrap {
	display: block;
	flex-wrap: wrap;
	margin-top: 10px;
	width: 100%;
}
.itemIconWrap .itemTag,
.itemIconWrap .iconBurWrap {
	display:block;
}
.productIcon_text {
	float: left;
	padding: 1px 5px 0;
	font-size: 13px;
	margin: 0 5px 5px 0;
	line-height: 1.5;
	height: 20px;
	box-sizing: border-box;
}
.iconText {
	border: solid 1px #cccccc;
	border-radius: 2px;
	display: inline-block;
	font-weight: 700;
}
.iconSterilization {
	background-color: #00AFEC;
	border: 1px solid #00AFEC;
	color: #fff;
	font-weight: 700;
}
.iconSterilization_no {
	color: #00B9EF;
	border: 1px solid #00AFEC;
	font-weight: 700;
}
.iconAutoclave {
	background-color: #0081cc;
	border: 1px solid #0081cc;
	color: #fff;
	font-weight: 700;
}
.iconAutoclave_no {
	background-color: #fff;
	border: 1px solid #0081cc;
	color: #0081cc;
	font-weight: 700;
}
.iconBur {
	margin-right: 2px;
	margin-bottom: 4px;
}
.itemInnerWrap{
	display: flex;
}
/* ボタンアイコン */
.icon-chevron,
.icon-chevron-up {
	position: relative;
}
.icon-chevron:before {
	display: inline-block;
	content: '';
	width: 19px;
	height: 16px;
	margin-right: 8px;
	transition: opacity .3s ease;
	position: absolute;
	left: 20px;
}
.icon-chevron-up:before {
	display: inline-block;
	content: '';
	width: 19px;
	height: 16px;
	margin-right: 8px;
	transition: opacity .3s ease;
	position: absolute;
	left: 20px;
	transform: scale(1, -1);
}

@media screen and (max-width: 1023px) {
	#GoodsDetail .panNav {
		width: auto;
		padding-left: 10px;
	}
	.sectionWrap {
		margin-top: 40px;
	}
}

/*--------------------------------------------
	メッセージエリア
--------------------------------------------*/
/* 一緒に購入すれば送料無料 */
.freeShippingWrap {
	background-color: #f2f5f3;
	font-weight: bold;
	padding: 12px 20px 10px;
	margin-bottom: 30px;
	text-align:center;
}
@media screen and (max-width: 1023px) {
	.freeShippingWrap {
		line-height:1.4em;
	}
}

/*--------------------------------------------
	テキストエリア
--------------------------------------------*/
/* 製品名 */
#topContentsGoodsName,
.itemTitle {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.itemDetailName {
	font-size: 1.6rem;
	margin-right: 16px;
}
@media screen and (max-width: 641px) {
	.itemDetailName {
		font-size: 1.5rem;
	}
}
#notReviewMessage {
	margin-right:5px;
}
#notReviewMessage p,
#notReviewMessage a {
	font-weight: bold;
	font-size: 0.7rem;
}
@media screen and (max-width: 1023px) {
	#notReviewMessage a {
		font-size: 0.87rem;
		word-break: keep-all;
	}
}

#topContentsGoodsName .itemTag,
.itemTitle .itemTag {
	margin: 0;
	padding: 5px 0;
}

.itemDetailCatchtext {
	font-size: 0.95rem;
	font-weight: bold;
}

/*--------------------------------------------
	商品画像エリア
--------------------------------------------*/
.goodsMainImageThumsWrap,
.goodsMainImageWrap {
	position: relative;
	overflow: visible;
}
.goodsMainImageWrap .goodsMainImageInner {
	aspect-ratio: 1/1;
}
.goodsMainImageWrap .goodsMainImage a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
.goodsMainImageWrap ~ div .goods_images li {
	margin-top: 10px;
	cursor: pointer;
	border: 1px solid #bebebe;
	box-sizing: border-box;
	aspect-ratio: 1/1;
}
.goodsMainImageWrap ~ div .goods_images li:hover {
	border-color: #27652e;
}
.goodsMainImageWrap ~ div .goods_images li img {
	object-fit: cover;
	height: 100%;
}
.goodsMainImageWrap .swiper-button-next,
.goodsMainImageWrap .swiper-button-prev {
	z-index: 10;
}

/*--------------------------------------------
	製品枠囲みコメント
--------------------------------------------*/
.goodsComment {
	margin: 10px auto 0;
}
.goodsCommentList {
	border: 1px solid #bebebe;
	padding: 10px;
}
.goodsCommentList + .goodsCommentList {
	margin-top: 10px;
}

/*--------------------------------------------
	カートエリア：共通
--------------------------------------------*/
.goodsDetailListWrap {
	margin-top: 30px;
	overflow: hidden;
}
.goodsDetail_left_area {
	float: left;
	width: 330px;
	padding: 0 30px 0 0;/*左右＜＞ボタン配置用の空き*/
	box-sizing: border-box;
}
.area_Detail {
	float: right;
	width: calc(100% - 330px);
}

/* 写真が小さいレイアウト */
.goodsDetailListWrap.smallImage .goodsDetail_left_area {
	width: 200px;
	padding: 0 15px;
}
.goodsDetailListWrap.smallImage .goodsDetail_left_area .itemCode {
	margin-top: 10px;
	margin-bottom: 10px;
}
.goodsDetailListWrap.smallImage .area_Detail {
	width: calc(100% - 200px);
}
.goodsDetailListWrap.smallImage .goodsDetail_left_area img {
	max-width: 170px !important;
	min-width: 170px;
}

.compactList .goodsDetailListWrap {
	border-bottom: 2px solid #bebebe;
}

@media screen and (max-width: 1023px) {
	.goodsDetail_left_area {
		float: none;
		margin: 20px auto 30px;
	}
	.area_Detail {
		width: 100%;
		float: none;
	}
	/* 写真が小さいレイアウト */
	.goodsDetailListWrap.smallImage .goodsDetail_left_area {
		width: 100%;
		padding: 0 30px;/*左右＜＞ボタン配置用の空き*/
	}
	.goodsDetailListWrap.smallImage .goodsDetail_left_area .itemCode {
		text-align: center;
	}
	.goodsDetailListWrap.smallImage .area_Detail {
		width: 100%;
	}
	.goodsDetailListWrap {
		margin-top: 0;
	}
	.compactList .goodsDetailListWrap:first-of-type {
		border-top: none;
	}
	.goodsDetail_left_area {
		padding: 0;
	}
	.goodsDetailListWrap.smallImage .goodsDetail_left_area {
		padding: 0;
		margin-bottom: -10px;
	}
}

.goodsDetailListWrap p, .goodsDetailListWrap li, .goodsDetailListWrap a, .goodsDetailListWrap span, .goodsDetailListWrap label, .goodsDetailListWrap dt, .goodsDetailListWrap dd, .goodsDetailListWrap th, .goodsDetailListWrap td {
	line-height: 1.5;
}

/* 商品画像 */
.area_Photo {
	text-align: center;
	position: relative;
}

/* 商品画像サムネイル */
@media screen and (max-width: 1023px) {
	[class*=js_swiper_itemInfoThumbs] {
		display: none;
	}
}

/* 商品カート */
.itemTitle .blandName {
	width: 100%;
	margin-bottom: 5px;
}

.itemTitle .title_lv1 {
	margin-right: 16px;
}

.itemDetails {
	margin-top: -5px;
	margin-bottom: 10px;
	display: flex;
	flex-direction: column;
}

.detailTitle {
	font-size: 1.4rem;
	line-height: 1.7;
	margin-right: 8px;
}

.detailTitle .yoridori_tag {
	margin-left: 15px;
	vertical-align: middle;
}

.item-description{
	width: 100%;
	margin-top:5px;
}

.skuSelect {
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 10px 0;
}

.skuSelect dt {
	width: 80px;
	margin-top: 5px;
	color: #666;
	font-weight: bold;
}

@media screen and (max-width: 1023px) {
	.userOperateArea {
		margin-top: 20px;
	}
	.goodsComment	{
		order: 3;
		width: 100%;
	}
	.itemTag {
		order: 4;
		width: 100%;
	}
	.itemDetailInfo {
		order: 5;
		width: 100%;
	}
	.itemInfo {
		order: 6;
		width: 100%;
		margin-top: 20px;
	}
	.blockTwoCol {
		order: 2;
	}
	.contents .userOperateArea .btn {
		width: 100%;
	}
}

/* カートエリア */
.blockTwoCol {
	display: flex;
	justify-content: space-between;
	margin-top: 15px;
}
.blockTwoCol .blockTwoCol_left {
	width: 250px;
	display: flex;
	flex-direction: column;
}
.blockTwoCol .blockTwoCol_left .itemInfo {
	margin-top: 15px;
}
.blockTwoCol .blockTwoCol_left .itemInfo dt,
.upperGoodsArea_title {
	color: #666;
	font-weight: bold;
}
.blockTwoCol .blockTwoCol_left .itemInfo dd {
	margin-top: 5px;
}
.blockTwoCol .blockTwoCol_left .itemInfo dd p {
	line-height: 1.5;
}
.itemDetailInfo {
	margin-top: 10px;
	margin-bottom: 10px;
	font-weight: bold;
	width:100%;
}
.itemDetailInfo b,
.itemDetailInfo strong {
	font-weight: bold;
}
.userOperateArea {
	width: calc(100% - 290px);
	max-width: 580px;
}
.userOperateArea .textLink {
	margin-top: 10px;
}
.userOperateArea .blockTwoCol {
	margin-top: 0;
	flex-wrap: wrap;
}
.itemDetails .userOperateArea .blockTwoCol_right,
.itemDetails .userOperateArea .blockTwoCol_left {
	max-width: 265px;
	width: calc(50% - 5px);
}

.userOperateArea .addCount {
	font-weight: bold;
}
.userOperateArea .goodsItem .addCart,
.userOperateArea .goodsItem .imgAddCart {
	margin-top: 15px;
}
.itemDetails .userOperateArea{
	margin-left: auto;
}
@media screen and (max-width: 1023px) {
	.userOperateArea {
		width: calc(100% - 270px);
	}
}
@media screen and (max-width: 1023px) {
	.blockTwoCol {
		flex-direction: none;
		margin-top: -10px;
	}
	.blockTwoCol .blockTwoCol_left, .userOperateArea {
		margin-top: 20px;
		width: 100%;
		max-width: 100%;
	}
	.blockTwoCol .blockTwoCol_left .itemInfo {
		width: fit-content;
		order: 1;
	}
	.blockTwoCol .blockTwoCol_left .itemInfoText {
		order: 2;
	}
	.userOperateArea .blockTwoCol {
		display: block;
	}
	.itemDetails .userOperateArea .blockTwoCol_left,
	.itemDetails .userOperateArea .blockTwoCol_right {
		width: 100%;
		max-width: 100%;
		margin-top: 0;
	}
	.itemDetails .userOperateArea .blockTwoCol_right {
		margin-top: 0;
	}
	/* スマホ時のボタンレイアウト変更 */
	.userOperateArea .blockTwoCol .blockTwoCol_right {
		display: flex;
		flex-wrap: wrap;
	}
	.userOperateArea .blockTwoCol .blockTwoCol_right .product_lavel_block {
		width:100%;
	}
	.userOperateArea .blockTwoCol_right .addCart {
		order: 1;
		width: calc(100% - 60px);
		margin-left: 0;
	}
	.contents .userOperateArea .blockTwoCol_right.favorite_false .teiki,
	.contents .userOperateArea .blockTwoCol_right.favorite_false .sample,
	.contents .userOperateArea .blockTwoCol_right.favorite_false .rental,
	.contents .userOperateArea .blockThreeCol_right.favorite_false .teiki,
	.contents .userOperateArea .blockThreeCol_right.favorite_false .sample,
	.contents .userOperateArea .blockThreeCol_right.favorite_false .rental {
		width:100%;
	}
	.userOperateArea .blockTwoCol .blockTwoCol_right .iconFavoriteArea {
		order: 2;
		width: fit-content;
		transform: translateY(5px);
	}
	.userOperateArea .blockTwoCol .blockTwoCol_right .iconFavoriteArea.withFavoriteText span {
		font-size: 0;
	}
	.userOperateArea .blockTwoCol .blockTwoCol_right .iconFavoriteArea .icon_favorite01:before {
		background-size: contain;
		width: 25px;
		height: 22px;
		margin: 0;
	}
	.userOperateArea .blockTwoCol_right .teiki {
		order: 3;
	}
	.userOperateArea .blockTwoCol_right .sample {
		order: 4;
		margin-left: 0;
	}
	.userOperateArea .blockTwoCol_right .rental {
		order: 5;
		margin-right: 0;
	}
}
@media screen and (max-width: 767px) {
	.blockTwoCol {
		flex-direction: column;
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.itemDetails > .goodsItem {
		display: block;
		width: calc((100% / 2) + 10px);
	}
}

/* カートエリア(3カラム) */
.userOperateArea .blockThreeCol {
	display: flex;
}
.userOperateArea .blockThreeCol .blockThreeCol_left {
	max-width: 265px;
	width: calc((100% / 3) - 5px);
}
.userOperateArea .blockThreeCol .blockThreeCol_center {
	max-width: 200px;
	width: calc((100% / 3) - 5px);
}
.userOperateArea .blockThreeCol .blockThreeCol_right {
	display: flex;
	flex-grow: 1;
	flex-wrap: wrap;
	justify-content: end;
	width: calc((100% / 3) - 5px);
}

@media screen and (min-width: 768px) {
	.compactList .userOperateArea .blockThreeCol .blockThreeCol_right > .btn {
		margin-top: 0;
		width: 235px;
	}
}
@media screen and (max-width: 1023px) {
	.userOperateArea .blockThreeCol {
		display: block;
	}
	.userOperateArea .blockThreeCol .blockThreeCol_left,
	.userOperateArea .blockThreeCol .blockThreeCol_center,
	.userOperateArea .blockThreeCol .blockThreeCol_right {
		width: 100%;
		max-width: 100%;
	}

	/* スマホ時のボタンレイアウト変更 */
	.contents .userOperateArea .blockThreeCol_right .addCart {
		order: 1;
		width: calc(100% - 60px);
		margin-left: 0;
	}
	.contents .userOperateArea .blockThreeCol .blockThreeCol_right .iconFavoriteArea {
		order: 2;
		width: fit-content;
		transform: translateY(5px);
	}
	.contents .userOperateArea .blockThreeCol_right [name=teiki] {
		order: 3;
	}
	.contents .userOperateArea .blockThreeCol_right [name=sample] {
		order: 4;
		width: calc(50% - 5px);
		margin-left: 0;
	}
	.contents .userOperateArea .blockThreeCol_right [name=rental] {
		order: 5;
		width: calc(50% - 5px);
		margin-right: 0;
	}
}

/* form */
.inputConditionSelectbox {
	height: 30px;
	border: 1px solid #bebebe;
	background: url(../images/icon_select.svg) no-repeat #fff;
	background-size: 7px 8px;
	background-position: right 10px center;
	border-radius: 5px;
	padding: 0 20px 0 10px;
	box-sizing: border-box;
	/*margin-left: 5px;*/
	font-size: 14px;
	line-height: 1.4;
	font-weight: normal;
}

.inputConditionSelectbox.error__style {
	background-color: #fbebeb;
}

@media screen and (max-width: 1023px) {
	.inputConditionSelectbox {
		height: 40px;
	}
}

/*--------------------------------------------
	カートエリア：単品
--------------------------------------------*/
.product_lavel_block .innrline {
	width: calc(100% - 5px);
}
/* 商品を選ぶ、商品リスト */
.js_accordion_3.is_btn .js_accordion_box,
.js_accordion_4.is_btn .js_accordion_box,
.js_accordion_4.is_btn .selectGoodsArea,
.js_accordion_10.is_btn .js_accordion_box,
.more-list.is_btn {
	overflow: hidden;
}
.js_accordion_3.is_btn.is_show .js_accordion_box,
.js_accordion_4.is_btn.is_show .js_accordion_box,
.js_accordion_4.is_btn.is_show .selectGoodsArea,
.js_accordion_10.is_btn.is_show .js_accordion_box,
.more-list.is_btn.is_show {
	max-height: none !important;
}

/* 商品を選ぶ、ボタン */
[class*="js_accordion_"] .moreBtnWrap {
	transform: translateY(-80px);
	display: flex;
	align-items: flex-end;
	height: 150px;
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,0.9) 20%,rgba(255,255,255,1) 100%);
	margin-bottom: 0;
}
.moreBtnWrap {
	transform: translateY(-80px);
	display: flex;
	align-items: flex-end;
	height: 150px;
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,0.9) 20%,rgba(255,255,255,1) 100%);
	margin-bottom: -100px;
}

[class*="js_accordion_"] .moreBtnWrap .more-btn::before,
.moreBtnWrap .more-btn::before,
.js_accordion_table .moreBtnWrap .more-btn::before {
	content: "全て表示する";
}
[class*="js_accordion_"].is_btn.is_show .moreBtnWrap,
.is_more_hidden {
	transform: translateY(0);
	height: auto;
	background: none;
	margin-top: 20px;
	margin-bottom: 0;
}
[class*="js_accordion_"].is_btn.is_show .moreBtnWrap .more-btn::before,
.is_more_hidden .more-btn::before {
	content: "閉じる";
}
[class*="js_accordion_"].no_btn .moreBtnWrap,
.no_btn .moreBtnWrap {
	display: none;
}

/*--------------------------------------------
	カートエリア：複数SKUプルダウン式
--------------------------------------------*/
/* 絞り込みタイトル */
.filterContentsWrap {
	margin-top: 60px;
}
.filterTitle {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}
.filterContentsWrap .filterTitle {
	padding-bottom: 0;
}
.contents .filterTitle .btn {
	margin: 0 0 0 auto;
}

/*絞り込みフォームエリア*/
.filterWrap {
	border-radius: 6px;
	border: 1px solid #bebebe;
	padding: 30px;
}

.filterWrap_heading {
	font-weight: bold;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.filterWrap_heading .filterTitle {
	font-weight: bold;
	padding-left: 1.3em;
	margin: 0 1.2rem 0 0;
}
.filterWrap_heading .cancelButton {
	font-weight: bold;
	margin: 0;
}
.filterWrap_heading .cancelButton a {
	font-weight: bold;
}

.filterControl {
	display: flex;
	flex-wrap: wrap;
}

.filterItem {
	width: calc((100% / 3) - 10px);
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
	margin-right: 12px;
}

.filterItem:nth-child(3n) {
	margin-right: 0;
}

.filterItem label {
	color: #666;
	font-weight: bold;
	margin-bottom: 4px;
}

/* 商品を探す */
.scrollToSelect {
	position: fixed;
	bottom: 100px;
	width: 80px;
	height: 80px;
	z-index: 12;
	right: 10px;
}
.scrollToSelect a {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	height: 100%;
	padding-top: 20px;
	border-radius: 80px;
	font-size: 12px;
	font-weight: bold;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	.scrollToSelect {
		bottom: 70px;
		width: 50px;
		height: 50px;
		left: unset;
		right: 10px;
	}
	.scrollToSelect a {
		font-size: 0;
	}
	#goodsDetailInfo .level_h2 {
		padding-bottom: 0px;
	}
}

.compactList .itemInfoText {
	clear: both;
	margin-left: 0;
	margin-right: 0;
}

@media screen and (min-width: 768px) {
	/* 商品リスト .goodsDetailContents.compactList */
	.compactList .goodsDetailListWrap {
		padding-bottom: 20px;
	}
	.compactList .itemDetails > .blockTwoCol {
		display: block;
	}
	.compactList .blockTwoCol_left, .compactList .userOperateArea {
		width: 100%;
		max-width: 100%;
	}
	.compactList .userOperateArea {
		margin-top: 10px;
	}
	/*blockTwoCol_left*/
	.compactList .blockTwoCol .blockTwoCol_left {
		overflow: hidden;
		/* FEEDオリジナルが見切れない高さに調整 */
		min-height:100px;
	}
	.compactList .blockTwoCol .blockTwoCol_left .itemTag {
		float: left;
		margin-right: 10px;
	}
	.compactList .blockTwoCol .blockTwoCol_left .itemInfo {
		float: left;
		margin: 0;
	}
	/*blockTwoCol_righ*/
	.compactList .userOperateArea .blockTwoCol .blockTwoCol_right {
		flex: 1 0 0%;
		display: flex;
		flex-wrap: wrap;
		max-width: 100%;
		width: auto;
		justify-content: flex-start;
		position: relative;
	}
	.compactList .addCountItemWrap {
		width: 100%;
	}
	.compactList .userOperateArea .addCountItemWrap {
		margin-top: 0;
	}
	.compactList .userOperateArea .goodsItem .btn,
	.compactList .userOperateArea .goodsItem .favoriteLinkItemWrap {
		margin: 0 10px 10px 0;
		width: calc(100% / 2 - 10px);
	}
}

@media screen and (max-width: 1023px) {
	#wrap .goodsMainImageWrap .goodsMainImage a,
	#wrap .compactList .area_Photo a,
	#wrap .goodsDetail_left_area .goodsMainImageInner a,
	#wrap .goodsInfoContainer .goodsInfoPhoto a {
		pointer-events: none;
	}
	#wrap .compactList .area_Photo img {
		width: 100%;
		max-width: 320px;
	}

	/* 絞り込みタイトル */
	.filterTitle {
		display: block;
	}
	.contents .filterTitle .btn {
		margin: 10px 0 0;
	}
	/* 絞り込みフォームエリア */
	.filterItem {
		margin-right: 0;
		width: 100%;
	}
}

/*--------------------------------------------
	商品の情報
--------------------------------------------*/
/* レイアウト */
.goodsDetailInfo {
	margin-top: 60px;
}
.goodsDetailInfo .level_h2_underline {
	margin-bottom:16px;
}
.goodsInfoContainer {
	display: flex;
	column-gap: clamp(10px, 2vw, 30px);
	margin-top: 20px;
}
.goodsInfoContainer .swiper-button-prev,
.goodsInfoContainer .swiper-button-next {
	display:none;
}
/* table 共通 */
.goodsDetailInfo table {
	width: auto; /*modifi-ikeda*/
	border-collapse: collapse;
	box-sizing: border-box;
}
.goodsDetailInfo table th h3,
.goodsDetailInfo table td h3 {
	padding-top: 30px;
	padding-bottom: 10px;
}
.goodsDetailInfo table th {
	font-weight: bold;
	background-color: #f2f2f2;
	/* width: 30%; modifi-ikeda*/
	max-width: 100%;
}
.goodsDetailInfo .tableTitle {
	margin-bottom: 5px;
}
@media screen and (max-width: 1023px) {
	.goodsDetailInfo table th,
	.goodsDetailInfo table td {
		padding: 5px;
	}
}

/* modifi-ikeda from */
.includeHtml01 table th,
.includeHtml01 table td {
	border: 1px solid #bebebe;
}
.goodsDetailInfo table.productspectable th,
.goodsDetailInfo table.productspectable td,
.goodsDetailInfo table.crosstable th,
.goodsDetailInfo table.crosstable td {
	border: 1px solid #bebebe;
	padding: 10px;
}
#wrap .goodsDetailInfo table th img.photo_s,
#wrap .goodsDetailInfo table td img.photo_s,
#wrap .productspectable sup,
#wrap .crosstable sup {
	vertical-align: top;
}
.frontDispExpansion5 a[href*="#guide04"] > span {
	display: inline-block !important;
	width: auto !important;
}
@media screen and (max-width: 1023px) {
	.goodsDetailInfo table.productspectable th + td {
		width: 70%;
	}
}
/* modifi-ikeda to */

/* 画像エリア */
.goodsInfo_ImgArea {
	max-width: 300px;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.goodsInfo_ImgArea .goodsInfoPhoto {
	cursor: pointer;
}
.goodsMainImageInner img,
.goodsInfo_ImgArea .goodsInfoPhoto img {
	max-width: 300px !important;
	min-width: 300px;
}
.goodsMainImageInner.swiper-slide-visible img,
.goodsMainImageInner img[id^="modaal_img_"] {
	max-width: unset !important;
}
.goodsInfo_ImgArea .goodsInfoThumb a {
	outline: none;
}
.goodsInfo_ImgArea .goodsInfoThumb [class*="thumb"] {
	margin-top: 10px;
	cursor: pointer;
	border: 1px solid #bebebe;
	box-sizing: border-box;
	text-align: center;
	padding: 1px;
}
.goodsInfo_ImgArea .goodsInfoThumb [class*="thumb"]:hover {
	border-color: #27652e;
}

/* テキストエリア */
.goodsInfo_TxtArea {
	flex: 1 0 0%;
}
.goodsInfoShopName {
	margin-top: 20px;
}
.goodsInfoNotice {
	color: #c00;
	margin-top: 20px;
}
/* インクルードエリア */
.includeBox {
	margin-top: 20px;
}
/* 製品仕様表 */
.productSpec {
	margin-top: 20px;
}
.productSpecInner:not(:last-child) {
	margin-bottom: 20px;
}
/* キャプション画像 */
.productCaption {
	margin-top: 10px;
}
.productCaptionListWrap {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	margin-right: -20px;
}
.productCaptionList {
	margin-top: 10px;
}
.productCaptionList,
.productCaptionList img {
	max-width: 280px;
	min-width: 120px;
}
.productCaptionTxt {
	font-size: 0.75rem;
	margin-top: 5px;
}

/* クロス表 */
.crossTab {
	margin-top: 20px;
	overflow: hidden;
}
.crossTabInner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 10px;
	margin-right: 30px;
	float: left;
}
.crossTabTitle {
	margin-bottom: 5px;
	width: 100%;
}
.crossTabTable {
	margin-right: 10px;
}
.crossTabTable table {
	width: auto;
	border: none;
}
.crossTabTable table th {
	width: inherit;
}
.contents .crossTabUnit {
	margin-top: 5px;
	text-align: right;
}

@media screen and (max-width: 1023px) {
	.goodsInfoContainer {
		display: block;
	}
	.goodsDetailInfo {
		margin-top: 40px;
	}
	.productCaptionListWrap {
		column-gap: 10px;
		margin-right: -10px;
	}
	/* 画像エリア */
	.goodsInfo_ImgArea {
		margin: 0 auto;
		margin-top: 20px;
		max-width: 320px
	}
	.goodsInfo_ImgArea .goodsInfoThumb {
		display: none;
	}

	.goodsMainImageInner img,
	.goodsInfo_ImgArea .goodsInfoPhoto img,
	.goodsDetailListWrap.smallImage .goodsDetail_left_area img {
		max-width: 320px !important;
		min-width: 320px;
	}
}
@media screen and (max-width: 393px) {
	.productCaption {
		width: 280px;
		margin: 10px auto 0;
	}
	/* クロス表 */
	.crossTabInner {
		display: block;
		margin-right: 0;
	}
}

/* サブタグテキストアイコン */
.itemTag > span.green_icon {
	color: #3f7c3c;
	border: 1px solid #3f7c3c;
	background-color: #fff;
	padding: 0 5px 0
}
.itemTag > span.red_icon {
	color: #c72b1d;
	border: 1px solid #c72b1d;
	background-color: #fff;
	padding: 0 5px 0
}
.itemTag > span.purple_icon {
	color: #4146aa;
	border: 1px solid #4146aa;
	background-color: #fff;
	padding: 0 5px 0
}
/*--------------------------------------------
	バリエーション一覧
--------------------------------------------*/
.variationListArea {
	margin-top: 60px;
	margin-bottom: 30px;
}
.variationListWrap {
	margin-top: 30px;
}
.variationListArea .level_h2 {
	padding-bottom: 10px;
}
/* table */
.variationListArea .table tr {
	display: table-row;
}
.variationListArea .table th, .variationListArea .table td {
	display: table-cell;
}
.variationListArea .table tbody tr:first-child {
	border-top: none;
}
.variationListArea .table thead th, .variationListArea .table tbody td {
	box-sizing: border-box;
	padding: 10px;
	font-size: 13px;
}
.variationListArea .table thead th:not(:last-child), .variationListArea .table tbody td:not(:last-child) {
	border-right: 1px solid #bebebe;
}
.variationListArea .table thead th:last-child {
	border-right: none;
}
.variationListArea .table th, .variationListArea .table td {
	padding: 8px;
}
.variationListArea .table th {
	font-weight: bold;
	min-width: 130px;
	max-width: 170px;
}
.variationListArea .table .productName {
	width: 30%;
	max-width: 380px;
	min-width: 250px;
}
.variationListArea .table td.productPrice {
	color: #c00;
	font-weight: bold;
}
.variationListArea .table .cartArea {
	max-width: 170px;
}
.variationListArea .table .cartArea .btn.addCart {
	margin-top: 0;
}
@media screen and (max-width: 1023px) {
	.variationListBox {
		overflow-x: scroll;
		padding-bottom: 5px;
	}
	.variationListBox::-webkit-scrollbar {
		height: 5px;
	}
	.variationListBox::-webkit-scrollbar-track {
		background-color: #f2f2f2;
	}
	.variationListBox::-webkit-scrollbar-thumb {
		background-color: #bebebe;
	}
	.variationListArea .table {
		width: 100%;
	}
}
@media screen and (max-width: 1023px) {
	.variationListArea {
		margin-top: 40px;
	}
	.variationListWrap {
		margin-top:10px;
	}
	.variationListArea .table .productName {
		width:100%;
		max-width:unset;
		min-width:unset;
	}
	.variationListArea .table th {
		width:100%;
		max-width:unset;
		min-width:unset;
	}
	.variationListArea .table td {
		width:100%;
	}
	.variationListArea .table .cartArea {
		max-width:unset;
	}
	.variationListArea .table thead th:not(:last-child), .variationListArea .table tbody td:not(:last-child) {
		border-right:none;
	}
	.variationListArea .table th,
	.variationListArea .table td {
		display:block;
	}
	.variationListArea .table th:nth-child(2),
	.variationListArea .table th:nth-child(3),
	.variationListArea .table th:nth-child(4),
	.variationListArea .table th:nth-child(5),
	.variationListArea .table th:nth-child(6) {
		display:none;
	}
	.variationListArea .table tbody td {
		padding:2px;
		font-size:0.9em;
	}
	.variationListArea .table tbody td.productCode:before {
		content: "商品コード：";
		display: inline;
		clear: both;
	}
	.variationListArea .table tbody td.productQuantity:before {
		content: "入数：";
		display: inline;
		clear: both;
	}
	.variationListArea .table tbody td.productPrice:before {
		content: "価格：";
		display: inline;
		clear: both;
	}
	.variationListArea .table tbody td.shipDate:before {
		content: "発送日：";
		display: inline;
		clear: both;
	}
	.variationListArea .table tbody td.cartArea .btn {
		margin:5px auto;
	}
}

/*--------------------------------------------
	関連商品
--------------------------------------------*/
.relatedArea {
	margin-top: 60px;
}
.relatedArea .sliderGallery {
	margin-top: 0;
}
@media screen and (max-width: 1023px) {
	.relatedArea {
		margin-top: 40px;
	}
}

/*--------------------------------------------
	Rtoasterレコメンドエリア
--------------------------------------------*/
.rtRecommendArea {
	margin-top: 60px;
}
@media screen and (max-width: 1023px) {
	.rtRecommendArea {
		margin-top: 40px;
	}
}
/*--------------------------------------------
	あなたへのおすすめ商品
--------------------------------------------*/
.recommendIncludeArea {
	margin-top: 60px;
}
@media screen and (max-width: 1023px) {
	.recommendIncludeArea {
		margin-top: 40px;
	}
}

/*--------------------------------------------
	ほかの方が一緒に購入された商品
--------------------------------------------*/
.recommendBuyArea {
	margin-top: 60px;
}
.recommendBuyArea .sliderGallery {
	margin-top: 0;
}
@media screen and (max-width: 1023px) {
	.recommendBuyArea {
		margin-top: 40px;
	}
}

/*--------------------------------------------
	あなたへのおすすめ商品
--------------------------------------------*/
.recommendIncludeArea {
	margin-top: 60px;
}
@media screen and (max-width: 1023px) {
	.recommendIncludeArea {
		margin-top: 40px;
	}
}

/*--------------------------------------------
	閲覧履歴
--------------------------------------------*/
.browsingGoodsIncludeArea {
	margin-top: 60px;
}
@media screen and (max-width: 1023px) {
	.browsingGoodsIncludeArea {
		margin-top: 40px;
	}
}

/*-------------------------------------------
	DCもと：不要なものは後で削除
--------------------------------------------*/
#goodsDetailContents {
	float:none;
	width:100%;
	margin-bottom:15px;
}

.topContents th,
.topContents td {
	border:1px solid #ccc;
	padding:10px;
	vertical-align:middle;
}
.topContents th {
	background-color:#f3f3f3;
}
.topContents th h1 {
	font-weight:bold;
	font-size:1.0em;
	padding:10px 0;
}
.topContents th h1 span {
	font-size:0.8em;
	color:#ec8125;
	padding-left:10px;
}
.topContents tbody th {
	text-align:center;
	width:28%;
}
.topContents tbody th p + p {
	margin-top:10px;
}
.topContents td ul li {
	display:inline-block;
	vertical-align: top;
}
.topContents tbody li:nth-child(1) {
	width:19%;
}
.topContents tbody li:nth-child(2) {
	width:36%;
}
.topContents tbody li:nth-child(3) {
	width:42%;
}

.itemImages img {
	width:90px;
	vertical-align:baseline;
}
.goodsPrice {
	padding-top: 15px;
	vertical-align: top;
}
.goodsPrice .redBold {
	font-size:0.8em;
	color:#f00;
}
.goodsPrice .blackBold {
	font-size:0.8em;
	color:#000;
}
.goodsPrice .redBold strong {
	font-size:1.9em;
	font-weight:bold;
}
.goodsPrice .blackBold strong {
	font-size:1.9em;
	font-weight:bold;
}
.goodsPrice .normalPrice {
	font-size:0.8em;
}
.cartBtn {
	text-align:right;
}
.goodsDetailFavo a {
	font-size:0.8em;
	color:#ec8125;
	background:url(../images/headerFavo.png) no-repeat 0 3px;
	background-size:18px;
	padding:3px 0 3px 20px;
	display:inline-block;
}
.goodsDetailContents .subText {
	font-size:0.8em;
	margin-bottom:50px;
}
.goodsDetailContents .subImages li {
	margin-bottom:50px;
}

@media screen and (max-width: 641px) {
	.goodsItem img {
		width:100%;
	}
	.topContents td ul li {
		display:block;
		margin-bottom:5%;
	}
	.topContents tbody li:nth-child(1) {
		width:100%;
	}
	.topContents tbody li:nth-child(2) {
		width:100%;
	}
	.topContents tbody li:nth-child(3) {
		width:100%;
	}
	.cartBtn {
		text-align:left;
	}
}

/* よりどり商品、選択エリア */
#selectGoodsArea {
	padding-top: 10px;
	margin-bottom: 50px;
}

/* よりどり商品、商品を選択するボタン */
#selectItem {
	background: #f6f6f6;
	color: #808080;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px 20px 10px 15px;
	cursor: pointer;
	margin-bottom: 5px;
}
#selectItem:hover {
	opacity: .7;
}
#selectItem::before {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	padding-right: 10px;
}

/* よりどり商品、選択説明文 */
.goodsSelectionNumItemWrap {
	font-size: 12px;
	margin-bottom: 20px;
}

/* よりどり商品、対象商品見出し */
.itemSelectionGoodsTitle {
	display: block;
	font-size: 1.2em;
	border-bottom: 1px solid #ccc;
	margin: 0 0 10px;
	padding: 5px;
}

/* よりどり商品、対象商品リスト */
#itemSelectionGoodsList,
#itemSelectionGoodsList tr,
#itemSelectionGoodsList td {
	display: block;
}
#itemSelectionGoodsList tbody {
	display: flex;
	flex-wrap: wrap;
}
#itemSelectionGoodsList tbody > tr {
	width: 50%;
}
#itemSelectionGoodsList tbody > tr {
	display: block;
	position: relative;
	width: 50%;
	padding-right: 10px;
	margin-bottom: 20px;
}
#itemSelectionGoodsList tr:after {
	content: "";
	display: block;
	clear: both;
}
#itemSelectionGoodsList tr:before {
	content: "";
	display: block;
	clear: both;
}
#itemSelectionGoodsList td {
	background-color: transparent !important;
}
#itemSelectionGoodsList td a {
	float: left;
}
#itemSelectionGoodsList td .goodsSelectionImgThumb {
	width: 40%;
	margin-right: 10px;
}
#itemSelectionGoodsList td .goodsSelectionImgThumb img {
	width: 100%;
	display: block;
}
#itemSelectionGoodsList td .goodsName {
	width: calc(60% - 20px);
	margin-bottom: 40px;
	font-size: 14px;
}
#itemSelectionGoodsList td .goodsCountWrap {
	position: absolute;
	bottom: 0;
	right: 90px;
	font-size: 14px;
}

@media screen and (max-width: 641px) {
	#itemSelectionGoodsList td .goodsSelectionImgThumb {
		width: 100%;
	}
	#itemSelectionGoodsList td .goodsName {
		width: 100%;
		margin-top: 5px;
		margin-bottom: 10px;
	}
	#itemSelectionGoodsList td .goodsCountWrap {
		position: relative;
		right: auto;
		bottom: auto;
		text-align: center;
	}
}

/* よりどり商品、数量プルダウン */
.goodsCount {
	width: 60px;
	padding: 5px 10px;
	font-size: 18px;
}

/* よりどり商品、現在個数、最大個数 */
.selectedNumItemWrap {
	text-align: center;
	margin-top: 20px;
	font-size: 14px;
}
.goodsSelectionNum, .selectedNum {
	font-size: 22px;
	font-weight: bold;
	color: #ff0000;
}
#goodsSelectionNumItemWrap .redBold {
	color: #ff0000;
}

/* よりどり商品、プログレスバー */
.selectedNumItemWrap progress {
	position: relative;
	top: -7px;
	display: inline-block;
	width: 220px;
	margin: -5px 0 5px auto;
	appearance: none;
	background-color: #efefef;
	border: 1px solid #2675ff;
	border-radius: 4px;
	color: #2675ff;/* IE */
	height: 4px;
}
/* IE */
.selectedNumItemWrap progress.just {
	border: 1px solid #15b862;
}
.selectedNumItemWrap progress[value].just {
	color: #15b862;
}
.selectedNumItemWrap progress.over {
	border: 1px solid #e43e3e;
}
.selectedNumItemWrap progress[value].over {
	color: #e43e3e;
}
/* chrome */
.selectedNumItemWrap progress {
	border: 1px solid #2675ff;
}
.selectedNumItemWrap progress[value]::-webkit-progress-bar {
	background-color: #efefef;
}
.selectedNumItemWrap progress[value]::-webkit-progress-value {
	background-color: #2675ff;
}
.selectedNumItemWrap progress.just {
	border: 1px solid #15b862;
}
.selectedNumItemWrap progress[value].just::-webkit-progress-value {
	background-color: #15b862;
}
.selectedNumItemWrap progress.over {
	border: 1px solid #e43e3e;
}
.selectedNumItemWrap progress[value].over::-webkit-progress-value {
	background-color: #e43e3e;
}
/* firefox */
.selectedNumItemWrap progress {
	border: 1px solid #2675ff;
}
.selectedNumItemWrap progress[value]::-moz-progress-bar {
	background-color: #2675ff;
}
.selectedNumItemWrap progress.just {
	border: 1px solid #15b862;
}
.selectedNumItemWrap progress[value].just::-moz-progress-bar {
	background-color: #15b862;
}
.selectedNumItemWrap progress.over {
	border: 1px solid #e43e3e;
}
.selectedNumItemWrap progress[value].over::-moz-progress-bar {
	background-color: #e43e3e;
}

/* よりどり商品、選択した商品を注文する */
#orderSelectedGoodsItemWrap {
	text-align: center;
}
#addCartBySelectedItems a {
	display: inline-block;
	margin: 0 auto;
	text-decoration: none;
	background: #f6f6f6;
	color: #333;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px 20px;
}
#addCartBySelectedItems a {
	pointer-events: none;
	cursor: default;
	color: #9e9e9e;
}
#addCartBySelectedItems a:hover {
	opacity: 1;
}
#addCartBySelectedItems a.active {
	background-color: #ec8125;
	border: 1px solid #ec8125;
	color: #fff;
	pointer-events: auto;
	cursor: pointer;
}
#addCartBySelectedItems a.active:hover {
	opacity: .7;
}

/* メイン画像スライダーのポップアップ上書き */
.modaal-content,
.modaal-gallery-item-wrap {
	position: relative;
	width: 640px !important;
	height: 640px !important;
	aspect-ratio: 1/1;
}
.modaal-gallery-item img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto !important;
	height: auto !important;
	max-width: 640px;
	max-height: 640px;
}
.modaal-content button[type="button"].modaal-gallery-prev,
.modaal-content button[type="button"].modaal-gallery-prev:hover,
.modaal-content button[type="button"].modaal-gallery-next,
.modaal-content button[type="button"].modaal-gallery-next:hover,
.modaal-content button[type="button"].modaal-close,
.modaal-content button[type="button"].modaal-close:hover {
	background-color:unset;
	border-color:unset;
}
@media screen and (max-width: 641px) {
	.modaal-content,
	.modaal-gallery-item-wrap {
		width: 300px !important;
		height: 300px !important;
		min-width: auto;
		min-height: auto;
	}
	.modaal-gallery-item img {
		max-width: 300px;
		max-height: 300px;
	}
}

/* -------------------------------------------
	カスタマーレビュー
--------------------------------------------- */
.customerReview {
	width: 100%;
	margin-top: 60px;
	border-radius: 6px;
	border: 1px solid #bebebe;
	padding: 30px 30px 20px;
	box-sizing: border-box;
	position: relative;
}
.customerReview .level_h2 {
	padding-bottom: 20px;
}
.customerReview .level_h2 .textLink {
	display: inline-block;
	font-size: 15px;
	margin-left: 20px;
}
.customerReview .level_h2 .textLink__post {
	float: none;
}
.customerReview .howtoReview {
	position: absolute;
	top: 33px;
	right: 30px;
}
.customerReview .notReviewMessageBottom {
	font-size: 0.94rem;
	text-align: center;
	padding: 10px;
}
#navi-review-list-3 {
	opacity: unset !important;
}

@media screen and (max-width: 641px) {
	.customerReview {
		border-radius: 0;
		border-left: none;
		border-right: none;
		margin-left: -10px;
		margin-right: -10px;
		width: calc(100% + 20px);
		padding: 30px 10px 20px;
	}
	.customerReview .level_h2 {
		padding-bottom: 0;
	}
	.customerReview .level_h2 .textLink {
		margin-top: 10px;
		margin-left: 0;
		padding-bottom: 10px;
		display: block;
	}
	.customerReview .howtoReview {
		right: 10px;
	}
}
.frontDispExpansion1 {
	color:#c00;
	margin-bottom:26px;
}
.goodsExp2 {
	margin-bottom: 20px;
}
#goodsDetailInfo .level_h2 {
	padding-bottom: 10px;
}

/*--------------------------------------------
	商品詳細共通
--------------------------------------------*/
.Cont_Head h2 span {
	font-weight: bold;
}
.selectGoodsArea{
	border: 2px solid #bebebe;
	margin-bottom: 25px;
}
.itemDetails .blockTwoCol .teiki{
	line-height: 1;
}
/*--------------------------------------------
	関連商品スライダーの閲覧制御インクルードパーツ
--------------------------------------------*/
.swiper-slide .browsingRestrictionsLoginItemWrap .items >div {
	padding: 0px !important;
}
.swiper-slide .includePartsGroup {
	max-width: 140px;
	margin: 0 auto 10px;
}
/*--------------------------------------------
	スクロールテンプレート サムネイルモーダル部
--------------------------------------------*/
.js_swiper_itemInfoThumbs_1 [class^="swiper-button-"]{
	top: initial;
	bottom: 0;
}

.js_swiper_itemInfoMain_2 .swiper-button-next {
	right: -60px;
}
.js_swiper_itemInfoMain_2 .swiper-button-prev {
	left: -60px;
}

.js_swiper_itemInfoThumbs_2 .swiper-container .swiper-wrapper img{
	opacity: .6;
}
.js_swiper_itemInfoThumbs_2 .swiper-container .swiper-wrapper .swiper-slide-thumb-active img{
	opacity: 1;
}
.js_swiper_itemInfoMain_2 .swiper-button-next:after {
	border-left: 3px solid #fff;
	border-top: 3px solid #fff;
}
.js_swiper_itemInfoMain_2 .swiper-button-prev:after {
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
}
.goodsMainImageThumsWrap .js_swiper_itemInfoMain_1 ~ div .goods_images li{
	border: none;
}
.js_swiper_itemInfoThumbs_1 .swiper-button-next,
.js_swiper_itemInfoThumbs_1 .swiper-button-prev {
	bottom: -5px;
}