 | us-gaap:FinancingReceivablesPeriodPastDueDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/ReceivablesLoansNotesReceivableAndOthers |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/ReceivablesLoansNotesReceivableAndOthersScheduleOfFinancingReceivablesPastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/CreditLosses |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesAccountsReceivableNoncurrentPastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesContractWithCustomerAssetPastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesDebtSecuritiesHeldToMaturityPastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesDirectFinancingLeaseNetInvestmentInLeasePastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesNetInvestmentInLeasePastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesReinsuranceRecoverablePastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesSalesTypeLeaseNetInvestmentInLeasePastDueTable |
 | us-gaap:FinancingReceivablesPeriodPastDueDomain | domain-member | http://fasb.org/us-gaap/role/disclosure/CreditLossesScheduleOfFinancingReceivablesPastDueTable |