/*==============
 タブレット 
 ===============*/
@media (max-width: 1024px) {
  
}


/*=======================

         スマホ

========================*/

@media (max-width: 768px) {

  .btn {
    font-size: 12px;
    font-weight: 300;
    padding: 20px 26px;

  }


  .cocoweb-studio {
    font-size: 20px;
  }
  .sp-onry {
    display: inline;
  }
  /*======ヘッダーセクション======*/
  .header .btn {
    display: none;
  }
  /*======Heroセクション======*/
  .hero h1 {
  font-size: 40px;
  text-align: left;
  margin-bottom: 32px;
  }
  .hero p {
    font-size: 16px;
    text-align: left;
    margin-bottom: 20px;
  }

  .a-btn-gap {
    flex-direction: column;
    align-items: center;
  }
  .a-btn-gap .btn {
    width: 100%;
    max-width: 300px;
  }

  .btn-second {
    background: #334155;
  }
/*======aboutセクション======*/

  .about-top {
  font-size: x-large;
  margin-bottom: 50px;
}
.about-top::before {
  width: 70px;
  height: 70px;

  top: -15px;
  left: -20px;
}
.about-top::after {
  width: 50px;
  height: 50px;

  bottom: -15px;
  right: -20px;
}
  .about-grid {
    grid-template-columns: 1fr;
  }
  
  .container-p {
  padding: 14px 18px;
  border-radius: 40px 50px 35px 45px;
  }
  .about-img {
  width: 100%;
  aspect-ratio: 3 / 3;
  object-fit: contain;
  }
  .about-footer {
    background: #1e293b;
    border-left: 4px solid #ddcb6e;
  }



/*======lossセクション======*/

  .loss-top {
  font-size: x-large;
  margin-bottom: 50px;
}
.loss-top::before {
  width: 100px;
  height: 100px;

  top: -15px;
  left: -20px;
}
.loss-top::after {
  width: 50px;
  height: 50px;

  bottom: -25px;
  right: -20px;
}

  .loss-grid {
    grid-template-columns: 1fr;
  }
  .loss-p {
    padding: 14px 18px;
  }
  .loss-img {
    width: 100%;
  aspect-ratio: 3 / 3;
  object-fit: contain;
  }

  .loss-footer {
    padding: 14px 6px;
  }


  /*======Worksセクション======*/
  
  .works h2 {
    font-size: 30px;
  }

  .works-grid {
    grid-template-columns: 1fr;
  }

  .container-bottom-right {
    font-size: 18px;
  }



  /*======Strengthセクション======*/

  .strength-container {
    flex-direction: column;
  }

  .strength h2 {
    font-size: 30px;
  }

  .strength-top-border {
    display: block;
    width: 60px;
    height: 2px;
    background: var(--section-border);
    margin: 0 auto 48px;
    border-radius: 999px;
  }



  /*=====serviceセクション=====*/

  
.service h2 {
  font-size: 30px;
  letter-spacing: 0.3em;
  margin: 46px;
}
.service h2 br {
  display: block
}

.service h3 {
  font-size: 90px;
  opacity: 0.7;
}

.service h4 {
  font-size: 18px;
  margin: 16px 0;
}

.service-top-p {
  margin-bottom: 60px;
}

.service-grid {
  padding: 0 ;
}

.service-container {
  display: flex;
  flex-direction: column;
}

.service-container-gold-border {
  height: 40px;
}

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

  width: 42px;
  height: 42px;

  background: #f8f6ef;
  border-radius: 50%;
}

.reason-icon svg {
  width: 26px;
  height: 26px;
  margin: 0 auto;
}

.service-container-p {
  font-size: 14px;
  margin-bottom: 20px;
  max-width: 400px;
}

.service-container-right {
  margin: 22px;
}
/*=====Flowセクション=====*/

.flow h2 {
  font-size: 26px;
  letter-spacing: 0.08em;
  margin: 50px 0;
}

.flow h3 {
  font-size: 20px;
  line-height: 1.4;
}

.flow-top-border {
  display: block;
  width: 60px;
  height: 2px;
  background: var(--section-border);
  margin: 0 auto 48px;
  border-radius: 999px;
}

.flow-top-p {
  font-size: 14px;
}

.flow-row {
  flex-direction: column;
  }
.arrow {
  transform: rotate(90deg);
  }

.icons {
  width: 60px;
  height: 60px;
  }


/*=====FAQセクション=====*/


.faq-question {
  font-size: 15px;
}

.faq-answer-p {
  font-size: 12px;
}

.faq-question::before,
.faq-answer::before {
  width: 26px;
  height: 26px;
  margin-right: 5px;
}




/*=====Formセクション=====*/

.contact h2 {
  font-size: 22px;
  margin: 10px;
}

.contact-form {
  padding: 30px;
}

.form-group {
  padding: 10px 0;
}

.form-group textarea {
  min-height: 150px;
}



/*=====Footerセクション=====*/

.icons {
  width: 70px;
  height: 70px;
}



}