 | us-gaap:InvestmentsByConsolidatedAndNonconsolidatedEntitiesAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatements |
 | us-gaap:PledgedStatusAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatements |
 | us-gaap:RecourseStatusAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatements |
 | us-gaap:VariableInterestEntityLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatements |
 | us-gaap:InvestmentsByConsolidatedAndNonconsolidatedEntitiesAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatementsScheduleOfVariableInterestEntitiesTable |
 | us-gaap:PledgedStatusAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatementsScheduleOfVariableInterestEntitiesTable |
 | us-gaap:RecourseStatusAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/OrganizationConsolidationAndPresentationOfFinancialStatementsScheduleOfVariableInterestEntitiesTable |
 | us-gaap:InvestmentsByConsolidatedAndNonconsolidatedEntitiesAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingPolicies |
 | us-gaap:PledgedStatusAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingPolicies |
 | us-gaap:RecourseStatusAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingPolicies |
 | us-gaap:VariableInterestEntityLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingPolicies |
 | us-gaap:InvestmentsByConsolidatedAndNonconsolidatedEntitiesAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingPoliciesScheduleOfVariableInterestEntitiesTable |
 | us-gaap:PledgedStatusAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingPoliciesScheduleOfVariableInterestEntitiesTable |
 | us-gaap:RecourseStatusAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingPoliciesScheduleOfVariableInterestEntitiesTable |