/*
Theme Name:YsLink-Elementor-Custom
Description: 
Author: YsLink Corporation 
Author URI:https://ys-link.co.jp/
Template:hello-elementor
Version:3.4.9
*/

/*recaptchaの非表示*/
.grecaptcha-badge { visibility: hidden; }

/*フォントをゴシック体に*/
body *:not([class*="eicon"]):not([class*="fa"]):not([class*="icon"]) {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN",
               "Hiragino Sans", sans-serif !important;
}

/* ===== 見出しのCSS設定 ===== */
h1 {
	font-weight: bold;
  position: relative;
	color: #08296a;
}

h1:first-letter {
  font-size: 1.6em;
  color: #776F09;
}

h1:after {
  content: "";
	margin-top: 5px;
  display: block;
  height: 3px;
  background: linear-gradient(to right,transparent,#c0c0c0,#e6e6fa,transparent );
}

#midashi1 {
	font-weight: bold;
	position: relative;
	color: #08296a;
}

#midashi1:first-letter {
  font-size: 1.6em;
  color: #776F09;
}

h2 {
	font-weight: bold;
	position: relative;
	color: #08296a;
}

h2:first-letter {
  font-size: 1.4em;
  color: #776F09;
}

h2:after {
  content: "";
	margin-top: 10px;
  display: block;
  height: 3px;
	background: linear-gradient(to right,transparent,#c0c0c0,#e6e6fa,transparent );
}

h3 {
  font-weight: bold;
	padding-bottom: 5px;
  position: relative;
	color: #08296a;
}

h3:first-letter {
  font-size: 1.2em;
  color: #776F09;
}

h4 {
  font-weight: bold;
  position: relative;
	color: #1F68E1;
}

h4:first-letter {
  font-size: 1.1em;
  color: #0BA599;
}

h5 {
  font-weight: bold;
	padding-bottom: 2px;
  position: relative;	
	font-size: 1.0em;
	color: #1F68E1;
}

h5:first-letter {
  font-size: 1.0em;
  color: #DB2F10;
}

/* ボタン文字色を“必ず白”にする（Elementor/テーマに勝つ） */
.bizle-fv-wrap .bizle-cta,
.bizle-fv-wrap .bizle-cta:visited,
.bizle-fv-wrap .bizle-cta span,
.bizle-fv-wrap .bizle-cta b,
.bizle-fv-wrap .bizle-cta strong,
.bizle-fv-wrap .bizle-cta em{
  color: #fff !important;
}

/* hover時：文字色を黄色に（子要素も含めて） */
.bizle-fv-wrap .bizle-cta:hover,
.bizle-fv-wrap .bizle-cta:hover span,
.bizle-fv-wrap .bizle-cta:hover b,
.bizle-fv-wrap .bizle-cta:hover strong,
.bizle-fv-wrap .bizle-cta:hover em{
  color: var(--hoverYellow, #ffd36a) !important;
}

/* ついでに“下線”が出るテーマがあるので抑止 */
.bizle-fv-wrap .bizle-cta,
.bizle-fv-wrap .bizle-cta:hover{
  text-decoration: none !important;
}
/* =========================================================
   Bizle FV - Clean CSS (REPLACE ALL)
   - 背景：右端 #01368e のLRグラデ
   - 光：画像の上（.bizle-fv-wrap--plain）で“複数本”
   - スピード：5s
   - 回数：1回（最後に消える）
========================================================= */

:root{
  --bizle-navy:#0b2f9f;
  --bizle-sky:#1b7fe6;
  --bizle-hoverYellow:#ffd36a;
}

/* ===== FV 背景（全幅） ===== */
.bizle-fv-bg--light{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 0 !important;

  background:
    radial-gradient(900px 520px at 78% 35%, rgba(120,180,255,.22) 0%, rgba(120,180,255,0) 60%),
    radial-gradient(900px 520px at 14% 40%, rgba(0,181,255,.16) 0%, rgba(0,181,255,0) 62%),
    linear-gradient(90deg,
      #f4fbff 0%,
      #eaf6ff 22%,
      #d9eeff 48%,
      #bcdcff 72%,
      #6fa8ff 88%,
      #01368e 100%
    );
}

/* 1200枠 */
.bizle-fv-bg__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 !important;
}

/* 画像ラッパー（枠なし） */
.bizle-fv-wrap--plain{
  position: relative;
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: visible !important;
}

.bizle-fv-img{
  display:block;
  width:100%;
  height:auto;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

/* ===== CTA（左下） ===== */
.bizle-fv-ctas{
  position:absolute;
  left:44px;
  bottom:42px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  z-index: 6; /* 光より前 */
}

/* ボタン（白→hover黄、拡大＋キラッ） */
.bizle-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 22px;
  border-radius:999px;
  font-weight:1000;
  text-decoration:none !important;
  white-space:nowrap;

  font-size:1.25rem;
  line-height:1;

  color:#fff !important;
  -webkit-text-fill-color:#fff !important;

  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 18px 44px rgba(9,30,66,.26);

  transition: transform .18s ease, filter .18s ease, color .18s ease;
  position:relative;
  overflow:hidden;
  will-change: transform;
}
.bizle-cta::after{
  content:"";
  position:absolute;
  top:-20%;
  left:-60%;
  width:55%;
  height:140%;
  transform: skewX(-20deg);
  background: linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.35) 40%,
    rgba(255,255,255,.75) 50%,
    rgba(255,255,255,.35) 60%,
    rgba(255,255,255,0) 100%
  );
  opacity:0;
  pointer-events:none;
}
.bizle-cta:hover{
  transform: scale(1.06);
  color: var(--bizle-hoverYellow) !important;
  -webkit-text-fill-color: var(--bizle-hoverYellow) !important;
  filter: brightness(1.04);
}
.bizle-cta:hover::after{ opacity:1; animation: bizleShine .85s ease-out 1; }

@keyframes bizleShine{
  0%{ left:-60%; opacity:0; }
  10%{ opacity:1; }
  100%{ left:130%; opacity:0; }
}

.bizle-cta--navy{
  background: linear-gradient(135deg, #082681 0%, var(--bizle-navy) 45%, #1446d8 100%);
}
.bizle-cta--sky{
  background: linear-gradient(135deg, #0ea5ff 0%, var(--bizle-sky) 55%, #1446d8 100%);
}

/* =========================================================
   光：画像の上に“複数本”
   - ::before = 複数本の細い筋（メイン）
   - ::after  = さらに細いハイライト（サブ）
========================================================= */

/* 複数本の光筋（メイン） */
.bizle-fv-wrap--plain::before{
  content:"";
  position:absolute;
  inset:-35% -30%;
  pointer-events:none;
  z-index: 4; /* 画像の上、ボタンの下 */
  transform: translateX(-22%) rotate(-2deg);

  /* “複数本”にする：細い芯×複数＋周辺グロー */
  background: linear-gradient(115deg,
    rgba(255,255,255,0) 0%,

    /* 1本目（細） */
    rgba(255,255,255,0) 42.8%,
    rgba(255,255,255,.18) 44.2%,
    rgba(255,255,255,.90) 44.8%,
    rgba(255,255,255,.18) 45.4%,
    rgba(255,255,255,0) 46.8%,

    /* 2本目（メイン） */
    rgba(255,255,255,0) 48.4%,
    rgba(255,255,255,.22) 49.3%,
    rgba(255,255,255,1)  50.0%,
    rgba(255,255,255,.22) 50.7%,
    rgba(255,255,255,0) 51.6%,

    /* 3本目（細） */
    rgba(255,255,255,0) 53.2%,
    rgba(255,255,255,.16) 54.6%,
    rgba(255,255,255,.75) 55.2%,
    rgba(255,255,255,.16) 55.8%,
    rgba(255,255,255,0) 57.2%,

    rgba(255,255,255,0) 100%
  );

  opacity: .30;
  filter: blur(0.28px);
  mix-blend-mode: screen;
}

/* サブのハイライト（さらに細い線） */
.bizle-fv-wrap--plain::after{
  content:"";
  position:absolute;
  inset:-40% -30%;
  pointer-events:none;
  z-index: 4;
  transform: translateX(-22%) rotate(-2deg);

  background: linear-gradient(115deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0) 47.8%,
    rgba(255,255,255,1)  50%,
    rgba(255,255,255,0) 52.2%,
    rgba(255,255,255,0) 100%
  );

  opacity: .12;
  mix-blend-mode: screen;
}

/* ===== 5s × 1回：最後は消える ===== */
.bizle-fv-bg--light.is-animated .bizle-fv-wrap--plain::before,
.bizle-fv-bg--light.is-animated .bizle-fv-wrap--plain::after{
  animation: bizleSweep 5s linear 0s 1 forwards !important;
}

/* 最後にopacity:0へ（“消える”） */
@keyframes bizleSweep{
  0%   { transform: translateX(-22%) rotate(-2deg); opacity: .06; }
  12%  { opacity: .55; }
  55%  { opacity: .34; }
  92%  { opacity: .16; }
  100% { transform: translateX(22%) rotate(-2deg); opacity: 0; }
}

/* ===== モバイル ===== */
@media (max-width: 768px){
  .bizle-fv-ctas{
    left:12px;
    right:12px;
    bottom:12px;
    justify-content:center;
  }
  .bizle-cta{ width:100%; max-width:420px; }
}

/* ===== Bizle Flow Vertical (FULL REPLACE / a・div完全統一) ===== */
.bz-flowV{
  --navy:#08296A;
  --arrow:#059CB8;
  --done:#E11D48;
  --text:#0f172a;
  --muted:#64748b;
  --border:#e5e7eb;

  max-width: 1200px;
  margin: 0 auto;
  font-family: system-ui,-apple-system,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;
}

/* a/div どちらでも “カード” として統一（aのデフォルトを殺す） */
.bz-flowV .bz-stepV{
  display:grid !important;
  grid-template-columns: 76px 1fr 76px !important;
  align-items:stretch !important;

  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:16px !important;
  overflow:hidden !important;

  box-shadow: 0 10px 28px rgba(2,6,23,.10) !important;
  margin: 0 0 14px 0 !important;

  /* aタグの崩れ防止 */
  text-decoration:none !important;
  color:inherit !important;
  outline: none !important;
}

/* aタグだけに入る変な装飾（青文字/下線/hover）を完全に無効化 */
.bz-flowV a.bz-stepV:link,
.bz-flowV a.bz-stepV:visited,
.bz-flowV a.bz-stepV:hover,
.bz-flowV a.bz-stepV:active{
  color:inherit !important;
  text-decoration:none !important;
}

/* フォーカスリングは必要なら軽く */
.bz-flowV a.bz-stepV:focus-visible{
  box-shadow: 0 0 0 3px rgba(5,156,184,.25), 0 10px 28px rgba(2,6,23,.10) !important;
}

/* 左：番号帯 */
.bz-flowV .bz-stepV__num{
  background: var(--navy) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.bz-flowV .bz-stepV__n{
  font-weight:900 !important;
  font-size:18px !important;
  line-height:1 !important;
}

/* 中央：本文（アイコン＋テキスト） */
.bz-flowV .bz-stepV__body{
  padding: 14px 16px !important;
  display:grid !important;
  grid-template-columns: 36px 1fr !important;
  column-gap: 12px !important;
  align-items:center !important;
}

/* アイコン */
.bz-flowV .bz-stepV__icoText{
  width: 33px !important;
  height: 33px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:.95 !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.12)) !important;
}
.bz-flowV .bz-stepV__icoText svg{
  width: 33px !important;
  height: 33px !important;
  fill: var(--navy) !important;
}

/* テキスト */
.bz-flowV .bz-stepV__text{
  display:flex !important;
  flex-direction:column !important;
  gap: 6px !important;
}
.bz-flowV .bz-stepV__title{
  font-weight:900 !important;
  font-size:20px !important; /* 指定 */
  color: var(--text) !important;
  line-height:1.2 !important;
}
.bz-flowV .bz-stepV__desc{
  font-weight:400 !important;
  font-size:14px !important; /* 指定 */
  color: var(--muted) !important;
  line-height:1.55 !important;
}

/* 右：帯（矢印↓ / 完了） */
.bz-flowV .bz-stepV__tail{
  background: var(--arrow) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-weight:900 !important;
}
.bz-flowV .bz-stepV__arrow{
  font-size:26px !important;
  line-height:1 !important;
}

/* 6番：右端だけ赤＋完了（それ以外は上と完全一致） */
.bz-flowV .bz-stepV--done .bz-stepV__tail{
  background: var(--done) !important;
}
.bz-flowV .bz-stepV__doneTxt{
  font-size:18px !important;
  font-weight:900 !important;
  letter-spacing:.06em !important;
}

/* クリック無効にしたい場合（aでもdivでも使える） */
.bz-flowV .bz-stepV--disabled{
  pointer-events:none !important;
  cursor:default !important;
}

/* 補足：右寄せ */
.bz-flowV .bz-flowV__note{
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #6b7280 !important;
  line-height: 1.6 !important;
  text-align: right !important;
}

/* hover（リンク行だけ少し浮かす） */
.bz-flowV a.bz-stepV:hover{
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 34px rgba(2,6,23,.12) !important;
  transition: box-shadow .18s ease, transform .18s ease !important;
}

/* SP */
@media (max-width: 520px){

  /* グリッド：左右帯を10%に */
  .bz-flowV .bz-stepV{
    grid-template-columns: 10% 1fr 10% !important;
    border-radius: 14px !important;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif !important;
  }

  /* アイコン列を20pxに合わせて縮小 */
  .bz-flowV .bz-stepV__body{
    grid-template-columns: 20px 1fr !important;
    column-gap: 8px !important;
    padding: 12px 10px !important;
  }

  /* アイコン：20px */
  .bz-flowV .bz-stepV__icoText,
  .bz-flowV .bz-stepV__icoText svg{
    width: 20px !important;
    height: 20px !important;
  }

  /* タイトル・説明文も少し縮小 */
  .bz-flowV .bz-stepV__title{
    font-size: 15px !important;
  }
  .bz-flowV .bz-stepV__desc{
    font-size: 12px !important;
  }

  /* 「完了」を縦表示 */
  .bz-flowV .bz-stepV__doneTxt{
    writing-mode: vertical-rl !important;
    text-orientation: mixed !important;
    font-size: 14px !important;
    letter-spacing: .15em !important;
  }

  /* ↓矢印サイズ調整 */
  .bz-flowV .bz-stepV__arrow{
    font-size: 20px !important;
  }

  /* 番号フォントサイズ調整 */
  .bz-flowV .bz-stepV__n{
    font-size: 15px !important;
  }
}

	.bz-flowV h3{
    	font-size: 22px !important;
		font-weight:800 !important;
  	}
  	.bz-flowV .bz-stepV__title{
    	font-size: 18px !important;
  	}
  	.bz-flowV .bz-stepV__desc{
    	font-size: 13px !important;
  	}
}

/* ウェイトが乗らないフォント対策：視覚的に太く見せる */
.bz-flowV .bz-stepV--done .bz-stepV__title{
  font-weight: 900 !important;
  text-shadow: 0.4px 0 0 currentColor, -0.4px 0 0 currentColor;
}
.bz-flowV .bz-stepV--done .bz-stepV__n{
  font-weight: 900 !important;
  text-shadow: 0.4px 0 0 #fff, -0.4px 0 0 #fff;
}

/* ファーストビュー */
:root{
  --navy:#0b2f9f;
  --sky:#1b7fe6;
  --hoverYellow:#ffd36a;
}

@keyframes bizleShine{
  0%{ left:-60%; opacity:0; }
  10%{ opacity:1; }
  100%{ left:130%; opacity:0; }
}


/* ========================================
   Bizle ブログ記事スタイル
   ======================================== */

:root {
  --biz-ink: #1a1a2e;
  --biz-mid: #4a4a6a;
  --biz-muted: #8a8aaa;
  --biz-rule: #e4e4f0;
  --biz-surface: #ffffff;
  --biz-accent: #2563eb;
  --biz-accent-light: #eff6ff;
  --biz-accent-mid: #bfdbfe;
  --biz-warn: #d97706;
  --biz-warn-light: #fffbeb;
  --biz-green: #059669;
  --biz-green-light: #ecfdf5;
  --biz-tag-new: #7c3aed;
  --biz-tag-new-bg: #f5f3ff;
  --biz-radius: 10px;
}

/* ── Hero ── */
.biz-hero {
  background: linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 60%, #2563eb 100%);
  color: #fff;
  padding: 48px 32px 48px;
  margin: -20px -20px 0;
}
.biz-hero h1 {
  font-family: 'Noto Serif JP', serif !important;
  font-size: clamp(20px, 3vw, 28px) !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  margin-bottom: 20px !important;
  color: #fff !important;
}
.biz-breadcrumb {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  font-size: 12px; color: #93c5fd; margin-bottom: 14px;
}
.biz-breadcrumb a,
.biz-breadcrumb span:not(:last-child) { white-space: nowrap; }
.biz-breadcrumb span:last-child { white-space: normal; }
.biz-breadcrumb a { color: #93c5fd; text-decoration: none; }
.biz-breadcrumb a:hover { text-decoration: underline; }

/* カテゴリー・タグ（パンくず直下） */
.biz-meta-tags {
  display: flex; flex-wrap: wrap; gap: 7px;
  margin-bottom: 20px;
}
.biz-meta-cat {
  font-size: 11px; font-weight: 700; letter-spacing: .05em;
  padding: 3px 10px; border-radius: 100px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.92);
  color: #1e3a8a;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.biz-meta-cat:hover {
  background: #fff;
  color: #1e3a8a;
}
.biz-meta-tag {
  font-size: 11px; font-weight: 500; letter-spacing: .04em;
  padding: 3px 10px; border-radius: 100px;
  background: transparent;
  border: 1.5px solid rgba(255,255,255,.85);
  color: #fff;
  text-decoration: none;
  transition: background .15s, border-color .15s, transform .15s, box-shadow .15s;
}
.biz-meta-tag:hover {
  background: rgba(255,255,255,.15);
  border-color: #fff;
  color: #fff;
}

.biz-hero-meta {
  display: flex; align-items: center; gap: 20px;
  font-size: 12.5px; color: #bfdbfe;
}
.biz-hero-meta strong { color: #fff; }

/* ── サムネイル ── */
.biz-thumb {
  width: 100%;
  height: auto;
  aspect-ratio: unset;
  object-fit: unset;
  border-radius: var(--biz-radius);
  display: block;
  margin-bottom: 28px;
}

/* ── 2カラムレイアウト ── */
.biz-page {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 48px;
  margin-top: 40px;
  align-items: start;
}

/* ── サイドバー ── */
.biz-sidebar { position: sticky; top: 24px; }
.biz-sw {
  background: #fff; border: 1px solid var(--biz-rule);
  border-radius: var(--biz-radius); overflow: hidden; margin-bottom: 24px;
}
.biz-sw-title {
  background: var(--biz-ink); color: #fff;
  font-size: 13px; font-weight: 700; letter-spacing: .08em;
  padding: 12px 18px;
}
.biz-sw-body { padding: 0 0 4px 0; }
.biz-sw-body p { font-size: 13px; color: var(--biz-mid); line-height: 1.75; margin: 0; }

/* ── 目次 ── */
.biz-toc {
  background: #fff; border: 1px solid var(--biz-rule);
  border-radius: var(--biz-radius); padding: 24px 28px;
}
.biz-toc-title {
  font-size: 13px !important; font-weight: 700 !important;
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--biz-muted) !important;
  margin-bottom: 14px !important;
  border: none !important; padding: 0 !important;
}
.biz-toc ol { padding-left: 18px; display: flex; flex-direction: column; gap: 6px; }
.biz-toc li { font-size: 14px; }
.biz-toc a { color: var(--biz-accent); text-decoration: none; }
.biz-toc a:hover { text-decoration: underline; }

/* ── 記事本文 ── */
.biz-article { margin-top: 40px; }

.biz-article h2 {
  font-family: 'Noto Serif JP', serif !important;
  font-size: 20px !important; font-weight: 700 !important;
  color: var(--biz-ink) !important;
  margin: 56px 0 20px !important; padding-bottom: 10px !important;
  border-bottom: 2px solid var(--biz-ink) !important;
  display: flex !important; align-items: baseline !important; gap: 10px !important;
}
.biz-n { font-size: 28px; font-weight: 700; color: var(--biz-accent); line-height: 1; }

.biz-article h3 {
  font-size: 16px !important; font-weight: 700 !important;
  color: var(--biz-ink) !important; margin: 32px 0 12px !important;
}
.biz-article p { margin-bottom: 16px; color: var(--biz-mid); }

.biz-lead {
  font-size: 16px; color: var(--biz-ink) !important; line-height: 1.9;
  background: var(--biz-accent-light);
  border-left: 4px solid var(--biz-accent);
  padding: 18px 22px;
  border-radius: 0 var(--biz-radius) var(--biz-radius) 0;
  margin-bottom: 28px;
}

/* ── カード ── */
.biz-card {
  border: 1px solid var(--biz-rule); border-radius: var(--biz-radius);
  overflow: hidden; margin: 28px 0;
  background: #fff; box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
.biz-card-hd {
  display: flex; align-items: center; gap: 14px;
  padding: 18px 22px; background: var(--biz-accent); color: #fff;
}
.biz-card-icon {
  width: 38px; height: 38px; border-radius: 8px;
  background: rgba(255,255,255,.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; flex-shrink: 0;
}
.biz-card-lbl { font-size: 11px; font-weight: 700; opacity: .8; margin-bottom: 2px; }
.biz-card-ttl { font-weight: 700; font-size: 15px; line-height: 1.35; }
.biz-card-date {
  margin-left: auto; font-size: 11px;
  background: rgba(255,255,255,.2); padding: 4px 10px;
  border-radius: 100px; flex-shrink: 0; white-space: nowrap;
}
.biz-card-bd { padding: 22px 24px; }

/* ── Before/After ── */
.biz-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 14px 0; }
.biz-ba-box { border-radius: 8px; padding: 14px 16px; }
.biz-ba-box.biz-before { background: #fef2f2; border: 1px solid #fecaca; }
.biz-ba-box.biz-after  { background: var(--biz-green-light); border: 1px solid #6ee7b7; }
.biz-ba-lbl { font-size: 11px; font-weight: 700; margin-bottom: 6px; }
.biz-ba-box.biz-before .biz-ba-lbl { color: #dc2626; }
.biz-ba-box.biz-after  .biz-ba-lbl { color: var(--biz-green); }
.biz-ba-box p { font-size: 13.5px !important; color: var(--biz-ink) !important; margin: 0 !important; }

/* ── Note boxes ── */
.biz-note {
  border-radius: var(--biz-radius); padding: 16px 20px; margin: 20px 0;
  display: flex; gap: 12px; align-items: flex-start;
}
.biz-note.biz-info    { background: var(--biz-accent-light); border: 1px solid var(--biz-accent-mid); }
.biz-note.biz-warn    { background: var(--biz-warn-light);   border: 1px solid #fde68a; }
.biz-note.biz-caution { background: #fef2f2; border: 1px solid #fecaca; }
.biz-note-ic { font-size: 18px; flex-shrink: 0; margin-top: 1px; }
.biz-note p { margin: 0 !important; font-size: 13.5px !important; color: var(--biz-ink) !important; }

/* ── テーブル ── */
.biz-table {
  width: 100%; border-collapse: collapse;
  font-size: 13.5px; margin: 24px 0;
  box-shadow: 0 1px 8px rgba(0,0,0,.06);
  border-radius: var(--biz-radius); overflow: hidden;
}
.biz-table thead tr { background: var(--biz-ink); color: #fff; }
.biz-table th { padding: 12px 16px; text-align: left; font-weight: 700; font-size: 12px; }
.biz-table td { padding: 13px 16px; border-bottom: 1px solid var(--biz-rule); color: var(--biz-mid); }
.biz-table tr:nth-child(even) td { background: #f8f8fc; }
.biz-badge { display: inline-block; font-size: 10.5px; font-weight: 700; padding: 2px 8px; border-radius: 100px; }
.biz-badge.biz-new    { background: var(--biz-tag-new-bg); color: var(--biz-tag-new); }
.biz-badge.biz-expand { background: var(--biz-green-light); color: var(--biz-green); }
.biz-badge.biz-change { background: var(--biz-warn-light);  color: var(--biz-warn); }

/* ── タイムライン ── */
.biz-tl-item { display: flex; }
.biz-tl-left { display: flex; flex-direction: column; align-items: center; width: 44px; flex-shrink: 0; }
.biz-tl-dot {
  width: 14px; height: 14px; border-radius: 50%;
  background: var(--biz-accent); border: 3px solid #fff;
  box-shadow: 0 0 0 2px var(--biz-accent); z-index: 1; margin-top: 4px; flex-shrink: 0;
}
.biz-tl-line { width: 2px; flex: 1; background: var(--biz-accent-mid); margin-top: 4px; }
.biz-tl-item:last-child .biz-tl-line { display: none; }
.biz-tl-right { padding: 0 0 28px 16px; }
.biz-tl-date { font-size: 12px; font-weight: 700; color: var(--biz-accent); margin-bottom: 4px; }
.biz-tl-text { font-size: 14px; color: var(--biz-mid); }
.biz-tl-text strong { color: var(--biz-ink); }

/* ── CTA ── */
.biz-cta {
  background: linear-gradient(135deg, #1e3a8a 0%, #2563eb 100%);
  border-radius: 14px; padding: 40px 36px; color: #fff;
  margin: 56px 0 0; position: relative; overflow: hidden;
}
.biz-cta-ey { font-size: 11.5px; font-weight: 700; letter-spacing: .1em; color: #93c5fd; margin-bottom: 10px; }
.biz-cta h3 {
  font-family: 'Noto Serif JP', serif !important;
  font-size: 20px !important; font-weight: 700 !important;
  line-height: 1.55 !important; margin-bottom: 14px !important; color: #fff !important;
}
.biz-cta p { font-size: 14px !important; color: #bfdbfe !important; line-height: 1.8 !important; margin-bottom: 24px !important; }
.biz-cta-btn {
  display: inline-block; background: #fff; color: var(--biz-accent);
  font-weight: 700; font-size: 14.5px; padding: 13px 28px;
  border-radius: 8px; text-decoration: none;
  transition: transform .15s, box-shadow .15s;
}
.biz-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.25); }

/* ── レスポンシブ ── */
/* ── モバイル用：サムネ下のパンくず・タグ ── */
.biz-mobile-meta { display: none; }

.biz-mobile-meta .biz-breadcrumb {
  color: var(--biz-muted);
  margin-bottom: 10px;
  margin-top: -16px;
}
.biz-mobile-meta .biz-breadcrumb a { color: var(--biz-muted); }
.biz-mobile-meta .biz-breadcrumb a:hover { color: var(--biz-accent); }

.biz-mobile-meta .biz-meta-tags { margin-bottom: 24px; }

.biz-mobile-meta .biz-meta-cat {
  background: var(--biz-accent);
  border-color: var(--biz-accent);
  color: #fff;
}
.biz-mobile-meta .biz-meta-cat:hover {
  background: #1d4ed8;
  color: #fff;
}
.biz-mobile-meta .biz-meta-tag {
  background: transparent;
  border: 1.5px solid var(--biz-accent-mid);
  color: var(--biz-accent);
}
.biz-mobile-meta .biz-meta-tag:hover {
  background: var(--biz-accent-light);
}

@media (max-width: 860px) {
  .biz-page { grid-template-columns: 1fr; }
  .biz-sidebar { position: static; }
  .biz-ba { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  /* 表の横スクロール対応 */
  main,
  .biz-article,
  .biz-card-bd,
  .biz-sidebar {
    overflow-x: hidden;
    max-width: 100%;
  }
  .biz-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 24px 0;
    max-width: 100%;
  }
  .biz-table {
    margin: 0;
    width: 100%;
    min-width: 360px;
    font-size: 11.5px;
  }
  .biz-table th,
  .biz-table td {
    padding: 8px 8px;
  }
  /* ヒーロー：セクションpadding 1px に合わせてマージン調整 */
  .biz-hero { padding: 24px 16px 28px; margin: -1px -1px 0; }
  .biz-cta { padding: 28px 22px; }
  .biz-card-date { display: none; }
  .biz-page { margin-top: 20px; }

  /* サムネ：セクションpadding 1px 分だけ広げて全幅に */
  .biz-thumb {
    border-radius: 0;
    margin-left: -1px;
    margin-top: 0;
    margin-bottom: 20px;
    width: calc(100% + 2px);
  }

  /* ヒーロー内のパンくず・タグを非表示 */
  .biz-hero .biz-breadcrumb,
  .biz-hero .biz-meta-tags { display: none; }

  /* サムネ下のパンくず・タグを表示 */
  .biz-mobile-meta { display: block; }

  /* パンくず：全文折り返し表示・省略なし */
  .biz-breadcrumb {
    flex-wrap: wrap;
    gap: 4px;
    white-space: normal;
  }
  .biz-breadcrumb a,
  .biz-breadcrumb span {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
  }

  /* 記事本文：左右にpadding */
  .biz-article,
  .biz-toc {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* ── サイドバー新着記事 ── */
.biz-rp {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-bottom: 4px;
}

.biz-rp-card {
  display: block;
  padding: 8px 12px;
  border-top: 1px solid var(--biz-rule);
  border-bottom: none;
  position: relative;
  margin: 0;
  cursor: pointer;
}
.biz-rp-card:first-child { border-top: none; padding-top: 4px; }
.biz-rp-card:last-child { padding-bottom: 0; }
.biz-rp-card:hover { opacity: .75; }
/* 空カードを非表示 */
.biz-rp-card:not(:has(.biz-rp-title)) { display: none !important; }
/* フルカードリンク（絶対配置で全面をカバー） */
.biz-rp-card-link {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  z-index: 1;
  display: block;
}
/* カテゴリリンクはzindexを上げてクリック可能に */
.biz-rp-cat { position: relative; z-index: 2; }

/* New ラベル */
.biz-rp-new {
  display: inline-block;
  background: #ef4444;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .05em;
  padding: 1px 6px;
  border-radius: 4px;
  line-height: 1.4;
  margin-bottom: 3px !important;
}

.biz-rp-title {
  display: block;
  font-size: 11.5px;
  font-weight: 700;
  color: var(--biz-ink);
  line-height: 1.5;
  margin-bottom: 2px !important;
}
.biz-rp-meta {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
  margin: 4px 0 0 0 !important;
  border: none !important;
}
.biz-rp-body,
.biz-rp-body *,
.biz-rp-meta,
.biz-rp-meta *,
.biz-rp-cat,
.biz-rp-date,
.biz-rp-new,
.biz-rp-title {
  border-top: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  outline: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* hello-elementor テーマの干渉を直接打ち消し */
.hello-elementor .biz-rp-card *,
.hello-elementor .biz-rp-meta,
.hello-elementor .biz-rp-meta *,
.hello-elementor .biz-rp-title,
.elementor .biz-rp-card *,
.elementor .biz-rp-meta,
.elementor .biz-rp-title {
  border-top: none !important;
  border-bottom: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.hello-elementor .biz-rp-new,
.elementor .biz-rp-new { margin-bottom: 2px !important; }
.hello-elementor .biz-rp-title,
.elementor .biz-rp-title { margin-bottom: 2px !important; }
.biz-rp-cat {
  font-size: 10px;
  font-weight: 700;
  color: var(--biz-accent);
  background: var(--biz-accent-light);
  border-radius: 100px;
  padding: 2px 8px;
  text-decoration: none;
  white-space: nowrap;
}
.biz-rp-cat:hover { background: var(--biz-accent-mid); }
.biz-rp-date {
  font-size: 10px;
  color: var(--biz-muted);
  white-space: nowrap;
}

/* ページネーションCSS → functions.phpのwp_footer出力に移動済み */

/* タブレット・モバイル：1カラム */
@media (max-width: 860px) {
  .biz-rp-title { font-size: 14px !important; }
  .biz-rp {
    flex-direction: column;
    gap: 0;
  }
  .biz-rp-card {
    width: 100% !important;
    padding: 6px 12px !important;
    border: none !important;
    border-top: 1px solid var(--biz-rule) !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    margin: 0 !important;
  }
  .biz-rp-card:first-child {
    border-top: none !important;
    padding-top: 4px !important;
  }
  .biz-rp-card:last-child {
    padding-bottom: 4px !important;
  }
  /* タイトルとメタの余白・罫線をリセット */
  .biz-rp-card .biz-rp-new {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
  }
  .biz-rp-card .biz-rp-title {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    border: none !important;
    padding: 0 !important;
  }
  .biz-rp-card .biz-rp-meta {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    border: none !important;
  }
  /* タイトルとメタ間の疑似要素による罫線を除去 */
  .biz-rp-card .biz-rp-title::after,
  .biz-rp-card .biz-rp-title::before,
  .biz-rp-card .biz-rp-meta::before,
  .biz-rp-card .biz-rp-meta::after {
    display: none !important;
    content: none !important;
    border: none !important;
  }
  /* 全子要素のborder・marginをリセット */
  .biz-rp-card *,
  .biz-rp-card *::before,
  .biz-rp-card *::after {
    border-top: none !important;
    border-bottom: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  /* New・titleのmarginだけ個別に戻す（上記より特異性を上げる） */
  .biz-rp-card .biz-rp-new { margin-bottom: 2px !important; }
  .biz-rp-card .biz-rp-title { margin-bottom: 2px !important; }
}

/* ── アーカイブページ フィルターボタン ── */
.biz-af-wrap {
  padding: 16px 0 8px;
}
.biz-af-group {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.biz-af-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--biz-muted);
  letter-spacing: .08em;
  padding-top: 4px;
  white-space: nowrap;
  flex-shrink: 0;
}
.biz-af-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.biz-af-cat {
  font-size: 12px;
  font-weight: 700;
  color: #fff !important;
  background: var(--biz-accent);
  border: 1.5px solid var(--biz-accent);
  border-radius: 100px;
  padding: 4px 14px;
  text-decoration: none;
  transition: background .15s, transform .15s, box-shadow .15s;
  white-space: nowrap;
}
.biz-af-cat:hover {
  background: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.35);
}
.biz-af-tag {
  font-size: 12px;
  font-weight: 500;
  color: var(--biz-accent);
  background: transparent;
  border: 1.5px solid var(--biz-accent-mid);
  border-radius: 100px;
  padding: 4px 14px;
  text-decoration: none;
  transition: background .15s, border-color .15s, transform .15s, box-shadow .15s;
  white-space: nowrap;
}
.biz-af-tag:hover {
  background: var(--biz-accent-light) !important;
  border-color: var(--biz-accent) !important;
  color: var(--biz-accent) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.15);
}

@media (max-width: 600px) {
  .biz-af-group {
    flex-direction: column;
    gap: 6px;
  }
  .biz-af-cat,
  .biz-af-tag {
    font-size: 11px;
    padding: 3px 12px;
  }
}

/* ── 全ページ固定ハンバーガーボタン ── */
@media (max-width: 860px) {

  /* 元のElementorトグルは非表示 */
  .elementor-menu-toggle {
    display: none !important;
  }

  /* 独自固定ボタン */
  #bizle-hamburger {
    position: fixed;
    top: 12px;
    right: 12px;
    z-index: 99999;
    width: 44px;
    height: 44px;
    background: #1e3a8a;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    cursor: pointer;
    box-shadow: 0 2px 12px rgba(0,0,0,.3);
    transition: background .2s;
    padding: 10px;
    box-sizing: border-box;
  }
  #bizle-hamburger:hover { background: #1d4ed8; }

  #bizle-hamburger span {
    display: block;
    width: 22px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform .25s, opacity .25s;
    transform-origin: center;
  }

  /* 開いた状態（バツ印） */
  #bizle-hamburger.is-open span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }
  #bizle-hamburger.is-open span:nth-child(2) {
    opacity: 0;
  }
  #bizle-hamburger.is-open span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  /* ドロップダウンメニューを固定表示（メニューが開いている時のみ） */
  body.bizle-menu-open .elementor-nav-menu--dropdown {
    position: fixed !important;
    top: 64px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: calc(100vh - 64px) !important;
    overflow-y: auto !important;
    z-index: 99998 !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.2) !important;
  }
}

/* ── HOME用独自ナビメニューのスタイル ── */
#bizle-home-nav {
  display: none;
}
#bizle-home-nav.is-visible {
  display: block !important;
  position: fixed !important;
  top: 64px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-height: calc(100vh - 64px) !important;
  overflow-y: auto !important;
  z-index: 99998 !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.25) !important;
  font-family: 'Noto Sans JP', sans-serif !important;
}
#bizle-home-nav ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#bizle-home-nav ul li {
  border-bottom: 1px solid #e4e4f0 !important;
  margin: 0 !important;
}
#bizle-home-nav ul li a {
  display: block !important;
  padding: 14px 20px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #059CB8 !important;
  text-decoration: none !important;
  transition: background .15s, color .15s !important;
}
#bizle-home-nav ul li a:hover {
  background: #059CB8 !important;
  color: #fff !important;
}
/* アクティブ：クリック時に付与されるbizle-activeクラスで制御 */
#bizle-home-nav ul li.bizle-active > a {
  background: #08296A !important;
  color: #fff !important;
}

/* おすすめ記事CSS → functions.phpのwp_footer出力に移動済み */


/* ── スマホのみトップページのヘッダー隠す ── */
@media (max-width: 768px) {
  body.home header,
  body.home .elementor-location-header {
    display: none !important;
  }
}

/* Hanari Chat 補足メッセージ 改行対応 */
.hnr-bot-illust.hnr-bot strong {
  display: block;
  margin-bottom: 0.75em;
}

/* Hanari Chat アイコン：枠線を削除 */
.hnr-chat-icon {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Hanari Chat 補足アイコン */
.hnr-chat-icon-illust {
  width: 60px !important;
  height: 60px !important;
  object-fit: cover;
  border-radius: 10% !important;
}

/* ===== CF7 フォーム全体 ===== */
table.inquiry {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  border-collapse: collapse;
  border: 1px solid #d5d5d5;
}

/* ===== 行 ===== */
table.inquiry tr {
  border-bottom: 1px solid #d5d5d5;
}

/* ===== 交互背景 ===== */
table.inquiry tr:nth-child(odd) th,
table.inquiry tr:nth-child(odd) td {
  background: #ffffff !important;
}
table.inquiry tr:nth-child(even) th,
table.inquiry tr:nth-child(even) td {
  background: #f8f8f8 !important;
}

/* ===== ラベル列（th） ===== */
table.inquiry th {
  width: 260px;
  padding: 20px !important;
  border-right: 1px solid #d5d5d5;
  font-size: 15px;
  font-weight: 500;
  color: #222;
  vertical-align: middle;
  text-align: left;
  white-space: nowrap;
  box-sizing: border-box !important;
}

/* ===== 入力列（td） ===== */
table.inquiry td {
  padding: 0 14px !important;
  vertical-align: middle;
  box-sizing: border-box !important;
}

/* ===== 必須・任意バッジ ===== */
table.inquiry th .haveto,
table.inquiry th .any {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 3px;
  margin-right: 8px;
  vertical-align: middle;
}
table.inquiry th .haveto { background: #b91c1c; color: #fff; }
table.inquiry th .any    { background: #6b7280; color: #fff; }

/* ===== CF7ラッパーspan ===== */
table.inquiry .wpcf7-form-control-wrap {
  display: flex !important;
  align-items: center !important;
  min-height: 70px !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: wrap !important;
}

/* ===== エラーtip：デフォルト非表示 ===== */
table.inquiry .wpcf7-not-valid-tip {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

/* ===== バリデーション失敗時のみ表示 ===== */
table.inquiry .wpcf7-not-valid .wpcf7-not-valid-tip,
table.inquiry .wpcf7-form-control-wrap:has(input.wpcf7-not-valid) .wpcf7-not-valid-tip,
table.inquiry .wpcf7-form-control-wrap:has(textarea.wpcf7-not-valid) .wpcf7-not-valid-tip,
table.inquiry .wpcf7-form-control-wrap:has(select.wpcf7-not-valid) .wpcf7-not-valid-tip {
  display: block !important;
  height: auto !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  margin-top: 6px !important;
  overflow: visible !important;
  color: #b91c1c !important;
  font-weight: 500 !important;
}

/* ===== 入力フィールド共通 ===== */
table.inquiry input[type="text"],
table.inquiry input[type="email"],
table.inquiry input[type="tel"],
table.inquiry input.textsp,
table.inquiry input.mailsp,
table.inquiry select {
  width: 100% !important;
  height: 44px !important;
  background: #ffffff !important;
  border: 1px solid #d5d5d5 !important;
  border-radius: 4px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 44px !important;
  color: #333 !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  display: block !important;
  transition: border-color .2s;
}

/* ===== フォーカス時 ===== */
table.inquiry input[type="text"]:focus,
table.inquiry input[type="email"]:focus,
table.inquiry input[type="tel"]:focus,
table.inquiry input.textsp:focus,
table.inquiry input.mailsp:focus,
table.inquiry select:focus {
  border-color: #1a6ed8 !important;
  outline: none !important;
}

/* ===== テキストエリア ===== */
table.inquiry textarea {
  width: 100% !important;
  height: auto !important;
  min-height: 120px !important;
  background: #ffffff !important;
  border: 1px solid #d5d5d5 !important;
  border-radius: 4px !important;
  padding: 12px 14px !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  color: #333 !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  display: block !important;
  resize: vertical !important;
}
table.inquiry textarea:focus {
  border-color: #1a6ed8 !important;
}

/* ===== セレクト ===== */
table.inquiry select {
  appearance: auto !important;
  cursor: pointer;
  line-height: normal !important;
}

/* ===== チェックボックス ===== */
table.inquiry .wpcf7-acceptance {
  display: flex !important;
  align-items: center;
  gap: 8px;
  font-size: 15px !important;
  line-height: 1.4 !important;
  color: #333;
}

/* ===== 送信ボタン ===== */
.wpcf7 input[type="submit"],
.wpcf7 input.wpcf7-submit {
  display: block !important;
  width: 240px !important;
  margin: 32px auto !important;
  padding: 18px 0 !important;
  background: #0b2f9f !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  letter-spacing: .1em !important;
  float: none !important;
  position: static !important;
  transition: background .2s, transform .15s !important;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7 input.wpcf7-submit:hover {
  background: #082681 !important;
  transform: scale(1.02) !important;
}

/* ===== Mobile ===== */
@media (max-width: 640px) {
  table.inquiry,
  table.inquiry tbody,
  table.inquiry tr,
  table.inquiry th,
  table.inquiry td {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }
  table.inquiry th {
    border-right: none !important;
    border-bottom: 1px solid #d5d5d5;
    padding: 12px 16px !important;
    white-space: normal;
  }
  table.inquiry td {
    padding: 10px 16px !important;
  }
  .wpcf7 input[type="submit"],
  .wpcf7 input.wpcf7-submit {
    width: 80% !important;
  }
}

/* ===== 追従型CTA ===== */
#bizle-float-cta {
  position: fixed;
  right: 0;
  bottom: 160px;
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  width: 36px;
  height: 200px;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);         
  will-change: opacity;            
}

#bizle-float-cta a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  writing-mode: vertical-rl;
  padding: 16px 10px;
  border-radius: 8px 0 0 8px;
  background: linear-gradient(180deg, #0EA5F0, #0055D4);
  color: #fff !important;
  text-decoration: none !important;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.05em;
  overflow: hidden;
  box-shadow: -3px 3px 12px rgba(0, 85, 212, 0.45);
}

#bizle-float-cta a span {
  display: block;
}

/* PC：丸デザイン */
@media (min-width: 769px) {
  #bizle-float-cta {
    right: 20px;
    bottom: 100px;
    width: 90px;
    height: 90px;
  }
  #bizle-float-cta a {
    writing-mode: horizontal-tb;
    border-radius: 50%;
    background: linear-gradient(145deg, #0EA5F0, #0055D4);
    overflow: visible;
    padding: 5px !important;
    box-sizing: border-box;
    box-shadow: 0 4px 16px rgba(0, 85, 212, 0.45);
  }
  #bizle-float-cta a span {
    white-space: normal;
    text-align: center;
    word-break: break-all;
	font-size: 14px;

  }
}