@charset "UTF-8";
* {
  --sanno-color-blue: #0058A8;
  --sanno-color-red:#E30119;
}
/*=================================================================*/
/* リンク色共通 */
/*=================================================================*/
a {
  color:var(--sanno-color-blue);
}
/*=================================================================*/
/* 外部からハッシュ付きのリンクでアクセスした際、一時的にスクロールロック */
/*=================================================================*/
html.is_lock_scroll {
  overflow: hidden !important;
}
/*=================================================================*/
/* headerを画面に固定しない
/*=================================================================*/
header {
  position: relative;
  z-index: 1;
}
.mdl__wrapper {
  padding-top: 0;
}
/*=================================================================*/
/* input, select, textarea, button
/*=================================================================*/
input, select, textarea, button {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  color: inherit;
  box-sizing: border-box;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
/*=================================================================*/
/* ローディング画面
/*=================================================================*/
.loading {
  width: 100vw;
  height: 100vh;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 11;
}

.loaded .loading {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 1s;
  transition: all 0.8s;
}

.loading__spinner,
.loading__spinner:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}

.loading__spinner {
  margin: auto;
  font-size: 5px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  text-indent: -9999em;
  border-top: 0.7em solid rgba(186, 186, 186, 0.2);
  border-right: 0.7em solid rgba(186, 186, 186, 0.2);
  border-bottom: 0.7em solid rgba(186, 186, 186, 0.2);
  border-left: 0.7em solid var(--sanno-color-blue);
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load 1.1s infinite linear;
  animation: load 1.1s infinite linear;
}

@-webkit-keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*=================================================================*/
/* 色変更の汎用クラス
/*=================================================================*/
.red-text {
  color: var(--sanno-color-red);
  font-weight: bold;
}
.red-label {
  background-color: var(--sanno-color-red);
  color: #fff;
  padding: 5px 10px;
  margin-right: 10px;
}


/*=================================================================*/
.mdl__layout_Lv1_lp {
  line-height: 1.5;
  margin: 0 auto;
  text-align: left;
  word-break: break-all;
  font-family: "BIZ UDPGothic","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.08em;
  color:var(--sanno-color-blue);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*******************************************************************/
/* PC */
/*******************************************************************/
@media print, screen and (min-width: 769px) {
  html {
    height: 100%;
    font-size: 62.5%;
  } /*10px相当にreset*/
  .mdl__layout_Lv1_lp {
    height: 100%;
    margin: 0;
    font-size: 16px; /*css3の効かないブラウザ用*/
    font-size: 1.6rem; /*bodyのベースサイズをセット（ここでは16px）以下各要素は10pxを基準にサイズ指定1.2rem（12px）1.4rem（14px）など）*/
    font-weight: 500;
  }
  .sp {
    display: none !important;
  }
}
/*******************************************************************/
/* SP */
/*******************************************************************/
@media screen and (max-width: 768px) {
  html {
    font-size: 62.5%;
  } /*10px相当にreset*/
  .mdl__layout_Lv1_lp {
    font-size: 15px; /*css3の効かないブラウザ用*/
    font-size: 1.5rem; /*bodyのベースサイズをセット（ここでは20px）以下各要素は10pxを基準にサイズ指定2.2rem（22px）2.4rem（24px）など）*/
    font-weight: 500;
  }
  html, body {
    -webkit-text-size-adjust: 100%; /* iPhoneでのフォントサイズ自動変換OFF  縦横でのフォントサイズが固定される */
    -webkit-font-smoothing: antialiased;
  }
  .wrapper {
    position: relative;
  }
  .pc {
    display: none !important;
  }

  /*	img
  ----------------------------------------------------*/
  img {
    width: 100%;
    height: auto;
  }
}
/*******************************************************************/
/* TB(header only) */
/*******************************************************************/
@media screen and (min-width:769px) and ( max-width:1200px) {
}
