@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/



/*--------------------------------------------------
	オリジナル設定
--------------------------------------------------*/
.red { color: #e20151; }
.fs { font-size: 80%; }
.fm { font-size: 120%; }
.fl { font-size: 160%; }
p.nm {
	padding-bottom: 0;
}
.cf:after {
	clear: both;
	display: block;
	overflow: hidden;
	height: 0px;
	content: "";
}
p.attention {
	text-indent: -1em;
	margin-left: 1em;
}
/**/
.cen { text-align: center; }
.lft { text-align: left; }
.rit { text-align: right; }
/* 非表示用 */
@media print, screen and (min-width: 641px){ /* PC用 */
	.dsp_smt { display: none; }
	.cen_pc { text-align: center; }
}
@media only screen and (max-width: 640px){ /* スマホ用 */
	.dsp_hp { display: none; }
}
/*--------------------------------------------------
	共通
--------------------------------------------------*/
body.sticky-header nav#mainNav {
	width: auto;
	margin-left: 0 !important;
}
@media only screen and (min-width: 1024px) {
	.page-template-page-nosidebar:not(.sticky-header) nav#mainNav ul li a b,
	.page-template-page-nosidebar-fullthumb:not(.sticky-header) nav#mainNav ul li a b {
		color: #000;
	}
	.page-template-page-nosidebar:not(.sticky-header) nav#mainNav ul li:not(.current-menu-item) a:not(:hover) span,
	.page-template-page-nosidebar-fullthumb:not(.sticky-header) nav#mainNav ul li:not(.current-menu-item) a:not(:hover) span {
		color: #999;
	}
}
/**/
#footer {
	margin-top: 50px;
	padding-top: 100px;
	padding-bottom: 80px;
	background: url(/struct/wp-content/uploads/footer_bg.jpg) no-repeat center center;
	background-size: cover;
	-webkit-background-size: cover;
}
#footer::before {
	display: none;
}
#copyright {
	position: relative;
	margin-top: -50px;
	background: none;
}
@media print, screen and (min-width: 641px){ /* PC用 */
	#footer {
		background-attachment: fixed;
	}
}
/* 横100％背景 */
.bg_wide {
	position: relative;
}
.bg_wide::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	content: "";
	z-index: -1;
}
@media print, screen and (min-width: 641px){ /* PC用 */
	.box_w2 {
		display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.box_w2.rev {
		flex-direction: row-reverse;
	}
}
/*--------------------------------------------------
	トップ
--------------------------------------------------*/
.home #mainImg {
	padding-bottom: 0;
}
.home #content {
	padding-top: 0;
}
.home .post h1.ttl {
	margin-bottom: 30px;
}
.home .post h1.ttl span {
	display: block;
	padding: 6px 0 0;
	font-size: 13px;
}
@media only screen and (min-width: 960px) {
	.top_fream01 .in,
	.top_fream02 .in,
	.postlist {
		width: 1240px !important;
		margin: 0 auto;
	}
}
@media only screen and (max-width: 959px) {
	.top_fream01 .in,
	.top_fream02 .in,
	.postlist {
		width: 96% !important;
		margin: 0 auto;
	}
}
@media only screen and (max-width: 640px){
	.top_fream01 .in,
	.top_fream02 .in,
	.postlist {
		width: 96% !important;
		margin: 0 auto;
	}
}
/**/
.top_fream01,
.top_fream02 {
	padding: 3% 0;
}
.top_fream01 .in,
.top_fream02 .in {
	padding: 15px;
	box-sizing: border-box;
	color: #fff;
}
.top_fream01 .in h1,
.top_fream02 .in h1 {
	color: #fff;
}
.top_fream01 .in h1 span,
.top_fream02 .in h1 span {
	padding: 0;
}
.top_fream01 {
	padding: 5% 0;
	background-image: url(/struct/wp-content/uploads/top_bg01.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
@media print, screen and (min-width: 641px){ /* PC用 */
	.top_fream01 {
		background-attachment: fixed;
	}
}
.top_fream01 h1::after {
	display: none;
}
.top_fream02 {
	background-image: url(/struct/wp-content/uploads/top_bg02.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
@media screen and (min-width: 1024px) {
	.top_fream02 {
		background-attachment: fixed;
	}
}
.top_fream03 {
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
.top_fream03 .box {
	width: 33.3%;
	padding: 2%;
	box-sizing: border-box;     /* 余白や線を幅と高さに含める */
	color: #fff;
}
.top_fream03 h1 {
	background-image: none !important;
	color: #fff;
}
.float_l {
	float: left;
}
.float_r {
	float: left;
}
.top_fream03 .bg01 {
	background-image: url(/struct/wp-content/uploads/top_link_bg01.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.top_fream03 .bg02 {
	background-image: url(/struct/wp-content/uploads/top_link_bg02.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.top_fream03 .bg03 {
	background-image: url(/struct/wp-content/uploads/top_link_bg03.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
@media only screen and (max-width: 640px){
	.top_fream03 .box {
		width: 100%;
	}
	.float_l,
	.float_r {
		float: none;
	}
}
/*--------------------------------------------------
	会社概要
--------------------------------------------------*/
.company_fream {
	border: #c00000 2px solid;
	padding: 0 5% 3% 5%;
	border-radius: 20px;
	background-color: #f2f2f0;
	margin-bottom: 4%;
	margin-top: 3%;
	}
p.company_txt {
	position: relative;
	top: -24px;
	left: 0;
	width: 250px;
	padding: 12px 0 10px 0;
	background-color: #c00000;
	color: #FFF;
	border-radius: 10px;
	text-align: center;
	font-weight: bold;
	font-size: 110%;
	}
.company_fream table,
.company_fream th,
.company_fream td {
	border: none !important;
	background-color: transparent !important;
	}
.company_fream th {
	white-space: nowrap;
	width: 80px;
}
@media only screen and (max-width: 640px){
	p.company_txt {
		width: 150px;
		}
}
/*--------------------------------------------------
	営業品目
--------------------------------------------------*/
#business_note {
	margin-bottom: 40px;
	border: 1px solid #FBE5D6;
}
#business_note dt {
	display: inline-block;
	padding: 10px 15px;
	background: #FBE5D6;
}
#business_note dd {
	padding: 15px;
}
/**/
#business_about h2 {
	background: none;
}
#business_about .bg01 {
	background: url(/struct/wp-content/uploads/quality_no1.jpg) no-repeat right bottom;
}
#business_about .bg02 {
	background: url(/struct/wp-content/uploads/quality_no2.jpg) no-repeat left bottom;
}
#business_about .bg03 {
	background: url(/struct/wp-content/uploads/quality_no3.jpg) no-repeat right bottom;
}
#business_about .bg04 {
	background: url(/struct/wp-content/uploads/quality_no4.jpg) no-repeat left bottom;
}
#business_about .bg05 {
	background: url(/struct/wp-content/uploads/quality_no5.jpg) no-repeat right bottom;
}
#business_about h2 {
	text-align: left;
}
#business_about h2::after,
#business_about h2::before {
	display: none;
}
#business_about .linkBtn {
	background: #e7e5e6;
	border: 1px solid #808080;
	box-sizing: border-box;
	color: #000;
}
#business_about .linkBtn::after {
	border-color: #000;
}
#business_about .linkBtn:hover {
	background: #808080;
	color: #fff;
}
/**/
.pick {
	color: #800000;
}
.post p.txt_box {
	padding: 15px;
	background: #FBE5D6;
	border: 3px solid #800000;
	font-weight: bold;
}
/**/
.design_box {
	margin-bottom: 30px;
	padding: 30px 0;
}
.design_box::before {
	background: #F2F2F2;
}
/**/
.post p.fm.pick.ttl {
	margin-bottom: 15px;
	padding: 10px;
	background: rgba(128,0,0,0.2);
	text-align: center;
}
/**/
#quality_about .box_w2 {
	margin-bottom: 30px;
}
#quality_about .bg01 {
	background: url(/struct/wp-content/uploads/quality_no1.jpg) no-repeat right center;
}
#quality_about .bg02 {
	background: url(/struct/wp-content/uploads/quality_no2.jpg) no-repeat left center;
}
#quality_about .bg03 {
	background: url(/struct/wp-content/uploads/quality_no3.jpg) no-repeat right center;
}
#quality_about .bg04 {
	background: url(/struct/wp-content/uploads/quality_no4.jpg) no-repeat left center;
}
#quality_about .bg05 {
	background: url(/struct/wp-content/uploads/quality_no5.jpg) no-repeat right center;
}
#quality_about .fm.pick {
	display: inline-block;
	margin-bottom: 15px;
	background-size: auto 100%;
	-webkit-background-size: auto 100%;
	padding: 30px 50px;
	text-align: center
}
@media only screen and (max-width: 640px){ /* スマホ用 */
	#quality_about .fm.pick {
		display: block;
		padding: 30px;
	}
}
/*--------------------------------------------------
	お問い合わせ
--------------------------------------------------*/
.page-contact .post form.wpcf7-form .linkBtn {
	padding:0 !important;
	width: 100%;
}
.page-contact .post form.wpcf7-form .linkBtn input.wpcf7-submit {
	width: 100%;
	padding: 15px 40px;
}
.page-contact .post form.wpcf7-form .linkBtn span.ajax-loader {
	position: absolute;
}
.wpcf7-form-control-wrap .wpcf7-select{
	width: 15% !important;
	}
@media only screen and (max-width: 959px) {
.wpcf7-form-control-wrap .wpcf7-select{
	width: 20% !important;
	}
}
@media only screen and (max-width: 640px){
.wpcf7-form-control-wrap .wpcf7-select{
	width: 100% !important;
	}
}
@media (min-width:1024px) {
	#header .inner {
		width:100%;
	}
	#header .bg {
		padding-left:15%;
	}
	#header .bg .inner {
		width:100%;
	}
	#header h1, #header .description {
		float:none;
	}
	#header-layout {
		position:relative;
		height:100px;
		width:70%;
		min-width:1024px;
		margin:0 auto;
		padding:0;
	}
	#header #headerInfo p {
 	   line-height: 0;
	}
	#header .logo {
		left: 0;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	nav#mainNav {
		margin-top:0;
		width:auto;
		position: absolute;
		top: 50%;
		bottom: auto;
		right: 0;
		margin:0;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	#header nav#mainNav .inner {
		background:transparent;
	}
	#header .contact {
		width:auto;
		position:absolute;
		right:0;
		left:auto;
		top:15px;
	}
	.sticky-header #header-layout {
		width:100%;
		display:flex;
		height:auto;
		padding:10px 0;
		box-sizing:border-box;
		justify-content:space-around;
		align-items:center;
	}
	.sticky-header #header-layout .contact ,
	.sticky-header #header-layout .logo ,
	.sticky-header #header-layout #mainNav {
		position:static !important;
		margin:0 !important;
		width:auto !important;
		top:auto;
		left:auto;
		right:auto;
		bottom:auto;
		transform:none;
	}
	.sticky-header #header-layout .contact {
		order:3;
	}
	.sticky-header .site-header {
		position:fixed;
		top: -125px;
		transform: translateY( 125px );
		transition: all 0.8s ease-in-out;
	}
	.admin-bar.sticky-header .site-header, .admin-bar.sticky-header .hide-site-header {
		top:-95px;
	}
	nav#mainNav .panel > ul {
		letter-spacing:0;
		display:flex;
		align-items:center;
		justify-content:space-between;
	}
	nav#mainNav .panel > ul li {
		left:auto;
	}
	nav#mainNav .panel > ul li a {
		padding:10px 30px;
		display: flex;
		flex-wrap: wrap;
		justify-content:center;
		align-items: center;
	}
	nav#mainNav .panel > ul li a span {
		width:100%;
	}
}
@media (min-width:1240px) {
	#header-layout {
		min-width:1240px;
	}
}
