@charset "utf-8";

/* ============================================================
   career.css — 就職・進路ページ専用スタイル
   ============================================================ */

/* ----------------------------------------------------------
   色トークン（ページ固有）
   ---------------------------------------------------------- */
:root {
    --color-teal: #006666;
    --color-teal-dark: #005252;
    --color-teal-light: #e8f4f4;
    --color-catch-dark: #1a2e2e;
    --color-breadcrumb: #5c8a9e;
    --color-page-title-ja: #1a1a1a;
    --color-hero-lead: #555555;
}

/* ----------------------------------------------------------
   就職・進路
   ---------------------------------------------------------- */

.page_container ul.career_list {
    padding: 1.5rem 1.5rem 1.2rem 1.5rem;
    background: #fff9d8;
    border-radius: 1rem;
    margin-bottom: 3rem;
}

.page_container ul.career_list li {
    padding-left: 0;
}

.page_container ul.career_list li::before {
    display: none;
}

.career_link_list {}

.page_container .career_link_list ul {
    display: flex;
    gap: 3rem;
}

.page_container .career_link_list ul li {
    padding: 0;
    margin-bottom: 0;
}

.page_container .career_link_list ul li::before {
    display: none;
}

.page_container .career_link_list ul li a {
    display: flex;
    align-items: center;
    gap: 0.475rem;
    position: relative;
    text-decoration: none;
}

.page_container .career_link_list ul li a:hover {
    text-decoration: none;
    color: #222;
}

.page_container .career_link_list ul li a::before {
    content: "";
    display: inline-flex;
    width: 2rem;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1px solid var(--color-teal);
    flex-shrink: 0;
    background-image: url(../assets/images/icon_arrow_green_r.png);
    background-repeat: no-repeat;
    background-size: 0.5rem;
    background-position: center;
    background-color: #fff;
    transition: .3s all ease;
}

.page_container .career_link_list ul li a:hover::before {
    background-color: var(--color-teal);
    background-image: url(../assets/images/icon_arrow_white_r.png);
}

.page_container .career_link_list ul li a[target="_blank"]::after {
    content: "";
    display: block;
    width: 0.75rem;
    height: 0.75rem;
    background-image: url(../assets/images/icon_ext_link.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0.7em;
    right: -1.2rem;
}

.shushokusaki_example{
    display: flex;
    margin-bottom: 4rem;
    gap: 3rem;
}

    .shushokusaki_example > dl{
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

        .shushokusaki_example > dl dt{
            color: var(--color-teal);
            font-weight: 600;
            font-size: 1.3rem;
            margin-bottom: 0.5em;
        }

        .shushokusaki_example > dl dd{
            width: 100%;
        }

            .shushokusaki_example > dl dd ul{
                display: flex;
                flex-wrap: wrap;
                margin: 0;
                gap: 1rem;
            }

            .shushokusaki_example > dl dd ul li{
                padding: 1rem;
                margin: 0;
                border: 1px solid #ccc;
                border-radius: 100vh;
                width: calc((100% - 1rem) / 2);
                text-align: center;
                font-weight: 500;
            }

            .shushokusaki_example > dl dd ul li::before{
                content: none;
            }

.shushokusaki_latest{
    position: relative;
    padding: 4rem 0 5rem;    
}

    .shushokusaki_latest::before{
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 100vw;
        height: 100%;
        background: #f0f0f0;
        z-index: -1;
    }

    .page_container .shushokusaki_latest h3{
        color: #d65b3c;
        margin: 2rem 0 0.5rem 0;
        padding: 0;
    }


    .shushokusaki_companies{
        position: relative;
        padding: 2rem 3rem 2rem 3rem;
        background: var(--color-white);
        border-radius: var(--radius-md); 
        margin-bottom: 2rem;
    }

    .page_container .shushokusaki_companies h4{
        font-size: 1.3rem;
        font-weight: 700;
        color: #1a1a1a;
        margin: 0 0 0.5rem 0;
        padding: 0;
        border-bottom: none;
    }

        .page_container .shushokusaki_companies h4::before{
            content: none;
        }

    .page_container .shushokusaki_companies p{
        margin-bottom: 0.5em;
        position: relative;
        padding-left: 6em;
    }

        .page_container .shushokusaki_companies p .lbl_shinro_cat{
            display: inline-block;
            width: 6em;
            position: absolute;
            top: 0;
            left: 0;
        }

/* ##########SP########## */
@media screen and (min-width:1px) and (max-width:479px) {

    /* 就職先リスト：padding縮小 */
    .page_container ul.career_list {
        padding: 1rem;
    }


    .shushokusaki_example{
        flex-direction: column;
        gap: 1.5rem;
    }
        
    .shushokusaki_example > dl dd ul{
        gap: 0.5rem;
    }
        .shushokusaki_example > dl dd ul li{
            padding: 0.8rem 0.5rem;
        }

    .shushokusaki_companies{
        padding: 1.5rem;
    }

    .page_container .shushokusaki_companies h4{
        font-size: 1rem;
    }

    .page_container .shushokusaki_companies p{
        padding-left: 0;
        line-height: 1.6;
    }

    .page_container .shushokusaki_companies p .lbl_shinro_cat{
        position: relative;
        display: block;
    }

    .page_container .career_link_list ul{
        flex-wrap: wrap;
        gap: 0.5rem 1rem;
    }
            

}