                     range = NSMakeRange(range.location, range.length + 2)
                     currentLineCount = range.length
                     didBurasagari = true
-                } else if kCharactersCanOikomi.contains(tmpTail) {
-                    range = NSMakeRange(range.location, range.length + 2)
-                    currentLineCount = range.length
-                    didOikomi = true
                 }
             }
         }
-        return (currentLineCount, didBurasagari, didOikomi)
+        return (currentLineCount, didBurasagari)
     }
 
     /**

            let (_, returned) = self.getLineTail(range)

            lines.append(self.getCTLine(NSMakeRange(range.location, range.length - (returned ? 1 : 0)),
                headOffset: offset, burasagari: burasagari, oikomi: oikomi))

            // 次の行が指定した高さを超える場合は終了
            if overflow {

     - parameter offset: 行頭オフセット。指定しない場合は `getOffset()` で算出したものを使用する
     - returns: (現在行にはいる文字数, ぶらさがるかどうか)
     */
    private func getSuggestedLineCount(offset: CGFloat? = nil) -> (Int, Bool) {
        let lineWidth: CGFloat = self.width - (offset ?? self.getHeadOffset())
        var currentLineCount = CTTypesetterSuggestLineBreak(self.typesetter, self.location, Double(lineWidth))
        var range = self.getCurrentLineRange(currentLineCount)
        var didBurasagari = false

        if let alignment = self.attributedText.textAlignment where alignment == .Justified {
            if range.location + range.length + 2 <= self.length {  // 1文字加算しても全体の文字数に収まるか
