XML 48 R77.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Bank segment (HEI only) Loan Modifications (Details) (USD $) | 12 Months Ended
--- | ---
Dec. 31, 2014 contract | Dec. 31, 2013 contract | Dec. 31, 2012
Loan modifications determined to be troubled debt restructurings |  |  |
Commitments to Borrowers whose Loan Terms are Impaired or Modified under Troubled Debt Restructuring | $ 500,000 he_CommitmentsToBorrowersWhoseLoanTermsAreImpairedOrModifiedUnderTroubledDebtRestructuring |  |
Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 71 he_FinancingReceivablesModificationsNumberOfContracts / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 66 he_FinancingReceivablesModificationsNumberOfContracts / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 19,313,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 20,374,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 19,370,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 20,199,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 460,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 522,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Minimum period of payment default of loans determined to be TDRs | 90 days | 90 days | 90 days
Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 2 he_FinancingReceivablesModificationsNumberOfContracts / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 3 he_FinancingReceivablesModificationsNumberOfContracts / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 404,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 727,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Residential 1-4 family | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 38 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 34 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 10,680,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 8,876,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 10,737,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 8,957,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 163,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 297,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Residential 1-4 family | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 1 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 390,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_Residential1To4FamilyPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Commercial real estate | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Commercial real estate | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Home equity line of credit | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 8 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 5 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 502,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 637,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 502,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 390,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 42,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Home equity line of credit | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 1 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 67,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_HomeEquityMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Residential land | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 18 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 20 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 4,304,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 6,215,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 4,304,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 6,206,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 242,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 131,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Residential land | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialLandPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Commercial construction | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Commercial construction | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Residential construction | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Residential construction | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = he_ResidentialConstructionPortfolioSegmentMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Commercial loans | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 7 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 7 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 3,827,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 4,646,000 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 3,827,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 4,646,000 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 13,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 94,000 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Commercial loans | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 1 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 2 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | 14,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 660,000 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Consumer loans | Troubled debt restructurings real estate loans |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Pre-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPreModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Post-modification outstanding recorded investment | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 he_FinancingReceivablesModificationsPostModificationRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Net increase in ALLL | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember | 0 us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember |
Consumer loans | Troubled debt restructurings that subsequently defaulted |  |  |
Loan modifications determined to be troubled debt restructurings |  |  |
Number of contracts | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | 0 he_FinancingReceivablesModificationsNumberOfContracts / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |
Recorded investment | $ 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember | $ 0 us-gaap_FinancingReceivableModificationsRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerLoanMember / he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis = he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember |

X
- Definition Represents the commitments to borrowers whose loan terms are impaired or modified under troubled debt restructuring. + References No definition available. + Details
Name: | he_CommitmentsToBorrowersWhoseLoanTermsAreImpairedOrModifiedUnderTroubledDebtRestructuring
Namespace Prefix: | he_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Represents the minimum period of payment default of loans determined to be troubled debt restructurings. + References No definition available. + Details
Name: | he_FinancingReceivableModificationsMinimumPeriodOfPaymentDefaultOfLoansDeterminedToBeTroubledDebtRestructurings
Namespace Prefix: | he_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition The number of contracts under financing receivables that have been modified by troubled debt restructurings during the period. + References No definition available. + Details
Name: | he_FinancingReceivablesModificationsNumberOfContracts
Namespace Prefix: | he_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of the outstanding recorded investment in financial receivables after the financial receivables being modified as troubled debt restructurings. + References No definition available. + Details
Name: | he_FinancingReceivablesModificationsPostModificationRecordedInvestment
Namespace Prefix: | he_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition The amount of the outstanding recorded investment in financial receivables prior to the financial receivables being modified as troubled debt restructurings. + References No definition available. + Details
Name: | he_FinancingReceivablesModificationsPreModificationRecordedInvestment
Namespace Prefix: | he_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of increase (decrease) of allowance reserve for credit loss. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03.7(d)) -URI http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 03 -Paragraph 7 -Subparagraph d -Article 9 + Details
Name: | us-gaap_AllowanceForLoanAndLeaseLossesPeriodIncreaseDecrease
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_FinancingReceivableModificationsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of the outstanding recorded investment related to financing receivables that have been modified by troubled debt restructurings. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 40 -Section 50 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=25495931&loc=d3e18845-111554 + Details
Name: | us-gaap_FinancingReceivableModificationsRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis=he_FinancingReceivableTroubledDebtRestructuringsRealEstateLoansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | he_FinancingReceivableTroubledDebtRestructuringsAndTroubledDebtRestructuringsThatSubsequentlyDefaultedAxis=he_FinancingReceivableTroubledDebtRestructuringsThatSubsequentlyDefaultedMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=he_Residential1To4FamilyPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=he_ResidentialConstructionPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=he_ResidentialLandPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_CommercialLoanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_CommercialRealEstatePortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_ConsumerLoanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_HomeEquityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |