@charset "utf-8";
/* CSS Document */
.mainvisual{
	/* max-width: 1200px; */
	font-size: 0;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.mainvisual h2{
	color: #404040;
	/* font-size: 20px;
	color: #fff;
	text-shadow: 0px 0px 3px rgba(0,0,0,0.8); */
	line-height: 1.8;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 100px;
	transform: translateY(-50%);
	z-index: 1;
	margin: auto;
}
.mainvisual h2 span{
	display: block;
	font-size: 40px;
	border-bottom: solid 3px #850000;
}
.mainvisual h2 em{
	display: block;
	font-size: 20px;
	/* color: #fff;
	text-shadow: 0px 0px 3px rgba(0,0,0,0.8); */
	margin-top: 10px;
}
.mainvisual .slick-dotted.slick-slider {
    margin-bottom: 0;
}
.mainvisual .slick-dots{
	bottom: 20px;
}
.mainvisual .slick-dots li{
	width: 10px;
    height: 10px;
}
.mainvisual .slick-dots li button:before{
	opacity: .7;
    background: #fff;
}
.mainvisual .slick-dots li.slick-active button:before,.mainvisual .slick-dots li button:hover:before{
	background: #808080;
}

.about{
	/* max-width: 1200px;
	margin: 0 auto; */
	/* max-width: inherit; */
	background: url(../img/about_bg.jpg) no-repeat top left;
	/* background-size: 100% auto; */
	background-size: cover;
	padding: 100px 0;
	box-sizing: border-box;
}
.about .aboutbox{
	max-width: 800px;
	margin: 0 auto;
	padding: 15px 50px 50px;
	background: rgba(255,255,255,0.85);
	box-sizing: border-box;
}
.about .aboutbox .inner{
	max-width: 700px;
	margin: 0 auto;
}
.about .aboutbox h3{
	/* font-size: 24px; */
	text-align: left;
	color: #404040;
	line-height: 1;
	border-left: solid 2px #850000;
	padding-left: 10px;
}
.about .aboutbox h4{
	font-size: 20px;
	color: #404040;
	margin-top: 20px;
}
.about .aboutbox h4 + p{
	margin-top: 16px;
}
/* .about .aboutbox h4 + p br.pc{
	display: block;
}
.about .aboutbox h4 + p br.sp{
	display: none;
} */

.about .aboutbox .text14{
	font-size: 14px;
	margin-top: 30px;
}
.about .aboutbox .bannerarea{
	margin-top: 40px;
	font-size: 0;
	letter-spacing: 0;
}
.about .aboutbox .bannerarea li{
	/* width: 340px; */
	width: 48.573%;
	display: inline-block;
	/* margin-left: 20px; */
	margin-left: 2.854%;
}
.about .aboutbox .bannerarea li:first-child{
	margin-left: 0;
}
.drawingarea{
	max-width: 700px;
	margin: 40px auto 0;
	background: #fff;
	padding: 40px 0;
}
.drawingarea .drawingbox{
	max-width: 600px;
	margin: 0 auto;
}
.drawingbox .slick-prev,.drawingbox .slick-next{
    width: 20px;
    height: 30px;
    background: none;
	margin: auto;
}
.drawingbox .slick-prev{
	left: -35px;
}
.drawingbox .slick-next{
	right: -35px;
}
.drawingbox .slick-prev:before {
    width: 20px;
    height: 30px;
    border: none;
	top: 0;
	left: 0;
}
.drawingbox .slick-next:before {
    width: 20px;
    height: 30px;
    border: none;
	top: 0;
	right: 0;
}
.drawingbox .slick-prev:before {
    content: url("../img/drawing_arrow_left.svg");
    border: none;
    -ms-transform: inherit;
    -webkit-transform: inherit;
    transform: inherit;
}
.drawingbox .slick-next:before {
    content: url("../img/drawing_arrow_right.svg");
	width: 20px;
    height: 30px;
    border: none;
    border: none;
    -ms-transform: inherit;
    -webkit-transform: inherit;
    transform: inherit;
}
.linkarea{
	max-width: 700px;
	margin: 40px auto 0;
	box-sizing: border-box;
	
}
.linkarea a{
	display: block;
	font-size: 14px;
	line-height: 1;
	color: #fff;
	padding: 15px 40px;
	background: linear-gradient(to right, #850000, transparent);
}

.bnr_news{
	/* max-width: 1200px;
	margin: 0 auto; */
	/* max-width: inherit; */
	background: #f3f1e9;
	overflow: hidden;
	padding-bottom: 80px;
}
.bnr_box{
	/* max-width: 1000px; */
	max-width: 1100px;
	font-size: 0;
	margin: 90px auto 0;
	padding: 0 50px;
	box-sizing: border-box;
}

.bnr_news .bnr_slide li{
	width: 300px;
	display: inline-block;
}
.bnr_news .bnr_slide li a{
	display: block;
	background: #ababab;
	color: #fff;
	padding: 20px;
}
.bnr_news .bnr_slide li dl{
	border-left: solid 2px #fff;
	padding-left: 10px;
}
.bnr_news .bnr_slide li dt{
	font-size: 18px;
}
.bnr_news .bnr_slide li dd{
	font-size: 14px;
	margin-top: 10px;
}
.bnr_news .bnr_inner{
	margin: 0 -25px;
}
.bnr_news .slick-slide{
	margin:0 25px;
}

.bnr_news .slick-prev,.bnr_news .slick-next{
    width: 20px;
    height: 30px;
    background: none;
	margin: auto;
}
.bnr_news .slick-prev{
	left: -2%;
}
.bnr_news .slick-next{
	/* right: -25px; */
	right: -2.4%;
}
.bnr_news .slick-prev:before {
    width: 20px;
    height: 30px;
    border: none;
	top: 0;
	left: 0;
}
.bnr_news .slick-next:before {
    width: 20px;
    height: 30px;
    border: none;
	top: 0;
	right: 0;
}
.bnr_news .slick-prev:before {
    content: url("../img/drawing_arrow_left.svg");
    border: none;
    -ms-transform: inherit;
    -webkit-transform: inherit;
    transform: inherit;
}
.bnr_news .slick-next:before {
    content: url("../img/drawing_arrow_right.svg");
	width: 20px;
    height: 30px;
    border: none;
    border: none;
    -ms-transform: inherit;
    -webkit-transform: inherit;
    transform: inherit;
}

.bnr_news .newsbox{
	max-width: 700px;
	margin: 90px auto 0;
}
.bnr_news .newsbox h3{
	/* font-size: 24px; */
	/* text-align: center; */
	margin-bottom: 20px;
}
.bnr_news .newsbox dl{
	font-size: 14px;
}
.bnr_news .newsbox dd{
	font-size: 16px;
	margin: 20px 0;
	padding-bottom: 20px;
	border-bottom: solid 0.5px #ababab;
}

.columnarea{
	/* max-width: 1200px;
	margin: 0 auto; */
	/* max-width: inherit; */
	background: url(../img/column_bg.svg) repeat top left;
}
.columnarea .inner{
	max-width: 1000px;
	padding: 90px 0;
	margin: 0 auto;
	overflow: hidden;
}
/* .columnarea h3{
	font-size: 24px;
	text-align: center;
} */
.columnarea h3 span{
	display: block;
	font-size: 20px;
}
.columnarea h3 + p{
	font-size: 20px;
	text-align: center;
	margin-top: 40px;
}
.columnarea .storybox{
	display: flex;
    justify-content: flex-end;
	margin-top: 90px;
	position: relative;
}
.columnarea .storybox:nth-child(even){
	justify-content: flex-start;
}
.columnarea .storybox .image{
	width: 40.1%;
	position: absolute;
	top: -50px;
	left: 0;
}
.columnarea .storybox:nth-child(even) .image{
	left: inherit;
	right: 0;
}
.columnarea .storybox .image img{
	width: 100%;
	max-width: inherit;
}
.columnarea .storybox .text{
	width: 70%;
	/* max-width: 700px; */
	/* float: right; */
	background: #f3f3f3;
	padding: 40px 0 50px 150px;
	box-sizing: border-box;
}
.columnarea .storybox:nth-child(even) .text{
	padding: 40px 150px 50px 45px;
}
.columnarea .storybox .text h4{
	font-size: 20px;
}
.columnarea .storybox .text h4 span{
	display: block;
	font-size: 12px;
}
.columnarea .storybox .text p{
	font-size: 14px;
	line-height: 2;
	margin-top: 15px;
}
.columnarea .storybox .text .date{
	margin-top: 10px;
}
.columnarea .storybox .text .tab{
	font-size: 0;
	margin-top: 10px;
}
.columnarea .storybox .text .tab li{
	display: inline-block;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	background: #404040;
	padding: 5px 20px;
	margin-top: 10px;
	margin-right: 10px;
}
.columnarea .articlelinks{
	float: right;
	margin-top: 40px;
}
.columnarea .articlelinks a{
	display: block;
	/* font-size: 12px; */
}
.columnarea .articlelinks a + a{
	margin-top: 20px;
}


.worksarea{
	/* max-width: 1200px; */
	margin: 90px auto 0;
}
/* .worksarea h3{
	font-size: 24px;
	text-align: center;
} */
.worksarea h3 + p{
	font-size: 20px;
	text-align: center;
	margin-top: 20px;
}
.worksarea article{
	max-width: 1000px;
	margin: 0 auto;
}
.worksarea article ul{
	margin-top: 40px;
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}
/* .worksarea ul{
	font-size: 0;
} */
.worksarea ul li{
	width: 30%;
	margin-left: 5%;
	display: inline-block;
	vertical-align: top;
	text-align: left;
}
.worksarea ul li:first-child{
	margin-left: 0;
}
.worksarea ul li dl{
	letter-spacing: .2rem;
	margin-top: 20px;
}
.worksarea ul li dl dt{
	font-size: 20px;
}
.worksarea ul li dl dd{
	font-size: 14px;
	margin-top: 20px;
}
.worksarea .articlelinks {
    float: right;
	white-space: nowrap;
    margin-top: 40px;
}

.partnersarea{
	/* max-width: 1200px; */
	margin: 90px auto 0;
	overflow: hidden;
}
/* .partnersarea h3{
	font-size: 24px;
	text-align: center;
} */
.partnersarea h3 + p{
	font-size: 20px;
	text-align: center;
	margin-top: 20px;
}
.partnersarea article{
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}
.partnersarea ul{
	font-size: 0;
	letter-spacing: 0;
	margin-top: -50px;
	margin-left: -30px;
	margin-right: -30px;
	padding-top: 40px;
}
.partnersarea ul li{
	/* width: 150px; */
	/* height: 150px; */
	/* width: 14.152%; */
	width: 11%;
	margin:50px 30px 0;
	display: inline-block;
	/* background: #404040;
	border-radius: 50%; */
}
/* .partnersarea ul li:first-child,.partnersarea ul li:nth-child(6n){
	margin-left: 0;
} */
.partnersarea ul li div{
	padding-top: 100%;
	padding-top: 100%;
	height: 0;
	position: relative;
}
.partnersarea ul li span{
	/* width: 100%;
	height: 100%; */
	/* display: flex;
	justify-content: center;
 	align-items: center; */
	position: absolute;
	top: calc((100% - 30px)/2);
	left: 0;
	right: 0;
	margin: 0;
	text-align: center;
}
.partnersarea ul li span em{
	font-size: 20px;
	color: #fff;
}
.partnersarea .articlelinks {
    float: right;
    margin-top: 40px;
}
.partnersarea .articlelinks a{
	display: block;
	/* font-size: 12px; */
}

@media screen and (max-width:1000px) {
	.about{
		padding: 100px 0;
	}
	.about .aboutbox{
		width: 90%;
		margin: 0 auto;
		max-width: inherit;
	}
	.bnr_box{
		width: 90%;
		max-width: inherit;
	}
	.bnr_news .newsbox{
		width: 90%;
		ax-width: inherit;
	}
	.columnarea .inner {
		width: 90%;
		max-width: inherit;
	}

}

/* @media screen and (max-width:768px) {
} */
	
@media screen and (max-width:750px) {
	.mainvisual h2 {
		font-size: 22px;
		text-align: center;
		top: 50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
	}
	.mainvisual h2 span{
		/* font-size: 48px; */
	}
	.mainvisual h2 em {
		/* font-size: 22px; */
		/* text-align: center; */
	}
	.about {
		padding: 90px 0 40px;
	}
	/* .about .aboutbox h3 {
		background: linear-gradient(to left, #000000, transparent);
	} */
	.about .aboutbox{
		/* padding: 20px 35px 40px; */
		padding: 20px 20px 40px;
	}
	/* .about .aboutbox h3{
		font-size: 28px;
	} */
	.about .aboutbox h4{
		/* font-size: 24px; */
		/* font-size: 21px; */
		font-size: 20px;
	}
	.about .aboutbox h4 + p{
		font-size: 16px;
	}
	/* .about .aboutbox h4 + p br.pc{
		display: none;
	}
	.about .aboutbox h4 + p br.sp{
		display: block;
	} */

	/* .about .aboutbox .bannerarea {
		padding-top: 20px;
	} */
	.about .aboutbox .bannerarea li{
		width: 340px;
		display: block;
		margin-top: 20px;
		margin-left: 0;
	}
	.about .aboutbox .text14{
		font-size: 12px;
	}
	.drawingarea{
		padding: 0;
	}
	.drawingbox .slick-prev{
		left: -20px;
	}
	.drawingbox .slick-next{
		right: -20px;
	}
	.linkarea a{
		font-size: 16px;
		line-height: 1.3;
		background: #850000;
		border-radius: 5px;
	}
	.bnr_box{
		padding: 0;
	}
	.bnr_news .bnr_inner{
		margin: 0;
	}
	.bnr_news .bnr_slide li{
		width: auto;
		display: block;
		margin-top: 20px;
	}
	.bnr_news .bnr_slide li:first-child{
		margin-top: 0;
	}
	.bnr_news .bnr_slide li dt {
		font-size: 22px;
	}
	.bnr_news .bnr_slide li dd {
		font-size: 15px;
	}

	/* .bnr_news .newsbox h3{
		font-size: 28px;
	} */
	.bnr_news .newsbox dl {
		font-size: 17px;
	}

	/* .columnarea .inner{
		width: 80%;
	} */
	.columnarea h3{
		/* font-size: 28px; */
		line-height: 2;
	}
	.columnarea h3 span {
		font-size: 24px;
	}
	.columnarea h3 + p {
		font-size: 17px;
		text-align: center;
		margin-top: 20px;
	}
	.columnarea .storybox {
		display: block;
		justify-content: inherit;
		margin-top: 40px;
	}
	.columnarea .storybox .text h4 {
		font-size: 24px;
	}
	.columnarea .storybox .text h4 span {
		font-size: 12px;
	}
	.columnarea .storybox .text p {
		font-size: 14px;
	}
	.columnarea .storybox .text .tab li{
		font-size: 14px;
	}
	.columnarea .storybox .image {
		width: auto;
		position: inherit;
		top: inherit;
	}
	.columnarea .storybox .text {
		width: auto;
		padding: 40px 20px;
	}
	.columnarea .storybox:nth-child(even) .text{
		padding: 40px 20px;
	}
	.columnarea .articlelinks a{
		font-size: 14px;
	}


	.worksarea{
		width: 80%;
	}
	/* .worksarea h3 {
		font-size: 28px;
		text-align: center;
	} */
	.worksarea h3 + p{
		/* font-size: 24px; */
		font-size: 18px;
	}
	.worksarea article{
		max-width: inherit;
	}
	.worksarea ul{
		margin-top: 50px;
	}
	.worksarea ul li {
		width: auto;
		margin:40px 0 0;
		display: block;
	}
	.worksarea ul li:first-child {
		margin-top: 0;
	}
	.worksarea ul li img{
		width: 100%;
	}
	.worksarea ul li dl dt {
		font-size: 24px;
	}
	.worksarea ul li dl dd {
		font-size: 14px;
	}
	.worksarea .articlelinks{
		font-size: 14px;
	}
	/* .partnersarea h3 {
		font-size: 28px;
	} */
	.partnersarea h3 + p{
		/* font-size: 24px; */
		font-size: 18px;
	}
	.partnersarea ul {
		margin-left: -6.666%;
		margin-right: -6.666%;
	}
	.partnersarea ul li{
		width: 20%;
		margin: 50px 6.666% 0;
	}
	.partnersarea .articlelinks a {
		font-size: 14px;
	}

}

@media screen and (max-width:456px) {
	.about .aboutbox .bannerarea li{
		width: auto;
	}
	.about .aboutbox .bannerarea li img{
		width: auto;
		max-width: 100%;

	}
}
