/* ==============================
 * MitsuPita Job – 全体背景
 * ============================== */
body.single-jobs {
    background: #eaf7ee;
}

/* ==============================
 * MitsuPita Job – ヒーロー
 * ============================== */
.job-hero {
    background: #eaf7ee; /* ←統一カラー */
    text-align: center;
    padding: 70px 20px 30px; /* ←上を少し広く */
}

/* 画像 */
.job-hero img {
    max-width: 480px; /* ←少しだけ大きく */
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    filter: drop-shadow(0 10px 25px rgba(0,0,0,0.08));
}

/* スマホ */
@media (max-width: 768px) {
    .job-hero {
        padding: 40px 16px 15px;
    }

    .job-hero img {
        max-width: 280px;
    }
}

/* ==============================
 * ヘッダー上部ライン
 * ============================== */
.job-head {
    background: #fff;
    max-width: 900px;
    margin: -20px auto 30px;
    padding: 28px 30px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);

    border-top: 5px solid #2e7d32; /* ←これ追加 */
}
/* ==============================
 * MitsuPita Job – ヘッダーカード
 * ============================== */
.job-head {
    background: #fff;
    max-width: 900px;
    margin: -20px auto 30px; /* ←ヒーローに少し被せる */
    padding: 28px 30px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);
    position: relative;
    z-index: 2;
}

/* ==============================
 * タイトル
 * ============================== */
.job-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 12px;
    color: #222;
}

/* NEWバッジ */
.job-new {
    display: inline-block;
    background: #ff5252;
    color: #fff;
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 999px;
    margin-left: 8px;
}

/* ==============================
 * 年収バッジ
 * ============================== */
.job-salary-badge {
    margin-bottom: 14px;
}

.salary-annual,
.salary-monthly {
    display: inline-block;
    background: #2e7d32;
    color: #fff;
    font-size: 13px;
    padding: 6px 12px;
    border-radius: 999px;
    font-weight: 600;
}

/* ==============================
 * タグ（チップ）
 * ============================== */
.job-chips {
    margin-bottom: 14px;
}

.job-chip {
    display: inline-block;
    background: #f1f5f2;
    color: #2e7d32;
    font-size: 12px;
    padding: 5px 10px;
    border-radius: 999px;
    margin: 4px 6px 0 0;
}

/* ==============================
 * キャッチコピー
 * ============================== */
.job-catch {
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 10px;
    color: #444;
}

/* ==============================
 * 会社名
 * ============================== */
.job-company {
    font-size: 14px;
    color: #666;
    margin-bottom: 16px;
}

/* ==============================
 * 企業概要（中のカード）
 * ============================== */
.job-company-overview {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid #eee;
}

.job-section-title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
}

.job-company-desc {
    font-size: 14px;
    line-height: 1.8;
    color: #444;
}

/* ==============================
 * スマホ
 * ============================== */
@media (max-width: 768px) {
    .job-head {
        margin: -10px 16px 20px;
        padding: 20px;
        border-radius: 14px;
    }

    .job-title {
        font-size: 20px;
    }
}

/* ==============================
 * MitsuPita Job – 仕事内容（ヘッダーと同一デザイン）
 * ============================== */
.job-box {
    background: #fff;
    max-width: 900px;
    margin: 0 auto 30px;
    padding: 28px 30px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);

    border-top: 5px solid #2e7d32; /* ←ヘッダーと同じライン */
}

/* 見出し */
.job-box h2 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #2e7d32;
    color: #222;
}

/* 本文 */
.job-box p {
    font-size: 15px;
    line-height: 1.9;
    margin-bottom: 16px;
    color: #444;
}

/* リスト */
.job-box ul,
.job-box ol {
    margin-left: 20px;
    margin-bottom: 16px;
}

.job-box li {
    margin-bottom: 8px;
    line-height: 1.8;
}

/* ==============================
 * MitsuPita Job – 共通カード（仕事内容・募集要項・CTA）
 * ============================== */
.job-box {
    background: #fff;
    max-width: 900px;
    margin: 0 auto 30px;
    padding: 28px 30px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);
    border-top: 5px solid #2e7d32;
    transition: 0.2s;
}

.job-box:hover {
    transform: translateY(-2px);
}

/* 見出し */
.job-box h2 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #2e7d32;
    color: #222;
}

/* 本文 */
.job-box p {
    font-size: 15px;
    line-height: 1.9;
    margin-bottom: 16px;
    color: #444;
}

/* リスト */
.job-box ul,
.job-box ol {
    margin-left: 20px;
    margin-bottom: 16px;
}

.job-box li {
    margin-bottom: 8px;
    line-height: 1.8;
}

/* テーブル（募集要項用） */
.job-box table {
    width: 100%;
    border-collapse: collapse;
}

.job-box th {
    width: 30%;
    background: #f4f8f5;
    padding: 12px;
    text-align: left;
}

.job-box td {
    padding: 12px;
}

.job-box tr {
    border-bottom: 1px solid #ddd;
}


/* ==============================
 * MitsuPita Job – CTA（最終調整版）
 * ============================== */

/* CTAカード（job-boxと併用前提） */
.job-cta {
    text-align: center;
    border-top: 6px solid #1b5e20; /* 少し強調 */
    box-shadow: 0 16px 40px rgba(0,0,0,0.08); /* 少し強め */
    margin-top: 40px;
}

/* 中身は横並び */
.job-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

/* テキスト */
.job-cta-content {
    flex: 1;
    text-align: left;
}

/* キャラ */
.job-cta-character img {
    width: 150px;
    height: auto;
    margin-top: 0;
    transform: translateY(10px); /* 少しだけ下げてバランス調整 */
}

/* ボタン（強調強め） */
.job-cta-btn {
    display: inline-block;
    background: #2e7d32;
    color: #fff;
    padding: 18px 36px;
    border-radius: 999px;
    font-weight: bold;
    text-decoration: none;
    margin: 18px 0;
    transition: 0.25s ease;
    font-size: 18px;
    box-shadow: 0 6px 15px rgba(46,125,50,0.25);
}

.job-cta-btn:hover {
    transform: translateY(-3px);
    opacity: 0.92;
    box-shadow: 0 10px 25px rgba(46,125,50,0.3);
}

/* ==============================
 * スマホ対応
 * ============================== */
@media (max-width: 768px) {

    .job-cta-inner {
        flex-direction: column;
        text-align: center;
        gap: 16px;
    }

    .job-cta-content {
        text-align: center;
    }

    .job-cta-character img {
        width: 110px;
        transform: none; /* スマホではリセット */
    }

    .job-cta-btn {
        font-size: 16px;
        padding: 14px 28px;
    }
}

/* ==============================
 * 法定表記（最終調整）
 * ============================== */
.job-legal {
    max-width: 900px;
    margin: 20px auto 50px;
    padding: 18px 20px;
    font-size: 12px;
    color: #666;
    line-height: 1.7;
    text-align: center;
    opacity: 0.9;
}

/* 許可番号だけ少し強調 */
.job-legal-number {
    display: inline-block;
    margin-top: 6px;
    font-weight: 600;
    color: #333;
}

/* ==============================
 * サポートエリア（完成版）
 * ============================== */

.job-support-inner {
    display: flex;
    align-items: flex-end; /* ←ここ重要 */
    justify-content: space-between;
    gap: 30px;
}

/* 左 */
.job-support-content {
    flex: 1;
    background: #f7fbf8;
    padding: 24px;
    border-radius: 14px;
}

/* 右キャラ */
.job-support-character {
    position: relative;
}

/* ★ここで大きくする（重要） */
.job-support-character img {
    width: 300px;  /* ←ここが今回の本命 */
    height: auto;
}

/* 吹き出し */
.support-comment {
    position: absolute;
    bottom: 110px;
    left: -140px;

    background: #fff;
    padding: 12px 18px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: bold;

    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

/* 三角 */
.support-comment::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 60px;

    border-width: 10px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

/* CTA */
.job-support-cta {
    margin-top: 20px;
}

/* ==============================
 * スマホ
 * ============================== */
@media (max-width: 768px) {

    .job-support-inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .job-support-character img {
        width: 200px;
    }

    .support-comment {
        position: static;
        margin-top: 10px;
    }
}

/* ==============================
 * 関連求人（統一カード）
 * ============================== */

.related-jobs .job-card,
.similar-jobs .job-card {
    background: #fff;
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.06);
    transition: 0.2s;
    border-top: 4px solid #2e7d32;
}

/* ホバー */
.related-jobs .job-card:hover,
.similar-jobs .job-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.1);
}

/* タイトル */
.related-jobs .job-card-title {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 6px;
}

/* 給与 */
.related-jobs .job-card-salary {
    font-size: 13px;
    color: #2e7d32;
    font-weight: 600;
}

/* グリッド整形 */
.related-jobs .job-list,
.similar-jobs .job-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

/* スマホ */
@media (max-width: 768px) {
    .related-jobs .job-list,
    .similar-jobs .job-list {
        grid-template-columns: 1fr;
    }
}