/* 千歳RC サイト全体の見やすさ改善（株式会社ツヨシオカ 2026-10-30） */
:root{--rc-ink:#222;--rc-sub:#555;--rc-line:#e3dfe8;--rc-purple:#3b2a5a;--rc-red:#c8354a;--rc-gold:#f7a81b;--rc-bg:#f7f5fa}
/* 文字：少し大きく・字間を詰めて・行間を広く */
body{font-size:17px;line-height:1.85;letter-spacing:.04em;color:var(--rc-ink)}
#container p,#container li,#container td,#container th,#container dd,#container dt{line-height:1.85}
#wrapper,.inner{width:1000px}
#sidebar{width:240px}
/* ページの題名の帯 */
.pageline{font-size:1.5em;letter-spacing:.08em;padding-top:.6em;padding-bottom:.6em}
.headline3{font-size:1.2em;letter-spacing:.04em}
/* リンクを分かりやすく */
#container a{text-underline-offset:.2em}
/* トップの大きな写真：高さを抑える（PC で約 6 割） */
.home_fv .slide .bg{padding-top:0!important;height:min(30vw,420px);-webkit-transition:transform 15s ease;transition:transform 15s ease}
.home_fv .theme img{width:320px}
/* 新着情報：押しやすく */
.postlist2 li{padding:.8em 0}
.postlist2 .date{font-size:.95em;color:var(--rc-sub)}
.postlist2 .title{font-size:1.02em}
/* 右側：文字の大きさボタンを目立たせる */
.fontsize2 a{width:48px;height:48px;line-height:48px;border-radius:8px;font-weight:700}
.rc-side-years select{width:100%;padding:.6em;font-size:1em;border:1px solid var(--rc-line);border-radius:8px;background:#fff}
.rc-side-years a{display:inline-block;margin-top:.5em}
/* 表：文字を大きく・縞模様（縞は TablePress の表だけ。組織図の色付きの欄を消さないため 2026-10-30 v4） */
#container table{font-size:.95em}
#container table.tablepress tr:nth-child(even) td{background:#faf9fc}
/* スマホ */
@media (max-width:640px){
  body{font-size:16px;line-height:1.85;letter-spacing:.03em}
  .home_fv .slide .bg{height:52vw}
  .home_fv .theme img{width:200px}
  .pageline{font-size:1.3em}
  #container{padding:24px 16px}
  .page #container{padding:28px 16px}
}

/* WEB訪問者数は出さない（2026-10-30 吉岡さん） */
#sidebar .widget.access{display:none}
/* Google 翻訳の欄はページの下へ（JS で移動。動く前の一瞬も出さない） */
.trans_top,#wrapper>.next20>.transbox{display:none}
.rc-trans{display:block;padding:16px 16px 24px;text-align:center}
.rc-trans .transbox{display:inline-block!important;vertical-align:middle;text-align:left}
.rc-trans .rc-trans-label{font-size:.9em;color:var(--rc-sub);margin-right:.6em;vertical-align:middle}
.rc-note{font-size:.9em;color:var(--rc-sub);margin:.3em 0 1em}

/* ===== 報告の一覧（カード） ===== */
.rc-list{padding:30px}
.rc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:1em}
.rc-tabs a{padding:.6em 1.2em;border:2px solid var(--rc-line);border-radius:999px;text-decoration:none;color:var(--rc-purple);font-weight:700;background:#fff}
.rc-tabs a.on{background:var(--rc-purple);border-color:var(--rc-purple);color:#fff}
.rc-year-select{margin:0 0 1.2em}
.rc-year-select select{font-size:1em;padding:.5em .8em;border:1px solid var(--rc-line);border-radius:8px;margin-left:.5em}
.rc-year{font-size:1.25em;color:var(--rc-purple);border-left:6px solid var(--rc-gold);padding:.2em .7em;margin:1.2em 0 .8em;background:var(--rc-bg)}
.rc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rc-card{display:flex;flex-direction:column;border:1px solid var(--rc-line);border-radius:12px;overflow:hidden;background:#fff;text-decoration:none!important;color:var(--rc-ink)!important;transition:box-shadow .2s,transform .2s}
.rc-card:hover{box-shadow:0 6px 18px rgba(59,42,90,.15);transform:translateY(-2px)}
.rc-card-img{display:block;aspect-ratio:4/3;background:var(--rc-bg);overflow:hidden}
.rc-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.rc-noimg{display:flex;height:100%;align-items:center;justify-content:center;color:#999}
.rc-card-body{display:block;padding:.8em 1em 1em}
.rc-card-meta{display:flex;gap:.6em;align-items:center;flex-wrap:wrap;margin-bottom:.4em}
.rc-badge{font-size:.8em;font-weight:700;color:#fff;background:var(--rc-red);border-radius:4px;padding:.1em .6em}
.rc-badge-act{background:#2f6f9f}
.rc-date{font-size:.9em;color:var(--rc-sub)}
.rc-card-title{display:block;font-weight:700;line-height:1.55;color:var(--rc-purple)}
.rc-pager{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:2em 0 1em}
.rc-pager a,.rc-pager span{min-width:48px;height:48px;line-height:48px;text-align:center;border:1px solid var(--rc-line);border-radius:8px;padding:0 .8em;text-decoration:none;color:var(--rc-purple);font-weight:700}
.rc-pager .current{background:var(--rc-purple);color:#fff;border-color:var(--rc-purple)}
@media (max-width:900px){.rc-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){
  .rc-list{padding:20px 16px}
  .rc-cards{grid-template-columns:1fr;gap:14px}
  .rc-card{flex-direction:row}
  .rc-card .rc-card-img{position:relative;width:38%;flex:none;aspect-ratio:auto;min-height:110px;align-self:stretch}
  .rc-card .rc-card-img img{position:absolute;top:0;left:0;width:100%!important;height:100%!important;max-width:none;object-fit:cover}
  .rc-card-body{padding:.7em .8em}
  .rc-card-title{font-size:.95em}
}

/* ===== 固定ページごとの改善（2026-10-30 v5） ===== */
/* 上へ戻るボタン（全ページ） */
.rc-totop{position:fixed;right:16px;bottom:16px;z-index:50;width:56px;height:56px;border-radius:50%;background:var(--rc-purple);color:#fff!important;text-decoration:none!important;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1.2;box-shadow:0 4px 12px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .3s}
.rc-totop.show{opacity:.92;pointer-events:auto}
.rc-totop::before{content:"▲";font-size:16px}
/* PDF のリンクに目印 */
#container a[href$=".pdf"]:not(:has(img))::after{content:"PDF";display:inline-block;margin-left:.4em;padding:0 .4em;font-size:.72em;line-height:1.6;font-weight:700;color:#fff;background:var(--rc-red);border-radius:3px;vertical-align:.15em;text-decoration:none}
/* ページ内の移動ボタン（歴史・歴代会長） */
.rc-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.4em;padding:.9em;background:var(--rc-bg);border-radius:10px}
.rc-jump p{width:100%;margin:0 0 .2em;font-weight:700;color:var(--rc-purple)}
.rc-jump a{padding:.55em 1em;border:1px solid var(--rc-line);border-radius:8px;background:#fff;color:var(--rc-purple)!important;text-decoration:none!important;font-weight:700}
.rc-jump a:hover{border-color:var(--rc-red)}
/* 組織図：記号の説明 */
.rc-legend{margin:.4em 0 1em;padding:.7em 1em;background:var(--rc-bg);border-radius:8px;font-size:.95em;line-height:1.7}
.rc-legend b{color:var(--rc-red)}
/* 歴代会長・幹事：今年度を目立たせる */
#wrapper .tbl-chairman tr.rc-now td{background:#fff6e0!important;font-weight:700}
/* 例会場・事務局：電話・地図のボタン */
.rc-actions{display:flex;flex-wrap:wrap;gap:10px;margin:1.2em 0}
.rc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.6em 1.2em;border-radius:10px;background:var(--rc-purple);color:#fff!important;text-decoration:none!important;font-weight:700;line-height:1.4;text-align:center}
.rc-btn.rc-btn-sub{background:#fff;color:var(--rc-purple)!important;border:2px solid var(--rc-purple)}
.office .text a[href^="tel:"]{font-weight:700;white-space:nowrap}
/* 入会のご案内：写真の上に題名を重ねる（白い文字が白地で見えなかった） */
.pagebox .wp-block-cover{position:relative;display:flex;align-items:center;justify-content:center;min-height:240px;margin:0 0 1.5em;overflow:hidden;border-radius:10px;padding:1.5em 1em}
.pagebox .wp-block-cover .wp-block-cover__image-background{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;max-width:none;z-index:0}
.pagebox .wp-block-cover .wp-block-cover__background{position:absolute;inset:0;background:#000;opacity:.5;z-index:1}
.pagebox .wp-block-cover .wp-block-cover__inner-container{position:relative;z-index:2;width:100%}
.pagebox .wp-block-cover h1{font-size:1.6em!important;line-height:1.5;margin:0 0 .4em;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.pagebox .wp-block-cover p{margin:0;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.pagebox .wp-block-cover br{display:none}
.pagebox .wp-block-cover > p:empty{display:none}
.pagebox .wp-block-list{list-style:none;padding-left:0!important}
.pagebox .wp-block-list li{margin:.5em 0;padding:.6em .9em;background:var(--rc-bg);border-radius:8px}
@media (max-width:640px){
  .rc-totop{right:12px;bottom:12px}
  .rc-jump a{flex:1 1 auto;text-align:center}
  /* 歴代会長・幹事：スマホは「◯代 年度」＋会長・幹事の3行に */
  #wrapper .tbl-chairman tr{display:grid!important;grid-template-columns:auto 1fr;column-gap:.6em;padding:.7em .3em}
  #wrapper .tbl-chairman tr td{margin:0!important}
  #wrapper .tbl-chairman tr td:nth-child(1),#wrapper .tbl-chairman tr td:nth-child(2){font-weight:700;color:var(--rc-purple)}
  #wrapper .tbl-chairman tr td:nth-child(1):before,#wrapper .tbl-chairman tr td:nth-child(2):before{display:none}
  #wrapper .tbl-chairman tr td:nth-child(1):after{content:"代"}
  #wrapper .tbl-chairman tr td:nth-child(3),#wrapper .tbl-chairman tr td:nth-child(4){grid-column:1/-1}
  #wrapper .tbl-chairman td:before{width:3.5em!important;font-size:.85em}
  .pagebox .wp-block-cover{min-height:200px}
  .pagebox .wp-block-cover h1{font-size:1.3em!important}
  .rc-actions .rc-btn{flex:1 1 100%}
}

/* ===== トップページの並びの見直し（2026-10-30 v6） ===== */
.rc-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 2em}
.rc-quick a{display:flex;align-items:center;justify-content:center;min-height:60px;padding:.6em .8em;border:2px solid var(--rc-line);border-radius:10px;background:#fff;color:var(--rc-purple)!important;text-decoration:none!important;font-weight:700;line-height:1.4;text-align:center}
.rc-quick a:hover{border-color:var(--rc-red);color:var(--rc-red)!important}
.rc-quick a.rc-q-main{background:var(--rc-purple);border-color:var(--rc-purple);color:#fff!important}
.rc-home-news .rc-cards{grid-template-columns:repeat(3,1fr);gap:14px}
.rc-home-news .rc-card-title{font-size:.95em}
.rc-more{display:flex;justify-content:center;margin:1.2em 0 .5em}
.rc-more a{display:inline-flex;align-items:center;min-height:52px;padding:.6em 1.6em;border-radius:999px;background:var(--rc-purple);color:#fff!important;text-decoration:none!important;font-weight:700}
.rc-fold{position:relative;max-height:13em;overflow:hidden;transition:max-height .4s}
.rc-fold::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5em;background:linear-gradient(rgba(255,255,255,0),#fff)}
.rc-fold.open{max-height:none}
.rc-fold.open::after{display:none}
.rc-fold-btn{display:block;margin:.8em auto 0;min-height:48px;padding:.5em 1.4em;border:2px solid var(--rc-purple);border-radius:999px;background:#fff;color:var(--rc-purple);font-weight:700;font-size:1em;cursor:pointer}
.rc-lib-head{margin-top:2.2em!important}
.rc-lib{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:.5em 0 2em;list-style:none;padding:0}
.rc-lib li{margin:0;padding:0}
.rc-lib li::before{display:none}
.rc-lib a{display:flex;align-items:center;min-height:60px;padding:.6em 1em;border-radius:10px;background:var(--rc-bg);border:1px solid var(--rc-line);color:var(--rc-purple)!important;text-decoration:none!important;font-weight:700;line-height:1.4}
.rc-lib a::after{content:"→";margin-left:auto;padding-left:.6em;color:var(--rc-red)}
@media (max-width:900px){.rc-home-news .rc-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){
  .rc-quick{grid-template-columns:1fr 1fr}
  .rc-home-news .rc-cards{grid-template-columns:1fr}
  .rc-lib{grid-template-columns:1fr}
  .rc-fold{max-height:26em}
}

/* ===== スマホの見やすさ（2026-10-30 v7） ===== */
.rc-foot{background:var(--rc-bg);border-top:1px solid var(--rc-line);padding:20px 16px;text-align:center}
.rc-foot-in{max-width:640px;margin:0 auto}
.rc-foot-name{font-weight:700;color:var(--rc-purple);font-size:1.05em;margin:0 0 .3em}
.rc-foot-text{margin:0 0 .8em;line-height:1.7;font-size:.95em}
.rc-foot .rc-actions{justify-content:center;margin:.4em 0 0}
@media (max-width:640px){
  /* メニューのボタンに「メニュー」の文字 */
  header .switch span{left:22px!important;width:18px!important}
  header .switch span:nth-child(1){top:14px!important}
  header .switch span:nth-child(2){top:20px!important;margin-top:0!important}
  header .switch span:nth-child(3){top:26px!important;bottom:auto!important}
  header .switch::after{content:"メニュー";position:absolute;left:0;right:0;bottom:7px;text-align:center;color:#fff;font-size:10px;font-weight:700;letter-spacing:0;line-height:1}
  .menuOpen header .switch::after{content:"閉じる"}
  /* 右側の欄（スマホでは下に来る）：本文と幅をそろえ、要らないものを隠す */
  /* 画面の左右の余白を減らして文字の幅を広く（左右 46px → 16px） */
  #wrapper{padding:0!important}
  /* テーマの「画面いっぱいに広げる」指定（左右 -30px）を新しい余白（16px）に合わせる */
  #wrapper .tbl-history{margin:0 -16px!important}
  .spbreak{margin-left:-16px!important;margin-right:-16px!important}
  .clubTopBox{margin:0 -16px 30px!important}
  .clubBottomTable{margin:0 -16px!important}
  .frontbox,.topline2{margin:0 -16px 20px!important}
  .rc-list{padding:8px 0!important}
  #sidebar{width:auto!important;margin:0 0 20px!important;padding:0 16px;box-sizing:border-box}
  #sidebar .widget.feed{display:none}
  #sidebar input[type="text"]{width:calc(100% - 80px);font-size:16px;padding:10px;float:left}
  #sidebar input[type="submit"]{font-size:16px;padding:10px 14px}
  #sidebar ul.month{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0;list-style:none}
  #sidebar ul.month li{list-style:none;margin:0}
  #sidebar ul.month li a{display:block;padding:.6em 0;text-align:center;border:1px solid var(--rc-line);border-radius:8px;background:#fff;text-decoration:none;font-size:15px}
  /* カードの「例会報告」などの札を少し大きく */
  .rc-badge{font-size:.85em;padding:.15em .6em}
  /* 組織図の上の図：文字を大きく、名前を押しやすく */
  .clubTopBox{font-size:15px!important;line-height:1.6!important}
  .clubTopBox .caps{padding:6px 0!important}
  .clubTopBox .names{padding:6px 0!important}
  .club-data a.members_open{display:inline-block;padding:6px 2px;min-height:32px}
}
