function pt() {
  Object.defineProperty && Object.getOwnPropertyDescriptor && Object.getOwnPropertyDescriptor(Element.prototype, "textContent") && !Object.getOwnPropertyDescriptor(Element.prototype, "textContent").get && (function() {
    var L = Object.getOwnPropertyDescriptor(Element.prototype, "innerText");
    Object.defineProperty(
      Element.prototype,
      "textContent",
      {
        get: function() {
          return L.get.call(this);
        },
        set: function(e) {
          return L.set.call(this, e);
        }
      }
    );
  })(), (function() {
    if (typeof window.scrollTo == "function") return !1;
    Window.prototype.scrollTo = Window.prototype.scroll;
  })(), (function() {
    if (typeof window.CustomEvent == "function") return !1;
    function L(e, t) {
      t = t || { bubbles: !1, cancelable: !1, detail: void 0 };
      var s = document.createEvent("CustomEvent");
      return s.initCustomEvent(e, t.bubbles, t.cancelable, t.detail), s;
    }
    L.prototype = window.Event.prototype, window.CustomEvent = L;
  })();
}
var b;
((L) => {
  ((e) => {
    if (!window.jp) {
      var t = {};
      window.jp = t, "ninesense" in t || (t.ninesense = {}), t.ninesense.ts || (t.ninesense.ts = {}), "ontouchend" in document && document.documentElement.classList.add("touchsupport"), (function(s) {
        const i = function(h) {
          document.documentElement.classList.add("nslib-sub[" + h + "]");
          var l = n[h];
          if (l)
            for (var d = l.length, u = 0; u < d; u++)
              l[u]();
        }, r = [], n = {}, o = {
          init: function(h) {
            t.ninesense.ts.init === !0 ? h(i) : r.push(h);
          },
          sub: function(h, l) {
            document.documentElement.classList.contains("nslib-sub[" + h + "]") ? l() : (n[h] || (n[h] = []), n[h].push(l));
          }
        };
        s.lib = o, window.addEventListener("jp.ninesense.ts", function() {
          for (var h = r.length, l = 0; l < h; l++)
            r[l](i);
          document.documentElement.classList.add("nslib-init");
        });
        const c = {}, a = {}, f = {
          jsons: a,
          add: function(h, l) {
            if (a[h] = l, c[h]) {
              var d, u = l(), E = Array.prototype.slice.call(c[h]);
              for (c[h] = []; d = E.pop(); )
                d(u);
            }
          },
          get: function(h) {
            return a[h] ? a[h]() : null;
          },
          on: function(h, l) {
            if (a[h]) {
              l(a[h]());
              return;
            }
            c[h] || (c[h] = []), c[h].push(l);
          }
        };
        s.values = f;
      })(t.ninesense.ts);
    }
    e.ts = window.jp.ninesense.ts;
  })(L.ninesense || (L.ninesense = {}));
})(b || (b = {}));
b.ninesense.ts.init = void 0;
b.ninesense.ts.values && (b.ninesense.ts.values.gets = ((...L) => {
  const e = [];
  for (const t of L)
    e.push(new Promise((s, i) => {
      var r;
      (r = b.ninesense.ts.values) == null || r.on(t, (n) => {
        s(n);
      });
    }));
  return Promise.all(e);
}));
pt();
const gt = () => {
  b.ninesense.ts.init = !0;
  const L = { imports: ["webpack"] };
  try {
    window.dispatchEvent(new CustomEvent("nsLibInit", { detail: L })), window.dispatchEvent(new CustomEvent("jp.ninesense.ts", { detail: L })), window.console.log("%cINITIALIZED JP.NINESENSE.TS", "font-size:11px;color: white;border: 1px solid #0E5579;margin:3px 0;padding: 2px 15px 2px;border-radius: 3px;background: #1879AA;letter-spacing:2px;");
  } catch {
    const t = document.createEvent("CustomEvent");
    t.initCustomEvent("jp.ninesense.ts", !1, !1, { detail: L }), window.dispatchEvent(t), window.console.log("=== INITIALIZED JP.NINESENSE.TS ===");
  }
}, m = class m {
  constructor() {
    this.lock = void 0;
  }
  get Lock() {
    return this.lock !== void 0;
  }
  get key() {
    return this.lock;
  }
  setLock(e, t = void 0) {
    return this.lock !== void 0 ? !1 : (this.lock = e, m.setScrollLockForCss(!0, t), window.console.debug("scroll.lock:", e), !0);
  }
  unLock(e) {
    return this.lock !== e ? !1 : (this.lock = void 0, m.setScrollLockForCss(!1), window.console.debug("scroll.unlock:", e), !0);
  }
  get lockScrollY() {
    return m.scroll;
  }
  static get scrollLock() {
    return m._scrollLock;
  }
  static set scrollLock(e) {
    if (m._scrollLock !== e) {
      if (m._scrollLock = e, m.body_inner)
        t = m.body_inner;
      else
        var t = m.body_inner = document.getElementsByClassName("body-inner")[0];
      if (e) {
        var s = m.scroll = m.scrollY;
        if (t) {
          var i = t.getBoundingClientRect(), r = window.innerWidth, n = r - i.width;
          let o = t.style;
          o.top = "-" + s.toString() + "px", o.position = "fixed", o.overflow = "hidden", o.width = "100%", o.paddingRight = n.toString() + "px", o.boxSizing = "border-box";
        }
        document.documentElement.style.overflow = "hidden", document.documentElement.classList.add("ns-scroll-lock");
      } else if (document.documentElement.style.overflow = "", document.body.classList.remove("ns-scroll-lock"), t) {
        let o = this.body_inner.style;
        o.top = "", o.position = "", o.width = "", o.paddingRight = "", o.boxSizing = "", o.overflow = "", window.scrollTo(0, m.scroll);
      }
    }
  }
  static get scrollY() {
    return window.pageYOffset !== void 0 ? window.pageYOffset : window.scrollY;
  }
  static setScrollLockForCss(e, t = void 0) {
    if (m._scrollLock !== e) {
      if (m._scrollLock = e, m.body_inner)
        s = m.body_inner;
      else {
        var s = m.body_inner = document.getElementsByClassName("body-inner")[0];
        s || (s = m.body_inner = document.body, s.classList.add("body-inner"));
      }
      if (t === void 0 && (t = document.body), e)
        if (m.scroll = m.scrollY, m.scrollStyle || (m.scrollStyle = document.createElement("style"), s === document.body ? m.scrollStyle.textContent = ".ns-scroll-lock { position:fixed; overflow:hidden; width:100%; height:100%; box-sizing:border-box; top:0; }.ns-scroll-lock .body-inner{ position:fixed; width:100%; box-sizing:border-box; top:0; }" : m.scrollStyle.textContent = ".ns-scroll-lock{overflow:hidden;}.ns-scroll-lock body{ position:fixed; overflow:hidden; width:100%; height:100%; box-sizing:border-box; top:0; }.ns-scroll-lock .body-inner{ position:fixed; width:100%; box-sizing:border-box; top:0; }", document.head.appendChild(m.scrollStyle)), s) {
          var i = t.getBoundingClientRect(), r = t.scrollHeight > 0;
          document.documentElement.classList.add("ns-scroll-lock");
          var n = t.getBoundingClientRect();
          s.style.top = (i.top - n.top).toString() + "px", r && (document.documentElement.style.overflowY = "scroll");
        } else
          document.documentElement.classList.add("ns-scroll-lock");
      else if (document.documentElement.classList.remove("ns-scroll-lock"), s) {
        let o = s.style;
        o.top = "", o.paddingRight = "", window.scrollTo(0, m.scroll), document.documentElement.style.overflowY = "";
      }
    }
  }
};
m.getInstance = () => (m.instance || (m.instance = new m()), m.instance), m._scrollLock = !1;
let M = m;
b.ninesense.ts.scroll = M;
const y = class y {
  /**絶対値*/
  static abs(e) {
    return (e ^ e >> 31) - (e >> 31);
  }
};
y.maxElement = 255, y.nearOne = 0.999999999999999, y.nearOneM = -0.999999999999999, y.floor = (e) => e << 1 >> 1, y.Upper = (e) => e + (e >= 0 ? y.nearOne : y.nearOneM) << 1 >> 1, y.equalSign = (e, t) => (e ^ t) >= 0, y.equalSignNum = (e, t) => (y.Upper(e) ^ y.Upper(t)) >= 0, y.changeSign = (e) => ~e + 1, y.isEven = (e) => !(e & 1), y.leftShift = (e, t) => e << t, y.rightShift = (e, t) => e >> t, y.matchOut = (e, t) => e & t - 1, y.valueChange = (e, t) => {
}, y.randomInt = (e, t) => y.floor(Math.random() * (t - e + 1)) + e, y.euclid = (e, t) => {
  var s;
  return e < t && (s = e, e = t, t = s), t < 1 ? -1 : e % t == 0 ? t : y.euclid(t, e % t);
};
let K = y;
b.ninesense.ts.MathBit = K;
const v = class v {
};
v.gl = (e = null) => {
  if (v._gl) return v._gl;
  e = e || document.createElement("canvas");
  let t, s;
  try {
    t = e.getContext("experimental-webgl");
    const i = t.getExtension("WEBGL_debug_renderer_info");
    i ? s = t.getParameter(i.UNMASKED_RENDERER_WEBGL) : s = "";
  } catch {
    t = null, s = "not_compatible";
  }
  return v.gl = s;
}, v.reflesh = () => {
  v.userAgent = navigator.userAgent.toLowerCase(), v.isiPhone = v.userAgent.indexOf("iphone") > -1, v.isiPad = v.userAgent.indexOf("ipad") > -1, v.isAndroid = v.userAgent.indexOf("android") > -1 && v.userAgent.indexOf("mobile") > -1, v.isAndroidTablet = v.userAgent.indexOf("android") > -1 && v.userAgent.indexOf("mobile") == -1, v.isMobile = v.userAgent.indexOf("mobile") > -1 || v.userAgent.indexOf("opera mini") > -1, v.isIE = v.userAgent.indexOf("msie") > -1 || v.userAgent.indexOf("trident") > -1, v.isMac = v.userAgent.indexOf("mac os x") > -1, v.isSafari = v.userAgent.indexOf("safari") !== -1 && v.userAgent.indexOf("chrome") === -1 && v.userAgent.indexOf("edge") === -1, v.supportTouch = "ontouchend" in document, v.pointerEvents = v.supportTouch ? { start: "touchstart", move: "touchmove", end: "touchend" } : { start: "mousedown", move: "mousemove", end: "mouseup" };
};
let P = v;
P.reflesh();
b.ninesense.ts.devise = P;
class lt {
  constructor(e, t = !0) {
    this.scale = 0, this.enabled = !0, this._pointing = !1, this.setScrollTarget = (...s) => {
      this.scrollTargets = s;
    }, this._enabledPointingMove = !1, this._enabledPointingEnd = !1, this.enumerateStart = (s) => {
      P.supportTouch ? this.onPointingStart(new TouchEvent(P.pointerEvents.start, s)) : this.onPointingStart(new MouseEvent(P.pointerEvents.start, s));
    }, this.onPointingStart = (s) => {
      if (!this.enabled) return;
      this.enabledPointingMove = !0, this.enabledPointingEnd = !0, this.currentPoint.x = null, this.currentPoint.y = null, this.offsetPoint.x = 0, this.offsetPoint.y = 0, this.offsetPoint.max = 0, this.scale = 0, this.endPoint = null;
      const i = { x: 0, y: 0 };
      if (this.scrollTargets)
        for (const u of this.scrollTargets)
          i.x += u instanceof Window ? u.scrollX : u.scrollLeft, i.y += u instanceof Window ? u.scrollY : u.scrollTop;
      if (s instanceof MouseEvent)
        this.startPoint = {
          x: s.pageX,
          y: s.pageY,
          scroll: i
        };
      else {
        for (var r = s.touches.length, n = 0, o = 0, c = 0, a = 0; a < r; a++) {
          var f = s.touches[a];
          n += f.pageX, o += f.pageY;
        }
        for (var h = this.startPoint = {
          x: n / r,
          y: o / r,
          scroll: i
        }, a = 0; a < r; a++) {
          var f = s.touches[a], l = Math.floor(h.x - f.pageX + 0.5), d = Math.floor(h.y - f.pageY + 0.5);
          c += Math.sqrt(l * l + d * d);
        }
        this.scale = c / r;
      }
      this.offsetPoint.move.x = this.startPoint.x, this.offsetPoint.move.y = this.startPoint.y, this._pointing = !0, this.meta = {}, this.target.onPointingStart && this.target.onPointingStart(this, s);
    }, this.onPointingMove = (s) => {
      var i = 1;
      const r = { x: 0, y: 0 };
      if (this.scrollTargets)
        for (const w of this.scrollTargets)
          r.x += w instanceof Window ? w.scrollX : w.scrollLeft, r.y += w instanceof Window ? w.scrollY : w.scrollTop;
      if (s instanceof MouseEvent)
        var n = s.pageX, o = s.pageY, i = 1;
      else {
        for (var c = s.touches.length, a = 0, f = 0, h = 0; h < c; h++) {
          var l = s.touches[h];
          a += l.pageX, f += l.pageY;
        }
        for (var n = a / c, o = f / c, i = 0, h = 0; h < c; h++) {
          var l = s.touches[h], d = Math.floor(n - l.pageX + 0.5), u = Math.floor(o - l.pageY + 0.5);
          i += Math.sqrt(d * d + u * u);
        }
        this.offsetPoint.scale = i / c / this.scale;
      }
      this.offsetPoint.move.x = n - (this.currentPoint.x || n), this.offsetPoint.move.y = o - (this.currentPoint.y || o), this.currentPoint.x = n, this.currentPoint.y = o;
      var d = this.offsetPoint.x = n - this.startPoint.x + (r.x - this.startPoint.scroll.x), u = this.offsetPoint.y = o - this.startPoint.y + (r.y - this.startPoint.scroll.y), E = Math.sqrt(d * d + u * u);
      this.offsetPoint.max < E && (this.offsetPoint.max = E), this.target.onPointingMove && this.target.onPointingMove(this, s);
    }, this.onPointingEnd = (s) => {
      var c, a;
      this._pointing = !1, this.enabledPointingMove = !1, this.enabledPointingEnd = !1;
      const i = { x: 0, y: 0 };
      if (this.scrollTargets)
        for (const f of this.scrollTargets)
          i.x += f instanceof Window ? f.scrollX : f.scrollLeft, i.y += f instanceof Window ? f.scrollY : f.scrollTop;
      s instanceof MouseEvent ? this.endPoint = {
        x: s.pageX,
        y: s.pageY,
        scroll: i
      } : s.touches[0] ? this.endPoint = {
        x: s.touches[0].pageX,
        y: s.touches[0].pageY,
        scroll: i
      } : this.currentPoint.x === null && this.currentPoint.y === null ? this.endPoint = {
        x: this.startPoint.x,
        y: this.startPoint.y,
        scroll: i
      } : this.endPoint = {
        x: this.currentPoint.x || 0,
        y: this.currentPoint.y || 0,
        scroll: i
      };
      var r = this.offsetPoint.x = (((c = this.endPoint) == null ? void 0 : c.x) || 0 - this.startPoint.x || 0) + (i.x - this.startPoint.scroll.x), n = this.offsetPoint.y = (((a = this.endPoint) == null ? void 0 : a.y) || 0 - this.startPoint.y || 0) + (i.y - this.startPoint.scroll.y), o = Math.sqrt(r * r + n * n);
      this.offsetPoint.max < o && (this.offsetPoint.max = o), this.target.onPointingEnd && this.target.onPointingEnd(this, s), this.meta = null;
    }, this.target = e, this.currentPoint = { x: 0, y: 0, scroll: { x: 0, y: 0 } }, this.offsetPoint = { x: 0, y: 0, max: 0, move: { x: 0, y: 0 }, scale: 1 }, this.passive = t;
  }
  get pointingTarget() {
    return this._pointingTarget;
  }
  set pointingTarget(e) {
    this._pointingTarget !== e && (this._pointingTarget && this._pointingTarget.removeEventListener(P.pointerEvents.start, this.onPointingStart), this._pointingTarget = e, e && e.addEventListener(P.pointerEvents.start, this.onPointingStart, { passive: this.passive }));
  }
  get pointing() {
    return this._pointing;
  }
  get enabledPointingMove() {
    return this._enabledPointingMove;
  }
  set enabledPointingMove(e) {
    this._enabledPointingMove !== e && (this._enabledPointingMove = e, e ? window.addEventListener(P.pointerEvents.move, this.onPointingMove, { passive: this.passive }) : window.removeEventListener(P.pointerEvents.move, this.onPointingMove));
  }
  get enabledPointingEnd() {
    return this._enabledPointingEnd;
  }
  set enabledPointingEnd(e) {
    this._enabledPointingEnd !== e && (this._enabledPointingEnd = e, e ? window.addEventListener(P.pointerEvents.end, this.onPointingEnd, { passive: this.passive }) : window.removeEventListener(P.pointerEvents.end, this.onPointingEnd));
  }
}
b.ninesense.ts.pointerEventProvider = lt;
const I = class I {
  // private actElement:ActionElement;
  // private actObj:ActObj;
  /**
   * 指定コンテンツを囲うデザイン可能なスクロールバーを有するスクロールボックスを作成します
   * @param content コンテンツ
   * @param classPrefix スクロールボックス各要素に付くカスタムクラス名の先頭に付くプレフィックスを指定します。
   * @param boxHeight ボックスの高さを指定します。指定しない場合はCSSで.ns-scrollbox-scrollTargetに高さを指定します
   */
  constructor(e, t = "ns", s = void 0) {
    this.schearOp = { top: 0 }, this._scrollEnabled = !1, this.OnScroll = (d) => {
      this.pointerEvents.pointing || this.reflesh();
    }, this._mouseWheelEnabled = !1, this.OnMouseWheel = (d) => {
      this.scrollTarget.scrollTo({ top: this.scrollTarget.scrollTop + d.deltaY });
    }, this.pointerEvents = new lt({
      onPointingStart: (d, u) => {
        var E = 0;
        u instanceof TouchEvent ? E = u.touches[0].pageY : E = u.pageY;
        var w = this.pointerEvents.pointingTarget.getBoundingClientRect(), x = this.scrollBar.getBoundingClientRect(), O = E - x.top - window.scrollY;
        if (O < 0 || x.height < O) {
          var T = this.scrollBar.getBoundingClientRect();
          T.height, this.scrollBarTo(E), O = E - x.top - M.scrollY;
        }
        this.bardownPositionY = K.floor(O / x.height * 100) * 0.01, this.mousedownY = E - w.top - M.scrollY;
      },
      onPointingMove: (d, u) => {
        var E = 0;
        u instanceof TouchEvent ? E = u.touches[0].pageY : E = u.pageY;
        var w = this.scrollBox.getBoundingClientRect();
        this.mousedownY = E - w.top - M.scrollY, this.reflesh();
      },
      onPointingEnd: (d, u) => {
      }
    }), this.scrollBarTo = (d) => {
      var u = this.scrollTarget.getBoundingClientRect().height, E = this.scrollContents.getBoundingClientRect().height, w = this.scrollBox.getBoundingClientRect();
      d -= w.top + M.scrollY;
      var x = w.height, O = (E - u) * d / x;
      this.scroll({ top: O });
    }, this.mousedownY = 0, this.bardownPositionY = 0, this.scroll = this.onScroll.bind(this), this.scrollShowRect = (d, u = "nearly", E = !1) => {
      var w = this.scrollBoxWrap.getBoundingClientRect();
      let x = this.schearOp.behavior;
      switch (E && (this.schearOp.behavior = "smooth"), u) {
        case "top":
          this.schearOp.top = d.top - (w.top - this.scrollTop), this.scroll(this.schearOp);
          break;
        case "bottom":
          this.schearOp.top = d.top - (w.top - this.scrollTop), this.scroll(this.schearOp);
          break;
        case "nearly":
          w.bottom < d.bottom ? this.schearOp.top = d.top - (w.top - this.scrollTop) - (w.height - d.height) : w.top > d.top && (this.schearOp.top = d.top - (w.top - this.scrollTop)), this.scroll(this.schearOp);
          break;
        case "center":
          this.schearOp.top = d.top - (w.top - this.scrollTop) - (w.height - d.height) * 0.5, this.scroll(this.schearOp);
          break;
      }
      E && (this.schearOp.behavior = x);
    }, this.reflesh = () => {
      var d = this.scrollTarget, u = this.scrollContents, E = this.scrollBox, w = this.scrollBar, x = d.getBoundingClientRect(), O = u.getBoundingClientRect(), T = E.getBoundingClientRect(), dt = this.scrollBoxmjur.getBoundingClientRect(), Z = x.width - dt.width;
      Z < 0 && (Z = 0), d.style.width = "calc(100% + " + Z.toString() + "px)";
      var ut = O.height - x.height;
      if (ut <= 0 || Z === 0)
        E.style.opacity = "0";
      else {
        E.style.opacity = "1";
        var A = T.height * x.height / d.scrollHeight;
        if (w.style.height = A.toString() + "px", !this.pointerEvents.pointing)
          w.style.transform = "translateY(" + (this.scrollTop * (T.height - A) / (d.scrollHeight - x.height)).toString() + "px)";
        else {
          var ft = this.bardownPositionY, F = this.mousedownY - ft * A;
          F < 0 && (F = 0), T.height - A < F && (F = T.height - A), w.style.transform = "translateY(" + F.toString() + "px)", this.schearOp.top = (d.scrollHeight - x.height) * F / (T.height - A), this.scroll(this.schearOp);
        }
      }
    }, I.instance.push(this);
    var i = e.nextElementSibling, r = e.parentElement, n = document.createElement("div"), o = document.createElement("div"), f = document.createElement("div"), c = document.createElement("div");
    o.style.display = "block", o.style.width = "100%", c.appendChild(o), c.appendChild(e), f.appendChild(c), n.appendChild(f), n.classList.add("ns-scrollbox-block"), n.classList.add("ns-scrollbox-list"), f.classList.add("ns-scrollbox-scrollBox"), c.classList.add("ns-scrollbox-scrollTarget"), c.style.height = s || "", n.classList.add(t + "-list"), f.classList.add(t + "-scrollBox"), c.classList.add(t + "-scrollTarget");
    var a = this.scrollBarBlock = document.createElement("div"), f = document.createElement("div"), h = document.createElement("div");
    a.className = "ns-scrollbox-list-scroll-wrap " + t + "-list-scroll-wrap ns-scrollbar-block", f.className = "ns-scrollbox-list-scroll-box " + t + "-list-scroll-box ns-scrollbar-background", h.className = "ns-scrollbox-list-scroll-bar " + t + "-list-scroll-bar ns-scrollbar-bar", a.appendChild(f), f.appendChild(h), n.appendChild(a);
    let l;
    "ResizeObserver" in window && (l = new ResizeObserver(this.reflesh), l.observe(e, { box: "border-box" })), l || window.addEventListener("resize", this.reflesh), this.pointerEvents.pointingTarget = a, this.scrollTarget = c, this.scrollBoxmjur = o, this.scrollContents = e, this.scrollBox = f, this.scrollBar = h, this.scrollBoxWrap = n, r && (i ? r.insertBefore(n, i) : r.appendChild(n)), this.reflesh(), this.scrollEnabled = !0, this.mouseWheelEnabled = !0;
  }
  get scrollTop() {
    return this.scrollTarget.scrollTop;
  }
  get scrollEnabled() {
    return this._scrollEnabled;
  }
  set scrollEnabled(e) {
    e !== this._scrollEnabled && (e ? this.scrollTarget.addEventListener("scroll", this.OnScroll, { passive: !0 }) : this.scrollTarget.removeEventListener("scroll", this.OnScroll));
  }
  get mouseWheelEnabled() {
    return this._mouseWheelEnabled;
  }
  set mouseWheelEnabled(e) {
    e !== this._mouseWheelEnabled && (e ? this.scrollBarBlock.addEventListener("wheel", this.OnMouseWheel, { passive: !0 }) : this.scrollBarBlock.removeEventListener("wheel", this.OnMouseWheel));
  }
  get dom() {
    return this.scrollBoxWrap;
  }
  get target() {
    return this.scrollTarget;
  }
  onScroll(e) {
    this.scrollTarget.scroll(e);
  }
};
I.instance = [], I.refleshAll = () => {
  for (var e = I.instance.length, t = 0; t < e; t++)
    I.instance[t].reflesh();
}, I.init = (e, t = "ns", s = void 0) => {
  for (var i = document.querySelectorAll(e), r = i.length, n = 0; n < r; n++)
    new I(i[n], t, s);
};
let G = I;
b.ninesense.ts.scrollBox = G;
const R = class R {
};
R.have = null, R.createEvent = (e, t) => {
  if (R.have === null) {
    try {
      var s = new CustomEvent(e, t);
      R.have = !0;
    } catch {
      var s = document.createEvent("Event");
      s.initEvent(e, t.bubbles, t.cancelable), R.have = !1;
    }
    return s;
  }
  if (R.have)
    var s = new CustomEvent(e, t);
  else {
    var s = document.createEvent("Event");
    s.initEvent(e, t.bubbles, t.cancelable);
  }
  return s;
}, R.dispatch = (e, t, s) => {
  var i = R.createEvent(t, s);
  return e.dispatchEvent(i);
};
let V = R;
b.ninesense.ts.eventDispatcher = V;
class st {
  constructor() {
    this.listeners = {};
  }
  addEventListener(e, t, s) {
    e in this.listeners || (this.listeners[e] = []), this.listeners[e].push(t);
  }
  removeEventListener(e, t, s) {
    if (e in this.listeners) {
      var i = this.listeners[e];
      for (var r in i)
        if (i[r] === t) {
          i.splice(r, 1);
          return;
        }
    }
  }
  dispatchEvent(e) {
    var t = e.type;
    if (!(t in this.listeners))
      return !0;
    var s = this.listeners[t].slice();
    for (var i of s)
      i.call(this, e);
    return !e.defaultPrevented;
  }
  // private static mixinPrototype = (derivedCtor:Function) => {
  //     derivedCtor.prototype.listeners = {};
  //     derivedCtor.prototype.addEventListener = eventTarget.prototype.addEventListener;
  //     derivedCtor.prototype.removeEventListener = eventTarget.prototype.removeEventListener;
  //     derivedCtor.prototype.dispatchEvent = eventTarget.prototype.dispatchEvent;
  // }
  // public static push = (derivedCtor: Function) => {
  //     eventTarget.mixinPrototype(derivedCtor);
  // }
}
b.ninesense.ts.eventTarget = st;
var ct = window.jp.ninesense.ts.lib;
b.ninesense.ts.lib = ct;
const q = class q extends st {
  constructor() {
    if (super(), this._isBrowserback = void 0, this.targes = [], this._popStateSetting = !1, this.lock = !1, this.getHistoryState = () => {
      var t = window.history.state;
      return (!t || typeof t != "object" || !t.jp_ninesense_ts) && (t = {
        jp_ninesense_ts: {
          values: {},
          history: {
            isBrowserback: void 0,
            title: "",
            description: ""
          }
        },
        othervalue: t
      }), this.values || t && t.jp_ninesense_ts && (this.values = t.jp_ninesense_ts.values), this._isBrowserback === void 0 && t && t.jp_ninesense_ts.history.isBrowserback && (this._isBrowserback = t.jp_ninesense_ts.history.isBrowserback === !0, this._isBrowserback && console.log("HistoryValues:This page is history data.")), t;
    }, this.OnUnLoad = (t) => {
      var s = this.getHistoryState();
      s.jp_ninesense_ts.history.isBrowserback = !0, window.history.replaceState(s, "");
    }, this.OnPopState = (t) => {
      if (t.state) {
        this._popStateSetting = !0;
        try {
          var s = t.state;
          s.jp_ninesense_ts && (this.values = s.jp_ninesense_ts.values);
          for (var i = this.targes.length, r = this.values, n = 0; n < i; n++) {
            var o = this.targes[n];
            o.callback(o.target, r[o.id]);
          }
          this.dispatchEvent(new CustomEvent("change", { detail: { type: "pop", title: document.title, path: location.href } }));
        } finally {
          this._popStateSetting = !1;
        }
      }
    }, this.addTarget = (t, s, i, r, n = null) => {
      this.targes.push({ id: t, target: s, callback: r, urlQuery: n });
      var o = this.values, c = !1;
      o[t] || (o[t] = i, c = !0);
      var a = this.getHistoryState();
      a.jp_ninesense_ts.values = o, window.history.replaceState(a, ""), c || r(s, o[t], !0);
    }, this.getState = (t, s) => this.values[t] ? this.values[t][s] : null, this.back = (t = 1) => {
      if (!(t <= 0))
        return history.length === 1 ? Promise.resolve(!1) : new Promise((s, i) => {
          const r = () => {
            window.removeEventListener("popstate", r), s(!0);
          };
          window.addEventListener("popstate", r), history.go(t * -1);
        });
    }, this.refleshWaight = [], this.reflesh = (t, s = !1) => s === !0 ? (this.doReflesh(t), !0) : new Promise((i, r) => {
      this.refleshWaight.push(i), !this.time && (this.time = setTimeout(() => {
        this.doReflesh(t);
        for (const n of this.refleshWaight)
          n(!0);
        this.refleshWaight.length = 0;
      }, 1));
    }), this.doReflesh = (t) => {
      this.time = null;
      var s = this.getHistoryState();
      s.jp_ninesense_ts.values = this.values;
      var i = [];
      for (var r of this.targes)
        i.push(r.urlQuery);
      i = i.sort((f, h) => f.priority < h.priority || f.priority > h.priority ? -1 : 0);
      var n = { title: document.title, path: location.pathname, param: location.search.replace("?", "").split("&"), hash: "" };
      for (var o of i)
        n = o.onMetaParam(n), n.path = n.path.split("?")[0];
      var c = n.path;
      c === "" && (c = "/");
      var a = n.param.join("&");
      switch (a !== "" && (c += "?" + a), n.hash !== "" && (c += "#" + n.hash), t) {
        case "push":
          window.history.pushState(s, n.title, c);
          break;
        default:
          window.history.replaceState(s, n.title, c);
      }
      this.dispatchEvent(new CustomEvent("change", { detail: { type: t, title: n.title, path: c } }));
    }, q.instance !== void 0) throw new Error("シングルトンクラスを複数インスタンス化出来ません。");
    q.instance = this, window.addEventListener("popstate", this.OnPopState), window.addEventListener("pagehide", this.OnUnLoad);
    var e = this.getHistoryState();
    e.jp_ninesense_ts.history.isBrowserback = !1;
    try {
      history.replaceState(e, ""), this._isBrowserback && ct.init(() => {
        this.dispatchEvent(new Event("backed"));
      });
    } catch (t) {
      window.removeEventListener("popstate", this.OnPopState), window.removeEventListener("pagehide", this.OnUnLoad), window.console.warn(t);
    }
  }
  // private OnHashChange = (e: HashChangeEvent) => {
  //     var event = new Event('hashchange');
  //     this.dispatchEvent(event);
  //     if(!event.defaultPrevented) {
  //         var state = this.getHistoryState();
  //         window.history.replaceState(state, '');
  //     }
  // }
  get isBrowserback() {
    return this._isBrowserback;
  }
  get PopStateSetting() {
    return this._popStateSetting;
  }
  set(e, t, s, i, r = !1) {
    if (this.lock) return r ? !1 : Promise.resolve(!1);
    var n = this.values;
    return n[t] || (n[t] = {}), n[t][s] = i, this.reflesh(e, r);
  }
};
q.GetInstance = () => (q.instance === void 0 && (q.instance = new q()), q.instance), q.useableHistory = () => !!(window.history && window.history.replaceState);
let J = q;
J.GetInstance();
b.ninesense.ts.HistoryValues = J;
const p = class p {
};
p.httpRegex = (() => {
  var e = new RegExp("https?://[^/]*");
  return e;
})(), p.httpUnderRegex = (() => {
  var e = new RegExp("https?://[^/]*");
  return e;
})(), p.href = decodeURI(location.href), p.mapping = [], p.timeout = 0, p.isHttps = p.href.indexOf("https://") > -1, p.getDomain = () => (p.domain || (p.domain = location.host), p.domain), p.getUnderDomain = () => (p.underDomain || (p.underDomain = location.pathname), p.underDomain), p.getParam = () => {
  if (!p.param) {
    for (var e = location.search.substring(1).split("&"), t = {}, s = e.length, i = 0; i < s; i++) {
      var r = e[i].indexOf("="), n = "";
      r != -1 && (n = e[i].slice(0, r));
      var o = e[i].slice(e[i].indexOf("=", 0) + 1);
      if (n != "") {
        const c = /([^\]]*)\[([^\]]?)\]/.exec(n);
        if (c && c[0])
          if (c[1] !== void 0 && c[2] !== void 0) {
            const a = c[1], f = c[2];
            if (!t[a]) {
              const l = parseInt(f, 10);
              isNaN(l) ? t[a] = {} : t[a] = [];
            }
            const h = t[a];
            h instanceof Array ? f === void 0 || f === "" ? h.push(decodeURIComponent(o)) : h[parseInt(f)] = decodeURIComponent(o) : h[n] = decodeURIComponent(o);
          } else
            t[n] = decodeURIComponent(o);
        else
          t[n] = decodeURIComponent(o);
      }
    }
    p.param = t;
  }
  return p.param;
}, p.getParamToQuery = () => {
  const e = p.getParam();
  let t = "";
  for (const s in e)
    t = p.toQuery(t, s, e[s]);
  return t;
}, p.toQuery = (e, t, s) => {
  const i = e !== "";
  switch (typeof s) {
    case "boolean":
    case "string":
    case "number":
      i && (e += "&"), e += encodeURIComponent(t) + "=" + encodeURIComponent(s.toString());
      break;
    case "object":
      let r = "";
      for (const n in s)
        r = p.toQuery(r, t + "[" + n + "]", s);
      i && r !== "" && (e += "&"), e += r;
  }
  return e;
}, p.setting = (e, t) => {
  var s = location.pathname;
  s === e && t();
}, p.loaded = (e) => {
  var t = p.mapping.length, s = p.getParam();
  console.log(e ? "HTTP INIT" : "HTTP INIT:TM"), p.timeout = 0;
  for (var i = 0; i < t && p.mapping[i](s) !== !0; i++)
    ;
  p.mapping = [];
}, p.init = (e, t) => {
  var s = location.pathname;
  if (s === e || e === "" || e instanceof RegExp && e.test(s)) {
    if (document.readyState === "complete") {
      p.mapping.push(t), p.timeout === 0 && (p.timeout = setTimeout(p.loaded, 1));
      return;
    }
    p.mapping[0] || (window.addEventListener ? window.addEventListener("load", p.loaded, !1) : "attachEvent" in window ? window.attachEvent("onload", p.loaded) : window.onload = p.loaded), p.mapping.push(t);
  }
};
let $ = p;
b.ninesense.ts.http = $;
const g = class g {
  /**
   * フルスクリーンが利用できるか
   *
   * @return {boolean}
   */
  static enabledFullScreen() {
    return document.fullscreenEnabled || document.mozFullScreenEnabled || document.documentElement.webkitRequestFullScreen || document.msFullscreenEnabled;
  }
  /**
   * フルスクリーン中のオブジェクトを返却
   */
  static getFullScreenObject() {
    return document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement;
  }
};
g.mapping = [], g.timeout = 0, g.init = (e, t) => {
  var s = location.pathname;
  if (s === e || e === "" || e instanceof RegExp && e.test(s)) {
    if (document.readyState === "complete" || document.readyState === "interactive") {
      g.mapping.push(t), g.timeout === 0 && (g.timeout = setTimeout(g.loaded, 1));
      return;
    }
    g.mapping[0] || (window.addEventListener ? window.addEventListener("DOMContentLoaded", g.loaded, !1) : "attachEvent" in window && window.attachEvent("onreadystatechange", g.loaded)), g.mapping.push(t);
  }
}, g.loaded = (e) => {
  var t = g.mapping.concat();
  g.mapping = [];
  var s = t.length, i = $.getParam();
  console.log(e ? "DOM INIT:EV" : "DOM INIT:TM"), g.timeout = 0;
  for (var r = 0; r < s && t[r](i) !== !0; r++)
    ;
}, g.insertNext = (e, t) => {
  var s = t.nextElementSibling;
  if (s) {
    if (e === s) return;
    s.parentElement.insertBefore(e, s);
  } else
    t.parentElement.appendChild(e);
}, g.insertLastSameTag = (e) => {
  var t = e.ownerDocument.getElementsByTagName(e.tagName), s = t[t.length - 1];
  g.insertNext(s, e);
}, g.removeAllChild = (e) => {
  for (; e.firstChild; )
    e.removeChild(e.firstChild);
}, g.classOnParent = (e, t) => {
  var s = e;
  if (s.classList.contains(t)) return s;
  for (; s.parentElement; )
    if (s = s.parentElement, s.classList.contains(t)) return s;
  return null;
}, g.requestFullscreen = (e, t = null) => {
  var s = e.requestFullscreen || e.mozRequestFullScreen || e.webkitRequestFullScreen || e.msRequestFullscreen;
  s && s.call(e, t);
}, g.exitFullscreen = () => {
  const e = document.exitFullscreen || document.mozCancelFullScreen || document.webkitExitFullscreen || document.msExitFullscreen;
  e && e.call(document);
}, g.addListenFullScreen = (e, t = !1) => {
  document.addEventListener("fullscreenchange", e, t), document.addEventListener("webkitfullscreenchange", e, t), document.addEventListener("mozfullscreenchange", e, t), document.addEventListener("MSFullscreenChange", e, t);
}, g.setMeta = (e) => {
  if (e.title) {
    document.title = e.title;
    var t = document.head.querySelector('meta[property="og:title"]');
    t && (t.content = e.title);
  }
  if (e.image) {
    var s = document.head.querySelector('meta[property="og:image"]');
    if (s && (s.content = e.image, e.imagealt)) {
      var i = document.head.querySelector('meta[property="og:image:alt"]');
      i && (i.content = e.imagealt);
    }
  }
  if (e.description) {
    var r = document.head.querySelector('meta[name="description"]');
    r && (document.head.querySelector('meta[name="description"]').content = e.description);
    var n = document.head.querySelector('meta[property="og:description"]');
    n && (n.content = e.description);
  }
}, g.getMeta = () => {
  var e = document.head.querySelector('meta[name="description"]'), t = document.head.querySelector('meta[property="og:image"]'), s = document.head.querySelector('meta[property="og:image:alt"]');
  return {
    title: document.title,
    description: e ? e.content : document.title,
    image: t ? t.content : "",
    imagealt: s ? s.content : document.title
  };
}, g.unescapeUnknown = (e) => e.replace(/&lt;/g, "<").replace(/&gt;/g, ">"), g.getTestElement = (() => {
  if (g.testElement) return g.testElement;
  const e = document.createElement("div");
  e.attachShadow({ mode: "open" });
  let t = e.shadowRoot;
  return t || (t = e), g.testElement = t;
}), g.escapeUnknown = (e) => {
  if (!e || e === "") return e;
  let t = e.length;
  const s = [""];
  let i = 0;
  for (let o = 0; o < t; o++) {
    const c = e.charAt(o);
    c === "<" ? (s[i] !== "" && (i++, s[i] = ""), s[i] += c) : c === ">" ? (s[i] += c, i++, s[i] = "") : s[i] += c;
  }
  t = s.length, s[i] === "" && (t--, s.length = t - 1);
  let r = "";
  const n = g.getTestElement();
  for (let o = 0; o < t; o++)
    if (s[o])
      try {
        if (s[o].indexOf("<script ") === 0 || s[o].indexOf("<iframe ") === 0 || s[o].indexOf("<style ") === 0 || s[o].indexOf("<link ") === 0 || s[o].indexOf("<img ") === 0)
          continue;
        n.innerHTML = s[o], (!n.firstChild || n.firstChild instanceof HTMLUnknownElement) && (s[o].match(/<\/[^>]*>/) || (n.textContent = s[o], s[o] = n.innerHTML)), g.removeAllChild(n);
      } finally {
        r += s[o];
      }
  return r;
};
let D = g;
b.ninesense.ts.dom = D;
const S = class S {
  constructor() {
  }
  static get enableFrame() {
    return this._enableFrame;
  }
  static set enableFrame(e) {
    this._enableFrame !== e && (this._enableFrame = e, isNaN(this._frameToken) || (cancelAnimationFrame(this._frameToken), this._frameToken = NaN), e && (this._frameToken = requestAnimationFrame(this.onAnimationFrame)));
  }
};
S.requestAnimationTokens = {}, S.onAnimationFrame = (e) => {
  let t = 0;
  const s = Date.now();
  try {
    for (const i in S.requestAnimationTokens) {
      const r = S.requestAnimationTokens[i], n = S.requestAnimationTokens[i] = [];
      for (const o of r) {
        if (o.time < s) {
          const c = o.callback(e);
          typeof c == "number" && (o.time = s + c, n.push(o));
        } else
          n.push(o);
        t++;
      }
      n.length === 0 && delete S.requestAnimationTokens[i];
    }
  } finally {
    t == 0 ? S.enableFrame = !1 : requestAnimationFrame(S.onAnimationFrame);
  }
}, S._enableFrame = !1, S._frameToken = 0, S.request = (e, t = null, s = "replace", i = 0) => {
  if (S.requestAnimationTokens[e] || (S.requestAnimationTokens[e] = []), s === "replacecall")
    if (t) {
      if (S.requestAnimationTokens[e].length !== 0) {
        S.requestAnimationTokens[e].length = 1, S.requestAnimationTokens[e][0].callback = t;
        return;
      }
    } else
      S.requestAnimationTokens[e].length = 0;
  s === "replace" && (S.requestAnimationTokens[e].length = 0), t && (S.requestAnimationTokens[e].push({
    callback: t,
    time: Date.now() + i
  }), S.enableFrame = !0);
};
let it = S;
const j = class j extends st {
  constructor() {
    super(), this.data = [], this.sizeIndex = {}, this.current = NaN, this.initialized = !1, this.OnResize = () => {
      for (var e = window.innerWidth, t = this.data, s = t.length, i = 0; i < s; i++)
        if (t[i].from <= e && e < t[i].to) {
          this.current !== i && (this.current = i, console.debug("size:" + t[i].size), V.dispatch(window, j.NS_CHANGE_BREAK, { detail: { index: i, breakInfo: t[i] } }), this.dispatchEvent(new CustomEvent("change", { detail: { index: i, breakInfo: t[i] } })));
          break;
        }
    }, this.inisiarizedCallbacks = [], this.init = (e) => {
      if (this.initialized) {
        e();
        return;
      }
      this.inisiarizedCallbacks.push(e);
    }, this.getPoint = (e) => {
      var t = this.sizeIndex[e];
      return t === void 0 ? null : this.data[t];
    }, this.currentSizeIn = (...e) => {
      for (var t = e.length, s = this.currentMedia.size, i = 0; t < i; i++)
        if (s === e[i]) return !0;
      return !1;
    }, this.currentSizeUnder = (e) => {
      var t = this.sizeIndex[e];
      if (t === void 0) return !1;
      var s = this.currentMedia, i = this.data[t];
      return s.to <= i.to;
    }, this.currentSizeUpper = (e) => {
      var t = this.sizeIndex[e];
      if (t === void 0) return !1;
      var s = this.currentMedia, i = this.data[t];
      return s.to >= i.to;
    }, this.mediaMinW = (e) => {
      var t = this.sizeIndex[e];
      if (t === void 0) return !1;
      this.currentMedia;
      var s = this.data[t];
      return s.from <= window.innerWidth;
    }, this.mediaSelect = (e) => {
      for (const t of e)
        if (t.media) {
          if (this.mediaMinW(t.media))
            return t;
        } else return t;
    }, b.ninesense.ts.values && b.ninesense.ts.values.on("break_data", (e) => {
      var t = this.data, s = 0;
      for (var i in e) {
        s = e[i], !r && s !== 0 && (this.sizeIndex.zero = t.push({ size: "zero", from: 0, to: s }) - 1), r && (r.to = s);
        var r = { size: i, from: s, to: 0 };
        this.sizeIndex[i] = t.push(r) - 1;
      }
      r && (r.to === 0 && (r.to = Number.MAX_VALUE), window.addEventListener("resize", this.OnResize, { passive: !0 }), it.request("mediaBreakControl_resize", () => {
        this.initialized = !0, this.OnResize();
        for (const n of this.inisiarizedCallbacks)
          n();
        this.inisiarizedCallbacks.length = 0, this.dispatchEvent(new CustomEvent("init", { detail: { index: this.current, breakInfo: e[this.current] } }));
      }));
    });
  }
  get currentMedia() {
    return this.data[this.current];
  }
};
j.NS_CHANGE_BREAK = "ns-changebreak", j.getInstance = () => (j.instance || (j.instance = new j()), j.instance);
let C = j;
C.getInstance();
D.init("", () => {
  b.ninesense.ts.values.get("break_data") || b.ninesense.ts.values.add("break_data", () => ({ min: 320, min_u: 450, mobile: 650, middle: 800, large: 1080, full: 1138, max: 1380, max_over: 1450 }));
});
b.ninesense.ts.mediaBreakControl = C;
const B = class B extends st {
  /**
   * 
   * @param elements .header-block / .header-block>.view
   */
  constructor(e) {
    super(), this.hitOffset = {
      top: 200,
      bottom: 200
    }, this.concurrent_delay = 200, this._checking = !1, this.tryCheck = () => {
      this.checking = !0, this.OnScroll();
    }, this.OnScroll = (s = null) => {
      const i = document.getElementsByClassName("animation-block"), r = i.length;
      let n = 0;
      if (r > 0) {
        const o = { delay: 0 };
        for (let c = 0; c < r; c++) {
          const a = i[c];
          if (a.classList.contains("animation-contain")) {
            const f = a.getBoundingClientRect();
            n++, f.top <= 0 && window.innerHeight <= f.bottom ? this.OnAnimate(a, o) : f.top <= 0 ? (a.classList.remove("animate-wait", "animate"), a.classList.add("animate-over")) : a.classList.remove("animate-wait", "animate", "animate-over");
          } else {
            if (a.classList.contains("animate") || a.classList.contains("animate-wait")) continue;
            const f = a.getBoundingClientRect();
            n++;
            const h = f.top + f.height - this.hitOffset.bottom, l = f.top + this.hitOffset.top;
            0 < h && l < window.innerHeight && this.OnAnimate(a, o);
          }
        }
      }
      n === 0 && (this.checking = !1);
    }, this.OnAnimate = (s, i) => {
      s.classList.add("animate-wait"), setTimeout(() => {
        s.classList.remove("animate-wait"), s.classList.add("animate");
      }, i.delay), i.delay += this.concurrent_delay;
    }, this.checking = !0, this.header = e, this.OnScroll();
    const t = () => {
      var n, o, c, a, f, h;
      const s = this.header.header, i = this.header.fixTarget;
      if (!s || !i) return;
      const r = s.getBoundingClientRect();
      i.classList.contains("fixed") ? window.scrollY < (((h = (f = (a = e == null ? void 0 : e.options) == null ? void 0 : a.fix) == null ? void 0 : f.offset) == null ? void 0 : h.off) || 100) && (i.classList.remove("fixed"), this.dispatchEvent(new CustomEvent("fixed_changed", { detail: { fixed: !1 } }))) : window.scrollY - r.top > (((c = (o = (n = e == null ? void 0 : e.options) == null ? void 0 : n.fix) == null ? void 0 : o.offset) == null ? void 0 : c.on) || 500) && (i.classList.add("fixed"), this.dispatchEvent(new CustomEvent("fixed_changed", { detail: { fixed: !0 } })));
    };
    document.addEventListener("scroll", t, { passive: !0 }), t();
  }
  get checking() {
    return this._checking;
  }
  set checking(e) {
    this._checking !== e && (this._checking = e, e ? document.addEventListener("scroll", this.OnScroll, { passive: !0 }) : document.removeEventListener("scroll", this.OnScroll));
  }
};
B.getInstance = () => B.instance, B.init = (e) => {
  B.instance || (B.instance = new B(e));
};
let _ = B;
const z = class z {
  constructor(e) {
    this.headerSetting = () => {
      if (this.widget_list)
        return;
      this.header = this.elements.header;
      const t = this.widget_list = this.elements.menu;
      if (!t) return;
      (this.scrollbox = new G(t, "top-menu")).reflesh();
    }, this.globalMenuReflesh = () => {
      this.scrollbox && this.scrollbox.reflesh();
    }, this.headerTypeCheck = () => {
      this.onScroll();
    }, this.autoHeaderType = !1, this.onScroll = (t = null) => {
      if (this.autoHeaderType === !1) return;
      const s = this.header, i = this.elements.fixTarget;
      if (i) {
        const r = s.getBoundingClientRect();
        W.getInstance().opened || (i.classList.contains("fixed") ? window.scrollY < 100 && i.classList.remove("fixed") : window.scrollY - r.top > 200 && i.classList.add("fixed"));
      }
    }, this.onResize = (t) => {
      this.onScroll(t);
    }, this.elements = e, J.GetInstance(), window.addEventListener("scroll", this.onScroll, { passive: !0 }), window.addEventListener("resize", this.onResize, { passive: !0 }), this.headerSetting(), C.getInstance().init(() => {
      this.headerSetting(), this.onScroll();
    });
  }
};
z.init = (e) => {
  z.instance || (z.instance = new z(e));
}, z.getInstance = () => z.instance;
let Q = z;
const N = class N {
  constructor(e) {
    this.uselock = !0, this.menuInit = () => {
      if (this.menu_switch) return;
      const t = this.menu_switch = this.elements.switch;
      t && (t.addEventListener("click", this.onMenuOpen), document.documentElement.classList.add("global-menu-init"));
      const s = this.elements.menu;
      s && s.addEventListener("click", this.OnMenuClick);
    }, this.OnMenuClick = (t) => {
      t.target instanceof HTMLAnchorElement && (this.opened = !1);
    }, this.onMenuOpen = (t = null) => {
      const s = this.menu_switch;
      s && (s.checked ? (this.uselock && M.getInstance().setLock(this), document.documentElement.classList.add("menu-opened"), Q.getInstance().globalMenuReflesh()) : (this.uselock && M.getInstance().unLock(this), document.documentElement.classList.remove("menu-opened")));
    }, this.onClick = (t) => {
      t.target.classList.contains("menu-cover") && (this.opened = !1);
    }, this.elements = e, C.getInstance(), this.menuInit(), window.addEventListener(C.NS_CHANGE_BREAK, (t) => {
      C.getInstance().currentSizeUpper("large") && (this.opened = !1);
    }), C.getInstance().init(() => {
      this.menuInit(), this.menu_switch && (this.menu_switch.checked = !1), window.addEventListener("click", this.onClick), this.onMenuOpen();
    });
  }
  get opened() {
    return this.menu_switch ? this.menu_switch.checked : !1;
  }
  set opened(e) {
    this.menu_switch && this.menu_switch.checked !== e && (this.menu_switch.checked = e, this.onMenuOpen());
  }
};
N.getInstance = () => N.instance, N.init = (e) => {
  N.instance || (N.instance = new N(e));
};
let W = N;
const mt = (L, e = !0) => (Q.init(L), W.init(L), _.init(L), W.getInstance().uselock = e, {
  globalMenuScroll: Q.getInstance(),
  globalMenu: W.getInstance(),
  scrollAnimation: _.getInstance()
});
class nt {
  constructor(e, t, s, i, r, n, o, c) {
    if (this.loading = !1, this.OnLoadStart = (l) => {
      this.start(this, l);
    }, this.OnLoadEnd = (l) => {
      if (this.loading = !1, this.jsonpCallbackName)
        window[this.uniqu] = (d) => {
          delete window[this.id], this.jsonpData = d, this.end(this, l);
          const u = this.doAutoParse(d);
          for (const E of this.promise)
            E.res(u);
          this.release();
        };
      else {
        if (this.end(this, l), this.promise.length > 0) {
          const d = this.doAutoParse(this.getData());
          for (const u of this.promise)
            u.res(d);
        }
        this.release();
      }
    }, this.doAutoParse = (l) => {
      if (this.autoparse)
        try {
          typeof l == "string" && (l = JSON.parse(decodeURIComponent(l))), l = { id: l.id, status: l.status, data: l.data };
        } catch {
          window.console.error("Loader:ParseError");
        }
      return l;
    }, this.OnLoadProgress = (l) => {
      this.progress(this, l);
    }, this.OnLoadError = (l) => {
      this.loading = !1, this.error(this, l);
      for (const d of this.promise)
        d.rej(l);
      this.release();
    }, this.promise = [], this.getData = () => {
      if (this.data) return this.data;
      if (this.request instanceof HTMLScriptElement)
        this.data = this.jsonpData;
      else
        return this.request ? (this.data = this.request.response, this.data) : null;
      return this.data;
    }, this.getDataAs = () => this.loading ? new Promise((l, d) => {
      this.promise.push({ res: l, rej: d });
    }) : Promise.resolve(this.data), this.open = (l) => {
      if (this.loading = !1, this.request instanceof HTMLScriptElement)
        switch (this.uniqu = btoa(this.id), this.jsonpCallbackScript.innerHTML = "window." + this.jsonpCallbackName + ' = function(data){ window.setTimeout( function () { window["' + this.uniqu + '"](data) }, 1); }', l) {
          case 0:
            this.request.src = this.id;
            break;
          case 1:
            this.request.src = this.url;
            break;
        }
      else
        switch (l) {
          case 0:
            this.request.open("GET", this.id, !0);
            break;
          case 1:
            this.request.open("POST", this.url, !0);
            break;
        }
    }, this.setRequestHeader = (l, d) => {
      this.request instanceof HTMLScriptElement || this.request.setRequestHeader(l, d);
    }, this.setResponseType = (l) => {
      this.request instanceof HTMLScriptElement || (this.request.responseType = l);
    }, this.send = (l = null) => {
      var d;
      try {
        this.request instanceof HTMLScriptElement ? (d = this.jsonpCallbackScript.parentElement) == null || d.insertBefore(this.request, this.jsonpCallbackScript) : this.request.send(l), this.loading = !0;
      } catch (u) {
        this.loading = !1, window.console.error(u);
      }
    }, this.release = () => {
      this.request && (this.request.removeEventListener("loadend", this.OnLoadEnd), this.request.removeEventListener("error", this.OnLoadError), this.request.removeEventListener("loadstart", this.OnLoadStart), this.request.removeEventListener("progress", this.OnLoadProgress), this.request instanceof HTMLScriptElement && this.request.parentElement && this.request.parentElement.removeChild(this.request), this.jsonpCallbackScript && this.jsonpCallbackScript instanceof HTMLScriptElement && this.jsonpCallbackScript.parentElement && this.jsonpCallbackScript.parentElement.removeChild(this.jsonpCallbackScript)), this.jsonpCallbackScript = null, this.jsonpCallbackName = null, this.request = null, this.end = null, this.start = null, this.progress = null, this.error = null, this.promise = null;
    }, this.url = e, this.query = t, this.start = s, this.end = i, this.progress = r, this.error = n, this.jsonpCallbackName = o, o) {
      var a = document.createElement("script");
      a.async = !0, a.classList.add("jp-ninesense-ts-loader-script"), a.addEventListener("load", this.OnLoadEnd), a.addEventListener("error", this.OnLoadError), a.addEventListener("loadstart", this.OnLoadStart), a.addEventListener("progress", this.OnLoadProgress), this.request = a, this.jsonpCallbackScript = document.createElement("script"), this.jsonpCallbackScript.type = "text/javascript";
      var f = document.getElementsByTagName("SCRIPT"), h = f[f.length - 1];
      h.parentElement.appendChild(this.jsonpCallbackScript);
    } else {
      this.request = (() => {
        try {
          return new XMLHttpRequest();
        } catch {
        }
        try {
          return new ActiveXObject("MSXML2.XMLHTTP.6.0");
        } catch {
        }
        try {
          return new ActiveXObject("MSXML2.XMLHTTP.3.0");
        } catch {
        }
        try {
          return new ActiveXObject("MSXML2.XMLHTTP");
        } catch {
        }
        return null;
      })();
      try {
        this.request.responseType = c;
      } catch {
      }
      this.request.addEventListener("loadend", this.OnLoadEnd), this.request.addEventListener("error", this.OnLoadError), this.request.addEventListener("loadstart", this.OnLoadStart), this.request.addEventListener("progress", this.OnLoadProgress);
    }
    this.m_setEvent = !0;
  }
  get Loading() {
    return this.loading;
  }
}
b.ninesense.ts.LoaderToken = nt;
const k = class k {
  constructor(e) {
    this.owners = /* @__PURE__ */ Object.create(null), this.method = 0, this.AddOwner = (t, s = "", i = {}) => {
      if (t.iloadOwner_uniquekey || (t.iloadOwner_uniquekey = k.noSeq, k.noSeq++), this.owners[t.iloadOwner_uniquekey]) {
        var n = this.owners[t.iloadOwner_uniquekey];
        n.owner = t, n.filter[s] = i;
      } else {
        var r = {};
        r[s] = i, this.owners[t.iloadOwner_uniquekey] = { owner: t, filter: r };
      }
      return this;
    }, this.RemoveOwner = (t, s = void 0) => {
      s ? delete this.owners[t.iloadOwner_uniquekey].filter[s] : delete this.owners[t.iloadOwner_uniquekey];
    }, this.autoparse = !0, this.RequestGet = (t, s = null, i = "application/x-www-form-urlencoded", r = !1, n = !0, o = void 0, c = "text") => {
      var a = this.method;
      this.method = 0;
      try {
        return this.RequestUrl(t, s, i, r, n, o, c);
      } finally {
        this.method = a;
      }
    }, this.RequestPost = (t, s = null, i = "application/x-www-form-urlencoded", r = !1, n = !0, o = void 0, c = "text") => {
      var a = this.method;
      this.method = 1;
      try {
        return this.RequestUrl(t, s, i, r, n, o, c);
      } finally {
        this.method = a;
      }
    }, this.setHeader = (t) => {
      this.header = t;
    }, this.RequestUrl = (t, s = null, i = "application/x-www-form-urlencoded", r = !1, n = !0, o, c = "text") => {
      if (sessionStorage.getItem(k.timeName) === null)
        try {
          sessionStorage.setItem(k.timeName, (/* @__PURE__ */ new Date()).getMilliseconds().toString());
        } catch (T) {
          console.error(T);
        }
      var a = s;
      if (!r && typeof a == "object") {
        var f = [];
        for (var h in a) {
          var l = a[h];
          typeof l == "object" && (l = JSON.stringify(l));
          var d = encodeURIComponent(h) + "=" + encodeURIComponent(l);
          f.push(d);
        }
        a = f.join("&").replace(/%20/g, "+");
      }
      var u;
      switch (this.method) {
        case 0:
          var E = "?";
          t.lastIndexOf("?") > -1 && (E = "&"), a !== "" && (a = "&" + a);
          var w = t + E + "loaderID=" + (sessionStorage.getItem(k.timeName) || "unknown") + a;
          if (k.tokens[w])
            return k.tokens[w];
          u = new nt(t, s, this.OnLoadStart, this.OnLoadEnd, this.OnLoadProgress, this.OnLoadError, o, c), u.autoparse = n, u.id = w, u.open(this.method);
          try {
            if (typeof i == "string")
              u.setRequestHeader("Content-Type", i);
            else
              for (var x in i)
                u.setRequestHeader(x, i[x]);
          } catch (T) {
            window.console.error(T);
          }
          u.send();
          break;
        case 1:
          switch (u = new nt(t, s, this.OnLoadStart, this.OnLoadEnd, this.OnLoadProgress, this.OnLoadError, o, c), u.autoparse = n, i) {
            case "application/json":
              if (typeof s == "string")
                var O = s;
              else
                var O = JSON.stringify(s);
              break;
            case "multipart/form-data":
              s instanceof FormData && (i = null);
              break;
            default:
              var O = "loaderID=" + (sessionStorage.getItem(k.timeName) || "unknown") + "&" + a;
          }
          u.id = t + "?" + O, u.open(this.method);
          try {
            if (typeof i == "string")
              u.setRequestHeader("Content-Type", i);
            else
              for (var x in i)
                u.setRequestHeader(x, i[x]);
          } catch {
          }
          r ? u.send(a) : u.send(O);
          break;
      }
      return k.tokens[u.id] = u, u;
    }, this.RequestQuery = (t = null, s = "application/x-www-form-urlencoded", i = !1) => this.RequestUrl(this.serverUrl, t, s, i, this.autoparse), this.isLoading = (t) => k.tokens[t] ? k.tokens[t].Loading : !1, this.checkFilter = (t, s) => {
      var i = this.owners[s], r = i.filter, n;
      if ((n = r[t.url]) || r[""]) {
        var o = !1;
        for (var c in n) {
          var a = t.query[c];
          if (!a || a !== n[c]) {
            o = !0;
            break;
          }
        }
        return !o;
      }
      return !1;
    }, this.OnLoadStart = (t, s) => {
      for (var i in this.owners) {
        let r;
        this.checkFilter(t, i) && (r = this.owners[i].owner.LoadStart) && r(t);
      }
    }, this.OnLoadEnd = (t, s) => {
      var i = t.getData(), r;
      if (t.autoparse)
        try {
          typeof i == "string" && (i = JSON.parse(decodeURIComponent(i))), r = { id: i.id, status: i.status, data: i.data };
        } catch {
          window.console.error("Loader:ParseError");
        }
      else
        r = { data: i };
      r || (r = { id: "", status: { loading: !1 }, data: i });
      for (var n in this.owners)
        if (this.checkFilter(t, n)) {
          var o = this.owners[n].owner;
          o.LoadEnd(t, r);
        }
    }, this.OnLoadError = (t, s) => {
      for (var i in this.owners)
        this.checkFilter(t, i) && this.owners[i].owner.LoadError(t, s);
    }, this.OnLoadProgress = (t, s) => {
      for (var i in this.owners) {
        let r;
        this.checkFilter(t, i) && (r = this.owners[i].owner.LoadProgress) && r(t, s);
      }
    }, this.OnFormat = (t) => {
    }, this.serverUrl = e;
  }
  get serverURL() {
    return this.serverUrl;
  }
  set serverURL(e) {
    this.serverUrl = e;
  }
  cacheDelete(e) {
    delete k.tokens[e.id];
  }
};
k.timeName = "jp.ninesense.ts.Common.ajax.Loader.time", k.noSeq = 0, k.tokens = {};
let tt = k;
b.ninesense.ts.Loader = tt;
var ht = /* @__PURE__ */ ((L) => (L[L.GET = 0] = "GET", L[L.POST = 1] = "POST", L))(ht || {});
b.ninesense.ts.LoadMethod = ht;
const Y = class Y {
  constructor() {
    this.loadings = {}, this.LoadEnd = (e, t) => {
      var s = this.loadings[e.id];
      s && s(e.query.zipcode, t.data), delete this.loadings[e.id];
    }, this.LoadStart = (e) => {
    }, this.LoadError = (e, t) => {
      var s = this.loadings[e.id];
      s && s(e.query.zipcode, null), delete this.loadings[e.id];
    }, this.LoadProgress = (e, t) => {
    }, this.zip2address = (e, t) => {
      var s = this.loader.RequestGet("https://zip-cloud.appspot.com/api/search", { zipcode: e, limit: 1, callback: "onZipCloud" }, "application/javascript", !1, !1, "onZipCloud");
      s.Loading ? this.loadings[s.id] = t : setTimeout(() => {
        t(e, s.getData());
      });
    }, this.loader = new tt(""), this.loader.AddOwner(this);
  }
};
Y.getInstance = () => Y.instance || (Y.instance = new Y());
let et = Y;
b.ninesense.ts.Address = et;
const U = class U {
  constructor() {
    this.changed = !1, this.settingZipAutoComp = (s) => {
      const i = document.querySelectorAll('[data-addressinputs-id="' + s + '"]');
      let r, n, o, c;
      const a = i.length;
      for (let f = 0; f < a; f++) {
        const h = i[f];
        switch (h.getAttribute("data-addressinputs-role")) {
          case "zip":
            r = h;
            break;
          case "state":
            n = h;
            break;
          case "address_0":
            o = h;
            break;
          case "address_1":
            c = h;
            break;
        }
      }
      r.addEventListener("change", (f) => {
        et.getInstance().zip2address(r.value, (h, l) => {
          if (!l.results) return;
          const d = l.results[0];
          d && (r.value = d.zipcode, n.value = d.prefcode, o.value = d.address2, c.value = d.address3, this.changed = !1);
        });
      });
    };
    const e = document.querySelectorAll(".ns-wp-addressinputs"), t = e.length;
    for (let s = 0; s < t; s++) {
      const i = e[s];
      this.settingZipAutoComp(i.id);
    }
  }
};
U.init = () => {
  U.instance = U.instance || new U();
};
let rt = U;
const H = class H {
  constructor() {
    const e = document.getElementById("menu-global");
    e && C.getInstance().init(() => {
      e.addEventListener("click", (t) => {
        const s = t.target;
        s.classList.contains("menu-item-has-children") && C.getInstance().currentSizeUnder("middle") && (s.classList.contains("open") ? s.classList.remove("open") : s.classList.add("open"));
      });
    });
  }
};
H.init = () => {
  H.instance = H.instance || new H();
};
let ot = H;
const X = class X {
  constructor() {
    this.OnClick = (t) => {
      const s = t.target, n = "office-area-" + D.classOnParent(s, "shape-area").id.replace(/(_pc)|(_sp)/, "");
      location.hash = "#" + n;
    };
    const e = document.querySelector(".office-map");
    e && e.addEventListener("click", this.OnClick);
  }
};
X.init = () => {
  X.instance = new X();
};
let at = X;
b.ninesense.ts.values.on("footer_ready", () => {
  mt({
    header: document.querySelector('[data-frameset="header"]'),
    fixTarget: document.querySelector('[data-frameset="fixTarget"]'),
    menu: document.querySelector('[data-frameset="menu"]'),
    switch: document.querySelector('[data-frameset="switch"]')
  }), D.init("", () => {
  }), rt.init(), G.init(".ns-input.welcome.privacy"), ot.init(), at.init();
});
gt();
