:root {
  --head: 4.166vw;
  --color: #D32C26;
}

.C-wrap {
  width: 91.666vw;
  margin: 0 auto;
}

.head1 {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 50;
  width: 100%;
  height: var(--head);
  padding: 0 2.083vw;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(0.104vw);
  transition: all ease 0.6s;
}
.scroll .head1{
  background: rgba(0, 0, 0, 0。3);
}
.isback .head1 {
  transform: translateY(-100%);
}

.head1 .logo {
  width: 9.062vw;
}

.C-btn1 {
  height: 2.083vw;
  padding: 0 1.875vw;
  border-radius: 5.156vw;
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(1.145vw);
  color: #fff;
}

.C-btn1 .dot {
  width: 0.416vw;
  height: 0.416vw;
  border-radius: 50%;
  background: var(--color);
  margin-right: 0.416vw;
}

.C-more {
  color: var(--color);
  letter-spacing: 0.056vw;
}

.C-k1 .dot {
  width: 0.781vw;
  height: 0.781vw;
  border-radius: 50%;
  background: var(--color);
  margin-right: 0.729vw;
  flex: none;
}

.C-k1 p {
  color: #1d1d1f;
}

.C-k1.white p {
  color: #fff;
}

.navpill {
  position: fixed;
  left: 50%;
  bottom: 2.083vw;
  transform: translateX(-50%);
  z-index: 60;
  gap: 0.52vw;
}

.navpill .menu {
  position: relative;
  width: 8.75vw;
  height: 2.083vw;
  border-radius: 5.156vw;
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(1.145vw);
  overflow: hidden;
  transition: width ease 0.5s;
}

.navpill .mini {
  width: 100%;
  height: 100%;
  color: rgba(255, 255, 255, 0.5);
}

.navpill .full {
  display: none;
  width: 100%;
  height: 100%;
  gap: 0vw;
  flex-wrap: nowrap;
  transition: all ease 1s;
}

.navpill .full a {
  color: rgba(255, 255, 255, 0.5);
  white-space: nowrap;
}

.navpill .full a:hover {
  color: #fff;
}

.navpill.open .menu {
  width: 35.416vw;
}

.navpill.open .mini {
  display: none;
}

.navpill.open .full {
  display: flex;
  gap: 2.083vw;
}

.navpill .navbar-toggle {
  width: 2.083vw;
  height: 2.083vw;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(1.145vw);
  cursor: pointer;
  flex-direction: column;
}

.navpill .navbar-toggle span {
  display: block;
  width: 0.833vw;
  height: 0.104vw;
  background: #fff;
  margin: 0.104vw 0;
  transition: all ease 0.4s;
}

.navpill.open .navbar-toggle .line-top {
  transform: translateY(0.312vw) rotate(45deg);
}

.navpill.open .navbar-toggle .line-middle {
  opacity: 0;
}

.navpill.open .navbar-toggle .line-bottom {
  transform: translateY(-0.312vw) rotate(-45deg);
}

footer {
  background: #000;
  color: #fff;
}

.foot-w {
  padding: 4.322vw 1.979vw 5.208vw;
}

.foot-w .logo {
  width: 9.062vw;
}

.foot1 {
  width: 61.77vw;
  margin-top: 4.166vw;
  line-height: 1.5;
}

.foot1 li {
  list-style-type: none;
}

.foot1 .a1 {
  margin-bottom: 1.197vw;
  font-weight: 400;
}

.foot1 ul li a {
  display: block;
  opacity: 0.4;
  margin-bottom: 0.625vw;
  color: #fff;
}

.foot1 ul li a:hover {
  opacity: 1;
}

.foot2 .vers {
  margin-top: 3.333vw;
}

.foot2 .vers .item {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 52.031vw;
  padding: 0.26vw 0.833vw;
}

.foot2 .vers .v1 {
  letter-spacing: 0.141vw;
}

.foot2 .vers .v2 {
  color: rgba(255, 255, 255, 0.75);
  margin-left: 1.25vw;
}

.foot2 .vers .pot {
  width: 0.52vw;
  height: 0.052vw;
  transform: rotate(-50deg);
  background: #fff;
}

.foot2 .cont {
  height: 4.583vw;
  margin-top: 2.083vw;
  border-top: 0.052vw solid rgba(255, 255, 255, 0.25);
  border-bottom: 0.052vw solid rgba(255, 255, 255, 0.25);
  position: relative;
}

.foot2 .cont a:nth-child(2) {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.foot3 {
  margin-top: 1.562vw;
  color: rgba(255, 255, 255, 0.6);
}

.foot3 a:hover {
  color: #fff !important;
}

.foot3 .you span {
  margin: 0 0.52vw;
}

.greadert-bg-box {
  background: linear-gradient(1deg, #FFF 0.49%, #22180C 70%);
}

.home1 {
  position: relative;
}

.home1 .sec1 {
  position: sticky;
  left: 0;
  top: 0;
  height: 100vh;
  overflow: hidden;
}

.home1-swiper,
.home1 .swiper-slide {
  height: 100%;
}

.home1 .swiper-slide {
  position: relative;
}

.home1 .swiper-slide .bg {
  position: absolute;
  left: 0;
  top: 0;
}

.home1 .txt {
  position: absolute;
  left: 50%;
  bottom: 8.854vw;
  transform: translateX(-50%);
  color: #fff;
  z-index: 2;
  text-align: center;
}

.home1 .sbtn {
  position: absolute;
  top: 22.552vw;
  width: 2.864vw;
  height: 2.76vw;
  background: rgba(255, 255, 255, 0.14);
  border-radius: 50%;
  cursor: pointer;
  z-index: 3;
  transition: all ease 0.8s;
}

.home1 .sbtn:hover {
  background: rgba(255, 255, 255, 0.4);
}

.home1 .sbtn img {
  width: 0.781vw;
}

.home1 .prev {
  left: 2.864vw;
}

.home1 .next {
  right: 2.864vw;
}

.home1 .sec2 {
  position: relative;
  padding: 29.166vw 0 10.416vw;
}

.home1 .sec2 .intr {
  width: 100%;
  color: #fff;
}

.home1 .sec2 .C-btn1 {
  margin-top: 2.083vw;
}

.home3 {
  position: relative;
  overflow: hidden;
}

.home3 .sec2 {
  position: relative;
  height: 72.5vw;
}

.home3 .robot {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 1;
}

.home3 .robot img {
  max-height: none;
  opacity: 0;
  /* transition: all ease .3s; */
}

.home3 .robot img+img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

.home3 .robot img.on {
  opacity: 1;
}

.home3 .list {
  position: absolute;
  width: 29.166vw;
  z-index: 2;
}

.home3 .list.zuo {
  left: 4.166vw;
  top: 15.572vw;
  gap: 4.166vw;
}

.home3 .list.you {
  right: 3.437vw;
  top: 16.51vw;
  gap: 5.208vw;
  text-align: right;
  align-items: flex-end;
}

.home3 .sec2 .item {
  color: #fff;
  cursor: pointer;
  font-weight: 500;
}

.home3 .sec2 .item p {
  line-height: 1.2;
}

.home3 .sec2 .item p+p {
  margin-top: 0.833vw;
}

.home3 .sec2 .item.on {
 color: #F58D48;
}

.home4 {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #FFFFFF 0%, #F0F0F2 100%);
  padding-top: 8.906vw;
}

.home4 .sub {
  color: #666;
  line-height: 1.6;
  margin-top: 0.729vw;
}

.home4 .sec1 {
  position: relative;
  height: 56.25vw;
  margin-top: 8.437vw;
}

.home4 .sec1 .deco {
  position: absolute;
  right: -2.812vw;
  top: 3.645vw;
  width: 93.229vw;
}

.home4 .deco img {
  width: 100%;
}

.home4 .sec1 .video {
  position: absolute;
  right: -4.01vw;
  top: 0;
  width: 80.416vw;
  mix-blend-mode: darken;
}

.home4 .sec1 .video video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.home4 .sec1 .intr {
  position: absolute;
  left: 10.052vw;
  top: 18.333vw;
  width: 37.031vw;
  z-index: 2;
}

.home4 .sec1 .home4-item {
  margin-top: 4.01vw;
}

.home4-item .t1 {
  color: #111;
}

.home4-item .t2 {
  color: #666;
  line-height: 1.6;
  margin-top: 1.77vw;
}

.home4 .sec1 .home4-item .t2 {
  width: 26.718vw;
}

.home4-item .C-more {
  margin-top: 2.604vw;
}

.home4 .sec2 {
  position: relative;
  /* height: 77.083vw; */
  margin-top: -10.989vw;
}

.home4 .sec2 .deco {
  position: absolute;
  right: -2.812vw;
  top: 30.187vw;
  width: 93.229vw;
}

.home4 .sec2 .pics {
  position: relative;
  height: 33.072vw;
  z-index: 2;
}

.home4 .sec2 .p1 {
  position: absolute;
  left: 0;
  top: 0.104vw;
  width: 79.635vw;
  height: 32.968vw;
}

.home4 .sec2 .p2 {
  position: absolute;
  right: 0;
  top: 0;
  width: 45.937vw;
  height: 33.072vw;
}

.home4 .sec2 .wen {
  position: relative;
  margin-left: 10.052vw;
  margin-top: 17.656vw;
  z-index: 2;
}

.home4 .sec2 .list {
  margin-top: 4.01vw;
  gap: 14.01vw;
}

.home4 .sec2 .home4-item {
  width: 37.031vw;
}

.home4 .sec2 .videos {
  position: relative;
  z-index: 2;
  padding: 9.375vw 4.427vw;
  gap: 3.906vw;
  flex-wrap: nowrap;
}

.home4 .sec2 .videos .item {
  flex: 1;
  height: 18.646vw;
  overflow: hidden;
  background: #000;
  display: block;
}

.home4 .sec2 .videos video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

.home5 {
  position: relative;
  height: 56.25vw;
  overflow: hidden;
  background: #000;
}

.home5 .bglist .item {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity ease 0.8s;
}

.home5 .bglist .item.on {
  opacity: 1;
}

.home5 .bglist .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home5 .mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(148deg, rgba(0, 0, 0, 0.55) 20%, rgba(0, 0, 0, 0) 47%);
}

.home5 .intr {
  position: absolute;
  left: 4.166vw;
  top: 9.947vw;
  width: 37.031vw;
  z-index: 2;
}

.home5 .txtlist {
  position: relative;
  margin-top: 3.645vw;
}

.home5 .txtlist .item {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all ease 0.6s;
}

.home5 .txtlist .item.on {
  opacity: 1;
  visibility: visible;
}

.home5 .txtlist .t1 {
  color: #fff;
}

.home5 .txtlist .t2 {
  color: #fff;
  line-height: 1.6;
  margin-top: 1.25vw;
  width: 26.718vw;
}

.home5 .txtlist .C-more {
  margin-top: 2.604vw;
}

.home5 .ctllist {
  position: absolute;
  right: 5.208vw;
  bottom: 3.437vw;
  gap: 1.041vw;
  z-index: 2;
}

.home5 .ctllist .item {
  position: relative;
  width: 12.083vw;
  height: 6.927vw;
  border-radius: 0.572vw;
  overflow: hidden;
  cursor: pointer;
}

.home5 .ctllist .item.on {
  box-shadow: inset 0 0 0 0.104vw rgba(255, 255, 255, 0.9);
}

.home5 .ctllist .bg {
  position: absolute;
  left: 0;
  top: 0;
}

.home5 .ctllist .item p {
  position: absolute;
  left: 0.885vw;
  bottom: 0.781vw;
  color: #fff;
  letter-spacing: 0.062vw;
  z-index: 2;
}

.home6 {
  position: relative;
  overflow: hidden;
  padding: 7.395vw 0 1.041vw;
  background: #fff;
}

.home6 .deco {
  position: absolute;
  left: 0.989vw;
  top: 4.687vw;
  width: 91.145vw;
}

.home6 .head {
  position: relative;
  z-index: 2;
  width: 97%;
}

.home6 .en {
  color: #1d1d1f;
  width: 10vw;
}

.home6 .k1 {
  color: #111;
  margin-top: 0.729vw;
}

.home6 .sub {
  color: #666;
  line-height: 1.6;
  margin-top: 0.729vw;
}

.home6 .head .C-more {
  margin-top: 7.187vw;
}

.home6 .list {
  position: relative;
  margin-top: 3.281vw;
  z-index: 2;
}

.home6 .item {
  width: 29.427vw;
}

.home6 .item .bg {
  width: 29.427vw;
  height: 18.125vw;
  border-radius: 1.25vw;
  overflow: hidden;
}

.home6 .t1 {
  color: #000;
  margin-top: 1.562vw;
  transition: all ease .3s;
}

.home6 .item:hover .t1 {
  color: rgba(211,44,38,0.5);
}

.home6 .t2 {
  opacity: 0.6;
  margin-top: 0.312vw;
}

.home7 {
  padding: 9.375vw 0 10.416vw;
  background: #fff;
}

.home7 .k1 {
  color: #111;
}

.home7 .sub {
  color: #666;
  line-height: 1.6;
  margin-top: 1.302vw;
}

.home7 .C-more {
  margin-top: 2.343vw;
}

.pageLoading {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  background: #0a0a0a;
}

.pageLoading .inner {
  opacity: 0;
}

.pageLoading .logo {
  width: 11.458vw;
  animation: loadBreath 2s ease-in-out infinite;
}

@keyframes loadBreath {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}

.pageLoading .bar {
  width: 12.5vw;
  height: 0.104vw;
  margin-top: 2.083vw;
  border-radius: 5.156vw;
  background: rgba(255, 255, 255, 0.15);
  overflow: hidden;
}

.pageLoading .fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: 5.156vw;
  background: var(--color);
}

.pageLoading .num {
  margin-top: 0.937vw;
  color: rgba(255, 255, 255, 0.6);
  letter-spacing: 0.104vw;
}

.news1 {
  position: relative;
  height: 47.917vw;
  overflow: hidden;
}

.news1 .bg {
  position: absolute;
  left: 0;
  top: 0;
}

.news1 .mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
  pointer-events: none;
}

.news1 .intr {
  position: absolute;
  left: 6.25vw;
  bottom: 6.875vw;
  z-index: 2;
  color: #fff;
}

.news1 .en {
  width: 2.344vw;
  text-align: center;
}

.news1 .k1 {
  margin-top: 0.26vw;
}

.news1 .sub {
  margin-top: 1.094vw;
  line-height: 1.583;
}

.news2 {
  position: relative;
  overflow: hidden;
  padding: 7.448vw 0 4.115vw;
  background: #fff;
}

.news2 .deco {
  position: absolute;
  left: 4.427vw;
  top: 4.167vw;
  width: 91.192vw;
  pointer-events: none;
}

.news2 .tabs {
  position: relative;
  z-index: 2;
  gap: 1.25vw;
  padding-bottom: 2.5vw;
  border-bottom: 0.052vw solid rgba(0, 0, 0, 0.08);
}

.news2 .tabs .item {
  padding: .3125vw 1.25vw;
  border-radius: 2.604vw;
  color: #071d49;
  transition: all ease 0.3s;
}

.news2 .tabs .item.on,
.news2 .tabs .item:hover {
  background: #E4434C;
  color: #fff;
}

.news2 .list {
  position: relative;
  z-index: 2;
  margin-top: 6.6146vw;
}

.news2 .top {
  position: relative;
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: 26.458vw;
  border-radius: 0.625vw;
  overflow: hidden;
}

.news2 .top .bg {
  position: absolute;
  left: 0;
  top: 0;
}

.news2 .top .bg::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 0.625vw;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.70) 9.13%, rgba(255, 255, 255, 0.00) 46.63%);
}

.news2 .top .info {
  position: relative;
  z-index: 2;
  width: 31.927vw;
  padding: 0 0 5.417vw 3.698vw;
  color: #fff;
}

.news2 .top .t2 {
  margin-top: 1.042vw;
  line-height: 1.5;
}

.news2 .top .date {
  margin-top: 1.042vw;
}

.news2 .items {
  margin-top: 3.125vw;
  gap: 3.125vw;
}

.news2 .items .item {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  gap: 5vw;
  color: #000;
}

.news2 .items .item .pic {
  width: 39.74vw;
  height: 19.635vw;
  border-radius: 1.042vw;
  overflow: hidden;
  flex: none;
}

.news2 .items .item .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news2 .items .item .info {
  width: 46.927vw;
  padding-top: 1.667vw;
}

.news2 .items .item .t2 {
  margin-top: 1.042vw;
  line-height: 1.5;
  height: 6.719vw;
  overflow: hidden;
}

.news2 .items .item .foot {
  margin-top: 1.042vw;
}

.news2 .items .item .more {
  letter-spacing: 0.056vw;
}

.news2 .items .item:hover .t1,
.news2 .items .item:hover .more {
  color: #E4434C;
}

.news2 .pages {
  position: relative;
  z-index: 2;
  margin-top: 5.052vw;
  gap: 1.875vw;
}

.news2 .pages .btn {
  width: 2.083vw;
  height: 2.083vw;
  flex: none;
}

.news2 .pages .nums {
  gap: 1.875vw;
}

.news2 .pages .nums .item {
  width: 2.083vw;
  height: 2.083vw;
  border-radius: 50%;
  color: rgba(0, 0, 0, 0.6);
  transition: all ease 0.3s;
}

.news2 .pages .nums .item.on,
.news2 .pages .nums .item:hover {
  background: #E4434C;
  color: #fff;
}

.news2 .pages .dot {
  color: rgba(0, 0, 0, 0.6);
}

.news3 {
  position: relative;
  padding: 5.573vw 12.604vw 8.333vw 12.5vw;
  background: #fff;
}

.news3 .back {
  gap: 0.677vw;
  margin-bottom: 2.76vw;
  color: #000;
}

.news3 .back .ico {
  width: 2.083vw;
  height: 2.083vw;
}

.news3 .back .ico img {
  width: 100%;
  height: 100%;
}

.news3 .box {
  gap: 4.271vw;
  flex-wrap: nowrap;
  align-items: flex-start;
}

.news3 .main {
  width: 54.167vw;
  flex: none;
}

/* legal page: no sidebar, widen article (main+gap+side) */
body.newsinfo.is-plain .news3 .main,
.news3 .main.main--full {
  width: 74.896vw;
}

.news3 .head h1 {
  color: #000;
  line-height: 1.2;
}

.news3 .meta {
  margin-top: 2.5vw;
  padding-bottom: 0.625vw;
  border-bottom: 0.052vw solid rgba(0, 0, 0, 0.08);
  letter-spacing: 0.056vw;
}

.news3 .wen {
  margin-top: 3.542vw;
  letter-spacing: 0.056vw;
  line-height: 1.5;
  color: #000;
}

.news3 .wen .pic {
  width: 100%;
  height: 24.375vw;
  overflow: hidden;
}

.news3 .wen .pic1 {
  height: 19.167vw;
}

.news3 .wen .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news3 .foot {
  margin-top: 1.875vw;
  padding-top: 1.25vw;
  border-top: 0.052vw solid rgba(0, 0, 0, 0.08);
}

.news3 .share {
  gap: 1.042vw;
}

.news3 .share p {
  letter-spacing: 0.056vw;
}

.news3 .share .icons {
  gap: 0.208vw;
}

.news3 .share .icons a {
  position: relative;
  width: 2.083vw;
  height: 2.083vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

.news3 .share .icons a img {
  width: 2.0833vw;
  height: 2.0833vw;
  transition: opacity 0.4s;
}

.news3 .share .icons a img:last-child {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}

.news3 .share .icons a:hover img:first-child {
  opacity: 0;
}

.news3 .share .icons a:hover img:last-child {
  opacity: 1;
}

.news3 .btns {
  gap: 1.25vw;
}

.news3 .btns .btn {
  width: 7.708vw;
  height: 2.5vw;
  padding: 0 0.417vw 0 1.458vw;
  border-radius: 5.365vw;
  background: #e8e8e8;
  justify-content: space-between;
  letter-spacing: 0.056vw;
  color: #000;
  transition: all ease 0.3s;
}

.news3 .btns .btn i {
  width: 1.771vw;
  height: 1.771vw;
  flex: none;
}

.news3 .btns .btn i img {
  width: 100%;
  height: 100%;
}

.news3 .btns .next img {
  filter: brightness(0);
}

.news3 .btns .btn:hover {
  background: #E4434C;
  color: #fff;
}

.news3 .btns .btn:hover img {
  filter: brightness(0) invert(1);
}

.news3 .side {
  width: 16.458vw;
  flex: none;
}

.news3 .side .list {
  margin-top: 1.667vw;
  gap: 1.667vw;
}

.news3 .side .item {
  display: block;
  color: #000;
}

.news3 .side .pic {
  width: 16.458vw;
  height: 16.458vw;
  border-radius: 0.625vw;
  overflow: hidden;
}

.news3 .side .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news3 .side .t1 {
  margin-top: 0.625vw;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.news3 .side .t2 {
  margin: 0.833vw 0 1.5625vw;
  color: #666;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.news3 .side .item:hover .t1 {
  color: #E4434C;
}

.contact1 {
  position: relative;
  height: 100vh;
  overflow: hidden;
}

.contact1 .bg {
  position: absolute;
  left: 0;
  top: 0;
}

.contact1 .mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1 );
  z-index: 1;
  pointer-events: none;
}

.contact1 .intr {
  position: absolute;
  left: 6.25vw;
  bottom: 6.7188vw;
  z-index: 2;
  color: #fff;
}

.contact1 .en {
  width: auto;
}

.contact1 .k1 {
  margin-top: 0.26vw;
}

.contact1 .sub {
  margin-top: .4167vw;
  line-height: 1.583;
}

.contact2 {
  align-items: flex-start;
  flex-wrap: nowrap;
  gap: 4.948vw;
  padding: 3.333vw 9.375vw 0 8.3333vw;
  background: #fff;
}

.contact2 .cards {
  width: 20.833vw;
  flex: none;
  gap: 1.25vw;
}

.contact2 .card {
  width: 100%;
  padding: 1.302vw 1.719vw;
  border: 0.052vw solid #e8e8e8;
  border-radius: 0.625vw;
}

.contact2 .card .tit {
  line-height: 1.583;
}

.contact2 .card .rows {
  margin-top: 0.833vw;
  gap: 1.25vw;
}

.contact2 .card .row {
  gap: 0.833vw;
  flex-wrap: nowrap;
}

.contact2 .card .row .ico {
  width: 1.875vw;
  height: 1.875vw;
  flex: none;
}

.contact2 .card .row .ico img {
  width: 1.875vw;
  height: 1.875vw;
}

.contact2 .card .row .txt {
  gap: 0.833vw;
}

.contact2 .card .row a,
.contact2 .card .row p {
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.contact2 .sns-card {
  padding: 1.25vw 1.667vw;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.contact2 .sns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  row-gap: 0.833vw;
  margin-top: 0.833vw;
}

.contact2 .sns .item {
  flex-wrap: nowrap;
  gap: 0.625vw;
  height: 2.083vw;
  padding: 0.208vw 0.833vw 0.208vw 0;
}

.contact2 .sns .item .name {
  white-space: nowrap;
}

.contact2 .sns .item:nth-child(2) {
  padding-left: 0.833vw;
}

.contact2 .sns .item .ico {
  width: 1.667vw;
  height: 1.667vw;
  flex: none;
}

.contact2 .sns .item .ico img {
  width: 1.667vw;
  height: 1.667vw;
}

.contact2 .sns .xhs {
  grid-column: 1 / -1;
  width: auto;
}

.contact2 .sns .xhs .names {
  gap: 0.833vw;
  flex-wrap: nowrap;
}

.contact2 .wx {
  gap: 3.021vw;
  margin-top: 0.417vw;
  flex-wrap: nowrap;
}

.contact2 .wx .qr {
  width: 4.375vw;
  height: 4.427vw;
  flex: none;
  overflow: hidden;
}

.contact2 .wx .qr img {
  width: 4.375vw;
  height: 4.427vw;
  object-fit: cover;
}

.contact2 .wx .info {
  color: #666;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.contact2 .map {
  position: relative;
  width: 56.563vw;
  height: 55.332vw;
  flex: none;
}

.contact2 .map > .pic,
.contact2 .map > .pic img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.contact2 .map .spot {
  position: absolute;
  z-index: 2;
}

.contact2 .map .spot.p1 {
  left: 72.34%;
  top: 33.38%;
}

.contact2 .map .spot.p2 {
  left: 76.31%;
  top: 54.35%;
}

.contact2 .map .spot.p3 {
  left: 64.18%;
  top: 69.46%;
}

.contact2 .map .pin {
  display: block;
  width: 2.802vw;
  height: 2.245vw;
  cursor: pointer;
  transform-origin: center bottom;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.contact2 .map .pin img {
  width: 2.802vw;
  height: 2.245vw;
}

.contact2 .map .spot:hover,
.contact2 .map .spot.on {
  z-index: 4;
}

.contact2 .map .spot:hover .pin,
.contact2 .map .spot.on .pin {
  transform: scale(1.06);
}

.contact2 .office {
  position: absolute;
  right: calc(100% + 0.625vw);
  bottom: 0.4vw;
  z-index: 3;
  width: 18.49vw;
  padding: 0.792vw;
  border-radius: 0.792vw;
  background: rgba(245, 141, 72, 0.1);
  backdrop-filter: blur(1.979vw);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(1.042vw, 0.625vw) scale(0.92);
  transform-origin: right bottom;
  transition: opacity 0.4s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.45s;
}

.contact2 .map .spot:hover .office,
.contact2 .map .spot.on .office {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(0, 0) scale(1);
}

.contact2 .office .thumb {
  width: 16.925vw;
  height: 7.821vw;
  border-radius: 0.625vw;
  overflow: hidden;
}

.contact2 .office .thumb img {
  width: 16.925vw;
  height: 7.821vw;
  object-fit: cover;
}

.contact2 .office .t1 {
  margin-top: 0.792vw;
  color: var(--color);
  line-height: 1.5;
}

.contact2 .office .t2 {
  color: #071d49;
  font-size: 0.792vw;
  line-height: 1.5;
}

.contact3 {
  padding: 0 8.333vw 5.3646vw;
  margin-top: -3.125vw;
  background: #fff;
}

.contact3 .C-k1 p {
  color: #666;
}

.contact3 .k1 {
  margin-top: 1.25vw;
  color: #111;
}

.contact3 form {
  margin-top: 2.656vw;
  padding: 2.5vw;
  border: 0.052vw solid #e8e8e8;
  border-radius: 0.625vw;
  background: #fff;
}

.contact3 .lead {
  color: #666;
  line-height: 1.583;
}

.contact3 .fields {
  margin-top: 2.083vw;
}

.contact3 .row {
  gap: 1.25vw;
  flex-wrap: nowrap;
}

.contact3 .row + .row {
  margin-top: 1.25vw;
}

.contact3 .field {
  flex: 1;
  min-width: 0;
}

.contact3 .lab {
  display: block;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.contact3 .head {
  width: 100%;
}

.contact3 .err {
  color: #E4434C;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.contact3 .field input,
.contact3 .msg textarea {
  margin-top: 0.417vw;
  padding: 0.885vw;
  border: 0.052vw solid #e8e8e8;
  background: #fff;
  outline: none;
  box-shadow: none;
  letter-spacing: 0.056vw;
  line-height: 1.5;
}

.contact3 .field input:focus,
.contact3 .msg textarea:focus {
  background: #fff;
  outline: none;
  box-shadow: none;
}

.contact3 .field input:-webkit-autofill,
.contact3 .field input:-webkit-autofill:hover,
.contact3 .field input:-webkit-autofill:focus,
.contact3 .msg textarea:-webkit-autofill,
.contact3 .msg textarea:-webkit-autofill:hover,
.contact3 .msg textarea:-webkit-autofill:focus {
  -webkit-text-fill-color: #000;
  caret-color: #000;
  box-shadow: 0 0 0 1000px #fff inset;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
  transition: background-color 99999s ease-out;
}

.contact3 .field.warn input,
.contact3 .msg.warn textarea {
  border-color: #E4434C;
}

.contact3 .field input {
  height: 3.177vw;
  border-radius: 0.208vw;
}

.contact3 .field input::placeholder {
  color: rgba(0, 0, 0, 0.3);
}

.contact3 .needs {
  margin-top: 1.667vw;
}

.contact3 .checks {
  margin-top: 0.833vw;
  gap: 1.875vw;
}

.contact3 .checks .item {
  gap: 0.625vw;
  cursor: pointer;
  color: #666;
  letter-spacing: 0.056vw;
}

.contact3 .checks input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.contact3 .checks .ck {
  width: 1.042vw;
  height: 1.042vw;
  border: 0.052vw solid #666;
  border-radius: 0.104vw;
  background: #fff;
  flex: none;
  position: relative;
}

.contact3 .checks input:checked + .ck {
  background: #E4434C;
  border-color: #E4434C;
}

.contact3 .checks input:checked + .ck::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 45%;
  width: 0.26vw;
  height: 0.521vw;
  border: 0.104vw solid #fff;
  border-top: 0;
  border-left: 0;
  transform: translate(-50%, -55%) rotate(45deg);
}

.contact3 .msg {
  display: block;
  margin-top: 1.667vw;
}

.contact3 .msg textarea {
  height: 9.74vw;
  margin-top: 16px;
  border-radius: 0.417vw;
  resize: none;
}

.contact3 .msg textarea::placeholder {
  color: #666;
}

.contact3 .submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 3.542vw;
  margin-top: 1.667vw;
  border: none;
  border-radius: 0.208vw;
  background: #E4434C;
  color: #fff;
  font-family: inherit;
  letter-spacing: 0.056vw;
  cursor: pointer;
  transition: opacity ease 0.3s;
}

.contact3 .submit:hover {
  opacity: 0.88;
}

.C-Alert {
  z-index: 200;
}

.C-Alert .alertPop {
  width: 28.125vw;
  padding: 3.125vw 2.5vw 2.5vw;
  border: 0.052vw solid #e8e8e8;
  border-radius: 0.625vw;
  background: #fff;
}

.C-Alert .alertPop .close {
  width: 1.25vw;
  height: 1.25vw;
  top: 1.25vw;
  right: 1.25vw;
  background: #111;
  -webkit-mask: url('/img/close2.svg') no-repeat center / contain;
  mask: url('/img/close2.svg') no-repeat center / contain;
  transition: background-color 0.4s;
}

.C-Alert .alertPop .close:hover {
  background: #E4434C;
}

.C-Alert .alertPop .tips {
  margin-bottom: 1.667vw;
  color: #111;
  font-size: 1.5vw;
  font-weight: 500;
}

.C-Alert .alertPop .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  margin: 0 auto;
  padding: 0 1.667vw;
  height: 3.542vw;
  line-height: 3.542vw;
  border-radius: 0.208vw;
  background: #E4434C;
  color: #fff;
  font-size: 0.938vw;
  cursor: pointer;
  transition: opacity ease 0.3s;
}

.C-Alert .alertPop .btn .dot {
  width: 0.416vw;
  height: 0.416vw;
  border-radius: 50%;
  background: #fff;
  margin-right: 0.416vw;
}

.C-Alert .alertPop .btn:hover {
  opacity: 0.88;
}