      *
      */
     public func judgeJapaneseHoliday(year: Int, month: Int, day: Int) -> Bool {
-        
-        let cal = NSCalendar.currentCalendar()
+        guard let cal = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian) else {
+            fatalError("can not create Calendar")
+        }
         guard let date = cal.dateWithEra(
             AD, year: year, month: month, day: day, hour: 0, minute: 0, second: 0, nanosecond: 0) else {
             fatalError() // FIXME: throwにしたほうがよい？

     * 指定した年の敬老の日を調べる
     */
    internal func oldPeopleDay(year year: Int) -> Int {
        let cal = NSCalendar.currentCalendar()
        
        func dateFromDay(day day: Int) -> NSDate? {
            return cal.dateWithEra(AD, year: year, month: 9, day: day, hour: 0, minute: 0, second: 0, nanosecond: 0)

    case Sun, Mon, Tue, Wed, Thu, Fri, Sat

    init?(year: Int, month: Int, day: Int) {
        guard let cal = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian) else {
            fatalError("can not create Calendar")
        }
        guard let date = cal.dateWithEra(AD, year: year, month: month, day: day, hour: 0, minute: 0, second: 0, nanosecond: 0) else { return nil }
        let weekdayNum = cal.component(.Weekday, fromDate: date)  // 1:日曜日 ～ 7:土曜日
        self.init(rawValue: weekdayNum - 1)
