 | us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfInterestRateDerivativesTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfDerivativesInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfDerivativeInstrumentsEffectOnOtherComprehensiveIncomeLossTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfFairValueHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfCashFlowHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfNetInvestmentHedgesStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfNetInvestmentHedgesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:ScheduleOfDerivativeLiabilitiesAtFairValueTableTextBlock | parent-child | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivities |
 | us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable | all | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfInterestRateDerivativesTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfDerivativesInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfDerivativeInstrumentsEffectOnOtherComprehensiveIncomeLossTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfFairValueHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfCashFlowHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfNetInvestmentHedgesStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfNetInvestmentHedgesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |
 | us-gaap:ScheduleOfDerivativeLiabilitiesAtFairValueTableTextBlock | domain-member | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeInstrumentsAndHedgingActivitiesDisclosuresTable |