/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 24 2026 | 03:07:38 */
/* AIキッチン：トップ本文。Simple Custom CSS and JS で独立管理する。 */
/* ヘッダー・ファーストビュー・フッターには適用しない。 */
.aik-home-main {
  --aik-ink: #33271f;
  --aik-muted: #66584d;
  --aik-accent: #8c4223;
  --aik-accent-dark: #69311c;
  --aik-cream: #f8f3eb;
  --aik-line: #e4d6c6;
  --aik-white: #fff;
  color: var(--aik-ink);
  background: var(--aik-white);
  font-family: "Zen Maru Gothic", serif;
  font-size: 16px;
  text-shadow: none;
  line-height: 1.8;
  letter-spacing: .02em;
  overflow-wrap: anywhere;
  margin-block: 0;
}

.aik-home-main *,
.aik-home-main *::before,
.aik-home-main *::after { box-sizing: border-box; }

/* 元の書体を継承する。既存のGoogle Font設定を使い、新しい読み込みは加えない。 */
/* 本文の影は解除し、単一ウェイトの見出し書体を合成太字で重ねない。 */
.aik-home-main h2,
.aik-home-main h3 { text-shadow: none; }
.aik-home-main h3 {
  font-family: "Mochiy Pop P One", sans-serif;
  font-weight: 400;
  letter-spacing: .02em;
}

/* SWELLが全幅Groupの直下に設ける900px制限だけ解除する。節の内幅は後段で管理する。 */
.aik-home-main.wp-block-group > .wp-block-group__inner-container {
  width: 100%;
  max-width: none;
  margin: 0;
}

.aik-home-main a { color: var(--aik-accent); }
.aik-home-main a:focus-visible {
  outline: 3px solid var(--aik-accent-dark);
  outline-offset: 5px;
}
.aik-home-main img { display: block; max-width: 100%; }
.aik-home-main :where(section, a) { scroll-margin-block: 110px; }

/* 1節1目的。既存のブロック余白を、この本文の中だけ整える。 */
.aik-home-main .aik-home-section {
  margin: 0;
  padding: 64px 20px;
}
.aik-home-main .aik-home-section--cream { background: var(--aik-cream); }
.aik-home-main .aik-home-inner {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0;
}
.aik-home-main .aik-home-inner > * { margin-top: 0; }
.aik-home-main .aik-home-inner > :last-child { margin-bottom: 0; }
.aik-home-main .aik-home-section__title,
.aik-home-main .aik-home-intro__title {
  position: static;
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--aik-ink);
  font-family: "Mochiy Pop P One", sans-serif;
  font-size: clamp(24px, 2.3vw, 30px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .04em;
  text-align: center;
}
.aik-home-main .aik-home-section__title::before,
.aik-home-main .aik-home-section__title::after,
.aik-home-main .aik-home-intro__title::before,
.aik-home-main .aik-home-intro__title::after { content: none; }

/* 元の薄い英字見出しを、重ならない自然な文書の流れで表示する。 */
/* 内容の対応は各節のIDで明示し、旧クラスや負の位置指定には依存しない。 */
.aik-home-main #aik-home-intro { --aik-home-label: "Concept"; }
.aik-home-main #aik-home-latest { --aik-home-label: "Review"; }
.aik-home-main #aik-home-characters { --aik-home-label: "Character"; }
.aik-home-main #aik-home-popular { --aik-home-label: "Ranking"; }
.aik-home-main #aik-home-comments { --aik-home-label: "Comment"; }
.aik-home-main #aik-home-topics { --aik-home-label: "Tag"; }
/* 占いとInstagramを統合した節だけ、内容に合う英字へ置き換える。 */
.aik-home-main #aik-home-extras { --aik-home-label: "Extra"; }
.aik-home-main .aik-home-section__title::before,
.aik-home-main .aik-home-intro__title::before {
  content: var(--aik-home-label);
  position: static;
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  inset: auto;
  transform: none;
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
  color: #8f6b52;
  opacity: .2;
  font-family: "Mochiy Pop P One", sans-serif;
  font-size: clamp(36px, 4.4vw, 64px);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: .02em;
  white-space: normal;
  overflow-wrap: anywhere;
  -webkit-text-fill-color: #8f6b52;
  -webkit-text-stroke: 2px #2e241f;
}
.aik-home-main .aik-home-section__copy {
  max-width: 42em;
  margin: 0 auto 28px;
  text-align: center;
  text-wrap: balance;
  color: var(--aik-muted);
  font-size: 16px;
}

/* 最初の読む入口。紹介文と読む導線を短くまとめる。 */
.aik-home-main .aik-home-intro {
  padding-block: 64px;
  background: var(--aik-cream);
  border-bottom: 1px solid var(--aik-line);
}
.aik-home-main .aik-home-intro .aik-home-inner { max-width: 800px; text-align: center; }
.aik-home-main .aik-home-eyebrow {
  margin: 0 0 14px;
  color: var(--aik-accent);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
}
.aik-home-main .aik-home-intro__title {
  margin-bottom: 20px;
  font-size: clamp(28px, 3.1vw, 40px);
  line-height: 1.55;
  text-align: center;
}
.aik-home-main .aik-home-intro__copy {
  max-width: 41em;
  margin: 0 auto 26px;
  font-size: 17px;
  line-height: 1.9;
  text-align: center;
  text-wrap: balance;
}
.aik-home-main .aik-home-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 12px;
  margin: 0;
}
.aik-home-main .aik-home-actions--section { margin-top: 28px; }
.aik-home-main .aik-home-button { margin: 0; }
.aik-home-main .aik-home-button .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 52px;
  min-width: 220px;
  height: 100%;
  padding: 12px 24px;
  border: 2px solid var(--aik-accent);
  border-radius: 8px;
  background: var(--aik-accent);
  box-shadow: none;
  color: var(--aik-white);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
}
.aik-home-main .aik-home-button .wp-block-button__link::after {
  content: "→";
  font-family: sans-serif;
}
.aik-home-main .aik-home-button--secondary .wp-block-button__link {
  background: var(--aik-white);
  color: var(--aik-accent);
}

/* 記事は静止カード。画像・見出し・読む導線を1本のリンクにまとめる。 */
.aik-home-main .aik-post-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  margin: 0;
}
.aik-home-main .aik-post-card {
  min-width: 0;
  margin: 0;
  border: 1px solid var(--aik-line);
  border-radius: 12px;
  background: var(--aik-white);
}
.aik-home-main .aik-post-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: inherit;
  color: var(--aik-ink);
  text-decoration: none;
}
.aik-home-main .aik-post-card__image {
  width: 100%;
  height: auto;
  aspect-ratio: 8 / 5;
  object-fit: cover;
  border-radius: 11px 11px 0 0;
  margin: 0;
}
.aik-home-main .aik-post-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: 18px 20px;
}
.aik-home-main .aik-post-card__meta {
  display: block;
  margin: 0 0 6px;
  color: var(--aik-muted);
  font-size: 14px;
  line-height: 1.6;
}
.aik-home-main .aik-post-card__title {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--aik-ink);
  font-size: 18px;
  line-height: 1.65;
  text-wrap: balance;
}
.aik-home-main .aik-post-card__title::before,
.aik-home-main .aik-post-card__title::after { content: none; }
.aik-home-main .aik-post-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  margin-top: auto;
  color: var(--aik-accent);
  font-size: 16px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: .25em;
}
.aik-home-main .aik-post-card__cta::after { content: "→"; }

/* 図鑑の入口。全員を大画像で繰り返さず、代表6人をコンパクトに見せる。 */
.aik-home-main .aik-character-grid,
.aik-home-main .aik-comment-list,
.aik-home-main .aik-topic-list,
.aik-home-main .aik-ranking-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.aik-home-main .aik-character-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}
.aik-home-main .aik-character-grid > li,
.aik-home-main .aik-comment-list > li,
.aik-home-main .aik-topic-list > li,
.aik-home-main .aik-ranking-list > li { min-width: 0; margin: 0; }
.aik-home-main .aik-character-card {
  display: flex;
  align-items: center;
  gap: 18px;
  height: 100%;
  min-height: 120px;
  padding: 10px;
  border: 1px solid var(--aik-line);
  border-radius: 12px;
  background: var(--aik-white);
  color: var(--aik-ink);
  text-decoration: none;
}
.aik-home-main .aik-character-card img {
  flex: 0 0 100px;
  width: 100px;
  height: 100px;
  margin: 0;
  border-radius: 8px;
  object-fit: cover;
  object-position: center;
}
.aik-home-main .aik-character-card__name {
  display: block;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}
.aik-home-main .aik-character-card::after {
  content: "›";
  margin-left: auto;
  padding-right: 4px;
  color: var(--aik-accent);
  font-family: sans-serif;
  font-size: 25px;
}

/* 人気記事。集計期間と空状態は動的出力の文言をそのまま表示する。 */
.aik-home-main .aik-ranking-columns,
.aik-home-main .aik-extra-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 24px;
  margin: 0;
}
.aik-home-main .aik-ranking-panel,
.aik-home-main .aik-extra-card {
  min-width: 0;
  margin: 0;
  padding: 24px;
  border: 1px solid var(--aik-line);
  border-radius: 12px;
  background: var(--aik-white);
}
.aik-home-main .aik-ranking-panel > h3,
.aik-home-main .aik-extra-card > h3 {
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--aik-ink);
  font-size: 20px;
  line-height: 1.6;
}
.aik-home-main .aik-ranking-panel > h3::before,
.aik-home-main .aik-ranking-panel > h3::after,
.aik-home-main .aik-extra-card > h3::before,
.aik-home-main .aik-extra-card > h3::after { content: none; }
.aik-home-main .aik-ranking-note {
  margin: 0 0 16px;
  color: var(--aik-muted);
  font-size: 14px;
  line-height: 1.7;
}
.aik-home-main .aik-ranking-item + .aik-ranking-item { border-top: 1px solid var(--aik-line); }
.aik-home-main .aik-ranking-item > a {
  display: grid;
  grid-template-columns: 26px 72px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 100px;
  padding: 16px 0;
  color: var(--aik-ink);
  text-decoration: none;
}
.aik-home-main .aik-ranking-number {
  color: var(--aik-accent);
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}
.aik-home-main .aik-ranking-item img {
  width: 72px;
  height: 72px;
  border-radius: 6px;
  object-fit: cover;
}
.aik-home-main .aik-ranking-item__body { min-width: 0; }
.aik-home-main .aik-ranking-item__title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.65;
}
.aik-home-main .aik-ranking-item__meta {
  display: block;
  margin-top: 5px;
  color: var(--aik-muted);
  font-size: 14px;
  line-height: 1.6;
}
.aik-home-main .aik-empty {
  margin: 16px 0 0;
  padding: 16px;
  border-radius: 8px;
  background: var(--aik-cream);
  color: var(--aik-muted);
  font-size: 16px;
}

/* 集計・コメント注記はカードに密着させず、読み分ける余白を確保する。 */
.aik-home-main .aik-ranking-source,
.aik-home-main .aik-comment-note { margin-top: 16px; }

/* コメント本文を抜粋せず、会話のある記事へ案内する。 */
.aik-home-main .aik-comment-list { display: grid; gap: 12px; }
.aik-home-main .aik-comment-card > a {
  display: grid;
  gap: 6px;
  padding: 20px 24px;
  border: 1px solid var(--aik-line);
  border-radius: 10px;
  background: var(--aik-white);
  color: var(--aik-ink);
  text-decoration: none;
}
.aik-home-main .aik-comment-card__author,
.aik-home-main .aik-comment-card__post,
.aik-home-main .aik-comment-card__meta { display: block; }
.aik-home-main .aik-comment-card__author {
  color: var(--aik-muted);
  font-size: 14px;
}
.aik-home-main .aik-comment-card__post {
  color: var(--aik-accent);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
  text-decoration: underline;
  text-underline-offset: .25em;
}
.aik-home-main .aik-comment-card__meta {
  color: var(--aik-muted);
  font-size: 14px;
}

/* 分類は大きさを揃え、少ない項目でも多い項目でも折り返せる。 */
.aik-home-main .aik-topic-list { display: flex; flex-wrap: wrap; gap: 12px; }
.aik-home-main .aik-topic-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 10px 16px;
  border: 1px solid var(--aik-line);
  border-radius: 8px;
  background: var(--aik-cream);
  color: var(--aik-ink);
  font-size: 16px;
  line-height: 1.6;
  text-decoration: none;
}
.aik-home-main .aik-topic-link__count { color: var(--aik-muted); font-size: 14px; }

/* おまけも通常のリンクのみ。フォームや埋め込みの実行は追加しない。 */
.aik-home-main .aik-extra-grid { margin-top: 24px; }
.aik-home-main .aik-extra-card { display: flex; flex-direction: column; align-items: flex-start; }
.aik-home-main .aik-extra-card > p { margin: 0 0 16px; font-size: 16px; }
.aik-home-main .aik-text-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: auto;
  color: var(--aik-accent);
  font-size: 16px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: .25em;
}

/* 動かさず、下線と色でリンクの反応を示す。 */
@media (hover: hover) {
  .aik-home-main .aik-home-button .wp-block-button__link:hover { background: var(--aik-accent-dark); border-color: var(--aik-accent-dark); color: var(--aik-white); }
  .aik-home-main .aik-post-card__link:hover .aik-post-card__title,
  .aik-home-main .aik-character-card:hover .aik-character-card__name,
  .aik-home-main .aik-ranking-item > a:hover .aik-ranking-item__title,
  .aik-home-main .aik-topic-link:hover .aik-topic-link__name { color: var(--aik-accent); text-decoration: underline; text-underline-offset: .25em; }
  .aik-home-main .aik-comment-card > a:hover,
  .aik-home-main .aik-character-card:hover,
  .aik-home-main .aik-topic-link:hover { border-color: var(--aik-accent); }
}

/* 中間幅を2列にし、992/993pxで1列から3列に飛ばないようにする。 */
@media (min-width: 600px) {
  .aik-home-main .aik-post-grid,
  .aik-home-main .aik-character-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aik-home-main .aik-extra-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 880px) {
  .aik-home-main .aik-ranking-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1080px) {
  .aik-home-main .aik-post-grid,
  .aik-home-main .aik-character-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 599px) {
  .aik-home-main .aik-home-section { padding: 44px 16px; }
  .aik-home-main .aik-home-section__title::before,
  .aik-home-main .aik-home-intro__title::before { font-size: 32px; margin-bottom: 8px; }
  .aik-home-main .aik-home-intro { padding-block: 40px; }
  .aik-home-main .aik-home-intro__copy { font-size: 16px; }
  .aik-home-main .aik-home-actions { flex-direction: column; }
  .aik-home-main .aik-home-button,
  .aik-home-main .aik-home-button .wp-block-button__link { width: 100%; }
  .aik-home-main .aik-post-grid { gap: 20px; }
  .aik-home-main .aik-post-card__body { padding: 16px 18px; }
  /* 先頭1件は写真を大きく、残り5件は読み進めやすい横長の一覧にする。 */
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__link {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    align-items: stretch;
    min-height: 124px;
  }
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__image {
    width: 96px;
    height: 124px;
    align-self: center;
    aspect-ratio: auto;
    border-radius: 11px 0 0 11px;
  }
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__body {
    justify-content: center;
    padding: 12px 14px;
  }
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__meta {
    margin-bottom: 5px;
    font-size: 14px;
  }
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__title {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.65;
    color: var(--aik-accent);
    text-decoration: underline;
    text-underline-offset: .2em;
  }
  .aik-home-main .aik-post-card:nth-child(n + 2) .aik-post-card__cta { display: none; }
  .aik-home-main .aik-character-grid { gap: 12px; }
  .aik-home-main .aik-ranking-panel,
  .aik-home-main .aik-extra-card { padding: 20px 16px; }
  .aik-home-main .aik-ranking-item > a { grid-template-columns: 22px 64px minmax(0, 1fr); gap: 9px; }
  .aik-home-main .aik-ranking-item img { width: 64px; height: 64px; }
  .aik-home-main .aik-comment-card > a { padding: 18px; }
  /* 分類は2列の均一な格子にし、名前と件数を無理なく縦に並べる。 */
  .aik-home-main .aik-topic-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: 10px;
  }
  .aik-home-main .aik-topic-link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 4px;
    width: 100%;
    height: 100%;
    min-height: 84px;
    padding: 12px;
  }
}

/* OSの動きを減らす設定も本文の範囲内で尊重する。 */
@media (prefers-reduced-motion: reduce) {
  .aik-home-main *,
  .aik-home-main *::before,
  .aik-home-main *::after { animation: none !important; transition: none !important; }
}

/* 作品紹介の動詞句を語中で分割せず、文言はそのままに保つ。 */
.aik-home-main .aik-home-phrase { white-space: nowrap; }
