/* 旧テーマ blog.css から抽出した図解スタイル（funnel/conv/kpi/step-flow/pie/heat/screenshot等）
   抽出元: wp-content/themes/rexli/common/css/blog.css（2026-07-11）
   注意: 旧テーマはrem基準（html 62.5%）のため、ルートを合わせる。renewal.cssはpxのみなので影響なし */
html { font-size: 62.5%; }

.portfolio-measure-content {
    padding: 1.5em 1.8em calc(1.5em + 10px);
    color: #333;
    font-size: 1.6rem;
    line-height: 1.85;
    text-align: left;
}
.portfolio-measure-content p { margin: 0 0 1em; text-align: left; }
.portfolio-measure-content .color-base,
.portfolio-measure-content .color-base-b { color: #222 !important; }
.portfolio-measure-content .mk-yellow {
    background-image: linear-gradient(transparent 60%, #fff176 60%) !important;
}
.portfolio-measure-content p strong,
.portfolio-measure-content p strong.underline,
.portfolio-measure-content li strong,
.portfolio-measure-content li strong.underline,
.portfolio-result-content p strong,
.portfolio-result-content p strong.underline,
.portfolio-result-content li strong,
.portfolio-result-content li strong.underline {
    background-image: linear-gradient(transparent 60%, #fff176 60%);
    background-repeat: no-repeat;
    text-decoration: none;
    font-weight: 700;
    padding: 0 0.05em;
}
.portfolio-measure-content [class*="kpi-"] strong,
.portfolio-measure-content [class*="conv-"] strong,
.portfolio-measure-content [class*="funnel-"] strong,
.portfolio-measure-content [class*="step-"] strong,
.portfolio-measure-content [class*="bc-"] strong,
.portfolio-measure-content [class*="pie-"] strong,
.portfolio-measure-content [class*="benchmark"] strong,
.portfolio-result-content [class*="kpi-"] strong,
.portfolio-result-content [class*="conv-"] strong,
.portfolio-result-content [class*="funnel-"] strong,
.portfolio-result-content [class*="step-"] strong,
.portfolio-result-content [class*="bc-"] strong,
.portfolio-result-content [class*="pie-"] strong,
.portfolio-result-content [class*="benchmark"] strong {
    background-image: none !important;
    padding: 0 !important;
}
.portfolio-result-content {
    background: #e8f3f2;
    border-left: 10px dotted rgba(0,0,0,.1);
    box-shadow: 0 0 0 15px #e8f3f2;
    padding: 1em 1em 1em 1.5em;
    margin: 15px 0 1.5em;
    font-size: 1.8rem;
    line-height: 1.9;
    color: #222;
    text-align: left;
}
.portfolio-measure-content img,
.portfolio-result-content img {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    display: block;
    border-radius: 6px;
    margin: 1em 0;
}
.portfolio-measure-content .screenshot-wide,
.portfolio-measure-content .screenshot-medium,
.portfolio-result-content .screenshot-wide,
.portfolio-result-content .screenshot-medium {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.portfolio-measure-content .screenshot-caption,
.portfolio-result-content .screenshot-caption {
    text-align: center;
    font-size: 0.85em;
    color: #666;
    margin: 0.4em 0 1.4em;
}
.portfolio-measure-body p,
.portfolio-measure-content p {
    font-size: 1.6rem;
    line-height: 1.9;
    color: #333;
    font-weight: 400;
    margin: 0 0 1em;
}
.portfolio-result-content > span {
    display: inline;
    border-bottom: dotted 1px #35a8a5;
    padding-bottom: 6px;
}
.portfolio-result-content *,
.portfolio-result-content .color-base,
.portfolio-result-content .color-base-b {
    color: #222 !important;
}
.portfolio-result-content .mk-yellow,
.portfolio-result-content .mk-yellow1,
.portfolio-result-content .mk-yellow2,
.portfolio-result-content [class*="mk-"],
.portfolio-result-content [class*="storong-"],
.portfolio-result-content > span .mk-yellow {
    background: transparent !important;
    background-image: none !important;
    text-decoration: none !important;
    border: none !important;
    padding-bottom: 0 !important;
}
.portfolio-result-content,
.portfolio-result-content * {
    text-decoration: none !important;
}
.portfolio-measure-content p:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
.portfolio-measure-content {
        padding: 1em 0.9em calc(1em + 6px);
    }
.portfolio-result-content {
        padding: 0.8em 0.8em 0.8em 1.2em;
    }
}
@media (max-width: 767px) {
.portfolio-hero-subtitle,
    .portfolio-issue-content,
    .portfolio-measure-content {
        font-size: 1.6rem;
    }
.portfolio-result-content {
        font-size: 1.8rem;
    }
}
.portfolio-measure-content .case-study, .portfolio-result-content .case-study { width: 210mm; height: 297mm; margin: 40px auto; background: #fff; padding: 6mm 10mm; box-shadow: 0 2px 12px rgba(0,0,0,0.08); overflow: hidden; position: relative; }
.portfolio-measure-content .case-study::after, .portfolio-result-content .case-study::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: #e74c3c; }
.portfolio-measure-content .company-header, .portfolio-result-content .company-header { margin-bottom: 8px; }
.portfolio-measure-content .company-name, .portfolio-result-content .company-name { font-size: 28px; font-weight: 900; display: flex; align-items: center; gap: 12px; }
.portfolio-measure-content .company-name::before, .portfolio-result-content .company-name::before { content: ''; display: inline-block; width: 6px; height: 36px; background: #2c8c8c; border-radius: 2px; flex-shrink: 0; }
.portfolio-measure-content .company-name .honorific, .portfolio-result-content .company-name .honorific { font-size: 20px; font-weight: 500; color: #555; }
.portfolio-measure-content .industry-label, .portfolio-result-content .industry-label { font-size: 15px; font-weight: 700; color: #2c8c8c; margin: 0 0 8px 18px; }
.portfolio-measure-content .main-headline, .portfolio-result-content .main-headline { font-size: 22px; font-weight: 900; line-height: 1.4; margin-bottom: 4px; }
.portfolio-measure-content .main-headline .highlight, .portfolio-result-content .main-headline .highlight { color: #2c8c8c; }
.portfolio-measure-content .lead-intro, .portfolio-result-content .lead-intro { font-size: 12.5px; line-height: 1.6; color: #555; margin: 0; padding-bottom: 8px; border-bottom: 1px solid #d0d0d0; }
.portfolio-measure-content .section-title, .portfolio-result-content .section-title { font-size: 18px; font-weight: 900; margin: 15px 0 5px; }
.portfolio-measure-content .gray-box, .portfolio-result-content .gray-box { background: #f5f5f5; padding: 12px 15px; margin-bottom: 16px; border-radius: 2px; }
.portfolio-measure-content .gray-box p, .portfolio-result-content .gray-box p { font-size: 15px; line-height: 1.75; margin-bottom: 10px; }
.portfolio-measure-content .gray-box p:last-child, .portfolio-result-content .gray-box p:last-child { margin-bottom: 0; }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item { padding-left: 1em; text-indent: -1em; margin-bottom: 3px; font-size: 15px; line-height: 1.75; }
.portfolio-measure-content .gray-box .bullet-item::before, .portfolio-result-content .gray-box .bullet-item::before { content: '・'; }
.portfolio-measure-content .gray-box .bullet-item:last-child, .portfolio-result-content .gray-box .bullet-item:last-child { margin-bottom: 0; }
.portfolio-measure-content .sub-heading-alt, .portfolio-result-content .sub-heading-alt { font-size: 18px; font-weight: 900; color: #2c8c8c; padding: 0 0 5px; border-bottom: 2px dotted #aaddd0; margin-bottom: 14px; line-height: 1.5; }
.portfolio-measure-content .gray-box .sub-heading-alt:not(:first-child), .portfolio-result-content .gray-box .sub-heading-alt:not(:first-child) { margin-top: 24px; }
.portfolio-measure-content strong, .portfolio-result-content strong { font-weight: 700; }
.portfolio-measure-content .underline, .portfolio-result-content .underline { text-decoration: underline; text-underline-offset: 3px; }
.portfolio-measure-content .result-box, .portfolio-result-content .result-box { background: #f5f5f5; padding: 20px 24px; margin-bottom: 0; }
.portfolio-measure-content .result-box p, .portfolio-result-content .result-box p { font-size: 15px; line-height: 1.75; margin-bottom: 8px; }
.portfolio-measure-content .result-box p:last-child, .portfolio-result-content .result-box p:last-child { margin-bottom: 0; }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image { display: flex; gap: 16px; align-items: flex-start; }
.portfolio-measure-content .content-with-image .text-col, .portfolio-result-content .content-with-image .text-col { flex: 1; min-width: 0; }
.portfolio-measure-content .content-with-image .image-col, .portfolio-result-content .content-with-image .image-col { flex: 0 0 36%; }
.portfolio-measure-content .content-with-image .image-col img, .portfolio-result-content .content-with-image .image-col img { width: 100%; display: block; border-radius: 4px; }
.portfolio-measure-content .float-image-wrap, .portfolio-result-content .float-image-wrap { overflow: hidden; }
.portfolio-measure-content .float-image-wrap .float-image, .portfolio-result-content .float-image-wrap .float-image { float: right; width: 36%; margin: 0 0 6px 14px; border-radius: 4px; display: block; }
.portfolio-measure-content .flow-diagram, .portfolio-result-content .flow-diagram { display: flex; align-items: stretch; gap: 6px; padding: 12px 8px; background: #fff; border-radius: 4px; margin-top: 10px; border: 1px solid #e5e5e5; }
.portfolio-measure-content .flow-col, .portfolio-result-content .flow-col { display: flex; flex-direction: column; gap: 5px; flex: 1; justify-content: center; }
.portfolio-measure-content .flow-col.flow-hub, .portfolio-result-content .flow-col.flow-hub { flex: 1.3; }
.portfolio-measure-content .flow-label, .portfolio-result-content .flow-label { font-size: 10.5px; font-weight: 700; color: #2c8c8c; text-align: center; letter-spacing: .05em; margin-bottom: 2px; }
.portfolio-measure-content .flow-card, .portfolio-result-content .flow-card { background: #fff; border: 1.5px solid #cfe6e3; padding: 6px 6px; font-size: 12px; font-weight: 700; text-align: center; border-radius: 3px; color: #333; line-height: 1.3; }
.portfolio-measure-content .flow-card-hub, .portfolio-result-content .flow-card-hub { background: #2c8c8c; border-color: #2c8c8c; color: #fff; padding: 12px 8px; }
.portfolio-measure-content .flow-card-hub .hub-title, .portfolio-result-content .flow-card-hub .hub-title { font-size: 13.5px; font-weight: 900; }
.portfolio-measure-content .flow-card-hub .hub-sub, .portfolio-result-content .flow-card-hub .hub-sub { font-size: 10.5px; font-weight: 500; margin-top: 3px; opacity: .92; }
.portfolio-measure-content .flow-arrow, .portfolio-result-content .flow-arrow { font-size: 22px; font-weight: 900; color: #2c8c8c; flex: 0 0 auto; align-self: center; line-height: 1; }
.portfolio-measure-content .page2-header, .portfolio-result-content .page2-header { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 2px solid #2c8c8c; }
.portfolio-measure-content .page2-header .company-name, .portfolio-result-content .page2-header .company-name { font-size: 20px; }
.portfolio-measure-content .page2-header .company-name::before, .portfolio-result-content .page2-header .company-name::before { height: 28px; }
.portfolio-measure-content .pillar-diagram, .portfolio-result-content .pillar-diagram { display: flex; gap: 12px; margin: 14px 0 8px; }
.portfolio-measure-content .pillar, .portfolio-result-content .pillar { flex: 1; background: #fff; border: 1.5px solid #cfe6e3; border-radius: 4px; overflow: hidden; }
.portfolio-measure-content .pillar-head, .portfolio-result-content .pillar-head { background: #2c8c8c; color: #fff; padding: 13px 14px; font-weight: 900; font-size: 15px; line-height: 1.3; }
.portfolio-measure-content .pillar-head .pillar-tag, .portfolio-result-content .pillar-head .pillar-tag { display: inline-block; font-size: 11px; font-weight: 700; background: #fff; color: #2c8c8c; padding: 1px 7px; border-radius: 2px; margin-right: 6px; vertical-align: 1px; letter-spacing: .04em; }
.portfolio-measure-content .pillar-body, .portfolio-result-content .pillar-body { padding: 16px 16px; font-size: 13.5px; line-height: 1.6; }
.portfolio-measure-content .pillar-body .pillar-flow, .portfolio-result-content .pillar-body .pillar-flow { font-weight: 700; color: #333; margin-bottom: 12px; font-size: 13px; padding: 4px 0; }
.portfolio-measure-content .pillar-body .pillar-effect, .portfolio-result-content .pillar-body .pillar-effect { background: #f0f8f7; color: #1f6e6e; font-weight: 700; padding: 11px 12px; border-radius: 2px; font-size: 13px; text-align: center; }
.portfolio-measure-content .bd-diagram, .portfolio-result-content .bd-diagram { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 10px; margin: 10px 0 4px; }
.portfolio-measure-content .bd-card, .portfolio-result-content .bd-card { background: #fff; border: 1.5px solid #cfe6e3; border-radius: 4px; padding: 12px 12px; text-align: center; }
.portfolio-measure-content .bd-card-tag, .portfolio-result-content .bd-card-tag { display: inline-block; font-size: 11px; font-weight: 700; background: #2c8c8c; color: #fff; padding: 2px 9px; border-radius: 2px; letter-spacing: .04em; margin-bottom: 6px; }
.portfolio-measure-content .bd-card-title, .portfolio-result-content .bd-card-title { font-size: 14.5px; font-weight: 900; color: #333; line-height: 1.35; }
.portfolio-measure-content .bd-card-sub, .portfolio-result-content .bd-card-sub { font-size: 12px; color: #666; font-weight: 500; margin-top: 3px; }
.portfolio-measure-content .bd-arrows, .portfolio-result-content .bd-arrows { display: flex; flex-direction: column; gap: 8px; align-items: center; min-width: 145px; }
.portfolio-measure-content .bd-arrow, .portfolio-result-content .bd-arrow { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: #2c8c8c; background: #f0f8f7; padding: 6px 10px; border-radius: 2px; width: 100%; justify-content: center; }
.portfolio-measure-content .bd-arrow .bd-arrow-icon, .portfolio-result-content .bd-arrow .bd-arrow-icon { font-size: 17px; line-height: 1; }
.portfolio-measure-content .revenue-chart, .portfolio-result-content .revenue-chart { background: #fff; border: 1.5px solid #cfe6e3; border-radius: 4px; padding: 8px 14px 6px; margin: 10px 0 4px; }
.portfolio-measure-content .revenue-chart-title, .portfolio-result-content .revenue-chart-title { font-size: 12.5px; font-weight: 700; color: #1f6e6e; text-align: center; margin-bottom: 4px; line-height: 1.4; }
.portfolio-measure-content .revenue-chart svg, .portfolio-result-content .revenue-chart svg { width: 100%; height: auto; display: block; }
.portfolio-measure-content .revenue-chart-legend, .portfolio-result-content .revenue-chart-legend { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin-top: 4px; font-size: 10.5px; color: #555; font-weight: 700; }
.portfolio-measure-content .revenue-chart-legend .legend-item, .portfolio-result-content .revenue-chart-legend .legend-item { display: inline-flex; align-items: center; gap: 5px; }
.portfolio-measure-content .revenue-chart-legend .legend-swatch, .portfolio-result-content .revenue-chart-legend .legend-swatch { display: inline-block; width: 12px; height: 10px; border-radius: 2px; }
.portfolio-measure-content .revenue-chart-legend .legend-line, .portfolio-result-content .revenue-chart-legend .legend-line { display: inline-block; width: 18px; height: 2.5px; background: #1f4e6e; border-radius: 2px; }
.portfolio-measure-content .full-width-image, .portfolio-result-content .full-width-image { width: 85%; height: auto; display: block; margin: 12px auto 0; border-radius: 4px; }
.portfolio-measure-content .step-flow, .portfolio-result-content .step-flow { display: flex; align-items: stretch; gap: 6px; margin: 10px 0 4px; }
.portfolio-measure-content .step-flow-item, .portfolio-result-content .step-flow-item { flex: 1; background: #fff; border: 1px solid #d8e6e0; border-radius: 4px; padding: 12px 10px 14px; text-align: center; }
.portfolio-measure-content .step-flow-item .step-num, .portfolio-result-content .step-flow-item .step-num { display: inline-block; width: 28px; height: 28px; line-height: 26px; border: 2px solid #2c8c8c; border-radius: 50%; color: #2c8c8c; font-size: 13px; font-weight: 900; margin-bottom: 6px; }
.portfolio-measure-content .step-flow-item .step-title, .portfolio-result-content .step-flow-item .step-title { font-size: 13px; font-weight: 700; color: #333; line-height: 1.4; margin-bottom: 4px; }
.portfolio-measure-content .step-flow-item .step-sub, .portfolio-result-content .step-flow-item .step-sub { font-size: 11px; color: #777; line-height: 1.45; }
.portfolio-measure-content .step-flow-item.is-final, .portfolio-result-content .step-flow-item.is-final { background: #2c8c8c; border-color: #2c8c8c; }
.portfolio-measure-content .step-flow-item.is-final .step-num, .portfolio-result-content .step-flow-item.is-final .step-num { background: #fff; }
.portfolio-measure-content .step-flow-item.is-final .step-title, .portfolio-result-content .step-flow-item.is-final .step-title,.portfolio-measure-content .step-flow-item.is-final .step-sub, .portfolio-result-content .step-flow-item.is-final .step-sub { color: #fff; }
.portfolio-measure-content .step-flow-arrow, .portfolio-result-content .step-flow-arrow { align-self: center; font-size: 16px; font-weight: 900; color: #2c8c8c; flex-shrink: 0; }
.portfolio-measure-content .segment-grid, .portfolio-result-content .segment-grid { display: flex; gap: 8px; margin: 12px 0 0; }
.portfolio-measure-content .segment-card, .portfolio-result-content .segment-card { flex: 1; background: #fff; border: 1px solid #d8e6e0; border-top: 4px solid #2c8c8c; border-radius: 4px; padding: 10px 12px 12px; text-align: left; }
.portfolio-measure-content .seg-temp, .portfolio-result-content .seg-temp { display: inline-block; font-size: 10px; font-weight: 900; letter-spacing: 0.04em; color: #fff; padding: 2px 8px; border-radius: 10px; margin-bottom: 6px; }
.portfolio-measure-content .seg-cold .seg-temp, .portfolio-result-content .seg-cold .seg-temp { background: #a3c9c9; }
.portfolio-measure-content .seg-warm .seg-temp, .portfolio-result-content .seg-warm .seg-temp { background: #6dafaf; }
.portfolio-measure-content .seg-hot .seg-temp, .portfolio-result-content .seg-hot .seg-temp { background: #2c8c8c; }
.portfolio-measure-content .seg-cold, .portfolio-result-content .seg-cold { border-top-color: #a3c9c9; }
.portfolio-measure-content .seg-warm, .portfolio-result-content .seg-warm { border-top-color: #6dafaf; }
.portfolio-measure-content .seg-hot, .portfolio-result-content .seg-hot { border-top-color: #2c8c8c; }
.portfolio-measure-content .seg-name, .portfolio-result-content .seg-name { font-size: 13px; font-weight: 900; color: #333; margin-bottom: 5px; line-height: 1.4; }
.portfolio-measure-content .seg-tactic, .portfolio-result-content .seg-tactic { font-size: 12px; color: #555; line-height: 1.5; }
.portfolio-measure-content .segment-arrow-down, .portfolio-result-content .segment-arrow-down { text-align: center; color: #e74c3c; font-size: 14px; line-height: 1; margin-top: 8px; }
.portfolio-measure-content .segment-converge, .portfolio-result-content .segment-converge { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 4px; padding: 12px 16px; background: #fdecea; color: #c0392b; font-size: 15px; font-weight: 900; border-radius: 4px; border: 1px solid #f5c6c0; }
.portfolio-measure-content .benchmark-chart, .portfolio-result-content .benchmark-chart { margin: 12px 0 4px; padding: 12px 16px 10px; background: #fff; border: 1px solid #d8e6e0; border-radius: 4px; }
.portfolio-measure-content .bc-title, .portfolio-result-content .bc-title { font-size: 13px; font-weight: 700; color: #2c8c8c; margin-bottom: 10px; }
.portfolio-measure-content .bc-row, .portfolio-result-content .bc-row { display: flex; align-items: center; margin-bottom: 6px; font-size: 12px; }
.portfolio-measure-content .bc-row:last-of-type, .portfolio-result-content .bc-row:last-of-type { margin-bottom: 0; }
.portfolio-measure-content .bc-label, .portfolio-result-content .bc-label { flex: 0 0 200px; color: #444; font-weight: 500; line-height: 1.3; padding-right: 10px; }
.portfolio-measure-content .bc-row.bc-best .bc-label, .portfolio-result-content .bc-row.bc-best .bc-label { color: #c0392b; font-weight: 700; }
.portfolio-measure-content .bc-bar-wrap, .portfolio-result-content .bc-bar-wrap { flex: 1; height: 18px; background: #f0f0f0; border-radius: 2px; position: relative; }
.portfolio-measure-content .bc-bar, .portfolio-result-content .bc-bar { height: 100%; border-radius: 2px; background: #b8b8b8; }
.portfolio-measure-content .bc-row.bc-best .bc-bar, .portfolio-result-content .bc-row.bc-best .bc-bar { background: #e74c3c; }
.portfolio-measure-content .bc-value, .portfolio-result-content .bc-value { position: absolute; top: 50%; transform: translateY(-50%); right: -54px; font-size: 12px; font-weight: 700; color: #333; white-space: nowrap; }
.portfolio-measure-content .bc-row.bc-best .bc-value, .portfolio-result-content .bc-row.bc-best .bc-value { color: #c0392b; }
.portfolio-measure-content .bc-bar-wrap-outer, .portfolio-result-content .bc-bar-wrap-outer { flex: 1; position: relative; padding-right: 56px; }
.portfolio-measure-content .bc-source, .portfolio-result-content .bc-source { font-size: 10px; color: #888; margin-top: 8px; line-height: 1.4; }
.portfolio-measure-content .content-with-image .sub-heading-alt, .portfolio-result-content .content-with-image .sub-heading-alt { margin-right: 170px; }
.portfolio-measure-content .content-image, .portfolio-result-content .content-image { float: right; width: 150px; margin: 2px 0 8px 14px; }
.portfolio-measure-content .content-image img, .portfolio-result-content .content-image img { width: 100%; height: auto; display: block; border-radius: 4px; }
.portfolio-measure-content .scenario-flow-image, .portfolio-result-content .scenario-flow-image { width: 66%; margin: 10px 0 0; display: block; border-radius: 4px; }
.portfolio-measure-content .upsell-flow-image, .portfolio-result-content .upsell-flow-image { width: 86%; margin: 16px auto 0; display: block; border-radius: 4px; }
.portfolio-measure-content .image-clearing, .portfolio-result-content .image-clearing { clear: both; }
.portfolio-measure-content .case-study, .portfolio-result-content .case-study {
    width: 210mm;
    height: 297mm;
    margin: 40px auto;
    background: #fff;
    padding: 6mm 10mm;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    overflow: hidden;
    position: relative;
  }
.portfolio-measure-content 
  .case-study::after, .portfolio-result-content 
  .case-study::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #e74c3c;
  }
.portfolio-measure-content 
  .company-header, .portfolio-result-content 
  .company-header {
    margin-bottom: 8px;
  }
.portfolio-measure-content .company-name, .portfolio-result-content .company-name {
    font-size: 28px;
    font-weight: 900;
    display: flex;
    align-items: center;
    gap: 12px;
  }
.portfolio-measure-content .company-name::before, .portfolio-result-content .company-name::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 36px;
    background: #2c8c8c;
    border-radius: 2px;
    flex-shrink: 0;
  }
.portfolio-measure-content .company-name .honorific, .portfolio-result-content .company-name .honorific {
    font-size: 20px;
    font-weight: 500;
    color: #555;
  }
.portfolio-measure-content .industry-label, .portfolio-result-content .industry-label {
    font-size: 15px;
    font-weight: 700;
    color: #2c8c8c;
    margin: 0 0 8px 18px;
  }
.portfolio-measure-content 
  .main-headline, .portfolio-result-content 
  .main-headline {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.4;
    margin-bottom: 4px;
  }
.portfolio-measure-content .main-headline .highlight, .portfolio-result-content .main-headline .highlight {
    color: #2c8c8c;
  }
.portfolio-measure-content 
  .lead-intro, .portfolio-result-content 
  .lead-intro {
    font-size: 12.5px;
    line-height: 1.6;
    color: #555;
    margin: 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #d0d0d0;
  }
.portfolio-measure-content 
  .section-title, .portfolio-result-content 
  .section-title {
    font-size: 18px;
    font-weight: 900;
    margin: 15px 0 5px;
  }
.portfolio-measure-content 
  .gray-box, .portfolio-result-content 
  .gray-box {
    background: #f5f5f5;
    padding: 12px 15px;
    margin-bottom: 16px;
    border-radius: 2px;
  }
.portfolio-measure-content .gray-box p, .portfolio-result-content .gray-box p {
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 10px;
  }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 6px;
  }
.portfolio-measure-content .gray-box .bullet-item::before, .portfolio-result-content .gray-box .bullet-item::before {
    content: '・';
  }
.portfolio-measure-content 
  .sub-heading-alt, .portfolio-result-content 
  .sub-heading-alt {
    font-size: 18px;
    font-weight: 900;
    color: #2c8c8c;
    padding: 0 0 5px;
    border-bottom: 2px dotted #aaddd0;
    margin-bottom: 14px;
    line-height: 1.5;
  }
.portfolio-measure-content .gray-box .sub-heading-alt:not(:first-child), .portfolio-result-content .gray-box .sub-heading-alt:not(:first-child) {
    margin-top: 24px;
  }
.portfolio-measure-content 
  .content-with-image, .portfolio-result-content 
  .content-with-image {
    display: flex;
    gap: 20px;
    margin-bottom: 16px;
  }
.portfolio-measure-content .content-text, .portfolio-result-content .content-text {
    flex: 1;
    font-size: 14px;
    line-height: 1.75;
  }
.portfolio-measure-content .content-text p, .portfolio-result-content .content-text p { margin-bottom: 10px; }
.portfolio-measure-content .content-text p:last-child, .portfolio-result-content .content-text p:last-child { margin-bottom: 0; }
.portfolio-measure-content .content-image, .portfolio-result-content .content-image {
    flex: 0 0 240px;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    justify-content: center;
  }
.portfolio-measure-content 
  .phone-mockup, .portfolio-result-content 
  .phone-mockup {
    width: 110px;
    height: 200px;
    border: 3px solid #333;
    border-radius: 18px;
    overflow: hidden;
    background: #e0e8ee;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }
.portfolio-measure-content .phone-mockup .screen, .portfolio-result-content .phone-mockup .screen {
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #f8f8f8 0%, #e8ecf0 30%, #dde4ea 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 14px 6px 10px;
    font-size: 6px;
    color: #888;
    gap: 4px;
  }
.portfolio-measure-content .phone-mockup .screen-bar, .portfolio-result-content .phone-mockup .screen-bar {
    width: 60%;
    height: 4px;
    background: #ccc;
    border-radius: 2px;
  }
.portfolio-measure-content .phone-mockup .screen-content, .portfolio-result-content .phone-mockup .screen-content {
    width: 100%;
    flex: 1;
    background: #fff;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 4px;
  }
.portfolio-measure-content .phone-mockup .screen-line, .portfolio-result-content .phone-mockup .screen-line {
    width: 80%;
    height: 3px;
    background: #ddd;
    border-radius: 1px;
  }
.portfolio-measure-content .phone-mockup .screen-block, .portfolio-result-content .phone-mockup .screen-block {
    width: 100%;
    height: 24px;
    background: #e8f0f4;
    border-radius: 3px;
  }
.portfolio-measure-content .phone-mockup .screen-img, .portfolio-result-content .phone-mockup .screen-img {
    width: 100%;
    height: 36px;
    background: linear-gradient(135deg, #b8d8d0, #8bc0b8);
    border-radius: 3px;
  }
.portfolio-measure-content .phone-annotation, .portfolio-result-content .phone-annotation {
    writing-mode: vertical-rl;
    font-size: 11px;
    color: #555;
    font-weight: 500;
    letter-spacing: 0.05em;
    flex-shrink: 0;
  }
.portfolio-measure-content 
  .image-placeholder, .portfolio-result-content 
  .image-placeholder {
    width: 110px;
    height: 200px;
    border: 2px dashed #ccc;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #aaa;
    text-align: center;
    padding: 8px;
    flex-shrink: 0;
  }
.portfolio-measure-content 
  .screenshot-wide, .portfolio-result-content 
  .screenshot-wide {
    width: 100%;
    margin-top: 10px;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content .screenshot-caption, .portfolio-result-content .screenshot-caption {
    text-align: center;
    font-size: 12px;
    color: #666;
    margin-top: 6px;
    font-weight: 500;
  }
.portfolio-measure-content 
  .diagram-title, .portfolio-result-content 
  .diagram-title {
    display: block;
    font-size: 14px;
    font-weight: 900;
    color: #2c8c8c;
    margin: 14px 0 8px;
    padding-left: 10px;
    border-left: 4px solid #2c8c8c;
    line-height: 1.4;
  }
.portfolio-measure-content 
  .crossmedia-flow, .portfolio-result-content 
  .crossmedia-flow {
    background: #fff;
    border: 1px solid #d8e6e0;
    border-radius: 4px;
    padding: 14px 18px 16px;
    margin: 6px 0 4px;
  }
.portfolio-measure-content .cm-grid, .portfolio-result-content .cm-grid {
    display: grid;
    grid-template-columns: 70px repeat(6, 1fr);
    grid-template-rows: 56px 30px 60px;
    column-gap: 4px;
    row-gap: 4px;
  }
.portfolio-measure-content .cm-label, .portfolio-result-content .cm-label {
    display: flex;
    align-items: center;
    font-size: 13px;
    font-weight: 900;
    color: #222;
  }
.portfolio-measure-content .cm-label-top, .portfolio-result-content .cm-label-top { grid-row: 1; grid-column: 1; }
.portfolio-measure-content .cm-label-bot, .portfolio-result-content .cm-label-bot { grid-row: 3; grid-column: 1; }
.portfolio-measure-content .cm-chev, .portfolio-result-content .cm-chev {
    background: #2c8c8c;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    text-align: center;
    line-height: 1.35;
    padding: 8px 14px 8px 18px;
    clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 50%, calc(100% - 14px) 100%, 0 100%, 14px 50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
  }
.portfolio-measure-content .cm-chev-first, .portfolio-result-content .cm-chev-first {
    padding-left: 12px;
    clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 50%, calc(100% - 14px) 100%, 0 100%);
  }
.portfolio-measure-content .cm-chev-accent, .portfolio-result-content .cm-chev-accent { background: #e74c3c; }
.portfolio-measure-content .cm-chev-sub, .portfolio-result-content .cm-chev-sub {
    font-size: 10px;
    font-weight: 700;
    opacity: 0.92;
    margin-top: 2px;
  }
.portfolio-measure-content .cm-pos-top1, .portfolio-result-content .cm-pos-top1 { grid-row: 1; grid-column: 2 / span 2; }
.portfolio-measure-content .cm-pos-top2, .portfolio-result-content .cm-pos-top2 { grid-row: 1; grid-column: 4 / span 2; }
.portfolio-measure-content .cm-pos-bot1, .portfolio-result-content .cm-pos-bot1 { grid-row: 3; grid-column: 2 / span 2; }
.portfolio-measure-content .cm-pos-bot2, .portfolio-result-content .cm-pos-bot2 { grid-row: 3; grid-column: 4 / span 2; }
.portfolio-measure-content .cm-pos-bot3, .portfolio-result-content .cm-pos-bot3 { grid-row: 3; grid-column: 6 / span 2; }
.portfolio-measure-content .cm-arrow-up, .portfolio-result-content .cm-arrow-up {
    grid-row: 2;
    grid-column: 4 / span 2;
    align-self: center;
    justify-self: center;
    font-size: 11px;
    font-weight: 700;
    color: #555;
    line-height: 1.1;
    text-align: center;
    display: flex;
    align-items: center;
    gap: 6px;
  }
.portfolio-measure-content .cm-arrow-up::before, .portfolio-result-content .cm-arrow-up::before {
    content: '↑';
    font-size: 18px;
    font-weight: 900;
    color: #555;
    line-height: 1;
  }
.portfolio-measure-content .cm-arrow-diag, .portfolio-result-content .cm-arrow-diag {
    grid-row: 2;
    grid-column: 5 / span 2;
    align-self: center;
    justify-self: center;
    font-size: 11px;
    font-weight: 700;
    color: #555;
    line-height: 1.1;
    display: flex;
    align-items: center;
    gap: 6px;
  }
.portfolio-measure-content .cm-arrow-diag::after, .portfolio-result-content .cm-arrow-diag::after {
    content: '↘';
    font-size: 18px;
    font-weight: 900;
    color: #555;
    line-height: 1;
  }
.portfolio-measure-content 
  .page2-header, .portfolio-result-content 
  .page2-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #2c8c8c;
  }
.portfolio-measure-content .page2-header .company-name, .portfolio-result-content .page2-header .company-name {
    font-size: 20px;
  }
.portfolio-measure-content .page2-header .company-name::before, .portfolio-result-content .page2-header .company-name::before {
    height: 28px;
  }
.portfolio-measure-content 
  strong, .portfolio-result-content 
  strong { font-weight: 700; }
.portfolio-measure-content 
  .result-box, .portfolio-result-content 
  .result-box {
    background: #f5f5f5;
    padding: 20px 24px;
    margin-bottom: 0;
  }
.portfolio-measure-content .result-box p, .portfolio-result-content .result-box p {
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 8px;
  }
.portfolio-measure-content .case-study, .portfolio-result-content .case-study { width: 210mm; min-height: 297mm; margin: 40px auto; background: #fff; padding: 6mm 10mm; box-shadow: 0 2px 12px rgba(0,0,0,0.08); overflow: visible; position: relative; }
.portfolio-measure-content .lead-intro, .portfolio-result-content .lead-intro { font-size: 12.5px; line-height: 1.5; color: #555; margin: 0; padding-bottom: 7px; border-bottom: 1px solid #d0d0d0; }
.portfolio-measure-content .section-title, .portfolio-result-content .section-title { font-size: 18px; font-weight: 900; margin: 12px 0 4px; }
.portfolio-measure-content .gray-box, .portfolio-result-content .gray-box { background: #f5f5f5; padding: 10px 15px; margin-bottom: 12px; border-radius: 2px; }
.portfolio-measure-content .gray-box p, .portfolio-result-content .gray-box p { font-size: 15px; line-height: 1.66; margin-bottom: 8px; }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item { padding-left: 1em; text-indent: -1em; margin-bottom: 3px; font-size: 15px; line-height: 1.66; }
.portfolio-measure-content .sub-heading-alt, .portfolio-result-content .sub-heading-alt { font-size: 18px; font-weight: 900; color: #2c8c8c; padding: 0 0 4px; border-bottom: 2px dotted #aaddd0; margin-bottom: 10px; line-height: 1.45; }
.portfolio-measure-content .gray-box .sub-heading-alt:not(:first-child), .portfolio-result-content .gray-box .sub-heading-alt:not(:first-child) { margin-top: 20px; }
.portfolio-measure-content .scenario-layout::after, .portfolio-result-content .scenario-layout::after { content: ''; display: block; clear: both; }
.portfolio-measure-content .scenario-layout p, .portfolio-result-content .scenario-layout p { margin-bottom: 0; }
.portfolio-measure-content .scenario-text .sub-heading-alt, .portfolio-result-content .scenario-text .sub-heading-alt { margin-top: 14px; }
.portfolio-measure-content .scenario-image, .portfolio-result-content .scenario-image { width: 220px; height: auto; display: block; float: right; margin: 0 0 12px 16px; }
.portfolio-measure-content .result-box, .portfolio-result-content .result-box { background: #f5f5f5; padding: 14px 20px; margin-bottom: 0; }
.portfolio-measure-content .result-box p, .portfolio-result-content .result-box p { font-size: 15px; line-height: 1.66; margin-bottom: 8px; }
.portfolio-measure-content .case-study::after, .portfolio-result-content .case-study::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #e74c3c;
  }
.portfolio-measure-content .company-header, .portfolio-result-content .company-header {
    margin-bottom: 8px;
  }
.portfolio-measure-content .main-headline, .portfolio-result-content .main-headline {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.4;
    margin-bottom: 4px;
  }
.portfolio-measure-content .lead-intro, .portfolio-result-content .lead-intro {
    font-size: 12.5px;
    line-height: 1.6;
    color: #555;
    margin: 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #d0d0d0;
  }
.portfolio-measure-content .section-title, .portfolio-result-content .section-title {
    font-size: 18px;
    font-weight: 900;
    margin: 15px 0 5px;
  }
.portfolio-measure-content .gray-box, .portfolio-result-content .gray-box {
    background: #f5f5f5;
    padding: 12px 15px;
    margin-bottom: 16px;
    border-radius: 2px;
  }
.portfolio-measure-content .gray-box p:last-child, .portfolio-result-content .gray-box p:last-child {
    margin-bottom: 0;
  }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 3px;
    font-size: 15px;
    line-height: 1.75;
  }
.portfolio-measure-content .gray-box .bullet-item:last-child, .portfolio-result-content .gray-box .bullet-item:last-child {
    margin-bottom: 0;
  }
.portfolio-measure-content .sub-heading-alt, .portfolio-result-content .sub-heading-alt {
    font-size: 18px;
    font-weight: 900;
    color: #2c8c8c;
    padding: 0 0 5px;
    border-bottom: 2px dotted #aaddd0;
    margin-bottom: 14px;
    line-height: 1.5;
  }
.portfolio-measure-content .page2-header, .portfolio-result-content .page2-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #2c8c8c;
  }
.portfolio-measure-content .underline, .portfolio-result-content .underline {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
.portfolio-measure-content .result-box, .portfolio-result-content .result-box {
    background: #f5f5f5;
    padding: 20px 24px;
    margin-bottom: 0;
  }
.portfolio-measure-content .result-box p:last-child, .portfolio-result-content .result-box p:last-child {
    margin-bottom: 0;
  }
.portfolio-measure-content 
  .vol-diagram, .portfolio-result-content 
  .vol-diagram {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: stretch;
    gap: 8px;
    margin: 14px 0 4px;
  }
.portfolio-measure-content .vol-col, .portfolio-result-content .vol-col {
    background: #fff;
    border: 1px solid #d4d4d4;
    border-radius: 4px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
.portfolio-measure-content .vol-col .col-label, .portfolio-result-content .vol-col .col-label {
    font-size: 14.5px;
    font-weight: 900;
    color: #2c8c8c;
    letter-spacing: .04em;
    margin-bottom: 10px;
    text-align: center;
  }
.portfolio-measure-content .vol-row, .portfolio-result-content .vol-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 13px;
    line-height: 1.55;
    padding: 3px 0;
    border-bottom: 1px dotted #e0e0e0;
  }
.portfolio-measure-content .vol-row:last-child, .portfolio-result-content .vol-row:last-child { border-bottom: none; }
.portfolio-measure-content .vol-row .vol-name, .portfolio-result-content .vol-row .vol-name { color: #444; }
.portfolio-measure-content .vol-row .vol-num, .portfolio-result-content .vol-row .vol-num {
    font-weight: 900;
    color: #2c8c8c;
    font-size: 14.5px;
  }
.portfolio-measure-content .vol-row .vol-num small, .portfolio-result-content .vol-row .vol-num small {
    font-size: 11px;
    font-weight: 700;
    margin-left: 1px;
  }
.portfolio-measure-content .vol-arrow, .portfolio-result-content .vol-arrow {
    align-self: center;
    color: #2c8c8c;
    font-weight: 900;
    font-size: 20px;
    line-height: 1;
  }
.portfolio-measure-content .vol-branch, .portfolio-result-content .vol-branch {
    text-align: center;
  }
.portfolio-measure-content .vol-branch .branch-tag, .portfolio-result-content .vol-branch .branch-tag {
    display: inline-block;
    background: #fff;
    border: 1px solid #2c8c8c;
    color: #2c8c8c;
    font-size: 14px;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: 999px;
    margin: 3px 2px;
  }
.portfolio-measure-content .vol-branch .branch-note, .portfolio-result-content .vol-branch .branch-note {
    font-size: 11.5px;
    color: #555;
    margin-top: 8px;
    line-height: 1.55;
  }
.portfolio-measure-content .vol-result, .portfolio-result-content .vol-result {
    background: #fdecea;
    color: #c0392b;
    text-align: center;
    border-radius: 4px;
    padding: 10px 8px;
    border: 1px solid #e74c3c;
  }
.portfolio-measure-content .vol-result .result-num, .portfolio-result-content .vol-result .result-num {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.1;
    display: block;
    color: #c0392b;
  }
.portfolio-measure-content .vol-result .result-num small, .portfolio-result-content .vol-result .result-num small {
    font-size: 11px;
    font-weight: 700;
  }
.portfolio-measure-content .vol-result .result-label, .portfolio-result-content .vol-result .result-label {
    font-size: 10.5px;
    font-weight: 700;
    margin-top: 4px;
    letter-spacing: .03em;
    color: #c0392b;
  }
.portfolio-measure-content 
  .funnel-diagram, .portfolio-result-content 
  .funnel-diagram {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 14px 0 4px;
  }
.portfolio-measure-content .funnel-col, .portfolio-result-content .funnel-col {
    background: #fff;
    border: 1px solid #d4d4d4;
    border-radius: 4px;
    padding: 12px 14px 14px;
  }
.portfolio-measure-content .funnel-col.primary, .portfolio-result-content .funnel-col.primary { border-top: 3px solid #2c8c8c; }
.portfolio-measure-content .funnel-col.secondary, .portfolio-result-content .funnel-col.secondary { border-top: 3px solid #2c8c8c; border-style: solid; }
.portfolio-measure-content .funnel-col .funnel-label, .portfolio-result-content .funnel-col .funnel-label {
    font-size: 13.5px;
    font-weight: 900;
    color: #2c8c8c;
    letter-spacing: .04em;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
  }
.portfolio-measure-content .funnel-col.secondary .funnel-label::before, .portfolio-result-content .funnel-col.secondary .funnel-label::before {
    content: '＋';
    display: inline-block;
    width: 18px;
    height: 18px;
    line-height: 16px;
    text-align: center;
    border: 1px solid #2c8c8c;
    border-radius: 50%;
    color: #2c8c8c;
    font-size: 13px;
    font-weight: 900;
  }
.portfolio-measure-content .funnel-step, .portfolio-result-content .funnel-step {
    background: #f7f7f7;
    border-radius: 3px;
    padding: 6px 10px;
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
    margin-bottom: 4px;
  }
.portfolio-measure-content .funnel-step .step-num, .portfolio-result-content .funnel-step .step-num {
    font-weight: 900;
    color: #222;
    font-size: 15px;
  }
.portfolio-measure-content .funnel-arrow-v, .portfolio-result-content .funnel-arrow-v {
    text-align: center;
    color: #2c8c8c;
    font-weight: 900;
    font-size: 14px;
    line-height: 1;
    margin: 2px 0;
  }
.portfolio-measure-content .funnel-result, .portfolio-result-content .funnel-result {
    background: #e8f3f3;
    color: #1f6e6e;
    text-align: center;
    border-radius: 3px;
    padding: 9px 8px;
    margin-top: 6px;
    border: 1px solid #2c8c8c;
  }
.portfolio-measure-content .funnel-result .fr-num, .portfolio-result-content .funnel-result .fr-num {
    font-size: 20px;
    font-weight: 900;
    line-height: 1.1;
    display: block;
    color: #1f6e6e;
  }
.portfolio-measure-content .funnel-result .fr-num small, .portfolio-result-content .funnel-result .fr-num small {
    font-size: 11px;
    font-weight: 700;
  }
.portfolio-measure-content .funnel-result .fr-label, .portfolio-result-content .funnel-result .fr-label {
    font-size: 10.5px;
    font-weight: 700;
    margin-top: 3px;
    color: #1f6e6e;
  }
.portfolio-measure-content .funnel-col.primary .funnel-result, .portfolio-result-content .funnel-col.primary .funnel-result,.portfolio-measure-content .funnel-col.secondary .funnel-result, .portfolio-result-content .funnel-col.secondary .funnel-result {
    background: #fdecea;
    color: #c0392b;
    border-color: #e74c3c;
  }
.portfolio-measure-content .funnel-col.primary .funnel-result .fr-num, .portfolio-result-content .funnel-col.primary .funnel-result .fr-num,.portfolio-measure-content .funnel-col.primary .funnel-result .fr-label, .portfolio-result-content .funnel-col.primary .funnel-result .fr-label,.portfolio-measure-content .funnel-col.secondary .funnel-result .fr-num, .portfolio-result-content .funnel-col.secondary .funnel-result .fr-num,.portfolio-measure-content .funnel-col.secondary .funnel-result .fr-label, .portfolio-result-content .funnel-col.secondary .funnel-result .fr-label {
    color: #c0392b;
  }
.portfolio-measure-content .funnel-foot, .portfolio-result-content .funnel-foot {
    margin-top: 8px;
    padding: 6px 10px;
    border: 1px dashed #2c8c8c;
    border-radius: 3px;
    font-size: 10.5px;
    line-height: 1.5;
    color: #444;
    text-align: center;
    background: #fafdfd;
  }
.portfolio-measure-content .funnel-foot strong, .portfolio-result-content .funnel-foot strong { color: #c0392b; }
.portfolio-measure-content .screenshot-wide, .portfolio-result-content .screenshot-wide { width: 85%; margin: 10px auto 0; display: block; border-radius: 4px; }
.portfolio-measure-content .screenshot-caption, .portfolio-result-content .screenshot-caption { text-align: center; font-size: 12px; color: #666; margin-top: 6px; font-weight: 500; }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image { display: flex; gap: 18px; align-items: center; }
.portfolio-measure-content .content-with-image .content-text, .portfolio-result-content .content-with-image .content-text { flex: 1; }
.portfolio-measure-content .content-with-image .content-text p, .portfolio-result-content .content-with-image .content-text p { margin-bottom: 0; }
.portfolio-measure-content .content-with-image .content-visual, .portfolio-result-content .content-with-image .content-visual { flex-shrink: 0; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.portfolio-measure-content .kpi-donut, .portfolio-result-content .kpi-donut { width: 130px; height: 130px; border-radius: 50%; background: conic-gradient(#2c8c8c 0% 20%, #d8e0e0 20% 100%); position: relative; }
.portfolio-measure-content .kpi-donut::before, .portfolio-result-content .kpi-donut::before { content: ''; position: absolute; inset: 18px; background: #f5f5f5; border-radius: 50%; }
.portfolio-measure-content .kpi-donut .kpi-label, .portfolio-result-content .kpi-donut .kpi-label { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 1; }
.portfolio-measure-content .kpi-donut .kpi-pct, .portfolio-result-content .kpi-donut .kpi-pct { font-size: 30px; font-weight: 900; color: #2c8c8c; line-height: 1; letter-spacing: -0.02em; }
.portfolio-measure-content .kpi-donut .kpi-pct .kpi-plus, .portfolio-result-content .kpi-donut .kpi-pct .kpi-plus { font-size: 16px; font-weight: 900; }
.portfolio-measure-content .kpi-donut .kpi-cap, .portfolio-result-content .kpi-donut .kpi-cap { font-size: 10px; color: #555; margin-top: 4px; font-weight: 700; }
.portfolio-measure-content .kpi-donut-caption, .portfolio-result-content .kpi-donut-caption { font-size: 11px; color: #666; font-weight: 500; text-align: center; line-height: 1.4; }
.portfolio-measure-content .sub-heading-alt, .portfolio-result-content .sub-heading-alt { font-size: 18px; font-weight: 900; color: #2c8c8c; padding: 0 0 5px; border-bottom: 2px dotted #aaddd0; margin-bottom: 10px; line-height: 1.5; }
.portfolio-measure-content .gray-box .sub-heading-alt:not(:first-child), .portfolio-result-content .gray-box .sub-heading-alt:not(:first-child) { margin-top: 16px; }
.portfolio-measure-content .result-box, .portfolio-result-content .result-box { background: #f5f5f5; padding: 14px 24px; margin-bottom: 0; }
.portfolio-measure-content .content-with-image .content-image, .portfolio-result-content .content-with-image .content-image { flex: 0 0 240px; }
.portfolio-measure-content .content-with-image .content-image img, .portfolio-result-content .content-with-image .content-image img { width: 100%; height: auto; border-radius: 4px; }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 3px;
  }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image {
    display: flex;
    gap: 16px;
    align-items: flex-start;
  }
.portfolio-measure-content .content-with-image .content-text p, .portfolio-result-content .content-with-image .content-text p { margin-bottom: 10px; }
.portfolio-measure-content .content-with-image .content-text p:last-child, .portfolio-result-content .content-with-image .content-text p:last-child { margin-bottom: 0; }
.portfolio-measure-content .content-with-image .content-image, .portfolio-result-content .content-with-image .content-image {
    flex: 0 0 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
.portfolio-measure-content .content-with-image .content-image img, .portfolio-result-content .content-with-image .content-image img {
    width: 100%;
    border-radius: 4px;
    display: block;
  }
.portfolio-measure-content .content-with-image .screenshot-caption, .portfolio-result-content .content-with-image .screenshot-caption {
    text-align: center;
    font-size: 11px;
    color: #666;
    margin-top: 4px;
    font-weight: 500;
    line-height: 1.4;
  }
.portfolio-measure-content .result-box .bullet-item, .portfolio-result-content .result-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 6px;
    font-size: 15px;
    line-height: 1.75;
  }
.portfolio-measure-content .result-box .bullet-item::before, .portfolio-result-content .result-box .bullet-item::before { content: '・'; }
.portfolio-measure-content .result-box .bullet-item:last-child, .portfolio-result-content .result-box .bullet-item:last-child { margin-bottom: 0; }
.portfolio-measure-content .full-width-image, .portfolio-result-content .full-width-image { width: 85%; height: auto; display: block; margin: 12px auto 6px; border-radius: 4px; }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 8px;
  }
.portfolio-measure-content 
  .kpi-chart, .portfolio-result-content 
  .kpi-chart {
    display: flex;
    gap: 24px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 16px 20px;
    margin-top: 12px;
  }
.portfolio-measure-content .kpi-chart-item, .portfolio-result-content .kpi-chart-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
.portfolio-measure-content .kpi-chart-label, .portfolio-result-content .kpi-chart-label {
    font-size: 13px;
    font-weight: 700;
    color: #333;
    border-left: 3px solid #2c8c8c;
    padding-left: 8px;
    line-height: 1.3;
  }
.portfolio-measure-content .kpi-chart-row, .portfolio-result-content .kpi-chart-row {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
  }
.portfolio-measure-content .kpi-chart-tag, .portfolio-result-content .kpi-chart-tag {
    width: 44px;
    color: #666;
    font-weight: 500;
    flex-shrink: 0;
  }
.portfolio-measure-content .kpi-chart-bar, .portfolio-result-content .kpi-chart-bar {
    flex: 1;
    height: 28px;
    background: #f0f0f0;
    border-radius: 3px;
    overflow: hidden;
    position: relative;
  }
.portfolio-measure-content .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-bar-fill {
    height: 100%;
    background: #c9dcdc;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 10px;
    font-size: 12px;
    font-weight: 700;
    color: #333;
  }
.portfolio-measure-content .kpi-chart-bar.is-after .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-bar.is-after .kpi-chart-bar-fill {
    background: #2c8c8c;
    color: #fff;
  }
.portfolio-measure-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong, .portfolio-result-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong {
    font-size: 16px;
    margin-right: 2px;
  }
.portfolio-measure-content .result-box p, .portfolio-result-content .result-box p {
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 8px;
  }
.portfolio-measure-content 
  .screenshot-wide, .portfolio-result-content 
  .screenshot-wide {
    width: 78%;
    margin: 10px auto 0;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content 
  .kpi-stats, .portfolio-result-content 
  .kpi-stats {
    display: flex;
    gap: 12px;
    margin-top: 14px;
  }
.portfolio-measure-content .kpi-stat, .portfolio-result-content .kpi-stat {
    flex: 1;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-top: 4px solid #2c8c8c;
    border-radius: 4px;
    padding: 14px 10px 12px;
    text-align: center;
  }
.portfolio-measure-content .kpi-stat-value, .portfolio-result-content .kpi-stat-value {
    font-size: 36px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    letter-spacing: -0.02em;
  }
.portfolio-measure-content .kpi-stat-unit, .portfolio-result-content .kpi-stat-unit {
    font-size: 18px;
    font-weight: 700;
    margin-left: 2px;
  }
.portfolio-measure-content .kpi-stat-label, .portfolio-result-content .kpi-stat-label {
    font-size: 11px;
    font-weight: 700;
    color: #555;
    margin-top: 8px;
    line-height: 1.4;
  }
.portfolio-measure-content .kpi-stat-delta, .portfolio-result-content .kpi-stat-delta {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    color: #2c8c8c;
    margin-top: 4px;
    padding: 1px 6px;
    border: 1px solid #2c8c8c;
    border-radius: 2px;
  }
.portfolio-measure-content 
  .sub-heading-alt, .portfolio-result-content 
  .sub-heading-alt {
    font-size: 18px;
    font-weight: 900;
    color: #2c8c8c;
    padding: 0 0 5px;
    border-bottom: 2px dotted #aaddd0;
    margin-bottom: 14px;
    line-height: 1.5;
  }
.portfolio-measure-content 
  .pattern-compare, .portfolio-result-content 
  .pattern-compare {
    display: flex;
    gap: 8px;
    margin: 14px 0 6px;
  }
.portfolio-measure-content .pattern-card, .portfolio-result-content .pattern-card {
    flex: 1;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-top: 3px solid #2c8c8c;
    border-radius: 3px;
    padding: 10px 10px 12px;
  }
.portfolio-measure-content .pattern-card .pattern-label, .portfolio-result-content .pattern-card .pattern-label {
    font-size: 11px;
    font-weight: 700;
    color: #2c8c8c;
    margin-bottom: 2px;
  }
.portfolio-measure-content .pattern-card .pattern-name, .portfolio-result-content .pattern-card .pattern-name {
    font-size: 14px;
    font-weight: 900;
    margin-bottom: 8px;
    line-height: 1.35;
  }
.portfolio-measure-content .pattern-card .pattern-flow, .portfolio-result-content .pattern-card .pattern-flow {
    font-size: 11px;
    line-height: 1.6;
    color: #444;
  }
.portfolio-measure-content .pattern-card .pattern-badge, .portfolio-result-content .pattern-card .pattern-badge {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    margin-top: 6px;
    padding: 1px 6px;
    border-radius: 2px;
  }
.portfolio-measure-content .pattern-card .badge-manual, .portfolio-result-content .pattern-card .badge-manual { color: #c0392b; background: #fdecea; }
.portfolio-measure-content .pattern-card .badge-auto, .portfolio-result-content .pattern-card .badge-auto { color: #2c8c8c; background: #e6f4f1; }
.portfolio-measure-content .pattern-card .badge-simple, .portfolio-result-content .pattern-card .badge-simple { color: #b7791f; background: #fff4de; }
.portfolio-measure-content 
  .timeline, .portfolio-result-content 
  .timeline {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 6px;
    margin: 12px 0 4px;
  }
.portfolio-measure-content .timeline-step, .portfolio-result-content .timeline-step {
    flex: 1;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 3px;
    padding: 8px 6px;
    text-align: center;
    position: relative;
  }
.portfolio-measure-content .timeline-step + .timeline-step::before, .portfolio-result-content .timeline-step + .timeline-step::before {
    content: '→';
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    color: #2c8c8c;
    font-weight: 900;
    font-size: 14px;
  }
.portfolio-measure-content .timeline-step .tl-when, .portfolio-result-content .timeline-step .tl-when {
    font-size: 11px;
    font-weight: 900;
    color: #2c8c8c;
    margin-bottom: 3px;
  }
.portfolio-measure-content .timeline-step .tl-what, .portfolio-result-content .timeline-step .tl-what {
    font-size: 10px;
    line-height: 1.4;
    color: #444;
  }
.portfolio-measure-content 
  .text-image-row, .portfolio-result-content 
  .text-image-row {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 8px;
  }
.portfolio-measure-content .text-image-row .text-col, .portfolio-result-content .text-image-row .text-col {
    flex: 1 1 auto;
    min-width: 0;
  }
.portfolio-measure-content .text-image-row .image-col, .portfolio-result-content .text-image-row .image-col {
    flex: 0 0 36%;
  }
.portfolio-measure-content 
  .text-image-float::after, .portfolio-result-content 
  .text-image-float::after {
    content: '';
    display: block;
    clear: both;
  }
.portfolio-measure-content .text-image-float .float-image-wrap, .portfolio-result-content .text-image-float .float-image-wrap {
    float: right;
    width: 46%;
    margin: 2px 0 6px 14px;
  }
.portfolio-measure-content .text-image-float .float-image-wrap img, .portfolio-result-content .text-image-float .float-image-wrap img {
    width: 100%;
    display: block;
  }
.portfolio-measure-content .text-image-float .float-image-wrap .screenshot-caption, .portfolio-result-content .text-image-float .float-image-wrap .screenshot-caption {
    margin-top: 4px;
  }
.portfolio-measure-content .text-image-float p, .portfolio-result-content .text-image-float p {
    margin: 0;
  }
.portfolio-measure-content .text-image-row .image-col img, .portfolio-result-content .text-image-row .image-col img {
    width: 100%;
    display: block;
    margin: 0;
  }
.portfolio-measure-content .text-image-row .image-col .screenshot-caption, .portfolio-result-content .text-image-row .image-col .screenshot-caption {
    margin-top: 4px;
  }
.portfolio-measure-content 
  .richmenu-tabs, .portfolio-result-content 
  .richmenu-tabs {
    display: flex;
    gap: 8px;
    margin: 12px 0 4px;
  }
.portfolio-measure-content .richmenu-tab, .portfolio-result-content .richmenu-tab {
    flex: 1;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-top: 3px solid #2c8c8c;
    border-radius: 3px;
    padding: 10px;
  }
.portfolio-measure-content .richmenu-tab .tab-name, .portfolio-result-content .richmenu-tab .tab-name {
    font-size: 13px;
    font-weight: 900;
    color: #2c8c8c;
    margin-bottom: 6px;
    padding-bottom: 4px;
    border-bottom: 1px dotted #ccc;
  }
.portfolio-measure-content .richmenu-tab .tab-items, .portfolio-result-content .richmenu-tab .tab-items {
    font-size: 11px;
    line-height: 1.55;
    color: #444;
  }
.portfolio-measure-content 
  .page2-header, .portfolio-result-content 
  .page2-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #2c8c8c;
  }
.portfolio-measure-content 
  .kpi-stats, .portfolio-result-content 
  .kpi-stats {
    display: flex;
    gap: 12px;
    margin-top: 14px;
  }
.portfolio-measure-content 
  .screenshot-caption, .portfolio-result-content 
  .screenshot-caption {
    font-size: 12px;
    line-height: 1.5;
    color: #666;
    margin-top: 6px;
  }
.portfolio-measure-content 
  .kpi-stats, .portfolio-result-content 
  .kpi-stats {
    display: flex;
    gap: 16px;
    margin-top: 12px;
  }
.portfolio-measure-content .kpi-stat, .portfolio-result-content .kpi-stat {
    flex: 1;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-top: 4px solid #2c8c8c;
    border-radius: 4px;
    padding: 16px 12px 14px;
    text-align: center;
  }
.portfolio-measure-content .kpi-stat-value, .portfolio-result-content .kpi-stat-value {
    font-size: 40px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    letter-spacing: -0.02em;
  }
.portfolio-measure-content .kpi-stat-unit, .portfolio-result-content .kpi-stat-unit {
    font-size: 22px;
    font-weight: 700;
    margin-left: 2px;
  }
.portfolio-measure-content .kpi-stat-label, .portfolio-result-content .kpi-stat-label {
    font-size: 12px;
    font-weight: 700;
    color: #555;
    margin-top: 8px;
    line-height: 1.4;
  }
.portfolio-measure-content .kpi-stat-delta, .portfolio-result-content .kpi-stat-delta {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: #2c8c8c;
    margin-top: 4px;
    padding: 1px 6px;
    border: 1px solid #2c8c8c;
    border-radius: 2px;
  }
.portfolio-measure-content 
  .mockup-row, .portfolio-result-content 
  .mockup-row {
    display: flex;
    gap: 32px;
    margin: 10px 0 4px;
    align-items: flex-start;
    justify-content: center;
  }
.portfolio-measure-content .mockup-col, .portfolio-result-content .mockup-col {
    flex: 0 0 22%;
    max-width: 22%;
    text-align: center;
  }
.portfolio-measure-content .mockup-col img, .portfolio-result-content .mockup-col img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content .mockup-col .caption, .portfolio-result-content .mockup-col .caption {
    font-size: 11px;
    color: #666;
    margin-top: 4px;
    line-height: 1.4;
    text-align: center;
  }
.portfolio-measure-content .inline-figure, .portfolio-result-content .inline-figure {
    margin: 8px 0 2px;
    text-align: center;
  }
.portfolio-measure-content .inline-figure img, .portfolio-result-content .inline-figure img {
    width: 100%;
    height: auto;
    display: block;
  }
.portfolio-measure-content .inline-figure .caption, .portfolio-result-content .inline-figure .caption {
    font-size: 11px;
    color: #666;
    margin-top: 2px;
    text-align: left;
  }
.portfolio-measure-content 
  .story-row, .portfolio-result-content 
  .story-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 8px 0;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-left: 4px solid #2c8c8c;
    border-radius: 2px;
  }
.portfolio-measure-content .story-num, .portfolio-result-content .story-num {
    flex: 0 0 auto;
    font-size: 38px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    letter-spacing: -0.02em;
  }
.portfolio-measure-content .story-num .story-unit, .portfolio-result-content .story-num .story-unit {
    font-size: 18px;
    font-weight: 700;
    margin-left: 1px;
  }
.portfolio-measure-content .story-text, .portfolio-result-content .story-text {
    flex: 1;
    font-size: 14px;
    line-height: 1.65;
    color: #333;
  }
.portfolio-measure-content .story-label, .portfolio-result-content .story-label {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #2c8c8c;
    margin-bottom: 4px;
  }
.portfolio-measure-content .story-images-inline, .portfolio-result-content .story-images-inline {
    flex: 0 0 auto;
    display: flex;
    gap: 10px;
    align-items: flex-start;
  }
.portfolio-measure-content .story-images-inline figure, .portfolio-result-content .story-images-inline figure {
    width: 115px;
    margin: 0;
    text-align: center;
  }
.portfolio-measure-content .story-images-inline img, .portfolio-result-content .story-images-inline img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 3px;
    border: 1px solid #e0e0e0;
  }
.portfolio-measure-content .story-images-inline figcaption, .portfolio-result-content .story-images-inline figcaption {
    font-size: 10.5px;
    color: #666;
    margin-top: 4px;
    line-height: 1.3;
  }
.portfolio-measure-content 
  .benchmark-chart, .portfolio-result-content 
  .benchmark-chart {
    margin: 12px 0 4px;
    padding: 12px 16px 10px;
    background: #fff;
    border: 1px solid #d8e6e0;
    border-radius: 4px;
  }
.portfolio-measure-content .bc-title, .portfolio-result-content .bc-title {
    font-size: 13px;
    font-weight: 700;
    color: #2c8c8c;
    margin-bottom: 10px;
  }
.portfolio-measure-content .bc-row, .portfolio-result-content .bc-row {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
    font-size: 12px;
  }
.portfolio-measure-content .bc-label, .portfolio-result-content .bc-label {
    flex: 0 0 200px;
    color: #444;
    font-weight: 500;
    line-height: 1.3;
    padding-right: 10px;
  }
.portfolio-measure-content .bc-row.bc-highlight .bc-label, .portfolio-result-content .bc-row.bc-highlight .bc-label {
    color: #2c8c8c;
    font-weight: 700;
  }
.portfolio-measure-content .bc-row.bc-best .bc-label, .portfolio-result-content .bc-row.bc-best .bc-label {
    color: #c0392b;
    font-weight: 700;
  }
.portfolio-measure-content .bc-bar-wrap, .portfolio-result-content .bc-bar-wrap {
    flex: 1;
    height: 18px;
    background: #f0f0f0;
    border-radius: 2px;
    position: relative;
  }
.portfolio-measure-content .bc-bar, .portfolio-result-content .bc-bar {
    height: 100%;
    border-radius: 2px;
    background: #b8b8b8;
  }
.portfolio-measure-content .bc-row.bc-highlight .bc-bar, .portfolio-result-content .bc-row.bc-highlight .bc-bar { background: #2c8c8c; }
.portfolio-measure-content .bc-value, .portfolio-result-content .bc-value {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -54px;
    font-size: 12px;
    font-weight: 700;
    color: #333;
    white-space: nowrap;
  }
.portfolio-measure-content .bc-row.bc-highlight .bc-value, .portfolio-result-content .bc-row.bc-highlight .bc-value { color: #2c8c8c; }
.portfolio-measure-content .bc-bar-wrap-outer, .portfolio-result-content .bc-bar-wrap-outer {
    flex: 1;
    position: relative;
    padding-right: 56px;
  }
.portfolio-measure-content .bc-source, .portfolio-result-content .bc-source {
    font-size: 10px;
    color: #888;
    margin-top: 8px;
    line-height: 1.4;
  }
.portfolio-measure-content .period-note, .portfolio-result-content .period-note {
    font-size: 12px;
    font-weight: 500;
    color: #666;
    margin-bottom: 14px;
    padding-left: 18px;
    border-left: 3px solid #aaddd0;
  }
.portfolio-measure-content .kpi-stat-value, .portfolio-result-content .kpi-stat-value {
    font-size: 38px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    letter-spacing: -0.02em;
  }
.portfolio-measure-content .kpi-stat-unit, .portfolio-result-content .kpi-stat-unit {
    font-size: 20px;
    font-weight: 700;
    margin-left: 2px;
  }
.portfolio-measure-content 
  .kpi-pie, .portfolio-result-content 
  .kpi-pie {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-top: 12px;
    padding: 16px 22px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
  }
.portfolio-measure-content .pie-wrap, .portfolio-result-content .pie-wrap {
    position: relative;
    width: 150px;
    height: 150px;
    flex-shrink: 0;
  }
.portfolio-measure-content .pie-chart, .portfolio-result-content .pie-chart {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: conic-gradient(
      #2c8c8c 0 72.4%,
      #88bcbc 72.4% 88.8%,
      #c9dcdc 88.8% 96.4%,
      #e74c3c 96.4% 100%
    );
  }
.portfolio-measure-content .pie-hole, .portfolio-result-content .pie-hole {
    position: absolute;
    inset: 26%;
    background: #fff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
.portfolio-measure-content .pie-hole-num, .portfolio-result-content .pie-hole-num {
    font-size: 22px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    letter-spacing: -0.02em;
  }
.portfolio-measure-content .pie-hole-num .unit, .portfolio-result-content .pie-hole-num .unit {
    font-size: 12px;
    font-weight: 700;
    margin-left: 1px;
  }
.portfolio-measure-content .pie-hole-label, .portfolio-result-content .pie-hole-label {
    font-size: 11px;
    color: #666;
    margin-top: 4px;
    line-height: 1.2;
  }
.portfolio-measure-content .pie-legend, .portfolio-result-content .pie-legend {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 9px;
    font-size: 15px;
  }
.portfolio-measure-content .pie-legend-item, .portfolio-result-content .pie-legend-item {
    display: flex;
    align-items: center;
    gap: 12px;
  }
.portfolio-measure-content .pie-legend-swatch, .portfolio-result-content .pie-legend-swatch {
    width: 18px;
    height: 18px;
    border-radius: 3px;
    flex-shrink: 0;
  }
.portfolio-measure-content .pie-legend-label, .portfolio-result-content .pie-legend-label {
    flex: 1;
    color: #333;
    font-weight: 500;
  }
.portfolio-measure-content .pie-legend-num, .portfolio-result-content .pie-legend-num {
    font-weight: 700;
    color: #333;
    font-size: 14px;
  }
.portfolio-measure-content .pie-legend-item.is-core .pie-legend-label, .portfolio-result-content .pie-legend-item.is-core .pie-legend-label,.portfolio-measure-content .pie-legend-item.is-core .pie-legend-num, .portfolio-result-content .pie-legend-item.is-core .pie-legend-num {
    color: #2c8c8c;
    font-weight: 700;
  }
.portfolio-measure-content .pie-legend-item.is-vip .pie-legend-label, .portfolio-result-content .pie-legend-item.is-vip .pie-legend-label,.portfolio-measure-content .pie-legend-item.is-vip .pie-legend-num, .portfolio-result-content .pie-legend-item.is-vip .pie-legend-num {
    color: #c0392b;
    font-weight: 700;
  }
.portfolio-measure-content .pie-legend-source, .portfolio-result-content .pie-legend-source {
    font-size: 11.5px;
    color: #888;
    margin-top: 8px;
    line-height: 1.5;
  }
.portfolio-measure-content .kpi-chart-tag, .portfolio-result-content .kpi-chart-tag {
    width: 60px;
    color: #666;
    font-weight: 500;
    flex-shrink: 0;
  }
.portfolio-measure-content .kpi-chart-bar, .portfolio-result-content .kpi-chart-bar {
    flex: 1;
    height: 24px;
    background: #f0f0f0;
    border-radius: 3px;
    overflow: hidden;
    position: relative;
  }
.portfolio-measure-content .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-bar-fill {
    height: 100%;
    background: #c9dcdc;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #333;
  }
.portfolio-measure-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong, .portfolio-result-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong {
    font-size: 15px;
    margin-right: 2px;
  }
.portfolio-measure-content 
  .perk-hero, .portfolio-result-content 
  .perk-hero {
    display: block;
    width: 78%;
    margin: 8px auto 10px;
    border-radius: 4px;
  }
.portfolio-measure-content .screenshot-caption, .portfolio-result-content .screenshot-caption {
    text-align: center;
    font-size: 11px;
    color: #666;
    margin-top: 4px;
    font-weight: 500;
  }
.portfolio-measure-content 
  .content-with-image, .portfolio-result-content 
  .content-with-image {
    display: flex;
    gap: 18px;
    align-items: flex-start;
  }
.portfolio-measure-content .content-with-image .content-text, .portfolio-result-content .content-with-image .content-text {
    flex: 1;
  }
.portfolio-measure-content .content-with-image .content-text p, .portfolio-result-content .content-with-image .content-text p {
    margin-bottom: 10px;
  }
.portfolio-measure-content .content-with-image .content-text p:last-child, .portfolio-result-content .content-with-image .content-text p:last-child {
    margin-bottom: 0;
  }
.portfolio-measure-content .content-with-image .content-image, .portfolio-result-content .content-with-image .content-image {
    flex: 0 0 130px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
  }
.portfolio-measure-content .content-with-image .image-caption, .portfolio-result-content .content-with-image .image-caption {
    font-size: 10.5px;
    color: #666;
    text-align: center;
    line-height: 1.4;
  }
.portfolio-measure-content 
  .perk-grid, .portfolio-result-content 
  .perk-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 14px;
    margin-top: 10px;
  }
.portfolio-measure-content .perk-item, .portfolio-result-content .perk-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #fff;
    border: 1px solid #d8e6e0;
    border-radius: 3px;
    padding: 8px 12px;
  }
.portfolio-measure-content .perk-num, .portfolio-result-content .perk-num {
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #2c8c8c;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
  }
.portfolio-measure-content .perk-text, .portfolio-result-content .perk-text {
    flex: 1;
    font-size: 13.5px;
    line-height: 1.45;
    color: #333;
  }
.portfolio-measure-content .perk-text .perk-name, .portfolio-result-content .perk-text .perk-name {
    font-weight: 700;
    font-size: 14.5px;
    color: #2c8c8c;
    display: block;
    margin-bottom: 2px;
  }
.portfolio-measure-content .perk-text .perk-tag, .portfolio-result-content .perk-text .perk-tag {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: #c0392b;
    border: 1px solid #c0392b;
    border-radius: 2px;
    padding: 0 5px;
    margin-left: 4px;
    vertical-align: middle;
  }
.portfolio-measure-content 
  .kpi-transition, .portfolio-result-content 
  .kpi-transition {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 14px 18px;
    margin-top: 12px;
  }
.portfolio-measure-content .kpi-transition-item, .portfolio-result-content .kpi-transition-item {
    display: flex;
    align-items: center;
    gap: 14px;
  }
.portfolio-measure-content .kpi-transition-label, .portfolio-result-content .kpi-transition-label {
    width: 150px;
    font-size: 13px;
    font-weight: 700;
    color: #333;
    border-left: 3px solid #2c8c8c;
    padding-left: 8px;
    line-height: 1.3;
    flex-shrink: 0;
  }
.portfolio-measure-content 
  .kpi-transition--inline, .portfolio-result-content 
  .kpi-transition--inline {
    padding: 10px 12px;
    margin-top: 8px;
  }
.portfolio-measure-content .kpi-transition--inline .kpi-transition-item, .portfolio-result-content .kpi-transition--inline .kpi-transition-item {
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
.portfolio-measure-content .kpi-transition-mini-label, .portfolio-result-content .kpi-transition-mini-label {
    font-size: 12px;
    font-weight: 700;
    color: #2c8c8c;
    border-left: 3px solid #2c8c8c;
    padding-left: 7px;
    line-height: 1.3;
  }
.portfolio-measure-content .kpi-transition-row, .portfolio-result-content .kpi-transition-row {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 12px;
  }
.portfolio-measure-content .kpi-transition-before, .portfolio-result-content .kpi-transition-before,.portfolio-measure-content .kpi-transition-after, .portfolio-result-content .kpi-transition-after {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 10px;
    border-radius: 3px;
  }
.portfolio-measure-content .kpi-transition-before, .portfolio-result-content .kpi-transition-before { background: #f5f5f5; }
.portfolio-measure-content .kpi-transition-after, .portfolio-result-content .kpi-transition-after { background: #2c8c8c; color: #fff; }
.portfolio-measure-content .kpi-transition-tag, .portfolio-result-content .kpi-transition-tag {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.05em;
    opacity: 0.8;
    margin-bottom: 2px;
  }
.portfolio-measure-content .kpi-transition-num, .portfolio-result-content .kpi-transition-num {
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
  }
.portfolio-measure-content .kpi-transition-num.is-text, .portfolio-result-content .kpi-transition-num.is-text {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
  }
.portfolio-measure-content .kpi-transition-num .unit, .portfolio-result-content .kpi-transition-num .unit {
    font-size: 12px;
    font-weight: 700;
    margin-left: 1px;
  }
.portfolio-measure-content .kpi-transition-arrow, .portfolio-result-content .kpi-transition-arrow {
    font-size: 22px;
    font-weight: 900;
    color: #2c8c8c;
    flex-shrink: 0;
  }
.portfolio-measure-content 
  .kpi-chart, .portfolio-result-content 
  .kpi-chart {
    display: flex;
    flex-direction: column;
    gap: 6px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 14px 18px;
    margin-top: 12px;
  }
.portfolio-measure-content .kpi-chart-title, .portfolio-result-content .kpi-chart-title {
    font-size: 13px;
    font-weight: 700;
    color: #2c8c8c;
    margin-bottom: 4px;
  }
.portfolio-measure-content .kpi-chart-tag, .portfolio-result-content .kpi-chart-tag {
    width: 110px;
    color: #444;
    font-weight: 600;
    flex-shrink: 0;
  }
.portfolio-measure-content .kpi-chart-bar, .portfolio-result-content .kpi-chart-bar {
    flex: 1;
    height: 22px;
    background: #f0f0f0;
    border-radius: 2px;
    overflow: hidden;
    position: relative;
  }
.portfolio-measure-content .kpi-chart-row.is-top .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-row.is-top .kpi-chart-bar-fill {
    background: #2c8c8c;
    color: #fff;
  }
.portfolio-measure-content .kpi-chart-source, .portfolio-result-content .kpi-chart-source {
    font-size: 10.5px;
    color: #888;
    margin-top: 6px;
    line-height: 1.4;
  }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image {
    display: flex;
    gap: 18px;
    align-items: flex-start;
  }
.portfolio-measure-content .content-text, .portfolio-result-content .content-text {
    flex: 1;
    min-width: 0;
  }
.portfolio-measure-content .content-image, .portfolio-result-content .content-image {
    flex: 0 0 160px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
.portfolio-measure-content .content-image img, .portfolio-result-content .content-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
  }
.portfolio-measure-content .content-image .screenshot-caption, .portfolio-result-content .content-image .screenshot-caption {
    text-align: center;
    font-size: 11px;
    color: #666;
    margin-top: 6px;
    font-weight: 500;
    line-height: 1.4;
  }
.portfolio-measure-content .screenshot-wide, .portfolio-result-content .screenshot-wide {
    width: 100%;
    margin-top: 10px;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content .gray-box::after, .portfolio-result-content .gray-box::after {
    content: '';
    display: block;
    clear: both;
  }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image {
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1.75;
  }
.portfolio-measure-content .content-with-image::after, .portfolio-result-content .content-with-image::after {
    content: '';
    display: block;
    clear: both;
  }
.portfolio-measure-content .content-with-image .content-image, .portfolio-result-content .content-with-image .content-image {
    float: right;
    width: 280px;
    margin: 0 0 6px 16px;
  }
.portfolio-measure-content .content-with-image .content-image.is-card, .portfolio-result-content .content-with-image .content-image.is-card {
    width: 180px;
  }
.portfolio-measure-content .content-with-image .content-image.is-wide, .portfolio-result-content .content-with-image .content-image.is-wide {
    width: 360px;
  }
.portfolio-measure-content .content-with-image p:last-child, .portfolio-result-content .content-with-image p:last-child { margin-bottom: 0; }
.portfolio-measure-content .content-image img, .portfolio-result-content .content-image img {
    width: 100%;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content .image-block, .portfolio-result-content .image-block { margin-top: 8px; }
.portfolio-measure-content .image-block img, .portfolio-result-content .image-block img { display: block; margin: 0 auto; }
.portfolio-measure-content .image-block .screenshot-caption, .portfolio-result-content .image-block .screenshot-caption { text-align: center; font-size: 11px; color: #666; margin-top: 4px; font-weight: 500; }
.portfolio-measure-content .content-with-image, .portfolio-result-content .content-with-image { margin-bottom: 12px; font-size: 15px; line-height: 1.75; }
.portfolio-measure-content .content-with-image::after, .portfolio-result-content .content-with-image::after { content: ''; display: block; clear: both; }
.portfolio-measure-content .content-with-image .content-image, .portfolio-result-content .content-with-image .content-image { float: right; width: 400px; margin: 0 0 6px 16px; }
.portfolio-measure-content .content-with-image .content-image img, .portfolio-result-content .content-with-image .content-image img { width: 100%; display: block; border-radius: 4px; }
.portfolio-measure-content .content-with-image .screenshot-caption, .portfolio-result-content .content-with-image .screenshot-caption { text-align: center; font-size: 11px; color: #666; margin-top: 4px; font-weight: 500; }
.portfolio-measure-content 
  .page2-header, .portfolio-result-content 
  .page2-header { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 2px solid #2c8c8c; }
.portfolio-measure-content 
  .screenshot-wide, .portfolio-result-content 
  .screenshot-wide { width: 100%; margin-top: 12px; display: block; border-radius: 4px; }
.portfolio-measure-content .screenshot-medium, .portfolio-result-content .screenshot-medium { width: 85%; margin: 12px auto 0; display: block; border-radius: 4px; }
.portfolio-measure-content 
  .kpi-chart, .portfolio-result-content 
  .kpi-chart { display: flex; gap: 24px; background: #fff; border: 1px solid #e0e0e0; border-radius: 4px; padding: 14px 18px; margin-top: 12px; }
.portfolio-measure-content .kpi-chart-item, .portfolio-result-content .kpi-chart-item { flex: 1; display: flex; flex-direction: column; gap: 8px; }
.portfolio-measure-content .kpi-chart-label, .portfolio-result-content .kpi-chart-label { font-size: 13px; font-weight: 700; color: #333; border-left: 3px solid #2c8c8c; padding-left: 8px; line-height: 1.3; }
.portfolio-measure-content .kpi-chart-row, .portfolio-result-content .kpi-chart-row { display: flex; align-items: center; gap: 10px; font-size: 12px; }
.portfolio-measure-content .kpi-chart-tag, .portfolio-result-content .kpi-chart-tag { width: 56px; color: #666; font-weight: 500; flex-shrink: 0; }
.portfolio-measure-content .kpi-chart-bar, .portfolio-result-content .kpi-chart-bar { flex: 1; height: 24px; background: #f0f0f0; border-radius: 3px; overflow: hidden; position: relative; }
.portfolio-measure-content .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-bar-fill { height: 100%; background: #c9dcdc; display: flex; align-items: center; justify-content: flex-end; padding-right: 8px; font-size: 12px; font-weight: 700; color: #333; }
.portfolio-measure-content .kpi-chart-bar.is-after .kpi-chart-bar-fill, .portfolio-result-content .kpi-chart-bar.is-after .kpi-chart-bar-fill { background: #2c8c8c; color: #fff; }
.portfolio-measure-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong, .portfolio-result-content .kpi-chart-bar.is-after .kpi-chart-bar-fill strong { font-size: 14px; margin-right: 2px; }
.portfolio-measure-content .company-name, .portfolio-result-content .company-name { font-size: 26px; font-weight: 900; display: flex; align-items: center; gap: 12px; }
.portfolio-measure-content .company-name::before, .portfolio-result-content .company-name::before { content: ''; display: inline-block; width: 6px; height: 34px; background: #2c8c8c; border-radius: 2px; flex-shrink: 0; }
.portfolio-measure-content .churn-matrix, .portfolio-result-content .churn-matrix { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 12px 0 4px; padding: 10px 12px; background: #fff; border-radius: 3px; border: 1px solid #e0e0e0; }
.portfolio-measure-content .churn-col, .portfolio-result-content .churn-col { display: flex; flex-direction: column; gap: 4px; }
.portfolio-measure-content .churn-axis, .portfolio-result-content .churn-axis { font-size: 13px; font-weight: 900; color: #2c8c8c; text-align: center; padding-bottom: 4px; border-bottom: 1.5px solid #2c8c8c; margin-bottom: 3px; letter-spacing: .05em; }
.portfolio-measure-content .churn-seg, .portfolio-result-content .churn-seg { font-size: 12.5px; padding: 5px 6px; background: #fafafa; border: 1px solid #e0e0e0; border-radius: 2px; text-align: center; color: #888; line-height: 1.3; }
.portfolio-measure-content .churn-seg.risk, .portfolio-result-content .churn-seg.risk { background: #e74c3c; color: #fff; font-weight: 700; border-color: #e74c3c; position: relative; }
.portfolio-measure-content .churn-seg.risk::after, .portfolio-result-content .churn-seg.risk::after { content: '離脱層'; position: absolute; top: -7px; right: -4px; background: #2c8c8c; color: #fff; font-size: 9.5px; font-weight: 700; padding: 1px 5px; border-radius: 2px; line-height: 1.2; }
.portfolio-measure-content .split-image, .portfolio-result-content .split-image { display: block; width: 100%; margin: 14px auto 4px; border: 1px solid #e0e0e0; border-radius: 3px; }
.portfolio-measure-content .churn-image, .portfolio-result-content .churn-image { display: block; width: 100%; margin: 12px auto 4px; border: 1px solid #e0e0e0; border-radius: 3px; }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 6px;
    line-height: 1.6;
  }
.portfolio-measure-content 
  .screenshot-wide, .portfolio-result-content 
  .screenshot-wide {
    width: 85%;
    margin: 10px auto 0;
    display: block;
    border-radius: 4px;
  }
.portfolio-measure-content 
  .funnel-row, .portfolio-result-content 
  .funnel-row {
    display: flex;
    align-items: stretch;
    gap: 6px;
    margin: 10px 0 4px;
  }
.portfolio-measure-content .funnel-step, .portfolio-result-content .funnel-step {
    flex: 1;
    background: #fff;
    border: 1px solid #d8e6e0;
    border-top: 3px solid #2c8c8c;
    border-radius: 3px;
    padding: 8px 10px 9px;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
.portfolio-measure-content .funnel-step .funnel-tag, .portfolio-result-content .funnel-step .funnel-tag {
    font-size: 10px;
    font-weight: 700;
    color: #888;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
  }
.portfolio-measure-content .funnel-step .funnel-num, .portfolio-result-content .funnel-step .funnel-num {
    font-size: 22px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1.1;
    letter-spacing: -0.01em;
  }
.portfolio-measure-content .funnel-step .funnel-num .funnel-unit, .portfolio-result-content .funnel-step .funnel-num .funnel-unit {
    font-size: 13px;
    font-weight: 700;
    margin-left: 1px;
  }
.portfolio-measure-content .funnel-step .funnel-label, .portfolio-result-content .funnel-step .funnel-label {
    font-size: 11px;
    font-weight: 700;
    color: #333;
    margin-top: 3px;
    line-height: 1.35;
  }
.portfolio-measure-content .funnel-step.is-final, .portfolio-result-content .funnel-step.is-final {
    background: #2c8c8c;
    border-color: #2c8c8c;
    border-top-color: #1a6b6b;
  }
.portfolio-measure-content .funnel-step.is-final .funnel-tag, .portfolio-result-content .funnel-step.is-final .funnel-tag,.portfolio-measure-content .funnel-step.is-final .funnel-num, .portfolio-result-content .funnel-step.is-final .funnel-num,.portfolio-measure-content .funnel-step.is-final .funnel-label, .portfolio-result-content .funnel-step.is-final .funnel-label { color: #fff; }
.portfolio-measure-content .funnel-arrow, .portfolio-result-content .funnel-arrow {
    align-self: center;
    font-size: 16px;
    font-weight: 900;
    color: #2c8c8c;
    line-height: 1;
    flex-shrink: 0;
  }
.portfolio-measure-content 
  .diagram-title, .portfolio-result-content 
  .diagram-title {
    display: block;
    font-size: 15px;
    font-weight: 900;
    color: #2c8c8c;
    margin: 14px 0 8px;
    padding-left: 10px;
    border-left: 4px solid #2c8c8c;
    line-height: 1.4;
  }
.portfolio-measure-content 
  .conv-funnel, .portfolio-result-content 
  .conv-funnel {
    background: #fff;
    border: 1px solid #d8e6e0;
    border-radius: 4px;
    padding: 14px 18px 16px;
    margin: 4px 0 16px;
  }
.portfolio-measure-content .conv-row, .portfolio-result-content .conv-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px;
  }
.portfolio-measure-content .conv-row:last-of-type, .portfolio-result-content .conv-row:last-of-type { margin-bottom: 0; }
.portfolio-measure-content .conv-row-label, .portfolio-result-content .conv-row-label {
    flex: 0 0 90px;
    font-size: 13px;
    font-weight: 700;
    color: #444;
    text-align: right;
  }
.portfolio-measure-content .conv-bar-wrap, .portfolio-result-content .conv-bar-wrap {
    flex: 1;
    height: 32px;
    background: #f0f0f0;
    border-radius: 2px;
    position: relative;
    overflow: visible;
  }
.portfolio-measure-content .conv-bar, .portfolio-result-content .conv-bar {
    height: 100%;
    background: #2c8c8c;
    border-radius: 2px;
    display: flex;
    align-items: center;
    padding-left: 12px;
    font-size: 14px;
    font-weight: 900;
    color: #fff;
    white-space: nowrap;
  }
.portfolio-measure-content .conv-bar.is-thin, .portfolio-result-content .conv-bar.is-thin {
    color: transparent;
  }
.portfolio-measure-content .conv-bar.is-thin::after, .portfolio-result-content .conv-bar.is-thin::after {
    content: attr(data-value);
    position: absolute;
    left: calc(var(--bar-width, 0%) + 8px);
    top: 50%;
    transform: translateY(-50%);
    color: #2c8c8c;
    font-size: 14px;
    font-weight: 900;
  }
.portfolio-measure-content .conv-bar.is-accent, .portfolio-result-content .conv-bar.is-accent { background: #e74c3c; }
.portfolio-measure-content .conv-bar.is-accent.is-thin::after, .portfolio-result-content .conv-bar.is-accent.is-thin::after { color: #c0392b; }
.portfolio-measure-content .conv-row.is-accent .conv-row-label, .portfolio-result-content .conv-row.is-accent .conv-row-label { color: #c0392b; }
.portfolio-measure-content .conv-row.is-accent .conv-rate, .portfolio-result-content .conv-row.is-accent .conv-rate { color: #c0392b; }
.portfolio-measure-content .conv-rate, .portfolio-result-content .conv-rate {
    flex: 0 0 60px;
    font-size: 13px;
    font-weight: 900;
    color: #2c8c8c;
    text-align: right;
  }
.portfolio-measure-content .conv-funnel-note, .portfolio-result-content .conv-funnel-note {
    font-size: 11px;
    color: #888;
    margin-top: 10px;
    line-height: 1.4;
  }
.portfolio-measure-content 
  .step-flow, .portfolio-result-content 
  .step-flow {
    display: flex;
    align-items: stretch;
    gap: 6px;
    margin: 10px 0 4px;
  }
.portfolio-measure-content .step-flow-item, .portfolio-result-content .step-flow-item {
    flex: 1;
    background: #fff;
    border: 1px solid #d8e6e0;
    border-radius: 4px;
    padding: 12px 12px 14px;
    position: relative;
    text-align: center;
  }
.portfolio-measure-content .step-flow-item .step-num, .portfolio-result-content .step-flow-item .step-num {
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 26px;
    border: 2px solid #2c8c8c;
    border-radius: 50%;
    color: #2c8c8c;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 6px;
  }
.portfolio-measure-content .step-flow-item .step-title, .portfolio-result-content .step-flow-item .step-title {
    font-size: 13px;
    font-weight: 700;
    color: #333;
    line-height: 1.5;
    margin-bottom: 4px;
  }
.portfolio-measure-content .step-flow-item .step-sub, .portfolio-result-content .step-flow-item .step-sub {
    font-size: 11px;
    color: #777;
    line-height: 1.45;
  }
.portfolio-measure-content .step-flow-item.is-final, .portfolio-result-content .step-flow-item.is-final {
    background: #2c8c8c;
    border-color: #2c8c8c;
  }
.portfolio-measure-content .step-flow-item.is-final .step-num, .portfolio-result-content .step-flow-item.is-final .step-num {
    background: #fff;
  }
.portfolio-measure-content .step-flow-item.is-final .step-title, .portfolio-result-content .step-flow-item.is-final .step-title,.portfolio-measure-content .step-flow-item.is-final .step-sub, .portfolio-result-content .step-flow-item.is-final .step-sub {
    color: #fff;
  }
.portfolio-measure-content .step-flow-item.is-final .step-cv, .portfolio-result-content .step-flow-item.is-final .step-cv {
    display: block;
    font-size: 26px;
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-top: 2px;
  }
.portfolio-measure-content .step-flow-item.is-final .step-cv .step-cv-unit, .portfolio-result-content .step-flow-item.is-final .step-cv .step-cv-unit {
    font-size: 14px;
    margin-left: 1px;
  }
.portfolio-measure-content .step-flow-arrow, .portfolio-result-content .step-flow-arrow {
    align-self: center;
    font-size: 18px;
    font-weight: 900;
    color: #2c8c8c;
    flex-shrink: 0;
  }
.portfolio-measure-content .gray-box .bullet-item, .portfolio-result-content .gray-box .bullet-item { padding-left: 1em; text-indent: -1em; margin-bottom: 3px; }
.portfolio-measure-content .content-with-image,
.portfolio-result-content .content-with-image,
.portfolio-measure-content .text-image-row,
.portfolio-result-content .text-image-row,
.portfolio-measure-content .mockup-row,
.portfolio-result-content .mockup-row,
.portfolio-measure-content .story-row,
.portfolio-result-content .story-row,
.portfolio-measure-content .scenario-layout,
.portfolio-result-content .scenario-layout {
    display: flex !important;
    gap: 18px !important;
    align-items: flex-start !important;
}
.portfolio-measure-content .content-with-image > *,
.portfolio-result-content .content-with-image > *,
.portfolio-measure-content .text-image-row > *,
.portfolio-result-content .text-image-row > *,
.portfolio-measure-content .mockup-row > *,
.portfolio-result-content .mockup-row > *,
.portfolio-measure-content .story-row > *,
.portfolio-result-content .story-row > *,
.portfolio-measure-content .scenario-layout > * {
    flex: 1 1 50% !important;
    min-width: 0 !important;
    max-width: 50% !important;
}
.portfolio-measure-content .content-with-image > * img,
.portfolio-result-content .content-with-image > * img,
.portfolio-measure-content .text-image-row > * img,
.portfolio-result-content .text-image-row > * img,
.portfolio-measure-content .mockup-row > * img,
.portfolio-result-content .mockup-row > * img,
.portfolio-measure-content .story-row > * img,
.portfolio-result-content .story-row > * img {
    width: 100% !important;
    height: auto !important;
    display: block;
}
.portfolio-measure-content .float-image-wrap .float-image,
.portfolio-result-content .float-image-wrap .float-image,
.portfolio-measure-content .content-image,
.portfolio-result-content .content-image,
.portfolio-measure-content .scenario-image,
.portfolio-result-content .scenario-image {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 1em 0 !important;
}
@media (max-width: 768px) {
.portfolio-measure-content .content-with-image,
    .portfolio-result-content .content-with-image,
    .portfolio-measure-content .text-image-row,
    .portfolio-result-content .text-image-row,
    .portfolio-measure-content .mockup-row,
    .portfolio-result-content .mockup-row,
    .portfolio-measure-content .story-row,
    .portfolio-result-content .story-row,
    .portfolio-measure-content .scenario-layout,
    .portfolio-result-content .scenario-layout {
        flex-direction: column !important;
    }
.portfolio-measure-content .content-with-image > *,
    .portfolio-result-content .content-with-image > *,
    .portfolio-measure-content .text-image-row > *,
    .portfolio-result-content .text-image-row > *,
    .portfolio-measure-content .mockup-row > *,
    .portfolio-result-content .mockup-row > *,
    .portfolio-measure-content .story-row > *,
    .portfolio-result-content .story-row > *,
    .portfolio-measure-content .scenario-layout > * {
        max-width: 100% !important;
        flex: 1 1 auto !important;
    }
}
.portfolio-measure-content .ba-chart, .portfolio-result-content .ba-chart { background: #fff; border: 1px solid #d8e6e0; border-radius: 4px; padding: 10px 10px 12px; width: 100%; }
.portfolio-measure-content .ba-chart-title, .portfolio-result-content .ba-chart-title { font-size: 11.5px; font-weight: 700; color: #2c8c8c; margin-bottom: 10px; line-height: 1.3; text-align: center; }
.portfolio-measure-content .ba-vbar-area, .portfolio-result-content .ba-vbar-area { display: flex; justify-content: space-around; align-items: flex-end; height: 130px; padding: 0 4px; border-bottom: 1px solid #ddd; }
.portfolio-measure-content .ba-vbar-col, .portfolio-result-content .ba-vbar-col { display: flex; flex-direction: column; align-items: center; flex: 0 0 40%; height: 100%; justify-content: flex-end; }
.portfolio-measure-content .ba-vbar-value, .portfolio-result-content .ba-vbar-value { font-size: 13px; font-weight: 900; line-height: 1; margin-bottom: 4px; }
.portfolio-measure-content .ba-vbar-col.is-before .ba-vbar-value, .portfolio-result-content .ba-vbar-col.is-before .ba-vbar-value { color: #2c8c8c; }
.portfolio-measure-content .ba-vbar-col.is-after .ba-vbar-value, .portfolio-result-content .ba-vbar-col.is-after .ba-vbar-value { color: #c0392b; }
.portfolio-measure-content .ba-vbar, .portfolio-result-content .ba-vbar { width: 100%; border-radius: 3px 3px 0 0; }
.portfolio-measure-content .ba-vbar.is-before, .portfolio-result-content .ba-vbar.is-before { background: #c9dcdc; height: 33%; }
.portfolio-measure-content .ba-vbar.is-after, .portfolio-result-content .ba-vbar.is-after { background: #e74c3c; height: 100%; }
.portfolio-measure-content .ba-vbar-labels, .portfolio-result-content .ba-vbar-labels { display: flex; justify-content: space-around; margin-top: 5px; padding: 0 4px; }
.portfolio-measure-content .ba-vbar-label, .portfolio-result-content .ba-vbar-label { flex: 0 0 40%; text-align: center; font-size: 11px; font-weight: 700; color: #555; line-height: 1.3; }
.portfolio-measure-content .ba-chart-note, .portfolio-result-content .ba-chart-note { font-size: 11px; color: #555; margin-top: 10px; line-height: 1.4; padding-top: 8px; border-top: 1px solid #eee; text-align: center; }
.portfolio-measure-content .ba-chart-note strong, .portfolio-result-content .ba-chart-note strong { color: #c0392b; font-size: 13px; }
.portfolio-measure-content .heat-offer, .portfolio-result-content .heat-offer { display: flex; gap: 8px; margin: 8px 0 2px; align-items: stretch; }
.portfolio-measure-content .heat-col, .portfolio-result-content .heat-col { flex: 1; background: #fff; border: 1px solid #d8e6e0; border-radius: 4px; padding: 8px 10px 9px; display: flex; flex-direction: column; position: relative; }
.portfolio-measure-content .heat-col .heat-tag, .portfolio-result-content .heat-col .heat-tag { display: inline-block; align-self: center; font-size: 12.5px; font-weight: 900; color: #fff; background: #7fb6b6; padding: 2px 12px; border-radius: 11px; margin-bottom: 4px; letter-spacing: 0.05em; }
.portfolio-measure-content .heat-col.is-mid .heat-tag, .portfolio-result-content .heat-col.is-mid .heat-tag { background: #2c8c8c; }
.portfolio-measure-content .heat-col.is-high .heat-tag, .portfolio-result-content .heat-col.is-high .heat-tag { background: #e74c3c; }
.portfolio-measure-content .heat-col .heat-source, .portfolio-result-content .heat-col .heat-source { font-size: 13px; color: #666; text-align: center; line-height: 1.4; margin-bottom: 4px; min-height: 32px; }
.portfolio-measure-content .heat-col .heat-arrow, .portfolio-result-content .heat-col .heat-arrow { text-align: center; color: #b8b8b8; font-size: 11px; margin: 0; line-height: 1; }
.portfolio-measure-content .heat-col .heat-offer-name, .portfolio-result-content .heat-col .heat-offer-name { text-align: center; font-size: 14.5px; font-weight: 900; color: #2c8c8c; line-height: 1.35; padding: 6px 4px 2px; border-top: 1px solid #e8e8e8; margin-top: 4px; }
.portfolio-measure-content .heat-col.is-high .heat-offer-name, .portfolio-result-content .heat-col.is-high .heat-offer-name { color: #c0392b; }
.portfolio-measure-content .heat-col .heat-route, .portfolio-result-content .heat-col .heat-route { font-size: 12px; color: #888; text-align: center; margin-top: 2px; line-height: 1.35; }
.portfolio-measure-content .heat-meter, .portfolio-result-content .heat-meter { display: flex; height: 5px; border-radius: 3px; overflow: hidden; margin: 4px 0 6px; }
.portfolio-measure-content .heat-meter-low, .portfolio-result-content .heat-meter-low { flex: 1; background: #c9dcdc; }
.portfolio-measure-content .heat-meter-mid, .portfolio-result-content .heat-meter-mid { flex: 1; background: #2c8c8c; }
.portfolio-measure-content .heat-meter-high, .portfolio-result-content .heat-meter-high { flex: 1; background: #e74c3c; }
.portfolio-measure-content .heat-meter-axis, .portfolio-result-content .heat-meter-axis { display: flex; justify-content: space-between; font-size: 11.5px; font-weight: 700; color: #888; margin-bottom: 2px; padding: 0 4px; }


/* ===== 新デザイン優先の上書き（コンテナ自体の装飾・素の画像サイズ） ===== */
.pf-measure-body.portfolio-measure-content {
  background: none; border: none; box-shadow: none;
  padding: 0; margin: 24px 0 0; font-size: 16px; line-height: 2.05;
}
.pf-result-box.portfolio-result-content {
  background: linear-gradient(135deg, #F0FAF8, #FDFBEF);
  border: 2px solid var(--teal); border-radius: 20px; box-shadow: none;
  padding: 36px 40px; margin: 24px 0 0; font-size: 16px; line-height: 2.15;
}
/* 本文直下の素の画像は700px上限・中央寄せを維持（図解ラッパー内の画像は旧ルール優先） */
.pf-measure-body.portfolio-measure-content > img,
.pf-measure-body.portfolio-measure-content > p > img {
  width: auto !important; max-width: min(100%, 700px) !important;
  margin: 14px auto; display: block;
}
@media (max-width: 900px) {
  .pf-result-box.portfolio-result-content { padding: 26px 22px; }
}
