body {
  font-family: "Noto Sans JP", serif;
}

.container {
  max-width: 550px;
  margin: auto;
  background-color: #F8F7F4;
}

.bg-blue .container {
  background-color: #ECF0F6;
}

a {
  transition: .3s;
}

a:hover {
  opacity: .75;
}

img {
  width: 100%;
  vertical-align: bottom;
}

.pt60 {
  padding-top: 60px;
}

.pt40 {
  padding-top: 40px;
}

.pt20 {
  padding-top: 20px;
}

.pt10 {
  padding-top: 10px;
}

.plr20 {
  padding-left: 20px;
  padding-right: 20px;
}

.mt-5 {
  margin-top: -5px;
}

.mt-40 {
  margin-top: -40px;
}

.flex {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 50px;
  padding-bottom: 50px;
}

.flex li a {
  padding-left: 20px;
  padding-right: 20px;
  color: #3E3933;
  border-right: 1px solid #3E3933;
  font-size: 15px;
  text-decoration: none;
}

@media screen and (max-width: 550px) {
  .flex li a {
    font-size: 11px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.footer-text {
  font-size: 21px;
  line-height: 2;
}

@media screen and (max-width: 550px) {
  .footer-text {
    font-size: 14px;
  }
}
