@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:1200px;
	margin:0px auto;
}

section#main-back .main-cover .main-txt .main-title {
	font-style:italic;
	font-size:50px;
	line-height:1.1em;
	margin-bottom:30px;
}

section#main-back .main-cover .main-txt .main-sub-title {
	font-size:17px;
	margin-bottom:30px;
}

section#main-back .main-cover .main-txt .main-sub-title span {
	display:inline-block;
}

section#main-back .main-cover .main-txt .main-to-profile .to-profile {
	display:inline-block;
	position:relative;
	border:2px solid #fff;
	border-radius:21px;
	font-size:12px;
	color:#fff;
	padding:10px 30px;
	letter-spacing:0.2em;
	cursor:pointer;
	transition:.4s;
}

section#main-back .main-cover .main-txt .main-to-profile .to-profile:hover {
	background:#fff;
	color:#000;
	transition:.4s;
}

section#main-back .main-cover .main-txt .main-to-gallery .to-gallery::after {
	content:"";
	margin:auto;
	position:absolute;
	top:0;
	bottom:0;
	right:24px;
	width:7px;    /* ���̎����R�Ȃ�Ɍ������A�����̒��� */
	height:7px;   /* ���̎����R�Ȃ�Ɍ������A�E���̒��� */
	border-top:1px solid #000;     /* ���̎����R�Ȃ�Ɍ������A�����̑����ƐF */
	border-right:1px solid #000;   /* ���̎����R�Ȃ�Ɍ������A�E���̑����ƐF */
	transform:rotate(45deg);    /* ���̎��̌��� */
	transition:.4s;
}

section#about {
	position:relative;
	width:100%;
	padding:100px 5%;
	background:#fff;
	text-align:center;
}

section#about p span{
	display:inline-block;
}


section#company {
	position:relative;
	width:100%;
	padding:150px 5% 0px;
	background:url(../img/back_company.jpg);
	background-size:cover;
	background-position:center top;
	overflow:hidden;
}

section#company h2,
section#company h2 span {
	color:#fff;
}

section#company .c-area {
	margin:50px 0px 0px;
}

section#company .c-box {
	position:relative;
	width:33%;
	background:#fff;
}

section#company .c-box .c-img {
	position:relative;
	width:100%;
}

section#company .c-box .c-img img {
	width:100%;
}

section#company .c-box .c-img .c-img-cover {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:linear-gradient(rgba(255,255,255,0.1), rgba(255,255,255,1));
}

section#company .c-box .c-info {
	position:relative;
	width:100%;
}

section#company .c-box .c-info .c-title {
	position:absolute;
	top:-20px;
	left:30px;
	font-style:italic;
	font-size:22px;
}

section#company .c-box .c-info .c-dtl {
	padding:30px;
}

section#company .c-box .c-info .c-dtl hr {
	width:20%;
	text-align:left;
	margin:20px 10px 0px 0px;
}




section#business {
	position:relative;
	width:100%;
	padding:70px 5% 70px;
	background:#f7f7f7;
	overflow:hidden;
}

section#business table {
	width:100%;
}

section#business th {
	width:45%;
}

section#business th img {
	width:100%;
}

section#business td {
	width:55%;
	padding:10px 60px;
}



section#service {
	position:relative;
	width:100%;
	padding:150px 5% 150px;
	background:url(../img/back_service.jpg);
	background-size:cover;
	background-position:center center;
	overflow:hidden;
}

section#service h2,
section#service h2 span {
	color:#fff;
}

section#service .s-box {
	position:relative;
	width:25%;
	color:#fff;
	margin:20px 0px 10px;
	padding:10px;
}

section#service .s-box .s-img img {
	width:100%;
}

section#service .s-box .s-dtl {
	font-size:14px;
}

section#service hr {
	width:95%;
	background:#fff;
	height:3px;
	margin:50px auto 0px;
}





section#profile {
	position:relative;
	width:100%;
	padding:70px 5% 70px;
	background:url(../img/back_profile.jpg);
	background-size:cover;
	background-position:center center;
	overflow:hidden;
}

section#profile .p-box {
	width:50%;
}

section#profile .p-box table {
	width:98%;
}

section#profile .p-box th {
	width:35%;
	border-bottom:1px solid #c0c0c0;
	padding:30px 10px;
	font-weight:300;
	text-align:left;
}

section#profile .p-box td {
	width:65%;
	border-bottom:1px solid #c0c0c0;
	padding:30px 10px;
	font-weight:300;
	text-align:right;
}

section#profile .p-box iframe {
	width:100%;
	height:600px;
}



section#contact {
	position:relative;
	width:100%;
	padding:150px 10px 150px;
	background:url(../img/back_contact.jpg);
	background-size:cover;
	background-position:center center;
	overflow:hidden;
}

section#contact h2,
section#contact h2 span {
	color:#fff;
	text-align:center;
}

section#contact p {
	color:#fff;
	text-align:center;
	line-height:2.6em;
	max-width:500px;
	margin:50px auto 0px;
}

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 .c-box {
	width:100%;
	max-width:500px;
	margin:40px auto 20px;
}

section#contact .c-box .c-title {
	color:#fff;
}


section#contact .c-box input[type="text"],
section#contact .c-box input[type="tel"],
section#contact .c-box input[type="email"],
section#contact .c-box textarea {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	width:100%;
	border:1px solid #c0c0c0;
	padding:10px;
	font-size:16px;
}

section#contact .c-box .contact-btn  {
	display:block;
	width:100%;
}

section#contact .c-box input[type="submit"]  {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	display:block;
	position: relative;
	padding:10px;
	width:150px;
	color: #fff;
	font-size:12px;
	background:#236373;
	transition: 0.4s;
	letter-spacing:0.4em;
	border-radius:60px;
}

section#contact .c-box .wpcf7-not-valid-tip {
	color:#f00;
}

section#contact .wpcf7-response-output {
	margin:0px auto;
	width:100%;
	max-width:500px;
	color:#fff;
	padding:10px;
}


@media screen and (max-width:768px){


	section#main-back .main-cover .main-txt {
		left:20px;
	}

	section#main-back .main-cover .main-txt .main-title {
		font-size:35px;
	}

	section#main-back .main-cover .main-txt .main-sub-title {
		font-size:15px;
	}

	section#company {
		padding:70px 5% 0px;
	}

	section#company .c-box {
		width:100%;
		margin-bottom:40px;;
		background:none;
	}

	section#company .c-box .c-img img {
		max-width:480px;
	}

	section#company .c-box .c-info {
		background:#fff;
	}

	section#business th {
		display:block;
		width:100%;
	}

	section#business th img {
		max-width:480px;
	}
	
	section#business td {
		display:block;
		width:100%;
		padding:30px 10px 0px;
	}

	section#service {
		padding:70px 5% 70px;
	}

	section#service .s-box {
		width:50%;
	}

	section#service hr {
		display:none;
	}

	section#profile .p-box {
		width:100%;
	}

	section#profile .p-box iframe {
		height:400px;
	}

	section#contact {
		padding:70px 10px 70px;
	}


}





@media screen and (max-width:480px){


	section#main-back .main-cover .main-txt .main-title {
		font-size:24px;
	}

	section#main-back .main-cover .main-txt .main-sub-title {
		font-size:15px;
	}

	section#service .s-box {
		width:100%;
	}

	section#profile .p-box th {
		display:block;
		width:100%;
		border-bottom:none;
		padding:30px 10px 5px;
		text-align:center;
	}

	section#profile .p-box td {
		display:block;
		width:100%;
		padding:5px 10px 30px;
		text-align:center;
	}


}


