@charset "UTF-8";
#Header + #Header {
		display: none;
}

#Footer + #Footer {
		display: none;
}

#Neko2024 {
		font-family: "Zen Maru Gothic", "Noto Sans JP", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
		background: #FFF;
		color: #003459;
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 8.3333333333%;
		text-align: center;
		/*-------------------------------------------> Story */
		/*-------------------------------------------> Lineup */
		/*-------------------------------------------> Detail */
		/*-------------------------------------------> Movie */
		/*-------------------------------------------> Profile */
}
#Neko2024 .inner {
		margin: 0;
		padding: 0;
}
#Neko2024 .fixBannerArea {
		position: relative;
}
#Neko2024 .fixBannerArea .fixBanner {
		position: sticky;
		z-index: 20;
		top: 140px;
		right: 0px;
		pointer-events: none;
		margin-top: -208px;
		margin-right: 20px;
}
#Neko2024 .fixBannerArea .fixBanner a {
		display: block;
		width: 224px;
		height: 188px;
		pointer-events: auto;
		margin-left: auto;
		-webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.4));
		        filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.4));
}
@media screen and (max-width: 767px) {
		#Neko2024 .fixBannerArea .fixBanner {
				top: 36.6666666667vw;
				margin-top: -25vw;
				margin-right: 3.3333333333vw;
		}
		#Neko2024 .fixBannerArea .fixBanner a {
				width: 23.3333333333vw;
				height: auto;
				margin-right: 3.3333333333vw;
		}
}
#Neko2024 .fixBannerArea .image {
		margin-top: 1.1666666667%;
}
#Neko2024 #Story {
		padding-top: 3.3333333333%;
		padding-bottom: 6.6666666667%;
}
#Neko2024 #Story .text {
		padding-top: 3.3333333333%;
		background: url(../images/nekokan2024/story_img01@2x.jpg) no-repeat center center;
		background-size: 100% auto;
		font-size: 36px;
		line-height: 1.3333333333;
		letter-spacing: 0em;
		text-align: center;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Story .text {
				font-size: 3vw;
		}
}
#Neko2024 #Story .text p + p {
		margin-top: 1.33em;
}
#Neko2024 #Lineup .list li {
		position: relative;
}
#Neko2024 #Lineup .list li .image {
		position: relative;
		z-index: 1;
}
#Neko2024 #Lineup .list li .text {
		width: 50%;
		position: absolute;
		top: 0;
		z-index: 10;
		height: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
#Neko2024 #Lineup .list li .text dl dt {
		font-size: 48px;
		line-height: 1;
		letter-spacing: 0em;
		font-weight: bold;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Lineup .list li .text dl dt {
				font-size: 4vw;
		}
}
#Neko2024 #Lineup .list li .text dl dd {
		font-size: 36px;
		line-height: 1.3333333333;
		letter-spacing: 0em;
		margin-top: 1em;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Lineup .list li .text dl dd {
				font-size: 3vw;
		}
}
#Neko2024 #Lineup .list li .text dl dd small {
		display: block;
		font-size: 70%;
		margin-top: 1em;
}
#Neko2024 #Lineup .list li:nth-child(odd) .text {
		right: 0;
}
#Neko2024 #Lineup .list li:nth-child(even) .text {
		left: 0;
}
#Neko2024 #Lineup .list li.item01 {
		margin-top: 6.1666666667%;
}
#Neko2024 #Lineup .list li.item02 {
		margin-top: 0.8333333333%;
}
#Neko2024 #Lineup .list li.item02 .text {
		width: 65%;
}
#Neko2024 #Lineup .list li.item03 {
		margin-top: 4.3333333333%;
}
#Neko2024 #Lineup .list li.item04 {
		margin-top: 11%;
}
#Neko2024 #Lineup .list li.item05 {
		margin-top: 18.3333333333%;
}
#Neko2024 #Lineup .list li.item05 .text {
		width: 55%;
}
#Neko2024 #Lineup .list li.item06 {
		margin-top: 11.8333333333%;
}
#Neko2024 #Detail {
		margin-top: 19.3333333333%;
}
#Neko2024 #Detail .text {
		font-size: 36px;
		line-height: 1.3333333333;
		letter-spacing: 0em;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Detail .text {
				font-size: 3vw;
		}
}
#Neko2024 #Detail .block {
		position: relative;
}
#Neko2024 #Detail .block .image {
		position: relative;
		z-index: 1;
}
#Neko2024 #Detail .block .text {
		position: absolute;
		z-index: 10;
		top: 0;
}
#Neko2024 #Detail .block.block01 {
		margin-top: 2.8333333333%;
}
#Neko2024 #Detail .block.block01 .text {
		left: 0;
		width: 36.6666666667%;
		padding-top: 6.6666666667%;
}
#Neko2024 #Detail .block.block02 {
		margin-top: 0.6666666667%;
}
#Neko2024 #Detail .block.block02 .text {
		right: 0;
		width: 38.3333333333%;
		padding-top: 21.6666666667%;
}
#Neko2024 #Detail .block.block04 {
		margin-top: 6.6666666667%;
}
#Neko2024 #Detail .block.block04 .text {
		left: 0;
		width: 40%;
		padding-top: 16.6666666667%;
}
#Neko2024 #Detail .block.block05 {
		margin-top: 0.3333333333%;
}
#Neko2024 #Detail .block.block05 .text {
		right: 0;
		width: 38.3333333333%;
		padding-top: 20%;
}
#Neko2024 #Detail .wide {
		margin-top: 8.8333333333%;
}
#Neko2024 #Detail .wide .text {
		margin-top: 1em;
}
#Neko2024 #Movie {
		margin-top: 6.6666666667%;
		margin-bottom: 8.3333333333%;
}
#Neko2024 #Movie .inner {
		width: 91.6666666667%;
		margin-left: auto;
		margin-right: auto;
}
#Neko2024 #Movie .frame {
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 56.25%;
}
#Neko2024 #Movie .frame iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
}
#Neko2024 #Profile {
		position: relative;
		padding-top: 5%;
		margin-bottom: 8.3333333333%;
}
#Neko2024 #Profile::before {
		content: "";
		display: block;
		width: 86%;
		height: 1px;
		background: #003459;
		position: absolute;
		top: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
}
#Neko2024 #Profile .title {
		font-size: 48px;
		line-height: 1.5;
		letter-spacing: 0em;
		font-weight: bold;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Profile .title {
				font-size: 4vw;
		}
}
#Neko2024 #Profile .image {
		margin-top: 1.6666666667%;
		margin-bottom: 5%;
}
#Neko2024 #Profile .text {
		font-size: 36px;
		line-height: 1.3333333333;
		letter-spacing: 0.1em;
		margin-bottom: 3.3333333333%;
}
@media screen and (max-width: 1200px) {
		#Neko2024 #Profile .text {
				font-size: 3vw;
		}
}
#Neko2024 #Profile .sns {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
#Neko2024 #Profile .sns li + li {
		margin-left: 5.8333333333%;
}