/* 配置だけを補い、カード・リンク・本文は既存テーマを使用。 */
#marketo-guide-articles { padding:44px 32px 50px; }
.marketo-guide-articles__inner { max-width:1040px; margin:0 auto; }
.post_content .marketo-purpose { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 40px; border-top:1px solid #ddd; border-bottom:1px solid #ddd; }
.post_content .marketo-purpose a { display:block; padding:18px 16px; text-decoration:none; }
.post_content .marketo-purpose a + a { border-left:1px solid #ddd; }
.marketo-purpose strong { display:block; font-size:17px; line-height:1.6; }
.marketo-purpose span { display:block; margin-top:5px; color:#555; font-size:14px; line-height:1.8; }
.post_content .marketo-library { margin:0; font-size:16px; }
.post_content .marketo-library #article-guide { margin:0 0 35px !important; }
.post_content .marketo-library .marketo-library__heading { margin:42px 0 20px !important; padding:0; border:0; color:#1a1a1a; font-size:24px; line-height:1.5; scroll-margin-top:100px; }
.post_content .marketo-library .marketo-library__intro { margin:0 0 24px; }
.post_content .marketo-library .sf-cards { margin:24px 0; }
.post_content .marketo-library .sf-card--link { min-width:0; }
.post_content .marketo-library .sf-card--link > p { margin:0 0 14px !important; line-height:0; }
.post_content .marketo-library .sf-card--link img { display:block; width:100%; height:auto; aspect-ratio:768 / 439; object-fit:contain; margin:0; }
.post_content .marketo-library .sf-card-title { margin:0 0 10px !important; }
.post_content .marketo-library .sf-card--link > div > p { margin:0; font-size:16px; line-height:2; }
.post_content .marketo-library a { word-break:normal; overflow-wrap:break-word; line-break:strict; }
.post_content .marketo-library .marketo-library__migration { margin:30px 0 15px !important; }
.marketo-operation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 52px; }
.marketo-operation { min-width:0; }
.post_content .marketo-operation .marketo-operation__title { margin:0 0 16px !important; color:#1a1a1a; font-size:20px; line-height:1.6; }
.post_content .marketo-operation .marketo-article-rows { margin:0 !important; padding-left:1.2em; list-style:disc outside; }
.post_content .marketo-operation .marketo-article-rows li { margin:0 0 16px !important; padding:0; border:0; font-size:16px; line-height:1.9; }
@media (max-width:767px) {
 #marketo-guide-articles { padding:32px 20px 36px; }
 .post_content .marketo-purpose { grid-template-columns:minmax(0,1fr); }
 .post_content .marketo-purpose a { padding:15px 0; }
 .post_content .marketo-purpose a + a { border-left:0; border-top:1px solid #ddd; }
 .post_content .marketo-library .marketo-library__heading { font-size:20px; margin-top:30px !important; }
 .marketo-operation-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .post_content .marketo-library .sf-cards { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
}

/* 上部の記事リンクと概要を、記事一覧と同じ本文幅に配置。 */
#marketo-guide-intro { box-sizing:border-box; max-width:1104px; margin:0 auto; padding:0 32px 32px; }
@media (max-width:767px) { #marketo-guide-intro { padding:0 20px 24px; } }

.marketo-overview { width:100%; background:#f5f6f7; }
.marketo-overview__inner { box-sizing:border-box; max-width:1104px; margin:0 auto; padding:36px 32px; }
.post_content.marketo-overview .design_headline1 { margin:0 0 24px !important; }
.post_content.marketo-overview #capabilities { margin-top:24px !important; }
.marketo-overview .sf-cards { max-width:none; }

@media (max-width:767px) { .marketo-overview__inner { padding:28px 20px; }  }

/* 1記事でもPCは2列の片側分。モバイルは通常の1列幅。 */
@media (min-width:768px) {
 .post_content.marketo-overview .sf-cards,
 .post_content .marketo-library .sf-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ナビと移動先で共通の分類番号 */
.post_content .marketo-purpose .marketo-category-number,
.post_content .marketo-library .marketo-category-number {
 display:inline-flex; align-items:center; justify-content:center;
 width:1.8em; height:1.8em; margin:0 10px 0 0;
 background:#eaf3fa; color:#0070a4; border-radius:50%;
 font-size:16px; font-weight:bold; line-height:1; vertical-align:middle;
}

.post_content .marketo-operation__more { margin-top:8px; }
.post_content .marketo-operation__more > summary { display:list-item; width:fit-content; cursor:pointer; color:#0066c0; font-size:16px; font-weight:bold; line-height:1.9; }
.post_content .marketo-operation__more > summary:focus-visible { outline:2px solid #0070a4; outline-offset:4px; }
.post_content .marketo-operation__more[open] > summary { margin-bottom:16px; }

/* 番号ではなく見出しの文字位置に補足文をそろえる。 */
.post_content .marketo-purpose a > span { margin-left:calc(1.8 * 16px + 10px); }

/* 大分類の説明・記事も番号の右側、見出し本文の左端に統一。 */
.post_content .marketo-library__content { margin-left:calc(1.8 * 16px + 10px); }

/* 外枠を使わず、分類間の余白でまとまりを示す。 */
.post_content .marketo-library__group { margin:0; padding:0; border:0; background:transparent; }
.post_content .marketo-library__group + .marketo-library__group { margin-top:52px; }
.post_content .marketo-library__group .marketo-library__heading { margin-top:0 !important; }
@media (max-width:767px) { .post_content .marketo-library__group + .marketo-library__group { margin-top:36px; } }

/* 概要説明と関連記事を左右に配置。 */
.marketo-about-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; align-items:start; }
.marketo-about-layout__copy { min-width:0; }
@media (max-width:767px) { .marketo-about-layout { grid-template-columns:minmax(0,1fr); gap:24px; } }

.post_content .marketo-pickup { position:relative; }
.marketo-pickup__badge { position:absolute; top:12px; left:12px; z-index:1; display:inline-block; padding:5px 12px; background:#F49209; color:#fff; font-size:13px; font-weight:bold; line-height:1.4; }

/* 概要カードの高さを抑え、左側の説明下に余白をためない。 */
.post_content.marketo-overview .marketo-pickup { padding:16px; }
.post_content.marketo-overview .marketo-pickup > p { margin:0 0 12px; line-height:0; }
.post_content.marketo-overview .marketo-pickup img { display:block; width:100%; height:auto; max-height:190px; object-fit:contain; margin:0; }
.post_content.marketo-overview .marketo-pickup .sf-card-title { margin:0 0 10px !important; }
.post_content.marketo-overview .marketo-pickup > div > p { margin:0; font-size:16px; line-height:1.9; }

.marketo-about-layout__article { min-width:0; }
.post_content.marketo-overview .marketo-about-layout__article > .sf-cards { display:block; margin:0; }
.post_content.marketo-overview .marketo-about-layout__article-label { margin:0 0 12px; font-size:16px; }
