/* =========================
   Consulting Section
========================= */

/* Variables */
:root {
    --color-accent: #2995DB;
    /* Accent Color */
    --color-main: #222222;
    /* Main Black */
    --color-text: #444444;
    /* Body Text */
    --color-bg: #FFFFFF;
    /* Base White */
    --color-light-gray: #f5f7fa;
    --font-jp: 'Noto Sans JP', sans-serif;
    --font-en: 'Montserrat', sans-serif;
}

/* consulting.css */
.page-template-page-services .services {
    background: #f7f9fb;
}

.service_container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.services {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}


.services__title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px;
}

.services__intro p {
    line-height: 1.9;
}

/* =========================
   Block
========================= */

.services__block {
    margin: 0 1rem 2rem 1rem;
}

.services__subtitle {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 30px;
}

.services__subtitle--jp {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #777;
    margin-top: 5px;
}

/* =========================
   service List
========================= */

.service-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    max-width: 70rem;
}

/* =========================
   Responsive（SP）
========================= */

@media (max-width: 768px) {

    /* service list */
    .service-list {
        grid-template-columns: 1fr;
        gap: 1rem;
    }


}

.service-item {
    background: transparent;
    padding: 30px;
    border-radius: 1rem;
    color: var(--color-main);
    display: flex;
    flex-direction: column;
    min-height: 100%;
    /* or min-height */
    gap: 0.5rem;
    border: 1px solid var(--color-main);
}

.service-label {
    display: inline-block;
    font-size: 1rem;
    font-weight: 500;
    color: var(--color-accent);
    letter-spacing: 0.1rem;
}

.service-item h5 {
    font-size: 18px;
    font-weight: 700;
}

.service-item p {
    line-height: 1.8;
}


.btn-secondary {
    display: inline-flex;
    align-items: center;
    background: transparent;
    border: 1px solid var(--color-main);
    color: var(--color-main);
    padding: 0.5rem 1.5rem;
    font-weight: 700;
    border-radius: 50px;
    width: fit-content;
    margin-top: auto;
    margin-left: auto;
}

.btn-secondary:hover {
    background: var(--color-accent);
    /* Slight arrow animation */
}

.btn-secondary .arrow {
    margin-left: 10px;
    transition: margin 0.3s;
}


@media (max-width: 768px) {
    .services-list {
        grid-template-columns: 1fr;
    }
}