@charset "utf-8";

.top-title{
  color:#03436D;
  font-size:clamp(2.5rem, 1.591rem + 3.03vw, 5rem);
  margin-bottom:1.5rem;
}

.fv{
  margin:5rem 0 10rem;
}

.fv-txt{
  display:flex;
  justify-content: center;
  align-items: center;
  margin-bottom:1.5rem;
}

.fv-txt img{
  width:5rem;
}

.fv-txt h1{
  margin-left:1.5rem;
  font-size:clamp(1.5rem, 0.955rem + 1.82vw, 3rem);
  color:#03436D;
  letter-spacing:2px;
}

.fv-swiper img{
  aspect-ratio:1132/ 750;
  object-fit:cover;
  border-radius:40px;
  border:6px solid #03436D;
}

.top-property{
  margin-bottom:10rem;
}

.top-property-title{
  display:flex;
  justify-content: space-between;
  align-items: flex-start;
}

.top-property-title-wrap{
  display:flex;
  align-items: flex-start;
  gap:1rem;
}

.top-property-title-wrap img{
  width:26%;
}

.top-property-title h2{
  font-size:clamp(1.25rem, 0.977rem + 0.91vw, 2rem);
  font-weight:500;
  padding-top: 1rem;
}

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

.top-property .webgene-item a{
  width:100%;
}

.top-property .webgene-blog {
  display: flex;
  gap: 3.5rem 2rem;
  flex-wrap: wrap;
  position: relative;
  z-index: 10;
  margin-top: -1rem;
}

.top-property > .arrow-btn{
  display:none;
}

.top-property .webgene-item {
  width: calc((100% - 6rem) / 4);
}

.top-about{
  max-width:890px;
  margin:0 auto;
  width: 90%;
}

.top-about-wrap{
  display:flex;
  align-items: flex-start;
  justify-content: space-between;
}

.top-about-txt{
  width:47%;
}

.top-about-txt h3{
  font-size:clamp(1.5rem, 1.409rem + 0.3vw, 1.75rem);
  font-weight: 500;
  width: fit-content;
  margin: 0 auto;
}

.top-about-wrap > img{
  width:48%;
}

.top-about-wrap2{
  align-items: flex-end;
  position:relative;
  margin-top: -5rem;
}

.top-about-wrap2::before{
  content:"";
  width:12%;
  display:block;
  aspect-ratio:208/247;
  animation: rotateLoop_1 3s ease-in-out infinite;
  transform-origin: center;
  background:url(https://f-jyuzo.co.jp/system_panel/uploads/images/20260306084447262722.png) no-repeat center/contain;
}

.top-about-wrap2 .arrow-btn{
  margin:0;
}

.top-about-wrap2 .top-about-txt{
  width:calc(100% - 280px - 3.5rem - 12%);
}

.top-about-wrap2 .top-about-txt p{
  line-height:2;
}

.top-service{
  margin:10rem 0 ;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.top-service .top-title{
  font-size:clamp(2.5rem, 1.955rem + 1.82vw, 4rem);
  margin:0;
}

.top-service-item,
.top-service-top{
  width:calc((100% - 2rem ) / 3);
}

.top-service-top{
  text-align:center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.top-service-top img{
  width:110px;
}

.top-service-item{
  background:#E6E2D5;
  padding:1.5rem ;
  text-align:center;
  border-radius:2rem;
  border:3px solid #E6E2D5;
}

.top-service-item h3{
  font-size:clamp(1.25rem, 1.068rem + 0.61vw, 1.75rem);
  margin: 1.5rem 0 1rem;
  font-weight: 500;
}

.top-service-item h3 + p{
  font-size:14px;
}

.top-service-item img{
  width:5rem;
  margin:0 auto 1.5rem;
}

.top-service-p{
  font-size:10px;
  color:#6E90AF;
  display:flex;
  gap:1rem 8px;
  justify-content: center;
  flex-wrap: wrap;
  margin: 1rem 0 2rem;
}

.top-service-p p{
  padding:4px 8px;
  line-height:1;
  border:1px solid #6E90AF;
  border-radius:1rem;
}

.top-service-item .c-arrow-link__icon{
  background: #03436D;
  color: #EEEAE3;
  margin: 0 auto;
}

.top-service-item:hover{
  opacity:1;
  border-color:#03436D;
}

.top-service-item:hover .c-arrow-link__iconImg {
  animation: arrowAnime .5s;
}

.top-work{
  margin:220px 0 80px;
  position:relative;
}

.top-work::before{
  content:"";
  position:absolute;
  width: 16%;
  aspect-ratio: 178 / 98;
  right: 24%;
  top: 40%;
  z-index: 10;
  animation: headShakeLoop 3s ease-in-out infinite;
  transform-origin: center;
  background:url(https://f-jyuzo.co.jp/system_panel/uploads/images/20260305174451652664.png) no-repeat center/contain;
}

.top-work::after{
  content:"";
  position:absolute;
  width: 11%;
  aspect-ratio: 249 / 162;
  left: 27%;
  bottom: 18%;
  z-index: 10;
  animation: bounceYLoop 3s ease-in-out infinite;
  background:url( https://f-jyuzo.co.jp/system_panel/uploads/images/20260305174451130592.png) no-repeat center/contain;
}

.top-work .top-title{
  width:fit-content;
  margin:0 auto 1.5rem;
  position:relative;
}

.top-work .top-title::before{
  content:"";
  position:absolute;
  width: 32%;
  aspect-ratio: 103 / 170;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  bottom: 0%;
  z-index: -1;
  background:url( https://f-jyuzo.co.jp/system_panel/uploads/images/20260305174936750246.png) no-repeat center/contain;
}

.top-work .container{
  width:100%;
}

.top-work-img{
  position:relative;
}

.top-work .btn{
  margin:3.5rem 0 0 auto;
}

.fv + .header-bottom{
  display:none;
}


@media screen and (max-width: 1600px) {
  .fv-txt img {
    width: 4rem;
  }
}

@media screen and (max-width: 1400px) {
  .top-service-item, .top-service-top {
    width: calc((100% - 1rem) / 2);
  }
}

@media screen and (max-width: 1279px) {
  .top-property .webgene-item {
    width: calc((100% - 2rem) / 2);
  }
  .top-property .webgene-blog{
    margin-top: -0.5rem;
  }
  .fv + .header-bottom{
    display:block;
    margin: 0rem auto 5rem;
    max-width: 500px;
  }
  .fv {
    margin: 5rem 5% 5rem;
  }
  .top-property{
    margin: 0 5% 10rem;
  }
  .top-service {
    margin: 10rem 5%;
  }
  .top-work .container {
    width: 90%;
  }
}

@media screen and (max-width: 1024px) {
  .top-about-wrap2::before{
    position: absolute;
    top: 90%;
    width: 15%;
    left: 5%;
  }
  .top-about-wrap2{
    margin-top: -3rem;
    flex-direction: column;
    align-items: flex-start;
  }
  .top-about-wrap2 .top-about-txt {
    width: 100%;
  }
  .top-about-wrap2 .arrow-btn{
    margin: -1rem 0 0 auto;
  }
}


@media screen and (max-width: 767px) {
  .fv-txt img {
    width: 2.5rem;
  }
  .fv-txt{
    margin-bottom:1rem;
  }
  .fv-txt h1{
    text-align: center;
    margin-left: 0.5rem;
  }
  .fv-swiper img{
    border-radius: 20px;
    border: 4px solid #03436D;
  }
  .top-property .webgene-item {
    width: 100%;
  }
  .top-property .webgene-blog{
    gap: 40px;
  }
  .top-property-title{
    flex-direction: column;
    gap: 2.5rem;
  }
  .top-property-title .arrow-btn{
    display:none;
  }
  .top-property > .arrow-btn{
    display:flex;
    margin: 2rem 0 0 auto;
  }
  .top-about-wrap{
    flex-direction: column;
    gap: 1rem;
  }
  .top-about-txt {
    width: 100%;
  }
  .top-about-wrap > img {
    width: 75%;
    margin: 0 0 0 auto;
  }
  .top-about-txt h3{
    margin:0;
  }
  .top-title{
    margin-bottom: 0.5rem;
  }
  .top-about-wrap2{
    margin-top: 1rem;
    gap: 2rem;
  }
  .top-about-wrap2 .arrow-btn {
    margin: 0rem 0 0 auto;
  }
  .top-about-wrap2::before {
    left: 0;
    width: 4rem;
    top: 80%;
  }
  .top-property {
    margin: 0 5% 5rem;
  }
  .top-service-item, .top-service-top {
    width: 100%;
  }
  .top-service {
    margin: 5rem 5%;
    gap: 2rem;
  }
  .top-work {
    margin: 100px 0 60px;
  }
  .top-work::after{
    bottom: 30%;
  }
  .top-work::before{
    top:30%;
  }
}