if ( !window.cocoPView || typeof hsCCPV != "undefined" ) {	//	2008.11.01: 多重読込み禁止
window.cocoPView = {
//	===
	Version						:	"0.07k"

//	===
,	archivePaging				:	true			//	アーカイブをページング表示する
,	topPagePaging				:	true			//	トップページもページング表示する
,	hideEntryMore				:	true			//	本文(続き)部分を隠す(『続きを読む』リンク表示)
,	replaceEntryMore			:	true			//	『続きを読む』リンク用テキスト置換
,	entryMoreText				:	'続きを読む'	//	『続きを読む』リンク用テキスト
,	useIndex					:	true			//	ページ内目次表示
,	pageIndexTitle				:	'ページ内目次'	//	ページ内目次見出し
,	topPageSubTitle				:	''				//	トップページ用サブタイトル
,	linkTitleType1				:	'ページ内移動'	//	ページ内を移動するリンクのタイトル
,	linkTitleType2				:	'個別ページへ'	//	個別ページへ移動するリンクのタイトル
,	switchLinkType				:	false			//	ページ内移動と個別ページへの移動のリンクの入れ換え(false:入れ換えない true:入れ換え)
,	addSubTitleToH2				:	true			//	サブタイトルをH2(通常は年月日が表示されるところ)に付ける
,	addSubTitleToH3				:	false			//	サブタイトルをH3(通常は記事タイトルが表示されるところ)に付ける
,	useArticleList				:	false			//	ページ内目次表示にshowArticleList()を使用(要'articleListLTT.js')
,	showAllFirst				:	false			//	最初に全件表示する
,	indexOnly					:	false			//	全件表示時に目次のみ表示(2009.05.10)
,	showMax						:	5				//	ページ内記事表示数
,	modifySidebar				:	true			//	サイドバーのバックナンバー／カテゴリーを置換する
,	usePullDownMenu				:	true			//	バックナンバー／カテゴリーをプルダウンメニューにする
,	monthlyPullDownSelect		:	'年月を選択'
													//	月別プルダウン用初期表示
,	categoryPullDownSelect		:	'カテゴリーを選択'
													//	カテゴリープルダウン用初期表示
,	loadByAjax					:	true			//	バックナンバー／カテゴリーの読込にAjax(XMLHttpRequest)を使用
,	getArchivesOnload			:	true			//	archives.htmlの取得→サイドバーのバックナンバー／カテゴリー置換を onload 時に行う
													//	※false時は即時実施：スクリプトを読み込む前にバックナンバー／カテゴリーが表示されていること
,	useDateIndex				:	true			//	ページ内移動リンクで日付を使う(false時は記事ID)
,	scrollOnPaging				:	'toIndexTop'	//	ページング時のスクロール先：toPageTop(ページ先頭)/toIndexTop(インデックス先頭)/none(スクロールしない)

,	onloadFunction				:	null			//	Ajaxにてページ読込後に呼出す関数
,	onCompleteSidebar			:	null			//	サイドバーのバックナンバー／カテゴリーを置換後に呼出す関数
,	onCompleteContent			:	null			//	ページング用整形後に呼出す関数

,	tbPaging					:	true			//	トラックバックをページング表示する
,	showAllFirstTb				:	false			//	最初に全件表示する(トラックバック)
,	showMaxTb					:	3				//	ページ内トラックバック表示数
,	tbReverse					:	false			//	元のトラックバックの並び順(false:昇順 true:降順)
,	showNewTbFirst				:	true			//	最初に最近のトラックバックを表示する(false:一番古いものを表示)(※tbReverse=falseの場合のみ有効)
,	pagingTypeTb				:	1				//	0:最初のページの件数固定 1:最新ページの件数固定(※tbReverse=falseの場合のみ有効)

,	commentPaging				:	true			//	コメントをページング表示する
,	showAllFirstCmt				:	false			//	最初に全件表示する(コメント)
,	showMaxCmt					:	5				//	ページ内コメント表示数
,	commentReverse				:	false			//	元のコメントの並び順(false:昇順 true:降順)
,	showNewCmtFirst				:	true			//	最初に最近のコメントを表示する(false:一番古いものを表示)(※commentReverse=falseの場合のみ有効)
,	pagingTypeCmt				:	1				//	0:最初のページの件数固定 1:最新ページの件数固定(※tbReverse=falseの場合のみ有効)

,	backnumbersDirPaging		:	true			//	'/backnumbers/'下のページもページング表示する(cocoMakeBN.js対応)

,	addIndexSwitch				:	false			//	目次の表示／非表示切替ボタン表示
,	indexHideFirst				:	true			//	false:最初から目次を表示する true:最初は目次を消しておく
,	indexOffSwitchImage			:	'http://furyu.tea-nifty.com/script/indexoffsw.gif'
,	indexOnSwitchImage			:	'http://furyu.tea-nifty.com/script/indexonsw.gif'
,	indexOffStr					:	'目次を隠す'
,	indexOnStr					:	'目次を表示'

//	===
,	content						:	null
,	entryAll					:	0
,	tbAll						:	0
,	cmtAll						:	0
,	indexBaseId					:	'articleListScreen'
,	xmlHttpObj					:	null
,	pagePath					:	''

,	timestamps					:	[]				//	for test

//	===
,	setEventHandler				:	(function(){
		var	w=window;
		if (w.addEventListener) {
			return function(obj,evt,handler){obj.addEventListener(evt,handler,false)};
		}
		else if (w.attachEvent) {
			return function(obj,evt,handler){obj.attachEvent('on'+evt,handler)};
		}
		else {
			return function(obj,evt,handler){var org=obj['on'+evt];obj['on'+evt]=function(){if(typeof org=='function')org();handler()}};
		}
	})()	//	end of setEventHandler()

//	===
,	getElementsByTagAndClassName	:	function(tagName,className,parent) {
		if (!parent) parent = window.document;
		var children=parent.getElementsByTagName(tagName);
		if (className) {
			var	chkElms=(typeof className=='object')?className:className.split(' ');
			var	flgElms=[];
			for (var ci=0,len=chkElms.length; ci<len; ci++) flgElms[chkElms[ci]]=true;
			var elements=[];
			for (var ci=0,leni=children.length; ci<leni; ci++) {
				var child=children[ci];
				var cname=child.className;
				if (!cname) continue;
				var cnameElms = cname.split(' ');
				for (var cj=0,lenj=cnameElms.length; cj<lenj; cj++) {
					if (flgElms[cnameElms[cj]]) {
						elements.push(child);
						break;
					}
				}
			}
			return elements;
		}
		else {
			return children;
		}
	}	//	end of getElementsByTagAndClassName()

//	===
,	replaceUrl2Path				:	(
		function	( str ) {
			return	str.replace( new RegExp('http://' + document.domain, 'g'), '' ) ;
		}
	)	//	end of replaceUrl2Path()
//	===
,	getArchivesFilename			:	(
		function	() {
			var	links = document.getElementsByTagName('link') ;
			var	ci,len;
			for ( ci=0,len=links.length; ci<len; ci++ ) {
				if ( links[ci].title.match(/RSS 1.0/) || links[ci].title== "RSS" ) break;	//	2008.10.26: ココログ仕様変更に伴う修正
			}
			if ( ci<len ) {
				return this.replaceUrl2Path( links[ci].href.replace( 'index.rdf', 'archives.html' ) ) ;
			}
			else {
				return null ;
			}
		}
	)	//	end of getArchivesFilename()
//	===
,	getXmlHttpObj				:	(function(){
		if ( typeof ActiveXObject != "undefined" ) {
			var	msXml=['Msxml2.XMLHTTP','Microsoft.XMLHTTP'],ci,len;
			for (ci=0,len=msXml.length; ci<len; ci++) {
				with ({msXml:msXml[ci]}) {
					try {
						new ActiveXObject(msXml);
						return function() {return new ActiveXObject(msXml)};
					}
					catch (e) {}
				}
			}
			return function(){return null};
		}
		else if ( typeof XMLHttpRequest != "undefined" ) {
			return function(){return new XMLHttpRequest()};
		}
		else {
			return function(){return null};
		}
	})()	//	end of getXmlHttpObj()
//	===
,	getObjectTop				:	(
		function	(obj) {
			var	chkflg=false;
			var	w=window,d=w.document;
			try {
				var style=obj.currentStyle||d.defaultView.getComputedStyle(obj,'');
				if (style.display=='none') {
					var	bkdisplay=obj.style.display;
					obj.style.display='block';
					chkflg=true;
				}
			} catch(e){}
			var offsetTop=0,curObj=obj;
			try {
				while (curObj) {
					offsetTop+=curObj.offsetTop;
					curObj=curObj.offsetParent;
				}
			} catch(e){}
			if (chkflg) obj.style.display=bkdisplay;
			return offsetTop;
		}
	)	//	end of getObjectTop()
//	===
,	showArchives					:	(
		function	() {
			for (;;) {
				var	document=window.document;
				var	xmlHttpObj = cocoPView.xmlHttpObj ;
				if ( xmlHttpObj.readyState != 4 || xmlHttpObj.status != 200) break ;
				var	rspText = xmlHttpObj.responseText.replace( /(\r?\n?)+/g, '' ) ;
				document.getElementById('center').innerHTML = rspText.replace( /.*<div id="center">(.*?)<div class="content-bottom">.*/i, '$1<div class="content-bottom"></div>' ) ;
				document.title = rspText.replace( /.*<title>(.*?)<\/title>.*/i, '$1' ) ;
				location.hash = 'path=' + cocoPView.pagePath ;	// メモ：適当にセットしておかないとブラウザ上のタイトルが変化しない(IE6)
				cocoPView.makePages( true ) ;
				if ( cocoPView.onloadFunction ) {
					setTimeout( cocoPView.onloadFunction, 0 ) ;
				}
				break ;
			}
		}
	)	//	end of showArchives()
//	===
,	showArchivesRequest				:	(
		function	( path ) {
			for (;;) {
				if ( !path ) break ;
				if ( !this.loadByAjax ) {
					location.href = path ;
					break ;
				}
				if ( typeof showMyArticleRequest == 'function' && typeof _myScreenFirstCall_ != 'undefined' && _myScreenFirstCall_ == false ) {	//	for cocoQLink.js
					showMyArticleRequest( path ) ;
					break ;
				}
				window.scrollTo( 0, 0 ) ;
//				document.getElementById('center').innerHTML = 'now loading ...' ;
				var	center = document.getElementById('center') ;
				var	h2s = center.getElementsByTagName('h2') ;
				if ( 0 < h2s.length ) {
					h2s[0].innerHTML += ' <span style="color:darkgreen; font-size:10px;">now loading ...</span>' ;
				}
				var	xmlHttpObj = this.getXmlHttpObj() ;
				if ( !xmlHttpObj ) break ;
				this.xmlHttpObj = xmlHttpObj ;
				this.pagePath = path ;
				xmlHttpObj.onreadystatechange = cocoPView.showArchives ;
				xmlHttpObj.open( 'GET', path ) ;
				xmlHttpObj.send( null ) ;
				break ;
			}
		}
	)	//	end of showArchivesRequest()
//	===
,	listArchives				:	(
		function	() {
			for (;;) {
				var	document=window.document;
				var	xmlHttpObj = cocoPView.xmlHttpObj ;
				if ( xmlHttpObj.readyState != 4 || xmlHttpObj.status != 200) break ;
				var	rspText = xmlHttpObj.responseText.replace( /(\r?\n?)+/g, '' ) ;
				var	dateList = cocoPView.replaceUrl2Path( rspText.replace( /.*<div class="archive-datebased"><h2>バックナンバー<\/h2><p>(.*?)<\/p><\/div>.*/i, '$1' ) ) ;
				var	catList = cocoPView.replaceUrl2Path( rspText.replace( /.*<div class="archive-category"><h2>カテゴリー<\/h2><p>(.*?)<\/p><\/div>.*/i, '$1' ) ) ;
				if ( cocoPView.usePullDownMenu ) {
					dateList = dateList.replace( /<a href="(.*?)">(.*?)<\/a>([^<]*)<br \/>/ig, '<option value="$1">$2$3</option>' ) ;
					dateList = [
						'<form name="archive-datebased">'
					,	'<select name="selectPage" onchange="javascript:cocoPView.showArchivesRequest(this.value);">'
					,	'<option value="" selected>' + cocoPView.monthlyPullDownSelect + '</option>'
					,	dateList
					,	'</select>'
					,	'</form>'
					].join('') ;
					catList = catList.replace( /<a href="(.*?)">(.*?)<\/a>([^<]*)<br \/>/ig, '<option value="$1">$2$3</option>' ) ;
					catList = [
						'<form name="archive-datebased">'
					,	'<select name="selectPage" onchange="javascript:cocoPView.showArchivesRequest(this.value);">'
					,	'<option value="" selected>' + cocoPView.categoryPullDownSelect + '</option>'
					,	catList
					,	'</select>'
					,	'</form>'
					].join('') ;
				}
				else {
					dateList = dateList.replace( /<a href="(.*?)">(.*?)<\/a>([^<]*)<br \/>/ig, '<li><a href="javascript:cocoPView.showArchivesRequest(\'$1\');">$2</a>$3</li>' ) ;
					dateList = [
						'<ul>'
					,	dateList
					,	'</ul>'
					].join('') ;
					catList = catList.replace( /<a href="(.*?)">(.*?)<\/a>([^<]*)<br \/>/ig, '<li><a href="javascript:cocoPView.showArchivesRequest(\'$1\');">$2</a>$3</li>' ) ;
					catList = [
						'<ul>'
					,	catList
					,	'</ul>'
					].join('') ;
				}
				var	tgtId = [ 'archive-datebased', 'archive-category', 'list_category' ] ;
				var	html = [ dateList, catList, catList ] ;
				
				var	chktag='div',chkclass='module-body';
				for ( var cj=0, lenj=tgtId.length; cj<lenj; cj++ ) {
					var	tgt = document.getElementById( tgtId[cj] ) ;
					if ( !tgt ) continue ;
					var	divs = tgt.getElementsByTagName(chktag) ;
					for ( var ci=0,leni=divs.length; ci<leni; ci++ ) {
						if ( divs[ci].className.match(chkclass) ) {
							divs[ci].innerHTML = html[cj] ;
							break ;
						}
					}
				}
				// === 2010.01.27: ココログの月別アーカイブモジュール仕様変更に伴う追加
				var	module_archives = cocoPView.getElementsByTagAndClassName('div','module-archives')
				for ( var cj=0, lenj=module_archives.length; cj<lenj; cj++ ) {
					var	tgt = module_archives[cj], h2=tgt.getElementsByTagName('h2')[0];
					if (!h2) continue;
					var	h2_link = h2.getElementsByTagName('a')[0];
					if (!h2_link || !h2_link.href.match(/archives\.html$/)) continue;
					var	tgt_div = cocoPView.getElementsByTagAndClassName('div','module-content',tgt)[0];
					if (!tgt_div) continue;
					tgt_div.innerHTML = html[0];
				}
				if ( typeof(cocoPView.onCompleteSidebar) == 'function' ) {
					cocoPView.onCompleteSidebar() ;
				}
				break ;
			}
		}
	)	//	end of listArchives()
//	===
,	getArchivesRequest			:	(
		function	() {
			for (;;) {
				var	document=window.document;
				if ( !cocoPView.modifySidebar ) break ;
				if (cocoPView.getArchivesOnload) {
					if (!document.getElementById('footer')) {
						setTimeout(cocoPView.getArchivesRequest,100);
						break ;
					}
				}
				var	h2s = document.getElementsByTagName('h2') ;
				if ( cocoPView.loadByAjax ) {
					// --- "カテゴリー"・"バックナンバー"の名前の付いたもので、標準以外のものを置換
					for ( var ci=0, leni=h2s.length; ci<leni; ci++ ) {
						var	h2 = h2s[ci] ;
						if ( h2.className != "module-header" ) continue ;
						var	title = h2.innerHTML.replace( /<\/?[^>]+>/ig, '' ) ;
						if ( title != 'カテゴリー' && title != 'バックナンバー' && !title.match(/categories/i) && !title.match(/archives/i ) ) continue ;
						var	div = h2s[ci].parentNode ;
						if ( !div || div.className != 'module-typelist module list' ) continue ;
						var	links = div.getElementsByTagName('a') ;
						for ( var cj=0, lenj=links.length; cj<lenj; cj++ ) {
							var	path = cocoPView.replaceUrl2Path( links[cj].href ) ;
							if ( path.match('javascript') ) continue ;
							if ( !path.match( /\/[\d]{4}\/[\d]{2}\/index.html/ ) && !path.match( /^\/\w+\/\w+\/index.html/ ) ) continue ;
							links[cj].href = "javascript:cocoPView.showArchivesRequest('" + path + "');" ;
						}
					}
				}
				var	arcfile = cocoPView.getArchivesFilename() ;
				if ( !arcfile ) break ;
				
				var	xmlHttpObj = cocoPView.getXmlHttpObj() ;
				if ( !xmlHttpObj ) break ;
				cocoPView.xmlHttpObj = xmlHttpObj ;
				xmlHttpObj.onreadystatechange = cocoPView.listArchives ;
				xmlHttpObj.open( 'GET', arcfile ) ;
				xmlHttpObj.send( null ) ;
				break ;
			}
		}
	)	//	end of getArchivesRequest()
//	===
/*
,	cssAddRule		:	(
		function	( selector, property ) {
			var	document=window.document;
			if ( document.styleSheets[0].addRule ) {			// for IE
				document.styleSheets[0].addRule( selector, "{" + property + "}" ) ;
			}
			else if ( document.styleSheets[0].insertRule ) {	// for Firefox
				document.styleSheets[0].insertRule( selector + "{" + property + "}", document.styleSheets[0].cssRules.length );
			}
		}
	)	//	end of cssAddRule()
*/
/*
,	cssAddRule		:	(function(){
		var	document=window.document;
		if ( document.styleSheets[0].addRule ) {			// for IE
			return function(selector,property){document.styleSheets[0].addRule(selector,"{"+property+"}")};
		}
		else if ( document.styleSheets[0].insertRule ) {	// for Firefox
			return function(selector,property){document.styleSheets[0].insertRule(selector+"{"+property+"}",document.styleSheets[0].cssRules.length)};
		}
	})()
*/
,	cssAddRule		:	(function(){
		var	doc=window.document;
		var	styleElm=doc.createElement('style');
		styleElm.type='text/css';
		try {
			doc.getElementsByTagName('head')[0].appendChild(styleElm);
		}
		catch(e){
			return function(){};
		}
		var	s=doc.styleSheets[doc.styleSheets.length-1];
		// Search insertRule() => addRule() (Webkit has addRule(), but it seemed not to work correctly)
		if (s.insertRule) {		// for Firefox,Google Chrome,Safari,Opera
			return function(selector,property){
				s.insertRule(selector+'{'+property+'}',s.cssRules.length);
			};
		}
		else if (s.addRule) {	// for IE
			return function(selector,property){
				s.addRule(selector,'{'+property+'}');
			};
		}
		else return function(){};
	})()
//	===
,	insertNavObj			:	(
		function	( rootObj, className, IdBase, insPntBefore, insPntAfter ) {
			var	document=window.document;
			var	navObj = document.getElementById(IdBase+'0') ;
			if ( !navObj ) {
				var	navObj = document.createElement('div') ;
				navObj.className = className ;
				navObj.id = IdBase + '0' ;
				if ( insPntBefore ) {
					insPntBefore.parentNode.insertBefore( navObj, insPntBefore ) ;
				}
				else {
					rootObj.insertBefore( navObj, rootObj.firstChild ) ;
				}
			}
			navObj = document.getElementById(IdBase+'1') ;
			if ( !navObj ) {
				navObj = document.createElement('div') ;
				navObj.className = className ;
				navObj.id = IdBase + '1' ;
				if ( insPntAfter ) {
					if ( insPntAfter.nextSibling ) {
						insPntAfter.parentNode.insertBefore( navObj, insPntAfter.nextSibling ) ;
					}
					else {
						insPntAfter.parentNode.appendChild( navObj ) ;
					}
				}
				else {
					rootObj.appendChild( navObj ) ;
				}
			}
			var	countObj = document.getElementById(IdBase+'-counter') ;
			if ( !countObj ) {
				var	links = rootObj.getElementsByTagName('a') ;
				for ( var ci=0, len=links.length; ci<len; ci++ ) {
					if ( links[ci].id ) {
//						links[ci].parentNode.innerHTML += '<span class="ccpv_counter" id="' + IdBase + '-counter"></span>' ;	//	NG
						var	countObj = document.createElement('span') ;
						countObj.className = 'ccpv_counter' ;
						countObj.id = IdBase + '-counter' ;
						links[ci].parentNode.appendChild( countObj ) ;
						break ;
					}
				}
			}
		}
	)	//	end of insertNavObj()
//	===	
,	getRootObj				:	(
		function	( chkId, rootClass ) {
			var	rootObj = null ;
			for (;;) {
				var	chkObj = document.getElementById(chkId) ;
				if ( !chkObj ) break ;
				
				var	pObj = chkObj.parentNode ;
				while ( pObj ) {
					if ( pObj.className == rootClass ) {
						rootObj = pObj ;
						break ;
					}
					pObj = pObj.parentNode ;
				}
				break ;
			}
			return( rootObj ) ;
		}
	)	//	end of getRootObj()
//	===
,	modifyTbList					:	(
		function	( rootObj, startno, count ) {
			var	document=window.document;
			var	jmpflg=false;
			if ( !rootObj ) {
				rootObj = this.getRootObj( 'trackback', 'entry-trackback' ) ;
				if ( !rootObj ) return ;
				jmpflg=true;
			}
			else {
				if ( location.href.match( /#[a-zA-Z_\-]+\d+$/ ) ) {
					//	ID指定時 → 全件表示
					startno = 0 ;
					count = this.tbAll ;
				}
			}
			if ( !count || count < 0 ) count = this.showMaxTb ;
			if ( !startno || this.tbAll <= startno ) startno = 0 ;
			if ( !count || this.tbAll < startno+count ) count = this.tbAll - startno ;
			
			var	countObj = document.getElementById('ccpv_navtb-counter') ;
			if ( countObj ) {
				countObj.innerHTML = '(全' + this.tbAll + '件' ;
				if ( count < this.tbAll ) {
					var	stid = eval(startno+1) ;
					if ( stid < 1 ) stid = 1 ;
					countObj.innerHTML += '中' + stid + '～' + eval(startno+count) ;
				}
				countObj.innerHTML += ')' ;
			}
			var	nav = '',navs=[];
			if ( count < this.tbAll ) {
				navs[navs.length]=[
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="全件" title="全件" onclick="javascript:cocoPView.modifyTbList(null, 0, ' + this.tbAll + ');" class="ccpv_nav_all" />'
				].join('') ;
				var	current = ~~((startno+this.showMaxTb-1)/this.showMaxTb) ;
				var	navtitle = ( this.tbReverse ) ? '新しい' : '前の' ;
				navs[navs.length]=[
					'<input type="button" value="<<" title="' + navtitle + this.showMaxTb + '件" onclick="javascript:cocoPView.modifyTbList(null, ' + eval(startno-this.showMaxTb) + ');" ' + ( ( 0 < startno ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				].join('') ;
				var	pageMax = ~~((this.tbAll+this.showMaxTb-1)/this.showMaxTb) - 1 ;
				for ( var ci=0; ci <= pageMax; ci++ ) {
					if ( this.tbReverse || this.pagingTypeTb == 0 ) {
						var	sno = 1 + eval( this.showMaxTb ) * ci ;
						var	eno = eval( this.showMaxTb ) * (ci+1) ;
						if ( this.tbAll < eno ) eno = this.tbAll ;
						navs[navs.length]='<input type="button" onclick="javascript:cocoPView.modifyTbList(null, ' + this.showMaxTb * ci + ');" ' ;
					}
					else {
						var	eno = this.tbAll - eval( this.showMaxTb ) * (pageMax-ci) ;
						var	sno = eno - eval(this.showMaxTb) + 1 ;
						navs[navs.length]='<input type="button" onclick="javascript:cocoPView.modifyTbList(null, ' + eval(sno-1) + ',' + eval(eno-sno+1) + ');" ' ;
						if ( sno < 1 ) sno = 1 ;
					}
					navs[navs.length]=[
						'value="' + eval(ci+1) + '" '
					,	( current == ci ) ? 'class="ccpv_nav_disable" disabled ' : 'class="ccpv_nav" '
					,	'title="' + sno + '～' + eno + '" '
					,	'/>'
					].join('') ;
				}
				var	navtitle = ( this.tbReverse ) ? '以前の' : '次の' ;
				navs[navs.length]=[
					'<input type="button" value=">>" title="' + navtitle + this.showMaxTb + '件" onclick="javascript:cocoPView.modifyTbList(null, ' + eval(startno+this.showMaxTb) + ');" ' + ( ( startno + count < this.tbAll ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				,	'</form>'
				].join('') ;
				nav=navs.join('');
			}
			else if ( this.showMaxTb < this.tbAll ) {
				var	st = 0 ;
				var	cnt = this.showMaxTb ;
				if ( !this.tbReverse ) {
					if ( this.showNewTbFirst ) {
						if ( this.pagingTypeTb == 0 ) {
							st = this.showMaxTb * ( ~~((this.tbAll+this.showMaxTb-1)/this.showMaxTb) - 1 ) ;
						}
						else {
							st = this.tbAll - this.showMaxTb ;
							if ( st < 0 ) st = 0 ;
						}
					}
					else {
						if ( this.pagingTypeTb != 0 ) {
							cnt = this.tbAll % this.showMaxTb ;
						}
					}
				}
				nav = [
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="' + this.showMaxTb + '件ずつ表示" title="' +  this.showMaxTb + '件ずつ表示" onclick="javascript:cocoPView.modifyTbList(null,' + st + ',' + cnt + ');" class="ccpv_nav_page" />'
				,	'</form>'
				].join('') ;
			}
			var		navno = [ '0', '1' ] ;
			for ( var ci=0, len=navno.length; ci<len; ci++ ) {
				var	navObj = document.getElementById('ccpv_navtb'+navno[ci]) ;
				if ( !navObj ) continue ;
				navObj.innerHTML = nav ;
				navObj.style.display = ( nav ) ? 'block' : 'none' ;
			}
			var	divs = rootObj.getElementsByTagName('div') ;
			var	conts = [] ;
			for ( var ci=0, len=divs.length; ci<len; ci++ ) {
				if ( divs[ci].className != 'trackback-content' ) continue ;
				conts[conts.length] = divs[ci] ;
			}
			var	last = startno + count - 1 ;
			for ( var ci=0, len=conts.length; ci<len; ci++ ) {
				conts[ci].style.display = ( startno <= ci && ci <= last ) ? 'block' : 'none' ;
			}
			if (jmpflg) {
				switch ( this.scrollOnPaging ) {
					case	'toPageTop'		:	//	2008.11.01: コメント/トラックバックの場合は toPageTop は toIndexTop と同じ動作に変更
//						window.scrollTo( 0, 0 ) ;
//						break ;
					case	'toIndexTop'	:
						/*
						//	var	oldPosition = rootObj.style.position ;
						//	rootObj.style.position = "absolute" ;
						//	window.scrollTo( 0, rootObj.offsetTop ) ;
						//	rootObj.style.position = oldPosition ;
						*/
						window.scrollTo( 0, this.getObjectTop(rootObj) ) ;	//	2008.11.01
						break ;
					case	'none'			:
					default					:
						break ;
				}
			}
		}
	)	//	end of modifyTbList()
//	===
,	modifyCommentList					:	(
		function	( rootObj, startno, count ) {
			var	document=window.document;
			var	jmpflg=false;
			var	cmtAll=this.cmtAll;
			var	showMaxCmt=this.showMaxCmt;
			if ( !rootObj ) {
				rootObj = this.getRootObj( 'comments', 'entry-comment' ) ;
				if ( !rootObj ) return ;
				jmpflg=true;
			}
			else {
				if ( location.href.match( /#[a-zA-Z_\-]+\d+$/ ) ) {
					//	ID指定時 → 全件表示
					startno = 0 ;
					count = cmtAll ;
				}
			}
			if ( !count || count < 0 ) count = showMaxCmt ;
			if ( !startno || cmtAll <= startno ) startno = 0 ;
			if ( !count || cmtAll < startno+count ) count = cmtAll - startno ;
			
			var	countObj = document.getElementById('ccpv_navcmt-counter') ;
			if ( countObj ) {
				countObj.innerHTML = '(全' + cmtAll + '件' ;
				if ( count < cmtAll ) {
					var	stid = eval(startno+1) ;
					if ( stid < 1 ) stid = 1 ;
					countObj.innerHTML += '中' + stid + '～' + eval(startno+count) ;
				}
				countObj.innerHTML += ')' ;
			}
			var	nav = '',navs=[];
			if ( count < cmtAll ) {
				navs[navs.length]=[
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="全件" title="全件" onclick="javascript:cocoPView.modifyCommentList(null, 0, ' + cmtAll + ');" class="ccpv_nav_all" />'
				].join('') ;
				var	current = ~~((startno+showMaxCmt-1)/showMaxCmt) ;
				var	navtitle = ( this.commentReverse ) ? '新しい' : '前の' ;
				navs[navs.length]=[
					'<input type="button" value="<<" title="' + navtitle + showMaxCmt + '件" onclick="javascript:cocoPView.modifyCommentList(null, ' + eval(startno-showMaxCmt) + ');" ' + ( ( 0 < startno ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				].join('') ;
				var	pageMax = ~~((cmtAll+showMaxCmt-1)/showMaxCmt) - 1 ;
				for ( var ci=0; ci <= pageMax; ci++ ) {
					if ( this.commentReverse || this.pagingTypeCmt == 0 ) {
						var	sno = 1 + eval( showMaxCmt ) * ci ;
						var	eno = eval( showMaxCmt ) * (ci+1) ;
						if ( cmtAll < eno ) eno = cmtAll ;
						navs[navs.length]='<input type="button" onclick="javascript:cocoPView.modifyCommentList(null, ' + showMaxCmt * ci + ');" ' ;
					}
					else {
						var	eno = cmtAll - eval( showMaxCmt ) * (pageMax-ci) ;
						var	sno = eno - eval(showMaxCmt) + 1 ;
						navs[navs.length]='<input type="button" onclick="javascript:cocoPView.modifyCommentList(null, ' + eval(sno-1) + ',' + eval(eno-sno+1) + ');" ' ;
						if ( sno < 1 ) sno = 1 ;
					}
					navs[navs.length]=[
						'value="' + eval(ci+1) + '" '
					,	( current == ci ) ? 'class="ccpv_nav_disable" disabled ' : 'class="ccpv_nav" '
					,	'title="' + sno + '～' + eno + '" '
					,	'/>'
					].join('') ;
				}
				var	navtitle = ( this.commentReverse ) ? '以前の' : '次の' ;
				navs[navs.length]=[
					'<input type="button" value=">>" title="' + navtitle + showMaxCmt + '件" onclick="javascript:cocoPView.modifyCommentList(null, ' + eval(startno+showMaxCmt) + ');" ' + ( ( startno + count < cmtAll ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				,	'</form>'
				].join('') ;
				nav=navs.join('');
			}
			else if ( showMaxCmt < cmtAll ) {
				var	st = 0 ;
				var	cnt = showMaxCmt ;
				if ( !this.commentReverse ) {
					if ( this.showNewCmtFirst ) {
						if ( this.pagingTypeCmt == 0 ) {
							st = showMaxCmt * ( ~~((cmtAll+showMaxCmt-1)/showMaxCmt) - 1 ) ;
						}
						else {
							st = cmtAll - showMaxCmt ;
							if ( st < 0 ) st = 0 ;
						}
					}
					else {
						if ( this.pagingTypeCmt != 0 ) {
							cnt = cmtAll % showMaxCmt ;
						}
					}
				}
				nav = [
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="' + showMaxCmt + '件ずつ表示" title="' +  showMaxCmt + '件ずつ表示" onclick="javascript:cocoPView.modifyCommentList(null,' + st + ',' + cnt + ');" class="ccpv_nav_page" />'
				,	'</form>'
				].join('') ;
			}
			var		navno = [ '0', '1' ] ;
			for ( var ci=0, len=navno.length; ci<len; ci++ ) {
				var	navObj = document.getElementById('ccpv_navcmt'+navno[ci]) ;
				if ( !navObj ) continue ;
				navObj.innerHTML = nav ;
				navObj.style.display = ( nav ) ? 'block' : 'none' ;
			}
			var	divs = rootObj.getElementsByTagName('div') ;
			var	conts = [] ;
			for ( var ci=0, len=divs.length; ci<len ; ci++ ) {
				if ( divs[ci].className != 'comment-content' ) continue ;
				conts[conts.length] = divs[ci] ;
			}
			var	last = startno + count - 1 ;
			for ( var ci=0, len=conts.length; ci<len; ci++ ) {
				conts[ci].style.display = ( startno <= ci && ci <= last ) ? 'block' : 'none' ;
			}
			if (jmpflg) {
				switch ( this.scrollOnPaging ) {
					case	'toPageTop'		:	//	2008.11.01: コメント/トラックバックの場合は toPageTop は toIndexTop と同じ動作に変更
//						window.scrollTo( 0, 0 ) ;
//						break ;
					case	'toIndexTop'	:
						/*
						//	var	oldPosition = rootObj.style.position ;
						//	rootObj.style.position = "absolute" ;
						//	window.scrollTo( 0, rootObj.offsetTop ) ;
						//	rootObj.style.position = oldPosition ;
						*/
						window.scrollTo( 0, this.getObjectTop(rootObj) ) ;	//	2008.11.01
						break ;
					case	'none'			:
					default					:
						break ;
				}
			}
		}
	)	//	end of modifyCommentList()
//	===
,	initTbList				:	(
		function	( cntObj ) {
			var	chkflag = false ;
			for (;;) {
				var	rootObj = this.getRootObj( 'trackback', 'entry-trackback' ) ;
				if ( !rootObj ) break ;
				chkflag = true ;
				
				if ( !this.tbPaging ) break ;
				
				var	tbAll = 0 ;
				var	divs = rootObj.getElementsByTagName('div') ;
				var	firstTb = null ;
				var	lastTb = null ;
				for ( var ci=0, len=divs.length; ci<len; ci++ ) {
					if ( divs[ci].className == 'trackback-content' ) {
						tbAll ++ ;
						if ( tbAll == 1 ) firstTb = divs[ci] ;
						lastTb = divs[ci] ;
					}
				}
				this.tbAll = tbAll ;
				
				this.insertNavObj( rootObj, 'ccpv_navigator', 'ccpv_navtb', firstTb, lastTb ) ;
				
				if ( this.showAllFirstTb || !this.showMaxTb ) {
					this.modifyTbList( rootObj, 0, this.tbAll ) ;
				}
				else {
					if ( this.tbReverse ) {
						this.modifyTbList( rootObj, 0, this.showMaxTb ) ;
					}
					else {
						if ( this.showNewTbFirst ) {
							if ( this.pagingTypeTb == 0 ) {
								var	startno = this.showMaxTb * ( ~~( (tbAll+this.showMaxTb-1)/this.showMaxTb ) - 1 ) ;
							}
							else {
								var	startno = tbAll - this.showMaxTb ;
//								if ( startno < 0 ) startno = 0 ;
							}
							this.modifyTbList( rootObj, startno, this.showMaxTb ) ;
						}
						else {
							if ( this.pagingTypeTb == 0 ) {
								this.modifyTbList( rootObj, 0, this.showMaxTb ) ;
							}
							else {
								this.modifyTbList( rootObj, 0, tbAll%this.showMaxTb ) ;
							}
						}
					}
				}
				break ;
			}
			return chkflag ;
		}
	)	//	end of initTbList()
//	===
,	initCommentList				:	(
		function	( cntObj ) {
			var	document=window.document;
			var	chkflag = false ;
			for (;;) {
				var	rootObj = this.getRootObj( 'comments', 'entry-comment' ) ;
				if ( !rootObj ) break ;
				chkflag = true ;
				
				if ( !this.commentPaging ) break ;
				
				var	cmtAll = 0 ;
				var	divs = rootObj.getElementsByTagName('div') ;
				var	firstCmt = null ;
				var	lastCmt = null ;
				for ( var ci=0, len=divs.length; ci<len; ci++ ) {
					if ( divs[ci].className == 'comment-content' ) {
						cmtAll ++ ;
						if ( cmtAll == 1 ) firstCmt = divs[ci] ;
						lastCmt = divs[ci] ;
					}
				}
				this.cmtAll = cmtAll ;
				
				this.insertNavObj( rootObj, 'ccpv_navigator', 'ccpv_navcmt', firstCmt, lastCmt ) ;
				
				if ( this.showAllFirstCmt || !this.showMaxCmt ) {
					this.modifyCommentList( rootObj, 0, this.cmtAll ) ;
				}
				else {
					if ( this.commentReverse ) {
						this.modifyCommentList( rootObj, 0, this.showMaxCmt ) ;
					}
					else {
						if ( this.showNewCmtFirst ) {
							if ( this.pagingTypeCmt == 0 ) {
								var	startno = this.showMaxCmt * ( ~~( (cmtAll+this.showMaxCmt-1)/this.showMaxCmt ) - 1 ) ;
							}
							else {
								var	startno = cmtAll - this.showMaxCmt ;
//								if ( startno < 0 ) startno = 0 ;
							}
							this.modifyCommentList( rootObj, startno, this.showMaxCmt ) ;
						}
						else {
							if ( this.pagingTypeCmt == 0 ) {
								this.modifyCommentList( rootObj, 0, this.showMaxCmt ) ;
							}
							else {
								this.modifyCommentList( rootObj, 0, cmtAll%this.showMaxCmt ) ;
							}
						}
					}
				}
				break ;
			}
			return chkflag ;
		}
	)	//	end of initCommentList()
//	===
,	modifyContent					:	(
		function	( cntObj, startno, count ) {
			var	document=window.document;
			if ( !this.archivePaging ) {
				return ;
			}
			entryAll=this.entryAll;
			entryAll_total = (this.entryAll_total)?this.entryAll_total:0;
			entryOld = entryAll_total - entryAll;
			showMax=this.showMax;
			
			var	jmpflg=false;
			if ( !cntObj ) {
				jmpflg=true;
				if ( !this.content ) {
					alert( 'Error in modifyContent()' ) ;
					return ;
				}
				cntObj = this.content ;
			}
			else {
				if ( location.href.match( /#[a-zA-Z_\-]+\d+$/ ) ) {
					//	ID指定時 → 全件表示
					startno = 0 ;
					count = entryAll ;
				}
			}
			if ( !startno || entryAll <= startno ) startno = 0 ;
			if ( !count || count < 0 ) count = showMax ;
			if ( !count || entryAll < startno+count ) count = entryAll - startno ;

			var	nav = '',navs=[];
			var	indexOnly=false;	//	2009.05.10: add indexOnly
			
			if ( startno != 0 || count < entryAll ) {
				navs[navs.length] = [
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="全件" title="全件" onclick="javascript:cocoPView.modifyContent(null, 0, ' + entryAll + ');" class="ccpv_nav_all" />'
				].join('') ;
				var	current = ~~((startno+showMax-1)/showMax) ;
				navs[navs.length] = [
					'<input type="button" value="<<" title="新しい' + showMax + '件" onclick="javascript:cocoPView.modifyContent(null, ' + eval(startno-showMax) + ');" ' + ( ( 0 < startno ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				].join('') ;
				for ( var ci=0,len=~~((entryAll+showMax-1)/showMax); ci < len; ci++ ) {
					var	sno = 1 + eval( showMax ) * ci ;
					var	eno = eval( showMax ) * (ci+1) ;
					if ( entryAll < eno ) eno = entryAll ;
					navs[navs.length] = [
						'<input type="button" onclick="javascript:cocoPView.modifyContent(null, ' + showMax * ci + ');" '
					,	'value="' + eval(ci+1) + '" '
					,	( current == ci ) ? 'class="ccpv_nav_disable" disabled ' : 'class="ccpv_nav" '
					,	'title="' + sno + '～' + eno + '" '
					,	'/>'
					].join('') ;
				}
				navs[navs.length]= [
					'<input type="button" value=">>" title="以前の' + showMax + '件" onclick="javascript:cocoPView.modifyContent(null, ' + eval(startno+showMax) + ');" ' + ( ( startno + count < entryAll ) ? 'class="ccpv_nav"' : 'disabled class="ccpv_nav_disable"' ) + ' />'
				,	'</form>'
				].join('') ;
				nav=navs.join('');
			}
			else if ( showMax < entryAll ) {
				nav = [
					'<form name="ccpv_nav_form" class="ccpv_nav_form">'
				,	'<input type="button" value="' + showMax + '件ずつ表示" title="' +  showMax + '件ずつ表示" onclick="javascript:cocoPView.modifyContent(null, 0, ' + showMax + ');" class="ccpv_nav_page" />'
				,	'</form>'
				].join('') ;
				if ( this.indexOnly ) indexOnly=true;	//	2009.05.10: add indexOnly
			}
			
			if ( this.useIndex ) {
				var	alistWin = document.getElementById(this.indexBaseId) ;
				if ( alistWin ) {
					var	lists = alistWin.getElementsByTagName('li') ;
					for ( var ci=0, len=lists.length; ci<len; ci++ ) {
						lists[ci].style.display = ( startno <= ci && ci < startno + count ) ? 'block' : 'none' ;
						
						// 2009.05.10: 目次のみの場合には両方共に個別ページへのリンクにする
						if ( this.indexOnly ) {
							var	links=lists[ci].getElementsByTagName('a');
							for (var cj=0,lenj=links.length; cj<lenj; cj++) {
								var	link=links[cj];
								if ( indexOnly ) {
									if (link.className=='ccpv_mark_default'||link.className=='ccpv_title_default') link.style.display='none';
									if (link.className=='ccpv_mark_plink'||link.className=='ccpv_title_plink') link.style.display='inline';
								}
								else {
									if (link.className=='ccpv_mark_default'||link.className=='ccpv_title_default') link.style.display='inline';
									if (link.className=='ccpv_mark_plink'||link.className=='ccpv_title_plink') link.style.display='none';
								}
							}
						}
					}
					var	spans = alistWin.getElementsByTagName('span') ;
					for ( var ci=0, len=spans.length; ci<len; ci++ ) {
						if ( spans[ci].className == 'ccpv_counter' ) {
							/*
							//spans[ci].innerHTML = '(全' + entryAll + '件' ;
							//if ( startno != 0 || count < entryAll ) {
							//	spans[ci].innerHTML += '中' + eval(startno+1) + '～' + eval(startno+count) ;
							//}
							//spans[ci].innerHTML += ')' ;
							*/
							var	cnt_strs=['('];
							cnt_strs[cnt_strs.length] = (0<entryOld) ? '最新' : '全';
							cnt_strs[cnt_strs.length] = entryAll + '件';
							if ( startno != 0 || count < entryAll ) {
								cnt_strs[cnt_strs.length] = '中' + eval(startno+1) + '～' + eval(startno+count) ;
							}
							if (0<entryOld) {
								cnt_strs[cnt_strs.length] = '・<a href="#ccpv_old_list">それ以前</a>'+(entryOld)+'件'
							}
							cnt_strs[cnt_strs.length] =  ')' ;
							spans[ci].innerHTML = cnt_strs.join('');
							break ;
						}
					}
				}
			}
			
			var		navno = [ '0', '1', '2' ] ;
			for ( var ci=0, len=navno.length; ci<len; ci++ ) {
				var	navObj = document.getElementById('ccpv_navigator'+navno[ci]) ;
				if ( !navObj ) continue ;
				navObj.innerHTML = nav ;
				navObj.style.display = ( nav ) ? 'block' : 'none' ;
			}
			var		h2cnt = 0 ;
			var		entCnt = 0 ;
			var		tmpCnt = 0 ;
			var		tmpHead = null ;
			var		tmpNav = null ;
			var		childObj = cntObj.firstChild ;
			var		flg_stop = false;
			
			while ( childObj ) {
				if ( childObj.tagName ) {
					switch ( childObj.tagName.toUpperCase() ) {
						case	'H2'	:
							tmpHead = childObj ;
							tmpCnt = eval( tmpHead.ccpv_entall ) ;
							h2cnt ++ ;
							break ;
						case	'DIV'	:
							if ( childObj.className.match(/archive\-category/) ) {
								flg_stop = true;
								break;
							}
							switch( childObj.className ) {
								case	'date-footer'	:
									if ( tmpHead ) {
										if ( 0 < tmpCnt && !indexOnly ) {	//	2009.05.10: add indexOnly
											if ( tmpHead ) tmpHead.style.display = 'block' ;
											childObj.style.display = 'block' ;
											if ( tmpNav ) tmpNav.style.display = 'block' ;
										}
										else {
											if ( tmpHead ) tmpHead.style.display = 'none' ;
											childObj.style.display = 'none' ;
											if ( tmpNav ) tmpNav.style.display = 'none' ;
										}
									}
									tmpCnt = 0 ;
									tmpHead = null ;
									tmpNav = null ;
									break ;
								case	'entry-nav'		:
									if ( tmpHead ) {
										tmpNav = childObj ;
									}
									break ;
								default					:
									if ( childObj.className == this.indexBaseId ) break ;
									if ( childObj.className == "ccpv_navigator" ) break ;
									if ( childObj.className == "pastlink" ) {
										childObj.style.display = ( startno + count < this.entryAll || indexOnly ) ? 'none' : 'block' ;	//	2009.05.10: add indexOnly
										break ;
									}
									if ( typeof childObj.ccpv_entid == 'undefined' ) break ;
									var	entid = eval( childObj.ccpv_entid ) ;
									if ( startno <= entid && entid < startno + count && !indexOnly ) {	//	2009.05.10: add indexOnly
										childObj.style.display = 'block' ;
									}
									else {
										childObj.style.display = 'none' ;
										if ( childObj.className == 'entry-bottom' ) {
											tmpCnt -- ;
										}
									}
									break ;
							}
							break ;
						default			:
							break ;
					}
				}
				if (flg_stop) break;
				childObj = childObj.nextSibling ;
			}
			if (jmpflg) {
				switch ( this.scrollOnPaging ) {
					case	'toPageTop'		:
						window.scrollTo( 0, 0 ) ;
						break ;
					case	'toIndexTop'	:
						if ( !this.useIndex ) {
							window.scrollTo( 0, 0 ) ;
							break ;
						}
						var	baseid = ( this.useArticleList && typeof alistBaseId != "undefined" ) ? alistBaseId : this.indexBaseId ;
						var	baseObj = document.getElementById( baseid ) ;
						if ( !baseObj ) break ;
						/*
						//	var	oldPosition = baseObj.style.position ;
						//	baseObj.style.position = "absolute" ;
						//	window.scrollTo( 0, baseObj.offsetTop ) ;
						//	baseObj.style.position = oldPosition ;
						*/
						window.scrollTo( 0, this.getObjectTop(baseObj) ) ;	//	2008.11.01
						break ;
					case	'none'			:
					default					:
						break ;
				}
			}
		}
	)	//	end of modifyContent()
//	===
,	initContent					:	(
		function	( cntObj, forcePaging ) {
			if ( !cntObj ) {
				alert( 'Error in initContent()' ) ;
				return ;
			}
			var	w=window,d=w.document,document=d;
			var	indvCont = false ;
			for (;;) {
				if ( this.initTbList(cntObj) ) {
					indvCont = true ;
				}
				if ( this.initCommentList(cntObj) ) {
					indvCont = true ;
				}
				break ;
			}
			if ( indvCont ) {
				return ;
			}
			if ( !forcePaging ) {
				var	href = location.href ;
				var	path = '' ;
				
				var	ccqname = href.replace( /(.*?)#(ccqlink|ccqlist|ccqfile|ccqsrch)=/, "" ) ;
				if ( ccqname != href ) {
					path = ccqname.split('#')[0] ;
				}
				else {
					path = this.replaceUrl2Path( href ).split('#')[0] ;
				}
				if ( !path.match( /\/[\d]{4}\/[\d]{2}\/index.html/ ) && !path.match( /^\/\w+\/\w+\/index.html/ ) ) {
					if (!cocoPView.backnumbersDirPaging||!path.match(/\/backnumbers\//)) {
						if ( !this.topPagePaging ) return ;
						if ( !path.match( /^\/$/ ) && !path.match( /^\/index.html$/ ) && !path.match( /^\/\w+\/$/ ) && !path.match( /^\/\w+\/index\.html$/ ) ) return ;
					}
				}
				// for index page of cocoMakeBN.js (/backnumbers/index.html)
				if (path.match(/\/backnumbers\/$/)||path.match(/\/backnumbers\/index\.html$/)) return;
			}
			cocoPView.timestamps[cocoPView.timestamps.length]=(new Date()).getTime();
			
			for (;;) {
				this.content = cntObj ;
				this.entryAll_total = 0;
				
				var	initFlag = ( document.getElementById('ccpv_navigator0') ) ? true : false ;
				var	useArticleList = ( this.useArticleList && typeof alistBaseId != "undefined" ) ? true : false ;
				
				var	h2cnt = 0 ;
				var	entCnt = 0 ;
				var	tmpCnt = 0 ;
				var	tmpHead = null ;
				var	childObj = cntObj.firstChild ;
				var	aids = [] ;
				var	plinks = [] ;
				var	titles = [] ;
				var	adates = [] ;
				var	h2date = '' ;
				var	h2contheder=null;
				var	flg_stop = false;
				var	oldListStart = null;
				
				while ( childObj ) {
					if ( childObj.tagName ) {
						switch ( childObj.tagName.toUpperCase() ) {
							case	'H2'	:
								tmpHead = childObj ;
								tmpCnt = 0 ;
								tmpHead.ccpv_entall = tmpCnt ;
								if (tmpHead.className.match(/content\-header/i)) {
									tmpHead.style.display='none';
									h2contheder=tmpHead;
									/* 2010.01.06: 全数が入っていない場合があるので消去
									//if (h2contheder.innerHTML.match(/[^\d](\d+)[^\d]*$/)) {
									//	this.entryAll_total = parseInt(RegExp.$1);
									//}
									*/
								}
								if ( h2cnt == 0 && !this.useIndex && !initFlag ) {
									var	navObj = document.createElement('div') ;
									navObj.className = 'ccpv_navigator' ;
									navObj.id = 'ccpv_navigator2' ;
									cntObj.insertBefore( navObj, childObj ) ;
								}
								h2date = tmpHead.innerHTML.replace( /<\/?[^>]+>/ig, '' ) ;
								h2date = h2date.replace( /(\d+)[^\d]*(\d+)[^\d]*(\d+).*/g, '$1/$2/$3' ) ;
								h2date = h2date.replace( /\/(\d{1})\//, '/0$1/' ) ;
								h2date = h2date.replace( /\/(\d{1})$/, '/0$1' ) ;
								h2cnt ++ ;
								break ;
							case	'DIV'	:
								if ( childObj.className.match(/archive\-category/) ) {
									oldListStart = childObj;
									flg_stop = true;
									break;
								}
								if ( childObj.className == 'date-footer' ) {
									if ( tmpHead ) {
										tmpHead.ccpv_entall = tmpCnt ;
									}
									tmpCnt = 0 ;
									tmpHead = null ;
									h2date = '' ;
									break ;
								}
								childObj.ccpv_entid = entCnt ;
								
								var	entryObj = null ;
								switch( childObj.className ) {
									case	'entry'				:
										entryObj = childObj ;
										break ;
									case	'entry-bottom'		:
										entCnt++ ;
										tmpCnt++ ;
										break ;
									default			:
										if ( childObj.className == this.indexBaseId ) break ;
										var	divs = childObj.getElementsByTagName('div') ;
										for ( var ci=0, len=divs.length; ci<len; ci++ ) {
											if ( divs[ci].className == 'entry' ) {
												entryObj = divs[ci] ;
												break ;
											}
										}
										break ;
								}
								while ( entryObj ) {
									var	links = entryObj.getElementsByTagName('a') ;
									var	plink = '' ;
									for ( var ci=0, len=links.length; ci<len; ci++ ) {
										if ( links[ci].className == 'permalink' ) {
											plink = links[ci].href ;
											plinks[plinks.length] = plink ;
										}
										if ( links[ci].id && links[ci].id.match( /^[a-z_]+-?[\d]+$/i ) ) {
											aids[aids.length] = links[ci].id ;
										}
									}
									while (plinks.length<aids.length) aids.pop();
									
									var	h3s = entryObj.getElementsByTagName('h3') ;
									var	title = '' ;
									for ( var ci=0, len=h3s.length; ci<len; ci++ ) {
										title = h3s[ci].innerHTML.replace( /<\/?[^>]+>/ig, '' ) ;
										titles[titles.length] = title ;
										break ;
									}
									var	ps = entryObj.getElementsByTagName('p') ;
									var	adate = '' ;
									for ( var ci=0, len=ps.length; ci<len; ci++ ) {
										if ( ps[ci].className == 'posted' ) {
											adate = ps[ci].innerHTML.replace( /(\r?\n?)+/g, '' ) ;
											adate = adate.replace( /<\/?[^>]+>/ig, '' ) ;
//											var tmpdate = adate.replace( /.*(\d{4}).(\d{2}).(\d{2}).*/, '$1/$2/$3' ) ;
											var tmpdate = adate.replace( /.*(\d{4}).\s?(\d\d?).\s?(\d\d?).*/, '$1/$2/$3' ) ;
											tmpdate = tmpdate.replace( /\/(\d)\//, '/0$1/' ) ;
											tmpdate = tmpdate.replace( /\/(\d)$/, '/0$1' ) ;
											if ( tmpdate != adate ) {
												adate = tmpdate ;
											}
											else {
												adate = ( tmpHead ) ? h2date : '' ;
											}
											break ;
										}
									}
									adates[adates.length] = adate ;
									
									if ( !this.hideEntryMore || initFlag ) break ;
									var	divs = entryObj.getElementsByTagName('div') ;
									var	moreObj = null ;
									for ( var ci=0,len=divs.length; ci<len; ci++ ) {
										if ( divs[ci].className == 'entry-more' ) {
											moreObj = divs[ci] ;
											for ( ci=ci+1; ci<len; ci++ ) {
												if ( divs[ci].className == 'entry-more-text' ) {
													divs[ci].style.display = 'none' ;
													break ;
												}
											}
											break ;
										}
									}
									if ( !moreObj ) break ;
									if ( moreObj.innerHTML.match('続きを読む') ) {
										if ( !this.replaceEntryMore ) break ;
										var	atags = moreObj.getElementsByTagName('a') ;
										for ( var ci=0, len=atags.length; ci<len; ci++ ) {
											atags[ci].innerHTML = this.entryMoreText ;
											atags[ci].title = title.replace( /<\/?[^>]+>/ig, '' ) ;
											break ;
										}
										break ;
									}
									var	extObj = document.createElement('p') ;
									extObj.className = "extended" ;
									extObj.innerHTML = [
										'<a href="' + plink + '#more" title="' + title.replace( /<\/?[^>]+>/ig, '' ) + '">'
									,	this.entryMoreText
									,	'</a>'
									].join('') ;
									moreObj.appendChild(extObj) ;
									break ;
								}
								break ;
							default			:
								break ;
						}
					}
					if (flg_stop) break;
					childObj = childObj.nextSibling ;
				}
				this.entryAll = entCnt ;
				if ( !initFlag ) {
					var	navObj = document.createElement('div') ;
					navObj.className = 'ccpv_navigator' ;
					navObj.id = 'ccpv_navigator0' ;
					if (oldListStart) {
						var	uls = oldListStart.getElementsByTagName('UL');
						for (var ci=0,len=uls.length; ci<len; ci++) {
							var	ul = uls[ci];
							if (ul.className.match(/archive\-list/)) {
								this.entryAll_total = this.entryAll + ul.getElementsByTagName('LI').length; // 2010.01.06: 残りをカウントして足す
								break;
							}
						}
						cntObj.insertBefore( navObj, oldListStart );
						var	anchor = document.createElement('a') ;
						anchor.id = 'ccpv_old_list';
						oldListStart.insertBefore( anchor, oldListStart.firstChild );
					}
					else {
						cntObj.appendChild( navObj ) ;
					}
				}

				if ( !this.useIndex ) break ;
				cocoPView.timestamps[cocoPView.timestamps.length]=(new Date()).getTime();
				
				if ( useArticleList ) {
					showArticleList( false, false, false ) ;
					var	alistWin = document.getElementById(alistBaseId) ;
					if ( alistWin ) {
						var	lists = alistWin.getElementsByTagName('li') ;
						for ( var ci=0, len=lists.length; ci<len; ci++ ) {
//							lists[ci].innerHTML = lists[ci].innerHTML.replace( '■', '<div class="ccpv_number">' + eval(ci+1) + '.' + '</div>' ) ;
							var	tds = lists[ci].getElementsByTagName('td') ;
							for ( var cj=0; cj < tds.length; cj++ ) {
								tds[cj].innerHTML = tds[cj].innerHTML.replace( '■', '<div class="ccpv_number">' + eval(ci+1) + '.' + '</div>' ) ;
								break ;
							}
						}
						var	h3s = alistWin.getElementsByTagName('h3') ;
						for ( var ci=0, len=h3s.length; ci<len; ci++ ) {
							var	spans = h3s[ci].getElementsByTagName('span') ;
							for ( var cj=0; cj < spans.length; cj++ ) {
								h3s[ci].removeChild( spans[cj] ) ;
							}
							var	span = document.createElement( 'span' ) ;
							span.className = 'ccpv_counter' ;
							h3s[ci].appendChild( span ) ;
							var	nextObj = h3s[ci].nextSibling ;
							if ( nextObj ) {
								var	navObj = document.createElement('div') ;
								navObj.className = 'ccpv_navigator' ;
								navObj.id = 'ccpv_navigator1' ;
								nextObj.parentNode.insertBefore( navObj, nextObj ) ;
							}
							break ;
						}
					}
				}
				else {
					var	baseid = this.indexBaseId ;
					var	alistWin = document.getElementById(baseid) ;
					if ( alistWin ) {
						alistWin.parentNode.removeChild(alistWin);
					}
					alistWin = document.createElement('div') ;
					alistWin.id = baseid ;
					alistWin.className = baseid ;

					var	h2title = document.title ;
					var	h3title = ( this.addSubTitleToH3 == true ) ? this.topPageSubTitle : '' ;
					if ( document.title.match( /(.+):\s*(.+)$/ ) ) {
						if ( this.addSubTitleToH2 == false ) {
							h2title = RegExp.$1 ;
						}
						if ( this.addSubTitleToH3 == true ) {
							h3title = RegExp.$2 ;
						}
					}
					else {
						if ( this.addSubTitleToH2 == true && this.topPageSubTitle ) {
							h2title += ': ' + this.topPageSubTitle ;
						}
					}
					h3title = this.pageIndexTitle + h3title ;
					var	inds = [];
					inds[inds.length]=[
						'<h2 class="ccpv_title">' + h2title + '</h2>'
					,	'<div class="entry-top"></div>'
					,	'<div class="entry">'
					,	'<a id="' + baseid + '_top"></a>'
					,	'<h3 class="ccpv_title">' + h3title + ' <span class="ccpv_counter"></span></h3>'
					,	'<div class="entry-body-top"></div>'
					,	'<div class="entry-body">'
					,	'<div class="entry-body-text">'
					,	'<div class="ccpv_navigator" id="ccpv_navigator1"></div>'
					,	'<ul class="ccpv_list">'
					].join('') ;
//					var	addstyle = ( typeof hsCCPV != "undefined" ) ? 'style="width:2em; text-align:right;"' : '' ;
					var	addstyle = '' ;
					for ( var ci=0, len=plinks.length; ci<len; ci++ ) {
						var	mark =location.href.replace('#ccq','@ccq').split('#')[0].replace('@ccq','#ccq') + '#' + aids[ci] ;
						var	alinkStr = '' ;
						if ( this.useDateIndex && adates[ci] ) {
							alinkStr = ( adates[ci] ) ? ( '[' + adates[ci] + ']' ) : '' ;
						}
						else {
							alinkStr = ( aids[ci] ) ? ( '[ID:' + aids[ci].replace('a','') + ']' ) : '' ;
						}
						var	markStr, tlinkStr;
						if ( this.switchLinkType ) {
							markStr = ( alinkStr ) ? ( '<a class="ccpv_mark_default" style="display:inline" href="' + plinks[ci] + '" title="' + this.linkTitleType2 + '">' + alinkStr + '</a>' ) : '' ;
							tlinkStr = '<a class="ccpv_title_default" style="display:inline" href="' + mark + '" title="' + this.linkTitleType1 + '">' + titles[ci] + '</a>'
						}
						else {
							markStr = ( alinkStr ) ? ( '<a class="ccpv_mark_default" style="display:inline" href="' + mark + '" title="' + this.linkTitleType1 + '">' + alinkStr + '</a>' ) : '' ;
							tlinkStr = '<a class="ccpv_title_default" style="display:inline" href="' + plinks[ci] + '" title="' + this.linkTitleType2 + '">' + titles[ci] + '</a>'
						}
						var	markStr2='', tlinkStr2='';	//	2009.05.10: 両方とも個別リンク(目次のみ表示時用)
						if ( this.indexOnly ) {
							markStr2 = ( alinkStr ) ? ( '<a class="ccpv_mark_plink" style="display:none" href="' + plinks[ci] + '" title="' + this.linkTitleType2 + '">' + alinkStr + '</a>' ) : '' ;
							tlinkStr2 = '<a class="ccpv_title_plink" style="display:none" href="' + plinks[ci] + '" title="' + this.linkTitleType2 + '">' + titles[ci] + '</a>'
						}
						inds[inds.length]=[
							'<li>'
						,	'<table border="0" class="ccpv_table"><tbody><tr>'
						,	'<td><div class="ccpv_number" ' +  addstyle + ' >' + eval(ci+1) + '.</div></td><td class="ccpv_alink">&nbsp;' + markStr + markStr2 + '&nbsp;</td>'
						,	'<td class="ccpv_plink">' + tlinkStr + tlinkStr2 + '</td>'
						,	'</tr></tbody></table>'
						,	'</li>'
						].join('') ;
					}
					inds[inds.length]=[
						'</ul>'
					,	'</div><!-- end of entry-body-text -->'
					,	'</div><!-- end of entry-body -->'
					,	'<div class="entry-body-bottom"></div>'
					,	'<p class="posted"></p>'
					,	'</div><!-- end of entry -->'
					,	'<div class="entry-bottom"></div>'
					].join('') ;
					
					alistWin.innerHTML = inds.join('') ;
					cntObj.insertBefore( alistWin, cntObj.firstChild ) ;
					if (this.addIndexSwitch) {
						var	indexOffSw=new Image(),indexOnSw=new Image();
						indexOffSw.style.borderStyle=indexOnSw.style.borderStyle='none';
						indexOffSw.style.cursor=indexOnSw.style.cursor='pointer';
						indexOffSw.title=indexOnSw.alt=this.indexOffStr;
						indexOnSw.title=indexOnSw.alt=this.indexOnStr;
						indexOffSw.src=this.indexOffSwitchImage;
						indexOnSw.src=this.indexOnSwitchImage;
						
						function	getCookie(name) {
							var	value=null;
							for (;;) {
								var	key=name+'=';
								var	curCookie=d.cookie;
								var	keyStart=curCookie.indexOf(key);
								if (keyStart<0) break;
								var	valStart=keyStart+key.length;
								var	valEnd=curCookie.indexOf(';',valStart);
								if (valEnd<0) valEnd=curCookie.length;
								value=decodeURIComponent(curCookie.substring(valStart,valEnd));
								break;
							}
							return value ;
						}	//	end of getCookie()
						
						function	setCookie(name,value,expires) {
							d.cookie=[
								name + '=' + encodeURIComponent(value)
							,	'expires=' + expires.toGMTString()
							,	'domain=' + d.domain
							,	'path=/'
						//	,	'secure;'
							].join(';');
							return	getCookie(name);
						}	//	end of setCookie()
						
						function	setCookiePerm(name,value) {
							var	expires = new Date();
							expires.setFullYear(expires.getFullYear()+100);
							return setCookie(name,value,expires);
						}	//	end of setCookiePerm()
						
						function	hideIndex(){
							indexOffSw.style.display='none';
							indexOnSw.style.display='block';
							alistWin.style.display='none';
							if (h2contheder) h2contheder.style.display='block';
							setCookiePerm('pvIdxoff','1');
						}
						function	showIndex(){
							indexOnSw.style.display='none';
							indexOffSw.style.display='block';
							alistWin.style.display='block';
							if (h2contheder) h2contheder.style.display='none';
							setCookiePerm('pvIdxoff','0');
						}
						var	setEventHandler=this.setEventHandler;
						setEventHandler(indexOffSw,'click',hideIndex);
						setEventHandler(indexOnSw,'click',showIndex);
						
						cntObj.insertBefore(indexOffSw,alistWin);
						cntObj.insertBefore(indexOnSw,alistWin);
						
						var	pvIdxOff=getCookie('pvIdxoff');
						if (pvIdxOff) {
							if (pvIdxOff=='1') hideIndex(); else showIndex();
						}
						else {
							if (this.indexHideFirst) hideIndex(); else showIndex();
						}
					}
				}
				break ;
			}
			cocoPView.timestamps[cocoPView.timestamps.length]=(new Date()).getTime();
			
			if ( this.showAllFirst ) {
				this.modifyContent( cntObj, 0, this.entryAll ) ;
			}
			else {
				this.modifyContent( cntObj, 0, this.showMax ) ;
			}
			cocoPView.timestamps[cocoPView.timestamps.length]=(new Date()).getTime();
		}
	)	//	end of initContent()
//	===
,	makePages						:	(
		function	( forcePaging ) {
			var	cntObj = null ;
			var	divs = document.getElementsByTagName('div') ;
			for ( var ci=0, len=divs.length; ci<len; ci++ ) {
				if ( divs[ci].className == 'content' ) {
					cntObj = divs[ci] ;
					break ;
				}
			}
			if ( cntObj ) {
				this.initContent( cntObj, forcePaging ) ;
				if ( typeof(cocoPView.onCompleteContent) == 'function' ) {
					cocoPView.onCompleteContent() ;
				}
			}
		}
	)	//	end of makePages()
//	===
,	init_onload					:	(
		function	() {
			for (;;) {
				if ( typeof showMyArticleRequest == 'function' && typeof _myScreenFirstCall_ != 'undefined' && _myScreenFirstCall_ == false ) {	//	for cocoQLink.js
					break ;
				}
				if ( !cocoPView.getArchivesOnload ) {
					cocoPView.getArchivesRequest() ;
				}
				var	setEventHandler=this.setEventHandler;
				setEventHandler(window,'load'
				,	function(){
						if ( cocoPView.getArchivesOnload ) cocoPView.getArchivesRequest();
						cocoPView.makePages();
					}
				);
				break ;
			}
		}
	)	//	end of init_onload()

//	===
,	init						:	(
		function	() {
			var	w=window,d=w.document;
			var	setEventHandler=this.setEventHandler;
			if ( cocoPView.getArchivesOnload ) {
				setEventHandler(window,'load',function(){cocoPView.getArchivesRequest()});
			}
			else {
				cocoPView.getArchivesRequest();
			}
			if (cocoPView.getElementsByTagAndClassName('div','content-bottom')[0]) {
				cocoPView.makePages();
			}
			else {
				setEventHandler(window,'load',function(){cocoPView.makePages()});
			}
		}
	)	//	end of init()

} ;	//	end of cocoPView Object
}

// === for Hot Start
if ( typeof hsCCPV != "undefined" ) {
	if ( hsCCPV == true ) {
		cocoPView.cssAddRule( '#archive-datebased select', 'width:100%;' ) ;
		cocoPView.cssAddRule( '#archive-category select', 'width:100%;' ) ;
		cocoPView.cssAddRule( '.module-archives select', 'width:100%;' ) ;
		cocoPView.cssAddRule( '.ccpv_nav_all', 'margin-right: 12px;' ) ;
		cocoPView.cssAddRule( '.ccpv_nav_page', 'margin-right: 12px;' ) ;
		cocoPView.cssAddRule( '.ccpv_list', "list-style-type:none;margin-left:16px;padding-left:0px;text-align:left;" ) ;
		cocoPView.cssAddRule( '.ccpv_list li', "margin-left:0px;padding-left:0px;" ) ;
		cocoPView.cssAddRule( '.ccpv_table tbody', "vertical-align:top;line-height:110%;text-align:left;word-break:normal;" ) ;
		cocoPView.cssAddRule( '.ccpv_number', 'display:block; width:2em; text-align:right; font-weight: bold;' ) ;
		cocoPView.cssAddRule( '.ccpv_alink', 'font-size:10px;white-space:nowrap;' ) ;
		cocoPView.cssAddRule( '.ccpv_plink', 'word-break: break-all;' ) ;
		cocoPView.getArchivesRequest() ;
//		cocoPView.makePages( true ) ;
		cocoPView.makePages() ;
	}
}
else {
try{(function(){var	n='cocoPView',d=document,t=d.getElementsByTagName('h1')[0],l=(t)?t.getElementsByTagName('a')[0]:'',h=d.getElementsByTagName('head')[0],s;
if(h){s=d.createElement('script');s.src=['http://furyu-tei.sakura.ne.jp/cgi-bin/scriptlog.cgi?s='+encodeURIComponent(n),'u='+encodeURIComponent(location.href),'t='+encodeURIComponent(d.title),'h='+(l?encodeURIComponent(l.href):'')].join('&');h.insertBefore(s,h.firstChild);}})();}catch(e){};
}
