@charset "utf-8";

#header2 nav ul li.m0 a{
	color:#FFF;
	background-color:#C6001A;
	}
#header2 nav ul li.m0 a:after{
	border-color:#FFF;
	}
#contactb{
	margin-top:0px;
	}
header h1 img.logo2{
	display:none;
	}
header.fix h1 img{
	display:none;
	}
header.fix h1 img.logo2{
	display:block;
	}
header nav ul li a{
	color:#FFF;
	}
header.fix nav ul li a{
	color:#323232;
	}
header nav ul li.m2 a:after{
	border-color:#FFF;
	}
header.fix nav ul li.m2 a:after{
	border-color:#323232;
	}
header nav ul li a:hover{
	color:#FFF;
	}
header.fix nav ul li a:hover{
	color:#323232;
	}
header nav ul li.m2 ul li a{
	color:#323232;
	}
header nav ul li.m2 ul li a:hover{
	color:#323232;
	}
header nav ul li.m2 ul li.current_page_item a,
header nav ul li.m2 ul li.current-cat a{
	color:#323232;
	}
header:after{
	opacity:0;
	}
header.fix:after{
	opacity:0.97;
	}
#loading{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:hidden;
	zoom:1;
	z-index:3000;
	background:url(../img/home/loading.gif) no-repeat center center;
	-webkit-background-size:44px auto;
	background-size:44px auto;
	background-color:#FFF;
	transition:1s;
	opacity:100;
	}
#loading.finish{
	opacity:0;
	z-index:-1000;
	}
#moviebg{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:hidden;
	zoom:1;
	z-index:-3;
	}
#moviebg:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-color:#000;
	position:absolute;
	left:0;
	top:0;
	filter:alpha(opacity=20);
	-moz-opacity:0.2;
	opacity:0.2;
	z-index:-2;
	transition:1s;
	}
#moviebg.fix:after{
	filter:alpha(opacity=65);
	-moz-opacity:0.65;
	opacity:0.65;
	}
#moviebg video{
	position:absolute;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	z-index:-3;
	}
#scroll{
	height:115px;
	position:fixed;
	z-index:100;
	right:3%;
	bottom:0;
	transition:0.8s;
	opacity:100;
	}
#scroll.fix{
	opacity:0;
	}
#scroll h4{
	font-size:13px;
	font-family:'Oswald';
	font-weight:300;
	color:#FFF;
	position:absolute;
	left:50%;
	margin-left:-22px;
	top:0;
	letter-spacing:0.15em;
	-moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	transform:rotate(90deg);
	}
#scroll:after{
	content:"";
	display:block;
	width:1px;
	height:70px;
	background-color:#FFF;
	position:absolute;
	left:50%;
	top:45px;
	z-index:2;
	}
#scroll div{
	display:block;
	height:70px;
	position:absolute;
	left:50%;
	top:45px;
	width:10px;
	margin-left:-5px;
	overflow:hidden;
	zoom:1;
	}
#scroll span{
	display:block;
	width:5px;
	height:25px;
	background-color:#FFF;
	position:absolute;
	left:50%;
	top:-35px;
	margin-left:-2px;
	z-index:3;
	}
#sec1{
	height:100%;
	width:100%;
	position:relative;
	}
#sec1 h2{
	position:fixed;
	left:8%;
	bottom:14%;
	z-index:2;
	color:#FFF;
	line-height:1.2;
	filter:alpha(opacity=40);
	-moz-opacity:0.4;
	opacity:0.4;
	transition:0.8s;
	}
#sec1 h2.fix{
	opacity:0;
	}
#sec1 h2 span{
	font-size:18px;
	font-family:'Oswald';
	display:block;
	font-weight:300;
	letter-spacing:0.33em;
	margin-bottom:18px;
	}
#sec1 h2 strong{
	font-size:66px;
	font-weight:900;
	display:block;
	letter-spacing:0.12em;
	}
#sec1 div{
	position:fixed;
	left:8%;
	bottom:14%;
	z-index:1;
	color:#FFF;
	line-height:1.2;
	mix-blend-mode:overlay;
	transition:0.8s;
	opacity:100;
	}
#sec1 div.fix{
	opacity:0;
	}
#sec1 div span:before{
	content:"KOSUGI SYOUTEN CO., LTD.";
	font-size:18px;
	font-family:'Oswald';
	display:block;
	font-weight:300;
	letter-spacing:0.33em;
	margin-bottom:18px;
	}
#sec1 div:after{
	content:"地域と共に\A新たな未来へ。";
	white-space: pre-wrap;
	font-size:66px;
	font-weight:900;
	display:block;
	letter-spacing:0.12em;
	}
#sec2{
	padding:600px 0 160px 0;
	}
#sec2 .box{
	max-width:1200px;
	margin:0 auto;
	padding:0 70px 0 300px;
	position:relative;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	text-align:right;
	}
#sec2 .box .titleb{
	position:absolute;
	left:70px;
	top:0;
	text-align:left;
	color:#FFF;
	}
#sec2 .box .titleb strong{
	color:#FFF;
	}
#sec2 .box p{
	max-width:700px;
	text-align:left;
	font-size:18px;
	font-weight:700;
	color:#FFF;
	display:inline-block;
	line-height:2.9;
	position:relative;
	z-index:5;
	}
#sec2 .box p strong{
	margin-top:60px;
	display:block;
	}
#sec2 .wrap{
	width:100%;
	height:400px;
	overflow:hidden;
	margin-top:280px;
	}
#sec2 .wrap ul{
	display:flex;
	min-width:100%;
	width:min-content;
	animation:32s linear infinite sliderAnimation;
	}
#sec2 .wrap ul li{
	position:relative;
	list-style-type:none;
	float:left;
	margin-right:15px;
	overflow:hidden;
	zoom:1;
	}
#sec2 .wrap ul li img{
	height:100%;
	width:auto;
	max-width:none;
	}
@keyframes sliderAnimation{ 100%{ transform:translateX(-50%); }}
#sec3bg{
	background-color:#FFF;
	position:relative;
	z-index:2;
	padding:180px 70px 180px 70px;
	}
#sec3{
	max-width:1160px;
	margin:0 auto;
	position:relative;
	padding-left:240px;
	text-align:right;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	font-size:0;
	}
#sec3 .titleb{
	position:absolute;
	left:0;
	top:0;
	}
#sec3 .box{
	display:inline-block;
	max-width:840px;
	text-align:left;
	}
#sec3 .box div{
	float:left;
	width:44%;
	margin-right:12%;
	position:relative;
	}
#sec3 .box div:nth-of-type(2n){
	margin-right:0;
	}
#sec3 .box div:nth-of-type(1),
#sec3 .box div:nth-of-type(2){
	margin-bottom:70px;
	border-bottom:1px solid #E4E4E4;
	padding-bottom:70px;
	}
#sec3 .box div h3{
	font-size:30px;
	font-weight:700;
	text-align:center;
	position:relative;
	}
#sec3 .box div h3 a{
	position:relative;
	margin-bottom:48px;
	display:block;
	}
#sec3 .box div h3 a:after{
	content:"";
	display:block;
	width:37px;
	height:37px;
	right:20px;
	bottom:20px;
	position:absolute;
	background-color:#C6001A;
	border-radius:100px;
	-webkit-border-radius:100px;
	-moz-border-radius:100px;
	-o-border-radius:100px;
	-ms-border-radius:100px;
	z-index:1;
	}
#sec3 .box div h3 a:before{
	content:"";
	display:block;
	position:absolute;
	right:35px;
	bottom:34px;
	width:6px;
	height:6px;
	border-top:3px solid #FFF;
	border-right:3px solid #FFF;
	z-index:2;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#sec3 .box div h3 a img{
	border-radius:20px;
	-webkit-border-radius:20px;
	-moz-border-radius:20px;
	-o-border-radius:20px;
	-ms-border-radius:20px;
	}
#sec3 .box div h3 a span{
	font-size:60px;
	font-family:'Oswald';
	font-weight:500;
	display:block;
	position:absolute;
	left:20px;
	bottom:-40px;
	z-index:1;
	color:#323232;
	letter-spacing:0.05em;
	}
#sec3 .box div h3 strong{
	font-size:38px;
	font-family:'Oswald';
	font-weight:300;
	position:absolute;
	right:-130px;
	top:150px;
	-moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	transform:rotate(90deg);
	letter-spacing:0.08em;
	width:260px;
	text-align:left;
	}
#sec3 .box div p{
	font-size:15px;
	line-height:1.8;
	color:#8C8C8C;
	margin-top:15px;
	}
#sec3 .box div ul{
	padding-top:15px;
	overflow:hidden;
	zoom:1;
	}
#sec3 .box div ul li{
	font-size:16px;
	color:#059991;
	border:1px solid #059991;
	float:left;
	margin:10px 6px 0 0;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	line-height:1.7;
	padding:1px 12px 1px 12px;
	background-color:#E6F5F4;
	}
#sec3 .box div img.logo{
	position:absolute;
	left:-15px;
	top:-20px;
	}
#sec4bg{
	background-color:#E6E6E6;
	padding:140px 40px 0px 40px;
	position:relative;
	z-index:2;
	}
#sec4bg:after{
	content:"";
	display:block;
	width:100%;
	height:28px;
	position:absolute;
	left:0;
	bottom:0;
	z-index:1;
	background-color:#FFF;
	}
#sec4{
	max-width:1330px;
	margin:0 auto;
	overflow:hidden;
	zoom:1;
	text-align:center;
	font-size:0;
	}
#sec4 article{
	display:inline-block;
	width:30%;
	margin:60px 1.6% 0 1.6%;
	vertical-align:top;
	background-color:#FFF;
	border-radius:26px;
	-webkit-border-radius:26px;
	-moz-border-radius:26px;
	-o-border-radius:26px;
	-ms-border-radius:26px;
	overflow:hidden;
	zoom:1;
	text-align:left;
	padding-bottom:25px;
	}
#sec4 article h3{
	overflow:hidden;
	zoom:1;
	position:relative;
	}
#sec4 article h3 a{
	padding-top:60%;
	display:block;
	position:relative;
	}
#sec4 article h3 a img{
	position:absolute;
	top:50%;
	left:50%;
	width:100%;
	transform:translateY(-50%) translateX(-50%);
	-webkit-transform:translateY(-50%) translateX(-50%);
	}
#sec4 article h3 a:hover{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
#sec4 article h3 a:after{
	content:"";
	display:block;
	width:30px;
	height:30px;
	right:15px;
	bottom:15px;
	position:absolute;
	background-color:#C6001A;
	border-radius:100px;
	-webkit-border-radius:100px;
	-moz-border-radius:100px;
	-o-border-radius:100px;
	-ms-border-radius:100px;
	z-index:1;
	}
#sec4 article h3 a:before{
	content:"";
	display:block;
	position:absolute;
	right:28px;
	bottom:27px;
	width:5px;
	height:5px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	z-index:2;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#sec4 article ul{
	display:block;
	overflow:hidden;
	zoom:1;
	padding:0 25px;
	position:relative;
	z-index:1;
	margin-top:-20px;
	}
#sec4 article ul li{
	font-size:15px;
	line-height:1.7;
	float:left;
	margin:5px 5px 0 0;
	}
#sec4 article ul li a{
	color:#FFF;
	background-color:#C6001A;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	display:block;
	padding:1px 12px 2px 12px;
	}
#sec4 article ul li a:hover{
	filter:alpha(opacity=85);
	-moz-opacity:0.85;
	opacity:0.85;
	}
#sec4 article h4{
	font-weight:700;
	font-size:20px;
	line-height:1.7;
	padding:22px 25px 0 25px;
	}
#sec4 article h4 a{
	color:#323232;
	}
#sec4 article h4 a:hover{
	filter:alpha(opacity=85);
	-moz-opacity:0.85;
	opacity:0.85;
	}
#sec4 article p{
	font-size:15px;
	line-height:1.8;
	color:#8C8C8C;
	padding:12px 25px 0 25px;
	}
#sec4 article time{
	font-size:16px;
	font-weight:300;
	color:#A0A0A0;
	font-family:'Oswald';
	letter-spacing:0.05em;
	float:right;
	padding:28px 25px 0 30px;
	position:relative;
	}
#sec4 article time:after{
	content:"";
	display:block;
	width:20px;
	height:1px;
	position:absolute;
	left:0;
	top:39px;
	background-color:#B4B4B4;
	}
#sec4 h5{
	text-align:center;
	margin-top:110px;
	position:relative;
	z-index:2;
	}
#sec5bg{
	background-color:#FFF;
	padding:180px 70px 190px 70px;
	position:relative;
	z-index:2;
	}
#sec5{
	max-width:1160px;
	margin:0 auto;
	position:relative;
	padding-left:240px;
	text-align:right;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	font-size:0;
	min-height:250px;
	}
#sec5 .titleb{
	position:absolute;
	left:0;
	top:0;
	}
#sec5 article{
	text-align:left;
	max-width:100%;
	width:840px;
	display:inline-block;
	border-bottom:1px solid #E4E4E4;
	padding:40px 0px 28px 35px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	position:relative;
	}
#sec5 article:first-of-type{
	border-top:1px solid #E4E4E4;
	}
#sec5 article time{
	display:block;
	font-size:18px;
	font-weight:300;
	color:#A0A0A0;
	font-family:'Oswald';
	letter-spacing:0.05em;
	float:left;
	margin:8px 30px 0 0;
	}
#sec5 article ul{
	display:block;
	float:left;
	overflow:hidden;
	zoom:1;
	}
#sec5 article ul li{
	font-size:15px;
	line-height:1.7;
	float:left;
	margin:5px 5px 0 0;
	}
#sec5 article ul li a{
	color:#FFF;
	background-color:#C6001A;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	display:block;
	padding:1px 12px 2px 12px;
	}
#sec5 article ul li a:hover{
	filter:alpha(opacity=85);
	-moz-opacity:0.85;
	opacity:0.85;
	}
#sec5 article h3{
	font-weight:700;
	font-size:20px;
	line-height:1.7;
	clear:both;
	padding-top:6px;
	}
#sec5 article h3 a{
	color:#323232;
	display:block;
	position:relative;
	padding:10px 60px 10px 0;
	}
#sec5 article h3 a:after{
	content:"";
	display:block;
	position:absolute;
	right:35px;
	top:23px;
	width:7px;
	height:7px;
	border-top:3px solid #C6001A;
	border-right:3px solid #C6001A;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#sec5 h4{
	position:absolute;
	left:0;
	top:180px;
	}
@media screen and (max-width:900px){
header.fix h1 img{
	display:block;
	}
header.fix h1 img.logo2{
	display:none;
	}
#loading{
	-webkit-background-size:38px auto;
	background-size:38px auto;
	}
#scroll{
	height:90px;
	right:8%;
	}
#scroll h4{
	font-size:12px;
	margin-left:-21px;
	}
#scroll:after{
	height:50px;
	top:40px;
	}
#scroll div{
	height:50px;
	top:40px;
	}
#scroll span{
	height:20px;
	}
#sec1 h2{
	top:400px;
	bottom:auto;
	}
#sec1 h2 span{
	font-size:16px;
	letter-spacing:0.2em;
	margin-bottom:15px;
	}
#sec1 h2 strong{
	font-size:50px;
	letter-spacing:0.1em;
	}
#sec1 div{
	top:400px;
	bottom:auto;
	}
#sec1 div span:before{
	font-size:16px;
	letter-spacing:0.2em;
	margin-bottom:15px;
	}
#sec1 div:after{
	font-size:50px;
	letter-spacing:0.1em;
	}
#sec2{
	padding:600px 0 0px 0;
	}
#sec2 .box{
	padding:0 9%;
	}
#sec2 .box .titleb{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	}
#sec2 .box p{
	max-width:none;
	font-size:16px;
	font-weight:400;
	display:block;
	line-height:2.3;
	margin-top:60px;
	}
#sec2 .box p strong{
	text-align:center;
	}
#sec2 .wrap{
	background-color:#FFF;
	height:200px;
	margin-top:140px;
	}
#sec2 .wrap ul{
	animation:18s linear infinite sliderAnimation;
	}
#sec2 .wrap ul li{
	width:200px;
	height:200px;
	margin-right:10px;
	}
#sec3bg{
	padding:140px 7% 140px 7%;
	}
#sec3{
	padding-left:0;
	}
#sec3 .titleb{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	margin-bottom:40px;
	}
#sec3 .box{
	display:block;
	max-width:none;
	}
#sec3 .box div{
	float:none;
	width:auto;
	margin:0px 0 40px 0;
	padding:0 0 35px 0;
	border-bottom:1px solid #E4E4E4;
	}
#sec3 .box div:nth-of-type(1),
#sec3 .box div:nth-of-type(2){
	margin-bottom:40px;
	padding-bottom:35px;
	}
#sec3 .box div:last-of-type{
	border-bottom:0;
	margin-bottom:0;
	padding-bottom:0;
	}
#sec3 .box div h3{
	font-size:24px;
	padding:0 7%;
	}
#sec3 .box div h3 a{
	margin-bottom:35px;
	}
#sec3 .box div h3 a:after{
	width:30px;
	height:30px;
	right:15px;
	bottom:15px;
	}
#sec3 .box div h3 a:before{
	right:28px;
	bottom:27px;
	width:5px;
	height:5px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	}
#sec3 .box div h3 a span{
	font-size:44px;
	bottom:-30px;
	}
#sec3 .box div h3 strong{
	font-size:30px;
	right:-108px;
	}
#sec3 .box div p{
	margin-top:12px;
	padding:0 7%;
	}
#sec3 .box div ul{
	text-align:center;
	font-size:0;
	}
#sec3 .box div ul li{
	font-size:15px;
	margin:8px 2px 0 2px;
	padding:1px 8px 2px 8px;
	line-height:1.4;
	float:none;
	display:inline-block;
	}
#sec3 .box div img.logo{
	left:0px;
	top:-15px;
	}
#sec3 .box div:nth-of-type(3) img.logo{
	width:160px;
	}
#sec3 .box div:nth-of-type(4) img.logo{
	width:100px;
	}
#sec4bg{
	padding:120px 7% 0px 7%;
	}
#sec4 article{
	display:block;
	width:100%;
	margin:40px auto 0 auto;
	max-width:600px;
	border-radius:20px;
	-webkit-border-radius:20px;
	-moz-border-radius:20px;
	-o-border-radius:20px;
	-ms-border-radius:20px;
	}
#sec4 article h4{
	padding:18px 25px 0 25px;
	}
#sec4 article p{
	font-size:14px;
	line-height:1.7;
	padding:8px 25px 0 25px;
	}
#sec4 article time{
	padding-top:18px;
	}
#sec4 article time:after{
	top:29px;
	}
#sec4 h5{
	margin-top:90px;
	}
#sec5bg{
	padding:140px 7% 140px 7%;
	}
#sec5{
	padding-left:0;
	min-height:auto;
	}
#sec5 .titleb{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	margin-bottom:40px;
	}
#sec5 article{
	width:100%;
	display:block;
	padding:28px 0px 16px 0px;
	}
#sec5 article time{
	font-size:17px;
	}
#sec5 article h3{
	font-size:17px;
	padding-top:2px;
	}
#sec5 article h3 a{
	padding:10px 40px 10px 0;
	}
#sec5 article h3 a:after{
	right:0px;
	top:20px;
	width:5px;
	height:5px;
	border-top:2px solid #C6001A;
	border-right:2px solid #C6001A;
	}
#sec5 h4{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	padding-top:60px;
	}
#contactb{
	margin-top:0;
	}
}
@media screen and (max-width:440px){
#sec1 h2 span{
	font-size:15px;
	}
#sec1 h2 strong{
	font-size:42px;
	}
#sec1 div span:before{
	font-size:15px;
	}
#sec1 div:after{
	font-size:42px;
	}
}
@media screen and (max-width:360px){
#sec1 h2 strong{
	font-size:36px;
	}
#sec1 div:after{
	font-size:36px;
	}
}