@charset "UTF-8";
/*******************************************
 *******************************************
 *
 * @File: FlatPro by themeum.
 *
 * This file contains the styling for the actual theme, this
 * is the file you need to edit to change the look of the
 * theme.
 *
 * This files contents are outlined below >>>
 *
 *******************************************
 *******************************************
 *
 * == INDEX PAGE CSS
 *
 * 00 - 00 - common & reset css
 * 01. header
 * 02. hero-area 
 * 03. brand-area
 * 04. service-area
 * 05. portfolio-area
 * 06. testimonial-area
 * 07. faq-area
 * 08. footer-top
 * 09. tabs-area
 * 10. about-area
 * 11. team-area
 * 12. contact-area
 * 13. skill-area
 * 14. pricing-area
 * 15. extra */
/*****************************
 *   00 - common & reset css
 *****************************
 *
 */
.c1 {
  color: #2d3666;
}

.c1-bg {
  background-color: #2d3666;
}

.c1-bo {
  border-color: #2d3666 !important;
}

.c2 {
  color: #222538;
}

.c2-bg {
  background-color: #222538;
}

.c2-bo {
  border-color: #222538 !important;
}

.c3,
#menu ul ul li a:hover,
.single-service.bordered .inner:hover .icon,
.bordered.single-service-2 .inner:hover .icon,
.bordered.single-service-3 .inner:hover .icon,
.single-service.bordered .inner:hover h4,
.bordered.single-service-2 .inner:hover h4,
.bordered.single-service-3 .inner:hover h4,
.single-service-3 .inner:hover .title .icon,
.isotope-menu li.active,
.isotope-menu li:hover,
.single-portfolio .inner .portfolio-img .hover-content .button,
.single-portfolio .inner .portfolio-content h3:hover,
.faq-sidebar li a,
.single-pricing .inner a.button:hover,
.single-pricing-2 .inner a.button:hover,
.single-pricing-2.active .inner a.button {
  color: #4698ff;
}

.c3-bg,
.bg1,
.button,
.hero-slider .owl-dots .owl-dot.active,
.single-service-2:hover .inner,
.single-portfolio .inner .portfolio-img .hover-content,
.faq .single-item.active,
.single-faq h2 span,
.footer_widget .nw_form button,
.tabs-area .tabs-nav li a.active,
.single-team .inner .team-img::after,
.single-pricing.active .inner,
.active.single-pricing-2 .inner,
.single-pricing-2.active .inner .title .price {
  background-color: #4698ff;
}

.c3-bo,
.button,
.single-service.bordered .inner:hover,
.bordered.single-service-2 .inner:hover,
.bordered.single-service-3 .inner:hover,
.testimonial-slider .single-slide,
.tabs-area .tabs-nav li a::after,
.tabs-area .tabs-nav li a.active,
.contact-form input:not([type="submit"]):focus,
.contact-form textarea:focus {
  border-color: #4698ff !important;
}

.trns,
.button,
.button-2,
.nav-column a,
.nav-column span,
.nav-column .right-nav span,
form.search-form,
#menu ul > li > a,
#menu ul ul,
#menu ul ul::after,
#menu ul ul li a,
.hero-slider .owl-dots .owl-dot,
.single-service .inner,
.single-service-2 .inner,
.single-service-3 .inner,
.single-service .inner .title .icon,
.single-service-2 .inner .title .icon,
.single-service-3 .inner .title .icon,
.single-service .inner .title h4,
.single-service-2 .inner .title h4,
.single-service-3 .inner .title h4,
.single-service .inner .content,
.single-service-2 .inner .content,
.single-service-3 .inner .content,
.isotope-menu li,
.single-portfolio .inner .portfolio-img .hover-content,
.single-portfolio .inner .portfolio-content h3,
.faq-sidebar li a,
.single-team .inner .team-img::after,
.contact-form input:not([type="submit"]),
.contact-form textarea {
  -webkit-transition: all 0.3s cubic-bezier(0.84, 0.35, 0.39, 0.74) 0s;
  transition: all 0.3s cubic-bezier(0.84, 0.35, 0.39, 0.74) 0s;
}

* {
  margin: 0;
  padding: 0;
}

a:focus,
a:hover,
a:visited,
input,
input:hover,
input:focus,
input:active,
select {
  text-decoration: none;
  outline: none !important;
}

img {
  max-width: 100%;
}

a,
span {
  display: inline-block;
}

.no-padding {
  padding: 0;
}

.static {
  position: static;
}

.relative {
  position: relative;
}

.bg2 {
  background-color: #f3f6fa;
}

.sp {
  padding-top: 90px;
  padding-bottom: 90px;
}

.spt {
  padding-top: 90px;
}

.spb {
  padding-bottom: 90px;
}

/* preloader css */
.preloader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  height: 100%;
  width: 100%;
  z-index: 99;
  position: fixed;
  top: 0;
  left: 0;
  background: #fff;
  text-align: center;
}

.preloader-spin {
  margin: 0 auto;
  height: 35px;
  width: 35px;
  display: inline-block;
  background: transparent;
  border-radius: 50%;
  border-width: 2px;
  border-style: solid;
  border-color: #d0d0d0 #d0d0d0 #111111 #d0d0d0;
  animation: 1s linear 0s normal none infinite running spinner_preloader;
}

@keyframes spinner_preloader {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(720deg);
  }
}
/* button */
.button {
  font-size: 14px;
  line-height: 40px;
  padding: 0 20px;
  border: 2px solid;
  color: #fff;
  border-radius: 3px;
  font-weight: 400;
}
.button:hover {
  color: #fff;
  background-color: #333;
  border-color: #333 !important;
}
@media only screen and (max-width: 767px) {
  .button {
    font-size: 13px;
    padding: 0 15px;
    line-height: 32px;
  }
}

.button-2 {
  font-size: 14px;
  line-height: 40px;
  padding: 0 20px;
  border: 2px solid;
  color: #fff;
  background-color: transparent;
  border: 2px solid #c1c2c5;
  color: #2d3666;
  border-radius: 3px;
  font-weight: 400;
}
.button-2:hover {
  color: #fff;
  background-color: #333;
  border-color: #333;
}
@media only screen and (max-width: 767px) {
  .button-2 {
    font-size: 13px;
    padding: 0 15px;
    line-height: 32px;
  }
}

.button-3 {
  font-size: 14px;
  line-height: 40px;
  padding: 0 20px;
  border: 2px solid;
  color: #fff;
  border-radius: 3px;
  font-weight: 400;
}
.button-3:hover {
  color: #fff;
  background-color: #333;
  border-color: #333 !important;
}
@media only screen and (max-width: 767px) {
  .button-3 {
    font-size: 13px;
    padding: 0 15px;
    line-height: 32px;
  }
}

/* section title */
.section-title {
  text-align: center;
  font-size: 16px;
  color: #7d91aa;
  font-weight: 300;
  margin-bottom: 30px;
}
.section-title h2 {
  margin: 0 0 5px;
  font-size: 40px;
  font-weight: 700;
  color: #222538;
}
.section-title.white {
  color: #ffffff;
}
.section-title.white h2 {
  color: #fff;
}

/* page-title */
.page-title {
  font-size: 16px;
  color: #7d91aa;
}
.page-title h2 {
  font-size: 50px;
  font-weight: 700;
  color: #fff;
}
.page-title p:last-child {
  margin-bottom: 0;
}

body {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  line-height: 27px;
  font-weight: 400;
  color: #2d3666;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #222538;
}

iframe {
  border: none;
}

.slicknav_menu {
  background-color: #1f2131;
  border-bottom: 1px solid #585757;
}
@media only screen and (min-width: 991px) {
  .slicknav_menu {
    display: none;
  }
}

/*****************************
 *   01. header
 ***************************** */
header {
  background-color: #fff;
  padding: 2px 0;
}

.logo-column a.logo {
  /* height: 35px; */
  height: 83px;
  padding: 5px 0 0 0;
}
.logo-column a.logo img {
  max-height: 100%;
}

.nav-column {
  padding: 5px 0;
  font-size: 16px;
}
.nav-column a,
.nav-column span {
  color: #7286a0;
  line-height: 25px;
  vertical-align: top;
  cursor: pointer;
}
.nav-column a:hover,
.nav-column span:hover {
  color: #b5c3d4;
}
.nav-column .right-nav {
  float: right;
  position: relative;
}
.nav-column .right-nav span {
  padding: 0 15px;
}
.nav-column .right-nav .search-icon.active {
  color: red;
}
.nav-column .right-nav .search-icon.active::before {
  content: "";
}
.nav-column .right-nav .header-social {
  display: inline-block;
}
.nav-column .right-nav .header-social a {
  padding: 0 5px;
  vertical-align: top;
}
#menu,
.right-nav {
  margin-top: 25px;
}
.white {
  color: #fff;
}
form.search-form {
  position: absolute;
  right: 100%;
  top: 50%;
  z-index: 2;
  width: 230px;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
}
form.search-form.active {
  opacity: 1;
  visibility: visible;
}
@media only screen and (max-width: 767px) {
  form.search-form {
    transform: translateY(50%) translateX(0%);
    right: 50%;
    margin-top: 20px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  }
}

form.search-form input {
  border: none;
  width: 100%;
  border-radius: 5px;
  height: 40px;
  text-indent: 20px;
}

form.search-form button {
  border: none;
  right: 0;
  position: absolute;
  top: 0;
  width: 38px;
  background: transparent;
  height: 100%;
}

#menu ul {
  text-align: right;
  margin: 0;
}
#menu ul li.has-child > a::after {
  content: "";
  font-family: "fontawesome";
  margin-left: 4px;
}
#menu ul > li {
  display: inline-block;
  position: relative;
}
#menu ul > li > a {
  padding: 0 15px;
  font-weight: 500;
  line-height: 25px;
}
#menu ul > li > a:hover {
  color: #b5c3d4;
}
#menu ul > li.current-menu-item > a {
  color: #b5c3d4;
}

#menu ul ul {
  position: absolute;
  background-color: #fff;
  left: 0;
  top: calc(100% + 23px);
  z-index: 2;
  width: 220px;
  text-align: left;
  padding: 15px 20px;
  opacity: 0;
  visibility: hidden;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
}
#menu ul ul::after {
  content: "";
  border: 8px solid transparent;
  border-bottom-color: #fff;
  left: 25px;
  top: -16px;
  position: absolute;
}
#menu ul ul::before {
  content: "";
  position: absolute;
  height: 20px;
  width: 100%;
  left: 0;
  top: -20px;
}
#menu ul ul li {
  display: block;
}
#menu ul ul li a {
  display: block;
  font-weight: 300;
  color: #222538;
  font-size: 13px;
  padding: 0;
  margin: 5px 0;
}

#menu ul li:hover > ul {
  opacity: 1;
  visibility: visible;
}

/*****************************
 *   02. hero-area
 ***************************** */
.hero-slider .single-slide {
  /* height: 800px; */
  height: 36vw;
  background-size: 100% 100%;
  background-position: center top;
  /* background-repeat: no-repeat; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  font-size: 24px;
  line-height: 34px;
  font-weight: 300;
  /* align-items: center; */
  position: relative;
}
@media only screen and (max-width: 991px) {
  .hero-slider .single-slide {
    height: auto;
    padding: 60px 30px 100px;
    /* z-index: 1;  */
  }
  .hero-slider .single-slide::after {
    content: "";
    height: 100%;
    width: 100%;
    background-color: #f1f4f9;
    z-index: -1;
    left: 0;
    top: 0;
    position: absolute;
  }
}
@media only screen and (max-width: 767px) {
  .hero-slider .single-slide {
    font-size: 18px;
    line-height: 24px;
    text-align: center;
  }
}
.hero-slider .single-slide h2 {
  font-size: 50px;
  line-height: 67px;
  margin: 0 0 25px;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .hero-slider .single-slide h2 {
    font-size: 30px;
    line-height: 35px;
  }
}
.hero-slider .single-slide .slide-btn {
  margin-top: 50px;
}
.hero-slider .single-slide .slide-btn a:not(:last-child) {
  margin-right: 4px;
}
.hero-slider .owl-dots {
  display: inline-block;
  position: absolute;
  left: 50%;
  bottom: 20px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.hero-slider .owl-dots .owl-dot {
  background-color: #fff;
  display: inline-block;
  width: 20px;
  height: 8px;
  margin: 0 3px;
  border-radius: 30px;
}
.hero-slider .owl-dots .owl-dot.active {
  width: 40px;
}
.hero-slider .owl-nav > div {
  position: absolute;
  left: 0;
  top: 50%;
  height: 40px;
  width: 40px;
  background-color: #fff;
  text-align: center;
  line-height: 40px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.hero-slider .owl-nav > div.owl-next {
  left: auto;
  right: 0;
}

/*****************************
 *   03. brand-area
 ***************************** */
.brand-area {
  padding: 50px 0;
}

.spb .brand-area {
  padding: 0;
}

.single-brand {
  text-align: center;
  margin: 5px 0;
}

/*****************************
 *   04. service-area
 ***************************** */
.single-service,
.single-service-2,
.single-service-3 {
  margin: 15px 0;
}
.single-service .inner,
.single-service-2 .inner,
.single-service-3 .inner {
  background-color: #fff;
  border-radius: 7px;
  padding: 30px;
}
.single-service .inner:hover,
.single-service-2 .inner:hover,
.single-service-3 .inner:hover {
  box-shadow: 2px 2px 25px rgba(0, 0, 0, 0.15);
}
.single-service .inner .title,
.single-service-2 .inner .title,
.single-service-3 .inner .title {
  overflow: hidden;
  margin-bottom: 15px;
}
.single-service .inner .title .icon,
.single-service-2 .inner .title .icon,
.single-service-3 .inner .title .icon {
  float: left;
  font-size: 26px;
}
.single-service .inner .title h4,
.single-service-2 .inner .title h4,
.single-service-3 .inner .title h4 {
  padding-left: 50px;
  font-size: 20px;
  margin: 3px 0 0;
}
.single-service .inner .content,
.single-service-2 .inner .content,
.single-service-3 .inner .content {
  font-weight: 300;
  font-size: 14px;
  color: #2d3666;
  line-height: 26px;
}
.single-service .inner .content p:last-child,
.single-service-2 .inner .content p:last-child,
.single-service-3 .inner .content p:last-child {
  margin-bottom: 0;
}
.single-service.bordered .inner,
.bordered.single-service-2 .inner,
.bordered.single-service-3 .inner {
  border: 1px solid #cad4de;
  box-shadow: none;
}

.single-service-2 {
  text-align: center;
}
.single-service-2 .inner {
  border: 1px solid #cad4de;
  border-radius: 5px;
  padding: 85px 40px;
}
.single-service-2 .inner .content {
  font-size: 16px;
  color: #7288b5;
  margin-top: 25px;
}
.single-service-2 .inner .title {
  text-align: center;
}
.single-service-2 .inner .title .icon {
  float: none;
  display: block;
  font-size: 40px;
  margin-bottom: 30px;
}
.single-service-2 .inner .title h4 {
  padding-left: 0;
}
.single-service-2:hover .inner {
  color: #fff;
}
.single-service-2:hover .inner .content,
.single-service-2:hover .inner .title h4 {
  color: #fff;
}

.single-service-3 {
  margin: 30px 0;
}
.single-service-3 .inner {
  background: transparent;
  padding: 0;
  color: #fff;
}
.single-service-3 .inner:hover {
  box-shadow: none;
}
.single-service-3 .inner .content,
.single-service-3 .inner .title h4 {
  color: #fff;
  padding-left: 100px;
}
.single-service-3 .inner .title h4 {
  font-size: 24px;
}
.single-service-3 .inner .content {
  font-size: 16px;
}
.single-service-3 .inner .title .icon {
  background-color: rgba(255, 255, 255, 0.2);
  width: 70px;
  height: 70px;
  text-align: center;
  line-height: 70px;
  border-radius: 4px;
  position: absolute;
  left: 15px;
  top: 0;
  font-size: 34px;
}
.single-service-3 .inner:hover .title .icon {
  background-color: #fff;
}

/*****************************
 *   05. portfolio-area
 ***************************** */
.isotope-menu {
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
  text-align: center;
  display: block;
  width: 100%;
  font-size: 16px;
  font-weight: 400;
}
.isotope-menu li {
  display: inline-block;
  padding: 0 15px;
  cursor: pointer;
  color: #7286a0;
}

.single-portfolio {
  margin: 20px 0;
}
.single-portfolio .inner .portfolio-img {
  position: relative;
}
.single-portfolio .inner .portfolio-img img {
  width: 100%;
}
.single-portfolio .inner .portfolio-img .hover-content {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  text-align: center;
  opacity: 0;
  visibility: hidden;
}
.single-portfolio .inner .portfolio-img .hover-content .button {
  background-color: #fff;
  border-color: #fff !important;
}
.single-portfolio .inner .portfolio-img .hover-content .button:hover {
  background-color: #222;
  color: #fff;
  border-color: #222 !important;
}
.single-portfolio .inner .portfolio-img:hover .hover-content {
  opacity: 1;
  visibility: visible;
}
.single-portfolio .inner .portfolio-content {
  text-align: center;
  padding-top: 25px;
  color: #6d7784;
}
.single-portfolio .inner .portfolio-content a {
  display: block;
}
.single-portfolio .inner .portfolio-content h3 {
  font-weight: 400;
  margin: 0;
  font-size: 24px;
}

/*****************************
 *   06. testimonial-area
 ***************************** */
.testimonial-area .section-title {
  margin-bottom: 45px;
}

.testimonial-slider .single-slide {
  background-color: #fff;
  padding: 35px;
  border-radius: 5px;
  font-weight: 300;
  color: #7d91aa;
  border: 1px solid;
}
.testimonial-slider .single-slide img {
  width: auto;
}
.testimonial-slider .single-slide .client-info {
  overflow: hidden;
}
.testimonial-slider .single-slide .client-info .client-img {
  /* width: 58px; */
  width: 160px;
  height: 120px;
  float: left;
  margin-right: 15px;
  /* border-radius: 20%; */
  overflow: hidden;
}
.testimonial-slider .single-slide .client-info .client-data {
  padding-left: 78px;
}
.testimonial-slider .single-slide .client-info .client-data h4 {
  font-size: 16px;
  margin: 4px 0 0;
}
.testimonial-slider .owl-nav > div {
  background-color: #222222;
  width: 35px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  color: #fff;
  position: absolute;
  left: -55px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 4px;
}
@media only screen and (max-width: 991px) {
  .testimonial-slider .owl-nav > div {
    left: -12.5px;
    height: 25px;
    width: 25px;
    line-height: 25px;
  }
  .testimonial-slider .owl-nav > div i {
    font-size: 13px;
  }
}
.testimonial-slider .owl-nav > div.owl-next {
  left: auto;
  right: -55px;
}
@media only screen and (max-width: 991px) {
  .testimonial-slider .owl-nav > div.owl-next {
    right: -12.5px;
  }
}

/*****************************
 *   07. faq-area
 ***************************** */
.faq-area .section-title {
  margin-bottom: 60px;
}

.faq {
  padding: 0;
  margin: 0;
  list-style: none;
}
.faq .single-item {
  background-color: #fff;
  padding: 20px;
  padding-left: 50px;
  line-height: 28px;
  font-weight: 700;
  margin-bottom: 10px;
  cursor: pointer;
  border-radius: 4px;
  position: relative;
}
.faq .single-item::after {
  content: "+";
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #222;
  color: #fff;
  position: absolute;
  left: 15px;
  top: 15px;
  text-align: center;
  line-height: 25px;
  font-size: 20px;
}
.faq .single-item.active::after {
  content: "-";
  background-color: #fff;
  color: #222;
}
.faq .single-item.active {
  color: #fff;
}
.faq .single-item.active h4 {
  color: #fff;
}
.faq .single-item h4 {
  font-size: 16px;
  margin: 0;
}
.faq .single-item .content {
  padding-top: 15px;
  font-size: 14px;
  font-weight: 400;
  display: none;
}

.single-faq {
  border: 1px solid #cad4de;
  padding: 35px;
  margin-bottom: 30px;
  border-radius: 5px;
  color: #7d91aa;
  font-size: 14px;
  font-weight: 300;
}
.single-faq h2 {
  font-size: 24px;
  margin-bottom: 20px;
}
.single-faq h2 span {
  height: 40px;
  width: 40px;
  text-align: center;
  line-height: 40px;
  color: #fff;
  border-radius: 4px;
  margin-right: 20px;
}
@media only screen and (max-width: 991px) {
  .single-faq h2 span {
    font-size: 18px;
    line-height: 30px;
    height: 30px;
    width: 30px;
    margin-right: 15px;
  }
}

.faq-sidebar-wrap {
  border: 1px solid #cad4de;
  margin-bottom: 30px;
  padding: 35px;
  border-radius: 4px;
}
@media only screen and (max-width: 991px) {
  .faq-sidebar-wrap {
    padding: 15px;
  }
}
.faq-sidebar-wrap h3 {
  font-size: 20px;
  font-weight: 400;
  margin: 0 0 15px;
}

.faq-sidebar {
  padding: 0;
  list-style: none;
  margin: 0;
}
.faq-sidebar li {
  position: relative;
  padding-left: 20px;
}
.faq-sidebar li a:hover {
  color: #222;
}
.faq-sidebar li span {
  color: #7d91aa;
  position: absolute;
  left: 0;
  top: 0;
}

/*****************************
 *   08. footer-top
 ***************************** */
footer {
  background-color: #272938;
  color: #7286a0;
  line-height: 24px;
}

.footer-top {
  padding: 65px 0;
}
@media only screen and (max-width: 991px) {
  .footer-top {
    padding: 30px 0;
  }
}
.footer-top .media img {
  width: 60px;
}
.footer-top .media img img {
  width: 100%;
}

.footer_widget h5 {
  font-size: 16px;
}

.footer_widget h4,
.footer_widget h5 {
  color: #7286a0;
}

@media only screen and (max-width: 991px) {
  .footer_widget {
    padding: 15px;
  }
}
.footer_widget h4 {
  margin-bottom: 40px;
  font-size: 18px;
}
@media only screen and (max-width: 991px) {
  .footer_widget h4 {
    margin-bottom: 20px;
  }
}
.footer_widget ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer_widget ul li a {
  color: #7286a0;
  padding: 3px 0;
}
.footer_widget .media {
  margin-bottom: 14px;
}
.footer_widget .media h5 {
  margin: 0;
  line-height: 20px;
}
.footer_widget .media a {
  color: #7286a0;
  font-size: 14px;
}
.footer_widget .media span {
  color: rgba(255, 255, 255, 0.4);
  font-size: 12px;
}
.footer_widget .nw_form {
  position: relative;
}
.footer_widget .nw_form input {
  width: 100%;
  display: block;
  background-color: #1f2131;
  border-radius: 3px;
  height: 40px;
  border: 1px solid #1f2131;
  color: #7286a0;
  text-indent: 20px;
}
.footer_widget .nw_form input::-webkit-input-placeholder {
  color: #7286a0;
}
.footer_widget .nw_form input::-moz-placeholder {
  color: #7286a0;
}
.footer_widget .nw_form input:-ms-input-placeholder {
  color: #7286a0;
}
.footer_widget .nw_form input:-moz-placeholder {
  color: #7286a0;
}
.footer_widget .nw_form button {
  position: absolute;
  right: 0;
  top: 0;
  height: 40px;
  border: none;
  color: #fff;
  padding: 0 15px;
  border-radius: 0 3px 3px 0;
}

.footer-bottom {
  background-color: #1f2131;
  padding: 25px 0;
}
.footer-bottom a {
  color: #7286a0;
  padding: 0 10px;
}
@media only screen and (max-width: 991px) {
  .footer-bottom {
    text-align: center;
  }
  .footer-bottom .text-right {
    text-align: center !important;
    margin-top: 5px;
  }
}

/*****************************
 *   09. tabs-area
 ***************************** */
.tabs-area .tabs-nav {
  display: block;
  padding-bottom: 30px;
  overflow: hidden;
}
.tabs-area .tabs-nav li {
  width: 25%;
  padding: 0 12.5px;
  display: inline-block;
  float: left;
  position: relative;
}
@media only screen and (max-width: 991px) {
  .tabs-area .tabs-nav li {
    width: 50%;
    margin-top: -5px;
  }
}
.tabs-area .tabs-nav li a {
  text-align: center;
  color: #222538;
  display: block;
  border-bottom: 2px solid #222538;
  padding: 25px 0;
}
.tabs-area .tabs-nav li a::after {
  content: "";
  border: 10px solid transparent;
  position: absolute;
  top: 100%;
  left: 50%;
  opacity: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.tabs-area .tabs-nav li a i {
  display: block;
  font-size: 24px;
  margin-bottom: 12px;
}
.tabs-area .tabs-nav li a span {
  font-size: 18px;
  font-weight: 700;
}
.tabs-area .tabs-nav li a.active {
  color: #fff;
  border-radius: 5px;
}
.tabs-area .tabs-nav li a.active::after {
  border-bottom-color: transparent !important;
  border-left-color: transparent !important;
  border-right-color: transparent !important;
  opacity: 1;
}

.tabs-area .tab-content {
  border: 1px solid #cad4de;
  padding: 40px;
  border-radius: 4px;
}

/*****************************
 *   10. about-area
 ***************************** */
.about-content {
  color: #7d91aa;
  font-weight: 300;
  margin-top: 25px;
}
@media only screen and (max-width: 991px) {
  .about-content {
    margin-bottom: 20px;
  }
}
.about-content h3 {
  font-size: 24px;
  margin-bottom: 30px;
}
.about-content a.button {
  margin-top: 15px;
}

/*****************************
 *   11. team-area
 ***************************** */
.single-team .inner {
  text-align: center;
}
.single-team .inner .team-img {
  position: relative;
}
.single-team .inner .team-img img {
  width: 100%;
  height: 210px;
}
.single-team .inner .team-img::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
}
.single-team .inner .team-img:hover::after {
  opacity: 0.4;
}
.single-team .inner .team-content {
  padding: 25px 0;
}
.single-team .inner .team-content h4 {
  font-size: 18px;
  font-weight: 400;
}
.single-team .inner .team-content h5 {
  font-weight: 300;
  font-size: 16px;
  color: #7d91aa;
}
.single-team .inner .team-content a {
  display: inline-block;
  color: #7d91aa;
  padding: 2px;
  margin: 0 3px;
  font-size: 16px;
}

/*****************************
 *   12. contact-area
 ***************************** */
@media only screen and (max-width: 767px) {
  .contact-info {
    margin-bottom: 30px;
  }
}
.contact-info .single-info {
  font-size: 16px;
  font-weight: 300;
}
.contact-info .single-info:not(:last-child) {
  margin-bottom: 20px;
}
.contact-info .single-info h5 {
  font-size: 16px;
  font-weight: 500;
  color: #7d91aa;
}
.contact-info .single-info p:last-child {
  margin-bottom: 0;
}
.contact-info .single-info a {
  color: #333;
  display: inline-block;
  margin-right: 8px;
}

.contact-form {
  border: 1px solid #cad4de;
  padding: 40px;
  border-radius: 3px;
}
.contact-form input:not([type="submit"]),
.contact-form textarea {
  border: 1px solid #cad4de;
  width: 100%;
  background-color: #f9fbfd;
  margin-bottom: 30px;
  border-radius: 3px;
  height: 40px;
  text-indent: 20px;
}
.contact-form input:not([type="submit"])::-webkit-input-placeholder,
.contact-form textarea::-webkit-input-placeholder {
  color: #7d91aa;
}
.contact-form input:not([type="submit"])::-moz-placeholder,
.contact-form textarea::-moz-placeholder {
  color: #7d91aa;
}
.contact-form input:not([type="submit"]):-ms-input-placeholder,
.contact-form textarea:-ms-input-placeholder {
  color: #7d91aa;
}
.contact-form input:not([type="submit"]):-moz-placeholder,
.contact-form textarea:-moz-placeholder {
  color: #7d91aa;
}
.contact-form input:not([type="submit"]):focus,
.contact-form textarea:focus {
  outline: none;
  border: 1px solid;
}
.contact-form textarea {
  height: 120px;
  padding-top: 10px;
}

.google-map {
  height: 500px;
  width: 100%;
  display: block;
  background-color: #eee;
}
@media only screen and (max-width: 767px) {
  .google-map {
    height: 280px;
  }
}
.google-map iframe {
  width: 100%;
  height: 100%;
  border: none;
}

/*****************************
 *   13. skill-area
 ***************************** */
.skill-area .container {
  background-color: #1f2131;
  border-radius: 5px;
  padding: 70px 100px;
  color: #fff;
}
@media only screen and (max-width: 991px) {
  .skill-area .container {
    padding: 40px;
  }
}

.skill-title {
  font-size: 16px;
}
@media only screen and (max-width: 991px) {
  .skill-title {
    margin-bottom: 40px;
  }
}
.skill-title h2 {
  color: #fff;
  font-size: 36px;
  font-weight: 400;
}
.skill-title a.button {
  margin-top: 20px;
}

.single-skill {
  margin: 5px 0;
}
.single-skill h4 {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
}
.single-skill .barfiller {
  height: 7px;
  background-color: #8394a7;
  border: none;
  border-radius: 5px;
}
.single-skill .barfiller .fill {
  background-color: #fff !important;
  border-radius: 5px;
}
.single-skill .barfiller .tip {
  right: 0 !important;
  left: auto !important;
  background-color: transparent;
}
.single-skill .barfiller .tip::after {
  opacity: 0;
}

/*****************************
 *   14. pricing-area
 ***************************** */
.single-pricing,
.single-pricing-2 {
  margin: 7.5px 0;
}
.single-pricing .inner,
.single-pricing-2 .inner {
  background-color: #1f2131;
  padding: 35px;
  color: #90a0b2;
  border-radius: 5px;
  font-weight: 300;
}
.single-pricing .inner .title .price,
.single-pricing-2 .inner .title .price {
  width: 85px;
  height: 85px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  background-color: #363950;
  position: absolute;
  right: 35px;
  top: 25px;
  border-radius: 15px;
}
.single-pricing .inner .title .price span,
.single-pricing-2 .inner .title .price span {
  color: #fff;
}
.single-pricing .inner .title .price span:first-child,
.single-pricing-2 .inner .title .price span:first-child {
  font-size: 24px;
  font-weight: 700;
}
.single-pricing .inner h2,
.single-pricing-2 .inner h2 {
  color: #fff;
  margin-bottom: 30px;
  font-size: 24px;
}
.single-pricing .inner ul,
.single-pricing-2 .inner ul {
  list-style: none;
  font-size: 14px;
  line-height: 35px;
  margin: 20px 0;
}
.single-pricing .inner a.button:hover,
.single-pricing-2 .inner a.button:hover {
  background-color: #fff;
  border-color: #fff !important;
}
.single-pricing.active .inner,
.active.single-pricing-2 .inner {
  color: #fff;
}
.single-pricing.active .inner a.button,
.active.single-pricing-2 .inner a.button {
  background-color: #222;
  border-color: #222 !important;
}

.single-pricing-2 .inner {
  text-align: center;
}
.single-pricing-2 .inner .title .price {
  position: static;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  display: inline-flex;
}
.single-pricing-2.active .inner {
  background-color: #1f2131;
  color: #90a0b2;
}
.single-pricing-2.active .inner a.button {
  background-color: #fff;
  border-color: #fff !important;
}

/*****************************
 *   15. extra
 ***************************** */
.single-gallery .inner {
  margin: 15px 0;
  overflow: hidden;
  border-radius: 5px;
}
.single-gallery .inner img {
  width: 100%;
}

.coming-soon {
  background-size: cover;
  background-position: center center;
  padding-top: 70px;
  text-align: center;
}
.coming-soon .coming-soon-box {
  color: #fff;
  padding: 40px;
  border-radius: 5px;
  font-size: 16px;
}
.coming-soon .coming-soon-box h2 {
  font-size: 40px;
  font-weight: 400;
  color: #fff;
  margin: 0 0 20px;
}
.coming-soon .coming-soon-box p {
  margin-bottom: 27px;
}
.coming-soon .coming-soon-logo {
  margin-bottom: 75px;
  display: inline-block;
}

.single-counter {
  display: inline-block;
  width: 100px;
  height: 100px;
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  display: inline-flex;
  margin: 8px;
}
.single-counter span:first-child {
  font-size: 34px;
  display: block;
  font-weight: 600;
}
.single-counter .text {
  font-size: 16px;
  display: block;
}

.error-area {
  background-position: center center;
  background-size: cover;
  text-align: center;
  height: 540px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}
@media only screen and (max-width: 767px) {
  .error-area {
    height: 300px;
  }
}
.error-area h1 {
  font-size: 40px;
  font-weith: 400;
  margin: 0 0 20px;
}

/* ====== 自定义动效与交互样式 ====== */

/* 页面淡入动画 */
body.fade-in {
  animation: fadeInBody 1.2s ease;
}
@keyframes fadeInBody {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* 吸顶导航栏 */
.sticky-nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: linear-gradient(90deg, #4698ff 0%, #2d3666 100%);
  box-shadow: 0 2px 12px rgba(70, 152, 255, 0.08);
  transition:
    background 0.4s,
    box-shadow 0.4s;
}
.sticky-nav .nav-column a,
.sticky-nav .nav-column span {
  color: #fff;
}

/* 公司情报卡片悬停浮动 */
.single-service .inner,
.single-service-2 .inner,
.single-service-3 .inner {
  transition:
    box-shadow 0.3s,
    transform 0.3s;
}
.single-service .inner:hover,
.single-service-2 .inner:hover,
.single-service-3 .inner:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 8px 32px rgba(70, 152, 255, 0.15);
}

/* 会员采访图片悬停放大+按钮渐显 */
.single-portfolio .portfolio-img {
  overflow: hidden;
  position: relative;
}
.single-portfolio .portfolio-img img {
  transition: transform 0.4s cubic-bezier(0.4, 2, 0.6, 1);
}
.single-portfolio .portfolio-img:hover img {
  transform: scale(1.08) rotate(-2deg);
}
.single-portfolio .hover-content {
  opacity: 0;
  transition: opacity 0.4s;
  pointer-events: none;
}
.single-portfolio .portfolio-img:hover .hover-content {
  opacity: 1;
  pointer-events: auto;
}

/* FAQ手风琴美化 */
.faq .single-item {
  cursor: pointer;
  border-radius: 6px;
  margin-bottom: 12px;
  box-shadow: 0 2px 8px rgba(70, 152, 255, 0.06);
  transition: box-shadow 0.3s;
}
.faq .single-item.active {
  box-shadow: 0 4px 16px rgba(70, 152, 255, 0.13);
  /* background: #f3f6fa; */
}
.faq .single-item h4 {
  position: relative;
  padding-right: 32px;
}
.faq .single-item h4::after {
  content: "\f078";
  font-family: "FontAwesome";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  transition: transform 0.3s;
}
.faq .single-item.active h4::after {
  transform: translateY(-50%) rotate(180deg);
}

/* 回到顶部按钮 */
.back-to-top {
  position: fixed;
  right: 32px;
  bottom: 32px;
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #4698ff 60%, #2d3666 100%);
  color: #fff;
  border-radius: 50%;
  box-shadow: 0 4px 16px rgba(70, 152, 255, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.4s,
    transform 0.3s;
  z-index: 1200;
}
.back-to-top.show {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.back-to-top:hover {
  background: linear-gradient(135deg, #2d3666 60%, #4698ff 100%);
  color: #fff;
  transform: scale(1.08);
}

/* ==========================================
   インタビューページ 専用スタイル
========================================== */
.profile-img {
  width: 250px;
  float: right;
  margin-left: 1rem;
  margin-bottom: 1rem;
}

.interview-content section {
  margin-bottom: 3rem;
}

/* メインタイトル */
.interview-content h1 {
  font-size: 2.2rem; /* 以前より大きく調整 */
  font-weight: 700;
  color: #333;
  line-height: 1.4;
}

/* セクション見出し (H2) */
.interview-content h2 {
  font-size: 1.75rem; /* 以前より大きく調整 */
  font-weight: 700;
  color: #222;
  border-bottom: 3px solid #4698ff;
  padding-bottom: 0.6rem;
  margin-bottom: 1.5rem;
}

/* 本文 (P) */
.interview-content p {
  font-size: 1.15rem; /* 読みやすい少し大きめのサイズに変更 (約18.4px相当) */
  line-height: 1.9;
  color: #444;
  margin-bottom: 1.2rem;
}

/* 心に残る言葉（ハイライトボックス） */
.quote-box {
  background-color: #f8f9fa;
  border-left: 5px solid #4698ff;
  padding: 2rem;
  margin: 2.5rem 0;
  border-radius: 0 8px 8px 0;
}

.quote-box h3 {
  font-size: 1.4rem; /* ボックス内の見出しを拡大 */
  color: #222;
  margin-bottom: 1.2rem;
}

.quote-box ul {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

.quote-box li {
  position: relative;
  padding-left: 1.8rem;
  margin-bottom: 1rem;
  font-size: 1.15rem; /* リストの文字も本文に合わせて大きく */
  font-weight: 500;
  color: #333;
  line-height: 1.7;
}

.quote-box li::before {
  content: "“";
  position: absolute;
  left: 0;
  color: #4698ff;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1;
}

.quote-box li::after {
  content: "”";
  position: absolute;
  right: 0;
  color: #4698ff;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1;
}

/* ==========================================
   公益活动区块尺寸统一调整
========================================== */

/* 1. 统一整个幻灯片卡片的高度，并采用弹性盒布局让内部元素对齐 */
.testimonial-slider .single-slide {
  height: 260px; /* 可根据你的实际需求调整这个固定高度 */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
}

/* 2. 统一文字描述区域：限制高度并允许内部对齐，避免因字数不同导致高度塌陷 */
.testimonial-slider .single-slide .inner > p {
  height: 90px; /* 预留约3行文字的高度空间 */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 最多显示3行，超出显示省略号 */
  -webkit-box-orient: vertical;
  margin-bottom: 15px;
}

/* 3. 统一客户端/活动图片容器的尺寸 */
.testimonial-slider .single-slide .client-info .client-img {
  width: 120px !important; /* 统一宽度 */
  height: 80px !important; /* 统一高度 */
  float: left;
  margin-right: 15px;
  overflow: hidden;
  border-radius: 4px; /* 统一圆角（可选） */
}

/* 4. 确保图片填满容器且不变形 */
.testimonial-slider .single-slide .client-info .client-img img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 裁剪多余部分，保持图片不变形 */
}

/* ==========================================
   Service Area / 会社情報 区域卡片对齐优化
========================================== */

/* 1. 让每一列（col-lg-4）使用 Flex 布局，确保同一行的卡片等高 */
.service-area .row {
  display: flex;
  flex-wrap: wrap;
}

.service-area .single-service {
  display: flex;
  margin-bottom: 30px; /* 根据实际间距调整 */
}

/* 2. 统一卡片内部（.inner）的布局，使用 Flex 撑满高度并实现两端对齐 */
.service-area .single-service .inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

/* 3. 统一标题区域（图标 + 标题），防止长标题导致换行数不一致 */
.service-area .single-service .title {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.service-area .single-service .title h4 {
  margin: 0;
  /* 如有必要可限制标题单行显示： white-space: nowrap; overflow: hidden; text-overflow: ellipsis; */
}

/* 4. 统一内容描述区域（.content）的最小高度或自适应填充 */
.service-area .single-service .content {
  flex-grow: 1; /* 让内容区自动填满剩余空间，使底部对齐 */
}

.service-area .single-service .content p {
  margin: 0;
  line-height: 1.6;
}

/* ==========================================
   Welfare Projects Area / 公益プロジェクト 区画の統一調整
========================================== */

/* 1. 让包含项目卡片的行（.row）应用 Flex 布局，并确保同行项目等高 */
.welfare-projects-area .row:nth-of-type(2) {
  display: flex;
  flex-wrap: wrap;
}

.welfare-projects-area .col-md-6.col-lg-4 {
  display: flex;
  margin-bottom: 30px; /* 卡片上下间距 */
}

/* 2. 统一整个项目卡片（.welfare-project-box）的容器：充满高度、纵向排布 */
.welfare-projects-area .welfare-project-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background: #fff; /* 根据你的主题背景调整，确保有背景色 */
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); /* 可选：统一阴影 */
}

/* 3. 统一图片容器的高度与宽度，防止图片原始比例不一导致卡片错落 */
.welfare-projects-area .welfare-project-box .project-img {
  width: 100%;
  height: 220px; /* 固定图片区高度，可按需改为 200px 或 240px */
  position: relative;
  overflow: hidden;
}

/* 4. 确保图片完全覆盖容器且不变形 */
.welfare-projects-area .welfare-project-box .project-img img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 裁剪多余部分，保持图片不变形 */
}

/* 5. 统一文字内容区域（.project-content）：自动填满剩余空间，实现底部对齐 */
.welfare-projects-area .welfare-project-box .project-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  padding: 20px; /* 根据原模板的内边距调整 */
}

/* 6. 统一标题区域与高度限制（可选，防止标题行数过多） */
.welfare-projects-area .welfare-project-box .project-content h4 {
  font-size: 18px;
  line-height: 1.4;
  height: 2.8em; /* 限制约2行的高度，保证标题对齐 */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 10px;
}

/* 7. 统一元信息（日期、地点）样式 */
.welfare-projects-area .welfare-project-box .project-meta {
  margin-bottom: 10px;
  font-size: 14px;
}

/* 8. 统一描述段落的高度，超出部分用省略号或自适应 */
.welfare-projects-area .welfare-project-box .project-content p {
  margin: 0;
  line-height: 1.6;
  font-size: 14px;
  /* 如果希望所有卡片描述行数完全一致，可取消下方注释 */
  /*
  height: 4.8em; 
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  */
}

/* ==========================================
   Welfare Rules Area / 公益活動ガイドライン 区画の統一調整
========================================== */

/* 1. 让包含规则卡片的行（.row）应用 Flex 布局，并确保同行项目等高 */
.welfare-rules-area .row:nth-of-type(2) {
  display: flex;
  flex-wrap: wrap;
}

.welfare-rules-area .col-md-6 {
  display: flex;
  margin-bottom: 30px; /* 卡片上下间距 */
}

/* 2. 统一整个规则卡片（.welfare-rule-box）的容器：充满高度、横向或纵向排布 */
.welfare-rules-area .welfare-rule-box {
  display: flex;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background: #fff; /* 根据你的主题背景调整，确保有背景色 */
  padding: 30px; /* 请根据原模板的内边距调整 */
  border-radius: 8px; /* 可选：统一圆角 */
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); /* 可选：统一阴影 */
}

/* 3. 固定图标区域的宽度，防止因图标变形或挤压布局 */
.welfare-rules-area .welfare-rule-box .welfare-rule-icon {
  flex-shrink: 0;
  margin-right: 20px;
  /* 如需调整图标大小或颜色可在此补充 */
}

/* 4. 统一右侧文字内容区域（.welfare-rule-content）：自动填满剩余空间 */
.welfare-rules-area .welfare-rule-box .welfare-rule-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

/* 5. 统一标题样式与底部间距 */
.welfare-rules-area .welfare-rule-box .welfare-rule-content h4 {
  font-size: 18px;
  margin-bottom: 15px;
  line-height: 1.4;
}

/* 6. 统一列表（ul / li）样式，消除默认边距并优化行高 */
.welfare-rules-area .welfare-rule-box .welfare-rule-content ul {
  margin: 0;
  padding-left: 20px; /* 保留列表圆点缩进 */
}

.welfare-rules-area .welfare-rule-box .welfare-rule-content ul li {
  margin-bottom: 8px; /* 列表项之间的间距 */
  line-height: 1.6;
  font-size: 14px;
}

.welfare-rules-area .welfare-rule-box .welfare-rule-content ul li:last-child {
  margin-bottom: 0;
}
