/* Studio 依存を外したあとの補い。Studio の書き出し CSS より後に読む */

/* ヒラギノ（Studio 上では TypeSquare 配信）を端末内蔵のヒラギノに置き換える。
   Apple 端末は同じ書体、それ以外は游ゴシック等へ落ちる */
@font-face {
  font-family: 'BH Hiragino W5';
  src: local('HiraginoSans-W5'), local('Hiragino Sans W5'), local('ヒラギノ角ゴシック W5');
  font-weight: 1 1000;
  font-display: swap;
}
@font-face {
  font-family: 'BH Hiragino W6';
  src: local('HiraginoSans-W6'), local('Hiragino Sans W6'), local('HiraKakuProN-W6'), local('ヒラギノ角ゴシック W6');
  font-weight: 1 1000;
  font-display: swap;
}
:root {
  --bh-jp-fallback: 'Yu Gothic Medium', 'YuGothic', 'Yu Gothic', 'Noto Sans JP', 'Noto Sans CJK JP', Meiryo, sans-serif;
}

html { scroll-behavior: smooth; }

/* サービスカードのホバーで流れるテロップ（Studio のスライダーの代わり） */
@keyframes bh-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}
[data-bh-marquee] { animation: bh-marquee 9999ms linear infinite; }
@media (prefers-reduced-motion: reduce) {
  [data-bh-marquee] { animation: none; }
}

/* お問い合わせフォームの送信状態 */
form[name=form1][aria-busy=true] button { opacity: .5; pointer-events: none; }
.bh-form-message:empty { display: none; }
.bh-form-message { margin-top: 16px; font-size: 14px; line-height: 1.8; color: #fff; }
.bh-form-message[data-type=error] { color: #ff8a65; }
.bh-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
