 | us-gaap:DefinedBenefitPlanFairValueOfPlanAssets | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsStillHeld | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanTransfersBetweenMeasurementLevels | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanChangeInFairValueOfPlanAssetsLevel3ReconciliationPeriodIncreaseDecrease | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanFairValueOfPlanAssets | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanFairValueOfPlanAssets | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsStillHeld | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanTransfersBetweenMeasurementLevels | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanChangeInFairValueOfPlanAssetsLevel3ReconciliationPeriodIncreaseDecrease | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlanPlanAssetsLevel3ReconciliationTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsStillHeld | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsSoldDuringPeriod | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanActualReturnOnPlanAssetsAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanTransfersBetweenMeasurementLevels | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInFairValueOfPlanAssetsLevel3ReconciliationPeriodIncreaseDecrease | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |