/* プロフィールセクション */
.profile-section{display:grid;grid-template-columns:420px 1fr;gap:72px;align-items:start}
.profile-photo-wrap{position:sticky;top:88px}
.profile-photo{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-l);background:var(--gray-50)}
.profile-photo img{width:100%;display:block;object-fit:cover}
.profile-card{background:var(--white);border-radius:var(--radius);padding:24px 28px;margin-top:20px;border:1px solid var(--gray-200);box-shadow:var(--shadow-s)}
.profile-card__name{font-family:var(--font-serif);font-size:22px;font-weight:700;color:var(--navy);margin-bottom:4px}
.profile-card__title{font-size:13px;color:var(--tiffany);font-weight:700;letter-spacing:.08em;margin-bottom:12px}
.profile-card__info{display:flex;flex-direction:column;gap:7px}
.profile-card__row{display:flex;gap:10px;font-size:13px;color:var(--gray-700)}
.profile-card__row dt{font-weight:700;color:var(--navy);min-width:60px;flex-shrink:0}

/* メッセージ */
.message-body{}
.message-lead{font-family:var(--font-serif);font-size:clamp(20px,2.5vw,30px);font-weight:700;color:var(--navy);line-height:1.5;letter-spacing:.04em}
.message-lead em{font-style:normal;color:var(--tiffany)}
.message-text{font-size:15px;color:var(--gray-700);line-height:2.1;margin-top:20px}
.message-quote{margin-top:28px;padding:24px 28px;background:var(--tiffany-pale);border-left:4px solid var(--tiffany);border-radius:0 10px 10px 0}
.message-quote__text{font-family:var(--font-serif);font-size:clamp(15px,1.7vw,20px);color:var(--navy);line-height:1.7;letter-spacing:.06em}
.message-quote__src{margin-top:10px;font-size:11px;color:var(--tiffany);font-weight:700;letter-spacing:.1em}

/* バリュー */
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.value-card{background:var(--white);border-radius:var(--radius);padding:28px 24px;border:1px solid var(--gray-200);box-shadow:var(--shadow-s);border-top:3px solid var(--tiffany);transition:box-shadow .2s,transform .2s}
.value-card:hover{box-shadow:var(--shadow-l);transform:translateY(-3px)}
.value-card__icon{font-size:28px;margin-bottom:14px}
.value-card__title{font-family:var(--font-serif);font-size:16px;font-weight:700;color:var(--navy);margin-bottom:8px}
.value-card__desc{font-size:13px;color:var(--gray-700);line-height:1.85}

/* 会社概要テーブル */
.info-table{width:100%;border-collapse:collapse;font-size:14px;margin-top:36px}
.info-table tr{border-bottom:1px solid var(--gray-200)}
.info-table th{padding:16px 20px;background:var(--tiffany-pale);color:var(--tiffany-deep);font-weight:700;text-align:left;width:150px;font-family:var(--font-serif);white-space:nowrap;border-right:2px solid var(--tiffany-light)}
.info-table td{padding:16px 20px;color:var(--gray-700);line-height:1.7}

/* 沿革 */
.history-list{margin-top:32px;display:flex;flex-direction:column;gap:0}
.history-item{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid var(--gray-100);align-items:flex-start}
.history-item:last-child{border-bottom:none}
.history-year{font-family:var(--font-serif);font-size:20px;font-weight:700;color:var(--tiffany);min-width:64px;flex-shrink:0;padding-top:1px}
.history-body{flex:1}
.history-title{font-family:var(--font-serif);font-size:16px;font-weight:700;color:var(--navy);margin-bottom:6px;line-height:1.5}
.history-desc{font-size:13.5px;color:var(--gray-700);line-height:1.85}
.history-biz{list-style:none;margin:12px 0 4px;display:flex;flex-wrap:wrap;gap:7px}
.history-biz li{font-size:12px;color:var(--tiffany-deep);background:var(--tiffany-pale);border:1px solid var(--tiffany-light);border-radius:6px;padding:3px 11px;font-weight:500}
.history-note{font-size:12.5px;color:var(--gray-700);line-height:1.85;margin-top:10px;padding:12px 15px;background:var(--gold-pale);border-left:3px solid var(--gold);border-radius:0 6px 6px 0}
.history-note strong{color:#7A5A10}

@media(max-width:1024px){.profile-section{grid-template-columns:1fr;gap:40px}.profile-photo-wrap{position:static}.value-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.value-grid{grid-template-columns:1fr}}