 | us-gaap:DescriptionOfPostretirementMedicalPlansWithPrescriptionDrugBenefits | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:PrescriptionDrugBenefitSubsidyEffectNotDetermined | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanPrescriptionDrugBenefitAccumulatedPostretirementBenefitObligationDecreaseForSubsidy | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:PrescriptionDrugBenefitEffectOfSubsidyOnNetPeriodicPostretirementBenefitCost1 | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DisclosureOfExpectedGrossPrescriptionDrugSubsidyReceiptsAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DescriptionOfPostretirementMedicalPlansWithPrescriptionDrugBenefits | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:PrescriptionDrugBenefitSubsidyEffectNotDetermined | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanPrescriptionDrugBenefitAccumulatedPostretirementBenefitObligationDecreaseForSubsidy | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:PrescriptionDrugBenefitEffectOfSubsidyOnNetPeriodicPostretirementBenefitCost1 | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |