@charset "UTF-8";

/* ----------------------------------
 GOODS DETAILS
---------------------------------- */
.page-goods .pane-main { max-width: 100vw; overflow-x: hidden;}

#block_of_category,
#block_of_genre { display: none !important;}
.block-goods-detail { margin: 10px 20px; display: block !important;}
.block-goods-set { display: none !important;}

h1.block-goods-name--text { padding: 0; margin: 15px 0 5px; text-align: justify; font-weight: 700; font-size: 20px;}
.review-link { margin-bottom: 5px; text-align: right;}
.review-link a { text-decoration: none; display: inline-block;}
.review-link .block-goods-user-review--count-summary { margin-bottom: 0; border: none; flex-direction: row; background: none; display: flex;}
.review-link .block-goods-user-review--score dt { display: none;}
.review-link .block-goods-user-review--score dd { position: relative; top: auto; right: auto;}
.review-link .block-goods-user-review--score dd img { height: 12px;}
.review-link .score { padding: 4px 0 0 10px; font-size: 12px;}
.review-link .block-goods-user-review--count dt::before { content: '（';}
.review-link .block-goods-user-review--count dd::after  { content: '）';}
.review-link .block-goods-user-review--count dt { font-size: 12px; text-decoration: underline;}
.review-link .block-goods-user-review--count dd { height: 17px; font-size: 12px; text-decoration: underline;}

#gallery_wrap .block-goods-main-gallery { width: calc(100vw - 40px); max-height: 100vw; margin: 0 0 20px 0; position: relative; overflow: inherit;}
#gallery_wrap .block-goods-main-gallery figure { width: calc(100vw - 40px); height: calc(100vw - 40px); display: flex; justify-content: center; align-items: center;}
#gallery_wrap .block-goods-main-gallery figure img { width: calc(100vw - 40px); vertical-align: top;}
#gallery_wrap .swiper-button-prev { display: none;}
#gallery_wrap .swiper-button-next { display: none;}
#gallery_wrap .swiper-container-initialized .swiper-button-prev { display: flex;}
#gallery_wrap .swiper-container-initialized .swiper-button-next { display: flex;}
#gallery_wrap .block-goods-main-gallery .swiper-button-prev { width: 34px; height: 34px; margin: 0; border-radius: 34px; background: #F2F2F2; top: calc(50vw - 37px); left: -17px;}
#gallery_wrap .block-goods-main-gallery .swiper-button-next { width: 34px; height: 34px; margin: 0; border-radius: 34px; background: #F2F2F2; top: calc(50vw - 37px); right: -17px;}
#gallery_wrap .block-goods-main-gallery .swiper-button-prev::after { content: '←'; font-size: 14px; color: #40403F;}
#gallery_wrap .block-goods-main-gallery .swiper-button-next::after { content: '→'; font-size: 14px; color: #40403F;}
#gallery_wrap .block-goods-thumbnail-gallery { width: 100%; margin-bottom: 10px;}
#gallery_wrap .block-goods-thumbnail-gallery .swiper-wrapper { transform: translate3d(0px, 0px, 0px) !important;}
#gallery_wrap .block-goods-thumbnail-gallery ul { display: flex; justify-content: center; flex-wrap: wrap;}
#gallery_wrap #thumbnail_gallery.f-start .block-goods-thumbnail-gallery ul { justify-content: flex-start;}
#gallery_wrap .block-goods-thumbnail-gallery li { width: calc((100vw - 80px)/ 5) !important; height: calc((100vw - 80px)/ 5); margin: 0 10px 10px 0; border: none !important; display: flex; justify-content: center; align-items: center; cursor: pointer;}
#gallery_wrap .block-goods-thumbnail-gallery li:nth-child(5n) { margin-right: 0 !important;}
#gallery_wrap .block-goods-thumbnail-gallery li.swiper-slide-thumb-active figure { width: calc((100vw - 80px)/ 5); height: calc((100vw - 80px)/ 5); border: #40403F 1px solid; box-sizing: border-box;}
#gallery_wrap .block-goods-thumbnail-gallery li figure:hover { border: #ccc 1px solid;}
.page-goods .block-src-c { margin: 0 0 20px 0;}

/* comment1 */
.block-goods-comment1 .set-campaign-item-detail { margin: 0 0 30px;}
.block-goods-comment1 .set-campaign-item-detail-list { margin: 15px 0; padding: 10px 15px; border-top: #EAEAEA 1px dashed; border-bottom: #EAEAEA 1px dashed;}
.block-goods-comment1 .set-campaign-item-detail-list li { font-size: 12px;}
.block-goods-comment1 .set-campaign-item-detail-list li + li { margin-top: 10px;}
.block-goods-comment1 .set-campaign-item-detail .memo { font-size: 12px;}
.block-goods-comment1 .set-campaign-item-wrap { margin: 0; border: #EAEAEA 1px solid;}
.block-goods-comment1 .set-campaign-item-title { padding: 10px 15px; margin: 0; font-size: 14px; font-weight: normal; line-height: 1.0; background: #F8F8F8;}
.block-goods-comment1 .set-campaign-item-inner { padding: 10px 15px;}
.block-goods-comment1 .set-campaign-item-list li { padding-left: 1em; text-indent: -1em; list-style: disc inside;}
.block-goods-comment1 .set-campaign-item-list li a { text-decoration: underline;}

.block-goods-detail--promotion-freespace { padding: 0; margin: 0;}

/* price */
.net-price { display: none !important;}
.block-goods-price--regular-repeat-default-price { text-decoration: none;}
.block-goods-price-wrapper { padding: 20px; margin: 0 -20px 30px;}
.type-teiki .block-goods-price-wrapper { margin-top: 20px; background: #F8F8F8;}
.type-teiki-single .block-goods-price-wrapper { margin-top: 20px; background: #F8F8F8;}
.block-goods-price-wrapper .block-add-cart { margin: 0;}
#spec_price.block-goods-price { margin: 0; padding: 0; background: none; display: block;}
#teiki-price-ttl { margin-bottom: 20px; font-size: 14px; font-weight: normal; text-align: left; text-decoration: none; position: relative; display: none;}
.type-teiki #teiki-price-ttl,
.type-teiki-single #teiki-price-ttl { display: block;}
#teiki-price-ttl::before { content: '販売価格'; margin: 0 15px 0 0; font-size: 14px;}
#teiki-price-ttl span { text-decoration: line-through; display: inline-block;}
#teiki-price-ttl span::after  { content: '(税込)'; font-size: 10px;}
#normal-price-frame { width: 100%; height: 50px; background: #fff; display: flex; justify-content: space-between; align-items: center;}
#normal-price-frame .block-goods-price--price { width: 100%; padding-left: 150px; font-size: 24px; display: flex; align-items: center; justify-content: flex-end; position: relative;}
#normal-price-frame .block-goods-price--price .tax { padding-top: 10px; font-size: 8px;}
#normal-price-frame .block-goods-price--price::before { content: '販売価格'; font-size: 14px; font-weight: 300; color: #333; position: absolute; top: calc(50% - 0.75em); left: 0;}
#normal-price-frame.onsale .block-goods-price--default-price.default-price::before { content: '販売価格'; font-size: 14px; color: #999;}
#normal-price-frame.onsale .block-goods-price--price { color: #F8485E;}
#normal-price-frame.onsale .block-goods-price--price::before { content: '特別価格'; font-size: 14px; font-weight: normal; color: #F8485E; position: absolute; left: 0; top: calc(50% - 0.75em);}
.type-teiki-single #normal-price-frame { padding: 5px 15px;}
.type-teiki-single #normal-price-frame .block-goods-price--price::before { content: '定期価格'; font-size: 14px; font-weight: bold; color: #F8485E;}
.type-teiki-single #normal-price-frame .block-goods-price--price { font-weight: bold; color: #F8485E;}
#first-price-frame { width: 100%; height: 50px; padding: 0 15px; margin-bottom: 10px; background: #fff; display: flex; justify-content: space-between; align-items: center;}
#first-price-frame .block-goods-price--regular-repeat-initial-price-name::after { -webkit-background-size: 25px 25px; background-size: 25px 25px;}
#first-price-frame .block-goods-price--regular-repeat-initial-price-name { margin: 0; padding: 0; font-size: 14px; text-align: left; color: #F8485E; position: relative;}
#first-price-frame .block-goods-price--price { display: flex; align-items: center; justify-content: flex-end; font-size: 24px; color: #F8485E;}
#first-price-frame .block-goods-price--regular-repeat-net { display: none !important;}
#first-price-frame .block-goods-price--price .tax { padding-top: 10px; font-size: 8px;}
#repeat-price-frame { width: 100%; padding: 0 15px; margin: 0 0 10px 0; display: flex; justify-content: space-between; align-items: center;}
#repeat-price-frame .block-goods-price--regular-repeat-price-name::after { -webkit-background-size: 25px 25px; background-size: 25px 25px;}
#repeat-price-frame .block-goods-price--regular-repeat-price-name { margin: 0; padding: 0; font-size: 14px; text-align: left; position: relative;}
#repeat-price-frame .block-goods-price--regular-repeat-price { display: flex; align-items: center; justify-content: flex-end; font-size: 24px;}
#repeat-price-frame .block-goods-price--regular-repeat-price .tax { padding-top: 10px; font-size: 8px;}
#repeat-price-frame .block-goods-price--regular-repeat-net { display: none !important;}
.block-variation { margin: 0;}
.block-variation select { min-width: 50%; padding: 10px; margin: 15px 0 0 0; border-color: #ccc;}
.block-add-cart { margin: 0; padding: 0; background: none;}
.block-add-cart input.block-add-cart--btn.btn.btn-primary { width: 100%; height: 52px; padding: 0 0 0 1em; margin: 15px 0 0 0; border: #40403F 1px solid; border-radius: 4px; font-size: 20px; font-weight: 400; text-align: center; color: #40403F; letter-spacing: 3px; background: #FFF url("/img/usr/common/i_cart.png") calc(50vw - 6.5em) center no-repeat; -webkit-background-size: 20px 20px; background-size: 20px 20px; display: flex; justify-content: center; align-items: center;}
.type-teiki .block-add-cart input.block-add-cart--btn.btn.btn-primary,
.type-teiki-single .block-add-cart input.block-add-cart--btn.btn.btn-primary { border: #E95464 1px solid; color: #FFF; background: #E95464;}

.block-no-stock { width: 100%; padding: 0; margin: 0; background: #f5f5f5;}
.block-no-stock--message { width: 100%; text-align: center; margin: 0; padding: 15px 0; border: none; border-radius: 4px; font-size: 16px; color: #a94442; background-color: #f2dede;}
.block-goods-price .regular-teiki-members-notice { margin: 0; padding: 0 15px; font-size: 10px; text-align: left; line-height: 1.6;}
.block-goods-price .regular-first-price-notice   { margin: 0; padding: 0 15px; font-size: 10px; text-align: left; line-height: 1.6;}
.regular-teiki-members-notice.normal { font-size: 10px; position: relative; top: -5px;}
.type-teiki-single .regular-teiki-members-notice.normal { margin-top: 10px; top: 0;}
.block-arrival-notice .block-arrival-notice--btn { width: 100%; padding: 10px 0; margin: 10px 0; border: #40403F 1px solid; border-radius: 4px; font-size: 16px; font-weight: 400; text-align: center; color: #40403F; letter-spacing: 3px; background: #FFF; display: flex; justify-content: center; align-items: center;}

#block-goods-detail-teiki-members { padding: 0; margin: 20px 0; background: none;}
#block-goods-detail-teiki-members h2 { padding: 0; margin: 0; font-size: 15px;}
#block-goods-detail-teiki-members p.text { margin: 0; font-size: 15px;}
#block-goods-detail-teiki-members p.change_btn a.btn { height: 52px; padding: 0; margin: 10px 0; border: #F8485E 1px solid; border-radius: 4px; font-size: 20px; text-align: center; letter-spacing: 0.05em; color: #F8485E; display: flex; justify-content: center; align-items: center; background: #fff;}
.block-goods-comment2 { margin: 15px 0;}

/* Premium */
#block-goods-detail-premium             { padding: 15px; margin: 1px 0 10px 0; border: #c5c5c5 1px solid; background: #f5f5f5;}
#block-goods-detail-premium h2          { padding: 0; margin: 0 0 10px 0; text-align: center; font-size: 16px; font-weight: 700; color: #151515;}
#block-goods-detail-premium h2::before  { content: '＼'; font-size: 16px; font-weight: normal; color: #151515;}
#block-goods-detail-premium h2::after   { content: '／'; font-size: 16px; font-weight: normal; color: #151515;}
#block-goods-detail-premium .otoku      { padding: 0; margin: 0 0 10px 0; text-align: center; font-size: 14px; font-weight: normal; color: #151515;}
#block-goods-detail-premium .link_btn a { padding: 10px 0; margin: 15px 0 0 0; border-radius: 30px; text-align: center; font-size: 16px; color: #fff; display: block; background: #F8485E url(/img/usr/btn_arrow2_w.png) 92% center no-repeat; -webkit-background-size: 16px auto; background-size: 16px auto;}

.comment01-border-frame { border: #f8485e 1px solid; padding: 15px 0 12px; display: flex; justify-content: center;}
.comment01-border-frame.one-line { padding: 5px 0; text-align: center;}
.comment01-border-frame .left    { padding-right: 7px;}
.comment01-border-frame.one-line .left { align-self: center;}
.comment01-border-frame .left    { padding-right: 7px;}
.comment01-border-frame .left .line01        { font-size: 12px; display: block;}
.comment01-border-frame .left .line01 .tax   { margin: 0 3px; font-size: 10px;}
.comment01-border-frame .left .line02        { font-size: 12px; display: block;}
.comment01-border-frame .left .line02 .tax   { margin: 0 3px; font-size: 10px;}
.comment01-border-frame .left .line02 strong { margin: 0 0 0 5px; font-size: 16px;}
.comment01-border-frame .right { padding-left: 7px; align-self: center; font-family: "Poppins", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;}
.comment01-border-frame .right strong { align-self: center; font-size: 28px; font-weight: 700; color: #f8485e; letter-spacing: -2px;}
.comment01-border-frame .right span   { margin-left: 2px; align-self: center; font-size: 20px; font-weight: 300; color: #f8485e; letter-spacing: -1px;}

/* regular link - normal link */
.block-goods-comment3 { margin: 0 -20px 20px;}
#block_goods_detail_teiki_merit_header { padding: 20px; margin: 30px 0 0 0; background: #F8F8F8; position: relative;}
.block-goods-price-wrapper #block_goods_detail_teiki_merit_header { padding: 0; margin: 30px 0 20px;}
.block-goods-price-wrapper .single-regular-merit #block_goods_detail_teiki_merit_header { padding: 0; margin: 20px 0; display: none;}
.type-teiki-single .block-goods-price-wrapper .single-regular-merit #block_goods_detail_teiki_merit_header { display: block;}
#block_goods_detail_teiki_merit_header h2 { max-width: 750px; padding: 0; margin: 0 auto 10px; font-size: 15px; font-weight: bold; text-align: left;}
#block_goods_detail_teiki_merit_header .merit-list { max-width: 750px; margin: 0 auto 10px; display: flex; justify-content: space-between; align-items: flex-start;}
#block_goods_detail_teiki_merit_header .merit-list li { width: 30%; font-size: 14px; line-height: 1.4; text-align: center; position: relative;}
#block_goods_detail_teiki_merit_header .merit-list li strong { font-weight: bold; color: #E95464;}
#block_goods_detail_teiki_merit_header li.merit-sendfree { padding: 60px 0 0 0; background: url("/img/usr/common/ico_teiki_merit_sendfree.png") center top no-repeat; -webkit-background-size: 50px 50px; background-size: 50px 50px;}
#block_goods_detail_teiki_merit_header li.merit-cycle    { padding: 60px 0 0 0; background: url("/img/usr/common/ico_teiki_merit_cycle.png") center top no-repeat; -webkit-background-size: 50px 50px; background-size: 50px 50px;}
#block_goods_detail_teiki_merit_header li.merit-cancel   { padding: 60px 0 0 0; background: url("/img/usr/common/ico_teiki_merit_cancel.png") center top no-repeat; -webkit-background-size: 50px 50px; background-size: 50px 50px;}
#block_goods_detail_teiki_merit_header li.merit-cycle strong { text-align: center; display: block;}
#block_goods_detail_teiki_merit_header li.merit-cancel p.memo { margin: 5px 0 0 0; padding-left: 1em; text-indent: -1em; font-size: 10px; position: relative;}
#block_goods_detail_teiki_merit { padding: 0 20px 15px; margin: 0 0 20px 0; background: #F8F8F8; position: relative;}
#block_goods_detail_teiki_merit .regular-first-price     { width: 100%; height: 50px; padding: 0 15px; margin: 0 0 10px 0; display: flex; justify-content: space-between; align-items: center; background: #fff;}
#block_goods_detail_teiki_merit .regular-first-price dt  { font-size: 12px; line-height: 1.0; font-weight: bold; color: #F8485E;}
#block_goods_detail_teiki_merit .regular-first-price dd  { font-size: 23px; line-height: 1.0; font-weight: bold; color: #F8485E;}
#block_goods_detail_teiki_merit .regular-first-price dd .tax { font-size: 12px; font-weight: normal; color: #F8485E;}
#block_goods_detail_teiki_merit .regular-second-price    { width: 100%; height: 40px; padding: 0 15px; margin: 0 0 10px 0; display: flex; justify-content: space-between; align-items: center;}
#block_goods_detail_teiki_merit .regular-second-price dt { font-size: 12px; line-height: 1.0; font-weight: bold;}
#block_goods_detail_teiki_merit .regular-second-price dd { font-size: 23px; line-height: 1.0; font-weight: bold;}
#block_goods_detail_teiki_merit .regular-second-price dd .tax { font-size: 12px; font-weight: normal;}
#block_goods_detail_teiki_merit .rank-up-price-notice { margin: 0 0 10px 0; font-size: 10px;}
#block_goods_detail_teiki_merit .page-link-btn { margin: 0 0 10px 0;}
#block_goods_detail_teiki_merit .page-link-btn a { width: 100%; height: 52px; border-radius: 4px; display: flex; justify-content: center; align-items: center; font-size: 20px; font-weight: normal; letter-spacing: 3px; color: #fff; background: #E95464; transition: 0.3s;}
#block_goods_detail_teiki_merit .page-link-btn a:hover { opacity: 0.7;}
#block_goods_detail_teiki_merit .page-link-btn-memo { font-size: 10px; font-weight: normal; text-align: right;}

#block-goods-detail-normalitem { margin: 0; padding: 20px 15px; border: #e5e5e5 1px solid; background: #fff; position: relative;}
#block-goods-detail-normalitem h2 { padding: 0; margin: 0; line-height: 1.2;}
#block-goods-detail-normalitem .normal_head { margin: 0 auto 10px; text-align: center; position: relative;}
#block-goods-detail-normalitem .normal_head::after { content: ''; width: 8px; height: 8px; margin: 0 8px 0 0; border: 1px solid; border-color: transparent transparent #999 #999; transform: rotate(-45deg); display: inline-block; position: absolute; left: calc(50% - 4px); bottom: -12px;}
#block-goods-detail-normalitem .normal_head p { padding: 2px 5px; margin: 0 5px; text-align: center;}
#block-goods-detail-normalitem .normal_head .line01 { font-size: 12px; color: #777; background: #f5f5f5;}
#block-goods-detail-normalitem .normal_head .line02 { font-size: 14px; color: #333; background: #fff;}
#block-goods-detail-normalitem p.normal_price { position: absolute; top: 18px; right: 15px;}
#block-goods-detail-normalitem.per10 p.normal_price { text-align: center; position: relative; top: auto; right: auto;}
#block-goods-detail-normalitem.per10 p.normal_price::before { content: ''; width: 30px; height: 30px; margin-right: 10px; position: relative; left: auto; top: 10px; transform: translateY(0); background: url(/img/usr/10per_off.png) center center no-repeat; display: inline-block; -webkit-background-size: 30px 30px; background-size: 30px 30px;}
#block-goods-detail-normalitem span.ttl { font-size: 14px; margin: 0 5px 0 0;}
#block-goods-detail-normalitem span.price { font-size: 16px;}
#block-goods-detail-normalitem span.price .tax { font-size: 8px;}
#block-goods-detail-normalitem .cart_btn { margin: 15px 0 0 0;}
#block-goods-detail-normalitem .cart_btn a { padding: 10px 0; margin: 15px 0 0 0; border-radius: 30px; text-align: center; font-size: 16px; background: url(/img/usr/common/sp/i_cart_w.png) 25px center no-repeat, #666 url(/img/usr/btn_arrow2_w.png) 94% center no-repeat; -webkit-background-size: 20px 20px, 16px auto; background-size: 20px 20px, 16px auto; color: #fff; display: block;}
#block-goods-detail-normalitem-single { padding: 0 20px; margin: 30px 0;}
#block-goods-detail-normalitem-single .cart_btn a { padding: 10px 0; margin: 0; border: #666 1px solid; border-radius: 4px; text-align: center; font-size: 20px; font-weight: 500; letter-spacing: 3px; color: #666; display: block; background: #fff;}
#block-goods-detail-normalitem-single .cart_btn_memo { margin: 10px 0 0 0; font-size: 10px; text-align: right;}

#block-goods-table-list { margin: 20px 0;}
#block-goods-table-list h2 { text-align: right; font-size: 14px; cursor: pointer;}
#block-goods-table-list h2 span { font-size: 14px;}
#block-goods-table-list h2 span::after { content: ''; width: 8px; height: 8px; margin-left: 10px; border-top: 1px solid #cdcdcd; border-right: 1px solid #cdcdcd; -webkit-transform: rotate(135deg); transform: rotate(135deg); display: inline-block; position: relative; top: -3px;}
#block-goods-table-list h2.open span::after { transform: rotate(-45deg); position: relative; top: 0;}
#block-goods-table-list .toggle-wrap { display: none;}
#block-goods-table-list .block-inner-table { margin: 0 0 10px 0;}
#block-goods-table-list .block-inner-table table { width: 100%; border: #e5e5e5 1px solid; border-collapse: collapse;}
#block-goods-table-list .block-inner-table table th.title { width: 19%; border: #e5e5e5 1px solid; border-collapse: collapse; text-align: center; vertical-align: middle; font-size: 11px; background: #f5f5f5;}
#block-goods-table-list .block-inner-table table td { width: 27%; padding: 5px 0; border: #e5e5e5 1px solid; border-collapse: collapse; text-align: center; font-size: 11px;}
#block-goods-table-list .block-inner-table table .head td { background: #f5f5f5;}
#block-goods-table-list .block-inner-table table td .tax { margin: 0; font-size: 8px;}
#block-goods-table-list .block-inner { width: 100%; margin: 0 0 10px 0; border-bottom: #e5e5e5 1px solid; border-right: #e5e5e5 1px solid; display: flex; justify-content: space-between;}
#block-goods-table-list .block-inner .box { min-width: 25%; border-top: #e5e5e5 1px solid; border-left: #e5e5e5 1px solid; flex-grow: 2;}
#block-goods-table-list .block-inner .box.title { display: flex;}
#block-goods-table-list .block-inner .box p { margin: 0 auto; text-align: center; align-self: center; font-size: 12px;}
#block-goods-table-list .block-inner dl dt { padding: 3px 0; text-align: center; font-size: 12px;}
#block-goods-table-list .block-inner dl dd { padding: 3px 0; border-top: #e5e5e5 1px solid; text-align: center; font-size: 12px;}
#block-goods-table-list .block-inner dl dd .tax { font-size: 8px;}
#block-goods-table-list .block-inner .box.title { background: #f5f5f5;}
#block-goods-table-list .block-memo { display: flex; justify-content: flex-end;}
#block-goods-table-list .block-memo ul li { text-align: left; font-size: 10px; color: #919191;}
dl.goods-detail-description,
.block-contact-about-goods { display: none;}
.block-goods-favorite { width: 33px; height: 33px; position: absolute; top: 0; right: -5px;}
.block-goods-favorite a { width: 33px; height: 33px; padding: 0; margin: 0; border: none; text-indent: -9999px; font-size: 0; background: url("/img/sys/bookmark.png") center center no-repeat; -webkit-background-size: 21px auto; background-size: 21px auto; display: block;}
#spec_goods_comment { margin: 5px 40px 0 0;}

#goods_cart_law_frame { margin-top: 20px;}
#goods_cart_law_frame ul li { padding: 0 0 0 0.5em; text-indent: -0.5em; line-height: 1.6; font-size: 10px;}
#goods_cart_law_frame ul li a { text-decoration: underline;}

/* User Review */
.block-goods-user-review h2 { padding: 40px 0 0; margin: 40px 0 20px; border: none; font-size: 12px; text-align: center; line-height: 1.2; position: relative; background: none;}
.block-goods-user-review h2::before,
.block-goods-user-review h2::before { content: 'REVIEW'; margin: 0 0 5px 0; font-family: "Poppins", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; font-size: 26px; font-weight: 300; text-align: center; letter-spacing: 6px; line-height: 1.0; display: block;}
.block-goods-user-review { margin: 10px 20px 40px 20px;}
.block-goods-user-review--info { padding: 0; background: #fff;}
.block-goods-user-review--info dl.block-goods-user-review--score dt { display: none;}
.block-goods-user-review--info dl.block-goods-user-review--score dd .assessment,
dl.block-goods-user-review--item-score dd .assessment { font-size: 12px; margin-left: 8px; vertical-align: top; display: inline-block;}
.block-goods-user-review--info.nothing { background: #fff; text-align: center;}
.block-goods-user-review--info.nothing p { margin-bottom: 5px; font-size: 12px; text-align: center;}
.block-goods-user-review--info.nothing p a { text-decoration: underline;}
.block-goods-user-review--count-summary { margin-bottom: 20px; padding: 6px; border: #e5e5e5 1px solid; background: #f5f5f5; position: relative;}
.block-goods-user-review--count-summary dl { display: inline-block;}
.block-goods-user-review--score dt { font-size: 12px; font-weight: bold; display: inline;}
.block-goods-user-review--score dd { font-size: 12px; display: inline; position: absolute; top: 8px; right: 10px;}
.block-goods-user-review--score dd img { height: 12px; position: relative; top: -3px;}
.block-goods-user-review--count dt { padding-left: 10px; font-size: 12px; font-weight: bold; display: inline;}
.block-goods-user-review--count dd { display: inline;}
.block-goods-user-review--write-review { text-align: right;}
.block-goods-user-review--write-review a { text-decoration: underline; background-size: 14px 14px; padding: 0 0 0 20px;}
.block-goods-user-review--item:first-child { border-top: #e5e5e5 1px solid;}
.block-goods-user-review--item { padding: 10px 0; border: none; border-bottom: #e5e5e5 1px solid; position: relative;}
.block-goods-user-review--item-title { padding: 0 100px 0 0; margin-bottom: 10px; font-size: 14px;}
.block-goods-user-review--item-comment { margin-bottom: 10px; font-size: 12px;}
.block-goods-user-review--item-summary dt { display: inline; font-size: 12px;}
.block-goods-user-review--item-summary dd { display: inline; font-size: 12px;}
.block-goods-user-review--item-score dt { display: none;}
.block-goods-user-review--item-score dd { position: absolute; top: 13px; right: 10px;}
.block-goods-user-review--item-score dd img { height: 12px; position: relative; top: -3px;}
.block-goods-user-review--item-moderate-vote,
.block-goods-user-review--write-review { display: none;}
.block-goods-user-review--item-moderate-link { text-decoration: underline;}
.block-goods-user-review--item-moderate-other-link { text-decoration: underline;}
#review_des_message { margin: 25px 0; text-align: center; font-size: 12px;}
#review_des_message p { margin-bottom: 5px; text-align: center; font-size: 12px;}
#review_des_message a { text-decoration: underline;}
.block-goods-user-review--pagenav { margin: 10px 0; clear: both; background: #fff; padding: 5px 10px; border: none; text-align: center;}
.block-goods-user-review--pager-now { margin: 2px 5px; color: #c5c5c5; font-weight: bold; white-space: nowrap;}
.block-goods-user-review--ref { margin: 2px 5px; color: #003780; text-decoration: underline; font-weight: bold; white-space: nowrap;}
.block-goods-user-review--readmore a { text-decoration: underline;}
.block-goods-user-review--item-moderate-underestimate { padding-left: 10px;}
.block-goods-user-review--item-moderate-underestimate dt { display: inline;}
.block-goods-user-review--item-moderate-underestimate dd { display: inline;}
.block-goods-user-review--item-moderate-overestimate { padding-left: 10px;}
.block-goods-user-review--item-moderate-overestimate dt { display: inline;}
.block-goods-user-review--item-moderate-overestimate dd { display: inline;}
.block-goods-user-review .dropdown { z-index: 1;}
.block-goods-user-review--form { margin: 10px 0 0;}
.block-goods-user-review--write-review-btn { width: 94%; padding: 10px 0; margin: 0 auto; border: #333 1px solid; background: url(/img/usr/btn_arrow2.png) 96% center no-repeat, #fff url(../../img/usr/common/sp/i-wright.png) 15px center no-repeat; -webkit-background-size: 15px auto, 20px 20px; background-size: 15px auto, 20px 20px; border-radius: 24px; color: #333; display: block;}
.block-goods-user-review--form + form .block-goods-detail-footer { margin-top: -10px;}
.block-user-review { margin: 10px;}
.block-user-review--header { margin: -10px -10px 0;}
.block-user-review--review-body textarea { width: 100%;}
.block-user-review--review-contribution-conditions h3 { padding: 10px 0;}
.block-user-review--item-header { margin: 0 -10px 10px;}
.block-user-review--message a { text-decoration: underline;}
.block-user-review--evaluator-name dt { display: inline;}
.block-user-review--evaluator-name dd { display: inline;}
.block-user-review--evaluation { margin-right: 10px; margin-left: 10px;}
.block-user-review--evaluation-score dt { display: inline;}
.block-user-review--evaluation-score dd img { height: 17px; position: relative; top: -3px;}
.block-user-review--evaluation-score dd { display: inline;}
.block-user-review--review-item { margin: 10px -10px 10px;}
.block-user-review--review-header { margin-right: 10px; margin-left: 10px; padding-right: 0; padding-left: 0;}
.block-user-review--review-item:first-child { border-top: 1px solid #eee;}
.block-user-review--evaluation-message { margin: 10px 10px 0;}
.block-user-review--review-comment { padding: 10px; border-bottom: 1px solid #eee;}
.block-user-review--review-item .action-buttons { margin-right: 10px; margin-left: 10px;}
.block-user-review-completed { margin: 10px;}
.block-user-review-completed--header { margin: -10px -10px 0;}
.block-user-review-completed--message-header { margin: 0 -10px 10px;}

/* Discount */
.block-goods-price--regular-repeat-initial-price-name::after { display: none;}
.block-goods-price--regular-repeat-price-name::after { display: none;}

/* Visumo */
.vsm-goods { margin: 60px 0 20px;}
.ecbn-selection-item .ecbn-selection-caption:after { background: -webkit-linear-gradient(top,rgb(245,245,245,0),#fff);}
.vsm-goods .ttle_instagram h2,
.vsm-goods .ecbn-selection-widget .ttle_instagram h2 { margin-bottom: 0; text-align: center;}
.vsm-goods .ttle_instagram { text-align: center;}
.vsm-slider .ecbn-selection-item .ecbn-selection-detail,
.vsm-goods .ecbn-selection-item .ecbn-selection-detail { width: 35vw;}
.ecbn-selection-item .ecbn-selection-caption { padding: 0 10px; font-size:12px;}
.ecbn-selection-item .ecbn-selection-caption:after { background: -webkit-linear-gradient(top,rgb(245,245,245,0),#fff);}
.vsm-goods:not(.user-voice) .ttle_instagram { margin: 0 0 20px;}
.vsm-goods:not(.user-voice) .ttle_instagram:after { content: '公式アカウントの投稿写真を紹介しています。商品のおすすめポイントも記載しているのでぜひチェックしてみてください！'; display: block; margin: 0 10px; text-align: left; line-height: 1.4;}

#goods_accessory { order: 300;}
#tab_product_type { margin-bottom: 10px; display: flex; justify-content: space-between;}
#tab_product_type h2 { width: 49.5%; height: 47px; padding: 0; margin: 0; border: #ccc 1px solid; border-radius: 2px; line-height: 45px; font-size: 13px; text-align: center; color: #666; cursor: pointer; position: relative;}
#tab_product_type h2.active { border: #f8485e 1px solid; background: #fff; color: #f8485e;}
#tab_product_type h2.active::before { content: ''; width: 0; height: 0; margin-left: -6px; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 12px solid #f8485e; position: absolute; bottom: -12px; left: 50%; z-index: 1;}
#tab_product_type h2.active::after { content: ''; width: 0; height: 0; margin-left: -6px; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 12px solid #fff; position: absolute; bottom: -11px; left: 50%; z-index: 1;}
#goods_accessory #tab_product_type h2:nth-child(2).active { border: #666 1px solid; background: #fff; color: #666;}
#goods_accessory #tab_product_type h2:nth-child(2).active::before { border-top: 12px solid #666;}
#goods_accessory ul.block-cart-i--items { width: 100%; padding: 0; margin: 20px 0 0 0; border: none; border-top: #eeeeee 1px solid;}
#goods_accessory .block-cart-i--items li.block-cart-i--goods-inner { width: 100%; padding: 30px 0; margin: 0; border-bottom: #eeeeee 1px solid; flex-basis: 100%; display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap;}
#goods_accessory .block-cart-i--goods-image { width: 75px; height: 75px;}
#goods_accessory .block-cart-i--goods-image figure { width: 75px; height: 75px; background: #fff;}
#goods_accessory .block-cart-i--goods a { text-decoration: none;}
#goods_accessory .block-cart-i--goods-description { width: calc(100% - 90px); margin-top: 0; position: relative; align-self: center;}
#goods_accessory .block-cart-i--goods-description .block-favorite-mark { position: absolute; top: 0; right: 0;}
#goods_accessory .block-cart-i--goods-description .block-favorite-mark a { width: 30px; height: 30px; padding: 0; margin: 0; border: none; border-radius: 0; text-indent: -9999px; font-size: 0; background: url("/img/sys/bookmark.png") right 3px no-repeat; -webkit-background-size: 21px auto; background-size: 21px auto; display: block;}
#goods_accessory .block-cart-i--icon { margin-bottom: 5px;}
#goods_accessory .block-cart-i--icon img { width: 34px;}
#goods_accessory .block-cart-i--goods-description .block-cart-i--goods-comment { margin-right: 40px; font-size: 12px;}
#goods_accessory .block-cart-i--goods-description .block-cart-i--icon + .block-favorite-mark + .block-cart-i--goods-comment { margin-right: 0;}
#goods_accessory .block-cart-i--goods-description .block-cart-i--goods-name { margin: 0 40px 10px 0; font-size: 14px; font-weight: 400; font-feature-settings: "palt"; letter-spacing: 0;}
#goods_accessory .block-cart-i--goods-description .block-cart-i--icon + .block-favorite-mark + .block-cart-i--goods-comment + .block-cart-i--goods-name { margin-right: 0;}
#goods_accessory .block-cart-i--items .price { font-weight: bold;}
#goods_accessory .block-cart-i--items .price,
#goods_accessory .block-cart-i--items .default-price,
#goods_accessory .block-cart-i--items .exchange-price,
#goods_accessory .block-cart-i--items .block-exchange-price--rate-dt { font-size: 13px; font-weight: 700; text-align: right;}
#goods_accessory .block-cart-i--items .net-price { display: none;}
#goods_accessory .block-cart-i--items .block-cart-i--scomment { color: #f8485e;}
#goods_accessory .block-cart-i--items .block-cart-i--cart-btn { margin-top: 10px; padding-left: 20%; text-align: center;	}
#goods_accessory .block-cart-i--items .block-list-add-cart-btn { height: 40px; margin: 0 auto; padding: 8px 0 0 10px; border-radius: 30px; display: block; font-size: 0; text-decoration: none; background: url(/img/usr/common/sp/i_cart_w.png) 15px center no-repeat, #f8485e url(/img/usr/btn_arrow2_w.png) 92% center no-repeat; -webkit-background-size: 20px auto, 16px auto; background-size: 20px auto, 16px auto; position: relative;}
#goods_accessory .block-cart-i--items .block-list-add-cart-btn::before { content: 'カートに入れる'; font-size: 14px; color: #fff; position: absolute; left: calc(50% - 3.5em); top: calc(50% -7px);}
#goods_accessory .block-cart-i--regularsales-price-wrap { text-align: right;}
#goods_accessory .block-cart-i--regularsales-price-wrap .price-ttl,
#goods_accessory .block-cart-i--normalsales-price-wrap .price-ttl { font-size: 11px; font-weight: 700; display: inline-block;}
#goods_accessory .block-cart-i--regularsales-price-wrap .num { display: inline-block; font-size: 16px;}
#goods_accessory .block-cart-i--price--regular-repeat-default-price { font-size: 14px;}
#goods_accessory .block-cart-i--price--regular-repeat-default-price .num { text-decoration: line-through;}
#goods_accessory .block-cart-i--price--regular-repeat-initial-price,
#goods_accessory .block-cart-i--price--regular-repeat-price { color: #f8485e;}
#goods_accessory .block-cart-i--price .num,
#goods_accessory .block-cart-i--price--regular-repeat-initial-price .num,
#goods_accessory .block-cart-i--price--regular-repeat-price .num { font-size: 20px; font-weight: 400; color: #151515;}
#goods_accessory .block-cart-i--price .num span.tax,
#goods_accessory .block-cart-i--default-price span.tax,
#goods_accessory .block-cart-i--price--regular-repeat-default-price .num span.tax,
#goods_accessory .block-cart-i--price--regular-repeat-initial-price .num span.tax,
#goods_accessory .block-cart-i--price--regular-repeat-price .num span.tax { font-size: 8px; font-weight: 400; color: #777;}
#goods_accessory .block-cart-i--normalsales-price-wrap { text-align: right;}
#goods_accessory .block-cart-i--normalsales-price-wrap .num { display: inline-block;}
#goods_accessory .block-cart-i--default-price.default-price.normal-price { font-size: 13px; font-weight: 400; color: #000;}
#goods_accessory .block-cart-i--default-price.default-price.normal-price .num { text-decoration: line-through;}
#goods_accessory .block-cart-i--price.special-price { color: #f8485e;}
.block-goods-detail-teiki-addchange { margin-top: 10px; position: relative;}
.block-goods-detail-teiki-addchange h2.title { padding: 0 15px 0 0; margin: 0; font-size: 11px; text-align: right; cursor: pointer; position: relative;}
.block-goods-detail-teiki-addchange h2.title::before { content: ''; width: 6px; height: 6px; border-top: 1px solid #cdcdcd; border-right: 1px solid #cdcdcd; -webkit-transform: rotate(135deg); transform: rotate(135deg); display: block; position: absolute; right: 0; top: 4px;}
.block-goods-detail-teiki-addchange h2.title.active::before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); top: 8px;}
.block-goods-detail-teiki-addchange-select { padding: 15px 20px; border: #e5e5e5 1px solid; box-shadow: 0px 0px 6px 3px #eee; background: #fff; position: absolute; top: 25px; right: 5px; z-index: 1; display: none;}
.block-goods-detail-teiki-addchange-select .change_btn a { padding: 2px 15px 2px 35px; font-size: 12px; text-align: left; text-decoration: underline; display: block;}
.block-goods-detail-teiki-addchange-select .change_btn.type01 a { background: url(/img/usr/ico_teiki_add.png) 2px center no-repeat; -webkit-background-size: 19px 15px; background-size: 19px 15px;}
.block-goods-detail-teiki-addchange-select .change_btn.type02 { margin-top: 5px;}
.block-goods-detail-teiki-addchange-select .change_btn.type02 a { background: url(/img/usr/ico_teiki_change.png) 2px center no-repeat; -webkit-background-size: 21px 12px; background-size: 21px 12px;}

/* Fixed Cart */
.block-page-top { bottom: 78px;}
.block-goods-detail-footer { width: 100%; height: 68px; padding: 10px; margin: 0; background: rgba(0, 0, 0, 0.8); position: fixed; bottom: -68px; left: 0; z-index: 10; display: flex; justify-content: space-between; align-items: center;}
.block-goods-detail-footer.fixed { animation-duration: 1.0s; animation-name: CartFrameIn; bottom: 0;}
@keyframes CartFrameIn {
  0%   { opacity: 0; transform: translateY(68px);}
  100% { opacity: 1; transform: translateY(0);}
}
#footer-cart-details { width: 60%; display: flex; flex-direction: column;}
#footer-cart-details .block-goods-name--text { max-height: 27px !important; padding: 0; margin: 0; font-size: 12px; font-weight: 400; line-height: 1.1; text-align: left; color: #fff; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
#footer-cart-details #spec_price.block-goods-price { padding: 0; margin: 0; text-align: left; background: none;}
#footer-cart-details .block-goods-price * { height: auto !important; margin: 0; font-size: 14px; font-weight: 400; color: #fff; display: inline-block; background: none;}
#footer-cart-details #normal-price-frame .block-goods-price--price { padding-left: 0;}
#footer-cart-details #normal-price-frame .block-goods-price--price::before { content: '販売価格'; margin-right: 4px; font-size: 10px; color: #fff; position: relative; top: auto; left: auto;}
#footer-cart-details #normal-price-frame.onsale .block-goods-price--price::before { content: '特別価格'; margin-right: 4px; font-size: 10px; color: #F8485E; position: relative; top: auto; left: auto;}
.page-goods.type-teiki #footer-cart-details #normal-price-frame .block-goods-price--price::before,
.page-goods.type-teiki-single #footer-cart-details #normal-price-frame .block-goods-price--price::before { content: '定期価格';}
#footer-cart-details #onsale-price-frame .block-goods-price--default-price.default-price,
#footer-cart-details #onsale-price-frame .block-goods-price--default-price.default-price::before { display: none;}
#footer-cart-details #onsale-price-frame span.tax { color: #F8485E;}
#footer-cart-details #first-price-frame { height: auto; padding: 0 !important; background: none; justify-content: flex-start;}
#footer-cart-details #first-price-frame .block-goods-price--regular-repeat-initial-price-name { margin: 0; padding: 0; flex-basis: auto; font-size: 12px; display: inline; color: #fff;}
#footer-cart-details #first-price-frame .block-goods-price--items { display: inline;}
#footer-cart-details #first-price-frame .block-goods-price--item::before,
#footer-cart-details #first-price-frame .block-goods-price--price::before { display: none !important;}
#footer-cart-details #repeat-price-frame { display: none !important;}
#footer-cart-details #first-price-frame .block-goods-price--price { display: inline;}
#footer-cart-details .block-goods-price--regular-repeat-default-price { display: none !important;}
.block-goods-detail-footer .block-add-cart { flex-basis: 38%; min-width: 38%; height: 48px; padding: 0; margin: 0; background: none;}
.block-goods-detail-footer .block-add-cart input.block-add-cart--btn.btn.btn-primary { height: 48px; margin: 0; padding: 0 0 0 22px; border: #40403F 1px solid; border-radius: 4px; line-height: 48px; font-size: 12px; color: #40403F; background: #FFF url(/img/usr/common/sp/i_cart.png) 8px center no-repeat; -webkit-background-size: 14px 14px; background-size: 14px 14px;}
.page-goods.type-teiki .block-goods-detail-footer .block-add-cart input.block-add-cart--btn.btn.btn-primary,
.page-goods.type-teiki-single .block-goods-detail-footer .block-add-cart input.block-add-cart--btn.btn.btn-primary { padding: 0; border: #F8485E 1px solid; background: #F8485E; color: #fff;}
.block-goods-detail-footer .block-variation,
.block-goods-detail-footer .block-goods-favorite,
.block-goods-detail-footer #footer-cart-details #teiki-price-ttl,
.block-goods-detail-footer #footer-cart-details .block-goods-price--net-price.net-price,
.block-goods-detail-footer #block_goods_detail_teiki_merit_header,
.block-goods-detail-footer .regular-first-price-notice,
.block-goods-detail-footer .regular-teiki-members-notice { display: none !important;}

/* brand banner */
.block-goods-brand-bnr { margin: 40px 20px 50px; }

/* trinityline */
.trinityline-detail{ width: 100%; max-width: 700px; margin: 0 auto 60px; padding: 0 30px;}
.trinityline-detail h2{ margin: 0 0 30px; padding: 0; font-size: 16px; font-weight: 300;}
.trinityline-detail-inner{ padding: 30px 0 0; border-top: 1px solid #ccc;}
.trinityline-detail-box dl{ margin-bottom: 10px;}
.trinityline-detail-box dl dt{ font-size: 11px; line-height: 1.8;}
.trinityline-detail-box dl dd{ font-size: 11px; line-height: 1.6;}

/* chatbot */
body.page-goods:has(.block-goods-detail-footer.fixed) .chatbot-container { border-radius: 5px; bottom: 78px;}
body.page-goods:has(.block-goods-detail-footer.fixed) .chatbot-container .chatbot-frame { display: none;}
body.page-goods:has(.block-goods-detail-footer.fixed) .chatbot-container.is-open .chatbot-frame { display: block;}
body.page-goods:has(.block-goods-detail-footer.fixed):has(.chatbot-container) footer#site_footer #footer_pagetop { bottom: 150px;}
