/* ========================================
   Sitemap Page (サイトマップ)
======================================== */
.sitemap-section {
    padding: clamp(40px, 6vw, 80px) clamp(20px, 5vw, 40px);
}

.sitemap-container {
    max-width: 900px;
    margin: 0 auto;
}

.sitemap-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(30px, 5vw, 60px);
}

.sitemap-column {
}

.sitemap-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sitemap-list li {
    position: relative;
    margin-bottom: clamp(16px, 2vw, 20px);
}

.sitemap-list li:last-child {
    margin-bottom: 0;
}

.sitemap-list a {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    color: color-mix(in srgb, #A19E99, #000000 20%);
    text-decoration: none;
    transition: color 0.3s ease;
}

/* 矢印の横線 */
.sitemap-list a::before {
    content: '';
    display: inline-block;
    width: 31.5px;
    height: 1px;
    background: #65BAA9;
    flex-shrink: 0;
}

/* 矢印の先端 */
.sitemap-list a::after {
    content: '';
    position: absolute;
    top: 16px;
    left: 23px;
    width: 10px;
    height: 1px;
    background: #65BAA9;
    transform: rotate(45deg);
}

.sitemap-list a:hover {
    color: #000000;
}

/* SNS Section */
.sitemap-sns-section {
    margin-top: clamp(40px, 5vw, 60px);
}

.sitemap-sns-title {
    font-size: clamp(14px, 1.4vw, 16px);
    font-weight: 500;
    line-height: 1.6;
    color: #444444;
    margin: 0 0 clamp(12px, 1.5vw, 20px);
}

.sitemap-sns-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: clamp(16px, 2vw, 30px);
}

.sitemap-sns-list li {
}

.sitemap-sns-list a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    color: color-mix(in srgb, #A19E99, #000000 20%);
    text-decoration: none;
    transition: color 0.3s ease;
}

.sitemap-sns-list a::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #65BAA9;
    border-right: 1px solid #65BAA9;
    transform: rotate(45deg);
}

.sitemap-sns-list a:hover {
    color: #000000;
}

@media (max-width: 768px) {
    .sitemap-grid {
        grid-template-columns: 1fr;
    }

    .sitemap-sns-list {
        flex-direction: column;
        gap: 12px;
    }

    .news-single-title {
        font-size: 20px;
    }

    .single-section {
        padding-left: 15px;
        padding-right: 15px;
    }

    .news-heading-h2 {
        align-items: flex-start;
    }

    .news-heading-icon {
        padding-top: 6px;
    }
}

