/* Professional network (/pro/, 6 field pages, 13 expert pages). Builds on support.css panels (graph paper / FIELD label / marker headline / tilted photo). */
.pro-page .catalog-mint{--catalog-accent:#51776c;--catalog-tint:#e2f0e8;--catalog-pale:#f0f7f3;--catalog-line:#d5e4dc}
.pro-intro h1{font-size:clamp(1.75rem,3.4vw,2.875rem);overflow-wrap:anywhere}
.pro-h1-sub{display:block;font-size:.55em;letter-spacing:.06em;color:#5d737c;margin-top:4px}

/* 6分野ナビ（support-page-index のピルを6本で使う） */
.pro-index{position:static;flex-wrap:wrap}
.pro-index a{flex:1 1 0;min-width:0;white-space:nowrap}
.pro-index a[aria-current=page]{box-shadow:inset 0 2px 6px #3c4f5a1f;color:#344650;font-weight:700}
.support-page-index .index-mint[aria-current=page]{background:#d6ece0}
.support-page-index .index-blue[aria-current=page]{background:#d8e8f4}
.support-page-index .index-lavender[aria-current=page]{background:#e6dcf3}

/* 分野アイコン付きの英字ラベル */
.pro-category{display:flex;align-items:center;gap:12px;font-size:.8125rem;letter-spacing:.14em}
.pro-category-icon{width:44px;height:44px;flex:none}
.pro-area .catalog-group{scroll-margin-top:30px}

/* /pro/ ：分野パネル内の専門家リスト */
.pro-members{grid-template-columns:repeat(2,minmax(0,1fr))}
.pro-member{position:relative;padding-right:34px}
.pro-member h3{color:#344650;font-size:1.125rem;line-height:1.8;font-weight:700;margin:0}
.pro-member>p{margin-top:4px!important;font-size:.9375rem!important}
.pro-member-more{position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--catalog-accent);font-size:1.25rem}
.pro-member:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;color:var(--catalog-accent)}
.pro-member.is-static:hover h3{text-decoration:none;color:#344650}
.pro-disclose{font-size:.8125rem!important;line-height:1.7!important;color:#6b7c85!important;margin-top:10px!important}

.pro-note{margin-top:32px;text-align:center;font-size:.9375rem;line-height:1.9;color:#5c727d}
.pro-area>.catalog-container>.pro-note{margin-top:56px}

/* 専門家カード：薄ベージュ枠＋控えめシャドウ（上辺・左辺の色線は使わない） */
.pro-cards-wrap{margin-top:52px;scroll-margin-top:30px}
.pro-subhead{font-size:1.25rem;line-height:1.7;color:#344650;margin-bottom:22px}
.pro-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pro-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e6e0d8;border-radius:14px;overflow:hidden;box-shadow:0 12px 32px rgba(60,45,25,.08);transition:transform .2s,box-shadow .2s}
a.pro-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(60,45,25,.11)}
.pro-card-photo{margin:0;background:#f4f1ec}
.pro-card-photo img{display:block;width:100%;height:auto;aspect-ratio:1024/581;object-fit:cover}
.pro-card-body{flex:1;display:flex;flex-direction:column;padding:20px 22px 22px;overflow-wrap:anywhere}
.pro-card-label{font-size:.8125rem;font-weight:700;letter-spacing:.04em;color:var(--catalog-accent,#557c94);line-height:1.6}
.pro-card-name{font-size:1.1875rem;line-height:1.6;color:#344650;font-weight:700;margin:2px 0 10px}
.pro-card-text p,.pro-card-text li{font-size:.9375rem;line-height:1.85;color:#4c616b}
.pro-card-text p+p,.pro-card-text ul+p,.pro-card-text p+ul{margin-top:8px}
.pro-card-text ul{list-style:none;margin:0;padding:0}
.pro-card-text li{position:relative;padding-left:1.1em}
.pro-card-text li:before{content:'・';position:absolute;left:0}
.pro-card-more{margin-top:auto;padding-top:16px;align-self:flex-end;color:var(--catalog-accent,#557c94);font-size:.9375rem;font-weight:600}
a.pro-card:hover .pro-card-more{text-decoration:underline;text-underline-offset:4px}

/* 専門分野から探す */
.pro-section{margin-top:88px;scroll-margin-top:30px}
.pro-section-heading{text-align:center;margin-bottom:34px}
.pro-section-heading .section-label{font-size:.875rem;letter-spacing:.12em;margin-bottom:10px}
.pro-section-heading h2{font-size:1.875rem;line-height:1.6;letter-spacing:.03em;color:#344650}
.pro-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pro-field{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto 1fr;column-gap:16px;align-items:center;padding:20px 22px;background:#fff;border:1px solid #e6e0d8;border-radius:14px;box-shadow:0 12px 32px rgba(60,45,25,.06);transition:background .2s;min-width:0}
.pro-field:hover{background:var(--catalog-pale)}
.pro-field[aria-current=page]{background:var(--catalog-pale);box-shadow:inset 0 2px 8px #3c4f5a14}
.pro-field-icon{grid-row:1/3;width:56px;height:56px}
.pro-field-num{font:400 .8125rem/1 Arial,sans-serif;letter-spacing:.1em;color:var(--catalog-accent);align-self:end}
.pro-field-title{font-size:1.125rem;font-weight:700;line-height:1.6;color:#344650;align-self:start}
.pro-field-summary{grid-column:1/-1;margin-top:12px;font-size:.875rem;line-height:1.8;color:#5c727d}

/* 専門家ページ：断ち切りのワイド写真にパネルを重ねる */
.pro-hero{margin:0;background:#eef3f2}
.pro-hero img{display:block;width:100%;height:auto;aspect-ratio:2560/1087;max-height:560px;object-fit:cover}
.pro-expert-area{padding-top:0}
.pro-expert{margin-top:-96px}
.pro-catch-block{margin-bottom:40px}
.pro-catch-label{color:var(--catalog-accent);font-size:1.0625rem;font-weight:700;letter-spacing:.04em;line-height:1.7;margin-bottom:8px}
.pro-catch{color:#344650;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:700;line-height:1.85;letter-spacing:.015em;overflow-wrap:anywhere}
.pro-catch>span{background:var(--catalog-tint);padding:2px 5px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.pro-summary p,.pro-summary li{font-size:1rem;line-height:2;color:#4c616b}
.pro-summary p+p,.pro-summary ul+p,.pro-summary p+ul{margin-top:12px}
.pro-summary ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pro-summary li{position:relative;padding-left:30px;line-height:1.85}
.pro-summary li:before{content:'';position:absolute;left:0;top:.3em;width:19px;height:19px;border-radius:50%;background:var(--catalog-pale);border:1px solid var(--catalog-line)}
.pro-summary li:after{content:'';position:absolute;left:7px;top:calc(.3em + 5px);width:5px;height:8px;border:solid var(--catalog-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}

.pro-profile{display:grid;grid-template-columns:1fr;gap:28px;margin-top:48px;padding:30px 32px;background:#fff;border:1px solid #e6e0d8;border-radius:14px;box-shadow:0 12px 32px rgba(60,45,25,.08)}
.pro-profile+.pro-profile{margin-top:24px}
.pro-profile.has-logo{grid-template-columns:120px minmax(0,1fr)}
.pro-profile-logo img{display:block;width:120px;height:120px;object-fit:contain;border-radius:10px;border:1px solid #efeae3;background:#fff}
.pro-profile-label{font-size:.8125rem;font-weight:700;letter-spacing:.12em;color:var(--catalog-accent)}
.pro-profile h3{font-size:1.3125rem;line-height:1.6;color:#344650;margin:4px 0 12px;overflow-wrap:anywhere}
.pro-profile-body>p:not(.pro-profile-label):not(.pro-links):not(.pro-disclose){font-size:1rem;line-height:1.95;color:#4c616b}
.pro-company{margin:4px 0 0;border-top:1px solid #ece6de}
.pro-company>div{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid #ece6de}
.pro-company dt{font-size:.9375rem;font-weight:700;color:#4e6976}
.pro-company dd{margin:0;font-size:.9375rem;line-height:1.8;color:#40555f;overflow-wrap:anywhere}
.pro-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.pro-links a{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--catalog-line);border-radius:99px;background:var(--catalog-pale);color:#40555f;font-size:.9375rem;font-weight:600}
.pro-links a:hover{border-color:var(--catalog-accent);color:var(--catalog-accent)}
.pro-points{margin-top:44px}
/* 専門家の写真は文字入りバナーなので切り抜かず全体を見せる */
.pro-expert .catalog-photo img{aspect-ratio:auto;object-fit:contain}
.pro-page .support-breadcrumb{flex-wrap:wrap;row-gap:6px;column-gap:12px}
.pro-page .support-breadcrumb>*{white-space:nowrap}
.pro-page .support-breadcrumb>[aria-current]{white-space:normal;min-width:0}
.pro-page .detail-topic-head{grid-template-columns:1fr}
.pro-page .detail-topic{scroll-margin-top:30px}

@media(max-width:1000px){
 .pro-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .pro-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pro-expert{margin-top:-64px}
}
@media(max-width:820px){
 .pro-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
 .pro-members{grid-template-columns:1fr}
 .pro-cards{grid-template-columns:1fr;gap:20px}
 .pro-cards-wrap{margin-top:40px}
 .pro-section{margin-top:64px}
 .pro-section-heading h2{font-size:1.5rem}
 .pro-fields-grid{grid-template-columns:1fr;gap:12px}
 .pro-field{padding:16px 18px;grid-template-columns:48px 1fr}
 .pro-field-icon{width:48px;height:48px}
 .pro-field-summary{margin-top:8px}
 .pro-hero img{aspect-ratio:2/1}
 .pro-expert{margin-top:-36px}
 .pro-catch-block{margin-bottom:28px}
 .pro-catch{font-size:clamp(1.25rem,5.4vw,1.5rem)}
 .pro-catch-label{font-size:.9375rem}
 .pro-profile,.pro-profile.has-logo{grid-template-columns:1fr;padding:22px 20px;gap:16px;margin-top:36px}
 .pro-profile-logo img{width:84px;height:84px}
 .pro-company>div{grid-template-columns:1fr;gap:2px}
 .pro-summary p,.pro-summary li{font-size:.9375rem}
 .pro-note{font-size:.875rem;text-align:left}
}
@media(max-width:560px){
 .pro-index a{white-space:normal}
}
@media(prefers-reduced-motion:reduce){.pro-card,.pro-field{transition:none}}

/* ヘッダーの現在地（専門家ネットワーク） */
.desktop-nav [aria-current=page]{color:#557d75;border-bottom:2px solid #b7dfd1}
.mobile-menu [aria-current=page]{color:#557d75}
