@media (min-width: 768px) and (max-width: 1023.9px) {
  .desktop {
    display: block;
  }
  .mobile {
    display: block;
  }

  /* Styles for tablet / small desktop */
  .hero__mainText {
    font-size: 8vw;
  }
  .hero__subText {
    font-size: 1.6rem;
  }
  .snsSupport__title {
    font-size: 8vw;
    top: -3rem;
  }
  .nayami__title {
    font-size: 4.8rem;
  }
  body > footer > div.footer__bottom.desktop {
    display: none;
  }
  .nayami__content {
    flex-direction: column;
  }
  .nayami__textBox,
  .nayami__imageBox {
    flex: 1 1 100%;
    padding: 2rem 0;
  }
  .nayami__imageBox {
    padding-top: 0;
  }
  .snsManagement__title {
    font-size: 8vw;
    top: -2rem;
  }
  .whyUs__title {
    font-size: 7vw;
  }
  .fiveSteps__title {
    font-size: 4.8rem;
  }
  .fiveSteps__content {
    flex-direction: column;
  }
  .fiveSteps__imageBox,
  .fiveSteps__list {
    flex: 1 1 100%;
  }
  .portfolio__title {
    font-size: 4.8rem;
  }
  .portfolio__subtitle {
    font-size: 2rem;
  }
  .pricing__title {
    font-size: 4.8rem;
  }
  .pricing__table th,
  .pricing__table td {
    font-size: 1.6rem;
  }
  .howTo__title {
    font-size: 4.8rem;
  }
  .howTo__subtitle {
    font-size: 1.8rem;
  }
  .howTo__step {
    font-size: 1.8rem;
  }
  .faq__title {
    font-size: 4.8rem;
  }
  .faq__subtitle {
    font-size: 1.8rem;
  }
  .faq__question {
    font-size: 2rem;
  }
  .faq__answer {
    font-size: 1.6rem;
  }
  .assessment__title {
    font-size: 4.8rem;
    top: -3rem;
  }
  .assessment__content {
    flex-direction: column;
  }
  .actNow__title {
    font-size: 4.8rem;
  }
  .actNow__content {
    flex-direction: column;
  }

  /* Styles for extra small mobile */
  .hero__mainText {
    font-size: 3.2rem;
    letter-spacing: 0.5rem;
  }
  .hero__subText {
    font-size: 1.2rem;
  }
  .snsSupport__title {
    font-size: 4rem;
    top: -11rem;
    text-align: center;
  }
  .snsSupport__button {
    font-size: 1.8rem;
    padding: 0.8rem 1.6rem;
  }
  .nayami__title {
    font-size: 3rem;
  }
  .nayami__list {
    font-size: 1.4rem;
  }
  .nayami {
    padding: 6rem 2rem;
  }
  .snsManagement {
    padding: 6rem 2rem;
  }
  .snsManagement__title {
    font-size: 3rem;
  }
  .snsManagement__subtitle {
    font-size: 1.8rem;
  }
  .snsManagement__list {
    font-size: 1.4rem;
  }
  .whyUs {
    padding: 6rem 0rem;
  }
  .whyUs__title {
    font-size: 3rem;
  }
  .whyUs__pointTitle {
    font-size: 1.5rem;
  }
  .whyUs__pointText {
    font-size: 1.4rem;
  }
  .fiveSteps {
    padding: 6rem 0rem;
    padding-top: 0;
    padding-bottom: 0;
  }
  .fiveSteps__list {
    font-size: 1.4rem;
  }
  .portfolio {
    padding: 0;
  }
  .portfolio__title {
    font-size: 3rem;
  }
  .portfolio__subtitle {
    font-size: 1.6rem;
  }
  .portfolio__client {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 3vw;
  }
  .portfolio__result {
    font-size: 1.4rem;
  }
  .pricing__title {
    font-size: 3rem;
  }
  .pricing__table th,
  .pricing__table td {
    font-size: 1.2rem;
  }
  .pricing__note {
    font-size: 1.2rem;
    text-align: center;
  }
  .howTo {
    padding: 6rem 2rem;
  }
  .howTo__title {
    font-size: 3rem;
    letter-spacing: normal;
  }
  .howTo__subtitle {
    font-size: 1.4rem;
    width: 80vw;
    padding: 2rem 1rem;
  }
  .howTo__step {
    font-size: 1.4rem;
  }
  .howTo__arrow {
    font-size: 2.4rem;
  }
  .faq__title {
    font-size: 3rem;
    letter-spacing: normal;
  }
  .faq__subtitle {
    font-size: 1.4rem;
  }
  .faq__question {
    font-size: 1.8rem;
    padding-right: 13vw;
  }
  .faq__answer {
    font-size: 1.4rem;
    padding-right: 13vw;
    margin-left: 2vw;
  }
  .assessment {
    padding: 6rem 2rem;
    background: linear-gradient(
        90deg,
        #355d7d 0%,
        rgba(0, 0, 0, 0) 51.92%,
        rgba(255, 255, 255, 0) 85.58%
      ),
      url(/assets/img/free.png) lightgray -10.439px -244.746px / 126.872% 154.907%
        no-repeat;
  }
  .assessment__title {
    font-size: 3rem;
  }
  .assessment__lead {
    font-size: 1.8rem;
  }
  .assessment__desc {
    font-size: 1.1rem;
  }
  .assessment__button {
    font-size: 1.6rem;
  }
  .actNow {
    padding: 6rem 0rem;
    padding-bottom: 23vw;
  }
  .actNow__title {
    font-size: 3rem;
    margin-top: 13vw;
  }
  .actNow__lead {
    font-size: 1.6rem;
    margin-top: 2vw;
  }
  .actNow__list {
    font-size: 1.4rem;
  }
  .actNow__button {
    font-size: 1.6rem;
  }
  .siteHeader {
    padding: 0 2rem;
  }
  .siteHeader__logo img {
    height: 7rem;
  }
  .siteHeader__companyName {
    margin-top: -2.5vw;
    font-size: 0.5rem;
  }
  .hero {
    height: 100vw;
    background-size: contain;
    align-content: center;
  }
  .hero__overlay {
    padding-right: 20vw;
    padding-left: 20vw;
  }
  .hero::before {
    height: 7vh;
  }
  .hero::after {
    height: 2vh;
  }
  .snsSupport {
    background: linear-gradient(
      90deg,
      rgba(36, 119, 186, 0) 0%,
      #103654 54.33%,
      rgba(36, 119, 186, 0) 100%
    );
    padding-bottom: 0;
  }
  .snsSupport__content {
    margin-top: -8vw;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
  }
  .snsSupport__textBlock {
    margin-left: 0;
    max-width: 85vw;
  }
  .snsSupport__lead {
    font-size: 18px;
    margin-bottom: 9vw;
  }
  .snsSupport__list {
    font-size: 14px;
  }
  .snsSupport__list li {
    font-size: 14px;
  }
  .snsSupport__desc {
    font-size: 13px;
  }
  .snsSupport__note {
    font-size: 13px;
  }
  .snsSupport__button {
    font-size: 14px;
    padding: 1rem 4rem;
  }
  .nayami {
    padding-top: 4rem;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0;
  }
  .nayami__title {
    letter-spacing: normal;
    margin-bottom: 5rem;
    font-size: 3rem;
  }
  .nayami__content {
    display: flex;
    flex-direction: column;
  }
  .nayami__textBox {
    display: flex;
    width: 100vw;
    padding: 2rem 4rem;
    padding-left: 6rem;
    align-items: center;
    justify-content: center;
  }
  .nayami__list {
    font-size: 1.5rem;
  }
  .nayami__imageBox {
    width: 100vw;
    margin-top: 16vw;
  }
  .nayami__footer {
    position: relative;
    top: -77rem;
    font-size: 1.5rem;
    padding: 0 10vw;
  }
  .snsManagement {
    margin-top: -31vw;
    padding: 0;
  }
  .snsManagement__headingBox {
    padding: 8vw;
  }
  .snsManagement__title {
    font-size: 3rem;
    letter-spacing: normal;
  }
  .snsManagement__subtitle {
    font-size: 1.8rem;
    margin-top: -1vw;
  }
  .snsManagement__content {
    display: flex;
    flex-direction: column;
    align-content: flex-start;
  }
  .snsManagement__textBox {
    max-width: 90vw;
    margin-left: 0;
    margin-right: 0;
  }
  .snsManagement__lead {
    font-size: 1.8rem;
  }
  .snsManagement__list {
    width: 58vw;
    display: flex;
    font-size: 1.2rem;
    padding: 4vw 10rem;
    border-radius: 20px;
    margin-top: 3vw;
    flex-direction: column;
    align-content: center;
  }
  .snsManagement__list li {
    font-size: 1.5rem;
    padding-left: 2rem;
    border-radius: 10px;
  }
  .whyUs__title {
    margin-left: 0;
    padding-left: 0;
    letter-spacing: normal;
    font-size: 3rem;
    text-align: right;
    margin-right: 8vw;
  }
  .whyUs__content {
    display: flex;
    flex-direction: row-reverse;
  }
  .whyUs__textBox {
    position: absolute;
    top: 25vw;
    left: 0;
    z-index: 999;
    margin-left: 5vw;
  }
  .whyUs__point {
    width: 70vw;
    margin-bottom: 6rem;
    margin-top: 2rem;
  }
  .whyUs__pointText {
    font-size: 1rem;
  }
  .whyUs__imageBox::before {
    height: 6vw;
    width: 50vw;
    top: -6vw;
  }
  .fiveSteps__title {
    padding-left: 0;
    letter-spacing: normal;
    font-size: 3rem;
    text-align: left;
    margin-left: 13vw;
    margin-right: 0;
    margin-bottom: 8rem;
  }
  .fiveSteps__content {
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
  }
  .fiveSteps__imageBox img {
    object-fit: contain;
    aspect-ratio: auto;
  }
  .fiveSteps__imageBox::before {
    height: 6vw;
    width: 50vw;
    top: -6vw;
  }
  .fiveSteps__list {
    position: absolute;
    width: 80vw;
    font-size: 1.5rem;
  }
  .fiveSteps__list li {
    font-size: 1.5rem;
    line-height: 2;
    font-weight: 700;
    margin-bottom: 9vw;
  }
  .portfolio__item {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .portfolio__item:nth-child(even) {
    flex-direction: column;
  }
  .portfolio__item img {
    width: 100vw;
  }
  .portfolio__caption {
    width: 100vw;
  }
  .pricing__tableWrap {
    width: 95vw;
  }
  .pricing__table {
    border-spacing: 5px;
  }
  .pricing__table thead th {
    text-align: left;
    padding: 0.5rem 0.5rem;
    font-size: 1rem;
  }
  .pricing__table tbody td {
    font-size: 1rem;
    padding: 2rem 0.5rem;
  }
  .howTo__flow {
    width: 80vw;
    margin: auto;
  }
  .faq {
    padding-top: 0;
  }
  .assessment {
    height: 122vw;
    background: linear-gradient(
        0deg,
        #355d7d 0%,
        rgba(0, 0, 0, 0) 51.92%,
        rgba(255, 255, 255, 0) 85.58%
      ),
      url(/assets/img/free.png) lightgray -10.439px -244.746px / 126.872% 154.907%
        no-repeat;
    background-size: contain;
    background-position: top;
    width: 100vw;
  }
  .assessment__content {
    gap: 0;
    width: 75vw;
  }
  .assessment__textBox {
    margin: 0;
  }
  .assessment__textBox h3 {
    font-size: 1.5rem;
    text-align: center;
  }
  .assessment__imageBox img {
    display: none;
  }
  .actNow__content {
    display: flex;
    flex-direction: column-reverse;
    padding-top: 0;
  }
  .actNow__textBox {
    padding-bottom: 5rem;
  }
  .actNow__list li {
    font-size: 14px;
  }
  .actNow__desc {
    margin-right: 5vw;
    font-size: 12px;
  }
  .actNow__note {
    font-size: 12px;
  }
  .actNow__imageBox img {
    height: auto;
  }
  .footer__contact {
    height: 50vw;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .footer__contactTitle {
    font-size: 4rem;
    top: 4vw;
    z-index: 9;
    position: absolute;
    color: #add0e6;
  }
  .footer__contactInner {
    display: flex;
    width: 100vw;
    overflow: hidden;
    flex-direction: column;
    flex-wrap: nowrap;
    background-image: linear-gradient(rgb(0 0 0 / 31%), rgb(0 0 0 / 35%)), url(/assets/img/contact.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    align-content: center;
    align-items: center;
    justify-content: center;
    padding-bottom: 20vw;
  }
  .footer__contactLead {
    font-size: 2rem;
  }
  .footer__contactText {
    font-size: 1.4rem;
  }
  .footer__contactContent {
    position: static;
    max-width: 70%;
    margin-top: 35vw;
  }
  .footer__contactButton {
    margin-top: 70vw;
    font-size: 14px;
  }
  .footer__contactImage {
    width: 100vw;
    height: 50vw;
    max-height: 50vw;
  }
  .footer__contactImage img {
    position: relative;
    z-index: 1;
    object-fit: cover;
    height: 50vw;
    max-height: 50vw;
  }
  .footer__nav {
    display: flex;
    gap: 0;
    align-content: flex-end;
    flex-direction: row;
    color: black;
    min-width: 20vw;
    max-width: 100vw;
  }
  .footer__bottom {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 2rem 1rem;
    flex-direction: column;
    align-items: center;
    max-width: 100vw;
    overflow: hidden;
  }
  .footer__logoBlock {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    position: relative;
    top: -3vw;
    left: -10vw;
    align-content: space-around;
  }
  .footer__logo img {
    width: 15vw;
    height: auto;
  }
  .footer__logo p {
    font-size: 1.2rem;
    color: white;
    margin-top: 0.3rem;
  }
  .footer__nav {
    flex: 1 1 auto;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-evenly;
  }
  .footer__navRow {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer__navRow:nth-child(1),
  .footer__navRow:nth-child(2) {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: 1.5rem 7rem;
    justify-content: start;
    margin-bottom: 3vw;
    color: black;
    align-items: center;
    margin-left: 15vw;
  }
  .footer__nav a {
    color: black;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .footer__backToTop {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    background: #196caf;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 1.5rem;
    margin-left: auto;
  }
  .footer__copyright {
    width: 100vw;
    max-width: 100%;
    text-align: center;
    font-size: 1.1rem;
    color: #c2a85c;
    margin-top: -1rem;
    padding: 0;
  }
  main {
    max-width: 100%;
  }
  body {
    max-width: 100%;
  }
  html {
    overflow-x: hidden;
  }
  #lp > footer > div.footer__bottom > nav > div:nth-child(2) > a:nth-child(2) {
    margin-left: -19vw;
  }
  #lp > footer > div.footer__bottom > nav > div:nth-child(2) > a:nth-child(4) {
    position: relative;
    left: -2vw;
    margin-left: -19vw;
  }
  .topHeader__nav .dropdown {
    position: relative;
    left: 42vw;
  }
  .topPagehero {
    width: 100vw;
    max-width: 100vw;
  }
  .subheading {
    width: 70vw;
    margin-bottom: 5vw;
  }
  .businessSectionTitle {
    margin: 0;
    margin-left: 5vw;
  }
  .businessCards {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .businessCardRight {
    margin-left: 0;
    margin-top: 20vw;
  }
  .businessCardContent {
    width: 50vw;
    max-width: 70vw;
  }
  .businessCardButtonUp {
    margin-top: 10vw;
  }
  .flex {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-evenly;
    align-content: stretch;
    margin-right: 0;
  }
  .companySection {
    height: 140vw;
    margin-top: 0;
  }
  .companySectionTitle {
    top: 5vw;
  }
  .companySectionInner {
    margin-top: 8vw;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    padding-bottom: 10vw;
  }
  .companyTextBlock {
    max-width: 63vw;
    width: 63vw;
    margin-right: 0;
    margin-left: 0;
  }
  .companyHeading {
    margin-top: 2vw;
    margin-bottom: 6vw;
  }
  .companyText {
    width: 62vw;
  }
  .companyImages {
    max-width: 70vw;
  }
  .companyImage {
    width: 70vw;
  }
  .companyImageTop {
    margin-top: 5dvw;
    width: 70vw;
  }
  .worksSection {
    padding-bottom: 2vw;
  }
  .newsTitle {
    top: 9vw;
  }
  .newsWrapper {
    width: 90vw;
  }
  .blogSection::before {
  }
  .footerflex {
    margin-bottom: -3vw;
    max-width: 100vw;
    overflow: hidden;
  }
body > header > div.topHeader__mobileMenuWrapper.mobile{
  display: none;
}

#aboutPage::before {
  margin-top: 7vh;
  height: 150%;
  z-index: 0;
}
.topHeader__nav a {
  font-weight: 700;
}

.topHeader__logo img {
height: 7vw;
}

.topHeader__logo p {
  color: #355d7d;
  z-index: 999;
}

.companyProfile {

z-index: 999;
}
}