/* WordPress化に伴う追加スタイル（デザイン本体は style.css） */

/* 管理バー表示時のスティッキーヘッダー位置 */
.admin-bar header.site{top:32px;}
@media(max-width:782px){.admin-bar header.site{top:46px;}}

/* 言語切替 */
.lang-switch{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;letter-spacing:.06em;}
.lang-switch a{color:var(--meta);padding:6px 2px;}
.lang-switch a.is-current{color:var(--navy);border-bottom:2px solid var(--gold);}
.lang-switch .sep{color:var(--hairline);}
@media(max-width:900px){
  .navlinks .lang-switch{justify-content:center;margin-top:14px;font-size:.9rem;}
  .navlinks .lang-switch a{border-bottom:none;padding:8px 6px;}
  .navlinks .lang-switch a.is-current{border-bottom:2px solid var(--gold);}
}
/* 英語は語が長いのでナビの間隔を少し詰める */
@media(min-width:901px){
  .lang-en .navlinks{gap:20px;}
  .lang-en .cta-btn{padding:13px 32px;}
}

/* 投稿・通常ページ */
.entry-wrap{max-width:860px;padding-top:64px;padding-bottom:80px;}
.entry-back{display:inline-block;color:var(--green);font-weight:700;font-size:.85rem;margin-bottom:24px;}
.entry-meta{font-size:.78rem;color:var(--meta);letter-spacing:.04em;margin-bottom:10px;}
.entry-title{color:var(--navy);font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:32px;}
.entry-content{color:var(--on-paper-body);}
.entry-content h2{color:var(--navy);font-size:1.4rem;margin:2em 0 .8em;}
.entry-content h3{color:var(--navy);font-size:1.15rem;margin:1.6em 0 .6em;}
.entry-content a{color:var(--green);text-decoration:underline;}
.entry-content img{height:auto;}
.entry-content figure{margin:1.6em 0;}
.entry-content figcaption{font-size:.8rem;color:var(--meta);margin-top:6px;}
.entry-content ul,.entry-content ol{padding-left:1.4em;margin:0 0 1em;}
.entry-content table{border-collapse:collapse;width:100%;}
.entry-content td,.entry-content th{border:1px solid var(--hairline);padding:8px 10px;}
.entry-content video{max-width:100%;height:auto;}

/* 活動レポートのカード */
.news-card{display:block;color:inherit;transition:box-shadow .2s ease;}
.news-card:hover{box-shadow:0 10px 28px rgba(13,34,64,.10);}
.news-card h3{font-size:1.05rem;}

/* Contact Form 7 */
.form-card .wpcf7-form-control-wrap{display:block;}
.form-card .wpcf7-submit{width:100%;text-align:center;border:none;cursor:pointer;font-family:inherit;}
.form-card .wpcf7-not-valid-tip{font-size:.8rem;margin-top:4px;}
.form-card .wpcf7-response-output{margin:16px 0 0!important;font-size:.85rem;}
.form-card .wpcf7-spinner{display:block;margin:10px auto 0;}
.form-card .form-privacy{font-size:.78rem;color:var(--meta);margin:0 0 18px;}

.pagination,.nav-links{margin-top:36px;display:flex;gap:10px;}

/* ナビ：言語切替を加えたぶん相談ボタンを詰める */
@media(min-width:901px){
  .navlinks{gap:22px;}
  .navlinks .cta-btn{padding:12px 28px;}
}
@media(min-width:901px) and (max-width:1080px){
  .navlinks{gap:16px;font-size:.8rem;}
  .navlinks .cta-btn{padding:11px 20px;}
}
/* 活動レポートのカード画像をカード幅いっぱいに */
.news-card .thumb{max-width:none;height:auto;background:var(--paper);object-position:center top;}

/* 記事本文のブロック（横並び・ギャラリー）。移設記事など、ブロック用CSSが読み込まれない場合の補完 */
.entry-content .wp-block-columns{display:flex;flex-wrap:wrap;gap:24px;margin:1.6em 0;align-items:flex-start;}
.entry-content .wp-block-column{flex:1 1 0;min-width:0;}
.entry-content .wp-block-column[style*="flex-basis"]{flex-grow:0;}
.entry-content .wp-block-column > :first-child{margin-top:0;}
.entry-content .wp-block-column figure{margin:0;}
.entry-content .wp-block-column[style*="flex-basis:50%"]{flex-basis:calc(50% - 12px)!important;}
.entry-content .wp-block-column[style*="flex-basis:33.3"]{flex-basis:calc(33.33% - 16px)!important;}
.entry-content .wp-block-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:1.6em 0;}
.entry-content .wp-block-gallery figure{margin:0;}
.entry-content .wp-block-gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;}
.entry-content .wp-block-gallery figcaption{font-size:.72rem;}
.entry-content .wp-block-image img{width:100%;height:auto;}
.entry-content .wp-block-quote{border-left:3px solid var(--gold);margin:1.6em 0;padding:4px 0 4px 18px;}
.entry-content .has-small-font-size{font-size:.85rem;}
.entry-content .has-medium-font-size{font-size:1.1rem;}
.entry-content hr{border:none;border-top:1px solid var(--hairline);margin:2em 0;}
@media(max-width:640px){
  .entry-content .wp-block-columns{flex-direction:column;}
  .entry-content .wp-block-column{flex-basis:100%!important;}
  .entry-content .wp-block-gallery{grid-template-columns:repeat(2,1fr);}
}
