@charset "UTF-8";
/* Scss Document */
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
base
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
body {
  font-family: "Kosugi Maru", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  -webkit-text-size-adjust: 100%;
  animation-name: fadeIn;
  animation-duration: 1.5s;
  animation-timing-function: ease;
  background-image: url("../img/common/bg01.jpg"), url("../img/common/bg02.jpg");
  background-position: top, bottom;
  background-repeat: no-repeat;
  background-size: 100% auto; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
body, h1, h2, h3, h4, h5, h6, p {
  font-size: 1rem;
  color: #333;
  margin: 0;
  padding: 0;
  line-height: 1.5; }

a {
  text-decoration: none; }
  a:hover {
    color: #FF0000;
    text-decoration: underline; }
  a:link {
    color: #0000FF; }
  a:active {
    color: #0000FF; }
  a:visited {
    color: #990066; }

img {
  vertical-align: bottom; }

a img {
  border: none; }

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-family: "Kosugi Maru", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  outline: none; }

input:focus,
button {
  outline: 0; }

.clear {
  display: none;
  clear: both; }

img.centering {
  position: absolute; }

::selection {
  background: #FFD7E9; }

::-moz-selection {
  background: #FFD7E9; }

.pcNone {
  display: none; }

@media (max-width: 767px) {
  /* responsive none fore SP */
  .spNone {
    display: none; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
common styles
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
topic path
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
#tPath {
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #BBB; }
  #tPath p {
    width: 1000px;
    height: 40px;
    margin: 0 auto;
    padding: 10px 0 0;
    font-size: 13px; }
    #tPath p a {
      color: #333; }

/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
フリー装飾
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
div.system-free {
  height: 100%;
  overflow: hidden; }
  div.system-free hr {
    height: 0;
    margin: 0;
    border: none;
    border-top: 1px solid #333; }
  div.system-free table {
    border-collapse: collapse; }

@media (max-width: 1100px) {
  div.system-free img {
    width: 100%;
    height: auto; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
ページ遷移
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
ol.transition {
  width: 100%;
  height: 28px;
  overflow: hidden;
  margin: 80px auto 0;
  padding: 0;
  text-align: center;
  list-style: none; }
  ol.transition li {
    width: 28px;
    height: 28px;
    overflow: hidden;
    margin: 0 1px 0 0;
    padding: 0;
    color: #00a650;
    text-align: center;
    line-height: 1;
    display: inline-block; }
    ol.transition li:last-child {
      margin: 0; }
    ol.transition li a, ol.transition li.current span,
    ol.transition li span.extra {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      color: #00a650;
      display: block;
      text-decoration: none;
      background-color: transparent;
      border: none;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
    ol.transition li.current span,
    ol.transition li span.extra {
      padding: 6px 0 0; }
    ol.transition li a span {
      margin: 0;
      padding: 5px 0 0;
      display: block; }
    ol.transition li a:hover, ol.transition li.current span {
      color: #FFF;
      font-weight: bold;
      background: #00a650; }

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

.clearfix {
  display: inline-block; }

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

.clearfix {
  display: block; }

/* End hide from IE-mac */
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
page top
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.btnPagetop {
  width: 80px;
  height: 80px;
  position: fixed;
  right: 20px;
  text-indent: -9999px;
  z-index: 9998; }
  .btnPagetop__anchor {
    width: 100%;
    height: 100%;
    display: block;
    background-image: url(../img/common/pagetop_off.png);
    transition: 0.1s linear; }
    .btnPagetop__anchor:hover {
      background-image: url(../img/common/pagetop_on.png); }

@media (max-width: 800px) {
  #btn_pagetop {
    width: 40px;
    height: 40px;
    right: 10px; }
    #btn_pagetop__anchor {
      background-size: 40px; } }
