@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/



/*--------------------------------------------------
	オリジナル設定
--------------------------------------------------*/
.fs { font-size: 85%; }
.fm { font-size: 115%; }
.red { color: #FC0000; }
.pick { color: #80B624; }
.cf:after {
	clear: both;
	display: block;
	overflow: hidden;
	height: 0px;
	content: "";
}
p.attention {
	text-indent: -1em;
	margin-left: 1em;
}
p.nm {
	padding-bottom: 0;
}
/**/
.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; }
}
/*--------------------------------------------------
	共通
--------------------------------------------------*/
.mb {
	margin-bottom: 40px;
}
.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;
}
.bg_pad {
	padding: 30px 0;
}
@media print, screen and (min-width: 641px){ /* PC用 */
	.bg_pad {
		padding: 60px 0;
	}
	.bg_fix::before {
		background-attachment: fixed !important;
	}
	.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;
	}
	.box_w2.vcen {
		-webkit-align-items: center;
		align-items: center;
	}
}
/*--------------------------------------------------
	トップページ
--------------------------------------------------*/
header#h1Header h1.title {
	background: none;
}
#mainImg {
	padding-bottom: 0;
}
.home #wrapper {
	overflow: visible;
}
.home #content {
	padding-top: 0;
}
#post-2 .post {
	background: none;
	border: none;
	padding-top: 0;
}
#post-2 .post h1 {
	margin-top: 0;
}
/**/
#top_msg::before {
	background-image: url(/struct/wp-content/uploads/top_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
#top_msg {
	padding-top: 30px;
}
#top_msg .in {
	line-height: 2.0em;
}
#top_msg .in p {
	color: #404040;
}

@media print, screen and (min-width: 641px){ /* PC用 */
	#top_msg .in {
		width: 80%;
		margin: 0 auto;
	}
}
#top_msg .top_contents {
	padding-bottom: 60px;
}
#top_msg .top_contents .column2_50 {
	background: -moz-linear-gradient(top left,rgba(104,45,115,0.8),rgba(112,48,160,0.8),rgba(186,100,188,0.8));
	background: -webkit-linear-gradient(top left,rgba(104,45,115,0.8),rgba(112,48,160,0.8),rgba(186,100,188,0.8));
	background: linear-gradient(top left,rgba(104,45,115,0.8),rgba(112,48,160,0.8),rgba(186,100,188,0.8));
}
#top_msg .top_contents p {
	color: #FFFFFF;
}
#top_msg .top_contents .in {
	padding: 30px;
}

/*--------------------------------------------------
	会社概要
--------------------------------------------------*/
#company_tbl {
	margin-bottom: 40px;
}
#company_tbl th {
	width: 20%;
	white-space: nowrap;
}
#company_tbl td {
	text-align: left;
}
#story_tbl {
	margin-bottom: 40px;
}
#story_tbl th {
	width: 20%;
	white-space: nowrap;
}
#story_tbl td {
	text-align: left;
}
/*--------------------------------------------------
	事業内容
--------------------------------------------------*/
@media print, screen and (min-width: 641px){ /* PC用 */
	#service_msg .photo {
		width: 55%;
	}
	#service_msg .txt {
		position: relative;
		padding: 20px;
		line-height: 2.8em;
		background-color: rgba(255,255,255,0.8);
		width: 55%;
		margin-left: -15%;
		margin-top: 150px;
	}
}
/*--------------------------------------------------
	製品紹介
--------------------------------------------------*/
@media print, screen and (min-width: 641px){ /* PC用 */
	.product .photo {
		width: 55%;
	}
	.product .txt {
		position: relative;
		padding: 20px;
		background-color: rgba(255,255,255,0.8);
		width: 55%;
		margin-left: -15%;
	}
	.product_contents dl {
		width: 30%;
	}
}
.product_contents dl {
	margin-bottom: 30px;
}
.product_contents dl dt,
.product_contents dl dd {
	text-align: center;
}
.post p.product_note {
	margin-bottom: 20px;
	padding: 15px;
	background: rgba(225,204,240,0.8);
	border-radius: 15px;
}
/*--------------------------------------------------
	お問い合わせ
--------------------------------------------------*/
.wpcf7-form select {
	width: auto;
}
.wpcf7-form table td {
	text-align: left;
}
@media print, screen and (min-width: 641px){ /* PC用 */
	.wpcf7-form table th {
		width: 200px;
		white-space: nowrap;
	}
}
/* ボタン */
.post form.wpcf7-form .linkBtn {
	padding:0 !important;
}
.post form.wpcf7-form .linkBtn input.wpcf7-submit {
	width:100%;
	padding:15px 40px;
}
.post form.wpcf7-form .linkBtn span.ajax-loader {
	position:absolute;
}
/*--------------------------------------------------
スマホ時にアイキャッチとパンくずの間に間隔調整
--------------------------------------------------*/
body.mobile #breadcrumb ,
body.mobile #mainImg {
	margin-top: 0;
}
@media (max-width:1023px) {
	body.mobile #header + * {
		margin-top:67px;
	}
}

/*バージョンアップCF7送信スピナーによるテキストずれ対応*/
.wpcf7-spinner{
    position: absolute!important;
    margin: 0!important;
}