/* =========================================================
   Rosanica Home V3
   V2の見た目を踏襲しつつ、編集価値をトップページで明示
========================================================= */

/* =========================================================
   1. 固定ページ外側
========================================================= */
body.rosanica-home-v3-page {
  background: #f3f3f3 !important;
}

body.rosanica-home-v3-page .sidebar {
  display: none !important;
}

body.rosanica-home-v3-page .content,
body.rosanica-home-v3-page .content-in,
body.rosanica-home-v3-page .main,
body.rosanica-home-v3-page .article,
body.rosanica-home-v3-page .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.rosanica-home-v3-page .content-in,
body.rosanica-home-v3-page .main,
body.rosanica-home-v3-page .article,
body.rosanica-home-v3-page .entry-content {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body.rosanica-home-v3-page .article,
body.rosanica-home-v3-page .entry-content {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

/* =========================================================
   2. 共通
========================================================= */
.rosanica-home-v3 {
  width: 100%;
  margin: 0 auto;
  padding: 0 10px 36px;
  box-sizing: border-box;
  color: #111111;
}

.rosanica-home-v3,
.rosanica-home-v3 * {
  box-sizing: border-box;
}

.rosanica-home-v3 a {
  text-decoration: none;
}

.rosanica-home-v3__section {
  width: 100%;
  margin: 0 0 54px;
  scroll-margin-top: 24px;
}

.rosanica-home-v3__section-lead {
  max-width: 760px;
  margin: -8px auto 24px;
  color: #555555;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
  text-align: center;
}

.rosanica-home-v3__empty {
  margin: 0;
  padding: 20px;
  color: #666666;
  background: #ffffff;
  border-radius: 14px;
  text-align: center;
}

/* =========================================================
   3. カテゴリ導線（V2踏襲）
========================================================= */
.rosanica-home-v3__categories {
  width: 100%;
  margin: 0 0 22px;
}

.rosanica-home-v3__category-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0;
  padding: 4px 8px;
  list-style: none;
}

.rosanica-home-v3__category-list li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.rosanica-home-v3__category-list a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 7px 15px;
  color: #111111 !important;
  background: #ffffff;
  border: 1px solid #dcdcdc;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.035);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  text-decoration: none !important;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.rosanica-home-v3__category-list a:hover {
  border-color: #111111;
  transform: translateY(-1px);
  box-shadow: 0 5px 13px rgba(0, 0, 0, 0.07);
}

/* =========================================================
   4. ファーストビュー：既存バナー画像
========================================================= */
.rosanica-home-v3__hero {
  width: 100%;
  margin: 0 0 42px;
}

.rosanica-home-v3__hero-media {
  width: 100%;
  margin: 0;
  overflow: hidden;
  background: #ffffff;
}

.rosanica-home-v3__hero-media img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* =========================================================
   5. セクション見出し（V2踏襲）
========================================================= */
.rosanica-home-v3 .rosanica-home-v3__section-title {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 15px !important;
  width: 100% !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 25px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.02em !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title::before,
.rosanica-home-v3 .rosanica-home-v3__section-title::after {
  content: "" !important;
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 20px !important;
  height: 2px !important;
  background: #111111 !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title span {
  flex: 0 0 auto;
}

/* =========================================================
   6. 3つの特徴
========================================================= */
.rosanica-home-v3__principle-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.rosanica-home-v3__principle-card {
  position: relative;
  min-height: 180px;
  padding: 22px 20px 20px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
}

.rosanica-home-v3__principle-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 28px;
  margin-bottom: 14px;
  color: #ffffff;
  background: #111111;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.rosanica-home-v3 .rosanica-home-v3__principle-card h3 {
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
}

.rosanica-home-v3__principle-card p {
  margin: 0;
  color: #555555;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.8;
}

/* =========================================================
   7. 独自分析
========================================================= */
.rosanica-home-v3__analysis-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.rosanica-home-v3__analysis-card {
  display: block;
  overflow: hidden;
  color: #111111 !important;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
  text-decoration: none !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rosanica-home-v3__analysis-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.09);
}

.rosanica-home-v3__analysis-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0;
  overflow: hidden;
  background: #e9f6fb;
}

.rosanica-home-v3__analysis-thumb img,
.rosanica-home-v3__analysis-no-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.rosanica-home-v3__analysis-no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3d91ad;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.rosanica-home-v3__analysis-body {
  padding: 16px 16px 18px;
}

.rosanica-home-v3__analysis-label {
  display: inline-flex;
  margin-bottom: 9px;
  padding: 4px 9px;
  color: #3d91ad;
  background: #eef8fb;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.02em;
}

.rosanica-home-v3 .rosanica-home-v3__analysis-title {
  margin: 0 !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.5 !important;
  text-decoration-line: underline !important;
  text-decoration-color: #3d91ad !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
  text-decoration-skip-ink: none !important;
}


.rosanica-home-v3__analysis-more {
  display: inline-block;
  margin-top: 14px;
  color: #111111;
  font-size: 12px;
  font-weight: 900;
}

/* =========================================================
   8. 新着記事（V2をほぼ踏襲）
========================================================= */
.rosanica-home-v3__latest-list {
  width: 100%;
}

.rosanica-home-v3__card-link {
  text-decoration: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__card-title {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 15.5px !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  text-align: left !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-decoration-line: underline !important;
  text-decoration-style: solid !important;
  text-decoration-color: #3d91ad !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
  text-decoration-skip-ink: none !important;
  -webkit-text-decoration-skip: none !important;
  transition: text-decoration-color 0.2s ease !important;
}

.rosanica-home-v3__no-image {
  display: flex !important;
  align-items: center;
  justify-content: center;
  color: #0077b6;
  background: #e9f6fb;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
}

@media (hover: hover) {
  .rosanica-home-v3__card-link:hover .rosanica-home-v3__card-title {
    text-decoration-color: #111111 !important;
  }
}

/* =========================================================
   9. テーマから探す
========================================================= */
.rosanica-home-v3__topic-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.rosanica-home-v3__topic-card {
  display: flex;
  flex-direction: column;
  min-height: 150px;
  padding: 18px;
  color: #111111 !important;
  background: #ffffff;
  border: 1px solid #e2e2e2;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
  text-decoration: none !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rosanica-home-v3__topic-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08);
}

.rosanica-home-v3__topic-name {
  font-size: 18px;
  font-weight: 900;
  line-height: 1.4;
}

.rosanica-home-v3__topic-description {
  margin-top: 9px;
  color: #666666;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.75;
}

.rosanica-home-v3__topic-arrow {
  margin-top: auto;
  padding-top: 14px;
  color: #3d91ad;
  font-size: 12px;
  font-weight: 900;
}

/* =========================================================
   10. 記事ができるまで
========================================================= */
.rosanica-home-v3__workflow {
  padding: 26px 18px 28px;
  background: #ffffff;
  border: 1px solid #e2e2e2;
  border-radius: 18px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
}

.rosanica-home-v3__workflow-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rosanica-home-v3__workflow-list li {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px 12px;
  align-items: center;
  min-height: 72px;
  padding: 12px 14px;
  background: #f6f6f6;
  border-radius: 13px;
}


.rosanica-home-v3__workflow-list strong {
  color: #111111;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.4;
}

.rosanica-home-v3__workflow-list small {
  color: #777777;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.5;
}

.rosanica-home-v3__workflow-action {
  display: flex;
  justify-content: center;
  margin-top: 22px;
}

/* =========================================================
   11. 注目記事（V2のサイドバー表現を中央パネル化）
========================================================= */
.rosanica-home-v3__featured-panel {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  padding: 18px;
  background: #ffffff;
  border: 1px solid #e4e4e4;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
}

.rosanica-home-v3__featured-list {
  display: flex;
  flex-direction: column;
}

.rosanica-home-v3__featured-item {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  color: #111111 !important;
  border-bottom: 1px solid #eeeeee;
  text-decoration: none !important;
}

.rosanica-home-v3__featured-item:first-child {
  padding-top: 0;
}

.rosanica-home-v3__featured-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.rosanica-home-v3__featured-thumb {
  width: 78px;
  height: 78px;
  margin: 0;
  overflow: hidden;
  border-radius: 9px;
}

.rosanica-home-v3__featured-thumb img,
.rosanica-home-v3__featured-no-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.rosanica-home-v3__featured-no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0077b6;
  background: #e9f6fb;
  font-size: 9px;
  font-weight: 900;
}

.rosanica-home-v3 .rosanica-home-v3__featured-item-title {
  margin: 0 !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

/* =========================================================
   13. フッター手前の案内リンク
========================================================= */
.rosanica-home-v3__utility {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 18px;
  width: 100%;
  margin: 0 auto;
  padding: 24px 12px 6px;
  border-top: 1px solid #dcdcdc;
}

.rosanica-home-v3__utility a {
  color: #333333 !important;
  font-size: 12px;
  font-weight: 800;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* =========================================================
   14. ページ送り（V2踏襲）
========================================================= */
.rosanica-home-v3 .rosanica-home-pagination {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 720px;
  margin: 28px auto 8px;
}

.rosanica-home-v3 .rosanica-home-pagination__next {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  order: 1;
  width: 100%;
  min-height: 64px;
  padding: 14px 20px;
  overflow: hidden;
  color: #ffffff !important;
  background: #111111 !important;
  border: 2px solid #111111 !important;
  border-radius: 14px;
  box-shadow: 0 6px 0 #ffffff;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.4;
  text-align: center;
  text-decoration: none !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rosanica-home-v3 .rosanica-home-pagination__next span {
  color: #ffffff !important;
}

.rosanica-home-v3 .rosanica-home-pagination__next:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 0 #ffffff;
}

.rosanica-home-v3 .rosanica-home-pagination__next-prefix {
  font-size: 14px;
  letter-spacing: 0.1em;
}

.rosanica-home-v3 .rosanica-home-pagination__prev {
  order: 2;
  color: #333333 !important;
  font-size: 14px;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

.rosanica-home-v3 .rosanica-home-pagination__count {
  order: 3;
  color: #777777;
  font-size: 12px;
  font-weight: 700;
}

/* =========================================================
   15. 2ページ目以降
========================================================= */
.rosanica-home-v3.is-paged {
  padding-top: 8px;
}

.rosanica-home-v3.is-paged .rosanica-home-v3__latest {
  margin-top: 10px;
}

/* =========================================================
   16. スマホ
========================================================= */
@media screen and (max-width: 768px) {
  .rosanica-home-v3 {
    padding: 0 10px 28px;
  }

  .rosanica-home-v3__categories {
    margin-bottom: 18px;
  }

  .rosanica-home-v3__hero-media {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }

  .rosanica-home-v3__hero-copy {
    width: 100%;
    margin-top: -10px;
    padding: 20px 16px 22px;
    border-radius: 14px;
  }

  .rosanica-home-v3 .rosanica-home-v3__hero-title {
    font-size: 25px !important;
  }

  .rosanica-home-v3__hero-lead {
    font-size: 13px;
    line-height: 1.85;
  }

  .rosanica-home-v3__hero-actions {
    flex-direction: column;
  }

  .rosanica-home-v3__button {
    width: 100%;
  }

  .rosanica-home-v3__section {
    margin-bottom: 46px;
  }

  .rosanica-home-v3__latest-list {
    display: block;
  }

  .rosanica-home-v3__card-link {
    margin-bottom: 2px !important;
  }

  .rosanica-home-v3__workflow {
    padding: 22px 12px 24px;
  }

  .rosanica-home-v3__workflow-action .rosanica-home-v3__button {
    max-width: 320px;
  }

  .rosanica-home-v3 .rosanica-home-pagination {
    gap: 10px;
    margin-top: 20px;
  }

  .rosanica-home-v3 .rosanica-home-pagination__next {
    min-height: 58px;
    padding: 12px 14px;
    border-radius: 12px;
    box-shadow: 0 5px 0 #ffffff;
    font-size: 16px;
  }
}

/* =========================================================
   17. PC
========================================================= */
@media screen and (min-width: 769px) {
  body.rosanica-home-v3-page .content-in {
    width: 100% !important;
    max-width: 1440px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  body.rosanica-home-v3-page .main {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body.rosanica-home-v3-page #header,
  body.rosanica-home-v3-page #header-container,
  body.rosanica-home-v3-page .header,
  body.rosanica-home-v3-page .header-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .rosanica-home-v3 {
    width: 100% !important;
    max-width: 1360px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
    padding-bottom: 52px;
  }

  .rosanica-home-v3__categories {
    margin-top: 14px;
    margin-bottom: 22px;
  }

  .rosanica-home-v3__hero {
    margin-bottom: 66px;
  }

  .rosanica-home-v3__hero-media {
    width: 100%;
    max-width: 1200px;
    height: clamp(320px, 34vw, 460px);
    margin: 0 auto;
  }

  .rosanica-home-v3__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }

  .rosanica-home-v3__hero-copy {
    margin-top: -44px;
    padding: 28px 42px 30px;
  }

  .rosanica-home-v3 .rosanica-home-v3__hero-title {
    font-size: 38px !important;
  }

  .rosanica-home-v3__hero-lead {
    font-size: 15px;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title {
    gap: 18px !important;
    margin-bottom: 28px !important;
    font-size: 32px !important;
  }

  .rosanica-home-v3__section-lead {
    margin-top: -12px;
    margin-bottom: 28px;
    font-size: 14px;
  }

  .rosanica-home-v3__principle-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }

  .rosanica-home-v3__analysis-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .rosanica-home-v3__analysis-card {
    display: grid;
    grid-template-columns: 42% minmax(0, 1fr);
    min-height: 230px;
  }

  .rosanica-home-v3__analysis-thumb {
    height: 100%;
    aspect-ratio: auto;
  }

  .rosanica-home-v3__analysis-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
  }

  .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    font-size: 17px !important;
  }

  /* 新着記事：V2の2列コンパクトカード */
  .rosanica-home-v3__latest-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 20px;
  }

  .rosanica-home-v3__card-link {
    display: block !important;
    width: 100%;
    height: 100%;
    margin: 0 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__card {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    width: 100% !important;
    min-height: 130px !important;
    height: 100% !important;
    padding: 10px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 16px !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.09) !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__thumb {
    display: block !important;
    flex: 0 0 110px !important;
    width: 110px !important;
    min-width: 110px !important;
    max-width: 110px !important;
    height: 110px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 14px 0 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__thumb img,
  .rosanica-home-v3 .rosanica-home-v3__thumb .no-image,
  .rosanica-home-v3 .rosanica-home-v3__thumb .rosanica-home-v3__no-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 12px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__thumb .no-image,
  .rosanica-home-v3 .rosanica-home-v3__thumb .rosanica-home-v3__no-image {
    display: flex !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__card-content {
    display: flex !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 4px 6px 4px 0 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__card-title {
    font-size: 17px !important;
    line-height: 1.45 !important;
  }

  .rosanica-home-v3__topic-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
  }

  .rosanica-home-v3__topic-card {
    min-height: 185px;
  }

  .rosanica-home-v3__special-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }

  .rosanica-home-v3__workflow {
    padding: 32px 30px 34px;
  }

  .rosanica-home-v3__workflow-list {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px;
  }

  .rosanica-home-v3__workflow-list li {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 170px;
    padding: 18px 10px 14px;
    text-align: center;
  }

  .rosanica-home-v3__workflow-list li:not(:last-child)::after {
    content: "→";
    position: absolute;
    top: 50%;
    right: -11px;
    z-index: 3;
    width: 22px;
    color: #777777;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    transform: translateY(-50%);
  }

  .rosanica-home-v3__workflow-list li > span {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    margin-bottom: 12px;
  }

  .rosanica-home-v3__workflow-list strong {
    margin-bottom: 7px;
  }
}

/* :has 未対応環境でも表示崩れしないための補助 */
@supports not selector(:has(*)) {
  .rosanica-home-v3__hero-copy {
    margin-top: 18px;
  }
  .rosanica-home-v3__hero-media + .rosanica-home-v3__hero-copy {
    margin-top: -18px;
  }
  @media screen and (min-width: 769px) {
    .rosanica-home-v3__hero-media + .rosanica-home-v3__hero-copy {
      margin-top: -44px;
    }
  }
}

/* =========================================================
   18. V2互換：画像見出し
========================================================= */
.rosanica-home-v3__heading-image {
  display: none;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3 .rosanica-home-v3__section-title.has-heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    margin-bottom: 24px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.has-heading-image::before,
  .rosanica-home-v3 .rosanica-home-v3__section-title.has-heading-image::after {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3 .has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  .rosanica-home-v3 .has-heading-image .rosanica-home-v3__heading-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

@media screen and (min-width: 769px) {
  /* PCは新着のみV2同様に画像見出しを使用 */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    display: block !important;
    width: 100% !important;
    margin-bottom: 26px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::before,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::after {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  /* PCの注目見出しも既存の画像資産を表示 */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image {
    display: block !important;
    width: 100% !important;
    margin-bottom: 26px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::before,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::after {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

/* 固定ページ側のタイトルが表示されるテーマ設定でも、H1をヒーローの1つに統一 */
body.rosanica-home-v3-page .article > .entry-title,
body.rosanica-home-v3-page .article-header > .entry-title {
  display: none !important;
}

/* PC：既存V2と同じバナー幅感 */
@media screen and (min-width: 769px) {
  .rosanica-home-v3__hero {
    width: 100% !important;
    max-width: 1200px !important;
    height: clamp(320px, 34vw, 460px) !important;
    margin: 0 auto 42px !important;
    overflow: hidden !important;
  }

  .rosanica-home-v3__hero-media {
    width: 100% !important;
    height: 100% !important;
  }

  .rosanica-home-v3__hero-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
}

/* =========================================================
   19. V3 v1.0.6：トップ構成調整
   バナー直下「ロザニカについて」＋見出し画像を少し縮小
========================================================= */

/* バナーと紹介欄をひとまとまりに見せる */
.rosanica-home-v3__hero {
  margin-bottom: 16px !important;
}

.rosanica-home-v3__about {
  width: 100%;
  max-width: 980px;
  margin: 0 auto 54px;
  padding: 24px 24px 22px;
  background: #ffffff;
  border: 1px solid #e4e4e4;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
  text-align: center;
}

.rosanica-home-v3 .rosanica-home-v3__about-title {
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

.rosanica-home-v3__about-text {
  margin: 0;
  color: #444444;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.9;
}

.rosanica-home-v3__about-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-top: 15px;
}

.rosanica-home-v3__about-links a {
  color: #333333 !important;
  font-size: 12.5px;
  font-weight: 900;
  text-decoration: underline !important;
  text-decoration-color: #3d91ad !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 4px !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__hero {
    margin-bottom: 12px !important;
  }

  .rosanica-home-v3__about {
    margin-bottom: 44px;
    padding: 20px 16px 18px;
    border-radius: 14px;
  }

  .rosanica-home-v3 .rosanica-home-v3__about-title {
    font-size: 20px !important;
  }

  .rosanica-home-v3__about-text {
    font-size: 13px;
    line-height: 1.85;
  }

  /* 既存の「注目記事」「新着記事」画像見出しを少しだけ縮小 */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    width: 92% !important;
    max-width: 92% !important;
    height: 46px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    width: 100% !important;
    max-width: 100% !important;
    height: 46px !important;
  }
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__hero {
    margin-bottom: 18px !important;
  }

  .rosanica-home-v3__about {
    margin-bottom: 58px;
    padding: 26px 34px 24px;
  }

  /* 新着は現在の横幅感を残しつつ約8%縮小 */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    width: 92% !important;
    max-width: 1080px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  /* 注目は記事パネル幅に近づけ、既存画像の存在感は残す */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image {
    width: 92% !important;
    max-width: 760px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

/* =========================================================
   20. V3 v1.0.7：ABOUT再設計 / 注目・新着見出し画像を同寸化
========================================================= */

/*
 * 「ロザニカについて」は大きな角丸カードをやめ、
 * 雑誌のイントロダクションのような横組みレイアウトへ。
 */
.rosanica-home-v3__about {
  display: grid !important;
  grid-template-columns: minmax(210px, 0.72fr) minmax(0, 2fr) !important;
  gap: 34px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 6px auto 58px !important;
  padding: 30px 18px 30px !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid #d8d8d8 !important;
  border-bottom: 1px solid #d8d8d8 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

.rosanica-home-v3__about-heading {
  position: relative;
  min-width: 0;
  padding: 3px 0 3px 18px;
}

.rosanica-home-v3__about-heading::before {
  content: "";
  position: absolute;
  top: 3px;
  bottom: 3px;
  left: 0;
  width: 4px;
  background: #111111;
}

.rosanica-home-v3__about-kicker {
  display: block;
  margin: 0 0 7px;
  color: #3d91ad;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.16em;
}

.rosanica-home-v3 .rosanica-home-v3__about-title {
  margin: 0 !important;
  padding: 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 25px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.01em !important;
  text-align: left !important;
}

.rosanica-home-v3__about-content {
  min-width: 0;
}

.rosanica-home-v3__about-text {
  margin: 0 !important;
  color: #333333 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.9 !important;
  text-align: left !important;
}

.rosanica-home-v3__about-text strong {
  display: block;
  margin-bottom: 4px;
  color: #111111;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.65;
}

.rosanica-home-v3__about-text span {
  display: block;
}

.rosanica-home-v3__about-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px 12px !important;
  margin-top: 15px !important;
}

.rosanica-home-v3__about-links a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 34px !important;
  padding: 6px 13px !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 1px solid #d7d7d7 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

.rosanica-home-v3__about-links a span {
  color: #3d91ad;
  font-size: 13px;
  line-height: 1;
}

@media (hover: hover) {
  .rosanica-home-v3__about-links a:hover {
    border-color: #111111 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06) !important;
  }
}

/* PC：注目記事と新着記事の既存ヘッド画像を完全に同じサイズへ */
@media screen and (min-width: 769px) {
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    width: 92% !important;
    max-width: 760px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__about {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 4px auto 44px !important;
    padding: 22px 4px 24px !important;
    border-top: 1px solid #d8d8d8 !important;
    border-bottom: 1px solid #d8d8d8 !important;
  }

  .rosanica-home-v3__about-heading {
    margin-bottom: 16px;
    padding-left: 14px;
  }

  .rosanica-home-v3__about-heading::before {
    width: 3px;
  }

  .rosanica-home-v3 .rosanica-home-v3__about-title {
    font-size: 22px !important;
  }

  .rosanica-home-v3__about-text {
    font-size: 13px !important;
    line-height: 1.85 !important;
  }

  .rosanica-home-v3__about-text strong {
    font-size: 15px;
    line-height: 1.65;
  }

  .rosanica-home-v3__about-links {
    margin-top: 14px !important;
  }

  .rosanica-home-v3__about-links a {
    min-height: 32px !important;
    padding: 6px 12px !important;
    font-size: 11.5px !important;
  }

  /* スマホも両見出しを完全同寸 */
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    width: 92% !important;
    max-width: 92% !important;
    height: 46px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}


/* =========================================================
   21. V3 v1.0.8：注目カードを新着と統一 / 画像見出し横に罫線
========================================================= */

/* 注目記事も新着記事と同一のカードコンポーネントを使用するため、
   旧サイドバー風パネルの装飾を解除 */
.rosanica-home-v3__featured-panel {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.rosanica-home-v3__featured-list {
  width: 100% !important;
}

/* 画像見出し：— [注目記事画像] — / — [新着記事画像] — */
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin-right: auto !important;
  margin-left: auto !important;
  overflow: visible !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::after,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::after {
  content: "" !important;
  display: block !important;
  flex: 1 1 0 !important;
  min-width: 24px !important;
  height: 2px !important;
  background: #111111 !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
  display: block !important;
  flex: 0 1 760px !important;
  width: min(760px, 78%) !important;
  max-width: 760px !important;
  height: auto !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media screen and (min-width: 769px) {
  /* 注目記事のタイル配置も新着記事と同じ2列 */
  .rosanica-home-v3__featured-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 20px !important;
  }

  /* 注目記事が1件だけの場合も、カード幅は新着1枚分のまま中央配置 */
  .rosanica-home-v3__featured-list > .rosanica-home-v3__card-link:only-child {
    grid-column: 1 / -1;
    width: calc((100% - 20px) / 2) !important;
    justify-self: center;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured-list {
    display: block !important;
  }

  .rosanica-home-v3__featured-list .rosanica-home-v3__card-link {
    margin-bottom: 2px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::before,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::after,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::before,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::after {
    min-width: 12px !important;
    height: 1.5px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    flex: 0 1 82% !important;
    width: 82% !important;
    max-width: 82% !important;
    height: 46px !important;
  }
}

/* =========================================================
   22. V3 v1.0.9：画像見出し「背景帯」バージョン
   横罫線をやめ、注目記事・新着記事の見出し全体を
   淡い帯でひとまとまりに見せる。
========================================================= */

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 1180px !important;
  height: auto !important;
  margin: 0 auto 28px !important;
  padding: 18px 26px !important;
  overflow: hidden !important;
  background: linear-gradient(
    90deg,
    #f4f5f5 0%,
    #edf2f4 22%,
    #e8eff2 50%,
    #edf2f4 78%,
    #f4f5f5 100%
  ) !important;
  border-top: 1px solid #d9e0e3 !important;
  border-bottom: 1px solid #d9e0e3 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* v1.0.8の左右罫線は背景帯版では不要 */
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::after,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::after {
  display: none !important;
  content: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
  display: block !important;
  flex: 0 1 760px !important;
  width: min(760px, 82%) !important;
  max-width: 760px !important;
  height: auto !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: 0 4px 14px rgba(18, 35, 42, 0.08) !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 22px !important;
    padding: 10px 10px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    flex: 0 1 90% !important;
    width: 90% !important;
    max-width: 90% !important;
    height: 46px !important;
    box-shadow: 0 3px 10px rgba(18, 35, 42, 0.07) !important;
  }
}


/* =========================================================
   23. V3 v1.0.10：画像見出しをシンプル表示 / 独自分析ヘッド追加
========================================================= */

/* 注目・新着・独自分析：左右の棒や背景帯を使わず、画像だけを中央表示 */
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
  display: block !important;
  width: 100% !important;
  max-width: 760px !important;
  height: auto !important;
  margin: 0 auto 28px !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image::after,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image::after,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image::before,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image::after {
  display: none !important;
  content: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image,
.rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image .rosanica-home-v3__heading-image {
  display: block !important;
  width: 100% !important;
  max-width: 760px !important;
  height: auto !important;
  margin: 0 auto !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image .rosanica-home-v3__heading-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
    width: 92% !important;
    max-width: 92% !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3 .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image .rosanica-home-v3__heading-image {
    width: 100% !important;
    max-width: 100% !important;
    height: 46px !important;
  }
}


/* =========================================================
   24. V3 v1.0.11：注目記事・新着記事をセクション単位で囲む
========================================================= */

/* 見出し＋記事カード全体を、薄いグレーの面でひとまとまりにする */
.rosanica-home-v3__featured,
.rosanica-home-v3__latest {
  padding: 30px 28px 32px !important;
  background: #f8f8f8 !important;
  border: 1px solid #dedede !important;
  border-radius: 24px !important;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.025) !important;
}

/* セクション内の見出し画像は少し上に寄せ、カード群とのまとまりを出す */
.rosanica-home-v3__featured .rosanica-home-v3__section-title,
.rosanica-home-v3__latest .rosanica-home-v3__section-title {
  margin-top: 0 !important;
}

/* 白カードをグレー面から少しだけ浮かせる */
.rosanica-home-v3__featured .rosanica-home-v3__card,
.rosanica-home-v3__latest .rosanica-home-v3__card {
  background: #ffffff !important;
  border-color: #e3e3e3 !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest {
    padding: 18px 12px 20px !important;
    border-radius: 18px !important;
  }
}


/* =========================================================
   25. V3 v1.0.12：注目・新着を「透明な枠線」で囲む
   見出し画像が上辺に乗る fieldset / legend 風デザイン。
========================================================= */

/* v1.0.11 のグレー面を撤去。中身は完全に透明 */
.rosanica-home-v3__featured,
.rosanica-home-v3__latest {
  position: relative !important;
  overflow: visible !important;
  margin-top: 54px !important;
  padding: 38px 28px 32px !important;
  background: transparent !important;
  border: 1px solid #d4d7d9 !important;
  border-radius: 22px !important;
  box-shadow: none !important;
}

/* 見出し画像を枠の上辺に重ねる */
.rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
  position: relative !important;
  z-index: 2 !important;
  margin: -77px auto 30px !important;
}

/* 内側の記事カードは従来の白カードを維持 */
.rosanica-home-v3__featured .rosanica-home-v3__card,
.rosanica-home-v3__latest .rosanica-home-v3__card {
  background: #ffffff !important;
  border-color: #e3e3e3 !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest {
    margin-top: 38px !important;
    padding: 25px 12px 20px !important;
    border-color: #d9dcde !important;
    border-radius: 17px !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    margin: -49px auto 22px !important;
  }
}

/* =========================================================
   26. V3 v1.0.13：枠線を強調・角丸を控えめにし、独自分析にも適用
========================================================= */

/* 注目・新着・独自分析：透明背景＋やや太めの枠線 */
.rosanica-home-v3__featured,
.rosanica-home-v3__latest,
.rosanica-home-v3__analysis {
  position: relative !important;
  overflow: visible !important;
  margin-top: 54px !important;
  padding: 38px 28px 32px !important;
  background: transparent !important;
  border: 2px solid #c9cdd0 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

/* 3つの見出し画像を枠の上辺に重ねる */
.rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
  position: relative !important;
  z-index: 2 !important;
  margin: -77px auto 30px !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest,
  .rosanica-home-v3__analysis {
    margin-top: 38px !important;
    padding: 25px 12px 20px !important;
    border-width: 2px !important;
    border-color: #cdd1d4 !important;
    border-radius: 7px !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
    margin: -49px auto 22px !important;
  }
}


/* =========================================================
   27. V3 v1.0.14：ABOUTロゴ化 / 3セクション間の余白拡大
========================================================= */

/* ABOUT：英字キッカーと文字見出しをやめ、公式ロゴを表示 */
.rosanica-home-v3__about-heading {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  padding: 3px 0 3px 18px !important;
}

.rosanica-home-v3__about-heading::before {
  top: 2px !important;
  bottom: 2px !important;
}

.rosanica-home-v3__about-logo {
  display: block !important;
  width: 100% !important;
  max-width: 300px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* ABOUTリンクは「運営者情報と編集方針」の1ボタンのみ */
.rosanica-home-v3__about-links {
  gap: 0 !important;
}

.rosanica-home-v3__about-links a {
  padding-right: 16px !important;
  padding-left: 16px !important;
}

/* 注目 → 新着 → 独自分析の各セクションを視覚的にしっかり分離。
   見出し画像が枠線上に重なるため、単純なmarginより広めに取る。 */
.rosanica-home-v3__featured,
.rosanica-home-v3__latest,
.rosanica-home-v3__analysis {
  margin-top: 128px !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__about-heading {
    margin-bottom: 18px !important;
    padding-left: 14px !important;
  }

  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: min(260px, 78vw) !important;
    max-height: 58px !important;
  }

  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest,
  .rosanica-home-v3__analysis {
    margin-top: 92px !important;
  }
}

/* =========================================================
   28. V3 v1.0.15：ABOUTバランス調整
   ロゴを主役にしつつ、説明文との比率・余白を整える
========================================================= */

@media screen and (min-width: 769px) {
  .rosanica-home-v3__about {
    grid-template-columns: 260px minmax(0, 1fr) !important;
    gap: 48px !important;
    align-items: center !important;
    max-width: 1180px !important;
    margin: 10px auto 72px !important;
    padding: 30px 26px !important;
  }

  .rosanica-home-v3__about-heading {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__about-heading::before {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: 245px !important;
    max-height: 92px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .rosanica-home-v3__about-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 2px 0 !important;
  }

  .rosanica-home-v3__about-text {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }

  .rosanica-home-v3__about-text strong {
    margin-bottom: 7px !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
  }

  .rosanica-home-v3__about-links {
    margin-top: 17px !important;
  }

  .rosanica-home-v3__about-links a {
    min-height: 38px !important;
    padding: 7px 16px !important;
    border-radius: 8px !important;
    font-size: 12.5px !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__about {
    margin: 6px auto 54px !important;
    padding: 24px 10px 26px !important;
  }

  .rosanica-home-v3__about-heading {
    display: flex !important;
    justify-content: center !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__about-heading::before {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: min(220px, 68vw) !important;
    max-height: 72px !important;
    margin: 0 auto !important;
    object-position: center center !important;
  }

  .rosanica-home-v3__about-content {
    text-align: center !important;
  }

  .rosanica-home-v3__about-text,
  .rosanica-home-v3__about-text strong,
  .rosanica-home-v3__about-text span {
    text-align: center !important;
  }

  .rosanica-home-v3__about-links {
    justify-content: center !important;
  }

  .rosanica-home-v3__about-links a {
    border-radius: 8px !important;
  }
}


/* =========================================================
   29. V3 v1.0.16：ABOUTロゴサイズ微調整
   説明文よりロゴが勝ちすぎないよう、PC/スマホとも一段縮小
========================================================= */

@media screen and (min-width: 769px) {
  .rosanica-home-v3__about {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 42px !important;
  }

  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: 205px !important;
    max-height: 68px !important;
    margin: 0 auto !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: min(185px, 58vw) !important;
    max-height: 58px !important;
  }
}

/* =========================================================
   30. V3 v1.0.17：3つの特徴をエディトリアルデザインへ
   カード感を抑え、雑誌・特集ページのような構成に変更
========================================================= */

.rosanica-home-v3__principle-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  background: transparent !important;
  border-top: 0 !important;
  border-bottom: 1px solid #d9d9d9 !important;
}

.rosanica-home-v3__principle-card {
  position: relative !important;
  min-height: 0 !important;
  padding: 30px 22px 28px !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #d9d9d9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: background-color 0.2s ease !important;
}

.rosanica-home-v3__principle-card:last-child {
  border-bottom: 0 !important;
}

@media (hover: hover) {
  .rosanica-home-v3__principle-card:hover {
    background: rgba(0, 0, 0, 0.018) !important;
  }
}

.rosanica-home-v3__principle-number {
  position: absolute !important;
  top: 12px !important;
  right: 18px !important;
  z-index: 0 !important;
  display: block !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(17, 17, 17, 0.075) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 58px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: -0.06em !important;
  pointer-events: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__principle-card h3 {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 0 14px !important;
  padding: 17px 0 0 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
}

.rosanica-home-v3 .rosanica-home-v3__principle-card h3::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 34px !important;
  height: 3px !important;
  background: #3d91ad !important;
}

.rosanica-home-v3__principle-card p {
  position: relative !important;
  z-index: 1 !important;
  max-width: 34em !important;
  margin: 0 !important;
  color: #4b4b4b !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.9 !important;
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__principle-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .rosanica-home-v3__principle-card {
    min-height: 230px !important;
    padding: 34px 30px 32px !important;
    border-right: 1px solid #d9d9d9 !important;
    border-bottom: 0 !important;
  }

  .rosanica-home-v3__principle-card:last-child {
    border-right: 0 !important;
  }

  .rosanica-home-v3__principle-number {
    top: 18px !important;
    right: 24px !important;
    font-size: 72px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__principle-card h3 {
    max-width: 82% !important;
    padding-top: 20px !important;
    font-size: 20px !important;
  }

  .rosanica-home-v3__principle-card p {
    max-width: 92% !important;
    font-size: 14.5px !important;
  }
}

/* =========================================================
   31. V3 v1.0.19：特徴の上罫線を復活 / テーマ一覧を編集誌面風に刷新
========================================================= */

/* 3つの特徴：上部は太線ではなく細いグレー罫線 */
.rosanica-home-v3__principle-grid {
  border-top: 1px solid #d9d9d9 !important;
}

/* テーマ一覧：角丸カードをやめ、雑誌の目次のような5分割レイアウトへ */
.rosanica-home-v3__topics {
  margin-bottom: 118px !important;
}

.rosanica-home-v3__topic-grid {
  counter-reset: rosanica-topic !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  background: transparent !important;
  border-top: 1px solid #d9d9d9 !important;
  border-bottom: 1px solid #d9d9d9 !important;
}

.rosanica-home-v3__topic-card {
  counter-increment: rosanica-topic !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  padding: 24px 20px 22px !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #d9d9d9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease !important;
}

.rosanica-home-v3__topic-card:last-child {
  border-bottom: 0 !important;
}

.rosanica-home-v3__topic-card::before {
  content: "THEME 0" counter(rosanica-topic) !important;
  display: block !important;
  margin: 0 0 18px !important;
  color: #3d91ad !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.14em !important;
}

.rosanica-home-v3__topic-card::after {
  content: "" !important;
  position: absolute !important;
  top: 24px !important;
  right: 20px !important;
  width: 26px !important;
  height: 1px !important;
  background: #bfcbd0 !important;
  transition: width 0.2s ease, background-color 0.2s ease !important;
}

.rosanica-home-v3__topic-name {
  display: block !important;
  margin: 0 0 12px !important;
  color: #111111 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

.rosanica-home-v3__topic-description {
  display: block !important;
  margin: 0 !important;
  color: #555555 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
}

.rosanica-home-v3__topic-arrow {
  display: inline-flex !important;
  align-items: center !important;
  margin-top: auto !important;
  padding-top: 24px !important;
  color: #3d91ad !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
}

@media (hover: hover) {
  .rosanica-home-v3__topic-card:hover {
    transform: none !important;
    background: rgba(61, 145, 173, 0.035) !important;
    box-shadow: none !important;
  }

  .rosanica-home-v3__topic-card:hover::after {
    width: 42px !important;
    background: #3d91ad !important;
  }
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__topic-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  .rosanica-home-v3__topic-card {
    min-height: 250px !important;
    padding: 28px 24px 24px !important;
    border-right: 1px solid #d9d9d9 !important;
    border-bottom: 0 !important;
  }

  .rosanica-home-v3__topic-card:last-child {
    border-right: 0 !important;
  }

  .rosanica-home-v3__topic-card::after {
    top: 28px !important;
    right: 24px !important;
  }

  .rosanica-home-v3__topic-name {
    font-size: 21px !important;
  }

  .rosanica-home-v3__topic-description {
    font-size: 13.25px !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__topics {
    margin-bottom: 82px !important;
  }

  .rosanica-home-v3__topic-card {
    min-height: 176px !important;
  }
}


/* =========================================================
   32. V3 v1.0.21：セクション説明文の始点統一 / 情報量調整
========================================================= */

/* 注目・新着・独自分析の説明文は、カード一覧と同じ左端から開始する */
.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  width: 100% !important;
  max-width: 1180px !important;
  margin: -8px 0 32px !important;
  padding: 0 !important;
  color: #555555 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.9 !important;
  text-align: left !important;
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    margin-top: -10px !important;
    margin-bottom: 34px !important;
    font-size: 14.5px !important;
    line-height: 1.95 !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    max-width: none !important;
    margin: -4px 0 24px !important;
    font-size: 13px !important;
    line-height: 1.85 !important;
  }
}


/* =========================================================
   33. V3 v1.0.22：セクション説明文を読みやすく拡大 / 2行構成
========================================================= */

.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  max-width: none !important;
  color: #4d4d4d !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
}

.rosanica-home-v3__section-lead-line {
  display: block;
}

.rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
  margin-top: 4px;
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    margin-top: -4px !important;
    margin-bottom: 38px !important;
    font-size: 18px !important;
    line-height: 1.75 !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    margin-top: 0 !important;
    margin-bottom: 28px !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
  }

  .rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
    margin-top: 6px;
  }
}


/* =========================================================
   34. V3 v1.0.23：注目・新着・独自分析をエディトリアル調へ刷新
   「大きな箱＋カード」の印象を弱め、雑誌・特集ページのような
   罫線、余白、タイポグラフィで統一する。
========================================================= */

/* --- 3セクション共通：外枠を軽く、角をシャープに --- */
.rosanica-home-v3__featured,
.rosanica-home-v3__latest,
.rosanica-home-v3__analysis {
  padding: 48px 34px 38px !important;
  background: rgba(255, 255, 255, 0.18) !important;
  border: 1px solid #cbd2d6 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

/* 見出し画像は少しだけコンパクトにして、余白を主役にする */
.rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
  max-width: 700px !important;
  margin: -82px auto 34px !important;
}

/* 説明文：本文として読ませるのではなく、編集ノートのように見せる */
.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  position: relative !important;
  max-width: 1080px !important;
  margin: 0 0 40px !important;
  padding: 0 0 0 20px !important;
  color: #3f464a !important;
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
  letter-spacing: 0.015em !important;
  text-align: left !important;
}

.rosanica-home-v3__featured > .rosanica-home-v3__section-lead::before,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead::before,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead::before {
  content: "" !important;
  position: absolute !important;
  top: 5px !important;
  bottom: 5px !important;
  left: 0 !important;
  width: 3px !important;
  background: #3d91ad !important;
}

.rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
  margin-top: 5px !important;
}

/* --- 注目・新着カード：SaaSカード感を削り、誌面の一覧に寄せる --- */
.rosanica-home-v3__featured-list,
.rosanica-home-v3__latest-list {
  gap: 18px 22px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card,
.rosanica-home-v3__latest .rosanica-home-v3__card {
  position: relative !important;
  min-height: 148px !important;
  padding: 13px !important;
  background: rgba(255, 255, 255, 0.84) !important;
  border: 1px solid #dde2e5 !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 0 rgba(17, 17, 17, 0.02) !important;
  transition: border-color 0.2s ease, transform 0.2s ease, background-color 0.2s ease !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card::after,
.rosanica-home-v3__latest .rosanica-home-v3__card::after {
  content: "↗" !important;
  position: absolute !important;
  top: 14px !important;
  right: 16px !important;
  color: #aeb9be !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  opacity: 0.85 !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__thumb,
.rosanica-home-v3__latest .rosanica-home-v3__thumb {
  flex-basis: 122px !important;
  width: 122px !important;
  min-width: 122px !important;
  max-width: 122px !important;
  height: 122px !important;
  margin-right: 18px !important;
  border-radius: 7px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__thumb img,
.rosanica-home-v3__latest .rosanica-home-v3__thumb img {
  border-radius: 7px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card-content,
.rosanica-home-v3__latest .rosanica-home-v3__card-content {
  padding-right: 28px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card-title,
.rosanica-home-v3__latest .rosanica-home-v3__card-title {
  font-size: 17px !important;
  line-height: 1.55 !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 5px !important;
}

@media (hover: hover) {
  .rosanica-home-v3__featured .rosanica-home-v3__card:hover,
  .rosanica-home-v3__latest .rosanica-home-v3__card:hover {
    transform: translateY(-2px) !important;
    background: #ffffff !important;
    border-color: #9ebdca !important;
    box-shadow: none !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card:hover::after,
  .rosanica-home-v3__latest .rosanica-home-v3__card:hover::after {
    color: #3d91ad !important;
  }
}

/* --- 独自分析：ラベルのピル感を消し、編集記事らしい見た目に --- */
.rosanica-home-v3__analysis-grid {
  gap: 22px !important;
}

.rosanica-home-v3__analysis-card {
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #d9e0e3 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, transform 0.2s ease !important;
}

.rosanica-home-v3__analysis-body {
  position: relative !important;
  padding: 24px 24px 22px !important;
}

.rosanica-home-v3__analysis-label {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  color: #3d91ad !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.08em !important;
}

.rosanica-home-v3__analysis-label::before {
  content: "" !important;
  display: inline-block !important;
  width: 28px !important;
  height: 2px !important;
  margin-right: 9px !important;
  background: #3d91ad !important;
}

.rosanica-home-v3 .rosanica-home-v3__analysis-title {
  font-size: 18px !important;
  line-height: 1.55 !important;
  text-decoration-thickness: 1.5px !important;
}

.rosanica-home-v3__analysis-more {
  margin-top: 18px !important;
  color: #3f464a !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}

@media (hover: hover) {
  .rosanica-home-v3__analysis-card:hover {
    transform: translateY(-2px) !important;
    border-color: #9ebdca !important;
    box-shadow: none !important;
  }
}

/* --- スマホでは余白を圧縮し、縦長になりすぎないよう調整 --- */
@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest,
  .rosanica-home-v3__analysis {
    padding: 34px 14px 22px !important;
    border-radius: 5px !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
    margin: -58px auto 26px !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    margin-bottom: 28px !important;
    padding-left: 15px !important;
    font-size: 14.5px !important;
    line-height: 1.8 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card,
  .rosanica-home-v3__latest .rosanica-home-v3__card {
    min-height: 0 !important;
    border-radius: 7px !important;
  }

  .rosanica-home-v3__analysis-body {
    padding: 18px 18px 20px !important;
  }
}


/* =========================================================
   35. V3 v1.0.24：タイポグラフィの存在感を強化
   エディトリアル感は保ちつつ、説明文と記事タイトルの
   コントラスト・サイズを一段引き上げる。
========================================================= */

/* セクション説明文：太字にしすぎず、本文より明確に強く */
.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  max-width: 1180px !important;
  color: #2f3437 !important;
  font-size: 19px !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
  letter-spacing: 0.012em !important;
}

.rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
  margin-top: 7px !important;
}

/* 注目・新着：タイトルの視認性を一段上げる */
.rosanica-home-v3__featured .rosanica-home-v3__card-title,
.rosanica-home-v3__latest .rosanica-home-v3__card-title {
  color: #111111 !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.005em !important;
}

/* 独自分析：見出し・導線も同じ密度へ */
.rosanica-home-v3__analysis-label {
  font-size: 12px !important;
  font-weight: 800 !important;
}

.rosanica-home-v3 .rosanica-home-v3__analysis-title {
  color: #111111 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.005em !important;
}

.rosanica-home-v3__analysis-more {
  font-size: 13.5px !important;
  font-weight: 700 !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    color: #353a3d !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.75 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title {
    font-size: 16.5px !important;
    line-height: 1.5 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    font-size: 18px !important;
  }
}


/* =========================================================
   36. V3 v1.0.25：セクション説明文を強化・行間圧縮
========================================================= */

.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  color: #202427 !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  letter-spacing: 0.008em !important;
}

.rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
  margin-top: 4px !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    color: #252a2d !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
  }

  .rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
    margin-top: 3px !important;
  }
}

/* =========================================================
   37. V3 v1.0.26：記事カードをv1.0.22系へ戻し、説明文だけ調整
========================================================= */

/* 説明文：少し小さく、やや太く */
.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  color: #202427 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.006em !important;
}

.rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
  margin-top: 3px !important;
}

/* 注目・新着カードはv1.0.22以前の見た目へ戻す */
.rosanica-home-v3__featured .rosanica-home-v3__card,
.rosanica-home-v3__latest .rosanica-home-v3__card {
  min-height: 130px !important;
  padding: 10px !important;
  background: #ffffff !important;
  border: 1px solid #e6e6e6 !important;
  border-radius: 16px !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card::after,
.rosanica-home-v3__latest .rosanica-home-v3__card::after {
  display: none !important;
  content: none !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__thumb,
.rosanica-home-v3__latest .rosanica-home-v3__thumb {
  flex: 0 0 110px !important;
  width: 110px !important;
  min-width: 110px !important;
  max-width: 110px !important;
  height: 110px !important;
  margin: 0 14px 0 0 !important;
  border-radius: 12px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__thumb img,
.rosanica-home-v3__latest .rosanica-home-v3__thumb img {
  border-radius: 12px !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card-content,
.rosanica-home-v3__latest .rosanica-home-v3__card-content {
  padding: 4px 6px 4px 0 !important;
}

.rosanica-home-v3__featured .rosanica-home-v3__card-title,
.rosanica-home-v3__latest .rosanica-home-v3__card-title {
  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
  letter-spacing: normal !important;
  text-decoration-thickness: 2px !important;
}

@media (hover: hover) {
  .rosanica-home-v3__featured .rosanica-home-v3__card:hover,
  .rosanica-home-v3__latest .rosanica-home-v3__card:hover {
    transform: translateY(-3px) !important;
    background: #ffffff !important;
    border-color: #e6e6e6 !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.09) !important;
  }
}

/* 独自分析カードもv1.0.22以前の見た目へ戻す */
.rosanica-home-v3__analysis-card {
  background: #ffffff !important;
  border: 1px solid #e6e6e6 !important;
  border-radius: 16px !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.rosanica-home-v3__analysis-body {
  padding: 20px !important;
}

.rosanica-home-v3__analysis-label {
  display: inline-flex !important;
  margin: 0 0 9px !important;
  padding: 4px 9px !important;
  color: #3d91ad !important;
  background: #eef8fb !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
}

.rosanica-home-v3__analysis-label::before {
  display: none !important;
  content: none !important;
}

.rosanica-home-v3 .rosanica-home-v3__analysis-title {
  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
  text-decoration-thickness: 2px !important;
}

.rosanica-home-v3__analysis-more {
  margin-top: 14px !important;
  color: #111111 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: normal !important;
}

@media (hover: hover) {
  .rosanica-home-v3__analysis-card:hover {
    transform: translateY(-3px) !important;
    border-color: #e6e6e6 !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.09) !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    font-size: 15.5px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title {
    font-size: 16px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    font-size: 16.5px !important;
  }
}

/* =========================================================
   38. V3 v1.0.27：独自性を明示する編集軸セクション
========================================================= */

.rosanica-home-v3__principles-lead {
  max-width: 1120px !important;
  margin: -4px auto 30px !important;
  padding: 0 18px !important;
  color: #33383b !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  letter-spacing: 0.006em !important;
  text-align: center !important;
}

@media screen and (min-width: 769px) {
  .rosanica-home-v3__principle-card {
    min-height: 300px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__principle-card h3 {
    max-width: 86% !important;
    font-size: 20px !important;
  }

  .rosanica-home-v3__principle-card p {
    max-width: 95% !important;
    font-size: 15px !important;
    line-height: 1.85 !important;
  }
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__principles-lead {
    margin: -2px auto 22px !important;
    padding: 0 6px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.65 !important;
    text-align: left !important;
  }
}


/* =========================================================
   39. V3 v1.0.28：注目・新着・独自分析の説明文を中央揃え
========================================================= */

.rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
  width: 100% !important;
  max-width: 1120px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 18px !important;
  padding-left: 18px !important;
  text-align: center !important;
}

/* 以前の左側アクセント線は中央揃えでは不自然なので非表示 */
.rosanica-home-v3__featured > .rosanica-home-v3__section-lead::before,
.rosanica-home-v3__latest > .rosanica-home-v3__section-lead::before,
.rosanica-home-v3__analysis > .rosanica-home-v3__section-lead::before {
  display: none !important;
  content: none !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    max-width: 620px !important;
    padding-right: 6px !important;
    padding-left: 6px !important;
    text-align: center !important;
  }
}

/* =========================================================
   29. V3 v1.0.29：中央を白背景、外側のみ薄グレーへ
========================================================= */
body.rosanica-home-v3-page {
  background: #f3f3f3 !important;
}

body.rosanica-home-v3-page .content,
body.rosanica-home-v3-page .container,
body.rosanica-home-v3-page .main,
body.rosanica-home-v3-page .article,
body.rosanica-home-v3-page .entry-content {
  background: transparent !important;
}

body.rosanica-home-v3-page .content-in {
  background: #ffffff !important;
}

.rosanica-home-v3 {
  background: #ffffff !important;
}

@media screen and (min-width: 769px) {
  body.rosanica-home-v3-page .content-in {
    max-width: 1560px !important;
    padding-top: 18px !important;
    padding-right: 26px !important;
    padding-left: 26px !important;
  }

  .rosanica-home-v3 {
    max-width: 1420px !important;
    padding-right: 18px !important;
    padding-left: 18px !important;
  }
}

@media screen and (max-width: 768px) {
  body.rosanica-home-v3-page {
    background: #ffffff !important;
  }

  body.rosanica-home-v3-page .content-in {
    background: #ffffff !important;
  }

  .rosanica-home-v3 {
    background: #ffffff !important;
  }
}

/* =========================================================
   30. V3 v1.0.30：左右の外側グレー帯を明確化
========================================================= */
html,
body.rosanica-home-v3-page {
  background: #f3f3f3 !important;
}

body.rosanica-home-v3-page #container,
body.rosanica-home-v3-page .container,
body.rosanica-home-v3-page .content,
body.rosanica-home-v3-page .main,
body.rosanica-home-v3-page .article,
body.rosanica-home-v3-page .entry-content {
  background: transparent !important;
}

@media screen and (min-width: 769px) {
  body.rosanica-home-v3-page .content-in {
    width: calc(100% - 64px) !important;
    max-width: 1500px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-top: 18px !important;
    padding-right: 22px !important;
    padding-left: 22px !important;
    background: #ffffff !important;
  }

  .rosanica-home-v3 {
    width: 100% !important;
    max-width: 1420px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    background: #ffffff !important;
  }
}

@media screen and (max-width: 768px) {
  body.rosanica-home-v3-page .content-in {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    background: #ffffff !important;
  }
}

/* =========================================================
   40. V3 v1.0.32：モバイルレイアウト最終調整
   - ヘッダー直下の丸型カテゴリ導線をPC/スマホとも非表示
   - スマホのバナーに左右余白
   - スマホ本文を画面端まで広げる
   - 新着/注目/独自分析の見出し画像の浮き配置を解除
   - 長い「独自性」見出しの横はみ出しを防止
========================================================= */

/* ヘッダー直下の丸型カテゴリ導線は使用しない。
   「テーマから探す」は残す。 */
.rosanica-home-v3__categories {
  display: none !important;
}

@media screen and (max-width: 768px) {
  html,
  body.rosanica-home-v3-page {
    overflow-x: hidden !important;
  }

  /* Cocoon側のモバイル余白をリセットして、V3側で統一管理 */
  body.rosanica-home-v3-page .content,
  body.rosanica-home-v3-page .content-in,
  body.rosanica-home-v3-page .main,
  body.rosanica-home-v3-page .article,
  body.rosanica-home-v3-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  /* 下層コンテンツは左右6px程度まで広げる */
  .rosanica-home-v3 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 6px 28px !important;
    overflow: hidden !important;
  }

  /* バナーだけは左右に明確な余白を残す */
  .rosanica-home-v3__hero {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 12px 18px !important;
    overflow: hidden !important;
  }

  .rosanica-home-v3__hero-media {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
  }

  .rosanica-home-v3__hero-media img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  /* ABOUT、テーマ、編集軸は画面幅を積極的に使う */
  .rosanica-home-v3__about,
  .rosanica-home-v3__topics,
  .rosanica-home-v3__principles {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .rosanica-home-v3__about {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  /* 注目・新着・独自分析：外枠も画面幅を使い、内側だけ最小余白 */
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest,
  .rosanica-home-v3__analysis {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    margin-top: 50px !important;
    padding: 12px 8px 18px !important;
    overflow: hidden !important;
  }

  /* スマホでは見出し画像を枠線から浮かせない。
     これで「新着記事」が前セクションとの間に取り残される崩れを防ぐ。 */
  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
    position: static !important;
    width: calc(100% - 24px) !important;
    max-width: 520px !important;
    height: auto !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    transform: none !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  /* セクション説明文も余白を詰める */
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto 22px !important;
    padding: 0 6px !important;
  }

  /* 記事カードは必ずセクション内に収める */
  .rosanica-home-v3__featured-list,
  .rosanica-home-v3__latest-list,
  .rosanica-home-v3__analysis-grid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .rosanica-home-v3__card-link,
  .rosanica-home-v3__analysis-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card,
  .rosanica-home-v3__latest .rosanica-home-v3__card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* 長い編集軸見出しは2行以上への折り返しを許可 */
  .rosanica-home-v3__principles > .rosanica-home-v3__section-title {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 8px !important;
    font-size: 25px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-align: center !important;
  }

  .rosanica-home-v3__principles > .rosanica-home-v3__section-title::before,
  .rosanica-home-v3__principles > .rosanica-home-v3__section-title::after {
    display: none !important;
    content: none !important;
  }

  .rosanica-home-v3__principles-lead {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 20px !important;
    padding: 0 8px !important;
  }

  .rosanica-home-v3__principle-grid {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   41. V3 v1.0.33：スマホの密度・余白・カード崩れを再調整
========================================================= */
@media screen and (max-width: 768px) {
  /* -----------------------------------------
     全体：狭すぎた左右余白を14pxへ戻す
  ----------------------------------------- */
  body.rosanica-home-v3-page .content,
  body.rosanica-home-v3-page .content-in,
  body.rosanica-home-v3-page .main,
  body.rosanica-home-v3-page .article,
  body.rosanica-home-v3-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .rosanica-home-v3 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 14px 30px !important;
    overflow: hidden !important;
  }

  /* -----------------------------------------
     バナー：左右余白を一定に
  ----------------------------------------- */
  .rosanica-home-v3__hero {
    width: calc(100% - 8px) !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 4px 14px !important;
  }

  .rosanica-home-v3__hero-media,
  .rosanica-home-v3__hero-media img {
    width: 100% !important;
    height: auto !important;
  }

  /* -----------------------------------------
     ABOUT：ロゴ周辺の余白を圧縮
  ----------------------------------------- */
  .rosanica-home-v3__about {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto 44px !important;
    padding: 14px 8px 16px !important;
  }

  .rosanica-home-v3__about-heading {
    margin: 0 0 8px !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__about-logo {
    width: auto !important;
    max-width: min(170px, 54vw) !important;
    max-height: 52px !important;
    margin: 0 auto !important;
  }

  .rosanica-home-v3__about-text {
    font-size: 13.5px !important;
    line-height: 1.65 !important;
  }

  .rosanica-home-v3__about-text strong {
    margin-bottom: 4px !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }

  .rosanica-home-v3__about-links {
    margin-top: 10px !important;
  }

  .rosanica-home-v3__about-links a {
    min-height: 34px !important;
    padding: 6px 13px !important;
    font-size: 11.5px !important;
  }

  /* -----------------------------------------
     テーマ：左右位置を全体に合わせる
  ----------------------------------------- */
  .rosanica-home-v3__topics {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .rosanica-home-v3__topic-card {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  /* -----------------------------------------
     注目・新着・独自分析：外枠の内余白を整理
  ----------------------------------------- */
  .rosanica-home-v3__featured,
  .rosanica-home-v3__latest,
  .rosanica-home-v3__analysis {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    margin-top: 72px !important;
    padding: 10px 10px 16px !important;
    overflow: hidden !important;
  }

  /* 既存V2系のヘッド画像サイズへ戻す */
  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    margin: 0 auto 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-title.is-analysis-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* 説明文はカードより一段控えめに */
  .rosanica-home-v3__featured > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__latest > .rosanica-home-v3__section-lead,
  .rosanica-home-v3__analysis > .rosanica-home-v3__section-lead {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto 18px !important;
    padding: 0 6px !important;
    color: #282d30 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }

  .rosanica-home-v3__section-lead-line + .rosanica-home-v3__section-lead-line {
    margin-top: 2px !important;
  }

  /* -----------------------------------------
     注目・新着：Cocoon側のモバイルカードを完全に上書き
  ----------------------------------------- */
  .rosanica-home-v3__featured-panel {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .rosanica-home-v3__featured-list,
  .rosanica-home-v3__latest-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-link,
  .rosanica-home-v3__latest .rosanica-home-v3__card-link {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card,
  .rosanica-home-v3__latest .rosanica-home-v3__card {
    display: grid !important;
    grid-template-columns: 86px minmax(0, 1fr) !important;
    gap: 11px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 104px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 9px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid #e3e3e3 !important;
    border-radius: 13px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.035) !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__thumb,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb {
    display: block !important;
    grid-column: 1 !important;
    flex: none !important;
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
    height: 86px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 10px !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__thumb img,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb img,
  .rosanica-home-v3__featured .rosanica-home-v3__thumb .no-image,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb .no-image {
    display: block !important;
    width: 86px !important;
    height: 86px !important;
    margin: 0 !important;
    object-fit: cover !important;
    border-radius: 10px !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-content,
  .rosanica-home-v3__latest .rosanica-home-v3__card-content {
    display: block !important;
    grid-column: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13.5px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-decoration-thickness: 1.5px !important;
    text-underline-offset: 4px !important;
  }

  /* -----------------------------------------
     独自分析カードもスマホではコンパクトに
  ----------------------------------------- */
  .rosanica-home-v3__analysis-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__analysis-card {
    display: grid !important;
    grid-template-columns: 108px minmax(0, 1fr) !important;
    min-height: 108px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    border-radius: 13px !important;
  }

  .rosanica-home-v3__analysis-thumb {
    width: 108px !important;
    height: 108px !important;
    min-height: 108px !important;
    aspect-ratio: auto !important;
  }

  .rosanica-home-v3__analysis-body {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 10px 11px !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere !important;
  }

  .rosanica-home-v3__analysis-more {
    margin-top: 9px !important;
    font-size: 11px !important;
  }

  /* -----------------------------------------
     独自性：文字サイズを落とし、縦の呼吸を増やす
  ----------------------------------------- */
  .rosanica-home-v3__principles {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__principles > .rosanica-home-v3__section-title {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 12px !important;
    font-size: 21px !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
  }

  .rosanica-home-v3__principles-lead {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 26px !important;
    padding: 0 12px !important;
    color: #3c4144 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    line-height: 1.7 !important;
    text-align: left !important;
  }

  .rosanica-home-v3__principle-grid {
    width: 100% !important;
    gap: 0 !important;
  }

  .rosanica-home-v3__principle-card {
    min-height: 0 !important;
    padding: 28px 14px 32px !important;
  }

  .rosanica-home-v3__principle-number {
    top: 24px !important;
    right: 10px !important;
    font-size: 58px !important;
    line-height: 1 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__principle-card h3 {
    max-width: calc(100% - 46px) !important;
    margin-bottom: 16px !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
  }

  .rosanica-home-v3__principle-card p {
    max-width: 100% !important;
    color: #505559 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.8 !important;
  }
}

/* =========================================================
   42. V3 v1.0.34：スマホ新着カードをCocoonから完全分離
   - カードHTMLからCocoonのentry-card系classを外した前提
   - 日本語タイトルの文字間隔・折返しを明示
   - ABOUTロゴを左寄せし、上下余白をさらに圧縮
========================================================= */

/* 独自カードはテーマ側のentry-card指定を受けない */
.rosanica-home-v3__card-link,
.rosanica-home-v3__card,
.rosanica-home-v3__card-content,
.rosanica-home-v3__card-title,
.rosanica-home-v3__card-title-text {
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-transform: none !important;
  font-stretch: normal !important;
  font-kerning: normal !important;
  font-feature-settings: normal !important;
}

.rosanica-home-v3__card-title,
.rosanica-home-v3__card-title-text {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-break: strict !important;
  text-align: left !important;
}

@media screen and (max-width: 768px) {
  /* ABOUT：ロゴを左へ、上下の空白をさらに削る */
  .rosanica-home-v3__about {
    margin: 0 auto 38px !important;
    padding: 8px 8px 12px !important;
  }

  .rosanica-home-v3__about-heading {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__about-logo {
    display: block !important;
    width: auto !important;
    max-width: min(156px, 50vw) !important;
    max-height: 46px !important;
    margin: 0 !important;
    object-position: left center !important;
  }

  .rosanica-home-v3__about-content {
    padding-top: 0 !important;
  }

  /* 注目・新着：Cocoonのカードレイアウトを使わず完全固定 */
  .rosanica-home-v3__featured-list,
  .rosanica-home-v3__latest-list {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-link,
  .rosanica-home-v3__latest .rosanica-home-v3__card-link {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card,
  .rosanica-home-v3__latest .rosanica-home-v3__card {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 94px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 8px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid #e4e4e4 !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 7px rgba(0,0,0,.03) !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__thumb,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb {
    display: block !important;
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
    height: 78px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 9px !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__thumb img,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb img,
  .rosanica-home-v3__featured .rosanica-home-v3__thumb .no-image,
  .rosanica-home-v3__latest .rosanica-home-v3__thumb .no-image,
  .rosanica-home-v3__featured .rosanica-home-v3__no-image,
  .rosanica-home-v3__latest .rosanica-home-v3__no-image {
    display: block !important;
    width: 78px !important;
    height: 78px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 9px !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-content,
  .rosanica-home-v3__latest .rosanica-home-v3__card-content {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title-text {
    display: inline !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    line-height: 1.42 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    line-break: strict !important;
    text-align: left !important;
    text-decoration-line: underline !important;
    text-decoration-color: #3d91ad !important;
    text-decoration-thickness: 1.25px !important;
    text-underline-offset: 3px !important;
    text-decoration-skip-ink: none !important;
  }
}

/* =========================================================
   43. V3 v1.0.35：スマホ最終調整
   - ABOUTロゴをページ中央へ
   - バナー上に少量の余白
   - 新着見出しを枠上端から離す
   - 記事カードの文字を微増＆行間圧縮
   - 独自分析をミニマルな編集リストへ
========================================================= */
@media screen and (max-width: 768px) {
  /* -----------------------------------------
     バナー：上端に少し呼吸を作る
  ----------------------------------------- */
  .rosanica-home-v3__hero {
    margin-top: 10px !important;
    margin-bottom: 12px !important;
  }

  /* -----------------------------------------
     ABOUT：ロゴをページ中央に戻し、縦余白を圧縮
  ----------------------------------------- */
  .rosanica-home-v3__about {
    margin: 0 auto 34px !important;
    padding-top: 2px !important;
    padding-bottom: 10px !important;
  }

  .rosanica-home-v3__about-heading {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 0 2px !important;
    padding: 0 !important;
  }

  .rosanica-home-v3__about-logo {
    display: block !important;
    width: auto !important;
    max-width: min(158px, 50vw) !important;
    max-height: 44px !important;
    margin: 0 auto !important;
    object-position: center center !important;
  }

  .rosanica-home-v3__about-content {
    padding-top: 0 !important;
  }

  /* -----------------------------------------
     新着：ヘッド画像が枠上辺に張り付かないよう余白を確保
  ----------------------------------------- */
  .rosanica-home-v3__latest {
    padding-top: 20px !important;
  }

  .rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
  }

  /* 注目・独自分析にもごく小さな上余白を残して統一 */
  .rosanica-home-v3__featured,
  .rosanica-home-v3__analysis {
    padding-top: 14px !important;
  }

  /* -----------------------------------------
     注目・新着記事カード：文字は少し大きく、行間は締める
  ----------------------------------------- */
  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title-text {
    font-size: 13.25px !important;
    line-height: 1.32 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
  }

  /* -----------------------------------------
     独自分析：カード感を弱め、編集リストとして整理
  ----------------------------------------- */
  .rosanica-home-v3__analysis-grid {
    gap: 0 !important;
    padding: 0 4px !important;
  }

  .rosanica-home-v3__analysis-card {
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    min-height: 112px !important;
    padding: 12px 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid #e2e5e7 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    transform: none !important;
  }

  .rosanica-home-v3__analysis-card:first-child {
    border-top: 1px solid #e2e5e7 !important;
  }

  .rosanica-home-v3__analysis-thumb {
    width: 88px !important;
    height: 88px !important;
    min-height: 88px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #f4f7f8 !important;
    border-radius: 8px !important;
  }

  .rosanica-home-v3__analysis-thumb img,
  .rosanica-home-v3__analysis-no-image {
    width: 88px !important;
    height: 88px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
  }

  .rosanica-home-v3__analysis-body {
    display: block !important;
    min-width: 0 !important;
    padding: 0 6px 0 0 !important;
  }

  .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    margin: 0 !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
    line-height: 1.38 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-decoration-thickness: 1.25px !important;
    text-underline-offset: 3px !important;
  }

  .rosanica-home-v3__analysis-more {
    margin-top: 8px !important;
    color: #3d91ad !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
  }
}

/* =========================================================
   44. V3 v1.0.36：スマホ強制上書き
   - ABOUTを1カラム化してロゴを完全中央へ
   - 新着見出し上の余白を確実に確保
   - 記事タイトルの行間を1.2へ
========================================================= */
@media screen and (max-width: 768px) {
  /* ABOUT：過去のgrid指定を完全解除して1カラム化 */
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 34px !important;
    padding: 2px 12px 10px !important;
    text-align: center !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-heading {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 4px !important;
    padding: 0 !important;
    text-align: center !important;
    justify-self: stretch !important;
    align-self: auto !important;
    position: static !important;
    transform: none !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-logo {
    display: block !important;
    float: none !important;
    position: static !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    width: auto !important;
    max-width: min(168px, 52vw) !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
    object-position: center center !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-content {
    display: block !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
  }

  /* 新着：古い負マージン/浮き配置を完全に殺して上余白を確保 */
  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest {
    position: relative !important;
    box-sizing: border-box !important;
    margin-top: 56px !important;
    padding-top: 26px !important;
    overflow: hidden !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: calc(100% - 24px) !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    transform: none !important;
    translate: none !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    position: static !important;
    transform: none !important;
  }

  /* 注目・新着カード：指定どおり行間1.2 */
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text {
    line-height: 1.2 !important;
  }

  /* 独自分析も同じリズムへ */
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    line-height: 1.2 !important;
  }
}

/* =========================================================
   45. V3 v1.0.37：スマホ余白・新着見出し・独自分析行間調整
========================================================= */
@media screen and (max-width: 768px) {
  /* セクション間の空きすぎを解消 */
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured,
  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__analysis {
    margin-top: 34px !important;
    padding-top: 12px !important;
  }

  /* 新着のヘッド画像を注目記事と完全に同じ見え方へ */
  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    margin: 0 auto 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    transform: none !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 main.rosanica-home-v3__latest > .rosanica-home-v3__section-title.is-latest-heading.has-heading-image .rosanica-home-v3__heading-image,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured > .rosanica-home-v3__section-title.is-featured-heading.has-heading-image .rosanica-home-v3__heading-image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* 独自分析：詰まりすぎていたタイトル行間を戻す */
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__analysis-title {
    line-height: 1.42 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__analysis-more {
    margin-top: 9px !important;
  }
}

/* =========================================================
   31. V3 v1.0.38：新着・注目記事カードの行間調整
========================================================= */
.rosanica-home-v3 .rosanica-home-v3__card-title,
.rosanica-home-v3 .rosanica-home-v3__featured-item-title {
  line-height: 1.4 !important;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3 .rosanica-home-v3__card-title,
  .rosanica-home-v3 .rosanica-home-v3__featured-item-title {
    line-height: 1.4 !important;
  }
}

/* =========================================================
   46. V3 v1.0.39：ABOUT上部の不要な空白を完全除去
   - hidden H2をPHP側から削除
   - 古いgrid/高さ/余白指定を明示的にリセット
========================================================= */
@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__hero {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto 28px !important;
    padding: 6px 10px 10px !important;
    gap: 0 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-heading {
    display: flex !important;
    position: static !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-heading::before,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-heading::after {
    display: none !important;
    content: none !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-logo {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: min(160px, 48vw) !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__about-content {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}


/* =========================================================
   47. V3 v1.0.41：スマホのみ注目・新着記事タイトルの行間を1.3に統一
========================================================= */
@media screen and (max-width: 768px) {
  .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  .rosanica-home-v3__latest .rosanica-home-v3__card-title-text,
  .rosanica-home-v3 .rosanica-home-v3__featured-item-title {
    line-height: 1.3 !important;
  }
}


/* =========================================================
   48. V3 v1.0.42：スマホのみ注目・新着タイトル行間を強制1.3
   Cocoon/旧V3側の詳細度が高い指定も最終定義で上書きする
========================================================= */
@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title * {
    line-height: 1.3 !important;
  }
}

/* =========================================================
   49. V3 v1.0.43：スマホ「テーマから探す」をコンパクト化
========================================================= */
@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topics {
    margin-bottom: 52px !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-grid {
    border-top: 1px solid #d9d9d9 !important;
    border-bottom: 1px solid #d9d9d9 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-card {
    min-height: 0 !important;
    height: auto !important;
    padding: 16px 14px 15px !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-card::before {
    margin: 0 0 10px !important;
    font-size: 9.5px !important;
    line-height: 1 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-card::after {
    top: 17px !important;
    right: 14px !important;
    width: 22px !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-name {
    margin: 0 0 7px !important;
    font-size: 18px !important;
    line-height: 1.28 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-description {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__topic-arrow {
    margin-top: 0 !important;
    padding-top: 11px !important;
    font-size: 11.5px !important;
    line-height: 1.2 !important;
  }
}


/* =========================================================
   50. V3 v1.0.44：独自性見出しはスマホのみ「生む」の後で改行
========================================================= */
.rosanica-home-v3__mobile-only-break {
  display: none;
}

@media screen and (max-width: 768px) {
  .rosanica-home-v3__mobile-only-break {
    display: block;
  }
}


/* =========================================================
   51. V3 v1.0.45：注目・新着カードタイトルを拡大 / 行間1.0
========================================================= */
.rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
.rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
.rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
.rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text {
  font-size: 18px !important;
  line-height: 1 !important;
}

@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title * {
    font-size: 14.5px !important;
    line-height: 1 !important;
  }
}


/* =========================================================
   52. V3 v1.0.46：スマホ記事タイトルを確実に拡大・行間1.0
   Safariの文字自動拡大と旧ルールの影響を明示的に解除
========================================================= */
@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 {
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title * {
    display: inline !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-decoration-thickness: 1.5px !important;
    text-underline-offset: 2px !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }
}

/* =========================================================
   53. V3 v1.0.48：著者コラム化 / 既存カード表示を復元
   - v1.0.47で追加した著者コラム専用カード上書きを撤去
   - 著者コラムは新着記事と同じ既存スタイルをそのまま継承
   - PCの記事タイトルを17px / line-height 1.45へ復元
   - スマホの著者コラム説明文だけ指定位置で改行
========================================================= */

/* 著者コラムは新着記事と同じクラス構成のため、カード固有の上書きは行わない */
.rosanica-home-v3__author-lead-mobile {
  display: none;
}

.rosanica-home-v3__author-lead-desktop,
.rosanica-home-v3__author-lead-desktop .rosanica-home-v3__section-lead-line {
  display: block;
}

/* PC：注目・新着・著者コラムのタイトルを以前の読みやすい値へ戻す */
@media screen and (min-width: 769px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__featured-item-title {
    font-size: 17px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title * {
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    word-spacing: inherit !important;
  }
}

/* スマホ：著者コラム説明文のみ、指定された4行で固定 */
@media screen and (max-width: 768px) {
  .rosanica-home-v3__author-lead-desktop {
    display: none !important;
  }

  .rosanica-home-v3__author-lead-mobile {
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
}

/* =========================================================
   54. V3 v1.0.49：スマホ記事タイトルの文字崩れを復元
   - 注目記事 / 新着記事 / 著者コラムを同じタイポグラフィに統一
   - v1.0.45 / v1.0.46 の line-height:1 を最終上書き
========================================================= */
@media screen and (max-width: 768px) {
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__featured-item-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__author-column .rosanica-home-v3__card-title {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-align: left !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }

  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__author-column .rosanica-home-v3__card-title-text,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__featured .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__latest .rosanica-home-v3__card-title *,
  html body.rosanica-home-v3-page .rosanica-home-v3 .rosanica-home-v3__author-column .rosanica-home-v3__card-title * {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    word-spacing: inherit !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }
}

