@charset "UTF-8";
/*
	BASE
*******************************/
/*
font-family: "Zen Kaku Gothic New", sans-serif;
font-family: "Lato", sans-serif;
font-family: goldenbook, serif;
*/
* {
  font-family: "Lato", "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-feature-settings: "palt";
  line-height: 1;
}
.en, .en * {
  font-family: goldenbook, serif;
}
html {
  font-size: 62.5%;
  line-height: 1;
}
html body {
  font-size: 1.6rem;
}
html body img {
  -webkit-backface-visibility: hidden;
  vertical-align: bottom;
  line-height: 0;
  max-width: 100%;
  height: auto;
}
html body p, html body th, html body td, html body dt, html body dd, html body li, html body h1, html body h2, html body h3, html body h4, html body h5, html body h6, html body label {
  color: #000000;
}
html body a {
  color: #000000;
  text-decoration: none;
  outline: none;
  border: none;
}
html body a img {
  outline: none;
  border: none;
  -webkit-backface-visibility: hidden;
}
html body area {
  border: none;
  outline: none;
}
html body .clear {
  clear: both;
}
:root {
  --color_def: #000000;
  --color_main: #DE1557;
}
.grecaptcha-badge {
  visibility: hidden;
}
/*//////////////////////////////////////////////////////////////////////////*/
/*
	BASE LAYOUT
******************/
.wrap .contents {
  max-width: 1200px;
  width: calc(100% - 80px);
  margin: 0 auto;
}
.wrap .contents p {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
}
@media (hover: hover) {
  a {
    transition: 0.3s;
  }
  a:hover {
    text-decoration: none;
    opacity: 0.75;
  }
}
@media screen and (max-width: 1024px) {
  .wrap .contents {
    width: calc(100% - 60px);
  }
}
@media screen and (max-width: 768px) {
  .wrap .contents {
    width: calc(100% - 40px);
  }
  .wrap .contents p {
    font-size: 1.4rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 768px) {
  .pcOnly {
    display: none !important;
  }
  .tbOnly {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .tbOnly {
    display: none !important;
  }
  .sptbOnly {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .spOnly {
    display: none !important;
  }
}
/**animation**/
.animation {
  opacity: 0;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  /* .fade-in {

	} */
}
.animation.fade-left {
  transform: translateX(-100px);
}
.animation.fade-right {
  transform: translateX(100px);
}
.animation.fade-up {
  transform: translateY(100px);
}
.animation.delay-1 {
  transition-delay: 0.33s;
}
.animation.delay-2 {
  transition-delay: 0.66s;
}
.animation.delay-0 {
  transition-delay: 0.16s;
}
.animation.delay-3 {
  transition-delay: 0.49s;
}
.animation:hover.delay-1 {
  transition-delay: 0s;
}
.animation:hover.delay-2 {
  transition-delay: 0s;
}
.animation:hover.delay-0 {
  transition-delay: 0s;
}
.animation:hover.delay-3 {
  transition-delay: 0s;
}
.animation.show {
  opacity: 1;
  /* .fade-in {

		} */
}
.animation.show.fade-left {
  transform: translate(0, 0);
}
.animation.show.fade-right {
  transform: translate(0, 0);
}
.animation.show.fade-up {
  transform: translate(0, 0);
}
.animation.show > .fade-left {
  opacity: 1;
  transform: translate(0, 0);
}
.animation.show > .fade-right {
  opacity: 1;
  transform: translate(0, 0);
}
.animation.show > .fade-up {
  opacity: 1;
  transform: translate(0, 0);
}
