 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionCost | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerIdentificationNumber | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantPlanNumber | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusFixedList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusDate | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusExtendedAmortizationProvision | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantFundingImprovementOrRehabilitationPlanImplementationStatusFixedList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantSurchargeFixedList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantCollectiveBargainingArrangementExpirationDate | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementToAllParticipantsPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementToAllEntitysEmployeesPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementCbaToAllEntitysEmployeesUnderCbaPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementToAllParticipatingEmployerContributionsPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementToTotalEmployerContributionPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementCbaToTotalEmployerContributionUnderItsCbaPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantAnnualReportDate | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantPlanAsset | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantAccumulatedBenefitObligation | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantPlanContribution | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantFundedStatusFixedList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantFutureEmployerContributionAmount | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionExceedsFivePercent | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantNameExtensibleList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantCollectiveBargainingArrangementExtensibleList | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerIdentificationNumber | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantPlanNumber | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusFixedList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusDate | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantCertifiedZoneStatusExtendedAmortizationProvision | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantFundingImprovementOrRehabilitationPlanImplementationStatusFixedList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantSurchargeFixedList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantCollectiveBargainingArrangementExpirationDate | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementToAllParticipantsPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementToAllEntitysEmployeesPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployeesCoveredByCollectiveBargainingArrangementCbaToAllEntitysEmployeesUnderCbaPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementToAllParticipatingEmployerContributionsPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementToTotalEmployerContributionPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionUnderCollectiveBargainingArrangementCbaToTotalEmployerContributionUnderItsCbaPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantAnnualReportDate | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantPlanAsset | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantAccumulatedBenefitObligation | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantPlanContribution | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantFundedStatusFixedList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantFutureEmployerContributionAmount | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantEmployerContributionExceedsFivePercent | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantNameExtensibleList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |
 | us-gaap:MultiemployerPlanPensionSignificantCollectiveBargainingArrangementExtensibleList | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfMultiemployerPlansTable |