/* AROMIC biz 商品詳細 / PC
   /Css/product.css、/css/style.css 等の後に読み込む。
   商品詳細テンプレートに限定。購入・選択・同意の動作は既存のまま。 */
:root { --biz-ink:#2e3e36; --biz-green:#486452; --biz-green-dark:#344d3d; --biz-line:#dedfd8; --biz-paper:#fbfaf7; --biz-muted:#68746b; }
.tblLayout_ProductDetail { width:min(1120px, calc(100% - 48px)) !important; margin:48px auto 100px !important; border-collapse:separate; border-spacing:0; font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif; color:var(--biz-ink); }
.tblLayout_ProductDetail > tbody > tr > td { vertical-align:top; }
.tblLayout_ProductDetail > tbody > tr > td:first-child { display:none !important; }
.tblLayout_ProductDetail > tbody > tr > td:last-child { display:block; width:100% !important; min-width:0; padding:0 !important; }
.tblLayout_ProductDetail #secondary { width:100%; float:none; border-top:1px solid var(--biz-line); }
.tblLayout_ProductDetail .categoryList .title { background:none; color:var(--biz-ink); font-size:14px; font-weight:500; letter-spacing:.08em; padding:19px 4px; border:0; }
.tblLayout_ProductDetail .categoryList li { border:0; border-bottom:1px solid var(--biz-line); }
.tblLayout_ProductDetail .categoryList li a { display:block; padding:15px 4px; color:var(--biz-muted); font-size:13px; line-height:1.7; white-space:normal; }
.tblLayout_ProductDetail .categoryList li a:hover { color:var(--biz-green); }
.tblLayout_ProductDetail #primary { width:100%; min-width:0; float:none; }
.tblLayout_ProductDetail #breadcrumb { margin:0 0 36px; padding:0 0 16px; border-bottom:1px solid var(--biz-line); color:var(--biz-muted); font-size:14px; line-height:1.7; }
.tblLayout_ProductDetail #breadcrumb a { color:inherit; text-decoration:none; }
.tblLayout_ProductDetail #breadcrumb a:hover { color:var(--biz-green); text-decoration:underline; }
.tblLayout_ProductDetail #dvProductDetailArea { width:100%; }
.tblLayout_ProductDetail #ctl00_ContentPlaceHolder1_upUpdatePanel { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); column-gap:clamp(40px,5vw,76px); align-items:start; }
.tblLayout_ProductDetail #detailImage, .tblLayout_ProductDetail #detailOne { width:auto !important; float:none !important; min-width:0; margin:0 !important; }
.tblLayout_ProductDetail #detailImage { grid-column:1; grid-row:1; }
.tblLayout_ProductDetail #detailOne { grid-column:2; grid-row:1; }
.tblLayout_ProductDetail #detailImage .mainImage { width:100%; float:none; background:#fff; text-align:center; }
.tblLayout_ProductDetail #detailImage .mainImage > a.thickbox { display:block; }
.tblLayout_ProductDetail #detailImage .mainImage #zoomPicture { display:block; max-width:100%; width:100%; height:auto; object-fit:contain; }
.tblLayout_ProductDetail #detailImage .mainImage .mb5 { margin:0 0 8px; text-align:right; background:#fff; }
.tblLayout_ProductDetail #detailImage .mainImage .mb5 a { font-size:12px; color:var(--biz-muted); border:0; background:none; box-shadow:none; padding:4px 0; }
.tblLayout_ProductDetail #detailImage .mainImage .mb5 a:hover { color:var(--biz-green); text-decoration:underline; }
.tblLayout_ProductDetail .btnListContact { display:flex; flex-wrap:wrap; gap:18px; margin:16px 0 0; padding:0; }
.tblLayout_ProductDetail .btnListContact li { width:auto; border:0; background:none; }
.tblLayout_ProductDetail .btnListContact li:has(a[id$="lbAddFavoriteId"]) { display:none !important; }
.tblLayout_ProductDetail .btnListContact a { color:var(--biz-muted); font-size:12px; border:0; background:none; padding:0 0 3px; text-decoration:none; border-bottom:1px solid var(--biz-line); }
.tblLayout_ProductDetail .btnListContact a:hover { color:var(--biz-green); }
.tblLayout_ProductDetail #detailOne h2 { margin:5px 0 12px; padding:0; font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif; font-size:clamp(23px,2vw,29px); font-weight:500; line-height:1.55; letter-spacing:.03em; color:var(--biz-ink); border:0; background:none; }
.tblLayout_ProductDetail #detailOne .productDetailId { color:var(--biz-muted); font-size:12px; letter-spacing:.04em; margin:0 0 28px; }
.tblLayout_ProductDetail .wrapProductPrice { padding:24px 0; border-top:1px solid var(--biz-line); border-bottom:1px solid var(--biz-line); margin:0 0 26px; text-align:left; background:none; }
.tblLayout_ProductDetail .wrapProductPrice > div { margin:0 0 8px; }
.tblLayout_ProductDetail .wrapProductPrice > div:last-child { margin-bottom:0; }
.tblLayout_ProductDetail .wrapProductPrice .productPrice { color:var(--biz-muted); font-size:13px; line-height:1.8; font-weight:400; text-align:left; }
.tblLayout_ProductDetail .wrapProductPrice .productPrice span { color:var(--biz-ink); font-size:26px; font-family:"Lato",Arial,sans-serif; font-weight:500; letter-spacing:.01em; padding:0 4px 0 10px; }
.tblLayout_ProductDetail .wrapDetailImage { margin:0; padding:0; border:0; }
.tblLayout_ProductDetail .wrapDetailImage > .unit:first-child { display:none !important; } /* 大画像と同一のサムネイルを重複表示しない */
.tblLayout_ProductDetail .wrapDetailImage:has(> .unit:first-child:last-child) { display:none; }
.tblLayout_ProductDetail .wrapDetailImage .unit { margin:0 0 18px; }
.tblLayout_ProductDetail .wrapDetailImage .unit > .title { font-size:12px; letter-spacing:.08em; color:var(--biz-muted); margin:0 0 9px; border:0; background:none; padding:0; }
.tblLayout_ProductDetail .wrapDetailImage .mainImage img { max-width:96px; height:auto; border:1px solid var(--biz-line); }
.tblLayout_ProductDetail .variationImage { display:flex; flex-wrap:wrap; gap:9px; padding:0; margin:0; }
.tblLayout_ProductDetail .variationImage li { float:none; width:62px; height:auto; margin:0; }
.tblLayout_ProductDetail .variationImage a { display:block; border:1px solid var(--biz-line); background:var(--biz-paper); transition:border-color .2s; }
.tblLayout_ProductDetail .variationImage a:hover, .tblLayout_ProductDetail .variationImage a:focus-visible { border-color:var(--biz-green); }
.tblLayout_ProductDetail .variationImage img { display:block; width:100%; height:auto; }
.tblLayout_ProductDetail .productSellInfo { clear:both; padding:24px 26px 28px; background:#f8f8f4; border:0; border-radius:2px; }
.tblLayout_ProductDetail .selectValiation { margin:0 0 18px; }
.tblLayout_ProductDetail .selectValiation:not(:has(select)) { display:none; }
.tblLayout_ProductDetail .selectValiation select { width:100% !important; min-width:0; height:50px; padding:0 36px 0 14px; border:1px solid #bfc9bf; border-radius:2px; color:var(--biz-ink); background:#fff; font-size:15px; }
.tblLayout_ProductDetail .productSellInfo .field-boxes { margin:8px 0; }
.tblLayout_ProductDetail .productSellInfo .field-boxes label { font-size:14px; line-height:1.7; }
.tblLayout_ProductDetail .productSellInfo input[type="checkbox"] { width:18px; height:18px; accent-color:var(--biz-green); vertical-align:middle; margin:0 6px 0 0; }
.tblLayout_ProductDetail .productAmount { margin:18px 0; font-size:14px; color:var(--biz-ink); }
.tblLayout_ProductDetail .productAmount input[type="text"] { width:68px !important; height:44px; margin-left:8px; text-align:center; font-size:16px; border:1px solid #bfc9bf; border-radius:2px; background:#fff; }
.tblLayout_ProductDetail .productCart .addCart .btnCart { margin:0; }
.tblLayout_ProductDetail .productCart .addCart .btnCart:empty { display:none; }
.tblLayout_ProductDetail .productCart .addCart a[id$="lbCartAddFixedPurchase"], .tblLayout_ProductDetail .productCart .addCart a[id$="lbCartAdd"] { display:flex !important; align-items:center; justify-content:center; width:100%; min-height:58px; box-sizing:border-box; padding:13px 18px; border:1px solid var(--biz-green); border-radius:2px; background:var(--biz-green); box-shadow:none; color:#fff; font-size:16px; font-weight:500; letter-spacing:.055em; text-decoration:none; transition:background .2s,border-color .2s; }
.tblLayout_ProductDetail .productCart .addCart a[id$="lbCartAddFixedPurchase"]:hover, .tblLayout_ProductDetail .productCart .addCart a[id$="lbCartAdd"]:hover { background:var(--biz-green-dark); border-color:var(--biz-green-dark); }
.tblLayout_ProductDetail .productCart .cart-view-link { display:flex; align-items:center; justify-content:center; min-height:52px; margin-top:10px; box-sizing:border-box; border:1px solid var(--biz-green); border-radius:2px; background:transparent; color:var(--biz-green); font-size:15px; font-weight:500; text-decoration:none; transition:background .2s; }
.tblLayout_ProductDetail .productCart .cart-view-link:hover { background:#eaf0ea; }
.tblLayout_ProductDetail a:focus-visible, .tblLayout_ProductDetail select:focus-visible, .tblLayout_ProductDetail input:focus-visible { outline:2px solid var(--biz-green); outline-offset:3px; }
.tblLayout_ProductDetail .productCart > .addCart ~ div:not(:has(.cart-view-link)), .tblLayout_ProductDetail .productCart > .addCart ~ p { display:none !important; }
.tblLayout_ProductDetail .productSellInfo .error:empty { display:none; }
.tblLayout_ProductDetail #dvProductDescription { clear:both; margin:72px 0 0; padding:32px 0; border-top:1px solid var(--biz-line); color:var(--biz-ink); font-size:15px; line-height:1.9; }
.tblLayout_ProductDetail #dvProductDescription .title, .tblLayout_ProductDetail #dvCheckList > .title, .tblLayout_ProductDetail #dvProductReviewArea .title { font-family:"Noto Serif JP","Yu Mincho",serif; font-size:23px; font-weight:400; color:var(--biz-ink); letter-spacing:.06em; border:0; background:none; padding:0 0 15px; margin:0 0 22px; border-bottom:1px solid var(--biz-line); }
.tblLayout_ProductDetail #dvProductDescription a { color:var(--biz-green); text-underline-offset:4px; }
.tblLayout_ProductDetail #dvCheckList { margin:30px 0 0; padding:28px 0; border-top:1px solid var(--biz-line); }
@media(max-width:900px) { .tblLayout_ProductDetail { width:calc(100% - 36px) !important; } .tblLayout_ProductDetail #ctl00_ContentPlaceHolder1_upUpdatePanel { column-gap:28px; } }
@media(max-width:700px) { .tblLayout_ProductDetail #ctl00_ContentPlaceHolder1_upUpdatePanel { display:block; } .tblLayout_ProductDetail #detailImage { margin:0 0 28px !important; } }
