/* 企業情報：PC 2カラム／SP 1カラム。文字サイズはpxで上限を設定。 */
#company .company-profile { margin: 0 0 120px; }
#company .company-profile-rows { margin-top: 60px; }
#company .company-profile-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0 0 20px; overflow: hidden; }
#company .company-profile-row:last-child { margin-bottom: 0; }
#company .company-profile-panel { min-width: 0; margin: 0; padding: 0; }
#company h3.company-profile-panel { line-height: 0; }
#company .company-profile-panel img { display: block; width: 100%; max-width: 100%; height: 100%; object-fit: cover; margin: 0; }
#company .company-profile-copy { display: flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 0; aspect-ratio: 1121 / 641; padding: 32px 9%; background: center / cover no-repeat; container-type: inline-size; }
#company .company-profile-copy--mission { background-image: url('../images/company/mission_02@2x.png'); }
#company .company-profile-copy--vision { background-image: url('../images/company/vision_02@2x.png'); }
#company .company-profile-copy--value { background-image: url('../images/company/value_02@2x.png'); }
#company .company-profile-text { width: 100%; max-width: 420px; text-align: left; line-height: 1.7; color: #455e78; overflow-wrap: anywhere; }
#company .company-profile-lead { margin: 0; font-size: clamp(16px, 1.35vw, 22px); font-weight: 700; line-height: 1.9; letter-spacing: .03em; }
#company .company-profile-values { margin: 0; }
#company .company-profile-values dt { margin: 0 0 3px; font-size: 20px; font-weight: 700; line-height: 1.4; }
#company .company-profile-values dd { margin: 0 0 16px; font-size: 14px; line-height: 1.7; color: #222; }
#company .company-profile-values dd:last-child { margin-bottom: 0; }
@supports (font-size: 1cqw) {
  #company .company-profile-lead { font-size: clamp(16px, 5cqw, 22px); }
  #company .company-profile-values dt { font-size: clamp(18px, 5cqw, 22px); }
  #company .company-profile-values dd { font-size: clamp(13px, 3.5cqw, 16px); }
}
/* 背景は静止。文字だけ右から左に一度表示。 */
#company .company-profile-reveal.is-reveal-ready { opacity: 0; transform: translateX(80px); transition: opacity 1.2s ease, transform 1.2s cubic-bezier(.22, 1, .36, 1); }
#company .company-profile-reveal.is-reveal-ready.is-visible { opacity: 1; transform: translateX(0); }
@media screen and (max-width: 767px) {
  #company .company-profile { margin-bottom: 60px; }
  #company .company-profile-rows { margin-top: 35px; }
  #company .company-profile-row { grid-template-columns: minmax(0, 1fr); margin-bottom: 24px; }
  #company .company-profile-panel img { height: auto; }
  #company .company-profile-copy { padding: 32px 9%; }
  #company .company-profile-lead { font-size: 18px; }
  /* SP：ミッション・ビジョンは中央揃え */
  #company .company-profile-copy--mission .company-profile-text,
  #company .company-profile-copy--vision .company-profile-text { text-align: center; }
  /* SP：バリューの見出し・本文も中央揃え */
  #company .company-profile-copy--value .company-profile-text { width: 100%; max-width: 420px; margin-inline: auto; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  #company .company-profile-reveal.is-reveal-ready { opacity: 1; transform: none; transition: none; }
}
