a{
  text-decoration: none;
}

a:hover,
a:link,
a:visited{
  color:#fff;
}

header{
padding:0 20px;    
}

header img{
    width:100%;
    max-width:400px;
}

header h1{
    margin-bottom:0;
}

.section {
  position: relative;
  width: 1100px;
  margin: auto;
  text-align: center;
}

.main-copy {
font-size: 24px;
 font-family: "Noto Sans JP", sans-serif;
 font-weight: 600;
}

.text {
  font-size:16px;
  font-family: serif;
  line-height: 2;
  margin-bottom: 50px;
}

#canvas {
  position: fixed;
  top: 0;
  opacity: .4;
    z-index: -1;
    filter: blur(30px) saturate(120%);

}

.show h2{
    filter: blur(4px);
  opacity: 0;
  transform: translateY(10px);
  animation: brew 1s ease-out forwards;
}


.show p{
  filter: blur(4px);
  opacity: 0;
  transform: translateY(10px);
  animation: brew 1.5s ease-out forwards;
  animation-delay: .5s;
}

.top-btn_wrapper{
  margin-bottom: 30px;
}

.btn{
  margin-bottom:50px;
}


.btn a{
  display: block;
  position:relative;
  background-color: black;
  width:fit-content;
  padding:.5em 1em;
  border-radius: 50vw;
  margin:auto
}

.pamphlet_btn_link{
  background-color: rgb(174,69,132)!important;
}


@keyframes brew {
  to {
    filter: blur(0);
    opacity: 1;
    transform: translateY(0);
  }
}


/* ローディングアニメーション */
#loading {
  position: fixed;
  inset: 0;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

#loading img {
  transform: translateY(100px);
  opacity: 0;
  animation: slideUp 0.6s ease-out forwards;
  width: 150px;
}

.section_news{
  text-align: center;
}

.news_img_wrapper{
  margin:auto;
    text-align: center;
  max-width:980px;
  width:100%;
  padding:0 20px;
  box-sizing: border-box;
  margin-bottom: 20px;
}

.news_img{
  width:100%;
}


.title{
  display: flex;
  align-items: center;
  justify-content: center;
}
.title:before,
.title:after {
  border-top: 1px solid black;
  content: "";
  width: 20px; 
}
.title:before {
  margin-right: 10px; 
}
.title:after {
  margin-left: 10px; 
}


/* ボタンを */
.top-button{
  position: fixed;
  bottom:20px;
  right:20px;
}

/* #top{
    cursor:pointer;
     opacity: 1;
    transition: opacity 1s ease;
}

#top.fadeout{
    opacity:0;
    pointer-events:none;
} */

.target{
padding:.5em;
border-radius: 50vw;
background-color: #000;
opacity:.8;
}

small{
  display: block;
  padding:1em 0; 
margin:auto;
text-align: center;
}




@keyframes slideUp {
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.fadeout {
  animation: fadeOut 0.5s ease forwards;
}

@keyframes fadeOut {
  to {
    opacity: 0;
    visibility: hidden;
  }
}

.link_txt{
  padding-right: 20px;
  text-align: right;
}

.link:hover,
.link:link,
.link:visited{
  color:#000;
}

@media screen and (max-width:1100px){

  body{
      overflow: scroll!important;

    }

  .section{
    width:calc(100% - 40px);
  
  }
}

@media screen and (max-width:480px){
header h1{
    margin-top:15px;
}

  
.main-copy {
font-size: 20px;
}

.text {
  font-size:14px;
  text-align: justify;
}

.link_txt{
  font-size: 12px;
}

}