table.modern-audax-slim {
    width: 100% !important;
    border-collapse: collapse !important;
    border: none !important;
    margin: 30px 0 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans JP", sans-serif !important;
}

table.modern-audax-slim tr {
    border: none !important;
    border-bottom: 1px dotted #bec8d2 !important; 
    background: none !important;
    transition: background-color 0.2s ease !important;
}

table.modern-audax-slim tr:hover {
    background-color: #f8fafc !important;
}

table.modern-audax-slim th {
    width: 18% !important;
    padding: 16px 10px 16px 22px !important; 
    text-align: left !important;
    font-weight: 600 !important;
    color: #475569 !important;
    letter-spacing: 0.05em !important;
    border: none !important;
    background: none !important;
    position: relative !important;
}

table.modern-audax-slim th::before {
    content: "" !important;
    width: 8px !important;
    height: 8px !important;
    background-color: #0284c7 !important; 
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-block !important;
    border-radius: 1px !important;
}

table.modern-audax-slim td {
    padding: 16px 10px !important;
    text-align: left !important;
    color: #1e293b !important;
    font-weight: 500 !important;
    border: none !important;
    background: none !important;
}

@media screen and (max-width: 600px) {
    table.modern-audax-slim th {
        width: 28% !important;
        font-size: 0.9em !important;
    }
    table.modern-audax-slim td {
        font-size: 0.95em !important;
    }
}


/* 協会案内用のキリッとした固めのデザイン */
table.association-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 25px 0 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans JP", sans-serif !important;
    border-top: 2px solid #334155 !important;    /* 上下に濃い直線を引いて引き締める */
    border-bottom: 2px solid #334155 !important;
}

table.association-table tr {
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important; /* 内側はすっきりした細い実線 */
    background: none !important;
}

table.association-table th {
    width: 22% !important;                       /* 項目名がゆったり収まる幅 */
    padding: 14px 16px !important; 
    text-align: left !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    background-color: #f8fafc !important;        /* 左側の列に薄いグレーの背景を敷いてカチッと感を出す */
    border: none !important;
}

table.association-table td {
    padding: 14px 16px !important;
    text-align: left !important;
    color: #0f172a !important;
    font-weight: 400 !important;
    border: none !important;
    background: none !important;
}

@media screen and (max-width: 600px) {
    table.association-table th, 
    table.association-table td {
        padding: 12px 10px !important;
        font-size: 0.95em !important;
    }
    table.association-table th {
        width: 30% !important;
    }
}






.result-section-title {
    position: relative; /* 擬似要素を配置するための基準 */
    padding-left: 20px !important; /* 長方形との隙間 */
    background-color: transparent !important;
    margin-bottom: 20px !important;
    font-size: 1.25em !important;
    line-height: 1.4 !important;
}

.result-section-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%; /* 上下中央揃え */
    transform: translateY(-50%);
    width: 8px;      /* 長方形の横幅 */
    height: 24px;    /* 長方形の縦の長さ（見出しの高さに合わせて調整してください） */
    background-color: #0056b3; /* 青い長方形の色 */
    border-radius: 2px; /* 少しだけ角を丸くすると今風です（不要なら削除可） */
}

/* 1位（第1位）の行全体を強調するスタイル */
.winner-row {
    background-color: #e3f2fd !important; /* 薄い青色（水辺のイメージ） */
    font-weight: 600 !important;          /* 文字を少し太く */
}




