@charset "UTF-8";
/* 色の変数 */
/* 色の変数 */
:root {
  --text_jp: #333;
  --accent-blue: #007BC7;
  --accent-yellow: #FFF466;
}

/* トランジションの変数 */
:root {
  --base-duration: 0.4s;
  --base-easing: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --base-delay: 1s;
}

@media (min-width: 768px) {
  .u-hidden-pc {
    display: none;
  }
}

@media screen and (max-width: 767.9px) {
  .u-hidden-sp {
    display: none;
  }
}

.u-visually-hidden {
  position: fixed !important;
  /* keep it on viewport */
  top: 0px !important;
  left: 0px !important;
  /* give it non-zero size, VoiceOver on Safari requires at least 2 pixels
     before allowing buttons to be activated. */
  width: 4px !important;
  height: 4px !important;
  /* visually hide it with overflow and opacity */
  opacity: 0 !important;
  overflow: hidden !important;
  /* remove any margin or padding */
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  /* ensure no other style sets display to none */
  display: block !important;
  visibility: visible !important;
}

.u-hover-opacity {
  opacity: 1;
  -webkit-transition: opacity var(--base-duration) var(--base-easing);
  transition: opacity var(--base-duration) var(--base-easing);
}

.u-hover-opacity:focus-visible {
  opacity: 0.8;
}

@media (any-hover: hover) {
  .u-hover-opacity:hover {
    opacity: 0.8;
  }
}
.d-inline-block {
  display: inline-block;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}