/*----------
	components override
----------*/
.l-title-lv4 {
	background-color: #FFF7EF;
  padding: 20px 0 40px;
}

.c-bg-rect::before {
	background: #FFF7EF;
}

.c-button__inner,
.l-infosession-schedule .c-button-container__item .c-button__inner {
	border-color: #ED963E;
	color: #ED963E;
}
@media (min-width: 768px) {
	.c-button__inner:hover {
		background-color: #ED963E;
	}
}

.c-button--enter .c-button__inner {
	background-color: #ED963E;
}

.c-qa::before {
	background-color: #FFF7EF;
}
.c-qa__a::before {
	color: #ED963E;
}

.c-button-tab__item > a,
.c-button-tab__item > button {
	border-bottom-color: #ED963E;
}
.c-button-tab__item > a.active,
.c-button-tab__item > button.active {
	background-color: #ED963E;
}

.c-infosession-list__title {
	color: #ED963E;
}
.c-infosession-list__cond > li.active > button {
	border-bottom-color: #ED963E;
	color: #ED963E;
}
.c-infosession-list__cond > li.active > button::before {
	background-color: #ED963E;
}
@media (min-width: 768px) {
	.c-infosession-list {
		border-top-color: #ED963E;
	}
}

/*----------
	cia header & nav
----------*/
@media (min-width: 768px) {
	.l-mainnav-cia__global > ul > li > a.current, .l-mainnav-cia__global > ul > li > a:hover {
		background-color: #ED963E;
	}
}

/*----------
	cia home
----------*/
.s-subhome-subtitle::before {
	background-color: #ED963E;
}

.s-subhome-overview {
	background-color: #ED963E;
	background-image: url("/cia/images/home/overview-bg.jpg");
}
.s-subhome-overview__inner {
	background-color: #ED963E;
	background-image: url("/cia/images/home/overview-bg2.png");
}
@media (min-width: 768px) {
	.s-subhome-overview__inner {
		background-color: transparent;
	}
}

/*--------------------
	Common layout
---------------------*/

/*--------------------
	link 
---------------------*/

a, button {
  transition: color 0.2s;
}

a:hover img {
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
opacity: 0.8;
}

.pageLinkWrap .pageLink li a:hover {
  background-color: #137dc7;
  color: #fff;
}

.pageLinkWrap {
margin-top: 41px;
}
.pageLinkWrap .pageLink {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
border-right: 1px solid #137dc7;
border-top: 1px solid #137dc7;
margin-bottom: 60px;
}
.pageLinkWrap .pageLink.pageLink {
margin-bottom: 10px;
}
.pageLinkWrap .pageLink li {
flex: 1;
text-align: center;
border-left: 1px solid #137dc7;
border-bottom: 1px solid #137dc7;
background: #e6f7ff;
}
.pageLinkWrap .pageLink li a {
display: block;
width: 100%;
padding: 10px;
padding-bottom: 30px;
color: #137dc7;
font-size: 1.6rem;
position: relative;
font-weight: 500;	
}
.pageLinkWrap .pageLink li a::after {
content: "";
width: 8px;
height: 8px;
border-top: solid 2px #137dc7;
border-right: solid 2px #137dc7;
position: absolute;
right: 0;
left: 0;
margin: auto;
top: 0;
bottom: -25px;
transform: rotate(135deg);
transition: 0.2s;
}
.pageLinkWrap .pageLink li a:hover::after {
border-top: solid 2px #FFFFFF;
border-right: solid 2px #FFFFFF;
}

@media (max-width: 768px) {
.pageLinkWrap {
  margin-top: 7vmin;
}
.pageLinkWrap .pageLink {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 7vmin;
  border: none;
}
.pageLinkWrap .pageLink li {
  width: 49%;
  margin-bottom: 2vmin;
  border: 1px solid #137dc7;
  flex: none;
}
.pageLinkWrap .pageLink li a {
  font-size: 3.3vmin;
  text-align: center;
  padding-bottom: 5vmin;
  padding-left: 0;
  padding-right: 0;
}
.pageLinkWrap .pageLink li a::after {
  bottom: -5vmin;
}
.pageLinkWrap .pageLink.pageLink {
  margin-bottom: 0;
}
}


/*--------------------
CTA 
---------------------*/
.c_yellow {
  color: #fff20d;
  font-weight: bold;
}

/* --------------------------------------------------------------------
/* CTA
-------------------------------------------------------------------- */
.ctaAreaWrap {
  margin-bottom: 30px;
}
.ctaArea {
  background-color: #004896;
  padding: 20px 0 30px;
}
.ctaArea .box {}
.ctaArea .box.flexBox {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.ctaArea .box.flexBox .medal {
  margin-right: 15px;
  width: 25%;
  text-align: center;
}
.ctaArea .box.flexBox .medal img {
  width: auto;
}
.ctaArea .box.flexBox .txtArea {}
.ctaArea .box .txt {
  font-size: 26px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  margin-bottom: 15px;
}
.ctaArea .box .txt span {
  font-size: 14px;
  display: block;
  font-weight: normal;
}
.ctaArea .box .txt span sup {
	font-size: 10px;
	position: relative;
	top: -9px;
}
.ctaArea .box .btn {
  text-align: center;
  margin-bottom: 15px;
}
.ctaArea .box .btn img {
  max-width: 100%;
  width: auto;
}
.ctaArea .box .linkBox {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 550px;
  margin: auto;
}
.ctaArea .box .linkBox .txtBtn {
  color: #fff;
}
.ctaArea .box .linkBox .txtBtn span {
	font-size: 18px;
	position: relative;
	left: 7px;
}
.ctaArea .box .linkBox .txtBtn a {
  color: #fff;
  border: 1px solid;
  width: 280px;
  display: block;
  text-align: center;
  border-radius: 4px;
  padding: 7px 10px;
  position: relative;
}
.ctaArea .box .linkBox .txtBtn a::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  left: 15px;
  top: 43%;
  transform: rotate(45deg);
}
.ctaArea .box .linkBox .whatTxt {}
.ctaArea .box .linkBox .whatTxt::before {
  content: "?";
  background-color: #fff;
  padding: 3px 10px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 10px;
  font-weight: bold;
}
.ctaArea .box .linkBox .whatTxt a {
  color: #fff;
  text-decoration: underline;
	font-size: 16px;
}
.ctaAreaWrap .campaignArea {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  text-align: center;
  margin-bottom: 10px;
}
.ctaAreaWrap .campaignArea .l_txt {
  width: 55%;
  text-align: right;
  padding: 10px 30px;
  font-size: 24px;
  background-color: #137dc7;
  color: #fff;
  font-weight: bold;
  position: relative;
  height: 50px;
  display: flex;
  justify-content: right;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.ctaAreaWrap .campaignArea .l_txt::before {
  content: "";
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 20px solid #137dc7;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -20px;
}
.ctaAreaWrap .campaignArea .l_txt span {
  font-size: 34px;
}
.ctaAreaWrap .campaignArea .r_txt {
  width: 45%;
  text-align: left;
  padding: 10px 30px;
  padding-left: 50px;
  font-size: 24px;
  font-weight: bold;
  height: 50px;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #f3f3f3;
}
.ctaAreaWrap .b_txt {
  font-size: 12px;
  color: #666666;
}
@media (max-width: 767px) {
  /**CTA**/
  .ctaAreaWrap {}
  .ctaArea {
    padding: 3vmin 0 4vmin;
  }
  .ctaArea .box {}
  .ctaArea .box.flexBox {
    position: relative;
  }
  .ctaArea .box.flexBox .medal {
    position: absolute;
    top: -30px;
    left: 0;
    width: 24vmin;
    display: block;
  }
  .ctaArea .box.flexBox .medal img {
    max-width: 100%;
  }
  .ctaArea .box.flexBox .txtArea {}
  .ctaArea .box.flexBox .txtArea .txt {
    text-align: right;
    position: relative;
    font-size: 5.6vmin;
    right: 2%;
  }
  .ctaArea .box.flexBox .txtArea .txt span {
    font-size: 3.6vmin;
    position: relative;
    left: 1.5%;
  }
  .ctaArea .box .txt {
    font-size: 6vmin;
  }
  .ctaArea .box .txt span {
    font-size: 4vmin;
  }
  .ctaArea .box .btn {}
  .ctaArea .box .btn img {}
  .ctaArea .box .linkBox {
    display: block;
    text-align: center;
  }
  .ctaArea .box .linkBox .txtBtn {}
  .ctaArea .box .linkBox .txtBtn a {
    margin: 0 auto 3vmin;
    padding: 5px 0 5px 0;
    width: 78%;
  }
	.ctaArea .box .linkBox .txtBtn span {
		font-size: 4vmin;
	}
  .ctaArea .box .linkBox .txtBtn a::before {}
  .ctaArea .box .linkBox .whatTxt {}
  .ctaArea .box .linkBox .whatTxt::before {}
  .ctaArea .box .linkBox .whatTxt a {
    font-size: 14px;
}
  .ctaAreaWrap .campaignArea {}
  .ctaAreaWrap .campaignArea .l_txt {
    font-size: 3.4vmin;
    padding: 1vmin;
    width: 65%;
  }
  .ctaAreaWrap .campaignArea .l_txt::before {
    content: "";
  }
  .ctaAreaWrap .campaignArea .l_txt span {
    font-size: 5.8vmin;
    display: inline-block;
    vertical-align: middle;
    line-height: 2;
    margin-bottom: 1.5vmin;
  }
  .ctaAreaWrap .campaignArea .r_txt {
    font-size: 4vmin;
    padding: 3vmin;
    padding-left: 9vmin;
    width: 35%;
  }
  .ctaAreaWrap .b_txt {
    font-size: 2.4vmin;
  }
}

/*** 2024.0306 add ***/
.c-table.tp1 thead th {
  background-color: #305496;
  border-color: #242424;
  color: #FFF;
}
.c-table.tp1 thead td {
  border-color: #242424;
}

.l-tp1 {
  color: #2e75b6;
  text-decoration: none;
}

.l-section .reason-box {
  width: 100%;
  background-color: #054895;
  padding: 40px 50px 30px;
  box-sizing: border-box;
  color: #FFF;
  margin-top: 40px;
}
.l-section .reason-box h3 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}
.l-section .reason-box p {
  font-weight: 14px;
  text-align: center;
  margin-bottom: 20px;
}
.l-section .reason-box .rsn-lst {
  display: flex;
  justify-content: space-between;
}
.l-section .reason-box .rsn-lst .rsn-lst-bx {
  width: 250px;
  border: 1px solid #FFF;
}
.l-section .reason-box .rsn-lst .rsn-lst-bx::after {
  display: block;
  content: '';
  clear: both;
}

.l-section .reason-box .rsn-lst .rsn-lst-bx figure img {
  width: 100%;
}
.l-section .reason-box .rsn-lst .rsn-lst-bx p {
  font-size: 14px;
  color: #FFF;
  font-weight: bold;
  padding: 5px 10px;
  box-sizing: border-box;
  border-top: 1px solid #FFF;
  margin-bottom: 0;
}
.l-section .reason-box .rsn-lst .rsn-lst-bx p span {
  /* display: inline-block; */
  color: #FFF;
  float: right;
}

@media (max-width: 768px) {
	
  .l-section .reason-box {
    padding: 20px 20px 10px;
  }
  .l-section .reason-box h3 {
    font-size: 20px;
  }
  .l-section .reason-box p {
    font-weight: 12px;
  }
  .l-section .reason-box .rsn-lst {
    display: flex;
    flex-flow: column;
    justify-content: center;
    margin: auto;
  }
  .l-section .reason-box .rsn-lst .rsn-lst-bx {
    width: 90%;
    margin:0 auto 20px;
  }

  .l-section .reason-box .rsn-lst .rsn-lst-bx p {
    font-size: 12px;
  }
 
}

/* entry tuition */
.c-table .t-es {
  width: 100%;
}
.c-table .t-es th {
  background-color: #a6c9ec;
  color: #000;
  text-align: center;
}
.c-table .t-es th span {
  display: inline-block;
  text-indent: -30px;
}
.c-table .t-es th span::before {
  display: inline-block;
  content: "";
  background: url("/cia/images/entry/tuition/ico_crown.png");
  width: 24px;
  height: 18px;
  background-size: 100% 100%;
  margin: 2px 4px 0 0;
}
.c-table .t-es th.es-h {
  background-color: #f3f3f3;

}
.c-table .t-es td {
  text-align: center;
  vertical-align: top;
}
.c-table .t-es td span {
  display: inline-block;
  padding: 2px 10px;
  background-color: #ed963e;
  color: #fff;
  font-weight: bold;
  margin-bottom: 10px;
}
.c-table .t-es td .c-p-01 {
  margin-bottom: 20px;
}
.c-table .t-es .c-d-01 {
  text-align: left;
  padding: 30px 0;
}
.c-table .t-es .c-d-01 dl {
  display: flex;
  line-height: 0;
}
.c-table .t-es .c-d-01 dl dt {
  display: block;
    text-align: right;
    width: 80px;
    margin: 0 30px 0 0;
    padding: 0;
}
.c-table .t-es .c-d-01 dl dd {
  display: inline-block;
  text-align: left;
}


.l-section .b-st {
  text-align: center;
  margin-top: 80px;
}
.l-section .b-st a {
  display: block;
  width: 280px;
  background-color: #0066c0;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 7px;
  padding: 25px 20px 25px 20px;
  box-sizing: border-box;
  text-align: center;
  margin: 0 auto;
  box-shadow: 1px 1px 1px 1px rgba(2, 71, 150, .7);
  transition: all 0.2s;
}
.l-section .b-st a:hover {
  opacity: .9;
}
.l-section .b-st a span {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 15px 0 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.l-content.l-ct-01 {
  padding-bottom: 20px;
}

.reason-box.l-et {
  margin-bottom: 40px;
}

/*--------------------
	Common layout
---------------------*/
/*
 * ボタン
 */
 .c-button-tab__infosession__item > a.active, .c-button-tab__infosession__item > button.active {
	background-color: #ED963E;
}
/*
* タブLINE
*/
.l-infosession-schedule .c-infosession-list {
	border-top: 2px solid #ED963E;
}

.c-tm {
	display: table;
}

.c-tm .t-tm {
	vertical-align: top;
	font-size: 10px;
}

/*----------
	2025.05 講師紹介（一覧ページ）
----------*/

@media (min-width: 768px) {
  .c-button__inner:hover {
    background-color: #ED963E;
  }
  .c-imageset__image {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: calc(35% - 16px);
		margin-right: 32px;
	}
  .l-title-lv4 {
		padding: 20px 0 40px;
	}
	.l-title-lv4__inner {
		padding-left: 32px;
		padding-right: 32px;
	}
  .l-layout-regular .l-section > [class^=c-] {
    margin-top: 40px;
  }
}

/*----------
	講師紹介（詳細ページ）
----------*/
.lec-badge {
	display: inline-block;
	height: 32px;
	vertical-align: middle;
	background-color: #ED963E;
  border-radius: 5px;
}
.lec-badge > span {
	display: block;
	max-width: 100%;
	min-width: 50px;
	padding: 10px 10px;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 12px;
	color: #fff;
}
.lec-badge__gry {
  background-color: #e0e0e0;
  padding: 1px 10px;
}
.c-separator {
	display: block;
	margin: 10px auto;
	border-top: 1px solid #ddd;
}

/* ==============================================
   「選ばれる理由」の2番目の数字を青色にする修正
   ============================================== */
.s-subhome-reason__list .c-grid__item:nth-child(2) .s-subhome-reason__list__no {
    color: #004896; /* アビタスブルー */
}

/* ===============================
   CIA トップページ比較表専用スタイル
   =============================== */

/* --- 1. 全体の枠組み --- */
.cia-comp-table.cp_container {
    width: 898px;
    /* ★ここを60pxから80pxに変更（タイトル上に+20pxの余白を追加） */
    margin: 80px auto;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #333;
    box-sizing: border-box;
    line-height: 1.6;
}

/* --- 2. タイトルエリア --- */
.cia-comp-table #compare h3 {
    text-align: center;
    font-size: 58px;
    font-weight: bold;
    margin-bottom: 30px;
    color: #333;
    border: none;
    line-height: 1.2;
}

.cia-comp-table .cp_lead {
    text-align: center;
    margin-bottom: 50px;
}
.cia-comp-table .cp_lead_main {
    font-size: 20px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: baseline;
    flex-wrap: wrap;
}
.cia-comp-table .medium {
    font-size: 28px;
    background: #000;
    color: #fff;
    padding: 5px 15px;
    margin: 0 10px;
}
.cia-comp-table .cp_lead_sub {
    font-size: 20px;
    display: block;
    margin-top: 10px;
}

/* --- 3. テーブル基本設定 --- */
.cia-comp-table .cp_scroll_box {
    width: 100%;
    margin-bottom: 30px;
}

.cia-comp-table .cp_table {
    width: 898px;
    border-collapse: separate; 
    border-spacing: 0;
    table-layout: fixed;
    margin: 0 auto;
    border: none;
}

/* --- 4. セルごとのデザイン設定 --- */

/* 共通設定 */
.cia-comp-table .cp_table th, 
.cia-comp-table .cp_table td {
    padding: 20px;
    vertical-align: middle;
    box-sizing: border-box;
    color: #333;
}

/* ----------------------------------
   ★ヘッダー行（1行目）★
   ---------------------------------- */

/* ① 左上の空欄セル */
.cia-comp-table .cp_table tr:first-child th:first-child {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #fff; 
}

/* ② 中央：アビタス（ロゴ） */
.cia-comp-table .cp_table th.abitus {
    width: 385.56px;
    background-color: #004896; /* 背景：青 */
    color: #fff;
    height: 141px;
    
    /* 周りの黒い枠線を削除（下線のみ白で残す） */
    border: none;
    border-bottom: 1px solid #fff;
    
    vertical-align: middle;
    position: relative;
    z-index: 2;
}
.cia-comp-table .cp_table th.abitus img {
    width: 180px;
    max-width: 100%;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

/* ③ 右：他校 */
.cia-comp-table .cp_table th.other {
    width: 332.64px;
    background-color: #383838;
    color: #fff;
    text-align: center;
    font-size: 16px;
    height: 141px;
    border-top: 40px solid #fff; 
    border-bottom: 1px solid #383838;
    border-right: none;
    border-left: none;
    background-clip: padding-box;
    position: relative;
}
/* 他校ヘッダー右端の線 */
.cia-comp-table .cp_table th.other::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #383838;
}

/* ----------------------------------
   データ行（2行目以降）
   ---------------------------------- */

/* ① 左列（項目名） */
.cia-comp-table .cp_table tbody th {
    width: 179.8px;
    background-color: #383838;
    color: #fff;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    border-left: 1px solid #383838;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #383838;
}
.cia-comp-table .cp_table tr:last-child th {
    border-bottom: 1px solid #383838;
}

/* ② 中央列：アビタス */
.cia-comp-table .cp_table td.abitus {
    background-color: #fff;
    border-right: 1px solid #383838;
    border-bottom: 1px solid #383838;
    border-left: none; 
}

/* ③ 右列：他校 */
.cia-comp-table .cp_table td:not(.abitus) {
    background-color: #dddddd;
    border-right: 1px solid #383838;
    border-bottom: 1px solid #383838;
    border-left: none;
}


/* --- 5. アイコン・テキスト --- */
.cia-comp-table .cp_row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
}

.cia-comp-table .cp_icon {
    font-size: 30px;
    color: #333;
    margin-right: 20px;
    line-height: 1;
    flex: 0 0 auto;
    transform: scale(1.4);
    font-weight: normal;
}
.cia-comp-table .cp_table td:not(.abitus) .cp_icon {
    color: #777; 
}
.cia-comp-table .cp_icon.icon-cross {
    font-family: Arial, sans-serif;
    transform: scale(1.4) translateY(1px);
}
.cia-comp-table .cp_icon.icon-triangle {
    transform: scale(1.1);
}

.cia-comp-table .cp_text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
}

.cia-comp-table .cp_bullet {
    display: block;
    position: relative;
    padding-left: 1.2em;
    margin-bottom: 8px;
    font-weight: normal;
}
.cia-comp-table .cp_bullet::before {
    content: "・";
    position: absolute;
    left: 0;
    font-weight: bold;
}
.cia-comp-table .cp_note {
    font-size: 12px;
    margin-top: 10px;
    color: #666;
}

/* ==============================================
   追加修正：青とグレーの間の白い線を強制表示
   ============================================== */
.cia-comp-table .cp_table th.abitus {
    position: relative; /* 念のため指定 */
}

/* アビタス（青）の右端に、白い線を上乗せして描画 */
.cia-comp-table .cp_table th.abitus::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;       /* 青い枠の右端に配置 */
    width: 1px;     /* 線の太さ */
    height: 100%;   /* 上下いっぱいに */
    background-color: #fff; /* 白い線 */
    z-index: 10;    /* 最前面に表示 */
}

/* ★修正：赤文字（PC・スマホ共通） */
.cia-comp-table .u-txt-caution {
    color: #E60000 !important;
    font-weight: bold;
    font-size: 15px !important;
    display: block;              /* 文字をブロック化して行間設定を効かせる */
    line-height: 1.4 !important; /* 行間を狭める（数値はお好みで 1.2～1.4） */
    margin-top: 5px;             /* 上の黒文字との隙間を少し空ける */
}

/* --- 6. スマホ対応 --- */
@media (max-width: 767px) {
    
    /* ▼▼ 全体の幅・余白 ▼▼ */
    .cia-comp-table.cp_container {
        width: 100%;
        padding: 0 20px; 
    }

    /* ▼▼ メインタイトル（比較で一目瞭然） ▼▼ */
    .cia-comp-table #compare h3 {
        font-size: 28px;
        margin-bottom: 20px;
    }

    /* ▼▼ リード文（ご指定の箇所）の調整 ▼▼ */
    /* 1. 帯のない文字（なぜ～ / それには～）を12pxに */
    .cia-comp-table .cp_lead_main,
    .cia-comp-table .cp_lead_sub {
        font-size: 12px;
        line-height: 1.6;
    }
    
    /* 2. 黒い帯の文字を14pxに */
    .cia-comp-table .medium {
        font-size: 14px;
        padding: 4px 10px; /* スマホ用に余白を少し調整 */
        margin: 0 5px;     /* 横の間隔を調整 */
    }


    /* ▼▼ テーブル設定（変更なし） ▼▼ */
    .cia-comp-table .cp_table { width: 100%; table-layout: auto; }
    
    .cia-comp-table .cp_table th:first-child { width: 15%; padding: 5px; }
    .cia-comp-table .cp_table th.abitus { width: 45%; height: auto; }
    .cia-comp-table .cp_table th.other { width: 40%; height: auto; border-top: 20px solid #fff; }
    
    .cia-comp-table .cp_table td { font-size: 12px; padding: 10px; }
    .cia-comp-table .cp_text { font-size: 12px; }
    
    .cia-comp-table .cp_row { display: block; text-align: center; }
    .cia-comp-table .cp_text { text-align: left; }
    .cia-comp-table .cp_icon { 
        display: block; margin: 0 auto 5px; 
        transform: none; font-size: 20px; 
    }
    .cia-comp-table .cp_table th.abitus img { width: 100px; }

    /* ▼▼ 赤文字の調整（変更なし） ▼▼ */
    .cia-comp-table .u-txt-caution {
        color: #E60000 !important;
        font-weight: bold;
        font-size: 14px !important;
        display: block;
        line-height: 1.3 !important;
        margin-top: 5px;
    }
}