.managed-block-text{white-space:pre-line;overflow-wrap:anywhere}.managed-uniform-gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;margin-top:28px}.managed-uniform-gallery>img,.managed-uniform-gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.managed-uniform-gallery img{width:100%;height:320px;object-fit:cover}.managed-uniform-gallery figcaption{padding:12px;text-align:center;font-weight:700}.support-card .managed-block-text{white-space:pre-line}.history-feature-copy .managed-block-text{margin:0 0 16px;color:var(--muted)}
@media(max-width:820px){.managed-uniform-gallery{grid-template-columns:1fr}.managed-uniform-gallery img{height:280px}}

.managed-kicker{margin:0 0 6px;color:var(--red);font-size:13px;font-weight:800;letter-spacing:.1em;text-align:center;text-transform:uppercase}
.managed-subtitle{max-width:900px;margin:-16px auto 18px;color:var(--muted);font-weight:700;text-align:center}
.media-description{max-width:900px;margin:-8px auto 24px;color:var(--muted);font-size:16px;line-height:1.9;text-align:center}
.support-description{max-width:900px;margin:-12px auto 24px;color:var(--muted);line-height:1.9;text-align:center}
.join-form-download{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;margin-top:20px;padding:17px 24px;border:2px solid var(--red);border-radius:7px;color:var(--red);background:#fff8f8;text-decoration:none;box-shadow:0 7px 20px rgba(230,0,32,.08);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.join-form-download:hover,.join-form-download:focus-visible{background:#fff0f1;box-shadow:0 9px 24px rgba(230,0,32,.14);transform:translateY(-1px)}
.join-form-download-label{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:27px;font-weight:800;letter-spacing:.08em}
.join-form-download-note{padding-left:16px;border-left:1px solid rgba(230,0,32,.28);font-size:13px;font-weight:700}
@media(max-width:520px){.join-form-download{gap:10px;padding:14px 16px}.join-form-download-label{font-size:23px}.join-form-download-note{padding-left:10px;font-size:12px}}


/* 共通: トップ/選手募集 練習場所写真カード */
.home-venue-photo-grid,.recruit-venue-photo-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;width:100%!important;margin:22px 0 0!important;padding:0!important}
.home-venue-photo-card,.recruit-venue-photo-card{position:relative!important;display:block!important;overflow:hidden!important;width:100%!important;min-width:0!important;aspect-ratio:16/9!important;min-height:0!important;margin:0!important;padding:0!important;border:1px solid #b7cee2!important;border-radius:10px!important;background:#dceefa!important;box-shadow:0 12px 35px rgba(0,43,91,.09)!important}
.home-venue-photo-card>a,.recruit-venue-photo-card>a{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;color:#fff!important;text-decoration:none!important}
.home-venue-photo-card img,.recruit-venue-photo-card img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:cover!important;transition:transform .3s ease!important}
.home-venue-photo-card:hover img,.recruit-venue-photo-card:hover img{transform:scale(1.035)}
.home-venue-photo-name,.recruit-venue-photo-name{position:absolute!important;left:50%!important;top:50%!important;z-index:3!important;display:block!important;width:max-content!important;max-width:90%!important;margin:0!important;padding:7px 12px!important;color:#fff!important;background:rgba(0,31,70,.34)!important;border-radius:8px!important;font-family:"Yu Mincho","Hiragino Mincho ProN",serif!important;font-size:clamp(15px,1.45vw,21px)!important;font-weight:700!important;line-height:1.25!important;white-space:nowrap!important;text-align:center!important;text-decoration:none!important;text-shadow:0 2px 8px rgba(0,0,0,.9)!important;transform:translate(-50%,-50%)!important;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
@media(max-width:820px){.home-venue-photo-grid,.recruit-venue-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.home-venue-photo-name,.recruit-venue-photo-name{font-size:clamp(12px,3.5vw,16px)!important;padding:6px 8px!important}}


/* 管理画面で設定したメディアカードの説明文・画像を公開ページに反映 */
.managed-media-card{position:relative;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:16px!important;min-height:112px;padding:16px 18px!important}
.managed-media-thumb{width:118px;height:80px;overflow:hidden;border-radius:8px;background:#eaf3f9;flex:none}
.managed-media-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.managed-media-copy{min-width:0;display:grid;gap:3px}
.managed-media-label{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.08em}
.managed-media-title{display:block;color:var(--navy-dark,#001f46);font-size:18px;line-height:1.35}
.managed-media-text{margin:4px 0 0;color:var(--muted,#60758a);font-size:13px;line-height:1.65;font-weight:500}
.managed-media-arrow{align-self:center;font-size:28px;line-height:1;color:var(--red)}
@media(max-width:620px){
  .managed-media-card{grid-template-columns:88px 1fr auto!important;gap:11px!important;min-height:96px;padding:12px!important}
  .managed-media-card:not(:has(.managed-media-thumb)){grid-template-columns:1fr auto!important}
  .managed-media-thumb{width:88px;height:68px}
  .managed-media-title{font-size:16px}
  .managed-media-text{font-size:12px;line-height:1.55}
}
