@charset "UTF-8";
:root {
  --catch_font_size: 32px;
  --catch_font_size_sp: 22px;
  --catch_font_type:var(--tcd-font-type1);
  --headline_font_size: 32px;
  --headline_font_size_sp: 16px;
  --headline_font_type:var(--tcd-font-type2);
  --single_title_font_size: 25px;
  --single_title_font_size_sp: 20px;
  --single_title_font_type:var(--tcd-font-type1);
  --content_font_size: 19px;
  --content_font_size_sp: 17px;
  --content_font_type:var(--tcd-font-type1);
  --gallery_title_font_type:var(--tcd-font-type1);
  --log_font_family:var(--tcd-font-type-logo);
  --tcd-logo-font-weight: bold;
  --tcd-preloader-logo-font-size-pc: 30px;
  --tcd-preloader-logo-font-size-sp: 20px;
  --tcd-preloader-logo-font-color: #ffffff;
}

.logo_text {
  font-size: 30px;
}

@media screen and (max-width: 1200px) {
  .logo_text {
    font-size: 20px;
  }
}
@media (hover: hover) {
  .animate_background .image_wrap img {
    width: 100%;
    height: 100%;
    transition: transform 0.5s ease;
  }
  .animate_background:hover .image_wrap img {
    transform: scale(1.2);
  }
}
:root {
  --main_color: #947d66;
  --main_color_dark: #765f48;
  --main_color_light: #c6af98;
  --main_color_hex: 148,125,102;
  --content_link_color: #000c2e;
  --content_link_color_hover: rgba(0,12,46,0.5);
}

.styled_h2 {
  font-size: 28px !important;
  text-align: center !important;
  font-weight: 600 !important;
  color: #000000;
  border-color: #000000;
  border-width: 0px;
  border-style: solid;
  border-left: none;
  border-right: none;
  border-top: none;
  border-bottom: none;
  background-color: transparent;
}

@media screen and (max-width: 800px) {
  .styled_h2 {
    font-size: 22px !important;
  }
}
.styled_h3 {
  font-size: 20px !important;
  text-align: left !important;
  font-weight: 600 !important;
  color: #000000;
  border-color: #000000;
  border-width: 0px;
  border-style: solid;
  padding-left: 1em !important;
  padding-top: 0.5em !important;
  padding-bottom: 0.5em !important;
  border-right: none;
  border-top: none;
  border-bottom: none;
  background-color: transparent;
}

@media screen and (max-width: 800px) {
  .styled_h3 {
    font-size: 20px !important;
  }
}
.styled_h4 {
  font-size: 18px !important;
  text-align: left !important;
  font-weight: 500 !important;
  color: #000000;
  border-color: #dddddd;
  border-width: 1px;
  border-style: dotted;
  border-left: none;
  border-right: none;
  border-top: none;
  padding-bottom: 0.8em !important;
  background-color: transparent;
}

@media screen and (max-width: 800px) {
  .styled_h4 {
    font-size: 18px !important;
  }
}
.styled_h5 {
  font-size: 16px !important;
  text-align: left !important;
  font-weight: 500 !important;
  color: #000000;
  border-color: #000000;
  border-width: 3px;
  border-style: double;
  border-left: none;
  border-right: none;
  border-top: none;
  border-bottom: none;
  background-color: #fafafa;
  padding: 0.8em 1em !important;
}

@media screen and (max-width: 800px) {
  .styled_h5 {
    font-size: 16px !important;
  }
}
.post_content a.q_custom_button1 {
  min-width: 260px;
  height: 60px;
  border-radius: 70px;
  color: #000c2e !important;
  border-color: #000c2e;
}

.post_content a.q_custom_button1:before {
  background-color: #000c2e !important;
  opacity: 0;
}

.post_content a.q_custom_button1:hover {
  color: #fff !important;
  border-color: #000c2e !important;
}

.post_content a.q_custom_button1:hover:before {
  opacity: 1;
}

@media (max-width: 1100px) {
  .post_content a.q_custom_button1 {
    min-width: 260px;
  }
}
@media (max-width: 800px) {
  .post_content a.q_custom_button1 {
    min-width: 220px;
    height: 50px;
  }
}
.post_content a.q_custom_button2 {
  min-width: 260px;
  height: 60px;
  border-radius: 70px;
  color: #fff !important;
  background-color: #000c2e;
  border: none;
}

.post_content a.q_custom_button2:before {
  background-color: #000000 !important;
  opacity: 0;
}

.post_content a.q_custom_button2:hover:before {
  opacity: 1;
}

@media (max-width: 1100px) {
  .post_content a.q_custom_button2 {
    min-width: 260px;
  }
}
@media (max-width: 800px) {
  .post_content a.q_custom_button2 {
    min-width: 220px;
    height: 50px;
  }
}
.post_content a.q_custom_button3 {
  min-width: 260px;
  height: 60px;
  border-radius: 70px;
  color: #fff !important;
  border-color: #000c2e;
}

.post_content a.q_custom_button3:before {
  background-color: #000c2e;
  opacity: 1;
}

.post_content a.q_custom_button3:hover {
  color: #000c2e !important;
  border-color: #000c2e !important;
}

.post_content a.q_custom_button3:hover:before {
  opacity: 0;
}

@media (max-width: 1100px) {
  .post_content a.q_custom_button3 {
    min-width: 260px;
  }
}
@media (max-width: 800px) {
  .post_content a.q_custom_button3 {
    min-width: 220px;
    height: 50px;
  }
}
.q_frame1 {
  background: #ffffff;
  border-radius: 0px;
  border-width: 1px;
  border-color: #dddddd;
  border-style: solid;
}

.q_frame1 .q_frame_label {
  color: #000000;
}

.q_frame2 {
  background: #ffffff;
  border-radius: 0px;
  border-width: 1px;
  border-color: #009aff;
  border-style: solid;
}

.q_frame2 .q_frame_label {
  color: #009aff;
}

.q_frame3 {
  background: #ffffff;
  border-radius: 10px;
  border-width: 1px;
  border-color: #f9b42d;
  border-style: solid;
}

.q_frame3 .q_frame_label {
  color: #f9b42d;
}

.q_underline1 {
  font-weight: 500;
  background-image: -webkit-linear-gradient(left, transparent 50%, #fff799 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #fff799 50%);
  background-image: linear-gradient(to right, transparent 50%, #fff799 50%);
  background-position: -100% 0.8em;
}

.q_underline2 {
  font-weight: 600;
  background-image: -webkit-linear-gradient(left, transparent 50%, #99f9ff 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #99f9ff 50%);
  background-image: linear-gradient(to right, transparent 50%, #99f9ff 50%);
}

.q_underline3 {
  font-weight: 600;
  background-image: -webkit-linear-gradient(left, transparent 50%, #ff99b8 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #ff99b8 50%);
  background-image: linear-gradient(to right, transparent 50%, #ff99b8 50%);
}

.speech_balloon1 .speech_balloon_text_inner {
  color: #000000;
  background-color: #ffdfdf;
  border-color: #ffdfdf;
}

.speech_balloon1 .before {
  border-left-color: #ffdfdf;
}

.speech_balloon1 .after {
  border-right-color: #ffdfdf;
}

.speech_balloon2 .speech_balloon_text_inner {
  color: #000000;
  background-color: #ffffff;
  border-color: #ff5353;
}

.speech_balloon2 .before {
  border-left-color: #ff5353;
}

.speech_balloon2 .after {
  border-right-color: #ffffff;
}

.speech_balloon3 .speech_balloon_text_inner {
  color: #000000;
  background-color: #ccf4ff;
  border-color: #ccf4ff;
}

.speech_balloon3 .before {
  border-left-color: #ccf4ff;
}

.speech_balloon3 .after {
  border-right-color: #ccf4ff;
}

.speech_balloon4 .speech_balloon_text_inner {
  color: #000000;
  background-color: #ffffff;
  border-color: #0789b5;
}

.speech_balloon4 .before {
  border-left-color: #0789b5;
}

.speech_balloon4 .after {
  border-right-color: #ffffff;
}

.qt_google_map .pb_googlemap_custom-overlay-inner {
  background: #000000;
  color: #ffffff;
}

.qt_google_map .pb_googlemap_custom-overlay-inner::after {
  border-color: #000000 transparent transparent transparent;
}

.sns_button_list.color_type2 li.note a:before {
  background-image: url(https://medsyco.com/aichidaikyo/wp-content/themes/canon_tcd109/img/note.svg);
}

.header_slider_content .catch {
  font-size: 30px;
}

@media screen and (max-width: 1200px) {
  .header_slider_content .catch {
    font-size: 25px;
  }
}
@media screen and (max-width: 800px) {
  .header_slider_content .catch {
    font-size: 20px;
  }
}
#site_loader_overlay {
  position: relative;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  height: 100vh;
  height: 100dvh;
  z-index: 99999999999;
  opacity: 1;
  background: #f5f5f5;
}

.c-preloader__logo-text {
  font-family: var(--log_font_family);
  font-weight: var(--tcd-logo-font-weight, 600);
  font-size: var(--tcd-preloader-logo-font-size-pc);
  color: var(--tcd-preloader-logo-font-color);
  line-height: 1.5;
}

@media screen and (max-width: 800px) {
  .c-preloader__logo-text {
    font-size: var(--tcd-preloader-logo-font-size-sp);
  }
}
/* body.end_loading #site_loader_overlay { opacity:0; transition: opacity 0.7s ease 0.7s; } */
#site_loader_overlay {
  transform: translate3d(0, 0, 0);
  transition: transform 0.7s cubic-bezier(0.83, 0, 0.17, 1) 0.5s;
}

body.end_loading #site_loader_overlay {
  transform: translate3d(0, -100%, 0);
  opacity: 1;
}

#site_loader_overlay .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
}

#site_loader_overlay #loader_logo_image + #loader_catch {
  margin-top: 50px;
}

#loader_catch {
  opacity: 0;
  line-height: 1.5;
  font-size: 35px;
  color: #000000;
}

#site_loader_overlay.start_loading #loader_catch {
  opacity: 1;
  transition: opacity 1s ease 0.5s;
}

#site_loader_overlay.start_loading #loader_logo_image + #loader_catch {
  opacity: 1;
  transition: opacity 1s ease 1s;
}

#loader_catch .sp {
  display: none;
}

@media screen and (max-width: 1100px) {
  #loader_catch {
    font-size: 29px;
  }
}
@media screen and (max-width: 800px) {
  #loader_catch {
    font-size: 22px;
  }
  #loader_catch .pc {
    display: none;
  }
  #loader_catch .sp {
    display: block;
  }
}
#loader_logo_image {
  opacity: 0;
}

#site_loader_overlay.start_loading #loader_logo_image {
  opacity: 1;
  transition: opacity 1s ease 0.5s;
}

#loader_logo_image img {
  display: block;
  margin: 0 auto;
}

#loader_logo_image .mobile {
  display: none;
}

@media screen and (max-width: 800px) {
  #loader_logo_image .pc {
    display: none;
  }
  #loader_logo_image .mobile {
    display: block;
  }
}
.cb_two_column .item_list .content .headline .sub_title {
  font-size: 18px;
  color: #002179;
  font-weight: 600;
}

.cb_two_column .content {
  padding: 70px 40px;
}

/* =========================
   日本代協ニュース（安定・全情報表示版）
   ========================= */
/* --- 全体中央寄せ --- */
.daikyo-news {
  max-width: 1000px;
  margin: 0 auto;
  text-align: left;
  overflow-x: auto; /* 横スクロールを許可 */
  -webkit-overflow-scrolling: touch;
}

/* --- テーブル本体 --- */
#cooperation table {
  border-collapse: collapse;
  width: 1000px;
  min-width: 600px; /* スマホで潰れないよう確保 */
  font-size: 14px;
  line-height: 1.6;
  table-layout: auto;
}

/* --- 行の罫線 --- */
#cooperation table tr {
  border-bottom: 1px solid #ddd;
}

/* --- 各セル共通設定 --- */
#cooperation table td {
  padding: 6px 10px;
  vertical-align: middle;
  white-space: nowrap;
}

/* --- NEW列 --- */
#cooperation table td:first-child {
  color: #e74c3c;
  font-weight: bold;
  width: 60px;
  text-align: center;
}

/* --- お知らせタグ列 --- */
#cooperation table td:nth-child(2) {
  background: #0062a4;
  color: #fff;
  font-size: 12px;
  width: 80px;
  text-align: center;
  border-radius: 3px;
}

/* --- 日付列 --- */
#cooperation table td:nth-child(3) {
  color: #555;
  width: 90px;
  text-align: center;
}

/* --- タイトル列（本文） --- */
#cooperation table td:nth-child(4) {
  white-space: normal;
  word-break: break-word;
}

/* --- リンク装飾 --- */
#cooperation table a {
  color: #333;
  text-decoration: none;
}

#cooperation table a:hover {
  text-decoration: underline;
}

/* --- スマホ対応（テーブルをスクロール表示） --- */
@media screen and (max-width: 768px) {
  .daikyo-news {
    width: 95%;
    overflow-x: auto;
  }
  #cooperation table {
    min-width: 650px; /* スマホでも4列見切れない最小幅 */
  }
  #cooperation table td {
    font-size: 13px;
    padding: 5px 8px;
  }
}
/* ===== 日本代協ニュース レイアウト（NEW・お知らせ非表示ver） ===== */
.daikyo-news {
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
}

.daikyo-news table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.6;
  table-layout: fixed;
  border: 1px solid #ddd;
}

.daikyo-news tr {
  border-bottom: 1px solid #ddd;
}

.daikyo-news td {
  padding: 8px 10px;
  vertical-align: middle;
  border-right: 1px solid #eee;
}

/* === NEWとお知らせ列を非表示 === */
.daikyo-news td:first-child,
.daikyo-news td:nth-child(2) {
  display: none;
}

/* 日付列 */
.daikyo-news td:nth-child(3) {
  color: #555;
  text-align: center;
  width: 120px;
  white-space: nowrap;
}

/* タイトル列（広げる） */
.daikyo-news td:nth-child(4) {
  color: #333;
  font-size: 14px;
  white-space: normal;
  word-break: break-word;
}

/* リンク */
.daikyo-news a {
  color: #333;
  text-decoration: none;
}

.daikyo-news a:hover {
  text-decoration: underline;
}

/* スマホ調整 */
@media screen and (max-width: 768px) {
  .daikyo-news td {
    padding: 6px;
    font-size: 13px;
  }
  .daikyo-news td:nth-child(3) {
    width: 100px;
  }
}
/* ===== 日本代協ニュース シンプル版（タイトルのみ） ===== */
.daikyo-news {
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
}

.daikyo-news table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.7;
  table-layout: fixed;
  border: 1px solid #ddd;
}

.daikyo-news tr {
  border-bottom: 1px solid #ddd;
}

.daikyo-news td {
  padding: 10px 15px;
  vertical-align: middle;
  border-right: none;
}

/* === NEW・お知らせ・日付すべて非表示 === */
.daikyo-news td:first-child,
.daikyo-news td:nth-child(2),
.daikyo-news td:nth-child(3) {
  display: none;
}

/* タイトル列（唯一の表示列） */
.daikyo-news td:nth-child(4) {
  white-space: normal;
  word-break: break-word;
  color: #333;
  font-size: 15px;
}

/* リンク */
.daikyo-news a {
  color: #333;
  text-decoration: none;
}

.daikyo-news a:hover {
  text-decoration: underline;
}

/* スマホ調整 */
@media screen and (max-width: 768px) {
  .daikyo-news td {
    padding: 8px 10px;
    font-size: 14px;
  }
}
/* タイトル行ごと非表示にする */
#cooperation .title,
#cooperation h2,
#cooperation .title_area {
  display: none !important;
}

/* 日本代協ニュースセクションの余白を調整 */
#cooperation {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* wrap（内側コンテナ）の余白もリセット */
#cooperation .wrap {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* section全体（ブロック単位）に余白がある場合 */
section#news,
section#cooperation {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ====== 検索フォーム ====== */
.pdb-searchform {
  border-top: 3px solid #2a74c0;
  padding-top: 8px;
  margin-bottom: 20px;
}

.pdb-searchform .search-field {
  display: flex;
  align-items: center;
  margin: 10px 0;
}

.pdb-searchform label {
  width: 110px;
  min-width: 110px;
  background: #2a74c0;
  color: #fff;
  font-weight: 700;
  border-radius: 3px;
  padding: 8px 10px;
  margin-right: 12px;
  letter-spacing: 0.1em;
}

.pdb-searchform input[type=text],
.pdb-searchform select {
  width: 280px;
  max-width: 100%;
  padding: 8px 10px;
  border: 1px solid #cfd4da;
  border-radius: 4px;
  background: #fff;
}

.pdb-searchform input[type=submit] {
  background: #2a74c0;
  color: #fff;
  border: 0;
  padding: 8px 22px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.15em;
}

/* ====== 一覧（支部見出し＋行） ====== */
.pdb-branch-title {
  margin-top: 22px;
  padding: 8px 10px;
  border-top: 3px solid #2a74c0;
  border-bottom: 1px solid #e2e6ea;
  font-weight: 700;
  color: #000;
}

.pdb-member-row {
  padding: 12px 0;
  border-bottom: 1px solid #e8ecef;
}

.pdb-member-line {
  font-size: 15px;
}

.pdb-company {
  font-weight: 700;
}

.pdb-city {
  color: #666;
}

.pdb-phone {
  color: #333;
  margin-top: 3px;
}

.pdb-site a {
  font-size: 13px;
  text-decoration: underline;
}

/* レスポンシブ微調整 */
@media (max-width: 640px) {
  .pdb-searchform label {
    width: 88px;
    min-width: 88px;
    padding: 7px 8px;
  }
  .pdb-searchform input[type=text], .pdb-searchform select {
    width: 100%;
  }
}
/* 会員一覧ページ（ID:172）だけフォントを小さく */
body.page-id-172 table,
body.page-id-172 th,
body.page-id-172 td {
  font-size: 13px;
  line-height: 1.6;
  padding: 6px 8px;
}

/* 会員一覧ページ（ID:172）の電話番号を折り返さない */
body.page-id-172 td,
body.page-id-172 th {
  white-space: nowrap;
}

/* テーブル全体の見た目を少し調整（オプション） */
body.page-id-172 table {
  table-layout: auto;
  width: 100%;
}

/* --- 会員一覧テーブルの縦線を消す --- */
.page-id-172 table.wp-list-table,
.page-id-172 table.wp-list-table th,
.page-id-172 table.wp-list-table td,
.page-id-172 table.pdb-list-table,
.page-id-172 table.pdb-list-table th,
.page-id-172 table.pdb-list-table td {
  border: none !important; /* 縦線・横線すべて消す */
  border-collapse: collapse !important;
}

/* 横線だけ薄く残す（不要ならこのブロック削除OK） */
.page-id-172 table.wp-list-table td,
.page-id-172 table.pdb-list-table td {
  border-bottom: 1px solid #eee !important;
}

/* 電話番号の折り返し防止 */
.page-id-172 table.wp-list-table td:nth-child(4),
.page-id-172 table.pdb-list-table td:nth-child(4) {
  white-space: nowrap !important;
}

/* スマホ表示では「会社名」と「支部」だけ表示 */
@media (max-width: 768px) {
  /* 「市」「電話番号」「web site」列を非表示 */
  table.wp-list-table td:nth-child(3),
  table.wp-list-table td:nth-child(4),
  table.wp-list-table td:nth-child(5),
  table.wp-list-table th:nth-child(3),
  table.wp-list-table th:nth-child(4),
  table.wp-list-table th:nth-child(5),
  table.pdb-list-table td:nth-child(3),
  table.pdb-list-table td:nth-child(4),
  table.pdb-list-table td:nth-child(5),
  table.pdb-list-table th:nth-child(3),
  table.pdb-list-table th:nth-child(4),
  table.pdb-list-table th:nth-child(5) {
    display: none !important;
  }
  /* 支部列の幅を少し広げて見やすくする */
  table.wp-list-table td:nth-child(2),
  table.pdb-list-table td:nth-child(2) {
    width: 40% !important;
  }
  /* テーブル全体を見やすく */
  table.wp-list-table,
  table.pdb-list-table {
    font-size: 14px;
  }
}
/* 検索フォームのデザイン調整 */
.pdb-searchform {
  border: none !important;
  box-shadow: none !important;
}

/* セレクトボックスと入力欄 */
.pdb-searchform select,
.pdb-searchform input[type=text] {
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 6px 10px;
  font-size: 14px;
  color: #333;
}

/* ボタンデザイン */
.pdb-searchform input[type=submit],
.pdb-searchform input[type=reset] {
  background-color: #2c3e50 !important; /* ネイビー統一 */
  border: none;
  color: #fff;
  padding: 6px 18px;
  border-radius: 4px;
  font-weight: bold;
  letter-spacing: 1px;
  transition: 0.3s;
}

.pdb-searchform input[type=submit]:hover,
.pdb-searchform input[type=reset]:hover {
  background-color: #1a242f !important;
}

/* テーブルの青線削除 */
.wp-list-table,
.wp-list-table th,
.wp-list-table td {
  border-color: #e0e0e0 !important;
}

/* 弁護士グループページの縦線削除 */
.page-id-193 .s_table table,
.page-id-193 .s_table th,
.page-id-193 .s_table td {
  border: none !important;
  border-left: none !important;
  border-right: none !important;
  border-collapse: collapse !important;
  outline: none !important;
  box-shadow: none !important;
}

/* 擬似線を完全に無効化 */
.page-id-193 .s_table table::before,
.page-id-193 .s_table table::after,
.page-id-193 .s_table th::before,
.page-id-193 .s_table td::before,
.page-id-193 .s_table th::after,
.page-id-193 .s_table td::after {
  content: none !important;
  border: none !important;
  box-shadow: none !important;
}

/* 横線（行区切り）だけ残したい場合はこちら */
.page-id-193 .s_table tr {
  border-bottom: 1px solid #ddd !important;
}

/* セル余白と整列 */
.page-id-193 .s_table th,
.page-id-193 .s_table td {
  padding: 10px 14px !important;
  text-align: left !important;
  vertical-align: middle !important;
}

/*固定ページの大見出し*/
#page_header {
  /*     aspect-ratio: 1370 / 360; */
  height: 360px;
}

#page_header .headline {
  background: transparent;
  width: 80%;
  top: auto;
  transform: none;
  display: block;
  left: 50px;
  text-align: left;
  height: auto;
  bottom: 40px;
}

/*固定ページの見出し*/
.post_content h3 {
  padding-left: 25px;
  font-size: 26px;
  font-weight: 600;
  position: relative;
  line-height: 1.5;
}

.post_content h3 span {
  color: #947D66;
  font-size: 13px;
  display: block;
  line-height: 1;
  font-family: "Times New Roman", Times, "Yu Mincho", "游明朝", "游明朝体", "Hiragino Mincho Pro", serif;
}

.post_content h3::before {
  content: "";
  width: 4px;
  height: 53px;
  left: 0;
  top: 50%;
  transform: rotate(12deg) translateY(-50%);
  position: absolute;
  background: #947D66;
}

@media (max-width: 768px) {
  #page_header {
    /*     aspect-ratio: 1370 / 360; */
    height: 400px;
  }
  .post_content h3 {
    font-size: 20px;
  }
  .post_content h3 span {
    font-size: 12px;
  }
  .post_content h3::before {
    height: 45px;
  }
}
:root {
  --wp-block-synced-color: #7a00df;
  --wp-block-synced-color--rgb: 122, 0, 223;
  --wp-bound-block-color: var(--wp-block-synced-color);
  --wp-editor-canvas-background: #ddd;
  --wp-admin-theme-color: #007cba;
  --wp-admin-theme-color--rgb: 0, 124, 186;
  --wp-admin-theme-color-darker-10: #006ba1;
  --wp-admin-theme-color-darker-10--rgb: 0, 107, 160.5;
  --wp-admin-theme-color-darker-20: #005a87;
  --wp-admin-theme-color-darker-20--rgb: 0, 90, 135;
  --wp-admin-border-width-focus: 2px ;
}

@media (min-resolution: 192dpi) {
  :root {
    --wp-admin-border-width-focus: 1.5px ;
  }
}
.wp-element-button {
  cursor: pointer;
}

:root .has-very-light-gray-background-color {
  background-color: #eee;
}

:root .has-very-dark-gray-background-color {
  background-color: #313131;
}

:root .has-very-light-gray-color {
  color: #eee;
}

:root .has-very-dark-gray-color {
  color: #313131;
}

:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {
  background: linear-gradient(135deg, #00d084, #0693e3);
}

:root .has-purple-crush-gradient-background {
  background: linear-gradient(135deg, #34e2e4, #4721fb 50%, #ab1dfe);
}

:root .has-hazy-dawn-gradient-background {
  background: linear-gradient(135deg, #faaca8, #dad0ec);
}

:root .has-subdued-olive-gradient-background {
  background: linear-gradient(135deg, #fafae1, #67a671);
}

:root .has-atomic-cream-gradient-background {
  background: linear-gradient(135deg, #fdd79a, #004a59);
}

:root .has-nightshade-gradient-background {
  background: linear-gradient(135deg, #330968, #31cdcf);
}

:root .has-midnight-gradient-background {
  background: linear-gradient(135deg, #020381, #2874fc);
}

:root {
  --wp--preset--font-size--normal: 16px;
  --wp--preset--font-size--huge: 42px ;
}

.has-regular-font-size {
  font-size: 1em;
}

.has-larger-font-size {
  font-size: 2.625em;
}

.has-normal-font-size {
  font-size: var(--wp--preset--font-size--normal);
}

.has-huge-font-size {
  font-size: var(--wp--preset--font-size--huge);
}

.has-text-align-center {
  text-align: center;
}

.has-text-align-left {
  text-align: left;
}

.has-text-align-right {
  text-align: right;
}

.has-fit-text {
  white-space: nowrap !important;
}

#end-resizable-editor-section {
  display: none;
}

.aligncenter {
  clear: both;
}

.items-justified-left {
  justify-content: flex-start;
}

.items-justified-center {
  justify-content: center;
}

.items-justified-right {
  justify-content: flex-end;
}

.items-justified-space-between {
  justify-content: space-between;
}

.screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #ddd;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

html :where(.has-border-color) {
  border-style: solid;
}

html :where([style*=border-top-color]) {
  border-top-style: solid;
}

html :where([style*=border-right-color]) {
  border-right-style: solid;
}

html :where([style*=border-bottom-color]) {
  border-bottom-style: solid;
}

html :where([style*=border-left-color]) {
  border-left-style: solid;
}

html :where([style*=border-width]) {
  border-style: solid;
}

html :where([style*=border-top-width]) {
  border-top-style: solid;
}

html :where([style*=border-right-width]) {
  border-right-style: solid;
}

html :where([style*=border-bottom-width]) {
  border-bottom-style: solid;
}

html :where([style*=border-left-width]) {
  border-left-style: solid;
}

html :where(img[class*=wp-image-]) {
  height: auto;
  max-width: 100%;
}

:where(figure) {
  margin: 0 0 1em;
}

html :where(.is-position-sticky) {
  --wp-admin--admin-bar--position-offset: var(--wp-admin--admin-bar--height, 0px) ;
}

@media screen and (max-width: 600px) {
  html :where(.is-position-sticky) {
    --wp-admin--admin-bar--position-offset: 0px ;
  }
}

/*! This file is auto-generated */
.wp-block-button__link {
  color: #fff;
  background-color: #32373c;
  border-radius: 9999px;
  box-shadow: none;
  text-decoration: none;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  font-size: 1.125em;
}

.wp-block-file__button {
  background: #32373c;
  color: #fff;
  text-decoration: none;
}


:root {
  --wp--preset--aspect-ratio--square: 1;
  --wp--preset--aspect-ratio--4-3: 4/3;
  --wp--preset--aspect-ratio--3-4: 3/4;
  --wp--preset--aspect-ratio--3-2: 3/2;
  --wp--preset--aspect-ratio--2-3: 2/3;
  --wp--preset--aspect-ratio--16-9: 16/9;
  --wp--preset--aspect-ratio--9-16: 9/16;
  --wp--preset--color--black: #000000;
  --wp--preset--color--cyan-bluish-gray: #abb8c3;
  --wp--preset--color--white: #ffffff;
  --wp--preset--color--pale-pink: #f78da7;
  --wp--preset--color--vivid-red: #cf2e2e;
  --wp--preset--color--luminous-vivid-orange: #ff6900;
  --wp--preset--color--luminous-vivid-amber: #fcb900;
  --wp--preset--color--light-green-cyan: #7bdcb5;
  --wp--preset--color--vivid-green-cyan: #00d084;
  --wp--preset--color--pale-cyan-blue: #8ed1fc;
  --wp--preset--color--vivid-cyan-blue: #0693e3;
  --wp--preset--color--vivid-purple: #9b51e0;
  --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgb(6, 147, 227) 0%, rgb(155, 81, 224) 100%);
  --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, rgb(122, 220, 180) 0%, rgb(0, 208, 130) 100%);
  --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgb(252, 185, 0) 0%, rgb(255, 105, 0) 100%);
  --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgb(255, 105, 0) 0%, rgb(207, 46, 46) 100%);
  --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, rgb(238, 238, 238) 0%, rgb(169, 184, 195) 100%);
  --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, rgb(74, 234, 220) 0%, rgb(151, 120, 209) 20%, rgb(207, 42, 186) 40%, rgb(238, 44, 130) 60%, rgb(251, 105, 98) 80%, rgb(254, 248, 76) 100%);
  --wp--preset--gradient--blush-light-purple: linear-gradient(135deg, rgb(255, 206, 236) 0%, rgb(152, 150, 240) 100%);
  --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, rgb(254, 205, 165) 0%, rgb(254, 45, 45) 50%, rgb(107, 0, 62) 100%);
  --wp--preset--gradient--luminous-dusk: linear-gradient(135deg, rgb(255, 203, 112) 0%, rgb(199, 81, 192) 50%, rgb(65, 88, 208) 100%);
  --wp--preset--gradient--pale-ocean: linear-gradient(135deg, rgb(255, 245, 203) 0%, rgb(182, 227, 212) 50%, rgb(51, 167, 181) 100%);
  --wp--preset--gradient--electric-grass: linear-gradient(135deg, rgb(202, 248, 128) 0%, rgb(113, 206, 126) 100%);
  --wp--preset--gradient--midnight: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
  --wp--preset--font-size--small: 13px;
  --wp--preset--font-size--medium: 20px;
  --wp--preset--font-size--large: 36px;
  --wp--preset--font-size--x-large: 42px;
  --wp--preset--spacing--20: 0.44rem;
  --wp--preset--spacing--30: 0.67rem;
  --wp--preset--spacing--40: 1rem;
  --wp--preset--spacing--50: 1.5rem;
  --wp--preset--spacing--60: 2.25rem;
  --wp--preset--spacing--70: 3.38rem;
  --wp--preset--spacing--80: 5.06rem;
  --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);
  --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);
  --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);
  --wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);
  --wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);
}

:where(.is-layout-flex) {
  gap: 0.5em;
}

:where(.is-layout-grid) {
  gap: 0.5em;
}

body .is-layout-flex {
  display: flex;
}

.is-layout-flex {
  flex-wrap: wrap;
  align-items: center;
}

.is-layout-flex > :is(*, div) {
  margin: 0;
}

body .is-layout-grid {
  display: grid;
}

.is-layout-grid > :is(*, div) {
  margin: 0;
}

:where(.wp-block-columns.is-layout-flex) {
  gap: 2em;
}

:where(.wp-block-columns.is-layout-grid) {
  gap: 2em;
}

:where(.wp-block-post-template.is-layout-flex) {
  gap: 1.25em;
}

:where(.wp-block-post-template.is-layout-grid) {
  gap: 1.25em;
}

.has-black-color {
  color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-color {
  color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-color {
  color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-color {
  color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-color {
  color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-color {
  color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-color {
  color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-color {
  color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-color {
  color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-color {
  color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-color {
  color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-color {
  color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-background-color {
  background-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-background-color {
  background-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-background-color {
  background-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-background-color {
  background-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-background-color {
  background-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-background-color {
  background-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-background-color {
  background-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-background-color {
  background-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-background-color {
  background-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-background-color {
  background-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-background-color {
  background-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-background-color {
  background-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-border-color {
  border-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-border-color {
  border-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-border-color {
  border-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-border-color {
  border-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-border-color {
  border-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-border-color {
  border-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-border-color {
  border-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-border-color {
  border-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-border-color {
  border-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-border-color {
  border-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-border-color {
  border-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-border-color {
  border-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-vivid-cyan-blue-to-vivid-purple-gradient-background {
  background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;
}

.has-light-green-cyan-to-vivid-green-cyan-gradient-background {
  background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;
}

.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
  background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;
}

.has-luminous-vivid-orange-to-vivid-red-gradient-background {
  background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;
}

.has-very-light-gray-to-cyan-bluish-gray-gradient-background {
  background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;
}

.has-cool-to-warm-spectrum-gradient-background {
  background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;
}

.has-blush-light-purple-gradient-background {
  background: var(--wp--preset--gradient--blush-light-purple) !important;
}

.has-blush-bordeaux-gradient-background {
  background: var(--wp--preset--gradient--blush-bordeaux) !important;
}

.has-luminous-dusk-gradient-background {
  background: var(--wp--preset--gradient--luminous-dusk) !important;
}

.has-pale-ocean-gradient-background {
  background: var(--wp--preset--gradient--pale-ocean) !important;
}

.has-electric-grass-gradient-background {
  background: var(--wp--preset--gradient--electric-grass) !important;
}

.has-midnight-gradient-background {
  background: var(--wp--preset--gradient--midnight) !important;
}

.has-small-font-size {
  font-size: var(--wp--preset--font-size--small) !important;
}

.has-medium-font-size {
  font-size: var(--wp--preset--font-size--medium) !important;
}

.has-large-font-size {
  font-size: var(--wp--preset--font-size--large) !important;
}

.has-x-large-font-size {
  font-size: var(--wp--preset--font-size--x-large) !important;
}

/*ウェルカムアニメーション*/
#site_loader_overlay.start_loading #loader_logo_image img {
  max-width: 260px;
  max-height: 260px;
}

.main_ttl {
  font-size: 28px;
  align-items: flex-start;
  justify-content: center;
  display: flex;
  flex-direction: column;
  height: 140px;
  background: #F8F6F4;
  padding-left: 8%;
}

.activity_container {
  max-width: 1000px;
  margin: 80px auto;
}
.activity_container a {
  transition: 0.3s;
}
.activity_container a:hover {
  opacity: 0.7;
}
.activity_container h4 {
  margin-bottom: 64px;
}
@media screen and (max-width: 1040px) {
  .activity_container {
    width: 90%;
    margin: 64px auto;
  }
  .activity_container h4 {
    margin-bottom: 48px;
  }
}
.activity_container .archive-ttl {
  font-size: 28px;
  padding: 30px 0 0;
  margin-bottom: 48px;
}
.activity_container .archive-ttl::after {
  content: "";
  width: 100%;
  background: #f9f4f0;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.activity_container .adetail p {
  margin-bottom: 10px;
}
.activity_container .adetail .txt img.lefti,
.activity_container .adetail .txt img.righti {
  display: inline-block;
  vertical-align: top;
  width: 490px; /* (1000 - 20) / 2 */
  height: auto;
  margin-top: 20px;
}
@media screen and (max-width: 1040px) {
  .activity_container .adetail .txt img.lefti,
  .activity_container .adetail .txt img.righti {
    width: 100%;
  }
}
.activity_container .adetail .txt img.lefti {
  margin-right: 15px;
}
.activity_container .adetail .txt img {
  margin-top: 20px;
}
@media screen and (max-width: 800px) {
  .activity_container .adetail .txt img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
}
.activity_container .adetail img.lefti + p {
  padding: 20px 0 0;
}
.activity_container .adetail .txt a {
  padding: 30px 0;
  color: #947D66;
  text-decoration: underline;
}
.activity_container .adetail .back {
  clear: both;
  padding-top: 30px;
  text-align: right;
  background: url(../images/lmenu_arrow.png) no-repeat 580px 37px;
}
.activity_container .adetail .back a:link,
.activity_container .adetail .back a:visited {
  color: #333;
  text-decoration: underline;
}
.activity_container .adetail .back a:hover,
.activity_container .adetail .back a:active {
  color: #333;
  text-decoration: none;
}
.activity_container .maincolumn .adetail .back {
  background: none;
}
.activity_container .maincolumn .adetail .back a {
  padding: 20px;
  max-width: 600px;
  width: 80%;
  margin: 40px auto;
  background: #947D66;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.maincolumn.archive_index {
  max-width: 1000px;
  margin: 80px auto;
}
.maincolumn.archive_index h4 {
  margin-bottom: 64px;
}
@media screen and (max-width: 1040px) {
  .maincolumn.archive_index {
    width: 90%;
    margin: 64px auto;
  }
  .maincolumn.archive_index h4 {
    margin-bottom: 48px;
  }
}
.maincolumn.archive_index .activity dl dt {
  flex-basis: 22%;
}
.maincolumn.archive_index .activity dl dd {
  flex-basis: 78%;
}
.maincolumn.archive_index .activity dl dd a {
  padding-bottom: 0;
  line-height: 1.8;
  display: inline-block;
}

.letter_contents .letter_shibubtn_container a {
  padding: 20px;
  border-bottom: 1px solid #ccc;
  display: block;
}
.letter_contents .letter_shibubtn_container a span {
  margin-left: 20px;
}
.letter_contents .letter_shibubtn_container a span img {
  vertical-align: baseline;
  width: 8px;
  height: 10px;
  object-fit: contain;
}

.letter_contents.wide {
  max-width: 1200px;
  width: 90%;
}
.letter_contents.wide .letter-flex {
  display: flex;
  flex-direction: reverse;
  position: static;
  justify-content: space-between;
}
@media screen and (max-width: 800px) {
  .letter_contents.wide .letter-flex {
    flex-direction: column;
    gap: 30px;
  }
}
.letter_contents.wide .letter-flex .maincolumn {
  flex-basis: 72%;
}
.letter_contents.wide .letter-flex .leftcolumn {
  flex-basis: 23%;
  position: sticky;
}
.letter_contents.wide .letter-flex .leftcolumn h4 {
  margin-bottom: 4px;
  font-family: serif;
  padding-bottom: 5px;
  background: #F8F6F4;
  padding-left: 10px;
}
.letter_contents.wide .letter-flex .leftcolumn .letter_shibubtn_container a {
  padding: 10px 0;
}