@charset "UTF-8";
/* =============================================
   Before/After 症例セクション（2026-09 新設）
   570px設計 → #ba-wrap 内で transform スケール（FVと同方式）
   症例の追加・編集は index.html 側の .ba-case をコピーして
   画像2枚とテキスト5箇所を書き換えるだけ
================================================*/
#ba-wrap{width:100%;max-width:570px;margin:0 auto;overflow:hidden;background:#0c101a;
  --ba-gold:#c9a545;
  --ba-gold-grad:linear-gradient(95deg,#c9a545 0%,#eeda9e 42%,#d6b466 72%,#b8944a 100%);
  --ba-gold-grad2:linear-gradient(115deg,#a5843a 0%,#d9bc72 45%,#b3903f 100%);
  --ba-minchoB:"Shippori Mincho B1","Hiragino Mincho ProN","ヒラギノ明朝 Pro W3",serif;
  --ba-sans:"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;}
#ba-stage{width:570px;transform-origin:top left;}

.ba-sec{background:#0c101a;padding:54px 0 40px;position:relative;overflow:hidden;}
.ba-sec .dots{position:absolute;z-index:1;opacity:.18;pointer-events:none;
  background-image:radial-gradient(rgba(201,165,69,.55) 1px,transparent 1.2px);
  background-size:13px 13px;}
.ba-sec .dots.d1{right:12px;top:30px;width:90px;height:150px;}
.ba-sec .dots.d2{left:10px;bottom:60px;width:70px;height:170px;}

.ba-head{text-align:center;position:relative;z-index:2;margin-bottom:40px;}
.ba-head .en{font-family:Cinzel,var(--ba-minchoB),serif;font-size:15px;letter-spacing:.34em;color:#9c7b3c;display:block;margin-bottom:10px;}
.ba-head h2{font-family:var(--ba-minchoB);font-weight:600;font-size:40px;letter-spacing:.14em;color:#f4f2ec;line-height:1.5;margin:0;padding:0;background:none;}
.ba-head h2 .g{background:var(--ba-gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ba-head .rule{height:2px;background:linear-gradient(90deg,transparent,rgba(201,165,69,.85) 25%,rgba(238,218,158,.95) 50%,rgba(201,165,69,.85) 75%,transparent);margin:16px 200px 0;}

.ba-case{position:relative;z-index:2;margin:0 22px 46px;}
.ba-case:last-of-type{margin-bottom:8px;}
.ba-title{text-align:center;font-family:var(--ba-minchoB);font-weight:600;font-size:30px;letter-spacing:.3em;text-indent:.3em;
  background:var(--ba-gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  margin:0 0 6px;padding:0;}
.ba-title-rule{height:2px;background:linear-gradient(90deg,transparent,rgba(201,165,69,.85) 25%,rgba(238,218,158,.95) 50%,rgba(201,165,69,.85) 75%,transparent);margin:0 30px 18px;}

.ba-frame{background:var(--ba-gold-grad2);padding:2px;box-shadow:0 8px 26px rgba(0,0,0,.45);}
.ba-frame-in{background:#10141f;}
.ba-labels{display:flex;position:relative;height:44px;}
.ba-labels .bf{flex:1;background:#15181f;display:flex;align-items:center;justify-content:center;}
.ba-labels .af{flex:1;background:var(--ba-gold-grad2);display:flex;align-items:center;justify-content:center;
  clip-path:polygon(9% 0,100% 0,100% 100%,0 100%);margin-left:-18px;padding-left:18px;}
.ba-labels span{font-family:Arial,var(--ba-sans);font-weight:800;font-size:19px;letter-spacing:.22em;text-indent:.22em;color:#fff;}

.ba-photos{display:flex;position:relative;gap:22px;background:#10141f;}
.ba-photos .ph{flex:1;aspect-ratio:1/0.96;overflow:hidden;}
.ba-photos .ph img{width:100%;height:100%;object-fit:cover;display:block;}
.ba-photos .arw{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;
  width:38px;height:56px;pointer-events:none;background:var(--ba-gold-grad);
  clip-path:polygon(0 0,28% 0,100% 50%,28% 100%,0 100%,62% 50%);
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.55));}

.ba-info{display:flex;gap:10px;padding:16px 12px 14px;background:#10141f;}
.ba-info .item{flex:1;text-align:center;min-width:0;}
.ba-info .label{display:block;font-family:var(--ba-minchoB);font-weight:600;font-size:12.5px;letter-spacing:.12em;color:#2a2313;
  background:var(--ba-gold-grad2);transform:skewX(-14deg);padding:5px 0;margin:0 3px 9px;}
.ba-info .label i{font-style:normal;display:inline-block;transform:skewX(14deg);}
.ba-info .value{font-family:var(--ba-minchoB);font-weight:600;font-size:20px;letter-spacing:.06em;color:#f4f2ec;white-space:nowrap;}
.ba-info .value small{font-size:13px;}

.ba-note{display:flex;align-items:center;justify-content:center;gap:12px;padding:2px 10px 16px;background:#10141f;}
.ba-note .line{flex:1;max-width:96px;height:1.5px;position:relative;background:linear-gradient(90deg,transparent,rgba(201,165,69,.9));}
.ba-note .line.r{background:linear-gradient(90deg,rgba(201,165,69,.9),transparent);}
.ba-note .line.l::after{content:"";position:absolute;right:-1px;top:50%;transform:translateY(-50%);
  border-left:7px solid rgba(201,165,69,.95);border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;}
.ba-note .line.r::before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);
  border-right:7px solid rgba(201,165,69,.95);border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;}
.ba-note p{font-family:var(--ba-minchoB);font-size:13px;letter-spacing:.08em;color:#d8d4c8;margin:0;}

/* --- スライダー化（2026-09-02: 元caseスライダー構成に合わせ横スライドに） --- */
.ba-slider .ba-case{width:500px;margin:0 10px;}
.ba-slider .slick-slide{outline:none;}
.ba-sec .slick-dots{position:static;list-style:none;display:block;text-align:center;margin:22px 0 0;padding:0;width:100%;}
.ba-sec .slick-dots li{width:11px;height:11px;margin:0 7px;padding:0;display:inline-block;position:relative;cursor:pointer;}
.ba-sec .slick-dots li button{background:rgba(201,165,69,.28);border:none;border-radius:50%;display:block;width:100%;height:100%;
  font-size:0;line-height:0;color:transparent;padding:0;outline:none;cursor:pointer;}
.ba-sec .slick-dots li.slick-active button{background:linear-gradient(115deg,#c9a545,#eeda9e);}
.ba-sec .slick-slider{margin-top:0;}
