/* =========================================================
   BRUMMELL 専門ページ共通スタイル（SEO/AIO用の下層ページ）
   トップLPの世界観（紺×金×明朝）に合わせたテキスト主体デザイン
   ========================================================= */
:root{
  --navy:#0f163a;
  --navy-2:#0b1a40;
  --navy-card:#141f47;
  --gold:#c3a66d;
  --line:rgba(195,166,109,.35);
  --text:#f3f1ea;
  --text-dim:#c9cede;
  --green:#1f9d55;
}
*{box-sizing:border-box;}
body.page{
  margin:0;
  background:var(--navy);
  color:var(--text);
  font-family:"Shippori Mincho","Noto Serif JP",serif;
  line-height:1.9;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}
.page img{max-width:100%;height:auto;display:block;}
.page a{color:inherit;}
.serif{font-family:"Shippori Mincho","Noto Serif JP",serif;}

/* ---- ヘッダー ---- */
.page-header{
  display:flex;align-items:center;justify-content:space-between;
  max-width:1000px;margin:0 auto;padding:20px 5%;
}
.page-logo{
  font-family:"Shippori Mincho","Noto Serif JP",serif;
  font-size:22px;letter-spacing:.18em;color:#fff;text-decoration:none;
}
.page-header .header-cta{
  font-size:13px;border:1px solid var(--gold);color:var(--gold);
  padding:8px 16px;border-radius:2px;text-decoration:none;white-space:nowrap;
}
.page-header .header-cta:hover{background:var(--gold);color:var(--navy);}

/* ---- パンくず ---- */
.breadcrumb{max-width:1000px;margin:0 auto;padding:6px 5% 0;font-size:12px;color:var(--text-dim);}
.breadcrumb a{color:var(--text-dim);text-decoration:none;}
.breadcrumb a:hover{color:var(--gold);}

/* ---- ヒーロー ---- */
.page-hero{max-width:1000px;margin:0 auto;padding:40px 5% 20px;}
.page-hero .eyebrow{color:var(--gold);letter-spacing:.2em;font-size:13px;margin:0 0 14px;}
.page-hero h1{
  font-family:"Shippori Mincho","Noto Serif JP",serif;
  font-size:clamp(26px,4.4vw,40px);line-height:1.4;color:#fff;margin:0 0 20px;font-weight:600;
}
.page-hero .lead{color:var(--text-dim);max-width:760px;margin:0;}

/* ---- 本文セクション ---- */
.section{max-width:1000px;margin:0 auto;padding:38px 5%;}
.section h2{
  font-family:"Shippori Mincho","Noto Serif JP",serif;
  font-size:clamp(20px,3vw,26px);color:#fff;font-weight:600;
  margin:0 0 22px;padding-left:16px;border-left:3px solid var(--gold);line-height:1.4;
}
.section h3{font-size:17px;color:var(--gold);margin:26px 0 8px;font-weight:600;}
.section p{color:var(--text-dim);margin:0 0 16px;}
.section p strong{color:#fff;}

/* エリア/料金テーブル */
.info-table{width:100%;border-collapse:collapse;margin:6px 0 8px;}
.info-table th,.info-table td{
  text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;font-size:15px;
}
.info-table th{color:#fff;white-space:nowrap;width:40%;font-weight:600;}
.info-table td{color:var(--text-dim);}
.note{font-size:13px;color:var(--text-dim);opacity:.85;}

/* 流れ（ステップ） */
.steps{list-style:none;margin:0;padding:0;counter-reset:step;}
.steps li{
  position:relative;padding:0 0 26px 56px;margin:0;border-left:1px solid var(--line);margin-left:18px;
}
.steps li:last-child{border-left:1px solid transparent;padding-bottom:0;}
.steps li::before{
  counter-increment:step;content:counter(step);
  position:absolute;left:-18px;top:-4px;width:36px;height:36px;
  display:flex;align-items:center;justify-content:center;
  font-family:"Shippori Mincho",serif;color:var(--navy);background:var(--gold);border-radius:50%;font-size:16px;
}
.steps li h3{margin:0 0 4px;color:#fff;}
.steps li p{margin:0;font-size:14px;}

/* タグ（できること） */
.tags{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0;padding:0;list-style:none;}
.tags li{border:1px solid var(--line);border-radius:2px;padding:8px 14px;font-size:14px;color:var(--text);}

/* FAQ */
.faq-list{margin:0;padding:0;}
.faq-list dt{font-family:"Shippori Mincho","Noto Serif JP",serif;color:#fff;font-size:17px;margin:22px 0 8px;padding-left:26px;position:relative;}
.faq-list dt::before{content:"Q";position:absolute;left:0;top:0;color:var(--gold);font-weight:600;}
.faq-list dd{margin:0 0 0 26px;color:var(--text-dim);}

/* CTA */
.cta-band{background:var(--navy-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:44px 5%;margin-top:20px;}
.cta-band p{color:var(--text-dim);margin:0 0 18px;}
/* LPと同一の画像ボタンを使用 */
.cta-band .reservation-btn-link{display:inline-block;width:82%;max-width:440px;}
.cta-band .reservation-btn-link img{width:100%;height:auto;}
.cta-band .reservation-btn-link:hover{opacity:.85;}

/* 制作事例カード */
.works-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:8px;}
.work-card{border:1px solid var(--line);border-radius:4px;overflow:hidden;text-decoration:none;color:inherit;background:var(--navy-card);display:block;transition:opacity .2s;}
.work-card:hover{opacity:.85;}
.work-card .thumb{aspect-ratio:4/3;background:#0a1633 center/cover no-repeat;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:13px;}
.work-card .body{padding:16px 18px;}
.work-card .tag{display:inline-block;font-size:12px;color:var(--gold);border:1px solid var(--line);border-radius:2px;padding:3px 10px;margin-bottom:10px;}
.work-card h3{font-family:"Shippori Mincho","Noto Serif JP",serif;font-size:17px;color:#fff;margin:0 0 8px;line-height:1.5;}
.work-card p{font-size:13px;color:var(--text-dim);margin:0;}
.sample-flag{background:rgba(195,166,109,.12);border:1px dashed var(--gold);border-radius:4px;padding:14px 18px;margin:0 0 26px;font-size:13px;color:var(--text-dim);}
.sample-flag strong{color:var(--gold);}

/* 記事本文 */
.article dt{color:var(--gold);font-size:14px;margin:22px 0 4px;font-weight:600;}
.article dd{margin:0;color:var(--text-dim);}

/* フッター */
.page-footer{max-width:1000px;margin:0 auto;padding:30px 5% 60px;font-size:13px;color:var(--text-dim);}
.page-footer nav a{color:var(--text-dim);text-decoration:none;margin-right:18px;}
.page-footer nav a:hover{color:var(--gold);}
.page-footer .copy{margin-top:18px;opacity:.7;}

@media(max-width:768px){
  body.page{font-size:15px;}
  .info-table th{width:auto;white-space:normal;}
  .info-table th,.info-table td{display:block;border-bottom:none;padding:6px 0;}
  .info-table tr{display:block;border-bottom:1px solid var(--line);padding:10px 0;}
}
