diff --git a/docs/LANGS.md b/docs/LANGS.md
index da850e148..4e23e5549 100644
--- a/docs/LANGS.md
+++ b/docs/LANGS.md
@@ -1,4 +1,5 @@
* [English](en/)
* [한국어](kr/)
* [Русский](ru/)
-* [Português](pt_BR/)
\ No newline at end of file
+* [Português](pt_BR/)
+* [日本語](ja/)
diff --git a/docs/ja/README.md b/docs/ja/README.md
new file mode 100644
index 000000000..c80aa4030
--- /dev/null
+++ b/docs/ja/README.md
@@ -0,0 +1,38 @@
+# はじめに
+
+### `vue-loader` とは ?
+
+`vue-loader` とは以下の形式で記述された Vue コンポーネントをプレーンな JavaScript モジュールに変換する Webpack の loader です。
+
+
+
+`vue-loader` によって多くのクールな機能が提供されます:
+
+- デフォルトで ES2015 が有効;
+- `
+```
+
+#### webpack.config.js
+
+``` js
+// Webpack 2.x
+var ExtractTextPlugin = require("extract-text-webpack-plugin")
+
+module.exports = {
+ module: {
+ rules: [
+ {
+ test: /\.vue$/,
+ loader: 'vue',
+ options: {
+ loaders: {
+ // 全ての の内容は raw text として展開されます
+ 'docs': ExtractTextPlugin.extract('raw-loader'),
+ }
+ }
+ }
+ ]
+ },
+ plugins: [
+ // 全ての docs は一つのファイルに出力されます
+ new ExtractTextPlugin('docs.md')
+ ]
+}
+```
diff --git a/docs/ja/configurations/extract-css.md b/docs/ja/configurations/extract-css.md
new file mode 100644
index 000000000..3d3115550
--- /dev/null
+++ b/docs/ja/configurations/extract-css.md
@@ -0,0 +1,70 @@
+# CSS を単一のファイルに抽出する
+
+すべての Vue コンポーネントで処理されたすべての CSS を1つの CSS ファイルに抽出する例:
+
+### Webpack 2.x
+
+``` bash
+npm install extract-text-webpack-plugin@2.x --save-dev
+```
+
+``` js
+// webpack.config.js
+var ExtractTextPlugin = require("extract-text-webpack-plugin")
+
+module.exports = {
+ // 他の設定
+ module: {
+ rules: [
+ {
+ test: /\.vue$/,
+ loader: 'vue-loader',
+ options: {
+ loaders: {
+ css: ExtractTextPlugin.extract({
+ use: 'css-loader',
+ fallback: 'vue-style-loader' // <- これは vue-loader の依存ですので、npm3 を使用している場合は明示的にインストールする必要はありません
+ })
+ }
+ }
+ }
+ ]
+ },
+ plugins: [
+ new ExtractTextPlugin("style.css")
+ ]
+}
+```
+
+### Webpack 1.x
+
+``` bash
+npm install extract-text-webpack-plugin --save-dev
+```
+
+``` js
+// webpack.config.js
+var ExtractTextPlugin = require("extract-text-webpack-plugin")
+
+module.exports = {
+ // 他の設定
+ module: {
+ loaders: [
+ {
+ test: /\.vue$/,
+ loader: 'vue'
+ },
+ ]
+ },
+ vue: {
+ loaders: {
+ css: ExtractTextPlugin.extract("css"),
+ //
+```
+
+ `
+```
+
+ただこれにより Vue コンポーネントが Webpack 固有となり Browserify および [vueify](https://github.com/vuejs/vueify) と互換性がなくなります。 **Vue コンポーネントを再利用可能なサードパーティコンポーネントとして提供する場合は、この構文を使用しないでください。**
diff --git a/docs/ja/features/css-modules.md b/docs/ja/features/css-modules.md
new file mode 100644
index 000000000..8dd753f7b
--- /dev/null
+++ b/docs/ja/features/css-modules.md
@@ -0,0 +1,117 @@
+# CSS モジュール
+
+> バージョン ^9.8.0 が必要
+
+[CSS モジュール](https://github.com/css-modules/css-modules) は CSS をモジュール化して構成するための一般的なシステムです。`vue-loader` はシミュレートされたスコープ付き CSS の代わりに CSS モジュールの一流の統合を提供します。
+
+### 使い方
+
+`module` 属性を `
+```
+
+`css-loader` の CSS モジュールモードを有効にし、その結果クラス識別子オブジェクトは `$style` という名前の算出プロパティとしてコンポーネントに注入されます。ダイナミッククラスバインディングを利用してテンプレートで使用可能になります。
+
+``` html
+
+
+ This should be red
+
+
+```
+
+これは算出プロパティなので、`:class` の オブジェクト/配列 構文でも動作します:
+
+``` html
+
+
+
+ Am I red?
+
+
+ Red and bold
+
+
+
+```
+
+そして JavaScript からもアクセス可能です:
+
+``` html
+
+```
+
+[CSS Modules spec](https://github.com/css-modules/css-modules) を参照してください。モードの詳細については [global exceptions](https://github.com/css-modules/css-modules#exceptions) と [composition](https://github.com/css-modules/css-modules#composition)を参照してください。
+
+### カスタム代入
+
+単一の `*.vue` コンポーネントは複数の `
+
+
+```
+
+### `css-loader` クエリの設定
+
+CSS モジュールは [css-loader](https://github.com/webpack/css-loader) によって処理されます。`
+
+
+ hi
+
+```
+
+以下の通りになります:
+
+``` html
+
+
+
+ hi
+
+```
+
+#### 注意
+
+1. 同じコンポーネント内にスコープで区切られてものとそうでないスタイルを含むことが出来ます:
+
+ ``` html
+
+
+
+ ```
+
+2. 子コンポーネントのルートノードは親のスコープの CSS と子のスコープの CSS の両方の影響をうけます。
+
+3. パーシャルはスコープ付きスタイルの影響をうけません。
+
+4. **スコープされたスタイルは class の必要性を排除しません**。ブラウザが様々な CSS セレクタをレンダリングするため、`p { color: red }` はスコープされているとき何倍も遅くなります(すなわち属性セレクタと組み合わせた場合)。もし `.example { color: red }` のように class か id を使用するなら、パフォーマンスヒットは事実上なくなります。[この例](http://stevesouders.com/efws/css-selectors/csscreate.php)で違いをテストすることが出来ます。
+
+5. **再帰されたコンポーネントの子孫セレクタには気をつけてください!** セレクタ `.a .b` を持つ CSS ルールの場合、`.a` にマッチする要素に再帰的な子コンポーネントが含まれている場合、その子コンポーネントのすべての `.b` はルールにマッチします。
diff --git a/docs/ja/options.md b/docs/ja/options.md
new file mode 100644
index 000000000..413551db4
--- /dev/null
+++ b/docs/ja/options.md
@@ -0,0 +1,187 @@
+# オプションリファレンス
+
+## Webpack 1と2の使い方の違い
+
+Webpack 2 の場合:オプションを loader ルールに直接渡します。
+
+``` js
+module.exports = {
+ // ...
+ module: {
+ rules: [
+ {
+ test: /\.vue$/,
+ loader: 'vue-loader',
+ options: {
+ // vue-loader オプション
+ }
+ }
+ ]
+ }
+}
+```
+
+Webpack 1.x の場合: Webpack の設定のルートに `vue` ブロックを追加します。
+
+``` js
+module.exports = {
+ // ...
+ vue: {
+ // vue-loader オプション
+ }
+}
+```
+
+### loaders
+
+- 型: `{ [lang: string]: string }`
+
+ `* .vue` ファイル内の言語ブロックに使用されるデフォルトの loader を上書きする Webpack loader を指定するオブジェクト。キーは指定されている場合、言語ブロックの `lang` 属性に対応します。各タイプのデフォルトの `lang` は次のとおりです:
+
+ - ``: `html`
+ - `
+
+
+
+
+ 例えばコンポーネントのドキュメントを書くことが出来ます
+
+```
+
+`vue-loader` はファイルを解析し、それぞれの言語ブロックを必要に応じて他の loader を通し、最終的に `module.exports` が Vue.js のコンポーネントオプションオブジェクトの CommonJS モジュールに変換します。
+
+`vue-loader` は CSS プリプロセッサや HTML にコンパイルするテンプレート言語といった、デフォルトでない言語を言語ブロックの `lang` 属性を使用することでサポートします。例えばコンポーネントのスタイルに SASS を使用することが出来ます。
+
+``` html
+
+```
+詳細は [プリプロセッサの仕様](../configurations/pre-processors.md) で確認することが出来ます。
+
+### 言語ブロック
+
+#### ``
+
+- デフォルトの言語は `html`
+
+- それぞれの `*.vue` ファイルは最大で一つの `` ブロックを含みます。
+
+- 内容は文字列に展開され、コンパイルされた Vue コンポーネントの `template` オプションで使用されます。
+
+#### `
+```
+
+`src` のインポートは CommonJS の `require()` 呼び出しと同じパス解決規則に従うことに注意してください。相対パスは `./` で始める必要があり、インストールされた NPM パッケージから直接リソースをインポートすることができます。
+
+``` html
+
+