@charset "utf-8";

/*
font-family:'Frutiger LT W01_55 Roma1475738';
font-family:'AXIS ProN W55 UL';
font-family:'AXIS ProN W55 EL';
font-family:'AXIS ProN W55 L';
font-family:'AXIS ProN W01 R';
font-family:'Cardamon W01 Regular';
font-family:'NPNewsMIWA-Th';
font-family:'NHaasGroteskDSW01-75Bd';

日本語
font-family:'NKNewsMIWA-Th';
font-family:'NKNewsMIWA-Md';
*/



a, a:visited
 {
  color: #FFF;
}

a:hover
 {
  color: #808080;
}


body {
	-webkit-font-smoothing: antialiased;
}


.jp {
	font-family:'NKNewsMIWA-Md';	
}




/*
====================================================
■ PC
====================================================*/
@media screen and (min-width: 769px){
	
	/* common */
	a.btn {
	color: #505050;
	display: block;
	width: 100%;
	padding: 80px 0;
	outline: 1px solid #505050;
	font-family:'AXIS ProN W55 L';
	font-size: 1.8rem;
	text-align: center;		
	}
	
	a.btn.on {
		background-color: #505050;
		color: #000;
	}
	a.btn.off {
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
	h2 {
		font-family:'NHaasGroteskDSW01-75Bd';
		font-size: 5rem;
	}
	
	.wrap {
		padding-left: 100px;
		padding-right: 100px;
	}
		@media screen and (max-width: 960px){			
			.wrap {
				padding-left: 50px;
				padding-right: 50px;
			}
		}
	
	
	/* header */
	header {
		padding: 0 100px;
		padding-top: 100px;
		padding-bottom: 50px;
	}
	header h1 {
		float: left;
	}
		header .logo a {
			display: block;
			width: 34px;
			height: 45px;
			background: url(/images/common/logo.png) no-repeat left top;
			text-indent: -9999px;
		}
		header .logo a:hover {
			background-position-y: -45px;
		}
	
	header nav {
		font-family:'Cardamon W01 Regular';	
		float: right;
	}
		header nav li {
			float: left;
			font-size: 1.1rem;
			padding-left: 30px;
			padding-top: 12px;
		}
		header nav li a:hover {
			color: 
		}
	
	#TopLogo{
		height: 82vh;
		text-align: center;
		position: relative;
		.img{
			position: absolute;
			width: 502px;
			height: 146px;
			top:  0;
			bottom:  0;
			left: 0;
			right: 0;
			margin: auto;
			.logo{
				width: 502px;
				display: block;
				margin-top: -80px;
				height: auto;
			}
		}
	}
		
		
	/* NewEntry */
	#NewEntry,
	#Works {
		font-family:'Cardamon W01 Regular';
		margin-bottom: 170px;
	}
		#NewEntry .img,
		#Works .img {
			margin-bottom: 1.5vw;
		}
		#NewEntry .img img,
		#Works .img img {
			width: 100%;
		}
		#NewEntry .data .date,
		#Works .data .date {
			font-size: 1rem;
			float: left;
			padding-right: 10px;
		}
		#NewEntry .data .cat,
		#Works .data .cat {
			font-size: 0.8rem;
			float: left;
		}
		#NewEntry .data .title {
			/*font-family:'NPNewsMIWA-Th';*/
			font-size: 1.7rem;
			line-height: 1.4;
			letter-spacing: 0.1rem;
			clear: both;
			font-weight: normal;
		}
		
		
	#Works {
		margin-bottom: 100px;
	}
		#Works h2 {
			margin-bottom: 80px;
		}
		#Works .entry {
			float: left;
			width: calc(33% - 2.4%);
			/*min-height: calc(32vw);*/
			margin-bottom: 76px;
			margin-right: 4%;
		}
		#Works .works-wrap .entry:nth-child(3n) {
			margin-right: 0px;
			float: right;	
		}
		#Works .works-wrap .entry:nth-child(3n + 1) {
		clear: both;
		}
		#Works .entry img {
			width: 100%;
		}
		
		#Works .data .title {
			/*font-family:'NPNewsMIWA-Th';*/
			font-size: 1.25rem;
			line-height: 1.4;
			letter-spacing: 0.05rem;
			clear: both;
			font-weight: normal;
		}


		/* Careers */
		#Careers {
			margin-bottom: 170px;
		}
			#Careers h2 {
				margin-bottom: 80px;
			}
			#Careers .read {
				font-size: 1.5rem;
				line-height: 1.8;
				letter-spacing: 0.2rem;
				margin-bottom: 80px;
				text-indent: 0.9rem;
				margin-left: -0.9rem;
			}
			
			#Careers .cat {
				margin-bottom: 110px;
			}
				#Careers .cat h3,
				#Careers .req h3 {
					font-family:'NKNewsMIWA-Th';
					font-size: 1.2rem;
					float: left;
					width: 185px;
					letter-spacing: 0.2rem;
				}
				#Careers .cat ul {
					font-size: 1.3rem;
					float: left;
				}
					#Careers .cat ul li {
						font-family:'NKNewsMIWA-Md';
						margin-bottom: 15px;
						letter-spacing: 0.1rem;
					}
					
				#Careers .req dl {
					float: left;
					font-feature-settings: "palt" 1;
					letter-spacing: 0.1rem;
				}
				#Careers .req dl.block1 {
					padding-right: 80px;
					width: 300px;
				}
					#Careers .req dt {
						font-weight: bold;
						font-size: 1rem;
					}
					#Careers .req dd {
						font-size: 1rem;
						margin-bottom: 60px;
					}
					
				#Careers .req dl.block2 {
					padding-left: 0px;
				}
				
				@media screen and (max-width: 1237px){	
					#Careers .req dl.block2 {
						padding-left: 185px;
					}
				}
				
					
			#Careers a.btn {
			}
			
		
		/* About */
		#About {
			margin-bottom: 100px;
			float: left;
			width: -webkit-calc(50% - 100px);
			width: -moz-calc(50% - 100px);
			width: calc(50% - 100px);
			padding-left: 100px;
			font-feature-settings: "palt" 1;
		}
			#About h2 {
				margin-bottom: 90px;
			}
			
			#About dl {
				margin-bottom: 50px;
			}
				#About dt {
					float: left;
					clear: both;
					width: 110px;
					letter-spacing: 0.1rem;
				}
				#About dd {
					margin-bottom: 10px;
					float: left;
					letter-spacing: 0.05rem;
					width: -webkit-calc(100% - 160px);
					width: -moz-calc(100% - 160px);
					width: calc(100% - 160px);
				}
				#About dd br {
					display: none;
				}
			
			#About a.map {
				display: block;
				background: url(/images/top/btn-map.png) no-repeat left top;
				width: 66px;
				height: 18px;
				text-indent: -9999px;
			}
				#About a.map:hover {
					background-position-y: -18px;
				}
		
		/* Contact */
		#Contact {
			margin-bottom: 100px;
			float: right;
			width: -webkit-calc(50% - 100px);
			width: -moz-calc(50% - 100px);
			width: calc(50% - 100px);
			padding-right: 100px;
		}
			#Contact h2 {
				margin-bottom: 90px;
			}
			#Contact .read {
				font-family:'NKNewsMIWA-Md';
				letter-spacing: 0.1rem;
				line-height: 2;
				margin-bottom: 50px;
			}
			#Contact a.btn {
				padding: 60px 0;
			}
			
			
			@media screen and (max-width: 960px){			

				#About {
					padding-left: 50px;
				}
				#Contact {
					padding-right: 50px;
					width: -webkit-calc(50% - 50px);
					width: -moz-calc(50% - 50px);
					width: calc(50% - 50px);
					padding-right: 50px;
				}
			}
		
		/* Gallery */
		#Gallery {
			margin-bottom: 170px;
			clear: both;
		}
			#Gallery .cell1 {
				margin-bottom: 0px;
			}
				#Gallery .cell1 img {
					width: 100%;
				}
			#Gallery .cell2 {
			}
				#Gallery .cell2 .cell {
					float: right;
					width: 50%;
				}
					#Gallery .cell2 .cell img {
						width: 100%;
					}
			#Gallery .cell3 {
			}
				#Gallery .cell3 .cell {
					float: left;
					width: -webkit-calc(100% / 3);
					width: -moz-calc(100% / 3);
					width: calc(100% / 3);
				}
					#Gallery .cell3 .cell img {
						width: 100%;
					}
			
			
			
			
			
			
	/* フッター */
	footer {
		clear: both;
		padding-top: 100px;
		font-family:'Cardamon W01 Regular';
	}
	
		footer .logo {
			float: left;
		}
			footer .logo a {
				background: url(/images/common/footer-logo.png) no-repeat left top;
				display: block;
				height: 40px;
				width: 137px;
			}
			footer .logo a:hover {
				background-position-y: -40px;
			}
		footer nav {
			float: left;
			margin-left: 50px;
			margin-top: 24px;
		}
			footer nav li {
				float: left;
				margin-right: 45px;
			}
				footer nav li a, 
				footer nav li a:visited
				 {
					color: #595757;
				}
				footer nav li a:hover
				 {
					color: #333;
				}
	
		footer .copy {
			clear: both;
			padding-top: 60px;
			padding-bottom: 50px;
		}
		
		
	/* ページトッップ */
	#Pagetop {
		position: absolute;
		right: 100px;
		margin-top: -150px;
	}
		#Pagetop a {
			display: block;
			height: 13px;
			width: 32px;
			background: url(/images/common/btn-pagetop.png) no-repeat left top;
		}
		#Pagetop a:hover {
			background-position-y: -13px;
		}

}




/*
====================================================
■ SP
====================================================*/
@media screen and (max-width: 768px){
	
	/* common */
	a.btn,
	a.map {
		color: #505050;
		display: block;
		width: 100%;
		padding: 50px 0;
		outline: 1px solid #505050;
		font-family:'AXIS ProN W55 L';
		font-size: 1.2rem;
		text-align: center;
	}
	
	h2 {
		font-family:'NHaasGroteskDSW01-75Bd';
		font-size: 3.5rem;
	}
	
	.wrap {
		padding-left: 25px;
		padding-right: 25px;
	}
	
	/* header */
	header {
		padding: 0 25px;
		padding-top: 40px;
		padding-bottom: 30px;
	}
	header h1 {
		float: left;
	}
		header .logo a {
			display: block;
			width: 20px;
			height: 27px;
			background: url(/images/common/logo-sp.png) no-repeat left top;
			background-size: 20px 27px;
			text-indent: -9999px;
		}
	
	header nav {
		font-family:'Cardamon W01 Regular';	
		float: right;
	}
		header nav li {
			float: left;
			font-size: 1.1rem;
			padding-left: 30px;
			padding-top: 5px;
		}
		
	
	#TopLogo{
		height: 90vh;
		text-align: center;
		position: relative;
		.img{
			position: absolute;
			width: 250px;
			height: 72px;
			top:  0;
			bottom:  0;
			left:  0;
			right:  0;
			margin:  auto; 
			.logo{
				display: block;
				margin-top: -80px;
				width: 250px;
				height: auto;
			}
		}
	}
		
		
	/* NewEntry */
	#NewEntry,
	#Works {
		font-family:'Cardamon W01 Regular';
		margin-bottom: 100px;
	}
		#NewEntry .img,
		#Works .img
		 {
			margin-bottom: 15px;
		}
		#NewEntry .img img,
		#Works .img img {
			width: 100%;
		}
		#NewEntry .data .date,
		#Works .data .date {
			font-size: 1rem;
			float: left;
			padding-right: 10px;
			margin-bottom: 0px;
		}
		#NewEntry .data .cat,
		#Works .data .cat {
			font-size: 0.7rem;
			float: left;
		}
		#NewEntry .data .title,
		#Works .data .title {
			/*font-family:'NPNewsMIWA-Th';*/
			font-size: 1.25rem;
			clear: both;
			font-weight: normal;
			line-height: 1.2;
		}
		
		
	#Works {
	}
		#Works h2 {
			margin-bottom: 40px;
		}
		#Works .entry {
			margin-bottom: 40px;
		}
		


		/* Careers */
		#Careers {
			margin-bottom: 100px;
		}
			#Careers h2 {
				margin-bottom: 40px;
			}
			#Careers .read {
				line-height: 1.8;
				letter-spacing: 0.1rem;
				margin-bottom: 50px;
				text-indent: 0.5rem;
				margin-left: -0.5rem;
				font-size: 0.95rem;
			}
			
			#Careers .cat {
				margin-bottom: 50px;
			}
				#Careers .cat h3,
				#Careers .req h3 {
					font-family:'NKNewsMIWA-Th';
					font-size: 1.8rem;
					letter-spacing: 0.2rem;
					margin-bottom: 20px;
				}
				#Careers .cat ul {
				}
					#Careers .cat ul li {
						font-family:'NKNewsMIWA-Md';
						letter-spacing: 0.1rem;
						font-size: 0.95rem;
					}
					
				#Careers .req dl {
					font-feature-settings: "palt" 1;
					letter-spacing: 0.1rem;
				}
				#Careers .req dl.block1 {
				}
					#Careers .req dt {
						font-size: 1rem;
						color: #595757;
					}
					#Careers .req dd {
						font-size: 1rem;
						margin-bottom: 30px;
					}
					
					
					
					
		/* About */
		#About {
			margin-bottom: 100px;
			padding: 0 25px;
			font-feature-settings: "palt" 1;
		}
			#About h2 {
				margin-bottom: 40px;
			}
			
			#About dl {
				margin-bottom: 30px;
			}
				#About dt {
					float: left;
					clear: both;
					width: 100px;
					letter-spacing: 0.1rem;
				}
				#About dd {
					margin-bottom: 10px;
					float: left;
					letter-spacing: 0.15rem;
					line-height: 1.4;
					width: -webkit-calc(100% - 125px);
					width: -moz-calc(100% - 125px);
					width: calc(100% - 125px);
				}
				
				
				
				
		/* Contact */
		#Contact {
			padding: 0 25px;
			margin-bottom: 100px;
		}
			#Contact h2 {
				margin-bottom: 40px;
			}
			#Contact .read {
				font-family:'NKNewsMIWA-Md';
				font-size: 0.95rem;
				letter-spacing: 0.1rem;
				line-height: 2;
				margin-bottom: 30px;
				font-feature-settings: "palt" 1;
			}
			#Contact .read br {
				display: none;
			}
			
			
			
			
		/* Gallery */
		#Gallery {
			margin-bottom: 80px;
		}
				#Gallery .cell img {
					width: 100%;
				}

			#Gallery .cell3 {
			}
				#Gallery .cell3 .cell {
					float: left;
					width: -webkit-calc(100% / 3);
					width: -moz-calc(100% / 3);
					width: calc(100% / 3);
				}
					#Gallery .cell3 .cell img {
						width: 100%;
					}


/* フッター */
	footer {
		margin-top: 100px;
		font-family:'Cardamon W01 Regular';
		padding-right: 25px;
	}
	
		footer .logo {
			float: left;
		}
			footer .logo a {
				background: url(/images/common/footer-logo-sp.png) no-repeat left top;
				background-size: 107px 31px;
				display: block;
				height: 31px;
				width: 107px;
			}
		footer nav.sns {
			float: right;
			margin-top: 11px;
		}
			footer nav.sns li {
				float: left;
				margin-left: 33px;
			}
				footer nav.sns li a {
					display: block;
					background: url(/images/common/btn-sns-sp.png) no-repeat left top;
					background-size: 63px 21px;	
					text-indent: -9999px;
					height: 21px;
					width: 21px;
				}
				footer nav.sns li.fb a {
					background-position-x: 0;
				}
				footer nav.sns li.tw a {
					background-position-x: -21px;
				}
				footer nav.sns li.in a {
					background-position-x: -42px;
				}
	
		footer .copy {
			clear: both;
			padding-top: 20px;
			padding-bottom: 10px;
			font-size: 80%;
		}
		
		/* ページトッップ */
		#Pagetop {
			position: absolute;
			right: 25px;
			margin-top: -23px;
		}
			#Pagetop a {
				display: block;
				height: 7px;
				width: 16px;
				background: url(/images/common/btn-pagetop.png) no-repeat left top;
				background-size: 16px 13px;
			}

		
}


































