/*
Theme Name: 株式会社プライム
Theme URI: https://prime-clean.net
Description: 株式会社プライム
Version: 1
Author: 株式会社プライム
Author URI: https://prime-clean.net
*/

@charset "utf-8";
@import "css/html5reset.css";


body {
	font-family: "Noto Sans JP", sans-serif;
}

header {
	background:#04355F;
	color:#fff;
	position:relative;
	height:103px;
}

h3 {
	font-size:24px;
	font-weight:bold;
	margin-bottom:37px;
}

img {
	max-width:100%;
}

.blue {
	padding-top:45px;
	padding-bottom:70px;
	background:#04355F;
	color:#fff;
}

footer {
	height:190px;
	position:relative;
	margin-top:-80px;
	background:#04355F;
	color:#fff;
	border-bottom:10px solid #000001;
}

header a,
footer a {
	color:#fff;
	text-decoration:none;
}

footer ul {
	padding-top:135px;
	font-size:16px;
}

header ul li,
footer ul li {
	margin-right:2em;
	list-style:none;
	display:inline;
}

section {
	margin-bottom:80px;
}

p {
	margin-bottom:1em;
}

#header-logo {
	position:absolute;
	top:2px;
	left:54px;
}

#top h2,
#page h2 {
	margin:40px auto 25px auto;
	text-align:center;
}

#top-target h2 {
	margin-bottom:50px;
}

#top-works h2 {
	margin-bottom:70px;
}

#top-works-panels {
	margin-bottom:38px;
}

#top-works-panels .elm {
	margin-bottom:37px;
	text-align:center;
}

#top-works-panels .elm a {
	color:#000;
	text-decoration:none;
}

#top-works-movies {
	margin-bottom:60px;
	margin-left:28px;
}

#top-company.blue {
	padding:0;
}

#top-company .elm:last-child h3 {
	font-size:25px;
	margin-bottom:20px;
	padding-left:77px;
}

#top-company .elm:last-child ul {
	width:26em;
	padding-left:141px;
	list-style:none;
}

#top-company .elm:last-child ul li {
	font-size:22px;
	display: inline-block;
	height:30px;
	width:8em;
}

#top-access-map {
	margin-top:30px;
}

#sub-main {
	text-align:center;
}

#page #top-access {
	margin-top:170px;
}

#page5 {
	line-height:24px;
}

#entry-eyecatch {
	margin-bottom:70px;
}

.single-post {
	text-align:center;
}

.lead {
	font-size:16px;
	line-height:21px;
	text-align:center;
}

.style-none {
	color:#000;
	text-decoration:none;
}

.mail-form-submit {
	border:0;
	margin:50px auto;
	padding:12px 42px;
	background:#DEA635;
	display:block;
}

.flex-sa {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-around;
	align-content:space-around;
}

.cols2 {
	display:flex;
	flex-wrap:wrap;
}

.cols2 .elm {
	width:50%;
}

.more {
	margin-top:60px;
	text-align:right;
}

.more-c {
	margin-top:60px;
	text-align:center;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	background: #A00;
	color:#fff;
	margin:0;
	border:0;
	font-weight:bold;
	text-align:center;
	padding:5px;
}

.mt2 {
	margin-top:2em;
}

.mt3 {
	margin-top:3em;
}

.mb1 {
	margin-bottom:1em;
}

.mb2 {
	margin-bottom:2em;
}

.pr	{
	position:relative;
}

.wp-pagenavi {
	margin-top:60px;
	margin-bottom:100px;
	text-align:center;
}

.wp-pagenavi span,
.wp-pagenavi a {
	padding:0 0.5em;
}

.wp-pagenavi .pages {
	display:none;
}

/* エラー404系 */
#error404 {
	text-align:center;	
}

#error404 h1 {
	font-size:180%;
	letter-spacing: 0.25em;
	font-weight: bold;
	margin-bottom:1em;
}

#error404link {
	margin-top:3em;
	font-weight: bold;
}

@media screen and (min-width:376px){
	/* PC用 */
		.pc {
			display:block;
		}

		.sp {
			display:none;
		}

		header ul {
			position:absolute;
			left:504px;
			top:43px;
		}

		#top-renewal-panels {
			margin-left:60px;
		}

		#top-renewal .elm {
			width:466px;
			margin:15px 20px;
		}

		#top-target .elm {
			width:260px;
			margin-bottom:75px;
		}

		#main-image,
		.inner {
			width:1100px;
			margin:0 auto;
		}

		.pc-cols2,
		.pc-cols4 {
			display:flex;
			flex-wrap:wrap;
		}

		.pc-cols2 .elm {
			width:50%;
		}

		.pc-cols4 .elm {
			width:25%;
		}

		a img:hover {
			opacity: 0.7;
		}


		#footer-logo {
			position:absolute;
			right:50px;
			top:36px;
		}

		form dl {
			width:900px;
			margin:45px auto;
		}

		form dt,
		form dd {
			margin-bottom:20px;
			display:inline-block;
		}

		form dt {
			vertical-align:top;
			width:150px;
		}

		form dd {
			width:730px;
		}

		form dd input,
		form dd textarea
		{
			font-size:120%;
			width:100%;
			padding:2px 5px;
		}

} @media screen and (max-width: 375px) {
	/* スマホ用 */
			.pc {
				display:none;
			}

			.sp {
				display:block;
			}

			/* iPhoneのフォームの初期スタイルをクリア */
			input{
			    -webkit-appearance: none;
			}

			
			body {
				background:#fff;
				width:375px;
			}

			.inner {
				margin-left:17px;
				margin-right:17px;
			}

			#header-logo {
				position:absolute;
				top:2px;
				left:10px;
			}

			#main-image img,
			#sub-main img {
				margin-top:-5px;
			}

			#top-renewal-panels .elm {
				width:338px;
				margin-top:20px;
			}

			#sub-main {
				height:100px;
			}

			#sub-main img {
				width:375px!important;
			}


			.sp-top-panels-adjust {
				margin-top:1px!important;
				width:360px!important;
			}

			.sp-top-panels-adjust2 {
/*				width:355px!important;*/
			}

			.blue {
				padding-top:10px;
			}

			#top-target .elm {
				width:160px;
				margin-bottom:35px;
			}

			.sp-ac {
				text-align:center;
			}

			.sp-cols2 {
				display:flex;
				flex-wrap:wrap;
			}

			form dd input,
			form dd textarea
			{
				font-size:120%;
				width:100%;
				padding:2px 5px;
				margin-bottom:20px;
			}

			.elm {
/*
				width:50%;
*/
			}

			form dt {
				margin-bottom:10px;
			}

			#top-works-panels .elm {
				width:160px;
				margin:10px 5px;
			}

			footer {
				padding-top:36px;
			}

			#footer-logo {
				text-align:center;
			}

			.more-c {
				margin-top:30px;
			}

			.sp-col-none {
				display:block;
			}

}

/* 汎用クラス */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

.recaptcha_policy {
  padding: 0;
  margin: 0;
  text-align: center;
  font-size: 11px !important;
  color: #444 !important;
}
.recaptcha_policy a {
  font-size: 11px !important;
  color: #111 !important;
}

.grecaptcha-badge { visibility: hidden; }