 | us-gaap:AccrualForEnvironmentalLossContingencies | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:AccrualForEnvironmentalLossContingenciesDiscount | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:AccrualForEnvironmentalLossContingenciesGross | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyNameOfSite | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyManagementAssessmentProcess | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyAccrualAssumptions | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyCircumstancesImpactingPrecisionOfEstimate | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyFactorsChangingEstimate | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyLossInestimableExplanation | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyIndicationAccrualMayChange | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyLossExposureNotAccruedDescription | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyLossExposureNotAccruedThirdPartyRecoveryCommentary | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyLossExposureInExcessOfAccrualDescription | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyUnassertedClaims | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyUncertaintiesFromJointAndSeveralLiability | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyUncertaintiesFromInsurance | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyTimeFrameOfDisbursements | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyTimeFrameForRecognizedProbableRecoveries | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyNamesOfOtherPotentiallyResponsibleParties | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyNatureAndTermsOfCostSharingRelationships | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyStatusOfRegulatoryProceedings | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyEstimatedTimeFrameToResolveContingency | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyEnvironmentalRemediationCostsRecognized | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyRecoveryFromThirdPartyOfEnvironmentalRemediationCost | parent-child | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligations |
 | us-gaap:SiteContingencyTable | all | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:AccrualForEnvironmentalLossContingencies | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:AccrualForEnvironmentalLossContingenciesDiscount | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:AccrualForEnvironmentalLossContingenciesGross | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyNameOfSite | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyManagementAssessmentProcess | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyAccrualAssumptions | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyCircumstancesImpactingPrecisionOfEstimate | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyFactorsChangingEstimate | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyLossInestimableExplanation | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyIndicationAccrualMayChange | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyLossExposureNotAccruedDescription | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyLossExposureNotAccruedThirdPartyRecoveryCommentary | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyLossExposureInExcessOfAccrualDescription | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyUnassertedClaims | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyUncertaintiesFromJointAndSeveralLiability | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyUncertaintiesFromInsurance | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyTimeFrameOfDisbursements | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyTimeFrameForRecognizedProbableRecoveries | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyNamesOfOtherPotentiallyResponsibleParties | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyNatureAndTermsOfCostSharingRelationships | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyStatusOfRegulatoryProceedings | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyEstimatedTimeFrameToResolveContingency | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyEnvironmentalRemediationCostsRecognized | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |
 | us-gaap:SiteContingencyRecoveryFromThirdPartyOfEnvironmentalRemediationCost | domain-member | http://fasb.org/us-gaap/role/disclosure/EnvironmentalRemediationObligationsSiteContingencyTable |