// source --> https://www.asahikawa.jrc.or.jp/app/wp-content/plugins/ultimate-addons-for-gutenberg/assets/js/table-of-contents.js?ver=1.13.3&#038;fver=20190512115957 
( function( $ ) {

	var scroll = true
	var scroll_offset = 30
	var scroll_delay = 800
	var scroll_to_top = false
	var scroll_element = null

	UAGBTableOfContents = {

		init: function() {

			$( document ).delegate( ".uagb-toc__list a", "click", UAGBTableOfContents._scroll )
			$( document ).delegate( ".uagb-toc__scroll-top", "click", UAGBTableOfContents._scrollTop )
			$( document ).on( "scroll", UAGBTableOfContents._showHideScroll  )

		},

		_showHideScroll: function( e ) {

			if ( null != scroll_element ) {

				if ( jQuery( window ).scrollTop() > 300 ) {
					if ( scroll_to_top ) {
						scroll_element.addClass( "uagb-toc__show-scroll" )
					} else {
						scroll_element.removeClass( "uagb-toc__show-scroll" )
					}
				} else {
					scroll_element.removeClass( "uagb-toc__show-scroll" )
				}
			}
		},

		/**
		 * Smooth To Top.
		 */
		_scrollTop: function( e ) {

			$( "html, body" ).animate( {
				scrollTop: 0
			}, scroll_delay )
		},

		/**
		 * Smooth Scroll.
		 */
		_scroll: function( e ) {

			if ( this.hash !== "" ) {
				var hash = this.hash

				if ( scroll ) {

					var offset = $( hash ).offset()

					if ( "undefined" != typeof offset ) {

						$( "html, body" ).animate( {
							scrollTop: ( offset.top - scroll_offset )
						}, scroll_delay )
					}
				}

			}
		},

		_parseEntity: function( text ) {

			let charEntity = [ "&amp;", "&gt;", "&lt;", "&quot;", "&#39;" ]

			for ( var k = 0 ; k < charEntity.length; k++ ) {
				text = text.split(charEntity[k]).join("")
			}

			text = text.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, "")

			return text
		},

		_parse: function( match ) {


			let text = match[0]

			text = text.replace( "<h" + match[2] + ">", "" )
			text = text.replace( "</h" + match[2] + ">", "" )

			let text_without_chars = UAGBTableOfContents._parseEntity( text )

			let link_text = text_without_chars.replace(/  */g,"_")

			return link_text
		},

		/**
		 * Alter the_content.
		 */
		_run: function( attr, id ) {

			scroll_to_top = attr.scrollToTop

			scroll_element = $( ".uagb-toc__scroll-top" )
			if ( 0 == scroll_element.length ) {
				$( "body" ).append( "<div class=\"uagb-toc__scroll-top dashicons dashicons-arrow-up-alt2\"></div>" )
				scroll_element = $( ".uagb-toc__scroll-top" )
			}

			if ( scroll_to_top ) {
				scroll_element.addClass( "uagb-toc__show-scroll" )
			} else {
				scroll_element.removeClass( "uagb-toc__show-scroll" )
			}

			UAGBTableOfContents._showHideScroll()
		},
	}

	$( document ).ready(function() {
		UAGBTableOfContents.init()
	})


} )( jQuery );
// source --> https://www.asahikawa.jrc.or.jp/app/wp-content/plugins/liquid-rwd-plus/js/jquery.cookie.js?ver=5.2.21&#038;fver=20190426074546 
/*!
 * jQuery Cookie Plugin v1.4.1
 * https://github.com/carhartl/jquery-cookie
 *
 * Copyright 2006, 2014 Klaus Hartl
 * Released under the MIT license
 */
(function (factory) {
	if (typeof define === 'function' && define.amd) {
		// AMD (Register as an anonymous module)
		define(['jquery'], factory);
	} else if (typeof exports === 'object') {
		// Node/CommonJS
		module.exports = factory(require('jquery'));
	} else {
		// Browser globals
		factory(jQuery);
	}
}(function ($) {

	var pluses = /\+/g;

	function encode(s) {
		return config.raw ? s : encodeURIComponent(s);
	}

	function decode(s) {
		return config.raw ? s : decodeURIComponent(s);
	}

	function stringifyCookieValue(value) {
		return encode(config.json ? JSON.stringify(value) : String(value));
	}

	function parseCookieValue(s) {
		if (s.indexOf('"') === 0) {
			// This is a quoted cookie as according to RFC2068, unescape...
			s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
		}

		try {
			// Replace server-side written pluses with spaces.
			// If we can't decode the cookie, ignore it, it's unusable.
			// If we can't parse the cookie, ignore it, it's unusable.
			s = decodeURIComponent(s.replace(pluses, ' '));
			return config.json ? JSON.parse(s) : s;
		} catch(e) {}
	}

	function read(s, converter) {
		var value = config.raw ? s : parseCookieValue(s);
		return $.isFunction(converter) ? converter(value) : value;
	}

	var config = $.cookie = function (key, value, options) {

		// Write

		if (arguments.length > 1 && !$.isFunction(value)) {
			options = $.extend({}, config.defaults, options);

			if (typeof options.expires === 'number') {
				var days = options.expires, t = options.expires = new Date();
				t.setMilliseconds(t.getMilliseconds() + days * 864e+5);
			}

			return (document.cookie = [
				encode(key), '=', stringifyCookieValue(value),
				options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
				options.path    ? '; path=' + options.path : '',
				options.domain  ? '; domain=' + options.domain : '',
				options.secure  ? '; secure' : ''
			].join(''));
		}

		// Read

		var result = key ? undefined : {},
			// To prevent the for loop in the first place assign an empty array
			// in case there are no cookies at all. Also prevents odd result when
			// calling $.cookie().
			cookies = document.cookie ? document.cookie.split('; ') : [],
			i = 0,
			l = cookies.length;

		for (; i < l; i++) {
			var parts = cookies[i].split('='),
				name = decode(parts.shift()),
				cookie = parts.join('=');

			if (key === name) {
				// If second argument (value) is a function it's a converter...
				result = read(cookie, value);
				break;
			}

			// Prevent storing a cookie that we couldn't decode.
			if (!key && (cookie = read(cookie)) !== undefined) {
				result[name] = cookie;
			}
		}

		return result;
	};

	config.defaults = {};

	$.removeCookie = function (key, options) {
		// Must not alter options, thus extending a fresh object...
		$.cookie(key, '', $.extend({}, options, { expires: -1 }));
		return !$.cookie(key);
	};

}));
// source --> https://www.asahikawa.jrc.or.jp/app/wp-content/plugins/liquid-rwd-plus/js/rwd.js?ver=5.2.21&#038;fver=20190529072005 
/*
RWD+
Author: LIQUID DESIGN Ltd.
Author URI: https://lqd.jp/wp/
*/
jQuery(function ($) {
  if (navigator.userAgent.indexOf('iPhone') > 0 || navigator.userAgent.indexOf('iPod') > 0 || navigator.userAgent.indexOf('Android') > 0) {
    $('body').append('<!-- RWD+ (Plugin: Liquid RWD Plus) --><div class="rwd"><div class="rwd_in"><strong class="hidden">Mobile</strong><a href="javascript:void(0);" class="rwd_sp hidden_sp">Mobile</a> | <strong class="hidden_sp">Desktop</strong><a href="javascript:void(0);" class="rwd_pc hidden">Desktop</a></div></div>');
    $(".hidden_sp").hide();
    $(".rwd_in").css({
      'color': '#333',
      'display': 'block',
      'background': '#eee',
      'margin': '20px 20px 60px 20px',
      'padding': '10px 15px',
      'text-align': 'center',
      'border-radius': '5px',
      '-webkit-border-radius': '5px',
      '-moz-border-radius': '5px',
      'position': 'relative',
      'z-index': '999'
    });
    if ($.cookie("rwd")) {
      mode = $.cookie("rwd");
    } else {
      mode = "sp";
    }
    if (mode == "sp") {
      $(".rwd *").removeClass("hidden");
    } else {
      $(".rwd .hidden").hide();
      $(".rwd .hidden_rp").hide();
      $(".rwd .hidden_sp").show();
      $('meta[name="viewport"]').attr('content', 'width=1280');
      $(".rwd").css({
        'font-size': '50px'
      });
      $(".rwd_in").css({
        'margin': '0',
        'padding': '20px 0',
        'position': 'fixed',
        'width': '100%',
        'bottom': '0'
      });
    }
    $(".rwd_pc").click(function () {
      $.cookie("rwd", "pc", {
        path: '/'
      });
      url = location.href;
      location.href = url;
      return false;
    });
    $(".rwd_sp").click(function () {
      $.cookie("rwd", "sp", {
        path: '/'
      });
      url = location.href;
      location.href = url;
      return false;
    });
  }
});