@charset "UTF-8";

/* 会社概要ページ専用。見出し帯・お問い合わせ帯など新デザイン共通の部品は home-base.css */

.about-section { padding-block: clamp(64px, 7.5vw, 112px); }
.about-profile-section { padding-top: 0; }
.about-profile-section .about-grid { padding-top: clamp(64px, 7.5vw, 112px); border-top: 1px solid var(--home-rule); }
.about-grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(32px, 5vw, 80px); }
.about-heading h2 { margin-top: 12px; font-size: clamp(26px, 2.6vw, 38px); font-weight: 700; line-height: 1.45; }

.about-statement { font-size: clamp(30px, 3.4vw, 49px); font-weight: 700; line-height: 1.45; }
.about-philosophy .about-statement-sub { margin-top: clamp(18px, 1.8vw, 26px); font-size: clamp(16px, 1.5vw, 22px); font-weight: 700; line-height: 1.85; }
.about-philosophy .about-philosophy-text { margin-top: clamp(26px, 2.6vw, 38px); padding-top: clamp(26px, 2.6vw, 38px); border-top: 1px solid var(--home-rule); font-size: clamp(14px, 1.15vw, 17px); line-height: 2.05; color: #454545; }

.about-profile { border-top: 1px solid var(--home-ink); font-size: clamp(14px, 1.15vw, 17px); line-height: 1.9; }
.about-profile > div { display: grid; grid-template-columns: clamp(108px, 11vw, 170px) minmax(0, 1fr); gap: 24px; padding-block: clamp(20px, 2vw, 28px); border-bottom: 1px solid var(--home-rule); }
.about-profile dt { font-weight: 700; }
.about-profile .home-text-link { margin-top: 14px; font-size: clamp(13px, 1.04vw, 15px); }
.about-business { list-style: none; counter-reset: business; }
.about-business li { position: relative; padding-left: 2.7em; counter-increment: business; }
.about-business li + li { margin-top: 12px; }
.about-business li::before { content: counter(business, decimal-leading-zero); position: absolute; top: .2em; left: 0; color: var(--home-red); font-family: var(--home-latin); font-size: .85em; font-weight: 700; letter-spacing: .08em; }

@media (max-width: 900px) {
    .about-section { padding-block: 56px; }
    .about-profile-section { padding-top: 0; }
    .about-profile-section .about-grid { padding-top: 56px; }
    .about-grid { grid-template-columns: 1fr; gap: 28px; }
    .about-heading h2 { font-size: 26px; }
    .about-statement { font-size: clamp(28px, 8vw, 40px); }
    .about-profile > div { grid-template-columns: 1fr; gap: 4px; padding-block: 18px; }
}
