/* ===== トップ：縦書きキャッチコピー ===== */
.tate-copy{
  display:flex;
  flex-direction:row-reverse; /* 右の列から並べる */
  justify-content:center;
  align-items:flex-start;
  gap:1.5em;
}
.tate-copy span{
  writing-mode:vertical-rl;   /* 縦書き */
  background:#fff;            /* 列ごとの白帯 */
  padding:.5em .15em;
  font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;
  font-size:clamp(1.4rem,4vw,2.4rem);
  letter-spacing:.1em;
  line-height:1.3;
}
.tate-copy small{ font-size:.7em; }
.top #content{ padding-top:0; }

/* ===== 見出し画像（H2） ===== */
h2.bn-img-h2{
  background:none !important;
  border:none !important;
  padding:0 !important;
  box-shadow:none !important;
  color:inherit !important;
  text-align:center !important;
}
h2.bn-img-h2::before,
h2.bn-img-h2::after{
  content:none !important;
  display:none !important;
}
h2.bn-img-h2 img{
  zoom:0.8;
}

.bn-header-contact{
  display:inline-block;
  text-align:center;
}
.bn-header-hours{
  margin:6px 0 0 24px !important;
  color:#fff;
  font-size:12px;
  line-height:1;
}

/* ===== お問い合わせフォーム ===== */
.wpcf7{
  max-width:720px;
  margin:0 auto !important;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea{
  width:100% !important;
}
.wpcf7-submit{
  background:#c98a2e !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  padding:12px 48px !important;
  letter-spacing:0.1em;
}
/* ===== ヘッダーの電話番号 ===== */
.bn-header-tel{
  display:inline-block;
  margin-left:24px;
  color:#d28200 !important;
  font-size:20px;
  font-weight:900;
  -webkit-text-stroke:0.3px #d28200;
  letter-spacing:0.04em;
  line-height:1;
  text-decoration:none !important;
  white-space:nowrap;
}
.bn-header-tel span{
  font-size:13px;
  margin-right:6px;
}
.bn-header-contact{
  display:inline-block;
  text-align:center;
}
.bn-header-hours{
  margin:6px 0 0 24px !important;
  color:#fff;
  font-size:12px;
  line-height:1;
}
/* ===== 固定ページのタイトル画像 ===== */
.l-topTitleArea{
  height:400px;
  min-height:400px !important;
}
.l-topTitleArea__img{
  object-fit:cover;
}
/* ===== 固定ページ：タイトル画像と本文の隙間をなくす ===== */
.page #content{
  padding-top:0 !important;
}
.page .post_content > :first-child{
  margin-top:0 !important;
}
/* ===== パンくずリストの背景 ===== */
.p-breadcrumb{
  background:#eedfca !important;
}
/* ===== スマホ固定フッターメニュー ===== */
#fix_bottom_menu,
#fix_bottom_menu::before{
  background:#d28200 !important;
  opacity:1 !important;
}
#fix_bottom_menu a,
#fix_bottom_menu span,
#fix_bottom_menu i{
  color:#fff !important;
}
#fix_bottom_menu span{
  font-size:16px !important;
  font-weight:700;
}
/* ===== カテゴリーページ：子カテゴリーのボタン（スマホ） ===== */
@media (max-width: 599px){
  .archive .c-categoryList{
    gap:8px;
  }
  .archive .c-categoryList__link{
    font-size:14px !important;
    padding:6px 12px !important;
  }
}
/* ===== 本文とフッターの隙間をなくす ===== */
.page #content,
.home #content{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
.page .post_content,
.home .post_content{
  margin-bottom:0 !important;
}
.page .post_content > :last-child,
.home .post_content > :last-child{
  margin-bottom:0 !important;
}
/* ===== ステップブロックの縦線 ===== */
.swell-block-step__item::before,
.swell-block-step__item::after,
.swell-block-step__number::before,
.swell-block-step__number::after,
.swell-block-step__body::before{
  border-left-width:3px !important;
}

/* 沿革ステップの点線を太く・ブランドカラーに */
.history-step .swell-block-step__item::before {
  display: block !important;
  border-left-width: 4px !important;
  border-left-style: dotted !important;
  border-left-color: #241815 !important;
  opacity: 1 !important;
}

/* スマホのとき、本文を右にずらして点線とかぶらないように */
@media (max-width: 599px) {
  .history-step .swell-block-step__body {
    padding-left: 46px !important;
  }
}

/* aboutページだけ、スマホのタイトル背景画像を左寄せ */
@media (max-width: 599px) {
  .page-id-89 .l-topTitleArea__img {
    object-position: left center !important;
    background-position: left center !important;
  }
}

/* トップ画像の上のページタイトル文字を見た目だけ非表示 */
.l-topTitleArea .c-pageTitle {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
}
/* お問い合わせフォームの質問ごとの間隔を広げる */
.wpcf7-form p {
  margin-bottom: 2.5em !important;
}

/* 画像見出しの大きさ */
.bn-img-h2 img {
  width: 90% !important;
  max-width: 400px !important;
}

/* スマホのとき、事業内容の丸をカラムいっぱいに */
@media (max-width: 599px) {
  .bn-circle,
  .bn-circle img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* 画像見出しの下の余白を詰める */
.bn-img-h2 {
  margin-bottom: 1em !important;
  padding-bottom: 0 !important;
}

/* 動画下のコピーを Zen Old Mincho に */
.bn-mincho,
.bn-mincho * {
  font-family: "Zen Old Mincho", serif !important;
}

/* スマホのとき、画像を横幅いっぱいに */
@media (max-width: 599px) {
  .bn-sp-wide,
  .bn-sp-wide img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}