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