/* =========================================================
   art.css
   -----------------------------------------------------------
   article1.html 〜 article9.html の記事ページ個別スタイル。
   元々は各ページの <head> 内 <style> タグに直接書かれていたものを
   このファイルに集約しています。

   すべてのルールは body[id~="articleN"] （各ページの <body> に
   付与された個別id）でスコープしているため、他の記事ページに
   影響することはありません。
========================================================= */

/* ==================== article2 ==================== */
body[id~="article2"] {
    --article-accent: #C798E5;
}

@media (min-width: 769px) {
    body[id~="article2"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article2"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

/* ==================== article3 ==================== */
body[id~="article3"] {
    --article-accent: #00B5C1;
}

@media (min-width: 769px) {
    body[id~="article3"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article3"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

body[id~="article3"] .art-speakers-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    body[id~="article3"] .art-speakers-stack {
        gap: 8px;
    }
}

/* ==================== article4 ==================== */
body[id~="article4"] {
    --article-accent: #B78C00;
}

@media (min-width: 769px) {
    body[id~="article4"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article4"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

body[id~="article4"] .art-speakers-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    body[id~="article4"] .art-speakers-stack {
        gap: 8px;
    }
}

/* Bracket box styles for use inside article-content (white BG) */
body[id~="article4"] .article-content .art-bracket-box {
    position: relative;
    padding: 32px 40px;
    font-size: 27px;
    line-height: 2;
    letter-spacing: 0em;
    color: #000;
}
body[id~="article4"] .article-content .art-bracket-box::before,
body[id~="article4"] .article-content .art-bracket-box::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 15px;
    border-top: 1px solid var(--article-accent);
    border-bottom: 1px solid var(--article-accent);
}
body[id~="article4"] .article-content .art-bracket-box::before {
    left: 0;
    border-left: 1px solid var(--article-accent);
}
body[id~="article4"] .article-content .art-bracket-box::after {
    right: 0;
    border-right: 1px solid var(--article-accent);
}
body[id~="article4"] .article-content .art-bracket-box p {
    margin-bottom: 0;
}
body[id~="article4"] .article-content .art-bracket-box2 {
    padding: 20px 30px;
}
@media (max-width: 768px) {
    body[id~="article4"] .article-content .art-bracket-box {
        padding: 24px 30px;
        font-size: 20px;
    }

    /* Shrink large display titles on smartphones to prevent overflow */
    body[id~="article4"] .art-interlude-title {
        font-size: 38px !important;
        letter-spacing: -1px !important;
    }
    body[id~="article4"] .art-decorative-bg-text {
        font-size: 42px !important;
    }

    /* Remove left/right padding on smartphone for the design vs art quote */
    body[id~="article4"] .art-quote-design-art {
        padding: 0 !important;
    }
}

/* ==================== article5 ==================== */
body[id~="article5"] {
    --article-accent: #4F7CAF;
}

@media (min-width: 769px) {
    body[id~="article5"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

/* Interlude decorative text */
body[id~="article5"] .art5-interlude-deco {
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
    font-family: 'EB Garamond', serif;
    font-size: clamp(40px, 6vw, 80px);
    color: rgba(79, 124, 175, 0.07);
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    line-height: 1.4;
    z-index: 0;
}

@media (max-width: 768px) {
    body[id~="article5"] .art5-interlude-deco {
        display: none;
    }
}

/* Bracket box styles for use inside article-content (white BG) */
body[id~="article5"] .article-content .art-bracket-box {
    position: relative;
    padding: 32px 40px;
    font-size: 27px;
    line-height: 2;
    letter-spacing: 0em;
    color: #000;
}
body[id~="article5"] .article-content .art-bracket-box::before,
body[id~="article5"] .article-content .art-bracket-box::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 15px;
    border-top: 1px solid var(--article-accent);
    border-bottom: 1px solid var(--article-accent);
}
body[id~="article5"] .article-content .art-bracket-box::before {
    left: 0;
    border-left: 1px solid var(--article-accent);
}
body[id~="article5"] .article-content .art-bracket-box::after {
    right: 0;
    border-right: 1px solid var(--article-accent);
}
body[id~="article5"] .article-content .art-bracket-box p {
    margin-bottom: 0;
}
@media (max-width: 768px) {
    body[id~="article5"] .article-content .art-bracket-box {
        padding: 24px 30px;
        font-size: 20px;
    }
}

/* ==================== article6 ==================== */
body[id~="article6"] {
    --article-accent: #C798E5;
}

@media (min-width: 769px) {
    body[id~="article6"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article6"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

/* Conclusion: label sized to match the h2 title below */
body[id~="article6"] .art-conclusion-label {
    font-size: 48px;
    display: inline-block;
    line-height: 1.2;
}
@media (max-width: 768px) {
    body[id~="article6"] .art-conclusion-label {
        font-size: 32px;
    }
}

/* Bracket box styles for use inside article-content (white BG) */
body[id~="article6"] .article-content .art-bracket-box {
    position: relative;
    padding: 32px 40px;
    font-size: 27px;
    line-height: 2;
    letter-spacing: 0em;
    color: #000;
}
body[id~="article6"] .article-content .art-bracket-box::before,
body[id~="article6"] .article-content .art-bracket-box::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 15px;
    border-top: 1px solid var(--article-accent);
    border-bottom: 1px solid var(--article-accent);
}
body[id~="article6"] .article-content .art-bracket-box::before {
    left: 0;
    border-left: 1px solid var(--article-accent);
}
body[id~="article6"] .article-content .art-bracket-box::after {
    right: 0;
    border-right: 1px solid var(--article-accent);
}
body[id~="article6"] .article-content .art-bracket-box p {
    margin-bottom: 0;
}
@media (max-width: 768px) {
    body[id~="article6"] .article-content .art-bracket-box {
        padding: 24px 30px;
        font-size: 20px;
    }

    /* Disable letter-spacing on smartphone for article header sub */
    body[id~="article6"] .article-header__sub {
        letter-spacing: 0 !important;
    }
}

/* ==================== article7 ==================== */
body[id~="article7"] {
    --article-accent: #00B5C1;
}

@media (min-width: 769px) {
    body[id~="article7"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article7"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

body[id~="article7"] .art-speakers-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    body[id~="article7"] .art-speakers-stack {
        gap: 8px;
    }
}

/* -----------------------------
汎用・表示非表示用クラス
----------------------------- */
body[id~="article7"] .art-mgmt-scope .visible-sm-ika {
    display: none;
}

body[id~="article7"] .art-mgmt-scope .visible-xs-ika {
    display: none;
}

body[id~="article7"] .art-mgmt-scope .num-italic {
    font-style: italic;
    font-size: 35px !important;
}

/* -----------------------------
記事ヘッダー・上部コンテンツ
----------------------------- */
body[id~="article7"] .art-mgmt-scope .article-fv__bg {
    background-image: url('../images/article/article_7_bg.webp');
    transform: scale(1.15);
}

body[id~="article7"] .art-mgmt-scope .article-content.article-content-bottom {
    padding-bottom: 0;
}

body[id~="article7"] .art-mgmt-scope .article-content .article-header .article-header__main {
    letter-spacing: 0;
}

/* -----------------------------
ライトセクション（白い背景のブロック群）
----------------------------- */
body[id~="article7"] .art-mgmt-scope .article-light-section.article-light-section-list {
    padding-top: 0 !important;
}

/* 各テキストブロック（01〜04） */
body[id~="article7"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
    font-size: 25px !important;
    margin-bottom: 0 !important;
}

body[id~="article7"] .art-mgmt-scope .article-light-section .art-light-block .art-light-desc {
    font-size: 16px !important;
}

/* -----------------------------
グレーセクション（図解エリアの土台）
----------------------------- */
body[id~="article7"] .art-mgmt-scope .article-grey-section {
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
}

/* -----------------------------
ブラックボックス（図解エリア）
----------------------------- */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox {
    text-align: center;
    background-color: #F5F5F5;
    border-radius: 10px;
    padding: 30px 15px 55px;
    box-sizing: border-box;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox:last-child {
    margin-top: 80px;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-title {
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.6;
    margin-bottom: 35px !important;
}

/* ブラックボックス中央コアテキスト */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-core {
    display: inline-block;
    background-color: #000;
    color: #fff;
    padding: 30px 70px;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1;
    margin-bottom: 28px;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-core p + p {
    margin-top: 7px;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-lead {
    font-size: 18px;
    letter-spacing: 0;
    margin-top: 32px;
}

/* 矢印アイコン */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-arrows {
    max-width: 310px;
    width: 100%;
    margin: 30px auto;
}

/* カード群レイアウト（左右並び） */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards {
    display: flex;
    gap: 40px;
    align-items: stretch;
    max-width: 720px;
    width: 100%;
    margin: 0 auto;
}

/* 各カード（角が欠けたデザイン） */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card {
    position: relative;
    flex: 1;
    border: 1px solid #707070;
    padding: 10px 20px 20px;
    text-align: center;
    clip-path: polygon(28px 0, 100% 0, 100% 100%, 0 100%, 0 28px);
    background-color: #ffffff;
}
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 40px;
    height: 1.15px;
    background-color: #707070;
    transform-origin: top left;
    transform: translateY(28px) rotate(-45deg);
}

/* カード内のテキスト群 */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-head {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.04em;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 50px;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-rule {
    height: 1px;
    background-color: #707070;
    border: 0;
    margin: 10px auto;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-list {
    display: inline-block;
    text-align: left;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 16px;
    line-height: 2.1;
    letter-spacing: 0.05em;
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-list li::before {
    content: "・";
}

body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-desc {
    font-size: 16px;
    line-height: 1.625;
    letter-spacing: 0.03em;
    margin: 0;
}

/* -----------------------------
注釈テキスト
----------------------------- */
body[id~="article7"] .art-mgmt-scope .article-grey-section .art-light-notes {
    text-align: right;
    margin-top: 20px;
    padding: 0 16px;
    box-sizing: border-box;
}

/* -----------------------------
ボタン
----------------------------- */
body[id~="article7"] .art-mgmt-scope .art-btn-black {
    text-align: center;
    margin-top: 50px;
}
body[id~="article7"] .art-mgmt-scope .art-btn-black a {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 200px;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    box-sizing: border-box;
    background-color: #000000;
    color: #fff;
    font-family: "EB Garamond", "Shippori Mincho", serif;
    font-size: 24px;
    letter-spacing: 0;
    line-height: 1;
    border-radius: 25px;
    text-decoration: none;
    transition: opacity 0.3s ease;
}
body[id~="article7"] .art-mgmt-scope .art-btn-black a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 28px;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    transform: translateY(-50%) rotate(45deg);
}
body[id~="article7"] .art-mgmt-scope .art-btn-black a:hover {
    opacity: 0.8;
}

/* =========================================================
レスポンシブ対応（article7）
========================================================= */

/* 768px 以下 */
@media screen and (max-width: 768px) {
    body[id~="article7"] .art-mgmt-scope .visible-sm-ika {
        display: block;
    }

    body[id~="article7"] .art-mgmt-scope .article-content.article-content-bottom {
        padding-top: 0 !important;
    }

    body[id~="article7"] .art-mgmt-scope .article-content .article-body .article-section-title {
        letter-spacing: 0;
        font-size: 19px;
        line-height: 1.5;
    }

    body[id~="article7"] .art-mgmt-scope .num-italic {
        font-size: 25px !important;
    }

    body[id~="article7"] .art-mgmt-scope .article-grey-section {
        margin-top: -80px;
    }

    body[id~="article7"] .art-mgmt-scope .article-light-section.article-light-section-list .container-inner {
        padding-top: 0 !important;
        margin-top: -40px;
    }
    body[id~="article7"] .art-mgmt-scope .article-light-section .art-light-block {
        margin-bottom: 40px !important;
    }
    body[id~="article7"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
        font-size: 20px !important;
        margin-bottom: 0 !important;
    }

    /* ブラックボックス（SP） */
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox {
        padding: 20px 15px 38px;
        border-radius: 0;
    }

    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox:last-child {
        margin-top: 45px;
    }

    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-title {
        font-size: 20px;
        margin-bottom: 20px !important;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-core {
        padding: 20px 35px;
        font-size: 16px;
        margin-bottom: 18px;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-lead {
        font-size: 14px;
        margin-top: 24px;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-arrows {
        display: none;
    }

    /* カード群の縦積み（SP） */
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards {
        margin-top: 35px;
        flex-direction: column;
        gap: 13px 0;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card {
        padding: 12px 24px 20px;
        clip-path: polygon(20px 0, 100% 0, 100% 100%, 0 100%, 0 20px);
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card::before {
        width: 29px;
        transform: translateY(20px) rotate(-45deg);
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-head {
        font-size: 16px;
        min-height: auto;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-list {
        font-size: 16px;
        line-height: 1.5;
    }
    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-cards .art-blackbox-card .art-blackbox-card-desc {
        font-size: 15px;
    }

    body[id~="article7"] .art-mgmt-scope .article-grey-section .art-light-notes {
        text-align: left;
        margin-top: 20px;
    }

    body[id~="article7"] .art-mgmt-scope .art-btn-black {
        margin-top: 40px;
    }
    body[id~="article7"] .art-mgmt-scope .art-btn-black a {
        max-width: 150px;
        font-size: 16px;
        padding: 15px 0;
    }
    body[id~="article7"] .art-mgmt-scope .art-btn-black a::after {
        right: 20px;
    }
}

/* 575px 以下 */
@media screen and (max-width: 575px) {
    body[id~="article7"] .art-mgmt-scope .visible-xs-ika {
        display: block;
    }

    body[id~="article7"] .art-mgmt-scope .article-fv__bg {
        background-position-x: 40%;
        transform: scale(1.15);
    }
}

/* ==================== article8 ==================== */
body[id~="article8"] {
    --article-accent: #4F7CAF;
}

@media (min-width: 769px) {
    body[id~="article8"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article8"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

body[id~="article8"] .art-speakers-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    body[id~="article8"] .art-speakers-stack {
        gap: 8px;
    }
}

/* -----------------------------
汎用・表示非表示用クラス
----------------------------- */
body[id~="article8"] .art-mgmt-scope .visible-sm-ika {
    display: none;
}

body[id~="article8"] .art-mgmt-scope .visible-xs-ika {
    display: none;
}

body[id~="article8"] .art-mgmt-scope .num-italic {
    font-style: italic;
    font-size: 35px !important;
}

/* -----------------------------
記事ヘッダー・上部コンテンツ
----------------------------- */
body[id~="article8"] .art-mgmt-scope .article-fv__bg {
    background-image: url('../images/article/article_8_bgpc.webp');
    transform: scale(1.15);
}

body[id~="article8"] .art-mgmt-scope .article-content.article-content-bottom {
    padding-bottom: 0;
}

body[id~="article8"] .art-mgmt-scope .article-content .article-header .article-header__main {
    letter-spacing: 0;
}

/* -----------------------------
ライトセクション（白い背景のブロック群）
----------------------------- */
body[id~="article8"] .art-mgmt-scope .article-light-section.article-light-section-list {
    padding-top: 0 !important;
}

/* 各テキストブロック（01〜03） */
body[id~="article8"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
    font-size: 25px !important;
    margin-bottom: 0 !important;
}

body[id~="article8"] .art-mgmt-scope .article-light-section .art-light-block .art-light-desc {
    font-size: 16px !important;
}

/* -----------------------------
グレーセクション（図解エリアの土台）
----------------------------- */
body[id~="article8"] .art-mgmt-scope .article-grey-section {
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
}

/* -----------------------------
ブラックボックス
----------------------------- */
body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox {
    margin-top: 80px;
    text-align: center;
    background-color: #F5F5F5;
    border-radius: 10px;
    padding: 30px 15px 55px;
    box-sizing: border-box;
}

/* ブラックボックス：数値差異リスト（黒ラベル＋説明の行） */
body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats {
    max-width: 850px;
    width: 100%;
    margin: 0 auto 60px;
    text-align: left;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat:last-child {
    margin-bottom: 0;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat-num {
    max-width: 200px;
    width: 100%;
    background-color: #000;
    height: 50px;
    flex: 1;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 0;
    box-sizing: border-box;
    font-size: 25px;
    line-height: 1;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat-desc {
    margin: 0;
    font-size: 25px;
    line-height: 1.6;
    letter-spacing: 0.03em;
}

/* ブラックボックス：結論ボックス（枠付き） */
body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion {
    max-width: 850px;
    width: 100%;
    border: 1px solid #707070;
    margin: 0 auto;
    padding: 15px 0 40px;
    box-sizing: border-box;
    text-align: center;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-title {
    margin: 0;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.6;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-rule {
    height: 1px;
    background-color: #707070;
    border: 0;
    margin: 15px auto 20px;
}

body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-desc {
    margin: 0;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.03em;
}

/* -----------------------------
注釈テキスト
----------------------------- */
body[id~="article8"] .art-mgmt-scope .article-grey-section .art-light-notes {
    text-align: right;
    margin-top: 20px;
    padding: 0 16px;
    box-sizing: border-box;
}

/* -----------------------------
ボタン
----------------------------- */
body[id~="article8"] .art-mgmt-scope .art-btn-black {
    text-align: center;
    margin-top: 50px;
}
body[id~="article8"] .art-mgmt-scope .art-btn-black a {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 200px;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    box-sizing: border-box;
    background-color: #000000;
    color: #fff;
    font-family: "EB Garamond", "Shippori Mincho", serif;
    font-size: 24px;
    letter-spacing: 0;
    line-height: 1;
    border-radius: 25px;
    text-decoration: none;
    transition: opacity 0.3s ease;
}
body[id~="article8"] .art-mgmt-scope .art-btn-black a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 28px;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    transform: translateY(-50%) rotate(45deg);
}
body[id~="article8"] .art-mgmt-scope .art-btn-black a:hover {
    opacity: 0.8;
}

/* =========================================================
レスポンシブ対応（article8）
========================================================= */

/* 768px 以下 */
@media screen and (max-width: 768px) {
    body[id~="article8"] .art-mgmt-scope .visible-sm-ika {
        display: block;
    }

    body[id~="article8"] .art-mgmt-scope .visible-sm-ijo {
        display: none;
    }

    body[id~="article8"] .art-mgmt-scope .article-content.article-content-bottom {
        padding-top: 0 !important;
    }

    body[id~="article8"] .art-mgmt-scope .num-italic {
        font-size: 25px !important;
    }

    body[id~="article8"] .art-mgmt-scope .article-grey-section {
        margin-top: -80px;
    }

    body[id~="article8"] .art-mgmt-scope .article-light-section.article-light-section-list .container-inner {
        padding-top: 0 !important;
        margin-top: -40px;
    }
    body[id~="article8"] .art-mgmt-scope .article-light-section .art-light-block {
        margin-bottom: 40px !important;
    }
    body[id~="article8"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
        font-size: 20px !important;
        margin-bottom: 0 !important;
    }

    /* ブラックボックス（SP） */
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox {
        margin-top: 45px;
        padding: 20px 15px 38px;
        border-radius: 0;
    }

    body[id~="article8"] .art-mgmt-scope .article-fv__bg {
        background-image: url('../images/article/article_8_bgsp.webp');
    }

    body[id~="article8"] .art-mgmt-scope .article-grey-section .article-header {
        padding: 0 16px;
    }

    body[id~="article8"] .art-mgmt-scope .article-grey-section .article-header .article-header__main {
        font-size: 24px;
        line-height: 1.5;
    }

    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-light-notes {
        text-align: left;
        margin-top: 20px;
    }

    /* 数値差異リスト・結論ボックス（SP） */
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats {
        margin-bottom: 30px;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat {
        gap: 5px 0;
        margin-bottom: 20px;
        flex-direction: column;
        align-items: flex-start;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat-num {
        width: 135px;
        padding: 5px 0;
        height: auto;
        font-size: 20px;
        line-height: 1;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-stats .art-blackbox-stat-desc {
        font-size: 16px;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion {
        padding: 10px 0 20px;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-title {
        font-size: 16px;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-rule {
        margin: 10px auto 10px;
    }
    body[id~="article8"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-conclusion .art-blackbox-conclusion-desc {
        font-size: 16px;
        line-height: 1.5;
        padding: 0 15px;
        box-sizing: border-box;
        text-align: left;
    }

    body[id~="article8"] .art-mgmt-scope .art-btn-black {
        margin-top: 40px;
    }
    body[id~="article8"] .art-mgmt-scope .art-btn-black a {
        max-width: 150px;
        font-size: 16px;
        padding: 15px 0;
    }
    body[id~="article8"] .art-mgmt-scope .art-btn-black a::after {
        right: 20px;
    }
}

/* 575px 以下 */
@media screen and (max-width: 575px) {
    body[id~="article8"] .art-mgmt-scope .visible-xs-ika {
        display: block;
    }

    body[id~="article8"] .art-mgmt-scope .visible-xs-ijo {
        display: none;
    }
}

/* ==================== article9 ==================== */
body[id~="article9"] {
    --article-accent: #79C126;
}

@media (min-width: 769px) {
    body[id~="article9"] .art-conclusion-desc-large {
        font-size: 27px !important;
    }

    body[id~="article9"] .art-conclusion-bracket-text {
        font-size: 50px !important;
        letter-spacing: -2px;
        line-height: 1.6em;
    }
}

body[id~="article9"] .art-speakers-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    body[id~="article9"] .art-speakers-stack {
        gap: 8px;
    }
}

/* =========================================================
記事ページ（経営の第3軸「文化的創造性」）
========================================================= */

/* -----------------------------
汎用・表示非表示用クラス
----------------------------- */
body[id~="article9"] .art-mgmt-scope .visible-sm-ika { display: none; }
body[id~="article9"] .art-mgmt-scope .visible-xs-ika { display: none; }
body[id~="article9"] .art-mgmt-scope .num-italic {
    font-style: italic;
    font-size: 35px !important;
}

/* -----------------------------
ファーストビュー
----------------------------- */
body[id~="article9"] .art-mgmt-scope .article-fv .article-fv__bg {
    background-image: url('../images/article/article_9_bg.webp');
    transform: scale(1.15);
}

/* -----------------------------
記事ヘッダー・上部コンテンツ
----------------------------- */
body[id~="article9"] .art-mgmt-scope .article-content.article-content-bottom {
    padding-bottom: 0;
}
body[id~="article9"] .art-mgmt-scope .article-content .article-header .article-header__main {
    letter-spacing: 0;
}

/* -----------------------------
ライトセクション（白い背景のブロック群）
----------------------------- */
body[id~="article9"] .art-mgmt-scope .article-light-section.article-light-section-list {
    padding-top: 0 !important;
}

/* 各テキストブロック（01〜03） */
body[id~="article9"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
    font-size: 25px !important;
    margin-bottom: 0 !important;
}
body[id~="article9"] .art-mgmt-scope .article-light-section .art-light-block .art-light-desc {
    font-size: 16px !important;
}

/* -----------------------------
グレーセクション（図解エリアの土台）
----------------------------- */
body[id~="article9"] .art-mgmt-scope .article-grey-section {
    max-width: 960px;
    width: 100%;
    margin: 0 auto;
}

/* グレーセクション内のブロック要素 */
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block {
    margin-bottom: 60px;
    font-family: "EB Garamond", "Shippori Mincho", serif;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block:last-child {
    margin-bottom: 0;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-header {
    font-size: 25px;
    font-weight: 500;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    gap: 16px;
    line-height: 1.5em;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-header-sub {
    font-family: "EB Garamond", "Cormorant Garamond", Georgia, serif;
    font-weight: 400;
    letter-spacing: 0.1em;
    color: var(--article-accent, #4F7CAF);
    text-transform: uppercase;
    font-size: 18px;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-header-sub.num {
    font-size: 30px;
    display: block;
    margin-bottom: 5px;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-desc {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0;
    color: #000;
    text-align: left;
    padding-left: 60px;
}

/* -----------------------------
ブラックボックス（グレーセクション内）
----------------------------- */
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox {
    margin-top: 80px;
    text-align: center;
    background-color: #F5F5F5;
    border-radius: 10px;
    padding: 30px 15px 55px;
    box-sizing: border-box;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-diagram {
    max-width: 768px;
    width: 100%;
    margin: 0 auto 40px;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-wrapper {
    max-width: 730px;
    width: 100%;
    margin: 0 auto;
}
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-title {
    max-width: 730px;
    width: 100%;
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.6;
    text-align: left;
    margin: 80px auto 0;
}

/* 注釈テキスト */
body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-notes {
    text-align: right;
    margin-top: 20px;
    padding: 0 16px;
    box-sizing: border-box;
}

/* -----------------------------
緑ボタン（セミナープログラムを知る）
----------------------------- */
body[id~="article9"] .art-mgmt-scope .art-btn-green {
    text-align: center;
    margin-top: 50px;
}
body[id~="article9"] .art-mgmt-scope .art-btn-green a {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 410px;
    width: 100%;
    margin: 0 auto;
    padding: 30px 60px;
    box-sizing: border-box;
    background-color: #79C126;
    color: #fff;
    font-family: "EB Garamond", "Shippori Mincho", serif;
    font-size: 24px;
    letter-spacing: 0;
    line-height: 1;
    border-radius: 24px;
    text-decoration: none;
    transition: opacity 0.3s ease;
}
body[id~="article9"] .art-mgmt-scope .art-btn-green a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 28px;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    transform: translateY(-50%) rotate(45deg);
}
body[id~="article9"] .art-mgmt-scope .art-btn-green a:hover {
    opacity: 0.8;
}

/* =========================================================
レスポンシブ対応（article9）
========================================================= */

/* 768px 以下 */
@media screen and (max-width: 768px) {
    /* 汎用クラス */
    body[id~="article9"] .art-mgmt-scope .visible-sm-ika { display: block; }
    body[id~="article9"] .art-mgmt-scope .visible-sm-ijo { display: none; }
    body[id~="article9"] .art-mgmt-scope .num-italic { font-size: 25px !important; }

    /* 記事上部コンテンツ */
    body[id~="article9"] .art-mgmt-scope .article-content.article-content-bottom {
        padding-top: 0 !important;
    }
    body[id~="article9"] .art-mgmt-scope .article-content .article-body .article-section-title {
        letter-spacing: 0;
        font-size: 20px;
        line-height: 1.5;
    }
    body[id~="article9"] .art-mgmt-scope .article-content .article-body .article-text-block p {
        letter-spacing: 0;
    }

    /* ライトセクション */
    body[id~="article9"] .art-mgmt-scope .article-light-section.article-light-section-list .container-inner {
        padding-top: 0 !important;
        margin-top: -40px;
    }
    body[id~="article9"] .art-mgmt-scope .article-light-section .art-light-block {
        margin-bottom: 40px !important;
    }
    body[id~="article9"] .art-mgmt-scope .article-light-section .art-light-block .art-light-header {
        font-size: 20px !important;
        margin-bottom: 0 !important;
    }

    /* グレーセクション */
    body[id~="article9"] .art-mgmt-scope .article-grey-section {
        margin-top: -80px;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .article-header {
        padding: 0 16px;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .article-header .article-header__main {
        font-size: 24px;
        letter-spacing: 0;
        line-height: 1.5;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block {
        margin-bottom: 40px;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-header {
        gap: 8px;
        font-size: 20px;
        margin-bottom: 0;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-block .art-light-desc {
        padding-left: 0;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-light-notes {
        text-align: left;
        margin-top: 20px;
    }

    /* ブラックボックス（SP） */
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox {
        margin-top: 45px;
        padding: 20px 15px 38px;
        border-radius: 0;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-diagram {
        margin-bottom: 10px;
    }
    body[id~="article9"] .art-mgmt-scope .article-grey-section .art-blackbox .art-blackbox-title {
        font-size: 20px;
        margin-top: 40px;
    }

    /* 緑ボタン（SP） */
    body[id~="article9"] .art-mgmt-scope .art-btn-green {
        margin-top: 40px;
    }
    body[id~="article9"] .art-mgmt-scope .art-btn-green a {
        max-width: 260px;
        width: 100%;
        border-radius: 10px;
        padding: 15px 30px;
        font-size: 16px;
    }
    body[id~="article9"] .art-mgmt-scope .art-btn-green a::after {
        right: 20px;
    }
}

/* 575px 以下 */
@media screen and (max-width: 575px) {
    body[id~="article9"] .art-mgmt-scope .visible-xs-ika { display: block; }
    body[id~="article9"] .art-mgmt-scope .visible-xs-ijo { display: none; }
}
