/*
Theme Name: GENESIS Child
Theme URI: https://tcd-theme.com/tcd103/
Template: genesis_tcd103
Author: TCD
Author URI: https://tcd-theme.com/
Description: "GENESIS" is an ideal template for corporate website and sites that introduce web services. The layout and animations are distinctive. You can create an advanced site that does not look like it was created with a template.
Version: 1.12.2.1749131128
Updated: 2025-06-05 22:45:28

*/

.pc{display: block;}
.sp{display: none;}

body.header_type2 #header {
    background: #fff!important;
    position: sticky !important;
}
body.header_type2 #global_menu > ul > li > a {
    color: #000;
}

div#single_post_header_image {
    display: none;
}
#container #lp_page_header,
#single_service_header {
    height: 400px;
}
#container .post_content p,
#header_slider_content .catch {
    line-height: 1.8;
}
#footer_inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#footer_inner ul {
    display: flex;
    align-items: center;
    gap: 30px;
}
.home .cb_free_space.num3 :is(.design_header, .tcdce-body .design_header) .title_area {
    width: 55%;
	white-space: nowrap;
}
.post_content :is(.design_header, .tcdce-body .design_header) .large_headline {
    overflow: visible;
}
.cb_free_space .item_list .post_row {
    width: 100%;
    text-align: center;
}
.cb_service_category_list .overlay{
    opacity: 0.6;
}
.reason img {
    max-height: 380px;
}
.arrow_button {
    background-color: #EE7431!important;
}
.design_arrow_button a {
    color: #EE7431!important;
}
a:hover .arrow_button {
    background-color: #1a278a!important;
}
.animate_background:hover .arrow_button {
    background-color: #fff!important;
}
p.scroll {
    padding: 1em 0;
    font-family: 'Montserrat';
    font-weight: 500;
    text-transform: uppercase;
    color: #1a278a;
}

section#cb_content_1 {
    position: relative;
    overflow: hidden;
}

section#cb_content_1::before {
    content: "";
    width: 100%;
    height: 200%;
    background: #1b2b58;
    transform: rotate(28deg);
    position: absolute;
    top: -10%;
    left: 45%;
    margin: auto;
}

.page .post_row {
    margin-bottom: 60px;
}
.page .post_col-3 {
    margin-right: 75px;
}
body:not(.home) .cb_blog_list:nth-child(even) {
    background: transparent;
}

#page_contents .wp-block-table td, #page_contents .wp-block-table th {
    border: none;
    background: transparent;
    border-bottom: 1px solid #ccc;
    text-align: left;
    padding: 20px 0;
}
#main_content .wp-block-table td, #main_content .wp-block-table th {
    border: none;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
#page_contents .post_content table {
    border: none;
}

.post_content .wpcf7 {
    margin: 0;
    border: none;
    background: transparent;
    font-size: 16px;
}

.post_content .wpcf7 th, .post_content .wpcf7 td {
    background: transparent;
    border: none;
}

.post_content .wpcf7 th {
    text-align: right;
    vertical-align: middle;
    padding-right: 100px;
    position: relative;
}
.post_content .wpcf7 th.required span {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    height: fit-content;
    background: #d10000;
    color: #fff;
    line-height: 1;
    padding: 5px 10px;
}
#header_slider_wrap.layout_type3, #header_slider_wrap.layout_type3 #header_slider_content, #header_slider_wrap.layout_type3 #header_slider {
    height: 60vh;
}
#recent_news .title span,
.news_carousel .title span {
    -webkit-line-clamp: unset;
}
#recent_news .title a,
.news_carousel .title a {
    overflow: visible;
    max-height: unset;
}
:is(.lp_content, .tcdce-body .lp_content) .catch {
    line-height: 1.3;
}

.single #single_post_header, .single #main_col {
    width: 100%;
}
#footer_logo img {
    width: 200px;
    height: auto;
}
#page_contents .post_content h4 {
    font-size: 20px;
}
body:not(.home) .genesis_carousel_scrollbar {
    padding: 0;
}
body:not(.home) .blog_carousel .title {
    margin-top: 0;
}
body:not(.home) .blog_carousel .title a {
    color: #333;
}
.blog_carousel a.category_button {
    color: #1a278a;
}
.scroll {
    display: inline-block;
    animation: floatSide 4s ease-in-out infinite;
}
@keyframes floatSide {
	0%   { transform: translateX(0); }
	50%  { transform: translateX(20px); }
	100% { transform: translateX(0); }
}
.cb_blog_list.page_blog_list {
    padding: 0;
}
.page .post_content p {
    line-height: 1.6;
}
.page .post_content ul {
    list-style: disc;
}
.single-service .post_content img, .single-service .post_content figure {
    width: 100% !important;
    height: auto;
}
.home .blog_carousel .title a {
    color: #000;
}
.home .blog_carousel .title a:hover {
    color: #1a278a;
}

#single_post_header time.update.entry-date.updated {
    display: none;
}

@media (max-width: 1440px){
	section#cb_content_1::before {
    left: 40%;
}
}

@media (max-width: 1100px){
	section#cb_content_1::before {
    width: 100%;
    transform: rotate(0deg);
    left: 0;
    top: 480px;
}

section#cb_content_1 .post_col:nth-of-type(2) {
    margin-top: 80px;
}
	.page .post_col-3 {
    margin-right: 0;
}
	body.header_type2 #drawer_menu_button span{
		background: #000!important;
	}
}

@media screen and (max-width: 950px){
	.cb_service_category_list .item {
    height: 360px!important;
}
	.cb_service_category_list .title_area {
    top: unset;
    bottom: 0;
}
.cb_service_category_list .overlay {
    top: unset;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%)!important;
}
}

@media (max-width: 800px){
	#page_header {
    margin-bottom: 4em;
}
	section#cb_content_1::before {
    top: 280px;
}
	.post_content .wpcf7 th, .post_content .wpcf7 td {
    width: 100%;
    display: block;
    text-align: left;
    padding: 0 0 10px;
}

.home .cb_free_space.num3 :is(.design_header, .tcdce-body .design_header) .title_area {
	white-space: wrap;
}
.post_content .wpcf7 form {
    margin: 1.5em 0;
}

.post_content .wpcf7 th.required span {
    right: 0;
}

.post_content .wpcf7 td {
    margin-bottom: 10px;
}
	.shutter_image.col2 .item {
    width: 100%;
}
    .pc{display: none;}
    .sp{display: block;}
	div#footer_inner {
    flex-direction: column;
    gap: 30px;
}
#footer_nav {
    overflow: hidden !important;
        touch-action: none !important;
    transform: none !important;
}
#footer_inner ul img {
    width: 50px;
}
	#footer_nav ul {
    display: block!important;
    text-align: center;
    margin: 20px auto;
    overflow: hidden !important;
    transform: none !important;
}
#footer_nav li {
    margin: 0!important;
}
#footer_nav li a {
    height: auto!important;
    line-height: 2!important;
}

}
