.toptext p,.blogtext p{
  line-height: 1.5;
}

#mainwrapper {
  margin-top: 250px;
  font-family: "Hiragino Maru Gothic ProN", sans-serif;
}

.toptext{
  padding: 0 2rem;
  width: 80vw;
  max-width: 80rem;
  margin:0 auto;
  color: white;
  border: ridge 4px #fff;
  background-color: black;
  border-radius: 10px;
}

.main{
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  max-width: 900px;
  margin:0 auto;
}

.slide-wrapper {
  text-align: center;
  width: 50%;
  max-width: 80rem;
  color: #5e6f84;
  padding: 6rem 0;
}

.slide-title{
  font-weight: bold;
}

.slider img{
  margin: 0 auto;
  border-radius: 5px;
  max-width: 600px;
  max-height: 600px;
  min-height: 100px;
}

.btn-border {
  background-color: black;
  display: inline-block;
  max-width: 300px;
  text-align: left;
  border: 2px solid #9ec34b;
  font-size: 16px;
  color: #9ec34b;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 4px;
  transition: .4s;
}

.btn-border:hover {
  background-color: #9ec34b;
  border-color: #cbe585;
  color: #FFF;
}

.blog{
  width: 80vw;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4vw;
  margin-bottom: 1.5rem;
}

.blog_img{
  width: 100%;
  max-width: 480px;
}

.blogtext{
  color: white;
  border: ridge 4px #fff;
  background-color: black;
  border-radius: 10px;
  text-align: justify;
  margin-left: auto;
  margin-right: auto;
  padding: 4rem 2rem 0 2rem;
  position: relative;
}

.blogtitle{
  color: white;
  display: inline-block;
  padding: 0 1vw;
  border: ridge 4px #fff;
  background-color: black;
  border-radius: 10px;
  text-align: center;
  position: absolute;
  top: -2vw;
}

.blogtitle h2 {
  display: inline;
}

/*点滅カーソル用*/

@keyframes blink{
  0% {opacity:0;}
  100% {opacity:1;}
}
.blinking{
  animation:blink 0.5s ease-in-out infinite alternate;
}

/*点滅カーソル用ここまで*/