﻿@charset "UTF-8";

/* ----------------------------------
 GoodsDetail
---------------------------------- */
.page-goods { padding-bottom: 68px;}
.page-goods #footer_pagetop { bottom: 78px;}
.page-goods .pane-main { width: 1280px; margin: 0 auto;}
.pane-goods-right-side form { display: block !important;}

.page-goods .pane-main .block-goods-detail    { width: 1280px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between;}
.page-goods .pane-main .pane-goods-header     { order: 1; width:  100%; margin: 0;}
.page-goods .pane-main .pane-goods-separate   { order: 2; width:  100%; margin: 0 0 60px; display: flex; gap: 40px; padding: 50px 60px; border-radius: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); background: #FFF;}
.page-goods .pane-main .pane-goods-middle     { order: 3; width:  100%; margin: 0;}
.page-goods .pane-main .pane-goods-center     { order: 4; width:  100%; margin: 0 0 60px;}
.page-goods .pane-main .pane-goods-footer     { order: 5; width:  100%; margin: 0;}
.page-goods .pane-main .pane-topic-path       { order: 6; width:  100%; margin: 0 0 60px;}
.page-goods .pane-main .pane-goods-left-side  { width: 520px; margin: 0;}
.page-goods .pane-main .pane-goods-right-side { width: calc(100% - 560px);}

/* Common */
.page-goods img { vertical-align: top;}
.page-goods .flex-wrap { display: flex; flex-wrap: wrap;}
.page-goods .flex-wrap p { font-size: 14px; line-height: 2.0;}
.page-goods .flex-wrap + .flex-wrap { margin-top: 30px;}
.page-goods .flex-wrap.reverse { flex-direction: row-reverse;}
.page-goods .flex-wrap.column2-sb { justify-content: space-between;}
.page-goods .flex-wrap.column2-sb-hf { justify-content: space-between;}
.page-goods .flex-wrap.column2-sb-hf .flex-box { width: 48.35%;}
.page-goods .flex-wrap .flex-box.image-m { width: 380px;}
.page-goods .flex-wrap .flex-box.desc-m  { width: calc(100% - 420px);}
.page-goods .flex-wrap .flex-box.image-logo { width: 155px;}
.page-goods .flex-wrap .flex-box.desc-logo  { width: 745px;}
.page-goods .block-goods-detail--white-frame { margin: 0 0 60px; padding: 50px 60px; border-radius: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); background: #FFF;}
.page-goods .block-goods-detail--common-title { margin: 40px 0 0; padding: 5px 12px; border-left: 4px solid #C00A1D; font-size: 15px; font-weight: bold; line-height: 1.6667; background: #F4F4F4;}
.page-goods .block-goods-detail--common-title:first-of-type { margin-top: 0;}
.page-goods .block-goods-detail--common-text-list,
.page-goods .block-goods-detail--common-text { margin: 12px 0 0; font-size: 15px; line-height: 1.6667;}
.page-goods .block-goods-detail--common-text-list .highlight { color: #C00A1D;}
.page-goods .block-goods-detail--common-button { margin: 12px 0 0;}
.page-goods .block-goods-detail--common-button a { position: relative; display: inline-block; padding: 10px calc(1.0em + 32px) 10px 32px; border: 1px solid #C00A1D; border-radius: 99px; font-size: 14px; font-weight: 500; color: #C00A1D; line-height: 1.5;}
.page-goods .block-goods-detail--common-button a::after { position: absolute; top: calc(50% - 4px); right: 28px; width: 8px; height: 8px; border-top: 1px solid #C00A1D; border-right: 1px solid #C00A1D; box-sizing: border-box; transform: rotate(45deg); content: "";}
.page-goods .block-goods-detail--common-button a:hover { border-color: #957919; color: #957919;}
.page-goods .block-goods-detail--common-button a:hover::after { border-color: #957919;}
.page-goods .block-goods-detail--common-banner-list { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px; margin: 40px 0 0; padding: 32px; border-radius: 16px; background: linear-gradient(to left bottom, #C00A65 0%, #C00A1D 100%);}
.page-goods .block-goods-detail--common-banner-list .block-goods-detail--common-banner-image { border-radius: 12px; overflow: hidden;}
.page-goods .block-goods-detail--common-banner-list .block-goods-detail--common-banner-image img { width: 100%; height: 200px; object-fit: cover;}
.page-goods .block-goods-detail--common-banner-list .block-goods-detail--common-banner-text { margin: 9px 0 0; font-size: 12px; font-weight: 500; color: #FFF;}

/* frame01 --- pane-goods-header */
.page-goods #goodstmpl_top_banner { margin: 0 0 20px 0; text-align: center;}
.page-goods .block-goods-detail--promotion-freespace { margin: 0;}
.page-goods .block-goods-comment1 { margin: 0; font-size: 12px; color: #808080;}
.page-goods .block-goods-link { margin: 0 0 40px 0;}
.page-goods .block-goods-link a { text-decoration: underline;}

/* frame02 --- pane-goods-left-side */
.page-goods .block-src-l { width: 520px; height: 520px; margin: 0 0 40px;}
.page-goods .block-src-l figure { width: 520px; height: 520px; display: flex; justify-content: center; align-items: center; text-align: initial; border-radius: 8px; overflow: hidden;}
.page-goods .block-src-l figure img { max-width: 100%; max-height: 100%;}
.page-goods #gallery .bx-wrapper { position: relative;}
.page-goods #gallery .bx-viewport { min-height: 520px; margin: 0 0 20px;}
.page-goods #gallery .bx-prev,
.page-goods #gallery .bx-next { width: 44px; height: 44px; display: block; position: absolute; top: calc(50% - 22px); font-size: 0; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); border-radius: 50%; background: #FFF;}
.page-goods #gallery .bx-prev { left:  -22px;}
.page-goods #gallery .bx-next { right: -22px;}
.page-goods #gallery .bx-prev::after,
.page-goods #gallery .bx-next::after { content: ''; width: 12px; height: 12px; border-top: 2px solid #C00A1D; border-right: 2px solid #C00A1D; position: absolute;}
.page-goods #gallery .bx-prev::after { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); left: calc(50% - 3px); top: calc(50% - 6px);}
.page-goods #gallery .bx-next::after { -webkit-transform: rotate(45deg); transform: rotate(45deg); right: calc(50% - 3px); top: calc(50% - 6px);}
.page-goods .block-goods-gallery ul { font-size: 0; display: flex; flex-wrap: wrap; gap: 8px;}
.page-goods .block-goods-gallery li { width: 58px; margin: 0; border: none;}
.page-goods .block-goods-gallery li a { width: 58px; height: 58px; border: none; display: flex; justify-content: center; align-items: center; box-sizing: border-box;}
.page-goods .block-goods-gallery li a.active { opacity: 0.6;}
.page-goods .block-goods-gallery li figure { width: 58px; height: 58px; border-radius: 8px; overflow: hidden;}
.page-goods .block-goods-comment5 { margin: 0 0 30px 0;}
.page-goods .block-goods-comment5 h3 { padding: 0; margin: 0 0 15px 0; border: none; font-size: 18px; font-weight: bold; line-height: 1.2;}
.page-goods .block-goods-comment6 { margin: 0 0 30px 0;}

/* frame03 --- pane-goods-right-side */
.page-goods .pane-goods-right-side .block-icon { padding: 0; margin: 0 0 8px; display: flex; flex-wrap: wrap;}
.page-goods .pane-goods-right-side .block-icon span { height: 20px; margin: 0 5px 5px 0; display: block;}
.page-goods .pane-goods-right-side .block-icon span img { width: auto; height: 20px; vertical-align: top;}
.page-goods .pane-goods-right-side .block-shop-name { padding: 0 0 0 30px; margin: 0 0 15px 0; font-size: 16px; color: #999999; background: url("../../img/usr/common/icon_shop.png") left center no-repeat; -webkit-background-size: auto 16px; background-size: auto 16px; line-height: 1.4; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;}
.page-goods .pane-goods-right-side .block-shop-name { display: none !important;}
.page-goods .pane-goods-right-side .block-shop-name a { text-decoration: underline;}
.page-goods .pane-goods-right-side .block-goods-name--text { margin: 0 0 8px; font-size: 26px; font-weight: bold; line-height: 1.3846;}
.page-goods .pane-goods-right-side .block-singleday-date { display: flex; margin: 0 0 20px; font-size: 15px;}
.page-goods .pane-goods-right-side .block-singleday-date dt { margin-right: 1.0em;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info { display: flex; align-items: center; margin: 0 0 16px;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dt { width: auto; font-size: 15px; margin-right: 14px;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd { display: flex; align-items: center; gap: 8px; width: auto; margin: 0;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd::after { display: none;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-plus,
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-minus { position: relative; top: auto; left: auto; right: auto; display: block; width: 28px; height: 28px; padding: 0; border: 1px solid #C00A1D; border-radius: 50%; background: #FFF8F9;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-plus:hover,
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-minus:hover { background: #FFD3D8;}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-plus::before,
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-minus::before { position: absolute; top: calc(50% - 1px); left: calc(50% - 6px); width: 12px; height: 2px; background: #C00A1D; content: "";}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd .block-cart--goods-detail-item-qty-plus::after { position: absolute; top: calc(50% - 6px); left: calc(50% - 1px); width: 2px; height: 12px; background: #C00A1D; content: "";}
.page-goods .pane-goods-right-side .block-goods-detail-item-qty-info dd input[name="qty"] { width: 80px; height: 40px; border: 1px solid #808080; border-radius: 4px; font-size: 15px; text-align: center;}
.page-goods .pane-goods-right-side #spec_goods_comment { margin: 0 0 12px; padding: 10px 20px; border-radius: 20px; font-size: 13px; color: #957919; background: #FFFBED;}
.page-goods .pane-goods-right-side .block-goods-price { margin: 0 0 14px;}
.page-goods .pane-goods-right-side .block-goods-price--price { margin: 0 0 16px; font-size: 28px; font-weight: bold; line-height: 1.32143; text-align: left;}
.page-goods .pane-goods-right-side .block-goods-price--price .tax { font-size: 12px; font-weight: 500;}
.page-goods .pane-goods-right-side .block-goods-price--price .mile { font-size: 16px; font-weight: 500;}
.page-goods .pane-goods-right-side .block-variation { margin: 0 0 16px;}
.page-goods .pane-goods-right-side .block-variation-benefit { display: flex; align-items: center; width: 100%; margin: 0 0 8px; font-size: 15px;}
.page-goods .pane-goods-right-side .block-variation-benefit:last-of-type { margin-bottom: 0;}
.page-goods .pane-goods-right-side .block-variation-benefit dt { width: 116px;}
.page-goods .pane-goods-right-side .block-variation-benefit dd { max-width: calc(100% - 116px);}
.page-goods .pane-goods-right-side .block-variation-benefit dd select { min-width: 360px; max-width: 100%;height: 33px; padding: 0 33px 0 8px; margin: 0; border: 1px solid #808080; border-radius: 2px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; appearance: none; background: #FFF url("../../img/usr/common/select_arrow_r.png") center right 10px / 13px auto no-repeat;}
.page-goods .pane-goods-right-side .block-goods-price--mile-point { margin: 0 0 5px 0; font-size: 16px; text-align: left; display: none !important;}
.page-goods .pane-goods-right-side .block-goods-price--mile-point .mile { font-size: 16px;}
.page-goods .pane-goods-right-side .block-goods-price--jalcard-price { font-size: 16px; text-align: left; color: #CC0000; display: none !important;}
.page-goods .pane-goods-right-side .block-goods-price--jalcard-price::before { padding: 0 5px 0 0; display: inline;}
.page-goods .pane-goods-right-side .block-goods-price--jalcard-price .tax { font-size: 12px;}
.page-goods .pane-goods-right-side .block-goods-price--default-price.default-price { font-size: 14px; color: #000;}
.page-goods .pane-goods-right-side .block-goods-price--default-price.default-price::before { content: '通常マイル数'; margin: 0 15px 0 0; font-size: 14px; text-decoration: none !important; color: #000; display: inline-block;}
.page-goods .pane-goods-right-side table.goods-detail-description { margin: 0 0 32px; border: 1px solid #DEDEDE; border-collapse: collapse; font-size: 15px;}
.page-goods .pane-goods-right-side table.goods-detail-description th,
.page-goods .pane-goods-right-side table.goods-detail-description td { border: 1px solid #DEDEDE; padding: 9px 16px;}
.page-goods .pane-goods-right-side table.goods-detail-description th { color: #333333; white-space: nowrap; background: #F0F0F0;}
.page-goods .pane-goods-right-side table.goods-detail-description td { width: 100%;}
.page-goods .pane-goods-right-side .block-goods-fixed { position: fixed; bottom: 0; left: 0; width: 100%; color: #FFF; z-index: 99; background: #000;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner { display: flex; align-items: center; width: 1280px; margin: 0 auto; padding: 12px 0;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--name { display: -webkit-box; max-height: 42px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 2; width: 100%; padding-right: 50px; font-size: 15px; font-weight: 500; line-height: 1.4; overflow: hidden;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--price { margin-right: 8px; white-space: nowrap; font-size: 28px; font-weight: bold; color: #FFF; line-height: 1.357;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart { width: 310px; flex-shrink: 0;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart { width: 100%;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart .block-add-cart--btn { height: 44px; font-size: 16px;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-arrival-notice,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-outside-sales-period,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-no-stock { width: 100%;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-no-stock--message,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-outside-sales-period--message,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-custom-order--btn,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-arrival-notice--btn,
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-goods-store-stock--btn { height: 44px; font-size: 16px;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart--tel { display: flex; align-items: center; justify-content: center; gap: 1.0em; width: 100%; height: 44px; padding: 0; border-radius: 99px; font-size: 16px; font-weight: bold; background: linear-gradient(to bottom right, #C00A65 0%, #C00A1D 100%); box-sizing: border-box;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart--tel .block-add-cart--tel-name { padding: 0;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart--tel .block-add-cart--tel-number { padding: 0; border-radius: 0; font-size: 16px; line-height: 1.5; color: #FFF; background: none;}
.page-goods .pane-goods-right-side .block-goods-fixed .block-goods-fixed--inner .block-goods-fixed--cart .block-add-cart--tel .block-add-cart--tel-number::before { display: none;}

/* variation */
.page-goods .block-variation.block-color { margin-bottom: 15px;}
.page-goods .block-variation.block-size { margin-bottom: 15px;}
.page-goods .block-variation--item-dropdown { width: 100%; margin-bottom: 15px;}
.page-goods .block-variation--item-list { font-size: 0; display: flex; flex-wrap: wrap;}
.page-goods .block-variation--item { min-width: 70px; margin: 0 15px 15px 0; font-size: 14px; display: block;}
.page-goods .block-variation.block-color .block-variation--item:nth-child(7n) { margin: 0 0 15px 0;}
.page-goods .block-variation--item-term { min-width: 70px; margin: 0; border: 2px solid #E0E0E0; background-color: #fff; cursor: pointer; display: block;}
.page-goods .block-variation--item-term.block-color--item-term { width: 70px; height: 70px; margin: 0 0 5px 0;}
.page-goods .block-variation--item-term.block-size--item-term  { width: auto; min-height: 40px; height: auto; display: flex; justify-content: center; align-items: center;}
.page-goods .block-variation--item.active .block-color--item-term { border-color: #C22E2E;}
.page-goods .block-variation--item-term figure { width: 66px; height: 66px; display: flex; justify-content: center; align-items: center; font-size: 0;}
.page-goods .block-variation--item-term img { max-width: 66px; max-height: 66px;}
.page-goods .block-variation--item-description { font-size: 12px; display: block; text-align: center;}
.page-goods .block-variation--item-description.block-color--item-description { width: 70px; letter-spacing: -1px;}
.page-goods .block-variation--item.color-disable-stock .block-variation--item-term { border: 2px dashed #E0E0E0; background-color: #eee;}
.page-goods .block-variation--item.size-disable-stock .block-variation--item-term { border: 2px dashed #E0E0E0; background-color: #eee;}
.page-goods .block-variation--item.active .block-variation--item-term { border: 2px solid #C22E2E;}
.page-goods .block-size--item-term span { width: auto; height: auto; padding: 0; border: none; display: flex; justify-content: center; align-items: center; word-break: break-all; text-align: initial;}
.page-goods .block-variation-favorite--btn { width: 40px; height: 40px; padding: 0; margin: 0; border: #999 1px solid; border-radius: 2px; background: #fff; display: flex; justify-content: center; align-items: center;}
.page-goods .block-variation-favorite-registed--btn { width: 40px; height: 40px; padding: 0; margin: 0; border: #999 1px solid; border-radius: 2px; background: #fff; display: flex; justify-content: center; align-items: center;}

.page-goods .block-variation-btn-wrap { width: 300px; padding: 0; margin-left: auto; box-sizing: border-box;}
.page-goods .block-variation-add-cart { margin: 0;}
.page-goods .block-variation-add-cart--btn { width: 100%; height: 64px; padding: 0; margin: 0; border-radius: 3px; font-size: 14px; font-weight: bold;}
.page-goods .block-variation-no-stock--message,
.page-goods .block-variation-outside-sales-period--message,
.page-goods .block-goods-variation-arrival-notice--btn { width: 100%; height: 64px; border: 1px solid #eee; border-radius: 3px; color: #999; letter-spacing: -0.5px; background-color: #eee; display: flex; justify-content: center; align-items: center;}
.page-goods .block-variation-favorite { width: 70px; height: 64px; margin: 0 0 0 10px; font-size: 14px;}
.page-goods .block-variation-favorite a { width: 70px; height: 64px; padding: 32px 0 0 0; margin: 0; border: none; border-radius: 5px; box-sizing: border-box; background-color: transparent; background-image: url("../../img/usr/common/icon_like.png"); background-position: center 10px; background-repeat: no-repeat; -webkit-background-size: 32px auto; background-size: 32px auto; font-size: 14px;}
.page-goods .block-variation-favorite a.block-variation-favorite--btn { background-image: url("../../img/usr/common/icon_like.png");}
.page-goods .block-variation-favorite a.block-variation-favorite-registed--btn { background-image: url("../../img/usr/common/icon_like_on.png");}
.page-goods .block-variation-price--mile-point { text-align: left;}
.page-goods .block-variation-stock { width: 160px; height: auto; padding: 0 10px; margin: 0; border: none; background-color: #fff; word-break: break-all;}
.page-goods .block-variation-stock dl { display: flex; flex-wrap: wrap;}
.page-goods .block-variation-stock dt { font-size: 14px;}
.page-goods .block-variation-stock dt::after { content: '：'; font-size: 14px; display: inline;}
.page-goods .block-variation-stock dd { font-size: 14px;}

.page-goods #block_variation_pop_frame { display: none;}
.page-goods #block_variation_pop_frame .variation-line-head { padding: 40px 0 0 0; margin: 0 40px 30px; display: flex; justify-content: space-between;}
.page-goods #block_variation_pop_frame .variation-line-head .head-image { width: 180px; height: 180px; display: flex; justify-content: center; align-items: center; background: #FFF;}
.page-goods #block_variation_pop_frame .variation-line-head .head-desc  { width: calc(100% - 220px); padding: 0; display: flex; flex-direction: column; position: relative; box-sizing: border-box;}
.page-goods #block_variation_pop_frame .variation-line-head .head-desc .head-goods-name { font-size: 26px; font-weight: 500;}
.page-goods #block_variation_pop_frame .variation-line-head .head-desc .variation-price { margin: auto 0 20px 0;}
.page-goods #block_variation_pop_frame .variation-line-head .head-desc .variation-price .block-variation-price--price { font-size: 24px; font-weight: 500;}
.page-goods #block_variation_pop_frame .variation-line-head .head-desc .variation-price .block-variation-price--price .mile { font-size: 12px; font-weight: 500;}
.page-goods #block_variation_pop_frame .variation-line-list { max-height: 50vh; padding: 0; margin: 0 40px 40px; border-top: #A19059 1px solid; overflow-x: hidden; overflow-y: scroll; box-sizing: border-box;}
.page-goods #block_variation_pop_frame .variation-line-item { width: 100%; padding: 16px 0; border-bottom: #A19059 1px solid; display: flex; flex-wrap: nowrap; align-items: center;}
.page-goods #block_variation_pop_frame .image { width: 64px; height: 64px; padding: 0; margin: 0 16px 0 0; border: #eee 1px solid; background: #fff; display: flex; align-items: center; box-sizing: border-box;}
.page-goods #block_variation_pop_frame .image figure { width: 62px; height: 62px; padding: 0; margin: 0; border: none; background: #fff; display: flex; align-items: center; justify-content: center;}
.page-goods #block_variation_pop_frame .image figure img { max-width: 62px; max-height: 62px;}
.page-goods #block_variation_pop_frame .variation-desc { width: 180px; margin: 0 15px 0 0;}
.page-goods #block_variation_pop_frame .variation-desc.no-image { width: 240px;}
.page-goods #block_variation_pop_frame .variation-desc .variation-name { margin: 0;}
.page-goods #block_variation_pop_frame .variation-desc .variation-name .variation-name1 + .variation-name2::before { content: '／'; margin: 0 2px;}
.page-goods #block_variation_pop_frame .variation-stock { width: 210px; margin: 0; display: flex; align-items: center;}
.page-goods #block_variation_pop_frame .variation-stock dt { width: 45px; font-size: 14px; font-weight: 700;}
.page-goods #block_variation_pop_frame .variation-stock dd { font-size: 16px; font-weight: 400; line-height: 1.2; word-break: break-all;}
.page-goods #block_variation_pop_frame .block-variation-add-cart { width: 100%; display: flex; justify-content: space-between; align-items: center; column-gap: 10px;}
.page-goods #block_variation_pop_frame .block-variation-add-cart .cart-link-btn { margin-left: 0;}
.page-goods #block_variation_pop_frame .block-variation-favorite { width: 70px;}
.page-goods #block_variation_pop_button_wrap { width: 100%; display: flex; justify-content: space-between; align-items: center;}
.page-goods #block_variation_pop_button { width: 460px; height: 80px; border-radius: 5px; font-size: 24px; font-weight: bold; color: #fff; background: #C22E2E; display: flex; justify-content: center; align-items: center; cursor: pointer;}
.page-goods #block_variation_pop_inner { width: 960px; max-height: 80vh; margin-top: 40px; background: #FBF9F2; position: relative;}
.page-goods #block_variation_pop_close { width: 30px; height: 30px; position: absolute; right: 0; top: -30px; cursor: pointer; background: #333333;}
.page-goods #block_variation_pop_close::before,
.page-goods #block_variation_pop_close::after { content: ''; width: 0; height: 20px; border-left: #FFF 2px solid; display: block; transform: rotate(45deg); position: absolute; top: calc(50% - 10px); right: 14px;}
.page-goods #block_variation_pop_close::after { transform: rotate(135deg);}
.page-goods #block_variation_pop_inner .block-color-with-cart--item-list,
.page-goods #block_variation_pop_inner .block-size-with-cart--item-list { max-height: 80vh; padding: 40px; background: #FBF9F2; overflow-y: scroll; box-sizing: border-box;}
.page-goods .variation-pop-notice-text { margin-top: 20px; padding: 0 0 0 1em; font-size: 14px; font-weight: 400; text-indent: -1em;}

.page-goods.variation-pop-on { overflow: hidden;}
.page-goods.variation-pop-on #variation_pop_bg { width: 100%; height: 100%; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.7); z-index: 9999;}
.page-goods.variation-pop-on #block_variation_pop_frame { width: 100%; height: 100%; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 10000; display: flex; justify-content: center; align-items: center;}

/* stock */
.page-goods .block-goods-stock-info { margin: 0 0 20px 0;}
.page-goods .block-goods-stock-info dl { display: flex; flex-wrap: wrap;}
.page-goods .block-goods-stock-info dt { font-size: 14px;}
.page-goods .block-goods-stock-info dt::after { content: '：'; font-size: 14px; display: inline;}
.page-goods .block-goods-stock-info dd { font-size: 14px;}

/* cartbutton */
.page-goods .pane-goods-right-side .block-add-cart { display: flex; width: calc(100% - 66px);}
.page-goods .pane-goods-right-side .block-goods-button-wrap { display: flex; align-items: center; margin: 0 0 16px;}
.page-goods .pane-goods-right-side .block-add-cart--btn { width: 100%; height: 54px; padding: 0; border-radius: 99px; font-size: 18px; font-weight: bold; background: linear-gradient(to bottom right, #C00A65 0%, #C00A1D 100%); box-sizing: border-box;}
.page-goods .pane-goods-right-side .block-add-cart--btn:hover { opacity: 0.8;}
.page-goods .pane-goods-right-side .block-no-stock,
.page-goods .pane-goods-right-side .block-arrival-notice,
.page-goods .pane-goods-right-side .block-outside-sales-period { width: calc(100% - 66px);}
.page-goods .pane-goods-right-side .block-no-stock--message,
.page-goods .pane-goods-right-side .block-outside-sales-period--message,
.page-goods .pane-goods-right-side .block-custom-order--btn,
.page-goods .pane-goods-right-side .block-arrival-notice--btn,
.page-goods .pane-goods-right-side .block-goods-store-stock--btn { display: flex; align-items: center; justify-content: center; width: 100%; height: 54px; margin: 0; padding: 0; border: 0; border-radius: 99px; font-size: 18px; font-weight: bold; color: #AEAEAE; background: #F5F5F5; box-sizing: border-box;}
.page-goods .pane-goods-right-side .block-arrival-notice { width: 100%; height: 80px; border-color: #eee; border-radius: 5px; padding: 0; margin: 0; line-height: 80px; font-size: 24px; font-weight: bold; color: #999; background: #eee; box-sizing: border-box;}
.page-goods .pane-goods-right-side .nostock-backorder-on { display: none;}
.page-goods .pane-goods-right-side .block-add-cart--tel { width: 100%; padding: 1px; border-radius: 8px; text-align: center; background: linear-gradient(to bottom right, #C00A65 0%, #C00A1D 100%);}
.page-goods .pane-goods-right-side .block-add-cart--tel .block-add-cart--tel-name { padding: 8px 0 7px; font-size: 16px; font-weight: bold; color: #FFF;}
.page-goods .pane-goods-right-side .block-add-cart--tel .block-add-cart--tel-number { padding: 11px 0; border-radius: 0 0 7px 7px; font-size: 25px; line-height: 1.44; color: #000; background: #FFF;}
.page-goods .pane-goods-right-side .block-add-cart--tel .block-add-cart--tel-number::before { display: inline-block; width: 30px; height: 30px; margin-right: 5px; vertical-align: sub; background: url("../../img/usr/common/icon_goods_tel.png") center center / 100% auto no-repeat; content: "";}
.page-goods .pane-goods-right-side .block-goods-favorite { margin: 0 0 0 12px; font-size: 14px;}
.page-goods .pane-goods-right-side .block-goods-favorite a { display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; margin: 0; padding: 0; border: none; border-radius: 27px; font-size: 0; background: #F5F5F5 url("../../img/usr/common/icon_goods_bookmark.png") center center / 26px auto no-repeat;}
.page-goods .pane-goods-right-side .block-goods-favorite a.block-goods-favorite-registed--btn { background: #C00A1D url("../../img/usr/common/icon_goods_bookmark_registered.png") center center / 26px auto no-repeat;}
.page-goods .pane-goods-right-side .block-contact-about-goods a.btn { width: auto; padding: 0; border: none; background: none; font-size: 14px; text-decoration: underline; display: none;}
.page-goods #sns_links { display: none; margin: 0 0 30px 0;}
.page-goods #sns_links li { width: 24px; margin: 0 10px 0 0;}

/* frame04 --- pane-goods-middle */
.page-goods .goodstmpl-middle { margin: 0 0 80px 0;}
.page-goods .block-goods-comment2 { margin: 0 0 60px 0;}
.page-goods .goods-detail-spec-title { padding: 5px 0 20px 35px; margin: 0 0 30px 0; border-bottom: #A19059 1px solid; font-size: 30px; font-weight: bold; line-height: 1.0; display: flex; align-items: center; background:  url("../../img/usr/common/eye_catch.png") left 10px no-repeat; -webkit-background-size: 16px 16px; background-size: 16px 16px;}
.page-goods .block-goods-comment3 { margin: 0 0 60px 0;}

/* frame05 --- pane-goods-center */
.page-goods .block-goods-comment4 { margin: 0 0 60px 0;}
.page-goods .pane-goods-center .goods-detail-description-wrap { margin: 0 0 60px 0; border-bottom: #E0E0E0 1px solid;}
.page-goods .pane-goods-center .goods-detail-description { border-top: #E0E0E0 1px solid; display: flex; justify-content: space-between; flex-wrap: nowrap;}
.page-goods .pane-goods-center .goods-detail-description dt { width: 180px; padding: 15px 20px; background: #F8F8F8; box-sizing: border-box;}
.page-goods .pane-goods-center .goods-detail-description dd { width: calc(100% - 180px); padding: 15px 20px; background: #FFF; box-sizing: border-box;}

.page-goods .block-goods-contact-shop { padding: 30px 45px; margin: 0 0 60px 0; border: #A19059 1px solid; display: flex; justify-content: space-between; align-items: center; position: relative;}
.page-goods .block-goods-contact-shop::before { content: ''; width: 2px; height: calc(100% - 60px); background: #A19059; display: block; position: absolute; left: 250px; top: 30px;}
.page-goods .block-goods-contact-shop .for-sp { display: none !important;}
.page-goods .block-goods-contact-shop .center { text-align: center;}
.page-goods .block-goods-contact-shop .left   { text-align: left;}
.page-goods .block-goods-contact-shop .right  { text-align: right;}
.page-goods .block-goods-contact-shop .tel    { font-size: 34px; font-weight: bold;}
.page-goods .block-goods-contact-shop .tel a  { pointer-events: none;}
.page-goods .block-goods-contact-shop .mail   { margin: 0 0 10px 0; font-size: 16px; font-weight: normal;}
.page-goods .block-goods-contact-shop .mark   { font-size: 16px; font-weight: normal;}
.page-goods .block-goods-contact-shop-title { width: 150px; padding: 0; margin: 0; border: none; font-size: 18px; font-weight: bold; color: #A19059; text-align: center;}
.page-goods .block-goods-contact-shop-title span { font-size: 18px; font-weight: bold; color: #A19059; text-align: center; display: block;}
.page-goods .block-goods-contact-shop-desc { width: calc(100% - 270px);}
.page-goods .block-goods-contact-shop-desc .name { margin: 0 0 15px 0; font-size: 20px; font-weight: bold;}
.page-goods .block-goods-contact-shop-desc .tel-box { padding: 25px; margin: 0 0 15px 0; background: #fff;}
.page-goods .block-goods-contact-shop-desc .shop-info { display: flex; align-items: center; justify-content: space-between;}
.page-goods .block-goods-contact-shop-desc .shop-info .tel { width: 240px; font-size: 34px; font-weight: bold;}
.page-goods .block-goods-contact-shop-desc .shop-info .time { width: calc(100% - 260px); font-size: 16px; font-weight: normal;}
.page-goods .block-goods-contact-shop-desc .notice { margin-top: 10px;}
.page-goods .block-goods-contact-shop-desc .notice li { padding: 0 0 0 1em; text-indent: -1em; font-size: 14px;}
.page-goods .block-goods-contact-shop-desc .notice li + li { margin: 8px 0 0 0;}
.page-goods .block-goods-contact-shop .other-site { margin: 10px 0 0 0; text-align: right;}
.page-goods .block-goods-contact-shop .other-site a { padding-left: 18px; text-decoration: underline; background: url("../../img/usr/common/icon_othersite.png") left center no-repeat; -webkit-background-size:  12px 12px; background-size: 12px 12px; display: inline-block;}
.page-goods .block-goods-contact-shop .other-site a:hover { text-decoration: none; background: url("../../img/usr/common/icon_othersite_gold.png") left center no-repeat; -webkit-background-size:  12px 12px; background-size: 12px 12px; color: #A19059;}

.page-goods .block-goods-contact-shop .column2 { display: flex; justify-content: space-between; align-items: center;}
.page-goods .block-goods-contact-shop .column2 .box:nth-child(1) { width: 35%; text-align: center;}
.page-goods .block-goods-contact-shop .column2 .box:nth-child(2) { width: 60%;}

.page-goods .block-goods-user-review { margin: 0 0 40px; border-radius: 16px; padding: 48px 60px; background: linear-gradient(to bottom right, #C00A65 0%, #C00A1D 100%);}
.page-goods .block-goods-user-review h3.block-goods-user-review--info-line-title { display: block; padding: 0; margin: 0 0 24px; border: 0; font-size: 26px; font-weight: bold; line-height: 1.5; text-align: center; color: #FFF;}
.page-goods .block-goods-user-review--info { padding: 0; margin: 0 0 24px; color: #FFF;}
.page-goods .block-goods-user-review--nothing { display: flex; justify-content: space-between; align-items: center;}
.page-goods .block-goods-user-review--nothing-message { width: 520px;}
.page-goods .block-goods-user-review--count-summary { display: flex; align-items: center; justify-content: center;}
.page-goods .block-goods-user-review--score { height: 20px; display: flex; align-items: center;}
.page-goods .block-goods-user-review--score::before { content: '総合評価：'; margin: 0 10px 0 0; font-size: 18px; font-weight: bold;}
.page-goods .block-goods-user-review--score img { height: 20px; vertical-align: top;}
.page-goods .block-goods-user-review--count { font-size: 16px;}
.page-goods .block-goods-user-review--need-login-message a { text-decoration: underline;}
.page-goods .block-goods-user-review--write-review-link { text-decoration: underline;}
.page-goods .block-goods-user-review--description { width: 350px; margin: 0;}
.page-goods .block-goods-user-review--form { width: 350px; box-sizing: border-box;}
.page-goods .block-goods-user-review--write-review-btn { width: 250px; height: 40px; border-radius: 5px; padding: 0; margin: 0 0 0 100px; display: block; font-size: 14px; line-height: 40px; background: #111111;}
.page-goods .block-goods-user-review--list { display: flex; flex-wrap: wrap; gap: 20px; width: 100%;}
.page-goods .block-goods-user-review--item { width: calc(50% - 10px); padding: 32px; margin: 0; border-radius: 16px; background: #FFF;}
.page-goods .block-goods-user-review--item-title { margin: 0 0 6px; font-size: 20px; font-weight: bold; line-height: 1.4;}
.page-goods .block-goods-user-review--item-score { margin: 0 0 6px; height: 16px;}
.page-goods .block-goods-user-review--item-score img { height: 16px;}
.page-goods .block-goods-user-review--item-color { display: flex; align-items: center;}
.page-goods .block-goods-user-review--item-size  { display: flex; align-items: center;}
.page-goods .block-goods-user-review--item-color dt { margin: 0 10px 0 0;}
.page-goods .block-goods-user-review--item-size dt  { margin: 0 10px 0 0;}
.page-goods .block-goods-user-review--item-name { margin: 0 0 24px; font-size: 12px; line-height: 1.5;}
.page-goods .block-goods-user-review--item-comment { margin: 0; font-size: 14px; line-height: 1.7143;}
.page-goods .block-goods-user-review--item-moderate-underestimate dt,
.page-goods .block-goods-user-review--item-moderate-underestimate dd,
.page-goods .block-goods-user-review--item-moderate-overestimate dt,
.page-goods .block-goods-user-review--item-moderate-overestimate dd { display: inline-block;}
.page-goods .block-goods-user-review--item-moderate-link,
.page-goods .block-goods-user-review--item-moderate-other-link { text-decoration: underline;}
.page-goods .block-goods-user-review--pagenav { padding: 0 0 40px 0; margin: 0; border-radius: 0 0 20px 20px; background: #fff; clear: both;}
.page-goods .block-goods-user-review--container { display: flex; justify-content: center; flex-wrap: wrap;}
.page-goods .block-goods-user-review--container span { margin: 0 3px; font-size: 14px; display: flex; justify-content: center; align-items: center;}
.page-goods .block-goods-user-review--container span a { width: 28px; height: 28px; border: #fff 1px solid; font-size: 14px; box-sizing: border-box; display: flex; justify-content: center; align-items: center;}
.page-goods .block-goods-user-review--container span.block-goods-user-review--ref.now a { border: #000 1px solid; background: #000000; color: #fff; pointer-events: none;}
.page-goods .block-goods-user-review--container span.prev a { margin-right: 10px; border: #E0E0E0 1px solid; position: relative; background: url(../../img/sys/icon/black/angle-left.png) center center no-repeat; -webkit-background-size: 6px 10.5px; background-size: 6px 10.5px;}
.page-goods .block-goods-user-review--container span.next a { margin-left: 10px; border: #E0E0E0 1px solid; position: relative; background: url(../../img/sys/icon/black/angle-right.png) center center no-repeat; -webkit-background-size: 6px 10.5px; background-size: 6px 10.5px;}
.page-goods .block-goods-user-review--container span.last { width: 59px;}
.page-goods .block-goods-user-review--container span.last::before { content: '…'; width: 28px; height: 28px; margin: 0 3px 0 0; display: flex; justify-content: center; align-items: center;}

.page-goods .block-goods-price--regular-repeat-initial-price-name { font-size: 20px; font-weight: bold; color: #444;}
.page-goods .block-goods-price--regular-repeat-price-name { margin-top: 10px; font-size: 14px; font-weight: bold; color: #444;}
.page-goods .block-goods-price--items { display: table;}
.page-goods .block-goods-price--item  { padding-right: 20px; display: table-cell;}
.page-goods .block-goods-price--regular-repeat-price { font-weight: bold; color: #333;}
.page-goods .block-goods-price--regular-repeat-net { color: #555;}
.page-goods .block-goods-price--regular-repeat-default-price { text-decoration: line-through; color: #333; font-weight: bold;}

.page-goods .block-accessory-list { padding: 60px 0 20px; margin: 0 0 60px 0; position: relative;}
.page-goods .block-accessory-list::before { content: ''; width: 150vw; height: 100%; background: #fff url("../../img/usr/common/bg_washi.jpg") center top repeat; position: absolute; top: 0; left: -50vw;}
.page-goods h2.block-accessory-list--name { padding: 5px 0 20px 35px; margin: 0 0 40px 0; border-bottom: #A19059 1px solid; font-size: 30px; font-weight: bold; line-height: 1.0; display: flex; align-items: center; background:  url("../../img/usr/common/eye_catch.png") left 10px no-repeat; -webkit-background-size: 16px 16px; background-size: 16px 16px; position: relative; z-index: 1;}
.page-goods .block-accessory-list--list   { position: relative; z-index: 1;}

/* frame06 --- pane-topic-path */
.page-goods .pane-topic-path {}

/* frame07 --- pane-goods-footer */
.page-goods .pane-goods-footer {}
.page-goods .block-goods-comment7 { margin: 0 0 60px 0;}
.page-goods .block-goods-comment8 { margin: 0 0 60px 0;}
#goodsdetail_itemhistory .block-recent-item--header { margin: 40px 0 16px; padding: 0; border: 0; font-size: 24px; font-weight: bold; text-align: left; line-height: 1.5;}
#goodsdetail_itemhistory .block-recent-item--items { width: 100%;}
#goodsdetail_itemhistory .block-thumbnail-h { gap: 16px;}
#goodsdetail_itemhistory .block-thumbnail-h > li { width: 200px;}
#goodsdetail_itemhistory .block-thumbnail-h > li .block-thumbnail-h--goods-image figure { width: 200px; height: 200px;}
#goodstmpl_bottom_entry { padding: 15px; border: #E0E0E0 5px solid; display: flex; justify-content: center; align-items: center; background: #fff;}
#goodstmpl_bottom_entry .text { font-size: 20px;}
#goodstmpl_bottom_entry .text .red { color: #D01A1A;}
#goodstmpl_bottom_entry .text strong { font-weight: bold;}
#goodstmpl_bottom_entry .link { margin-left: 20px; font-size: 20px;}
#goodstmpl_bottom_entry .link a { padding-right: 15px; font-size: 20px; font-weight: bold; text-decoration: underline; color: #D01A1A; position: relative; display: inline-block;}
#goodstmpl_bottom_entry .link a::before { content: ""; width: 8px; height: 8px; border-right: 1px solid #D01A1A; border-top: 1px solid #D01A1A; position: absolute; right: -7px; top: calc(50% - 4px); display: block; transform: rotate(45deg);}
#goodstmpl_bottom_entry .link a::after { content: ""; width: 8px; height: 8px; border-right: 1px solid #D01A1A; border-top: 1px solid #D01A1A; position: absolute; right: 0; top: calc(50% - 4px); display: block; transform: rotate(45deg);}
.page-goods .goodstmpl-bottom { margin: 0 0 60px 0;}

/* frame07 --- pane-goods-details-banner */
.page-goods .pane-goods-details-banner { margin: 0 0 100px 0;}
.page-goods .pane-goods-details-banner-list { display: flex; justify-content: space-between;}
.page-goods .pane-goods-details-banner-list li { width: 580px;}
.page-goods .pane-goods-details-banner-list li img { vertical-align: top;}

/* ----------------------------------
 iframe & image-L
---------------------------------- */
.page-goods .block-goods-comment1 iframe { width: 100%; height: 250px; border: none; overflow: inherit; background: #fff;}
.page-goods .block-goods-comment1 .iframe-type01 { padding: 55px 10px 10px 0; margin: 0 0 20px 0; background: #fff; box-sizing: border-box; position: relative;}
.page-goods .block-goods-comment1 .iframe-type01::before { content: '商品の詳細について'; width: 100%; height: 40px; padding: 0 25px; margin: 0 0 15px 0; font-size: 16px; line-height: 1.0; color: #fff; background: #A19059; display: flex; align-items: center; position: absolute; left: 0; top: 0;}
.page-goods .block-goods-comment1 .iframe-type02 { padding: 40px 0 0 0; margin: 0 0 20px 0; background: #fff; box-sizing: border-box; position: relative;}
.page-goods .block-goods-comment1 .iframe-type02 h2 { width: 100%; height: 40px; padding: 0 25px; margin: 0 0 15px 0; font-size: 16px; line-height: 1.0; background: #e6dfcc; display: flex; align-items: center; position: absolute; left: 0; top: 0;}
.page-goods .block-goods-comment1 .iframe-type02 h2:after { content: ''; width: 10px; height: 10px; margin: 0; border-right: 1px solid #333; border-top: 1px solid #333; display: block; position: absolute; right: 15px; top: calc(50% - 6px); transform: rotate(135deg);}
.page-goods .block-goods-comment1 .iframe-type02 h2.open:after { transform: rotate(-45deg); top: calc(50% - 3px);}
.page-goods .block-goods-comment1 .iframe-type02-wrap { padding: 15px 10px 10px 0; background: #fff; display: none;}

.page-goods #lightbox .lb-container { overflow-y: hidden;}
.page-goods #lightbox .lb-image[src^="https://www.jal.co.jp/"] { position: relative; top: -42px;}

.page-menu .block-list-banners li img { vertical-align: top;}
.page-menu .block-list-banners li + li { margin-top: 15px;}
