@charset "UTF-8";
/*=============================================
 * body
 *=============================================*/
body {
  background-color: #fff;
  color: #000;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: normal;
  font-size: 20px;
  line-height: 29px;
  letter-spacing: 0;
  min-width: inherit;
  min-height: inherit;
  max-height: 100%;
  position: relative; }

@media screen and (max-width: 991px) {
  body {
    font-size: 16px; } }
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    line-height: 24px; } }
/*=============================================
 * fonts
 *=============================================*/
@font-face {
  font-family: 'Bebas Kai';
  src: url("../font/BebasKai.eot");
  src: url("../font/BebasKai.eot?#iefix") format("embedded-opentype"), url("../font/BebasKai.woff2") format("woff2"), url("../font/BebasKai.woff") format("woff"), url("../font/BebasKai.ttf") format("truetype"), url("../font/BebasKai.svg#BebasKai") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }
.fnt-mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.fnt-meiryo {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.fnt-gothic {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }

.fnt-bebas-kai {
  font-family: 'Bebas Kai', sans-serif; }

/*=============================================
 * <main>
 *=============================================*/
main {
  clear: both;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  position: relative; }

/* -- -- */
.wrap {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative; }

@media screen and (max-width: 1400px) {
  .wrap {
    max-width: 960px; } }
@media screen and (max-width: 991px) {
  .wrap {
    max-width: 720px; } }
@media screen and (max-width: 767px) {
  .wrap {
    max-width: 100%;
    padding: 0 20px; } }
code {
  border: 0 !important; }

a {
  transition: all 0.3s; }

a:hover {
  opacity: 0.6;
  text-decoration: none; }

a[href^="tel:"] {
  pointer-events: none;
  cursor: text; }

@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: auto;
    cursor: pointer; } }
.pc {
  display: block; }

.ipd {
  display: none; }

.sp {
  display: none; }

@media screen and (min-width: 768px) and (max-width: 991px) {
  .ipd {
    display: block; } }
@media screen and (max-width: 767px) {
  .pc {
    display: none; }

  .sp {
    display: block; } }
/*=============================================
 * <header>
 *=============================================*/
/* -- -- */
header {
  width: 100%;
  height: 48px;
  box-sizing: border-box;
  background-color: #23ac38;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100; }
  header .logo {
    width: 18%;
    position: absolute;
    top: 0;
    right: 12%; }

.hamburger {
  display: none;
  width: 30px;
  height: 20px;
  background-color: transparent;
  color: #fff;
  position: relative;
  z-index: 1;
  cursor: pointer; }

.hamburger span {
  display: block;
  width: 100%;
  height: 2px;
  background: #fff;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  position: absolute;
  top: 10px;
  left: 0; }

.hamburger span:before,
.hamburger span:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease; }

.hamburger span:before {
  top: -10px; }

.hamburger span:after {
  top: 10px; }

.hamburger.is-active span {
  background-color: transparent; }

.hamburger.is-active span:before {
  top: 0;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg); }

.hamburger.is-active span:after {
  top: 0;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg); }

@media screen and (max-width: 767px) {
  header {
    height: 20px; }
    header .logo {
      right: 20px; } }
/*=============================================
 * <section>
 *=============================================*/
/* --- --- */
section {
  width: auto;
  box-sizing: border-box;
  margin: 0; }

/* --- --- */
/*=============================================
 * <footer>
 *=============================================*/
/* --- --- */
footer {
  padding: 10px 0; }
  footer .logo {
    width: 294px;
    margin: 0 auto; }

@media screen and (max-width: 991px) {
  footer .logo {
    width: 180px; } }
@media screen and (max-width: 767px) {
  footer .logo {
    width: 18%; } }

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