* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 62.5%;
}

body {
    max-width: 100%;
    color:#707070;
    font-family: "ヒラギノ角ゴシック","Hiragino Kaku Gothic Pro",'Osaka',"メイリオ",'Meiryo',"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

a {
    text-decoration:none;
}


/*--header--*/

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 5000;
    height:70px;
}

.navbar {
    flex-wrap: nowrap;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    background-color: #FFFFFF;
}

.navbar-brand {
    width:40%;
}

.contact-img {
    width:40%;
}
/*--first-view--*/

.first-view {
    position:relative;
    height:100vh;
    margin-bottom: 0;
}

.top-img {
    position: relative;
    width:100%;
    height:80vh;
    background-image: url(../CSS/image/top-image.png);
    background-size: cover;
    background-repeat:no-repeat;
}

.logo-2 {
    width:70%;
    position:absolute;
    top: 42%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1000;
}

.top-text {
    position:absolute;
    top:30%;
    left:50%;
    transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
    -webkit-transform: translateY(-50%) translateX(-50%);
}

.catch-copy {
    font-size:20px;
    color:#FF0000;
    font-weight: 800;
}

.catch-copy-sub {
    font-size:25px;
    color:#FFFFFF;
    position: relative;
    z-index: 1;
    text-align: center;
    margin: 0 auto 20px auto;
    width: 235px;
    height:40px;
    font-weight: 300;
    display: flex;
    justify-content: center;
    align-items: center;
}

.catch-copy-sub::before {
    transform: skewX(-45deg);
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color: #FF0000;
}

.copy1{
    font-size:20px;
    color:#FF0000;
}

.logo {
    width: 30%;
    position: absolute;
    left: 50%;
    transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
    -webkit-transform: translateY(-50%) translateX(-50%);
}

.pc {
    display:none
}

.merit {
    text-align:center;
    position:absolute;
    color:#FF0000;
    font-weight: 900;
    top: 70%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.merit1 {
    padding-top: 8px;
}

.merit1 p {
    font-size:1rem;
}

.merit2 {
    padding-top: 15px;
}

.merit2 p {
    font-size:1rem;
}

.merit3 {
    padding-top: 20px;
}

.merit3 p {
    font-size:1rem;
}

.circle {
    margin: 0 auto;
    background-color:#FFFFFF;
    width: 150px;
    height: 150px;
    text-align:center;
    border-radius: 50%;
    border: solid 6px #FF0000;
}

.circle2 {
    display:flex;
}

.circle3 {
    margin-left:20px;
}

.first-view-icon {
    width:60%;
}

.section {
    padding-bottom:10vh;
}

.btn {
    width:30vw;
    height:5vh;
    background-color: #FF0000;
    border: none;
    position: absolute;
    top:94%;
    left:50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-decoration: none;
    padding: 0.375rem 0.75rem;
    font-size: 10%;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

/**--problem--**/

.title {
    position: relative;
    z-index: 1;
    text-align: center;
    margin: 0 auto 20px auto;
    width: 235px;
    height:40px;
    color:#FFFFFF;
    font-weight: 200;
    font-size:30px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.title::before {
    transform: skewX(-45deg);
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color:#FF0000;
}

.title p {
    margin:auto;
}

.problem{
    text-align:center;
    height:55vh;
}

.subtitle {
    width:70%;
    text-align:center;
    border-bottom: 1px solid #FF0000;
    margin:20px auto 20px auto;
    font-size:25px;
}

ul {
    width:320px;
    list-style: none;
    font-size:20px;
    align-items: center;
    margin:0 auto;
}

.list_triangle {
    list-style:none;
    padding:0.5em;
}

ul.list_triangle li {
    text-align:left;
    position:relative;
    padding: 0em 0.3em 0em 1.3em;
}

ul.list_triangle li:before{
    display:inline-block;
    position:absolute;
    content:'';
    top: 0.7em;
    left: 0.2em;
    height:0;
    width:0;
    border-style: solid;
    border-width: 6px 0 6px 9px;
    border-color: transparent transparent transparent #FF0000;
    transform:rotate(90deg);
}


.description1-1 li{
    line-height: 30px;
}

.problem-image {
    width: 30%;
    margin: 0 0 0 50vw;
}


/**--solution--**/
.solution{
    text-align:center;
    height:125vh;
    width:90%;
    margin: 0 auto;
}

.text-image {
    height:25vh;
    position:relative;
    display: flex;
    align-items: flex-end;
}

.solution-text {
    height:50vh;
    width:50vw;
    font-size:2rem;
}

.number {
    font-size:7rem;
    font-weight: 500;
    color:#FF0000;
}

.main {
    text-align: left;
    font-size: 1.2rem;
    font-weight: 800;
    color:#707070;
    margin-top:3vh;
}

.sub{
    text-align: left;
    margin-bottom:0;
    color:#707070;
    font-size:1.2rem;
}

.solution-img {
    width:60%;
    margin:9vh 0 0 0;
}

/**--solution1--**/
.number1 {
    position:absolute;
    top:0;
    left:0;
}

.text1 {
    position:absolute;
    width:60%;
    top:45px;
    z-index: 1000;
}

.solution-img1 {
    position:absolute;
    width:55%;
    top:0;
    right:0;
    z-index: 1000;
}

/**--solution2--**/
.solution2 {
    text-align:right;
}

.number2 {
    position:absolute;
    top:0;
    left:50%;
}

.text2 {
    position:absolute;
    top:40px;
    left:50%;
    z-index: 1000;
}

.sub2 {
    text-align: right;
}

.solution-img2 {
    position:absolute;
    top:0;
    left:0;
    z-index: 1000;
}

/**--solution3--**/
.number3 {
    position:absolute;
    top:0;
    left:0;
}

.text3 {
    position:absolute;
    width:55%;
    top:45px;
    z-index: 1000;
}

.solution-img3 {
    position:absolute;
    width:55%;
    top:0;
    right:0;
    z-index: 1000;
}

/**--solution4--**/
.solution4 {
    text-align: right;
}

.number4 {
    position:absolute;
    top:0;
    left:55%;
}

.text4 {
    position:absolute;
    top:40px;
    left:55%;
    z-index: 1000;
}

.sub4 {
    text-align: right;
}

.solution-img4 {
    position:absolute;
    width:55%;
    top:0;
    left:0;
    z-index: 1000;
}


/**----CTA--**/

.cta {
    position: relative;
    height:50vh;
    background-image: url(../CSS/image/cta-img.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1000;
    padding-bottom:10vh;
}

.mask {
    width: 100%;
    height:40vh;
    background-color:#FF0000;
    position: absolute;
    top:0;
    left:0;
    z-index: 2000;
    opacity:0.7;
}

.l-inner {
    width:100%;
    position:absolute;
    z-index: 3000;
    top: 40%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.cta_btn {
    position:relative;
    width:100%;
    text-align:center;
    margin: 0 auto;
}

.cta_text {
    text-align: center;
    color: #FFFFFF;
}

.ttl {
    text-align: center;
}

.desc {
    text-align: center;
    font-weight: 300;
    font-size:1.5rem;
}

.btnForm {
    width: 100%;
    text-decoration: none;
}

.btnForm_txt {
    position:relative;
    width:80%;
    height:20vh;
    background-color:#FFFFFF;
    border-radius: 1rem;
    margin:0 auto;
}

.button-text {
    width:60%;
    height:5vh;
    background-color:#FF0000;
    border-radius: 2rem;
    margin: 0 auto;
}

.btnForm_txt p {
    padding-top:10px;
    font-size:1.2rem;
    font-weight:700;
    color:#FFFFFF;
}

.btnForm_txt img{
    width:20%;
    object-fit: contain;
    padding-top: 40px;
    padding-bottom: 10px;

}

.cta_text span {
    font-weight: 700;
    color: #fff;
}

.ttl01 {
    line-height: 1;
    font-size: 6vw;;
    font-weight:700;
}

.ttl02 {
    line-height: 1;
    font-size:15vw;
    font-weight:700;
}

.ttl03 {
    line-height: 1;
    font-size:9vw;
    font-weight:700;
}

/**--reason--**/

.reason{
    text-align:center;
    height:230vh;
}

.reason img {
    width:80%;
}

.reason-text {
    width:80%;
    height:23vh;
    margin: 0 auto;
    background-color:#FF0000;
    font-size:1.5rem
}

.main1 {
    font-size:1.8rem;
    font-weight:550;
    color:#ffffff;
    padding-top:15px;
}

.sub1 {
    width:80%;
    font-size:1.4rem;
    color:#ffffff;
    margin: 0 auto;
    text-align: left;
}

/**--cta--**/


/**--business-field--**/

.business-field{
    width:80%;
    text-align:center;
    height:160vh;
    margin: 0 auto;
}

.digital-marketing-title {
    display: flex;
    font-size:2rem;
    text-align: center;
    justify-content:center;
    padding: 3vh 0;
    font-weight:600;
}

.digital-marketing-title img {
    object-fit: contain;
    width:10%;
    margin-right:10px;
}

.digital-marketing-title p{
    margin:auto 0;
}

.main-description {
    font-size:1.2rem;
    padding:3vh 0;
    text-align: left;
}

.sub-description {
    width:80%;
    height:8vh;
    font-size:1.2rem;
    font-weight:600;
    background-color:#FF0000;
    border-radius: 6.03865vw;
    color:#FFFFFF;
    margin: 0 auto;
    padding: 14px 0;
}



.ec-growth-title {
    display: flex;
    font-size:2rem;
    text-align: center;
    justify-content:center;
    padding: 3vh 0;
    font-weight:600;
}

.ec-growth-title img {
    object-fit: contain;
    width:10%;
    margin-right:10px;
}

.ec-growth-title p{
    margin:auto 0;
}

.business-field-description2 p {
    margin-bottom:20px;
    text-align:left;
    font-size:1.2rem;
}

/**--SNS--**/

.SNS-group {
    display:flex;
    margin:5vh 0;
}

.SNS-group p{
    margin:0;
}

.sns-logo {
    width:50%;
    display:flex;
    align-items: center;
}

.sns-logo img{
    object-fit: contain;
    width:20%;
    margin: 10px;
}

.sns-text1 {
    display:inline-block;
    font-size:1rem;
    font-weight: 700;
}

.sns-text2 {
    font-size:1.2rem;
}

.facebook {
    display:flex;
    width:50%;
    align-items: center;
}

.facebook img {
    object-fit: contain;
    width:30%;
    padding:10px;
}


    /**--step--**/

.step {
    height:90vh;
}

.flow {
    width:80%;
    height:60vh;
    box-shadow:6px 6px 15px;
    border-radius: 10px;
    text-align: center;
    margin: 5vh auto 5vh auto;
    padding:5vh;
}

.triangle{
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 15px solid #FF0000;
    margin: 0 auto;
}

.text-bar{
    display: flex;
    align-items: center;
    justify-content: center;
    color:#FF0000;
    font-size: 1.5rem;
}

.flow-text {
    padding:1vh 0 1vh 0;
}

.flow-text p {
    font-size:1.2rem;
}


.text-bar:before,
.text-bar:after {
    border-top: 1px solid #FF0000;
    content: "";
    width: 20px;
}
.text-bar:before {
    margin-right: 10px;
}
.text-bar:after {
    margin-left: 10px;
}

.flow1 {
    padding-bottom: 3vh;
}

.flow2 {
    padding-bottom: 3vh;
}

.flow3 {
    padding-bottom: 3vh;
}



/**--contact--**/

#contact{
    text-align:center;
    height:170vh;
}

.form {
    position: static;
    padding: 0;
    width: 100%;
    height: auto;
}

.form iframe {
    position: static;
    width: 100%;
}

/*------------------------------------
/* メール送信時のcontact
.mail__contact {
    padding: 25px 10px;
    width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 1023px) {
    .mail__contact {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .mail__contact {
        padding: 25px 10px;
        width: 90%;
    }
}

.contact__contents {
    padding: 0 100px 100px;
    background: #fff;
    border-radius: 40px;
    box-shadow: 3px 3px 15px rgba(96, 96, 96, 0.3);
    max-width: 850px;
    margin: 0 auto;
}

@media screen and (max-width: 1919px) {
    .contact__contents {
        padding: 0 100px 50px;
    }
}

@media screen and (max-width: 1365px) {
    .contact__contents {
        padding: 0 80px 50px;
    }
}

@media screen and (max-width: 1023px) {
    .contact__contents {
        padding: 0 60px 50px;
    }
}

@media screen and (max-width: 767px) {
    .contact__contents {
        padding: 0 15px;
    }
}

.contact__wrap {
    padding: 3rem 0;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
    width: 100%;
    font-size: 2rem;
    padding: .2em .5em;
    border: 1px solid #C1C1C1;
    border-radius: 4px;
}

@media screen and (min-width: 767px) {
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    textarea {
        font-size: 1.2rem;
    }
}

input[type="text"],
input[type="email"],
input[type="tel"] {
    height: 50px;
}

@media screen and (max-width: 1919px) {
    input[type="text"],
    input[type="email"],
    input[type="tel"] {
        height: 40px;
    }
}

@media screen and (max-width: 767px) {
    input[type="text"],
    input[type="email"],
    input[type="tel"] {
        height: 40px;
        font-size: 1.2rem;
    }
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder {
    color: gray;
    opacity: .6;
}

@media screen and (max-width: 767px) {
    input[type="text"]::placeholder,
    input[type="email"]::placeholder,
    input[type="tel"]::placeholder {
        font-size: 1.2rem;
    }
}

textarea {
    resize: vertical;
    min-height: 400px;
}

@media screen and (max-width: 1919px) {
    textarea {
        min-height: 300px;
    }
}

@media screen and (max-width: 767px) {
    textarea {
        min-height: 200px;
        font-size: 1.2rem;
    }
}

textarea::placeholder {
    color: gray;
    opacity: .6;
}

@media screen and (max-width: 767px) {
    textarea::placeholder {
        font-size: 1.2rem;
    }
}

.contact-item + .contact-item {
    margin-top: 32px;
}

.contact-item-title {
    font-size: 20px;
    margin-bottom: 5px;
    font-weight: 500;
    color:#FF1E00;
}

@media screen and (max-width: 767px) {
    .contact-item-title {
        display: inline-block;
        font-size: 14px;
        line-height: 32px;
        height: 32px;
    }
}

.contact-footer {
    text-align: center;
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .contact-footer {
        margin-top: 14px;
    }
}

.contact-privacyInner {
    margin-bottom: 25px;
}

@media screen and (max-width: 1919px) {
    .contact-privacyInner-p {
        text-align: left;
    }
}

@media screen and (max-width: 767px) {
    .contact-privacyInner-p {
        text-align: justify;
    }
}

.contact-privacy {
    width: 22px;
    height: 22px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

.contact-privacy-input {
    position: absolute;
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    display: inline-block;
    opacity: 0;
    margin: 0;
}

.contact-privacy-input:checked + .contact-privacy-part {
    width: 10px;
    border-top: 0;
    border-left: 0;
    border-radius: 0;
    border-color: black;
    background: transparent;
    transform: rotate(45deg);
    top: -5px;
    left: 5px;
}

.contact-privacy-input:focus + .contact-privacy-part {
    outline: -webkit-focus-ring-color auto 1px;
}

.contact-privacy-input:checked:focus + .contact-privacy-part {
    outline: none;
}

.contact-privacy-part {
    position: absolute;
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    display: inline-block;
    border: 1px solid #C1C1C1;
    border-radius: 3px;
    background: #fff;
    transition: all 0.3s ease 0s;
}

.contact-privacy-link {
    color: #F0F0F0;
    text-decoration: underline;
}

.contact-footer-submit {
    margin-top: 100px;
}

@media screen and (max-width: 1919px) {
    .contact-footer-submit {
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .contact-footer-submit {
        margin-top: 24px;
    }
}

.contact-footer-submit .util-link {
    background: #FF1E00;
    color: #fff;
    border-radius: 999px;
    padding: 2px 75px;
    font-size: 28px;
    opacity: 0.3;
    transition: all 0.3s ease 0s;
}

.contact-footer-submit .util-link.-active {
    opacity: 1;
    cursor: pointer;
    box-shadow: 3px 3px 15px rgba(96, 96, 96, 0.6);
}

.contact-message {
    text-align: center;
    display: none;
}

.contact-message.-error {
    color: #f00;
}

.contact__afterText {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .contact__afterText {
        font-size: 14px;
    }
}
----*/


/**footer**/
.footer-container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

.footer-container img {
    width:30%;
}

.footer-container {
    font-size: 15px;
    background-color:#FF0000;
}

.footer-container p {
    color:#FFFFFF;
    font-size:15px;
    margin:0;
}

@media screen and (min-width:1024px) {
    /*　画面サイズが1024pxからはここを読み込む　*/
    .fixed-top {
        z-index: 5000;
    }

    .navbar-brand img{
        width:10%;
    }

    .section {
        width:100%;
    }

    .top-image {
        text-align: center;
    }
    .top-text {
        top: 20%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1000;
    }

    .catch-copy {
        font-size:25px;
        font-weight:300;
        line-height: 35px;
    }

    .copy1 {
        font-size:45px;
        font-weight: 700;
    }

    .logo-2 {
        position:absolute;
        top: 47%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1000;
        width:40%;
    }

    .pc {
        display:block;
        position:absolute;
        top: 65%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 500;
        width:70%;
        text-align: center;
    }

    .pc img {
        width:100%;
    }

    .merit {
        display:flex;
        position:absolute;
        top: 67%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 600;
        max-width:50%;
        text-align: center;
    }

    .top-img {
        height:90%;
    }

    .catch-copy-sub {
        position: relative;
        z-index: 1;
        text-align: center;
        margin: 0 auto 20px auto;
        width: 100%;
        height:7.5vh;
        color:#FFFFFF;
        font-size:35px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .catch-copy-sub::before {
        transform: skewX(-45deg);
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: -1;
        background-color:#FF0000;
    }

    .circle {
        margin:0 3vw 0 0;
    }

    .circle3 {
        margin:0 ;
    }

    .btn {
        position:absolute;
        background-color:#FF0000;
        top: 83%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1000;
        color: #FFFFFF;
        font-weight: 400;
        line-height: 1.5;
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        cursor: pointer;
        width: 20%;
        height: 5vh;
        border-radius: 2rem;
        margin-bottom: 5vh;
    }

    .subtitle {
        font-size:40px;
        width:40%;
    }

    .problem {
        height:600px;
        padding-top:10vh;
    }

    ul {
        width:460px;
    }

    .list_triangle {
        font-size:30px;
    }
    .problem-image {
        width:20%;
        margin: 0 30% 0 auto;
    }

/*----solution-----*/
    .solution {
        height:250vh;
        width:80%;
    }

    .solution-img {
        margin-top:0;
    }

    .solution-text {
        position:absolute;
        top:0;
        height:40vh;
    }

    .solution-text-even {
        position:absolute;
        top:0;
        right:0%;
        height:40vh;
        margin-right:10vw;
        text-align: left;
    }

    .number {
        font-size:10rem;
        margin-bottom:30vh;
    }

    .main {
        font-size:3rem;
        margin-top:5vh;
    }

    .sub {
        font-size:2rem;
    }

    .solution1 {
        height:50vh;
        margin-top:10vh;
    }

    .solution-img1 {
        text-align:right;
    }

    .text1 {
        width:65%;
    }

    .solution2 {
        height:50vh;
    }

    .solution-img2 {
        text-align:left;
    }

    .text2 {
        width:70%;
    }

    .solution3 {
        height:50vh;
    }

    .solution-img3 {
        width:45%;
    }

    .text3 {
        width:65%;
    }

    .solution4 {
        height:50vh;
    }

    .solution-img4 {
        width:53%;
    }

    .text4 {
        width:65%;
    }

    .cta {
        height:50vh;
        margin-bottom:10vh;
    }

    .mask {
        height:50vh;
    }

    .cta_inner {
        display:flex;
        column-gap:5vw;
    }

    .ttl01 {
        font-size:5rem;
    }

    .ttl02{
        font-size:10rem;
    }

    .ttl03{
        font-size:5rem;
    }

    .desc {
        font-size:2rem;
    }

    .cta_text {
        width:50%;
        margin-left:20%;
    }

    .cta_btn {
        width:50%;
        margin-right:20%;
    }

    .btnForm_txt {
        position:relative;
        width:20vw;
        height:20vh;
    }

    .btnForm_txt img{
        width:20%;
        position:absolute;
        top: 30%;
        left: 50%;
        transform: translate(-50%, -50%);
    }


    .button-text {
        width:80%;
        height:5vh;
        position:absolute;
        top: 80%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color:#FF0000;
        border-radius: 2rem;
    }

    .btnForm_txt p{
        font-size:1.2rem;
        color:#FFFFFF;
    }

    .reason {
        height:120vh;
    }

    .reason-flex {
        display:flex;
        justify-content: center;
        align-items: center;
    }

    .reason-img img{
        object-fit: cover;
        width:400px;
        height:400px;
        margin:0;
    }

    .reason-text{
        width:400px;
        height:27vh;
        font-size:1.2rem;
    }
    .reason1 {
        margin:100px;
    }
    .reason3 {
        margin:100px;
    }

    .main1 {
        font-size:2rem;
    }

    .sub1 {
        font-size:1.6rem;
    }

    .business-field {
        height:170vh;
    }
    .business-field-description1 {
        display:flex;
        justify-content: center;
        align-items: center;
        margin-bottom:15vh;
    }
    .digital-marketing-title{
        font-size:30px;
    }
    .ec-growth-title{
        font-size:30px;
    }

    .ec-growth-title img {
        width:15%;
    }

    .digital-marketing{
        width:40%;
    }
    .ec-growth {
        width:40%;
    }
    .main-description {
        width:50%;
        height:28vh;
        margin:0 auto;
        text-align: left;
        font-size:1.5rem;
    }
    .sub-description {
        height:10vh;
        padding-top:15px;
        font-size:1.5rem;
    }
    .business-field-description2 {
        width:60%;
        margin: 0 auto;
    }

    .business-field-description2 p {
        font-size:1.5rem;
    }

    .sns-text1{
        font-size:2rem;
        padding-left:5vw;
    }

    .sns-text2 {
        font-size:2rem;
        padding-left:5vw;
    }

    .facebook img{
        width:28%;
    }

    .step {
        height:110vh;
    }

    .flow {
        width:40%;
        height:78vh;
        box-shadow:6px 6px 15px;
        border-radius: 10px;
        text-align: center;
        margin: 5vh auto 5vh auto;
        padding:8vh;
    }

    .text-bar{
        display: flex;
        align-items: center;
        justify-content: center;
        color:#FF0000;
        font-size:2.5rem;
    }

    .flow-text {
        padding-top:3vh;
        font-size:2rem;
    }

    .text-bar:before,
    .text-bar:after {
        border-top: 1px solid #FF0000;
        content: "";
        width: 20px;
    }
    .text-bar:before {
        margin-right: 10px;
    }
    .text-bar:after {
        margin-left: 10px;
    }

    .flow1 {
        padding-bottom: 5vh;
    }

    .flow2 {
        padding-bottom: 5vh;
    }

    .flow3 {
        padding-bottom: 5vh;
    }

    #contact {
        height:180vh;
    }

    .footer-container{
        max-width:100%;
    }

    .footer-container img{
        width:20%;
    }

    .footer-container p{
        font-size:2rem;
    }
}

@media screen and (min-width:768px) and ( max-width:1024px) {
    /*　画面サイズが768pxから1024pxまではここを読み込む　*/

    .top-img {
        width:100%;
        height:100vh;
        background-image: url(../CSS/image/top-image.png);
        background-size: cover;
        background-repeat:no-repeat;
    }

    .logo {
        width:20%;
    }

    .top-text {
        top:25%;
    }

    .catch-copy {
        font-size:3rem;
        font-weight: 400;
    }

    .copy1 {
        font-size:4rem;
        font-weight: 700;
    }

    .catch-copy-sub {
        width:30vw;
        height:7vh;
        font-size:3rem;
    }

    .logo-2 {
        width:50%;
        top: 45%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1000;
    }

    .merit{
        display:flex;
        position:absolute;
        top: 65%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 600;
        max-width:50%;
        text-align: center;
    }

    .circle {
        margin:0 3vw 0 0;
    }

    .circle3 {
        margin:0 ;
    }

    .btn {
        width:30vw;
        height:5vh;
        top: 80%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1;
        display: inline-block;
        font-weight: 400;
        line-height: 1.5;
        color: #FFFFFF;
        text-decoration: none;
        padding: 0.375rem 0.75rem;
        transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }

    .problem {
        height:70vh;
    }

    .description1-1 {
        font-size:2rem;
        text-align: center;
    }

    .solution {
        height: 150vh;
        width:60%;
    }

    .solution-img {
        margin-top:0;
    }

    .solution-text {
        position:absolute;
        top:0;
        height:40vh;
    }

    .solution-text-even {
        position:absolute;
        top:0;
        right:0%;
        height:40vh;
        text-align: left;
    }

    .solution1 {
        height:30vh;
    }

    .solution-img1 {
        width:50%;
    }

    .solution2 {
        height:30vh;
    }

    .solution-img2 {
        width:50%;
    }

    .text2 {
        width:50%;
    }

    .solution3 {
        height:30vh;
    }

    .solution-img3 {
        width:50%;
    }

    .solution4 {
        height:30vh;
    }

    .solution-img4 {
        width:50%;
    }

    .text4 {
        width:45%;
    }

    .cta_inner {
        display:flex;
        column-gap:5vw;
    }

    .ttl01 {
        font-size:5rem;
    }

    .ttl02{
        font-size:15rem;
    }

    .ttl03{
        font-size:5rem;
    }

    .desc {
        font-size:2rem;
    }

    .cta_text {
        width:50%;
        margin-left:10%;
    }

    .cta_btn {
        width:50%;
        margin-right:10%;
    }

    .btnForm_txt {
        position:relative;
        width:30vw;
        height:25vh;
    }

    .btnForm_txt img{
        width:30%;
        position:absolute;
        top: 30%;
        left: 50%;
        transform: translate(-50%, -50%);
    }


    .button-text {
        width:80%;
        height:5vh;
        position:absolute;
        top: 80%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color:#FF0000;
        border-radius: 2rem;
    }

    .btnForm_txt p{
        font-size:1.2rem;
        color:#FFFFFF;
    }

    .reason {
        height:110vh;
    }

    .reason-flex {
        display:flex;
        justify-content: center;
        align-items: center;
    }

    .reason-img {
        width:215px;
    }

    .reason-img img{
        object-fit: cover;
        width:100%;
        margin:0;
    }

    .reason-text{
        width:215px;
        height:30vh;
        font-size:1.2rem;
    }
    .reason1 {
        margin:100px;
    }
    .reason3 {
        margin:100px;
    }

    .main1 {
        font-size:2rem;
    }

    .sub1 {
        font-size:1.6rem;
    }

    .business-field {
        height:170vh;
    }

    .facebook img {
        width:30%;
    }

    .sns-container {
        width:50%;
    }

    .sns-text1 {
        font-size:1.5rem;
    }

    .sns-text2 {
        font-size:1.5rem;
        text-align:center;
        padding-left:5vw;
    }

    #contact {
        height:150vh;
    }

}


