/* SHEVAN child custom (base/desktop). 自動分割 by split-css.js. 編集は本ファイルで。 */
/* =====================================================================
   SHEVAN custom CSS（ステージング rikyu_tcd104 parent から child へ移植）
   正本: wp/wp-content/themes/rikyu_tcd104/style.css の 5345行目以降
   注意: 下部に page-id-17/1435/1466/1467 等のステージング固有ID依存ルールと
         /shevan/... の絶対パスを含む（本番では一致しないため要・後日整合）。
   ===================================================================== */

/* === SHEVAN Lab article list (page-id-17) - match production === */
.page-id-17 .wp-block-query{margin-top:48px;}
.page-id-17 .wp-block-post-template{list-style:none !important;margin:0;padding:0;display:flex;flex-wrap:wrap;}
.page-id-17 .wp-block-post-template>li{list-style:none !important;width:33.3333%;padding:0 15px;margin:0 0 32px;box-sizing:border-box;}
.page-id-17 .wp-block-post-template>li::marker{content:"";}
.page-id-17 .wp-block-post-featured-image{margin:0;}
.page-id-17 .wp-block-post-featured-image a,.page-id-17 .wp-block-post-featured-image img{display:block;width:100%;}
.page-id-17 .wp-block-post-featured-image img{height:236px;object-fit:cover;border-radius:4px;}
.page-id-17 .wp-block-post-terms{margin:12px 0 0;font-size:12.8px;line-height:1.2;color:#de5454;}
.page-id-17 .wp-block-post-terms a{color:#de5454;text-decoration:none;}
.page-id-17 .wp-block-post-title{margin:4px 0 8px;font-size:16px;font-weight:700;line-height:1.4;color:#333;}
.page-id-17 .wp-block-post-title a{color:#333;text-decoration:none;}
.page-id-17 .wp-block-post-excerpt{margin:0;}
.page-id-17 .wp-block-post-excerpt p,.page-id-17 .wp-block-post-excerpt__excerpt{font-size:14px;line-height:1.5;color:#333;margin:0 0 16px;}
.page-id-17 .wp-block-post-excerpt__more-link{display:block;text-align:center;padding:10px;border:1px solid #de5454;color:#de5454;text-decoration:none;font-size:16px;transition:.3s;}
.page-id-17 .wp-block-post-excerpt__more-link:hover{background:#de5454;color:#fff;}
.page-id-17 .wp-block-query-pagination{justify-content:center;gap:12px;margin-top:32px;}
.page-id-17 .wp-block-query-pagination .page-numbers{color:#333;text-decoration:none;}
.page-id-17 .wp-block-query-pagination .page-numbers.current{color:#de5454;font-weight:700;}
.page-id-17 .wp-block-query-pagination a:hover{color:#de5454;}

.page-id-17 .wp-block-post-excerpt a.wp-block-post-excerpt__more-link,.page-id-17 .wp-block-post-excerpt__more-link{color:#de5454 !important;}
.page-id-17 .wp-block-post-excerpt__more-link:hover{color:#fff !important;background:#de5454 !important;}

.page-id-17 .wp-block-post-excerpt a.wp-block-post-excerpt__more-link:hover{color:#fff !important;background:#de5454 !important;}

/* === SHEVAN Lab list - fixes round 2 (hover/card-height/pagination) === */
.page-id-17 .wp-block-post-excerpt a.wp-block-post-excerpt__more-link:hover{color:#fff !important;background:#de5454 !important;text-decoration:none !important;}
.page-id-17 .wp-block-post-template{align-items:stretch;}
.page-id-17 .wp-block-post-template > li{display:flex;flex-direction:column;}
.page-id-17 .wp-block-post-template > li .wp-block-post-featured-image{margin:0 0 12px;}
.page-id-17 .wp-block-post-template > li .wp-block-post-terms{margin:0 0 4px;}
.page-id-17 .wp-block-post-template > li .wp-block-post-title{margin:0 0 8px;min-height:2.8em;}
.page-id-17 .wp-block-post-template > li .wp-block-post-excerpt{display:flex;flex-direction:column;flex:1 1 auto;margin:0;}
.page-id-17 .wp-block-post-template > li .wp-block-post-excerpt > p,.page-id-17 .wp-block-post-template > li .wp-block-post-excerpt__excerpt{margin:0 0 16px;}
.page-id-17 .wp-block-post-template > li .wp-block-post-excerpt__more-link{margin-top:auto;}
.page-id-17 .wp-block-query-pagination{justify-content:center;align-items:center;gap:6px;margin-top:36px;}
.page-id-17 .wp-block-query-pagination-numbers{display:inline-flex;gap:6px;}
.page-id-17 .wp-block-query-pagination .page-numbers,.page-id-17 .wp-block-query-pagination-previous,.page-id-17 .wp-block-query-pagination-next{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 6px;box-sizing:border-box;border:1px solid #de5454;border-radius:2px;background:#fff;color:#de5454;text-decoration:none;font-size:14px;line-height:1;font-weight:400;}
.page-id-17 .wp-block-query-pagination .page-numbers.current{background:#de5454;color:#fff;border-color:#de5454;font-weight:700;}
.page-id-17 .wp-block-query-pagination .page-numbers:hover,.page-id-17 .wp-block-query-pagination-previous:hover,.page-id-17 .wp-block-query-pagination-next:hover{background:#de5454;color:#fff;}
.page-id-17 .wp-block-query-pagination .page-numbers.dots{border:none;background:transparent;min-width:auto;}

/* pagination link hover white (Lab) */
.page-id-17 .wp-block-query-pagination a:hover{color:#fff !important;}

/* Lab pillar number icons (FontAwesome) */
.page-id-1064 .lab-num.fa-stack{font-size:0.6em;width:2em;height:2em;line-height:2em;vertical-align:middle;margin-right:6px;}
.page-id-1064 .lab-num .fa-circle{color:#de5454;}
.page-id-1064 .lab-num .fa-inverse{color:#fff;}


/* Lab/Tech pillar heading: PC line-break + indent, SP inline */
.page-id-1064 .lab-desc{display:block;padding-left:1.9em;margin-top:3px;}


/* === Unify 6 pillar headings (TECH + Lab): 16px, left-aligned === */
.page-id-1064 td:has(.lab-desc){text-align:left !important;}
.page-id-1064 b:has(.lab-desc){font-size:16px;font-weight:700;line-height:1.7;}

/* === TECH heading cells: match Lab height === */
.page-id-1064 .table_no_border thead tr,
.page-id-1064 .table_no_border thead td{height:auto !important;}
.page-id-1064 .table_no_border thead h5{font-size:16px;line-height:1.7;margin:0;padding:0;}

/* === Recommended (osusume) badge: red, top-left, simple === */
.p-archive03-item-product-badge.p-product-badge{top:0 !important;left:0 !important;}
.p-archive03-item-product-badge.p-product-badge .featured{display:inline-block !important;width:auto !important;height:auto !important;line-height:1.5 !important;padding:5px 12px !important;border-radius:0 0 3px 0 !important;background:#de5454 !important;color:#fff !important;font-size:12px !important;font-weight:600 !important;letter-spacing:0.06em !important;}


/* === Header logo: white background === */
.l-header__logo{background:#fff !important;}

/* === Konna-nayami blocks: heading overlaid on image (white band) === */
.page-id-1064 h6:has(img){position:relative;display:block;margin:0;}
.page-id-1064 h6:has(img) img{display:block;width:100%;height:auto;margin:0;}
.page-id-1064 h6:has(img) strong{position:absolute;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9);color:#1a1a1a;font-weight:600;font-size:15px;line-height:1.4;padding:8px 6px;text-align:center;}

/* === Konna-nayami blocks: halve gap (Header logo white) === */
.page-id-1064 table:has(h6 img),.page-id-1064 table:has(h6 img) tr,.page-id-1064 table:has(h6 img) td{height:auto !important;}
.page-id-1064 table:has(h6 img){table-layout:fixed !important;width:100% !important;}
.page-id-1064 table:has(h6 img) td{padding:10px 17px !important;vertical-align:top !important;line-height:0 !important;width:33.333% !important;}

/* === SHEVAN: TOP(home)「こんな悩み」も custom_h6 をカード化 ===
   原因: 上記 custom_h6 ルールが .page-id-1064 限定で、同じ custom_h6 を使う
   TOP(home/ page-id-935)の悩みセクションに未適用だった（staging は全体適用）。
   home の custom_h6 に限定して複製（.page-id-1064 ルールは無改変）。 */
.home h6:has(img){position:relative;display:block;margin:0;}
.home h6:has(img) img{display:block;width:100%;height:auto;margin:0;}
.home h6:has(img) strong{position:absolute;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9);color:#1a1a1a;font-weight:600;font-size:15px;line-height:1.4;padding:8px 6px;text-align:center;}
.home table:has(h6 img),.home table:has(h6 img) tr,.home table:has(h6 img) td{height:auto !important;}
.home table:has(h6 img){table-layout:fixed !important;width:100% !important;}
.home table:has(h6 img) td{padding:10px 17px !important;vertical-align:top !important;line-height:0 !important;width:33.333% !important;}


/* === Number circles unified: TECH/LAB (counter) + perf (.rnum) === */
.page-id-1064 tr:has(.lab-desc){counter-reset:labnum;}
.page-id-1064 td:has(.lab-desc){counter-increment:labnum;}
.page-id-1064 td:has(.lab-desc) b::before,
.page-id-1064 .rnum{display:inline-block;width:20px;height:20px;line-height:20px;background:#de5454;color:#fff;border-radius:50%;text-align:center;font-size:12px;font-weight:700;margin-right:8px;vertical-align:middle;}
.page-id-1064 td:has(.lab-desc) b::before{content:counter(labnum);}

/* perf table: remove border */
.page-id-1064 table:has(.rnum),.page-id-1064 table:has(.rnum) td{border:none !important;}

/* footer band black */
.l-footer__bottom{background:#000 !important;}

/* hide stray FA stack icons (wrapper stripped) - keep counter circle */
.page-id-1064 td:has(.lab-desc) b > i{display:none !important;}


/* === perf feature section: refined layout (image + 3 items) === */
.page-id-1064 table:has(.rnum) td{vertical-align:middle !important;border:none !important;padding:0 !important;}
.page-id-1064 table:has(.rnum) td:first-child{width:50% !important;padding-right:40px !important;}
.page-id-1064 table:has(.rnum) td:first-child img{width:100% !important;max-width:460px !important;height:auto !important;display:block;margin-left:auto !important;}
.page-id-1064 table:has(.rnum) td:last-child{width:50% !important;}
.page-id-1064 table:has(.rnum) td:last-child strong{font-size:18px !important;}
.page-id-1064 table:has(.rnum) td:last-child div:has(> strong){margin-bottom:22px !important;line-height:1.8 !important;}
.page-id-1064 table:has(.rnum) td:last-child div:has(> strong) > span{color:#555 !important;}


/* === Lab page (page-id-17) header: full-width black band + logo === */
.page-id-17 .p-page-header--text{background:#000 !important;padding:64px 20px !important;}
.page-id-17 .p-page-header--text .p-cb__header-title{height:120px;margin:0 auto !important;font-size:0 !important;line-height:0 !important;background:url(/shevan/wp-content/uploads/2026/05/SHEVAN-Lab_logo.png) center center/contain no-repeat !important;}


/* === Lab page: full-width "ondo ga jishin" section (img 1316) === */
.page-id-17 .wp-block-group.has-black-background-color:has(img.wp-image-1316){width:auto !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;padding:40px !important;box-sizing:border-box !important;}
/* Lab section full-width (ondo) marker */


/* === Lab chart12 full-width band (img 1317) === */
.page-id-17 figure.wp-block-image:has(img.wp-image-1317){width:auto !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;background:#000 !important;padding:24px !important;box-sizing:border-box !important;}
.page-id-17 figure.wp-block-image:has(img.wp-image-1317) img{display:block !important;margin:0 auto !important;max-width:100% !important;height:auto !important;}


/* === Custom page templates: full-width / full-width with sidebar === */
.shevan-fw{width:100%;}
.shevan-fw__body{max-width:1200px;margin:0 auto;padding:56px 24px;}
.shevan-fw__body .alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.shevan-fw__body .alignwide{max-width:1320px;}
.shevan-fw--sidebar .shevan-fw__inner{max-width:1320px;margin:0 auto;padding:56px 24px;display:flex;gap:48px;align-items:flex-start;}
.shevan-fw__main{flex:1 1 auto;min-width:0;}
.shevan-fw__sidebar{flex:0 0 340px;}


/* === full-wide image+sidebar fix === */
.shevan-fw__body .alignfull img,.shevan-fw__body .alignwide img{display:block;width:100%;height:auto;}
.shevan-fw__sidebar .l-sidebar{width:100%;float:none;margin:0;}
.shevan-fw__sidebar .l-sidebar__inner{width:100%;}


/* === full-wide title + sample elements === */
.shevan-fw__title{font-size:30px;font-weight:700;line-height:1.5;margin:0 0 28px;}
.shevan-fw__body .shevan-fw__title{text-align:center;}
.shevan-fw .sample-lead{font-size:18px;line-height:1.9;color:#333;margin:0 0 32px;}
.shevan-fw .sample-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 36px;line-height:1.2;background:#de5454;color:#fff;border-radius:2px;text-decoration:none;font-weight:600;}
.shevan-fw .sample-cols{display:flex;gap:32px;flex-wrap:wrap;margin:24px 0;}
.shevan-fw .sample-cols > div{flex:1 1 0;min-width:220px;}
.shevan-fw .sample-hr{border:none;border-top:1px solid #ddd;margin:40px 0;}
.shevan-fw__main .alignfull img,.shevan-fw__main .alignwide img,.shevan-fw__main figure img{max-width:100%;height:auto;}


/* shevan-fw--sidebar full-width breakout (wider than default ~1100) */
.shevan-fw--sidebar{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.shevan-fw--sidebar .shevan-fw__inner{max-width:1320px;}


/* === full-wide pages: header to title gap (theme l-inner adds 120px) === */
.l-container__inner:has(.shevan-fw){padding-top:16px !important;}


/* ============================================================
   フルワイド（サイドバー）右寄せ比較サンプル A / B（2026-04 追加）
   既存 /full-wide-sidebar/(page-id-1435) は対象外。page-id でのみ分岐。
   A: page-id-1466  B: page-id-1467
   ============================================================ */
/* A案：本文(884px)・本文位置は /full-wide-sidebar/ と同じ。サイドバーだけ右端へ */
/* inner は基底の max-width:1320px 中央寄せのまま → 本文は基準ページと同一。サイドバーのみ右の余白分(50vw-660px)だけ平行移動 */
/* === A案調整版（採用）: 本文は画面中央寄せ・サイドバーは右寄せ（1466/1435共通） === */
.page-id-1466 .shevan-fw--sidebar .shevan-fw__inner,
.page-id-1435 .shevan-fw--sidebar .shevan-fw__inner{
  max-width:none;
  margin-left:0;
  margin-right:0;
}
.page-id-1466 .shevan-fw__main,
.page-id-1435 .shevan-fw__main{
  flex:0 1 884px;
  min-width:0;
  margin-left:clamp(0px, calc(50vw - 466px), calc(100vw - 1320px));
  margin-right:auto;
}
.page-id-1466 .shevan-fw__sidebar,
.page-id-1435 .shevan-fw__sidebar{
  transform:none;
}
/* B案：本文の左位置は A案/基準と同じ(left304)のまま、右だけ画面端まで拡張。本文はA案より広く、サイドバー(340px)は右端 */
.page-id-1467 .shevan-fw--sidebar .shevan-fw__inner { max-width: none; margin-left: max(24px, calc(50vw - 660px)); margin-right: 0; }


/* /lab/(17) ヒーロー：見出し非表示・画像のみ・上下余白除去（2026-04） */
.page-id-17 .shevan-fw__title{display:none !important;}

/* /lab/(17) ヒーローを実画像表示（Cover→Image, 2026-04）。上下余白なし・自然な明るさ */
.page-id-17 .shevan-fw__main .lab-hero-img{margin:0 !important;}
.page-id-17 .shevan-fw__main .lab-hero-img img{display:block;width:100%;height:auto;}

/* === サイズの目安リンク＋モーダル（商品ページ, 2026-04 追加） === */
.shevan-size-guide{ margin:10px 0 7px; text-align:center; }
.shevan-size-guide__link{ font-size:13px; color:#1a1a1a; text-decoration:none; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
.shevan-size-guide__link:hover{ color:#1a1a1a; text-decoration:none; opacity:.7; }
.shevan-size-guide__icon{ width:16px; height:16px; flex:none; }
.shevan-size-modal{ display:none; position:fixed; inset:0; z-index:99999; }
.shevan-size-modal.is-open{ display:block; }
.shevan-size-modal__overlay{ position:absolute; inset:0; background:rgba(0,0,0,.55); }
.shevan-size-modal__box{ position:relative; z-index:1; background:#fff; max-width:560px; width:calc(100% - 32px); max-height:85vh; overflow:auto; margin:7vh auto 0; padding:28px 24px 24px; border-radius:4px; box-shadow:0 10px 40px rgba(0,0,0,.3); box-sizing:border-box; }
.shevan-size-modal__close{ position:absolute; top:6px; right:12px; border:none; background:none; font-size:26px; line-height:1; cursor:pointer; color:#333; padding:4px; }
.shevan-size-modal__close:hover{ color:#000; }
.shevan-size-modal__content{ font-size:13px; line-height:1.7; color:#333; }
.shevan-size-modal__content > *:first-child{ margin-top:0; }
.shevan-size-modal__content h1,.shevan-size-modal__content h2{ font-size:18px; margin:0 0 12px; }
.shevan-size-modal__content table{ width:100%; border-collapse:collapse; font-size:11px; margin:8px 0; }
.shevan-size-modal__content th,.shevan-size-modal__content td{ border:1px solid #ddd; padding:5px 4px; text-align:center; white-space:nowrap; }

/* サイズモーダル 表フィット調整（全列を収める, 2026-04） */
.shevan-size-modal__box{ max-width:640px; }
.shevan-size-modal__content table{ table-layout:fixed; }
.shevan-size-modal__content th,.shevan-size-modal__content td{ white-space:nowrap; word-break:keep-all; overflow:hidden; }
.shevan-size-modal__content tr > :first-child{ white-space:normal; width:88px; font-size:10px; text-align:left; }

/* サイズモーダル 表フィット強制（inline幅を上書き, 2026-04） */
.shevan-size-modal__content .s_table{ width:100% !important; overflow:visible !important; }
.shevan-size-modal__content table{ width:100% !important; height:auto !important; table-layout:fixed !important; }
.shevan-size-modal__content table col{ width:auto !important; }
.shevan-size-modal__content table td,.shevan-size-modal__content table th{ width:auto !important; height:auto !important; overflow:visible !important; white-space:nowrap; font-size:11px; padding:5px 2px; }
.shevan-size-modal__content table tr > :first-child{ width:84px !important; white-space:normal; word-break:break-all; font-size:10px; text-align:left; }

/* 変動商品の「クリア」リンクを非表示（2026-04） */
.single-product .reset_variations{ display:none !important; }

/* === SHEVAN: header logo size up === */
.l-header__logo img{height:42px !important;width:auto !important;max-height:none !important;}

/* === SHEVAN: footer top banners (online-shop / Amazon) === */
.shevan-fbnr{width:100%;background:#fff;}
.shevan-fbnr__inner{max-width:1100px;margin:0 auto;padding:28px 24px;display:flex;justify-content:flex-end;align-items:center;gap:20px;flex-wrap:wrap;}
.shevan-fbnr__item{display:inline-flex;line-height:0;}
.l-footer .shevan-fbnr__item img{height:56px;width:auto;max-width:none;display:block;}

/* === SHEVAN: footer column-title links clickable === */
.l-footer--type1 .l-footer__nav-list > ul > li:first-of-type{pointer-events:auto !important;}
.l-footer--type1 .l-footer__nav-list > ul > li:first-of-type > a{pointer-events:auto !important;cursor:pointer;}

/* === SHEVAN: banner inside footer nav white area, bottom-right === */
.l-footer__nav-inner{position:relative;}
.l-footer__nav-inner .shevan-fbnr{position:absolute;right:0;bottom:-46px;width:auto;background:transparent;margin:0;}
.l-footer__nav-inner .shevan-fbnr__inner{max-width:none;margin:0;padding:0;gap:14px;justify-content:flex-end;align-items:flex-end;}
.l-footer__ad-code .shevan-fbnr{position:static;width:100%;background:transparent;margin:18px 0 0;}
.l-footer__ad-code .shevan-fbnr__inner{max-width:none;margin:0;padding:0 16px;gap:14px;justify-content:center;align-items:center;}

/* === 商品一覧 カテゴリー別ブロック表示（2026-04 追加） === */
/* グリッド列：除去したTCDソートUIの data-layout=large 相当をコンテナに付与 */
.shevan-grouped-archive{ --tcd-product-loop-item-column: var(--tcd-product-loop-item-column-large); }

.shevan-grouped-archive .shevan-grouped-ordering{ text-align:right; margin:0 0 24px; }
.shevan-grouped-archive .shevan-grouped-ordering select.orderby{ max-width:100%; padding:8px 12px; border:1px solid #d5d5d5; border-radius:4px; background:#fff; font-size:13px; }
.shevan-grouped-archive .shevan-cat-block{ margin:0 0 48px; }
.shevan-grouped-archive .shevan-cat-block__title{ font-size:22px; font-weight:700; line-height:1.4; margin:0 0 18px; padding-bottom:10px; border-bottom:1px solid #e2e2e2; }

/* === ロゴサイズ（実寸 275x60 を上限に最大表示, 2026-06 改） === */
.l-header__top{ height:auto; min-height:76px; }
.l-header__logo, .l-header__logo-image, .l-header__logo .c-logo{ height:auto; }
.l-header .l-header__logo .c-logo .c-logo__image-pc{ width:auto !important; height:60px !important; max-height:60px !important; max-width:100% !important; }

/* === ヒーロー右下バナー（Summer CP, 2026-06） === */
.p-fp-slider .shevan-hero-banner{ position:absolute; right:24px; bottom:24px; z-index:10; display:block; width:260px; max-width:34%; line-height:0; }
.p-fp-slider .shevan-hero-banner img{ width:100%; height:auto; display:block; border-radius:4px; box-shadow:0 6px 20px rgba(0,0,0,.28); }

/* === SHEVAN: 「清潔は、男の自信になる。」バナーの上下余白・SP見切れ対策（2026-06） ===
   SP で __content(固定高240px) に内容(253px)が収まらずタイトルが見切れる。
   背景レイヤ .p-cb--banner__image-bg[style*="lab_list15"] で当該バナーを一意特定。
   SP限定で content の高さを確保（bg高312px以内）。下方向の余白も追加して次セクションと詰まらないように。
   ※PCは元々余裕があるため content高は変更せず、下余白のみ付与。.home限定・他バナー不変。 */
.home .p-cb--banner:has(.p-cb--banner__image-bg[style*="lab_list15"]){ margin-bottom:80px !important; }
