 | us-gaap:OffsettingAssetsTable | parent-child | http://fasb.org/us-gaap/role/disclosure/BalanceSheetOffsetting |
 | us-gaap:OffsettingLiabilitiesTable | parent-child | http://fasb.org/us-gaap/role/disclosure/BalanceSheetOffsetting |
 | us-gaap:OffsettingAssetsTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/BalanceSheetOffsettingOffsettingAssetsTable |
 | us-gaap:OffsettingLiabilitiesTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/BalanceSheetOffsettingOffsettingLiabilitiesTable |
 | us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:DerivativeTable | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable |
 | us-gaap:DerivativeTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeTable |
 | us-gaap:FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesFairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable |
 | us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputReconciliationTable | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputReconciliationTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputReconciliationTable |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | parent-child | http://fasb.org/us-gaap/role/disclosure/TransfersAndServicing |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/TransfersAndServicingTransferOfFinancialAssetsAccountedForAsSalesTable |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesBankingAndThrift |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesBankingAndThriftTransferOfFinancialAssetsAccountedForAsSalesTable |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesBrokersAndDealers |
 | us-gaap:TransferOfFinancialAssetsAccountedForAsSalesTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesBrokersAndDealersTransferOfFinancialAssetsAccountedForAsSalesTable |
 | us-gaap:InvestmentHoldingsTable | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInvestmentCompany |
 | us-gaap:InvestmentHoldingsTable | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInvestmentCompanyInvestmentHoldingsTable |