@charset "UTF-8";
/* Responsive-font-custom（追加クラス）
------------------------------------------------------------------- */
.topmenu li,
.topmenu li a {
  /* デフォルト（最小値） */
  font-size: 0.9rem;
}

@media only screen and (max-width: 375px) {
  .topmenu li,
  .topmenu li a {
    font-size: calc( 0.9rem + ((100vw - 320px) * (1.125 - 0.9) / (375 - 320)));
  }
}

@media only screen and (min-width: 375px) {
  .topmenu li,
  .topmenu li a {
    font-size: calc( 1.125rem + ((100vw - 375px) * (1.125 - 1.125) / (768 - 375)));
  }
}

@media only screen and (min-width: 768px) {
  .topmenu li,
  .topmenu li a {
    font-size: 1.125rem;
  }
}

.fronttitle {
  /* デフォルト（最小値） */
  font-size: 2.25rem;
}

@media only screen and (max-width: 375px) {
  .fronttitle {
    font-size: calc( 2.25rem + ((100vw - 320px) * (2.5 - 2.25) / (375 - 320)));
  }
}

@media only screen and (min-width: 375px) {
  .fronttitle {
    font-size: calc( 2.5rem + ((100vw - 375px) * (4 - 2.5) / (768 - 375)));
  }
}

@media only screen and (min-width: 768px) {
  .fronttitle {
    font-size: 4rem;
  }
}

.headtitle {
  /* デフォルト（最小値） */
  font-size: 2.25rem;
}

@media only screen and (max-width: 375px) {
  .headtitle {
    font-size: calc( 2.25rem + ((100vw - 320px) * (2.5 - 2.25) / (375 - 320)));
  }
}

@media only screen and (min-width: 375px) {
  .headtitle {
    font-size: calc( 2.5rem + ((100vw - 375px) * (3.5 - 2.5) / (768 - 375)));
  }
}

@media only screen and (min-width: 768px) {
  .headtitle {
    font-size: 3.5rem;
  }
}

/*# sourceMappingURL=scss.css.map */