.c-line1,
.c-line2,
.c-line3,
.c-line4 {
  overflow: hidden;
  visibility: visible;
  word-break: break-all;
}
.c-line1 > span {
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.c-line2 > span {
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.c-line3 > span {
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-line4 > span {
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}


.if-pc {
  display: block;
}
.if-sp {
  display: none;
}
.if-pc-flex {
  display: flex;
}
.if-sp-flex {
  display: none;
}
.if-pc-l {
  display: block;
}
.if-sp-l {
  display: none;
}
.if-pc-l-flex {
  display: flex;
}
.if-sp-l-flex {
  display: none;
}

@media (max-width: 992px) {
  .if-pc-l {
    display: none;
  }
  .if-sp-l {
    display: block;
  }
  .if-pc-l-flex {
    display: none;
  }
  .if-sp-l-flex {
    display: flex;
  }
}
@media (max-width: 767px) {
  .if-pc {
    display: none;
  }
  .if-sp {
    display: block;
  }
  .if-pc-flex {
    display: none;
  }
  .if-sp-flex {
    display: flex;
  }
}
@media (max-width: 576px) {
}



.order1 {
  order: 1;
}
.order2 {
  order: 2;
}

.montserrat {
  font-family: "Montserrat", sans-serif;
}



html { scroll-behavior: smooth;}

.menu_button {
  border: 1px solid #e1e1e1;
  border-radius: 100px;
  font-size: 26px;
  color: #e1e1e1;
  height: 30px;
  width: 30px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-left: 16px;
  cursor: pointer;
}
.menu_button::before {
	position:relative;
	top:1px;
}


.menu {
  /* display: none; */
  opacity: 0;
  transform: translateY(-100px);
  z-index: -10;
  /* transition: .4s cubic-bezier(.36,.67,.41,.69); */
  transition: .4s cubic-bezier(0.4, 0, 0.2, 1);;
  box-shadow: 0 0 5px #e8e8e8;
  border-radius: 5px;
  border: 1px solid #e1e1e1;
  width: 200px;
  padding: 0 24px 0;
  position: absolute;
  top: 60px;
  left: 0px;
  background-color: #fff;
}
.menu_item {
  padding: 16px 0;
  border-bottom: 1px solid #e5e6e7;
}
.menu_item:last-of-type {
  border-bottom: none;
}
.menu_item_title {
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 8px;
}
.menu_item_img_frame {
  display: inline-block;
  width: 100px;
}
.menu_item_img {
  width: 100%;
  vertical-align: baseline;
}
@media (max-width: 1200px) {
  .menu {
    left: 0;
  }
}
@media (max-width: 992px) {

}
@media (max-width: 767px) {

}
@media (max-width: 576px) {

}
