@charset "UTF-8";
:root{
	--body : #000;
	--link : #000;
}
@font-face{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;
    src: url('/global/en/animation/assets/vendor/slick/fonts/slick.eot');
    src: url('/global/en/animation/assets/vendor/slick/fonts/slick.eot?#iefix') format('embedded-opentype'), url('/global/en/animation/assets/vendor/slick/fonts/slick.woff') format('woff'), url('/global/en/animation/assets/vendor/slick/fonts/slick.ttf') format('truetype'), url('/global/en/animation/assets/vendor/slick/fonts/slick.svg#slick') format('svg');
}
/*--------------------------------------------
HEADER
---------------------------------------------*/
@media print,screen and (min-width: 751px){
	#header .wrap{
		-ms-grid-columns : 110px 1fr 75px 127px;
		grid-template-columns : 110px 1fr 75px 127px;
	}
	#header .sns{
		-ms-grid-column : 3;
		-ms-grid-column-span : 1;
		    grid-column : 3/4;
		padding-right : 17px;
	}
	#header #nav{
		-ms-grid-column : 2;
		-ms-grid-column-span : 2;
		    grid-column : 2/4;
		padding-right : 17px;
	}
}
/*--------------------------------------------
MAIN
---------------------------------------------*/
@media print,screen and (min-width: 960px){
	#main .wrap{
		padding-left : 55px;
		padding-right : 55px;
	}
}
/*--------------------------------------------
MAIN VISUAL
---------------------------------------------*/
#mv{
	overflow : hidden;
	background-repeat : no-repeat;
}
#mv .wrap{
	position : relative;
}
#mv h1{
	position : absolute;
}
#mv .box > a{
	display : block;
	position : absolute;
}
/* slick dots */
#mv .slick-dots{
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    text-align: center;
    width: 100%;
}
#mv .slick-dots li{
    cursor: pointer;
    display: inline-block;
    padding: 0;
    position: relative;
}
#mv .slick-dots li button{
    background: transparent;
    border: 0;
    color: transparent;
    cursor: pointer;
    display: block;
    font-size: 0;
    line-height: 0;
    outline: none;
}
#mv .slick-dots li button:hover,
#mv .slick-dots li button:focus{
    outline: none;
}
#mv .slick-dots li button:hover:before,
#mv .slick-dots li button:focus:before{
    opacity: 1;
}
#mv .slick-dots li button:before{
    color: black;
    content: '•';
    font-family: 'slick';
    left: 0;
    opacity: .25;
    position: absolute;
    text-align: center;
    top: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#mv .slick-dots li.slick-active button:before{
    color: black;
    opacity: .75;
}
@media screen and (max-width: 750px){
	#mv{
		background-image : url("../images/home/bg_sp.png");
		background-position : center top;
		background-size : 100% auto;
	}
	#mv .wrap{
		padding-bottom: calc( 60 * 100vw / 750 );
		padding-top : calc( 688 * 100vw / 750 );
		padding-left : 0;
		padding-right : 0;
	}
	#mv h1{
		left : calc( -18 * 100% / 750 );
		top : calc( 162 * 100vw / 750 );
	}
	#mv h1 img{
		height : calc( 350 * 100vw / 750 );
	}
	#mv #slider{
		font-size : 0;
	}
	#mv #slider li img{
		width : 100%;
		height : auto;
	}
	#mv .box > a{
		top : calc( 20 * 100vw / 750 );
		right : calc( 20 * 100% / 750 );
	}
	#mv .box > a img{
		height : calc( 76 * 100vw / 750 );
	}
	/* slick dots */
	#mv .slick-dots{
	    bottom : calc( -54 * 100vw / 750 );
	}
	#mv .slick-dots li{
	    height : calc( 40 * 100vw / 750 );
	    margin : 0 calc( 10 * 100vw / 750 );
	    width : calc( 40 * 100vw / 750 );
	}		
	#mv .slick-dots li button{
	    height : calc( 40 * 100vw / 750 );
	    padding : calc( 10 * 100vw / 750 );
	    width : calc( 40 * 100vw / 750 );
	}
	#mv .slick-dots li button:before{
	    font-size : 2.8rem;
	    height : calc( 40 * 100vw / 750 );
	    line-height : calc( 40 * 100vw / 750 );
	    width : calc( 40 * 100vw / 750 );
	}
}
@media print,screen and (min-width: 751px){
	#mv{
		background-image : url("../images/home/bg_pc.png");
		background-size : cover;
		background-position : center;
	}
	#mv .wrap{
		padding-top : 463px;
		height : 608px;
		padding-left : 55px;
		padding-right : 55px;
	}
	#mv h1{
		position : absolute;
		top : 22px;
		left : -8px;
	}
	#mv h1 img{
		height : 528px;
	}
	#mv .box > a{
		flex-shrink : 0;
		right : 55px;
		top : 463px;
	}
	#mv .box > a img{
		height : 88px;
	}
	#mv #slider{
		width : 698px;
	}
	#mv li a img{
		height : 88px;
		display : block;
	}
	/* slick arrows */
	#mv .slide-arrow{
		cursor : pointer;
		position : absolute;
		top : 50%;
		transform : translateY(-50%);
		z-index : 5;		
	}
	#mv .prev-arrow{
		transform : translateY(-50%) rotate(-180deg); 
	}
	#mv .slide-arrow{
		height : 20px;
	}
	#mv .prev-arrow{
		left : -26px;
	}
	#mv .next-arrow{
		right : -26px;
	}
	/* slick dots */
	#mv .slick-dots{
	    bottom : -30px;
	}
	#mv .slick-dots li{
	    height : 20px;
	    margin : 0 5px;
	    width : 20px;
	}
	#mv .slick-dots li button{
	    height : 20px;
	    padding : 5px;
	    width : 20px;
	}
	#mv .slick-dots li button:before{
	    font-size : 13px;
	    height : 20px;
	    line-height : 20px;
	    width : 20px;
	}
}
/*--------------------------------------------
CURATION
---------------------------------------------*/
#curation a{
	background-color : #fff;
}
#curation h3{
	font-weight : 500;
	color : #59b260;
}
#curation h3 span{
	display : block;
}
#curation h3 span:nth-of-type(1){
	letter-spacing : .1em;
}
#curation h3 + p{
	letter-spacing : .1em;
}
#curation a > p{
	letter-spacing : .08em;
}
#curation a > p > span{
	display : block;
	line-height: 2;
	text-align : right;
}
@media screen and (max-width: 750px){
	#curation .wrap{
		padding-top : calc( 50 * 100vw / 750 );
		padding-bottom : calc( 42 * 100vw / 750 );
	}
	#curation a{
		display : block;
		margin-top : calc( 45 * 100vw / 750 );
		padding-top : calc( 40 * 100vw / 750 );
		padding-left : calc( 28 * 100% / 694 );
		padding-right : calc( 28 * 100% / 694 );
		padding-bottom : calc( ( 72 - 6 ) * 100vw / 750 );
	}
	#curation a:after{
		bottom : calc( 46 * 100vw / 750 );
	}
	#curation h3 span{
		display : block;
	}
	#curation h3 span:nth-of-type(1){
		font-size : 5.7rem;
	}
	#curation h3 span:nth-of-type(2){
		font-size : 3.4rem;
		letter-spacing : .1em;
		margin-top : calc( 3 * 100vw / 750 );
	}
	#curation h3 + p{
		font-size : 2.8rem;
		line-height : 1.36;
		margin-top : calc( ( 40 - 5 ) * 100vw / 750 );
	}
	#curation a > p{
		margin-top : calc( ( 88 - 5 - 6 ) * 100vw / 750 );
		font-size : 2.8rem;
		line-height : 1.43;
	}
}
@media print,screen and (min-width: 751px){
	#curation .wrap{
		padding-top : 30px;
		padding-bottom : 28px;
	}
	#curation a{
		display : flex;
		align-items : flex-start;
		justify-content : space-between;
		margin-top : 14px;
		padding-top : calc( 24px - 3px );
		padding-left : 80px;
		padding-right : 50px;
		padding-bottom : calc( 40px - 3px );
	}
	#curation a:after{
		bottom : 20px;
	}
	#curation h3{
		margin-top : 3px;
	}
	#curation h3 span:nth-of-type(1){
		font-size : 3.9rem;
	}
	#curation h3 span:nth-of-type(2){
		letter-spacing : .12em;
		font-size : 2.2rem;
		margin-top : 1px;
	}
	#curation h3 + p{
		font-size : 1.4rem;
		line-height : 1.43;
		width : 362px;
		margin-top : calc( 18px - 3px );
	}
	#curation a > p{
		font-size : 1.4rem;
		line-height : 1.43;
		width : 411px;
	}
}
/*--------------------------------------------
NEWS
---------------------------------------------*/
#news time{
	font-weight : 500;
	letter-spacing : .18em;
	color : #e98200;
}
#news h3{
	letter-spacing : .08em;
}
@media screen and (max-width: 750px){
	#news .wrap{
		padding-top : calc( 50 * 100vw / 750 );
		padding-bottom : calc( ( 116 - 6 ) * 100vw / 750 );
	}
	#news ul{
		margin-top : calc( 42 * 100vw / 750 );
		padding-left : calc( 30 * 100% / 694 );
		padding-right : calc( 30 * 100% / 694 );
	}
	#news li + li{
		margin-top : calc( ( 42 - 12 ) * 100vw / 750 );
	}
	#news time{
		font-size : calc( 2.4rem + .4rem );
	}
	#news h3{
		margin-top : calc( ( 18 - 6 ) * 100vw / 750 );
		font-size : calc( 2.4rem + .4rem );
		line-height : 1.5;
	}
}
@media print,screen and (min-width: 751px){
	#news .wrap{
		padding-top : 30px;
		padding-bottom : calc( 54px - 3.75px );
	}
	#news ul{
		margin-top : calc( 32px - 3.75px );
		padding-left : 80px;
		padding-right : 50px;
	}
	#news li + li{
		margin-top : calc( 32px - 7.5px );
	}
	#news li a{
		display : flex;
		align-items : flex-start;
	}
	#news time{
		font-size : calc( 1.4rem + .2rem );
		flex-shrink : 0;
		width : 132px;
	}
	#news h3{
		margin-top : calc( 1px - .25em );
		font-size : calc( 1.3rem + .2rem );
		line-height : 1.5;
	}
}
#fssi .list > li{
	counter-increment : no;
}
#fssi #studios{
	background-color : rgba(142,187,191,.85);
}
#fssi #interviews{
	background-color : rgba(230,145,62,.8);
}
#fssi #qa{
	background-color : rgba(205,183,23,.75);
}
#fssi h2{
	letter-spacing : .1em;
	font-weight : 500;
	text-align : center;
}
#fssi .list > li > p{
	letter-spacing : .08em;
	text-align: center;
}
#fssi ul ul {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
}
#fssi .link01{
	background-color : #fff;
}
#fssi .list-child01 h3{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
}
#fssi .list-child01 .link01{
	display : block;
	width : 100%;
	height : 100%;
}
#fssi .list-child01 p{
	letter-spacing : .08em;
}
#fssi .list-child02 .link01{
	display : flex;
	align-items : flex-start;
}
#fssi .list-child02 picture{
	flex-shrink : 0;
}
#fssi .list-child02 h3 span{
	display : block;
	letter-spacing : .12em;
}
#fssi .list-child02 h3 span:nth-of-type(1){
	color : #808080;
}
#fssi .list-child02 p{
	letter-spacing : .08em;
}
#fssi .list-child03 .link01{
	align-items: center;
	display: flex;
	flex-direction: column-reverse;
	height: 100%;
	justify-content: flex-end;
	text-align: center;
}
#fssi .list-child03 h3 {
	letter-spacing: .02em;
}
@media screen and (max-width: 750px){
	#fssi{
		padding-top : calc( 50 * 100vw / 750 );
		padding-bottom : calc( 44 * 100vw / 750 );
	}
	#fssi .list > li{
		padding-top : calc( 62 * 100vw / 750 );
		padding-left : calc( 28 * 100% / 694 );
		padding-right : calc( 28 * 100% / 694 );
		padding-bottom : calc( 46 * 100vw / 750 );
	}
	#fssi .list > li + li{
		margin-top : calc( 58 * 100vw / 750 );
	}
	#fssi .list > li > p{
		font-size : calc( 2.4rem + .4rem );
		line-height : 1.5;
		margin-top : calc( ( 50 - 6 ) * 100vw / 750 );
	}
	#fssi h2{
		font-size : calc( 3.2rem + .4rem );
	}
	#fssi h2:after{
		margin-top : calc( 28 * 100vw / 750 );
	}
	#fssi ul ul{
		margin-top : calc( ( 60 - 6 ) * 100vw / 750 );
	}
	#fssi .list-child01 li{
		width : calc( 314 * 100% / 638 );
		height : inherit!important;
	}
	#fssi .list-child01 li:nth-child(n+3){
		margin-top : calc( 45 * 100vw / 750 );
	}
	#fssi .list-child01 .link01{
		padding-top : calc( 16 * 100vw / 750 );
		padding-bottom : calc( ( 62 - 4.5 ) * 100vw / 750 );
	}
	#fssi .list-child01 .link01:after{
		bottom : calc( 26 * 100vw / 750 );
		right : calc( 30 * 100% / 312 );
	}
	#fssi .list-child01 h3{
		height : calc( 74 * 100vw / 750 );
	}
	#fssi .list-child01 li:nth-child(1) h3 img{
		height : calc( 48 * 100vw / 750 );
	}
	#fssi .list-child01 li:nth-child(2) h3 img{
		height : calc( 42 * 100vw / 750 );
		margin-top : calc( 8 * 100vw / 750 );
	}
	#fssi .list-child01 li:nth-child(3) h3 img{
		height : calc( 74 * 100vw / 750 );
	}
	#fssi .list-child01 li:nth-child(4) h3 img{
		height : calc( 46 * 100vw / 750 );
	}
	#fssi .list-child01 p{
		font-size : calc( 2.3rem + .4rem );
		line-height : 1.39;
		padding-left : calc( 12 * 100% / 314 );
		padding-right : calc( 12 * 100% / 314 );
		margin-top : calc( ( 12 - 4.5 ) * 100vw / 750 );
	}
	#fssi .list-child02 li{
		height : inherit!important;
	}
	#fssi .list-child02 li + li{
		margin-top : calc( 20 * 100vw / 750 );
	}
	#fssi .list-child02 .link01{
		padding-top : calc( 28 * 100vw / 750 );
		padding-left : calc( 34 * 100% / 694 );
		padding-right : calc( 34 * 100% / 694 );
		padding-bottom : calc( 60 * 100vw / 750 );
	}
	#fssi .list-child02 .link01:after{
		bottom : calc( 28 * 100vw / 750 );
		right : calc( 22 * 100vw / 750 );
	}
	#fssi .list-child02 picture img{
		width : 100%;
		height : auto;
	}
	#fssi .list-child02 li:nth-child(1) picture{
		padding-top : calc( 3 * 100vw / 750 );
		width : calc( 142 * 100vw / 750 );
		margin-right : calc( 42 * 100vw / 750 );
	}
	#fssi .list-child02 li:nth-child(2) img{
		width : calc( 141 * 100vw / 750 );
		margin-right : calc( 43 * 100vw / 750 );
	}
	#fssi .list-child02 h3 span:nth-of-type(1){
		font-size : calc( 2.4rem + .4rem );
	}
	#fssi .list-child02 h3 span:nth-of-type(2){
		font-size : calc( 2.8rem + .4rem );
		margin-top : calc( 13 * 100vw / 750 );
	}
	#fssi .list-child02 p{
		font-size : calc( 2.4rem + .4rem );
		line-height : 1.4;
		margin-top : calc( ( 20 - 4.8 ) * 100vw / 750 );
	}
	#fssi .list-child03 li {
		width: calc( 314 * 100% / 638 );
	}
	#fssi .list-child03 li:nth-child(n+3) {
		margin-top: calc( 28 * 100vw / 750 );
	}
	#fssi .list-child03 .link01 {
	    padding-bottom: calc( ( 62 - 4.5 ) * 100vw / 750 );
	    padding-left: calc( 34 * 100% / 694 );
	    padding-right: calc( 34 * 100% / 694 );
		padding-top: calc( 28 * 100vw / 750 );
	}
	#fssi .list-child03 .link01:after {
		bottom: calc( 26 * 100vw / 750 );
		right: calc( 30 * 100% / 312 );
	}
	#fssi .list-child03 h3 {
		font-size: 3rem;
		margin-top: calc( 18 * 100vw / 750 );
	}
	#fssi .list-child03 picture img {
		width: 100%;
		height: auto;
	}
}
@media print,screen and (min-width: 751px){
	#fssi{
		padding-top : 30px;
		padding-bottom : 28px;
	}
	#fssi .list > li{
		padding-top : 38px;
		padding-left : 24px;
		padding-right : 24px;
		padding-bottom : 36px;
	}
	#fssi .list > li:not(:first-child){
		margin-top: 20px;
	}
	#fssi .list > li > p{
		font-size : 1.4rem;
		line-height : 1.29;
		margin-top : calc( 16px - 2px );
	}
	#fssi h2{
		font-size : 2.2rem;
	}
	#fssi h2:after{
		margin-top : 14px;
	}
	#fssi ul ul{
		margin-top : calc( 16px - 2px );
	}
	#fssi .list-child01 li{
		width: 220px;
	}
	#fssi .list-child01 .link01{
		padding-top : 11px;
		padding-bottom : calc( 44px - 2.5px );
		height : 100%;
	}
	#fssi .list-child01 .link01:after{
		right : 18px;
		bottom : 20px;
	}
	#fssi .list-child01 h3{
		height : 46px;
	}
	#fssi .list-child01 li:nth-child(1) h3 img{
		height : 31px;
	}
	#fssi .list-child01 li:nth-child(2) h3 img{
		margin-top : 6px;
		height : 26px;
	}
	#fssi .list-child01 li:nth-child(3) h3 img{
		height : 46px;
	}
	#fssi .list-child01 li:nth-child(4) h3 img{
		height : 29px;
	}
	#fssi .list-child01 p{
		font-size : calc( 1.2rem + .2rem );
		line-height : 1.42;
		padding-left : 14px;
		padding-right : 14px;
		margin-top : calc( 14px - 2.5px );
	}
	#fssi .list-child02 li{
		width: 454px;
	}
	#fssi .list-child02 .link01{
		padding-top : 20px;
		padding-left : 24px;
		padding-right : 24px;
		padding-bottom: calc( 44px - 2.5px );
		height : 100%;
	}
	#fssi .list-child02 .link01:after{
		right : 18px;
		bottom : 20px;
	}
	#fssi .list-child02 .link01 > div{
		flex-grow : 1;
	}
	#fssi .list-child02 picture{
		margin-right : 18px;
	}
	#fssi .list-child02 picture img{
		height : 120px;
	}
	#fssi .list-child02 h3 span:nth-of-type(1){
		font-size : calc( 1.3rem + .2rem );
	}
	#fssi .list-child02 h3 span:nth-of-type(2){
		font-size : calc( 1.4rem + .2rem );
		margin-top : 12px;
	}
	#fssi .list-child02 p{
		font-size : calc( 1.2rem + .2rem );
		line-height : 1.42;
		margin-top : calc( 13px - 2.5px );
	}
	#fssi .list-child03 li {
		width: 173px;
	}
	#fssi .list-child03 .link01 {
		padding-top: 11px;
		padding-bottom: calc( 44px - 2.5px );
	}
	#fssi .list-child03 .link01:after {
		bottom: 20px;
		right: 18px;
	}
	#fssi .list-child03 h3 {
		font-size: 1.6rem;
    	margin-top: 12px;
	}
	#fssi .list-child03 picture img {
    	height: 96px;
	}
}
/*--------------------------------------------
SCREENINGS
---------------------------------------------*/
#screenings h3{
	font-weight : 500;
	color : #a57292;
	letter-spacing : .1em;
}
#screenings picture{
	flex-shrink : 0;
}
#screenings .link01 p{
	letter-spacing : .04em;
}
@media screen and (max-width: 750px){
	#screenings .wrap{
		padding-top : calc( 50 * 100vw / 750 );
		padding-bottom : calc( ( 98 + 50 ) * 100vw / 750 );
		padding-left : calc( 55 * 100% / 750 );
		padding-right : calc( 55 * 100% / 750 );
	}
	#screenings .lede01{
		margin-top : calc( ( 25 - 5.6 ) * 100vw / 750 );
	}
	#screenings ul{
		margin-top : calc( ( 62 - 5.4 - 4 ) * 100vw / 750 );
	}
	#screenings li + li{
		margin-top : calc( ( 136 - 4 ) * 100vw / 750 );
	}
	#screenings h3{
		font-size : 3.4rem;
		line-height : 1.25;
		margin-bottom : calc( ( 45 - 4 ) * 100vw / 750 );
	}
	#screenings .link01{
		display : block;
		padding-bottom : calc( ( 70 - 7 ) * 100vw / 750 );
	}
	#screenings .link01:after{
		right : 0;
		bottom : 0;
	}
	#screenings .link01 > div{
		margin-top : auto;
	}
	#screenings picture img{
		width : 100%;
		height : auto;
	}
	#screenings .link01 p{
		margin-top : calc( ( 54 - 7 ) * 100vw / 750 );
		flex-grow : 1;
		font-size : 2.8rem;
		line-height : 1.5;
	}
}
@media print,screen and (min-width: 751px){
	#screenings .wrap{
		padding-top : 30px;
		padding-bottom : calc( 35px + 30px );
	}
	#screenings .lede01{
		margin-top : calc( 16px - 3.5px );
	}
	#screenings ul{
		display : flex;
		justify-content : space-between;
		margin-top : calc( 44px - 1px );
		padding-left : 22px;
		padding-right : 22px;
	}
	#screenings li{
		width : 448px;
	}
	#screenings h3{
		font-size : 1.8rem;
		line-height : 1.11;
		margin-bottom : calc( 18px - 1px );
	}
	#screenings h3 span{
		font-size : 1.6rem;
	}
	#screenings .link01{
		height : 100%;
		display : block;
	}
	#screenings .link01:after{
		right : 16px;
		bottom : 0;
	}
	#screenings .link01 > div{
		margin-top : auto;
		display : flex;
		align-items : flex-start;
	}
	#screenings picture{
		width : 180px;
		margin-right : 18px;
	}
	#screenings picture img{
		width : 100%;
		height : auto;
	}
	#screenings .link01 p{
		margin-top : -2px;
		width : 250px;
		font-size : calc( 1.1rem + .2rem );
		line-height : 1.45;
	}
}
/*--------------------------------------------
creators
---------------------------------------------*/
#creators .link01{
	color : #fff;
	display : block;
}
@media screen and (max-width: 750px){
	#creators{
		margin-bottom : calc( 62 * 100vw / 750 );
	}
	#creators .link01{
		padding-left : calc( 26 * 100% / 698 );
		padding-right : calc( 26 * 100% / 698 );
		padding-top : calc( 44 * 100vw / 750 );
		padding-bottom : calc( ( 1328 - 6 ) * 100vw / 750 );
		background-color : #eb615a;
		background-image : url("../images/home/bg_creator_sp.png");
		background-position : center calc( 360 * 100vw / 750 );
		background-size : calc( 634 * 100% / 698 ) auto;
		background-repeat : no-repeat;
	}
	#creators .link01:after{
		bottom : calc( 74 * 100vw / 750 );
	}
	#creators .lede01{
		margin-top : calc( ( 56 - 6 ) * 100vw / 750 );
		line-height : 1.5;
	}
}
@media print,screen and (min-width: 751px){
	#creators .wrap{
		background-color : #eb615a;
		background-image : url("../images/home/bg_creators01.png") , url("../images/home/bg_creators02.png");
		background-repeat : no-repeat;
		background-size : 187px 162px , 187px 161px;
		background-position : left 24px top 36px , right 24px top 36px;
	}
	#creators .link01{
		padding-top : 36px;
		padding-bottom : calc( 64px - 4px );
	}
	#creators .link01:after{
		bottom : 32px;
	}
	#creators .lede01{
		margin-top : calc( 14px - 4px );
		line-height : 1.62;
		margin-left : auto;
		margin-right : auto;
		width : 488px;
	}
}