@charset "utf-8";

/*
 * 下層ページ共通（プライバシーポリシー・採用情報など）
 */

/* 下層ページ：body 上部に余白 */
body.page_work,
body.page_recruit,
body.page_contact,
body.page_privacypolicy,
body.page_interview_shimizu,
body.page_interview_nakamura,
body.page_interview_nakawatari {
    padding-top: 100px;
}

.page_main {
    padding: 3rem 0 5rem;
    background: #fff;
}

.page_inner {
    max-width: 80rem;
    margin: 0 auto;
    padding: 0 1.6rem;
}

.page_breadcrumb {
    font-size: 1.2rem;
    color: #666;
    margin: 1.6rem 0;
}

.page_breadcrumb a {
    color: #999; /* 薄いグレーに変更 */
    text-decoration: none;
}

.page_breadcrumb a:hover {
    text-decoration: underline;
}

.page_breadcrumb span {
    color: #333; /* 現在のページの色を#333に */
}

.page_breadcrumb_sep {
    margin: 0 0.4rem;
}

.page_ttl {
    font-size: 2.4rem;
    font-weight: 700;
    color: #141437;
    margin-bottom: 2.4rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #ff8a00;
}

.page_body {
    font-size: 1.5rem;
    line-height: 1.9;
    color: #333;
}

.page_body p {
    margin-bottom: 1.2rem;
}

.page_back {
    margin-top: 3rem;
    text-align: center;
}

.page_back_link {
    display: inline-block;
    padding: 1rem 2rem;
    font-size: 1.5rem;
    font-weight: 600;
    color: #ff8a00;
    text-decoration: none;
    border: 2px solid #ff8a00;
    border-radius: 2rem;
    transition: background 0.2s, color 0.2s;
}

.page_back_link:hover {
    background: #ff8a00;
    color: #fff;
}

/* プライバシーポリシー */
.policy_intro {
    margin-bottom: 2rem;
}

.policy_section {
    margin-bottom: 2.4rem;
}

.policy_heading {
    font-size: 1.8rem;
    font-weight: 700;
    color: #141437;
    margin-bottom: 1rem;
}

.policy_list {
    margin: 0.8rem 0 1.2rem 1.6rem;
    padding: 0;
    list-style: disc;
}

.policy_list li {
    margin-bottom: 0.4rem;
}

.policy_contact {
    margin-top: 1rem;
    padding: 1.6rem;
    background: #fff;
    border-radius: 0.8rem;
}

.policy_contact p {
    margin-bottom: 0.4rem;
}

.policy_contact a {
    color: #0093fe;
    text-decoration: none;
}

.policy_contact a:hover {
    text-decoration: underline;
}

/* 採用情報ページ */
.recruit_lead_wrap {
    margin-bottom: 2.4rem;
}

.recruit_lead {
    font-size: 1.6rem;
    font-weight: 600;
    color: #141437;
    margin: 0 0 0.8rem;
}

.recruit_lead_sub {
    font-size: 1.45rem;
    line-height: 1.85;
    color: #555;
    margin: 0;
}

.recruit_section {
    margin-bottom: 2.8rem;
}

/* 選考フロー */
.recruit_flow_lead {
    margin-bottom: 1.2rem;
}

.recruit_flow_list {
    list-style: none;
    margin: 0.8rem 0 0 1.6rem;
    padding: 0;
}

.recruit_flow_item {
    margin-bottom: 0.6rem;
    font-size: 1.45rem;
    line-height: 1.7;
    color: #333;
}

.recruit_flow_item:last-child {
    margin-bottom: 0;
}

.recruit_flow_item strong {
    color: #141437;
}

.recruit_section_ttl {
    font-size: 1.8rem;
    font-weight: 700;
    color: #141437;
    margin-bottom: 1rem;
    padding-left: 1rem;
    border-left: 4px solid #ff8a00;
}

.recruit_section_body p {
    margin-bottom: 1rem;
}

.recruit_section_body ul {
    margin: 0.8rem 0 1.2rem 1.6rem;
    list-style: disc;
}

.recruit_section_body ul li {
    margin-bottom: 0.4rem;
}

.recruit_table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    font-size: 1.4rem;
}

.recruit_table th,
.recruit_table td {
    border: 1px solid #ddd;
    padding: 1rem 1.2rem;
    text-align: left;
    vertical-align: top;
}

.recruit_table th {
    background: #fff;
    font-weight: 600;
    width: 14rem;
}

@media screen and (min-width: 768px) {
    .page_main {
        padding: 4rem 0 6rem;
    }

    .page_ttl {
        font-size: 2.8rem;
    }

    .policy_heading {
        font-size: 2rem;
    }

    .recruit_section_ttl {
        font-size: 2rem;
    }
}
