 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp011 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp011ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp03 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp03ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp05 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp05ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp06 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp06ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp07 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp07ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp08 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp08ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp09 |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/RetirementBenefitsTmp09ScheduleOfDefinedBenefitPlansDisclosuresTable |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanBenefitObligationPeriodIncreaseDecrease | summation-item | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefits |
 | us-gaap:DefinedBenefitPlanChangeInBenefitObligationRollForward | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsRetirementBenefitsScheduleOfDefinedBenefitPlansDisclosuresTable |