     }
   }
 
-# Default task
+#------------------------------------------------------
+# Monitoring task
+# 監視タスク
+#------------------------------------------------------
+
+# json-server watch & refresh
+api = ->
+  src paths.api.watch
+  .pipe apiServer.pipe()
+
+apiWatch = ->
+  watch paths.api.watch, series api # json ファイルが変更または追加されたらビルド出力
+
+# watch
+watchCommon = ->
+  watch paths.common.import.json, series importData
+  watch [paths.common.js.plugin, paths.common.js.javascript, paths.common.js.coffee], series coffeeCompile
+  watch paths.common.img.src, series imgCheck, imgCompile # img ファイルが変更または追加されたらビルド出力
+
+# watch rp
+watchRP = ->
+  watch [paths.rp.ect.watch, paths.rp.ect.json], series ectRP
+  watch paths.rp.css.watch, series cssRP
+  watch [paths.rp.js.plugin, paths.rp.js.javascript, paths.rp.js.coffee], series coffeeRP
+  watch paths.rp.img.src, series imgCheckRP, imgCompileRP # img ファイルが変更または追加されたらビルド出力
+
+# watch pc
+watchPC = ->
+  watch [paths.pc.ect.watch, paths.pc.ect.json], series ectPC
+  watch paths.pc.css.watch, series cssPC
+  watch [paths.pc.js.plugin, paths.pc.js.javascript, paths.pc.js.coffee], series coffeePC
+  watch paths.pc.img.src, series imgCheckPC, imgCompilePC # img ファイルが変更または追加されたらビルド出力
+
+# watch sp
+watchSP = ->
+  watch [paths.sp.ect.watch, paths.sp.ect.json], series ectSP
+  watch paths.sp.css.watch, series cssSP
+  watch [paths.sp.js.plugin, paths.sp.js.javascript, paths.sp.js.coffee], series coffeeSP
+  watch paths.sp.img.src, series imgCheckSP, imgCompileSP # img ファイルが変更または追加されたらビルド出力
+
+#------------------------------------------------------
+# Declaring Each Task
+# 各タスクの宣言
+#------------------------------------------------------
+
+# Build Task - Responsive
+exports.buildRP = series libCopy, coffeeCompile, imgCheck, imgCompile, coffeeRP, imgCheckRP, imgCompileRP, ectRP, cssRP, removeFiles, importData
+
+# Build Task - PC
+exports.buildPC = series libCopy, coffeeCompile, imgCheck, imgCompile, coffeePC, imgCheckPC, imgCompilePC, ectPC, cssPC, removeFiles, importData
+
+# Build Task - SP
+exports.buildSP = series libCopy, coffeeCompile, imgCheck, imgCompile, coffeeSP, imgCheckSP, imgCompileSP, ectSP, cssSP, removeFiles, importData
+
+# Clean Task
+exports.clean = clean
+exports.cleanSP = cleanSP
+exports.cleanArchive = series cleanTemp, cleanArchive
+
+# Import / Export Task
+exports.import = importData
+exports.export = exportData
+
+# Watch Task
+exports.watchRP = watchRP
+exports.watchPC = watchPC
+exports.watchSP = watchSP
+
+# Static / Responsive Switch
 if appConfig.RESPONSIVE_TEMPLATE
-  # build
+  # All Build Task
   exports.build = series libCopy, coffeeCompile, imgCheck, imgCompile, coffeeRP, imgCheckRP, imgCompileRP, ectRP, cssRP, removeFiles, importData
-  # api
+  # diff Task
+  exports.diff = series clean, cleanTemp, importData, libCopy, coffeeCompile, imgCheck, imgCompile, ectRP, cssRP, coffeeRP, imgCheckRP, imgCompileRP, tempData
+  # Default Task
   if appConfig.API_SERVER
-   exports.default = parallel browserSync, watchRP, watchCommon, api, apiWatch
+    # API Server
+    exports.default = parallel browserSync, watchRP, watchCommon, apiServerInit, api, apiWatch
   else
-   exports.default = parallel browserSync, watchRP, watchCommon
+    # Normal Server
+    exports.default = parallel browserSync, watchRP, watchCommon
 else
-  # build
+  # All Build Task
   exports.build = series libCopy, coffeeCompile, coffeePC, imgCheckPC, imgCompilePC, coffeeSP, imgCheckSP, imgCompileSP, imgCheck, imgCompile, ectPC, cssPC, ectSP, cssSP, removeFiles, importData
-  # api
+  # diff Task
+  exports.diff = series clean, cleanTemp, importData, libCopy, coffeeCompile, imgCheck, imgCompile, ectPC, cssPC, coffeePC, imgCheckPC, imgCompilePC, ectSP, cssSP, coffeeSP, imgCheckSP, imgCompileSP, tempData
+  # Default Task
   if appConfig.API_SERVER
-    exports.default = parallel browserSync, watchPC, watchSP, watchCommon, api, apiWatch
+    # API Server
+    exports.default = parallel browserSync, watchPC, watchSP, watchCommon, apiServerInit, api, apiWatch
   else
+    # Normal Server
     exports.default = parallel browserSync, watchPC, watchSP, watchCommon
    )
    require('css-mqpacker')
    require('postcss-sorting')(
      require './src/postcss-sorting.json' # 並び順の設定ファイル
    )
  ]).on('error', $.util.log) # エラーでも止めない
  .pipe $.autoprefixer overrideBrowserslist: ['> 0%']

      console.log '[\u001b[32mAPI Mock Server\u001b[0m] Serving files from: \u001b[35msrc' + paths.api.dest + '\u001b[0m'
    return

# API Server
apiServer = undefined
apiServerInit = ->
  apiServer = jsonServer.create {
    port: paths.api.port,
    baseUrl: paths.api.dest,
