@charset "utf-8";

/*-----------------------------------------------
 body
-----------------------------------------------*/

body{
	overflow-x: hidden;
	background-image: url(../img/tata/bg.jpg);
	background-position: center top;
	background-attachment: fixed;
	background-repeat: no-repeat;
}

.bg{
	position: fixed;
	opacity: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}

#content{
	width: 1200px;
	margin: 0 auto;
}

/*-----------------------------------------------
 keyvisual
-----------------------------------------------*/

#keyvisual{
	position: relative;
	height: 1140px;
}

#keyvisual .character1{
	display: none;
	position: absolute;
	z-index: 5;
	top: -2px;
    left: 246px;
}

#keyvisual .character2{
	display: none;
	position: absolute;
	z-index: 4;
    top: 3px;
    left: -1px;
}

#keyvisual .character3{
	display: none;
    position: absolute;
    z-index: 3;
    top: 1px;
    left: -199px;
}

#keyvisual .character4{
	display: none;
    position: absolute;
    z-index: 2;
    top: 213px;
    left: 721px;
}

#keyvisual .sakura{
	display: none;
    position: absolute;
    z-index: 5;
    top: 493px;
    left: -159px;
}

#keyvisual .leaf{
	display: none;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 362px;
}

#keyvisual h1{
	display: none;
	position: absolute;
	z-index: 10;
	top: 438px;
	left: 394px;
}

#keyvisual .medal{
	display: none;
	position: absolute;
	z-index: 10;
	top: 434px;
	left: 250px;
}

#keyvisual .bakudan{
	position: absolute;
    top: 430px;
    left: 1012px;
}

#keyvisual .info{
	position: relative;
	display: none;
	z-index: 10;
}

#keyvisual .cover{
	position: absolute;
	z-index: 10;
	top: 594px;
	left: 255px;
	width: 164px;
	border: 1px solid #ff0000;
	box-shadow: 0px 2px 12px 0px #000;
}

#keyvisual .cover img{
	width: 100%;
}

#keyvisual .catch{
	position: absolute;
	z-index: 10;
	top: 590px;
	left: 431px;
}

#keyvisual ul.linkList{
	position: absolute;
	z-index: 10;
    top: 719px;
    left: 435px;
	font-size: 0;
}

#keyvisual ul.linkList li{
	position: relative;
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

#keyvisual ul.linkList li span{
	position: absolute;
	top: -20px;
	right: -10px;
}

#keyvisual ul.bnrList{
	position: absolute;
	top: 854px;
	left: 0;
	width: 1200px;
	box-sizing: border-box;
	font-size: 0;
	text-align: center;
}

#keyvisual ul.bnrList li{
	display: inline-block;
	margin: 0 5px;
}


#keyvisual .news{
	position: absolute;
	z-index: 10;
	top: 1000px;
	left: 33px;
	width: 1136px;
	height: 90px;
	border: 1px solid #000;
	box-sizing: border-box;
	background-color: #fff;
}

#keyvisual .news dl{
	overflow-x: hidden;
	overflow-y: scroll;
	position: relative;
	height: 70px;
	padding-top: 10px;
}

#keyvisual .news dl dt{
	position: absolute;
	top: 10px;
	left: 10px;
	height: 60px;
	padding-right: 10px;
	border-right: 1px dotted #000;
	font-size: 18px;
	font-weight: bold;
}

#keyvisual .news dl dd{
	padding: 0 0 0 140px;
	font-size: 16px;
}

#keyvisual .news dl dd span{
    display: inline-block;
    min-width: 100px;
    font-weight: bold;
    color: #ff0100;
}

/*-----------------------------------------------
 story
-----------------------------------------------*/

#story{
	z-index: 10;
	padding-top: 40px;
	background-color: #ae0000;
}

#story h2{
	text-align: center;
	line-height: 0;
}

#story .inner{
	padding: 28px 32px;
	background-image: url(../img/tata/story-bg.jpg);
}

#story p.text1{
	margin-bottom: 20px;
	font-size: 28px;
	text-shadow: 0px 0px 7px #000000;
	color: #fff;
}

#story p.text2{
	font-size: 18px;
	text-shadow: 0px 0px 7px #000000;
	color: #fff;
}

#story p.text2 span{
	color: #ffff00;
}

/*-----------------------------------------------
 character
-----------------------------------------------*/

#character{
	padding-top: 72px;
	background-color: #ae0000;
}

#character h2{
	text-align: center;
	line-height: 0;
}

#character .character{
	margin-bottom: 28px;
	line-height: 0;
}

#character ul.characterList{
	position: relative;
	margin-left: 32px;
}


#character ul.characterList li{
	display: inline-block;
	width: 271px;
	margin-right: 7px;
	vertical-align: top;
}

#character ul.characterList li figure{
	margin: 0;
}

#character ul.characterList li figcaption{
	margin-bottom: 8px;
	border-bottom: 1px solid #ae0000;
	font-size: 30px;
	font-weight: bold;
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", “メイリオ”, Meiryo, serif;
	text-align: center;
	color: #fff;
}

#character ul.characterList li .image{
	line-height: 0;
}

#character ul.characterList li .detail{
	height: 190px;
	padding: 8px;
	background-color: #000;
}

#character ul.characterList li .detail p{
	font-size: 16px;
	color: #fff;
}

#character ul.characterList li .detail p span{
	color: #ffff00;
}

#character ul.characterList li:nth-child(4),
#character ul.characterList li:nth-child(5){
	width: 296px;
	margin-right: 0;
	vertical-align: top;
}

#character ul.characterList li:nth-child(4) .detail,
#character ul.characterList li:nth-child(5) .detail{
	height: 150px;
}

#character ul.characterList li:nth-child(4){
	position: absolute;
	top: 0;
	right: 32px;
}

#character ul.characterList li:nth-child(5){
	position: absolute;
	bottom: 0;
	right: 32px;
}

/*-----------------------------------------------
 comment
-----------------------------------------------*/

#comment{
	padding: 72px 0 50px;
	background-color: #ae0000;
}

#comment h2{
	margin-bottom: 10px;
	text-align: center;
	line-height: 0;
}

#comment .catch{
	margin-bottom: 10px;
	font-size: 24px;
	text-align: center;
	color: #fff;
}

#comment ul.commentList li{
	padding: 20px 40px;
	margin: 0 30px 15px;
	background-color: #fff;
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", “メイリオ”, Meiryo, serif;
}

#comment ul.commentList li.new{
	background-image: url(../img/tata/icon-new.png);
	background-repeat: no-repeat;
}

#comment ul.commentList li p{
	font-size: 18px;
}

#comment ul.commentList li p.title{
	font-size: 30px;
	font-weight: bold;
	color: #ae0000;
}

/*-----------------------------------------------
 twitter
-----------------------------------------------*/

#twitter{
	margin-bottom: 20px;
	padding-bottom: 40px;
	background-color: #00c0f0;
}

#twitter h2{
	margin-bottom: 10px;
	text-align: center;
}

#twitter h2 img{
	margin-top: -50px;
}

#twitter h3{
	margin: 0 30px 20px;
	padding: 10px 0;
	border: 3px solid #fff;
	font-size: 40px;
	text-align: center;
	color: #fff;
}

#twitter p.text{
	margin: 0 30px 50px;
	font-size: 22px;
}

#twitter p.text a{
	color: #ffff00;
}

#twitter div.notice h4{
	margin: -50px 0 10px;
	padding: 10px 0;
	font-size: 38px;
	color: #ffff00;
	background-color: #ff0000;
}

#twitter div.notice{
	position: relative;
	margin: 0 30px 20px;
	padding: 20px 30px;
	border: 6px solid #ff0000;
	background-color: #ffff00;
	text-align: center;
}

#twitter div.notice p{
	margin-bottom: 10px;
	font-size: 22px;
	font-weight: bold;
}

#twitter div.notice p.timelimit{
	margin-bottom: 0;
	font-size: 32px;
	color: #ff0000;
}

#twitter .twitter{
	margin-bottom: 10px;
	text-align: center;
}

#twitter .btn-twitter{
	width: 845px;
	margin: 0 auto 70px;
	text-align: center;
}

#twitter div.timeline-wrap{
	width: 1020px;
	margin: 0 auto;
}

#twitter .timeline{
	float: left;
	position: relative;
	width: 550px;
	margin-bottom: 40px;
	background-color: #fff;
	border: 5px solid #003399;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#twitter .timeline div.inner{
	height: 418px;
	padding: 40px 10px 0;
}

#twitter .timeline h4{
	position: absolute;
	top: -34px;
    left: -21px;
}

#twitter .timeline-wrap .text{
	float: right;
	width: 452px;
	text-align: center;
}

#twitter .guideline{
	position: relative;
	width: 990px;
	margin: 0 auto 60px;
	padding: 20px;
	box-sizing: border-box;
	background-color: #fff;
}

#twitter .guideline .closed{
	position: absolute;
	top: 126px;
	width: 952px;
	height: 97px;
	background-image: url(../img/global/works/guideline-closed.png);
}

#twitter .guideline h4{
	border-bottom: 1px solid #000;
	text-align: center;
	font-size: 26px;
}

#twitter .guideline dl{
	padding: 10px 0;
	border-bottom: 1px solid #d9d9d9;
}

#twitter .guideline dl dt{
	float: left;
	width: 135px;
	font-size: 16px;
	font-weight: bold;
}

#twitter .guideline dl dd{
	float: left;
	width: 815px;
	font-size: 16px;
	font-weight: bold;
}

#twitter .guideline dl dd span{
	color: #ff0000;
}

#twitter .guideline dl dd h5{
	cursor: pointer;
	margin-bottom: 10px;
	padding: 2px 5px;
	border: 1px solid #000;
	font-size: 14px;
	color: #ff0000;
}

#twitter .guideline dl dd ul{
	margin-bottom: 20px;
}

#twitter .guideline dl dd ul li{
	font-size: 14px;
	font-weight: normal;
}

#twitter .result h4{
	margin-bottom: 20px;
	text-align: center;
}

#twitter .result .catch{
	margin-bottom: 20px;
	text-align: center;
}

#twitter .result .comment{
	width: 1110px;
	margin: 0 auto;
}

#twitter .result .comment .head{
	height: 20px;
	background-image: url(../img/global/works/twitter-fukidashi-top.png);
	background-repeat: repeat-y;
}

#twitter .result .comment .inner{
	padding: 10px 40px;
	background-image: url(../img/global/works/twitter-fukidashi-repeat.png);
	background-repeat: repeat-y;
}

#twitter .result .comment .inner p{
	text-align: left;
	font-size: 24px;
	color: #ff3e85;
}

#twitter .result .comment .inner p.name{
	text-align: right;
	font-size: 18px;
	color: #143e85;
}

#twitter .result .comment .foot{
	height: 33px;
	background-image: url(../img/global/works/twitter-fukidashi-bottom.png);
	background-repeat: repeat-y;
}

#twitter .result .notice{
	font-size: 16px;
	color: #fff;
	text-align: center;
}

/*-----------------------------------------------
 interview
-----------------------------------------------*/

#interview{
	margin-bottom: 20px;
	background-color: #fff;
}

#interview h2{
	margin-bottom: 12px;
	padding-left: 90px;
	background-color: #ae0000;
	background-image: url(../img/global/works/interview-icon.png);
	background-repeat: no-repeat;
	background-position: 12px bottom;
	font-size: 30px;
	line-height: 2;
	color: #ffff00;
}

#interview .inner{
	border: 2px solid #ae0000;
}

#interview .inner h3{
	border-bottom: 9px solid #ae0000;
	font-size: 60px;
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", “メイリオ”, Meiryo, serif;
	text-align: center;
}

#interview .inner .inside{
	padding: 20px;
}

#interview .inner .name{
	display: inline-block;
	margin-right: 20px;
	font-size: 60px;
	font-weight: bold;
}

#interview .inner .title{
	display: inline-block;
	font-size: 30px;
	font-weight: bold;
}

#interview .inner .profile-wrap{
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 3px solid #ae0000;
}

#interview .inner .profile{
	float: left;
	width: 140px;
	padding: 15px 0;
	border: 2px solid #ae0000;
	box-sizing: border-box;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	color: #ae0000;
}

#interview .inner .text{
	float: right;
	width: 1006px;
}

#interview .inner .text p{
	font-size: 18px;
}

#interview .inner p.q::before{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
	border-radius: 30px;
	background-image: url(../img/global/works/interview-q.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #ae0000;
	text-align: center;
}

#interview .inner p.q{
	position: relative;
	height: 60px;
	margin-bottom: 10px;
	padding-left: 70px;
	font-size: 24px;
	font-weight: bold;
	line-height: 70px;
	color: #ae0000;
}

#interview .inner p.a{
	margin-bottom: 30px;
	font-size: 18px;
}

#interview .message{
	padding: 20px;
	background-color: #ae0000;
}

#interview .message p.message-title{
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom: 2px solid #fff;
	font-size: 28px;
	font-weight: bold;
	color: #ffff00;
}

#interview .message p{
	font-size: 18px;
	color: #fff;
}

/*-----------------------------------------------
 books
-----------------------------------------------*/

#books{
	padding: 30px 0;
	background-color: #ae0000;
}

#books h2{
	margin-bottom: 30px;
	padding: 10px 0;
	background-color: #ff0000;
	font-size: 36px;
	text-align: center;
	color: #ffff00;
}

#books ul.bookList{
	margin: 0 32px;
	padding: 40px 0;
	background-color: #fff;
}

#books ul.bookList > li{
	position: relative;
	margin-bottom: 20px;
}

#books ul.bookList > li:last-child{
	margin-bottom: 0;
}

#books ul.bookList > li figure{
	width: 780px;
	margin: 0 auto;
}

#books ul.bookList > li figure .dokidoki{
    position: absolute;
    top: -62px;
    left: 740px;
}

#books ul.bookList > li figure .cover{
	float: left;
	width: 210px;
	margin-right: 30px;
	line-height: 0;
}

#books ul.bookList > li figure .cover img{
	width: 100%;
}

#books ul.bookList > li figure .detail{
	float: left;
	width: 540px;
}

#books ul.bookList > li figure .detail p.release{
	margin-bottom: 10px;
	font-size: 20px;
	font-weight: bold;
}

#books ul.bookList > li figure .detail p.logo{
}

#books ul.bookList > li figure .detail figcaption{
	margin-bottom: 10px;
	font-size: 48px;
	font-weight: bold;
	line-height: 1;
}

#books ul.bookList > li figure .detail p.author{
	margin-bottom: 20px;
	font-size: 16px;
}

#books ul.bookList > li figure .detail ul {
	font-size: 0;
}

#books ul.bookList > li figure .detail ul li{
	display: inline-block;
	margin-right: 5px;
}