/*
 * Common CSS
 * デフォルト用メニューには装飾を入れないため、ここでは最低限の共通指定だけにしています。
 */
html {
  scroll-behavior: smooth;
}
*, *::before, *::after {
  box-sizing: border-box;
}
/* === font Base === */ :root {
  /* メニュー: 18px - 20px / 450px - 1360pxで可変 */
  --menu--: clamp(1.125rem, calc(0.22vw + 1.063rem), 1.25rem);
  /* 通常本文: 15px - 26.4px / 450px - 1360pxで可変 */
  --default--: clamp(0.9375rem, calc(1.253vw + 0.585rem), 1.65rem);
  /* 小さめ本文: 14px - 18.7px / 450px - 1360pxで可変 */
  --smallfont--: clamp(0.875rem, calc(0.516vw + 0.73rem), 1.169rem);
  /* コピーライト: 12px - 14px / 450px - 1360pxで可変 */
  --copyright--: clamp(0.75rem, calc(0.22vw + 0.688rem), 0.875rem);
  /* 大見出し: 22px - 50px / 450px - 1360pxで可変 */
  --50font--: clamp(1.375rem, calc(3.077vw + 0.51rem), 3.125rem);
  /* 中大見出し: 26px - 53.3px / 450px - 1360pxで可変 */
  --40font--: clamp(1.625rem, calc(3vw + 0.781rem), 3.331rem);
  /* 小見出し: 20px - 30px / 450px - 1360pxで可変 */
  --30font--: clamp(1.25rem, calc(1.099vw + 0.941rem), 1.875rem);
  /* 20pxフォント: 14px - 20.8px / 450px - 1360pxで可変 */
  --20font--: clamp(0.875rem, calc(0.747vw + 0.665rem), 1.3rem);
  /* h2: 24px - 42.7px / 450px - 1360pxで可変 */
  --h2_font--: clamp(1.5rem, calc(2.055vw + 0.922rem), 2.669rem);
  /* h3: 22px - 42.7px / 450px - 1360pxで可変 */
  --h3_font--: clamp(1.375rem, calc(2.275vw + 0.735rem), 2.669rem);
}
h1, h2, h3, h4 {
  line-height: 120%;
  margin: 0 0 1rem;
}
@media (max-width: 750px) {
  h1, h2, h3, h4 {
    line-height: 135%;
    margin: 0 0 1rem;
  }
}
p {
  margin-top: 0px
}
p.text-left-padding {
  margin-left: 30px !important;
}
.text-center {
  text-align: center;
}
.cyuui {
  font-size: var(--smallfont--);
}
.list-style-none {
  margin: 0 0 3rem 0;
  padding: 0;
}
.list-style-none li {
  list-style: none;
  margin: 0;
  padding: 0;
}
a.text-blue {
  color: #008aff !important;
  border-bottom: 1px solid #008aff !important;
}
.text-red {
  color: red;
}
.smalltext90 {
  font-size: 90%;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
ul li {
  margin-left: 25px
}
@media (max-width: 750px) {
  .smt-br-shinai {
    display: none;
  }
}
@media (min-width: 750px) {
  .pc-br-shinai {
    display: none;
  }
}
@media (max-width: 750px) {
  .pc-img-shinai {
    display: none;
  }
}