.lp_background {
  background-color: #fff;
  padding: 20px 0 50px;
}
.ft-body {
  /* font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif; */
  letter-spacing: 0.05em;
  line-height: 1.4;
  font-weight: 600;
  margin: auto!important;
}
.ft-hero-slick {
  width: 100%;
  margin-bottom: 40px;
}
.ft-hero-heading {
    text-align: center;
    /* margin-bottom: 50px; */
}
.ft-hero-copy2 {
    line-height: 1.7;
    margin-bottom: 20px;
    font-size: 26px;
    letter-spacing: .08rem;
}
.ft-hero-copy3 {
    /* padding-bottom: 30px; */
    /* margin-top: 6%; */
    margin-top: 20px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: 0.08em;
    text-align: center;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: normal;
}
.btn-link {
  border-top: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
  display: flex;
  margin: 60px 0 40px;
}
.btn-link a {
  border-bottom: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% / 4);
  font-size: 15px;
  padding: 12px;
  height: 80px;
}
.btn-link a:hover {
  opacity: 0.8;
}
#harfsetup, #longsetup {
  /* padding-top: 60px; */
}
#longsetup {
  border-top: 1px solid #dddddd;
  margin-top: 80px;
  padding-top: 25px;
}
#harfsetup {
  /* border-top: 1px solid #dddddd; */
  /* margin-top: 80px; */
  /* padding-top: 25px; */
}
#harfsetup .ft-hero-copy2, #longsetup .ft-hero-copy2 {
  text-align: center;
  /* background-color: #f3f3f3; */
  /* color: #545454; */
  padding-top: 25px;
  font-size: 28px;
  margin-bottom: 0;
}
#harfsetup .ft-hero-copy3, #longsetup .ft-hero-copy3 {
  padding: 0 15px 30px;
}
.products {
  padding: 5% 10% 5%;
  text-align: center;
}
.products .ft-hero-copy2 {
  font-weight: normal;
}
.products-namearea {
  /* display: inline-block; */
  padding-top: 10px;
  display: flex;
  justify-content: space-between;
  width: 85%;
  margin: auto;
  font-size: 13px;
}
.products-namearea-name {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.products-namearea-name p {
  display: block;
}
.products-namearea-link {
  display: inline-block;
  padding: 1px 15px;
  border: 0.5px solid #000;
  margin-left: 20px;
  letter-spacing: 0;
  font-size: 1.0em;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.visual-box-2by2 {
  display:flex;
  flex-wrap: wrap;
  margin-bottom: 10%;
  padding: 0 15%;
}
.visual-box-2by2 img {
  width: 50%;
}
.style01 {
  position: relative;
  margin: 80px 0 50px;
}
.style01-products {
  position: absolute;
  right: 5%;
  bottom: 7.5%;
  line-height: 1.7;
}
.style01-products .products-namearea {
  width: 103%;
  padding-top: 20px;
  color: #fff;
  font-weight: normal;
}
.style02 {
  position: relative;
}
.style02-products {
  position: absolute;
  left: 5.2%;
  bottom: 24%;
}
.style02-products .products-namearea {
  width: 103%;
  padding-top: 20px;
}
.harf-styling {
  bottom: 3.5%;
}
.products-caution {
  padding-top: 10px!important;
  font-size: 10px;
  font-weight: normal;
  margin:0;
}
.ft-title {
    margin: 40px auto 0;
    text-align: center;
    width: fit-content;
    z-index: 1;
    position: relative;
    padding: 60px 5% 40px;
}
.ft-title-en {
  letter-spacing: 0.04em;
  margin-bottom: 5px;
  /* font-family: bebas; */
  /* font-weight: 400; */
  font-size: 40px;
}
.ft-title-jp {
    font-size: 15px;
    letter-spacing: 0.4em;
    font-weight: normal;
}
.ft-tech-item1 {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    align-items: center;
    margin-bottom: 27px;
}
.ft-tech-item2 {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    align-items: center;
    margin-bottom: 27px;
}
.ft-tech-item-left img {
    width: 100%;
}
.ft-tech-item-right {
    padding: 30px 40px;
    height: 100%;
}
.point-caption {
  background: #ababab;
  width: fit-content;
  margin-bottom: 10px;
  color: #fff;
  font-size: 28px;
}
.point-caption p {
  letter-spacing: .08em;
  line-height: 1.6;
  margin: 0 10px 0 20px;
  font-weight: bold;
}
.ft-tech-item-copy {
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    font-weight: normal;
    margin-top: 45px;
}
.ft-tech-item-copy span {
  font-size: 11px;
  padding-top: 2%;
  display: block;
  text-align: right;
}
.feature-item {
  padding: 0% 10% 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  justify-content: space-evenly;
}
.feature-item-item {
  width: 24%;
  /* margin: 0 3%; */
  font-weight: normal;
  position: relative;
}
.ft-lineup .feature-item-item {
  width: 18%;
}
.feature-item-item p {
  font-size: 14px;
  padding: 10px 0 5px;
}
.feature-item-new {
  position: absolute;
  top: 2%;
  left: 3%;
  border: 1px solid #00a0e9;
  padding: 2.5px 8px;
  background: #fff;
  color: #00a0e9;
  opacity: 0.8;
}
.ft-lineup {
  margin-top: 80px;
}
.feature-main {
    padding: 0% 7% 30px;
}
.feature-main h2 {
  font-size: 18px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  border-bottom: 1px solid #fff;
  padding: 0 5px 5px;
  width: fit-content;
  margin: 0 auto 5px;
}
.feature-main p {
  font-size: 18px;
  text-align: center;
  font-weight: normal;
  color: #fff;
}
.ft-lineup .feature-wrap3 p {
  font-size: 13px;
  text-align: left;
  color: #000;
}
.feature-wrap3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px 0 40px;
}
.feature-main-item {
  width: 24%;
  text-align: center;
  position: relative;
}
.feature-main-item p {
  font-size: 14px;
  padding: 10px 0 5px;
}
.feature-main-item span {
  position: absolute;
  top: 2%;
  left: 3%;
  border: 1px solid #00a0e9;
  padding: 2.5px 8px;
  background: #fff;
  color: #00a0e9;
  opacity: 0.8;
}
.ft-item-item-btn {
  display: block;
  padding: 5px 0;
  font-size: 13px;
  text-align: center;
  margin: 0px auto 20px;
  background-color: #363636;
  color: #fff;
  font-weight: normal;
  width: 60%;
}
.ft-detail .ft-title {
  margin-bottom: 30px;
}
.ft-detail .ft-title-en {
  font-size: 24px;
}
.ft-tech-item {
    margin: 0;
    display: flex;
    /* grid-template-columns: 1fr 1fr; */
    align-items: center;
    padding: 0 18% 14%;
    justify-content: space-between;
}
.ft-tech-item-copy1 {
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.8;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: normal;
}
.footer {
    padding-top: 0;
    margin-top: 0;
}
.pagetop {
  margin: 0px auto;
}
.ft-pc {
    display: initial;
}
.ft-sp {
    display: none;
}

@media screen and (max-width: 768px) {
  .ft-body {
    font-weight: unset;
  }
  .ft-hero-heading {
      padding: 0 15px 2vw;
      margin: auto;
  }
  .ft-hero-copy2 {
    font-size: 4.8vw;
    font-size: 4.4vw;
    font-size: 5.2vw;
    margin-bottom: 3.5vw;
    letter-spacing: .04rem;
    font-weight: bold;
  }
  .ft-hero-copy3 {
    margin-bottom: 0;
    padding-bottom: 0;
    font-size: 3.4vw;
    text-align: center;
    letter-spacing: 0.04em;
    line-height: 1.7;
    font-weight: normal;
  }
  .btn-link {
    margin: 7% 0 0;
    flex-wrap: wrap;
  }
  .btn-link a {
    width: 50%;
    height: 60px;
    font-size: 14px;
  }
  #harfsetup, #longsetup {
    padding: 15px 15px 0;
  }
  #harfsetup .feature-item, #longsetup .feature-item {
    width: 100%;
    padding: 20px 0 0;
  }
  #harfsetup .feature-item-item, #longsetup .feature-item-item {
    width: 48%;
  }
  #harfsetup .ft-hero-copy2, #longsetup .ft-hero-copy2 {
    font-size: 4.8vw;
    position: relative;
    margin-bottom: 6%;
  }
  #harfsetup .ft-hero-copy2::after, #longsetup .ft-hero-copy2::after {
    position: absolute; /*positionをabsoluteに指定*/
    content: "";
    background-color: #eaeaea; /*下線の色*/
    width: 80px; /*線の幅*/
    height: 8px; /*線の太さ*/
    bottom: -25px; /*線のタテ位置*/
    left: 50%;  /*線のヨコ位置*/
    transform: translateX(-50%); /*線のヨコ位置*/
  }
  #harfsetup .ft-hero-copy3, #longsetup .ft-hero-copy3 {
    padding: 0 15px 5px;
    margin-top: 12%;
  }
  #longsetup {
    margin-top: 16%;
    padding-top: 1%;
  }
  #harfsetup {
    /* margin-top: 16%; */
    /* padding-top: 1%; */
  }
  .products {
    padding: 10% 15px 5%;
  }
  .products .ft-hero-copy2 {
    font-size: 4.4vw;
}
  .products-namearea {
    width: 85%;
    font-size: 3.2vw;
    /* letter-spacing: 0.04em; */
    align-items: center;
  }
  .products-namearea-name {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }
  .products-namearea-link {
    padding: 2px 15px;
    margin-left: 10px;
    height: fit-content;
    font-size: 1em;
  }
  .visual-box-2by2 {
    padding: 0 10%;
    margin-bottom: 12vw;
  }
  .style01 {
    margin: 12% 0 8%;
  }
  .style01-products {
    bottom: 2.7%;
    right: auto;
    padding-left: 25px;
    line-height: 1.6;
  }
  .style01-products .products-namearea {
    align-items: center;
    padding-top: 10px;
    width: 80%;
    font-size: 3.4vw;
    letter-spacing: 0rem;
  }
  .style01-products .products-namearea-name {
    flex-direction: column;
    align-items: unset;
  }
  .style02 {
    padding-top: 12%;
  }
  .style02-products {
    left: unset;
    right: 0;
    bottom: 6%;
    padding-right: 25px;
  }
  .style02-products .products-namearea {
    align-items: center;
    padding-top: 10px;
    width: 100%;
  }
  .style02-products .products-namearea-name {
    flex-direction: column;
    align-items: unset;
  }
  .harf-styling {
    bottom: 3.2%;
  }
  .products-caution {
    font-size: 2.8vw!important;
    padding-top: 5px!important;
  }
  .ft-title {
    margin: 10vw auto 8vw;
    padding: 40px 0 0;
  }
  .ft-title-en {
    font-size: 8.7vw;
    margin-bottom: 0;
    font-weight: bold;
    letter-spacing: 0.08em;
  }
  .ft-title-jp {
    font-size: 3.2vw;
  }
  .ft-tech-list, .ft-item {
    padding: 0 15px;
  }
  .ft-tech-item1, .ft-tech-item2 {
    grid-template-columns: 1fr;
    margin-bottom: 0vw;
  }
  .ft-tech-item-right {
    padding: 5.5vw 5vw;
    height: unset;
  }
  .point-caption {
    font-size: 24px;
  }
  .point-caption p {
    letter-spacing: .05em;
  }
  .ft-tech-item-copy {
    font-size: 3.4vw;
    letter-spacing: 0.01em;
    line-height: 1.8;
    padding: 3vw 0 7vw;
    font-weight: normal;
    margin: 0;
  }
  .ft-tech-item-copy span {
    font-size: 3.2vw;
  }
  .lineup-container {
    margin: 0 10%;
  }
  .lineup-container a {
    margin-top: 4%;
    display: flex;
    position: relative;
  }
  .lineup-container p {
    font-size: 14px;
    line-height: 1.6;
  }
  .feature-item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 15px 0;
    width: 90%;
    margin: auto;
  }
  .feature-item-item {
    width: 48%;
    margin: 0;
  }
  .feature-item-item p {
    font-size: 13px;
  }
  .ft-lineup {
    margin-top: 12%;
  }
  .ft-lineup .feature-item-item {
    width: 48%;
  }
  .feature-main {
    padding: 0 15px;
  }
  .feature-main-item {
    width: 48%;
  }
  .feature-main-item p {
    font-size: 3.2vw;
    padding: 10px 0;
  }
  .feature-main-item span {
    padding: 1.5px 6px 1px;
  }
  .ft-item-item-btn {
    font-size: 2.8vw;
  }
  .ft-tech-item {
    padding: 0 12%;
    margin: 14% 0;
  }
  .newera-brand-img .ft-title {
    margin: 6% 0 3% 0;
    padding: 0;
  }
  .newera-brand-img .ft-title-en {
    font-size: 4.8vw;
  }
  .ft-tech-item-copy1.ft-tech-item-text {
    font-size: 3.2vw;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
  footer {
    margin-top:0;
  }
  .ft-pc {
    display: none;
  }
  .ft-sp {
    display: initial;
  }
}
