@charset "UTF-8";

/* ---------------------------------------
メインビジュアル（PC）
--------------------------------------- */
@media (min-width: 1024px){
    .main_v_wrapper{
        display: flex;
        justify-content: center;
        margin: 10% 0 0% 0;
    }
    .main_typo{
        height: max-content;
        font-size: 36px;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        line-height: 72px;
        /* margin-left: -5%; */
    }
    .line2{
        margin-top: 180px;
    }
    #main_v_img{
        width: 250px;
        padding: 10% 0 0 5%;
    }
    #main_v_img img{
        width: 100%;
    }
    @keyframes horizontal{
        0% { transform:translateX(10px); }
        100% { transform:translateX(0px); }
    }

    @keyframes vertical{
        0% { transform:translateY(40px); }
        100% { transform:translateY(0px); }
    }

    #kirakira{
        width: 7%;
        animation: vertical 2s ease-in-out infinite alternate;
        animation-duration: 2s;
        overflow: hidden;
        margin: 8% 0 0 3%;
    }
    #kirakira img{
        width: 100%;
    }
}

/* ---------------------------------------
メインビジュアル（SP）
--------------------------------------- */
@media (max-width: 1024px){
    .main_v_wrapper{
        display: flex;
        justify-content: center;
        margin: 25% 0 20% 0;
    }
    #main_v_img{
        width: 30%;
        padding: 35% 0 0 5%;
    }
    #main_v img{
        width: 100%;
    }
    .main_typo{
        height: max-content;
        font-size: 1.5em;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        line-height: 40px;
        /* margin-left: -10%; */
    }
    .line2{
        margin-top: 120px;
    }

    @keyframes vertical{
        0% { transform:translateY(10%); }
        100% { transform:translateY(0px); }
    }
    #kirakira{
        width: 14%;
        animation: vertical 1.5s ease-in-out infinite alternate;
        animation-duration: 1.5s;
        /* overflow: hidden; */
        margin: 20% 0 0 4%;
    }
    #kirakira img{
        animation: horizontal 1.5s ease-in-out infinite alternate;
        animation-duration: 1.5s;
        width: 100%;
    }
}

/* ---------------------------------------
メイン部分（PC）
--------------------------------------- */
@media (min-width: 1024px){
    .main_read{
        text-align: center;
        font-size: 1.05em;
        padding-top: 3%;
    }
    #detail{
        padding-top: 10%;
    }
    .director{
        margin-top: 10%;
    }
    .fluid_wrapper_top{
        margin-top: 8%;
    }
    .threebox_img_wrapper{
        width: 220px;
        margin: 20px auto 0;
    }
}

/* ---------------------------------------
メイン部分（SP）
--------------------------------------- */
@media (max-width: 1024px){
    .main_read{
        padding: 0 10%;
    }
    .slider{
        position: relative;
    }
    .threeskill{
        margin: 15% auto 7%;
        font-size: 0.9em;
    }
    .threebox_img_wrapper{
        margin-bottom: 1%;
    }
    .slider h3{
        text-align: center;
        font-weight: bold;
        font-size: 1.1em;
    }
    .slider p{
        padding: 0 10% 0;
    }
    .swipe{
        position: absolute;
        top: 33%;
        right: 10%;
        width: 16%;
    }
    .swipe img, .dot img{
        width: 100%;
    }
    .director{
        margin-top: 10%;
    }
    .fluid_wrapper_top{
        margin-top: 10%;
    }
    .owl-dots{
        justify-content: center;
        display: flex;
    }
    .owl-dot{
        background: #ccc !important;
        height: 10px;
        width: 10px;
        border-radius: 40px;
        margin: 8% 0 5% 0;
    }
    .owl-dots button:not(:first-child){
        margin-left: 12px;
    }
    .owl-dots .active{
        background: #999 !important;
    }
}





