/* ===== meigi custom common CSS (ported verbatim from live) ===== */
/* ==== article_pc.html style#4 ==== */

.icta-wrap{font-family:'Zen Maru Gothic','Klee One',sans-serif;box-sizing:border-box;margin:0;padding:0}
.icta-wrap *,.icta-wrap *::before,.icta-wrap *::after{box-sizing:border-box}
.icta-top{background:#f7f8fa;border:1px solid #e0e4e8;border-radius:12px 16px 14px 18px;padding:18px 20px;margin:25px 0 30px;text-align:center}
.icta-top-label{font-size:14px;font-weight:700;color:#333;margin-bottom:10px}
.icta-top-phone{font-size:22px;font-weight:900;color:#e65100;letter-spacing:1px;margin-bottom:4px}
.icta-top-phone a{color:#e65100;text-decoration:none}
.icta-top-hours{font-size:11px;color:#777;margin-bottom:12px}
.icta-top-btns{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.icta-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:6px;font-size:13px;font-weight:700;color:#fff;text-decoration:none;min-width:140px;transition:opacity .2s}
.icta-btn:hover{opacity:.85}
.icta-btn-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
.icta-btn-phone-sp{background:linear-gradient(135deg,#FF9800,#F57C00);display:none}
a[href*="phone-contact"].icta-btn{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn{display:none}
.icta-top-badges{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.icta-badge{font-size:11px;color:#555;display:flex;align-items:center;gap:3px}
.icta-badge::before{content:"\2713";color:#06C755;font-weight:900;font-size:13px}
.icta-mid{background:#f0faf3;border-left:4px solid #06C755;border-radius:0 10px 10px 0;padding:16px 20px;margin:30px 0}
.icta-mid-copy{font-size:14px;font-weight:700;color:#333;margin-bottom:12px;line-height:1.6}
.icta-mid-btns{display:flex;gap:10px;flex-wrap:wrap}
.icta-bottom{background:#fff;border:2px solid #2196F3;border-radius:12px 16px 14px 18px;padding:20px;margin:30px 0}
.icta-bottom-title{font-size:15px;font-weight:900;color:#1565C0;text-align:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #e0e4e8}
.icta-price-list{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.icta-price-item{background:#f7f8fa;border-radius:8px;padding:10px 14px;text-align:center;min-width:120px;flex:1}
.icta-price-label{font-size:11px;color:#777;margin-bottom:4px}
.icta-price-value{font-size:16px;font-weight:900;color:#e65100}
.icta-price-value small{font-size:11px;font-weight:400;color:#999}
.icta-bottom-btns{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.icta-btn-sm{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:700;color:#fff;text-decoration:none;min-width:110px;transition:opacity .2s}
.icta-btn-sm:hover{opacity:.85}
.icta-btn-sm-phone{background:linear-gradient(135deg,#FF9800,#F57C00)}
a[href*="phone-contact"].icta-btn-sm{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn-sm{display:none}
.icta-btn-sm-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-sm-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
@media(max-width:768px){

.icta-top{padding:14px}

.icta-top-phone,.icta-top-hours{display:none}

.icta-btn{min-width:120px;font-size:12px;padding:8px 12px}

.icta-btn-phone-sp{display:inline-flex}

a[href*="phone-contact"].icta-btn{display:none !important}

a[href^="tel:"].icta-btn{display:inline-flex !important}

a[href*="phone-contact"].icta-btn-sm{display:none !important}

a[href^="tel:"].icta-btn-sm{display:inline-flex !important}

.icta-top-btns{gap:8px}

.icta-badge{font-size:10px}

.icta-mid{padding:14px 16px}

.icta-mid-copy{font-size:13px}

.icta-price-list{gap:8px}

.icta-price-item{min-width:90px;padding:8px 10px}

.icta-price-value{font-size:14px}

.icta-btn-sm{min-width:90px;font-size:11px;padding:7px 10px}

.icta-bottom-btns{gap:6px}
}
/* ==== article_pc.html style#8 ==== */
        /* 料金プランバナー(右下) */        .pricing-fixed-banner {            position: fixed;            right: 20px;            bottom: 60px;            z-index: 999;            display: none; /* デフォルトは非表示 */        }
/* ==== article_pc.html style#9 ==== */
.supervisor-compact-wrapper {    max-width: 800px;    margin: 40px auto 20px;    padding: 0 20px;    font-family: 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;}
.supervisor-compact-card {    background: #f8f9fa;    border: 2px solid #5a7a9e;    border-radius: 10px;    padding: 25px 30px;    display: flex;    gap: 25px;    align-items: flex-start;}
.supervisor-compact-photo {    flex-shrink: 0;    width: 120px;    height: 150px;    border-radius: 10px;    background-image: url('https://www.meigi-henkou.jp/_p/2529/images/pc/7f3a60c9.jpg');    background-size: cover;    background-position: center top;    box-shadow: 0 4px 12px rgba(0,0,0,0.15);    transition: opacity 0.3s;    display: block;}
.supervisor-compact-photo:hover {    opacity: 0.8;}
.supervisor-compact-content {    flex: 1;}
.supervisor-compact-label {    font-size: 13px;    color: #5a7a9e;    font-weight: bold;    margin-bottom: 8px;    letter-spacing: 1px;}
.supervisor-compact-name {    font-size: 22px;    font-weight: bold;    color: #333;    margin-bottom: 8px;}
.supervisor-compact-ruby {    font-size: 13px;    color: #666;    margin-left: 8px;}
.supervisor-compact-title {    font-size: 14px;    color: #555;    margin-bottom: 12px;    line-height: 1.7;}
.supervisor-compact-description {    font-size: 14px;    color: #333;    line-height: 1.8;    margin-bottom: 12px;}
.supervisor-compact-credentials {    display: flex;    flex-wrap: wrap;    gap: 10px;    margin-top: 12px;    margin-bottom: 12px;}
.supervisor-compact-badge {    background: #ffffff;    border: 1px solid #5a7a9e;    color: #5a7a9e;    padding: 6px 14px;    border-radius: 20px;    font-size: 12px;    font-weight: bold;}
@media (max-width: 768px) {
    .supervisor-compact-wrapper {        padding: 0 15px;        margin: 30px auto 15px;    }
    .supervisor-compact-card {        flex-direction: column;        padding: 20px;        gap: 15px;        align-items: center;        text-align: center;    }
    .supervisor-compact-photo {        width: 100px;        height: 125px;    }
    .supervisor-compact-name {        font-size: 20px;    }
    .supervisor-compact-title {        font-size: 13px;    }
    .supervisor-compact-description {        font-size: 13px;    }
    .supervisor-compact-credentials {        justify-content: center;    }
}
/* ============================================           PC固定バナー（右側） - 1350px以上           ============================================ */        .ufb-pc {            position: fixed;            right: 20px;            top: 45%;            transform: translateY(-50%);            z-index: 1000;            display: none;        }
@media (min-width: 1350px) {
            .ufb-pc { display: block; }
}
@media (max-width: 1349px) {
            .ufb-pc { display: none !important; }
}
.ufb-pc-container {            display: flex;            flex-direction: column;            gap: 15px;            width: 150px;        }
.ufb-pc-btn {            display: flex;            flex-direction: column;            align-items: center;            justify-content: center;            padding: 15px 10px;            text-decoration: none;            border-radius: 10px;            transition: all 0.3s ease;            font-weight: bold;            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);        }
.ufb-pc-btn:hover {            transform: translateY(-2px);            box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);        }
.ufb-pc-tel {            background: linear-gradient(135deg, #FF9800 0%, #F57C00 100%);            color: #fff !important;            border: none;        }
.ufb-pc-tel * { color: #fff !important; }
.ufb-pc-contact {            background: linear-gradient(135deg, #2196F3 0%, #1976D2 100%);            color: #fff !important;            border: none;        }
.ufb-pc-contact * { color: #fff !important; }
.ufb-pc-line {            background: linear-gradient(135deg, #06C755 0%, #00B900 100%);            color: #fff !important;            border: none;        }
.ufb-pc-line * { color: #fff !important; }
.ufb-pc .ufb-icon::before {            width: 28px;            height: 28px;        }
.ufb-pc-icon {            margin-bottom: 8px;        }
.ufb-pc-text {            font-size: 13px;            line-height: 1.3;            margin-bottom: 4px;            color: #fff;        }
.ufb-pc-contact .ufb-pc-text {            color: #FFF59D !important;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-number {            font-size: 14px;            font-weight: bold;            color: #FFF59D !important;            margin-bottom: 4px;            letter-spacing: 0.5px;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-subtext {            font-size: 10px;            opacity: 0.9;            color: #fff;        }
/* ==== home_pc.html style#4 ==== */

.icta-wrap{font-family:'Zen Maru Gothic','Klee One',sans-serif;box-sizing:border-box;margin:0;padding:0}
.icta-wrap *,.icta-wrap *::before,.icta-wrap *::after{box-sizing:border-box}
.icta-top{background:#f7f8fa;border:1px solid #e0e4e8;border-radius:12px 16px 14px 18px;padding:18px 20px;margin:25px 0 30px;text-align:center}
.icta-top-label{font-size:14px;font-weight:700;color:#333;margin-bottom:10px}
.icta-top-phone{font-size:22px;font-weight:900;color:#e65100;letter-spacing:1px;margin-bottom:4px}
.icta-top-phone a{color:#e65100;text-decoration:none}
.icta-top-hours{font-size:11px;color:#777;margin-bottom:12px}
.icta-top-btns{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.icta-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:6px;font-size:13px;font-weight:700;color:#fff;text-decoration:none;min-width:140px;transition:opacity .2s}
.icta-btn:hover{opacity:.85}
.icta-btn-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
.icta-btn-phone-sp{background:linear-gradient(135deg,#FF9800,#F57C00);display:none}
a[href*="phone-contact"].icta-btn{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn{display:none}
.icta-top-badges{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.icta-badge{font-size:11px;color:#555;display:flex;align-items:center;gap:3px}
.icta-badge::before{content:"\2713";color:#06C755;font-weight:900;font-size:13px}
.icta-mid{background:#f0faf3;border-left:4px solid #06C755;border-radius:0 10px 10px 0;padding:16px 20px;margin:30px 0}
.icta-mid-copy{font-size:14px;font-weight:700;color:#333;margin-bottom:12px;line-height:1.6}
.icta-mid-btns{display:flex;gap:10px;flex-wrap:wrap}
.icta-bottom{background:#fff;border:2px solid #2196F3;border-radius:12px 16px 14px 18px;padding:20px;margin:30px 0}
.icta-bottom-title{font-size:15px;font-weight:900;color:#1565C0;text-align:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #e0e4e8}
.icta-price-list{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.icta-price-item{background:#f7f8fa;border-radius:8px;padding:10px 14px;text-align:center;min-width:120px;flex:1}
.icta-price-label{font-size:11px;color:#777;margin-bottom:4px}
.icta-price-value{font-size:16px;font-weight:900;color:#e65100}
.icta-price-value small{font-size:11px;font-weight:400;color:#999}
.icta-bottom-btns{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.icta-btn-sm{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:700;color:#fff;text-decoration:none;min-width:110px;transition:opacity .2s}
.icta-btn-sm:hover{opacity:.85}
.icta-btn-sm-phone{background:linear-gradient(135deg,#FF9800,#F57C00)}
a[href*="phone-contact"].icta-btn-sm{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn-sm{display:none}
.icta-btn-sm-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-sm-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
@media(max-width:768px){

.icta-top{padding:14px}

.icta-top-phone,.icta-top-hours{display:none}

.icta-btn{min-width:120px;font-size:12px;padding:8px 12px}

.icta-btn-phone-sp{display:inline-flex}

a[href*="phone-contact"].icta-btn{display:none !important}

a[href^="tel:"].icta-btn{display:inline-flex !important}

a[href*="phone-contact"].icta-btn-sm{display:none !important}

a[href^="tel:"].icta-btn-sm{display:inline-flex !important}

.icta-top-btns{gap:8px}

.icta-badge{font-size:10px}

.icta-mid{padding:14px 16px}

.icta-mid-copy{font-size:13px}

.icta-price-list{gap:8px}

.icta-price-item{min-width:90px;padding:8px 10px}

.icta-price-value{font-size:14px}

.icta-btn-sm{min-width:90px;font-size:11px;padding:7px 10px}

.icta-bottom-btns{gap:6px}
}
/* ==== home_pc.html style#11 ==== */
.supervisor-compact-wrapper {    max-width: 800px;    margin: 40px auto 20px;    padding: 0 20px;    font-family: 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;}
.supervisor-compact-card {    background: #f8f9fa;    border: 2px solid #5a7a9e;    border-radius: 10px;    padding: 25px 30px;    display: flex;    gap: 25px;    align-items: flex-start;}
.supervisor-compact-photo {    flex-shrink: 0;    width: 120px;    height: 150px;    border-radius: 10px;    background-image: url('https://www.meigi-henkou.jp/_p/2529/images/pc/7f3a60c9.jpg');    background-size: cover;    background-position: center top;    box-shadow: 0 4px 12px rgba(0,0,0,0.15);    transition: opacity 0.3s;    display: block;}
.supervisor-compact-photo:hover {    opacity: 0.8;}
.supervisor-compact-content {    flex: 1;}
.supervisor-compact-label {    font-size: 13px;    color: #5a7a9e;    font-weight: bold;    margin-bottom: 8px;    letter-spacing: 1px;}
.supervisor-compact-name {    font-size: 22px;    font-weight: bold;    color: #333;    margin-bottom: 8px;}
.supervisor-compact-ruby {    font-size: 13px;    color: #666;    margin-left: 8px;}
.supervisor-compact-title {    font-size: 14px;    color: #555;    margin-bottom: 12px;    line-height: 1.7;}
.supervisor-compact-description {    font-size: 14px;    color: #333;    line-height: 1.8;    margin-bottom: 12px;}
.supervisor-compact-credentials {    display: flex;    flex-wrap: wrap;    gap: 10px;    margin-top: 12px;    margin-bottom: 12px;}
.supervisor-compact-badge {    background: #ffffff;    border: 1px solid #5a7a9e;    color: #5a7a9e;    padding: 6px 14px;    border-radius: 20px;    font-size: 12px;    font-weight: bold;}
@media (max-width: 768px) {
    .supervisor-compact-wrapper {        padding: 0 15px;        margin: 30px auto 15px;    }
    .supervisor-compact-card {        flex-direction: column;        padding: 20px;        gap: 15px;        align-items: center;        text-align: center;    }
    .supervisor-compact-photo {        width: 100px;        height: 125px;    }
    .supervisor-compact-name {        font-size: 20px;    }
    .supervisor-compact-title {        font-size: 13px;    }
    .supervisor-compact-description {        font-size: 13px;    }
    .supervisor-compact-credentials {        justify-content: center;    }
}
/* ============================================           PC固定バナー（右側） - 1350px以上           ============================================ */        .ufb-pc {            position: fixed;            right: 20px;            top: 45%;            transform: translateY(-50%);            z-index: 1000;            display: none;        }
@media (min-width: 1350px) {
            .ufb-pc { display: block; }
}
@media (max-width: 1349px) {
            .ufb-pc { display: none !important; }
}
.ufb-pc-container {            display: flex;            flex-direction: column;            gap: 15px;            width: 150px;        }
.ufb-pc-btn {            display: flex;            flex-direction: column;            align-items: center;            justify-content: center;            padding: 15px 10px;            text-decoration: none;            border-radius: 10px;            transition: all 0.3s ease;            font-weight: bold;            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);        }
.ufb-pc-btn:hover {            transform: translateY(-2px);            box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);        }
.ufb-pc-tel {            background: linear-gradient(135deg, #FF9800 0%, #F57C00 100%);            color: #fff !important;            border: none;        }
.ufb-pc-tel * { color: #fff !important; }
.ufb-pc-contact {            background: linear-gradient(135deg, #2196F3 0%, #1976D2 100%);            color: #fff !important;            border: none;        }
.ufb-pc-contact * { color: #fff !important; }
.ufb-pc-line {            background: linear-gradient(135deg, #06C755 0%, #00B900 100%);            color: #fff !important;            border: none;        }
.ufb-pc-line * { color: #fff !important; }
.ufb-pc .ufb-icon::before {            width: 28px;            height: 28px;        }
.ufb-pc-icon {            margin-bottom: 8px;        }
.ufb-pc-text {            font-size: 13px;            line-height: 1.3;            margin-bottom: 4px;            color: #fff;        }
.ufb-pc-contact .ufb-pc-text {            color: #FFF59D !important;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-number {            font-size: 14px;            font-weight: bold;            color: #FFF59D !important;            margin-bottom: 4px;            letter-spacing: 0.5px;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-subtext {            font-size: 10px;            opacity: 0.9;            color: #fff;        }
/* ==== home_sp.html style#4 ==== */

.icta-wrap{font-family:'Zen Maru Gothic','Klee One',sans-serif;box-sizing:border-box;margin:0;padding:0}
.icta-wrap *,.icta-wrap *::before,.icta-wrap *::after{box-sizing:border-box}
.icta-top{background:#f7f8fa;border:1px solid #e0e4e8;border-radius:12px 16px 14px 18px;padding:18px 20px;margin:25px 0 30px;text-align:center}
.icta-top-label{font-size:14px;font-weight:700;color:#333;margin-bottom:10px}
.icta-top-phone{font-size:22px;font-weight:900;color:#e65100;letter-spacing:1px;margin-bottom:4px}
.icta-top-phone a{color:#e65100;text-decoration:none}
.icta-top-hours{font-size:11px;color:#777;margin-bottom:12px}
.icta-top-btns{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.icta-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:6px;font-size:13px;font-weight:700;color:#fff;text-decoration:none;min-width:140px;transition:opacity .2s}
.icta-btn:hover{opacity:.85}
.icta-btn-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
.icta-btn-phone-sp{background:linear-gradient(135deg,#FF9800,#F57C00);display:none}
a[href*="phone-contact"].icta-btn{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn{display:none}
.icta-top-badges{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.icta-badge{font-size:11px;color:#555;display:flex;align-items:center;gap:3px}
.icta-badge::before{content:"\2713";color:#06C755;font-weight:900;font-size:13px}
.icta-mid{background:#f0faf3;border-left:4px solid #06C755;border-radius:0 10px 10px 0;padding:16px 20px;margin:30px 0}
.icta-mid-copy{font-size:14px;font-weight:700;color:#333;margin-bottom:12px;line-height:1.6}
.icta-mid-btns{display:flex;gap:10px;flex-wrap:wrap}
.icta-bottom{background:#fff;border:2px solid #2196F3;border-radius:12px 16px 14px 18px;padding:20px;margin:30px 0}
.icta-bottom-title{font-size:15px;font-weight:900;color:#1565C0;text-align:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #e0e4e8}
.icta-price-list{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.icta-price-item{background:#f7f8fa;border-radius:8px;padding:10px 14px;text-align:center;min-width:120px;flex:1}
.icta-price-label{font-size:11px;color:#777;margin-bottom:4px}
.icta-price-value{font-size:16px;font-weight:900;color:#e65100}
.icta-price-value small{font-size:11px;font-weight:400;color:#999}
.icta-bottom-btns{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.icta-btn-sm{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:700;color:#fff;text-decoration:none;min-width:110px;transition:opacity .2s}
.icta-btn-sm:hover{opacity:.85}
.icta-btn-sm-phone{background:linear-gradient(135deg,#FF9800,#F57C00)}
a[href*="phone-contact"].icta-btn-sm{background:linear-gradient(135deg,#FF9800,#F57C00);display:inline-flex}
a[href^="tel:"].icta-btn-sm{display:none}
.icta-btn-sm-line{background:linear-gradient(135deg,#06C755,#00B900)}
.icta-btn-sm-web{background:linear-gradient(135deg,#2196F3,#1976D2)}
@media(max-width:768px){

.icta-top{padding:14px}

.icta-top-phone,.icta-top-hours{display:none}

.icta-btn{min-width:120px;font-size:12px;padding:8px 12px}

.icta-btn-phone-sp{display:inline-flex}

a[href*="phone-contact"].icta-btn{display:none !important}

a[href^="tel:"].icta-btn{display:inline-flex !important}

a[href*="phone-contact"].icta-btn-sm{display:none !important}

a[href^="tel:"].icta-btn-sm{display:inline-flex !important}

.icta-top-btns{gap:8px}

.icta-badge{font-size:10px}

.icta-mid{padding:14px 16px}

.icta-mid-copy{font-size:13px}

.icta-price-list{gap:8px}

.icta-price-item{min-width:90px;padding:8px 10px}

.icta-price-value{font-size:14px}

.icta-btn-sm{min-width:90px;font-size:11px;padding:7px 10px}

.icta-bottom-btns{gap:6px}
}
/* ==== home_sp.html style#10 ==== */
.supervisor-compact-wrapper {    max-width: 800px;    margin: 40px auto 20px;    padding: 0 20px;    font-family: 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;}
.supervisor-compact-card {    background: #f8f9fa;    border: 2px solid #5a7a9e;    border-radius: 10px;    padding: 25px 30px;    display: flex;    gap: 25px;    align-items: flex-start;}
.supervisor-compact-photo {    flex-shrink: 0;    width: 120px;    height: 150px;    border-radius: 10px;    background-image: url('https://www.meigi-henkou.jp/_p/2529/images/pc/7f3a60c9.jpg');    background-size: cover;    background-position: center top;    box-shadow: 0 4px 12px rgba(0,0,0,0.15);    transition: opacity 0.3s;    display: block;}
.supervisor-compact-photo:hover {    opacity: 0.8;}
.supervisor-compact-content {    flex: 1;}
.supervisor-compact-label {    font-size: 13px;    color: #5a7a9e;    font-weight: bold;    margin-bottom: 8px;    letter-spacing: 1px;}
.supervisor-compact-name {    font-size: 22px;    font-weight: bold;    color: #333;    margin-bottom: 8px;}
.supervisor-compact-ruby {    font-size: 13px;    color: #666;    margin-left: 8px;}
.supervisor-compact-title {    font-size: 14px;    color: #555;    margin-bottom: 12px;    line-height: 1.7;}
.supervisor-compact-description {    font-size: 14px;    color: #333;    line-height: 1.8;    margin-bottom: 12px;}
.supervisor-compact-credentials {    display: flex;    flex-wrap: wrap;    gap: 10px;    margin-top: 12px;    margin-bottom: 12px;}
.supervisor-compact-badge {    background: #ffffff;    border: 1px solid #5a7a9e;    color: #5a7a9e;    padding: 6px 14px;    border-radius: 20px;    font-size: 12px;    font-weight: bold;}
@media (max-width: 768px) {
    .supervisor-compact-wrapper {        padding: 0 15px;        margin: 30px auto 15px;    }
    .supervisor-compact-card {        flex-direction: column;        padding: 20px;        gap: 15px;        align-items: center;        text-align: center;    }
    .supervisor-compact-photo {        width: 100px;        height: 125px;    }
    .supervisor-compact-name {        font-size: 20px;    }
    .supervisor-compact-title {        font-size: 13px;    }
    .supervisor-compact-description {        font-size: 13px;    }
    .supervisor-compact-credentials {        justify-content: center;    }
}
/* ============================================           PC固定バナー（右側） - 1350px以上           ============================================ */        .ufb-pc {            position: fixed;            right: 20px;            top: 45%;            transform: translateY(-50%);            z-index: 1000;            display: none;        }
@media (min-width: 1350px) {
            .ufb-pc { display: block; }
}
@media (max-width: 1349px) {
            .ufb-pc { display: none !important; }
}
.ufb-pc-container {            display: flex;            flex-direction: column;            gap: 15px;            width: 150px;        }
.ufb-pc-btn {            display: flex;            flex-direction: column;            align-items: center;            justify-content: center;            padding: 15px 10px;            text-decoration: none;            border-radius: 10px;            transition: all 0.3s ease;            font-weight: bold;            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);        }
.ufb-pc-btn:hover {            transform: translateY(-2px);            box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);        }
.ufb-pc-tel {            background: linear-gradient(135deg, #FF9800 0%, #F57C00 100%);            color: #fff !important;            border: none;        }
.ufb-pc-tel * { color: #fff !important; }
.ufb-pc-contact {            background: linear-gradient(135deg, #2196F3 0%, #1976D2 100%);            color: #fff !important;            border: none;        }
.ufb-pc-contact * { color: #fff !important; }
.ufb-pc-line {            background: linear-gradient(135deg, #06C755 0%, #00B900 100%);            color: #fff !important;            border: none;        }
.ufb-pc-line * { color: #fff !important; }
.ufb-pc .ufb-icon::before {            width: 28px;            height: 28px;        }
.ufb-pc-icon {            margin-bottom: 8px;        }
.ufb-pc-text {            font-size: 13px;            line-height: 1.3;            margin-bottom: 4px;            color: #fff;        }
.ufb-pc-contact .ufb-pc-text {            color: #FFF59D !important;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-number {            font-size: 14px;            font-weight: bold;            color: #FFF59D !important;            margin-bottom: 4px;            letter-spacing: 0.5px;            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);        }
.ufb-pc-subtext {            font-size: 10px;            opacity: 0.9;            color: #fff;        }

/* ===== sidebar mnav accordion ===== */
/* ==== article_pc.html style#5 ==== */

.area-sub .mnav{background:#fff;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08);overflow:hidden;font-size:14px;margin:0 0 16px}
.area-sub .mnav-ttl{background:linear-gradient(135deg,#1976d2,#0d3b66);color:#fff;font-weight:700;font-size:14px;padding:11px 14px;display:flex;align-items:center;gap:8px}
.area-sub .mnav details{border-bottom:1px solid #e3ebf2}
.area-sub .mnav details:last-child{border-bottom:none}
.area-sub .mnav summary{list-style:none;cursor:pointer;padding:11px 13px;font-weight:700;font-size:13.5px;color:#0a2540;display:flex;align-items:center;gap:8px;transition:background .15s}
.area-sub .mnav summary::-webkit-details-marker{display:none}
.area-sub .mnav summary:hover{background:#f0f6fc}
.area-sub .mnav summary .ic{flex:0 0 17px;color:#1976d2;display:flex}
.area-sub .mnav summary .chev{margin-left:auto;flex:0 0 auto;color:#7a93ab;transition:transform .2s}
.area-sub .mnav details[open]>summary{background:#eef5fc;color:#0d3b66}
.area-sub .mnav details[open]>summary .chev{transform:rotate(180deg)}
.area-sub .mnav a{display:block;padding:8px 14px 8px 40px;font-size:13px;color:#1565c0 !important;text-decoration:none;position:relative;border-top:1px solid #f1f5f9}
.area-sub .mnav a::before{content:"";position:absolute;left:24px;top:50%;width:5px;height:5px;margin-top:-2px;border-radius:50%;background:#9cc0e2}
.area-sub .mnav a:hover{background:#f5f9fc;text-decoration:underline}
.area-sub .mnav a.sub2{padding-left:54px;font-size:12.5px;color:#37618e !important}
.area-sub .mnav a.sub2::before{left:38px;width:4px;height:4px;background:#c2d6ea}

/* staging fix 2026-07-16: hide right floating CTA below 1440px to avoid overlapping the 1060px content column */
@media (max-width:1439px){.ufb-pc{display:none !important}}
