@charset "UTF-8";
/* Break point
---------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Marcellus&family=Noto+Sans+JP:wght@400;500;600&family=Sofia+Sans+Extra+Condensed&display=swap");
/* ==========================================================================//
//
//　変数
//
// ========================================================================== */
:root {
  /* Color
  ---------------------------------------------------------- */
  --color-font: #333333;
  --color-main: #005425;
  --color-sub: #812B1F;
  --color-back: #F6F5F4;
  --color-btn: #E9E9E9;
  --color-line: #D4D0CC;
  --color-font_gray: #8E8E8F;
  --color-link: #2C71D6;
  --color-visited:#17236E;
  /* Font
  ---------------------------------------------------------- */
  --font-jp: "Noto Sans JP", sans-serif;
  --font-en: "Marcellus", serif;
  --font-en2: "Sofia Sans Extra Condensed", sans-serif;
  --font-m: 500;
  --font-b: 700;
  --font11: 0.7rem;
  --font12: 0.79rem;
  --font13: 0.81rem;
  --font14: 0.88rem;
  --font16: 1rem;
  --font17: 1.06rem;
  --font18: 1.12rem;
  --font19: 1.19rem;
  --font20: 1.25rem;
  --font22: 1.42rem;
  --font25: 1.6rem;
  --font28: 1.8rem;
  --font30: 1.875rem;
  --font32: 2rem;
  --font35: 2.18rem;
  --font36: 2.28rem;
  --font41: 2.56rem;
  --font43: 2.68rem;
  --font44: 2.75rem;
  --font46: 2.88rem;
  --font48: 3rem;
  --font60: 3.75rem;
  /* Skew
  ---------------------------------------------------------- */
  --bezier: cubic-bezier(0.970, 0.000, 0.395, 0.995);
  /* Radius
  ---------------------------------------------------------- */
  --radius_s: 5px;
  --radius_m: 10px;
  --radius_l: 20px;
  /* Padding
  ---------------------------------------------------------- */
  --secPad: 80px;
  /* hight
  ---------------------------------------------------------- */
  --headerH: 60px;
  --translateH: 56px;
}

/* Placeholder
---------------------------------------------------------- */
@-webkit-keyframes scrollLeft {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes scrollLeft {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.a-scrollL {
  -webkit-animation: scrollLeft 30s infinite linear 0.5s both;
          animation: scrollLeft 30s infinite linear 0.5s both;
}

@-webkit-keyframes scrollRight {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes scrollRight {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.a-scrollR {
  -webkit-animation: scrollRight 30s infinite linear 0.5s both;
          animation: scrollRight 30s infinite linear 0.5s both;
}

@-webkit-keyframes imageSwitch {
  0% {
    opacity: 0;
  }
  4.76% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  42.85% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@keyframes imageSwitch {
  0% {
    opacity: 0;
  }
  4.76% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  42.85% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.a-imageSwitch {
  opacity: 0;
  -webkit-animation: imageSwitch 21s infinite;
          animation: imageSwitch 21s infinite;
}
.a-imageSwitch.image01 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
.a-imageSwitch.image02 {
  -webkit-animation-delay: 5s;
          animation-delay: 5s;
  -webkit-animation-delay: 6s;
          animation-delay: 6s;
  opacity: 0;
}
.a-imageSwitch.image03 {
  -webkit-animation-delay: 10s;
          animation-delay: 10s;
  -webkit-animation-delay: 13s;
          animation-delay: 13s;
  opacity: 0;
}

@-webkit-keyframes lineR {
  0% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  50% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  51% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
}

@keyframes lineR {
  0% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  50% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  51% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
}
@media screen and (min-width: 1024px) {
  .a-lineR:hover::after {
    -webkit-animation: lineR 0.5s forwards;
            animation: lineR 0.5s forwards;
  }
  .a-lineR:focus::after {
    -webkit-animation: lineR 0.5s forwards;
            animation: lineR 0.5s forwards;
  }
}

@-webkit-keyframes fuwa {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-3px);
            transform: translateY(-3px);
  }
}

@keyframes fuwa {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-3px);
            transform: translateY(-3px);
  }
}