setTimeoutを使用するように修正、その他細かな調整