/* 
Theme Name: KOHO-Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Template: hello-elementor
Version: 1.0.1
*/

html,body {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size:16px;
	line-height:1.8;
	font-feature-settings: "palt";
}
p, th, td, dd, dt, li, input,txtarea {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size:16px;
	line-height:1.8;
	font-feature-settings: "palt";
}
strong {
	font-weight:700;
}
a {
	color: #00a53b;
}
a:hover {
	color: #9dc814;
}
a:visited {
	color: #9dc814;
}
h1 {
	font-feature-settings: "palt";
}
h2,h3,h4,h5 {
	line-height:1.5 !important;
	font-feature-settings: "palt";
}
.lh12 span {
	line-height: 1.2 !important;
}
.mainhl h2 {
	color:#000000;
	font-size:42px;
	white-space: nowrap;
	line-height:1.4;
}
.mainhl span {
	display:inline-block;
	background-color: #9dc814;
	color:#FFFFFF;
	font-size:16px;
	border-radius:50px;
	padding: 3px 30px;
}
.hl2 h2,.hl3 h3, .hl3_o h3, .hl3_b h3 {
	color:#000000;
	font-size:40px;
	font-weight:700;
	white-space: nowrap;
	line-height:1.5;
}
.hl2 h2 span, .hl3 h3 span {
	display:inline-block;
	background-color: #9dc814;
	color:#FFFFFF;
	font-size:14px;
	border-radius:50px;
	padding: 3px 20px;
}
.hl3_o h3 span {
	display:inline-block;
	background-color: #f7931e;
	color:#FFFFFF;
	font-size:14px;
	border-radius:50px;
	padding: 3px 20px;
}
.hl3_b h3 span {
	display:inline-block;
	background-color: #29abe2;
	color:#FFFFFF;
	font-size:14px;
	border-radius:50px;
	padding: 3px 20px;
}
.hl4 h4 {
	font-weight:500;
	font-size:22px;
	line-height:1.5;
}
.hl5 h5 {
	color:#000000;
	font-size:28px;
	font-weight:600;
	white-space: nowrap;
	line-height:1.5;
}
.hl5 h5 span {
	display:inline-block;
	background-color: #9dc814;
	color:#FFFFFF;
	font-size:13px;
	border-radius:50px;
	padding: 2px 20px;
	margin-bottom: 10px;
}
.pricetitle span {
	display:inline-block;
	background-color: #9dc814;
	color:#FFFFFF;
	font-size:13px;
	font-weight:700;
	border-radius:50px;
	padding: 2px 20px;
}
.pricetitle_o span {
	display:inline-block;
	background-color: #f7931e;
	color:#FFFFFF;
	font-size:13px;
	font-weight:700;
	border-radius:50px;
	padding: 2px 20px;
}
.phone p {
	font-weight:700;
	font-size:60px;
	color:#00a53b;
}
.phone span{
	font-size:16px;
	color:#000000;
}
.spbr br{
	display:none;
}



.con span {
	font-size:20px!important;
	color:#00a53b;
	font-weight:900;
}

.con span.note {
	font-size:14px;
	color:#000000;
	font-weight:400;
}



.contacttel span {
	font-size:40px;
	color:#00a53b;
	font-weight:900;
}
.contacttel span.note {
	font-size:14px;
	color:#000000;
	font-weight:400;
}
.inquirybutton .telnam {
	display:block;
	font-size:22px;
	font-weight: 800;
	line-height: 1.5;
}
#mainnavigations a {
	mix-blend-mode:multiply;
	
}
#siteid img {
	mix-blend-mode: multiply;
}


table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background-color: #f2f7e1;
}
table.table2 tbody>tr:nth-child(odd)>td, table.table2 tbody>tr:nth-child(odd)>th,table.table3 tbody>tr:nth-child(odd)>td, table.table3 tbody>tr:nth-child(odd)>th {
    background-color: #FFFFFF;
}
table.table1, table.table2, table.table3, table.table4 {
	border-collapse: collapse;
	border:none;
}

table.table1 th, table.table1 td,table.table2 th, table.table2 td,table.table3 th, table.table3 td,table.table4 th, table.table4 td {
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  background-color: transparent;
}

table.table1, th {
	color: #00a53b;
	text-align: left;
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
}
table.table1, table.table4  td {
	color: #000000;
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
}

table.table4 th {
	color: #00a53b;
	text-align: left;
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
}
table.table4 td {
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
}

table.table2 th {
	color: #00a53b;
	text-align: left;
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
	white-space: nowrap;
}
table.table2 td {
	border:none;
	border-bottom: solid 1px #999;
	background-color:none;
}
table.table3 th {
	color: #000000;
	text-align: left;
	border:none;
	border-bottom: solid 1px #9dc814;
	background-color:none;
	padding: 5px;
	font-weight:400;
}
table.table3 td {
	border:none;
	text-align: right;
	border-bottom: solid 1px #9dc814;
	background-color:none;
	padding: 5px;
	font-weight:700;
}


.price p {
	font-weight:700;
	font-size: 18px;
	color: #f15a24;
}
.price p span {
	font-size: 15px;
	color: #00a53b;
}
.category01 span {
	display:inline-block;
	padding: 3px 10px;
	background-color:#9dc814;
	color:#FFF;
	font-weight:600;
	border-radius: 50px;
}
.servicecat1 span {
	display:inline-block;
	font-size:18px;
	padding: 10px 15px;
	background-color:#9dc814;
	color:#FFF;
	font-weight:600;
	border-radius: 5px;
}
.servicecat2 span {
	display:inline-block;
	padding:10px 15px;
	font-size:18px;
	background-color:#f7931e;
	color:#FFF;
	font-weight:600;
	border-radius: 5px;
}
.servicecat3 span {
	display:inline-block;
	padding: 10px 15px;
	background-color:#29abe2;
	color:#FFF;
	font-size:18px;
	font-weight:600;
	border-radius: 5px;
}
.dammy {
	padding:5px;
}
.dammy span {
	color:#9dc814;
	padding-right: 1.5em;
}
.blend {
	mix-blend-mode: hard-light;
}


/* 1025px以上（PC）では非表示 _モバイル版ハンバーガーメニュー*/
@media (min-width: 1025px) {
  .only-mobile { display: none !important; }
}

@media screen and (max-width:767px) { 	
	
	.dammy span {
	line-height:30px;
	display: block;
}
		
  .mainhl h2,.hl2 h2, .hl3 h3, .hl3_o h3, .hl3_b h3, .hl5 h5 {
    white-space: normal !important;
  }

  .hl3 h3 { 
    line-height: 1.3 !important;
    overflow-wrap: anywhere; /* 長い語でも折り返せるように */
    word-break: normal;
  }
	.hl4, .hl5{
		white-space: normal !important;
	}

/* 会社概要＿table ai*/
  table.table1, table.table2, table.table3, table.table4 {
    border-collapse: separate !important;   
    border-spacing: 0 !important;          
    border: 0 !important;                   
  }
  table.table1 thead, table.table1 tbody, table.table1 tfoot,table.table2 thead, table.table2 tbody, table.table2 tfoot,table.table3 thead, table.table3 tbody, table.table3 tfoot,table.table4 thead, table.table4 tbody, table.table4 tfoot {
    border: 0 !important;
  }
  table.table1 tbody tr, table.table2 tbody tr,table.table3 tbody tr,table.table4 tbody tr {
    border-bottom: none !important; 
  }
	
  table.table1 th, table.table1 td,table.table2 th, table.table2 td,table.table3 th, table.table3 td,table.table4 th, table.table4 td {
	padding:10px 0 0 0 ;
    display: block;
    width: 100%;
    text-align: left;          /* 可読性重視（必要なら調整） */
    white-space: normal !important; /* table2 の nowrap を解除 */
    overflow-wrap: anywhere;   /* 長文対策（住所など） */
  }
	
	
  table.table1 th, table.table2 th, table.table3 th, table.table4 th {
    border-bottom: none !important;
  }
  table.table1 td, table.table2 td, table.table4 td {
    border-bottom: solid 1px #999 !important;
	padding:0 0 10px 0;
  }
	
　table.table1 tbody tr:last-child td,table.table2 tbody tr:last-child td,table.table3 tbody tr:last-child td,table.table4 tbody tr:last-child td {
    border-bottom-width: 1px !important;  
  }
/* 会社概要ここまで*/
	
}
@media screen and (max-width:480px) {
	.hl2 h2,.hl3 h3, .hl3_o h3, .hl3_b h3 {
		font-size:36px;
		line-height:1.2 !important;
	}
	.hl2 h2 span,.hl3 h3 span, .hl3_o h3 span, .hl3_b h3 span {
		margin-bottom:10px;
	}
	.hl4 h4, .hl4 h2 {
		line-height:1.2 !important;
	}
	.hl5 h5 {
		line-height:1.2 !important;
	}
	.hl5 h5 span {
		margin-bottom: 10px;
	}
	.spbr br{
		display:inline;
	}
}