@charset "UTF-8";

.solution_wrap .sub_title {
    margin: 0 auto 0;
}
.solution_wrap .pcNone {
    display: none;
}

.solution_wrap .bk_gray,
.solution_wrap .bk_white {
    width: 100%;
    padding: 85px 0;
    position: relative;
}

.solution_wrap .branding.bk_gray {
    padding-bottom: 150px;
}
.solution_wrap .promotion.bk_white,
.solution_wrap .creative.bk_gray {
    padding: 85px 0 150px;
}


.solution_wrap .bk_gray-02,
.solution_wrap .bk_white-02 {
    width: 100%;
    padding: 0 0 85px 0;
}

.solution_wrap .bk_gray {
    background-color: #f3f3f3;
}

.solution_wrap .bk_gray-02 {
    background-color: #f3f3f3;
}

.solution_wrap .sub_container {
    max-width: 1000px;
    width: 100%;
}

.solution_wrap .ssub_title {
    font-family: "TBGothic M", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 28px;
    font-weight: bold;
    line-height: 1
}
.solution_wrap .ssub_title span {
    
    font-family: FB Benton Sans Medium;
    font-size: 16px;
    font-weight: normal;
    padding-left: 35px;
}
.solution_wrap .ssub_title_lead {
    font-size: 18px;
    color: #333;
    line-height: 2.1;
    margin-top: 35px;
    letter-spacing: -0.01em;
}
.solution_wrap .top_lead {
    margin-top: 70px;
}

@media screen and (max-width: 1050px) {
    .solution_wrap .sub_container {
        max-width: 100%;
        width: auto;
    }
}
@media screen and (max-width: 768px) {
    
    .solution_wrap .sub_title {
        padding: 0;
        /* margin-bottom: 4.6667vw; */
        margin-bottom: 16vw;
        text-align: center;
    }
    .solution_wrap .sub_title .main_title {
        font-size: 6.6667vw;
    }
    .solution_wrap .sub_title .main_title span {
        display: block;        
        font-size: 3.7333vw;
        margin-top: 2.6667vw;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap {
        padding: 0;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service {
        display: flex;
        justify-content: center;
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
        margin: 0 -3.3333vw;

        justify-content: left;
        margin: 0;
        flex-wrap: wrap;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service > li {
        box-sizing: border-box;
        text-align: left;
        display: inline-block;
        width: 50%;
        padding: 7px 20px 7px 0;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service > li > a {
        color: #000;
        	font-family: "TBGothic M", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
        font-weight: 600;
        display: inline-block;
        text-align: center;
        /* font-size: 3.2vw; */
        font-size: 4.2666vw;
        line-height: 1;
    }
    /* .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service li:nth-child(1) a {
        padding: 0 2vw 0 0;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service li:nth-child(2) a {
        padding: 0 2vw;
    }
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service li:nth-child(3) a {
        padding: 0 0 0 2vw;
    } */
    .solution_wrap.sercive_wrap .sub_tab_menuWrap #menu-service > li > a::before {
        background: #000;;
    }

    .solution_wrap .bk_gray,
    .solution_wrap .bk_white {
        padding: 10.6667vw 0;
    }
    

    .solution_wrap .branding.bk_gray {
        padding-bottom: 13.3333vw
    }
    .solution_wrap .promotion.bk_white,
    .solution_wrap .creative.bk_gray {
        padding: 10.6667vw 0 13.3333vw;
    }
    


    .solution_wrap .bk_gray-02,
    .solution_wrap .bk_white-02 {
        padding: 0 0 10.6667vw 0;
    }
    
    .solution_wrap .sub_container {
        padding: 0 3.3333vw;
        width: 93.333vw;
        margin: 0 auto;
    }
    .solution_wrap .pcNone {
        display: block;
    }

    .solution_wrap .ssub_title {
        font-size: 5.3333vw;
        text-align: center;
        line-height: 1.3;
    }
    .solution_wrap .ssub_title span {
        display: block;
        font-size: 3.7333vw;
        padding-left: 0;
        margin-top: 2.6667vw;
    }
    .solution_wrap .ssub_title_lead {
        font-size: 4.2666vw;
        line-height: 1.8;
        margin-top: 5.3333vw;
    }
    .solution_wrap .top_lead {
        margin-top: 8vw;
        /* padding-bottom: 10.6667vw; */
    }

}


/* ソリューション top */
.solution_wrap .special_listBox ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin: 85px auto 100px;
}
.solution_wrap .special_listBox ul li {
    width: 30%;
    position: relative;
}
.solution_wrap .special_listBox ul li .ye_bk {
    display: block;
    width: 230px;
    height: 230px;
    background: #fff100;
    border-radius: 50%;
    font-size: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.solution_wrap .special_listBox ul li .txt_box b {
    display: block;
    font-size: 32px;
    text-align: center;
}
.solution_wrap .special_listBox ul li .txt_box p {
    font-size: 14px;
    line-height: 2;
    margin-top: 10px;
}

/* Common Button */

.solution_wrap .special_listBox .works_btn {
    width: 30%;
    border: 1px solid #000;
    border-radius: 50px;
    text-align: center;
    overflow: hidden;
    box-sizing: border-box;
    z-index: 1;
    margin: 0 auto 80px;
}
.solution_detailsWrap .special_listBox .works_btn {
    margin-top: 60px;
}

.solution_detailsWrap .works_box .contact_box .special_listBox .works_btn {
    width: 40%;
    margin: 15px auto 0;
}
.solution_wrap .special_listBox .works_btn:hover {
    border: 1px solid #fff !important;
}

.solution_wrap .special_listBox .works_btn a {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
}
.solution_wrap .special_listBox .works_btn .eff-01 {
    width: 100%;
    height: 100%;
    background: #fff100;
    border: 1px solid #fff100;
    color: #000;
    top: 0px;
    left: -101%;
    position: absolute;
    transition: all .5s ease;
    z-index: 1;
}
.solution_wrap .special_listBox .works_btn:hover .eff-01 {
    left: 0;
}
.solution_wrap .special_listBox .works_btn a p {
    text-align: left;
    line-height: 1;
    position: relative;
    z-index: 2;
    font-size: 20px;
    margin: 6% 0;
}
.solution_detailsWrap .special_listBox .works_btn a p {
    font-size: 18px;
    margin: 7.5% 0;
}
.solution_detailsWrap .works_box .contact_box .works_btn a p {
    font-weight: bold;
}
.solution_wrap .special_listBox .works_btn a span {
    display: block;
    width: 7.5%;
    height: 1px;
    background: #000;
    position: absolute;
    right: 10%;
    top: 50%;
    z-index: 3;
}
.solution_wrap .special_listBox .works_btn a span::before {
    display: block;
    content: "";
    width: 10px;
    height: 1px;
    margin-top: -4px;
    margin-left: -8px;
    background: #000;
    position: relative;
    left: 100%;
    top: 0;
    z-index: 4;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(
45deg);
    transform: rotate(
45deg);
}
.solution_wrap .special_listBox .works_btn a span::after {
    display: block;
    content: "";
    width: 10px;
    height: 1px;
    margin-top: 6px;
    margin-left: -8px;
    background: #000;
    position: relative;
    left: 100%;
    top: 0;
    z-index: 4;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(
-45deg);
    transform: rotate(
-45deg);
}

@media screen and (max-width: 1050px) {
    .solution_detailsWrap .works_box .contact_box .special_listBox .works_btn {
        width: 50%;
    }
}
@media screen and (max-width: 768px) {

    .solution_wrap .special_listBox ul {
        width: 80vw;
        flex-direction: column;
        margin: 8vw auto 10.6667vw;
    }
    .solution_wrap .special_listBox ul li {
        width: 100%;
        height: 40vw;
        margin-bottom: 5.3333vw;
    }
    .solution_wrap .special_listBox ul li:last-child {
        margin-bottom: 0;
    }
    .solution_wrap .special_listBox ul li .ye_bk {
        width: 40vw;
        height: 40vw;
    }
    .solution_wrap .special_listBox ul li .txt_box b {
        font-size: 5.6vw;
        padding-top: 7.3333vw;
    }
    .solution_wrap .special_listBox ul li .txt_box p {
        font-size: 3.2vw;
        line-height: 1.8;
    }


    .solution_wrap .special_listBox .works_btn {
        width: 40vw;
        margin: 0 auto 10.6667vw;
    }
    .solution_detailsWrap .special_listBox .works_btn {
        margin-top: 4.6667vw;
    }
    .solution_detailsWrap .works_box .contact_box .special_listBox .works_btn {
        width: 80vw;
        margin: 6vw auto 0;
    }
    .solution_wrap .special_listBox .works_btn .eff-01 {
        left: -40vw;
    }
    .solution_detailsWrap .works_box .contact_box .special_listBox .works_btn .eff-01 {
        left: -80vw;
    }
    .solution_wrap .special_listBox .works_btn a p {
        font-size: 3.6vw;
        margin: 2.9333vw 0;
    }
    .solution_detailsWrap .special_listBox .works_btn a p {
        font-size: 3.7333vw;
        margin: 4vw 0;
        width: 100%;
        text-align: center;
    }
    .solution_wrap .special_listBox .works_btn a span {
        width: 3.7333vw;
        right: 5.3333vw;
    }
    .solution_wrap .special_listBox .works_btn a span::before {
        width: 7px;
        margin-top: -3px;
        margin-left: -7px;
    }
    .solution_wrap .special_listBox .works_btn a span::after {
        width: 7px;
        margin-left: -7px;
        margin-top: 5px;
    }
}


/* 強み 効果 */
.solution_wrap .point_box {
    margin: 50px 0 0;
}
.solution_wrap .point_box ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.solution_wrap .point_box ul li {
    width: 48%;
    background: #fbfbfb;
    padding: 2% 3%;
    box-sizing: border-box;
}
.solution_wrap .point_box ul li b {
    display: block;
    font-size: 20px;
    margin-bottom: 15px;
    position: relative;
}
.solution_wrap .point_box ul li b::before {
    display: block;
    content: "";
    width: 5px;
    height: 30px;
    background: #fff100;
    position: absolute;
    top: 50%;
    left: -15px;
    transform: translateY(-50%);
}
.solution_wrap .point_box ul li p {
    font-size: 16px;
    color: #333;
    line-height: 2.1;
}
@media screen and (max-width: 768px) {
    .solution_wrap .point_box {
        margin: 8.6667vw 0 0;
    }
    .solution_wrap .point_box ul {
        flex-direction: column;
    }
    .solution_wrap .point_box ul li {
        width: 100%;
        padding: 3.3333vw 5.3333vw;
        margin-bottom: 5.3333vw;
    }
    .solution_wrap .point_box ul li:last-child {
        margin-bottom: 0;
    }
    .solution_wrap .point_box ul li b {
        font-size: 4.8vw;
        margin-bottom: 2.6667vw;
    }
    .solution_wrap .point_box ul li b::before {
        width: 0.6667vw;
        height: 5.0667vw;
        left: -3.3333vw;
    }
    .solution_wrap .point_box ul li p {
        font-size: 4.2666vw;
        line-height: 1.5;
    }
}


.solution_wrap .service_cont {
    padding: 80px 0 0;
}
.solution_wrap .sercive_wrap .link_arrow span {
    background-size: 16px;
    width: 24px;
    height: 24px;
    position: relative;
    color: #000;
    z-index: 3;
    display: block;
    background-image: url(../img/common/arrow_icon.png);
    background-position: 70% 70%;
    background-repeat: no-repeat;
    position: relative;
    margin-top: 0;
}
.solution_wrap .slider_pc .sub_thumbnail_list p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 260px;
}

.solution_wrap .sub_thumbnail_list_wrap h4 {
    color: #666;
    margin-bottom: 80px;    
}
.solution_wrap .sub_thumbnail_list li {
    margin-bottom: 0;
}
.solution_wrap .sub_thumbnail_list li:last-child {
    margin-right: 0;
    margin-bottom: 0;
}


@media screen and (max-width: 768px) {
    .solution_wrap .service_cont {
        padding: 80px 0 0;
    }
    .solution_wrap .sub_thumbnail_list_wrap h4 {
        margin-bottom: 5.3333vw;
    }
    .solution_wrap .swiper-container.gallery-top {
        height: auto;
    }
    .solution_wrap.sercive_wrap .slider_sp {
        position: relative;
    }
    .solution_wrap.sercive_wrap .slider_sp .swiper-container {
        padding-bottom: 13.3333vw;
    }
    .solution_wrap .cases_con_sp .swiper-container {
        margin-top: 8vw;
        padding-bottom: 0;
    }
    .solution_wrap .works_list_sp .swiper-container {
        margin-top: 8vw;
        padding-bottom: 13.3333vw;
    }

    
    .solution_wrap .cases_con_sp .sub_thumbnail_list b {
        display: block;
        text-align: center;
        font-size: 4.8vw;
        line-height: 1.3;
        margin: 0 auto 3.3333vw;
    }
    .solution_wrap .cases_con_sp .sub_thumbnail_list p {
        font-size: 4.2666vw;
        color: #333;
        line-height: 1.8;
        margin: 2vw auto 13vw;
    }
    .solution_wrap .swiper-container .swiper-slide p.tit {
        text-align: center;
    }
    .solution_wrap .swiper-container .swiper-slide p.tit a {
        font-size: 4.2666vw;
        font-weight: bold;
    }
    .solution_wrap .sub_thumbnail_list li .img_box {
        width: 93.333vw;
        margin: 0 auto;
    }
    .solution_wrap .swiper-button-prev, 
    .solution_wrap .swiper-button-next {
        position: absolute;
        width: 8vw;
        height: 8vw;
        z-index: 10;
        cursor: pointer;
        -moz-background-size: 8vw 8vw;
        -webkit-background-size: 8vw 8vw;
        background-size: 8vw 8vw;
        background-position: center;
        background-repeat: no-repeat;
    }

    .solution_wrap .swiper-button-prev, 
    .solution_wrap .swiper-button-next {
        top: 96%;
    }
    .solution_wrap .cases_con_sp .swiper-button-prev, 
    .solution_wrap .cases_con_sp .swiper-button-next,
    .solution_wrap .works_list_sp .swiper-button-prev, 
    .solution_wrap .works_list_sp .swiper-button-next {
        top: 96%;
    }
    .solution_wrap.sercive_wrap .swiper-button-prev, 
    .solution_wrap.sercive_wrap .swiper-button-next {
        position: absolute;
        width: 8vw;
        height: 8vw;
        z-index: 10;
        margin-top: -8px;
        cursor: pointer;
        -moz-background-size: 8vw 8vw;
        -webkit-background-size: 8vw 8vw;
        background-size: 8vw 8vw;
        background-position: center;
        background-repeat: no-repeat;
    }
    .solution_wrap .swiper-button-next.swiper-button-white, 
    .solution_wrap .swiper-container-rtl .swiper-button-prev.swiper-button-white {
        background-image: url(../img/sub/right_arrow_icon.png);
        right: 0;
    }
    .solution_wrap .swiper-button-prev.swiper-button-white, 
    .solution_wrap .swiper-container-rtl .swiper-button-next.swiper-button-white {
        background-image: url(../img/sub/left_arrow_icon.png);
        left: 0;
    }
    .solution_wrap .cases_con_sp .swiper-button-next.swiper-button-white, 
    .solution_wrap .cases_con_sp .swiper-container-rtl .swiper-button-prev.swiper-button-white,
    .solution_wrap .works_list_sp .swiper-button-next.swiper-button-white, 
    .solution_wrap .works_list_sp .swiper-container-rtl .swiper-button-prev.swiper-button-white {
        right: 0;
    }
    .solution_wrap .cases_con_sp .swiper-button-prev.swiper-button-white, 
    .solution_wrap .cases_con_sp .swiper-container-rtl .swiper-button-next.swiper-button-white,
    .solution_wrap .works_list_sp .swiper-button-prev.swiper-button-white, 
    .solution_wrap .works_list_sp .swiper-container-rtl .swiper-button-next.swiper-button-white {
        left: 0;
    }
    .solution_wrap .cases_con_sp .swiper-pagination-fraction, 
    .solution_wrap .cases_con_sp .swiper-pagination-custom, 
    .solution_wrap .cases_con_sp .swiper-container-horizontal>.swiper-pagination-bullets {
        bottom: 2vw;
    }
    .solution_wrap .works_list_sp .swiper-pagination-fraction, 
    .solution_wrap .works_list_sp .swiper-pagination-custom, 
    .solution_wrap .works_list_sp .swiper-container-horizontal>.swiper-pagination-bullets {
        bottom: 1.6vw;
    }
    .solution_wrap.sercive_wrap .swiper-pagination-fraction, .swiper-pagination-custom, .solution_wrap.sercive_wrap .swiper-container-horizontal>.swiper-pagination-bullets {
        bottom: 1.6vw;
    }

}




/*---------------------------------------------
  詳細ページ
---------------------------------------------*/
.solution_detailsWrap {

}
.solution_detailsWrap .main_copy {
    display: block;
    font-size: 28px;
    line-height: 1.78;
    margin-top: 50px;
}
.solution_detailsWrap .main_copy span {
    background: #fff100;
    padding-top: 7px;
}


/* 選ばれる3つの理由 */
.solution_detailsWrap .reason_list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}
.solution_detailsWrap .reason_list li {
    width: 30.6%;
    background: #fff;
    padding: 2.5% 2%;
    box-sizing: border-box;
}
.solution_detailsWrap .reason_list li .num {
    margin: 0 auto;
}
.solution_detailsWrap .reason_list li:nth-child(1) .num {
    width: 17.3203%;
}
.solution_detailsWrap .reason_list li:nth-child(2) .num {
    width: 20.9150%;
}
.solution_detailsWrap .reason_list li:nth-child(3) .num {
    width: 20.9150%;
}

.solution_detailsWrap .reason_list li .tit {
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 18px 0 15px;
}
.solution_detailsWrap .reason_list li b {
    display: block;
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
}
.solution_detailsWrap .reason_list li b span {
    background: linear-gradient(transparent 50%, #fff100 0%);
}
.solution_detailsWrap .reason_list li p {
    font-size: 16px;
    color: #333;
    line-height: 2.1;
}

.solution_detailsWrap .recommend_box {
    margin-top: 75px;
    border: 1px solid #fff;
    padding: 40px 9.5% 25px;
    box-sizing: border-box;
    position: relative;
}
.solution_detailsWrap .recommend_box .tit {
    width: 35.9%;
    position: absolute;
    top: -17px;
    left: 50%;
    transform: translateX(-50%);
}
.solution_detailsWrap .recommend_box>ul {
    display: flex;
    justify-content: space-between;
}
.solution_detailsWrap .recommend_box>ul>li {
    width: 50%;
}
.solution_detailsWrap .recommend_box>ul li ul li {
    font-size: 16px;
    color: #333;
    line-height: 1.6;
    margin-bottom: 15px;
    padding-left: 25px;
    position: relative;
}
.solution_detailsWrap .recommend_box>ul li ul li:last-child {
    margin-bottom: 0;
}
.solution_detailsWrap .recommend_box>ul li ul li::before {
    display: block;
    content: "";
    width: 19px;
    height: 15px;
    background: url('../img/solution/check_img.png') no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 3px;
}

@media screen and (max-width: 1050px) {
    .solution_detailsWrap .recommend_box {
        padding: 40px 5% 25px;
    }
    .solution_detailsWrap .recommend_box>ul>li {
        margin-right: 10px;
        width: 100%;
        margin-bottom: 4vw;
    }
    .solution_detailsWrap .recommend_box>ul>li:last-of-type {
        margin-bottom: 0
    }
    .solution_detailsWrap .recommend_box>ul li ul li {
        line-height: 1.6;
    }
    .solution_detailsWrap .recommend_box>ul li ul li::before {
        top: 3px;
        margin-top: 0;
    }
}

@media screen and (max-width: 768px) {
    .solution_detailsWrap .main_copy {
        font-size: 5.0667vw;
        line-height: 1.68;
        margin-top: 8vw;
    }
    .solution_detailsWrap .main_copy span {
        padding-top: 5px;
    }

    .solution_detailsWrap .reason_list {
        flex-direction: column;
        margin-top: 8vw;
    }
    .solution_detailsWrap .reason_list li {
        width: 100%;
        padding: 5.3333vw;
        margin-top: 5.3333vw;
    }
    .solution_detailsWrap .reason_list li:first-child {
        margin-top: 0;
    }

    .solution_detailsWrap .reason_list li:nth-child(1) .num {
        width: 9.2vw;
    }
    .solution_detailsWrap .reason_list li:nth-child(2) .num {
        width: 10.9333vw;
    }
    .solution_detailsWrap .reason_list li:nth-child(3) .num {
        width: 10.9333vw;
    }

    .solution_detailsWrap .reason_list li .tit {
        height: auto;
        margin: 4.6667vw 0;
    }
    .solution_detailsWrap .reason_list li b {
        font-size: 4.8vw;
    }
    .solution_detailsWrap .reason_list li p {
        font-size: 4.2666vw;
        line-height: 1.8;
    }

    .solution_detailsWrap .recommend_box {
        margin-top: 9.3333vw;
        padding: 6.6667vw 5.3333vw;
    }
    .solution_detailsWrap .recommend_box .tit {
        width: 71.4667vw;
        top: -2.6667vw;
    }
    .solution_detailsWrap .recommend_box>ul {
        flex-direction: column;
    }
    .solution_detailsWrap .recommend_box>ul li ul li {
        font-size: 3.7333vw;
        margin-bottom: 4vw;
        padding-left: 6.6667vw;
    }
    .solution_detailsWrap .recommend_box>ul li ul li::before {
        width: 4.5333vw;
        height: 3.7333vw;
    }

}



/* [ グラフィック ] 活用例 */
.solution_detailsWrap .cases_box .ssub_title {
    margin-bottom: 55px;
}
.solution_detailsWrap .cases_con_pc {
    display: block;
}
.solution_detailsWrap .cases_con_sp {
    display: none;
}
.solution_detailsWrap .cases_con_pc ul li {
    margin-bottom: 40px;
}
.solution_detailsWrap .cases_con_pc ul li:last-child {
    margin-bottom: 0;
}
.solution_detailsWrap .cases_con_pc ul li,
.solution_detailsWrap .cases_con_pc ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.solution_detailsWrap .cases_con_pc ul li .img_box {
    width: 300px;
    height: 200px;
    overflow: hidden;
    background: #ddd;
    border: 1px solid #e6e6e6;
}
.solution_detailsWrap .cases_con_pc ul li .img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.solution_detailsWrap .cases_con_pc ul li .txt_box {
    width: 67%;
}



.solution_detailsWrap .cases_con_pc ul li .txt_box b {
    font-size: 22px;
}
.solution_detailsWrap .cases_con_pc ul li .txt_box p {
    font-size: 18px;
    color: #333;
    line-height: 1.8;
    margin-top: 15px;
}
@media screen and (max-width: 1050px) {
    .solution_detailsWrap .sub_container {
        padding: 0 1em;
    }
    .solution_detailsWrap .cases_con_pc ul li .img_box {
        margin-right: 1em;
    }
}

@media screen and (max-width: 768px) {
    .solution_detailsWrap .cases_box .ssub_title {
        margin-bottom: 8vw;
    }
    .solution_detailsWrap .cases_con_pc {
        display: none;
    }
    .solution_detailsWrap .cases_con_sp {
        display: block;
    }
}



/* 基本的なグラフィック制作のプロセス */
.solution_detailsWrap .process_box .process_block {
    /* padding: 0 2%; */
}
.solution_wrap .process_box .ssub_title_lead {
    margin-bottom: 60px;
}
.solution_detailsWrap .process_box .process_block li {
    margin-top: 15px;
    background: #fff;
    padding: 0 2%;
}
.solution_detailsWrap .process_box .process_block li:first-child {
    margin-top: 0;
}
.solution_detailsWrap .process_box .process_tit {
    padding: 2.5% 1%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.solution_detailsWrap .process_box .process_tit p {
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
}
.solution_detailsWrap .process_box .process_tit p b {
    font-size: 31px;
    padding-right: 25px;
}
.solution_detailsWrap .process_box .process_tit p small {
    font-size: 16px;
    font-weight: normal;
    padding-left: 25px;
}
.solution_detailsWrap .process_box .process_tit span {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #fff100;
    position: relative;
}
.solution_detailsWrap .process_box .process_tit span::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 1px #111000;
    border-right: solid 1px #111000;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -3px;
    margin-left: -4px;
    transition: all .3s ease;
}
.solution_detailsWrap .process_box li.on .process_tit span::before {
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -1px;
}

.solution_detailsWrap .process_box .process_con {
    border-top: 1px solid #fff100;
    padding: 2% 8.3333%;
} 
.solution_detailsWrap .process_box .process_con p {
    line-height: 1.8;
    font-size: 18px;
    color: #333;
}
.solution_detailsWrap .process_box .process_con p + p {
    margin-top: 10px;
}
.solution_detailsWrap .process_box .process_con p b {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .solution_wrap .process_box .ssub_title {
        line-height: 1.3;
    }
    .solution_wrap .process_box .ssub_title_lead {
        margin-bottom: 8.6667vw;
    }
    .solution_detailsWrap .process_box .process_block li {
        margin-top: 2.6667vw;
        padding: 0 2.6667vw;
    }
    .solution_detailsWrap .process_box .process_tit {
        padding: 4.6667vw 2.6667vw;
    }
    .solution_detailsWrap .process_box .process_tit p {
        font-size: 4.8vw;
        width: 100%;
    }
    .solution_detailsWrap .process_box .process_tit p b {
        font-size: 5.0667vw;
        padding-right: 2.6667vw;
    }
    .solution_detailsWrap .process_box .process_tit p small {
        font-size: 3.2vw;
        padding-left: 2.6667vw;
        letter-spacing: -0.03em;
        line-height: 1.3;
    }
    .solution_detailsWrap .process_box .process_tit span {
        width: 5.4667vw;
        height: 5.4667vw;
    }
    .solution_detailsWrap .process_box .process_tit span::before {
        width: 1.2vw;
        height: 1.2vw;
        margin-top: -3px;
        margin-left: -3px;
    }

    .solution_detailsWrap .process_box .process_con {
        padding: 5.3333vw 2.6667vw;
    } 
    .solution_detailsWrap .process_box .process_con p {
        line-height: 1.8;
        font-size: 4.2666vw;
    }
    .solution_detailsWrap .process_box .process_con p + p {
        margin-top: 4vw;
    }

}




/* [ グラフィック ] 制作実績紹介 */
.solution_wrap .bk_white.works_box {
    padding: 85px 0 0;
}

.solution_detailsWrap .works_box .ssub_title {
    margin-bottom: 65px;
}
.solution_detailsWrap .works_box .works_list_pc ul {
    display: flex;
    justify-content: center;
}

.solution_detailsWrap .works_box .works_list_sp {
    display: none;
}

.solution_detailsWrap .works_box .works_list_pc ul li {
    width: 270px;
    height: 180px;
	overflow: hidden;
	position: relative;  
}

.solution_detailsWrap .works_box .works_list_pc ul li + li {
    margin-left: 9.5%;
}
.solution_detailsWrap .works_box .works_list_pc ul li .mask {
	width: 100%;
    height: 100%;
    padding: 0 20px;
    box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	background-color: rgba(0,0,0,0.5);
	-webkit-transition:	all 0.4s ease;
	transition: all 0.4s ease;
}
.solution_detailsWrap .works_box .works_list_pc ul li .caption {
    width: 100%;
    height: 100%;
	font-size: 20px;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}
.solution_detailsWrap .works_box .works_list_pc ul li:hover .mask {
	opacity: 1;
}


.solution_detailsWrap .works_box .contact_box {
    border-top: 1px solid #ddd;
    padding-top: 70px;
}
.solution_detailsWrap .works_box .contact_box p {
    text-align: center;
    line-height: 2;
    font-size: 18px;
    color: #333;
}

@media screen and (max-width: 768px) {
    .solution_wrap .bk_white.works_box {
        padding: 10.6667vw 0 0;
    }
    .solution_detailsWrap .works_box .ssub_title {
        margin-bottom: 8vw;
    }
    .solution_detailsWrap .works_box .works_list_pc {
        display: none;
    }
    .solution_detailsWrap .works_box .works_list_sp {
        display: block;
    }


    .solution_detailsWrap .works_box .contact_box {
        padding-top: 10.6667vw;
    }
    .solution_detailsWrap .works_box .contact_box p {
        line-height: 1.8;
        font-size: 4.2666vw;
    }
}


.solution_detailsWrap .movie_kind h2 {
    margin-bottom: 15px;
}
.solution_detailsWrap .movie_kind ul li + li {
    margin-top: 30px;
    margin-bottom: 60px;
}
.solution_detailsWrap .movie_kind b {
    font-size: 20px;
}
.solution_detailsWrap .movie_kind p {
    font-size: 18px;
    line-height: 1.8;
    margin-top: 15px;
    color: #333;
}
@media screen and (max-width: 768px) {
    .solution_detailsWrap .movie_kind b {
        font-size: 4.8vw;
    }
    .solution_detailsWrap .movie_kind p {
        font-size: 4.2666vw;
        line-height: 1.8;
    }
}


.solution_detailsWrap .civi_dwBox.secWrap07 {
    padding-top: 70px;
    margin: 0 0 70px;
    border-top: 1px solid #ddd;
}
.solution_detailsWrap .civi_dwBox.secWrap07 .inner {
    padding: 40px 0;
    max-width: 1000px;
    margin: 0 auto;
    border: 4px solid #FFF007;
    box-sizing: border-box;
}
.solution_detailsWrap .civi_dwBox.secWrap07 h4 {
    	font-family: "TBGothic M", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-weight: 600;
    font-size: 24px;
    text-align: center;
}
.solution_detailsWrap .civi_dwBox.secWrap07 .secTxt {
    margin: 30px 190px 30px;
    font-size: 16px;
    color: #333;
    font-family: TBGothic SL;
    line-height: 2;
    text-align: center;
}
/* 2205追加 */
.solution_detailsWrap .civi_dwBox.secWrap07 ul {
    width: 75%;
    margin: 0 auto;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li {
    display: flex;
    align-items: center;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li:nth-child(1) {
    margin-bottom: 25px;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_img {
    width: 33%;
    height: 140px;
    text-align: center;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li:nth-child(1) .secWrap07_img {
    border: 1px solid #ddd;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_img img {
    height: 100%;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_conBox {
    width: 67%;
    padding-left: 25px;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_conBox p {
    color: #333;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_btn {
    width: 50%;
    border-radius: 5px;
    margin-top: 1em;
    text-align: center;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_btn a {
    display: block;
    width: 100%;
    font-weight: bold;
    border-radius: 5px;
    padding: 0.8em 0 0.6em;
    line-height: 1;
    background: #fff100;
    color: #000;
    -webkit-transition: all .6s ease;
    -moz-transition: all .6s ease;
    -o-transition: all .6s ease;
    transition: all .6s ease;
}
.solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_btn a:hover {
    background: #000;
    color: #fff;
}
@media screen and (max-width: 991px) {
    .solution_detailsWrap .civi_dwBox.secWrap07 .secTxt {
        margin: 30px 2% 30px;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul {
        width: 80%;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_img {
        width: 30%;
        height: 12vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_conBox {
        width: 70%;
    }
}
@media screen and (max-width: 768px) {
    .solution_detailsWrap .civi_dwBox.secWrap07 .secTxt {
        margin: 4vw 190px;
        text-align: left;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul {
        width: 100%;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li {
        flex-direction: column;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li:nth-child(1) {
        margin-bottom: 8vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_img {
        width: 50vw;
        height: 28vw;
        margin-bottom: 4vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_conBox {
        width: 100%;
        padding-left: 0px;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_conBox b {
        text-align: center;
        display: inherit;
        font-size: 4vw;
        margin-bottom: 2vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_btn {
        width: 60%;
        margin: 0 auto;
        margin-top: 4vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 ul li .secWrap07_btn a {
        padding: 3vw 0 2vw;
    }
}
/* 2205追加 */



.solution_detailsWrap .civi_dwBox.secWrap07 .btnWrap {
    width: 350px;
    height: 70px;
    margin: 0 auto;
    font-size: 20px;
    line-height: 1;
}
.solution_detailsWrap .civi_dwBox.secWrap07 .btnWrap a {
    width: 100%;
    height: 100%;
    background: #FFF007;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transition: all .6s ease;
    -moz-transition: all .6s ease;
    -o-transition: all .6s ease;
    transition: all .6s ease;
}
.solution_detailsWrap .civi_dwBox.secWrap07 .btnWrap a:hover {
    background: #000;
    color: #fff;
}
@media screen and (max-width: 768px) {
    .solution_detailsWrap .civi_dwBox.secWrap07 {
        padding-top: 10.6667vw;
        margin: 0 0 10.6667vw;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 .inner {
        padding: 9.3333vw 4.6667vw 10.6667vw;
        max-width: 100%;
        width: 100%;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 h4 {
        font-size: 4.8vw;
        line-height: 1.5;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 .secTxt {
        margin: 6.6667vw 0;
        font-size: 3.7333vw;
        line-height: 1.6;
    }
    .solution_detailsWrap .civi_dwBox.secWrap07 .btnWrap {
        width: 100%;
        height: 12vw;
        font-size: 3.6vw;
    }

}



/* 2202 ADD */
.solution_wrap .top_lead_tit {
    	font-family: "TBGothic M", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 28px;
    font-weight: bold;
    margin-top: 70px;
    margin-bottom: 25px;
}
.solution_wrap .ssub_title_lead.top_lead02 {
    margin-top: 10px;
}

.solution_acco {
    margin-top: 2em;
}
.solution_acco ul li + li {
    margin-top: 1em;
}
.solution_acco .acc_sTitle {
    width: 100%;
    border-bottom: 1px solid #dddddd;
    padding: 7px 15px 7px 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    font-size: 1.125em;
    font-weight: bold;
}
.solution_acco .acc_sTitle span {
    display: block;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #fff100;
    margin-right: 10px;
    position: relative;
}
.solution_acco .acc_sTitle span:before, 
.solution_acco .acc_sTitle span:after {
    content: "";
    display: block;
    width: 6px;
    height: 1px;
    background: #000;
    position: absolute;
    top: 50%;
    transition: transform .5s;
}
.solution_acco .acc_sTitle span:before {
    right: 11px;
    transform: rotate(45deg);
}
.solution_acco li.on .acc_sTitle span:before {
    transform: rotate(-45deg);
}
.solution_acco .acc_sTitle span:after {
    right: 7px;
    transform: rotate(-45deg);
}
.solution_acco li.on .acc_sTitle span:after {
    transform: rotate(45deg);
}
  
.solution_acco .acc_sContent {
    width: 100%;
    padding: 20px 35px;
    box-sizing: border-box;
    margin: 5px 0;
    background: #efefef;
    font-size: 16px;
    color: #333;
    position: relative;
    line-height: 1.7;
}
.solution_acco .acc_sContent span {
    display: block;
    margin-top: 1em;
}
.solution_acco .acc_sContent span a {
    text-decoration: underline;
}
.solution_acco .acc_sContent span a:hover {
    opacity: 0.7;
}

.solution_wrap .special_listBox.add_btn {
    max-width: 1000px;
    width: 100%;
    margin: 100px auto 0;
}
.solution_wrap .special_listBox.add_btn .works_btn {
    width: 40%;
    margin: 0 auto;
    background: #fff;
}
.solution_wrap .special_listBox.add_btn .works_btn p {
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .solution_wrap .top_lead_tit {
        font-size: 4.8vw;
        text-align: left;
        line-height: 1.5;
        margin-top: 8vw;
        margin-bottom: 3.3333vw;
    }
    .solution_wrap .ssub_title_lead.top_lead02 {
        margin-top: 10px;
    }

    .solution_acco {
        margin-top: 10.6667vw;
        margin-bottom: 10.6667vw;
    }
    .solution_acco .acc_sTitle {
        padding: 2vw;
        font-size: 1.15em;
    }
    .solution_acco .acc_sTitle span {
        width: 8vw;
        height: 8vw;
    }

    .solution_acco .acc_sTitle p {
        width: calc(100% - 8vw);
    }
    .solution_acco .acc_sTitle span:before, 
    .solution_acco .acc_sTitle span:after {
        width: 2vw;
    }
    .solution_acco .acc_sTitle span:before {
        right: 3.4vw;
    }
    .solution_acco .acc_sTitle span:after {
        right: 2vw;
    }
    .solution_acco .acc_sContent {
        padding: 4vw;
        font-size: 3.7333vw;
    }

    .solution_wrap .special_listBox.add_btn {
        margin: 10.6667vw auto 0;
    }
    .solution_wrap .special_listBox.add_btn .works_btn {
        width: 80vw;
    }
    .solution_wrap .special_listBox.add_btn .works_btn p {
        font-size: 4.2666vw;
    }
    .solution_wrap .special_listBox.add_btn .works_btn .eff-01 {
        left: -80vw;
    }



}


.solution_detailsWrap .sub_container.add_notBtn {
    padding-bottom: 55px;
  }

  .solution_detailsWrap .civiAdd .civiAdd_txt {
    line-height: 1.8;
    color: #333;
  }
  .solution_detailsWrap .civiAdd .civiAdd_txtTop {
    margin-top: 35px;
    font-size: 18px;
  }
  .solution_detailsWrap .civiAdd .civiAdd_txtBt {
    margin-top: 10px;
    font-size: 18px;
  }

  .solution_detailsWrap .civiAdd .img_box {
    margin: 0 auto;
  }
  .solution_detailsWrap .civiAdd01 .img_box {
    width: 50%;
  }
  .solution_detailsWrap .civiAdd03 .img_box {
    width: 75%;
  }
  .solution_detailsWrap .civiAdd04 .img_box {
    width: 75%;
  }


  .solution_detailsWrap .civiAdd02 .ssub_list_title {
    margin-bottom: 20px;
    margin-top: 75px;
  }
  .solution_detailsWrap .civiAdd02 ul li {
    text-indent: -0.5em;
    padding-left: 1em;
    font-size: 18px;
    color: #333;
  }
  .solution_detailsWrap .civiAdd02 ul li::before {
    display: inline-block;
    content: "・"
}
  .solution_detailsWrap .civiAdd02 ul li + li {
    margin-top: 10px;
  }

  .solution_detailsWrap .civiAdd04 .special_listBox .works_btn {
    margin-bottom: 0;
  }
  .solution_detailsWrap .civiAdd_btn_box {
    padding: 85px 0 220px;
  }
  .solution_detailsWrap .civiAdd_btn_boxBt {
    padding: 85px 0;
  }

  .solution_detailsWrap .civiAdd_btn_box .special_listBox.add_btn {
    position: absolute;
    bottom: 80px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    margin-top: 0;
  }
  @media screen and (max-width: 768px) {
    .solution_detailsWrap .civiAdd .civiAdd_txtTop {
        font-size: 4.2666vw;
    }
    .solution_detailsWrap .civiAdd .civiAdd_txtBt {
        font-size: 4.2666vw;
    }
    .solution_detailsWrap .civiAdd01 .img_box {
        width: 100%;
    }
    .solution_detailsWrap .civiAdd02 ul li {
        font-size: 4.2666vw;
    }
    .solution_detailsWrap .civiAdd03 .img_box {
        width: 100%;
    }
    .solution_detailsWrap .civiAdd04 .img_box {
        width: 100%;
    }
    .solution_detailsWrap .civiAdd_btn_box{
        padding: 10.6667vw 0 32vw;
    }
    .solution_detailsWrap .civiAdd_btn_box .special_listBox.add_btn {
        bottom: 12vw;
    }
    .solution_detailsWrap .civiAdd_btn_boxBt {
        padding: 10.6667vw 0;
    }
  }




  /* 2208 MAGA ADD */
.maga_box01 {
    margin-top: 70px;
}
.maga_box01,
.maga_box02,
.maga_box03,
.maga_box04 {
    width: 100%;
    max-width: 1000px;
    margin: 80px auto 0;
}
.maga_box .maga_tit {
    	font-family: "TBGothic M", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #666666;
}
.maga_box .maga_lead {
    font-size: 18px;
    color: #333;
    line-height: 2.1;
    margin: 35px 0;
    text-align: center;
}
.maga_box ul {
    display: flex;
    justify-content: space-between;
}
.maga_box ul li {
    width: 27%;
}
.maga_box ul li .article-img {
    height: 165px;
    border: 1px solid #ccc;
}
.maga_box ul li .article-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.maga_box ul li .tit_txt {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    /* margin-top: 15px; */
    margin-bottom: 15px;
    min-height: 40px;
}
.maga_box ul li .tit_txt .hover-underline {
    display: inline;
    background: linear-gradient(#fff100, #fff100) 0 100%/0 5px no-repeat;
    transition: all .3s ease;
}
.maga_box ul li:hover .tit_txt .hover-underline {
    background-size: 100% 5px !important;
}

.solution_wrap .maga_box .special_listBox.add_btn {
    margin: 40px auto 0;
}



.solution_wrap .fb_share_box {
    width: 100%;
    max-width: 125px;
    margin: 150px auto;
}
@media screen and (max-width: 768px) {
    .maga_box01 {
        margin-top: 13.3333vw;
        padding-bottom: 10.6667vw;
    }
    .maga_box02,
    .maga_box03,
    .maga_box04 {
        width: 93.3333vw;
        margin: 10vw auto 0;
    }
    .maga_box .maga_tit {
        font-size: 4.8vw;
    }
    .maga_box .maga_lead {
        font-size: 4.2666vw;
        line-height: 1.87;
        margin: 4.6667vw 0 8.6667vw;
        text-align: left;
    }
    .maga_box ul {
        flex-direction: column;
    }
    .maga_box ul li {
        width: 100%;
        margin-bottom: 10.6667vw;
    }
    .maga_box ul li:last-child {
        margin-bottom: 0;
    }
    .maga_box ul li .article-img {
        height: 69.7333vw;
    }
    .maga_box ul li .tit_txt {
        font-size: 4.8vw;
        /* margin-top: 5.3333vw; */
        margin-bottom: 5.3333vw;
        min-height: auto;
    }
    .solution_wrap .maga_box .special_listBox.add_btn {
        margin: 10vw auto 0;
    }

    .solution_wrap .fb_share_box {
        width: 33.3333vw;
        margin: 20vw auto;
    }

}



/* 2025 */
.sercive_wrap.solution_wrap .sub_thumbnail_list li {
    display: flex;
    flex-direction: column;
}
.sercive_wrap.solution_wrap .sub_thumbnail_list li h5 {
    margin-bottom: 15px;
}
.sercive_wrap.solution_wrap .sub_thumbnail_list li .thumbnail_list_img {
    margin-top: auto;
}