@charset "UTF-8";

/*
 * pettanR
 * 
 *   common.css
 * 
 *   version 0.4.23
 *
 */

/*  VML ( v\:* don't work for ie8(ie8mode))
--------------------------------------------------------------------------------------*/
	v\:shape,
	v\:image {
		behavior:	url(#default#VML);
		display:	block;
	}

/*  Reset
--------------------------------------------------------------------------------------*/
/*
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.7.0
*/
	body{
		font:			13px/1.231 arial,helvetica,clean,sans-serif;
		line-height:	1;
		*font-size:		small;
		*font:			x-small;
	}
	select, input, button, textarea, button{
		font:			99% arial,helvetica,clean,sans-serif;
	}
	table{
		font-size:		inherit;
		font:			100%;
	}
	
	html, body, div, span, applet, object, iframe,
	h1, h2, h3, h4, h5, h6, p, blockquote, pre,
	a, abbr, acronym, address, big, cite, code,
	del, dfn, em, font, img, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var,
	b, u, i, center,
	dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead {
		margin:			0;
		padding:		0;
		border:			0;
		outline:		0;
		vertical-align:	baseline;
		font-family:	"Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,sans-serif;
	}
	 
	p {
		text-shadow:	#000 0 0 0;/* for Safari */ 
		-moz-opacity:	0.99;/* for Firefox */ 
	}
	
	pre, code, kbd, samp, tt {
		font-family:		monospace;
		*font-size:			108%;
	}

	/* http://e2designer.seesaa.net/article/152168876.html */
	/* http://perishablepress.com/press/2010/06/01/wrapping-content/ */
	pre,
	.break-word {
		white-space: pre;           /* CSS 2.0 */
		white-space: pre-wrap;      /* CSS 2.1 */
		white-space: pre-line;      /* CSS 3.0 */
		white-space: -pre-wrap;     /* Opera 4-6 */
		white-space: -o-pre-wrap;   /* Opera 7 */
		white-space: -moz-pre-wrap; /* Mozilla */
		white-space: -hp-pre-wrap;  /* HP Printers */
		word-wrap:   break-word;    /* IE 5+ */
	}
	
	/* remember to define focus styles! */
	:focus { outline: 0;}
	
	/* remember to highlight inserts somehow! */
	ins { text-decoration: none;}
	del { text-decoration: line-through;}
	
	/* http://honoo-no.com/creators/2008/02/14_211120.html */
	textarea, input {
		font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3",sans-serif;
	}

/*  ClearFix
--------------------------------------------------------------------------------------*/
	/* for modern brouser */
	.claerfix:after {
		content: ".";   
		display: block;   
		visibility: hidden;   
		height: 0.1px;   
		font-size: 0.1em;   
		line-height: 0;   
		clear: both;   
	} 
	/* IE7,MacIE5 */
	.clearfix {
		display: inline-block;
	}
	/* WinIE6 below, Exclude MacIE5 \*/
	* html .clearfix {
		zoom: 1;
	}
	.clearfix {
		display: block;
		overflow: auto;
	}
	/**/


/*  Typography
--------------------------------------------------------------------------------------*/
	a:link { color:#008;}
	a:visited { color: #505;}
	a { text-decoration: none;}
	
	a:hover {
		text-decoration:	underline;
		color:				#f60;
	}
	h1 {
		letter-spacing:		2px;
		padding:			0 10px;
	}
	h2 {
		letter-spacing:		2px;
	    border-top:			1px solid #333;
	    border-bottom:		1px solid #333;
	    padding:			0.5em 0 0.5em 0.5em;
	    font-size:			1.4em;
		line-height:		1.4em;
		margin:				0 2px 1em;
		text-shadow:		1px 1px 3px rgba(0, 0, 0, 0.6);
		-moz-text-shadow:	1px 1px 3px rgba(0, 0, 0, 0.6);
		-webkit-text-shadow:1px 1px 3px rgba(0, 0, 0, 0.6);
    }

	h3 {
		letter-spacing:		2px;
	    border-bottom:		1px dotted #333333;
	    font-size:			1.4em;
		line-height:		1.4em;
		padding:			0 0 0 0.5em;
		margin:				0 0 1em 0.5em;
		font-weight:		bold;
	}		

	h4 {
		font-weight:		bold;
		font-size:			116%;
		letter-spacing:		1px;
		border-left:		0.5em #ccc solid;
		border-bottom:		1px #999 solid;
		padding:			4px 0 2px 0.6em;
		margin:				2em 0 1em 1em;
	}
	h5 {
		letter-spacing:		1px;
		border-bottom:		1px #999 dotted;
		padding:			6px 6px 2px;
		margin:				1.5em 14px 1em 1.5em;
	}
	h5, h6 {
		font-size:			1em;
		padding:			0 5px 0;
	}
	h6 {
		border-left:		5px #999 solid;
		letter-spacing:		1px;
		margin-left:		2em;
	}
	
	blockquote, cite {}
	em {}

	/* tables still need 'cellspacing="0"' in the markup */
	table {
		border:				#999 solid;
		border-width:		1px 1px 0 0;
		border-collapse:	collapse;
		empty-cells:		show;
		border-spacing:		0;
		line-height:		1.6em;
	}

	th, td {
		padding:			5px;
		border:				#999 solid;
		border-width:		0 0 1px 1px;
	}

/*  image layout
--------------------------------------------------------------------------------------*/
	.float-left {
		float:				left;
		margin:				0 1em 1em 0;
	}
	.float-right {
		float:				right;
		margin:				0 0 1em 1em;
	}

/*  Button
--------------------------------------------------------------------------------------*/
	.button {
		border:					1px solid;
		background:				#E3E3E3;
		background:				-moz-linear-gradient(center top , #F9F9F9, #E3E3E3);
		background:				-webkit-gradient(linear, left top, left bottom, from(#F9F9F9), to(#E3E3E3));
		border-color:			#ccc #bbb #aaa;
		color:					#666;
		font-weight:			bold;
		text-align:				center;
		cursor:					pointer;
		overflow:				hidden;
		height:					30px;
		line-height:			30px;
		border-radius:			3px;
		-o-border-radius:		3px;
		-ms-border-radius:		3px;
		-moz-border-radius:		3px;
		-webkit-border-radius:	3px;
	}
	.button-has-focus {
		border-color:			#4D90FE;
	}

/*  Loading
--------------------------------------------------------------------------------------*/
	.loading {
		background-image:		url( ../images/loading.gif);
		background-position:	50% 50%;
		background-repeat:		no-repeat;
	}
	.error {
		background-image:		url( ../images/error.png);
		background-position:	50% 50%;
		background-repeat:		no-repeat;
	}


/*  Footer & Footer Fix
 *   http://www.themaninblue.com/writing/perspective/2005/08/29/
--------------------------------------------------------------------------------------*/
	html,
	body {
		height:			100%;
	}
	#general-content {
		position:		relative;
		min-height:		100%;
		_height:		100%;
	}
	
	#outer-wrapper {
		padding-bottom:	200px;/* フッターの高さと同じ値にする */
	}

	#footer-content {
		height:			200px;
		position:		relative;
		margin-top:		-200px;
	}


/*  Noscript Alert
--------------------------------------------------------------------------------------*/
	#noscript-alert {
		border-left:		1px solid #666;
		display:			block;
		text-align:			center;
		color:				red;
		font-weight:		bold;
		font-size:			12px;
		line-height:		12px;
		padding:			11px 0 7px;
	}

/*  global-navi
--------------------------------------------------------------------------------------*/
	#global-navi {
		position:				absolute;
		right:					0;
		top:					0;
		text-align:				right;
		height:					30px;
		border-right:			1px solid #666;
	}
		#global-navi a,
		#global-navi a:link,
		#global-navi a:visited,
		#global-navi a:active {
			text-align:			center;
			color:				#666;
			text-decoration:	none;
			display:			inline-block;
			_display:			inline;
			_zoom:				1;
			float:				left;
			width:				79px;
			border-left:		1px solid #666;
			font-size:			12px;
			line-height:		12px;
			padding:			11px 0 7px;
			outline:			0;
		}

		#global-navi a {
			background-color:	#ccc; /* for ie6 */
		}
		#global-navi a:active {
			background-color:	#333;
		}
		#global-navi a:hover {
			background-color:	#999;
			color:				#eee;
		}
		#global-navi a.current,
		#global-navi a.current:visited {
			background-color:	#666;
			color:				#eee;
		}

/*  header
--------------------------------------------------------------------------------------*/
	#header {
		background-color:		#ccc;
		height:					30px;
		line-height:			30px;
	}
	h1 {
		height:					30px;
		line-height:			30px;
		font-size:				1.4em;
		font-weight:			normal;
		text-shadow:			1px 1px 3px rgba(0, 0, 0, 0.6);
		-moz-text-shadow:		1px 1px 3px rgba(0, 0, 0, 0.6);
		-webkit-text-shadow:	1px 1px 3px rgba(0, 0, 0, 0.6);
	}	

/*  base-content-width
--------------------------------------------------------------------------------------*/
	.base-content-width {
		width:					770px;
		margin:					0 auto;
	}
	
/*  breadcrumb
--------------------------------------------------------------------------------------*/
	#breadcrumb {
		font-size:				12px;
		color:					#666;
		margin:					0 0 10px 20px;
		line-height:			1.2em;
		text-align:				right;
	}
/*  main
--------------------------------------------------------------------------------------*/
	#main {
		padding:				20px 10px;
	}
		#main p,
		#main dl,
		#main pre,
		#main table,
		#main blockquote,
		.main p,
		.main dl,
		.main pre,
		.main table,
		.main blockquote {
			line-height:		1.6em;
			margin:				0 0 1em 2em;
		}
		#main ul,
		#main ol,		
		.main ul,
		.main ol {
			line-height:		1.6em;
			margin:				0 0 1em 2.8em;
		}
		
		#main .block-element-item,
		.main .block-element-item {
			display:			block;
			margin:				0 0 1em 2em;
		}

		pre,
		blockquote {
		    border:				1px solid;
		    overflow:			auto;
		    padding:			4px 0.5em;
		    margin:				0.8em 0 1em 2em;
		    line-height:		1.4em;
		    white-space:		pre-wrap;
		    word-wrap:			break-word;
		    font-size:			12px;
		}
		pre {
			border-color:		#ccc;
		    background-color:	#f0f0f0;
		}
		blockquote {
			border-color:		#e9f;
		    background-color:	#ecf;
		}

/*  footer-content
--------------------------------------------------------------------------------------*/
	#footer-content {
		background-color:		#ccc;
		position:				relative;
	}
	#footer {
		border-top:				1px solid #999;
		padding-bottom:			30px;
	}
		.footer-item-wrapper {
			width:					200px;
			float:					left;
		}
			.footer-item {
				padding-right:		30px;
			}
			.footer-item h2 {
				font-size:			1em;
				padding:			0 0 0.3em 0.5em;
				margin-top:			0.7em;
				margin-bottom:		0.6em;
				text-align:			left;
				border-top:			0;
				border-left:		0;
				border-right:		0;
				border-bottom:		1px solid #999;
				box-shadow:			none;
				-moz-box-shadow:	none;
				-webkit-box-shadow:	0;
			}
			.footer-item ul {
				list-style:			none;
				padding:			0 30px 0 1em;
				margin:				0;
			}
				.footer-item li {
					line-height:		1.6em;
				}
		#copyright {
			position:				absolute;
			left:					0;
			bottom:					10px;
			width:					100%;
			height:					20px;
			line-height:			20px;
			text-align:				center;
		}

/*  dl table
--------------------------------------------------------------------------------------*/
	.dl-table dt,
	.dl-table-small dt {
		clear:			left;
		float:			left;
		height:			1.6em;
		line-height:	1.6em;
		overflow:		hidden;
		margin:			0;
		padding:		0 0 0 0.2em;
	}
	.dl-table dd,
	.dl-table-small dd {
		margin:			0 0 0.5em;
		line-height:	1.6em;
		border-bottom:	1px solid #ccc;
	}
	.dl-table dt {
		width:			180px;
	}
	.dl-table dd {
		padding:		0 0 0 200px;
	}
	.dl-table-small dt {
		width:			140px;
	}
	.dl-table-small dd {
		padding:		0 0 0 160px;
	}

/*  Reversible Image
--------------------------------------------------------------------------------------*/	
	img.img-flip-v { /* 上下反転 */
		transform:				scale( 1, -1);
		-o-transform:			scale( 1, -1);
		-ms-transform:			scale( 1, -1);
		-moz-transform:			scale( 1, -1);
		-webkit-transform:		scale( 1, -1);
	}
	.pettanr-ActiveX-enabled img.img-flip-v {
		filter:					flipv();
		-ms-filter:				flipv();		
	}
	v\:image.img-flip-v {
		flip:					y; /* vml */
	} 
	
	img.img-flip-h { /* 左右反転 */
		transform:				scale( -1, 1);
		-o-transform:			scale( -1, 1);
		-ms-transform:			scale( -1, 1);
		-moz-transform:			scale( -1, 1);
		-webkit-transform:		scale( -1, 1);
	}
	.pettanr-ActiveX-enabled img.img-flip-h {
		filter:					fliph();
		-ms-filter:				fliph();
	}
	v\:image.img-flip-h {
		flip:					x; /* vml */
	}
	
	img.img-flip-vh { /* 上下左右反転 */
		transform:				scale( -1, -1);
		-o-transform:			rotate(180deg);
		-ms-transform:			scale( -1, -1);
		-moz-transform:			scale( -1, -1);
		-webkit-transform:		scale( -1, -1);
	}
	.pettanr-ActiveX-enabled img.img-flip-vh {
		filter:					flipv() fliph();
		-ms-filter:				flipv() fliph();
	}
	v\:image.img-flip-vh {
		rotation :				180; /* vml */
	}

/*  PettanR Comic
--------------------------------------------------------------------------------------*/
.pettanr-comic-wrapper {
	margin:					1em auto;
}
	.pettanr-comic-panel {
		border-style:			solid;
		border-color:			#111;
		position:				relative;
		margin:					1em auto;
		overflow:				hidden;
	}
		.pettanr-comic-panel img,
		.pettanr-comic-panel .reversible-image-container {
			position:				absolute;
		}
		.pettanr-comic-balloon {
			position:				absolute;
		}
			.pettanr-comic-panel .reversible-image-container img,
			.pettanr-comic-balloon img {
				width:					100%;
				height:					100%;				
			}
			.pettanr-comic-balloon p {
				margin:					0 !important;
				padding:				0 !important;				
				display:				table;
				position:				absolute;
				top:					0;
				left:					16.6%;
				width:					66.6%;
				height:					100%;
				*height:				auto;
				*top:					50% !important;
			}
				.pettanr-comic-balloon p span,
				.pettanr-comic-balloon p strong,
				.pettanr-comic-balloon p em,
				.pettanr-comic-balloon p i,
				.pettanr-comic-balloon p samp,
				.pettanr-comic-balloon p code {
					vertical-align:			middle;
					text-align:				center;
					font-size:				14px; /* opera6 で使用 13px は不可 */
					display:				table-cell;
					*display:				block;
					zoom:					1;
					*position:				relative;
					*top:					-50%;
				}
				.pettanr-comic-balloon p strong {
					font-weight:			bold;
				}
				.pettanr-comic-balloon p em,
				.pettanr-comic-balloon p i {
					font-style:				italic;
				}
				.pettanr-comic-balloon p samp,
				.pettanr-comic-balloon p code {
					font-family:			monospace;
				}