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;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

html body,
html body address,
html body blockquote,
html body dd,
html body dl,
html body figure,
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body p,
html body pre {
  margin: 0;
}

html body ul,
html body ol,
html body menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

html body table {
  border-collapse: collapse;
  border-spacing: 0;
}

html body th {
  text-align: inherit;
}

html body button,
html body input,
html body optgroup,
html body select,
html body textarea {
  margin: 0;
  color: inherit;
  font: inherit;
}

html {
  scroll-padding-top: clamp(77.6px, 7.1010248902vw, 116.4px);
}

@media screen and (max-width: 1093px) {
  html {
    scroll-padding-top: 87px;
  }
}
html body {
  background: url("../images/bg-main.png") repeat-y center top/100% auto, #048ff4;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
  overflow-wrap: anywhere;
  line-break: strict;
}

@media screen and (max-width: 1093px) {
  html body {
    background-size: 1366px auto, auto;
  }
}
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;
  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-topInstagram .webgene-blog > *,
.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);
  will-change: opacity, transform;
}

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