@charset "UTF-8";

/* -------------------------------------
	ヘッダー動画
------------------------------------- */
.header__movie{
    overflow: hidden;
    position: relative;
}
.header__movie video{
    width: 100%;
    height: 32.29vw;
    object-fit: cover;
    vertical-align: bottom;
}

/* -------------------------------------
    お知らせ
------------------------------------- */
.info-top{
    width: 98%;
    max-width: 1080px;
    background: #f1f1f1;
    padding: 1.0em;
    border: 1px solid #ccc;
    line-height: 1.6;
    margin: 2em auto 0 auto;
}
.info-top p span{
    text-align: center;
    text-decoration: underline;
    display: block;
    padding-bottom: .5em;
    font-size: 110%;
}
/* -------------------------------------
	コンテンツリンク
------------------------------------- */
.contentsLink__list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    -ms-transition: all 0.6s, -ms-transform 0.2s ease-out;
    -webkit-transition: all 0.6s, -webkit-transform 0.2s ease-out;
    transition: all 0.6s, transform 0.2s ease-out;
    margin-top: 1.6em;
}
.contentsLink__list li{
    flex-shrink: 0;
    opacity: 0;
    -ms-transition: all 0.6s, -ms-transform 0.2s ease-out;
    -webkit-transition: all 0.6s, -webkit-transform 0.2s ease-out;
    transition: all 0.6s, transform 0.2s ease-out;
}
.contentsLink__list li.reached{ opacity: 1;}
.contentsLink__list .w25{
    width: 22%;
    margin-bottom: 2.8em;
}
.contentsLink__list .w50{
    width: 48%;
    margin-bottom: 2.8em;
}

.contentsLink__list a{
    display: block;
    width: 96%;
    position: relative;
}
.contentsLink__list .w50 a{
    width: 98%;
}
@media screen and (max-width: 768px) {
    .contentsLink__list .w25{ width: 48%;}
    .contentsLink__list .w50 a{ width: 96%;}
}
.contentsLink__list a::before{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0; left: 0;
    background: #fff;
    z-index: 555;
    opacity: 0;
    -ms-transition: all 0.8s, -ms-transform 0.8s ease-out;
    -webkit-transition: all 0.8s, -webkit-transform 0.8s ease-out;
    transition: all 0.8s, transform 0.8s ease-out;
}
.contentsLink__list a.nowLoading::before{
    opacity: 1;
}
.contentsLink__list a::after{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 4%;
    left: 4%;
    z-index: 111;
    background: #f1e3e3;
    background: -moz-linear-gradient(-45deg,  #f1e3e3 0%, #7d0000 100%);
    background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#f1e3e3), color-stop(100%,#7d0000));
    background: -webkit-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: -o-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: -ms-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: linear-gradient(135deg,  #f1e3e3 0%,#7d0000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f1e3e3', endColorstr='#7d0000',GradientType=1 );
}
.contentsLink__list .w50 a::after{
    top: 7%; left: 2%;
}
.contentsLink__list_mask{
    overflow: hidden;
    /* height: 156px; */
}
.contentsLink__list_mask{
    height: 0;
    padding-top: 99%;
    background: url("../photo/contentsLink_recruit.jpg") center center no-repeat;
    background-size: 100%;
    position: relative;
    z-index: 333;
    border: solid 1px #fff;
    -ms-transition: all 0.6s, -ms-transform 0.2s ease-out;
    -webkit-transition: all 0.6s, -webkit-transform 0.2s ease-out;
    transition: all 0.6s, transform 0.2s ease-out;
}
.message .contentsLink__list_mask{ background-image: url("../photo/contentsLink_message.jpg");}
.profile .contentsLink__list_mask{ background-image: url("../photo/contentsLink_profile.jpg");}
.philosophy .contentsLink__list_mask{ background-image: url("../photo/contentsLink_philosophy.jpg");}
.spirit .contentsLink__list_mask{ background-image: url("../photo/contentsLink_spirit.jpg");}
.w50 .contentsLink__list_mask{
    padding-top: 24.26%;
    background-image: url("../photo/contentsLink_recruit.jpg");
}
.sustainability .contentsLink__list_mask{ background-image: url("../photo/contentsLink_sustainability.jpg");}
.ir .contentsLink__list_mask{ background-image: url("../photo/contentsLink_ir.jpg");}
.efforts .contentsLink__list_mask{ background-image: url("../photo/contentsLink_efforts.jpg");}
.contentsLink__list a:hover .contentsLink__list_mask{
    background-size: 110%;
}
/* .contentsLink__list img{
    width: 100%; height: auto;
    position: relative;
    z-index: 333;
    border: solid 1px #fff;
    box-sizing: border-box;
} */
.contentsLink__list__ttl{
    position: absolute;
    top: 50%;
    left: 0; right: 0;
    margin: -0.5em auto 0;
    z-index: 444;
    text-align: center;
    color: #fff;
    font-size: 150%;
    text-shadow: 1px 1px 10px #000, -1px 1px 10px #000, 1px -1px 10px #000, -1px -1px 10px #000;
}
.contentsLink__list__ttl.line2{ margin-top: -1em; line-height: 1.2;}
.contentsLink__list__ttl .sub{  font-size: 88%;}
@media screen and (max-width: 768px) {
    .contentsLink__list .w50 a::after{ top: 4%; left: 4%;}
    .w50 .contentsLink__list_mask{ padding-top: 99%;}
    .recruit .contentsLink__list_mask{ background-image: url("../photo/contentsLink_recruit_sp.jpg");}
    .sustainability .contentsLink__list_mask{ background-image: url("../photo/contentsLink_sustainability_sp.jpg");}
    .ir .contentsLink__list_mask{ background-image: url("../photo/contentsLink_ir_sp.jpg");}
    .efforts .contentsLink__list_mask{ background-image: url("../photo/contentsLink_efforts_sp.jpg");}
    .contentsLink__list__ttl{ font-size: 120%;}
}
/* -------------------------------------
	FUJITV Inside Story
------------------------------------- */
.insideStory{ position: relative;
    overflow: hidden;}
.insideStory::after{
    content: "";
    display: block;
    width: 100%;
    height: 200px;
    background: url("../img/bg_ptrn01.png") 0 0 repeat;
    position: absolute;
    top: 50%;
    left: 0;
    margin: -130px 0 0;
}
.insideStory__main{ width: 100%;}
.insideStory__list{
    display: flex;
    justify-content: space-between;
    transform: translate( 120%, 0);
    opacity: 0;
    -ms-transition: all 0.5s, -ms-transform 0.5s ;
    -webkit-transition: all 0.5s, -webkit-transform 0.5s ;
    transition: all 0.5s, transform 0.5s ;
    position: relative;
    z-index: 555;
}
.insideStory__list.reached{ transform: translate( 0, 0); opacity: 1;}
.insideStory__list li{
    flex-shrink: 0;
    width: 30%;
}
@media screen and (max-width: 768px) {
    .insideStory .content-wrap__inner{ padding: 0;}
    .insideStory .ttl-wrap{ padding: 0 2em;}
    .insideStory::after{
        height: 34vw;
        margin: -23vw 0 0;
    }
    .insideStory .ttl-wrap__h2__sub{
        margin-right: 0;
        font-size: 76%;
    }
    .insideStory__main{ overflow-x: scroll;}
    .insideStory__list{
        width: 270%;
        padding: 0 2em 1em;
    }
    .insideStory__list li{ width: 23%;}
}
@media screen and (max-width: 550px) {
    .insideStory .ttl-wrap{ padding: 0 1em;}
    .insideStory::after{
        height: 34vw;
        margin: -28vw 0 0;
    }
    .insideStory .ttl-wrap__h2__sub{ font-size: 66%;}
    .insideStory__list{
        padding: 0 1em 1em;
    }
}
.insideStory__list__thum{
    position: relative;
    width: 270px;
    height: 270px;
    margin: 0 auto;
}
.insideStory__list__thum::before{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    top: 0; left: 0;
    background: #fff;
    z-index: 555;
    opacity: 0;
    -ms-transition: all 0.8s, -ms-transform 0.8s ease-out;
    -webkit-transition: all 0.8s, -webkit-transform 0.8s ease-out;
    transition: all 0.8s, transform 0.8s ease-out;
}
.insideStory__list__thum.nowLoading::before{
    opacity: 1;
}
.insideStory__list__thum::after{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    top: 2.4%;
    left: 2.4%;
    z-index: 111;
    background: #f1e3e3;
    background: -moz-linear-gradient(-45deg,  #f1e3e3 0%, #7d0000 100%);
    background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#f1e3e3), color-stop(100%,#7d0000));
    background: -webkit-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: -o-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: -ms-linear-gradient(-45deg,  #f1e3e3 0%,#7d0000 100%);
    background: linear-gradient(135deg,  #f1e3e3 0%,#7d0000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f1e3e3', endColorstr='#7d0000',GradientType=1 );
}
@media screen and (max-width: 1400px) {
    .insideStory__list__thum{
        width: 20vw; height: 20vw;
    }
}
@media screen and (max-width: 768px) {
    .insideStory__list__thum{
        width: 40vw; height: 40vw;
    }
}
.insideStory__list__thum__mask{
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 333;
    border: solid 2px #fff;
    box-sizing: border-box;
}
.insideStory__list__thum__mask img{
    height: 100%;
    width: auto;
    -ms-transition: all 0.6s, -ms-transform 0.2s ease-out;
    -webkit-transition: all 0.6s, -webkit-transform 0.2s ease-out;
    transition: all 0.6s, transform 0.2s ease-out;
}
a:hover .insideStory__list__thum__mask img{
    height: 110%;
}
.insideStory__list__num{
    color: #7d0000;
    line-height: 1.2;
    padding-bottom: 0.2em;
    opacity: 0;
    -ms-transition: all 0.8s, -ms-transform 0.8s ease-out;
    -webkit-transition: all 0.8s, -webkit-transform 0.8s ease-out;
    transition: all 0.8s, transform 0.8s ease-out;
}
.insideStory__list__name{
    font-size: 110%;
    font-weight: bold;
    line-height: 1.2;
    padding-bottom: 0.4em;
    opacity: 0;
    -ms-transition: all 0.8s, -ms-transform 0.8s ease-out;
    -webkit-transition: all 0.8s, -webkit-transform 0.8s ease-out;
    transition: all 0.8s, transform 0.8s ease-out;
}
.insideStory__list__name span{
    margin-left: 0.6em;
    font-size: 80%;
}
.insideStory__list__intro{
    font-size: 94%;
    line-height: 1.6;
    text-align: justify;
    opacity: 0;
    -ms-transition: all 0.8s, -ms-transform 0.8s ease-out;
    -webkit-transition: all 0.8s, -webkit-transform 0.8s ease-out;
    transition: all 0.8s, transform 0.8s ease-out;
}
.insideStory__list__num.reached,
.insideStory__list__name.reached,
.insideStory__list__intro.reached{ opacity: 1;}

@media screen and (max-width: 768px) {
    .insideStory  .btn_more-view.sp-only{
        position: relative;
        top: auto; left: auto; right: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* -------------------------------------
	ニュースリリース
------------------------------------- */
.news__list li{
    margin-bottom: 1.4em;
    position: relative;
    -ms-transition: all 0.5s, -ms-transform 0.5s ease-out;
    -webkit-transition: all 0.5s, -webkit-transform 0.5s ease-out;
    transition: all 0.5s, transform 0.5s ease-out;
    opacity: 0;
}
.news__list li.reached{ opacity: 1;}
.news__list li::before{
    background: -moz-linear-gradient(left,  rgba(125,0,0,0) 0%, rgba(125,0,0,1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(125,0,0,0)), color-stop(100%,rgba(125,0,0,1)));
    background: -webkit-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: -o-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: -ms-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: linear-gradient(to right,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007d0000', endColorstr='#7d0000',GradientType=1 );
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform 1000ms;
}
.news__list li.reached::before {
    transform-origin: left top;
    transform: scale(1, 1);
}
.news__list li::after{
	content: "";
	display: block;
	position: absolute;
    bottom: 2px; right: 0;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 1.3em 0.6em 0;
	border-color: transparent transparent #7d0000 transparent;
    transform: translate(-80vw, 0);
    transition: transform 1000ms;
}
.news__list li.reached::after{ transform: translate(0, 0);}
.news__list li a{
    display: block;
    padding-bottom: 0.5em;
}
.news__list dl{
    display: flex;
    flex-wrap: wrap;
    align-items: self-start;
}
.news__list dl::before{
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #7d0000;
    color: #fff;
    min-width: 6em;
    font-size: 88%;
    line-height: 1.2;
    border-radius: 3em;
}
.news__list .companyInfo dl::before{ content: "会社情報";}
.news__list .charity dl::before{ content: "チャリティ";}
.news__list .csr dl::before{ content: "CSR";}
.news__list .recruit dl::before{ content: "採用情報";}
.news__list .biz dl::before{ content: "ビジネス";}
.news__list .news dl::before{ content: "お知らせ";}
.news__list__update{
    font-size: 88%;
    line-height: 1.4;
    color: #555;
    margin: 0 1.5em;
}
.news__list li a:hover dt{ color: #888;}
@media screen and (max-width: 768px) {
    .news__list dt{ width: 100%;}
}


/* -------------------------------------
	ニュースリリース(お知らせ)
------------------------------------- */
.news__list2 li{
    margin-bottom: 1.4em;
    position: relative;
    -ms-transition: all 0.5s, -ms-transform 0.5s ease-out;
    -webkit-transition: all 0.5s, -webkit-transform 0.5s ease-out;
    transition: all 0.5s, transform 0.5s ease-out;
    opacity: 0;
}
.news__list2 li.reached{ opacity: 1;}
.news__list2 li::before{
    background: -moz-linear-gradient(left,  rgba(125,0,0,0) 0%, rgba(125,0,0,1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(125,0,0,0)), color-stop(100%,rgba(125,0,0,1)));
    background: -webkit-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: -o-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: -ms-linear-gradient(left,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    background: linear-gradient(to right,  rgba(125,0,0,0) 0%,rgba(125,0,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007d0000', endColorstr='#7d0000',GradientType=1 );
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform 1000ms;
}
.news__list2 li.reached::before {
    transform-origin: left top;
    transform: scale(1, 1);
}
.news__list2 li::after{
	content: "";
	display: block;
	position: absolute;
    bottom: 2px; right: 0;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 1.3em 0.6em 0;
	border-color: transparent transparent #7d0000 transparent;
    transform: translate(-80vw, 0);
    transition: transform 1000ms;
}
.news__list2 li.reached::after{ transform: translate(0, 0);}
.news__list2 li a{
    display: block;
    padding-bottom: 0.5em;
}
.news__list2 dl{
    display: flex;
    flex-wrap: wrap;
    align-items: self-start;
}
.news__list2 dl::before{
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #7d0000;
    color: #fff;
    min-width: 6em;
    font-size: 88%;
    line-height: 1.2;
    border-radius: 3em;
}
.news__list2 .companyInfo dl::before{ content: "会社情報";}
.news__list2 .charity dl::before{ content: "チャリティ";}
.news__list2 .csr dl::before{ content: "CSR";}
.news__list2 .recruit dl::before{ content: "採用情報";}
.news__list2 .biz dl::before{ content: "ビジネス";}
.news__list2 .news dl::before{ content: "お知らせ";}
.news__list2 .regeneration dl::before{ content: "再生・改革";}
.news__list__update{
    font-size: 88%;
    line-height: 1.4;
    color: #555;
    margin: 0 1.5em;
}
.news__list2 li a:hover dt{ color: #888;}
@media screen and (max-width: 768px) {
    .news__list2 dt{ width: 100%;}
}

/* -------------------------------------
	本社・お台場ガイド
------------------------------------- */
.content-wrap.guide{ padding: 0;}
.guide-wrap{
    height: 170px;
    background-color: #67b2e3;
    background: url("../photo/contentsLink_guide.jpg") no-repeat center center;
    background-size: cover;
}
@media screen and (max-width: 768px) {
    .guide-wrap{
        height: 28vw;
        background-position: 26% center;
    }
}
.guide-wrap a{ display: block; height: 100%;}
.guide-wrap .content-wrap__inner{
    height: 100%;
    position: relative;
}
.guide-wrap .ttl-wrap{
    position: absolute;
    top: 50%;
    right: 2em;
    margin-top: -0.6em;
}
@media screen and (max-width: 550px) {
    .guide-wrap .ttl-wrap{
        right: 1em;
    }
}
.guide-wrap .ttl-wrap__h2{
    position: relative;
    padding-right: 2em;
    text-shadow: 1px 1px 10px #fff, -1px 1px 10px #fff, 1px -1px 10px #fff, -1px -1px 10px #fff;
}
.guide-wrap .ttl-wrap__h2::before{
    position: absolute;
    width: 1.1em;
    height: 1em;
    border-bottom: solid 2px #7d0000;
    bottom: 2px;
    right: 0.2em;
    margin-right: 0;
	border-color: transparent transparent #7d0000 transparent;
    transform: translate(0, 0);
    transition: transform 400ms;
}
.guide-wrap .ttl-wrap__h2::after{
	content: "";
	display: block;
	position: absolute;
    bottom: 4px; right: 0.2em;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 0.7em 0.36em 0;
	border-color: transparent transparent #7d0000 transparent;
    transform: translate(0, 0);
    transition: transform 400ms;
}
.guide-wrap a:hover .ttl-wrap__h2::before,
.guide-wrap a:hover .ttl-wrap__h2::after{ transform: translate(0.2em, 0);}

/* -------------------------------------
	サイトマップ
------------------------------------- */
.sitemap .content-wrap__inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media screen and (max-width: 550px) {
    .sitemap .content-wrap__inner{ padding: 0 2em;}
}
.sitemap-wrap{
    flex-shrink: 0;
    width: 22%;
}
.sitemap-wrap__inner{
    margin-bottom: 2em;
}
.sitemap-wrap h3{
    font-weight: bold;
}
.sitemap-wrap h3::before{
    content: "■";
    color: #7d0000;
    margin-right: 0.2em;
}
.sitemap-wrap__inner__list li{
    margin-top: 0.8em;
    font-size: 88%;
    line-height: 1.4;
}
.sitemap-wrap__inner__list li a:hover{
    text-decoration: underline;
}
.sitemap-wrap__inner__list__sub dt{ margin-bottom: 0.4em;}
.sitemap-wrap__inner__list__sub dd{ margin-bottom: 0.4em;}
.sitemap-wrap__inner__list__sub dd::before{
    content: "・";
}
.sitemap-wrap__inner.sub{
    border-top: solid 1px #a2a2a2;
    padding: 1.2em 0 0;
}
@media screen and (max-width: 768px) {
    .sitemap-wrap{ width: 100%;}
}