 | us-gaap:AgencySecuritiesMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:DebtSecuritiesPayableMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:LoansPayableMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:CollateralizedSecuritiesMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:SovereignDebtMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:SovereignDebtStateGovernmentUnspecifiedMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:SovereignDebtLocalGovernmentUnspecifiedMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:StructuredFinanceMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:UnderlyingOtherMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:ConstructionContractsMember | parent-child | http://fasb.org/us-gaap/role/disclosure/Guarantees |
 | us-gaap:AgencySecuritiesMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:DebtSecuritiesPayableMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:LoansPayableMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:CollateralizedSecuritiesMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:SovereignDebtMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:SovereignDebtStateGovernmentUnspecifiedMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:SovereignDebtLocalGovernmentUnspecifiedMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:StructuredFinanceMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:UnderlyingOtherMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:ConstructionContractsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/GuaranteesScheduleOfGuaranteeObligationsTable |
 | us-gaap:AgencySecuritiesMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:DebtSecuritiesPayableMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:LoansPayableMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:CollateralizedSecuritiesMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:SovereignDebtMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:SovereignDebtStateGovernmentUnspecifiedMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:SovereignDebtLocalGovernmentUnspecifiedMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:StructuredFinanceMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:UnderlyingOtherMember | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:AgencySecuritiesMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:DebtSecuritiesPayableMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:LoansPayableMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:CollateralizedSecuritiesMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:SovereignDebtMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:SovereignDebtStateGovernmentUnspecifiedMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:SovereignDebtLocalGovernmentUnspecifiedMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:StructuredFinanceMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |
 | us-gaap:UnderlyingOtherMember | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesScheduleOfCreditDerivativesTable |