JR福知山線脱線事故
事故列車は、直前の停車駅である伊丹駅で所定の停車位置を超過(オーバーラン)していた。これについて、事故が起きる前に運転士が車掌に対して「まけてくれへんか」とオーバーランの距離を短く申告するように打診し、車掌が新大阪総合指令所(現・大阪総合指令所)に対して72 mのオーバーランを8 mと報告し、JR西日本も当初車掌の証言通り8 mのオーバーランと発表していた。 このことから、事故後にほかの路線や鉄道会社において発生した列車のオーバーランについても大きくクローズアップされた。
同事故においては以下のような多くの問題が指摘された。
事故当該列車である207系には保安装置としてATS-SW、ATS-Pが取り付けられていたものの、当該路線の福知山・宝塚線には国鉄型ATS-Sに改造を加えた従来とほぼ変わらないATS-SWしか設置されておらず、事故現場のカーブにはATS地上子が未設置であった。現場のカーブにATSが設置されるのは事故発生から5日後の5月上旬だったという。
ブレーキ関係
ブレーキハンドルについては、ハンドル位置に、常用最大ブレーキ(B8)と非常ブレーキの間にどちらのブレーキ指令も発せられないポイントが存在していた。この区間は、0番台・1000番台・2000番台とで異なる位置だった。また事故を起こした編成の7両目のマスコンは、そのポイントが11°あり、他の車両よりブレーキ緩解区間が広くなっていた。
207系7両編成の前4両(0番台/日立製作所製)と後3両(1000番台/近畿車輛製)では、主電動機(モーター)や主制御器などの性能に微妙な差異があるため、回生時に発生するブレーキ力にも差がある。また、車両によってブレーキの利き方に違いがあり、事故車の先頭車は特に癖のある車両だったとの運転士の証言がある。ただし、近畿日本鉄道等いくつかの私鉄では基礎ブレーキ構造がそもそも違う車両を読み替え装置を使って併結している場合もあり、JR西日本でも同じ電気指令式ブレーキながら界磁添加励磁制御の221系とVVVFインバータ制御の223系を併結して運用することや、一部編成中に主電動機出力の差のある車両が混結されている223系0・2500番台などのケースもあり、主電動機や主制御器の違いが事故の大きなファクターであったとは考えにくい。
目標が守られない場合に、乗務員に対する処分として再教育などの実務に関連したものではなく、日勤教育という懲罰的なものを科していた。具体的には、乗務員休憩室や詰所、点呼場所から丸見えの当直室の真ん中に座らせ、事象と関係ない就業規則や経営理念の書き写しや作文・レポートの作成を一日中させた。トイレに行くのも管理者の許可が必要で、プラットホームの先端に立たせて発着する乗務員に「おつかれさまです。気をつけてください」などの声掛けを一日中させたり、敷地内の草むしりやトイレ清掃などを命じるなど、いわゆる「見せしめ」「さらし者」にする事例もあれば、個室に軟禁状態にして管理者が集団で毎日のように恫喝()や罵声を浴びせ続けて自殺や鬱に追い込んだ事例もある。それが充分な再発防止の教育としての効果につながらず、かえって乗務員の精神的プレッシャーを増大させていた温床との指摘も受けている。
電車が激突したマンションは、2002年(平成14年)11月下旬に建てられた。線路とマンション間の距離は6 mに満たなかった。海外メディアは事故当初この点について指摘しており、例えばフランスのTGVの走る線はほとんどが田園の中で、開業当時は集落からは250m離れている。開業当時の線路と最寄の独立家屋との距離は150mあった、としている。
阪急電鉄 宝塚本線:梅田駅 - 川西能勢口駅 - 宝塚駅 神戸本線・阪急神戸高速線・:梅田駅 - 塚口駅 - 西宮北口駅 - 神戸三宮駅 今津線 宝塚駅 - 西宮北口駅 西宮北口駅 - 今津駅(5月9日より) 伊丹線:伊丹駅 - 塚口駅
阪神電気鉄道 本線:梅田駅 - 尼崎駅 - 今津駅 - 元町駅(5月9日より)
神戸高速鉄道 東西線 阪急神戸三宮駅 - 高速神戸駅 - 新開地駅 阪神元町駅 - 高速神戸駅(5月9日より) 南北線:新開地駅 - 湊川駅
神戸市営地下鉄・北神急行電鉄 西神・山手線・北神線:三宮駅 - 谷上駅
神戸電鉄 有馬線:湊川駅 - 谷上駅 - 有馬口駅 三田線:有馬口駅 - 横山駅 - 三田駅 公園都市線:横山駅 - ウッディタウン中央駅
阪急バス 尼崎線(56系統):川西バスターミナル - 阪神尼崎(5月9日より)
阪神電鉄バス(2009年4月1日より阪神バス) 尼崎宝塚線:宝塚 - 阪神尼崎(5月9日より) 杭瀬宝塚線:宝塚 - 阪神尼崎駅北(5月9日より)
尼崎市交通局(尼崎市バス、2016年3月20日より阪神バスへ移譲) 11系統・12系統:阪急塚口 - JR尼崎(5月9日より)