html {
	font-size: clamp(7.5px, 0.522vw, 10px)
}
:root {
--theme_color:#003e8b;
--title_color:#161616
}
* {
	margin: 0px;
	padding: 0px;
	box-sizing: border-box
}
.global_banner {
	position: relative;
	z-index: 2
}
.global_banner::before {
	width: 62.1875%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	background-image: linear-gradient(to right, rgb(4,15,22) 40%, transparent);
	opacity: 0.24;
	content: "";
	z-index: -1;
	pointer-events: none
}
.global_banner::before {
	opacity: 0.34
}
body > section {
	position: relative
}
body > section:hover {
}
@media screen and (max-width:768px) {
.global_banner::before {
	width: 100%;
	display: block;
	background-color: rgb(0,4,7)
}
}
.content {
	max-width: 1300px;
	margin: 0px auto;
	position: relative
}
@media screen and (min-width:768px) and (max-width:1220px) {
.content {
	padding: 0px 2rem
}
}
@media screen and (min-width:768px) and (max-width:1024px) {
.content, .swiper_content, .header_content {
	max-width: 896px
}
}
@media screen and (min-width:768px) and (max-width:896px) {
.content, .swiper_content, .header_content {
	max-width: 768px
}
}
@media screen and (max-width:768px) {
.content, .header_content {
	padding: 0px 20px
}
}
.flex {
	display: flex
}
.flex_middle {
	align-items: center
}
.global_banner .flex {
	height: 100vh;
	min-height: max-content;
	max-height: 82.2rem;
	padding: 4rem 0px
}
@media screen and (max-width:768px) {
.global_banner .flex {
	height: auto;
	min-height: unset;
	max-height: unset;
	padding: 4rem 0px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.global_banner .flex {
	padding: 5rem 0px 4rem
}
}
.global_banner .head {
	max-width: 69.5rem;
	color: rgb(255,255,255);
	padding-top: 2px
}
.global_banner .head {
	padding-top: 0.3rem
}
@media screen and (max-width:768px) {
.global_banner .head {
	max-width: unset;
	padding: 0px
}
}
.head h1 {
	font-size: 6.1rem;
	line-height: 7rem;
	font-weight: 400
}
.fadeInLeft {
	animation-name: fadeInLeft
}
@media screen and (max-width:768px) {
.head h1 {
	font-size: 25px;
	line-height: 1.5;
	letter-spacing: unset;
	word-spacing: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head h1 {
	font-size: 34px;
	line-height: 1.5
}
}
.global_banner p {
	font-size: 1.6rem;
	line-height: 2.8rem;
	opacity: 0.85;
	margin-top: 3.3rem
}
.global_banner p {
	margin-top: 3.5rem
}
@media screen and (max-width:768px) {
.head .desc, .head p {
	font-size: 0.9rem;
	line-height: 1.5rem;
	margin-top: 10px;
	letter-spacing: unset;
	word-spacing: unset;
	max-width: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .desc, .head p {
	font-size: 16px;
	line-height: 1.5;
	margin-top: 12px
}
}
a {
	color: inherit;
	font-size: inherit;
	text-decoration: none
}
.btn {
	display: inline-block;
	text-align: center;
	background-color: var(--theme_color);
	border-radius: 6px;
	padding: 1.85rem 4.75rem;
	font-size: 1.8rem;
	font-weight: 700;
	color: rgb(255,255,255);
	border: 2px solid var(--theme_color);
	position: relative;
	z-index: 2;
	transition: 0.4s;
	overflow: hidden;
	cursor: pointer
}
.btn::before {
	width: 0px;
	height: 100%;
	right: 0px;
	top: 0px;
	background-color: rgb(255,255,255);
	position: absolute;
	content: "";
	z-index: -1;
	transition: 0.3s
}
.btn:hover {
	color: var(--theme_color)
}
.btn:hover::before {
	width: 100%;
	right: unset;
	left: 0px
}
.global_banner .btn {
	margin-top: 4rem;
	padding: 1.85rem 4.1rem
}
@media screen and (max-width:768px) {
.head .btn, .head .btn_line {
	margin-top: 20px
}
}
@media screen and (max-width:768px) {
.btn, .btn_line {
	font-size: 14px;
	padding: 10px 1.2rem;
	line-height: 1.5
}
}
@media screen and (max-width:768px) {
.global_banner .btn {
	padding: 10px 1.2rem
}
}
@media screen and (max-width:768px) {
.global_banner .btn {
	min-width: unset;
	margin-top: 20px;
	padding: 10px 2rem
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.btn, .btn_line {
	font-size: 16px
}
}
button, input, textarea {
	outline: none;
	border: none;
	font-family: unset;
	color: var(--title_color)
}
input[type="submit"], button {
	cursor: pointer
}
.sytech_export_template {
	display: none
}
@media screen and (max-width:786px) {
}
:root {
--bg_color:#f3f6fb;
--subtheme_color:#ef9a02;
--content_color:#3d3d3d;
--swiper-wrapper-transition-timing-function, initial:;
--title_color:#161616
}
.about_profile {
	padding: 9.7rem 0px 10.9rem;
	overflow: hidden;
	position: relative;
	z-index: 2
}
.about_profile::before {
	width: 100%;
	height: 43.6%;
	background-color: var(--bg_color);
	position: absolute;
	bottom: 0px;
	left: 0px;
	content: "";
	z-index: -1
}
@media screen and (max-width:768px) {
.about_profile {
	padding: 4rem 0px
}
}
@media screen and (min-width:768px) and (max-width:1220px) {
.content {
	padding: 0px 2rem
}
}
@media screen and (min-width:768px) and (max-width:1024px) {
.content, .swiper_content, .header_content {
	max-width: 896px
}
}
@media screen and (min-width:768px) and (max-width:896px) {
.content, .swiper_content, .header_content {
	max-width: 768px
}
}
@media screen and (max-width:768px) {
.content, .header_content {
	padding: 0px 20px
}
}
.about_profile .head {
	display: flex;
	flex-direction: column
}
.head strong {
	font-size: 1.6rem;
	color: rgb(84,84,84);
	font-weight: 400;
	position: relative;
	display: inline-flex;
	align-items: center;
	text-transform: uppercase;
	letter-spacing: 4px;
	gap: 0.9rem;
	margin-bottom: 1.4rem
}
.head strong::before {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background-color: var(--subtheme_color);
	content: ""
}
.about_profile strong {
	margin-bottom: 0.5rem
}
@media screen and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 8px;
	letter-spacing: unset;
	word-spacing: unset;
	gap: 8px
}
}
@media screen and (max-width:768px) {
.head .subtitle::before, .head strong::before {
	width: 4px;
	height: 4px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 8px
}
}
.head h2 {
	font-size: 4.8rem;
	line-height: 6.2rem;
	font-weight: 700;
	letter-spacing: 1.05px
}
.about_profile h2 {
	text-transform: uppercase;
	font-size: 9.8rem;
	line-height: 12.7rem;
	letter-spacing: 2.5px
}
@media screen and (max-width:768px) {
.head h2 {
	font-size: 22px;
	line-height: 1.5;
	letter-spacing: unset;
	word-spacing: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head h2 {
	font-size: 28px;
	line-height: 1.5
}
}
.about_profile h2 span {
	font-weight: 300;
	margin-right: 1.2rem
}
@media screen and (max-width:768px) {
.about_profile h2 span {
	margin-right: 10px
}
}
.about_profile .desc {
	font-size: 1.8rem;
	line-height: 3rem;
	color: var(--content_color);
	max-width: 67.7rem;
	margin-top: 2.7rem;
	margin-left: auto
}
@media screen and (max-width:768px) {
.head .desc, .head p {
	font-size: 0.9rem;
	line-height: 1.5rem;
	margin-top: 10px;
	letter-spacing: unset;
	word-spacing: unset;
	max-width: unset
}
}
@media screen and (max-width:768px) {
.about_profile .desc {
	max-width: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .desc, .head p {
	font-size: 16px;
	line-height: 1.5;
	margin-top: 12px
}
}
.about_profile .desc p {
	margin-bottom: 1.4rem
}
.about_profile .desc p:last-child {
	margin-bottom: 0px
}
@media screen and (max-width:768px) {
.about_profile .desc p {
	margin-top: 0px;
	margin-bottom: 10px
}
}
.category_swiper {
	margin-top: 6.2rem
}
@media screen and (max-width:768px) {
.category_swiper {
	margin-top: 2rem
}
}
ul {
	list-style: none
}
.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	transition-property: transform;
	transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
	box-sizing: content-box
}
.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
	transform: translate3d(0px, 0px, 0px)
}
li.swiper-slide {
	height: auto
}
.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform;
	display: block
}
.category_swiper .active a::before {
	opacity: 0
}
.category_swiper a {
	display: block;
	height: 100%;
	position: relative;
	border-radius: 18px;
	overflow: hidden;
	z-index: 2
}
.category_swiper a::before {
	width: 100%;
	height: 34%;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 3;
	content: "";
	background-image: linear-gradient(to top, rgba(0,0,0,0.76), transparent);
	transition: 0.3s;
	pointer-events: none
}
@media screen and (max-width:768px) {
.category_swiper a {
	border-radius: 12px
}
}
@media screen and (max-width:768px) {
.category_swiper a::before {
	display: none
}
}
.category_swiper .active .img::before {
	opacity: 1
}
.category_swiper .img {
	width: 100%;
	position: relative;
	padding-bottom: 116.45%;
	z-index: 2
}
.category_swiper .img::before {
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: 0px;
	left: 0px;
	background-image: linear-gradient(to top, rgb(0,0,0) 0%, transparent);
	content: "";
	z-index: 2;
	pointer-events: none;
	opacity: 0;
	transition: 0.3s
}
@media screen and (max-width:768px) {
.category_swiper .img::before {
	opacity: 1
}
}
.img.img_ab img {
	position: absolute;
	left: 0px;
	top: 0px
}
.img img {
	width: 100%;
	height: 100%;
	display: block;
	transition: 0.5s;
	aspect-ratio: inherit
}
.category_swiper a:hover img {
	transform: scale(1.02)
}
.category_swiper .active .info {
	transform: translateY(0px)
}
.category_swiper .info {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	z-index: 3;
	color: rgb(255,255,255);
	padding: 4.6rem 5% 4.6rem 9.5%;
	transform: translateY(12.4rem);
	transition: 0.4s
}
@media screen and (max-width:768px) {
.category_swiper .info {
	padding: 1rem 20px 2rem;
	transform: translate(0px)
}
}
.category_swiper h3 {
	font-size: 3rem;
	line-height: 5.6rem;
	font-weight: 700;
	transition: 0.3s;
	letter-spacing: 0.5px
}
@media screen and (max-width:768px) {
.category_swiper h3 {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.category_swiper h3 {
	font-size: 22px
}
}
.category_swiper .active p {
	transform: translateY(0px)
}
.category_swiper p {
	font-size: 1.7rem;
	line-height: 2.7rem;
	opacity: 0.85;
	word-spacing: -0.3px;
	margin-top: 0.5rem;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	transform: translateY(2rem)
}
@media screen and (max-width:768px) {
.category_swiper p {
	font-size: 0.9rem;
	line-height: 1.5;
	word-spacing: unset;
	margin-top: 10px;
	transform: translate(0px)
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.category_swiper p {
	font-size: 16px
}
}
i {
	font-style: normal
}
.category_swiper a:hover i {
	transform: rotate(-45deg)
}
.category_swiper i {
	width: 2.8rem;
	height: 1.3rem;
	display: block;
	content: "";
	background: url("https://www.giantbm.com//wp-content/plugins/sytech-fronteditor/sytpl/home_1/assets/img/arrow-line-w.svg") center center / contain no-repeat;
	margin-top: 3rem;
	transition: 0.3s
}
@media screen and (max-width:768px) {
.category_swiper i {
	width: 2rem;
	height: 10px;
	margin-top: 20px
}
}
.about_profile .nums {
	margin-top: 10.8rem
}
@media screen and (max-width:768px) {
.about_profile .nums {
	margin-top: 2.2rem
}
}
.about_profile .nums ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 4rem 3.3rem
}
@media screen and (max-width:768px) {
.about_profile .nums ul {
	gap: 1.5rem;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))
}
}
.about_profile .nums li {
	display: grid;
	grid-template-columns: 8.2rem 1fr;
	gap: 2.4rem;
	align-items: flex-start
}
@media screen and (max-width:768px) {
.about_profile .nums li {
	grid-template-columns: 3rem 1fr;
	align-items: center;
	gap: 1rem
}
}
.about_profile .nums i {
	width: 100%;
	padding-bottom: 100%;
	background: center center / contain no-repeat;
	content: "";
	display: block
}
.about_profile .nums .data {
	display: flex;
	flex-wrap: nowrap;
	white-space: nowrap;
	width: max-content;
	font-size: 5rem;
	line-height: 1;
	font-weight: 700;
	color: rgb(35,35,35)
}
@media screen and (max-width:768px) {
.about_profile .nums .data {
	font-size: 32px
}
}
.about_profile .nums .label {
	font-size: 1.8rem;
	color: rgb(81,81,81);
	margin-top: 1.3rem
}
@media screen and (max-width:768px) {
.about_profile .nums .label {
	font-size: 0.9rem;
	margin-top: 10px
}
}
@media screen and (max-width:786px) {
}
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box
}
.content {
	margin: 0 auto;
	position: relative
}
html {
	scroll-behavior: smooth
}
.wrap {
	flex-wrap: wrap
}
.flex1 {
	flex: 1
}
.flex2 {
	flex: 2
}
.flex3 {
	flex: 3
}
.between {
	justify-content: space-between
}
.center {
	text-align: center
}
.boxshadow {
	box-shadow: 0 0 15px rgba(0,0,0,0.1);
	background: white
}
.tools_part_vendor .tools_part_box {
	padding: 4rem 0px;
	text-align: center
}
.tools_part_vendor .tools_part_box input {
padding:.8rem 1rem;
	border-radius: 5px;
	min-width: 300px;
	border: 1px #ddd solid
}
.tools_part_vendor .tools_part_box button {
	background: white;
	border: 1px solid #f8f8f8;
	color: #4c4c4c;
	padding: 0.8rem 1.5rem;
	display: inline-block;
	font-weight: 500;
	border: none;
	font-size: 16px;
	cursor: pointer;
	border-radius: 10px;
	background-color: #33bde9;
	border: 1px solid #33bde9;
	color: white;
	padding: 0.8rem 1.5rem
}
@media screen and (min-width:786px) and (max-width:1600px) {
}
@media screen and (min-width:786px) and (max-width:1400px) {
.content {
	padding: 0 1.2rem
}
}
@media screen and (min-width:786px) and (max-width:1200px) {
.content {
	max-width: 1000px
}
.swiper_content {
	max-width: 1020px
}
.solution_strength .head p {
	width: 70%
}
}
@media screen and (min-width:786px) and (max-width:1000px) {
.content {
	max-width: 786px
}
.swiper_content {
	max-width: 806px
}
.solution_strength .head p {
	width: 90%
}
}
@media screen and (max-width:786px) {
.content {
	padding: 0 1.2rem
}
}
@media screen and (min-width:786px) and (max-width:1600px) {
}
@media screen and (min-width:786px) and (max-width:1400px) {
.content {
	padding: 0 1.2rem
}
}
@media screen and (min-width:786px) and (max-width:1200px) {
.content {
	max-width: 1000px
}
}
@media screen and (min-width:786px) and (max-width:1000px) {
.content {
	max-width: 786px
}
}
@media screen and (max-width:786px) {
.content {
	padding: 0 1.2rem
}
}
:root {
--subtheme_color:#ef9a02;
--content_color:#3d3d3d;
--theme_color:#003e8b;
--title_color:#161616
}
.home_custom {
	padding: 9.9rem 0px 7.3rem
}
@media screen and (max-width:768px) {
.home_custom {
	padding: 4rem 0px 3rem
}
}
@media screen and (min-width:768px) and (max-width:1220px) {
.content {
	padding: 0px 2rem
}
}
@media screen and (min-width:768px) and (max-width:1024px) {
.content, .swiper_content, .header_content {
	max-width: 896px
}
}
@media screen and (min-width:768px) and (max-width:896px) {
.content, .swiper_content, .header_content {
	max-width: 768px
}
}
@media screen and (max-width:768px) {
.content, .header_content {
	padding: 0px 20px
}
}
.fadeInUp {
	animation-name: fadeInUp
}
@media screen and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 8px;
	letter-spacing: unset;
	word-spacing: unset;
	gap: 8px
}
}
@media screen and (max-width:768px) {
.head .subtitle::before, .head strong::before {
	width: 4px;
	height: 4px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 8px
}
}
@media screen and (max-width:768px) {
.head h2 {
	font-size: 22px;
	line-height: 1.5;
	letter-spacing: unset;
	word-spacing: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head h2 {
	font-size: 28px;
	line-height: 1.5
}
}
.home_custom .head p {
	font-size: 1.8rem;
	line-height: 3rem;
	color: var(--content_color);
	max-width: 99.6rem;
	margin: 3.4rem auto 0px
}
@media screen and (max-width:768px) {
.head .desc, .head p {
	font-size: 0.9rem;
	line-height: 1.5rem;
	margin-top: 10px;
	letter-spacing: unset;
	word-spacing: unset;
	max-width: unset
}
}
@media screen and (max-width:768px) {
.home_custom .head p {
	max-width: unset;
	margin-top: 10px;
	font-size: 0.9rem;
	line-height: 1.5
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .desc, .head p {
	font-size: 16px;
	line-height: 1.5;
	margin-top: 12px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.home_custom .head p {
	font-size: 16px
}
}
.gap {
	gap: 2rem
}
.home_custom .flex {
	margin-top: 5.5rem
}
@media screen and (max-width:768px) {
.gap {
	gap: 1rem
}
}
@media screen and (max-width:768px) {
.home_custom .flex {
	flex-direction: column-reverse;
	margin-top: 2rem;
	gap: 2rem
}
}
.home_custom .img {
	width: 48.681%;
	position: relative;
	padding-bottom: 44.1%;
	border-radius: 21px;
	overflow: hidden
}
@media screen and (max-width:768px) {
.home_custom .img {
	width: 100%;
	border-radius: 12px;
	height: 304px
}
}
.home_custom .img:hover img {
	transform: scale(1.02)
}
.home_custom .right {
	flex: 1 1 0%;
	max-width: 56.1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start
}
@media screen and (max-width:768px) {
.home_custom .right {
	flex: unset;
	max-width: unset
}
}
.home_custom .items {
	width: 100%;
	margin-top: 4.4%
}
@media screen and (max-width:768px) {
.home_custom .items {
	margin: 0px
}
}
.home_custom .items li {
	display: grid;
	grid-template-columns: 5.4rem 1fr;
	align-items: flex-start;
	gap: 2rem 5.5%;
	margin-bottom: 4.6rem
}
@media screen and (max-width:768px) {
.home_custom .items li {
	grid-template-columns: 1fr;
	gap: 10px;
	margin-bottom: 1.5rem
}
}
.home_custom .items li:hover i {
	transform: rotateY(360deg)
}
.home_custom .items i {
	width: 100%;
	padding-bottom: 100%;
	display: block;
	content: "";
	background: center center / contain no-repeat;
	transition: 0.5s
}
@media screen and (max-width:768px) {
.home_custom .items i {
	width: 2.2rem;
	height: 2.2rem;
	padding: 0px
}
}
.home_custom .items h3 {
	font-size: 2.4rem;
	font-weight: 600
}
@media screen and (max-width:768px) {
.home_custom .items h3 {
	font-size: 18px
}
}
.home_custom .items p {
	font-size: 1.7rem;
	line-height: 2.6rem;
	color: var(--content_color);
	margin-top: 1.6rem;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	-webkit-box-orient: vertical
}
@media screen and (max-width:768px) {
.home_custom .items p {
	font-size: 0.9rem;
	line-height: 1.5;
	margin-top: 10px
}
}
.home_custom .items li:last-child {
	margin-bottom: 0px
}
.home_custom .btn {
	margin-top: 6.6rem;
	padding: 1.85rem 2.8rem
}
@media screen and (max-width:768px) {
.btn, .btn_line {
	font-size: 14px;
	padding: 10px 1.2rem;
	line-height: 1.5
}
}
@media screen and (max-width:768px) {
.home_custom .btn {
	margin-top: 2rem;
	padding: 10px 1.2rem
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.btn, .btn_line {
	font-size: 16px
}
}
@media screen and (max-width:786px) {
}
:root {
--subtheme_color:#ef9a02;
--subbg_color:#edf2f8;
--theme_color:#003e8b;
--content_color:#3d3d3d;
--title_color:#161616
}
.services_wrap {
	padding-bottom: 50px;
}
@media screen and (max-width:768px) {
.services_wrap {
	padding: 3rem 0px 0px
}
}
@media screen and (min-width:768px) and (max-width:1220px) {
.content {
	padding: 0px 2rem
}
}
@media screen and (min-width:768px) and (max-width:1024px) {
.content, .swiper_content, .header_content {
	max-width: 896px
}
}
@media screen and (min-width:768px) and (max-width:896px) {
.content, .swiper_content, .header_content {
	max-width: 768px
}
}
@media screen and (max-width:768px) {
.content, .header_content {
	padding: 0px 20px
}
}
.flex_bottom {
	align-items: flex-end
}
@media screen and (max-width:768px) {
.gap {
	gap: 1rem
}
}
.services_wrap .head {
	max-width: 48rem;
	padding-bottom: 0.6rem
}
@media screen and (max-width:768px) {
.services_wrap .head {
	max-width: unset;
	padding: 0px
}
}
@media screen and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 8px;
	letter-spacing: unset;
	word-spacing: unset;
	gap: 8px
}
}
@media screen and (max-width:768px) {
.head .subtitle::before, .head strong::before {
	width: 4px;
	height: 4px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head .subtitle, .head strong {
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 8px
}
}
@media screen and (max-width:768px) {
.head h2 {
	font-size: 22px;
	line-height: 1.5;
	letter-spacing: unset;
	word-spacing: unset
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.head h2 {
	font-size: 28px;
	line-height: 1.5
}
}
.services_wrap .services_thumbs_swiper {
	max-width: 76.3rem;
	overflow: hidden;
	padding: 1rem 0px;
	margin-left: auto
}
@media screen and (max-width:768px) {
.services_wrap .services_thumbs_swiper {
	max-width: unset
}
}
.services_wrap .services_thumbs_swiper .swiper-slide {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	cursor: pointer
}
.services_wrap .services_thumbs_swiper .swiper-slide::before {
	width: calc(100%);
	height: 1px;
	background-color: rgb(22,22,22);
	opacity: 0.3;
	position: absolute;
	top: 4rem;
	left: 50%;
	content: ""
}
@media screen and (max-width:768px) {
.services_wrap .services_thumbs_swiper .swiper-slide::before {
	top: 1.5rem
}
}
.services_wrap .services_thumbs_swiper .icon {
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	background-color: rgb(255,255,255);
	position: relative;
	transition: all .3s
}
.services_wrap .services_thumbs_swiper .icon::before {
	width: 71%;
	height: 71%;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: "";
	border: 1px solid rgb(163,163,163);
	transition: 0.4s
}
.services_wrap .services_thumbs_swiper .icon::after {
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: rgb(163,163,163);
	content: "";
	transition: 0.3s
}
@media screen and (max-width:768px) {
.services_wrap .services_thumbs_swiper .icon {
	width: 3rem;
	height: 3rem
}
}
@media screen and (max-width:768px) {
.services_wrap .services_thumbs_swiper .icon::after {
	width: 8px;
	height: 8px
}
}
.services_wrap .services_thumbs_swiper .icon i {
	width: 100%;
	height: 100%;
	background: center center / 50% no-repeat;
	display: block;
	content: "";
	opacity: 0;
	transition: 0.4s
}
.services_wrap .services_thumbs_swiper .title {
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
	color: rgb(79,79,79);
	margin-top: 2.2rem;
	transition: 0.3s
}
@media screen and (max-width:768px) {
.services_wrap .services_thumbs_swiper .title {
	font-size: 14px;
	margin-top: 1.2rem
}
}
.services_wrap .services_thumbs_swiper .swiper-slide:last-child::before {
	display: none
}
.services_wrap .service_gallery_swiper {
	background-color: var(--subbg_color);
	border-radius: 16px;
	overflow: hidden;
	width: 100%;
  max-width: 1300px;
	margin: 0 auto;
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper {
	width: 100%;
	max-width: unset;
	margin-top: 2rem;
	border-radius: 0px
}
}
.services_wrap .service_gallery_swiper .swiper-slide {
	display: flex;
	align-items: flex-start;
	gap: 2rem;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 4.9rem 3.368% 4.6rem
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .swiper-slide {
	padding: 2rem 20px 3rem;
	gap: 2rem
}
}
.services_wrap .service_gallery_swiper .detail {
	flex: 1 1 0%;
	padding-top: 1.5%
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .detail {
	flex: unset;
	width: 100%;
	padding: 0px
}
}
.services_wrap .service_gallery_swiper .num_index {
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--theme_color)
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .num_index {
	font-size: 14px
}
}
.services_wrap .service_gallery_swiper .intro {
	margin-top: 1.7rem
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .intro {
	margin-top: 10px
}
}
.services_wrap .service_gallery_swiper .intro h3 {
	font-size: 4rem;
	line-height: 5.2rem;
	font-weight: 700
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .intro h3 {
	font-size: 18px;
	line-height: 1.5
}
}
.services_wrap .service_gallery_swiper .intro p {
	font-size: 1.8rem;
	line-height: 3rem;
	color: var(--content_color);
	margin-top: 1.8rem;
	max-width: 52rem
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .intro p {
	font-size: 2rem;
	line-height: 1.5;
	margin-top: 10px;
	max-width: unset
}
}
.btn_line {
	display: inline-block;
	text-align: center;
	background-color: transparent;
	border-radius: 6px;
	padding: 2.05rem 2.75rem;
	font-size: 1.7rem;
	font-weight: 700;
	color: rgb(23,23,23);
	border: 1px solid rgba(23,23,23,0.5);
	position: relative;
	z-index: 2;
	transition: 0.4s;
	overflow: hidden;
	cursor: pointer
}
.btn_line::before {
	width: 0px;
	height: 100%;
	right: 0px;
	top: 0px;
	background-color: var(--theme_color);
	position: absolute;
	content: "";
	z-index: -1;
	transition: 0.3s
}
.btn_line:hover {
	color: rgb(255,255,255);
	border-color: var(--theme_color)
}
.btn_line:hover::before {
	width: 100%;
	right: unset;
	left: 0px
}
.services_wrap .service_gallery_swiper .btn_line {
	min-width: 19.7rem;
	margin-top: 3rem
}
@media screen and (max-width:768px) {
.btn, .btn_line {
	font-size: 14px;
	padding: 10px 1.2rem;
	line-height: 1.5
}
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .btn_line {
	min-width: unset;
	margin-top: 20px
}
}
@media screen and (min-width:640px) and (max-width:768px) {
.btn, .btn_line {
	font-size: 16px
}
}
.services_wrap .service_gallery_swiper .items {
	width: 57%;
	/*max-width: 77.1rem*/
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .items {
	width: 100%;
	max-width: unset
}
}
.services_wrap .service_gallery_swiper .items .item {
	border-radius: 10px;
	background-color: rgb(255,255,255);
	display: grid;
	grid-template-columns: 1fr 9.8rem;
	align-items: flex-start;
	gap: 2rem 11%;
	margin-bottom: 2.2rem;
	padding: 4.1rem 5.7% 4.4rem
}
@media screen and (min-width:768px) and (max-width:1024px) {
.services_wrap .service_gallery_swiper .items .item {
	gap: 2rem
}
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .items .item {
	grid-template-columns: 1fr;
	gap: 1rem;
	margin-bottom: 1rem;
	padding: 1.2rem 20px
}
}
.services_wrap .service_gallery_swiper .items strong {
	font-size: 2.6rem;
	font-weight: 700;
	display: block
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .items strong {
	font-size: 18px
}
}
.services_wrap .service_gallery_swiper .items p {
	font-size: 1.7rem;
	line-height: 2.6rem;
	color: var(--content_color);
	margin-top: 1.4rem;
	/*overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;*/
	display: -webkit-box;
	-webkit-box-orient: vertical
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .items p {
	font-size: 2rem;
	line-height: 1.5;
	margin-top: 10px
}
}
.services_wrap .service_gallery_swiper .items .item.active i {
	background-color: var(--subtheme_color)
}
.services_wrap .service_gallery_swiper .items i {
	width: 100%;
	padding-bottom: 100%;
	border-radius: 50%;
	background-image: initial;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: initial;
	background-origin: initial;
	background-clip: initial;
	background-color: var(--theme_color);
	transition: 0.3s
}
@media screen and (max-width:768px) {
.services_wrap .service_gallery_swiper .items i {
	width: 3.2rem;
	height: 3.2rem;
	padding: 0px;
	order: -1
}
}
.services_wrap .service_gallery_swiper .items .item:last-child {
	margin-bottom: 0px
}
.services_wrap .services_thumbs_swiper .swiper-slide-thumb-active .title {
	font-weight: 700
}
.services_wrap .services_thumbs_swiper .swiper-slide-thumb-active .icon {
	transform: scale(1.4286)
}
.services_wrap .services_thumbs_swiper .swiper-slide-thumb-active .icon::before {
	width: 79%;
	height: 79%;
	border-color: var(--theme_color)
}
.services_wrap .services_thumbs_swiper .swiper-slide-thumb-active .icon::after {
	opacity: 0
}
.services_wrap .services_thumbs_swiper .swiper-slide-thumb-active .icon i {
	opacity: 1;
	transform: scale(1.6)
}
@media screen and (max-width:786px) {
}
@media screen and (min-width:786px) and (max-width:1600px) {
}
@media screen and (min-width:786px) and (max-width:1400px) {
.content {
	padding: 0 1.2rem
}
}
@media screen and (min-width:786px) and (max-width:1200px) {
.content {
	max-width: 1000px
}
}
@media screen and (min-width:786px) and (max-width:1000px) {
.content {
	max-width: 786px
}
}
@media screen and (max-width:786px) {
.content {
	padding: 0 1.2rem
}
}
