@charset "UTF-8";
/* CSS INFORMATION -====================================================
File name : base.css
Description : 共通
===================================================================== */
html {
  font-size: calc(10 / 750 * 100vw);
  overflow-x: hidden;
}

.gDef-top-banner {
  background-color: #fff;
}

.gDef-contents {
  background-color: #fff;
  color: #000;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05rem;
  line-height: 1;
}
.gDef-contents img {
  width: 100%;
  height: auto;
  display: block;
}
.gDef-contents a {
  color: #000;
  display: block;
}

.inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2;
}

.sec_ttl {
  width: 67rem;
  margin: 0 auto calc(80 / 750 * 100%);
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: calc(10 / 1040 * 100vw);
  }

  .gDef-contents {
    font-size: 1.6rem;
  }
  .gDef-contents a {
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }

  .inner {
    width: 100%;
    max-width: 1040px !important;
    margin: 0 auto;
    padding: 0 300px 0 0;
  }

  .sec_ttl {
    width: calc(530 / 740 * 100%);
    margin-bottom: calc(50 / 740 * 100%);
  }

  .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1040px) {
  html {
    font-size: 10px;
  }
}
/* =====================================================================
*    footer
* =================================================================== */
#footer {
  position: relative;
  background-color: #604C3F;
}
#footer .pagetop {
  position: absolute;
  top: 0;
  left: 50%;
  margin-top: calc(-124 / 750 * 100%);
  width: calc(213 / 750 * 100%);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#footer .copyright {
  padding: calc(130 / 750 * 100%) 0 calc(40 / 750 * 100%);
  font-size: 1.9rem;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #footer .pagetop {
    left: 0;
    width: calc(137 / 1040 * 100%);
    margin: calc(-88 / 1040 * 100%) 0 0 calc(300 / 1040 * 100%);
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  #footer .pagetop a {
    position: relative;
  }
  #footer .pagetop a:hover::before {
    opacity: 1;
  }
  #footer .pagetop a::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../images/btn_pagetop_h.png) no-repeat center/contain;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
    opacity: 0;
  }
  #footer .copyright {
    padding: calc(88 / 740 * 100%) 0 calc(40 / 740 * 100%);
    font-size: 1.4rem;
  }
}
/*# sourceMappingURL=base.css.map */