@charset "utf-8";

.gjs-dashed .fv::before,
.gjs-dashed .fv::after, 
.gjs-dashed .fv-img,
.gjs-dashed .fv-txt{
  opacity:1;
  filter:blur(0px);
}

body:has(.fv) .cta{
  display:none;
}

.fv{
  overflow: hidden;
  height:100vh;
  padding:0 5% 4rem;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  position:relative;
  z-index:1;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260804163454116382.png) no-repeat center/cover;
}

.fv::before{
  content:"";
  position:absolute;
  width:41%;
  aspect-ratio:1587/1748;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260804164633430642.png) no-repeat center/contain;
  left:1%;
  bottom:0%;
  z-index:-1;
  opacity:0;
  transform:translate(-12%,25%) rotate(-8deg) scale(.85);
  filter:blur(8px);

  transition:
    opacity 1.2s ease,
    transform 1.6s cubic-bezier(.22,1,.36,1),
    filter 1.2s ease;
}

.fv::after{
  content:"";
  position:absolute;
  width:41%;
  aspect-ratio:1543/1606;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260804165104643922.png) no-repeat center/contain;
  left:34%;
  top:0;
  z-index:-1;
  opacity:0;
  transform:translate(12%,-25%) rotate(8deg) scale(.85);
  filter:blur(8px);

  transition:
    opacity 1.2s ease .15s,
    transform 1.6s cubic-bezier(.22,1,.36,1) .15s,
    filter 1.2s ease .15s;
}

.fv.fadeUp::before{
  opacity:1;
  transform:translate(0,0) rotate(0) scale(1);
  filter:blur(0);
}

.fv.fadeUp::after{
  opacity:1;
  transform:translate(0,0) rotate(0) scale(1);
  filter:blur(0);
}

.fv-img{
  width:60%;
  opacity:0;
  transform:translateY(60px) scale(.96);
  filter:blur(5px);

  transition:
    opacity 1s ease .8s,
    transform 1.4s cubic-bezier(.22,1,.36,1) .8s,
    filter 1s ease .8s;
  display: flex;
  position: relative;
  justify-content: end;
  aspect-ratio: 1038 / 900;
  flex-direction: column;
  align-items: end;
}

.fv-img .fv1{
  width: 43%;
  position: absolute;
  left: 0;
  top: 0;
  aspect-ratio: 445 / 397;
  clip-path: polygon(23% 0, 100% 0, 78% 100%, 0 100%);
  object-fit: cover;
}

.fv-img .fv2{
  width: 75%;
  aspect-ratio: 777 / 693;
  clip-path: polygon(23% 0, 100% 0, 78% 100%, 0 100%);
  object-fit: cover;
}

.fv.fadeUp .fv-img{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}

.fv-txt{
  width:40%;
  padding-bottom:6rem;
  opacity:0;
  transform:translate(40px,40px);

  transition:
    opacity 1s ease 1.35s,
    transform 1.3s cubic-bezier(.22,1,.36,1) 1.35s;
}

.fv.fadeUp .fv-txt{
  opacity:1;
  transform:translate(0,0);
}

.fv-list{
  display: flex;
  gap: 1rem;
}

.fv-list img{
  height:50px;
  width:auto;
}

.fv-txt h1{
  font-size:clamp(2rem, 1rem + 3.33vw, 5rem);
  margin:2rem 0;
  line-height: calc(96 / 80);
}

.fv-txt h1 + p{
  font-size:clamp(1rem, 0.917rem + 0.28vw, 1.25rem);
}

.top-title h2{
  font-size:1rem;
  color:#B9B9B9;
  margin: 0;
}
.top-title h2::before{
  border-color:#B9B9B9;
}

.top-title h2::first-letter{
  font-size:1.25rem;
}

.lower-title-p{
  color:#B9B9B9;
}

.lower-title-p::before{
  background:#B9B9B9;
}

.top-about .value-wrap{
  position: relative;
}

.top-about:not(.top-value) .value-wrap{
  padding-top: 200px !important;
  z-index: 1;
}

.top-about .value-left {
  width: 67%;
}

.top-about .value-left .arrow-btn{
  margin:4rem 0 0;
}

.top-about .value-right{
  position: absolute;
  right:0;
  top:0;
  width: 39%;
  z-index: -1;
}

.top-about-img-main{
  position: absolute;
  right: -5%;
  width: 82%;
  top: 100px;
  clip-path: polygon(28% 0, 100% 0, 64% 100%, 0 100%);
  object-fit: cover;
  aspect-ratio: 429 / 661;
}

.fv-bottom{
  margin:0;
  padding:0 0 10rem;
  background:#fff;
}

.top-gray-bg{
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260804155958644650.png) no-repeat center/cover;
}

.choose{
  padding:180px 0 5rem;
  margin: 0;
}

.choose .lower-title{
  position: relative;
  z-index: 100;
}

.choose .value-left {
  width: 56%;
}

.choose .value-wrap{
  align-items: flex-start;
}

.choose-item{
  padding:2rem 2.5%;
  border-top:1px solid #000000;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.choose-item:last-child{
  border-bottom:1px solid #000000;
}

.choose-item img{
  width: 110px;
  border-radius: 999vh;
  box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.16);
}

.choose-txt{
  width:calc(100% - 135px);
}

.choose h3{
  font-size: clamp(1.125rem, 0.667rem + 1.53vw, 2.5rem);
  margin-bottom:1.5rem;
}

.choose .value-right{
  position: relative;
  right: auto;
  top: auto;
  width: 40%;
  z-index: 1;
}

.choose .value-right .top-about-img-sub{
  position: absolute;
  top: -180px;
  z-index: -1;
  width: 110%;
  right: 0;
}

.choose .value-right .top-about-img-main{
  width: 92%;
  right: 0;
  top: 5rem;
  aspect-ratio: 565 / 728;
  clip-path: polygon(25% 0, 100% 0, 75% 100%, 0 100%);
}

.choose-txt h4{
  font-size:clamp(1.125rem, 0.833rem + 0.97vw, 2rem);
  margin-bottom:8px;
}

.top-service{
  padding-bottom:0;
  margin-bottom:0;
}

.top-service h3{
  font-size: clamp(1.125rem, 0.667rem + 1.53vw, 2.5rem);
}

.top-service-title-wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 2rem;
}

.top-service-title-wrap .arrow-btn{
  margin:0;
}

.top-service-bg{
  padding:5rem 0;
  background:rgba(47,47,47,0.8);
  position:relative;
  z-index:1;
  margin-top:5rem;
}

.top-service-bg::before{
  content:"";
  position:absolute;
  width:100%;
  height:100%;
  top:0;
  right:0%;
  z-index:-1;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260803180322487440.png) no-repeat center/cover;
}

.top-service-bg .container{
  max-width: none;
}

.service.strengh .top-service-bg .why-wrap{
  gap: 100px 4rem;
  margin-top: 0;
  width:100%;
  max-width: none;
}

.service.strengh .top-service-bg .why-item {
  background: transparent;
  min-height: auto;
  width: calc((100% - 4rem) / 2);
  padding: 0;
  align-items: end;
  position: relative;
}

.service.strengh .top-service-bg .why-item::before {
  content:"";
  position:absolute;
  width:70%;
  height:1px;
  background:#FFFFFF;
  bottom:0;
  right:0;
}

.service.strengh .top-service-bg .why-item img{
  position: relative;
  left: auto;
  bottom: auto;
  width: 52%;
  aspect-ratio: 382 / 215;
  clip-path: polygon(11% 0, 100% 0, 89% 100%, 0 100%);
  object-fit: cover;
}

.service.strengh .top-service-bg  .strengh-txt{
  width: 48%;
  padding: 0 0 1rem 1rem;
}

.top-value{
  padding:7.5rem 0 240px;
  position:relative;
  z-index:1;
  margin:0;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260803165750416475.png) no-repeat center/cover;
}

.top-value::before{
  content:"";
  position:absolute;
  width:14%;
  aspect-ratio:270/388;
  top:0;
  right:30%;
  z-index:-1;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260803171023989185.png) no-repeat center/cover;
}

.top-value::after{
  content:"";
  position:absolute;
  width:14%;
  aspect-ratio:270/388;
  bottom:0;
  right:10%;
  z-index:-1;
  background:url(https://pulsegiken.co.jp/system_panel/uploads/images/20260803171023989185.png) no-repeat center/cover;
}

.top-value .value-left{
  padding-top:140px;
}

.top-value .lower-title h2,
.top-value .lower-title-p{
  color:#DDDDDD;
}

.top-value .top-title h2::before{
  border-color:#DDDDDD;
}

.top-value .lower-title-p::before{
  background:#DDDDDD;
}

.top-value .value-right{
  width: 43.5%;
  right: -5%;
}

.top-value .value-right img{
  aspect-ratio: 382 / 215;
  clip-path: polygon(11% 0, 100% 0, 89% 100%, 0 100%);
  object-fit: cover;
}

.top-value .value-left {
  width: 58%;
}

.top-news {
  margin:0;
}

.top-news .faq-wrap{
  flex-direction: column;
}

.newsItem a{
  display: flex;
  align-items: center;
  gap: 1rem 3rem;
  flex-wrap:wrap;
  padding:2rem 5%;
  border-bottom:1px solid #000000;
}

.newsItemText{
  display: flex;
  align-items: center;
  gap: 3rem;
}

.top-news h3{
  font-size:clamp(1rem, 0.833rem + 0.56vw, 1.5rem);
}

.top-news .arrow-btn{
  margin-top:5rem;
}

.newsItemTime{
  font-family: "Shippori Mincho", serif;
  font-size:clamp(1rem, 0.833rem + 0.56vw, 1.5rem);
}

.newsItemCate{
  display: block;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 14px;
  padding: 11px ;
  position: relative;
  border-radius: 3px;
  background-image: linear-gradient(#6e6e6e, #373737);
  box-shadow: 0px 6px 10px rgba(0, 0, 0, 0.16);
  min-width: 120px;
}

.top-news .faq-right{
  max-width:none;
  width: 100%;
}

@media screen and (max-width: 1600px) {
  .top-about .value-right {
    right: -10%;
    justify-content: flex-start;
  }
  .fv-txt{
    padding-bottom:0;
  }
  .fv{
    padding: 0 2.5% 4rem 5%;
  }
  .choose-item img {
    width: 92px;
  }
  .choose-txt {
    width: calc(100% - 110px);
  }
  .strengh .strengh-txt h3 {
    margin-bottom: 0.5rem;
  }
  .top-value {
    padding: 5rem 0 120px;
  }
}

@media screen and (max-width: 1400px) {
  .newsTextWrap{
    width:100%;
  }
  .fv {
    padding: 0 2.5% 3rem;
  }
  .top-service-bg .container{
    width:90%;
  }
}

@media screen and (max-width: 1280px) {

}
@media screen and (max-width: 1279px) {
  .fv{
    height: 600px;
  }
  .fv-list img {
    height: 32px;
  } 
  .fv-txt h1 {
    font-size: 2.5rem;
    margin: 1rem 0;
  }
  .fv-txt h1 + p {
    font-size: 14px;
  }
}

@media screen and (max-width: 1024px) {
  .top-about .value-left {
    width: 100%;
  }
  .top-about:not(.top-value) .value-wrap {
    padding-top: 300px !important;
  }
  .choose{
    position: relative;
  }
  .choose .value-right {
    position: inherit;
    width: 100%;
    aspect-ratio: auto;
  }
  .choose .value-right .top-about-img-sub{
    top: 0;
    width: 45%;
  }
  .choose .value-right .top-about-img-main {
    width: 33%;
    right: 0;
    top: 2rem;
  }
  .choose .value-left {
    width: 100%;
    position: relative;
    z-index: 100;
  }
  .choose {
    padding: 400px 0 0rem;
  }
  .service.strengh .top-service-bg .why-item{
    flex-direction: column;
    gap: 2rem;
  }
  .service.strengh .top-service-bg .why-item img,
  .service.strengh .top-service-bg .why-item::before,
  .top-news .faq-right{
    width:100%;
  }
  .service.strengh .top-service-bg .strengh-txt {
    width: 100%;
    padding: 0 0 1rem;
  }
  .fv-list img {
    height: 28px;
  }
  .fv-txt h1 {
    font-size: 2rem;
    margin: 1rem 0 0.5rem;
  }
  .fv-img {
    margin-bottom: auto;
    margin-top: 120px;
  }
  .top-service-title-wrap{
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .top-service-title-wrap .arrow-btn {
    margin: 0 0 0 auto;
  }
}


@media screen and (max-width: 767px) {
  .top-about .value-right {
    right: 0%;
    width: 50%;
    max-width: 170px;
  }
  .top-about-img-main {
    right: -5%;
    width: 90%;
    top: 2rem;
  }
  .service.strengh .top-service-bg .why-item{
    width:100%;
  }
  .fv {
    height: auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.5rem;
    padding: 0 5% 3rem;
  }
  .fv-img{
    margin-top: 5rem;
    width: 100%;
  }
  .fv-txt{
    width: 100%;
  }
  .fv-list img {
    height: 25px;
  }
  .fv-list{
    gap:0.5rem;
  }
  .top-about:not(.top-value) .value-wrap {
    padding-top: 280px !important;
  }
  .top-about .value-left .arrow-btn {
    margin: 2rem auto 0;
  }
  .fv-bottom{
    padding: 0 0 4rem;
  }
  .choose .value-right .top-about-img-main {
    width: 37%;
    right: 0;
    top: 2rem;
    max-width: 140px;
  }
  .choose .value-right .top-about-img-sub {
    top: 0;
    width: 45%;
    max-width: 170px;
  }
  .choose {
    padding: 240px 0 0rem;
  }
  .top-title{
    transform: translateX(1rem);
  }
  .choose-item img {
    width: 4rem;
  }
  .choose-item{
    flex-direction: column;
    gap: 1.5rem;
  }
  .choose-item img {
    width: 5rem;
  }
  .choose-txt {
    width: 100%;
  }
  .service{
    padding: 2rem 0 0;
    margin: 2rem 0 0;
  }
  .service.strengh .top-service-bg .why-wrap {
    gap: 2rem;
  }
  .top-service-bg::before{
    display:none;
  }
  .service.strengh .top-service-bg .why-item{
    gap:1rem;
  }
  .top-service-bg{
    padding: 3rem 0;
    margin-top: 3rem;
  }
  .top-value::before{
    width: 30%;
    right:0;
  }
  .top-value {
    padding: 3rem 0 4rem;
  }
  .top-value::after{
    width:20%;
    right:0;
  }
  .newsItem a{
    gap: 0.5rem 0rem;
    padding: 1rem 5%;
  }
  .newsItemText{
    gap:1rem;
  }
  .newsItemCate{
    font-size: 12px;
    padding: 8px;
    min-width: 100px;
  }
  .contact {
    padding: 4rem 0 0;
  }
  .contact-title{
    padding: 2rem 5%;
    background-position:left center;
  }
  .contact-bg{
    padding: 2rem 5%;
  }
  form .row{
    padding: 0 0 1.5rem;
  }
  .fileCaution{
    font-size:12px;
  }
  .fv::before{
    width: 76%;
    left: -10%;
    aspect-ratio: 577/1128;
    background:url( https://pulsegiken.co.jp/system_panel/uploads/images/20260805191505219426.png ) no-repeat center/contain;
  }
  .fv::after{
    aspect-ratio: 522/1109;
    left: auto;
    width:70%;
    right:0;
    background:url( https://pulsegiken.co.jp/system_panel/uploads/images/20260805191505554756.png ) no-repeat center/contain;
  }
}