@charset "utf-8";

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

#keyvisual{
	padding-bottom: 10px;
}

#keyvisual .image{
	margin-bottom: -50vh;
}

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

#keyvisual .dokidoki{
	position: relative;
	margin-bottom: -20px;
}

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

#keyvisual h1 img{
	width: 100%;
}

#keyvisual .detail{
	position: relative;
	padding: 10px;
}

#keyvisual .cover{
	float: left;
	width: 28%;
	box-sizing: border-box;
}

#keyvisual .cover img{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #ff0000;
    box-shadow: 0px 2px 12px 0px #000;
}

#keyvisual ul.linkList{
	float: right;
	width: 69%;
	font-size: 0;
}

#keyvisual ul.linkList li{
	display: inline-block;
	position: relative;
}

#keyvisual ul.linkList li span.up{
	position: absolute;
	top: -30px;
	right: -20px;
	width: 68px;
	height: 71px;
	background-image: url(/special/24/sp/assets/img/konosora/icon-up.png);
	background-size: 68px 71px;
}

#keyvisual ul.linkList li span.up2{
	display: block;
	position: absolute;
	top: -10px;
	right: -15px;
	width: 40px;
}

#keyvisual ul.linkList li:nth-child(1){
	width: 49%;
	margin: 0 2% 5px 0;
}

#keyvisual ul.linkList li:nth-child(2){
	width: 49%;
	margin-bottom: 5px;
}

#keyvisual ul.linkList li img{
	width: 100%;
}

#keyvisual ul.bnrList{
	margin: 0 10px 10px;
	font-size: 0;
	text-align: center;
}

#keyvisual ul.bnrList li{
}

#keyvisual ul.bnrList li img{
	width: 100%;
}


#keyvisual .news{
	position: relative;
	z-index: 1;
	height: 90px;
	margin: 0 10px;
	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: 14px;
	font-weight: bold;
}

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

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

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

#story h2{
	line-height: 0;
}

#story h2 img{
	width: 100%;
}

#story p {
	line-height: 0;
}

#story p img{
	width: 100%;
}

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

#character h2{
	line-height: 0;
}

#character h2 img{
	width: 100%;
}

#character div {
	line-height: 0;
}

#character div img{
	width: 100%;
}

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

#comment{
	position: relative;
	z-index: 1;
	background-color: #ae0000;
}

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

#comment h2 img{
	width: 100%;
}

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

#comment ul.commentList{
	padding: 0 10px 20px;
}

#comment ul.commentList li.new{
	background-image: url(/special/24/sp/assets/img/tata/icon-new.png);
	background-repeat: no-repeat;
	background-size: 32px;
}

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

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

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

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

#twitter{
	padding: 0 0 20px;
	background-color: #00c0f0;
}

#twitter h2{
	margin-bottom: 10px;
	line-height: 0;
}

#twitter h2 img{
	width: 100%;
}

#twitter h3{
	margin: 0 10px 10px;
	padding: 10px 0;
	border: 3px solid #fff;
	text-align: center;
	font-size: 24px;
	line-height: 1.4;
	color: #fff;
}

#twitter p.text{
	margin: 0 10px 20px;
	font-size: 18px;
}

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

#twitter div.twitter{
	line-height: 0;
}

#twitter div.twitter img{
	width: 100%;
}

#twitter div.btn-twitter{
	margin: 0 10px 10px;
	line-height: 0;
}

#twitter div.btn-twitter img{
	width: 100%;
}

#twitter h4{
	position: relative;
	margin: 0 5px -10px;
	line-height: 0;
}

#twitter h4 img{
	width: 100%;
}

#twitter div.timeline{
	margin: 0 10px 10px;
	border: 3px solid #003399;
	background-color: #fff;
}

#twitter div.bakudan{
	margin-bottom: 20px;
}

#twitter div.bakudan img{
	width: 100%;
}

#twitter div.notice{
	position: relative;
	margin: 0 10px 20px;
	padding: 0 0 10px 0;
	border: 4px solid #ff0000;
	background-color: #ffff00;
}

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

#twitter div.notice p.schedule{
	font-size: 18px;
	font-weight: bold;
	color: #ff0000;
}

#twitter div.notice p{
	margin: 0 10px;
}

#twitter div.notice p span,
#twitter div.notice p a{
	color: #ff0000;
}

#twitter div.notice h3{
	margin: 0 0 10px;
	padding: 10px 5px;
	border: none;
	background-color: #ff0000;
	font-size: 18px;
	line-height: 1.2;
	text-align: left;
	color: #ffff00;
}

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

#twitter .guideline div.closed{
	position: absolute;
	z-index: 10;
	top: 100px;
	left: 0;
	width: 100%;
	background-color: rgba(255,142,0,0.86);
}

#twitter .guideline div.closed p{
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}

#twitter .guideline h4{
	margin: 0;
	border-bottom: 1px solid #000;
	text-align: center;
	font-size: 18px;
	line-height: 1.5;
}

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

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

#twitter .guideline dl dd{
	float: left;
	width: 100%;
	margin-left: -100px;
	padding-left: 100px;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: bold;
}

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

#twitter .guideline dl dd h5{
	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: 0 0 20px 0;
}

#twitter .result .catch img{
	width: 100%;
}

#twitterer .result .comment{
	margin: 0 auto;
}

#twitter .result .comment .head,
#twitter .result .comment .foot{
	font-size: 0;
}

#twitter .result .comment .head img,
#twitter .result .comment .foot img{
	width: 100%;
}

#twitter .result .comment .inner{
	padding: 10px 20px 0;
	background-image: url(/special/24/sp/assets/img/global/works/twitter-fukidashi-repeat.png);
	background-size: 100% auto;
	background-repeat: repeat-y;
}

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

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

#twitter .result .notice{
	margin: 0 10px;
	font-size: 14px;
	color: #fff;
	text-align: left;
}

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

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

#interview h2{
	margin-bottom: 10px;
	padding-left: 50px;
	background-color: #ae0000;
	background-image: url(/special/24/sp/assets/img/global/works/interview-icon.png);
	background-size: 31px 26px;
	background-repeat: no-repeat;
	background-position: 12px bottom;
	font-size: 18px;
	line-height: 2;
	color: #ffff00;
}

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

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

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

#interview .inner .info{
	margin-bottom: 15px;
}

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

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

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

#interview .inner .profile{
	float: left;
	width: 100px;
	padding: 5px 0;
	margin-right: 10px;
	border: 2px solid #ae0000;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	color: #ae0000;
}

#interview .inner .text{
}

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

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

#interview .inner p.q{
	position: relative;
	min-height: 30px;
	margin-bottom: 10px;
	padding-left: 35px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	color: #ae0000;
}

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

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

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

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


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

#books{
	position: relative;
	padding: 20px 0;
	background-color: #ae0000;
}

#books .dokidoki{
	position: absolute;
	width: 62px;
	height: 62px;
	left: 0;
	bottom: 0;
}

#books .dokidoki img{
	width: 100%;
}

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

#books ul.bookList{
	margin: 0 10px;
}

#books ul.bookList > li{
	position: relative;
	padding: 10px;
	background-color: #fff;
}

#books ul.bookList figure{
	margin: 0;
}

#books ul.bookList figure .cover{
	float: left;
	width: 30%;
	line-height: 0;
}

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

#books ul.bookList figure .detail{
	position: relative;
	float: right;
	width: 68%;
}

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

#books ul.bookList figure .detail p.logo{
	width: 83px;
	line-height: 0;
}

#books ul.bookList figure .detail p.logo img{
	width: 100%;
}

#books ul.bookList figure .detail figcaption{
	font-size: 24px;
	font-weight: bold;
}

#books ul.bookList figure .detail p.author{
	margin-bottom: 10px;
}

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

#books ul.bookList figure .detail ul.linkList li{
	float: left;
}

#books ul.bookList figure .detail ul.linkList li{
	float: left;
}

#books ul.bookList figure .detail ul.linkList li:first-child{
	width: 49%;
	padding-right: 1%;
}

#books ul.bookList figure .detail ul.linkList li:last-child{
	width: 49%;
	padding-left: 1%;
}

#books ul.bookList figure .detail ul.linkList li img{
	width: 100%;
}