:root {
  --YKQK-offset: 100px;
  --c-bg-fix: 768px;
}

/* === animate === */
/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-ani^=fade], [data-animate-in^=fade] {
  opacity: 0;
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
}

[data-ani^=fade].in-view, [data-animate-in^=fade].in-view {
  opacity: 1 !important;
  -webkit-transform: translate3d(0, 0, 0) !important;
  transform: translate3d(0, 0, 0) !important;
}

[data-animate-in=fade-up], [data-ani=fade-up], [data-animate-in=up], [data-ani=up] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, var(--offset), 0);
  transform: translate3d(0, var(--offset), 0);
}

[data-animate-in=fade-down], [data-ani=fade-down], [data-animate-in=down], [data-ani=down] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, calc(var(--offset) * -1), 0);
  transform: translate3d(0, calc(var(--offset) * -1), 0);
}

[data-animate-in=fade-right], [data-ani=fade-right], [data-animate-in=left], [data-ani=left] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(calc(var(--offset) * -1), 0, 0);
  transform: translate3d(calc(var(--offset) * -1), 0, 0);
}

[data-animate-in=fade-left], [data-ani=fade-left], [data-animate-in=right], [data-ani=right] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(var(--offset), 0, 0);
  transform: translate3d(var(--offset), 0, 0);
}

[data-animate-in=fade-up-right], [data-ani=fade-up-right] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(calc(var(--offset) * -1), var(--offset), 0);
  transform: translate3d(calc(var(--offset) * -1), var(--offset), 0);
}

[data-animate-in=fade-up-left], [data-ani=fade-up-left] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(var(--offset), var(--offset), 0);
  transform: translate3d(var(--offset), var(--offset), 0);
}

[data-animate-in=fade-down-right], [data-ani=fade-down-right] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(calc(var(--offset) * -1), calc(var(--offset) * -1), 0);
  transform: translate3d(calc(var(--offset) * -1), calc(var(--offset) * -1), 0);
}

[data-animate-in=fade-down-left], [data-ani=fade-down-left] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(var(--offset), calc(var(--offset) * -1), 0);
  transform: translate3d(var(--offset), calc(var(--offset) * -1), 0);
}

/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-ani^=zoom], [data-animate-in^=zoom] {
  opacity: 0;
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
}

[data-ani^=zoom].in-view, [data-animate-in^=zoom].in-view {
  opacity: 1 !important;
  -webkit-transform: translate3d(0, 0, 0) scale(1) !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}

[data-animate-in=zoom-in], [data-ani=zoom-in] {
  -webkit-transform: scale(0.6);
  -ms-transform: scale(0.6);
  transform: scale(0.6);
}

[data-animate-in=zoom-in-up], [data-ani=zoom-in-up] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, var(--offset), 0) scale(0.6);
  transform: translate3d(0, var(--offset), 0) scale(0.6);
}

[data-animate-in=zoom-in-down], [data-ani=zoom-in-down] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, calc(var(--offset) * -1), 0) scale(0.6);
  transform: translate3d(0, calc(var(--offset) * -1), 0) scale(0.6);
}

[data-animate-in=zoom-in-right], [data-ani=zoom-in-right] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(calc(var(--offset) * -1), 0, 0) scale(0.6);
  transform: translate3d(calc(var(--offset) * -1), 0, 0) scale(0.6);
}

[data-animate-in=zoom-in-left], [data-ani=zoom-in-left] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(var(--offset), 0, 0) scale(0.6);
  transform: translate3d(var(--offset), 0, 0) scale(0.6);
}

[data-animate-in=zoom-out], [data-ani=zoom-out] {
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}

[data-animate-in=zoom-out-up], [data-ani=zoom-out-up] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, var(--offset), 0) scale(1.2);
  transform: translate3d(0, var(--offset), 0) scale(1.2);
}

[data-animate-in=zoom-out-down], [data-ani=zoom-out-down] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(0, calc(var(--offset) * -1), 0) scale(1.2);
  transform: translate3d(0, calc(var(--offset) * -1), 0) scale(1.2);
}

[data-animate-in=zoom-out-right], [data-ani=zoom-out-right] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(calc(var(--offset) * -1), 0, 0) scale(1.2);
  transform: translate3d(calc(var(--offset) * -1), 0, 0) scale(1.2);
}

[data-animate-in=zoom-out-left], [data-ani=zoom-out-left] {
  --offset: var(--YKQK-offset);
  -webkit-transform: translate3d(var(--offset), 0, 0) scale(1.2);
  transform: translate3d(var(--offset), 0, 0) scale(1.2);
}

/**
 * Slide animations
 */
[data-ani^=slide], [data-animate-in^=slide] {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

[data-ani^=slide].in-view, [data-animate-in^=slide].in-view {
  -webkit-transform: translate3d(0, 0, 0) !important;
  transform: translate3d(0, 0, 0) !important;
}

[data-ani=slide-up], [data-animate-in=slide-up] {
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}

[data-ani=slide-down], [data-animate-in=slide-down] {
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}

[data-ani=slide-right], [data-animate-in=slide-right] {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

[data-ani=slide-left], [data-animate-in=slide-left] {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

/**
 * Flip animations:
 * flip-left, flip-right, flip-up, flip-down
 */
[data-ani^=flip], [data-animate-in^=flip] {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

[data-ani=flip-left], [data-animate-in=flip-left] {
  -webkit-transform: perspective(2500px) rotateY(-100deg);
  transform: perspective(2500px) rotateY(-100deg);
}

[data-ani=flip-left].in-view, [data-animate-in=flip-left].in-view {
  -webkit-transform: perspective(2500px) rotateY(0) !important;
  transform: perspective(2500px) rotateY(0) !important;
}

[data-ani=flip-right], [data-animate-in=flip-right] {
  -webkit-transform: perspective(2500px) rotateY(100deg);
  transform: perspective(2500px) rotateY(100deg);
}

[data-animate-in=flip-right].in-view, [data-ani=flip-right].in-view {
  -webkit-transform: perspective(2500px) rotateY(0) !important;
  transform: perspective(2500px) rotateY(0) !important;
}

[data-ani=flip-up], [data-animate-in=flip-up] {
  -webkit-transform: perspective(2500px) rotateX(-100deg);
  transform: perspective(2500px) rotateX(-100deg);
}

[data-animate-in=flip-up].in-view, [data-ani=flip-up].in-view {
  -webkit-transform: perspective(2500px) rotateX(0) !important;
  transform: perspective(2500px) rotateX(0) !important;
}

[data-ani=flip-down], [data-animate-in=flip-down] {
  -webkit-transform: perspective(2500px) rotateX(100deg);
  transform: perspective(2500px) rotateX(100deg);
}

[data-animate-in=flip-down].in-view, [data-ani=flip-down].in-view {
  -webkit-transform: perspective(2500px) rotateX(0) !important;
  transform: perspective(2500px) rotateX(0) !important;
}

/* === cmp === */
.c-re-ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

.c-re-f {
  margin: 0px;
  padding: 0px;
  font-size: 100%;
  font-weight: inherit;
}

.c-re-a {
  color: inherit;
  text-decoration: none;
}
.c-re-a:active, .c-re-a:hover, .c-re-a:focus {
  outline: 0;
  text-decoration: none;
}

.c-re-table {
  border-collapse: collapse;
  border-spacing: 0;
  text-indent: 0;
  border-color: inherit;
}

.c-re-btn {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  vertical-align: baseline;
  *vertical-align: middle;
  background: transparent;
  outline: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
.c-re-btn:focus {
  outline: none;
}

.c-wp {
  --c-wp: 1200px;
  --c-wp-val: calc(100% - 60px);
  --c-wp-min: 260px;
}

.c-wp-p {
  --c-wp: 1200px;
  --c-wp-val: 90%;
  --c-wp-min: 260px;
}

.c-wp, .c-wp-p {
  width: clamp(var(--c-wp-min), var(--c-wp-val), var(--c-wp));
  margin-left: auto;
  margin-right: auto;
}

.c-fx-c {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-fx-cc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-fx-ccc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-btn {
  cursor: pointer;
  display: inline-block;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: none;
  isolation: isolate;
}

.c-bg-fix {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (hover: hover) and (pointer: fine) {
  .c-bg-fix {
    background-attachment: fixed;
  }
}
.c-bg-cov {
  --c-bg-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--c-bg-size);
}
.c-bg-con {
  --c-bg-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--c-bg-size);
}

.c-t-hide {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

.c-t-lg {
  --c-t-lg: linear-gradient(45deg, #F00, #00F);
  background: var(--c-t-lg);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.c-t-o {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.c-t-o-row {
  --c-t-o: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--c-t-o);
}

[class*=c-imgfit], [class*=u-imgfit] {
  --c-imgfit-ar: 16 / 9;
  --c-imgfit-pos: center;
  line-height: 0;
  overflow: hidden;
  text-align: center;
  position: relative;
  aspect-ratio: var(--c-imgfit-ar);
}
[class*=c-imgfit] img, [class*=u-imgfit] img {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-position: var(--c-imgfit-pos);
     object-position: var(--c-imgfit-pos);
}

.c-imgfit-cover, .c-imgfit-cov, .u-imgfit-cover {
  --c-imgfit: cover;
}
.c-imgfit-cover img, .c-imgfit-cov img, .u-imgfit-cover img {
  -o-object-fit: var(--c-imgfit);
     object-fit: var(--c-imgfit);
}

.c-imgfit-contain, .c-imgfit-con, .u-imgfit-contain {
  --c-imgfit: contain;
}
.c-imgfit-contain img, .c-imgfit-con img, .u-imgfit-contain img {
  -o-object-fit: var(--c-imgfit);
     object-fit: var(--c-imgfit);
}

.c-scroll-no {
  overflow: hidden;
}
.c-scroll-x {
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.c-scroll-y {
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

.c-scrollbar {
  --c-scrollbar-w: 5px;
  --c-scrollbar-bar: #00F;
  --c-scrollbar-bg: #F00;
  --c-scrollbar-r: 0;
}
.c-scrollbar::-webkit-scrollbar {
  width: var(--c-scrollbar-w);
  background: var(--c-scrollbar-bg);
  border-radius: var(--c-scrollbar-r);
}
.c-scrollbar::-webkit-scrollbar-track {
  background: var(--c-scrollbar-bg);
  border-radius: var(--c-scrollbar-r);
}
.c-scrollbar::-webkit-scrollbar-thumb {
  background: var(--c-scrollbar-bar);
  border-radius: var(--c-scrollbar-r);
}

.c-googlemap, .u-googlemap {
  --c-googlemap: 700 / 240;
  position: relative;
  overflow: hidden;
  aspect-ratio: var(--c-googlemap);
}
.c-googlemap iframe, .u-googlemap iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: fill;
     object-fit: fill;
  overflow: hidden;
}

.c-yt {
  --c-yt: 16 / 9;
  --c-yt-w: 960px;
  position: relative;
  max-width: var(--c-yt-w);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  aspect-ratio: var(--c-yt);
}
.c-yt iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: fill;
     object-fit: fill;
  overflow: hidden;
}