/* Fuwari共通設定。スマートフォンを基本にし、768px以上でPC表示に切り替えます。 */
.hero-kadoma .keni-mv_outer { background-image: url("images/kadoma1.png"); }
.hero-kawarayamachi .keni-mv_outer { background-image: url("images/kawarayamachi1.png"); }
.site-embed { width: 100%; border: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { overflow-wrap: anywhere; }
img { max-width: 100%; height: auto; }
button { font-family: inherit; }
a:focus-visible, button:focus-visible { outline: 2px solid #406b83; outline-offset: 3px; }
/* メニュー等の表示変更は、JSによるstyle属性の書き換えを使いません。 */
.keni-header_wrap { position: sticky; top: 0; z-index: 100; }
.keni-gnav_btn { border: 0; padding: 0; }
.keni-header_col2 .site-title { max-width: calc(100% - 48px); }
.site-title > a span { display: block; font-size: 1.6rem; white-space: nowrap; }
.keni-gnav_inner { top: 80px; max-width: calc(100vw - 20px); max-height: calc(100dvh - 130px); overscroll-behavior: contain; }
.nav-open .keni-gnav_inner { display: block; }
.nav-open { overflow: hidden; }
#click-space { display: none; inset: 0; }
.nav-open #click-space { display: block; }
.keni-gnav_btn[aria-expanded="true"] .keni-gnav_btn_icon-open { background: transparent; }
.keni-gnav_btn[aria-expanded="true"] .keni-gnav_btn_icon-open::before { margin-top: 0; transform: rotate(45deg); }
.keni-gnav_btn[aria-expanded="true"] .keni-gnav_btn_icon-open::after { margin-top: 0; transform: rotate(-45deg); }
.keni-container { overflow: clip; padding-bottom: calc(44px + env(safe-area-inset-bottom)); }
.keni-footer-panel_wrap { position: fixed; bottom: 0; padding-bottom: env(safe-area-inset-bottom); }
.page-top.is-visible { display: block; bottom: calc(44px + env(safe-area-inset-bottom)); }
.keni-main .fl-l, .keni-main .fl-r { float: none; max-width: 100%; margin-right: 0; margin-left: 0; }
@media (min-width: 480px) {
  .keni-main .fl-l { float: left; margin-right: 1em; }
  .keni-main .fl-r { float: right; margin-left: 1em; }
}
@media (min-width: 768px) {
  .keni-header_wrap { position: static; }
  .keni-header_col2 .site-title { max-width: 65%; }
  .site-title > a span { display: inline; font-size: inherit; white-space: normal; }
  .keni-gnav_inner { top: auto; max-width: none; max-height: none; }
  .keni-container { padding-bottom: 0; }
  .page-top.is-visible { bottom: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
