@charset "UTF-8";
/* =========================================================
   KYOTO / SHIJO-KARASUMA ONLY / C1
   File: 06-c1-kyoto.css
   Site: イルチブレインヨガ四条烏丸スタジオ

   方針：
   - 四条烏丸固有の差分だけを追加する
   - 所沢ほか他スタジオの固有値・画像URLは転記しない
   - ヘッダー／フッターはLightning有効化後に実DOMを確認して追加する
========================================================= */
/* =========================================================
   KYOTO / LIGHTNING FOOTER FULL WIDTH FINAL
   フッターウィジェット1の3分割カラムを解除
========================================================= */

/* Lightningフッター外枠 */
html body.ilchi-studio-kyoto .site-footer,
html body.ilchi-studio-kyoto footer.site-footer,
html body.ilchi-studio-kyoto .siteFooter,
html body.ilchi-studio-kyoto footer.siteFooter {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* フッター内の親要素を全幅化 */
html body.ilchi-studio-kyoto .site-footer .container,
html body.ilchi-studio-kyoto .site-footer .container-fluid,
html body.ilchi-studio-kyoto .site-footer .row,
html body.ilchi-studio-kyoto .site-footer .widget,
html body.ilchi-studio-kyoto .site-footer .widget_custom_html,
html body.ilchi-studio-kyoto .site-footer .textwidget,
html body.ilchi-studio-kyoto .site-footer aside,
html body.ilchi-studio-kyoto .siteFooter .container,
html body.ilchi-studio-kyoto .siteFooter .container-fluid,
html body.ilchi-studio-kyoto .siteFooter .row,
html body.ilchi-studio-kyoto .siteFooter .widget,
html body.ilchi-studio-kyoto .siteFooter .widget_custom_html,
html body.ilchi-studio-kyoto .siteFooter .textwidget,
html body.ilchi-studio-kyoto .siteFooter aside {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Lightningのフッター3カラムを解除 */
html body.ilchi-studio-kyoto .site-footer [class*="col-"],
html body.ilchi-studio-kyoto .siteFooter [class*="col-"] {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 四条烏丸フッター本体 */
html body.ilchi-studio-kyoto
footer.iby-studio-footer.is-c1.is-kyoto {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/* =========================================================
   KYOTO / FOOTER SNS BUTTON
   フッターSNSをボタン表示
========================================================= */

html body.ilchi-studio-kyoto
footer.iby-studio-footer.is-kyoto
.iby-footer-sns {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 26px !important;
}

html body.ilchi-studio-kyoto
footer.iby-studio-footer.is-kyoto
.iby-footer-sns a,
html body.ilchi-studio-kyoto
footer.iby-studio-footer.is-kyoto
.iby-footer-sns a:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 108px !important;
  min-height: 40px !important;
  padding: 8px 18px !important;

  border: 1px solid rgba(255, 255, 255, 0.42) !important;
  border-radius: 999px !important;

  background: rgba(255, 255, 255, 0.10) !important;
  background-image: none !important;

  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  text-decoration: none !important;

  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease !important;
}

html body.ilchi-studio-kyoto
footer.iby-studio-footer.is-kyoto
.iby-footer-sns a:hover {
  border-color: #c8d6aa !important;
  background: rgba(255, 255, 255, 0.18) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  html body.ilchi-studio-kyoto
  footer.iby-studio-footer.is-kyoto
  .iby-footer-sns {
    justify-content: center !important;
  }

  html body.ilchi-studio-kyoto
  footer.iby-studio-footer.is-kyoto
  .iby-footer-sns a {
    flex: 0 1 104px !important;
    min-width: 104px !important;
    min-height: 40px !important;
    padding: 8px 12px !important;
  }
}
/* =========================================================
   KYOTO / HEADER TRIAL BUTTON
   PC・スマホ「体験のご予約」ボタン化
========================================================= */

/* =========================================================
   PCヘッダー
========================================================= */

@media screen and (min-width: 992px) {

  html body.ilchi-studio-kyoto
  header.site-header
  li.menu-trial-button,
  html body.ilchi-studio-kyoto
  header.siteHeader
  li.menu-trial-button {
    display: flex !important;
    align-items: center !important;
    margin-left: 10px !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header
  li.menu-trial-button > a,
  html body.ilchi-studio-kyoto
  header.siteHeader
  li.menu-trial-button > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 132px !important;
    min-height: 40px !important;
    padding: 8px 18px !important;

    border: 0 !important;
    border-radius: 999px !important;

    background: #5f7f4f !important;
    background-image: none !important;

    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;

    box-shadow: 0 8px 18px rgba(47, 70, 53, 0.18) !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header
  li.menu-trial-button > a:hover,
  html body.ilchi-studio-kyoto
  header.siteHeader
  li.menu-trial-button > a:hover {
    background: #496b3b !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
  }

  html body.ilchi-studio-kyoto
  li.menu-trial-button
  .gMenu_name {
    color: #ffffff !important;
  }
}

/* =========================================================
   スマートフォンメニュー
========================================================= */

@media screen and (max-width: 991px) {

  html body.ilchi-studio-kyoto
  .vk-mobile-nav
  li.menu-trial-button,
  html body.ilchi-studio-kyoto
  .vk-mobile-nav-menu-btn
  li.menu-trial-button {
    padding: 12px 10px !important;
    border-bottom: none !important;
  }

  html body.ilchi-studio-kyoto
  .vk-mobile-nav
  li.menu-trial-button > a,
  html body.ilchi-studio-kyoto
  .vk-mobile-nav-menu-btn
  li.menu-trial-button > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 48px !important;
    padding: 10px 18px !important;

    border: 0 !important;
    border-radius: 999px !important;

    background: #5f7f4f !important;
    background-image: none !important;

    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    text-decoration: none !important;

    box-shadow: 0 8px 18px rgba(47, 70, 53, 0.18) !important;
  }

  html body.ilchi-studio-kyoto
  .vk-mobile-nav
  li.menu-trial-button > a:hover {
    background: #496b3b !important;
    color: #ffffff !important;
  }
}
/* =========================================================
   KYOTO / PC HEADER FIT FINAL
   長いサイト名とメニュー7項目を1つのヘッダー内へ収める
========================================================= */

@media screen and (min-width: 1200px) {

  /* ヘッダー内側を広げる */
  html body.ilchi-studio-kyoto
  header.site-header .site-header-container,
  html body.ilchi-studio-kyoto
  header.site-header > .container,
  html body.ilchi-studio-kyoto
  header.siteHeader .siteHeadContainer {
    display: grid !important;
    grid-template-columns: minmax(460px, 600px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 18px !important;

    width: calc(100% - 40px) !important;
    max-width: 1500px !important;
    margin: 0 auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* サイト名をコンパクトな2行まで許可 */
  html body.ilchi-studio-kyoto
  header.site-header .site-header-logo,
  html body.ilchi-studio-kyoto
  header.siteHeader .siteHeader_logo {
    width: 100% !important;
    max-width: 600px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header .site-header-logo a,
  html body.ilchi-studio-kyoto
  header.siteHeader .siteHeader_logo a {
    display: block !important;
    font-size: clamp(16px, 1.1vw, 19px) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  /* メニュー側 */
  html body.ilchi-studio-kyoto
  header.site-header .global-nav,
  html body.ilchi-studio-kyoto
  header.siteHeader .gMenu_outer {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header ul.global-nav-list,
  html body.ilchi-studio-kyoto
  header.siteHeader ul.gMenu {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 通常メニューの文字間を少し詰める */
  html body.ilchi-studio-kyoto
  header.site-header ul.global-nav-list > li > a,
  html body.ilchi-studio-kyoto
  header.siteHeader ul.gMenu > li > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }

  /* 予約ボタンは幅を取りすぎない */
  html body.ilchi-studio-kyoto
  header.site-header li.menu-trial-button,
  html body.ilchi-studio-kyoto
  header.siteHeader li.menu-trial-button {
    flex: 0 0 auto !important;
    margin-left: 7px !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header li.menu-trial-button > a,
  html body.ilchi-studio-kyoto
  header.siteHeader li.menu-trial-button > a {
    min-width: 118px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* 1200～1399pxではさらに少しコンパクトにする */
@media screen and (min-width: 1200px) and (max-width: 1399px) {

  html body.ilchi-studio-kyoto
  header.site-header .site-header-container,
  html body.ilchi-studio-kyoto
  header.site-header > .container,
  html body.ilchi-studio-kyoto
  header.siteHeader .siteHeadContainer {
    grid-template-columns: minmax(380px, 480px) minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header .site-header-logo a,
  html body.ilchi-studio-kyoto
  header.siteHeader .siteHeader_logo a {
    font-size: 15px !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header ul.global-nav-list > li > a,
  html body.ilchi-studio-kyoto
  header.siteHeader ul.gMenu > li > a {
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 11px !important;
  }

  html body.ilchi-studio-kyoto
  header.site-header li.menu-trial-button > a,
  html body.ilchi-studio-kyoto
  header.siteHeader li.menu-trial-button > a {
    min-width: 110px !important;
    padding-left: 11px !important;
    padding-right: 11px !important;
  }
}
/* =========================================================
   KYOTO / PC HEADER TITLE 2 LINES FINAL 2
   実DOM対応版
   site-header / site-header-container / site-header-logo
========================================================= */

@media screen and (min-width: 1200px) {

  /* ヘッダー内を「サイト名＋右メニュー」の2列に固定 */
  html body.ilchi-studio-kyoto
  header#site-header
  #site-header-container {
    display: grid !important;
    grid-template-columns: 610px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 24px !important;

    width: calc(100% - 40px) !important;
    max-width: 1540px !important;
    min-height: 72px !important;

    margin: 0 auto !important;
    padding: 7px 0 !important;
    box-sizing: border-box !important;
  }

  /* サイト名領域 */
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo {
    display: block !important;
    width: 610px !important;
    max-width: 610px !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1.4 !important;
    text-align: left !important;
  }

  /*
   元タイトルはHTML上に残したまま視覚的に非表示。
   指定した文章を必ず2行で表示。
  */
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a {
    display: block !important;
    width: 100% !important;

    color: #222222 !important;
    font-size: 0 !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;

    white-space: normal !important;
    text-decoration: none !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::before {
    content: "京都市の四条・烏丸でヨガをおさがしなら、" !important;

    display: block !important;
    color: #222222 !important;

    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;

    white-space: nowrap !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::after {
    content: "イルチブレインヨガ京都四条烏丸スタジオ" !important;

    display: block !important;
    color: #222222 !important;

    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.01em !important;

    white-space: nowrap !important;
  }

  /* メニューを右側へ配置 */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav {
    justify-self: end !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;

    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 通常メニュー */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul > li {
    flex: 0 0 auto !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul > li > a {
    padding-left: 8px !important;
    padding-right: 8px !important;

    font-size: 12px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }

  /* 体験予約ボタン */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav
  li.menu-trial-button {
    flex: 0 0 auto !important;
    margin-left: 8px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav
  li.menu-trial-button > a {
    min-width: 118px !important;
    min-height: 40px !important;
    padding: 8px 14px !important;

    color: #ffffff !important;
    font-size: 13px !important;
  }
}

/* =========================================================
   1200～1399px
   少しコンパクトにして右メニューを維持
========================================================= */

@media screen and (min-width: 1200px) and (max-width: 1399px) {

  html body.ilchi-studio-kyoto
  header#site-header
  #site-header-container {
    grid-template-columns: 455px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo {
    width: 455px !important;
    max-width: 455px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::before,
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::after {
    font-size: 14px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul > li > a {
    padding-left: 5px !important;
    padding-right: 5px !important;
    font-size: 10.5px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav
  li.menu-trial-button > a {
    min-width: 104px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 11px !important;
  }
}
/* =========================================================
   KYOTO / PC HEADER COMPACT FINAL
   サイト名とメニューを中央へコンパクトにまとめる
========================================================= */

@media screen and (min-width: 1400px) {

  html body.ilchi-studio-kyoto
  header#site-header
  #site-header-container {
    grid-template-columns: 470px max-content !important;
    justify-content: center !important;
    gap: 22px !important;

    width: calc(100% - 40px) !important;
    max-width: 1360px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* サイト名 */
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo {
    width: 470px !important;
    max-width: 470px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::before,
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::after {
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  /* メニューを必要な幅だけにする */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav {
    justify-self: start !important;
    width: max-content !important;
    max-width: none !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul {
    width: max-content !important;
    column-gap: 2px !important;
    justify-content: flex-start !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul > li {
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul > li > a {
    padding-left: 7px !important;
    padding-right: 7px !important;
    font-size: 11.5px !important;
  }

  /* 予約ボタン */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav
  li.menu-trial-button {
    margin-left: 8px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav
  li.menu-trial-button > a {
    min-width: 112px !important;
    padding-left: 13px !important;
    padding-right: 13px !important;
  }
}
/* =========================================================
   KYOTO C1 TOP / APPEND
   既存の 06-c1-kyoto.css の末尾へ追加
   対象：/c-1/ および将来の固定フロントページ
========================================================= */

/* =========================================================
   1. Hero：HTML画像を前面表示
========================================================= */

html body .iby-page.iby-design-c1 .iby-c1-hero.iby-c1-hero--kyoto-fixed {
  position: relative !important;
  overflow: hidden !important;
  background: #f5f1e9 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__bg {
  display: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__image-fixed {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__image-fixed img {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: right center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__image-fixed::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(
      90deg,
      rgba(245, 241, 233, 0.98) 0%,
      rgba(245, 241, 233, 0.94) 28%,
      rgba(245, 241, 233, 0.72) 48%,
      rgba(245, 241, 233, 0.34) 66%,
      rgba(245, 241, 233, 0.06) 100%
    ) !important;
  pointer-events: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__inner {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 640px) {
  html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__image-fixed img {
    right: -250px !important;
    height: 100% !important;
    object-position: right center !important;
  }

  html body .iby-page.iby-design-c1 .iby-c1-hero--kyoto-fixed .iby-c1-hero__image-fixed::before {
    background:
      linear-gradient(
        90deg,
        rgba(245, 241, 233, 0.98) 0%,
        rgba(245, 241, 233, 0.94) 40%,
        rgba(245, 241, 233, 0.72) 62%,
        rgba(245, 241, 233, 0.28) 100%
      ) !important;
  }
}

/* =========================================================
   2. Care：左右の葉装飾
========================================================= */

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf {
  position: relative !important;
  overflow: hidden !important;
}

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf::before,
html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf::after {
  content: none !important;
  display: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__leaf {
  position: absolute !important;
  display: block !important;
  max-width: none !important;
  height: auto !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__leaf--left {
  left: -18px !important;
  bottom: 0 !important;
  width: 360px !important;
  opacity: 0.50 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__leaf--right {
  right: -16px !important;
  bottom: 0 !important;
  width: 340px !important;
  opacity: 0.48 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__inner,
html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__head,
html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__grid,
html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__card {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 640px) {
  html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__leaf--left {
    left: -24px !important;
    bottom: 10px !important;
    width: 120px !important;
    opacity: 0.28 !important;
  }

  html body .iby-page.iby-design-c1 .iby-c1-care--kyoto-leaf .iby-c1-care__leaf--right {
    right: -22px !important;
    bottom: 10px !important;
    width: 110px !important;
    opacity: 0.26 !important;
  }
}

/* =========================================================
   3. About：左の葉装飾
========================================================= */

html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf {
  position: relative !important;
  overflow: hidden !important;
}

html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf::before,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf::after {
  content: none !important;
  display: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__leaf {
  position: absolute !important;
  display: block !important;
  max-width: none !important;
  height: auto !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__leaf--left {
  left: -8px !important;
  top: 210px !important;
  width: 300px !important;
  opacity: 0.26 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__inner,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__head,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__body,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__text,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__philosophy,
html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__points {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 640px) {
  html body .iby-page.iby-design-c1 .iby-c1-about--kyoto-leaf .iby-c1-about__leaf--left {
    left: -28px !important;
    top: 150px !important;
    width: 150px !important;
    opacity: 0.18 !important;
  }
}

/* =========================================================
   4. Final CTA：左右の葉装飾
========================================================= */

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf {
  position: relative !important;
  overflow: hidden !important;
}

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf::before,
html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf::after {
  content: none !important;
  display: none !important;
}

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__leaf {
  position: absolute !important;
  display: block !important;
  max-width: none !important;
  height: auto !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__leaf--left {
  left: -18px !important;
  bottom: 8px !important;
  width: 300px !important;
  opacity: 0.38 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__leaf--right {
  right: -18px !important;
  bottom: 8px !important;
  width: 290px !important;
  opacity: 0.36 !important;
}

html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__inner {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 640px) {
  html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__leaf--left {
    left: -28px !important;
    bottom: 0 !important;
    width: 120px !important;
    opacity: 0.28 !important;
  }

  html body .iby-page.iby-design-c1 .iby-c1-final-cta--kyoto-leaf .iby-c1-final-cta__leaf--right {
    right: -28px !important;
    bottom: 0 !important;
    width: 115px !important;
    opacity: 0.26 !important;
  }
}

/* =========================================================
   5. Access：営業時間補助文字
========================================================= */

.iby-page.is-kyoto-top .iby-c1-access__text span {
  color: rgba(47, 70, 53, 0.72);
  font-size: 0.92em;
  font-weight: 500;
}

/* =========================================================
   6. Access：PCをコンパクト化・地図を同じ高さに
========================================================= */

@media screen and (min-width: 768px) {
  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access {
    padding-top: 46px !important;
    padding-bottom: 52px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__head {
    margin-bottom: 24px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__title {
    font-size: clamp(28px, 3vw, 38px) !important;
    line-height: 1.4 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__title::after {
    margin-top: 14px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__lead {
    margin-top: 14px !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__body {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__info {
    padding: 22px 24px !important;
    border-radius: 24px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__item {
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__item:last-of-type {
    margin-bottom: 0 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__label {
    margin-bottom: 3px !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__text {
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__item br + br {
    display: none !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__note {
    margin-top: 12px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__note p {
    font-size: 12px !important;
    line-height: 1.65 !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__map {
    align-self: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    border-radius: 24px !important;
  }

  .iby-page.iby-design-c1.is-kyoto-top .iby-c1-access__map iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
  }
}

/* =========================================================
   7. Hero button / care icons / Final CTA
========================================================= */

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__image-fixed,
html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__image-fixed img,
html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__image-fixed::before {
  pointer-events: none !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__inner,
html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__copy,
html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__actions {
  position: relative !important;
  z-index: 5 !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__actions {
  display: flex !important;
  justify-content: flex-start !important;
  margin-top: 30px !important;
  pointer-events: auto !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__actions .iby-c1-button,
html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__actions .iby-c1-button--primary {
  position: relative !important;
  z-index: 6 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 248px !important;
  min-height: 56px !important;
  padding: 0 30px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #5f7f4f !important;
  background-image: none !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 14px 30px rgba(62, 78, 54, 0.22) !important;
  box-sizing: border-box !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-hero__actions .iby-c1-button span {
  color: #ffffff !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top #trial-form {
  scroll-margin-top: 90px !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__icon::before {
  content: "" !important;
  display: block !important;
  position: static !important;
  inset: auto !important;
  width: 36px !important;
  height: 36px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__card--breath .iby-c1-care__icon::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCI+CjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZmOGY1ZiIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiPgo8cGF0aCBkPSJNOSAyM2gyOGM4IDAgOC0xMSAxLTExLTQgMC02IDItNyA1Ii8+CjxwYXRoIGQ9Ik04IDMyaDQwYzkgMCA5IDEzIDAgMTMtNCAwLTctMi04LTUiLz4KPHBhdGggZD0iTTEwIDQxaDE5Ii8+CjwvZz48L3N2Zz4=") !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__card--body .iby-c1-care__icon::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCI+CjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZmOGY1ZiIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPgo8cGF0aCBkPSJNNTEgMTJDMzAgMTIgMTYgMjMgMTQgNDNjMTUgNCAzMS0zIDM3LTMxWiIvPgo8cGF0aCBkPSJNMTUgNDljOC0xMyAxOC0yMSAzMi0yOSIvPgo8cGF0aCBkPSJNMjkgMzRjLTEtNS0xLTkgMC0xMyIvPgo8cGF0aCBkPSJNMzUgMzBjNSAwIDkgMSAxMyAzIi8+CjwvZz48L3N2Zz4=") !important;
}

html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__card--mind .iby-c1-care__icon::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCI+CjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZmOGY1ZiIgc3Ryb2tlLXdpZHRoPSIzLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CjxwYXRoIGQ9Ik0zMiAxM2M3IDggOSAxNiAwIDI2LTktMTAtNy0xOCAwLTI2WiIvPgo8cGF0aCBkPSJNMzEgMzljLTEwLTEtMTctNy0yMC0xNyAxMCAxIDE4IDYgMjEgMTUiLz4KPHBhdGggZD0iTTMzIDM3YzMtOSAxMS0xNCAyMC0xNS0zIDEwLTEwIDE2LTIwIDE3Ii8+CjxwYXRoIGQ9Ik0yNiA0M2MtOSAwLTE1LTQtMjAtMTEgMTAtMSAxOCAyIDI0IDEwIi8+CjxwYXRoIGQ9Ik0zOCA0M2M5IDAgMTUtNCAyMC0xMS0xMC0xLTE4IDItMjQgMTAiLz4KPHBhdGggZD0iTTEzIDQ5YzExIDQgMjcgNCAzOCAwIi8+CjwvZz48L3N2Zz4=") !important;
}

html body:has(.iby-page.iby-design-c1.is-kyoto-top)
.iby-page.iby-design-c1.is-kyoto-top
.iby-c1-final-cta {
  padding-bottom: 168px !important;
  margin-bottom: -48px !important;
}

@media screen and (max-width: 767px) {
  html body .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-hero__actions .iby-c1-button,
  html body .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-hero__actions .iby-c1-button--primary {
    width: min(100%, 250px) !important;
    min-width: 0 !important;
    min-height: 54px !important;
    padding: 0 24px !important;
  }

  html body .iby-page.iby-design-c1.is-kyoto-top .iby-c1-care__icon::before {
    width: 31px !important;
    height: 31px !important;
  }

  html body:has(.iby-page.iby-design-c1.is-kyoto-top)
  .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-final-cta {
    padding-bottom: 118px !important;
    margin-bottom: -28px !important;
  }
}
/* =========================================================
   KYOTO C1 / NEWS → 光明チャクラ 間隔調整
========================================================= */

@media screen and (min-width: 768px) {

  /* お知らせセクション下の余白を縮める */
  html body
  .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-news {
    padding-bottom: 36px !important;
    margin-bottom: 0 !important;
  }

  /* 光明チャクラセクション上の余白を縮める */
  html body
  .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-kchakra {
    padding-top: 52px !important;
    margin-top: 0 !important;
  }

  /* 見出し周辺の余分な上余白を解除 */
  html body
  .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-kchakra__inner,
  html body
  .iby-page.iby-design-c1.is-kyoto-top
  .iby-c1-kchakra__head {
    margin-top: 0 !important;
  }
}
/* =========================================================
   KYOTO C1 / Lightning外側フッターの余白を削除
========================================================= */

html body.ilchi-studio-kyoto.page-id-2113
footer.site-footer {
  margin: 0 !important;
  padding: 0 !important;
}
/* =========================================================
   KYOTO C1 / フッター上部48px余白を削除
========================================================= */

html body.ilchi-studio-kyoto.page-id-2113
footer.site-footer > .site-footer-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* =========================================================
   KYOTO / PC HEADER TITLE SIZE
   2行目だけ大きく・メニュー幅は広げない
========================================================= */

@media screen and (min-width: 1400px) {

  /* ヘッダー全体はコンパクトな幅を維持 */
  html body.ilchi-studio-kyoto
  header#site-header
  #site-header-container {
    grid-template-columns: 470px max-content !important;
    justify-content: center !important;
    gap: 22px !important;
    width: calc(100% - 40px) !important;
    max-width: 1360px !important;
  }

  /* 1行目 */
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::before {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
  }

  /* 2行目：スタジオ名だけ大きく */
  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::after {
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
  }

  /* メニューは必要な幅だけ */
  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav {
    width: max-content !important;
    max-width: max-content !important;
    justify-self: start !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  nav#global-nav > ul {
    width: max-content !important;
    justify-content: flex-start !important;
  }
}

/* 1200～1399pxでは少しだけ小さくする */
@media screen and (min-width: 1200px) and (max-width: 1399px) {

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::before {
    font-size: 13px !important;
  }

  html body.ilchi-studio-kyoto
  header#site-header
  .site-header-logo > a::after {
    font-size: 16px !important;
  }
}
/* =========================================================
   KYOTO C1 TOP / フッター直前の余白を完全に削除
========================================================= */

html body.ilchi-studio-kyoto.home.page-id-2113
.main-section.main-section--margin-bottom--on {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ウィジェット撤去後の空サイドバーを非表示 */
html body.ilchi-studio-kyoto.home.page-id-2113
.sub-section:empty {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 本文全体の下余白も解除 */
html body.ilchi-studio-kyoto.home.page-id-2113
.site-body-container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}