@charset "UTF-8";
/* ==========================================================================
   会社情報ページ専用スタイル
   - ページ全体は v2-style.css の部品で組む。
   - v2 に無い「会社概要の表」「地図の枠」と、カード内の余白だけをここに置く。
   - 色・角丸・影は v2 のトークン（--c-*, --radius*, --shadow*）を使う。
   - すべて .company-page でスコープし、他ページに影響させない。
   ========================================================================== */

/* 会社概要の表 */
.company-page .co-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--c-border-light);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}
.company-page .co-table th,
.company-page .co-table td {
  padding: var(--sp-5) var(--sp-6);
  border-bottom: 1px solid var(--c-border-light);
  text-align: left;
  vertical-align: top;
  font-size: 15px;
  line-height: 1.8;
}
.company-page .co-table tr:last-child th,
.company-page .co-table tr:last-child td { border-bottom: 0; }
.company-page .co-table th {
  width: 180px;
  background: var(--c-bg-gray);
  color: var(--c-heading);
  font-weight: 700;
  white-space: nowrap;
}
.company-page .co-table td { color: var(--c-text); }
.company-page .co-table ul { margin: 0; padding-left: 1.2em; }
.company-page .co-table li + li { margin-top: 4px; }

/* 製品・実績カード内の余白（v2 の .feature-card p は margin 0 のため） */
.company-page .feature-card { display: flex; flex-direction: column; }
.company-page .feature-card p + p,
.company-page .feature-card p + .feature-row__check,
.company-page .feature-card .feature-row__check + p { margin-top: var(--sp-3); }
.company-page .feature-card .co-card__label {
  display: inline-block;
  align-self: flex-start;
  margin-bottom: var(--sp-3);
}
.company-page .feature-card .co-card__media { margin-bottom: var(--sp-5); }
.company-page .feature-card .co-card__meta {
  font-size: 13px;
  font-weight: 700;
  color: var(--c-primary);
  margin-bottom: var(--sp-3);
}
.company-page .feature-card .co-card__link { margin-top: auto; padding-top: var(--sp-5); }
.company-page .co-subhead { margin: var(--sp-10) 0 var(--sp-6); font-size: 20px; }
.company-page .co-subhead:first-of-type { margin-top: 0; }

/* 受賞歴のエンブレム */
.company-page .co-emblem { height: 110px; width: auto; margin-top: var(--sp-3); }

/* アクセスの地図 */
.company-page .co-map {
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--c-border-light);
  box-shadow: var(--shadow-sm);
  background: var(--c-bg-gray);
}
.company-page .co-map iframe { display: block; width: 100%; height: 100%; border: 0; }
.company-page .co-address { text-align: center; margin-bottom: var(--sp-6); }

@media (max-width: 640px) {
  .company-page .co-table th,
  .company-page .co-table td { display: block; width: 100%; }
  .company-page .co-table th { border-bottom: 0; padding-bottom: var(--sp-2); }
  .company-page .co-table td { padding-top: var(--sp-2); }
  .company-page .co-map { aspect-ratio: 4 / 3; }
}
