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

/*-----------------------------------共有*/
body {
	min-width:200px;
}

.company_logo{
	font-size: 27px;
	margin-left: 10px;
}

/*-----------------------------------画像の表示*/
.subtop{
	text-align: center;
}
.subtop p {
	font-size: 0.8rem;
	line-height: 24px;
	width: 100%;
	padding: 0 30px;
	text-align: left;
}


@media screen and (max-width: 480px) {
	.subtop p {
		font-size: 0.5rem;
		line-height: 14px;
	}
}



/*-----------------------------------見出し*/
.midashi01 {
	text-align:center;
	font-size:7vw;
	letter-spacing: 0;
	max-width:1000px;
	margin:0 auto;
}
.midashi01:after {
	content:"";
	display:block;
	margin:20px auto;
	width:200px;
	height:2px;
	background:#043c78;
}
.midashi02 {
	line-height:1.4em;
	font-size:22px;
}
.midashi03 {
	padding:10px;
	text-align:left;
	font-size:18px;
}
.midashi06{
	font-size: 24px;
}
.midashi06 span {
	font-size: 12px;
}
.midashi07 {
	font-size: 24px;
}
.midashi07 span{
	font-size: 14px;
}

.top_list_box .in_box ul li strong {
	font-size: 18px;
}




/*-----------------------------------ボタン*/
.button01 {
	width: 250px;
	font-size: 18px!important;
}




/*-----------------------------------文章*/
.text01 {
	padding:20px;
	font-size:16px;
	text-align:left;
}



/*-----------------------------------パンくず*/
#breadcrumb ol {
	display:block;
	padding:0px 20px;
}
#breadcrumb ol li {
	display:inline-block;
}
#breadcrumb {
	width:100%;
	height:auto;
	padding:10px 0;
	background:#EDEDED;
}
#breadcrumb ol {
	width:100%;
	max-width:1000px;
	height:auto;
	margin:0 auto;
	display:flex;
}
#breadcrumb ol li {
	display:block;
	font-size:14px;
	color:#777;
}
#breadcrumb ol li a:after {
	content:">";
	margin:0 20px;
}



/*-----------------------------------ボックス*/
.contents_box {
	padding:30px 0;
}
.contents_box:before, .contents_box2:before {
	background-size:contain;
	width:110px;
	height:200px;
	top:-140px;
	right:0;
}
.contents_box .in_box {
	padding:20px;
}
.contents_box2 .in_box {
	display:block;
}
.contents_box2 .kiji_box {
	margin:20px auto;
}
.contents_box2 .sideber {
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
.contents_box2 .sideber li {
	padding:0;
}
.contents_box2 .sideber li:nth-child(1) {
	padding:10px;
}
.contents_box2 .sideber li.on a {
	background:#EEF7ED;
}
.contents_box2 .sideber li a {
	display:block;
	background:#FFF;
	font-size:18px;
	border-bottom:none;
	border-left:2px solid #043c78;
	padding:14px 10px;
	color:#043c78;
}


/*お問い合わせボックス*/
.contact_tel_box {
	padding:30px 0;
}
.contact_tel_box .midashi01 {
	font-size:20px;
}
.contact_tel_box .in_box p {
	font-size:16px;
}
.contact_tel_box .in_box p strong {
	font-size:26px;
	letter-spacing:0px;
}


/* ドローン */
.service_works{
	display:block;
}
.service_works .service_works_list{
	width:100%;
	margin:10px auto;
}
.service_works_list img{
	max-width:100%;
	display:block;
	margin:0 auto;
}



/*-----------------------------------スマホ用ヘッダ*/
@media screen and (max-width: 896px) {
	header {
		max-width:100%;
		display:block;
		height:100px;
		list-style: none;
	}
	header .logo {
		width:100%;
	}
	header .logo p{
		line-height:1.4em;
		padding:4px 14px;
		background:#043c78;
		color:#FFF;
		margin-bottom:10px;
		font-size: 12px;
	}
	header img{
		margin-left: 10px;
	}
	
	
	/*アコーディオンボタンデザイン*/
	/*ボタンデザイン*/
	.sub-menu2 label{
		display: none;
	}
	#nav-toggle {
		display: block;
		position: fixed;
		right:4px;
		top:50px;
		width: 48px;
		height: 48px;
		cursor: pointer;
		z-index:999;
		background: #043c78;
		text-align: center;
		margin-top: 4%;
	}
	#nav-toggle  span {
		display: block;
		position: absolute;
		width: 30px;
		border-bottom: solid 2px #eee;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		left: 8px;
	}
	#nav-toggle span:nth-child(1) {
		top: 8px;
	}
	#nav-toggle span:nth-child(2) {
		top: 16px;
	}
	#nav-toggle span:nth-child(3) {
		top: 24px;
	}
	#nav-toggle span:nth-child(4) {
		border: none;
		color: #eee;
		font-size: 9px;
		font-weight: bold;
		top: 30px;
	}
	#nav-toggle.active span:nth-child(1) {
		top: 16px;
		left: 8px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#nav-toggle.active span:nth-child(2), 
	#nav-toggle.active span:nth-child(3) {
		top: 16px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	
	/* z-index */
	#nav-toggle {
		z-index: 1000;
	}
	#container {
		z-index: 900;
	}
	.globalMenuSp {
		background-color: rgba(0, 0, 0, .8);
		color: #FFF;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 990;
		text-align: center;
		display: flex;
		visibility: hidden;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 29px;
		opacity: 0;
		transition: opacity .3s ease, visibility .3s ease;
	}
	.globalMenuSp a {
		display: block;
		color: #FFF;
		text-decoration: none;
		padding: 20px 0;
		transition: color .3s ease;
		font-size: .55em;
		font-family: 'Lato', sans-serif;
		font-weight: 300;
		letter-spacing: .5em;
	}
	.globalMenuSp a:hover {
		color: #666;
	}
	.globalMenuSp ul {
		list-style: none;
		padding: 0;
	}
	.globalMenuSp ul li {
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.globalMenuSp ul li:nth-child(2) {
		transition-delay: .05s;
	}
	.globalMenuSp ul li:nth-child(3) {
		transition-delay: .15s;
	}
	.globalMenuSp ul li:nth-child(4) {
		transition-delay: .25s;
	}


/* open */
	.open {
		overflow: hidden;
	}
	.open .globalMenuSp {
		visibility: visible;
		opacity: 1;
	}
	.open .globalMenuSp li {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
		transition: opacity .9s ease, -webkit-transform 1s ease;
		transition: transform 1s ease, opacity .9s ease;
		transition: transform 1s ease, opacity .9s ease, -webkit-transform 1s ease;
	}
	#nav-toggle {
		right: 12px;
		top: 12px;
	}
	.globalMenuSp a {
		padding: 10px 0;
		font-size: .5em;
	}
}



/*-----------------------------------メイン*/
main {
	background:#F5F5F5;
	width:100%;
	height:auto;
}



/*-----------------------------------事業内容*/
.service_box {
	display:block;
}
.service_box img {
	max-width:100%;
	height:auto;
	margin:0 auto;
}
.service_box p {
	width:100%;
}
.service_box p strong {
	font-size:20px;
}
.flow {
	width:90%;
}
.flow li strong {
	font-size:20px;
}



/*-----------------------------------施工実績*/
.works_box {
	display:block;
}
.works_box li {
	width:90%;
	margin:0 auto 30px auto;
	border-bottom:2px solid #EAF4FF;
}
.works_box li a {
	padding-bottom:20px;
	display:block;
}
.works_box li a:hover img {
	opacity:0.7;
}
.works_box li a:hover p, 
.works_box li a:hover p strong {
	color:#043c78;
}
.works_box li a p strong {
	font-size:18px;
	display:block;
	text-align:center;
	padding:6px 0 8px 0;
}
.works_list {
	width:100%;
	max-width:900px;
	height:auto;
	margin:20px auto;
	border-collapse:collapse;
}
.works_list tr {
	border-bottom:solid 2px #EAF4FF;
}
.works_list th, .works_list td {
	padding:10px 30px;
}
.works_list th {
	background:#EEF7ED;
}



/*-----------------------------------業務内容一覧*/
.business-box {
	width: 100%;
	padding: 0;
}
.business-box h3 {
	padding-bottom: 20px;
	font-size: 1.8rem;
}
.business-list {
	display: flex;
}
.business-list li {
	width: 100%;
	margin-right: 0;
}
.business-list :nth-child(2n) {
	margin-right: 0;
}
.business-list .btn01 {
	width: 100%;
	height: 60px;
}
.business-list :hover {
	background-color: #8e979c;
	color: #FFF;
}



/*-----------------------------------会社情報*/
/*ご挨拶*/
.company_message_box {
	display:block;
}
.company_message_box .left {
	margin:0 auto;
}
.company_message_box .right {
	width:100%;
}


/*経営理念・経営方針*/
.management_list {
	width:90%;
}
.management_list li {
	padding:14px 14px 14px 50px;
}


/*沿革*/
.history, .history tbody, .history tr, .history th, .history td {
	display:block;
	width:100%;
}
.history th {
	font-size:24px;
	width:100%;
}
.history td ul li {
	font-size:16px;
	border-bottom:dotted 1px #CCC;
}
.history td ul li strong {
	padding:0 10px;
}


/*会社概要*/
.profile, .profile tbody, 
.profile tr, 
.profile th, 
.profile td {
	display:block;
	width:100%;
}
.profile th {
	width:100%;
}
.profile .th_title{
	width:100%;
}

/*-----------------------------------お問い合わせ*/
.tel_text {
	font-size:18px;
	padding:20px 10px;
}
.tel_text strong{
	font-size: 20px;
}

form input[type="text"], form textarea {
	max-width:100%;
}
form input:focus, form textarea:focus {
	border:solid 2px #043c78;
}



/*-----------------------------------よくある質問*/
.accordion_panel {
	width:100%;
}
.accordion_panel dt {
	font-size:16px;
	padding:20px 0px 0px 0px;
}



/*-----------------------------------ページスクロール*/
.backtotop {
	display:block;
	background:#FFF;
	margin: 0;
	width:100%;
	height:60px;
	overflow:hidden;
}
.backtotop a {
	margin: 0 auto;
	display:block;
	width:100%;
	height:40px;
}
.backtotop a:after {
	content:">";
	display:block;
	text-align:center;
	font-weight:bold;
	transform:scaleY(0.5) rotate(-90deg);
	font-size:40px;
	color:#043c78;
}



/*-----------------------------------フッタ*/
footer .logo {
	display:block;
}
footer .logo img {
	display:block;
	margin:0 auto;
	max-width:100%;
	height:auto;
}
footer p {
	display:block;
	font-size:12px;
	letter-spacing:2px;
	text-align:center;
	padding:40px 0 0 0;
}
.pc {
	display:none;
}
.mobile, .mobile2{
	display:block;
}


 @media screen and (min-width:449px) {
.midashi01 {
	font-size:32px;
}
.mobile2{
	display: none;
}
.navToggle {
	right:10px;
	top:38px;
	 }
}


