@charset "UTF-8";
/****************************************
	main
****************************************/
main {
}

section#main-back {
	background:url(../img/back.jpg);
	background-size:cover;
	background-position:center center;
	overflow:hidden;
}

section#main-back .main-cover {
	position:relative;
	min-height:90vh;
	display:flex;
	align-items:center;
	padding:0px 20px;
	color:#fff;
}

section#main-back .main-cover .main-txt {
	width:100%;
	max-width:910px;
	margin:0px auto;
	text-align:center;
}

section#main-back .main-cover .main-txt .main-title {
    font-family: 'Noto Serif JP', sans-serif;
	font-size:70px;
	line-height:1.1em;
	margin-bottom:30px;
}

section#main-back .main-cover .main-txt .main-sub-title {
    font-family: 'Noto Serif JP', sans-serif;
	font-size:22px;
	margin-bottom:30px;
}

section#main-back .main-cover .main-txt .main-title span,
section#main-back .main-cover .main-txt .main-sub-title span {
    display:inline-block;
}

section#main-back .main-cover .main-txt hr.separator {
	height:3px;
	margin:10px auto 20px;
}

section#main-back .main-cover .main-txt .main-to-contact .to-contact {
	display:inline-block;
	position:relative;
	font-size:12px;
	background:#ba9a6c;
	color:#fff;
	padding:10px 30px;
	letter-spacing:0.2em;
	border-radius:21px;
	cursor:pointer;
	transition:.4s;
}

section#main-back .main-cover .main-txt .main-to-contact .to-contact:hover {
	background:#fff;
	color:#000;
	transition:.4s;
}

section#about {
	position:relative;
	width:100%;
	padding:120px 5% 120px;
	background:#333f45;
}

section#about h2 {
	text-align:center;
}

section#about hr.separator {
	margin:15px auto 20px;
}


section#about .a-box {
	width:33.333%;
	padding:5px;
}

section#about .a-box .a-img img {
	width:100%;
}

section#about .a-box .a-dtl {
	line-height:1.6em;
	color:#fff;
}

section#about .a-box .a-dtl strong {
	display:block;
	padding:10px 0px;
}


section#about2 {
	position:relative;
	width:100%;
	padding:0px 5%;
	background:#909090;
}

section#about2 .flex {
	flex-direction: row-reverse;
}

section#about2 .a-box {
	width:60%;
	padding:50px 80px;
	color:#fff;
}

section#about2 .a-box h2 {
	font-size:20px;
}


section#about2 .a-box hr.separator {
	margin:15px 0px 20px;
}

section#about2 .a-box p span {
	display:inline-block;
}

section#about2 .a-img {
	width:40%;
	text-align:center;
}


section#about2 .a-img img {
	width:100%;
	transform:translateY(-50px);;
}


.back-clear {
	position:relative;
	padding:150px 5%;
	text-align:center;
}

.back-clear .cover {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:rgba(0,0,0,.7);
}

.back-clear h2 {
	color:#fff;
	font-size:20px;
}

.back-clear h2 small {
    font-family: 'Open Sans', sans-serif;
	display:block;
	letter-spacing:0.2em;
	font-size:12px;
}

.back-clear hr.separator {
	position:relative;
	height:3px;
}

section#service {
	background:url(../img/back_service.jpg);
	background-size:cover;
	background-position:center center;
}

section#service-content {
	position:relative;
	width:100%;
	padding:70px 5% 70px;
	background:#333f45;
	overflow:hidden;
}

section#service-content h2 {
	text-align:center;
}

section#service-content p {
	text-align:center;
	color:#fff;
	margin-bottom:50px;
}

section#service-content p span {
	display:inline-block;
}

section#service-content .s-area {
	position:relative;
	display:flex;
	flex-wrap:wrap;
}

section#service-content .s-area .s-area-img {
	width:50%;
}

section#service-content .s-area .s-area-img img {
	width:100%;
	height:100%;
	object-fit:cover;
}

section#service-content .s-area .s-area-detail {
	background:#909090;
	width:50%;
	padding:80px;
}

section#service-content .s-area .s-area-detail h3 {
	margin:5px auto 10px;
	text-align:left;
	color:#fff;
}

section#service-content .s-area .s-area-detail p {
	text-align:left;
	margin-bottom:0px;
}



section#service-content .s-area-right {
	flex-direction:row-reverse;
}






section#service-content2 {
	background:url(../img/back_service2.jpg);
	background-size:cover;
	background-position:center center;
}


section#company {
	position:relative;
	width:100%;
	padding:70px 5% 70px;
	background:#333f45;
	overflow:hidden;
}

section#company h2 {
	text-align:center;
}

section#company hr.separator {
	margin:20px auto 30px;
}

section#company .a-box {
	width:50%;
}

section#company .a-box table {
	width:96%;
}

section#company .a-box th {
	width:35%;
	border-bottom:1px solid #c0c0c0;
	padding:20px 20px;
	font-weight:300;
	color:#fff;
	text-align:left;
}

section#company .a-box td {
	width:65%;
	border-bottom:1px solid #c0c0c0;
	padding:20px 12px;
	font-weight:300;
	color:#fff;
	text-align:right;
}

section#company .a-box iframe {
	width:100%;
	height:450px;
}


section#gallery {
	position:relative;
	width:100%;
	padding:70px 5% 70px;
	background:#333f45;
	border-top:2px solid #fff;
	overflow:hidden;
}

section#gallery .g-box {
	width:33.3333%;
	padding:5px;
}

section#gallery .g-box .g-img img {
	width:100%;
}


section#contact {
	position:relative;
	width:100%;
	background:url(../img/back_contact.jpg);
	background-size:cover;
	background-position:center center;
	overflow:hidden;
}

section#contact h2 {
	color:#fff;
	text-align:center;
}

section#contact hr.separator {
	position:relative;
}
section#contact p {
	position:relative;
	color:#fff;
	text-align:center;
	line-height:2.6em;
}

section#contact p span {
	display:inline-block;
}

section#contact p strong {
	display:block;
    font-family: 'Noto Serif JP', sans-serif;
	font-size:28px;
	font-weight:normal;
	margin-bottom:15px;
}

section#contact p small {
	display:block;
	line-height:normal;
}

section#contact a {
	color:#fff;
}

@media screen and (max-width:768px){


	section#main-back .main-cover .main-txt .main-title {
		font-size:40px;
	}

	section#main-back .main-cover .main-txt .main-sub-title {
		font-size:15px;
	}


	section#about .a-box {
		width:100%;
		padding:0px 0px 30px 0px;
	}
	

	section#about2 {
		padding:70px 5%;
	}

	section#about2 .a-box {
		width:100%;
		padding:0px;
	}

	section#about2 .a-img {
		width:100%;
	}

	section#about2 .a-img img {
		width:100%;
		max-width:480px;
		transform:translateY(0px);;
	}

	section#service-content .s-area {
	}

	section#service-content .s-area .s-area-img {
		width:100%;
	}

	section#service-content .s-area .s-area-detail {
		width:100%;
		padding:30px;
	}


	section#company .a-box {
		width:100%;
	}

	section#company .a-box iframe {
		height:400px;
	}

}


@media screen and (max-width:480px){


	section#main-back .main-cover .main-txt .main-title {
		font-size:30px;
	}

	section#main-back .main-cover .main-txt .main-sub-title {
		font-size:15px;
	}


	section#about {
		padding:70px 5% 40px;
	}
	
	section#company .a-box th {
		display:block;
		width:100%;
		border-bottom:none;
		padding:30px 10px 5px;
		text-align:center;
	}

	section#company .a-box td {
		display:block;
		width:100%;
		padding:5px 10px 30px;
		text-align:center;
	}


	section#gallery .g-box {
		width:100%;
	}
	
	

}


