/* ========================= ========================= ========================= ========================= ========================= =========================
***
* please make sure all media_query css inside @layer media_query 
***
* please make sure all media_query css inside @layer media_query 
* please make sure all media_query css inside @layer media_query 
* Use CSS @layer
* Use CSS @layer
* Use CSS @layer
***
 ========================= ========================= ========================= ========================= ========================= =========================*/

@layer media_query {
	@media (max-width: 1920px) {

		.subMenuFlex .container,
		.breadcrumb_bigwrap .container {
			/*max-width: 80%;*/
		}
	}

	@media (max-width: 1330px) {


		.subMenuVersion .content_area {
			width: 100%;
		}

		.body_area {}

		.container {
			padding-left: 1.2rem;
			padding-right: 1.2rem;
		}


		.mobile {
			display: inherit;
		}


		.subMenuVersion .content_area {
			padding-left: 0;
			width: 100%;
		}

	}

	@media all and (max-width: 992px) {

		.subMenuVersion .subMenuFlex .container,
		.breadcrumb_bigwrap .container {
			max-width: 100%;
		}
	}


	@media (max-width: 1330px) {
		.breadcrumb {}

		.breadcrumb_bigwrap {
			padding-top: 1.7rem;
			padding-bottom: 1rem;
		}
	}



	@media (max-width: 1330px) {
		.scroll_table {
			position: relative;
		}

		.scroll_table .table_wrapper1,
		.scroll_table table {
			min-width: 33rem;
		}

		.scroll_table_inside_wrapper {}

		.need_to_scroll:before {
			content: "";
			position: absolute;
			z-index: 25;
			top: 5rem;
			right: .9375rem;
			width: 3rem;
			height: 2rem;
			transition: width .3s ease-in-out, height .3s ease-in-out,
				opacity .3s ease-in-out;
			-webkit-animation: passing 1.3s linear infinite;
			animation: passing 1.3s linear infinite;
			background: url(../images/icon/icon_next.svg) no-repeat center center;
			background-size: contain;
		}

		.need_to_scroll:after {
			content: "";
			position: absolute;
			z-index: 22;
			top: 0;
			right: 0;
			display: block;
			width: 3.75rem;
			height: 100%;
			transition: width .3s ease-in-out, height .3s ease-in-out,
				opacity .3s ease-in-out;
			pointer-events: none;
			background-image: -webkit-gradient(linear,
					left top,
					right top,
					from(rgba(255, 255, 255, 0)),
					color-stop(30%, rgba(255, 255, 255, .5)),
					to(#fff));
			background-image: -o-linear-gradient(left,
					rgba(255, 255, 255, 0) 0,
					rgba(255, 255, 255, .5) 30%,
					#fff 100%);
			background-image: linear-gradient(to right,
					rgba(255, 255, 255, 0) 0,
					rgba(255, 255, 255, .5) 30%,
					#fff 100%);
		}

		.need_to_scroll.reachend:before {
			width: 0;
			height: 0;
			opacity: 0;
			overflow: hidden;
		}

		.need_to_scroll.reachend:after {
			width: 0;
			height: 0;
			opacity: 0;
			overflow: hidden;
		}
	}


	@media (max-width: 1330px) {
		.mobile_left_menu {
			display: grid;
			grid-template-rows: max-content 1fr;
		}

		.mobile_left_menu_nav {
			display: block;
		}

		body:has(.mobile_left_menu.active) .js_scroll_blanket {
			display: block;
		}

		.body_area .left_menu {
			display: none;
		}
	}

	@media (max-width: 1330px) {
		.top_btn .textTop {}

		.top_btn {
			background-image: none;
			margin: 0;
		}

		.footer_area .footer_right {
			display: block;
		}

		.footer_area .footer_right * {
			text-align: right;
		}

		.footer_area .fTool {
			margin-right: 0;
			text-align: center;
		}

		.footer_area .fTool>li:last-child::after {
			width: 0;
			height: 0;
		}

		.footer_area .fTool>li:last-child a {
			padding-right: 0;
		}

		.footer_area .footer_right .updateDate {
			display: block;
			margin-bottom: 0;
		}

		.footer_row>.info,
		.footer_row>.updateDate {
			display: none;
		}

		.footer_menu {
			max-width: none;
		}

		.footer_menu {
			padding: .5rem 0;
			float: left;
			margin: 0;
		}

		.footerMenuArea {
			display: none;
		}
	}

	@media all and (max-width: 1330px) {

		.header_right {
			display: flex;
			align-items: center;
			padding-right: 1rem;
		}

		.menu_btn {
			display: block;
		}

		.shareList {
			display: none;
			position: static;
			border: 0;
			box-shadow: none;
			background: var(--grey_50);
		}

		.mobile_menu_active,
		.search_menu_active,
		.lang_menu_active {
			overflow: hidden;
		}

		.headerMenu {}

		.headerTool .header_inner {
			grid-template-areas: "logo client";
			align-items: center;
			/*display: flex;
			padding: 0;
			-webkit-justify-content: space-between;
			-ms-flex-pack: justify;
			justify-content: space-between;*/

		}



		.lang_menu ul {
			font-size: 1.3rem;
		}

		.lang_menu ul>li a {
			font-size: initial;
		}

		.lang_menu li {
			display: block;
			margin-bottom: .625rem;
		}



		.moblang a,
		.mobSearch a {
			min-width: 2.7rem;
			min-height: 2.7rem;
			max-width: 2.7rem;
			max-height: 2.7rem;
			display: flex;
			align-items: center;
			justify-content: center;
		}

		.mobSearch {}

		.mobSearch img {
			width: 70%;
		}

		.search_menu .mobSearch {
			display: none;
		}

		.lang_menu .moblang {
			display: none;
		}

		.header_area .shareTool {
			display: none;
		}


		.headerMenu .my_menu>a {}


		.header_area .headerTop {
			display: none;
		}

		.header_area {}



		.mobile_menu .moblang {
			display: none;
		}

		.mobile_menu .langTool {
			display: block;
			position: static;
		}

		.mobile_menu .menu_lv0 {
			border-top: 0;
		}


		.headerTool .search_btn {
			display: inline-block;
		}

		.myLogo {

			/*padding-left: 1.2rem;*/
			padding-bottom: 1rem;
		}

		.headerTool .myLogo img {
			width: auto;
		}

		.big_clientTool {
			background-color: transparent;
			margin-top: 0;
			display: flex;
			padding-left: 0;
			padding-right: 0;
			border-radius: 0;
		}

		.print.tool_item {
			display: none;
		}

		.tool_item img {
			filter: none;
			max-width: none;
		}

		.clientTool {
			column-gap: clamp(6px,2vw,1rem);
		}

		.clientTool>.tool_item {}

		.tool_item::after {
			width: 0;
			height: 0;
		}

		.clientTool .AStyleArea {
			display: none;
		}

		.tool_item .moblang {
			display: block;
		}

		.tool_item .langTool {
			display: none;
		}

		.searchTool {}

		.searchTool input {}

		.search_btn {
			display: inline-block;
			background-image: url("../images/icon/icon_search.svg");
			background-repeat: no-repeat;
			background-position: center;
			background-size: contain;
			width: 1.25rem;
			height: 1.25rem;
			font-size: 0;
			vertical-align: middle;
		}

		.headerTool .search_btn img {
			margin-left: 0;
		}

		.searchTool form {
			display: block;
		}
	}

	@media(max-width: 992px) {
		.headerTool .header_inner {
			flex-wrap: wrap;
		}

		.headerTool .myLogo {
			height: auto;
			/*width: 40%;*/
		}

		.big_clientTool {
			/*padding-bottom: .5rem;
			width: 100%;
			justify-content: flex-end;*/
		}
	}

	@media(max-width: 767px) {
		.headerTool .myLogo {
			padding-top: 1rem;
			padding-bottom: 1rem;
			padding-right: 1rem;
			width: 100%;
		}

		.header_right {
			width: 100%;
			justify-content: flex-end;
			padding-bottom: .5rem;
			margin-top: 0;
		}
	}

	@media(max-width: 500px){
		.myLogo img{
			height: 3.5rem;
		}
	}

	@media all and (max-width: 992px) {




		.top_btn .textTop {
			font-size: 0;
		}

		.footer_area .info {
			padding-top: 0;
			padding-left: 0;
			/* margin-top: 1.25rem;
			  */
		}

		.footer_area .footer_row {
			display: block;
		}

		.footer_area footer_icon {
			text-align: center;
		}

		.footer_area .footer_right * {
			text-align: center;
		}

		.footer_area .footer_right .updateDate {
			text-align: center;
		}

		.footer_left {
			justify-content: center;
			flex-wrap: wrap;
		}

		.footer_right {
			margin-top: .625rem;
		}

		.footer_area1 {
			padding-top: 0;
		}
		.footer_area1_inner{
			grid-template-columns: 100%;
		}
		.social_media_wrapper{
			width: fit-content;
			margin-left: auto;
			margin-right: auto;
		}
		.social_media_title_wrap{
			text-align: center;
		}
	}

	@media(max-width: 767px){
		.footer_area .footer_icon{
			margin-right: 0;
			width: 100%;
			text-align: center;
		}
	}

	@media all and (min-width: 1331px) {
		.header_area .headerTool .active_section>a {
			color: var(--menu0_active_text_color);
		}

		.header_area .headerTool .my_menu.open>a {
			color: var(--menu0_active_text_color);
		}
	}



	/* ========================= ========================= ========================= ========================= ========================= =========================
***
* SECTION FOR section banner 
***
***
 ========================= ========================= ========================= ========================= ========================= =========================*/
	@media(max-width:992px) {
		.section_header_banner {
			height: auto;
		}

		.section_header_banner h1 {
			padding-bottom: 6rem;

		}
		.section_header_banner .bg {
			padding-top: 0;
		}
	}

	@media(max-width:767px) {
		.section_header_banner>.container {
			padding-left: 0;
			padding-right: 0;
			display: flex;
			flex-wrap: wrap;
		}

		.section_header_banner>.container>div:first-child {
			width: 100%;
			padding-left: 1.2rem;
			padding-top: 2rem;
			padding-right: 1rem;
		}

		.section_header_banner .bg {
			position: static;
			order: 1;
			width: 100%;
			
		}

		.section_header_banner img {
			max-width: 100%;
			height: auto;
			object-fit: unset;
		}
	}


	@media(max-width: 767px) {

		.equal_height_column1,
		.equal_height_column2,
		.equal_height_column3,
		.equal_height_column4,
		.equal_height_column5,
		.equal_height_column6,
		.equal_height_column7,
		.equal_height_column8,
		.equal_height_column9,
		.equal_height_column10,
		.equal_height_column11,
		.equal_height_column12,
		.equal_height_column13,
		.equal_height_column14,
		.equal_height_column15,
		.equal_height_column16,
		.equal_height_column17,
		.equal_height_column18,
		.equal_height_column19,
		.equal_height_column20 {
			height: auto;
		}
	}

	@media all and (max-width: 767px) {
		.footerMenuArea {
			flex-wrap: wrap;
		}

		.footerMenu>div {
			flex: 0 0 100%;
			max-width: 100%;
			padding-right: 0;
		}

		.footer_area footer_icon>.updateDate {
			text-align: center;
			padding-right: 0;
			display: block;
		}

		.footer_area2 .container {
			padding-left: 4rem;
			padding-right: 4rem;
		}

		.footerContact {
			width: 100%;
			min-width: inherit;
			padding-right: 0;
		}

		.footerMenuArea {
			display: none;
		}

		.footer_area1.in_view .top_btn {
			right: 1rem;
			bottom: .5rem;
		}

		.footer_area .swiper {
			max-width: 80%;
		}
	}


	@media only screen and (max-width:992px) {
		.table_wrapper1.responsive_card_table:before {
			width: 0;
			height: 0;
		}

		.responsive_card_table {
			margin-top: 1rem;
			border-radius: 0;
			border: 0;
		}

		.responsive_card_table table {
			box-shadow: none;
			border-radius: 0;
			border: 0;
		}

		.responsive_card_table tbody {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
			row-gap: 1rem;
			column-gap: 1rem;
		}

		.responsive_card_table .mobiletd {
			display: block;
			font-weight: 600;
			color: #000;
			margin-bottom: 5px;
		}

		.responsive_card_table tbody>tr:nth-child(odd):not(.th_row) {
			background-color: #eaf4f4;
		}

		.responsive_card_table tbody>tr:nth-child(even):not(.th_row) {
			background-color: var(--light_blue_200);
		}

		.responsive_card_table tr:not(.th_row) {
			display: block;

			padding-top: 1.3636rem;
			padding-bottom: 1.3636rem;
			/*margin-bottom: 1rem;*/
		}

		.responsive_card_table .th_row {
			display: block;
			width: 100%;

		}

		.responsive_card_table .th_row th {
			width: 100%;
			display: block;
		}

		.responsive_card_table td>div {
			text-align: left;
			display: block;
		}

		.responsive_card_table td>* {
			text-align: left;
		}

		.responsive_card_table td {
			display: block;
			width: 100%;
			padding-top: 0;
			border-bottom: 0;
			text-align: left;
			background-color: transparent;
			padding-bottom: 1rem;
			border: 0;
		}

		.responsive_card_table tr>td:last-child {
			padding-bottom: 0;
		}

		.responsive_card_table thead {
			display: none;
		}
	}

	@media(min-width:993px) {
		.responsive_card_table .mobiletd {
			display: none;
		}
	}


}

@layer media_query {
	@media(min-width:1331px) {

		.social_media_btn__btn:hover,
		.social_media_btn__btn:focus {
			background-color: var(--blue_100);

		}
	}
}


@layer media_query {
	@media(max-width: 767px) {
		.step_wrapper:not(.step_wrapper2) {
			grid-auto-flow: unset;
			column-gap: 2rem;
		}

		.step_wrapper:not(.step_wrapper2):has(>:nth-child(2):last-child),
		.step_wrapper:not(.step_wrapper2):has(>:nth-child(3):last-child),
		.step_wrapper:not(.step_wrapper2):has(>:nth-child(4):last-child) {
			grid-template-columns: 40% 1fr;
		}


		.step_wrapper:not(.step_wrapper2) .step_item {
			grid-template-rows: unset;
			grid-template-columns: subgrid;
			grid-column: span 2;
			grid-template-areas: 'area_circle area_content' 'area_title area_content';
		}

		.step_wrapper:not(.step_wrapper2) .step_circle {
			grid-area: area_circle;
		}

		.step_wrapper:not(.step_wrapper2) .step_circle::before {
			width: 20vw;
			height: 20vw;
			border-width: 1.9vw;
		}

		.step_wrapper:not(.step_wrapper2) .step_title {
			grid-area: area_title;
		}

		.step_wrapper:not(.step_wrapper2) .step_title::after {
			width: .625rem;
			height: 1.5rem;
			left: 50%;
			transform: translate(-50%, 0);
			top: 100%;
		}

		.step_wrapper:not(.step_wrapper2) .step_title .inner {
			width: 100%;
		}

		.step_wrapper:not(.step_wrapper2) .step_content {
			grid-area: area_content;
			margin-left: 0;
			margin-right: 0;
			max-width: 100%;
		}

		.step_wrapper:not(.step_wrapper2) .step_item:has(>:nth-child(2):last-child) {
			grid-row: unset;
		}

		.step_wrapper:not(.step_wrapper2) .step_item:has(>:nth-child(3):last-child) {
			grid-row: unset;
		}

		.step_wrapper:not(.step_wrapper2) .step_item:has(>:nth-child(4):last-child) {
			grid-row: unset;
		}

		.step_wrapper2 {
			grid-auto-flow: unset;
			grid-template-columns: repeat(2, 1fr);
			width: 100%;
		}
	}

	@media(max-width: 600px) {

		.step_wrapper:not(.step_wrapper2):has(>:nth-child(2):last-child),
		.step_wrapper:not(.step_wrapper2):has(>:nth-child(3):last-child),
		.step_wrapper:not(.step_wrapper2):has(>:nth-child(4):last-child) {
			grid-template-columns: 100%;
		}

		.step_wrapper:not(.step_wrapper2) .step_item {
			grid-template-columns: unset;
			grid-column: unset;
			grid-template-areas: unset;
		}

		.step_wrapper:not(.step_wrapper2) .step_circle {
			grid-area: unset;
		}

		.step_circle::before {
			width: 30vw;
			height: 30vw;
			border-width: 2.5vw;
		}

		.step_circle img {
			width: 25vw;
			height: 25vw;
		}

		.step_wrapper:not(.step_wrapper2) .step_title {
			grid-area: unset;
		}

		.step_wrapper:not(.step_wrapper2) .step_title::after {
			width: 0;
			height: 0;
		}

		.step_wrapper:not(.step_wrapper2) .step_content {
			margin-top: .75rem;
			grid-area: unset;
		}

		.step_wrapper2 {}
	}
}

@layer media_query {
	@media(max-width: 767px) {
		.card_grid {}

		.card_grid1 {
			grid-template-columns: 100%;
			row-gap: 1.5rem;
		}

		.card_grid1>* {
			grid-template-rows: unset;
		}

		.card_grid1>*:has(>:nth-child(2):last-child),
		.card_grid1>*:has(>:nth-child(3):last-child),
		.card_grid1>*:has(>:nth-child(4):last-child) {
			grid-row: unset;
		}

		.only_1_card>* {
			width: 100%;
		}
	}
}

@layer media_query {
	@media(max-width: 767px) {
		.mission_row {
			grid-template-columns: max-content 1fr
		}
	}
}

@layer media_query {
	@media(max-width: 767px) {
		.inner_grid>*:not(:last-child) {
			border-right: 0;
			padding-right: 0;
		}

		.inner_grid>*:not(:first-child) {

			padding-left: 0;
		}

		.inner_grid1 {
			grid-template-columns: 100%;

		}
	}
}


/* ========================= ========================= ========================= ========================= ========================= =========================
***
* please make sure all media_query css inside @layer media_query 
***
* please make sure all media_query css inside @layer media_query 
* please make sure all media_query css inside @layer media_query 
* Use CSS @layer
* Use CSS @layer
* Use CSS @layer
***
 ========================= ========================= ========================= ========================= ========================= =========================*/