@charset "UTF-8";
/* CSS Document */

/* header--------------------------------------------------------- */
header {
	position: fixed;
	top: 0;
	width: 100%;
	min-width: 1100px;
	padding: 30px 0 0;
	z-index: 10;
}
header .logo {
	float: left;
	padding-left: 35px;
	width: 270px;
}
header nav {
	float: right;
	margin-right: 30px;
	margin-top: 30px;
}
header nav li {
	float: left;
	width: 64px;
	margin-left: 40px;
}
header nav li a {
	font-family: 'Times New Roman', 'Noto Serif', serif;
	color: #666;
	font-size: 15.5px;	
}
header nav li a.active,
header nav li a:hover {
	color: #000;
	opacity: 1;
}
header .sns {
	margin-top: 21px;
	margin-right: 20px;
	margin-left: 30px;
	float: right;
}
header .sns li {
	float: left;
	margin: 8px 5px 0;
	width: 20px;
}


a:link {
	color:#666666;
}

a:visited {
	color:#999999;
}

a:hover {
	color:#008000;
	}

/* contents--------------------------------------------------------- */
#contents {
	flex: 1 1 auto;
}
#contents section {
	background: #fff;
	padding: 150px 0 100px;
}
#contents section .box {
	margin: 0 auto;
	width: 900px;
}
#top #contents section {
	height: 100vh;
	padding: 0;
	position:relative;
	width: 100%;
}
#top #contents section .box {
	position:absolute;
	top: 50%;
	left: 50%;
	margin-top: -180px;
	margin-left: -450px;
}
#top #contents .main {
	height: 100vh;
}
#about #contents section {
	height: 100vh;
	padding: 0;
	position: relative;
	width: 100%;
	margin-top: -50px;
}
#about #contents section .box {
	position:absolute;
	top: 50%;
	left: 50%;
	margin-top: -180px;
	margin-left: -450px;
}
#works #contents section {
	height: 100vh;
	padding: 0;
	position:relative;
	width: 100%;
	margin-top: -50px;
}
#works #contents section .box {
	position:absolute;
	top: 50%;
	left: 50%;
	margin-top: -160px;
	margin-left: -450px;
}
#works #contents .box .list {
	width: 900px;
	height: 400px;
	overflow: hidden;
}
#works #contents .box .arw {
	width: 40px;
	position: absolute;
	margin-left: -20px;
	left: 50%;
}
#works #contents .box .arw_up {
	top: -40px;
	display: none;
}
#works #contents .box .arw_down {
	bottom: -40px;
}
#works #contents .thumb {
	margin-right: -15px;
	margin-left: -15px;
	position: relative;
	top: 0;
}
#works #contents .thumb li {
	margin: 15px;
	float: left;
	width: 280px;
}
#workslist #contents {
	margin: 100px auto 200px;
}
#workslist #contents .box {
	padding-top: 150px;
	padding-bottom: 100px;
	width: 900px;
	margin: 0 auto;
}
#workslist #contents .left {
	width: 380px;
	float: left;
}
#workslist #contents .right {
	width: 400px;
	float: right;
}
#workslist #contents p.name {
	margin-bottom: 35px;
	font-size: 22px;
}
#workslist #contents p.text {
	margin-bottom: 45px;
	font-size: 14px;
	line-height: 2;
}
#workslist #contents .left p.cap {
	font-size: 12px;
}
#workslist #contents .right p.cap {
	text-align: right;
	font-size: 12px;
	margin-top: 5px;
	margin-bottom: 50px;
}
#workslist #contents .right p.cap:last-child {
	margin-bottom: 0;
}
#workslist #pager {
	position: fixed;
	top: 50%;
	left: 40px;
	margin-top: -100px;
}
#workslist #pager li a {
	font-size: 10px;
	color: #ccc;
	margin: 10px 0px;
	display: block;
}
#order .box:first-child {
	padding-top: 50px;
	padding-bottom: 150px;
}
#order p a {
	text-decoration: underline;
	color: #666;
}
#order .left {
	float: left;
	width: 191px;
}
#order .right {
	float: right;
	width: 709px;
	padding-top: 30px;
}
#order .box:first-child .right {
	padding-left: 40px;
	width: 669px;
}
#order .box .right p {
	font-size: 16px;
	line-height: 2;
}
#order table {
	background: url(../images/order_img_03.png) no-repeat 190px top;
	background-size: auto 1250px;
}
#order table td {
	padding-bottom: 140px;
}
#order table td:first-child {
	width: 195px;
	font-size: 20px;
	line-height: 1.5;
}
#order table td:first-child span {
	color: #b3b3b3;
	font-size: 12px;
}
#order table td:nth-child(2) {
	padding-left: 35px;
}
#contact #contents .left {
	float: left;
	width: 389px;
	padding: 55px 30px 30px;
}
#contact #contents .right {
	width: 451px;
	float: right;
	font-size: 13px;
}
#contact div p:first-child {
	margin-bottom: 8px;
}
#contact label {
	font-size: 13px;
}
#contact input,
#contact textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 13px;
	font-family: 'Noto Serif', serif;
	color: #000;
	border: 1px solid #666;
	border-radius: 0;
	letter-spacing: 0.03em;
	padding: 5px 7px;
	-moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
	margin-bottom: 7px;
}
#contact input[type="text"],
#contact input[type="email"],
#contact textarea {
	line-height: 1.8em;
	width: 100%;
	resize: none;
}
#contact button[type="submit"] {
	border: 1px solid #666;
	cursor: pointer;
	margin: 0;
	padding: 5px 0;
	background: #fff;
	width: 80px;
	font-size: 14px;
	color: #666;
	font-size: 14px;
	border-radius: 2px;
	transition: 0.3s;
}
#contact button[type="submit"]:hover {
	background: #666;
	color: #fff;
}
#contact .btn-submit {
	text-align: left;
	margin-top: 10px;
}
#thanks #contents p {
	text-align: center;
	top: 50%;
	position: absolute;
	width: 100%;
	margin-top: -30px;
	font-size: 16px;
	line-height: 2;
}

#contact #contents .contact_text {
	margin-top:80px;
	font-size: 16px;
	line-height: 2;
	
}



/* footer--------------------------------------------------------- */
footer {
	text-align: center;
	padding-bottom: 34px;
	width: 100%;
	min-width: 1100px;
	background: #fff;
}
footer .sns {
	display: none;
}
footer small {
	letter-spacing: 0.05em;
	font-size: 10px;
}
#workslist footer {
	position: static;
}