@charset "UTF-8";
/*=================================================================*/
/*	webフォントセット(NotoSans)
---------------------------------------------------------------*/
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 100;
  src: url("../font/NotoSansJP-Thin.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 200;
  src: url("../font/NotoSansJP-Light.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 400;
  src: url("../font/NotoSansJP-Regular.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 500;
  src: url("../font/NotoSansJP-Medium.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: bold;
  font-weight: 700;
  src: url("../font/NotoSansJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: bold;
  font-weight: 900;
  src: url("../font/NotoSansJP-Black.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 100;
  src: url("../font/NotoSansJP-Thin.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans Japanese";
  font-style: normal;
  font-weight: 200;
  src: url("../font/NotoSansJP-Light.woff") format("woff");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 400;
  src: url("../font/NotoSerifJP-Regular.woff") format("woff");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 500;
  src: url("../font/NotoSerifJP-Medium.woff") format("woff");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: bold;
  font-weight: 700;
  src: url("../font/NotoSerifJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: bold;
  font-weight: 900;
  src: url("../font/NotoSerifJP-Black.woff") format("woff");
}
/*=================================================================*/
/* ローディング画面
/*=================================================================*/
#fade {
  width: 100vw;
  height: 100vh;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 11;
}

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

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

.loader {
  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 #B0DB73;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*=================================================================*/
/* 全デバイス共通 */
/*=================================================================*/
/*	reset
---------------------------------------------------------------*/
* {
  padding: 0px;
  margin: 0px;
}

/*	img
---------------------------------------------------------------*/
img {
  border: none;
  vertical-align: middle;
}

/*	table
----------------------------------------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
}

/*	clearfix
---------------------------------------------------------------*/
.cf:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.cf {
  display: inline-block;
}

/* Hides from IE-mac \*/
* html .cf {
  height: 1%;
}

.cf {
  display: block;
}

/* End hide from IE-mac */
/*	link
---------------------------------------------------------------*/
a,
a:visited,
a:active {
  text-decoration: none;
}

@media print, screen and (min-width: 769px) {
  a:hover {
    opacity: 0.6;
  }
}

/*	color
---------------------------------------------------------------*/
#wrap .red {
  color: #E80B74;
}

/*	space
---------------------------------------------------------------*/
#wrap .mb0 {
  margin-bottom: 0 !important;
}

#wrap .mb10 {
  margin-bottom: 10px;
}

#wrap .mb15 {
  margin-bottom: 15px;
}

#wrap .mb30 {
  margin-bottom: 30px;
}

#wrap .mb50 {
  margin-bottom: 50px;
}

/*	ul
---------------------------------------------------------------*/
li {
  list-style-type: none;
}

/*	p
---------------------------------------------------------------*/
p {
  color: #141414;
}

/*	inputreset
---------------------------------------------------------------*/
input, button, select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

/*	sampleBox(構築時削除してください)
---------------------------------------------------------------*/
.sampleBox {
  background: #eee;
  height: 2000px;
}

/*=================================================================*/
body {
  line-height: 160%;
  margin: 0 auto;
  text-align: left;
  word-break: break-all;
  font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #141414;
  background: #fff;
}

/*******************************************************************/
/* Print */
/*******************************************************************/
@media print {
  header {
    position: absolute !important;
    top: 0;
  }
}
/*******************************************************************/
/* PC */
/*******************************************************************/
@media print, screen and (min-width: 769px) {
  /*<start>==========================================================*/
  html {
    height: 100%;
    font-size: 62.5%;
  } /*10px相当にreset*/
  body {
    height: 100%;
    margin: 0;
    font-size: 16px; /*css3の効かないブラウザ用*/
    font-size: 1.6rem; /*bodyのベースサイズをセット（ここでは16px）以下各要素は10pxを基準にサイズ指定1.2rem（12px）1.4rem（14px）など）*/
    font-weight: 500;
  }
  #wrap {
    position: relative;
  }
  .sp {
    display: none !important;
  }
  /*=================================================================*/
  /*	topscroll */
  /*=================================================================*/
  a.topscroll {
    display: flex;
    justify-content: center;
    align-items: center;
    right: 0;
    width: 57px;
    height: 57px;
    background: #8DC21F;
  }
  /*=================================================================*/
  /*	footer */
  /*=================================================================*/
  footer .copy {
    text-align: center;
  }
  /*<end>============================================================*/
}
/*******************************************************************/
/* SP */
/*******************************************************************/
@media screen and (max-width: 768px) {
  /*<start>==========================================================*/
  html {
    font-size: 62.5%;
  } /*10px相当にreset*/
  body {
    font-size: 15px; /*css3の効かないブラウザ用*/
    font-size: 1.5rem; /*bodyのベースサイズをセット（ここでは20px）以下各要素は10pxを基準にサイズ指定2.2rem（22px）2.4rem（24px）など）*/
  }
  html, body {
    -webkit-text-size-adjust: 100%; /* iPhoneでのフォントサイズ自動変換OFF  縦横でのフォントサイズが固定される */
    -webkit-font-smoothing: antialiased;
  }
  #wrap {
    position: relative;
  }
  .pc {
    display: none !important;
  }
  /*=================================================================*/
  /*	topscroll */
  /*=================================================================*/
  a.topscroll {
    display: flex;
    justify-content: center;
    align-items: center;
    right: 0;
    width: 57px;
    height: 57px;
    background: #8DC21F;
  }
  /*<end>============================================================*/
}
/*******************************************************************/
/* TB(header only) */
/*******************************************************************/
@media screen and (min-width:769px) and ( max-width:1200px) {
  /*<start>==========================================================*/
  /*<end>============================================================*/
}

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