/******************************************/
/******************************************/
/******************************************/
/******************************************/
/******************************************/
/* === Compare table additions === */
/* 横スクロールの包み枠 */
.um-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.wp-block-table {
		margin-top:1rem;
}

/* 比較テーブル本体 */
/* 共通：比較テーブルは必ず横スクロール */
.um-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;

}

.um-table--compare { 
  table-layout: fixed; 
  border-collapse: separate; 
  border-spacing: 0; 
  min-width: 720px; 
  margin: 1rem 0;
}

.content table .row {
  background: #ffb74c!important;
}

/* セル共通：必ず折り返す（英数や長文も） */
.um-table--compare th, 
.um-table--compare td {
  padding: .6rem .75rem; 
  vertical-align: top;
  white-space: normal; 
  word-break: break-word; 
  overflow-wrap: anywhere; 
  hyphens: auto;
}

.content table th {
    background: #ffb74c;
    color: #454545;
    border:5px solid #FFFFFF;
}
.content table td {
    background: #F0F0F0;
    color: #454545;
    border:5px solid #FFFFFF;
}
.content table td:nth-child(n2) {
    background: #F0F0F0;
}
.um-table tbody td:first-child {
  background: #ffb74c!important;
}

.partsH2-11 h2 {
margin-bottom:2rem;
}


/* ヘッダー行もsticky */
.um-table--compare thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  font-weight: 700;
  text-align: center;
}

/* 左列固定（全ブレイクポイント） */
.um-table--compare tbody th[scope="row"],
.um-table--compare tbody td[scope="row"] {
  position: sticky; 
  left: 0; 
  z-index: 2; 
  background: #F0F0F0;
  color:#454545;
		font-weight:700;
  box-shadow: 1px 0 0 #e5e5e5 inset;
}

/* === スマホ表示改善（v1.7.7追加） === */
/* スマホ時も左列固定とセル内改行を両立 */
@media (max-width: 768px) {
  .um-table--compare tbody th[scope="row"],
  .um-table--compare tbody td[scope="row"] {
    position: sticky;
    left: 0;
    z-index: 2;
			color:#454545;
    white-space: normal;
    word-break: break-word;
    max-width: 140px;
    overflow-wrap: anywhere;
  }
}

/* === ゼブラをここで打ち消し4点セット（1つでも外すと、2列目tdの色が調整できなくなる） === */
.um-table tbody td:first-child {
  background: #ffb74c!important;
}

.content table tr:nth-child(odd) td {
    background-color: #ffb74c;
}
.um-table--compare tbody td[scope="row"] {
    background: #ffb74c;
}
.um-table tbody td:not(:first-child) {
  background: #F0F0F0!important;
}
.content table tr:nth-child(odd) td {
    background-color: #F0F0F0;
    border: 5px solid #FFF;
}


/* === 恒久対応：比較表＆入力UI＆診断結果強調＆デバッグ行非表示 === */

/* 比較表のPC横スクロール＋左列sticky＋長文折返し（全ブレイクポイントで有効） */
.um-table-wrap { 
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.um-table--compare {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: auto;   /* 固定幅で潰れない */
  min-width: 720px;     /* 多列でも横スクロール */
}

.um-table--compare th,
.um-table--compare td {
  min-width: 160px;
  vertical-align: top;
  white-space: normal;     /* 折返し許可 */
  word-break: break-word;  /* 長い語も折返し */
  overflow-wrap: anywhere; /* どこでも折返し */
  padding: .5rem .75rem;
}

.um-table--compare thead th {
  position: sticky; top: 0; z-index: 3;
  background: #ffb74c;
  color: #454545;
  text-align: center;
}

.um-table--compare [scope="row"] {
  position: sticky; left: 0; z-index: 2;
  background: #ffb74c;
  color: #454545;
  box-shadow: 1px 0 0 #e5e5e5 inset;
}


/* ===== Chart & Table ===== */
.um-chart canvas{
  width:100%;
  height:320px;
  display:block;
  }
.um-table{
  width:100%;
  border-collapse:collapse
  }
.um-table th,.um-table td{
  border:5px solid #FFFFFF;
  padding:.5rem .5rem;
  text-align:left;
  }
.um-table th{
  /*background:#F99500;*/
cursor:pointer;
}
.um-table th[aria-sort="ascending"]::after{content:" ▲";font-size:.85em}
.um-table th[aria-sort="descending"]::after{content:" ▼";font-size:.85em}


/* 比較表（全ブレイクポイントで左列固定＋横スクロール） */
.um-table-wrap { 
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.um-table--compare {
  border-collapse: separate;     /* sticky安定化 */
  border-spacing: 0;
  table-layout: auto;            /* 可読性優先（固定幅での潰れを回避） */
  min-width: 720px;              /* 列が多くても横スクロール */
}

.um-table--compare th,
.um-table--compare td {
  min-width: 160px;
  vertical-align: top;
  white-space: normal;          /* 必ず折り返す */
  word-break: break-word;       /* 長文を折り返す */
  overflow-wrap: anywhere;      /* 英数も折り返す */
  padding: .5rem .75rem;
}

/* 見出し行：常に上に固定 */
.um-table--compare thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  /*background: #F99500; */
  text-align: center;
}

/* 左端列：常に固定（全ブレイクポイント） */
.um-table--compare [scope="row"] {
  position: sticky;
  left: 0;
  z-index: 2;          /* ヘッダ(3)より低く、他セルより高く */
  background: #fff;
  box-shadow: 1px 0 0 #e5e5e5 inset; /* 視認性の縁 */
}

/* === スマホ表示改善（v1.7.7追加） === */
/* スマホ時に比較表の左列固定とセル内改行を両立 */
@media (max-width: 768px) {
  .um-table--compare th[scope="row"],
  .um-table--compare td[scope="row"] {
    position: sticky;
    left: 0;
    z-index: 2;
    /*background: #fff;*/
    white-space: normal; /* 改行を許可 */
    word-break: break-word; /* 長文を折り返す */
    max-width: 140px; /* 左列の最大幅を制限 */
    overflow-wrap: anywhere;
  }
}

/* === UM delta overrides（外部CSSを正：UM_CSS_FILENAME）=== */
/* 要件⑥：.um-box は table と二重枠にしない／スマホで圧迫しない */
.um-box{
  margin:.75rem 0;
  padding:.5rem 0;      /* 最小限 */
  border:none;
  background:transparent;
  line-height:1.7;
}
.um-title{
  margin:0 0 .5rem;
  font-size:1.05rem;
  font-weight:700;
  }

/* 要件⑦：テーブル基本スタイル */
.um-table{
  width:100%;
  border-collapse:collapse; }
.um-table th,.um-table td{
padding:.5rem .5rem;
		  background:#F0F0F0;
}
.um-table th{
  text-align:center;
  cursor:default;
}


/******************************************/
/******************************************/
/******************************************/
/******************************************/
/******************************************/


/*問い合わせフォームの入力欄の背景*/
.um-simple-form input[type="text"] {
background:#f2f2f2;
}
.um-simple-form input[type="email"] {
background:#f2f2f2;
}
 .um-simple-form input[type="tel"]{
background:#f2f2f2;
}
.um-simple-form textarea{
background:#f2f2f2;
}
/*グローバルメニューのテキストリンク色*/
.globalNavi__list li a {
color:#454545;
}
/*パンくずリストのテキストリンク色*/
.breadcrumb__item{
color:#454545;
}
/*フッターメニューのテキストリンク色*/
.bottomFooter__list li {
    color: #454545;
		margin-bottom: 2rem;
}

/* フッターメニューのベース */
.bottomFooter__navi .bottomFooter__list{
  display:flex;
  flex-wrap:wrap;                 /* 画面幅が狭い時に自動で折り返し */
  gap: 0.5rem 1.25rem;            /* 行間(縦) 0.5rem・項目間(横) 1.25rem */
  list-style:none;
  margin:0;
  padding:0;
}

/* リンクのタップしやすさ確保（上下に余白） */
.bottomFooter__navi .bottomFooter__list a{
  display:inline-block;
  padding: .25rem 0;
  text-decoration:none;
}

/* 横幅に応じてゆるく中央寄せ（任意） */
.bottomFooter__navi .bottomFooter__list{
  justify-content:center;         /* 左寄せにしたい場合は flex-start に */
}

/* モバイルで縦積みにする場合（任意） */
@media (max-width: 480px){
  .bottomFooter__navi .bottomFooter__list{
    gap:.5rem;                     /* 文字の詰まり防止に少し狭める */
  }
  .bottomFooter__navi .bottomFooter__list{
    justify-content:flex-start;    /* モバイルは左寄せに */
  }
}


/* gapに非対応な古い環境向けフォールバック（任意） */
@supports not (gap: 1rem){
  .bottomFooter__navi .bottomFooter__list li + li{ margin-left:1.25rem; }
  .bottomFooter__navi .bottomFooter__list li{ margin-bottom:.5rem; }
}

.wp-block-button a {
color:#FFFFFF;
}

.content ul > li::before {
display:none;
}

.content ol > li::before {
    color: #FFF;
}
.content ol>li:before {
    background: #8DB3F9;
    border:none;
    color: #FFF;
}