/* プロフィール専用。写真はassets/profile-official.jpgを差し替え可能。 */
.profile-section{background:var(--off-white,#faf8f5);color:var(--ink,#171717);font-family:var(--font);padding:var(--section-space,96px) 24px;scroll-margin-top:calc(var(--header-height,100px) + 16px)}
.profile-inner{max-width:var(--content-width,1200px);margin-inline:auto}
.profile-heading{margin-bottom:40px}.profile-heading>p{margin:0 0 14px;color:var(--accent);font-size:14px;font-weight:800;letter-spacing:.2em}.profile-heading h2{font-size:clamp(25px,3vw,38px);font-weight:900;line-height:1.6;margin:0}.profile-heading:after{content:"";display:block;width:48px;height:3px;background:var(--accent);margin-top:22px}
.profile-overview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,80px);align-items:start}
.profile-photo{margin:0}.profile-photo img{display:block;width:100%;height:auto;border-radius:22px;aspect-ratio:1;object-fit:cover}
.profile-information{min-width:0}.profile-name{font-size:clamp(30px,3vw,40px);line-height:1.5;font-weight:900;margin:0 0 4px}.profile-legal-name{font-size:15px;color:#555;margin:0 0 24px;line-height:1.8;font-weight:400}
.profile-basics{margin:0;font-size:16px;line-height:1.8;font-weight:400}.profile-basics>div{display:grid;grid-template-columns:6em minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #e4ddda}.profile-basics dt{font-weight:800}.profile-basics dd{margin:0;overflow-wrap:anywhere}
.profile-background{margin-top:30px}.profile-background h3,.profile-personal h3,.profile-history h3{font-size:21px;font-weight:900;line-height:1.6;margin:0 0 14px}.profile-background ul{margin:0;padding-left:1.3em;font-size:16px;line-height:1.8;font-weight:400}.profile-background li+li{margin-top:6px}
.profile-history{margin-top:64px}.profile-timeline{list-style:none;padding:0;margin:28px 0 0}.profile-event{position:relative;display:grid;grid-template-columns:190px minmax(0,1fr);gap:32px;padding:0 0 32px 30px;margin:0 0 0 8px;border-left:2px solid var(--accent)}.profile-event:last-child{padding-bottom:0}.profile-event:before{content:"";position:absolute;left:-7px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--off-white)}.profile-event time{color:var(--accent);font-size:21px;font-weight:900;line-height:1.7}.profile-event-category{font-size:12px;letter-spacing:.06em;color:#666;font-weight:700}.profile-event p{font-size:17px;font-weight:400;line-height:1.8;margin:4px 0 0;overflow-wrap:anywhere}
.profile-personal{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:56px;padding-top:32px;border-top:1px solid #e4ddda}.profile-personal p{font-size:16px;line-height:1.8;font-weight:400;margin:0}.profile-reference{font-size:13px;line-height:1.8;color:#666;font-weight:400;margin:36px 0 0}.profile-reference a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.profile-section{padding:64px 24px}.profile-overview{grid-template-columns:minmax(0,1fr);gap:28px}.profile-photo{max-width:420px;width:100%;justify-self:center}.profile-basics>div{grid-template-columns:5em minmax(0,1fr);gap:12px}.profile-history{margin-top:44px}.profile-event{grid-template-columns:minmax(0,1fr);gap:8px;padding-left:24px;padding-bottom:28px}.profile-event time{font-size:20px}.profile-event p{font-size:16px}.profile-personal{grid-template-columns:minmax(0,1fr);gap:28px}}
/* 主な経歴の上も、好きなことと同じ区切り線にそろえる。 */
.profile-history{padding-top:32px;border-top:1px solid #e4ddda}

