@charset "UTF-8";
/* CSS Document */
.bwWrapper {
    position:relative;
    display:block;
}
/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 769px){
	header{
		padding-bottom: 80px;
	}
	
	section h2 {
		font-size: 16px;
		font-weight: bold;
	}
	
	section .contents {
		max-width: 950px!important;
	}
	
	section.works ul{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	
	section.works ul li{
		width: 225px;
		height: 150px;
		margin-bottom: 18px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ededed;
		overflow: hidden;
	}
	
	section.works ul li a{
		width: 100%;
		display: block;
		line-height: 0;
	}
	
	/*section.works ul li a img{
		-webkit-filter: grayscale(100%);
		-moz-filter: grayscale(100%);
		-o-filter: grayscale(100%);
		-ms-filter: grayscale(100%);
		filter: grayscale(100%);
		transition-duration: 0.5s;
	}
	
	section.works ul li a:hover img{
		-webkit-filter: grayscale(0%);
		-moz-filter: grayscale(0%);
		-o-filter: grayscale(0%);
		-ms-filter: grayscale(0%);
		filter: grayscale(0%);
	}*/
	
	section.company .contents ul,
	section.topics ul{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	
	section.topics ul{
		justify-content: flex-start;
	}
	
	section.company .contents ul li{
		width: 42.63%;
		max-width: 405px;
		line-height: 2.3;
		color: #666;
		text-align: justify;
		text-justify: inter-ideograph;
		letter-spacing: 0.03em;
	}
	
	section.company .contents ul li:first-child{
		width: 47.89%;
		max-width: 455px;
		letter-spacing: 0;
	}
	
	section.topics .contents ul li {
		width: 145px;
		margin-right: 30px;
		margin-bottom: 10px;
	}
	
	section.topics .contents ul li a{
		width: 100%;
		display: block;
		text-align: center;
		margin-bottom: 10px;
		color: #555;
		transition-duration: 0.5s;
	}
	
	section.topics .contents ul li a:hover{
		opacity: 0.7;
	}
	
	section.topics .contents ul li a div{
		width: 100%;
		height: 145px;
		overflow: hidden;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		line-height: 0;
		background: url(../images/top/topics_noimage.png) no-repeat;
		background-size: contain;
		margin-bottom: 10px;
	}
	
	section.topics .contents ul li a h3{
		font-size: 12px;
		font-weight: bold;
	}
	
	section.topics .contents ul li a p{
		font-size: 12px;
	}
	
	section.news {
		width: 100%;
		max-width: 100%;
		background: #FFF;
		padding: 38px 100px;
		margin-bottom: 0;
	}
	
	section.news .contents ul{
		width: 100%;
	}
	
	section.news .contents li.block{
		border-bottom: 1px solid #c1c1c1;
		padding-bottom: 7px;
		margin-bottom: 15px;
	}
	
	section.news .contents li a{
		display: block;
		transition-duration: 0.5s;
		font-size: 13px;
		color: #666;
		line-height: 1.2;
	}
	
	section.news .contents li a br{
		display: none;
	}
	
	section.news .contents li a:hover{
		opacity: 0.7;
	}
	
	section.news .contents li a ul{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: flex-start;
	}
	
	section.news .contents li a ul li.date{
		width: 80px;
	}
	
	section.news .contents li a ul li.news_title{
		color: #333;
	}
}

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media print, screen and (max-width: 768px){
	.slick-track {
		width: 100%!important;
	}
	.slick-slide {
		display: inline;
		line-height: 0;
	}
	
	header{
		position: relative;
		padding-right: 5%;
		text-align: right;
	}
	
	header h1 {
		text-align: right;
		margin: 10px 0;
	}
	
	header h1 img{
		width: 30%;
		min-width: 156px;
	}
	
	section h2 {
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1.2;
		font-weight: bold;
	}
	
	section ul.section_inner{
		width: 88%;
		margin: 0 auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	
	section ul.section_inner li.title{
		width: 20%;
	}
	
	section ul.section_inner li.contents{
		width: 76.6%;
		padding-left: 3.4%;
	}
	
	section.works {
		padding-top: 1px;
	}
	
	section.works h2.sp {
        width: 84%;
        margin: 25px auto 0;
        padding-bottom: 20px;
        font-size: 14px;
        font-size: 1.4rem;
        text-align: center;
    }
	
	section.works ul.section_inner{
		width: 100%;
		margin: 25px auto 0;
	}
	
	/*section.works ul.section_inner li.title{
		width: 20%;
		margin-left: 6%;
	}*/
	
	section.works ul.section_inner li.contents{
		width: 100%;
		padding-left: 0;
	}
	
	section.works .contents ul{
		width: 80%;
		margin: 0 auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		
	}
	
	section.works .contents ul li {
		width: 37.5vw;
		margin-bottom: 25px;
	}
	
	section.works .contents ul li div{
		width: 100%;
	}
	
	section.works .contents ul li a div div.photo{
		width: 100%;
		height: 25vw;
		background: #ededed;
		line-height: 0;
		margin-bottom: 5px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		align-items: center;
		overflow: hidden;
	}
	
	section.works .contents ul li a div div.text{
		width: 100%;
		margin-bottom: 0;
	}
	
	section.works .contents ul li a div div.text h4{
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	
	section.works .contents ul li a div div.text p.date{
		font-size: 12px;
		font-size: 1.2rem;
	}
	
	section.works div.more_box{
		width: 80%;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	
	/*section.works .contents li.block{
		border-bottom: 1px solid #c1c1c1;
		padding-bottom: 5px;
		padding-right: 10px;
		margin-bottom: 12px;
	}
	
	section.works .contents li a{
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		color: #666;
		line-height: 1.2;
	}
	
	section.works .contents li a ul{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: flex-start;
	}
	
	section.works .contents li a ul li.date{
		margin-bottom: 7px;
		padding-right: 1em;
	}
	
	section.works .contents li a ul li.category{
		margin-bottom: 7px;
	}
	
	section.works .contents li a ul li.news_title{
		width: 100%;
		color: #333;
		font-size: 14px;
		font-size: 1.4rem;
	}*/
	
	section.company .contents ul,
	section.topics ul{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	
	section.company .contents ul li{
		width: 100%;
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 2.3;
		color: #666;
		text-align: justify;
		text-justify: inter-ideograph;
		margin-bottom: 20px;
	}
	
	section.topics .contents ul li {
		width: 29vw;
		max-width: 138px;
		margin-bottom: 10px;
	}
	
	section.topics .contents ul li a{
		width: 100%;
		display: block;
		text-align: center;
		margin-bottom: 10px;
		color: #555;
	}
	
	section.topics .contents ul li a div{
		width: 100%;
		height: 29vw;
		max-height: 138px;
		overflow: hidden;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		line-height: 0;
		background: url(../images/top/topics_noimage.png) no-repeat;
		background-size: contain;
		margin-bottom: 10px;
	}
	
	section.topics .contents ul li a h3{
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: bold;
	}
	
	section.topics .contents ul li a p{
		font-size: 12px;
		font-size: 1.2rem;
	}
	
	section.news {
		width: 100%;
		background: #FFF;
		padding: 38px 0;
		margin-bottom: 0;
	}
	
	section.news ul.section_inner{
		width: 100%;
		margin: 0 auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	
	section.news ul.section_inner li.title{
		width: 20%;
		margin-left: 6%;
	}
	
	section.news ul.section_inner li.contents{
		width: 76.6%;
		padding-left: 3.4%;
	}

	section.news .contents ul{
		width: 100%;
	}
	
	section.news .contents li.block{
		border-bottom: 1px solid #c1c1c1;
		padding-bottom: 5px;
		padding-right: 10px;
		margin-bottom: 12px;
	}
	
	section.news .contents li a{
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		color: #666;
		line-height: 1.2;
	}
	
	section.news .contents li a ul{
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: flex-start;
	}
	
	section.news .contents li a ul li.date{
		padding-right: 1em;
		min-width: 76px;
	}
	
	section.news .contents li a ul li.category{
		display: inline-block;
		min-width: 7rem;
	}
	
	section.news .contents li a ul li.news_title{
		/*width: -webkit-calc(100% - 120px);
		width: -moz-calc(100% - 120px);
		width: calc(100% - 120px);*/
		color: #333;
		display: inline;
	}
	
	section.news .contents li a ul li.news_title br{
		display: none;
	}
}

@media print, screen and (max-width: 480px){

}