.AccordionMenu {
    width: 100%;

    .AccordionItem {
        border-bottom: 1px solid #e0e0e0;

        .AccordionHeader {
            width: 100%;
            background: none;
            border: none;
            text-align: left;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 15px;
            font-weight: 500;
            color: #333;
            transition: background-color 0.2s ease;
            list-style: none;

            &:hover {
                background-color: #f5f5f5;
            }

            span {
                flex: 1;
                padding: 18px 16px;
            }

            a {
                flex: 1;
                display: block;
                padding: 18px 16px;
                color: inherit;
                text-decoration: none;
                transition: background-color 0.2s ease, color 0.2s ease;

                &:hover {
                    background-color: #e8f4fd;
                    color: #1976d2;
                }
            }
        }

        .AccordionIcon {
            font-size: 14px;
            color: #666;
            margin-right: 16px;
            transition: transform 0.3s ease;
        }

        .AccordionContent {
            background-color: #fafafa;
            border-top: 1px solid #e0e0e0;

            a {
                display: block;
                padding: 14px 32px;
                color: #555;
                text-decoration: none;
                font-size: 13px;
                transition: background-color 0.2s ease, color 0.2s ease;
                border-bottom: 1px solid #eeeeee;

                &:last-child {
                    border-bottom: none;
                }

                &:hover {
                    background-color: #e8f4fd;
                    color: #1976d2;
                }
            }
        }

        /* detailsのデフォルトマーカーを非表示 */
        &:has(summary) {
            summary {
                list-style: none;

                &::-webkit-details-marker {
                    display: none;
                }

                &::marker {
                    display: none;
                }
            }
        }

        /* details要素が開いている時のアイコン回転 */
        &[open] .AccordionIcon {
            transform: rotate(180deg);
        }
    }
}
