diff --git a/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/controller/ToDoController.java b/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/controller/ToDoController.java
index 6b20956..50da302 100644
--- a/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/controller/ToDoController.java
+++ b/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/controller/ToDoController.java
@@ -100,4 +100,13 @@ public class ToDoController {
         tService.done(mid, seq);
         return "redirect:/" + mid + "/todos";
     }
+
+    /**
+     * ToDoの完了のキャンセル.キャンセル終了後,ユーザページへリダイレクト
+     */
+    @GetMapping("/{mid}/todos/{seq}/cancel")
+    String cancelToDo(@PathVariable String mid, @PathVariable Long seq, Model model) {
+        tService.cancel(mid, seq);
+        return "redirect:/" + mid + "/todos";
+    }
 }
diff --git a/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/service/ToDoService.java b/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/service/ToDoService.java
index 57a6371..b01756d 100644
--- a/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/service/ToDoService.java
+++ b/src/main/java/jp/ac/kobe_u/cs/itspecialist/todoapp/service/ToDoService.java
@@ -95,6 +95,24 @@ public class ToDoService {
         return tRepo.save(todo);
     }
 
+    /**
+     * ToDo の完了をキャンセルする.
+     * @param mid 完了者
+     * @param seq 完了をキャンセルするToDoの番号
+     * @return
+     */
+    public ToDo cancel(String mid, Long seq) {
+        ToDo todo = getToDo(seq);
+        // Doneの認可を確認する.他人のToDoを閉めたらダメ.
+        if (!mid.equals(todo.getMid())) {
+            throw new ToDoAppException(ToDoAppException.INVALID_TODO_OPERATION,
+                    mid + ": Cannot cancel other's todo of " + todo.getMid());
+        }
+        todo.setDone(false);
+        todo.setDoneAt(null);
+        return tRepo.save(todo);
+    }
+
     /**
      * ToDoを更新する
      * @param mid 更新者
diff --git a/src/main/resources/templates/list.html b/src/main/resources/templates/list.html
index a2939b9..0800ae1 100644
--- a/src/main/resources/templates/list.html
+++ b/src/main/resources/templates/list.html
@@ -49,12 +49,14 @@
             <th>タイトル</th>
             <th>作成日時</th>
             <th>完了日時</th>
+            <th>コマンド</th>
         </tr>
         <tr th:each="done: ${dones}">
             <td>[[${done.seq}]]</td>
             <td>[[${done.title}]]</td>
             <td>[[${done.createdAt}]]</td>
             <td>[[${done.doneAt}]]</td>
+            <td><a th:href="@{/{mid}/todos/{seq}/cancel(mid=${member.mid},seq=${done.seq})}">キャンセル</a></td>
         </tr>
     </table>