html body {
  margin: 0;
}

body p,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body figure {
  margin: 0;
}

body label {
  margin-bottom: 0;
}

body img {
  display: block;
  max-width: 100%;
  height: auto;
}

body a {
  color: inherit;
  text-decoration: none;
}

body a:hover,
body a:focus {
  text-decoration: none;
}

body button,
body input,
body textarea,
body select {
  font: inherit;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  overflow-x: clip;
}

html {
  scroll-padding-top: clamp(81.6px, 7.467057101vw, 122.4px);
}

@media screen and (max-width: 1093px) {
  html {
    scroll-padding-top: 87px;
  }
}
html body {
  background: #fcfdff;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
  overflow-wrap: anywhere;
  line-break: strict;
}

html a[href] {
  display: inline;
  min-width: auto;
  min-height: auto;
  padding: 0;
}

body a {
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}

body button {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
.is-fade-ready .js-fade-in {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease, transform 0.8s ease, background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  will-change: opacity, transform;
}

.is-fade-ready .js-fade-in.is-show {
  opacity: 1;
  transform: translate(0, 0);
}

.is-fade-ready .p-topService__list > *,
.is-fade-ready .p-topWorks__list > .webgene-blog > *,
.is-fade-ready .p-worksList > .webgene-blog > :not(.webgene-pagination),
.is-fade-ready .p-serviceToc__inner > *,
.is-fade-ready .p-serviceFlow__list > *,
.is-fade-ready .js-fade-item {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease var(--fade-delay, 0ms), transform 0.6s ease var(--fade-delay, 0ms), background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  will-change: opacity, transform;
}

.is-fade-ready .p-topService__list > .is-show,
.is-fade-ready .p-topWorks__list > .webgene-blog > .is-show,
.is-fade-ready .p-worksList > .webgene-blog > .is-show,
.is-fade-ready .p-serviceToc__inner > .is-show,
.is-fade-ready .p-serviceFlow__list > .is-show,
.is-fade-ready .js-fade-item.is-show {
  opacity: 1;
  transform: translate(0, 0);
}
