@charset "UTF-8";
body {
  background: #fff;
}

/* -------------------------------------------------------------------
　キービジュアル
------------------------------------------------------------------- */
#kv {
  background-image: url("../imgs/common/top_bg.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 42.81rem;
  height: 32rem;
  position: relative;
}
#kv:after {
  /*		content:"";
  		background:#F0F5F3;
  		position: absolute;
  		top:0;
  		left:51.5%;
  		width:48.5%;
  		height:100%;
  		z-index:-10;*/
}
#kv .f-container {
  height: 42.81rem;
  height: 32rem;
  display: flex;
  align-items: start;
  align-items: center;
  justify-items: flex-end;
}
#kv .f-container__ct:first-child {
  width: 63%;
  width: 45%;
  padding-right: 3.43rem;
  padding-top: 2rem;
}
#kv .f-container__ct:first-child h1 {
  font-size: clamp(2.9rem, 2vw, 4rem);
  font-weight: 900;
  margin-bottom: 1.1rem;
  color: #204731;
}
#kv .f-container__ct:first-child h1 span {
  font-size: clamp(1.85rem, 2vw, 3.2rem);
}
#kv .f-container__ct:first-child h2 {
  font-size: clamp(2.05rem, 2vw, 2.875rem);
  font-weight: 900;
  text-align: left;
  color: #204731;
  border-bottom: 1px solid #204731;
  width: fit-content;
}
#kv .f-container__ct:first-child h3 {
  width: fit-content;
  font-size: clamp(1.7rem, 2vw, 2.25rem);
  font-weight: 700;
  border-bottom: 6px solid #F1A039;
  margin-bottom: 1.5rem;
  color: #204731;
}
#kv .f-container__ct:first-child p {
  margin-top: 0.7rem;
  font-size: 1.125rem;
  line-height: 2;
}
#kv .f-container__ct:first-child ul {
  margin-top: 3rem;
  display: flex;
  gap: 1rem;
}
#kv .f-container__ct:first-child ul li {
  width: 15.44rem;
  height: 4.75rem;
  border-radius: 0.25rem;
  line-height: 4.75rem;
  display: block;
  font-size: 1.25rem;
  font-weight: 900;
  text-align: center;
  color: #fff;
  box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.16);
  transition: all 0.5s ease;
}
#kv .f-container__ct:first-child ul li.download {
  background-color: #F1A039;
}
#kv .f-container__ct:first-child ul li.download:before {
  content: "";
  display: inline-block;
  width: 1.5625rem;
  height: 2.0625rem;
  margin-right: 0.3rem;
  background-image: url("../imgs/common/ico_download.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  vertical-align: middle;
}
#kv .f-container__ct:first-child ul li.contact {
  background-color: #204731;
}
#kv .f-container__ct:first-child ul li.contact:before {
  content: "";
  display: inline-block;
  width: 2.4375rem;
  height: 2.1875rem;
  margin-right: 0.3rem;
  background-image: url("../imgs/common/ico_contact.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  vertical-align: middle;
}
#kv .f-container__ct:first-child ul li:hover {
  opacity: 0.7;
}
#kv .f-container__ct:nth-child(2) {
  width: 37%;
  width: 55%;
}

@media (min-width: 769px) and (max-width: 1200px) {
  #kv .f-container__ct:first-child {
    width: 40%;
    padding-right: 0;
    padding-left: 3%;
  }
  #kv .f-container__ct:first-child ul {
    gap: 1rem;
    flex-direction: column;
  }
  #kv .f-container__ct:first-child ul li {
    height: 4rem;
    line-height: 4rem;
  }
  #kv .f-container__ct:nth-child(2) {
    width: 55%;
    padding-right: 2%;
  }
}
@media (max-width: 768px) {
  #kv .f-container {
    flex-direction: column;
    justify-content: flex-start;
    /*			background-image: url("../imgs/frontpage/kv01.svg");
    			background-repeat: no-repeat;
    			background-size: auto 55%;
    			background-position: bottom 20px right;*/
  }
  #kv .f-container__ct:first-child {
    width: 100%;
    padding-right: 0;
  }
  #kv .f-container__ct:first-child ul {
    flex-direction: column;
    gap: 1rem;
  }
  #kv .f-container__ct:nth-child(2) {
    display: none;
  }
}
/* -------------------------------------------------------------------
　導入企業ロゴスクロール
------------------------------------------------------------------- */
#company-logos {
  background: url(../imgs/frontpage/company-logos260126.webp);
  background-size: cover;
  height: 4.0625rem;
  width: 100%;
  animation-name: slide_img;
  animation-duration: 200s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

@keyframes slide_img {
  100% {
    background-position: -10000px 0;
  }
}
/* -------------------------------------------------------------------
　ブログ
------------------------------------------------------------------- */
#caseStudy {
  background: #FFFBF2;
}

/* -------------------------------------------------------------------
　ブログ
------------------------------------------------------------------- */
#blog {
  padding: 4rem 0 2.5rem;
  background: #FFF;
}
#blog .caption {
  text-align: center;
  margin-top: 1.53rem;
}
#blog .f-container {
  display: flex;
  justify-content: space-between;
}
#blog .f-container .panel {
  width: 32%;
  background: #fff;
  border-radius: 0.625rem;
  border: 1px solid #204731;
  padding: 1.6875rem;
  margin-top: 2.5rem;
}
#blog .f-container .panel p {
  font-size: 0.875rem;
  font-weight: 700;
  color: #204731;
  margin-top: 1.25rem;
}
#blog .f-container .panel h3 {
  font-size: 1.1875rem;
  font-weight: 800;
  margin-top: 1.1875rem;
  padding-bottom: 3rem;
}
#blog .f-container .panel img {
  border-radius: 0.625rem;
  aspect-ratio: 336/224;
  object-fit: cover;
}
#blog .f-container .panel:hover {
  background: #F0F5F3;
}
#blog .f-container .blog_panel {
  position: relative;
}

@media (max-width: 768px) {
  #blog .f-container {
    flex-direction: column;
  }
  #blog .f-container .panel {
    width: 100%;
  }
}
/* -------------------------------------------------------------------
　ニュースリリース
------------------------------------------------------------------- */
#topics {
  padding: 6.3125rem 0 9.375rem;
}
#topics .f-container {
  display: flex;
  margin-left: 10.25rem;
}
#topics .f-container__ct h2 {
  color: #204731;
  text-align: left;
  margin-top: 0;
  margin-bottom: 0;
}
#topics .f-container__ct h3 {
  font-size: 1rem;
}
#topics .f-container__ct ul {
  display: flex;
  margin-bottom: 1rem;
}
#topics .f-container__ct ul li a.text_link:after {
  height: 1px;
  background-color: #0c482f;
}
#topics .f-container__ct ul li:first-child {
  color: #204731;
  margin-right: 2rem;
}
#topics .f-container__ct ul:last-child {
  margin-bottom: 0;
}
#topics .f-container .ct_left {
  position: relative;
  width: 20rem;
}
#topics .f-container .ct_left a {
  transition: all 0.5s ease;
}
#topics .f-container .ct_left a:hover {
  color: #F1A039;
}

@media (max-width: 768px) {
  #topics .f-container {
    flex-direction: column;
    gap: 1rem;
    margin-left: 0;
  }
  #topics .f-container__ct ul {
    flex-direction: column;
  }
  #topics .f-container__ct ul li:first-child {
    color: #204731;
    margin-right: 0;
  }
  #topics .f-container__ct ul:not(:last-child) {
    padding-bottom: 0.5rem;
    border-bottom: 1px dotted #333;
  }
  #topics .f-container .ct_left {
    width: 100%;
  }
}

/*# sourceMappingURL=frontpage.css.map */
