/* 指示書06。本番のPC1440 / SP390の公開画面を基準にした表示補正。 */

/* 1: 現在のページだけを薄くする。親ページやメニューの順番では判定しない。 */
.desktop-nav .current-menu-item > a,
.footer-brand .current-menu-item > a { color: rgba(0, 0, 0, .5); }

/* 2: 本文の空段落・brを残し、旧テーマの段落間隔へ戻す。 */
.hodaikyo-page .m-text > p { margin-bottom: 2.15em; }
.hodaikyo-page .m-text > p:last-child { margin-bottom: 0; }

/* 3: 旧アンカー内の文字色と矢印。既存の白文字リンクには影響させない。 */
body.page-id-140 .m-button,
body.page-id-154 .m-button,
body.page-id-584 .m-button,
body.error404 .m-button { color: #000; }
.m-button-arrow { display: inline-block; flex: 0 0 auto; margin-right: .5em; font: 1.25em/1 sans-serif; }
.home-hero #top_main_news2 .m-button:has(.m-button-arrow)::before { content: none; }
body.page-id-154 .m-button { padding-bottom: 14px; }

/* 4: 共通末尾は本文の基準サイズ（通常14px、SP12px、記事16px）に追従。 */
.site-ending { font-size: var(--ending-font); }
.site-ending .office-photo { height: auto; padding: 8em 0 15em; }
.site-ending .office-address { width: 18.65em; max-width: 88%; margin-left: auto; margin-right: max(6%, calc((100% - 1200px) / 2)); padding-right: 0; }
.site-ending .office-address h2,
.site-ending .footer-office h2 { margin-bottom: var(--ending-font); }
.site-ending .office-address p,
.site-ending .footer-office p { margin: 0; }
.site-ending .access-button { display: inline-flex; align-items: center; justify-content: center; width: 110px; height: calc(2em + 12px); padding: 0; margin-top: var(--ending-font); }
.site-ending .contact-banner { padding: 7em 5em; margin-top: -10.8em; gap: 3em; }
.site-ending .footer-inner { margin-top: calc(4em + 45px); margin-bottom: 45px; padding: 5em 5.4vw; }
.site-ending .footer-brand { width: 49.5%; }
.site-ending .footer-brand nav { max-width: none; }
.site-ending .footer-brand .nav-list { gap: 0; }
.site-ending .footer-brand li { min-width: 0; }
.site-ending .footer-brand .nav-list a { display: block; padding: 0 15.5px; }
.site-ending .footer-office .copyright { margin-top: 3em; }

/* 5: detailsの開閉動作は保ち、帯の幅・記号・配置をそろえる。 */
.event-accordion { width: 100%; }
.event-panel { border: 0; border-radius: 4px; margin-bottom: 0; box-shadow: 0 2px 5px #0003; }
.event-panel + .event-panel { margin-top: 3em; }
.event-panel summary { display: flex; align-items: center; padding: 15px 20px; border-radius: 4px; text-align: left; }
.event-panel summary::-webkit-details-marker { display: none; }
.event-panel summary::before { content: '▸'; flex: 0 0 auto; width: .86em; margin-right: .5em; font-weight: inherit; line-height: 1; }
.event-panel[open] summary::before { content: '▾'; }
.event-panel[open] summary { border-bottom: 0; }
.event-panel-content { padding: 20px; }
body.page-id-323 .hodaikyo-page #news_title { gap: 0; }

/* 6: 本番の薄い赤は点滅の途中の色。色・寸法と透明度の変化を引き継ぐ。 */
.new-badge { background: #d80000; display: flex; align-items: center; justify-content: center; animation: hodaikyo-new 1s linear infinite; }
.new-badge, .badge-space { position: relative; top: -10px; margin-bottom: 0; }
.member-tablist button { flex: 1 1 auto; padding: .75em 1.5em; }
.member-tabpanel { margin-top: 27px; }
@keyframes hodaikyo-new { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .new-badge { animation: none; } }
body.home .b3box_txt { white-space: nowrap; overflow-wrap: normal; }
body.home .p7-text-126 { white-space: nowrap; }

/* 7: 旧ビデオ枠の白地。会費は旧カラムの比率とem単位の間隔を引き継ぐ。 */
.m-video { background: #fff; }
@media (min-width: 980px) {
  .hodaikyo-page .p148-layout-row-079 { grid-template-columns: minmax(0, calc(28% - 3.6em)) minmax(0, 1fr); column-gap: 5em; }
  .hodaikyo-page .p148-layout-column-082 > .m-layout-row { grid-template-columns: minmax(0, calc(40% - .6em)) minmax(0, calc(20% - .8em)) minmax(0, calc(40% - .6em)); column-gap: 1em; }
}
@media (min-width: 980px) and (max-width: 1199px) {
  .hodaikyo-page .p148-layout-row-079 { grid-template-columns: minmax(0, calc(31% - 3.45em)) minmax(0, 1fr); }
}

@media (max-width: 767px) {
  .hodaikyo-page .site-ending .office-photo,
  .site-ending .office-photo { height: auto; padding-top: 4em; padding-bottom: 8em; }
  .hodaikyo-page .site-ending .office-address,
  .site-ending .office-address { width: 18.65em; margin-left: auto; margin-right: 6%; padding-right: 0; }
  .hodaikyo-page .site-ending .contact-banner,
  .site-ending .contact-banner { padding: 4em 2.4em; margin-top: -4.24em; gap: 0; flex-direction: column; align-items: flex-start; }
  .site-ending .contact-banner span:first-child { margin-left: 0; white-space: nowrap; }
  .site-ending .contact-banner span:last-child { align-self: flex-start; margin-left: 2.4em; }
  .hodaikyo-page .site-ending .contact-banner,
  .page-id-461 .site-ending .contact-banner,
  .page-id-516 .site-ending .contact-banner,
  .site-ending-small .contact-banner { flex-direction: row; align-items: center; gap: 2.4em; }
  .hodaikyo-page .site-ending .contact-banner span:last-child,
  .page-id-461 .site-ending .contact-banner span:last-child,
  .page-id-516 .site-ending .contact-banner span:last-child,
  .site-ending-small .contact-banner span:last-child { align-self: auto; margin-left: 0; }
  .hodaikyo-page .site-ending .footer-inner,
  .site-ending .footer-inner { margin-top: calc(4em + 45px); margin-bottom: 45px; padding: 5em 5.4vw; }
  .site-ending .footer-brand { width: 100%; }
  .site-ending .footer-brand > a { display: block; margin: 0 auto 12px; }
  .hodaikyo-page .site-ending .footer-office,
  .site-ending .footer-office { width: 18.65em; max-width: 100%; margin: 3em auto 0; }
  .hodaikyo-page .site-ending .footer-office h2,
  .site-ending .footer-office h2 { margin-bottom: var(--ending-font); text-align: center; }
  .hodaikyo-page .site-ending .access-button,
  .site-ending .access-button { height: calc(2em + 12px); padding: 0; }
  body.page-id-323 .hodaikyo-page .p323-section-001 { padding-top: 0; margin-top: -20px; }
  body.page-id-323 .hodaikyo-page #news_title { display: flex; font-size: .9em; }
  body.page-id-323 .hodaikyo-page #news_title > .m-text { flex-shrink: 0; }
  body.page-id-323 .hodaikyo-page #news_title > .m-text + .m-text { margin: 0 0 0 1em; }
  .event-panel summary::before { font-size: 1.25em; }
  .member-tablist { padding: 5px; row-gap: 10px; }
  .member-tablist button { flex-basis: 33.333%; padding: .5em; margin-bottom: 0; }
  .member-tabpanel { margin-top: 19px; }
}
/* 幅320pxでも会議見出しの日本語を画面内で折り返す。 */
@media (max-width: 359px) {
  body.page-id-323 .hodaikyo-page #news_title > .m-text + .m-text {
    flex-shrink: 1;
    min-width: 0;
  }
}
/* 新CF7の段落ラッパーをまたいでも、従来の送信ボタン背景とホバーを維持する。 */
.hodaikyo-page .wpcf7 .submit-btn .submit-bg {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  width: 200%;
  height: 65px;
  background: linear-gradient(90deg, #333, #333) 100% 0 / 50% 100% no-repeat #fff;
  box-sizing: border-box;
  transform: translateX(-50%);
  transition: transform .25s;
  z-index: 1;
}
.hodaikyo-page .wpcf7 .submit-btn:has(input[type="submit"]:hover) .submit-bg {
  transform: translateX(-4px);
}
