@charset "UTF-8";
/*
京都アニメーション
Copyright (C) Kyoto Animaion Co.,Ltd. All Rights Reserved.
*/

/* ---------- reset ---------- */
html{width:100%;height:100%;overflow-y:scroll;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}
/* HTML5 */
article,aside,canvas,details,figcaption,figure,header,footer,hgroup,menu,nav,section,summary,h1,h2,h3,h4,h5,h6{display:block;}
body{
	font-family: 'メイリオ', 'Meiryo', 'ヒラギノ丸ゴ Pro W4', 'Hiragino Maru Gothic Pro', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Arial, Helvetica, Verdana, sans-serif;
	font-size: 12px;
	line-height: 1.5;
	background: #FFF;
	color: #666;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
	word-break: break-all;
}
/* for IE7 */
*+html body{font-family:'メイリオ','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS P Gothic';font-size: 75%;}
/* for IE6 */
* html body{font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS P Gothic';font-size: 75%;}
/* other */
a{
	color: #666;
	overflow: hidden;
	text-decoration: none;
}
a:hover{color: #1eb2f1;text-decoration: underline;}
a:active,a:focus{outline:none;}fieldset{border:0;}a img,img{border:0;vertical-align:top;}abbr,acronym{border:0;}address,caption,cite,code,dfn,em,th,strong,var{font-style:normal;font-weight:normal;}blockquote,div,dl,dt,dd,h1,h2,h3,h4,h5,h6,ol,ul,li,p,pre,span,td,th,article,aside,canvas,details,figcaption,figure,header,footer,hgroup,menu,nav,section,summary,audio,video{margin:0;padding:0;}caption,th{vertical-align:top;text-align:left;}small{font-size:100%;}code,kbd,pre,samp,tt{font-family:monospace;line-height:100%;}hr{display:none;}
/* for IE7 */
*+html code,kbd,pre,samp,tt{font-size:108%;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}ol,ul{list-style:none;}q:before,q:after{content:'';}
/* form */
button,fieldset,form,input,label,legend,select,textarea{font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;padding:0;vertical-align:baseline;}
/* table */
table{border-collapse:collapse;border-spacing:0;font-size:100%;}

/* ---------------------------
colorbox setting
--------------------------- */
#colorbox, #cboxOverlay, #cboxWrapper { position: absolute; top: 0; left: 0; z-index: 9999; overflow: hidden; outline: 0; }
#cboxOverlay { position: fixed; width: 100%; height: 100%; }
#cboxMiddleLeft, #cboxBottomLeft { clear: left; }
#cboxContent { position: relative; }
#cboxLoadedContent { overflow: auto; }
#cboxTitle { margin: 0; }
#cboxLoadingOverlay, #cboxLoadingGraphic { position: absolute; top: 0; left: 0; width: 100%; }
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow { cursor: pointer; }
#cboxOverlay { background: #fff; }
#cboxContent { overflow:hidden; }
#cboxError { padding: 50px; border: 1px solid #ccc; }
#cboxLoadedContent { margin: 28px 0; overflow: hidden; }
#cboxTitle { position: absolute; bottom: 4px; left: 0; text-align: center; width: 100%; color: #949494; }
#cboxCurrent { display: none; color: #FFF; }
#cboxSlideshow { position: absolute; right: 30px; bottom: 4px; color: #0092ef; }
#cboxPrevious { position: absolute; left: 0; top: 0; border: none; background: url(/img/colorbox/control.png) no-repeat 0 0; width: 25px; height: 25px; text-indent:-9999px; }
#cboxPrevious:hover{ background-position: 0 -25px; }
#cboxNext { position: absolute; left: 27px; top: 0; border: none; background: url(/img/colorbox/control.png) no-repeat -25px 0; width: 25px; height: 25px; text-indent:-9999px; }
#cboxNext:hover { background-position: -25px -25px; }
#cboxLoadingGraphic { background: url(/img/colorbox/loading.gif) no-repeat center center; }
#cboxClose { position: absolute; right: 0; top: 0; border: none; background: url(/img/colorbox/close.png) no-repeat left top; width: 70px; height: 25px; text-indent:-9999px; }
#cboxClose:hover { background-position: left -25px; }
.cboxIframe { width: 100%; height: 100%; display: block; border: 0; }
.cboxIE #cboxTopLeft, .cboxIE #cboxTopCenter, .cboxIE #cboxTopRight, .cboxIE #cboxBottomLeft, .cboxIE #cboxBottomCenter, .cboxIE #cboxBottomRight, .cboxIE #cboxMiddleLeft, .cboxIE #cboxMiddleRight { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF); }
.cboxIE6 #cboxTopLeft, .cboxIE6 #cboxTopCenter, .cboxIE6 #cboxTopRight, .cboxIE6 #cboxBottomLeft, .cboxIE6 #cboxBottomCenter, .cboxIE6 #cboxBottomRight, .cboxIE6 #cboxMiddleLeft, .cboxIE6 #cboxMiddleRight { _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')"); }

/* ---------------------------
clearfix setting
--------------------------- */
.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
	overflow: hidden;
}
.clearfix:after { clear: both; }

/* ---------------------------
base setting
--------------------------- */

/* ---------- common ---------- */
#noscript {
	width: 100%;
	height: 100%;
	text-align: center;
	background: #FFF;
	color: #333;
	z-index: 9999;
}
#overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	text-align: center;
	background: #FFF;
	z-index: 999;
}
.key {
	display: none;
	position: relative;
	top: 43%;
	font-size: 20px;
	color: #ff7c9e;
}
.key p { letter-spacing: 0px; }
.key span {
	border-bottom: 1px #ff7c9e solid;
	position: relative;
	display: block;
	top: -4px;
	width: 0%;
	margin-left: 50%;
}
.loading {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -8px;
	margin-left: -86px;
}
#siteWrap { display: none; position: relative; width: 100%; min-width: 1200px; height: 100%; }

/* ---------- second common ---------- */
#mainContent { position: relative; width: 100%; height: 100%; z-index: 1; }
.bg1 {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.bg2 {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.cap {
	position: absolute;
	top: 200px;
	left: 0;
	overflow: hidden;
}
.cap span {
	border-bottom: 1px #7dc3ff solid;
	display: block;
	position: relative;
	top: -30px;
	left: -40px;
	z-index: 1;
}
.leftArea {
	padding-left: 60px;
	position: relative;
	z-index: 2;
}

/* ---------------------------
top setting
--------------------------- */

/* ---------- corporateLink ---------- */
#corporateLink { position: fixed; width: 100%; z-index: 10; }
.cpLink {
	position: absolute;
	top: 5px;
	right: 5px;
}
.cpLink li { display: inline-block; margin: 0 5px; *display: inline; zoom: 1; }
.cpLink li a { color: #aaa; padding: 0 5px; }
.cpLink li a:hover { color: #aaa; }

/* ---------- globalHeader ---------- */
#globalHeader { position: fixed; width: 100%; z-index: 10; }
.header {
	position: absolute;
	top: 50px;
	right: 0;
	padding-right: 60px;
	text-align: center;
}
.author { margin-top: 15px; }
/*.caption {
	position: absolute;
	top: 225px;
	right: 0;
	padding-right: 60px;
	text-align: right;
}*/
.caption1 {
	position: absolute;
	top: 195px;
	right: 0;
	padding-right: 60px;
	text-align: right;
}
.caption2 {
	position: absolute;
	top: 250px;
	right: 0;
	padding-right: 60px;
	text-align: right;
}
.caption3 {
	position: absolute;
	top: 285px;
	right: 0;
	padding-right: 60px;
	text-align: right;
}

/* ---------- globalNavigation ---------- */
#globalNavigation { position: fixed; width: 100%; z-index: 15; }
.menu {
	position: absolute;
	top: 345px;
	right: 0;
}
.menu p, .link p { padding-right: 60px; }
.menu span, .link span {
	border-bottom: 1px #ccc solid;
	display: block;
	position: relative;
	top: -8px;
}
.menuList {}
.menuList li {
	position: absolute;
	right: 0;
	overflow: hidden;
}
.in { top: 375px; }
.st { top: 415px; }
.ch { top: 455px; }
.sp { top: 495px; }
.bo { top: 535px; }
.menuList li a {
	display: block;
	font-family: 'Muli', sans-serif;
	font-size: 20px;
	padding-right: 60px;
	padding-left: 5px;
	position: relative;
	z-index: 15;
}
.menuList li a:hover { text-decoration: none; }
.menuList li span {
	position: relative;
	display: block;
	border-bottom: 1px #6fd1fb solid;
	right: -100%;
	top: -9px;
	z-index: 14;
}
.cm {
	position: absolute;
	right: 0;
	top: 500px;
}

/* ---------- globalFooter ---------- */
#globalFooter { position: fixed; width: 450px; z-index: 2; }
.link {
	position: absolute;
	right: 0;
}
.linkList {}
.linkList li {
	position: absolute;
	right: 0;
	overflow: hidden;
}
.linkList li a {
	display: block;
	padding-right: 60px;
	padding-left: 5px;
	position: relative;
	z-index: 5;
}
.linkList li a:hover { text-decoration: none; }
.linkList li a img { vertical-align: baseline; }
.linkList li span {
	position: relative;
	display: block;
	border-bottom: 1px #6fd1fb solid;
	right: -100%;
	top: -4px;
	z-index: 4;
}
.shareList {
	position: absolute;
	right: 15px;
}
.shareList li, .shareList li a { display: inline-block; *display: inline; zoom: 1; }
.shareList li {
	height: 26px;
	margin: 0 5px;
	border-bottom: 1px #aaa solid;
}
.shareList li a { margin: 0 1px; }
.shareList li a:hover { text-decoration: none; }
.shareList p {
	display: block;
	text-align: center;
	width: 40px;
	padding: 3px;
}
.copy {
	position: absolute;
	right: 15px;
	color: #aaa;
}

/* ---------- mainVisual ---------- */
#mainVisual {
	max-width: 1200px;
	margin: 0 auto;
}

/* ---------------------------
second setting
--------------------------- */

/* ---------- introduction ---------- */
.introduction .content {
	position: absolute;
	top: 50%;
	left: 50%;
}
.introduction .bg_b1 {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -92.5px;
	margin-left: -279px;
}
.introduction .bg_b2 {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -80.5px;
	margin-left: -271px;
}
.introduction .bg_n {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -70px;
	margin-left: -260px;
}

/* ---------- story ---------- */
.story .content {
	position: absolute;
	width: 626px;
	height: 338px;
	top: 50%;
	left: 50%;
	margin-top: -169px;
	margin-left: -313px;
	overflow: hidden;
}
.story_title1, .story_title2 {
	width: 100%;
	position: relative;
	left: 0%;
}
.story_txt1, .story_txt2 {
	position: relative;
	margin: 15px 0 30px 40px;
}
.story_txt1 { width: 513px; height: 135px; }
.story_txt2 { width: 568px; height: 73px; }
.story_txt1 li, .story_txt2 li { position: absolute; top: 50%; left: 50%; }
.st11{ margin-top: -72px; margin-left: -261.5px; }
.st12{ margin-top: -67.5px; margin-left: -256.5px; }
.st21{ margin-top: -41.5px; margin-left: -288px; }
.st22{ margin-top: -36.5px; margin-left: -284px; }

/* ---------- character ---------- */
.character .content {
	position: absolute;
	width: 626px;
	height: 326px;
	top: 50%;
	left: 50%;
	margin-top: -163px;
	margin-left: -313px;
	overflow: hidden;
}
.charaNav {
	width: 626px;
	height: 40px;
	text-align: center;
	overflow: hidden;
}
.charaNav li {
	display: inline-block;
	margin: 10px 15px;
	*display: inline;
	zoom: 1;
}
.charaNav a { padding: 5px; color: #aaa; }
.charaNav a:hover, .character .select > a { color: #666; text-decoration: underline; }
.charaContent {
	position: relative;
	width: 626px;
	height: 286px;
}
.charaImg {
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -131.5px;
	z-index: 2;
}
.charaKey {
	position: absolute;
	right: 5px;
	top: 35px;
}
.charaKey li {
	background-repeat: no-repeat;
	display: block;
	width: 345px;
	height: 25px;
}
.tamakoKey li { background-image: url(/books/tamako/img/character/chara_key1.png); }
.midoriKey li { background-image: url(/books/tamako/img/character/chara_key2.png); }
.choiKey li { background-image: url(/books/tamako/img/character/chara_key3.png); }
.Key1 { background-position: 0 0; }
.Key2 { background-position: 0 -25px; }
.Key3 { background-position: 0 -50px; }
.charaName {
	position: absolute;
	right: 0%;
	top: 50%;
	margin-top: -15px;
}
.charaTxt {
	position: absolute;
	right: 5px;
	bottom: 40px;
}

/* ---------- special ---------- */
.special .content {
	position: absolute;
	width: 626px;
	height: 691px;
//	top: 50%;
	left: 50%;
//	margin-top: -169px;
	margin-left: -313px;
	overflow: hidden;
	top: 330px;
	margin-top: 0px;
}
.specialBox {
	padding-bottom: 40px;
}
.special_title1 {
	width: 100%;
	position: relative;
	left: 0%;
}
.special_cm {
	width: 480px;
	margin: 20px auto 0;
}

/* ---------- books ---------- */
.books .content {
	position: absolute;
	width: 626px;
	height: 345px;
	top: 50%;
	left: 50%;
	margin-top: -169px;
	margin-left: -313px;
	overflow: hidden;
}
.books .booksImg {
	float: left;
	display: block;
	margin: 3px;
	box-shadow: 0px 0px 2px 0px rgba(51, 51, 51, .3);
	-webkit-box-shadow: 0px 0px 2px 0px rgba(51, 51, 51, .3);
	-moz-box-shadow: 0px 0px 2px 0px rgba(51, 51, 51, .3);
}
.books .booksData {
	float: left;
	width: 381px;
	height: 100%;
}
.books_title {
	font-size: 21px;
	color: #FF7C9E;
	text-align: center;
	padding-top: 15px;
}
.books .author {
	margin-top: 5px;
	font-size: 10px;
	text-align: right;
}
.books .author span { margin-left: 10px; }
.booksInfoData {
	margin: 25px 0 20px 20px;
}
.booksInfoData dt{
	float: left;
	padding-top: 5px;
}
.booksInfoData dd{
	text-align: right;
	padding-top: 5px;
	border-bottom: 1px #DDD solid;
}
.shopList {
	margin-left: 20px;
}
.shopList li{
	background-color: #FF7C9E;
	text-align: center;
	font-size: 16px;
	margin: 5px 0px;
	line-height: 1em;
}
.shopList a{
	display: block;
	padding: 10px 0px;
	width: 100%;
	height: 100%;
	color: #FFF;
}
.shopList a:hover{
	text-decoration: none;
}

/* ---------------------------
media screen setting
--------------------------- */

@media screen and (max-height: 820px) {
	.bg2 { top: 505px; }
	#corporateLink, #globalHeader, #globalNavigation, #globalFooter { position: absolute; }
	#globalFooter { right: 0; }
	.link { top: 647px; }
	/*.link { top: 672px; }*/
	.tn { top: 672px; }
	.tl { top: 697px; }
	.tm { top: 722px; }
	.shareList { top: 765px; }
	.copy { top: 797px; }
	.introduction .content { top: 410px; margin-top: 0px; }
	.story .content { top: 330px; margin-top: 0px; }
	.character .content { top: 247px; margin-top: 0px; }
	.special .content { top: 330px; margin-top: 0px; }
	.books .content { top: 300px; margin-top: 0px; }
}
@media screen and (min-height: 821px) {
	#globalFooter { bottom: 0; right: 0; }
	.link { bottom: 155px; }
	/*.link { bottom: 130px; }*/
	.tn { bottom: 130px; }
	.tl { bottom: 105px; }
	.tm { bottom: 80px; }
	.shareList { bottom: 25px; }
	.copy { bottom: 5px; }
}





