@charset "UTF-8";
/*------------------------------------------------
　　　　メインビジュアル
------------------------------------------------*/
#mainVisual{
    width: 100%;
    height: 45vw;
    /* padding-top: 45.139%; */
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.no-webp #mainVisual{ background-image: url("../photo/mainV.jpg");}
.webp #mainVisual{ background-image: url("../photo/mainV.webp");}
.mainVisual__inner{
    width: 100%;
}
.mainVisual__inner__catch{
    width: 100%;
    height: 4vw;
    max-height: 50px;
    background: url("../img/main_catch.svg") no-repeat center center;
    background-size: contain;
    filter: drop-shadow(1px 1px 1em #111a4f);
    text-indent: -300%;
    overflow: hidden;
    white-space: nowrap;
}
.mainVisual__inner__lead{
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 140%;
    line-height: 1.8;
    margin-top: 1em;
    text-shadow: 1px 1px 0.6em #111a4f;
    font-feature-settings: "palt";
}
@media screen and (min-width: 1440px) {
    #mainVisual{
        height: 650px;
        padding-top: 0;
        background-size: cover;
    }
}
@media screen and (max-width: 740px) {
    #mainVisual{
        height: 100vw;
        background-size: cover;
    }
    .mainVisual__inner__catch{ height: 8vw;}
}
@media screen and (max-width: 580px) {
    .mainVisual__inner__lead{ font-size: 130%;}
}
@media screen and (max-width: 480px) {
    .mainVisual__inner__lead{ font-size: 100%;}
}

/*------------------------------------------------
　　　　事業
------------------------------------------------*/
.business__lead{
    text-align: center;
    font-size: 110%;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    line-height: 1.6;
    margin-bottom: 2em;
    font-weight: bold;
}
@media screen and (max-width: 480px) {
    .business__lead{ font-size: 105%;}
}
.business__lineup{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.business__lineup a:after{
    content: "";
    display: block;
    width: 100%;
    height: 1.6em;
    background: url("../img/arrow1.svg") no-repeat center center;
    background-size: contain;
    margin-top: 0.6em;
    transition: transform 200ms 300ms;
}
.business__lineup li{
    width: 24%;
    text-align: center;
    margin-bottom: 2em;
}
.business__lineup__thum{
    width: 100%;
    position: relative;
    padding: 8%;
    box-sizing: border-box;
}
.business__lineup__thum::after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; left: 0; right: 0;
    margin: 0 auto;
    background: url("../img/thum__asset1.svg") no-repeat center center;
    background-size: contain;
    transition: transform 300ms;
}
.business__lineup__thum__inner{
    display: block;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
}
.business__lineup__thum img{
    width: 100%;
    height: auto;
}
.business__lineup__en{
    font-size: 197%; line-height: 1.0; margin-bottom: 0.2em;
    letter-spacing: -0.04em;
}
.business__lineup__jp{
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 104%; line-height: 1.2; font-weight: bold; font-feature-settings: "palt";
}
@media screen and (min-width: 740px) {
    .business__lineup li a:hover:after{
        transform: translateY(0.2em);
    }
    .business__lineup li a:hover .business__lineup__thum::after{ transform: rotate( 360deg);}
}

@media screen and (max-width: 1110px) {
    .business__lineup__en{ font-size: 2.8vw;}
    .business__lineup__jp{ font-size: 1.5vw;}
}
@media screen and (max-width: 740px) {
    .business__lineup li{ width: 49%;}
    .business__lineup__en{ font-size: 6.7vw;}
    .business__lineup__jp{ font-size: 3.0vw;}
    .business__lineup a:after{
        height: 4.6vw;
        margin-top: 1.4vw;
    }
}

/*----------------事業詳細----------------*/
.business__summary{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 6.6em;
}
.business__summary__photo{
    width: 54%;
    height: 49vw;
    max-height: 706px;
    position: relative;
    z-index: 555;
}
.business__summary__photo img{
    width: 100%;
    height: auto;
}
.business__summary__photo::after{
    content: "";
    display: block;
    position: absolute;
    top: 0.6em;
    left: 0;
    width: calc( 100% + 0.6em);
    height: 100%;
    background: rgb(46,0,163);
    background: -moz-linear-gradient(-45deg,  rgba(46,0,163,1) 0%, rgba(133,0,128,1) 50%, rgba(255,138,0,1) 100%);
    background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,rgba(46,0,163,1)), color-stop(50%,rgba(133,0,128,1)), color-stop(100%,rgba(255,138,0,1)));
    background: -webkit-linear-gradient(-45deg,  rgba(46,0,163,1) 0%,rgba(133,0,128,1) 50%,rgba(255,138,0,1) 100%);
    background: -o-linear-gradient(-45deg,  rgba(46,0,163,1) 0%,rgba(133,0,128,1) 50%,rgba(255,138,0,1) 100%);
    background: -ms-linear-gradient(-45deg,  rgba(46,0,163,1) 0%,rgba(133,0,128,1) 50%,rgba(255,138,0,1) 100%);
    background: linear-gradient(135deg,  rgba(46,0,163,1) 0%,rgba(133,0,128,1) 50%,rgba(255,138,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2e00a3', endColorstr='#ff8a00',GradientType=1 );

    z-index: -1;
}
.business__summary:nth-of-type(2n) .business__summary__photo::after{
    left: auto; right: 0;
}
.business__summary__photo__inner{
    display: block;
    overflow: hidden;
    height: 49vw;
    max-height: 706px;
}
.business__summary:nth-of-type(2n+1) .business__summary__photo::after{ border-radius: 0 8% 8% 0;}
.business__summary:nth-of-type(2n+1) .business__summary__photo__inner{ border-radius: 0 7% 7% 0;}
.business__summary:nth-of-type(2n) .business__summary__photo::after{ border-radius: 8% 0 0 8%;}
.business__summary:nth-of-type(2n) .business__summary__photo__inner{ border-radius: 7% 0 0 7%;}
.business__summary__main{
    width: 46%;
    padding-top: 5.2em;
    padding-left: 4%;
    position: relative;
    box-sizing: border-box;
}
.business__summary__main::before{
    content: "";
    width: 200%;
    font-size: 720%;
    line-height: 1.4;
    position: absolute;
    top: -5%;
    right: 0;
    letter-spacing: -0.04em;
    z-index: 333;
    color: rgb(22,29,34);
    background: rgb(22,29,34);
    background: -moz-linear-gradient(left,  rgba(22,29,34,1) 0%, rgba(29,27,111,1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(22,29,34,1)), color-stop(100%,rgba(29,27,111,1)));
    background: -webkit-linear-gradient(left,  rgba(22,29,34,1) 0%,rgba(29,27,111,1) 100%);
    background: -o-linear-gradient(left,  rgba(22,29,34,1) 0%,rgba(29,27,111,1) 100%);
    background: -ms-linear-gradient(left,  rgba(22,29,34,1) 0%,rgba(29,27,111,1) 100%);
    background: linear-gradient(to right,  rgba(22,29,34,1) 0%,rgba(29,27,111,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#161d22', endColorstr='#1d1b6f',GradientType=1 );
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    text-align: right;
}
#SpaceSupervision .business__summary__main::before{ content: "Space Supervision";}
#EntertainmentContent .business__summary__main::before{ content: "Entertainment & Content";}
#Venturing .business__summary__main::before{ content: "Venturing";}
#BrandSafety .business__summary__main::before{ content: "Brand Safety";}
.business__summary__main__ttl{
    width: 200%;
    font-size: 720%;
    line-height: 1.4;
    position: absolute;
    top: -5%;
    right: 0;
    letter-spacing: -0.04em;
    z-index: 666;
    color: #dddddd;
    mix-blend-mode: color-dodge;
    text-align: right;
}
.business__summary:nth-of-type(2n) .business__summary__main::before,
.business__summary:nth-of-type(2n) .business__summary__main__ttl{ left: 0; text-align: left;}
.business__summary__main h3{
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 210%;
    font-weight: bold;
    position: relative;
    z-index: 888;
    line-height: 1.1;
    text-shadow: -1px -1px 0.5em #fff, -1px -1px 0.5em #fff;
    font-feature-settings: "palt";
}
.business__summary__main h3::after{
    content: "";
    display: block;
    width: 100%;
    height: 0.1em;
    background: url("../img/h3_line.svg") repeat-x 0 0;
    background-size: cover;
}
@media screen and (max-width: 1600px) {
    .business__summary__main{ padding-top: 5%;}
    .business__summary__main::before,
    .business__summary__main__ttl{ font-size: 7vw;}
}
@media screen and (max-width: 1170px) {
    .business__summary__main h3{ font-size: 180%;}
}
@media screen and (max-width: 740px) {
    .business__summary:nth-of-type(2n){
        flex-direction: column-reverse;
    }
    .business__summary__photo{
        width: 90%;
        height: 80vw;
    }
    .business__summary:nth-of-type(2n) .business__summary__photo{ margin-left: 10%;}
    .business__summary__photo__inner{ height: 80vw;}
    .business__summary__main{
        width: 100%;
        padding-left: 5%; padding-top: 9%;
    }
    .business__summary__main::before,
    .business__summary__main__ttl{
        width: 100%;
        font-size: 12vw; left: 0;
        line-height: 0.8;
        top: -3%;
    }
    .business__summary:nth-of-type(2n) .business__summary__main::before,
    .business__summary:nth-of-type(2n) .business__summary__main__ttl{ text-align: right;}
    .business__summary__main h3{ font-size: 5vw;}
}
@media screen and (max-width: 580px) {
    .business__summary__photo::after{ top: 2vw; width: calc( 100% + 2vw);}
    .business__summary__main::before,
    .business__summary__main__ttl{
        top: -1%;
    }
    .business__summary__main h3{ font-size: 6vw;}
}
@media screen and (max-width: 480px) {
    .business__summary__main::before,
    .business__summary__main__ttl{
        font-size: 14vw;
        /* top: -2%; */
    }
}
.business__summary__main__lead{
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 116%;
    line-height: 1.8;
    padding: 2em 6% 2em 0;
    font-weight: bold;
    font-feature-settings: "palt";
}
.business__summary__main__list{
    font-weight: bold;
    padding-right: 6%;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.business__summary__main__list li{
    line-height: 1.6;
    font-weight: bold;
    padding-left: 1.4em;
    position: relative;
    margin-bottom: 0.4em;
    font-feature-settings: "palt";
}
.business__summary__main__list li::before{
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background: url("../img/list_asset1.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.business__summary__main__target{
    line-height: 1.6; font-weight: bold;
    padding-right: 6%;
    font-feature-settings: "palt";
}
@media screen and (max-width: 740px) {
    .business__summary__main__lead{ padding-right: 5%; font-size: 108%;}
    .business__summary__main__list,
    .business__summary__main__target{ padding-right: 5%;}
}

/*------------------------------------------------
　　　　会社概要
------------------------------------------------*/
.about__main__list{
    font-weight: bold;
    margin-bottom: 2.6em;
    padding-right: 6%;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.about__main__list li{
    line-height: 1.6;
    font-weight: bold;
    padding-left: 1.4em;
    position: relative;
    margin-bottom: 0.4em;
    font-feature-settings: "palt";
}
.about__main__list li::before{
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background: url("../img/list_asset1.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.about__main__txt1{
    font-size: 110%;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 2.2em;
    font-feature-settings: "palt";
}
.about__main__txt2{
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 1em;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}