@charset "utf-8";
/* 共通
====================================================================================================*/
#contents {
	padding-top: 10px;
}
/* レビュー
==============================*/
#contents .review {
	font-size: 20px;
	font-weight: bold;
	color: var(--brown_d);
	display: inline-block;
}
#contents .review_average {
	font-weight: bold;
}
#contents .star {
	color: var(--yellow_d);
	margin-left: 5px;
}
#contents .review a {
	font-size: 16px;
	color: var(--blue_l);
	margin-left: 3px;
	vertical-align: text-top;
}
/* select
==============================*/
#contents select {
	appearance: auto;
	-webkit-appearance: auto;
	-moz-appearance: auto;
}
/* .popup_link
==============================*/
.popup_link {
	color: var(--blue_l);
	font-size: 18px;
}
.popup_link::before {
	content: "?";
	display: inline-block;
	color: var(--white);
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	width: 24px;
	height: 24px;
	background-color: var(--blue_l);
	border-radius: 20px;
	margin-right: 3px;
}
/* 商品リスト（product_list2）
==============================*/
#contents .product_list2 {
	flex-wrap: nowrap;
	gap: 10px;
	padding-bottom: 5px;
	overflow-x: scroll;
	position: relative;
	left: 0px;
	margin-bottom: 15px;
}
#contents .product_list2 .product_box {
	width: 200px;
	padding: 10px;
}
#contents .product_list2 .product_box:has(.delivery_size) {
	padding-bottom: 35px;
}
#contents .product_list2 .product_box a div:has(img) {
	width: 180px;
	height: 180px;
}
#contents .product_list2 .priceBox li {
	height: 40px;
}
#contents .product_list2 .count {
	width: 50px;
}
#contents .product_list2 .product_rank {
	top: -25px;
	left: 70px;
}
#contents .product_list2 .delivery_size:not(.ds-mail) {
	width: 180px;
	font-size: 15px;
	padding-left: 5px;
}
#contents .product_list2 .delivery_size:not(.ds-mail) span {
	font-size: 13px;
	right: 5px;
}
#contents .product_list2 .ds-mail {
	width: 180px;
}
#contents .product_list2 .ds-mail li {
	width: 80px;
}
#contents .product_list2 .ds-mail img {
	width: 100%;
}
#contents .product_list2::-webkit-scrollbar {
	height: 10px;
}
#contents .product_list2::-webkit-scrollbar-track {
	border-radius: 10px;
	background: var(--gray_l);
}
#contents .product_list2::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: var(--gray);
}
/* #appeal_banner
====================================================================================================*/
#appeal_banner {
	margin-bottom: 10px;
}
#appeal_banner div {
	width: 100%;
	text-align: center;
	font-weight: bold;
	border-radius: 2px;
	padding: 5px;
	line-height: 1.2;
}
#appeal_banner div + div {
	margin-top: 5px;
}
.banner_freeshipping {
	background-color: var(--red);
	color: var(--white);
	font-size: 25px;
}
.banner_freeshipping span {
	font-size: 20px;
	font-weight: bold;
}
.banner_sale {
	background-color: var(--red);
	color: var(--white);
	font-size: 20px;
}
.banner_sale span {
	font-size: 30px;
	font-weight: bold;
	color: #F3E554;
	vertical-align: -2px;
}
.banner_discontinued {
	background-color: var(--gray);
	color: var(--black);
	font-size: 25px;
}
.banner_discontinued span {
	display: block;
	font-size: 16px;
}
/* #title_infomation
====================================================================================================*/
#title_infomation {
	width: 100%;
	margin-bottom: 8px;
}
h1 {
	font-size: 16px;
	font-weight: normal;
	padding: 0;
	margin: 0 0 10px 0;
	border: none;
	white-space: nowrap;
	overflow-x: auto;
}
/* 商品ID
==============================*/
#title_infomation > span {
	display: inline-block;
	width: 60px;
	padding: 5px 0;
	color: var(--brown_d);
	font-size: 17px;
	font-weight: bold;
	text-align: center;
	border: solid 1px var(--brown_d);
	border-radius: 5px;
	background-color: var(--white);
	margin-right: 10px;
}
#item-X0001 #title_infomation > span, #item-X0002 #title_infomation > span, #item-X0004 #title_infomation > span {
	width: auto;
	padding: 10px;
}
/* 商品名
==============================*/
#title_infomation h2 {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 75px);
	padding-left: 0;
	margin-bottom: 10px;
}
#item-X0001 #title_infomation h2, #item-X0002 #title_infomation h2, #item-X0004 #title_infomation h2 {
	display: block;
	width: 100%;
	margin-top: 8px;
}
/* 最安単価
==============================*/
.lowest_unitprice {
	height: 36px;
	font-size: 16px;
	font-weight: bold;
	color: var(--red);
	line-height: 1;
}
.lowest_unitprice span {
	font-weight: bold;
	vertical-align: -2px;
}
.lowest_unitprice > span:nth-of-type(1) {
	color: var(--brown_d);
	padding: 10px 8px;
	background-color: var(--beige_d);
	border-radius: 5px;
	vertical-align: 3px;
	margin-right: 5px;
}
.lowest_unitprice span:nth-of-type(2) {
	font-size: 35px;
}
.lowest_unitprice span:nth-of-type(3) {
	font-size: 25px;
	margin-right: 3px;
}
/* #topBox
====================================================================================================*/
#topBox {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px 10px;
	margin-bottom: 5px;
	position: relative;
}
/* 宅配サイズアイコン
==============================*/
#delivery_icon {
	width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
	order: 2;
}
#delivery_icon::-webkit-scrollbar {
	display: none;
}
#delivery_icon.icon_scroll::before, #delivery_icon.icon_scroll::after {
	content: "";
	display: block;
	width: 30px;
	height: 40px;
	position: absolute;
	bottom: -2px;
	pointer-events: none;
}
#delivery_icon.icon_scroll::before {
	background: linear-gradient(to left, rgba(255, 255, 255, 0) 0, var(--white) 95%);
	left: -2px;
}
#delivery_icon.icon_scroll::after {
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--white) 95%);
	right: -2px;
}
#delivery_icon.scroll-left-end::before, #delivery_icon.scroll-right-end::after {
	display: none;
}
#delivery_icon ul {
	display: flex;
	gap: 5px;
}
#delivery_icon li {
	font-size: 18px;
	font-weight: bold;
	height: 36px;
	line-height: 36px;
	padding: 0 10px;
	border-radius: 2px;
}
#delivery_icon li img {
	width: 120px;
	height: auto;
	margin: 4px 0;
}
#delivery_icon .ds-teikeigai1 span, #delivery_icon .ds-teikeigai2 span {
	font-size: 15px;
}
#delivery_icon .ds-nekoposu, #delivery_icon .ds-yuupacket {
	padding: 0;
}
#delivery_icon .ds-clickpost {
	padding: 0 5px;
}
/* レビュー・ランキング
==============================*/
.ranking_and_review {
	order: 1;
	display: flex;
	align-items: center;
	gap: 15px;
}
.ranking_and_review .review {
	position: absolute;
	right: 0;
	top: -38px;
}
#ranking_badge {
	padding: 4px 0 4px 30px;
	font-size: 18px;
	font-weight: bold;
}
.ranking_1 {
	color: var(--yellow_d);
	background: url(/img/ranking-1.png) no-repeat left / 25px;
}
.ranking_2 {
	color: #9FA0A0;
	background: url(/img/ranking-2.png) no-repeat left / 25px;
}
.ranking_3 {
	color: #B27133;
	background: url(/img/ranking-3.png) no-repeat left / 25px;
}
/* #detail_infomation
====================================================================================================*/
#section_price, #section_specs {
	margin-top: 30px;
	padding-top: 30px;
	border-top: dashed 2px var(--brown_l);
}
#discontinued #section_price {
	margin: 0;
	padding: 0;
	border-top: none;
}
#section_packing h3, #section_specs h3, #section_price h3 {
	border-left: solid 10px var(--brown_l);
	padding-left: 5px;
	margin-bottom: 10px;
}
section + section {
	margin-top: 30px;
}
/* #section_photo
============================================================*/
#photoBox {
	display: flex;
	flex-wrap: wrap;
}
/* 商品画像リスト_大
==============================*/
#bigphotoBox {
	order: 1;
	width: 450px;
	height: 450px;
	overflow: hidden;
	position: relative;
	margin: 0 auto;
	border: solid 1px var(--gray);
}
#bigphotoBox ul {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
	transition: transform 0.3s ease;
}
#bigphotoBox li {
	width: 450px;
	height: 450px;
	position: relative;
}
#bigphotoBox li img {
	display: block;
	width: 100%;
	height: 100%;
}
#bigphotoBox .button-blue {
	position: absolute;
	right: 8px;
	bottom: 8px;
}
#bigphotoBox .left_slide, #bigphotoBox .right_slide {
	opacity: 0.8;
}
/* X0001・X0002・X0004の画像 */
#boximgL, #boximgS {
	position: relative;
	width: 100%;
	height: 100%;
	background: var(--white);
}
#boximgL img, #boximgS img {
	position: absolute;
	transform-origin: left bottom;
	top: auto;
}
#hitoL, #hitoS {
	width: 100%;
	height: 100%;
}
#item-X0004 #boximgL span {
	position: absolute;
}
#item-X0004 #boximgL .posterNagasa {
	top: 135px;
	left: 265px;
	background: var(--white);
}
#item-X0004 #boximgL .posterHaba {
	top: 395px;
	left: 350px;
	background: var(--white);
	padding: 0 5px;
}
#item-X0004 #boximgL .posterNaikei {
	top: 395px;
	left: 205px;
	background: var(--white);
	width: 80px;
	text-align: center;
}
/* 商品画像リスト_小
==============================*/
#smallphotoBox {
	order: 3;
	width: 450px;
	white-space: nowrap;
	overflow-x: scroll;
	margin: 5px auto 0;
}
#smallphotoBox li {
	border: solid 3px transparent;
	display: inline-block;
	width: 120px;
	height: 120px;
	overflow: hidden;
}
#smallphotoBox li img {
	display: block;
	width: 100%;
	height: 100%;
}
#smallphotoBox .select {
	border: solid 3px var(--orange_d);
	border-radius: 1px;
}
/* 簡単自動見積もり */
#smallphotoBox .flex_box, #smallphotoBox .flex_board {
	vertical-align: top;
}
.flex_box span, .flex_board span {
	display: block;
	color: var(--white);
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	white-space: pre-wrap;
	line-height: 1.3;
	background-color: var(--orange_d);
	border-radius: 5px;
	position: relative;
	height: 66px;
	padding: 12px 0;
	margin: 44px 4px 4px;
}
.flex_box span::before, .flex_board span::before {
	content: "";
	display: block;
	width: 60px;
	height: 45px;
	background: url(/img/hakomaru/hakomaru-hyoko2.png) no-repeat center / 60px;
	position: absolute;
	top: -40px;
	left: 25px;
}
/* 動画
==============================*/
#smallphotoBox [class^="movie"] {
	position: relative;
}
#bigphotoBox [class^="movie"]::before, #smallphotoBox [class^="movie"]::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--black);
	opacity: 0.3;
	position: absolute;
	top: 0;
	left: 0;
}
#bigphotoBox [class^="movie"]::after, #smallphotoBox [class^="movie"]::after {
	content: "";
	display: block;
	width: 30%;
	height: 30%;
	background: url(/img/icon/movie.png) center / cover;
	position: absolute;
	top: 35%;
	left: 35%;
}
/* キャプション
==============================*/
#caption {
	order: 2;
}
#caption li {
	background-color: var(--beige_d);
	padding: 8px;
	border-radius: 5px;
	margin: 12px 0 5px;
	position: relative;
	display: none;
}
#caption li::before {
	content: "";
	border: solid 6px transparent;
	border-bottom: solid 10px var(--beige_d);
	position: absolute;
	top: -15px;
	left: 20px;
}
/* #detailBox
============================================================*/
#detailBox {
	margin-top: 15px;
}
#detailBox .button-blue {
	padding-right: 30px;
	height: 36px;
}
#detailBox .arrow-blue::after {
	transform: rotate(90deg);
}
/* サイズ
==============================*/
#detailBox .size_list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	color: var(--brown_d);
	margin-top: 10px;
}
#detailBox .size_list li {
	font-size: 18px;
}
#detailBox .size_list li span:first-child {
	background-color: var(--beige_d);
	border-radius: 5px;
	padding: 5px 8px;
	margin-right: 5px;
}
#detailBox .size_list li .depth {
	font-size: 14px;
}
/* セット内容
==============================*/
#detailBox .set_list table {
	display: inline-block;
	border-collapse: collapse;
	font-size: 16px;
	margin-top: 10px;
}
#detailBox .set_list th, #detailBox .set_list td {
	padding: 8px;
}
#detailBox .set_list th {
	font-weight: bold;
	color: var(--brown_d);
	background-color: var(--beige_l);
	max-width: 70px;
}
#detailBox .set_list td {
	height: 90px;
	position: relative;
}
#detailBox .set_list td img {
	width: 70px;
	height: 70px;
}
#detailBox .set_list td ul {
	display: inline-block;
	vertical-align: top;
	margin-left: 8px;
	text-align: left;
}
#detailBox .set_list td a {
	color: var(--blue_l);
}
#detailBox .set_list li {
	max-width: 230px;
}
#detailBox .set_list .button-blue {
	margin-top: 10px;
}
/* お知らせ
==============================*/
#detailBox .notice {
	border: solid 2px var(--red);
	border-radius: 5px;
	margin-top: 10px;
}
#detailBox .notice h3 {
	background-color: var(--red);
	color: var(--white);
	padding: 5px 10px;
	margin: 0;
}
#detailBox .notice > div {
	margin: 10px;
}
#detailBox .notice > div a {
	color: var(--blue_l);
}
/*ロゴ印刷(フレキソ)*/
#detailBox .notice:has(#printitem) h3 span {
	font-size: 16px;
	font-weight: bold;
}
#printitem {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px 15px;
	position: relative;
}
#printitem img {
	border: solid 1px var(--gray);
	width: 120px;
	height: 120px;
}
#printitem h4 {
	font-size: 16px;
	margin-bottom: 15px;
	width: 300px;
}
#printitem h4 span {
	font-weight: bold;
	font-size: 15px;
	border: solid 1px var(--brown_d);
	border-radius: 5px;
	padding: 3px 5px;
	display: inline-block;
}
#printitem select {
	display: inline-block;
	min-width: 60px;
	margin-right: 5px;
}
#printitem img + div p {
	display: inline-block;
	margin-left: 5px;
	color: var(--red);
	font-size: 18px;
	font-weight: bold;
}
#printitem img + div p span {
	font-size: 15px;
}
#printitem .add_cart {
	width: auto;
	height: 40px;
	line-height: 40px;
	padding-left: 45px;
	margin-left: 20px;
}
#printitem .add_cart::before {
	top: 3px;
	left: 5px;
	background-size: 32px 24px;
}
#printitem .cart_message {
	top: 0px;
	right: 10px;
	bottom: auto;
}
#printitem .cart_message::before, #printitem .cart_message::after {
	left: 34%;
}
/* サイズ入力
==============================*/
.size_input {
	margin-top: 10px;
}
.size_input dl {
	display: flex;
	align-items: center;
	gap: 5px;
}
.size_input dt {
	font-size: 16px;
	font-weight: bold;
	color: var(--brown_d);
}
.size_input dd input {
	width: 100px;
	margin-right: 5px;
}
.size_input.err input {
	background-color: var(--pink_d);
	border: solid 2px var(--red);
}
.size_input p {
	display: none;
	font-weight: bold;
	color: var(--red);
}
.size_input.err p {
	display: inline-block;
}
/* 説明
==============================*/
#detailBox .explanation {
	padding: 20px;
	background-color: var(--gray_l);
	border: solid 1px var(--gray);
	border-radius: 5px;
	margin-top: 10px;
}
#detailBox .explanation h3 {
	color: var(--black);
	margin-bottom: 10px;
}
/* #section_price
====================================================================================================*/
/* ローディング画面
============================================================*/
.loadingBox {
	margin: 50px 0;
}
#section_packing .loadingBox {
	display: none;
}
.loadingBox p {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: var(--brown_d);
	margin-bottom: 10px;
}
.loadingBox img {
	display: block;
	width: 100px;
	height: 100px;
	margin: 0 auto;
}
/* #cartBox
============================================================*/
#cartBox {
	background-color: var(--beige_l);
	border-radius: 5px;
	padding: 15px 18px;
	border: solid 2px var(--beige_d);
	position: relative;
}
#cartBox dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 8px 0;
	line-height: 1;
}
#cartBox dt {
	width: 170px;
	height: 30px;
	line-height: 30px;
	font-size: 20px;
	font-weight: bold;
	color: var(--brown_d);
}
#cartBox dd {
	width: 240px;
	height: 30px;
	line-height: 30px;
	text-align: right;
	font-size: 30px;
	font-weight: bold;
	color: var(--brown_d);
}
#cartBox dd select {
	width: 100%;
	padding: 0 0 0 5px;
	font-size: 20px;
}
#cartBox dd span {
	font-size: 18px;
	font-weight: bold;
	margin-left: 3px;
}
#cartBox .dl_quantity dt, #cartBox .dl_quantity dd {
	height: 50px;
	line-height: 50px;
}
#section_price .unit_price {
	font-size: 22px;
}
/* 入り数表記 */
#cartBox dd:has(.snp) {
	position: relative;
	margin-bottom: 20px;
}
#cartBox .snp {
	font-size: 16px;
	color: var(--red);
	line-height: 1;
	position: absolute;
	top: 60px;
	right: 0;
	white-space: nowrap;
}
/* オプション */
#cartBox .dl_quantity .dt_option, #cartBox .dl_quantity .dd_option {
	height: 20px;
	line-height: 20px;
	font-size: 16px;
	display: none;
}
/* お届け先選択 */
#cartBox .delivery_select {
	font-size: 16px;
	color: var(--brown_d);
	padding-top: 15px;
	margin: 15px 0 5px;
	border-top: solid 1px var(--gray);
}
#cartBox .delivery_select select, #packingBox .delivery_select select {
	padding: 0 0 0 3px;
}
#cartBox .delivery_select select:nth-of-type(1), #packingBox .delivery_select select:nth-of-type(1) {
	width: 100px;
	margin-left: 3px;
}
#cartBox .delivery_select select:nth-of-type(2), #packingBox .delivery_select select:nth-of-type(2) {
	width: 180px;
	margin-right: 3px;
}
/* 送料+梱包費 */
#cartBox .dl_postage {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: solid 1px var(--gray);
}
#cartBox .dl_postage dt:nth-of-type(2), #cartBox .dl_postage dd:nth-of-type(2), #cartBox .dl_totalprice dt:nth-of-type(2), #cartBox .dl_totalprice dd:nth-of-type(2) {
	font-size: 20px;
	font-weight: normal;
	height: 20px;
	line-height: 20px;
}
#cartBox .dl_postage dt:nth-of-type(2) {
	width: 200px;
}
#cartBox .dl_postage dd:nth-of-type(2) {
	width: 210px;
}
/* 合計金額 */
#cartBox .dl_totalprice dt:nth-of-type(1), #cartBox .dl_totalprice dd:nth-of-type(1) {
	color: var(--red);
}
#cartBox .shippingfee {
	text-decoration: line-through;
	color: var(--brown_d);
	font-weight: normal;
	font-size: 16px;
	margin-right: 5px;
}
/* 出荷日
==============================*/
.shipment_date {
	display: block;
	text-align: center;
	line-height: 1.2;
	padding: 10px 0;
	background-color: var(--white);
	border: solid 2px var(--red);
	border-radius: 5px;
	margin-top: 10px;
}
.shipment_date span {
	font-size: 18px;
	font-weight: bold;
	color: var(--red);
	margin: 0 3px;
}
/* 在庫なし
==============================*/
.stock_out {
	display: block;
	text-align: center;
	line-height: 1.2;
	font-size: 18px;
	font-weight: bold;
	color: var(--gray_d);
	background-color: var(--gray_l);
	border: solid 2px var(--gray_d);
	padding: 5px 0;
	border-radius: 5px;
	margin-top: 10px;
}
.stock_out span {
	font-size: 16px;
	display: block;
	margin: 5px 30px 0px;
}
#cartBox:has(.stock_out) .shipment_date {
	display: none;
}
/* 広告入り訴求
==============================*/
#cartBox .discount_rate {
	width: fit-content;
	background-color: var(--white);
	border: solid 2px var(--orange_d);
	border-radius: 5px;
	padding: 8px 20px;
	text-align: center;
	margin: 5px 0 0 auto;
	position: relative;
}
#cartBox .discount_rate p {
	font-size: 16px;
	color: var(--brown_d);
}
#cartBox .discount_rate a {
	font-size: 16px;
	color: var(--brown_d);
}
#cartBox .discount_rate p > span {
	display: block;
	font-size: 20px;
	font-weight: bold;
	color: var(--orange_d);
	line-height: 1;
}
#cartBox .discount_rate span span {
	font-size: 30px;
	font-weight: bold;
}
#cartBox .discount_rate::before {
	content: "";
	border: solid 8px transparent;
	border-bottom: solid 16px var(--orange_d);
	position: absolute;
	top: -24px;
	right: 20px;
}
#cartBox .discount_rate::after {
	content: "";
	border: solid 8px transparent;
	border-bottom: solid 16px var(--white);
	position: absolute;
	top: -20px;
	right: 20px;
}
/* 同じ送料+梱包費 
==============================*/
#cartBox .same_postage {
	background-color: var(--white);
	border: solid 2px var(--red);
	color: var(--red);
	font-size: 20px;
	text-align: center;
	border-radius: 5px;
	padding: 5px;
	margin-top: 5px;
}
#cartBox .same_postage p {
	font-size: 18px;
}
#cartBox .same_postage span {
	font-weight: bold;
}
/* .buttonBox
==============================*/
.buttonBox {
	margin-top: 10px;
	display: flex;
	justify-content: space-between;
}
.buttonBox li {
	width: 205px;
	position: relative;
	font-size: 17px;
}
/* カート */
.add_cart {
	padding-left: 50px;
}
.add_cart::before {
	content: "";
	display: block;
	width: 40px;
	height: 30px;
	background: url(/img/icon/add_cart.svg) no-repeat center / 40px 30px;
	position: absolute;
	top: 7px;
	left: 25px;
}
/* お気に入り */
.add_mylistOFF, .add_mylistON {
	padding: 0 0 0 25px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
	box-shadow: 1px 1px 2px rgb(0, 0, 0, 0.2);
	transition: 0.2s;
}
.add_mylistOFF {
	color: var(--gray_d);
	background: transparent linear-gradient(180deg, #fff 0%, #DEDEDE 100%, #f5f5f5 100%) 0% 0% no-repeat padding-box;
	border: 1px solid var(--gray);
}
.add_mylistON {
	color: var(--red);
	background: var(--pink_l);
	border: 1px solid var(--red);
}
.add_mylistOFF::before, .add_mylistON::before {
	content: "";
	display: block;
	width: 25px;
	height: 20px;
	position: absolute;
	top: 15px;
}
.add_mylistOFF::before {
	background: url(/img/icon/favolite_off.svg) no-repeat center / 25px 20px;
	left: 15px;
}
.add_mylistON::before {
	background: url(/img/icon/favolite_on.svg) no-repeat center / 25px 20px;
	left: 3px;
}
/* お問い合わせ */
.buttonBox .button_inquiry {
	margin: 0;
}
/* 販売終了 */
.button_discontinued {
	height: 50px;
	line-height: 50px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: var(--white);
	background-color: var(--gray_d);
	border-radius: 5px;
}
#cartBox .button-blue {
	display: block;
	height: 50px;
	line-height: 50px;
	border-radius: 5px;
	text-align: left;
	padding: 0 0 0 15px;
}
#cartBox .arrow-blue::after {
	transform: rotate(90deg);
}
/* ポイント
==============================*/
#get_point {
	font-size: 18px;
	color: var(--brown_d);
	margin-top: 10px;
	position: relative;
}
#get_point::before {
	content: "P";
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	color: #DBAE4D;
	text-align: center;
	line-height: 25px;
	background: #F6E080;
	border-radius: 50%;
	border: solid 1.5px #DBAE4D;
	width: 25px;
	height: 25px;
	padding-left: 1px;
	margin-right: 5px;
	vertical-align: top;
}
#get_point span {
	font-weight: bold;
	color: var(--red);
	max-width: 0 3px;
}
#cartBox + ul {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 20px;
	margin-top: 10px;
}
/* この商品はすでにカートに入っています
==============================*/
.cart_message {
	text-align: center;
	padding: 10px;
	background-color: var(--yellow_l);
	border: solid 5px var(--orange_l);
	border-radius: 10px;
	box-shadow: 1px 1px 5px rgb(0, 0, 0, 0.3);
	position: absolute;
	bottom: 110px;
}
.cart_message input {
	width: 120px;
	height: 40px;
	line-height: 40px;
	padding: 0;
	margin-top: 5px;
}
.cart_message input + input {
	margin-left: 10px;
}
.cart_message::before, .cart_message::after {
	content: "";
	border: solid 12px transparent;
	position: absolute;
	left: 28%;
}
.cart_message::before {
	border-top: solid 18px var(--orange_l);
	bottom: -30px;
}
.cart_message::after {
	border-top: solid 18px var(--yellow_l);
	bottom: -22px;
}
/* セールバナー
==============================*/
#section_price .sale_appeal {
	height: 40px;
	line-height: 40px;
	text-align: center;
	background-color: var(--red);
	color: var(--white);
	font-size: 18px;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}
#section_price .sale_appeal span {
	font-size: 25px;
	font-weight: bold;
	color: #F3E554;
	vertical-align: -2px;
}
#section_price .sale_appeal + #cartBox {
	border-radius: 0 0 5px 5px;
}
/* #float_navi
============================================================*/
#smsidenavi {
	display: none!important;
}
#float_navi {
	width: 480px;
	padding: 10px;
	position: fixed;
	left: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	gap: 20px;
	z-index: 10;
}
#float_navi > div {
	background: var(--white);
	border-radius: 5px;
	padding: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}
#float_navi > div > p {
	font-weight: bold;
	padding-right: 10px;
	border-right: dashed 2px var(--gray);
	text-align: center;
}
#float_navi > div > p:nth-of-type(1) {
	width: 90px;
	font-size: 20px;
	line-height: 48px;
}
#float_navi > div > p:nth-of-type(2) {
	width: 164px;
	color: var(--red);
	font-size: 25px;
	line-height: 25px;
}
#float_navi > div > p span {
	font-size: 15px;
	line-height: 25px;
	font-weight: bold;
}
#float_navi > div > p span:nth-of-type(2) {
	display: block;
	color: var(--black);
	font-weight: normal;
	line-height: 20px;
}
#float_navi .add_cart {
	width: 174px;
	margin: 0;
	font-size: 18px;
}
#float_navi .add_cart::before {
	left: 10px;
}
#float_navi .button_discontinued {
	width: 150px;
}
#float_navi .cart_message {
	right: 10px;
	bottom: 75px;
}
#float_navi .cart_message::before, #float_navi .cart_message::after {
	right: 24%;
	left: unset;
}
/* #section_packing
====================================================================================================*/
#section_packing {
	margin-top: 20px;
}
#section_packing h3 {
	display: inline-block;
}
/* .quantityBox
============================================================*/
.quantityBox {
	display: none;
}
/* #optionBox
============================================================*/
#optionBox {
	margin-top: 20px;
}
#optionBox li {
	width: 460px;
}
#optionBox > li + li {
	margin-top: 10px;
}
#optionBox li label:first-child {
	height: 80px;
	display: flex;
	gap: 10px;
	align-items: center;
	padding: 0 20px;
	border: solid 1px var(--gray);
	border-radius: 5px;
}
#optionBox li label:has(input:checked) {
	border: solid 1px var(--red);
	background-color: var(--pink_l);
}
#optionBox li label input[type="checkbox"] {
	width: 20px;
	height: 20px;
}
#optionBox li label input[type="checkbox"]:checked {
	background-color: var(--red);
        border: 2px solid var(--red);
}
#optionBox li label > p {
	font-size: 20px;
	font-weight: bold;
	color: var(--red);
	line-height: 25px;
}
/* お急ぎ便 */
#optionBox li:has(#opt_exp) p > span {
	display: block;
	font-size: 16px;
	color: var(--black);
}
#optionBox li:has(#opt_exp) p > span span {
	color: var(--red);
	margin-left: 5px;
}
/* ワンポイント印刷 */
#optionBox li:has(#opt_onp) p > span:first-child {
	font-size: 25px;
	font-weight: bold;
}
#optionBox li:has(#opt_onp) p > span:last-child {
	display: block;
	font-size: 16px;
}
#optionBox li:has(#opt_onp) p > span:last-child span {
	background-color: var(--red);
	color: var(--white);
	font-size: 15px;
	font-weight: bold;
	padding: 4px;
	border-radius: 5px;
	margin-right: 3px;
}
#optionBox li:has(#opt_onp) label + label {
    color: var(--blue_l);
	font-size: 16px;
    cursor: pointer;
    height: auto;
    padding: 0;
    border: none;
    display: inline-block;
    width: auto;
    margin: 5px 0;
}
#optionBox li:has(#opt_onp) label + label:hover {
    text-decoration: underline;
}
#guide_toggle {
    display: none;
}
#guide_toggle:checked ~ #onepoint_guide {
    display: block;
}
#onepoint_guide {
    padding: 10px;
    border: solid 1px var(--gray);
    border-radius: 5px;
    background-color: var(--gray_l);
    display: none;
    transition: 0.2s;
}
#onepoint_guide p {
    color: var(--black);
    line-height: 1.4;
    margin-bottom: 10px;
}
#onepoint_guide li {
    font-size: 16px;
}
#onepoint_guide li span {
    color: var(--red);
    font-weight: bold;
}
/* #packingBox
============================================================*/
#packingBox {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
}
#packingBox dt, #packingBox dd {
	border-top: solid 1px var(--gray);
	border-left: solid 1px var(--gray);
	padding: 8px;
	font-size: 16px;
	color: var(--brown_d);
}
#packingBox dt {
	width: 120px;
	background-color: var(--beige_l);
	font-weight: bold;
}
#packingBox dd {
	width: 340px;
	background-color: var(--white);
	border-right: solid 1px var(--gray);
}
#packingBox dt:last-of-type, #packingBox dd:last-of-type {
	border-bottom: solid 1px var(--gray);
}
#packingBox .delivery_select .red {
	font-size: 18px;
	font-weight: bold;
	margin-left: 3px;
}
/* 容積率 */
.pasking_small, .pasking_large {
	display: inline-block;
	width: 82px;
}
.pasking_large {
	font-size: 14px;
	letter-spacing: -1px;
}
.pasking_large + .packing_bar {
	margin-top: 5px;
}
.packing_bar {
	display: inline-block;
	width: 100px;
	height: 30px;
	border: solid 1px var(--brown_l);
	position: relative;
	margin-right: 5px;
	vertical-align: middle;
}
.packing_bar span {
	display: inline-block;
	height: 29px;
	background-color: var(--brown_l);
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	font-weight: bold;
	line-height: 29px;
}
.doukon {
	font-size: 14px;
}
/* 1梱包あたりの荷姿目安
============================================================*/
#packing_sizeBox {
	width: 320px;
	position: relative;
	margin-top: 20px;
}
#packing_sizeBox span {
	display: block;
	font-size: 16px;
}
#packing_size {
	border: 1px var(--gray) solid;
	height: 320px;
	position: relative;
	overflow: hidden;
	float: none;
}
#packing_sizeBox > span:nth-of-type(1) {
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	text-align: center;
	color: var(--brown_d);
	background-color: var(--beige_l);
	font-weight: bold;
	border: solid 1px var(--gray);
	border-bottom: none;
}
/* 荷姿目安画像
==============================*/
#packing_size .minImg {
	background: var(--white);
}
#packing_size .midImg {
	background: var(--white);
}
#packing_size .bigImg {
	background: var(--white);
}
#packing_size img {
	position: absolute;
	transform-origin: left bottom;
	z-index: 1;
}
#packing_size #packing_hito {
	position: absolute;
	width: 320px;
	height: 320px;
	z-index: 0;
}
#packing_size span { /*梱包紐*/
	display: block;
	position: absolute;
	background: #a3774f;
	z-index: 1;
	margin: 0;
	transform-origin: left bottom;
}
#packing_maeimg {
	width: 90px;
	height: 90px;
	bottom: 10px;
	left: 40px;
}
#packing_migiimg {
	width: 30px;
	height: 90px;
	bottom: 10px;
	left: 130px;
	transform: skewY(-45deg);
}
#packing_ueimg {
	width: 90px;
	height: 30px;
	bottom: 100px;
	left: 40px;
	transform: skewX(-45deg);
}
/* 全面梱包
==============================*/
#packing_sizeBox p {
	width: 130px;
	padding: 10px 8px;
	background-color: var(--beige_d);
	border-radius: 5px;
	color: var(--brown_d);
	margin-top: 10px;
	position: absolute;
	top: 30px;
	right: -140px;
}
#packing_sizeBox p::before {
	content: "";
	border: solid 6px transparent;
	border-top: solid 10px var(--beige_d);
	position: absolute;
	top: 40px;
	left: -14px;
	transform: rotate(90deg);
}
#packing_sizeBox p span {
	font-weight: bold;
}
#packing_sizeBox .popup_link {
	width: 130px;
	margin-top: 5px;
	position: absolute;
	bottom: 50px;
	right: -140px;
}
/* ポップアップ */
#section_packing > div:has(#packing_sizeBox) {
	display: flex;
	flex-wrap: wrap;
}
#supplementBox {
	order: 1;
}
#section_packing > div:has(#packing_sizeBox):has(#packing_size) .popuplink_facility {
	display: block;
}
.popuplink_facility {
	display: none;
	margin-top: 10px;
}
/* 補足
============================================================*/
#supplementBox {
	margin-top: 10px;
}
#supplementBox .view_moreBox {
	height: 180px;
}
#supplementBox a {
	color: var(--blue_l);
}
/* 同時購入
============================================================*/
#together_item {
	margin-top: 30px;
	border: solid 2px var(--orange_l);
	border-radius: 8px;
}
#together_item h3 {
	display: block;
	border: none;
	padding: 5px;
	text-align: center;
	background: var(--orange_l);
	color: var(--white);
	border-radius: 5px 5px 0 0;
}
#together_item .product_list1 {
	margin: 15px 10px;
}
#together_item .product_box {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: space-between;
	width: 430px;
}
#together_item .product_box img {
	width: 190px;
	height: 190px;
}
#together_item .product_box > ul {
	width: 230px;
}
#together_item .product_box .product_name {
	margin-top: 0;
}
#together_item .product_box .product_favorite {
	position: absolute;
	top: 10px;
	left: 150px;
}
#together_item .product_box:nth-of-type(n + 2) .product_favorite {
	top: 25px;
}
#together_item .product_box .product_favorite button {
	top: 0;
	right: 0;
}
#together_item .button-red {
	width: auto;
	margin: 0 auto;
	font-size: 18px;
	padding-left: 55px;
}
#together_item .add_cart::before {
	left: 10px;
}
#together_item .cart_message {
	top: 70px;
	right: 0;
	bottom: auto;
}
#together_item .cart_message input {
	width: 120px;
	height: 40px;
	line-height: 40px;
	padding: 0;
	margin-top: 5px;
	display: inline-block;
}
#together_item .cart_message input + input {
	margin-left: 10px;
}
#together_item .cart_message::before, #together_item .cart_message::after {
	left: 31%;
}
/* 商品仕様
====================================================================================================*/
#section_specs > h4 {
	margin-bottom: 0;
	margin-top: 20px;
}
#section_specs > h4 + .specsBox {
	margin-top: 5px;
}
#section_specs > h4 a {
	font-weight: bold;
	color: var(--blown_d);
}
/* #appealBox
============================================================*/
/* タブ
==============================*/
#appeal_tab {
	display: flex;
	justify-content: space-between;
}
#appeal_tab li {
	display: block;
	width: 100%;
	height: 50px;
	padding: 0 5px;
	line-height: 50px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: var(--gray_d);
	background: var(--gray_l);
	border: solid 1px var(--gray);
	border-radius: 8px 8px 0 0;
	position: relative;
	box-shadow: 1px 1px 2px rgb(0, 0, 0, 0.2);
	transition: 0.2s;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
#appeal_tab .active {
	color: var(--white);
	background: var(--orange_d);
	border: solid 1px var(--orange_d);
	box-shadow: none;
}
#appeal_tab button span {
	font-weight: bold;
}
/* 中身
==============================*/
#appeal_contents > li {
	background: var(--white);
	padding: 20px;
	border: solid 3px var(--orange_d);
	border-radius: 0 0 8px 8px;
	font-size: 16px;
	position: relative;
	z-index: 1;
	display: none;
}
#appeal_contents > li h4 {
	margin-bottom: 10px;
	color: var(--orange_d);
}
#appeal_contents > li h4:nth-of-type(n+2) {
	margin-top: 20px;
}
#appeal_contents > li div + div {
	margin-top: 20px;
}
#appeal_contents > li div p + img {
	margin-top: 5px;
}
#appeal_contents > li a {
	color: var(--blue_l);
}
#appeal_contents .red {
	font-weight: bold;
}
/* .appeal_point */
#appeal_contents .appeal_point li {
	font-size: 16px;
}
#appeal_contents .appeal_point li::before {
	content: "◎";
	color: var(--orange_d);
	margin-right: 3px;
}
#appeal_contents .appeal_point li + li {
	margin-top: 5px;
}
/* item_scloll_box (商品リスト) */
#appeal_contents .item_scloll_box {
	overflow: hidden;
}
#appeal_contents .item_scloll {
	overflow: scroll;
}
#appeal_contents .item_scloll ul {
	display: flex;
	gap: 10px;
}
#appeal_contents .item_scloll li {
	width: 250px;
	text-align: center;
}
#appeal_contents .item_scloll a {
	color: var(--blue_l);
}
/* スペック表
============================================================*/
.specsBox {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
}
.specsBox dt, .specsBox dd {
	border-top: solid 1px var(--gray);
	border-left: solid 1px var(--gray);
	padding: 8px;
	font-size: 16px;
	color: var(--brown_d);
}
.specsBox dt {
	width: 170px;
	background-color: var(--beige_l);
	font-weight: bold;
	position: relative;
}
.specsBox dt .popup_link {
	position: absolute;
	right: 10px;
}
.specsBox dt .popup_link::before {
	margin: 0;
}
.specsBox dd {
	width: 290px;
	background-color: var(--white);
	border-right: solid 1px var(--gray);
}
.specsBox dt:nth-last-of-type(1), .specsBox dd:nth-last-of-type(1) {
	border-bottom: solid 1px var(--gray);
}
/* 強度 */
.specsBox dd .liner_level {
	display: flex;
	align-items: center;
	gap: 1px;
	border-top: dashed 1px var(--gray);
	padding-top: 6px;
	margin-top: 5px;
}
.specsBox dd .liner_level li {
	color: var(--gray_d);
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-size: 14px;
	text-align: center;
	background-color: #DDD;
}
.specsBox dd .liner_level li:first-child, .specsBox dd .liner_level li:last-child {
	background: none;
	color: var(--gray_d);
	width: auto;
}
.specsBox dd .liner_level li:first-child {
	margin-right: 5px;
}
.specsBox dd .liner_level li:last-child {
	margin-left: 5px;
}
.specsBox dd .liner_level li:nth-of-type(2) {
	border-radius: 4px 0 0 4px;
}
.specsBox dd .liner_level li:nth-of-type(7) {
	border-radius: 0 4px 4px 0;
}
.specsBox dd .liner_level li.this {
	background-color: var(--orange_d);
	color: var(--white);
}
/* 対応配送サイズ */
.deliverysize_list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.deliverysize_list li {
	font-size: 16px;
	line-height: 40px;
	height: 40px;
	padding: 0 8px;
	border-radius: 5px;
}
.deliverysize_list .ds-60, .deliverysize_list .ds-70, .deliverysize_list .ds-80, .deliverysize_list .ds-90, .deliverysize_list .ds-100, .deliverysize_list .ds-120, .deliverysize_list .ds-130, .deliverysize_list .ds-140, .deliverysize_list .ds-160, .deliverysize_list .ds-170, .deliverysize_list .ds-180 {
	font-weight: bold;
	color: var(--white);
}
.deliverysize_list .ds-nekoposu img, .deliverysize_list .ds-clickpost img, .deliverysize_list .ds-yuupacket img {
	width: 120px;
	height: auto;
	margin: 5px 0;
}
/* #actionBox
============================================================*/
#actionBox {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}
#actionBox li {
	width: 226px;
	background-color: var(--white);
	border: solid 1px var(--gray);
	border-radius: 5px;
}
#actionBox li a, #actionBox .popuplink_form {
	display: block;
	font-size: 16px;
	color: var(--black);
	padding: 8px 8px 8px 55px;
}
#actionBox .action_custom a {
	background: url(/img/icon/50-custom.png) no-repeat 8px / 40px 40px;
}
#actionBox .action_board a {
	background: url(/img/icon/50-bottom-board.png) no-repeat 8px / 40px 40px;
}
#actionBox .action_search a {
	background: url(/img/icon/50-search.png) no-repeat 8px / 40px 40px;
}
#actionBox .popuplink_form {
	background: url(/img/icon/50-consult.png) no-repeat 8px / 40px 40px;
	padding-right: 15px;
}
#actionBox .popuplink_form::before {
	display: none;
}
/* 所属カテゴリ
============================================================*/
#categoryBox {
	margin-top: 30px;
}
#categoryBox h4 {
	margin-bottom: 10px;
}
#categoryBox ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
#categoryBox li {
	border-radius: 5px;
}
#categoryBox li {
	background-color: var(--white);
	border: solid 1px var(--blue_l);
}
#categoryBox li a {
	display: block;
	font-size: 16px;
	padding: 8px;
	color: var(--blue_l);
}
/* 同寸・類似商品 / この商品を見ている方におすすめの人気商品
====================================================================================================*/
#related_items, #recommended_items {
	margin-top: 80px;
}
#related_items h2 {
	background: url(/img/icon/title-box3.svg) no-repeat top left / 30px 30px;
}
#recommended_items h2 {
	background: url(/img/icon/title-box1.svg) no-repeat top left / 30px 30px;
}
#related_items > h3 {
	border-left: solid 10px var(--brown_l);
	padding-left: 5px;
	margin-bottom: 10px;
}
#related_items > div + h3 {
	margin-top: 30px;
}
#related_items .product_list2 + h3 {
	margin-top: 30px;
}
#related_items > div, #recommended_items > div {
	overflow: auto;
}
#related_items .product_list2, #recommended_items .product_list2 {
	gap: 15px;
	flex-wrap: nowrap;
	padding-bottom: 5px;
}
#related_items .product_box:first-child .product_favorite button {
	top: 45px;
}
#related_items .product_box .product_favorite button {
	top: 60px;
}
#related_items .product_box {
	margin-top: 30px;
	border-radius: 0 0 5px 5px;
}
#related_items .product_box .appeal {
	width: 100%;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	text-align: center;
	font-weight: bold;
	color: var(--white);
	background-color: var(--orange_d);
	border-radius: 5px 5px 0 0;
	position: absolute;
	top: -30px;
	left: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
/* 商品レビュー / お客様の声
====================================================================================================*/
#reviewBox, #customer_voiceBox {
	margin-top: 80px;
	position: relative;
}
#reviewBox h2 {
	background: url(/img/icon/title-star.svg) no-repeat top left / 30px 30px;
}
#customer_voiceBox h2 {
	background: url(/img/icon/title-talk.svg) no-repeat top left / 30px 30px;
}
#reviewBox h2 + p {
	margin-bottom: 20px;
}
#review_sort {
	margin-top: 5px;
}
#reviewBox > ul, #customer_voiceBox > ul {
	margin-top: 20px;
}
#reviewBox > ul > li + li, #customer_voiceBox > ul > li + li {
	margin-top: 20px;
	border-top: dashed 2px var(--gray);
	padding-top: 20px;
}
#reviewBox li div, #customer_voiceBox li div, [id*="popup_review"] li div {
	display: inline-block;
	margin-left: 60px;
	padding: 10px 15px;
	border-radius: 5px;
	position: relative;
}
#reviewBox li div::before, #customer_voiceBox li div::before, [id*="popup_review"] li div::before {
	content: "";
	display: block;
	width: 36px;
	height: 45px;
	position: absolute;
	top: 0;
	left: -60px;
}
#reviewBox li div::after, #customer_voiceBox li div::after, [id*="popup_review"] li div::after {
	content: "";
	border: solid 6px transparent;
	position: absolute;
	top: 6px;
	left: -15px;
	transform: rotate(90deg);
}
/* 画像付きのレビュー
==============================*/
#review_imglist {
	max-width: 100%;
	width: fit-content;
	position: relative;
	margin: 20px 0;
}
#review_imglist h3 {
	font-size: 16px;
	margin-bottom: 10px;
}
#review_imglist > div {
	overflow-x: scroll;
	padding-bottom: 5px;
}
#review_imglist ul {
	display: flex;
	gap: 10px;
	width: fit-content;
	position: relative;
	left: 0;
	transition: all 0.5s;
}
#review_imglist li {
	border: solid 1px var(--gray);
	border-radius: 3px;
	overflow: hidden;
}
#review_imglist li img {
	display: block;
	width: 150px;
	height: 150px;
	object-fit: cover;
}
#review_imglist .left_slide, #review_imglist .right_slide {
	width: 40px;
	height: 40px;
	top: 20px;
}
#review_imglist .left_slide::after, #review_imglist .right_slide::after {
	width: 40px;
    height: 40px;
    background-size: 13px auto;
}
#review_imglist .left_slide {
	left: -15px;
}
#review_imglist .right_slide {
	right: -15px;
}
/* ご購入者さま
==============================*/
#reviewBox .customer div, #customer_voiceBox .customer div, [id*="popup_review"] .customer div {
	background-color: var(--beige_l);
}
#reviewBox .customer div::before, #customer_voiceBox .customer div::before, [id*="popup_review"] .customer div::before {
	background: url(/img/top/voice_customer.png) no-repeat center / 36px 45px;
}
#reviewBox .customer div::after, #customer_voiceBox .customer div::after, [id*="popup_review"] .customer div::after {
	border-top: solid 15px var(--beige_l);
}
#reviewBox .customer div ul, #customer_voiceBox .customer div ul, [id*="popup_review"] .customer div ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0 15px;
}
#reviewBox .customer span, #customer_voiceBox .customer span, [id*="popup_review"] .customer span {
	color: var(--yellow_d);
	margin-left: 3px;
}
/* レビュー画像 */
#reviewBox .customer div img {
	max-width: 120px;
	max-height: 120px;
	object-fit: contain;
	vertical-align: middle;
	margin-top: 10px;
}
#reviewBox .customer div img + img {
	margin-left: 5px;
}
/* スタッフより
==============================*/
#reviewBox .staff div, #customer_voiceBox .staff div, [id*="popup_review"] .staff div {
	background-color: var(--pink_l);
	margin-top: 10px;
}
#reviewBox .staff div::before, #customer_voiceBox .staff div::before, [id*="popup_review"] .staff div::before {
	background: url(/img/top/voice_staff.png) no-repeat center / 36px 45px;
}
#reviewBox .staff div::after, #customer_voiceBox .staff div::after, [id*="popup_review"] .staff div::after {
	border-top: solid 15px var(--pink_l);
}
#reviewBox .staff span, #customer_voiceBox .staff span, [id*="popup_review"] .staff span {
	display: block;
	font-weight: bold;
}
/* もっと見る
==============================*/
#reviewBox .view_moreBox, #customer_voiceBox .view_moreBox {
	height: 500px;
}
#reviewBox .view_moreBtn + .text_right, #customer_voiceBox .view_moreBtn + .text_right {
	display: none;
}
#reviewBox .open ~ .text_right, #customer_voiceBox .open ~ .text_right {
	display: block;
}
/* ポップアップ
====================================================================================================*/
#contents .popup_window {
	height: auto;
}
#popup_postage h3, #popup_payment h3, #popup_point h3, #popup_form h3, #popup_inquiry h3, .popup_deliveryservice li h3 {
	border-left: solid 10px var(--brown_l);
	padding-left: 5px;
	margin: 20px auto 15px;
}
#popup_payment .payment_method h3 span, .popup_deliveryservice h3 span {
	font-size: 16px;
	font-weight: bold;
	margin-left: 5px;
}
#contents .popup_scroll p .red {
	font-weight: bold;
}
/* 動画
============================================================*/
#contents .popup_scroll iframe {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: 200px;
}
/* お客様へ安心して商品をお届けするために
============================================================*/
#popup_facility ul {
	margin-top: 20px;
}
#popup_facility li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}
#popup_facility li h3 {
	background-color: var(--beige_l);
	padding: 10px 0;
	margin: 0;
	text-align: center;
	width: 100%;
}
#popup_facility li img {
	width: 180px;
	height: 180px;
}
#popup_facility li p {
	width: 180px;
}
#popup_facility li + li {
	margin-top: 20px;
}
/* 材質について
============================================================*/
#popup_liner th, #popup_liner td {
	font-size: 15px;
}
#popup_boxformat .select, #popup_flute .select, #popup_liner .select {
	border: solid 3px var(--orange_d);
	border-radius: 1px;
}
#popup_flute .select h3, #popup_flute .select p {
	padding: 4px;
}
#popup_flute .select img {
	padding: 5px
}
/* 内容物重量目安について
============================================================*/
#popup_contentweight .popup_window {
	height: auto;
}
#popup_contentweight h2 + p, #popup_contentweight h2 + p + img {
	display: inline-block;
}
#popup_contentweight h2 + p {
	line-height: 1.7;
}
#popup_contentweight h2 + p + img {
	width: 200px;
	height: 160px;
	margin-left: 10px;
	vertical-align: top;
}
/* 送料+梱包費について
============================================================*/
#popup_postage .merit, #popup_postage .demerit {
	padding: 15px;
	border-radius: 8px;
}
#popup_postage .merit {
	background-color: var(--pink_d);
	margin: 10px 0;
}
#popup_postage .demerit {
	background-color: #E8F3F9;
}
#popup_postage .merit h4, #popup_postage .demerit h4 {
	margin-bottom: 10px;
}
#popup_postage .merit h4::before {
	content: "◎";
	color: var(--red);
	margin-right: 5px;
}
#popup_postage .demerit h4::before {
	content: "△";
	color: var(--blue_d);
	margin-right: 5px;
}
#popup_postage p + h3, #popup_postage .demerit + h3 {
	margin-top: 30px;
}
#popup_postage h3:nth-of-type(1) + p + img {
	width: 300px;
	height: 180px;
	margin-top: 10px;
}
/* お支払い方法について
============================================================*/
#popup_payment h2 + p {
	margin-bottom: 20px;
}
#popup_payment .payment_method {
	border: solid 1px var(--gray);
	border-radius: 5px;
	padding: 20px;
	margin-bottom: 5px;
}
#popup_payment .payment_method + .payment_method {
	margin-top: 10px;
}
#popup_payment .payment_method h3 {
	margin-top: 0;
}
#popup_payment .receipt {
	background-color: var(--beige_l);
	border-radius: 5px;
	padding: 15px;
	margin-top: 10px;
}
#popup_payment .receipt span {
	display: block;
	font-weight: bold;
	margin-bottom: 5px;
}
#popup_payment .payment_method table {
	margin-top: 10px;
	width: 100%;
}
.payment_method thead th, .payment_method thead td {
	background-color: var(--gray);
}
/* クレジットカード / その他キャッシュレス決済
==============================*/
#popup_payment .payment_method:nth-of-type(1) > span, #popup_payment .payment_method:nth-of-type(2) > span {
	display: inline-block;
	margin-bottom: 5px;
}
#popup_payment .payment_method:nth-of-type(1) img, #popup_payment .payment_method:nth-of-type(2) img {
	width: 320px;
	height: 40px;
	vertical-align: top;
}
/* 代金引換(e-コレクト)
==============================*/
#popup_payment .payment_method p + p {
	background-color: var(--gray_l);
	border-radius: 5px;
	padding: 15;
	margin-top: 10px;
}
/* コンビニ決済
==============================*/
#popup_payment .payment_method:has(.view_moreBox) th, #popup_payment .payment_method:has(.view_moreBox) td {
	width: 150px;
}
#popup_payment .payment_method:has(.view_moreBox) img {
	display: block;
	width: 300px;
	height: 85px;
	margin: 10px auto 0;
}
#popup_payment .payment_method .view_moreBox {
	background-color: var(--gray_l);
	border-radius: 5px;
	padding: 15px;
	height: 200px;
	margin-top: 10px;
}
/* ポイントについて
============================================================*/
#popup_point .popup_scroll img {
	width: 100%;
}
/* 内寸法・外寸法について
============================================================*/
#popup_boxinside .popup_scroll img, #popup_boxoutside .popup_scroll img {
	display: block;
	width: 340px;
	height: 240px;
	margin: 10px auto 0;
}
/* 対応配送サイズについて
============================================================*/
.popup_deliveryservice .applicable, .popup_postservice .applicable {
	display: block;
	margin-top: 10px;
}
.popup_deliveryservice .applicable span, .popup_postservice .applicable span {
	font-weight: bold;
	color: var(--red);
	font-size: 17px;
}
[id^="popup_deliverysize"] h2 span {
	font-size: 20px;
	font-weight: bold;
	display: block;
}
.popup_deliveryservice h2 + div img, .popup_postservice h2 + div img {
	display: block;
	margin: 10px auto;
}
.popup_deliveryservice h2 + div img {
	width: 240px;
	height: 120px;
}
.popup_postservice h2 + div img {
	width: 200px;
	height: 120px;
}
.popup_deliveryservice table, .popup_postservice table {
	margin: 10px 0;
}
.popup_deliveryservice td, .popup_postservice td {
	width: 160px;
}
.popup_postservice td:nth-of-type(-n+2) {
	width: 225px;
}
.popup_deliveryservice td span {
	display: block;
	font-size: 15px;
}
.popup_postservice table + p {
	margin-bottom: 15px;
}
/* 参照元
==============================*/
.popup_scroll .ref {
	background-color: var(--gray_l);
	border-radius: 5px;
	padding: 20px;
}
.popup_scroll .ref h3 {
	margin-bottom: 10px;
	color: var(--black);
}
.popup_scroll .ref h3 + p {
	margin: 10px 0 5px;
}
.popup_scroll .ref li {
	font-size: 15px;
}
.popup_scroll .ref li + li {
	margin-top: 5px;
}
.popup_scroll .ref a {
	color: var(--blue_l);
}
.popup_scroll .ref a + a {
	margin-left: 10px;
	padding-left: 10px;
	border-left: solid 1px var(--gray);
}
/* アドバイザーに相談する / お問い合わせ
============================================================*/
#popup_form .popup_window h2, #popup_inquiry .popup_window h2 {
	background: url(/img/icon/title-talk.svg) no-repeat left top / 30px 30px;
}
/* 今見ている商品
==============================*/
.watching_item {
	display: flex;
	gap: 5px;
}
.watching_item img {
	width: 100px;
	height: 100px;
}
.watching_item th {
	background-color: var(--beige_l);
}
.watching_item td {
	max-width: 200px;
}
/* お電話
==============================*/
#popup_form h3:nth-of-type(n+2), #popup_inquiry h3:nth-of-type(n+2) {
	margin-top: 30px;
}
#popup_form .telbox li, #popup_inquiry .telbox li {
	font-size: 16px;
	font-weight: bold;
	color: var(--brown_d);
	display: inline-block;
}
#popup_form .telbox li:nth-of-type(1), #popup_inquiry .telbox li:nth-of-type(1) {
	margin-left: 35px;
}
#popup_form .telbox li:nth-of-type(2), #popup_inquiry .telbox li:nth-of-type(2) {
	margin-left: 58px;
}
#popup_form .telbox li:nth-of-type(3), #popup_inquiry .telbox li:nth-of-type(3) {
	margin-left: 54px;
}
#popup_form .telbox > div:first-child a, #popup_inquiry .telbox > div:first-child a {
	font-size: 55px;
	font-weight: bold;
	color: var(--brown_d);
	line-height: 1;
}
#popup_form .telbox > p, #popup_inquiry .telbox > p {
	color: var(--brown_d);
	margin-top: 5px;
}
/* LINE */
#LINE {
	display: flex;
	gap: 10px;
	align-items: center;
	margin-top: 10px;
}
#LINE img {
	display: block;
	width: 130px;
	height: auto;
}
/* ご相談フォーム
==============================*/
#popup_form .formBox, #popup_inquiry .formBox {
	background-color: var(--beige_l);
	padding: 20px;
}
#popup_form .formBox tr, #popup_inquiry .formBox tr {
	display: block;
}
#popup_form .formBox th, #popup_form .formBox td,  #popup_inquiry .formBox th, #popup_inquiry .formBox td, #popup_form .confirmBox th, #popup_form .confirmBox td, #popup_inquiry .confirmBox th, #popup_inquiry .confirmBox td {
	background: none;
	border: none;
	padding: 0;
	text-align: left;
}
#popup_form .formBox th, #popup_inquiry .formBox th {
	text-align: left;
	display: block;
}
#popup_form .formBox td, #popup_inquiry .formBox td {
	display: block;
	width: 100%;
	margin-top: 10px;
}
#popup_form .formBox textarea {
	height: 220px;
}
#popup_inquiry .formBox textarea {
	height: 80px;
}
#popup_form #ERROR, #popup_inquiry #ERROR {
	color: var(--red);
	background-color: var(--white);
	border: solid 1px var(--red);
	padding: 20px;
	margin-top: 10px;
}
#popup_inquiry .formBox input[type="checkbox"] {
	width: 16px;
}
#popup_inquiry .formBox label:has(input[type="checkbox"]) {
	display: inline-block;
	margin-bottom: 10px;
}
#popup_form .button-brown input {
	font-size: 18px;
}
/* ご相談内容のご確認
==============================*/
#popup_form .confirmBox table, #popup_inquiry .confirmBox table {
	margin-top: 0;
}
#popup_form .confirmBox tbody, #popup_inquiry .confirmBox tbody {
	display: block;
	padding: 20px;
	background-color: var(--white);
}
#popup_form .confirmBox tr + tr, #popup_inquiry .confirmBox tr + tr {
	border-top: dashed 1px var(--gray);
	padding-top: 15px;
	margin-top: 15px;
}
#popup_form .confirmBox div, #popup_inquiry .confirmBox div {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#popup_form .confirmBox .button-brown, #popup_inquiry .confirmBox .button-brown {
	margin: 0;
	width: auto;
	padding: 0 20px;
}
#popup_form .confirmBox .button-gray, #popup_inquiry .confirmBox .button-gray {
	height: 50px;
}
/* 送信完了
==============================*/
#popup_form .done_message, #popup_inquiry .done_message {
	display: flex;
	gap: 10px;
}
#popup_form .done_message p, #popup_inquiry .done_message p {
	font-size: 16px;
	height: fit-content;
	padding: 20px;
	background-color: var(--beige_d);
	border-radius: 5px;
	position: relative;
}
#popup_form .done_message p::after, #popup_inquiry .done_message p::after {
	content: "";
	border: solid 8px transparent;
	border-left: solid 16px var(--beige_d);
	position: absolute;
	top: 30px;
	right: -24px;
}
#popup_form .done_message img, #popup_inquiry .done_message img {
	width: 120px;
	height: 120px;
}
/* 商品をカートに追加しました
============================================================*/
#popup_addcart h2 {
	text-align: center;
	padding: 0;
	border: none;
	background: none;
}
#popup_addcart h2 + div {
	display: flex;
	justify-content: center;
	gap: 10px;
}
#popup_addcart h2 + div img {
	display: block;
	width: 100px;
	height: 100px;
	border: solid 1px var(--gray);
}
#popup_addcart th {
	background-color: var(--gray_l);
}
#popup_addcart th, #popup_addcart td {
	padding: 8px 5px;
	min-width: 90px;
}
#popup_addcart td span {
	font-size: 14px;
}
#popup_addcart h2 + div + p {
	margin: 10px 0;
	text-align: center;
}
#popup_addcart .button-red {
	display: block;
	margin: 0 auto 5px;
}
/* こちらの商品を買っている人はこちらの商品にも興味をもっています
==============================*/
#popup_addcart h3 {
	border-left: solid 10px var(--brown_l);
	padding-left: 5px;
	margin: 20px 0 10px;
	font-size: 18px;
}
#popup_addcart h3 + div {
	overflow: auto;
}
#popup_addcart .product_list2 {
	gap: 15px;
	flex-wrap: nowrap;
	padding-bottom: 5px;
}
#popup_addcart .product_box {
	width: 214px;
	padding: 12px;
}
#popup_addcart .product_box .photoimg {
	width: 190px;
	height: 190px;
}
#popup_addcart .priceBox .price {
	font-size: 20px;
}
#popup_addcart .product_box .product_id, #popup_addcart .product_box .review_star {
	font-size: 16px;
}
/* 画像付きのレビュー
============================================================*/
[id*="popup_review"] .popup_scroll > div:nth-of-type(1) {
	width: 374px;
	margin: 0 auto 10px;
}
[id*="popup_review"] .reviewimg_big {
	width: 374px;
	height: 374px;
	overflow: hidden;
	border: solid 1px var(--gray);
	margin-bottom: 10px;
	position: relative;
}
[id*="popup_review"] .reviewimg_big ul {
	width: fit-content;
	display: flex;
	position: relative;
	left: 0;
}
[id*="popup_review"] .reviewimg_big li {
	width: 374px;
	height: 374px;
	display: flex;
	justify-content: center;
	align-items: center;
}
[id*="popup_review"] .reviewimg_big img {
	display: block;
	max-width: 100%;
	max-height: 100%;
}
[id*="popup_review"] .reviewimg_big .left_slide, [id*="popup_review"] .reviewimg_big .right_slide {
	display: none;
}
[id*="popup_review"] .reviewimg_big:hover .left_slide, [id*="popup_review"] .reviewimg_big:hover .right_slide {
	display: block;
}
[id*="popup_review"] .reviewimg_small {
	display: flex;
	flex-wrap: wrap;
	gap: 5px
}
[id*="popup_review"] .reviewimg_small li {
	border: solid 3px transparent;
}
[id*="popup_review"] .reviewimg_small li.select {
	border: solid 3px var(--orange_l);
}
[id*="popup_review"] .reviewimg_small img {
	display: block;
	width: 115px;
	height: 115px;
	object-fit: cover;
}