 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp04 |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp04ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp04ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp041 |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp041ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp041ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp07 |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp07ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp07ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp08 |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp08ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp08ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp09 |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp09ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp09ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsDefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-default | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:RetirementPlanFundingStatusDomain | dimension-domain | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |