@charset "UTF-8";

/* =========================================================
   02-a1-nishinomiya.css
   イルチブレインヨガ西宮スタジオ A1専用上書きCSS

   基準：伏見A1 直近完成版
   用途：02-a1.css の後に読み込む
   西宮固有：
   - Hero画像
   - PC通常ヘッダーの表示文言
   - 西宮予約URL
   - 伏見A1で確定したレイアウト微調整
========================================================= */

/* =========================================================
   A1作業用固定ページ
   タイトル帯・パンくず・サイドバー・本文幅を解除
========================================================= */

body.ilchi-lp-a1 .page-header,
body.ilchi-lp-a1 .pageHeader,
body.ilchi-lp-a1 .vk_pageHeader,
body.ilchi-lp-a1 .vk-page-header,
body.ilchi-lp-a1 .breadcrumb,
body.ilchi-lp-a1 .breadSection,
body.ilchi-lp-a1 .section.breadSection {
  display: none !important;
}

body.ilchi-lp-a1 .siteContent {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ilchi-lp-a1 .siteContent > .container,
body.ilchi-lp-a1 .siteContent .container,
body.ilchi-lp-a1 .siteContent .row,
body.ilchi-lp-a1 .siteContent .mainSection,
body.ilchi-lp-a1 .siteContent main.mainSection,
body.ilchi-lp-a1 .siteContent #main,
body.ilchi-lp-a1 .entry-body,
body.ilchi-lp-a1 .entry-content {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  flex: 0 0 100% !important;
}

body.ilchi-lp-a1 .siteContent .subSection,
body.ilchi-lp-a1 .siteContent .sideSection,
body.ilchi-lp-a1 .siteContent aside.widget-area,
body.ilchi-lp-a1 .siteContent #secondary {
  display: none !important;
}

/* 本文はゴシック体 */
body.ilchi-lp-a1 .iby-page,
body.ilchi-lp-a1 .iby-page * {
  font-family:
    "Noto Sans JP",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    Meiryo,
    sans-serif !important;
}
/* =========================================================
   西宮A1 HERO
========================================================= */

body.ilchi-lp-a1 .iby-a1-hero {
  background-image:
    url("https://ilchibrainyoga-nishinomiya.com/wp-content/uploads/2026/09/a1-hero-bg-02-revised-sharp.webp") !important;

  background-position: 74% 50% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* HEROタイトルだけ明朝体 */
html body.ilchi-lp-a1 .iby-page .iby-a1-hero__title,
html body.ilchi-lp-a1 .iby-page .iby-a1-hero__title span {
  font-family:
    "Noto Serif JP",
    "Yu Mincho",
    "YuMincho",
    "Hiragino Mincho ProN",
    "Hiragino Mincho Pro",
    serif !important;

  font-weight: 500 !important;
}

/* HEROボタンの文字を高さ中央へ */
html body.ilchi-lp-a1 .iby-page .iby-a1-hero .iby-button,
html body.ilchi-lp-a1 .iby-page .iby-a1-hero .iby-button:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 52px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;

  line-height: 1.4 !important;
}

html body.ilchi-lp-a1 .iby-page .iby-a1-hero .iby-button br {
  display: none !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  body.ilchi-lp-a1 .iby-a1-hero {
    background-position: 70% 50% !important;
  }

  html body.ilchi-lp-a1 .iby-page .iby-a1-hero .iby-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}
/* =========================================================
   西宮A1 HEROタイトル PC2行化
========================================================= */

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

  body.ilchi-lp-a1 .iby-a1-hero__copy {
    max-width: 590px !important;
  }

  html body.ilchi-lp-a1 .iby-page .iby-a1-hero__title {
    font-size: clamp(42px, 3.1vw, 50px) !important;
    line-height: 1.02 !important;
    letter-spacing: 0.02em !important;
  }

  html body.ilchi-lp-a1 .iby-page .iby-a1-hero__title span {
    display: block !important;
    white-space: nowrap !important;
    line-height: 1.02 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title
  span + span {
    margin-top: -0.28em !important;
  }
}

/* スマホは自然な位置で改行 */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1 .iby-page .iby-a1-hero__title span {
    display: block !important;
    white-space: normal !important;
  }
}
/* =========================================================
   西宮A1 HERO ボタン位置調整
========================================================= */

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

  body.ilchi-lp-a1 .iby-a1-hero__list {
    margin-bottom: 20px !important;
  }

  body.ilchi-lp-a1 .iby-a1-hero .iby-button-row {
    position: relative !important;
    top: -10px !important;
  }
}
/* =========================================================
   西宮A1 HERO ボタン縦横サイズ統一
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero
  .iby-button-row {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero
  .iby-button-row > .iby-button,
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero
  .iby-button-row > .iby-button:visited {
    flex: 0 0 250px !important;

    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;

    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;

    margin: 0 !important;
    padding: 0 18px !important;

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

    border-width: 1px !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }
}
/* =========================================================
   西宮A1 HERO スマホ縦幅調整
========================================================= */

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

  body.ilchi-lp-a1 .iby-a1-hero {
    min-height: auto !important;
    background-position: 72% 50% !important;
  }

  body.ilchi-lp-a1 .iby-a1-hero__inner {
    padding-top: 54px !important;
    padding-bottom: 48px !important;
  }

  body.ilchi-lp-a1 .iby-a1-hero__copy {
    max-width: 78% !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title {
    margin-bottom: 28px !important;
    font-size: 30px !important;
    line-height: 1.28 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title span {
    display: block !important;
    line-height: 1.28 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title span + span {
    margin-top: 0.18em !important;
  }

  body.ilchi-lp-a1 .iby-a1-hero__lead {
    margin-bottom: 18px !important;
  }

  body.ilchi-lp-a1 .iby-a1-hero__list {
    margin-bottom: 24px !important;
  }
}
/* =========================================================
   西宮A1「イルチブレインヨガとは」見本準拠 FINAL
========================================================= */

/* セクション全体 */
html body.ilchi-lp-a1 .iby-page .iby-a1-about {
  position: relative !important;
  overflow: hidden !important;
  padding: 32px 24px 68px !important;

  background:
    linear-gradient(
      105deg,
      #fff9fb 0%,
      #ffffff 50%,
      #f8fcf8 100%
    ) !important;
}

/* 左側の淡いピンク円 */
html body.ilchi-lp-a1 .iby-page .iby-a1-about::before {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;

  top: 96px !important;
  left: -108px !important;

  display: block !important;
  width: 220px !important;
  height: 220px !important;

  border-radius: 50% !important;
  background: rgba(244, 95, 134, 0.075) !important;
  pointer-events: none !important;
}

/* 右側の淡いグリーン円 */
html body.ilchi-lp-a1 .iby-page .iby-a1-about::after {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;

  top: 56px !important;
  right: -126px !important;

  display: block !important;
  width: 258px !important;
  height: 258px !important;

  border-radius: 50% !important;
  background: rgba(121, 155, 128, 0.10) !important;
  pointer-events: none !important;
}

/* 内容を背景より前へ */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-section__inner {
  position: relative !important;
  z-index: 1 !important;
}

/* タイトル上の余白を縮小 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-section-title {
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

/* 説明文 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-section-lead {
  max-width: 760px !important;
  margin-bottom: 38px !important;
}

/* 連結された共通グリッドを解除 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;

  width: 100% !important;
  max-width: 1080px !important;
  margin: 0 auto !important;

  overflow: visible !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* カードを1枚ずつ独立 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;

  min-height: 225px !important;
  padding: 28px 22px 30px !important;

  border: 1px solid rgba(244, 95, 134, 0.18) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.92) !important;

  text-align: center !important;
  box-shadow: 0 14px 30px rgba(80, 60, 65, 0.07) !important;
}

/* 共通CSSに残っている縦線・横線を解除 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card:nth-child(n) {
  border-right: 1px solid rgba(244, 95, 134, 0.18) !important;
  border-bottom: 1px solid rgba(244, 95, 134, 0.18) !important;
}

/* アイコンの丸背景 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 58px !important;
  height: 58px !important;
  margin: 0 auto 18px !important;

  flex: 0 0 58px !important;

  border-radius: 50% !important;
  background: #fff0f5 !important;
  color: #f45f86 !important;

  font-size: 0 !important;
  box-shadow: 0 7px 17px rgba(244, 95, 134, 0.12) !important;
}

/* SVG共通 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon svg {
  display: block !important;
  width: 29px !important;
  height: 29px !important;

  fill: currentColor !important;
  stroke: none !important;
}

/* 2番目の風アイコンだけ線画 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card:nth-child(2)
.iby-a1-icon svg {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* カード見出しを黒へ */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card h3 {
  margin: 0 0 12px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #202020 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card h3::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card h3::after {
  content: none !important;
  display: none !important;
}

/* 説明文 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-about
.iby-a1-icon-card p {
  margin: 0 !important;
  color: #4a4a4a !important;
  font-size: 14px !important;
  line-height: 1.85 !important;
  text-align: center !important;
}

/* タブレット */
@media screen and (max-width: 1024px) {

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1 .iby-page .iby-a1-about {
    padding: 46px 18px 52px !important;
  }

  html body.ilchi-lp-a1 .iby-page .iby-a1-about::before {
    top: 36px !important;
    left: -72px !important;
    width: 142px !important;
    height: 142px !important;
  }

  html body.ilchi-lp-a1 .iby-page .iby-a1-about::after {
    top: 52px !important;
    right: -82px !important;
    width: 158px !important;
    height: 158px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card {
    min-height: 0 !important;
    padding: 26px 22px !important;
  }
}

/* =========================================================
   西宮A1 はじめての方にも参加しやすい理由 FINAL
========================================================= */

html body.ilchi-lp-a1 .iby-page section.iby-a1-beginner {
  display: block !important;
  width: 100% !important;
  padding: 76px 24px 82px !important;
  background: #fffaf7 !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
> .iby-section__inner {
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-section-title {
  margin: 0 0 50px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111111 !important;
  font-size: clamp(28px, 3vw, 38px) !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-section-title::before,
html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-section-title::after {
  content: none !important;
  display: none !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 64px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__photo {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(80, 60, 65, 0.08) !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__photo img {
  display: block !important;
  width: 100% !important;
  height: 300px !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__reasons {
  display: grid !important;
  gap: 30px !important;
  width: 100% !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__item {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: start !important;
  margin: 0 !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__body {
  min-width: 0 !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__icon {
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  margin: 2px 0 0 !important;
  border: 1px solid rgba(244, 95, 134, 0.36) !important;
  border-radius: 50% !important;
  background: #fff0f5 !important;
  box-sizing: border-box !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__item h3 {
  margin: 0 0 7px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111111 !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__item h3::before,
html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__item h3::after {
  content: none !important;
  display: none !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
.iby-a1-beginner__item p {
  margin: 0 !important;
  color: #444444 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}

html body.ilchi-lp-a1
.iby-page
section.iby-a1-beginner
p:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media screen and (max-width: 767px) {
  html body.ilchi-lp-a1 .iby-page section.iby-a1-beginner {
    padding: 52px 18px 58px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-section-title {
    margin-bottom: 30px !important;
    font-size: 26px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__photo img {
    height: auto !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__reasons {
    gap: 26px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__item {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__icon {
    width: 36px !important;
    height: 36px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__item h3 {
    font-size: 19px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  section.iby-a1-beginner
  .iby-a1-beginner__item p {
    font-size: 14px !important;
  }
}
/* =========================================================
   西宮A1 Instructor
========================================================= */

html body.ilchi-lp-a1 .iby-page .iby-a1-instructor {
  padding: 78px 24px 86px !important;
  background: #ffffff !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor
.iby-section__inner {
  max-width: 1040px !important;
  margin: 0 auto !important;
}

/* Instructor */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__label {
  margin: 0 0 22px !important;
  color: #f45f86 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-align: center !important;
}

/* 大見出し */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__title {
  margin: 0 0 24px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #111111 !important;

  font-family:
    "Noto Sans JP",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    "YuGothic",
    Meiryo,
    sans-serif !important;

  font-size: clamp(30px, 3.2vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
  letter-spacing: 0.02em !important;
  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__title::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__title::after {
  content: none !important;
  display: none !important;
}

/* 導入文 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__lead {
  max-width: 720px !important;
  margin: 0 auto 48px !important;
  color: #444444 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  text-align: center !important;
}

/* 写真＋プロフィール */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__card {
  display: grid !important;
  grid-template-columns: 320px minmax(0, 1fr) !important;
  gap: 54px !important;
  align-items: center !important;

  padding: 42px !important;

  border: 1px solid rgba(244, 95, 134, 0.16) !important;
  border-radius: 24px !important;
  background: #fffafc !important;

  box-shadow: 0 16px 38px rgba(80, 60, 65, 0.07) !important;
}

/* 写真 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__photo {
  margin: 0 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__photo img {
  display: block !important;
  width: 100% !important;
  height: 390px !important;

  object-fit: cover !important;
  object-position: center top !important;

  border-radius: 20px !important;
}

/* 役職 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__role-en {
  margin: 0 0 5px !important;
  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__role {
  margin: 0 0 20px !important;
  color: #555555 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

/* 名前 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__body h3 {
  margin: 0 0 14px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #111111 !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__body h3::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__body h3::after {
  content: none !important;
  display: none !important;
}

/* キャッチ */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__catch {
  margin: 0 0 22px !important;
  color: #333333 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
}

/* 経歴 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__profile {
  margin: 0 0 28px !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__profile li {
  position: relative !important;
  margin: 0 0 8px !important;
  padding-left: 20px !important;

  color: #444444 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__profile li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.72em !important;

  width: 7px !important;
  height: 7px !important;

  border-radius: 50% !important;
  background: #f45f86 !important;
}

/* 詳細ボタン */
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__button,
html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__button:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 210px !important;
  min-height: 48px !important;
  padding: 0 28px !important;

  border: 1px solid #f45f86 !important;
  border-radius: 999px !important;
  background: #ffffff !important;

  color: #f45f86 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-instructor__button:hover {
  background: #f45f86 !important;
  color: #ffffff !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1 .iby-page .iby-a1-instructor {
    padding: 56px 18px 62px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__title {
    font-size: 27px !important;
    line-height: 1.55 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__lead {
    margin-bottom: 34px !important;
    font-size: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__lead br {
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__card {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding: 24px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__photo {
    max-width: 260px !important;
    margin: 0 auto !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__photo img {
    height: auto !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__body {
    text-align: left !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-instructor__button {
    width: 100% !important;
  }
}
/* =========================================================
   西宮A1 体験レッスンの流れ 見出し下のピンク線を消す
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-flow
.iby-a1-flow-item h3 {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-flow
.iby-a1-flow-item h3::after,
html body.ilchi-lp-a1
.iby-page
.iby-a1-flow
.iby-a1-flow-item h3::before {
  content: none !important;
  display: none !important;
}
/* =========================================================
   西宮A1 中間CTA
========================================================= */

html body.ilchi-lp-a1 .iby-page .iby-a1-mid-cta {
  padding: 72px 24px 80px !important;
  background: #ffffff !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta
.iby-section__inner {
  width: 100% !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__box {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;

  overflow: hidden !important;

  border: 1px solid rgba(244, 95, 134, 0.16) !important;
  border-radius: 26px !important;

  background:
    linear-gradient(
      110deg,
      #fff8fb 0%,
      #ffffff 55%,
      #f7fbf7 100%
    ) !important;

  box-shadow: 0 16px 38px rgba(80, 60, 65, 0.08) !important;
}

/* 画像 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__photo {
  margin: 0 !important;
  min-height: 390px !important;
  overflow: hidden !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__photo img {
  display: block !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 390px !important;

  object-fit: cover !important;
  object-position: center !important;
}

/* 右側 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  padding: 52px 48px !important;
}

/* Trial Lesson */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__label {
  margin: 0 0 12px !important;

  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
}

/* 見出し */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__body h2 {
  margin: 0 0 22px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #111111 !important;
  font-size: 31px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;

  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__body h2::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__body h2::after {
  content: none !important;
  display: none !important;
}

/* 説明 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__text {
  margin: 0 0 30px !important;

  color: #444444 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}

/* ボタン */
html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-mid-cta__buttons
.iby-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 50px !important;
  padding: 0 24px !important;

  line-height: 1.3 !important;
  white-space: nowrap !important;
}

/* =========================================================
   スマホ
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta {
    padding: 54px 18px 60px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__box {
    grid-template-columns: 1fr !important;
    border-radius: 22px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo {
    min-height: 0 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo img {
    height: auto !important;
    min-height: 0 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__body {
    padding: 34px 24px 30px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__body h2 {
    font-size: 26px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__text {
    font-size: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__text br {
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons
  .iby-button {
    width: 100% !important;
  }
}
/* =========================================================
   西宮A1 中間CTA PC FINAL
   左：案内50％ ／ 右：画像50％
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__box {
    grid-template-columns: 50% 50% !important;
    align-items: stretch !important;
  }

  /* 左：案内 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__body {
    grid-column: 1 !important;
    grid-row: 1 !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    /* 文章が「ません／か。」で割れないよう左右余白を調整 */
    padding: 48px 32px 48px 48px !important;
  }

  /* 説明文 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__text {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 30px !important;

    font-size: 15px !important;
    line-height: 1.9 !important;
    white-space: normal !important;
  }

  /* 右：画像 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo {
    grid-column: 2 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 100% !important;
    min-height: 390px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo img {
    width: 100% !important;
    height: 100% !important;
    min-height: 390px !important;

    object-fit: cover !important;
    object-position: center center !important;
  }

  /* ボタンを同じサイズへ */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons
  .iby-button {
    width: 230px !important;
    min-width: 230px !important;
    max-width: 230px !important;
    height: 52px !important;
    min-height: 52px !important;

    padding: 0 14px !important;
    box-sizing: border-box !important;
  }
}
/* =========================================================
   西宮A1 中間CTA スマホ FINAL
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta {
    padding: 38px 18px 44px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__box {
    display: grid !important;
    grid-template-columns: 1fr !important;
    overflow: hidden !important;
    border-radius: 20px !important;
  }

  /* スマホは画像を上 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 220px !important;
    min-height: 0 !important;
    margin: 0 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__photo img {
    display: block !important;
    width: 100% !important;
    height: 220px !important;
    min-height: 0 !important;

    object-fit: cover !important;
    object-position: center center !important;
  }

  /* 本文 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__body {
    grid-column: 1 !important;
    grid-row: 2 !important;

    padding: 28px 24px 26px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__label {
    margin-bottom: 10px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__body h2 {
    margin-bottom: 18px !important;
    font-size: 25px !important;
    line-height: 1.45 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__text {
    margin-bottom: 24px !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-mid-cta__buttons
  .iby-button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    height: 50px !important;
    min-height: 50px !important;

    margin: 0 !important;
    padding: 0 12px !important;

    box-sizing: border-box !important;
  }
}
/* =========================================================
   西宮A1 お客様の声 FINAL
========================================================= */

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices {
  padding: 72px 24px 78px !important;
  background: #fff8f5 !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__label {
  margin: 0 0 10px !important;
  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-align: center !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;

  width: 100% !important;
  max-width: 980px !important;
  margin: 34px auto 0 !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__grid > p {
  display: none !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__card {
  display: flex !important;
  flex-direction: column !important;

  padding: 28px 26px 24px !important;

  border: 1px solid rgba(244,95,134,.28) !important;
  border-radius: 17px !important;
  background: #ffffff !important;

  box-sizing: border-box !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__photo {
  width: 88px !important;
  height: 88px !important;

  margin: 0 auto 20px !important;
  padding: 0 !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__photo img {
  display: block !important;

  width: 100% !important;
  height: 100% !important;

  object-fit: contain !important;
  object-position: center !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__card h3 {
  margin: 0 0 16px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #222222 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.65 !important;

  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__card h3::before,
html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__card h3::after {
  content: none !important;
  display: none !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__text {
  flex: 1 1 auto !important;

  margin: 0 0 18px !important;

  color: #444444 !important;
  font-size: 13px !important;
  line-height: 1.85 !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__meta {
  margin: auto 0 0 !important;

  color: #f45f86 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__notice {
  margin: 24px auto 0 !important;
  color: #666666 !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
  text-align: center !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__actions {
  display: flex !important;
  justify-content: center !important;
  margin-top: 26px !important;
}

html body.ilchi-lp-a1 .iby-page
.iby-a1-customer-voices__actions .iby-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 220px !important;
  min-height: 48px !important;
  padding: 0 26px !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1 .iby-page
  .iby-a1-customer-voices {
    padding: 52px 18px 58px !important;
  }

  html body.ilchi-lp-a1 .iby-page
  .iby-a1-customer-voices__grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    max-width: 420px !important;
  }

  html body.ilchi-lp-a1 .iby-page
  .iby-a1-customer-voices__card {
    padding: 26px 22px 24px !important;
  }

  html body.ilchi-lp-a1 .iby-page
  .iby-a1-customer-voices__photo {
    width: 82px !important;
    height: 82px !important;
    margin-bottom: 18px !important;
  }

  html body.ilchi-lp-a1 .iby-page
  .iby-a1-customer-voices__actions .iby-button {
    width: 100% !important;
    max-width: 300px !important;
  }
}
/* =========================================================
   西宮A1 ACCESS レイアウト
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__layout {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: stretch !important;

  width: 100% !important;
  max-width: 1100px !important;
  margin: 40px auto 0 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__info {
  width: 100% !important;
  min-width: 0 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__map {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 470px !important;
  overflow: hidden !important;
  border-radius: 22px !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__map iframe {
  display: block !important;
  width: 100% !important;
  height: 470px !important;
  border: 0 !important;
}

/* Lightningのスタジオ名下線を解除 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-access__info h3 {
  margin: 0 0 28px !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__info h3::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-access__info h3::after {
  content: none !important;
  display: none !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-access__layout {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-access__map,
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-access__map iframe {
    height: 320px !important;
    min-height: 320px !important;
  }
}
/* =========================================================
   西宮A1 ACCESS PC 横幅調整
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-access
  > .iby-section__inner {
    width: calc(100% - 48px) !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-access__layout {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 54px !important;
  }
}
/* =========================================================
   西宮A1 Access ラベル位置修正
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-access__label {
  display: block !important;
  width: 100% !important;

  margin: 0 0 12px !important;
  padding: 0 !important;

  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.1em !important;

  text-align: center !important;
}
/* =========================================================
   西宮A1 光明チャクラコース
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra {
  padding: 38px 24px 76px !important;
  background: #ffffff !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-card {
  width: 100% !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 34px 38px 38px !important;

  border: 1px solid rgba(244,95,134,.20) !important;
  border-radius: 24px !important;
  background: #fffdfa !important;

  text-align: center !important;
  box-shadow: 0 14px 34px rgba(80,80,80,.05) !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 0 22px !important;
  padding: 8px 18px !important;

  border: 1px solid rgba(244,95,134,.28) !important;
  border-radius: 999px !important;
  background: #fff0f5 !important;

  color: #f45f86 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-image {
  display: block !important;
  width: 100% !important;
  max-width: 780px !important;

  margin: 0 auto !important;
  overflow: hidden !important;

  border-radius: 18px !important;
  box-shadow: 0 12px 28px rgba(80,80,80,.08) !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra {
    padding: 30px 18px 56px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-card {
    padding: 26px 18px 28px !important;
    border-radius: 18px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-label {
    font-size: 13px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-image {
    border-radius: 14px !important;
  }
}
/* =========================================================
   西宮A1 Event / Information / Blog
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav {
  padding: 72px 24px 78px !important;
  background: #ffffff !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav
.iby-section__inner {
  width: 100% !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
}

/* Information */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__label {
  margin: 0 0 10px !important;

  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.1em !important;

  text-align: center !important;
}

/* 3カード */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;

  width: 100% !important;
  margin: 38px auto 0 !important;
}

/* 各カード */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__card {
  display: flex !important;
  flex-direction: column !important;

  min-height: 290px !important;
  padding: 30px 28px 28px !important;

  border: 1px solid rgba(244, 95, 134, 0.20) !important;
  border-radius: 18px !important;

  background:
    linear-gradient(
      145deg,
      #fffafb 0%,
      #ffffff 62%,
      #fafdf9 100%
    ) !important;

  box-shadow: 0 12px 28px rgba(80, 60, 65, 0.06) !important;
}

/* EVENTなど */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__en {
  margin: 0 0 12px !important;

  color: #f45f86 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.12em !important;

  text-align: center !important;
}

/* カードタイトル */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__card h3 {
  margin: 0 0 16px !important;
  padding: 0 !important;

  border: none !important;
  background: transparent !important;

  color: #222222 !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;

  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__card h3::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__card h3::after {
  content: none !important;
  display: none !important;
}

/* 説明 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__text {
  flex: 1 1 auto !important;

  margin: 0 0 24px !important;

  color: #4a4a4a !important;
  font-size: 14px !important;
  line-height: 1.85 !important;

  text-align: left !important;
}

/* ボタン */
html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__action {
  display: flex !important;
  justify-content: center !important;
  margin-top: auto !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-newsnav__action
.iby-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 190px !important;
  min-width: 190px !important;
  min-height: 48px !important;

  padding: 0 18px !important;
  box-sizing: border-box !important;
}

/* =========================================================
   タブレット
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__grid {
    gap: 16px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__card {
    padding: 26px 20px !important;
  }
}

/* =========================================================
   スマホ
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav {
    padding: 52px 18px 58px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;

    max-width: 420px !important;
    margin-top: 30px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__card {
    min-height: 0 !important;
    padding: 26px 22px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__text {
    text-align: center !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__action
  .iby-button {
    width: 100% !important;
    max-width: 260px !important;
  }
}
/* =========================================================
   西宮A1 Event / Information / Blog
   PC 3カード横並び FIX
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: center !important;

    gap: 22px !important;

    width: 100% !important;
    max-width: 1080px !important;
    margin: 38px auto 0 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-newsnav__grid
  > .iby-a1-newsnav__card {
    flex: 1 1 0 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;

    /* 既存のgrid配置指定を解除 */
    grid-column: auto !important;
    grid-row: auto !important;

    transform: none !important;
  }
}
/* =========================================================
   西宮A1 関連活動 FINAL
========================================================= */

html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino {
  width: 100% !important;
  margin: 0 !important;
  padding: 68px 24px 76px !important;

  background: #ffffff !important;
  box-sizing: border-box !important;
}

/* 全体カード */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-inner {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  display: block !important;

  width: 100% !important;
  max-width: 1080px !important;
  min-height: 610px !important;

  margin: 0 auto !important;
  padding: 48px 48px 44px !important;

  border: 1px solid rgba(244, 95, 134, 0.16) !important;
  border-radius: 24px !important;

  background: #fffaf7 !important;

  box-shadow: 0 14px 34px rgba(80, 60, 65, 0.07) !important;
  box-sizing: border-box !important;
}

/* 背景写真 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;

  display: block !important;

  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;

  margin: 0 !important;

  object-fit: cover !important;
  object-position: right center !important;

  opacity: 0.86 !important;

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

  pointer-events: none !important;
}

/* 左側を読みやすくする白グラデーション */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-inner::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;

  display: block !important;

  background:
    linear-gradient(
      90deg,
      rgba(255, 250, 247, 0.99) 0%,
      rgba(255, 250, 247, 0.97) 43%,
      rgba(255, 250, 247, 0.78) 60%,
      rgba(255, 250, 247, 0.16) 100%
    ) !important;

  pointer-events: none !important;
}

/* 不要な別レイヤーを解除 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-inner::after {
  content: none !important;
  display: none !important;
}

/* 左側本文 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-content {
  position: relative !important;
  z-index: 2 !important;

  display: block !important;

  width: 52% !important;
  max-width: 530px !important;

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

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Related Activities */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-label {
  margin: 0 0 8px !important;

  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  line-height: 1.4 !important;
}

/* 関連活動タイトル */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-content > h2 {
  margin: 0 0 18px !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;

  color: #222222 !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;

  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-content > h2::before,
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino
.iby-kakuremino-content > h2::after {
  content: none !important;
  display: none !important;
}

/* 導入文 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-lead {
  margin: 0 0 18px !important;

  color: #444444 !important;
  font-size: 13px !important;
  line-height: 1.85 !important;
}

/* 4項目 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;

  width: 100% !important;
  margin: 0 !important;
}

html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 11px 0 !important;

  border: 0 !important;
  border-bottom: 1px dashed rgba(244, 95, 134, 0.24) !important;

  background: transparent !important;
}

/* 最後だけ線なし */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item:last-child {
  border-bottom: 0 !important;
}

/* アイコン */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 48px !important;
  height: 48px !important;

  margin: 0 !important;
}

html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-icon img {
  display: block !important;

  width: 48px !important;
  height: 48px !important;

  margin: 0 !important;

  object-fit: contain !important;
}

/* 項目タイトル */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item h3 {
  margin: 0 0 3px !important;
  padding: 0 !important;

  border: 0 !important;
  border-bottom: 0 !important;
  background: transparent !important;

  color: #333333 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;

  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item h3::before,
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item h3::after {
  content: none !important;
  display: none !important;
}

/* 項目説明 */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-item p {
  margin: 0 !important;

  color: #555555 !important;
  font-size: 12px !important;
  line-height: 1.65 !important;
}

/* 注意書き */
html body.ilchi-lp-a1
.iby-page.iby-design-a1
.iby-kakuremino-note {
  margin: 18px 0 0 !important;

  color: #666666 !important;
  font-size: 11px !important;
  line-height: 1.7 !important;
}

/* =========================================================
   スマホ
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino {
    padding: 48px 18px 56px !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino
  .iby-kakuremino-inner {
    min-height: 0 !important;

    padding: 30px 22px !important;

    border-radius: 18px !important;

    background:
      linear-gradient(
        135deg,
        #fff7fa 0%,
        #f8fff9 100%
      ) !important;
  }

  /* スマホは背景写真を非表示 */
  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino
  .iby-kakuremino-bg {
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino
  .iby-kakuremino-inner::before {
    content: none !important;
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino
  .iby-kakuremino-content {
    width: 100% !important;
    max-width: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino
  .iby-kakuremino-content > h2 {
    font-size: 26px !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino-lead br {
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino-item {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 12px 0 !important;
  }

  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino-icon,
  html body.ilchi-lp-a1
  .iby-page.iby-design-a1
  .iby-kakuremino-icon img {
    width: 42px !important;
    height: 42px !important;
  }
}
/* =========================================================
   西宮A1 最終CTA
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta {
  padding: 72px 24px 28px !important;
  background: #ffffff !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta
.iby-section__inner {
  width: 100% !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box {
  position: relative !important;
  overflow: hidden !important;

  width: 100% !important;
  padding: 58px 42px !important;

  border: 1px solid rgba(244,95,134,.20) !important;
  border-radius: 26px !important;

  background:
    linear-gradient(
      110deg,
      #fff4f8 0%,
      #fffafb 48%,
      #f5fbf6 100%
    ) !important;

  text-align: center !important;
  box-shadow: 0 16px 38px rgba(80,60,65,.07) !important;
}

/* 淡い装飾円 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box::before {
  content: "" !important;
  position: absolute !important;

  width: 220px !important;
  height: 220px !important;

  left: -90px !important;
  bottom: -120px !important;

  border-radius: 50% !important;
  background: rgba(244,95,134,.07) !important;

  pointer-events: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box::after {
  content: "" !important;
  position: absolute !important;

  width: 240px !important;
  height: 240px !important;

  right: -100px !important;
  top: -120px !important;

  border-radius: 50% !important;
  background: rgba(121,155,128,.09) !important;

  pointer-events: none !important;
}

/* Trial Lesson */
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__label {
  position: relative !important;
  z-index: 1 !important;

  margin: 0 0 14px !important;

  color: #f45f86 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
}

/* 見出し */
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box h2 {
  position: relative !important;
  z-index: 1 !important;

  margin: 0 0 22px !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;

  color: #222222 !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;

  text-align: center !important;
  box-shadow: none !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box h2::before,
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__box h2::after {
  content: none !important;
  display: none !important;
}

/* 説明 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__text {
  position: relative !important;
  z-index: 1 !important;

  margin: 0 0 30px !important;

  color: #444444 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;

  text-align: center !important;
}

/* ボタン */
html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__buttons {
  position: relative !important;
  z-index: 1 !important;

  display: flex !important;
  justify-content: center !important;
  gap: 14px !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-final-cta__buttons
.iby-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 250px !important;
  min-width: 250px !important;
  min-height: 52px !important;

  padding: 0 18px !important;
  box-sizing: border-box !important;
}

/* =========================================================
   スマホ
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta {
    padding: 48px 18px 54px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__box {
    padding: 38px 22px !important;
    border-radius: 20px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__box h2 {
    font-size: 25px !important;
    line-height: 1.55 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__text {
    font-size: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__text br {
    display: none !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-final-cta__buttons
  .iby-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}
/* =========================================================
   NISHINOMIYA A1 HEADER / PC NORMAL ONE LINE
   通常時：左サイト名・右メニュー
   追従時：現在の状態を維持
========================================================= */

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

  /* =====================================================
     通常ヘッダーのみ
  ===================================================== */

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled) {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* サイト名＋メニューを1行 */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;

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

    margin: 0 auto !important;
    padding: 8px 0 !important;

    box-sizing: border-box !important;
  }

  /* =====================================================
     左：サイト名
  ===================================================== */

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer
  > .navbar-header {
    display: block !important;
    float: none !important;
    clear: none !important;

    flex: 0 1 500px !important;
    width: auto !important;
    min-width: 0 !important;

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo,
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .navbar-brand {
    display: block !important;
    float: none !important;

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

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo a,
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo a span {
    display: block !important;

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

    color: #333333 !important;
    font-size: 19px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;

    white-space: nowrap !important;
  }

  /* =====================================================
     右：メニュー
  ===================================================== */

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer
  > #gMenu_outer {
    position: static !important;
    display: block !important;

    float: none !important;
    clear: none !important;

    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer nav {
    display: block !important;
    width: auto !important;

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer ul.gMenu {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;

    width: auto !important;

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer ul.gMenu > li {
    display: block !important;
    float: none !important;

    flex: 0 0 auto !important;
    width: auto !important;

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer ul.gMenu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 42px !important;

    margin: 0 !important;
    padding: 7px 8px !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;

    white-space: nowrap !important;
  }

  /* 予約だけ少し余裕を確保 */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  a[href*="reserve.ilchibrainyoga.com/nishinomiya"] {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}
/* =========================================================
   西宮A1 PC通常ヘッダー
   サイト名を指定位置で2行
========================================================= */

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

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo a span {
    font-size: 0 !important;
    white-space: normal !important;
    line-height: 1 !important;
  }

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo a span::before {
    content: "西宮市のヨガ・瞑想スタジオ\Aイルチブレインヨガ西宮スタジオ";
    display: block !important;

    color: #333333 !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    white-space: pre-line !important;
  }

  /* サイト名の幅 */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer
  > .navbar-header {
    flex: 0 0 250px !important;
    width: 250px !important;
  }
}
/* =========================================================
   西宮A1 PC通常ヘッダー FINAL
   本文左端へ揃える / サイト名2行 / メニュー下寄せ
========================================================= */

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

  /* ヘッダー内部を本文と同じ幅へ */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: calc(100% - 48px) !important;
    max-width: 1120px !important;

    min-height: 76px !important;

    margin-left: auto !important;
    margin-right: auto !important;
    padding: 8px 0 !important;

    box-sizing: border-box !important;
  }

  /* 左：サイト名 */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer
  > .navbar-header {
    flex: 0 0 300px !important;

    width: 300px !important;
    min-width: 300px !important;

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

  /* サイト名は必ず2行 */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  .siteHeader_logo a span::before {
    content: "西宮市のヨガ・瞑想スタジオ\Aイルチブレインヨガ西宮スタジオ";

    display: block !important;

    color: #333333 !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;

    white-space: pre-line !important;
  }

  /* 右：メニュー */
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  > .container.siteHeadContainer
  > #gMenu_outer {
    position: static !important;

    display: flex !important;
    align-items: flex-end !important;
    align-self: stretch !important;

    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 0 0 10px !important;
    padding: 0 0 7px !important;
  }

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer nav,
  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer ul.gMenu {
    display: flex !important;
    align-items: flex-end !important;

    width: 100% !important;
    margin: 0 !important;
  }

  html body.ilchi-lp-a1:not(.header_scrolled)
  header.siteHeader:not(.header_scrolled)
  #gMenu_outer ul.gMenu > li > a {
    padding-left: 7px !important;
    padding-right: 7px !important;
  }
}
/* =========================================================
   西宮A1 光明チャクラバナー
   下の空白解消 → 高さ調整 → 角丸
========================================================= */

/* セクション全体の余白を少し締める */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner {
  padding: 44px 24px 48px !important;
}

/* 外枠 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner__box {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 34px 34px 36px !important;

  border: 1px solid rgba(244,95,134,.20) !important;
  border-radius: 28px !important;
  background: #fffdfd !important;
  box-sizing: border-box !important;
}

/* バナー画像の枠 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner__media {
  overflow: hidden !important;
  border-radius: 22px !important;
  line-height: 0 !important;   /* 画像下の余白対策 */
  font-size: 0 !important;     /* 念のため */
}

/* リンクやpictureの余白対策 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner__media a,
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner__media picture {
  display: block !important;
  line-height: 0 !important;
}

/* 画像本体 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-banner__media img {
  display: block !important;   /* まずこれで下の空白を消す */
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  vertical-align: top !important;
  border-radius: 22px !important;
}

/* もしまだ高さが高く見える場合の軽い調整 */
@media screen and (min-width: 768px) {
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner__media img {
    max-height: 320px !important;
    object-fit: cover !important;
  }
}

@media screen and (max-width: 767px) {
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner {
    padding: 34px 18px 38px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner__box {
    padding: 24px 16px 24px !important;
    border-radius: 20px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner__media,
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner__media img {
    border-radius: 16px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-banner__media img {
    max-height: 190px !important;
    object-fit: cover !important;
  }
}
/* =========================================================
   西宮A1 光明チャクラコース
   バナー高さ調整・下余白カット・角丸 FINAL
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra__image {
  display: block !important;

  width: 100% !important;
  max-width: 780px !important;
  height: 245px !important;

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

  overflow: hidden !important;

  border-radius: 18px !important;
  line-height: 0 !important;

  box-shadow: 0 10px 24px rgba(80, 60, 65, 0.08) !important;
}

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra__image img {
  display: block !important;

  width: 100% !important;
  height: 245px !important;

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

  object-fit: cover !important;
  object-position: center top !important;

  border-radius: 18px !important;
  vertical-align: top !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra__image {
    height: auto !important;
    border-radius: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra__image img {
    height: auto !important;
    aspect-ratio: 3 / 1 !important;

    object-fit: cover !important;
    object-position: center top !important;

    border-radius: 14px !important;
  }
}
/* =========================================================
   西宮A1 光明チャクラ
   バナー下余白削除・高さ調整・角丸 FINAL
========================================================= */

html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-image {
  display: block !important;

  width: 100% !important;
  max-width: 780px !important;

  height: 245px !important;

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

  overflow: hidden !important;

  border-radius: 18px !important;
  line-height: 0 !important;

  box-shadow: 0 10px 24px rgba(80,60,65,.08) !important;
}

/* WordPressが入れたbrを消す */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-image br {
  display: none !important;
}

/* 画像 */
html body.ilchi-lp-a1
.iby-page
.iby-a1-chakra-image img {
  display: block !important;

  width: 100% !important;
  height: 245px !important;

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

  object-fit: cover !important;
  object-position: center top !important;

  border-radius: 18px !important;
  vertical-align: top !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-image {
    height: auto !important;
    border-radius: 14px !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-chakra-image img {
    width: 100% !important;
    height: auto !important;

    margin: 0 !important;

    border-radius: 14px !important;
  }
}
/* =========================================================
   西宮A1 HERO タイトル重なり修正
========================================================= */

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

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title {
    font-size: clamp(42px, 3.1vw, 50px) !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title span {
    display: block !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
  }

  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-hero__title span + span {
    margin-top: 0.08em !important;
  }
}
/* =========================================================
   ABOUT アイコン
   町田A1風
========================================================= */

body.ilchi-lp-a1 .iby-a1-icon {
  width: 64px !important;
  height: 64px !important;
  margin: 0 auto 18px !important;

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

  border-radius: 50% !important;
  background: #f45f86 !important;
  border: none !important;

  color: #fff !important;
  box-shadow: none !important;
}

body.ilchi-lp-a1 .iby-a1-icon svg {
  display: block !important;
  width: 30px !important;
  height: 30px !important;

  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 3 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* ハートのみ塗り */
body.ilchi-lp-a1
.iby-a1-icon-card:first-child
.iby-a1-icon svg path {
  fill: currentColor !important;
  stroke: none !important;
}
/* =========================================================
   ABOUT 町田A1 完成形に合わせる
========================================================= */

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

  /* 4枚をひとつの横長カードに見せる */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0 !important;

    max-width: 920px !important;
    margin: 38px auto 0 !important;

    background: #fff !important;
    border-radius: 20px !important;
    overflow: hidden !important;

    border: 1px solid #f2dce2 !important;
    box-shadow: none !important;
  }

  /* 個別カード感を消す */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card {
    margin: 0 !important;
    padding: 30px 20px 28px !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    text-align: center !important;
  }

  /* 2枚目以降だけ縦線 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card + .iby-a1-icon-card {
    border-left: 1px solid #f2dce2 !important;
  }

  /* ピンク丸 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon {
    width: 64px !important;
    height: 64px !important;
    margin: 0 auto 18px !important;

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

    border-radius: 50% !important;
    background: #f45f86 !important;
    border: 0 !important;
    color: #fff !important;

    box-shadow: none !important;
  }

  /* 白い線画アイコン */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon svg {
    display: block !important;
    width: 28px !important;
    height: 28px !important;

    fill: none !important;
    stroke: #fff !important;
    stroke-width: 3 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  /* ハート */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card:first-child
  .iby-a1-icon svg path {
    fill: #fff !important;
    stroke: none !important;
  }

  /* 見出しを町田のグリーンへ */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card h3 {
    margin: 0 0 12px !important;
    color: #799b80 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
  }

  /* 説明 */
  html body.ilchi-lp-a1
  .iby-page
  .iby-a1-about
  .iby-a1-icon-card p {
    margin: 0 !important;
    color: #444 !important;
    font-size: 13px !important;
    line-height: 1.9 !important;
  }
}
/* ABOUT アイコン 最終調整 */
body.ilchi-lp-a1
.iby-a1-about
.iby-a1-icon svg,
body.ilchi-lp-a1
.iby-a1-about
.iby-a1-icon svg path {
  stroke-width: 5 !important;
}

body.ilchi-lp-a1
.iby-a1-about
.iby-a1-icon svg {
  width: 32px !important;
  height: 32px !important;
}
/* =========================================================
   INSTRUCTOR
   町田A1風 装飾
========================================================= */

body.ilchi-lp-a1 .iby-a1-instructor__card {
  display: grid !important;
  grid-template-columns: 310px minmax(0, 1fr) !important;
  gap: 54px !important;
  align-items: center !important;

  max-width: 920px !important;
  margin: 38px auto 0 !important;
  padding: 30px 32px !important;

  background:
    linear-gradient(
      120deg,
      #fff8f9 0%,
      #fffdfc 55%,
      #f8f9f3 100%
    ) !important;

  border: 1px solid #f2ccd5 !important;
  border-radius: 22px !important;

  box-shadow:
    0 18px 36px rgba(90, 70, 70, 0.06) !important;
}


/* 写真 */
body.ilchi-lp-a1 .iby-a1-instructor__photo {
  width: 100% !important;
  margin: 0 !important;
}

body.ilchi-lp-a1 .iby-a1-instructor__photo img {
  display: block !important;
  width: 100% !important;
  height: 410px !important;

  object-fit: cover !important;
  object-position: center top !important;

  border-radius: 18px !important;
}


/* 右本文 */
body.ilchi-lp-a1 .iby-a1-instructor__body {
  min-width: 0 !important;
}


/* スタジオ名 */
body.ilchi-lp-a1 .iby-a1-instructor__studio {
  margin: 0 0 12px !important;

  color: #f45f86 !important;

  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}


/* 役職 */
body.ilchi-lp-a1 .iby-a1-instructor__role {
  position: relative !important;

  margin: 0 0 18px !important;
  padding-bottom: 10px !important;

  color: #222 !important;

  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

body.ilchi-lp-a1 .iby-a1-instructor__role::after {
  content: "" !important;

  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;

  width: 46px !important;
  height: 2px !important;

  background: #f45f86 !important;
}


/* 名前 */
body.ilchi-lp-a1 .iby-a1-instructor__body h3 {
  margin: 0 0 20px !important;

  color: #e85f82 !important;

  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}


/* 紹介文 */
body.ilchi-lp-a1 .iby-a1-instructor__text {
  margin: 0 0 14px !important;

  color: #333 !important;

  font-size: 14px !important;
  line-height: 2 !important;
}


/* 町田風の白い補足ボックス */
body.ilchi-lp-a1 .iby-a1-instructor__note {
  margin: 20px 0 0 !important;
  padding: 15px 18px !important;

  background: rgba(255,255,255,0.92) !important;

  border-left: 4px solid #f45f86 !important;
  border-radius: 9px !important;

  color: #555 !important;

  font-size: 13px !important;
  line-height: 1.8 !important;
}


/* =========================================================
   SP
========================================================= */

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

  body.ilchi-lp-a1 .iby-a1-instructor__card {
    display: block !important;

    margin-top: 28px !important;
    padding: 22px 18px !important;

    border-radius: 18px !important;
  }

  body.ilchi-lp-a1 .iby-a1-instructor__photo {
    max-width: 320px !important;
    margin: 0 auto 26px !important;
  }

  body.ilchi-lp-a1 .iby-a1-instructor__photo img {
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
  }

  body.ilchi-lp-a1 .iby-a1-instructor__role {
    font-size: 19px !important;
  }

  body.ilchi-lp-a1 .iby-a1-instructor__body h3 {
    font-size: 17px !important;
  }

  body.ilchi-lp-a1 .iby-a1-instructor__text {
    font-size: 14px !important;
    line-height: 1.9 !important;
  }
}
/* =========================================================
   INSTRUCTOR 見出しをゴシックに統一
========================================================= */

body.ilchi-lp-a1
.iby-a1-instructor__title {
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    "Yu Gothic",
    "YuGothic",
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif !important;

  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}
/* =========================================================
   MID CTA
   左本文と右画像の境目を自然につなぐ
========================================================= */

body.ilchi-lp-a1 .iby-a1-mid-cta__box {
  position: relative !important;
  overflow: hidden !important;

  background:
    linear-gradient(
      90deg,
      #fff8f9 0%,
      #fffafb 46%,
      #ffffff 100%
    ) !important;
}

/* 左側は背景を透明にして全体背景を見せる */
body.ilchi-lp-a1 .iby-a1-mid-cta__body {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
}

/* 画像側 */
body.ilchi-lp-a1 .iby-a1-mid-cta__photo {
  position: relative !important;
  overflow: hidden !important;
  margin: 0 !important;
}

/* 画像の左端をフェード */
body.ilchi-lp-a1 .iby-a1-mid-cta__photo::before {
  content: "" !important;

  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;

  width: 150px !important;
  z-index: 2 !important;
  pointer-events: none !important;

  background:
    linear-gradient(
      90deg,
      #fffafb 0%,
      rgba(255, 250, 251, 0.9) 25%,
      rgba(255, 250, 251, 0.45) 60%,
      rgba(255, 250, 251, 0) 100%
    ) !important;
}

body.ilchi-lp-a1 .iby-a1-mid-cta__photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
/* =========================================================
   ACCESS 地図を右カード全面に表示
========================================================= */

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

  body.ilchi-lp-a1 .iby-a1-access__layout {
    align-items: stretch !important;
  }

  body.ilchi-lp-a1 .iby-a1-access__map {
    position: relative !important;

    min-height: 560px !important;
    height: auto !important;

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

    overflow: hidden !important;
    border-radius: 18px !important;
    background: transparent !important;
  }

  body.ilchi-lp-a1 .iby-a1-access__map iframe {
    position: absolute !important;
    inset: 0 !important;

    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;

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


/* スマホ */
@media screen and (max-width: 767px) {

  body.ilchi-lp-a1 .iby-a1-access__map {
    position: relative !important;
    height: 380px !important;
    min-height: 380px !important;

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

    overflow: hidden !important;
  }

  body.ilchi-lp-a1 .iby-a1-access__map iframe {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    border: 0 !important;
  }
}
body.ilchi-lp-a1 .iby-a1-instructor__label,
body.ilchi-lp-a1 .iby-a1-newsnav__label,
body.ilchi-lp-a1 .iby-a1-mid-cta__label,
body.ilchi-lp-a1 .iby-a1-final-cta__label {
  display: none !important;
}
/* =========================================================
   FINAL CTA 電話番号
========================================================= */

body.ilchi-lp-a1 .iby-a1-final-cta__phone {
  width: fit-content !important;
  margin: 18px auto 0 !important;
  padding: 10px 22px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;

  background: rgba(255,255,255,0.78) !important;
  border: 1px solid #f3d1da !important;
  border-radius: 999px !important;
}

body.ilchi-lp-a1 .iby-a1-final-cta__phone-label {
  color: #666 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

body.ilchi-lp-a1 .iby-a1-final-cta__phone-number {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;

  color: #e85f82 !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1 !important;

  text-decoration: none !important;
}

body.ilchi-lp-a1 .iby-a1-final-cta__phone-icon {
  width: 28px !important;
  height: 28px !important;

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

  border-radius: 50% !important;
  background: #f45f86 !important;
  color: #fff !important;

  font-size: 14px !important;
}

body.ilchi-lp-a1 .iby-a1-final-cta__phone-number:hover {
  color: #d84f73 !important;
}


/* スマホ */
@media screen and (max-width: 767px) {

  body.ilchi-lp-a1 .iby-a1-final-cta__phone {
    flex-direction: column !important;
    gap: 7px !important;

    padding: 12px 22px !important;
  }

  body.ilchi-lp-a1 .iby-a1-final-cta__phone-number {
    font-size: 18px !important;
  }
}