@charset "utf-8";
/* CSS Document */ 
:root {
  --p-color: #e60012;
  --main-font-family:"Noto Sans JP", sans-serif;
  --main-font-size: 1rem;
  --main-text-color:#000;
  --title-font-family:"Zen Kaku Gothic New", sans-serif;
  --english-font-family:"Oswald", sans-serif;
  --blue-color:#0070b8;
  --green-color:#49a538;	
  --grey-color:#595757;	
}



body {
  margin: 0;
  font-family: var(--main-font-family);
  font-size: var(--main-font-size);
  font-weight: var(--main-font-weight);
  color: var(--main-text-color);
  scroll-behavior: smooth;
  overflow-x: hidden;	
  line-height: 1.6;
}


*{
    margin: 0;
    padding: 0;
    font-weight: 400;
}

*, *::before, *::after {
  box-sizing: border-box;
	
}
ul, ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
  transition: all .4s;
}



img{
    max-width: 100%;
    height: auto;
    display: block;
}

h1, h2, h3, h4, h5, h6{
	font-family: var(--title-font-family);
	font-weight: 600;
}



header{
	position: fixed;
	width: 100%;
	z-index: 1000;
}


nav{
	width: 100vw;
    background-color: #fff;
    display: flex;

    z-index: 10;
    padding: 1rem 1.25rem;
	justify-content: space-between;
}





nav .nav-left{
    display: flex;
	justify-content: flex-start;
}


nav .nav-right{
    display: flex;
}

nav .logo{
	 width: 11.563rem;
}

.nav-links{
	display: flex;
    padding: 0;
    justify-content: space-evenly;
    align-items: center;
}



.nav-links li:last-child a{
	margin-right: 0;
}



.nav-links li a{
    padding:.5rem 1rem;
	 color: var(--main-text-color);
  	font-weight: 500;
  	font-style: normal;
	font-size:1rem;
	position: relative;
	margin: 0 2px;
	z-index: 1;
}

.nav-links li a:hover, .nav-links li.active a{
     color: #fff;
}

.nav-links li {
    position: relative;
}

.nav-links li a::before{
    content: "";
    display: block;
    height: 100%;
    width: 0%;
    background-image: url("../assets/images/hover_bg.png");
	background-repeat: no-repeat;
    position: absolute;
    transition: all ease-in-out 1000ms;
	left: 0;
	bottom: 0;
	z-index: -1;
    background-size: 100% 100%;
    top: 0;
	
}

.nav-links li a:hover::before, .nav-links li.active a::before{
  	animation: colorroll 1000ms ease 10ms 1 normal forwards;
}


.nav-links li a::after, .nav-links li.active a::after{
    background-image: url(../assets/images/roller.png);
    position: absolute;
    transition: all ease-in-out 1000ms;
    background-repeat: no-repeat;
    left: 0%;
    bottom: 0;
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-size: contain;
	opacity: 0;
	
}

.nav-links li a:hover::after,  .nav-links li.active a::after{
	left:100%;
	animation: roller 1000ms ease 0s 1 normal forwards;
}



header .reviewbar{
	padding: 10px 0;
	background-color: var(--p-color);
display: flex;
    justify-content: center;
}

header .ti-widget .ti-header{
	border-radius: 0;
	padding: 0;
	
}

header .reviewbar .ti-widget .ti-small-logo{
	margin-right: 4px;
    background: #fff;
    padding: 2px 13px;
    border-radius: 15px;
}

header .reviewbar .ti-widget .ti-header .ti-fade-container{
	align-items: center;
}

header .reviewbar .ti-widget .ti-header span, header .reviewbar .ti-widget.ti-goog .ti-header strong{
	color: #fff!important;
}

header .reviewbar .ti-widget .ti-header .ti-stars img.ti-star{
    filter: brightness(1.125);
}


.master_kv{
	position: relative;
	z-index: 999;
	padding-top: 9.275rem;
}


.master_kv ul{
  display: flex;
}

.feedin2 {
  opacity: 0;
  transition: all 1s ease-out;
}

.feedin2.active {
  opacity: 1;
}

li.feedin2 {
    list-style: none;
}


.master_logo_cntn{
position: absolute;
 /* top: 50%;*/
	  bottom: 0%;
  left: 50%;
  transform: translate(-50%, 0%); 
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 80px;
	align-items: center;
	margin-bottom: 4.375rem;
}


.master_logo{
    width: 40%;
	animation: masterlogo 2s ease 1s 1 normal forwards;
    filter: drop-shadow(0 0 18px rgba(0, 0, 0, 0.5));

}

.master_logo_cntn .top_quicks{
	display: flex;
	column-gap: 40px;
	justify-content: center;
}


.master_logo_cntn .top_quicks p{
	display:flex;
	align-items: center;
	column-gap: 18px;
}

.master_logo_cntn .top_quicks p span{
	font-size: 2rem;
	color:#fff;
	font-weight: 600;
}
.master_logo_cntn .top_quicks li:first-child{
	background-color:#e60012	
}

.master_logo_cntn .top_quicks li:nth-child(2){
	background-color:#0060a1
}
.master_logo_cntn .top_quicks li:last-child{
	background-color:#b20052
}

.master_logo_cntn .top_quicks li{
	padding: 8px 18px;
	border: 4px #fff solid;
	min-width: 18.75rem;
}

.master_logo_cntn .top_quicks li p img{
	height:60px;
}





/*Styling Hamburger Icon*/
.hamburger div{
    width: 30px;
    height:3px;
    background: #073a75;
    margin: 5px;
    transition: all 0.3s ease;
}
.hamburger{
    display: none;
}



.btn_a, .nav-links li a.btn_a{
border-radius: 9999px;
    min-width: 11rem;
    background-color: var(--p-color);
    font-size: 1rem;
    color: #fff;
    padding:12px 35px;
    position: relative;
    text-align: center;
    display: inline-block;
	pointer-events: auto;
	cursor: pointer;	
	  transition: all 0.3s;
  overflow: hidden;
  z-index: 1;
	border:solid 1px var(--p-color);
	margin-top: 5px;
	
}

.nav-links li a.btn_a::before, .nav-links li a.btn_a::after{
	display: none
}

.nav-links li a.btn_a:hover {
  color: var(--p-color);
  border: solid 1px var(--p-color);
	background: #fff;
}


.bg-red{
	 background-color: var(--p-color);
}

.bg_redclipped{
background-color: rgba(230, 0, 18, 1);
    background-image: url(../assets/images/bg_block.png);
	background-size: 60%;
    background-blend-mode: multiply;
  	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 150px), 0 100%);
	padding-bottom:225px;
}


.bg_redblocked{
background-color: rgba(230, 0, 18, 1);
    background-image: url(../assets/images/bg_block.png);
	background-size: 60%;
    background-blend-mode: multiply;
}

section{
	padding:100px 0;
	position: relative;
	z-index: 1;
}


.clipped section{
	padding-bottom: 200px;
} 

.clipped_bttm{
	padding-bottom: 200px;
} 

.clipped{
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 150px), 0 100%);
}

.clipped2{
clip-path: polygon(0% 150px, 100% 0%, 100% calc(100% - 150px), 0% 100%);
}

.clipped_top{
clip-path: polygon(0% 150px, 100% 0%, 100% 100%, 0% 100%);
	
}


.clip_overlay{
    margin-top: -150px;
    padding-top: 150px;
}





section.promise{
	padding:100px 0 300px;
	position: relative;
}


.ladder_vector{
    position: absolute;
    bottom: 100px;
    right: 0;
    z-index: -1;
    width: 19%;
}


.single-work .ladder_vector{
	bottom:-20px;
}


.rollercolor_vector{
    position: absolute;
    bottom: -8%;
    left: 3%;
    z-index: -1;
    width: 23%;
	max-width: 370px;
}


.vector_services{
    position: absolute;
    bottom: 2%;
    z-index: -1;
	width: 13.85%;
    left: -1.65%;
}

.vector_notice{
    position: absolute;
    bottom: 10px;
    z-index: -1;
    width: 340px;
    left: 2.95%;
}


.vector_bucket_roller{
    position: absolute;
    bottom: 10px;
    z-index: -1;
    width: 340px;
    left: 2.95%;
}

.voice_single .vector_construction{
    bottom:0;
    right: -18%;
    left: auto;
    position: absolute;
    z-index: -1;
    width: 250px;
}



.work_single .vector_bucket_roller, .voice_single .vector_bucket_roller{
	bottom: -30px;
    left: 0.5%;
}

.vector_right{
	left:auto;
	bottom: -20px;
	right:2.95%;	
}


.bg_blocks{
	background-image: url("../assets/images/bg_block.png");
	background-size: 60%;
	position: relative;
/*	z-index:0; */
	background-color:#fff;
}




.bg_cement{
	background-image: url("../assets/images/cement_bg.jpg");
	background-size: 100%;
	position: relative;
}


.textcolor-white{
	color:#fff;	
}

.textcolor-red{
	color:var(--p-color);
}

.top_title{
	font-size: 3.125rem;
	position: relative;
	padding-top: 10px;
}

.top_title span{
	font-family: var(--english-font-family);
	position: absolute;
    left: 0;
    top: 0;
	font-size: 200px;
 -webkit-text-stroke-color:#fff;
  -webkit-text-stroke-width: 1px;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
	text-transform: uppercase;
	font-weight: 700;
	opacity: .5;
	line-height: 1;
}


.top_title.textcolor-red span{
	-webkit-text-stroke-color:var(--p-color);
	opacity: .2;
}

.innwrap{
	width: 100%;
	margin: 0 auto;
}


section.promise .innwrap{
	max-width: 1180px;
}

section.services .innwrap, section.notice .innwrap, section.top_contact .innwrap, footer .innwrap{
	max-width: 1400px;
}

section.work .innwrap, section.voice .innwrap{
	max-width: 1700px;
}


section.promise .cntn{
	display:flex;
	flex-wrap: wrap;
	column-gap: 6%;
	justify-content: center;
}

section.promise .cntn li:first-child{
	margin-top:0;
}

section.promise .cntn li{
	width: 47%;
	background: #fff;
	padding:16px 32px;
	margin-top: 160px;
	border-radius:.5rem;
}




.grid-item h3 {
  color: #e60012;
  font-size: 2rem;
  margin-bottom: 12px;
}

.grid-item p {
  color: #333;
  font-size: 1rem;
  line-height: 1.8;
}

.grid-item p strong{
	font-size:1.125rem;
		font-weight: 600;
}

.grid-item .img_box {
    max-width: 32%;
}




.grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 equal columns */
  gap: 6%;
  width: 100%;
  margin-top: 140px;
}

.grid-item {
	background: #fff;
	padding:16px 32px;
	border-radius:.5rem;
	display: flex;
	column-gap:2rem;
}



.grid-item .text_box{
	width: 100%;
}





._anm.grid-item:nth-child(1) { grid-column: 1; grid-row: 1; transform: translate(0, 20%);}
._anm.grid-item:nth-child(2) { grid-column: 2; grid-row: 1; transform: translate(0, 95%);}
._anm.grid-item:nth-child(3) { grid-column: 1; grid-row: 2; transform: translate(0, 60%);}
._anm.grid-item:nth-child(4) { grid-column: 2; grid-row: 2; transform: translate(0, 135%);}
._anm.grid-item:nth-child(5) { grid-column: 1; grid-row: 3; transform: translate(0, 100%);}




.grid-item._anm._is-inview.grid-item:nth-child(1) {transform: translate(0, 0%);}
.grid-item._anm._is-inview.grid-item:nth-child(2) {transform: translate(0, 75%);}
.grid-item._anm._is-inview.grid-item:nth-child(3) {transform: translate(0, 40%);}
.grid-item._anm._is-inview.grid-item:nth-child(4) {transform: translate(0, 115%);}
.grid-item._anm._is-inview.grid-item:nth-child(5) {transform: translate(0, 80%);}




.title_decription{
	margin-top: 1rem;
   line-height: 1.8;
}

.title_area{
	position: relative;
	margin-bottom: 60px;
	min-width: 200px;
}

.vector_wrap{
	position: relative;
	z-index: 1;
}

section.services .title_area .vector_img{
    position: absolute;
    right: 0;
    bottom: 0;
    width: 9.5%;
}

.president_message .title_area .vector_img{
	position: absolute;
    right: 0;
    bottom: -16px;
    width: 9.5%;
}


.company_overview .vector_yellow {
    position: absolute;
    right: 0;
    top: -130px;
    width: 200px;
}

.company_overview .title_area{
		margin-bottom: 0;
}

.president_message .title_area{
	margin-bottom: 0;
	margin-top: 60px;
}

.vector_img_grey{
    position: absolute;
    left: 5%;
    top: -210px;
    width: 8%;
}

.message h5{
    font-size: 18px;
    margin-top: 20px;
    display: flex;
    max-width: fit-content;
    margin-bottom: 5px;
}

.message h5::before{
    content: "";
    min-width: 20px;
    background-image: url(../assets/images/list_style.png);
    background-size: 100%;
    height: 25px;
    background-repeat: no-repeat;
    margin-right: 12px;
    align-self: center;

}


.vector_yellow{
    position: absolute;
    right: 7.315%;
    top: -207px;
    width: 220px;
}

.vector_img_blue{
position: absolute;
    right: 4.8%;
    width: 16.5%;
    bottom: 0;
}


section.voice .vector_voice{
	position: absolute;
    left: 3.9%;
    width: 22.15%;
    bottom: 1.5%;
	max-width: 350px;
}

.vector_subpage_bttm{
	position: absolute;
    left: 3.9%;
    width: 22.15%;
    bottom: -20px;
}




    .serrvice_list_top {
        gap: 3rem;
        -ms-grid-columns: 1fr 2.1875vw 1fr 2.1875vw 1fr 2.1875vw 1fr;
        display: -ms-grid;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        justify-content: center;
        justify-items: center;
        padding-left: 0;
        margin-bottom: 2.1875vw;
    }



.serrvice_list_top li{
	border-radius: .5rem;
	background: #fff;
	overflow: hidden;
}




.serrvice_list_top li.red{
	border:1px solid var(--p-color);
}
.serrvice_list_top li.blue{
	border:1px solid var(--blue-color);
} 
.serrvice_list_top li.green{
	border:1px solid var(--green-color);
} 
.serrvice_list_top li.grey{
	border:1px solid var(--grey-color);
} 


.serrvice_list_top li .header_section{
	display: flex;
	justify-content: flex-start;
	padding: 4px;
	align-items: center;
	column-gap: 1.25rem;
	
}

.serrvice_list_top li .header_section .icon{
	background-color: #fff;
	border-radius: .5rem;
	padding: 8px;
    width: 50px;
    height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.serrvice_list_top li .header_section h3{
	color:#fff;
	font-size: 125%;
}

.serrvice_list_top li.red .header_section{
	background-color:var(--p-color);
}
.serrvice_list_top li.blue .header_section{
	background-color:var(--blue-color);
} 
.serrvice_list_top li.green .header_section{
	background-color:var(--green-color);
} 
.serrvice_list_top li.grey .header_section{
	background-color:var(--grey-color);
}


.serrvice_list_top li .img_area{
    border-radius: 0 0 8px 8px;
    overflow: hidden;
}

.serrvice_list_top li .text_area{
	padding: 18px 20px;
	font-size: 15px;
}



.work-cover {
    padding: 9rem 4%;
    background: url(../assets/images/work_cover.jpg) center / cover no-repeat;
}


.work_intro{
	max-width:900px;
	width: 100%;
	margin:0 auto;
	background: #fff;
	border-radius: .5rem;
	color:var(--p-color);
	text-align: center;
	padding: 22px 20px;
} 

.work_intro_title{
    font-size: 4.375rem;
    text-transform: uppercase;
    font-weight: 900;
    line-height: 1;
	margin-bottom: 20px;
}


.work_intro_desc{
font-size: 1.5rem;
    font-family: var(--title-font-family);
    line-height: 1.4;
}


.work_list_top {
        gap: 3rem;
        -ms-grid-columns: 1fr 2.1875vw 1fr 2.1875vw 1fr 2.1875vw 1fr;
        display: -ms-grid;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        justify-content: center;
        justify-items: center;
        padding-left: 0;
		position: relative;
}


.work_block{
	border:#cbcbcb solid 1px;
	background-color: #fff;
}

.work_block a{
	 color: #000;
}
.work_block .img_area{
	
}


.work_block .text_area{
	padding:14px 20px;
}


.work_block .title{
	font-weight: 500;
	margin-bottom: 10px;
	
}

.work_block .desc {
    margin-bottom: 15px;
}

.work_block .tags{
	display: flex;
	flex-wrap: wrap;
	gap:10px;
}

.work_block .tags li span{
    border-radius: 9999px;
    border: solid 1px var(--p-color);
    font-size: 14px;
    padding: 0.15rem 0.625rem;
    display: block;
}


.main_btn_container{
	padding: 50px 10px;
	min-width: 100%;
	justify-content: center;
	display: flex;
}


section.notice .main_btn_container.pc{
	display: flex!important;
}



.main_btn{
    background: var(--p-color);
    color: #fff;
    border: 3px solid #fff;
    box-shadow: 1px 0px 5px 0px rgba(0, 0, 0, 0.35);
    padding: 8px 30px 10px;
    font-size: 1.15rem;
    line-height: 1;
	position: relative;
	z-index: 1;
	overflow: hidden;
}




.main_btn:hover{
	color:var(--p-color);
	border: 3px solid var(--p-color);
	
}

.main_btn::before{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-image: url("../assets/images/hover_bg.png");
	background-repeat: no-repeat;
    position: absolute;
    transition: all ease-in-out 500ms;
	left: 0;
	bottom: 0;
	z-index: -1;
    background-size: 100% 100%;
    top: 0;
	filter: brightness(0) invert(1);
	
}




.main_btn::after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-color:var(--p-color);
    position: absolute;
    transition: all ease-in-out 500ms;
	left: 0;
	bottom: 0;
	z-index: -1;
    background-size: 100% 100%;
    top: 0;

}



.main_btn:hover::after{
	left: 100%;
}



.voice_list_top {
        gap: 3rem;
        -ms-grid-columns: 1fr 2.1875vw 1fr 2.1875vw 1fr 2.1875vw 1fr;
        display: -ms-grid;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr ;
        justify-content: center;
        justify-items: center;
        padding-left: 0;
		position: relative;
}


.voice_list_top .voice_block{
	background-color: #fff;
	box-shadow: 1px 0px 5px 0px rgba(0, 0, 0, 0.35);
}

.voice_list_top .voice_block a{
	 color: #000;
}


.voice_list_top .voice_block .text_area{
	padding:14px 20px;
}


.voice_list_top .title{
/*	font-weight: 500;*/
	margin-bottom: 10px;
/*	font-size: 1.25rem;*/
	
}


section.notice .innwrap{
	display: flex;
	justify-content: space-between;
	gap:60px;
}

section.notice .innwrap ul.notice{
	margin-bottom: 150px;
}


section.notice .innwrap ul.notice li a, .news_block ul.notice li a{
	color:#000;
	display: flex;
	column-gap: 40px;
	align-items: center;
}

section.notice .innwrap ul.notice li a .tag, .news_block ul.notice li a .tag{ 
	font-size: 14px;
	padding:2px 16px;
	background: #fff;
	border:solid 1px var(--p-color);
	border-radius: 9999px;
	min-width:125px;
	text-align:center;
}


section.notice .innwrap ul.notice li:first-child, .news_block ul.notice li:first-child{
	border-top:#cecece solid 1px;
}


section.notice .innwrap ul.notice li, .news_block ul.notice li{
	border-bottom:#cecece solid 1px;
	padding:1.5rem 0;
}


section.notice .innwrap ul.notice li a:hover, .news_block ul.notice li a:hover{
	color:var(--p-color);
}

.top_contact .innwrap{
	display: flex;
	justify-content: space-between;
}


.top_contact .innwrap .top_title{
	font-size:  2.625rem;
}

.cap_contact{
	font-size: 22px;
}

.top_contact .btn_content{
	display: flex;
	gap:1.125rem;
	flex-direction: column;
	
}


.top_contact .btn_content .contact_btn{
    background: #fff;
    border-radius: 9999px;
    display: flex;
    padding: 1rem 1.625rem;
    align-items: center;
    gap: 2rem;
	max-height: 68px;
	transition: all ease-in-out 500ms;
	border:solid 1px #fff;
	max-width: 290px;
}



.top_contact .btn_content .contact_btn:hover{
	background-color: var(--p-color);
	
}

.top_contact .btn_content .contact_btn:hover .text .main, .top_contact .btn_content .contact_btn:hover .text .smltext{
	color:#fff;
}




.top_contact .btn_content .contact_btn:hover .icon img.ct_btn{
	filter: brightness(0) invert(1);
}


.top_contact .btn_content .contact_btn.linebtn{
	background: #00c300;
	transition: all ease-in-out 500ms;
	border:solid 1px #00c300;
}
.top_contact .btn_content .contact_btn.linebtn:hover{
	background: #07b44d;
	
}


.top_contact .btn_content .contact_btn .icon{
	width: 32px;
}

.top_contact .btn_content .contact_btn .text{
    justify-content: center;
    display: flex;
    flex-direction: column;
    color: var(--p-color);
    font-size: 24px;
	line-height: 1;
	transition: all ease-in-out 500ms;
}

.top_contact .btn_content .contact_btn .text.cntr{
    align-items: center;
}
.top_contact .btn_content .contact_btn.linebtn .text{
	 color: #fff;
	font-size: 18px;
	transition: all ease-in-out 500ms;
}

.top_contact .btn_content .contact_btn .text .main{
	font-weight: 600;
	margin-bottom: 4px;
	transition: all ease-in-out 500ms;
}

.top_contact .btn_content .contact_btn .smltext{
	font-size: 11px;
	color:#000000;
	transition: all ease-in-out 500ms;
}



footer{
	background: #333333;
	padding-top: 2rem;
}


footer .innwrap{
	display: flex;
	justify-content: space-between;
}


footer .logo .master_logo{
	width: 142px;
}



footer .right_cntn .footer_nav ul{
	display: flex;
	gap:1.5rem;
}

footer .right_cntn li a{
	color:#fff;
}

footer .right_cntn li a:hover{
	color:var(--p-color);
}

footer .right_cntn{
	display: flex;
    flex-direction: column;
    justify-content: end;
}


footer .right_cntn .contact_btn{
	display: flex;
    padding: 1rem 0 1rem 1.625rem;
    align-items: center;
    gap: 1rem;
    transition: all ease-in-out 500ms;
    justify-content: flex-end;
}

footer .right_cntn .contact_btn .text{
    justify-content: center;
    display: flex;
    flex-direction: column;
    color: #fff;
    font-size: 24px;
	line-height: 1;
	transition: all ease-in-out 500ms;
}

footer .right_cntn .contact_btn .text .main{
	font-weight: 600;
	margin-bottom: 4px;
	transition: all ease-in-out 500ms;
}



footer .right_cntn .contact_btn .icon {
	width: 32px;
}

footer .right_cntn .contact_btn .icon img{
	filter: brightness(0) invert(1);
}

p.copyright{
    font-size: 12px;
    text-align: center;
    color: #fff;
    margin-top: 2rem;
    background-color: #222222;
    padding: 12px 0;
}


.inner-kv {
    height:100vh;
    padding-bottom: 0;
    background: url(../assets/images/1.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-size: cover;
   position:relative;
}


.kvtitle{
    position: absolute;
    width: 100%;
    padding-top: 150px;
    bottom: 0;
    background-color: #fff;
    clip-path: polygon(0% 150px, 100% 50px, 100% 100%, 0% 100%);
}

.title_wrap{
        padding:40px 0;
        position: relative;
        z-index: 2;
        display:flex;
        gap:24px;
width:100%;
max-width:1400px;
margin:0 auto;
}


.title_vector{
    left: 0;
    width: 130px;
    bottom: 50px;
    position: absolute;
    z-index: -1;
}



.voice_page .title_vector{
    left: 0;
    width: 260px;
}

.kvtitle::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(230, 0, 18, 1);
    background-image: url(../assets/images/bg_block.png);
    background-size: 60%;
    background-blend-mode: multiply;
    clip-path: polygon(0% 160px, 100% 60px, 100% 100%, 0% 100%);
    z-index: 1;
}


.kvtitle h2 {
font-size:40px;
padding-left:160px;
  color:#fff;
}

.voice_page .kvtitle h2 {
	padding-left:280px;
}



.inner_wrap{
width:100%;
max-width:1400px;
margin:0 auto;
}

.work_single .inner_wrap, .voice_single .inner_wrap, .contact-page .inner_wrap{
	max-width:850px;	
}

.concerns_wrap{
    display: flex;
    justify-content: space-between;
	column-gap: 60px;
}

.concerns_wrap .concerns_title h3{ 
	width: 265px;
}
.concerns_cntn .concerns{
        display: -ms-grid;
        display: grid;
        grid-template-columns: 1fr 1fr;
      gap:35px;
}




.concerns li{
  display:flex;
gap:30px;
align-items: end;

}

.concerns li img{
 width:60px;
border-radius:8px;
}

.concerns li p{
  font-size:18px;
  font-weight:500;
}


.solution_steps{
   margin:80px 50px 0;
    filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.5));

}

.solutionsteps_cntn{
clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0 100%, 0 0);
border-radius:8px;
background-color:#fff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
    padding-left:2rem;

}





.step {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
    flex: 1;
    min-width: 160px;
    text-align: center;
    margin: 2rem 0;
}

.step img {
  width: 100%;
  display: block;
}

.step p {
  background: #e60012;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  padding: 6px 0;
  margin: 0;
}


.arrow-step {
position: relative;
    flex: 1.2;
    clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 50%, calc(100% - 25px) 100%, 0 100%);
    border-radius: 0;
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 276px;
}

.arrow-step img {
    /* width: 100%; */
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    right: 0;
    /* height: 150px; */
    top: 0;
    border-radius: 0;
 
}


    .flex_box {
        display: flex;
        padding: 50px 0;
        justify-content: left;
    }
	
.flex_box .f_box_img {
    width: 40%;
    border-radius:12px;
    overflow: hidden;
}

.flex_box .f_box_msg {
    padding-left: 70px;
    flex-direction: column;
    padding-top: 0;
    display: flex;
    justify-content: flex-start;
    width:60%;	
}


.flex-row-reverse .f_box_msg{
	padding-right:70px;
    padding-left: 0;
	}


.flex_box .f_box_msg h3{
	font-size:28px;
	color:#fff;	
	padding:2px 2rem 0 1rem;
	background-image: url(../assets/images/hover_bg.png);
    background-repeat: no-repeat;
	background-size:100% 100%;
	width: fit-content;
	margin-bottom:60px;
	
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

section.merit{
	padding:80px 0 0;
}

.merit h4{
	font-size:2rem;
	font-weight:600;
	text-align:center;
	margin:0 15px;
	color:#fff;
}

.merit_img{
	width:66px;
	border-radius:50%;
	border:solid 1px var(--p-color);
	padding:10px;
	overflow:hidden;
}

.merit_cntn{
	gap:20px;
	display:flex;
	flex-direction:column;
}

.merit_cntn li{
    display: flex;
    gap: 2rem;
    padding: 10px 60px 10px 10px;
    border-radius: 60px;
    background: #fff;
    align-items: center;
}

.merit_cntn{
	margin:60px auto 0;
	width:fit-content;
}

.merit_cntn .merit_txt p{
	font-weight:600;
	font-size: 17px;
}



.inner-page .contact_c{
    margin-top:0;
    padding-top:0;
    clip-path: polygon(0% 0, 100% 0%, 100% 100%, 0% 100%);	
}



.work_cat_filter{
	display: flex;
    justify-content: flex-start;
    gap: 3px;
	margin-bottom:60px;
	    flex-wrap: wrap;
}


.work_cat_filter li .cat-btn{
    display: flex;
    justify-content: flex-start;
    padding: 4px;
    align-items: center;
	border-radius:4px;
	background-color:#fff;
	border: solid 1px;
	gap:10px;
	cursor:pointer;
	font-weight:600;
	transition: all ease-in-out 500ms;
	font-size: 16px;
}





.work_cat_filter li .cat-btn::before{
	content:"";
	width:28px;
	height:28px;
	border:solid 1px;
	background-color:#fff;
	border-radius:4px;
	    background-repeat: no-repeat;
	background-size:80% 80%;    
	background-position: center;
}

}

.work_cat_filter li .cat-btn:hover{
	border:solid 1px #fff;
}
.work_cat_filter li .cat-btn.painting{
	color:var(--p-color);
}

.work_cat_filter li .cat-btn.painting::before{
	background-image: url(../assets/images/icon_paint.png);
}

.work_cat_filter li .cat-btn.painting:hover, .work_cat_filter li .cat-btn.painting.active{
	background-color:var(--p-color);
	color:#fff;
}




.work_cat_filter li .cat-btn.exterior_renovation{
color:var(--blue-color);
}

.work_cat_filter li .cat-btn.exterior_renovation::before{
	background-image: url(../assets/images/icon_ex_reform.png);
}

.work_cat_filter li .cat-btn.exterior_renovation:hover, .work_cat_filter li .cat-btn.exterior_renovation.active{
	background-color:var(--blue-color);
	color:#fff;
}






.work_cat_filter li .cat-btn.interior_renovation{
	color:var(--green-color);
}

.work_cat_filter li .cat-btn.interior_renovation::before{
	background-image: url(../assets/images/icon_in_reform.png);
}

.work_cat_filter li .cat-btn.interior_renovation:hover, .work_cat_filter li .cat-btn.interior_renovation.active{
	background-color: var(--green-color);
	color:#fff;
}




.work_cat_filter li .cat-btn.waterproofing{
	color:var(--grey-color);
}

.work_cat_filter li .cat-btn.waterproofing::before{
	background-image: url(../assets/images/icon_waterproofing.png);
}

.work_cat_filter li .cat-btn.waterproofing:hover, .work_cat_filter li .cat-btn.waterproofing.active{
	background-color:var(--grey-color);
	color:#fff;
}




.work_cat_filter li .cat-btn.scaffolding{
	color:var(--p-color);
}

.work_cat_filter li .cat-btn.scaffolding::before{
	background-image: url(../assets/images/icon_scaffolding.png);
}

.work_cat_filter li .cat-btn.scaffolding:hover, .work_cat_filter li .cat-btn.scaffolding.active{
	background-color:var(--p-color);
	color:#fff;
}



.work_cat_filter li .cat-btn.roofing{
	color:var(--blue-color);
}

.work_cat_filter li .cat-btn.roofing::before{
	background-image: url(../assets/images/icon_roofing.png);
}

.work_cat_filter li .cat-btn.roofing:hover, .work_cat_filter li .cat-btn.roofing.active{
	background-color:var(--blue-color);
	color:#fff;
}


.work_cat_filter li .cat-btn.exterior_construction{
	color:var(--green-color);
}

.work_cat_filter li .cat-btn.exterior_construction::before{
	background-image: url(../assets/images/icon_construction.png);
}

.work_cat_filter li .cat-btn.exterior_construction:hover, .work_cat_filter li .cat-btn.exterior_construction.active{
	background-color:var(--green-color);
	color:#fff;
}



.work_cat_filter li .cat-btn.termite_control{
	color:var(--grey-color);
}

.work_cat_filter li .cat-btn.termite_control::before{
	background-image: url(../assets/images/icon_pestcontrol.png);
}

.work_cat_filter li .cat-btn.termite_control:hover, .work_cat_filter li .cat-btn.termite_control.active{
	background-color:var(--grey-color);
	color:#fff;
}






.image-comparison {
  max-width:100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom:40px;
  border-radius:8px;
  overflow: hidden;
}

.image-comparison__slider-wrapper {
  position: relative;
}

.image-comparison__label {
  font-size: 0;
  line-height: 0;
}

.image-comparison__label,
.image-comparison__range {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: ew-resize;
  z-index: 20;
}

@media (hover) {
  .image-comparison__range:hover ~ .image-comparison__slider .image-comparison__thumb {
    transform: scale(1.2);
  }
}

.image-comparison .image-comparison__slider-wrapper .image-comparison__range:active ~ .image-comparison__slider .image-comparison__thumb,
.image-comparison .image-comparison__slider-wrapper .image-comparison__range:focus ~ .image-comparison__slider .image-comparison__thumb,
.image-comparison .image-comparison__slider-wrapper .image-comparison__range--active ~ .image-comparison__slider .image-comparison__thumb {
  transform: scale(0.8);
  background-color: rgba(255, 255, 255, 0.5);
}

.image-comparison__image-wrapper--overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(50% + 1px);
  height: 100%;
  overflow: hidden;
}

.image-comparison__figure {
  margin: 0;
}
.image-comparison__figure::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
}
.image-comparison__figure:not(.image-comparison__figure--overlay) {
  position: relative;
  padding-top: 66.666666667%;
}

.image-comparison__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 0 50%;
     object-position: 0 50%;
  overflow: hidden;
}
.image-comparison__figure--overlay .image-comparison__image {
  z-index: 1;
}

.image-comparison__caption {
  position: absolute;
  top: 12px;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  color: #fff;
  font-weight: bold;
  text-transform: uppercase;
}
@media screen and (max-width: 40.063em) {
  .image-comparison__caption {
    font-size: 12px;
  }
}

.image-comparison__caption--before {
  left: 12px;
  z-index: 2;
}

.image-comparison__caption--after {
  right: 12px;
  text-align: right;
}

.image-comparison__caption-body {
  max-width: 40vmin;
  padding: 3px 12px;
  background-color: var(--p-color);
  border-radius:4px; 	
}

.image-comparison__slider {
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  background-color: #fff;
  transition: background-color 0.3s ease-in-out;
  z-index: 10;
}
.image-comparison__range--active ~ .image-comparison__slider {
  background-color: rgba(255, 255, 255, 0);
}

.image-comparison__thumb {
  position: absolute;
  top: calc(50% - 20px);
  left: calc(50% - 20px);
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  color: #000;
  border-radius: 50%;
  box-shadow: 0 0 22px 0 rgba(0, 0, 0, 0.5);
  transform-origin: center;
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

.image-comparison__range::-webkit-slider-runnable-track {
  width: 40px;
  height: 40px;
  opacity: 0;
}

.image-comparison__range::-moz-range-thumb {
  width: 40px;
  height: 40px;
  opacity: 0;
}

.image-comparison__range::-webkit-slider-thumb {
  width: 40px;
  height: 40px;
  opacity: 0;
}

.image-comparison__range::-ms-fill-lower {
  background-color: transparent;
}

.image-comparison__range::-ms-track {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  margin: 0;
  padding: 0;
  background-color: transparent;
  color: transparent;
  outline: none;
  cursor: col-resize;
}

.image-comparison__range::-ms-thumb {
  width: 0.5%;
  height: 100%;
  opacity: 0;
}

.image-comparison__range::-ms-tooltip {
  display: none;
}


.work_single h3{
	font-size:20px;
	text-align:center;
	margin-bottom:2.25rem;	
}

.mainafter{
    border-radius: 8px;
    overflow: hidden;
	margin-bottom:40px;
}


.work_single h4{
	font-size:40px;
	margin-bottom:2rem;
	color:#fff;	
}

.works_overview{
    border-radius: 8px;
	border: 1px solid #555;
    overflow: hidden;
}

.works_overview table{
   border-spacing: 0;
   width:100%;
}

.works_overview .single-works_overview_table-th{
	padding:1rem .875rem;
	background-color:#fff;	
	border: 1px solid #555;
	text-align:left;
	    min-width: 160px;

}

.works_overview .single-works_overview_table-td{
	padding:1rem .875rem;	
	background-color:#fff;
  	border: 1px solid #555;
}


.gallery_tp{
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.work_single .gallery_tp h4{
	color:#000;
}

.voice_single .gallery_tp h4{
	color:#000;	
	font-size:40px;
	margin-bottom:2rem;
}


.gallery {
    display: grid;
    grid-template-columns: auto auto auto auto;
    gap: 20px;
    max-width: 800px;

}

 .gallery div{
    position: relative;
    overflow: hidden;
}


.gallery img {
width: auto;
    cursor: pointer;
    border-radius: 8px;
    object-fit: cover;
    min-height: 100%;
}

#lightbox {
	background: rgba(0,0,0,0.8);
	position: fixed;
	left: 0;
	top: 150px;
	width: 100%;
	height: calc(100% - 150px);
	display: none;
	justify-content: center;
	align-items: center;
	color: #fff;
		z-index:9999;
}


#lightbox img {
    max-width: 90vw;
    max-height: 70vh;
  object-fit: contain;  /* maintain aspect ratio without cropping */
  border-radius: 6px;   /* optional */
  box-shadow: 0 0 20px rgba(0,0,0,0.5); /* optional */
}

.close, .prev, .next {
	position: absolute;
	cursor: pointer;
	    font-size: 32px;
}

.close {
	right: 10px;
	top: 10px;
}

.prev {
	left: 10px;
}

.next {
	right: 10px;
}

.mainafter img{
	min-width:100%;
}

.customerdetails{
	display:flex;
	gap:20px;
	margin-bottom:40px;
}

.voice_title_q{
	font-size: 22px;
    color: #fff;
    padding: 0.15rem 0.85rem 0.35rem;
    background-image: url(../assets/images/red_paintbg.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    margin-bottom: 20px;
    width: 50%;
    font-weight: 500;
}


.voice_title_a{
	margin-bottom: 40px;
}


.service-cat{
	border-radius: 9999px;
    border: solid 1px var(--p-color);
    font-size: 14px;
    padding: 0.15rem 0.625rem;
    display: block;
	background:#fff;
}


.news_block .inner_wrap{

	max-width:1200px;

}

.news_wrapper, .news_block .news-single{
	background-color:#fff;
	border-radius:16px;
	padding-top:50px; 
	padding-bottom:	50px;
}


.news_info{
	column-gap: 10px;
	flex-wrap: wrap;
	display: flex;
}

.news_block ul.notice{
	margin:0 40px;	
}

.news_block .news-single{
	padding:40px;	
}

.news_block .news-single .details{
	border-bottom:solid 1px #e8e8e8;	
	margin-bottom:40px;
} 

.other_details{
	display:flex;
	gap:30px;
	padding:20px 0;	
}

.news-single .main_btn_container{
	padding: 80px 10px 0;
}


.about .inner_wrap{

	max-width:1400px;
}

.about-intro{
	border-radius:.5rem;
	padding:2rem;
	display:flex;
background-color:#fff;
	justify-content: space-between;
}

.about-intro .imgbox{
    width: 34%;
   overflow:hidden;
  border-radius:.5rem;  		
}

.about-intro .msgbox {
    flex-direction: column;
    padding-top: 0;
    width: 62%;
}

.about-intro .msgbox h3{
	font-size:1.5rem;
	color:var(--p-color);
	margin-bottom:1rem;
}

.vison_mission{
    display: flex;
    justify-content: space-between;
	padding-top: 100px;
	column-gap:80px;
}


.vison_mission .vm_cntn{
	width: 100%;
}

.vison_mission .vm_cntn h4{
	font-size: 2.5rem;
	margin-bottom: 1rem;
	color:#fff;
}


.vison_mission .vm_box{
	border-radius:0.5rem;
	padding: 1rem;
	background: #fff;
	position: relative;
	height: calc(100% - 2rem);
	
}



.vison_mission .vm_box .shdw_txt{
	font-size: 120px;
	font-family: var(--english-font-family);
    position: absolute;
    bottom: 0;
    right: 0;
    -webkit-text-stroke-color: var(--p-color);
    -webkit-text-stroke-width: 1px;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    text-transform: uppercase;
    font-weight: 700;
    opacity: .2;
    line-height: 1;
}

.vison_mission .vm_box p strong, .vison_mission .vm_box label{
	font-weight: 600;
	color:var(--p-color);
	font-size: 1.125rem;
	margin-bottom: 1rem;
}


.vison_mission .vm_box p.vmtilte strong{
	 color: var(--main-text-color);
}

.vison_mission .vm_box label{
    min-width: 135px;
}

.vison_mission .vm_box ul li{
	display:flex;
	margin-bottom: .85rem;
}

.president_message{
	padding: 0 0 100px;
}


.president_message h3, .company_overview h3{
	font-size: 2.5rem;
	margin-bottom: 1rem
}

.president_message-intro{
	display:flex;
	justify-content: space-between;
}


.president_message-box{
		border-radius:.5rem;
	padding:2rem;
background-color:#fff;
	position: relative;
	
}


.president_message .title-wrap{
	display: flex;
	
}



.president_message-intro h4{
	font-size: 1.5rem;
    color: var(--p-color);
    margin-bottom: 1rem;
}

.president_message-intro .imgbox{
    /*width: 25%;*/
	overflow:hidden;
	border-radius:.5rem;  
	margin-bottom: 2rem;
}

.president_message-intro .msgbox {
    flex-direction: column;
    padding-top: 0;
    width: 72%;
}

.president_details{
    display: flex;
    align-self: baseline;
    justify-content: flex-end;
    padding-top: 1.5rem;
}
	




.company_overview_tbl{
    border-radius: 8px;
	border: 1px solid #555;
    overflow: hidden;
}

.company_overview_table{
   border-spacing: 0;
   width:100%;
}

.company_overview .company_overview_table-th{
	padding:1rem .875rem;
	background-color:#fff;	
	border: 1px solid #555;
	text-align:left;
	min-width: 140px;

}

.company_overview .company_overview_table-td{
	padding:1rem .875rem;	
	background-color:#fff;
  	border: 1px solid #555;
}

.contact-cntn{
	padding: 2.5rem;
	border-radius: .5rem;
	background: #fff;

}


.line-cntn{
	padding: 2.5rem;
	border-radius: .5rem;
	background: #fff;
	margin-bottom: 40px;
		display: flex;
	gap:30px;
}


.line-cntn .qrcode{
	width: 120px;
}

.line-cntn .linbttn{
    background: #00c300;
    border: solid 1px #00c300;
    border-radius: 4px;
    display: flex;
    padding: 0.25rem 1rem;
    align-items: center;
    gap: 1rem;
    transition: all 
ease-in-out 500ms;
    color: #fff;
    margin-bottom: 10px;
    width: fit-content;
}

.line-cntn .linbttn .icon {
    width: 24px;
}


.line-cntn .linbttn:hover {
    background: #07b44d;
}

.contact-cntn ul li{
	flex-direction: column;
	display: flex;
	margin-bottom: 1.25rem;
}

.contact-cntn ul li .lbl p{
	display: flex;
	margin-bottom: .5rem;
	gap:20px;
}


input.wpcf7-form-control.wpcf7-text, textarea.wpcf7-form-control.wpcf7-textarea {
    text-align: unset;
    padding: 14px 8px;
    width: 100%;
    border-radius: 5px;
    border: solid 1px #e0e0e0;
    background-color: #f5f5f5;
}




.contact-cntn ul li .lbl .req{
font-size: 12px;
    padding: .15rem .4rem;
    color: #fff;
    background: var(--p-color);
    border-radius: 4px;
}

.contact-cntn input:focus-visible, textarea:focus-visible {
	background-color: #fbfbfb;
	border: solid 1px var(--p-color);
	outline: none;
	
}


.contact-cntn .main_btn_container{
	padding: 20px 10px;
}

.main_btn_container .wpcf7-spinner{
	display: none!important;
}

.contact-cntn .main_btn_container p{
display: flex;
    gap: 20px;
}
.contact-cntn .main_btn_container .submit{
    border-radius: 9999px;
    min-width: 16rem;
    background-color: var(--p-color);
    font-size: 1rem;
    color: #fff;
    padding: 10px;
    position: relative;
    text-align: center;
    display: inline-block;
    pointer-events: auto;
    cursor: pointer;
    transition: all 0.3s;
    overflow: hidden;
    z-index: 1;
    border: solid 1px var(--p-color);
}


.contact-cntn .main_btn_container .submit:hover {
    color: var(--p-color);
    border: solid 1px var(--p-color);
    background: #fff;
}


.contact-cntn .main_btn_container .back-btn{
  border-radius: 9999px;
    min-width: 16rem;
    font-size: 1rem;
    padding: 10px ;
    position: relative;
    text-align: center;
    display: inline-block;
    pointer-events: auto;
    cursor: pointer;
    transition: all 0.3s;
    overflow: hidden;
    z-index: 1;
    border: solid 1px #333;	
	  background-color: #dddddd;
  color: #333;
}


.contact-cntn .main_btn_container .back-btn:hover {
  background-color: #fff;
  color: #000;
}



.contact-cntn .confirm_area{
	background-color: #fbfbfb;
    border: solid 1px #e0e0e0;
    padding: 14px 8px;
    width: 100%;
    border-radius: 5px;
}


.thankyou{
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap:30px;
	align-items: center;
}


.contact-cntn .thankyou h4{
	text-align: center;
	font-size: 1.5rem;

}



.privacy-cntn{
	padding: 2.5rem;
    border-radius: .5rem;
    background: #fff;
}



.privacy-cntn h3{
	margin-top:1.75rem;
	padding-bottom: 10px;
	border-bottom:1px solid #f0eff5;
	color:#b40128;
	font-size: 22px;
	margin-bottom: 10px;
	    display: flex;
}


.privacy-cntn h3::before{
    content: "";
    min-width: 20px;
    background-image: url(../assets/images/list_style.png);
    background-size: 100%;
    height: 25px;
    background-repeat: no-repeat;
    margin-right: 12px;
	align-self: center;
}





.privacy-cntn ul li{
		display:flex;
		column-gap: 10px;
	    align-items: center;
}

.privacy-cntn ul li::before{
content: "";
	background-color: #b40128;
	border:solid 1px #000;
	border-radius:50%;
	width: 5px;
	height: 5px;
		
}


.privacy-cntn p strong{
	font-weight: 600;
}


	.ti-separator{
		    color: #ffffff !important;
		    font-size: 15px;
		    line-height: 20px;
		}
	.ti-separator:before {
    margin-left: 5px;
    margin-right: 8px;
    position: relative;
    top: -1px;
    display: inline-block;
    font-weight: normal;
    content: " | ";
    height: 15px;
}
		
		.google_logo{
	margin-right: 8px;
    background: #fff;
    padding: 3px 15px;
    border-radius: 15px;
    vertical-align: middle;
    display: inline;
    line-height: 1em !important;
    display: flex;
    align-items: center;
		}
		
		.google_logo img{
    display: inline;
    position: relative;
    margin-left: 3px !important;
    width: auto !important;
    height: 19px !important;
    object-fit: unset !important;
		}
		
    .google-reviews-minimal {
        display: inline-flex;
        align-items: center;
    }
		
    .google-reviews-minimal .stars {
        color: #FFD700;
        margin-right: 6px;
    }
    .google-reviews-minimal .rating-number {
        font-weight: bold;
        margin-right: 4px;
		color: #fff;
    }
    .google-reviews-minimal .review-count {
        color: #fff;
		font-weight: bold;
    }





@keyframes masterlogo {
	0% {
		transform: scale(0.5);
	}

	100% {
		transform: scale(1);
	}
}


@keyframes roller {
	0% {
		opacity: 0;
left:0;
	}
	
	1% {
		opacity: 100%;

	}

	99% {
		opacity: 100%;
left:100%;
              
	}
	100% {
		opacity: 0;
	}
}


@keyframes colorroll {
	0% {
		width: 0;
	}
	
	100% {
		width: 100%;
	}
}

._anm {
  opacity: 0;
  transform: translateY(50px);
  transition: all 800ms ease-out;
}
._anm._is-inview {
  opacity: 1;
 transform: translateY(0);
}
section ._anm:nth-child(1) {
  transition-delay: 0s;
}
section ._anm:nth-child(2) {
  transition-delay: 0.3s;
}
section ._anm:nth-child(3) {
  transition-delay: 0.6s;
}
section ._anm:nth-child(4) {
  transition-delay: 0.9s;
}

section ._anm:nth-child(5) {
  transition-delay: 1.2s;
}






@media screen and (max-width: 1700px) {
	section.work .innwrap, section.voice .innwrap{
        padding-left: 4%;
        padding-right: 4%;		
	}
		
		
	.work_list_top {
    gap: 1.5rem;
		}

}

@media screen and (max-width: 1440px) {
  .master_logo_cntn {
    gap: 30px;
    margin-bottom: 2.375rem;
  }
  .master_logo {
    width: 45%;
  }
  .master_logo_cntn .top_quicks {
    column-gap: 20px;
  }
  .master_logo_cntn .top_quicks li {
    padding: 8px 16px;
    min-width: 13.5rem;
  }
  .master_logo_cntn .top_quicks p {
    column-gap: 16px;
  }
  .master_logo_cntn .top_quicks li p img {
    height: 35px;
  }
  .master_logo_cntn .top_quicks p span {
    font-size: 1.5rem;
  }
	
	section.services .innwrap, section.voice .innwrap, section.notice .innwrap, section.contact_top .innwrap, footer .innwrap, .top_contact .innwrap,
.inner_wrap, .title_wrap,  .privacy-page .inner_wrap
{
        padding-left: 4%;
        padding-right: 4%;
}
	
	
}



@media screen and (max-width: 1200px){
	.master_logo {
    width: 30%;
  }
	
	section.promise .innwrap, .work_single .inner_wrap, .voice_single .inner_wrap, .contact-page .inner_wrap{
        padding-left: 4%;
        padding-right: 4%;
}
	
}


@media screen and (max-width: 1074px){
	
nav .logo {
    width: 9.5rem;
}	
	
.nav-links li a {
	font-size: 15px;
    padding: .5rem 0.35rem;
	display: flex;
}
	
.btn_a, .nav-links li a.btn_a {
    min-width: 15px;
    font-size: 1rem;
    padding: 12px 22px;	
	}

nav {
    padding: 1rem;	
}

	.top_contact .btn_content .contact_btn .text{
		    font-size: 20px;
	}	
	
	.top_contact .btn_content .contact_btn {
    padding: 1rem 1.5rem;
    gap: 1rem;
    min-width: 266px;
}
	
	.solution_steps {
    margin: 80px 0 0;
	}
	
	.step {
    min-width: 110px;
	}
	
	footer .right_cntn .footer_nav ul {
    display: flex;
    gap: 0.5rem 2rem;
    flex-wrap: wrap;
}

.master_kv {	
    padding-top: 8.7rem;
}
}
	
@media screen and (min-width: 768px){

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

}