/* パナハートアサヒ専用: 共通マスターの構造・基本CSSは変更しない */
:root { --accent:#0a3189; --page-header-color:#0a3189; --shop-primary:#0a3189; }
/* PCグロナビ: 個店指定のアイコンなし。マスターのカード配置を維持。 */
.nav-links { background:transparent; gap:14px; align-items:center; }
.nav-links > a::before,.nav-links > a > svg { display:none !important; content:none !important; }
.nav-links a { color:#111; background:#f6f6f6; border-color:#d0d0d0; min-height:112px; width:clamp(112px,9.3vw,148px); border-radius:16px; gap:0; padding:16px 12px; font-size:13px; line-height:1.35; }
.nav-links a.active,.nav-links a[aria-current="page"] { background:#0a3189; color:#fff; border-color:#0a3189; }
.nav-links a:not(.active):hover { background:#f2f5fb; color:#111; border-color:#bfc9de; }
.header-lower-inner { min-height:138px; padding-top:18px; padding-bottom:18px; }
.site-logo img { max-width:245px; max-height:69px; width:auto; height:auto; object-fit:contain; }
/* 原則個店の青。タイトル帯のみ白文字を保つ。 */
.section .heading { color:#0a3189; }
.page-top .heading,.page-top .heading .english,.page-top .heading .japanese { color:#fff; }
.legacy-content .c-section_head,.legacy-content .c-section_head2,.legacy-content .c-section_lead2,.legacy-content .e-title,.section-title { color:#0a3189; }
.legacy-content .c-section_head { border-bottom-color:#0a3189; }
.__main-color,.__sub-color { color:#0a3189; }
.__main-bgcolor { background-color:#0a3189; }
.__main-bordercolor { border-color:#0a3189; }
.__main-borderBottmcolor { border-bottom-color:#0a3189; }
.top-btn,.action-button { background:#0a3189; color:#fff; }
.action-button.line { background:#00B900; color:#fff; }
/* SERVICE: マスター用の丸いアイコンには対応アイコン素材を入れる */
.services-grid { gap:26px 12px; }
.service-list .service-item { min-width:0; padding:12px 8px; }
.service-list .service-symbol { width:92px; height:92px; }
.service-list .service-symbol img { width:74px; height:74px; object-fit:contain; max-height:74px; }
.service-list .service-caption { max-width:180px; line-height:1.65; font-size:12px; }
/* ABOUT ごあいさつ: 先頭4枚を静的に展開 (スライダー依存を除去) */
.legacy-content .about-greeting-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:0; }
.legacy-content .about-greeting-gallery>li,.legacy-content .about-greeting-gallery>li:not(:first-child) { display:block; min-width:0; }
.legacy-content .about-greeting-gallery img { display:block; width:100%; height:140px; object-fit:cover; border-radius:3px; }
/* 店舗情報とGoogle Mapを横並び (共通マスターのabout-access-gridを利用) */
.legacy-content .about-access-details,.access-grid > div { min-width:0; }
.legacy-content .p-shop-info__list th,.legacy-content .p-shop-info__list td { border-left:0; border-right:0; }
.legacy-content .p-shop-info__list th { width:31%; }
.access-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.access-grid .map { min-width:0; }
/* 一覧ページのCTAは常にボタン型 */
.service-overviews .c-section_block.is-photo-left { align-items:center; }
.service-overviews .c-section_block.is-photo-left .top-btn { display:inline-block; margin-top:12px; }
.service-overviews .c-section_block.is-photo-left figure img { width:100%; height:auto; object-fit:cover; border-radius:3px; }
/* フッター電話と案内が折り返しても破綻しないように */
.contact-band .hours { max-width:850px; margin-left:auto; margin-right:auto; }
.service-detail-page .p-headline03 { display:none !important; }
.notice-closed-inline { color:#0a3189; font-weight:700; }
.legacy-content .about-access-grid .p-shop-info__map { height:420px; }
/* FAQ見出しは他サービスと同じ20px。PCで意図しない改行だけ防ぐ */
.service-detail-page .legacy-content .c-section_head.faq-title-nowrap { white-space:nowrap; }
/* 個店SNSは有効URL未確認のため出力なし（ダミーアイコンは禁止） */
@media (min-width:781px) and (max-width:1050px) {
 .nav-links {gap:8px;} .nav-links a {width:clamp(92px,9vw,120px);font-size:11px;min-height:96px;padding:12px 8px;} .site-logo img {max-width:205px;}
}
@media (max-width:780px) {
 .header-lower-inner {min-height:86px; padding-top:10px; padding-bottom:10px;}
 .site-logo img {max-width:210px; max-height:54px;}
 .services-grid {gap:18px 8px;}
 .legacy-content .about-access-grid .p-shop-info__map {height:320px;}
 .service-detail-page .legacy-content .c-section_head.faq-title-nowrap {white-space:normal;}
 .service-list .service-symbol {width:74px;height:74px;}
 .service-list .service-symbol img {width:60px;height:60px;max-height:60px;}
 .legacy-content .about-greeting-gallery img {height:130px;}
 .access-grid {grid-template-columns:1fr;gap:18px;}
}
@media (max-width:520px) {
 .site-logo img {max-width:185px;}
 .legacy-content .about-greeting-gallery img {height:110px;}
 .services-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 10px;}
 .service-list .service-caption {font-size:13px;max-width:165px;}
 .contact-band .tel {font-size:24px;letter-spacing:0;}
}

/* v5: サービス詳細のフローに混入していた >・下向き矢印を全て非表示 */
.service-detail-page .legacy-content .l-service-flow figure::after,
.service-detail-page .legacy-content .l-service-flow figure:not(:last-child)::after,
.service-detail-page .legacy-content .l-service-flow figure:not(:nth-child(3n))::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
}
@media (min-width:781px) and (max-width:1080px) {
  .service-detail-page .legacy-content .c-section_head.faq-title-nowrap { white-space:normal; }
}
/* v5: スタッフブログ記事（元の見出し・段落・画像の階層を静的再現） */
.news-detail-page .news-article-content { color:#292929; font-size:15px; line-height:2; }
.news-detail-page .news-article-content p { margin:0 0 1.4em; }
.news-detail-page .news-article-content h3,
.news-detail-page .news-article-content h4 { font-size:19px; line-height:1.65; color:var(--accent); border-bottom:1px solid #dedede; padding-bottom:9px; margin:34px 0 16px; }
.news-detail-page .news-article-content h4 {font-size:17px;}
.news-detail-page .news-article-content img { display:block; max-width:100%; height:auto !important; margin:25px auto; }
.news-detail-page .news-article-content a { color:var(--accent); }
@media(max-width:780px){
 .news-detail-page .news-article-content {font-size:14px;}
 .news-detail-page .news-article-content h3 {font-size:18px;}
 .news-detail-page .news-article-content h4 {font-size:16px;}
}
