@charset "utf-8";
/*reset*/
html,body,header,nav,main,footer,div,h1,h2,h3,p,ul,li,dl,dt,dd,span,small,address,a,img,br{
	margin:0;
	padding:0;
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
ul{
	list-style:none;
}
a{
  color:#a580b2;
  text-decoration: none;
  transition: 0.5s ease;
}
a:hover{
  color:#333;
}
/*base*/
html{
  height: 100%;
  font-family:'Helvetica','Arial','Noto Sans JP',sans-serif;
  font-size:62.5%;
  line-height:1.8;
  color:#666;
  text-align: justify;
}
body{
  height: 100%;
  background:rgba(172,134,187,0.05);
  font-size:1.5rem;
}
/*animation*/
.anim{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(30px);
}
.actv{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.slide.noMotion{
  animation: slide 1s!important;
}
@keyframes slide{
  0%{
  opacity:0;
  visibility: hidden;
	transform: translateY(30px);
  }
  100%{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
  }
}

/*--------------------------------------------------------header*/
header{
  display:block;
  position: relative;
  padding-bottom:61px;
  padding-top:122px;
}
.logo{
  position: relative;
  width:51.67%;
  margin:0 auto;
}
  .st0{
    fill:#a580b2;
  }
  .st1{
    fill:none;
    stroke:#fff;
    stroke-width:4;
    stroke-linecap:round;
    stroke-miterlimit:7;
  }
.logo .title{
  position:absolute;
  left:13.5%;
  bottom:13.5%;
  width:44.83%;
  height:auto;
}
/*nav*/
.navSp{
  display: none;
}

/*--------------------------------------------------------footer*/
footer{
  display: flex;
  align-items: flex-end;
  padding:0 0 40px 40px;
}
footer small{
  font-size:1.1rem;
  font-weight: 400;
  margin-right:100px;
}
footer .pagetop a{
  display: block;
  width:5px;
  height:60px;
  background: url(../images/arrow_top.svg) no-repeat;
  background-position: 0 18px;
  background-size:5px auto;
  transition: 0.5s ease;
}
footer .pagetop a:hover{
  background: url(../images/arrow_top_hover.svg) no-repeat;
  background-position:0 0;
}
@media(max-width:768px){
    footer{
    justify-content: space-between;
    padding:0 23px 40px 28px;
  }
  
}