@charset "utf-8";

/*Common parts*/
:root {
  --header: 140px;
  scroll-padding: var(--header);
}
.inner {
    @media (max-width: 480px){
        padding: 10px;
    }
}
/*ボタン：アローアイコン*/  
.icon_more{
        position: relative;

        &::after{
            content: "";
            width: 12px;
            height: 12px;
            border-top: solid 2px #ffffff;
            border-right: solid 2px #ffffff;
            position: absolute;
            top: 50%;
            right: 20px;
            transform: translateY(-50%) rotate(45deg);
            -webkit-transform: translateY(-50%) rotate(45deg);
            -ms-transform: translateY(-50%) rotate(45deg);
        }
}

/*header*/
.header_upper{
    position: relative;
    transition: height .3s linear;

    .logo_center{
        img{
            transition: height .3s linear;
        }
    }

    @media (max-width: 980px){
        height: 3pc;
        margin: 0 auto;
        
        .logo_center{
            img{
                height: 46px;
                width: auto;
            }
        } 
        .company_name, .groupinfo{
            display: none;
        }
    }
}
.header_lower{
    position: relative;
    transition: height .3s linear;

    .headlogo img {
        transition: height .3s linear;
    }
    .nav_pulldown{
        display: none;
    }
    @media (max-width: 980px){
        height: 60px;

        .headlogo img {
            height: 50px;
        }
        .head_low_right{
            display: none;
        }
        .nav_pulldown{
            display: block;

            .nav_tglbtn{
                width: 40px;
                height: auto;
                aspect-ratio: 1 / 1;
                display: block;
                position: absolute;
                top: 10px;
                right: 10px;
                z-index: 10000;

                background-size: cover;
                background-position: center;
                background-repeat: repeat;
                &.open{
                    background-image: url('../img/icon_nav-open.svg');
                }
                &.close{
                    background-image: url('../img/icon_nav-close.svg');
                }               
            }
            .nav_panel{
                display: none;
                
                position: absolute;  
                top: 60px;
                left: 0;
                z-index: 9999;    
                width: 100%; 
                height: calc(100vh - 3pc - 60px);
                overflow-y: auto;
                background-color: #e6e6e6;

                & .nav_company,
                & .nav_groupinfo{
                    width: 100%;
                    padding: 0;

                    & a{
                        display: block;
                        padding: 10px;
                        width: 100%;
                        font-size: 12px;
                        color: #666666;
                    }                    
                }
                & .nav_company{
                    border-top: solid 1px #cccccc;
                    background: #ffffff;
                }
                & .nav_list_item{
                    width: 100%;
                    padding: 0;
                    font-size: 14px;
                    border-top: solid 1px  #cccccc;
                    background: #ffffff;
                    overflow: hidden;

                    &.border-none{
                        border-top: none;
                    }

                     & .item-link{                        
                        display: block;
                        padding: 20px 10px;
                        width: 100%;
                        font-size: 14px;
                        color: #1A1A1A;
                        background: #ffffff;
                     }
                     & .nav_btn{
                        display: block;
                        width: 90vw;
                        box-sizing: border-box;
                        border-radius: 10px;
                        margin:10px auto;
                        padding: 20px 10px;
                        font-size: 16px;
                        font-weight: bold;
                        text-align:center;
                        border: solid 1px #28A7E1;

                        &.white{
                            background-color: #ffffff;
                            color: #28A7E1;                   
                        }
                        &.blue{
                            background-color: #28A7E1;
                            color: #ffffff;
                        }
                     }
                }                
            }
        }
    }
}
main{
    transition: padding-top .3s linear;
    @media (max-width: 980px){
        padding-top: calc(3pc + 60px);
    }    
}
/*footer*/
#footer{
    width: 100%;
    line-height: 1.5;
    position: relative;
    background-color: #F2F2F2;

    & .footer_container{
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
        padding: 13px 10px; 

        & .footer_nav{
            display: flex;
            flex-wrap: wrap;
            margin-bottom: 10px;
            gap: 10px 0;

            > a{
                font-size: 12px;
                color: #666666;
                padding: 0 1rem;
                border-right: solid 1px #cccccc;

                &:last-of-type{
                    border-right: none;                   
                }
            }
        }
        & .footer_companyname{
            font-size: 12px;
            color: #666666;
            padding: 0 0 0 1rem;
        }
        & small{            
            font-size: 12px;
            color: #666666;
            padding: 0 0 0 1rem;          
        }
    }
}

/*------------------------------------------------------------------------------------------------------------*/
/* TOP:main_area */
#top{
    & h2{
        transition: all 0.3s liner;
       @media (max-width: 480px){
            font-size: 20px;
            margin: 0 auto 30px auto;
       } 
    }
    & h3{
        transition: all 0.3s liner;
       @media (max-width: 480px){
            font-size: 18px;
       } 
    }    
}
/*メインビジュアル*/
#main_area {
  & .video-wrapper {
    &::before{
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 2;
        background: rgba(0,0,0, .3);
    }
    & video {
        display: block; /* width 481px以上の時表示する */
    }
    & .image-wrap {
        display: none; /* width 481px以上の時非表示する */
    }   
    &  .catch-copy{
        z-index: 10;

        & p{
            font-size: 2vw;

            & span{
            color: inherit;
            font-size: inherit;
            }
        }    
        & h1{
            font-size: 4vw;

            & span{
                color: #fff;
                font-size: 1.8em;
                margin: 0 0.1em;
                text-decoration: underline;
                text-decoration-thickness: 5px;
                text-decoration-skip-ink: none;
            }
        }
    }
    .fv_mark{
        position: absolute;
        top: 20px;
        right: 10px;
        z-index: 10;
        width: 150px;
        height: auto;
    }

    @media (max-width: 1000px){
        &  .catch-copy{
            & p{
                font-size: 24px;
            }
            & h1{
                font-size: 38px;
            }
        }
        & .btn_box{
            width: 90%;
        }
        & .slider_nav{
            width: 90%;
        }
        & .fv_mark{
            width: 100px;
            top: 20px;
        }
    }

    @media (max-width: 750px){
        height: calc(100vh - 108px) !important;

        & .catch-copy{
            & p{
                font-size: 20px !important;
                width: 90%;
                margin: 0 auto 20px;
                line-height: 1.8;

                & span{
                    &::before{
                        content: "\a";
                        white-space: pre;
                    }
                }
            }
            & h1{
                font-size: 38px !important;
                width: 90%;
                margin: 0 auto 20px;

                span{
                    &::after{
                        content: "\a";
                        white-space: pre;
                    }
                }
            }
            & .btn_box{
                width: 90%;
                justify-content: center;
                margin: 30px auto 20%;

                & .btn_top{
                    width: 45%;
                    height: 70px;
                    font-size: 20px;  
                }
            }
            & .slider_nav{
                width: 90%;
            }      

        }
    }

    @media (max-width: 480px){
        video {
            display: none !important;
        }
        .image-wrap {
            display: block !important;
            overflow: hidden;
            width: 100%;
            height: 100%;

            & img{
            width: auto;
            height: 100%;
            -o-object-fit: cover;
                object-fit: cover;
            -o-object-position: center;
                object-position: center;
            }

        }
        & .catch-copy{
            & p{
                font-size: 18px !important;
                text-align: left;
                margin: 0 auto;
            }
            & h1{
                font-size: 32px !important;
                text-align: left;
            } 
            & .btn_box{ 
                flex-flow: column;
                align-items: center;
                gap: 20px;
                margin: 30px auto;

                & .btn_top{
                    width: 90%;
                    height:60px;
                    border-radius: 4px;
                    
                }
            }            
        }
        & .fv_mark{
            top: 10px; 
            width: 90px;
        }
    }
  }
}
/*最新情報*/
#news_pickup{
    & .news_list a {
        align-items: center;
    }
    @media (max-width: 750px){
        & .news_list{
            padding: 20px 15px;
        }
        & li{
            > a{
                flex-wrap :wrap;
                gap: 6px 10px;

                & div{
                    padding: 4px;
                    &.news_new{
                        width: 100%;
                        text-align: center;
                    }
                    &.news_date{
                        font-size: 12px;
                    }
                    &.news_cate{
                        font-size: 11px;
                        width: 100px;
                    }
                    &.news_text{
                        width: 100%;                            
                    }
                }
            }
        }     
    }
}

/*ArgosViewとは*/
#info{
 & .info-wrapper{
    gap: 80px;
    flex-wrap: wrap;
    align-items: center;

    & .info-txt{
        width: calc(100% - 570px - 80px);
        @media (max-width: 980px){
            width: 100%;
        }
    }
    & .info-img{
        width: 100%;
        max-width: 570px;
        height: auto;
        aspect-ratio: 1 / 1;
        margin: 0 auto;
    }
    & .info-txt{
        p{
            margin-bottom: 20px;
        }
        & .read-txt{
            font-size: 22px;
            line-height: 1.6;
            margin: 80px 0;

            & span{
                font-weight: bold;
                font-size: 24px; 

                &.marker{
                    background: linear-gradient(transparent 60%, #fffc7e 60%);
                }               
            }
        }
    }
    & .info-img{
        background: #F0F1F3;

        &::after{
            content: "";
            display: block;
            width: 160px;
            height: 160px;
            position: absolute;
            top: 240px;
            left: 50%;
            z-index: 3;
            transform: translateX(-250px, -50%);
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            background-image: url('../img/icon_info_center.png');
            background-size: cover;
            background-position: center center;
            background-repeat: no-repeat;
        }
        & .circle{
            gap: 6px;

            & .icon-symbol{
                margin-top: 6px;
                max-width: 40px;
                transition: all 0.5s ease-in-out;
            }
            & .text-area{

                & .title{
                    font-size: 32px;
                    font-weight: bold;
                    text-align: center;                    
                }
                & .read-txt{
                    text-align: center;
                }
            }
            & .detail{
                display: none;
                transition: all 0.5s ease-in-out;
            }
            &:hover{
                & .icon-symbol { display: none; }
                & .text-area{
                    display: flex;
                    justify-content: center;

                    & .title{
                        border-right: solid 1px #1A1A1A;
                        padding-right: 1rem;
                    }
                    & .read-txt{
                        padding-left: 1rem;
                        text-align: left;
                    }
                }
                & .detail{
                    display: block;

                    & .circle-img{
                        text-align: center;
                        margin: 30px auto;                        
                        width: 100%;
                        max-width: 390px;
                        height: auto;
                    }
                    & ul{
                        list-style: disc;
                        width: 100%;
                        max-width: 390px;
                        margin: 0 auto;
                        box-sizing: border-box;
                        padding-left: 2rem;

                        li{
                            margin-bottom: 8px;
                            font-weight: normal;
                        }
                    }
                }
            }
        } 
    }
 }
 @media (max-width: 750px){ /* Responsive */ 
    padding: 30px 10px;

    & .info-wrapper{  
        gap: 30px;

        & .info-txt{
            & .read-txt{
                font-size: 18px;
                margin: 20px 0 40px;
            }
        }
        & .info-img{ 
            background: #ffffff;
            aspect-ratio: unset;

            &::after{
                content: none;
            }

            & .circle {
                position: static;
                width: 100%;
                border-width: 20px;
                border-radius: 10px;
                background-color: rgba(255,255,255,1);
                margin-bottom: 20px;
                pointer-events: none;

                & .detail{
                    display: block;
                    margin: 10px;
                }
            }
        }
    } 
 }
}
/*ArgosViewの特長*/
#feature{
    background-attachment: fixed;

    & ul{
        justify-content: center;
    }

    & .icon_featuer{
        width: 100%;
        max-width: 100px;
        height: auto;
        margin: 15px auto;        
    }
    & .featuer_title{
        font-weight: bold;
        & span{
            color: inherit;
            line-height: 1.2;
            display: inline-block;
        }
    }
    @media (max-width: 960px){
        & ul{
            width: 100%;
        }
    }
    @media (max-width: 480px){
        & ul{
            gap: 20px;
            
            & li{
                zoom: 75%;
            }
        }
    }
}
/*ArgosViewがわかる資料 / ご相談・お問合せ*/
#contact{
    display: flex;

    & .download,
    & .mail{
        flex-basis:50%;
        padding: 50px; 
        display: flex;
        flex-flow: column;
        align-items: center;
        gap: 30px;
        
        & *{
            color: #ffffff;
            text-align: center;
        }
        & img{
            max-width: 150px;
            margin-bottom: 10px;
        }
        & p{
            font-size: 20px;
            line-height: 2.4;
        }
    }

    & .download{
        background-image: linear-gradient(#171c61, #2575fc);
    }
    & .mail{
        background-image: linear-gradient(#005bea, #00c6fb);
    } 

    & .btn_box{
        background: #ffffff;
        border-radius: 5px;
        font-weight: bold;
        margin: 20px auto;
        width: 100%;
        max-width: 460px; 
        justify-content: center;

        > a{
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 20px;
            width: 100%;
            height: 100%;   
            font-size: 24px;
            padding: 30px 0;

            &.btn_download{
                color: #2366E1;

                & .icon_arrow{
                width: 2rem;
                height: 2rem;
                background: url('../img/icon_arrow_download.svg') no-repeat center / cover;
                }   
            }
            &.btn_contact{
                color: #01B3F8;

                & .icon_arrow{
                width: 2rem;
                height: 2rem;
                background: url('../img/icon_arrow_mail.svg') no-repeat center / cover;
                }  
            }

        } 
    }  

    @media (max-width: 750px){
        flex-flow: column;

        & .download,
        & .mail{
            gap: 20px;
            padding: 30px 20px;

            & img{
                max-width: 100px; 
            }
            & h3{
                font-size: 20px;
            }
            & p{
                font-size: 16px;
                line-height: 1.6;
            }
            & .btn_box {
                max-width: 300px;

                > a{
                    font-size: 18px;
                    padding: 20px 0;
                }
            }
        }
    }
}
/*ソリューション事例*/
#case{
    padding: 80px 10px 50px;

    & h2 {
    position: relative;
    font-weight:bold;
    border-bottom: solid 5px #28A7E1;
    margin: 0 0 20px 0;
    padding: 5px 0 20px 0;
    width: fit-content;
    
        &:after {
        content: '';
        position: absolute;
        bottom: -5px;
        left: 0;
        width: 80px;
        height: 5px;
        background-color: #171C61;
        }
    }

    & .case_iconlist{
        width: 100%;
        display :flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        gap: 20px;

        & .icon_container{
            width: 160px;
            height: auto;
            text-align: center; 

            &.blue { > div{background: #007BFF;} > p{color: #007BFF;} } 
            &.orange { > div{background: #FF8800;} > p{color: #FF8800;} } 
            &.yellowgreen { > div{background: #28A745;} > p{color: #28A745;} } 
            &.purple { > div{background: #6F42C1;} > p{color: #6F42C1;} } 
            &.red { > div{background: #DC3545;} > p{color: #DC3545;} } 
            &.yellow { > div{background: #FFC107;} > p{color: #FFC107;} } 
            &.bluegreen { > div{background: #17A2B8;} > p{color: #17A2B8;} } 

            > div{
            border-radius: 10px; 
            width: 160px;
            height: auto; 
            aspect-ratio: 3 / 2;
            display: flex;
            align-items: center; 
            justify-content: center;          
            
                & .case_icon{
                    width: 100%;
                    max-width: 80px;
                    height: auto;
                    
                }
            }
            > p{
                font-size: 12px;
                font-weight: bold;
                white-space: nowrap;
                margin-top: 10px;
            }
            @media (max-width: 775px){
                width: calc((100% - 40px) / 3);
                > div{
                    width: 100%;
                }
            }
            @media (max-width: 600px){
                width: calc((100% - 20px) / 2);
            }
        }
    }
}
& .case_solution_top{
    width: 100%;
    height: 600px;   
    position: relative;
    overflow: hidden;
    display: flex;
    transition: all 0.4s ease-in-out;

    @media (min-width: 1201px){
        border-bottom: solid 1px #ffffff;
    }

        & .item{
            overflow: hidden;
            position: relative; 
            flex-basis: calc(100% / 3);
            z-index: 2;

            @media (min-width: 1201px){
                &#bull{                
                    border-right:solid 1px #ffffff;
                }
                &#manu{
                    border-right: solid 1px #ffffff;
                }
            }           

            > a{
                color: #fff !important;
                display: block;
                width: 100%;
                height: 100%;
                padding: 30px;
                position: relative;
                -moz-box-sizing: border-box;
                -webkit-box-sizing: border-box;
                box-sizing: border-box;
                transition: all 0.4s ease;

                & .content{
                    color: #fff !important;
                    display: block;
                    width: 100%;
                    position: relative;
                    -moz-box-sizing: border-box;
                    -webkit-box-sizing: border-box;
                    box-sizing: border-box;
                    transition: all 0.4s ease;   
                    margin-top: 440px;            
                }
                & .title{
                    color: #fff !important;
                    line-height: 1.2;
                    font-weight: 600;
                    word-break: break-all;
                    display: flex;
                    flex-flow: column;
                    justify-content: center;
                    align-items: flex-start;

                    & .main_title{
                        font-size: 26px; 
                        color: #fff;
                    }
                    & .sub_title{
                        margin-top: 13px;
                        color: #fff;
                    }
                } 
                & .disc{
                    line-height: 2.4;
                    margin: 50px 0 0;
                    color: #fff;
                }
                & .more{
                    color: #fff;
                    margin-top: 30px;
                    font-weight: bold;
                    display: inline-block; 
                    width: 120px;                   
                }
                .fade_in {
                    transition: 0.8s ease-in-out;
                    transform: translateY(30px);
                    opacity: 0;
                }
                .fade_in.on {
                    transform: translateY(0);
                    opacity: 1.0;
                }
                @media (min-width: 1201px){
                    &:hover{
                        background-color: rgba(0,0,0,0.7);
                        opacity: 1;

                        & .content{
                            margin-top: 200px;
                
                            & .title{
                                opacity: 1;
                            }
                            & p{
                                opacity: 1;
                                transform: translateY(0);                            
                            }
                        }
                    }
                }
            }  
        }
        & .item-bg{
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;

            &#bull{
                background-image: url('../img/case_bull.jpeg');
            }
            &#manu{
                background-image: url('../img/case_manufacture.jpg');           
            }
            &#infra{
                background-image: url('../img/case_infra.jpg');  
            }
        }
        & .back-img{
            position:absolute;
            width: 100vw;
            height: 600px;
            top: 0;
            left: 50%;
            transform: translateX(-50%);

            background-size: 110%;
            background-position: center;
            background-repeat: no-repeat;
            opacity: 0;
            z-index: 1;
            transition: background-size 0.4s ease, opacity 0.4s ease;
            pointer-events: none; /* 背景にマウスが届かないように */
        }
        /* 初期表示を bull_back に */
        #bull_back {
            opacity: 1;
            background-size: 100%;
        } 
        &::after{            
            content: "";
            background-image: url('../img/case_bull.jpeg');
            background-size: 100% auto;
            background-position: center;
            background-repeat: no-repeat;
            position:absolute;
            width: 100vw;
            height: 600px;
            top: 0;
            left: 50%;
            transform: translateX(-50%);
            z-index: -1;
        } 

    @media (max-width: 1200px){
       height: auto;
       flex-flow: column;
       &::after{
        content: none;
       }

       .item{
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        flex-basis: 100%;

            &#bull{
                background-image: url('../img/case_bull.jpeg');
                > a{
                    justify-content: flex-end;
                }
            }
            &#manu{
                background-image: url('../img/case_manufacture.jpg');
                > a{
                    justify-content: flex-start;
                }
            }
            &#infra{
                background-image: url('../img/case_infra.jpg');
                > a{
                    justify-content: flex-end;
                }
            }
           
            > a{
                display: flex;
                height: auto;
                padding: 0;

                & .content{
                    flex-basis: 50%;
                    background-color: rgba(0,0,0,0.7);
                    margin-top: 0;
                    padding: 60px;
                    min-height: 350px;

                    @media (max-width: 750px){
                        flex-basis: 100%;
                    }

                    & .disc{
                        margin-top: 30px;
                    }
                    & .fade_in {
                        transform: none;
                        opacity: 1;
                    }
                }
            }
        }

       & .back-img{
        display: none;
       }
    }      
}

& .case_solution_bottom{
    width: 100%;
    height: 300px;
    background-image: url('../img/case_other.jpeg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 120% auto;
    transition: all 0.4s ease-in-out;

    & a{
        width: 100%;
        height: 300px;
        background-color: rgba(0, 0, 0, 0.7);
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
        position: relative;

        & .content{
            color: #fff !important;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 50px;
            min-height: 350px;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            transition: all 0.4s ease; 
            position: absolute;
            top: 50%;
            left: calc(50% - 40px);
            transform: translateY(-50%);                        
        } 

        & .title{
            line-height: 1.2;
            font-weight: 600;
            word-break: break-all;
            display: flex;
            flex-flow: column;
            justify-content: center;
            align-items: center;

            & .main_title{
                font-size: 26px;
                color: #ffffff;
                white-space: nowrap;
            }
            & .sub_title{
                margin-top: 13px;
                color: #ffffff;
            }
        }
        & .disc{
            line-height: 2;
            color: #fff;
        }
        & .more{
            color: #fff;
            margin-top: 10px;
            font-weight: bold;
            display: inline-block; 
            width: 120px;                   
        }
        .fade_in_right {
            transition: 0.8s ease-in-out;
            transform: translateX(30px);
            opacity: 0;
        }
        .fade_in_right.on {
            transform: translateX(0);
            opacity: 1.0;
        }
  
    }

    &:hover{
        background-size: 100% auto;

        & .content{
            left: 50%;
            transform: translate(-50% , -50%);
        }
    }
    @media (max-width: 1200px){
       height: 350px;
       min-height: 350px;
       background-size: cover;

       & .item{
            height: 350px;
            > a{
                height: 350px;
                background-color: unset;
                align-items: normal;
                justify-content: flex-start;

                & .content{
                    height: 350px;
                    width: 50%;
                    flex-basis: 50%;
                    margin-left: 0;
                    background-color: rgba(0,0,0,0.7);
                    flex-flow: column;
                    align-items: flex-start;
                    padding: 60px;
                    gap: 30px;
                    left: 0;

                    @media (max-width: 750px){
                        width: 100%;
                        flex-basis: 100%;
                        top: 0;
                        left: 0;
                        transform: unset;
                    }
                    & .title {
                        text-align: left;
                        align-items: flex-start;
                    }
                    & .fade_in_right {
                            transform: none;
                            opacity: 1.0;
                    }
                    & .more{
                        margin-top: 30px;
                    }
                }
            }
        }
    }
}

/*お知らせ*/
#news_list{
    padding: 80px 10px;

    & h2 {
    position: relative;
    font-weight:bold;
    border-bottom: solid 5px #28A7E1;
    margin: 0 auto 60px auto;
    padding: 5px 0 20px 0;
    width: fit-content;
    
        &:after {
        content: '';
        position: absolute;
        bottom: -5px;
        left: 0;
        width: 80px;
        height: 5px;
        background-color: #171C61;
        }
    }

    & .news_list{
        max-width: 1280px;
        margin: 0 auto;
        width: 100%;  
        background: #ffffff;     

        & li{
            padding: 20px;
            display: flex;
            align-items: center;
            border-left: 1px solid #dddddd;
            border-right: 1px solid #dddddd;
            border-top: 1px solid #dddddd;
            box-sizing: border-box;

            &:last-of-type{
                border-bottom: 1px solid #dddddd;
            }
            & a{
                cursor: pointer;
                align-items: center;
            }
        }

        @media (max-width: 750px){
            & li{
                > a{
                    flex-wrap :wrap;
                    & div{
                        padding: 4px;

                        &.news_date{
                            font-size: 12px;
                        }
                        &.news_cate{
                            font-size: 11px;
                            width: 100px;
                        }
                        &.news_text{
                            width: 100%;                            
                        }
                    }
                }
            }
        }
    }
}



/*------------------------------------------------------------------------------------------------------------*/
/* FAQ */
#faq{
    & #main_title{
        background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(../img/faq_bg.jpg);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        padding: 85px 0px;
    }
    & .faq-category{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 10px 0 40px;
    list-style: none;
    justify-content: space-between; 
    @media (max-width: 480px){
        gap: 10px;
    }
         
        & li{
        text-align: center;
        font-weight: bold;
        border: 1px solid #1A1A1A;
        flex: 1;
        border-radius: 10px;
        padding: 0;
        height: 80px;
        @media (max-width: 480px){
            height: 60px;
        }

            & a{
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0 40px 0 10px;
            white-space: nowrap;
            
            &::after{
            content: "";
            width: 12px;
            height: 12px;
            border-top: solid 2px #1A1A1A;
            border-right: solid 2px #1A1A1A;
            position: relative;
            top: 3px;
            right: -20px;
            transform: translateY(-50%) rotate(135deg);
            -webkit-transform: translateY(-50%) rotate(135deg);
            -ms-transform: translateY(-50%) rotate(135deg);                
            }
            }
        }
    }

    & .cate_container{
        margin-bottom: 100px;

        & h3{
            position: relative;
            font-size: 28px;
            padding: 0 0 30px 20px;
            border-bottom: solid 1px #013567;
            margin-bottom: 80px;            

            &::before{
                content:"";
                width: 10px;
                height: 28px;
                display: block;
                position: absolute;
                top: 0;
                left: 0;
                background: #013567;

            }
        }

        & .accordion{
            position: relative;
            border-bottom: solid 1px #013567;

            &:first-of-type{
                & .accordion_switch{
                    border-top: solid 1px #013567;
                }
            }
            & .accordion_switch{
                position: relative;
                padding: 30px 76px;
                font-size: 16px;
                font-weight: bold;

                &::before{
                    content: "Q";
                    position: absolute;
                    left: 10px;
                    top: 14px;
                    display: inline-block;
                    width: 56px;
                    height: 56px;
                    color:#ffffff;
                    font-weight: bold;
                    font-family: "Noto sans jp", sans-serif;
                    font-size: 28px;
                    line-height: 56px;                
                    text-align: center;
                    background: #013567;               
                }

                &::after{
                    position: absolute;                    
                    width: 60px;
                    height: 60px;
                    background-image:  center no-repeat cover;
                    right: 10px;
                    top: 10px;
                    transition: opacity 0.2s ease-out;
                }
                &::after{
                    content: url('../img/icon_plus.svg');              
                }
                &.active{
                    background: #f4f4f4;
                }               
                &.active::after{
                    content: url('../img/icon_minus.svg');
                }
            }
            & .accordion_switch.active + .accordion_content{
                background: #f4f4f4;            
            }
            & .accordion_content{
                position: relative;          
                padding: 10px 76px;

                &::before{
                    content: "A";
                    position: absolute;
                    left: 10px;
                    top: 14px;
                    display: inline-block;
                    width: 56px;
                    height: 56px;
                    color:#ffffff;
                    font-weight: bold;
                    font-family: "Noto sans jp", sans-serif;
                    font-size: 28px;
                    line-height: 56px;                
                    text-align: center;
                    background: #28A7E1;               
                }

                & .faq_answer{
                    line-height: 1.8;
                    min-height: 4rem;

                    &.paddingTop-16{
                        padding-top: 16px;
                    }
                    > a{
                        font-weight: bold;
                        color: #28A7E1;
                    }
                }
            }
        }
    }
}


/*------------------------------------------------------------------------------------------------------------*/
/* 導入事例（その他） */
@media (max-width: 600px) {
    .scene-table-wrapper{
        padding: 20px;
    }
}

#scene_other{
  & #scene_overview{
    & .inner{
        max-width: 1520px;

        & .scene-box2{
            padding: 20px;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;

            &.kaigo{
                background-image: url('../img/scene-other_bk01.jpg');
            }
            &.kinyu{
                background-image: url('../img/scene-other_bk02.jpg');
            }
            &.datacenter{
                background-image: url('../img/scene-other_bk03.jpg');
            }            
        }

        & .scene-heading{
            display: flex;
            align-items: center;

            gap: 40px;
            margin-bottom: 20px;

            & h3{
                font-size: 30px;
                color: #10A221;
                background: #ffffff;
                display: inline-block;
                line-height: 1.8;
                border-radius: 1.6rem;
                padding: 0 2rem;
                white-space: nowrap;
            }
            & p{
                color: #ffffff;
                font-size: 30px;
                line-height: 1.2;
                text-align: left;
            }
            @media (max-width: 480px){
                flex-flow: column;
                gap: 10px;

                & h3{
                    font-size: 24px;
                }
                & p{
                    font-size: 18px;
                }
            }
        }
        & .scene-container{
            display: flex;
            gap : 40px;

            @media (max-width: 980px) {
                flex-flow: column;
            }

            & .scene-kadai,
            & .scene-teian,
            & .scene-kouka{
                background: rgba(255,255,255, 0.8);
                border-radius: 10px;
                padding: 10px 20px;

                @media (max-width: 980px) {
                    width: 100%;
                }

                & h4{
                    border-left: solid 6px;
                    padding-left: 12px;
                    font-size: 16px;
                    font-weight: bold;
                    margin-bottom: 10px; 
                    text-align: left;                  
                }
                & .read-txt{
                    color: #ffffff;
                    padding: 10px; 
                    line-height: 1.4;
                    text-align: left;
                }

                & .txt-box{
                    border-radius: 10px;                
                    background: #ffffff;
                    margin: 40px 0 20px 40px;
                    position: relative; 
                    text-align: left;               

                    & h5{
                        position: absolute;
                        top: -30px;
                        left: -40px;
                        display: block;
                        width: 90px;
                        height: 90px;
                        border-radius: 50%;
                        color: #ffffff;
                        font-size: 36px;
                        line-height: 1;
                        text-align: center;

                        & span{
                            color: #ffffff;
                            font-size: 16px;
                            font-weight: normal;

                            &::after{
                                content: "\a";
                                white-space: pre;
                            }
                        }
                    }
                    & p{
                        font-weight: normal;
                        font-size: 14px;

                    }

                    @media (max-width: 480px){
                        padding: 20px !important;
                        margin-left: 26px;                        

                        & h5{
                            width: 60px;
                            height: 60px;
                            font-size: 22px;
                        }
                    }
                }
            }

            & .scene-kadai,
            & .scene-teian{
                position: relative;

                &::after{
                    content: url('../img/arrow.png');
                    width: 22px;
                    height: 26px;
                    display: inline-block;
                    position: absolute;
                    top: 50%;
                    right: -32px;
                    transform: translateY(-50%);

                    @media (max-width: 980px) {
                        content: none;
                    }
                }

            }

            & .scene-kadai{
                & h4{
                    border-color: #585757;
                    color: #585757;
                }
                & .read-txt{
                    background: #585757;
                }
                & .txt-box{
                    padding: 40px 20px 20px 40px;
                    border: solid 1px #898989;                    

                    & h5{
                        background: #898989;
                    }
                }
            }
            & .scene-teian{
                & h4{
                    border-color: #6E8C57;
                    color: #6E8C57;
                }
                & .read-txt{
                    background: #6E8C57;
                }
                & .txt-box{
                    padding: 20px;
                    background: #EDF1CA;
                    margin: 0 0 20px 0;

                    & img{
                        margin-top: 0;
                        margin-bottom: 20px;
                    }
                    & dl{
                        padding-left: 40px;
                        
                        & dt{
                            font-weight: bold;
                            font-size: 14px;
                            color: #6E8C57;
                            margin-bottom: 6px;
                            position: relative;

                            &::before{
                                content:"";
                                position: absolute;
                                top: 50%;
                                left: -40px;
                                transform: translateY(-50%);
                                width: 30px;
                                height: 30px;
                                display: inline-block; 
                                background-size: contain;
                                vertical-align: middle;
                            }
                            &.list-1{&::before{background-image: url('../img/listmark_01.png');}}
                            &.list-2{&::before{background-image: url('../img/listmark_02.png');}}
                            &.list-3{&::before{background-image: url('../img/listmark_03.png');}}
                            &.list-4{&::before{background-image: url('../img/listmark_04.png');}}
                            &.list-5{&::before{background-image: url('../img/listmark_05.png');}}
                            &.list-6{&::before{background-image: url('../img/listmark_06.png');}}
                        }
                        & dd{
                            font-weight: normal;
                            font-size: 14px;
                            line-height: 1.4;
                            margin-bottom: 14px;
                        }
                    }
                    & .label{
                        display: inline-block;
                        color: #6E8C57;
                        font-weight: bold;
                        font-size: 16px;
                        background: #ffffff;
                        border: solid 1px #6E8C57;
                        padding: 8px 12px;
                        margin: 20px 0;
                    }
                }
            }
            & .scene-kouka{
                & h4{
                    border-color: #3D6AAE;
                    color: #3D6AAE;
                }
                & .read-txt{
                    background: #3D6AAE;
                }
                & .txt-box{
                    padding: 40px 20px 20px 40px;
                    border: solid 1px #67A1D4;

                    & h5{
                        background: #67A1D4;
                    }
                }
            }

        }        
        
    }
  }
}
