@import"https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap";
@media screen and (max-width: 767px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff {
    background-position: right -60vw center
  }
}

@media screen and (max-width: 375px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff {
    background-position: right -55vw center
  }
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .blc {
  width: 60%;
  padding-top: 130px
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff .blc {
    width: 70%;
    padding-top: 0
  }
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .comName.lead {
  margin-bottom: 10px;
  font-size: 45px;
  line-height: 1.1em
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .comName.lead span {
  font-size: 30px
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .comName.lead {
    font-size: 5.5vw
  }

  main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .comName.lead span {
    font-size: 4vw
  }
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .btnBlc {
    width: 80%
  }
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .blc .btnBlc a {
  width: 100%
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .ttlBlc02 h1 {
  margin-bottom: 40px
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff .ttlBlc02 h1 {
    margin-bottom: 10px
  }
}

main .kv .slider .swiper-slide.swimmy.ver02.staff .ttlBlc02 p.en {
  font-size: 80px;
  letter-spacing: 2px
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.staff .ttlBlc02 p.en {
    font-size: 40px;
    margin-bottom: 10px
  }
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc {
    padding-top: 24px
  }
}

main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc h1 {
  margin-bottom: 10px
}

main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .btnBlc a {
  margin: 0 auto
}

main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .copy_blc {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px
}

main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .copy_blc .logo {
  width: 20%;
  margin-right: 15px
}

main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .copy_blc .copy {
  margin-bottom: 0
}

@media screen and (max-width: 768px) {
  main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .copy_blc {
    display: block;
    margin-bottom: 10px
  }

  main .kv .slider .swiper-slide.swimmy.ver02.bridal .wrapper .blc .copy_blc .logo {
    text-align: center;
    width: 50%;
    margin: 0 auto
  }
}

main .clmBridal {
  background-image: url(../img/top/img202507/bridal_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 90px 0 120px;
  text-align: center
}

main .clmBridal .wrapper {
  background-color: rgba(249, 255, 239, .94);
  padding: 40px 40px;
  border-radius: 20px;
  box-shadow: 0 0 20px rgba(0, 0, 0, .1)
}

@media screen and (max-width: 768px) {
  main .clmBridal .wrapper {
    width: calc(100% - 6vw);
    margin: 0 auto;
    padding: 6vw 4vw
  }
}

main .clmBridal .flxB {
  display: flex;
  align-items: center;
  flex-direction: row-reverse
}

main .clmBridal .flxB .imgBlc {
  width: 40%;
  text-align: left;
  padding-right: 30px
}

main .clmBridal .flxB .imgBlc .t_right {
  margin-top: 20px
}

main .clmBridal .flxB .txtBlc {
  width: 60%;
  text-align: left
}

main .clmBridal .flxB .txtBlc h3 {
  color: #95db2b;
  font-size: 30px;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  margin-bottom: 30px
}

main .clmBridal .flxB .txtBlc p {
  color: #101010;
  margin-bottom: 15px;
  font-size: 16px
}

main .clmBridal .flxB .txtBlc .btnBlc {
  margin-top: 40px
}

main .clmBridal .flxB .txtBlc .btnBlc a {
  position: relative;
  font-size: 20px;
  line-height: 1.2em
}

main .clmBridal .flxB .txtBlc .btnBlc a span {
  font-size: 25px
}

main .clmBridal .flxB .txtBlc .btnBlc a::before {
  content: "";
  display: inline-block;
  width: 61px;
  height: 36px;
  background-image: url(../img/top/img202507/bridal_logo02.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%)
}

@media screen and (max-width: 768px) {
  main .clmBridal .flxB {
    display: block
  }

  main .clmBridal .flxB .imgBlc {
    width: 100%;
    text-align: left;
    padding-right: 0
  }

  main .clmBridal .flxB .imgBlc img {
    max-width: 70vw
  }

  main .clmBridal .flxB .imgBlc .t_right {
    margin-top: 15px
  }

  main .clmBridal .flxB .imgBlc .t_right img {
    max-width: 50vw
  }

  main .clmBridal .flxB .txtBlc {
    width: 100%;
    text-align: left
  }

  main .clmBridal .flxB .txtBlc h3 {
    line-height: 1.3;
    text-align: left;
    margin-bottom: 15px
  }
}

@media screen and (max-width: 768px)and (max-width: 767px) {
  main .clmBridal .flxB .txtBlc h3 {
    font-size: 7.3vw
  }
}

@media screen and (max-width: 768px)and (max-width: 767px) {
  main .clmBridal .flxB .txtBlc p {
    font-size: 4vw
  }
}

@media screen and (max-width: 768px) {
  main .clmBridal .flxB .txtBlc .btnBlc {
    margin-top: 30px;
    margin: 30px 0
  }
}

@media screen and (max-width: 768px)and (max-width: 767px) {
  main .clmBridal .flxB .txtBlc .btnBlc a {
    font-size: 3.5vw !important;
    line-height: 1.4em;
    width: 100%
  }

  main .clmBridal .flxB .txtBlc .btnBlc a span {
    font-size: 4.5vw
  }

  main .clmBridal .flxB .txtBlc .btnBlc a::before {
    width: 12vw;
    height: 7vw;
    left: 3vw
  }
}

main .clm_company .wrapper table tr th {
  padding: 10px 0
}

main .clm_company .wrapper table tr td {
  padding: 10px 0 10px 65px
}