@charset "utf-8";
/* common *********************************************/
body {
  font-family:
    "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", sans-serif;
  color: #2e2e2e;
}
p {
  font-size: 1rem;
  margin: 0.5rem 0;
  color: #2e2e2e;
  line-height: 1.6;
}
a,
li,
dt,
dd {
  color: #2e2e2e;
}
ul {
  list-style: none;
  padding: 0;
}
@media screen and (max-width: 768px) {
  p {
    font-size: 0.9rem;
    line-height: 1.6;
  }
}
/* style *********************************************/
/* font-family */
.montserrat {
  font-family: "Montserrat", sans-serif;
}
/* size */
.txt-sizeLL {
  font-size: 2em;
}
.txt-sizeL {
  font-size: 1.3em;
}
.txt-sizeM {
  font-size: 1.1em;
}
.txt-sizeS {
  font-size: 0.8em;
}
.txt-sizeSS {
  font-size: 0.5em;
}
/* layout */
.txt-center {
  text-align: center;
}
/* color */
.txt-black {
  color: #2e2e2e;
}
.txt-green {
  color: #3fa535;
}
.txt-white {
  color: #fff;
}
/*  */
.txt-italic {
  font-style: italic;
}
@media screen and (max-width: 768px) {
  /* size */
  .txt-sizeL {
    font-size: 1.1em;
  }
  .txt-sizeM {
    font-size: 1.1em;
  }
  .txt-sizeS {
    font-size: 0.9em;
  }
  .txt-sizeSS {
    font-size: 0.5em;
  }
}
/* title *********************************************/
/* h1 */
h1 {
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 2.5rem;
}
.h1-styleA {
  font-size: 2.5rem;
}
/* h2 */
h2 {
  font-weight: 600;
  line-height: 1;
  margin: 0 0 2.5rem;
}
.h2-styleA {
  font-size: 1.8rem;
}
/* h3 */
h3 {
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 2rem;
}
.h3-styleA {
  font-size: 1.4rem;
}
.h3-styleB {
  font-size: 1.1rem;
}
.h3-styleC {
  font-size: 2.5rem;
}
/* sub */
.ttl-sub {
  font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
  h1 {
    margin: 0 0 1rem;
  }
  .h1-styleA {
    font-size: 2.2rem;
  }
  /* h2 */
  h2 {
    margin: 0 0 1rem;
  }
  .h2-styleA {
    font-size: 1.5rem;
  }
  /* h3 */
  h3 {
    margin: 0 0 1rem;
  }
  .h3-styleA {
    font-size: 1.2rem;
  }
  .h3-styleB {
    font-size: 1rem;
  }
  .h3-styleC {
    font-size: 2.2rem;
  }
  /* sub */
  .ttl-sub {
    font-size: 0.8rem;
    font-weight: 400;
  }
}
@media screen and (max-width: 440px) {
  /* h3 */
  .h3-styleA {
    font-size: 1.1rem;
  }
}
/* layout *********************************************/
.txt-center {
  text-align: center;
}
@media screen and (max-width: 768px) {
}
/* em *********************************************/
.txt-weightBold {
  font-weight: 600;
}
@media screen and (max-width: 768px) {
}
