@charset "utf-8";
/*-----------------------------------------------
  common
-----------------------------------------------*/
body::before {
  content: "";
  background-image: linear-gradient(135deg, rgba(230, 213, 71, 0.1), rgba(233, 95, 84, 0.1));
  width: 100%;
  height: 1060px;
  position: absolute;
  top: 0;
  z-index: -1;
}
body::after {
  content: "";
  background-image: linear-gradient(360deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
  width: 100%;
  height: 400px;
  position: absolute;
  top: 660px;
  z-index: 0;
}
body.home .bottom-contact {
  display: none;
}
/*-----------------------------------------------
  main__content
-----------------------------------------------*/
.main__content {
  position: relative;
  margin: 0 auto;
  padding-top: 120px;
}
.main__content .textarea {
  text-align: center;
  max-width: 480px;
}
.main__content .textarea .messagearea {
  text-align: left;
}
.main__content .textarea .messagearea .message1 {
  font-family: "roboto-condensed", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  letter-spacing: 0.05em;
  color: #F14100;
  margin-bottom: 20px;
  padding-left: 5px;
}
.main__content .textarea .messagearea .message2 {
  margin-bottom: 45px;
}
.main__content .textarea p {
  text-align: left;
  letter-spacing: 0.05em;
  margin-bottom: 60px;
}
.main__content a.button1 {
  margin: 0 auto;
}
.main__content ul.slick-dots {
  position: absolute;
  bottom: -50px;
  right: 0;
}
.main__content .slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 7px;
  padding: 0;
  cursor: pointer;
}
.main__content .slick-dots li button {
  position: relative;
  font-family: "source-han-sans-japanese", sans-serif;
  font-weight: 700;
  font-size: 12px !important;
  letter-spacing: 0.1em;
  color: #9e9e9e;
}
.main__content .slick-dots li.slick-active button::after {
  content: "";
  background: #000;
  color: #000;
  width: 95%;
  height: 1px;
  position: absolute;
  bottom: -4px;
  left: 0;
}
.main__content .slick-dots li button {
  font-size:initial;
  color:initial;
  background:initial;
}
.main__content .slick-dots li button:before {
  content:none;
}
.main__content .slick-arrow {
  display: none !important;
}
@media screen and (min-width: 900px) {
  .main__content {
    position: relative;
    width: 1040px;
    height: 100vh;
    display: flex;
    align-items: center;
  }
  .main__content {
    max-height: 730px;
  }
  .main__content .slider-wrap {
    position: absolute;
    right: 0;
    width: 540px;
  }
  .main__content .textarea {
    position: absolute;
    z-index: 99;
  }
}
@media screen and (max-width: 899px) {
  .main__content {
    width: 90%;
    margin-bottom: 120px;
    padding-top: 90px;
  }
  .main__content .textarea {
    margin: 5vw auto 0;
  }
  .main__content .textarea p {
    margin-bottom: 35px;
  }
  .main__content .textarea .messagearea .message2 {
    margin-bottom: 35px;
  }
  .main__content .textarea .messagearea .message2 img {
    width: 100%;
    height: auto;
  }
  .main__content .slider-wrap img {
    width: 90%;
    height: auto;
    max-width: 539px;
    margin: 0 auto;
  }
  .main__content ul.slick-dots {
    bottom: 0;
    right: 15vw;
  }
}
@media screen and (max-width: 599px) {
  .main__content .slider-wrap {
    width: 110vw;
    left: -5vw;
  }
}
/*-----------------------------------------------
  service__content
-----------------------------------------------*/
.service__content {
  margin-bottom: 160px;
}
.service__content .area1 {
  margin-bottom: 60px;
}
@media screen and (max-width: 899px) {
  .service__content {
    margin-bottom: 100px;
  }
  .service__content .area1 {
    margin-bottom: 80px;
  }
  .service__content .area2 .image {
    width: 95%;
    max-width: 483px;
    margin: 0 auto 30px;
  }
}
/*-----------------------------------------------
  company__content
-----------------------------------------------*/
.company__content {
  margin-bottom: 110px;
}
.company__content .column2 {
  margin-bottom: 60px;
}
@media screen and (min-width: 900px) {
  .company__content .column2-1 {
    padding-right: 50px;
  }
}
@media screen and (max-width: 899px) {
  .company__content {
    margin-bottom: 80px;
  }
  .company__content .column2 {
    margin-bottom: 40px;
  }
  .company__content .column2-1 {
    margin-bottom: 30px;
  }
}
/*-----------------------------------------------
  news__content
-----------------------------------------------*/
.news__content {
  margin-bottom: 160px;
}
/* postlist */
ul.postlist {
  width: 100%;
  max-width: 870px;
  margin: 0 auto 70px;
}
ul.postlist li {
  position: relative;
  margin-bottom: 40px;
  transition : 0.3s;
  -webkit-transition : 0.3s;
}
ul.postlist li:last-child {
  margin-bottom: 0
}
ul.postlist li:hover {
  /* opacity: 0.6; */
  margin-left: 20px;
}
ul.postlist li::after {
  content: "";
  background: url(//cdn.xuansiwei.com/gakii13578/wp-content/themes/is2023/images/arrow-button.png) no-repeat;
  background-size: contain;
  width: 39px;
  height: 39px;
  position: absolute;
  right: 20px;
  top: 3px;
  transition : 0.3s;
  -webkit-transition : 0.3s;
}
ul.postlist li:hover::after {
  right: 0;
}
ul.postlist .post-date {
  display: inline-block;
  position: relative;
}
ul.postlist .post-date {
  margin-right: 50px;
  font-weight: 700;
}
ul.postlist .post-date::before {
  content: "";
  background: #000;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -10px;
  left: 0;
}
/* ul.postlist .post-date::after {
  content: "";
  background: #ffb627;
  width: 0;
  height: 1px;
  position: absolute;
  bottom: -10px;
  left: 0;
  transition : 0.3s;
  -webkit-transition : 0.3s;
}
ul.postlist li:hover .post-date::after {
  width: 100%;
} */
ul.postlist .post-title {
  display: inline-block;
  vertical-align: middle;
}
ul.postlist .post-title p {
  padding-bottom: 5px;
}
ul.postlist .post-title span {
  position: relative;
}
ul.postlist .post-title span::before {
  content: "";
  background: #000;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -9px;
  left: 0;
}
ul.postlist .post-title span::after {
  content: "";
  background: #ffb627;
  width: 0;
  height: 1px;
  position: absolute;
  bottom: -9px;
  left: 0;
  transition : 0.3s;
  -webkit-transition : 0.3s;
}
ul.postlist li:hover .post-title span::after {
  width: 100%;
}
@media screen and (max-width: 899px) {
  .news__content {
    margin-bottom: 120px;
  }
  .news__content .inner {
    width: 90%;
  }
  .news__content .titlearea {
    margin-bottom: 25px;
  }
  ul.postlist {
    margin-bottom: 60px;
  }
  ul.postlist li {
    margin-bottom: 20px;
  }
  ul.postlist li::after {
    top: 0;
    right: 0;
  }
  ul.postlist .post-date {
    margin-right: 15px;
  }
  ul.postlist .post-title {
    width: calc(100% - 160px);
  }
  ul.postlist .post-title p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  ul.postlist .post-title::after {
    bottom: -2px;
  }
}
/*-----------------------------------------------
  SDGs__content
-----------------------------------------------*/
.SDGs__content {
  margin-bottom: 160px;
}
@media screen and (min-width: 900px) {
  .SDGs__content .titlearea {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 899px) {
  .SDGs__content {
    margin-bottom: 100px;
  }
  .SDGs__content .column2 .image {
    width: 95%;
    max-width: 483px;
    margin: 0 auto 30px;
  }
}
/*-----------------------------------------------
  partners__content
-----------------------------------------------*/
.partners__content {
  padding-bottom: 160px;
}
.partners__content .logolist {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 70px;
  margin-bottom: 110px;
}
.partners__content p.text {
  margin-bottom: 80px;
}
@media screen and (min-width: 600px) {
  .partners__content .logolist {
    align-items: center;
  }
}
@media screen and (max-width: 599px) {
  /* .partners__content .titlearea {
    padding-bottom: 40px;
  } */
  .partners__content .logolist {
    gap: 35px;
    margin-bottom: 65px;
  }
  .partners__content p.text {
    margin-bottom: 40px;
    padding: 0 5%;
    text-align: left;
  }
}
