@import url('https://fonts.googleapis.com/css2?family=LINE+Seed+JP:wght@400;700;800&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
@charset "utf-8";
:root{
--fontfamily:"LINE Seed JP", sans-serif;
--fontfamilyen:"Lato", sans-serif;
--fontcolor: #231815;
--mainecolor:#009944;
--subcolor:#ffef20;
--anime:all 0.5s 0s ease-out;
--animemovie:all 1s 0.5s ease-out;
--maxcontent:80rem;
}
* {
	margin:0;
	padding:0;
	box-sizing:border-box;
	outline:none;
}

body {
  font-family: "LINE Seed JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size : 20px;
  line-height : 45px;
  letter-spacing : 2px;
}
p {
	word-break: auto-phrase;
}
ul, li {
	list-style:none;
}
img {
	border:0;
	max-width:100%;
	height:auto;
	vertical-align: bottom;
}
table{
	border-collapse: collapse;
	width:98%;
	margin:auto;
}
table tr {
	border-bottom:1px dashed #C8C8C8;
}
table th,
table td {
	padding:15px 10px;
	box-sizing:border-box;
	text-align:left;
	vertical-align:top;
}
table th {
	font-weight:normal;
	width:150px;
}
table td ul li {
	text-indent: -1.2em;
    padding-left: 1em;
}
#header {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 99;
padding-left:450px;
transition:var(--anime);
background: #FFFFFF;
height:137px;
}
#header h1.logo {
position: absolute;
top: 0;
left: 30px;
width: 380px;
aspect-ratio: 380 / 80;
margin: auto;
bottom: 0;
height: 80px;
transition:var(--anime);
}
ul#menu {
display:flex;
justify-content:flex-end;
transition:var(--anime);
} 
ul#menu li a {
	display:block;
	padding:0 27px;
	color:#000;
	font-weight:bold;
	text-decoration:none;
	letter-spacing:0.1rem;
transition:var(--anime);
line-height:137px;
}
#header.fixed {
transition:var(--anime);
height:80px;
}
#header.fixed ul#menu li a {
line-height:80px;
}

#header.fixed h1.logo {
width: 260px;
height: 54px;
transition:var(--anime);
}
#wrapper {
padding-top:137px;
overflow: hidden;
}
ul#menu li a:hover {
font-weight:bold;
transition:var(--anime);
}
/* TOPスライド */
.tp_maine_wrap {
	width:100%;
	position:relative;
	height:96vh;
}
.tp_maine_wrap,
body .tp_maine_wrap .metaslider .flexslider .slides li{
	height:calc(100vh - 137px);
}
.tp_maine_wrap .metaslider .slides{
	height:100%;
}
.tp_maine_wrap .metaslider .slides img{
object-fit: cover;
object-position: left top;
height:100%;
}
.slide_catch {
position:absolute;
bottom:70px;
max-width:calc(50vw - 70px);
min-width:calc(80vw - 70px);
right:70px;
text-align:right;
}
.tp_consept {
display: grid;
gap: 10px;
grid-template-columns:41% 59%;
position:relative;
z-index:1;
}
.tp_consept .left_box{
background-color:var(--subcolor);
}
.tp_consept .right_box{
	padding:150px 3rem 0;
}
.tp_consept .right_box * {
	max-width:550px;
	margin:auto;
}
dl.logo_bt dt {
background-color:var(--mainecolor);
padding-top:210px;
padding-bottom:20px;
padding-right:20px;
text-align:right;
}
dl.logo_bt dd {
padding-top:10px;
padding-right:20px;
padding-bottom:210px;
text-align:right;
}
.more_btn {
	margin-bottom:23px!important;
}
p + .more_btn {
	padding-top:65px!important;
}
.more_btn.right a {
margin-right:0!important;
margin-left:auto!important;
text-align:right;
}
.more_btn a {
color:var(--mainecolor);
text-decoration:none;
background-image:url(https://kc-forestry.jp/wp/wp-content/uploads/2026/01/icon_arrow.png);
background-size:48px auto;
background-repeat:no-repeat;
background-position:96% center;
transition:var(--anime);
font-weight:bold;
display:table;
text-align:left;
padding-right:80px;
line-height:48px;
max-width:400px!important;
width:100%;
}
.more_btn a:hover {
background-position:100% center;
transition:var(--anime);
}
.tp_history {
position:relative;
z-index:2;
overflow:hidden;
padding-top:400px;
padding-bottom:230px;
}
.tp_history::before {
content:"";
position:absolute;
z-index:0;
width:100%;
height:100%;
top:0;
left:0;
right:0;
margin:auto!important;
background-image:url(https://kc-forestry.jp/wp/wp-content/uploads/2026/01/tp_bg2.png);
background-size:auto;
background-repeat:no-repeat;
background-position:right top;
}
.tp_history::after{
content:"";
background-color:var(--subcolor);
width:41%;
height:410px;
position:absolute;
z-index:-1;
top:0;
left:0;
}
.tp_history_wrap .ttl_box,
.tp_history_wrap .ttx_box{
	position:relative;
	z-index:2;
	
}
.tp_history_wrap {
display: grid;
margin-left:0;
grid-template-columns:41% 59%;
    align-items: flex-start;
}
.tp_history_wrap .ttl_box {
background-color:var(--subcolor);
padding:75px 20px 20px 20px;
text-align:right;
	
}
.tp_history_wrap .ttx_box{
padding-top:70px;
padding-left:115px;
padding-right:30px;
max-width:860px;
}