mark, ins {
    background: linear-gradient(transparent 60%, #c0f7d9 60%);
    text-decoration: none;
}

/* ==================================================
 * 共通：学校一覧タイトルのスタイル設定
 * ================================================== */
.school-list p {
    text-align: center !important;
    font-size: calc(15 / 16 * 1rem) !important;
    font-weight: 700 !important;
    margin: 0 auto 1rem !important;
    color: #333333 !important;
}

/* ==================================================
 * 980px以下：親枠（.site-bottom-wrap）ごと強制表示＆縦並び化
 * ================================================== */
@media screen and (max-width: 980px) {

    /* 1. 一番外側の親枠・エリア全体を強制表示＆中央寄せ */
    .site-bottom,
    .site-bottom-wrap {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        width: 100% !important;
        overflow: hidden !important;
        text-align: center !important;
    }

    /* 2. .pc-footer_content 本体の表示とFlexboxによる縦並び中央寄せ */
    .pc-footer_content,
    .pc-footer_content_inner,
    .site-bottom-wrap .pc-footer_content {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 20px auto !important;
        padding: 0 20px !important;
        box-sizing: border-box !important;
        text-align: center !important;
        gap: 0 !important;
    }

    /* 3. 各メニューコンテナ（01・02・03）の横並び制限を解除し、幅100%で中央寄せ */
    .menu-footer-main_01-container,
    .menu-footer-main_02-container,
    .menu-footer-main_03-container,
    nav.menu-footer-main_01-container,
    nav.menu-footer-main_02-container,
    nav.menu-footer-main_03-container,
    [class*="menu-footer-main_"],
    .footer-btn {
        display: block !important;
        float: none !important;
        flex: none !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto 1.5rem auto !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }

    /* 4. 配下の要素（ul, li, aなど）の非表示解除・幅最大化・中央揃え・勝手な改行防止 */
    .pc-footer_content *,
    .menu-footer-main_01-container *,
    .menu-footer-main_02-container *,
    .menu-footer-main_03-container * {
        visibility: visible !important;
        opacity: 1 !important;
        text-align: center !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
    }

    /* li#menu-item-324 に対する強力な全体中央配置指定 */
    li#menu-item-324 {
        display: block !important;
        float: none !important;
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    li#menu-item-324 > a {
        display: inline-block !important;
        text-align: center !important;
        margin: 0 auto !important;
    }

    /* 5. hr区切り線のスタイル設定 */
    hr {
        background-color: #eee !important;
        border: 0 !important;
        height: 2px !important;
        margin: 0.8em auto !important;
    }

    /* 6. pc-footer-logo とその中身を最後に完全に非表示（上書き防止） */
    .pc-footer-logo,
    .pc-footer-logo *,
    div.pc-footer-logo {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 7. footer-btn 内の各種ボタン（受講申込・問合せ）のみ非表示 */
    .footer-btn > .footer_site-contact_contact,
    .footer-btn > .footer_site-contact_apply {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 8. .pc-footer_content 内の .sns-link は非表示 */
    .pc-footer_content .sns-link,
    .pc-footer_content .sns-link * {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 9. .site-bottom-content 内の .sns-link（SNSアイコン）は表示（中央寄せ） */
    .site-bottom-content .sns-link,
    ul.sns-link {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 1.2em !important;
        padding: 0 !important;
        margin: 1.5rem 0 !important;
        list-style: none !important;
    }

    .site-bottom-content .sns-link li,
    .site-bottom-content .sns-link a {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin: 0 !important;
    }

    /* 10. 画像通りのメニューデザイン調整 */
    .pc-footer_content ul,
    .menu-footer-main_01-container ul,
    .menu-footer-main_02-container ul,
    .menu-footer-main_03-container ul {
        display: block !important;
        padding: 0 !important;
        margin: 0 auto !important;
        width: 100% !important;
        list-style: none !important;
        text-align: center !important;
    }

    /* 親項目（全親要素を太字指定＆中央配置＆下余白0.5remに調整） */
    .pc-footer_content li,
    .menu-footer-main_01-container > ul > li,
    .menu-footer-main_02-container > ul > li,
    .menu-footer-main_03-container > ul > li,
    .menu-footer-main_01-container > ul > li > a,
    .menu-footer-main_02-container > ul > li > a,
    .menu-footer-main_03-container > ul > li > a {
        display: block !important;
        margin-bottom: 0.5rem !important;
        font-size: 1.125rem !important;
        font-weight: bold !important;
        color: #333333 !important;
        text-decoration: none !important;
        text-align: center !important;
        width: 100% !important;
    }

    /* 特定の3つのリンク（プライバシーポリシー / 特定商取引法 / 領収書）だけ太字解除 */
    .pc-footer_content a[href*="privacy"],
    .pc-footer_content a[href*="specific-trade-law"],
    .pc-footer_content a[href*="receipt-issuance-reception"] {
        font-weight: normal !important;
        font-size: 1rem !important;
    }

    /* 領収書発行受付フォームの「下側だけ」に 1rem のあきを追加 */
    .pc-footer_content li:has(a[href*="receipt-issuance-reception"]) {
        margin-bottom: 1rem !important;
    }

    /* 子メニュー階層（サブメニュー群：パディングでのずらしを解除して中央配置） */
    .menu-footer-main_01-container ul ul,
    .menu-footer-main_02-container ul ul,
    .menu-footer-main_03-container ul ul,
    .menu-footer-main_01-container .sub-menu,
    .menu-footer-main_02-container .sub-menu,
    .menu-footer-main_03-container .sub-menu {
        display: block !important;
        padding-left: 0 !important;
        margin-top: 0.8rem !important;
        list-style-type: none !important;
        text-align: center !important;
        width: 100% !important;
    }

    .menu-footer-main_01-container ul ul li,
    .menu-footer-main_02-container ul ul li,
    .menu-footer-main_03-container ul ul li,
    .menu-footer-main_01-container .sub-menu li,
    .menu-footer-main_02-container .sub-menu li,
    .menu-footer-main_03-container .sub-menu li {
        display: block !important;
        margin-bottom: 0.8rem !important;
        font-size: 1rem !important;
        font-weight: normal !important;
        color: #888888 !important;
        line-height: 1.6 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .menu-footer-main_01-container ul ul li a,
    .menu-footer-main_02-container ul ul li a,
    .menu-footer-main_03-container ul ul li a,
    .menu-footer-main_01-container .sub-menu a,
    .menu-footer-main_02-container .sub-menu a,
    .menu-footer-main_03-container .sub-menu a {
        display: inline !important;
        color: #333333 !important;
        font-weight: normal !important;
        text-decoration: none !important;
    }

    /* 11. 学校一覧コンテナのはみ出し（食い込み）完全防止 */
    .footer-wrap {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .menu-footer-school-list-container {
        display: block !important;
        padding: 0 2.5rem !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        margin: 0 auto !important;
    }

    .school-list {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin-top: 2rem !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    .school-list ul,
    ul#menu-footer-school-list {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 0.8em 1.2em !important;
        padding: 0 !important;
        margin: 0 auto !important;
        list-style: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    .school-list li,
    .school-list a,
    ul#menu-footer-school-list li,
    ul#menu-footer-school-list a {
        display: inline-block !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }
}