
/* Separate mascot profile stylesheet. Existing homepage rules are untouched. */
.kibou-intro-proposal{padding-top:68px;padding-bottom:18px;scroll-margin-top:112px}
.kibou-intro-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:clamp(28px,4vw,60px);padding:clamp(28px,4vw,58px);border:1px solid #e3e8e7;border-radius:28px;background:linear-gradient(112deg,#eff7f8 0%,#f7faf9 40%,#fff 78%);color:#334348;overflow-wrap:anywhere}
.kibou-intro-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;text-align:center}
.kibou-intro-eyebrow{font-size:10px;font-weight:700;letter-spacing:.15em;color:#5f767c;margin:0 0 22px;line-height:1.7}
.kibou-intro-portrait{width:min(100%,320px);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#e1f0f2;margin:0 auto 20px}
.kibou-intro-portrait img{width:min(240px,82%);max-width:100%;height:auto;object-fit:contain}
.kibou-intro-catchphrase{font-size:14px;font-weight:700;letter-spacing:.035em;line-height:1.8;margin:0 0 8px;color:#52676b}
.kibou-intro-name{margin:0;font-size:22px;font-weight:800;letter-spacing:.08em;line-height:1.7}
.kibou-intro-name span{display:block;margin-top:3px;font-size:10px;font-weight:500;letter-spacing:.06em;color:#6b7474}
.kibou-intro-copy{min-width:0;align-self:center}
.kibou-intro-copy>.kibou-intro-eyebrow{margin-bottom:12px}
.kibou-intro-copy h2{font-size:clamp(28px,3.1vw,40px);font-weight:800;letter-spacing:.025em;line-height:1.65;margin:0 0 26px;color:#263b41}
.kibou-intro-copy h3{font-size:16px;letter-spacing:.025em;line-height:1.8;margin:0 0 14px;font-weight:700}
.kibou-intro-story p{font-size:13px;line-height:2.05;margin:0 0 12px;color:#536064}
.kibou-intro-profile{display:flex;align-items:flex-start;gap:17px;margin:24px 0 23px;padding-top:18px;border-top:1px solid #dfe7e5;font-size:12px;line-height:1.8}
.kibou-intro-profile dt{flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.08em;color:#6a7777;padding-top:2px}
.kibou-intro-profile dd{margin:0;color:#536064}
.kibou-intro-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;max-width:100%;padding:12px 20px;border:1px solid #859b9d;border-radius:100px;color:#3e575d;background:#fff;font-size:12px;font-weight:700;line-height:1.7;transition:background .2s}
.kibou-intro-link:hover{background:#e9f4f4}
.kibou-intro-link span{flex-shrink:0}
@media(max-width:900px){.kibou-intro-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:26px;padding:30px}.kibou-intro-copy h2{font-size:29px}.kibou-intro-desktop-break{display:none}.kibou-intro-catchphrase{font-size:12px}.kibou-intro-portrait{width:min(100%,270px)}}
@media(max-width:700px){.kibou-intro-proposal{padding-top:36px;padding-bottom:6px}.kibou-intro-card{grid-template-columns:minmax(0,1fr);gap:30px;padding:28px 22px;border-radius:22px}.kibou-intro-portrait{width:min(100%,248px);margin-bottom:15px}.kibou-intro-portrait img{width:min(208px,84%)}.kibou-intro-visual>.kibou-intro-eyebrow{margin-bottom:18px}.kibou-intro-copy h2{font-size:clamp(24px,5.8vw,33px);line-height:1.65;margin-bottom:22px}.kibou-intro-copy h3{font-size:15px}.kibou-intro-story p{font-size:13px}.kibou-intro-catchphrase{font-size:13px}.kibou-intro-name{font-size:21px}.kibou-intro-profile{margin-top:21px}.kibou-intro-link{font-size:11px;gap:15px;padding:11px 15px}.kibou-intro-copy>.kibou-intro-eyebrow{font-size:9px}}
