@charset "utf-8";
/* CSS Document */
/*#fv{

  height: calc(100svh - 200px);
}*/
/*2510*/
#fv .visual {
  width: 100%;
  overflow: hidden;
  position: relative;
}
#fv img.kv-text{
  height: auto;
   object-fit: contain;
  object-position: inherit;
}

/* 画像を親要素中心に配置 */
.kv-img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  object-position: center center;
  z-index: -1;
}
.kv-text {
  display: block;
  position: absolute;
  top: 34px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
  width: 495px;
}

@media (min-width: 1366px) {
  #fv .visual img.kv-img {
    object-position: center bottom;
  }
  
  
}
/* PC／大画面時 */
@media (min-width: 768px) {
  #fv .visual {
    /* 高さを auto にして、画像の縦幅に追随させる */
    height: 50svh;
    min-height: 678px;
  }
  .kv-img {
    width: 100%;
    height: auto;
    max-height: none;
    min-width: 100%;
  }
}
/* スマホ以下（必要なら別指定） */
@media (max-width: 767px) {
  #fv .visual {
    height: 80svh;
    min-height: 470px;
    max-height: 520px;
  }
  #fv .visual img.kv-img {
    object-position: center bottom;
  }
  .kv-text {
    width: clamp(300px, 50vw, 500px);
  }
  .kv-img {
    width: 100%;
    height: auto;
    max-width: none;
  }
}
@media (max-width: 425px) {
  #fv .visual {
    height: 60svh;
    max-height: 410px;
    min-height: 360px;
  }
  .kv-text {
    width: clamp(200px, 73vw, 680px);
    top: 40px;
  }
}
@media (max-width: 320px) {
  #fv .visual {
    height: 50svh;
    max-height: 310px;
    min-height: 280px;
  }
}
.headerLocal .logoWrapLocal{
  flex-wrap: nowrap;
}
@media (max-width: 768px) {
  .headerLocal{
  height: 8.3rem;
}  
  
}
#bi{
  margin-top: 0;
}
.content > .listBlock{
  background: #ECFAF5;
}
#simulationBlock .innerBlock{
  padding-top: 8rem;
  margin-bottom: 8rem;
}
#simulationBlock p.txt{
  font-size: 1.6rem;
  color: #666;
}
#simulationBlock p.note{
  font-weight: normal;
  color: #666;
  text-indent: -1.15em;
  padding-left: 1em;
}
#simulationBlock picture.graph{
  display: block;
  width: 100%;
  max-width: 800px;
  margin: auto auto 4rem auto;
}
#simulationBlock picture p.note{
  text-align: right;
  margin-bottom: 1em;
}
#simulationBlock p.note a{
  text-decoration: underline;
  font-weight: 600;
}
.content > .flowBlock{
  background: #ECFAF5;
  padding-bottom: 8rem;
}
.content > .notesBlock{
  margin-top:0;
}
.content > .flowBlock ul.flowStep li{
  background: #fff;
}
.content > .flowBlock ul.flowStep .step{
  line-height: 1.5;
}
