html {
  scroll-behavior: smooth;
}
.main-contents {
  font-family: "fot-tsukuaoldmin-pr6n",'Yu Mincho', 'Hiragino Mincho ProN';
  overflow-x: hidden;
  font-size: 16px;
  background-color: black;
  overflow-wrap: break-word;
  word-break: break-all;
}

.break{
    display: inline-block;
}
a {
  color: inherit;
  text-decoration: none!important;
}

.section-heading__button{
    font-size:1.25rem;
}

.link{cursor:pointer;transition: opacity 0.5s ease;}
.link:hover{opacity:0.5;}
.link-g{cursor:pointer;transition: filter 0.5s ease;}
.link-g:hover{filter: grayscale(100%);}


/*アニメーション*/
.fade-up {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.5s ease, transform 2s ease;
}
.fade-up.active {
  opacity: 1;
  transform: translateY(0);
}
.fade-dw {
  opacity: 0;
  transform: translateY(-40px);
  transition: opacity 1s ease, transform 2.5s ease;
}
.fade-dw.active {
  opacity: 1;
  transform: translateY(0);
}
.test.fade-in {
  transition-delay: 0.5s;
}
.fade-in {
  opacity: 0;
  transition: 5s;
}
.active {
  opacity: 1 !important;
}
.slide-r {
  opacity: 0;
  transform: translateX(15%);
  transition: opacity 2s ease, transform 2s ease-out;
}
.slide-r.active {
  opacity: 1;
  transform: translateX(0);
}
.slide-l {
  opacity: 0;
  transform: translateX(-15%);
  transition: opacity 2s ease, transform 2s ease-out;
}
.slide-l.active {
  opacity: 1;
  transform: translateX(0);
}




.top-btn {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  width: 3rem;
  height: 3rem;
  background-color: rgba(255, 255, 255, 0.4);
  color: white!important;
  font-size: 1.5rem;
  text-align: center;
  line-height: 3rem;
  border-radius: 50%;
  border: 1px solid white;
  cursor: pointer;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 50;
}
.top-btn:hover {
  opacity: 0.6;
  transform: scale(1.1);
}
.top-btn {
  opacity: 0;
  pointer-events: none;
}
.top-btn.visible {
  opacity: 1;
  pointer-events: auto;
}














