/* ========== Base ========== */
:root{
  --container: 880px;        /* 通常幅 */
  --container-wide: 1120px;  /* 幅広 */
  --gutter: 20px;            /* 左右余白 */
}

body{
  margin:0;
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
  line-height:1.7;
  background:#fff;
  color:#111;
}

.lp-container{
  /* 中央カラムをデフォルトに */
  width: min(92vw, var(--container));
  margin: 0 auto;
  padding: 40px var(--gutter);
}

/* Gutenbergブロックの基本余白 */
.lp-container .wp-block{
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

/* ========== Align support (classic theme) ========== */
/* 幅広 */
.lp-container .alignwide{
  max-width: var(--container-wide);
  margin-left: auto;
  margin-right: auto;
}

/* 全幅：画面いっぱいに広げる（背景セクション用） */
.lp-container .alignfull{
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* 全幅グループの内側は中央カラムに戻す */
.lp-container .alignfull > .wp-block-group__inner-container{
  max-width: var(--container);
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

/* ========== Animation ========== */
.fade-in{
  opacity:0;
  transform:translateY(20px);
  transition: all .6s ease;
}
.fade-in.active{
  opacity:1;
  transform:none;
}

/* ========== LP styles ========== */
/* LP Section（背景付きセクション向け） */
.is-style-lp-section{
  padding: 72px var(--gutter);
}

/* LP Columns（カラムの間隔調整） */
.is-style-lp-columns{
  gap: 24px;
}

/* LP Heading（見出しを締める） */
.is-style-lp-heading{
  letter-spacing: -0.02em;
}

/* CTAボタン（ブロックスタイル） */
.is-style-lp-cta .wp-block-button__link{
  background:#111;
  color:#fff;
  padding:16px 32px;
  font-weight:700;
  border-radius:8px;
  text-decoration:none;
  display:inline-block;
  transition: opacity .2s ease, transform .2s ease;
}
.is-style-lp-cta .wp-block-button__link:hover{
  opacity:.85;
  transform: translateY(-1px);
}