@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,700;1,700&family=Noto+Sans+JP:wght@100..900&family=Poppins:wght@400;500&display=swap');


/* フォントサイズ */
.f12 {
  font-size: 12px;
}
.f14 {
  font-size: 14px;
}
.f16 {
  font-size: calc(14px + 2 * (100vw - 480px) / 800);
}
.f18 {
  font-size: calc(16px + 2 * (100vw - 480px) / 800);
}
.f20 {
  font-size: calc(18px + 2 * (100vw - 480px) / 800);
}
.f22 {
  font-size: calc(20px + 2 * (100vw - 480px) / 800);
}
.f24 {
  font-size: calc(20px + 4 * (100vw - 480px) / 800);
}
.f26 {
  font-size: calc(22px + 4 * (100vw - 480px) / 800);
}
.f28 {
  font-size: calc(22px + 6 * (100vw - 480px) / 800);
}
.f30 {
  font-size: calc(22px + 8 * (100vw - 480px) / 800);
}
.f32 {
  font-size: calc(22px + 10 * (100vw - 480px) / 800);
}
.f34 {
  font-size: calc(22px + 12 * (100vw - 480px) / 800);
}
.f36 {
  font-size: calc(22px + 14 * (100vw - 480px) / 800);
}
.f38 {
  font-size: calc(22px + 16 * (100vw - 480px) / 800);
}
.f40 {
  font-size: calc(25px + 15 * (100vw - 480px) / 800);
}
.f42 {
  font-size: calc(25px + 17 * (100vw - 480px) / 800);
}
.f44 {
  font-size: calc(25px + 19 * (100vw - 480px) / 800);
}
.f46 {
  font-size: calc(25px + 21 * (100vw - 480px) / 800);
}
.f48 {
  font-size: calc(25px + 23 * (100vw - 480px) / 800);
}
.f50 {
  font-size: calc(27px + 23 * (100vw - 480px) / 800);
}
.f52 {
  font-size: calc(27px + 25 * (100vw - 480px) / 800);
}
.f54 {
  font-size: calc(27px + 27 * (100vw - 480px) / 800);
}
.f56 {
  font-size: calc(27px + 29 * (100vw - 480px) / 800);
}
.f58 {
  font-size: calc(27px + 31 * (100vw - 480px) / 800);
}
.f60 {
  font-size: calc(30px + 30 * (100vw - 480px) / 800);
}
.f62 {
  font-size: calc(30px + 32 * (100vw - 480px) / 800);
}
.f64 {
  font-size: calc(30px + 34 * (100vw - 480px) / 800);
}
.f66 {
  font-size: calc(30px + 36 * (100vw - 480px) / 800);
}
.f68 {
  font-size: calc(30px + 38 * (100vw - 480px) / 800);
}
.f70 {
  font-size: calc(30px + 40 * (100vw - 480px) / 800);
}
.f72 {
  font-size: calc(30px + 42 * (100vw - 480px) / 800);
}
.f75 {
  font-size: calc(30px + 45 * (100vw - 480px) / 800);
}
.f90 {
  font-size: calc(90px + 45 * (100vw - 480px) / 800);
}
.f110 {
  font-size: calc(40px + 70 * (100vw - 480px) / 800);
}
@media screen and (min-width: 1280px) {
  .f16 {
    font-size: 16px;
  }
  .f18 {
    font-size: 18px;
  }
  .f20 {
    font-size: 20px;
  }
  .f22 {
    font-size: 22px;
  }
  .f24 {
    font-size: 24px;
  }
  .f26 {
    font-size: 26px;
  }
  .f28 {
    font-size: 28px;
  }
  .f30 {
    font-size: 30px;
  }
  .f32 {
    font-size: 32px;
  }
  .f36 {
    font-size: 36px;
  }
  .f38 {
    font-size: 38px;
  }
  .f40 {
    font-size: 40px;
  }
  .f42 {
    font-size: 42px;
  }
  .f44 {
    font-size: 44px;
  }
  .f46 {
    font-size: 46px;
  }
  .f48 {
    font-size: 48px;
  }
  .f50 {
    font-size: 50px;
  }
  .f52 {
    font-size: 52px;
  }
  .f54 {
    font-size: 54px;
  }
  .f56 {
    font-size: 56px;
  }
  .f58 {
    font-size: 58px;
  }
  .f60 {
    font-size: 60px;
  }
  .f62 {
    font-size: 62px;
  }
  .f64 {
    font-size: 64px;
  }
  .f66 {
    font-size: 66px;
  }
  .f68 {
    font-size: 68px;
  }
  .f70 {
    font-size: 70px;
  }
  .f72 {
    font-size: 72px;
  }
  .f75 {
    font-size: 75px;
  }
  .f90 {
    font-size: 90px;
  }
  .f110 {
    font-size: 110px;
  }
}
@media screen and (max-width: 768px) {
    .f18-sp{font-size: 18px;}
}
@media screen and (max-width: 480px) {
  .f16 {
    font-size: 16px;
  }
}

/* Noto Sans CJK JP */
.sans {
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
}
/* NotoSans */
.NotoSans {
  font-family: 'Noto Sans JP', sans-serif;
}
/* Montserrat */
.Montserrat {
  font-family: 'Montserrat', sans-serif;
    font-style: normal;
}
.Montserrat_it {
  font-family: 'Montserrat', sans-serif;
    font-style: italic;
}
.Poppins {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

/* フォントウェイト */
.fw_r {
  font-weight: 400;
}

.fw_m {
  font-weight: 500;
}

.fw_b {
  font-weight: bold;
}

/* line-height */
.ln_h1 {
  line-height: 1;
}
.ln_h125 {
  line-height: 1.25;
}
.ln_h15 {
  line-height: 1.5;
}
.ln_h175 {
  line-height: 1.75;
}
.ln_h2 {
  line-height: 2;
}

.ln_h25 {
  line-height: 2.5;
}

.ln_h60 {
  line-height: 60px;
}

/* text-align */
.txt_ctr {
  text-align: center;
}

.txt_rgt {
  text-align: right;
}

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

/* responsive */
@media screen and (max-width: 768px) {
.txt_lft-sp {
text-align: left;
}
.txt_rgt-sp {
text-align: right;
}
}