@charset "utf-8";

/*--------------------------------------
　addParts01
---------------------------------------*/
.custom .addParts01 {
  margin-top: 8rem;
  background: url(img/lower_bottom_pic_pc.jpg) center top no-repeat;
  background-size: cover;
}

.custom .addParts01 .addInner {
  width: 1100px;
  margin: auto;
  padding: 2rem 0;
}

.custom .addParts01 .addTopArea {
  margin: 0 auto 2rem;
}

.custom .addParts01.sttl {
  text-align: center;
  font-size: 4rem;
  letter-spacing: 4px;
  margin: auto;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 1.5rem;
}

.custom .addParts01 .addTopArea .sttl small {
  font-size: 2.8rem;
  letter-spacing: 1px;
  font-weight: bold;
}

.custom .addParts01 .addTopArea .sttl .red {
  color: #e3616a;
  border-bottom: none;
}

.custom .block_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}

.custom .block {
  width: calc((100% - 4.4rem)/3);
  background: #fff;
  padding: 3.2rem 2.4rem;
  border: solid 15px #a8e3de;
}

.custom .companyName {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  padding: 0 0 2rem 0;
  color: #01159a;
}

.custom .plan_tit {
  font-size: 2.7rem;
  background: #51c7bd;
  color: #fff;
  padding: 2rem 0;
  text-align: center;
  line-height: 1.2;
}

.custom .plan_tit span {
  font-size: 1.8rem;
  color: #fff;
  border: none;
  font-weight: normal;
}

.custom .price {
  font-size: 2.8rem;
  color: #da5b63;
  letter-spacing: 1px;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem;
  border: 2px solid #eb838a;
}

.custom .price span {
  font-size: 1.4rem;
  color: #333;
  border-bottom: none;
}

.custom .check_li {
  margin: 1rem 0;
  border-radius: 10px;
  padding: 10px 5px;
  background-size: 12px 12px;
  background-color: #fff6df;
  background-image: linear-gradient(-45deg, #fff 25%, transparent 25%, transparent 50%, #fff 50%, #fff 75%, transparent 75%, transparent);
}

.custom .check_li .li_tit {
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 1.5rem;
}

.custom .check_li ul {
  width: 100%;
}

.custom ul li {
  line-height: 1.5;
  padding: 0.8rem 0.5rem;
  position: relative;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  width: calc((100% - .5rem)/2);
  float: left;
  margin: 0 0.5rem 0.7rem 0;
  background: #51c7bd;
}

.custom ul li.on {
  background: #dbdbdb;
}

.custom ul li:nth-child(even) {
  margin: 0 0 0.7rem 0;
}

.custom .txt {
  margin: 2rem 0;
}

.custom .btn-internal {
  width: 100%;
  margin: auto;
}

.custom .btn-internal a {
  padding: 1.5rem 3rem;
  font-size: 1.5rem;
}

/* 1. 外枠：スマホの時だけ横スクロールを許可 */
.airboon-fixed-table {
  width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  margin: 20px 0 !important;
}

/* 2. テーブル本体：PCでは100%幅、スマホでは固定幅 */
.airboon-fixed-table table {
  display: table !important;
  width: 100% !important;
  /* 基本は100%（PC用） */
  table-layout: fixed !important;
  /* 列の比率を守る設定 */
  border-collapse: collapse !important;
}

/* スマホ（画面幅が850px以下の時）だけ、テーブルの横幅を固定してスクロールさせる */
@media screen and (max-width: 850px) {
  .airboon-fixed-table table {
    width: 850px !important;
    /* スマホでは850pxを維持 */
    min-width: 850px !important;
  }
}

/* 3. 縦並び（ブロック化）を防ぐリセット設定 */
.airboon-fixed-table thead,
.airboon-fixed-table tbody,
.airboon-fixed-table tr {
  display: revert !important;
}

.airboon-fixed-table th,
.airboon-fixed-table td {
  display: table-cell !important;
  padding: 12px 10px !important;
  border: 1px solid #ddd !important;
  font-size: 14px !important;
  vertical-align: middle !important;
  word-break: break-all !important;
}

/* 4. 各列の幅（PCでは比率、スマホではpxとして機能） */
.airboon-fixed-table th:nth-child(1),
.airboon-fixed-table td:nth-child(1) {
  width: 15% !important;
  min-width: 120px;
}

/* フィルター名 */
.airboon-fixed-table th:nth-child(2),
.airboon-fixed-table td:nth-child(2) {
  width: 25% !important;
  min-width: 200px;
}

/* 主な目的 */
.airboon-fixed-table th:nth-child(3),
.airboon-fixed-table td:nth-child(3) {
  width: 20% !important;
  min-width: 160px;
}

/* 素材 */
.airboon-fixed-table th:nth-child(4),
.airboon-fixed-table td:nth-child(4) {
  width: 40% !important;
  min-width: 250px;
}

/* 特徴 */

/* 装飾 */
.airboon-fixed-table th {
  background-color: #f8f9fa !important;
  font-weight: bold !important;
}

.airboon-fixed-table td::before {
  display: none !important;
  /* テーマのスマホ用ラベルを非表示 */
}

footer .areaInner .footBox {
  width: 100% !important;
  margin: 0 0 3.5rem 0 !important;
}

footer .areaInner .footBox .sttl {
  width: 100%;
  margin: 0 0 1.8rem;
  border-bottom: 1px solid #a8e3de;
}

footer .areaInner .footBox .sttl a {
  display: block;
  padding: 0.5rem 0 0.3rem 2rem;
  background: url(img/foot_arrow.svg) no-repeat left center;
  background-size: auto;
}

#category .addParts01 .addParts-title {
    background: unset;
    margin: 0 0 2rem;
    font-size: 4rem;
    padding-top: 0;
}
#category .addParts01 .addParts-title:after, .addParts01 .addParts-title:before {
    display: none;
}
#category .addParts01 .block .box-body .name {
    background: none;
    padding: 1rem;
    margin: 0;
}

/*----------------------------------------------------
    PCサイトcss
----------------------------------------------------*/
@media screen and (min-width: 481px) {
/*/////////////PC用のCSSをここに作成してください。/////////////*/

#category .addParts01 .addInner {
    width: 96%;
}

#category .addParts01 .block .box {
    width: calc((100% - 3.2rem) / 3);
}

#category .addParts01 .block .box-head .catch {
    font-size: 2.4rem;
}


}/*////////////////////PC用CSSここまで///////////////////*/


/*----------------------------------------------------
SPサイトcss
----------------------------------------------------*/
@media screen and (max-width: 480px) {
  /*/////////////SP用のCSSをここに作成してください。/////////////*/
  /*/////////////必ず中括弧の中に作成してください。/////////////*/
/* PC表示維持用テーブル */
.table-pc {
}

@media screen and (max-width: 480px) {
  .table-pc th,
  .table-pc td {
    display: table-cell !important;
    width: auto !important;
    border: 1px solid #d0d5dc !important;
  }

  .table-pc th {
    padding: 1rem 1.5rem;
    background: #f0f0f0;
    text-align: center;
  }

  .table-pc td {
    padding: 1rem 1.5rem;
    background: #fff;
  }
}	
	
	
	

  footer .areaInner .footBox {
    margin: 0 !important;
  }

  footer .areaInner .footBox .sttl {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #b5b5b5;
  }

  footer .areaInner .footBox .sttl a {
    padding: 1rem 3rem 1rem 4%;
    background: url(img/arrow_black_down.png) no-repeat right 1rem center;
    background-size: 1rem auto;
    font-size: 1.4rem;
    display: block;
  }
#category .addParts01 .addParts-title {
    font-size: 2.3rem;
    padding: 0;
}
}






.airboon-table-wrap {
  width: 100%;
  margin: 24px 0;
}

.airboon-table-scroll {
  width: 100%;
}

/* 既存CSSの崩れ対策 */
.airboon-compare-table {
  display: table !important;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
  border: 1px solid #d6e0e8;
  box-shadow: 0 2px 10px rgba(8, 55, 95, 0.08);
}

.airboon-compare-table thead {
  display: table-header-group !important;
}

.airboon-compare-table tbody {
  display: table-row-group !important;
}

.airboon-compare-table tr {
  display: table-row !important;
}

.airboon-compare-table th,
.airboon-compare-table td {
  display: table-cell !important;
  box-sizing: border-box;
  border: 1px solid #d6e0e8;
  padding: 14px 12px;
  vertical-align: top;
  font-size: 14px;
  line-height: 1.8;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: break-word;
}

/* 列幅 */
.airboon-compare-table .col-axis {
  width: 16%;
}
.airboon-compare-table .col-feature {
  width: 28%;
}
.airboon-compare-table .col-other {
  width: 28%;
}
.airboon-compare-table .col-judge {
  width: 28%;
}

/* ヘッダー */
.airboon-compare-table thead th {
  background: #0b4f7c;
  color: #ffffff;
  text-align: center;
  font-weight: 700;
  vertical-align: middle;
  white-space: normal;
  word-break: keep-all;
}

/* 左端見出し */
.airboon-compare-table tbody th {
  background: #f3f7fa;
  color: #0b4f7c;
  font-weight: 700;
  text-align: left;
}

/* 本文セル */
.airboon-compare-table td {
  background: #ffffff;
  color: #333333;
}

/* 判定マーク */
.airboon-compare-table .mark {
  display: inline-block !important;
  min-width: 1.9em;
  padding: 2px 8px;
  margin-right: 6px;
  border-radius: 999px;
  background: #f3d63f;
  color: #0b4f7c;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  vertical-align: baseline;
}

/* PCはそのまま収める */
@media screen and (min-width: 768px) {
  .airboon-table-scroll {
    overflow-x: visible;
  }

  .airboon-compare-table {
    min-width: 0;
  }
}

/* SPはPCと同じ形のまま横スクロール */
@media screen and (max-width: 767px) {
  .airboon-table-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .airboon-compare-table {
    width: 920px;
    min-width: 920px;
  }

  .airboon-compare-table th,
  .airboon-compare-table td {
    font-size: 14px;
    padding: 14px 12px;
  }
}