 | us-gaap:MultiemployerPlanNameAxis | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:RetirementPlanNameDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp05 |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp05ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp05ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp105 |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp105DefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp105DefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp141 |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp141DefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp141DefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedContributionPlanTable |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanNameDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:RetirementPlanNameDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |