@charset "utf-8";
/* 
サイト固有の記述
*/

/* 全体（色系）*/
body {
    .add_contact {
        .bnr_flex .li:first-child a:before
    }

    .flow_numbox .li .numbox_ttl .ttl_txt {
        font-family:"メイリオ", Meiryo, sans-serif;
    }
    
}

/* パソコン以上*/
@media screen and (min-width: 1281px) {
    body {

        #main_visual .copy_text {
            width: 48%;

            figure {
                width: 80%;
            }

            .f20 {
                font-size: 18px;
            }
        }


        &.design {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec02 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                .ttl05 {
                    border-bottom: 1px solid #cccccc;
                }
            }

            .sec03 {
                .teleco_ul .li:nth-child(odd) .txtbox {
                    margin-left: 60px;
                }

                .teleco_ul .li:nth-child(even) .txtbox {
                    margin-right: 60px;
                }

                .teleco_ul .li .imgbox {
                    width: 45%;
                }
            }

        }

        &.seo {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec03 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                hr.line01.type01 {
                    padding-bottom: 50px;
                    margin-bottom: 50px;
                }

                .layout_a .txtbox {
                    margin-right: 60px;
                }

                .layout_a .imgbox,
                .layout_b .imgbox {
                    width: 50%;
                }

                .layout_b .txtbox {
                    margin-left: 60px;
                }
            }
        }

        &.movie {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec02 {
                .layout_b .txtbox {
                    margin-left: 60px;
                }

                .layout_b .imgbox {
                    width: 45%;
                }
            }

            .sec04 {
                background-color: #fff;
            }
        }

        &.meo {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec02 {
                .layout_b .txtbox {
                    margin-left: 60px;
                }

                .layout_b .imgbox {
                    width: 45%;
                }
            }

            .sec03 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                hr.line01.type01 {
                    padding-bottom: 50px;
                    margin-bottom: 50px;
                }

                .layout_a .txtbox {
                    margin-right: 60px;
                }

                .layout_b .txtbox {
                    margin-left: 60px;
                }

                .layout_a .imgbox {
                    width: 45%;
                }

            }
        }
        
        &.sns {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec02 {
               hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                } 
            }

            .sec03 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                hr.line01.type01 {
                    padding-bottom: 50px;
                    margin-bottom: 50px;
                }

                .layout_a .txtbox {
                    margin-right: 60px;
                }

                .layout_a .imgbox {
                    width: 45%;
                }
            } 
        }

        &.media-management {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec01 {
                padding: 0 0 100px;
            }

            .sec02,
            .sec03 {
                padding: 100px 0;
            }
        }

        &.llmo_geo {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec01 {
                padding: 0 0 80px;

                .layout_a .txtbox {
                    margin-right: 80px;
                }

                .layout_b .txtbox {
                    margin-left: 80px;
                }
            }

            .sec02 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                .ttl05 {
                    border-bottom: 1px solid #cccccc;
                }
            }
        }


        &.web-advertising {
            .sec00 {
                hr.line01 {
                    padding-bottom: 60px;
                    margin-bottom: 100px;
                }
            }

            .sec01 {
                padding: 0 0 80px;

                .layout_a .txtbox {
                    margin-right: 80px;
                }

                .layout_b .txtbox {
                    margin-left: 80px;
                }
            }

            .sec02 {
                hr.line01 {
                    padding-bottom: 40px;
                    margin-bottom: 50px;
                }

                .ttl05 {
                    border-bottom: 1px solid #cccccc;
                }
            }
        }

        &.features {
            .sec01 {
                hr.line01.type01 {
                    padding-bottom: 80px;
                    margin-bottom: 80px;
                }
            }
        }

        &.company {
            .sec01 {
                hr.line01.type01 {
                    padding-bottom: 80px;
                    margin-bottom: 80px;
                }
            }
        }

        .contact_infoarea {
            .box {
                padding: 0 5%;
            }
        }
        
    }
}

/* モニター以上*/
@media screen and (min-width: 1860px) {
    body {

        #main_visual .copy_text {
            width: 40%;

            figure {
                width: 100%;
            }

            .f20 {
                font-size: 20px;
            }
        }

        
    }
}

/* タブレット*/
@media screen and (max-width: 1024px) {
    body {

        .contents_2cul ._sidenav_wrapper {
            left: 0;
        }

        .contents_2cul  {
            padding-left: 230px;
        }

        #main_visual .copy_text {

            width: 75%; 

            .btn03 {
                text-align: left;
            }
        }
    }
}

/* 携帯*/
@media screen and (max-width: 767px) {
    body {
        .contents_2cul {
            padding-left: 0;
        }

        .tbl_list02 li .list_ttl {
            width: 20%;
        }

        main section .page_title {
            left: 5%;
        }

        .add_contact {
            .fa-arrow-circle-right:before,
        .fa-circle-arrow-right:before {
            display: none;
        }
        }

        #main_visual {
            height: 70vh;
        }
        
        .main-catch {
            height: 70vh;
        }

        .tp_sec01 {
            .sp_letter-spacing {
                letter-spacing: 3px;
            }
        } 
    }
}
