 | us-gaap:DefinedBenefitPlanEquitySecuritiesUsMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesNonUsMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesLargeCapMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesMidCapMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesSmallCapMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesCommonStockMember | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesNonUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesLargeCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesMidCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesSmallCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesCommonStockMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsAllocationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesNonUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesLargeCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesMidCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesSmallCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesCommonStockMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsCategoryTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesNonUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesLargeCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesMidCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesSmallCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesCommonStockMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesNonUsMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesLargeCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesMidCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesSmallCapMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanEquitySecuritiesCommonStockMember | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |