/* ========== 会社概要ページ専用 CSS ========== */

/* ページタイトル下のリード文 */
.about-lead{
  max-width:760px;
  margin:0 auto 60px;
  text-align:center;
  font-size:16px;
  line-height:2;
  color:var(--text-dark);
  letter-spacing:1px;
}

/* 会社概要テーブル */
.about-section{
  padding:20px 20px 80px;
  background:#fff;
}
.about-section h2{
  font-size:28px;
  color:var(--brand-blue);
  letter-spacing:3px;
  text-align:center;
  margin:0 0 40px;
  font-family:"じゅん 501",sans-serif;
}
.about-table-wrap{
  max-width:880px;
  margin:0 auto;
}
.about-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  border:1px solid #b8d3df;
  border-radius:8px;
  overflow:hidden;
}
.about-table th,
.about-table td{
  padding:18px 20px;
  font-size:15px;
  color:var(--text-dark);
  border-bottom:1px solid #e0e8eb;
  text-align:left;
  font-family:"じゅん 501",sans-serif;
  line-height:1.8;
  vertical-align:top;
}
.about-table th{
  background:#cfe6ee;
  width:28%;
  font-weight:700;
  letter-spacing:1px;
  border-right:1px solid #b8d3df;
}
.about-table tr:last-child th,
.about-table tr:last-child td{
  border-bottom:none;
}
.about-table tbody tr:nth-child(even) td{
  background:#f5fafc;
}

/* 地図埋め込み */
.about-map-wrap{
  max-width:880px;
  margin:32px auto 0;
  border-radius:8px;
  overflow:hidden;
  border:1px solid #b8d3df;
  background:#eff8fd;
  aspect-ratio:16/9;
}
.about-map-wrap iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

/* セクション見出し */
.about-subtitle{
  max-width:880px;
  margin:48px auto 16px;
  padding:10px 16px;
  font-size:20px;
  color:#fff;
  background:var(--brand-blue);
  border-radius:6px;
  letter-spacing:2px;
  font-family:"じゅん 501",sans-serif;
}

/* 資格・許可リスト */
.about-licenses{
  max-width:880px;
  margin:0 auto;
  padding:24px 28px;
  background:#eff8fd;
  border:1px solid #b8d3df;
  border-radius:8px;
  list-style:none;
}
.about-licenses li{
  padding:8px 0 8px 24px;
  position:relative;
  font-size:15px;
  line-height:1.9;
  color:var(--text-dark);
  border-bottom:1px dashed #c8d8df;
}
.about-licenses li:last-child{border-bottom:none;}
.about-licenses li::before{
  content:"";
  position:absolute;
  left:0;
  top:18px;
  width:10px;height:10px;
  background:var(--brand-blue);
  border-radius:50%;
}

/* 対応エリア */
.about-areas{
  max-width:880px;
  margin:0 auto;
  padding:24px 28px;
  background:#fff;
  border:1px solid #b8d3df;
  border-radius:8px;
  font-size:14px;
  line-height:2;
  color:var(--text-dark);
}

/* 決済方法 */
.about-payment{
  max-width:880px;
  margin:0 auto;
}
.about-payment p{
  font-size:15px;
  line-height:2;
  color:var(--text-dark);
  margin:0 0 16px;
}

/* ========== タブレット (≤991.98px) ========== */
@media (max-width: 991.98px){
  .about-section h2{font-size:24px;}
  .about-subtitle{font-size:18px;}
}

/* ========== スマホ (≤767.98px) ========== */
@media (max-width: 767.98px){
  .about-section{padding:10px 16px 60px;}
  .about-section h2{font-size:22px;}
  .about-lead{font-size:14px;line-height:1.9;margin-bottom:40px;}
  .about-subtitle{font-size:16px;padding:8px 12px;margin:32px auto 12px;letter-spacing:1px;}
  .about-table th,
  .about-table td{
    display:block;
    width:100%;
    border-right:none;
    padding:12px 14px;
    font-size:13px;
  }
  .about-table th{
    border-bottom:1px solid #b8d3df;
    text-align:left;
  }
  .about-table tr:last-child th{border-bottom:1px solid #b8d3df;}
  .about-licenses{padding:16px 18px;}
  .about-licenses li{font-size:13px;}
  .about-areas{padding:16px 18px;font-size:12px;line-height:1.9;}
  .about-payment p{font-size:13px;line-height:1.9;}
  .about-map-wrap{margin-top:24px;aspect-ratio:4/3;}
}
