@charset "UTF-8";

/* ==========================================================================
   utilities.css
   互換・救済（旧baseから移植：復旧優先）
   ========================================================================== */

/* 表示切替 */
.sp_only {
  display: none;
}

br.clear {
  clear: both;
}

/* スクロール演出 */
.scrollIn {
  opacity: 0;
  transform: translate(-1em);
  transition: 0.8s;
}

.scrollIn.on {
  opacity: 1;
  transform: translate(0, 0);
}

/* 汎用 */
p {
  margin-bottom: 1.5em;
}

.alignright {
  text-align: right;
}

.aligncenter {
  text-align: center;
}

hr {
  height: 1px;
  border: none;
  background: #333;
  margin: 10px 0;
}

/* ボタン（旧） */
.buttons {
  text-align: center;
  margin-bottom: 1.5em;
}

.buttons a {
  display: inline-block;
  background: #000;
  color: #fff;
  text-decoration: none;
  padding: 1em 2.5em 1em 3em;
  font-size: 0.9em;
  border-radius: 9999px;
}

.buttons a:hover {
  background: #d48120;
}

.buttons a i.fa {
  margin: 0 0 0 1em;
}

/* box（旧） */
.box {
  background: rgba(255, 255, 255, 0.8);
  padding: 10px;
  margin-bottom: 15px;
}

/* パディング */
.padd5 { padding: 5px; }
.padd10 { padding: 10px; }
.padd15 { padding: 15px; }
.padd20 { padding: 20px; }
.padd0_5 { padding: 0 5px; }
.padd0_10 { padding: 0 10px; }
.padd0_20 { padding: 0 20px; }
.padd10_20 { padding: 10px 20px; }

.padd-top5 { padding-top: 5px; }
.padd-top10 { padding-top: 10px; }
.padd-top15 { padding-top: 15px; }
.padd-top20 { padding-top: 20px; }

.padd-bottom5 { padding-bottom: 5px; }
.padd-bottom10 { padding-bottom: 10px; }
.padd-bottom15 { padding-bottom: 15px; }
.padd-bottom20 { padding-bottom: 20px; }

/* マージン */
.marg5 { margin: 5px; }
.marg10 { margin: 10px; }
.marg20 { margin: 20px; }
.marg0_5 { margin: 0 5px; }
.marg0_10 { margin: 0 10px; }
.marg0_20 { margin: 0 20px; }

.marg-top0 { margin-top: 0 !important; }
.marg-top5 { margin-top: 5px; }
.marg-top10 { margin-top: 10px; }
.marg-top15 { margin-top: 15px; }
.marg-top20 { margin-top: 20px; }

.marg-bottom5 { margin-bottom: 5px; }
.marg-bottom10 { margin-bottom: 10px; }
.marg-bottom15 { margin-bottom: 15px; }
.marg-bottom20 { margin-bottom: 20px; }

/* フォント */
.st { font-weight: bold; }
.reg { font-weight: normal; }

.fs150 { font-size: 150%; letter-spacing: 0.01em; }
.fs120 { font-size: 120%; }
.fs110 { font-size: 110%; }
.fs90 { font-size: 90%; }
.fs80 { font-size: 80%; line-height: 160%; }
.fs70 { font-size: 70%; line-height: 160%; }
.fs60 { font-size: 60%; line-height: 160%; }
.fs50 { font-size: 50%; line-height: 160%; }

.fsblack { color: #333; }
.fsred { color: #cc4b5b; }
.fsgray { color: #afafaf; }

.must {
  font-weight: bold;
  margin-left: 5px;
  color: red;
}

/* clearfix */
.after_clear:after {
  content: ".";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
