h1 {
    text-align: center;
}

.sp {
    display: none;
}

#contents {
    background: url(../img/common/column-bg.png) no-repeat left top;
}

#contents>section {
    border-bottom: none;
}

#contents>section h1 span.sub {
    font-size: 1.5rem;
    color: #f8b500;
    display: block;
    letter-spacing: 0.1em;
    margin-bottom: 5px;
}

#contents>section h1 span.sTitle {
    font-size: 2rem;
    color: #444444;
}

.hasBg {
    background: #f9fafc;
}

ul {
    list-style: none !important;
}

.effectSp {
    display: none;
}

/*breadcrumb*/

#breadcrumb {
    background: #f9fafc;
    padding: 7px 0 6px;
}

#breadcrumb .inner {
    max-width: 1112px;
    padding: 0 30px;
}

#breadcrumb .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
}

#breadcrumb .breadcrumb li {
    color: #cacaca;
    font-size: 12px;
    letter-spacing: 0.3px;
}

#breadcrumb .breadcrumb li a {
    color: #494949;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.7px;

}

#breadcrumb .breadcrumb li+li:before {
    content: '＞';
    display: inline-block;
    vertical-align: 0;
    margin-right: 9px;
    margin-left: 10px;
    color: #494949;
    font-size: 12px;
}

/*.pagination*/
.pagination {
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: center;
}

.pagination .control {
    position: absolute;
    top: 0;
    left: 0;
}

.pagination .control.next {
    left: auto;
    right: 0;
}

.pagination .control a {
    position: relative;
    display: block;
    transition: all 0.3s;
    padding: 0 30px;
    font-size: 15px;
}

.pagination .control a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: url(../img/case-study/icon-prev.png) no-repeat;
    width: 8px;
    height: 16px;
    background-size: cover;
}

.pagination .control.next a {
    padding-right: 34px;
    padding-top: 5px;
}

.pagination .control.next a:before {
    left: auto;
    right: 0;
    background-image: url(../img/case-study/icon-next.png);
}

.pagination .list-pagi {
    display: flex;
    flex-wrap: wrap;
}

.pagination .list-pagi li {
    margin-right: 16.5px;
}

.pagination .list-pagi li:last-child {
    margin-right: 0;
}

.pagination .list-pagi li a {
    display: inline-block;
    padding: 5px 7.5px 4px;
    font-size: 15px;
    line-height: 1;
}

.pagination .list-pagi li a.active {
    color: #fff;
    background: #aadfe8;
}

.pagination .list-pagi li.dots {
    background-color: transparent;
    border: 0.25px solid transparent;
    color: #231815;
    padding: 0;
    margin: 1px -8px 0 9px;
    pointer-events: none;
    letter-spacing: 1px;
}

.hoverImage {
    overflow: hidden;
}



/*faq*/
#contents #faq {
    padding: 74px 0 0 !important;
    border: 0;
    margin-bottom: 94px;
}

.useEvent .titleEvent.faqTitle {
    margin-bottom: 41px;
}

#faq .areaQuestions {
    max-width: 1092px;
    margin: auto;
    padding: 0 30px;
}

#faq .areaQuestions .questionItem {
    box-shadow: 4px 4px 0 #f5f7fa;
    padding: 0 30px 14px;
    margin-bottom: 31px;
}

#faq .areaQuestions .questionItem .questionMain {
    display: flex;
    padding-top: 30px;
    margin-bottom: 10px;
    cursor: pointer;
}

#faq .areaQuestions .questionItem span {
    display: block;
    width: calc(100% - 32px);
}

#faq .areaQuestions .questionItem .iconQa {
    width: 32px;
    margin-right: 8px;
}

#faq .areaQuestions .questionItem .txtQ {
    font-size: 22px;
    letter-spacing: 1.1px;
}

#faq .areaQuestions .questionItem .txtA {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.4px;
}

#faq .areaQuestions .questionItem .questionContent {
    display: none;
    padding: 15px 0;
}

#faq .areaQuestions .questionItem .questionContent .questionText {
    display: flex;
}

#faq .areaQuestions .questionItem .questionContent .questionText .iconQa {
    margin: -2px 6px 0 2px;
}

/*inquiries*/
.inquiries {
    background: url(../img/column/inquiries-bg.png) no-repeat top left;
    background-size: cover;
    padding: 81px 0 92px;
}

.inquiries .inquiriesText {
    font-size: 24px;
    color: #444444;
    text-align: center;
    line-height: 1.85;
    margin-bottom: 39px;
    font-weight: bold;
    letter-spacing: 1px;
}

.inquiries .contactBtn {
    background: #00a6c2;
    width: 320px;
    margin: 0 auto;
}

.inquiries .contactBtn a {
    display: block !important;
    font-size: 18px;
    text-align: center;
    padding: 19px 0 18px;
    color: #fff;
    font-weight: bold;
    display: block;
}

.inquiries .inquiriesText .sp {
    display: none;
}


/*#achievementList*/
#achievementList {
    padding-top: 43px;
    padding-bottom: 37px;
}

#achievementList section {
    display: flex;
    align-items: center;
    padding-left: 5px;
    padding-right: 36px;
}

#achievementList h2 {
    font-size: 2.4rem;
    margin: 0 30px 0 0;
    padding-left: 40px;
    line-height: 1.7;
    color: #444444;
    font-weight: bold;
    border-left: solid 2px #00a6c2;
}

#achievementList ul {
    display: flex;
    flex: 1;
    list-style: none;
    flex-wrap: initial !important;
    justify-content: space-around;
    align-items: center;
}

#achievementList li {
    flex-basis: auto !important;
    margin-right: 20px;
    margin-bottom: 0;
}


/* automation */
#contents #automation {
    padding: 39px 0 83px !important;
}

.useTitle .titleQA {
    background: url('../img/plan-detail-qa/background-photo.jpg') no-repeat;
    background-size: 100%;
    font-size: 36px;
    font-weight: bold;
    letter-spacing: 0.8px;
    text-align: center;
    padding: 30px 15px 25px;
    margin-bottom: 30px;
}

#automation .wrapAuto {
    position: relative;
    width: 100%;
    background-color: transparent;
    text-align: center;
    padding: 41px 15px 48px;
}

#automation .wrapAuto:before,
#automation .wrapAuto:after {
    content: "";
    position: absolute;
    width: 32px;
    height: 100%;
    top: 0;
}

#automation .wrapAuto:before {
    background: url('../img/plan-detail-qa/autobefore-photo.png') no-repeat;
    background-size: 100% 100%;
    left: 0;
}

#automation .wrapAuto:after {
    background: url('../img/plan-detail-qa/autoafter-photo.png') no-repeat;
    background-size: 100% 100%;
    right: 0;
}

#automation .wrapAuto .boxAuto {
    position: relative;
    z-index: 1;
}

#automation .wrapAuto .boxAuto .autoPhoto {
    width: 980px;
    margin: 0 auto 19px;
}

#automation .wrapAuto .boxAuto .titleAuto {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.6px;
    line-height: 1.95;
    margin-bottom: 18px;
}

#automation .wrapAuto .boxAuto .titleAuto span {
    color: #ff6868;
    font-size: 30px;
}

#automation .wrapAuto .boxAuto .desAuto {
    font-size: 18px;
    font-weight: 500;
    text-align: justify;
    letter-spacing: 0.4px;
    line-height: 1.7;
    padding: 0 53px 0 53px;
    margin-bottom: 34px;
}

#automation .wrapAuto .boxAuto .contactAuto {
    width: 320px;
    margin: 0 auto;
}

#automation .wrapAuto .boxAuto .contactAuto a {
    display: block !important;
    background: #00a6c2;
    font-size: 18px !important;
    color: #ffffff;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.4px;
    padding: 18px 10px !important;
}


.titleReason {
    position: relative;
    background: #fef7e5;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 1.1px;
    padding: 17px 77px 16px 79px;
    margin-bottom: 40px;
}

.titleReason span {
    font-size: 24px;
}

.titleReason.blue {
    background: #e5f6f9;
    max-width: 1080px;
    width: 100%;
    margin: 0 auto 40px;
}

.titleReason:before,
.titleReason:after {
    content: "";
    position: absolute;
    background: url('../img/plan-detail-qa/backgroundafter-photo.png') no-repeat;
    background-size: 100%;
    width: 40px;
    height: 40px;
}

.titleReason:before {
    top: 15px;
    left: 15px;
}

.titleReason:after {
    top: 15px;
    right: 15px;
}

.blue.titleReason:before,
.blue.titleReason:after {
    background: url('../img/plan-detail-qa/backgroundafter-photo-01.png') no-repeat;
    background-size: 100%;
}


.titleEvent {
    position: relative;
    background: #e5f6f9;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 1.1px;
    padding: 17px 77px 16px 79px;
    width: 100%;
    max-width: 1080px;
    margin: 0 auto 40px;
}

.titleEvent:after,
.titleEvent:before {
    content: "";
    position: absolute;
    background: url(../img/plan-tan/backgroundafter-photo-01.png) no-repeat;
    background-size: 100%;
    width: 40px;
    height: 40px;
    top: 15px;
}

.titleEvent:before {
    left: 15px;
}

.titleEvent:after {
    right: 15px;
}

/*#achievementList*/


/*.CONFIGURATION*/
#contents>section.configuration {
    padding-top: 76px;
    padding-bottom: 51px;
}

.configuration .sec_title {
    margin-bottom: 40px;
}

.configuration .wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 57px 40px;
}

.configuration .wrap .image {
    width: 320px;
    margin-right: 30px;
}

.configuration .wrap .image img {
    width: 100%;
}

.configuration .wrap .info {
    width: calc(100% - 362px);
    padding-top: 18px;
}

.configuration .wrap .info .title {
    font-size: 22px;
    color: #ff6868;
    letter-spacing: 1px;
    margin-bottom: 30px;
}

.configuration .wrap .info .description {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.65;
    letter-spacing: 0.4px;
}

.sec_title {
    width: 100%;
    max-width: 1080px;
    background-image: linear-gradient(135deg, rgba(0, 166, 194, 0.1) 0%, rgba(248, 181, 0, 0.1) 100%);
    font-size: 32px;
    text-align: center;
    padding: 18px 0 15px;
    letter-spacing: 1px;
    margin-bottom: 40px;
}

/* solution */
#contents .solution {
    padding: 87px 0 80px !important;
}

.solution.share .listReason li .wrapReason .titleStep {
    padding: 0 15px;
    letter-spacing: 0.9px;
}

.solution.share .listReason li .wrapReason .titleStep:after {
    margin: 14px auto 12px auto;
}

.solution.share .listReason li .wrapReason .desStep {
    padding: 0 10px;
}

.solution.share .listReason li .wrapReason .desStep:before {
    display: none;
}

.solution .listReason {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    width: 878px;
    margin: 0 auto 10px;
}

.solution .listReason li {
    position: relative;
    display: flex;
    flex-direction: column;
    width: calc(100%/3 - 23px);
}

.solution .listReason li .reasonPhoto {
    margin-bottom: 22px;
}

.solution .listReason li .reasonPhoto a {
    display: block;
    overflow: hidden;
}

.solution .listReason li .reasonPhoto img {
    display: block;
    margin: 0 auto;
    width: 100%;
    transition: transform 0.5s ease-out;
}

.solution .listReason li .wrapReason .titleStep {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.34;
    padding: 0 10px;
}

.solution .listReason li .wrapReason .titleStep a {
    transition: all 0.2s;
}

.solution .listReason li .wrapReason .titleStep a:hover {
    color: #f8b500;
}

.solution .listReason li .wrapReason .titleStep:after {
    content: "";
    width: 50px;
    height: 2px;
    margin: 14px auto 11px auto;
    display: block;
    background-image: linear-gradient(to right, #05a6c2, #f7b50b);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
}

.solution .listReason li .wrapReason .desStep {
    position: relative;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.4px;
    text-align: justify;
    padding: 0 10px;
}


#casestudy {
    background:
        url('../img/index-post/case-stydy-bg.png') no-repeat top 121px center,
        url(../img/index-post/casestudy-bg.png) repeat-x top left;
    border-bottom: none;
}

#casestudy .listCase {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    width: 1085px;
    margin: 0 auto 20px;
}

#casestudy .listCase>li {
    background: #fff;
    width: 334px;
    margin-right: 41px;
    margin-bottom: 31px;
    position: relative;
}

#casestudy .listCase>li:after {
    content: "";
    width: 100%;
    height: 1px;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to right, #c5c5c5, #c5c5c5);
}

#casestudy .hoverLine:before {
    height: 1px;
    bottom: 0;
}

#casestudy .listCase>li a {
    position: relative;
    height: 100%;
}

#casestudy .listCase>li a:after {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    background: #c5c5c5;
    position: absolute;
    bottom: 19px;
    right: 22px;
}

#casestudy .listCase>li:nth-child(3n) {
    margin-right: 0;
}

#casestudy .listCase a {
    display: block;
    padding: 30px 27px 28px;
}

#casestudy .listCase .logocase {
    text-align: center;
    margin-bottom: 22px;
}

#casestudy .listCase .logocase img {
    display: inline-block;
    object-fit: cover;
    width: 100%;
}

#casestudy .listCase .info {
    margin-bottom: 8px;
}

#casestudy .listCase .info:nth-child(3) {
    margin-bottom: 12px;
}

#casestudy .listCase .info .label {
    font-size: 15px;
}

#casestudy .listCase .info .textInfo {
    font-size: 16px;
    font-weight: 600;
}

#casestudy .listCase .info .textInfo b {
    color: #00a6c2;
    display: block;
    margin-top: 6px;
    position: relative;
}

#casestudy .listCase .info .textInfo b:nth-child(1) {
    top: 1px;
}

.btnmore {
    text-align: center;
}

.btnmore a {
    width: 260px !important;
}


/*.EFFECT*/
.effect {
    padding: 76px 0 22px;
}

.effect .effectList {
    padding: 1px 24px 41px;
}

.effect .effectList li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
    box-shadow: 4px 4px #f5f7fa;
    padding: 24px 21px 25px;
    margin-bottom: 31px;
}

.effect .effectList .effectImg {
    width: 270px;
    margin-right: 10px;
}

.effect .effectList .effectImg img {
    width: 100%;
}

.effect .effectList .effectBox {
    width: 692px;
    margin-top: 4px;
}

.effect .effectList .effectBox .effectTitle {
    position: relative;
    /*background: url(https://www.dcubic.jp/wp-content/themes/dcc/img/plan-detail/ai-effective-bg.png) no-repeat left bottom;*/
    font-size: 22px;
    letter-spacing: 1.1px;
    margin-bottom: 20px;
    padding-bottom: 23px;
}

.effect .effectList .effectBox .effectTitle:before {
    content: '';
    position: absolute;
    width: 50px;
    background-image: linear-gradient(to right, #00a6c2 0%, #f8b500 100%);
    height: 2px;
    bottom: 0;
    left: 0;
}

.effect .effectList .effectBox .effectSub {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.5px;
}

/*.EFFECT*/


#column {
    background: url(../img/index-post/column-bg.png) no-repeat bottom center;
}

#contents>#column {
    padding-bottom: 112px !important;
}

#contents>#column h1 {
    position: relative;
    margin-bottom: 56px !important;
}

#column h1:after {
    content: "";
    width: 60px;
    height: 2px;
    margin: 45px auto 0 auto;
    display: block;
    background-image: linear-gradient(to right, #05a6c2, #f7b50b);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
}

#column .listCate {
    list-style: none;
    margin-bottom: 36px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#column .listCate>li {
    margin-right: 43px;
    font-weight: 600;
    margin-bottom: 20px;
}

#column .listCate li:last-child {
    margin-right: 0;
}

#column .listCate li a {
    font-size: 19px;
    color: #00a5c1;
    transition: all 0.2s;
}

#column .listColumn {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 52px;
}

#column .listColumn>li {
	width: 22.92%;
	width: calc(25% - 40px);
	width: -webkit-calc(25% - 40px);
	max-width: 330px;
    margin-right: 40px;
    background: #fff;
    position: relative;
}

#column .listColumn>li:after {
    content: "";
    width: 100%;
    height: 1px;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to right, #c5c5c5, #c5c5c5);
}

#column .listColumn>li:before {
    height: 1px;
    bottom: 0;
}

#column .listColumn>li:nth-child(4n) {
    margin-right: 0;
}

#column .listColumn>li .wrap {
    position: relative;
    height: 100%;
}

#column .listColumn>li .wrap:after {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    background: #c5c5c5;
    position: absolute;
    bottom: 19px;
    right: 22px;
}

#column .listColumn>li .photo a {
    display: block;
}

#column .listColumn>li .listColumnContent {
    padding: 15px 8px 21px 15px;
    background: #fff;
    z-index: 5;
}


#column .listColumn>li .listColumnContent .columnTitle {
    margin-bottom: 11px;
}

#column .listColumn>li .listColumnContent .columnTitle a {
    font-size: 18px;
    color: rgb(68, 68, 68);
    border-bottom: 2px solid #cacaca;
    letter-spacing: 1.1px;
}

#column .listColumn>li .listColumnContent .minilistCate {
    margin-bottom: 4px;
    justify-content: initial;
    flex-wrap: wrap;
}

#column .listColumn>li .listColumnContent .minilistCate li {
    margin-right: 19px;
    margin-bottom: 1.5px;
}

#column .listColumn>li .listColumnContent .minilistCate li a {
    font-weight: normal;
    font-size: 16px;

}



/*#BOX */
#box {
    padding: 84px 0 80px;
}

#box .inner {
    max-width: 1140px;
    padding: 0 30px;
}

#box .textBoxContent p {
    font-size: 24px;
    letter-spacing: 0.1px;
}

#box .textBox {
    padding: 62px 33px 65px !important;
    background: #f9fafc;
}

#box .textBox:before,
#box .textBox:after {
    background: #f9fafc;
}

#box .textBoxContent .btn {
    margin-top: 47px;
    padding: 18px 70px !important;
}

/*#BOX */



/* searchNeed */
.searchNeed {
    padding: 74px 0 69px;
}

.searchNeed .sec_title {
    margin-bottom: 45px;
}

.searchNeed .listSearch {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    padding: 0 24px;
}

.searchNeed .listSearch>li {
    width: calc(100%/4 - 18px);
    margin-right: 24px;
    background: #fff;
    margin-top: 23px;
}

.searchNeed .listSearch>li:last-child,
.searchNeed .listSearch>li:nth-child(4n) {
    margin-right: 0;
}

.searchNeed .listSearch .titleSearch {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.35;
    min-height: 77px;
}

.searchNeed .listSearch .searchPhoto img {
    width: 100%;
}

.searchNeed .listSearch .listNeed {
    display: none;
    padding: 20px 13px 3px 16px;
}

.searchNeed .listSearch .listNeed li a {
    position: relative;
    display: block;
    color: #00a6c2;
    font-weight: bold;
    letter-spacing: 0.4px;
    text-align: justify;
    padding-left: 16px;
    margin-bottom: 3px;
    transition: all 0.2s;
}

.searchNeed .listSearch .listNeed li .sizeSmall {
    font-size: 12px;
}

.searchNeed .listSearch .listNeed li a:after {
    content: "L";
    position: absolute;
    background-size: 100%;
    color: #000000;
    top: -2px;
    left: 0;
}

.searchNeed .listSearch .need {
    cursor: pointer;
    box-shadow: 3px 4px 0 #f5f7fa;
}



@media(max-width: 1510px) and (min-width: 960px) {
    #column .inner {
        width: 100%;
        padding: 0 25px;
        max-width: initial;
    }

    #column .listColumn>li {
        width: 22.92%;
        margin-right: 2.77%;
    }

    #column .listColumn>li .listColumnContent .columnTitle a {
        font-size: 1.2vw;
    }
}


@media only screen and (min-width: 960px) {
    header {
        position: relative;
    }

    #contents>section h1 span.sub {
        font-size: 3rem;
        margin-bottom: 20px;
    }

    #contents>section h1 span.sTitle {
        font-size: 3.6rem;
    }

    .pagination .list-pagi li a:hover {
        color: #fff;
        background: #aadfe8;
    }

    .pagination .control a {
        transition: all .2s;
    }

    .pagination .control a:hover {
        color: #aadfe8;
    }

    .pagination .control a:before {
        transition: all .2s;
    }

    .pagination .control a:hover:before {
        left: -3px;
    }

    .pagination .control.next a:hover:before {
        right: -3px;
        left: auto;
    }

    #casestudy .listCase>li a:hover:after,
    #column .listColumn>li:hover .wrap:after {
        background: #f8b500;
    }

    #faq .inner {
        max-width: 1140px;
        width: 100%;
        padding: 0 30px;
    }

    #column .listCate li a:hover {
        color: #f8b500;
    }

    .hoverLine .hoverImage img {
        transition: transform 0.5s ease-out;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .hoverLine:hover .hoverImage img {
        transform: scale(1.15);
        transition: transform 0.5s cubic-bezier(0, 0.55, 0.45, 1);
    }
    
    .searchNeed .listSearch .listNeed {
        height: 130px;
    }

    .MacOS .searchNeed .listSearch .searchPhoto {
        margin-bottom: -4px;
    }

    .searchNeed .listSearch .listNeed li a:hover {
        color: #f8b500;
        transition: all 0.2s;
    }

    .searchNeed .listSearch li:nth-child(-n+4) {
        margin-top: 0;
    }

    .solution .listReason li .reasonPhoto a:hover img {
        transform: scale(1.15);
        transition: transform 0.5s cubic-bezier(0, 0.55, 0.45, 1);
    }
}

@media (max-width: 1160px) and (min-width: 960px) {
    #automation .wrapAuto .boxAuto .autoPhoto {
        width: 93.6%;
    }

    #automation .wrapAuto:before,
    #automation .wrapAuto:after {
        width: 3%;
    }

    .solution .listReason {
        width: 81.3%;
    }

    .solution .listReason li .wrapReason .desStep:before {
        top: 9%;
    }

    #casestudy .listCase {
        width: 95.01%;
    }

    #casestudy .listCase>li {
        width: 30.8%;
        margin-right: 3.8%;
    }

    .searchNeed .listSearch>li {
        padding-top: 20px;
    }
}

@media (max-width: 1130px) and (min-width: 960px) {
    #contents #automation {
        padding: 40px 0 52px !important;
    }

    #automation .wrapAuto {
        padding: 30px 15px 30px;
    }

    .useTitle .titleQA {
        font-size: 30px;
        padding: 2.5% 2% 2.5% 2%;
    }

    #automation .wrapAuto .boxAuto .autoPhoto {
        margin-bottom: 12px;
    }

    #automation .wrapAuto .boxAuto .titleAuto {
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 15px;
    }

    #automation .wrapAuto .boxAuto .titleAuto span {
        font-size: 20px;
    }

    #automation .wrapAuto .boxAuto .desAuto {
        font-size: 14px;
    }

    #automation .wrapAuto .boxAuto .contactAuto {
        width: 290px;
    }

    #automation .wrapAuto .boxAuto .contactAuto a {
        padding: 12px 10px;
        font-size: 14px;
    }

    .titleReason {
        font-size: 26px;
        padding: 1.7% 6% 1.5% 6%;
    }

    .titleReason:before,
    .titleReason:after {
        top: 50%;
        transform: translateY(-50%);
    }

    #contents .solution {
        padding: 40px 0 52px !important;
    }

    .solution .listReason li .reasonPhoto {
        margin-bottom: 17px;
    }

    .solution .listReason li .wrapReason .titleStep {
        font-size: 15px;
    }

    .solution .listReason li .wrapReason .titleStep:after {
        margin: 5px auto 10px auto;
    }

    .solution .listReason li .wrapReason .desStep {
        font-size: 14px;
    }

    .searchNeed {
        padding: 40px 0 52px !important;
    }

    .searchNeed .sec_title {
        font-size: 26px;
    }

    .searchNeed .listSearch .titleSearch {
        font-size: 16px;
        margin-bottom: 15px;
    }

    .searchNeed .listSearch .listNeed li a {
        font-size: 12px;
        letter-spacing: 0;
    }
}

@media (max-width: 980px) {
    .searchNeed .listSearch .listNeed {
        height: 150px;       
    }
}

@media(max-width: 959px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    header {
        border-bottom: 1px solid #f5f6f9;
    }

    .effectSp {
        display: block;
    }

    #contents {
        background: url(../img/common/column-bg-sp.png) no-repeat left top;
        background-size: 100%;
        margin-top: 0;
        padding-top: 19px;
    }

    #breadcrumb {
        display: none;
    }

    .pagination {
        padding: 0 3px;
    }

    .pagination .control a {
        padding-left: 25px;
        letter-spacing: 0.5px;
    }

    .pagination .control a:before {
        top: 47%;
        width: 9px;
        height: 17.5px;
    }

    .pagination .control.next a {
        padding-right: 29px;
        padding-left: 0;
        padding-top: 9px;
    }

    .pagination .control.next a:before {
        top: 59%;
        right: 3px;
    }

    .pagination .list-pagi {
        justify-content: center;
        max-width: 100%;
        padding-right: 0;
        transform: translateY(5px);
        width: 62%;
        margin: 0 auto;
    }

    .pagination .list-pagi li {
        margin-bottom: 7px;
        margin-right: 5px;
        text-align: center;
        width: 27px;
    }

    .pagination .list-pagi li.pc {
        display: none;
    }

    .pagination .list-pagi li a {
        padding: 6px 9px 7px;
        font-size: 12px;
    }

    .copyright {
        font-size: 1rem;
        padding: 4px 0 6px;
        letter-spacing: 0.3px;
    }

    /*faq*/
    #contents #faq {
        padding: 29px 0 0 !important;
        margin-bottom: 36px;
    }

    #faq .areaQuestions {
        padding: 0;
    }

    .useEvent .titleEvent.faqTitle {
        margin-bottom: 17px;
    }

    #faq .areaQuestions .questionItem {
        box-shadow: 2px 2px 0 #f5f7fa;
        padding: 0 16px 14px;
        margin-bottom: 17px;
    }

    #faq .areaQuestions .questionItem .questionMain {
        padding-top: 15px;
        margin-bottom: 0;
    }

    #faq .areaQuestions .questionItem .iconQa {
        width: 24px;
        margin-right: 7px;
    }

    #faq .areaQuestions .questionItem .iconQa img {
        width: 100%;
    }

    #faq .areaQuestions .questionItem .txtQ {
        font-size: 15px;
        letter-spacing: 0.7px;
        line-height: 1.28;
    }

    #faq .areaQuestions .questionItem .questionContent {
        padding: 14px 0 0;
    }

    #faq .areaQuestions .questionItem .txtA {
        font-size: 14px;
        line-height: 1.22;
    }

    #faq .areaQuestions .questionItem .questionContent .questionText .iconQa {
        margin: -1px 8px 0 0;
        width: 23px;
    }

    /*inquiries*/
    .inquiries {
        padding: 43px 0 46px;
        background-size: 100% 100%;
    }

    .inquiries .inquiriesText {
        font-size: 14px;
        margin-bottom: 11px;
        line-height: 1.5;
    }

    .inquiries .inquiriesText .pc {
        display: none;
    }

    .inquiries .inquiriesText .sp {
        display: block;
    }

    .inquiries .contactBtn {
        width: 230px;
    }

    .inquiries .contactBtn a {
        font-size: 13px;
        padding: 12px 0 11px;
    }

    /*#ACHIEVEMENTLIST*/
    #achievementList {
        padding-top: 24px;
        padding-bottom: 40px;
    }

    #achievementList section {
        padding: 0;
        flex-direction: column;
        align-items: flex-start;
    }

    #achievementList ul {
        display: flex;
        flex-wrap: wrap !important;
        justify-content: space-around;
        align-items: center;
    }

    #achievementList h2 {
        font-size: 1.2rem;
        margin-bottom: 0;
        padding-left: 14px;
        border-left: solid 1px #00a6c2;
        margin-left: 2px;
        line-height: 1.25;
    }

    #achievementList li {
        list-style: none;
        flex-basis: 33.3% !important;
        margin-bottom: 25px;
        margin-right: 0;
    }

    #achievementList li img {
        margin: 0 auto;
        height: auto;
        width: auto;
    }

    /*#ACHIEVEMENTLIST*/


    /* automation */
    #contents #automation {
        padding: 8px 0 31px !important;
    }

    #automation .wrapAuto {
        padding: 15px 15px 16px;
    }

    .useTitle .titleQA {
        background-size: 100% 100%;
        font-size: 20px;
        padding: 12px 5px 11px;
        margin-bottom: 16px;
    }

    #automation .wrapAuto:before {
        background: url('../img/plan-detail-qa/autobefore-sp-photo.png') no-repeat;
        background-size: 100% 100%;
        width: 19px;
    }

    #automation .wrapAuto:after {
        background: url('../img/plan-detail-qa/autoafter-photo-sp.png') no-repeat;
        background-size: 100% 100%;
        width: 19px;
    }

    #automation .wrapAuto .boxAuto .autoPhoto {
        width: 100%;
        margin: 0 auto 11px;
    }

    #automation .wrapAuto .boxAuto .titleAuto {
        font-size: 15px;
        line-height: 1.5;
        margin-bottom: 8px;
    }

    #automation .wrapAuto .boxAuto .titleAuto span {
        font-size: 18px;
    }

    #automation .wrapAuto .boxAuto .desAuto {
        font-size: 14px;
        letter-spacing: 0.3px;
        line-height: 1.3;
        padding: 0;
        margin-bottom: 16px;
    }

    #automation .wrapAuto .boxAuto .contactAuto {
        width: 76.7%;
    }

    #automation .wrapAuto .boxAuto .contactAuto a {
        font-size: 14px !important;
        padding: 12px 10px 9px !important;
    }

    .titleReason {
        font-size: 15px;
        letter-spacing: 0.5px;
        line-height: 1.28;
        padding: 8px 15px 8px 18px;
        margin-bottom: 16px;
    }

    .titleReason span {
        font-size: 12px;
    }

    .titleReason:before,
    .titleReason:after {
        width: 20px;
        height: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .titleReason:after {
        right: 8px;
        top: 17px;
    }

    .titleReason:before {
        left: 7px;
        top: 17px;
    }

    .titleReason.blue {
        padding: 8px 27px 8px 27px;
        margin-bottom: 14px;
    }

    .blue.titleReason:after,
    .blue.titleReason:before {
        width: 20px;
        height: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .blue.titleReason:before {
        left: 7px;
    }

    .blue.titleReason:after {
        right: 8px;
    }

    .titleEvent {
        font-size: 17px;
        width: 100%;
        padding: 6px 10px;
        margin-bottom: 15px;
    }

    .titleEvent:after,
    .titleEvent:before {
        width: 20px;
        height: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .titleEvent:before {
        left: 7px;
    }

    .titleEvent:after {
        right: 8px;
    }


    /*.CONFIGURATION*/

    #contents>section.configuration {
        padding-top: 27px;
        padding-bottom: 16px;
    }

    .configuration .sec_title {
        margin-bottom: 15px;
        letter-spacing: 2px;
    }

    .configuration .wrap {
        padding: 0 2px 15px;
        flex-direction: column;
    }

    .configuration .wrap .info_image {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15px;
    }

    .configuration .wrap .image {
        width: 160px;
        margin-right: 0;
    }

    .configuration .wrap .title {
        font-size: 15px;
        width: calc(100% - 169px);
        color: #ff6868;
        line-height: 1.25;
        margin-top: 4px;
        letter-spacing: 0.8px;
    }

    .configuration .wrap .info {
        width: 100%;
        padding-top: 0;
    }

    .configuration .wrap .info .description {
        font-size: 14px;
        line-height: 1.2;
        padding-right: 0;
        letter-spacing: 0.3px;
        margin-left: -1px;
    }

    /*.CONFIGURATION*/

    .sec_title {
        width: 100%;
        font-size: 15px;
        padding: 8px 0 7px;
        letter-spacing: 0;
    }

    #contents .solution {
        padding: 27px 0 8px !important;
    }

    .solution .listReason li .wrapReason .titleStep {
        padding: 0;
    }

    .solution .listReason li .wrapReason .titleStep:after {
        margin: 11px auto 12px auto;
    }

    .solution .listReason li .wrapReason .desStep {
        letter-spacing: 0;
    }

    .solution .listReason {
        width: 100%;
        flex-wrap: wrap;
    }

    .solution .listReason li {
        width: calc(100%/2 - 5px);
        margin-bottom: 22px;
    }

    .solution .listReason li:last-child {
        margin-bottom: 0;
    }

    .solution .listReason li .reasonPhoto {
        margin-bottom: 8px;
    }

    .solution .listReason li .wrapReason .titleStep {
        font-size: 15px;
        line-height: 1.27;
        letter-spacing: 0.4px;
    }

    .solution .listReason li .wrapReason .titleStep:after {
        width: 30px;
        margin: 11px auto 11px auto;
    }

    .solution .listReason li .wrapReason .desStep {
        font-size: 14px;
        line-height: 1.25;
        padding: 0 9px 0 8px;
    }

    /*CASESTUDY*/
    #casestudy .listCase {
        width: 100%;
    }

    #casestudy .listCase>li {
        width: 48.6%;
        margin-right: 2.8%;
        margin-bottom: 8px;
    }

    #casestudy .listCase>li:nth-child(3n) {
        margin-right: 2.8%;
    }

    #casestudy .listCase>li:nth-child(2n) {
        margin-right: 0;
    }

    #casestudy .listCase a {
        padding: 16px 11px 20px;
        height: 100%;
    }

    #casestudy .listCase .info,
    #casestudy .listCase .info:nth-child(3) {
        line-height: 1;
        margin-bottom: 0px;
    }

    #casestudy .listCase .info .label {
        font-size: 10px;
    }

    #casestudy .listCase .info .textInfo {
        font-size: 11px;
        letter-spacing: -0.2px;
    }

    #casestudy .listCase .info .textInfo b {
        margin-top: 0px;
    }

    #casestudy .listCase .logocase {
        margin-bottom: 0;
    }

    #casestudy .listCase>li a:after {
        width: 3px;
        height: 3px;
        background: #f8b500;
        bottom: 9px;
        right: 10px;
    }

    #casestudy .hoverLine:before {
        transform: scaleX(100%) !important;
    }

    .btnmore a {
        width: 54% !important;
        max-width: 320px;
        display: inline-block;
    }

    /*.EFFECT*/
    .effect {
        padding: 26px 0 8px;
    }

    .effect .sec_title {
        letter-spacing: 2px;
        margin-bottom: 15px;
    }

    .effect .effectList {
        padding: 1px 2px 15px;
    }

    .effect .effectList li {
        flex-wrap: wrap;
        padding: 15px 15px 11px;
        box-shadow: 2px 2px #f5f7fa;
        margin-bottom: 12px;
    }

    .effect .effectList .effectSp {
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }

    .effect .effectList .effectImg {
        display: none;
    }

    .effect .effectList .effectTitle {
        display: none;
    }

    .effect .effectList .effectSp .effectImg {
        display: block;
        width: 45%;
        margin-right: 0;
    }

    .effect .effectList .effectSp .effectImg img {
        width: 100%;
    }

    .effect .effectList .effectSp .effectTitle {
        display: block;
        position: relative;
        width: 52%;
        font-size: 15px;
        padding-top: 13px;
        letter-spacing: 0.5px;
        margin-bottom: 0;
        padding-bottom: 7px;
    }

    .effect .effectList .effectSp .effectTitle:before {
        content: '';
        position: absolute;
        width: 50px;
        background-image: linear-gradient(to right, #00a6c2 0%, #f8b500 100%);
        height: 1px;
        bottom: 0;
        left: 0;
    }

    .effect .effectList .effectBox {
        width: 100%;
        padding-top: 14px;
        margin-top: 0;
    }

    .effect .effectList .effectBox .effectSub {
        font-size: 14px;
        line-height: 1.25;
        letter-spacing: 0.3px;
    }

    /*.EFFECT*/

    #column h1:after {
        width: 30px;
        height: 1px;
        margin: 14px auto 0 auto;
    }

    #column .wraplistCate {
        overflow-x: auto;
        margin-bottom: 15px;
    }

    #column .listCate {
        margin-bottom: 10px;
        justify-content: initial;
        flex-wrap: initial;
    }

    #column .listCate>li {
        margin-right: 25px;
        margin-bottom: 0;
        white-space: nowrap;
    }

    #column .listCate li a {
        font-size: 12px;
        letter-spacing: 0.4px;
    }

    #contents>#column {
        padding-bottom: 30px !important;
        background: url(../img/index-post/column-bg-sp.png) no-repeat bottom center;
        background-size: 100% 600px;
    }

    #contents>#column h1 {
        margin-bottom: 21px !important;
    }

    #column .listColumn {
        margin-bottom: 17px;
    }

    #column .listColumn>li {
        width: 48.6%;
        margin-right: 2.8%;
        margin-bottom: 8px;
    }

    #column .listColumn>li:nth-child(2n) {
        margin-right: 0;
    }

    #column .listColumn>li .listColumnContent {
        padding: 9px 8px 17px 8px;
    }

    #column .listColumn>li .listColumnContent .columnTitle {
        margin-bottom: 9px;
    }

    #column .listColumn>li .listColumnContent .columnTitle a {
        font-size: 15px;
        line-height: 1.3;
        display: block;
        text-decoration: underline;
        border-bottom: none;
    }

    #column .listColumn>li .listColumnContent .minilistCate {
        width: 100%;
    }

    #column .listColumn>li .listColumnContent .minilistCate li {
        line-height: 1;
    }

    #column .listColumn>li .listColumnContent .minilistCate li a {
        font-size: 11px;
        line-height: 1;
    }

    #column .listColumn>li .listColumnContent .date {
        display: none;
    }

    #column .listColumn>li .wrap:after {
        width: 3px;
        height: 3px;
        background: #f8b500;
        bottom: 9px;
        right: 10px;
    }

    #column .listColumn>li:before {
        transform: scaleX(100%) !important;
    }

    /*BOX*/
    #box {
        padding: 27px 0 27px;
    }

    #box .inner {
        padding: 0 5.6%;
    }

    #box .textBoxContent p {
        font-size: 15px;
        line-height: 1.6;
    }

    #box .textBox {
        padding: 9px 33px 20px !important;
    }

    #box .textBoxContent .btn {
        width: 88.5%;
        padding: 11px 31px 10px !important;
        margin: 7px auto 0;
    }

    /* searchNeed */
    .searchNeed {
        padding: 26px 0 1px;
    }

    .searchNeed .sec_title {
        margin-bottom: 16px;
    }

    .searchNeed .listSearch {
        align-items: unset;
        width: 100%;
        padding: 0;
    }

    .searchNeed .listSearch .titleSearch {
        font-size: 14px;
        min-height: 59px;
    }

    .searchNeed .listSearch .searchPhoto {}

    .searchNeed .listSearch>li {
        width: 48.4%;
        margin: 0 3% 3% 0;
    }

    .searchNeed .listSearch>li:nth-child(2n) {
        margin-right: 0;
    }

    .searchNeed .listSearch .need {
        box-shadow: 3px 2px 0 #f5f7fa;
    }

    .searchNeed .listSearch .listNeed {
        display: block;
        padding: 16px 6px 9px 15px;
    }

    .searchNeed .listSearch .listNeed li a,
    .searchNeed .listSearch .listNeed li .sizeSmall {
        font-size: 13px;
        padding-left: 13px;
        line-height: 1.2;
        margin-bottom: 5px;
    }

    .searchNeed .listSearch .listNeed li a:after {
        top: -3px;
        left: 0;
    }
}

@media (max-width: 414px) {

    .titleReason:before,
    .titleReason:after {
        top: 17px;
    }
}

/*MacOS*/
.MacOS .pagination .list-pagi li a {
    padding: 6px 7px 3px
}