@charset "utf-8";

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

  .main_header {
  background-image:url(/img/main.png);
  background-repeat: no-repeat;
  background-size: cover;
  height: 400px;
  width: 100%;
  position: relative;
}
  .main_wrap {
  max-width: 90%;
  margin: 0 auto;
}

.logo img {
  width: 300px;
}

.logo {
  position: absolute;
  top: 10%;
  left: 10%;
}

.main_header p {
  color: #fff;
  font-size: 20px;
  position: absolute;
  top: 45%;
  left: 10%;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  border-top: #fff solid 1px;
  padding-top: 10px;
}

.main_head {
  font-size:40px;
  font-weight: 800;
  text-align: center;
  padding-top: 80px;
  padding-bottom: 50px;
}

.main_head span {
  font-size: 25px;
}

.content_img img{
  width: 100%;
  height: 300px;
  object-fit: cover;
  margin-top: 80px;
}

.flex01 h3 {
  font-size: 20px;
  font-weight: 800;
  text-align: center;
}

.flex01 p {
  font-size: 16px;
  margin-top: 20px;
  line-height: 1.5;
  text-align: left;
  letter-spacing: 0.02em;
}

.flex02 img {
  height: 250px;
}

.photo_flex li img {
  height: 150px;
  object-fit: cover;
}

}


@media screen and (max-width:480px) {
  .main_header {
  background-position: center;
  height: 300px;
  width: 100%;
}

.logo {
  margin: 0 auto;
  width: 80%;
}

.main_header p {
  color: #fff;
  font-size: 4.5vw;
  top: 55%;
  left: 10%;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  border-top: #fff solid 1px;
  padding-top: 10px;
}

.main_head {
  font-size:30px;
  font-weight: 800;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 40px;
}

.main_head span {
  font-size: 20px;
}

.main_content p {
  font-size: 16px;
  text-align: center;
  line-height: 1.5;
}

.content_img img{
  width: 100%;
  height: 200px;
  object-fit: cover;
  margin-top: 40px;
}

.flexbox {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: space-between;
}

.flex01 {
  width: 100%;
  margin-top: 30px;
}

.flex02 {
  width: 100%;
  text-align: center;
}

.photo_flex {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: space-between;
  margin-top: 40px;
  margin-bottom: 30px;
}

.photo_flex li {
  width: 100%;
}

.photo_flex li img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  margin-bottom: 20px;
}

.flex_sns {
  display: flex;
  width: 20%;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
}

.item-flex {
  flex-wrap: wrap;
}

.item {
  width: 48%;
  margin-top: 20px;
}


.footer_logo {
  width: 80%;
}
}