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

/* * * * * * * * * * *
* 共通
* * * * * * * * * * */

/* 全体
------------------------------------*/
body { overflow-x:hidden;}

.site-body{
	padding:30px 0px;
}

.page-header{
	background: url(https://rezhabrothers.com/wp-content/uploads/2023/01/mainvisual-1.png);
    background-size: cover;
    background-position: center;
}

#wrapper, #content, .post { overflow: visible; }

#mainImg, .home #content, .post { padding: 0!important; }

#mainImg { padding-bottom: 0; }

.mobile #mainImg { margin-top: 60px!important; }

header#h1Header { background: transparent; }

body.mobile #header .logo img { margin: 0 auto; }

body.mobile #breadcrumb { margin-top: 0; }

@media screen and (max-width: 1023px) {
	body.mobile { margin-top: 60px; }
	
	.mobile #header .logo .mark {
    padding: 5px 10px;
		box-sizing: border-box;

}
}

/* スマホ対応 */
@media screen and (max-width:768px) {
	.post table th, .post table td {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.post {
		padding-left: 20px!important;
		padding-right: 20px!important;
		box-sizing: border-box;
	}
}


/* ヘッダー
------------------------------------*/

@media screen and (min-width: 1024px) {
	#header-layout {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		padding: 0;
	}

	#header .logo { padding-left: 30px; }

	#header .contact .mail { margin-top: 8px; }

	#header .inner {
		width: 100%;
		z-index: 10;
	}

	nav#mainNav {
		margin: 0;
		width: auto;
	}

	nav#mainNav ul {
		height: 85px;
		line-height: 85px;
		padding: 0;
	}

	nav#mainNav ul li { margin: 0; }

	nav#mainNav ul li.headerMail a {
		padding: 33px 35px 12px;
		background-color: #CC0808;
	}

	nav#mainNav ul li.headerMail a b {
		color: #fff;
	}

	nav#mainNav ul li.current-menu-item a::before, nav#mainNav ul li a:hover::before {
		bottom: 15px;
	}

	nav#mainNav ul li.current-menu-item.headerMail a::before, nav#mainNav ul li.headerMail a:hover::before {
		display: none;
	}
} 

/* お問い合わせページ
------------------------------------*/
.post .linkBtn { display: block; }


/* Google map
------------------------------------*/
.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 40%;
	position: relative;
}

.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

/* スマホ対応 */
@media screen and (max-width:768px) {
	.gmap { padding-bottom: 56.25%; }
}


/* ボタン
------------------------------------*/

.btn {
	text-align: center;
	margin-top: 30px;
}

.btn a {
	display: inline-block;
	text-align: center;
	font-weight: 600;
	color: #fff;
	padding: 10px 25px;
	min-width: 230px;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transition: all .3s;
	-webkit-transition: all 0.3s;
	position: relative; 
}

.btn a:hover {
	box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

/* ボタン（ブルー） */
.btn-blue a {
	background: #08CC49 0% 0% no-repeat padding-box;
}

/* 装飾
------------------------------------*/

header#h1Header { position: relative; }

header#h1Header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.3);
} 

header#h1Header h1.title { text-shadow: none; }

.post h2, .post h3 { 
	padding: 0;
	line-height: 1.45;
}

h2.heading {
    font: normal normal normal 90px/110px Impact;
    letter-spacing: 0px;
    color: #08CC49;
	    margin-bottom: 0;
    padding-bottom: 1rem;
}

.post h3 { 
	color: #fff;
	background-color: #0C67D1;
	padding: 5px;
}

.post h2 span, .post h3 span { padding: 0; }

.post p { line-height: 1.85; }

.post table tr th, .post table tr td {
	border: none;
	border-bottom: 1px solid #333;
	padding: 20px 10px;
} 

.post table tr:first-child th, .post table tr:first-child td {
	border-top: 1px solid #333;
}

.post table tr th {
	text-align: center;
	font-weight: bold;
	vertical-align: middle;
	background-color: #f8f8f8;
}

.sub-title {
    color: #000000;
    font-size: 120%;
    font-weight: bold;
    line-height: 1;
}


.fl { font-size: 130%; }

.bold {
	font-weight: bold;
}

@media screen and (max-width: 768px ) {
	.post h3 {
		text-align: left;
	}

	.post table tr:first-child td {
		border-top: inherit;
	}
}

/* グリットレイアウト
------------------------------------*/
.content {
	max-width: 1100px;
	margin: 0 auto;
}

.rowflex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 15px 0;
}

.colum-2 { width: 48%; }

.colum-3 { width: 31%; }

.colum-4 { width: 23%; }

.colum-5 { width: 18%; }


/* スマホ対応 */
@media screen and (max-width:768px) {
	.rowflex {
		flex-direction: column;
	}

	.colum-2, .colum-3, .colum-4, .colum-5 { 
		width: 100%;
		margin-top: 15px;
		margin-bottom: 15px;
	}
}


/* PC・SP 表示・非表示
------------------------------------*/
.pc { display: block; }

.sp { display: none; }

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

	.sp { display: block; }
}

/* * * * * * * * * * *
* トップ
* * * * * * * * * * */
.top01, .top03 {
	padding-top: 10px;
	padding-bottom: 10px;
}

.top02,.top03 {
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	box-sizing: border-box;
	margin-bottom: 3rem;
}

.top03 {
	margin-bottom: 30px;
}

.top02 .rowflex {
	align-items: center;
	margin: 0;
}

.top02 .rowflex.rowreverse {
	flex-direction: row-reverse;
}

.top02 .rowflex .colum-2 {
	width: 50%;
}

.top02 .rowflex .colum-2:first-child {
	padding: 0 50px;
	box-sizing: border-box;
}

.top02 .rowflex .colum-2:last-child img {
	width: 100%;
	height: 500px;
	object-fit: cover;
	margin: 0 auto;
}

.top02 .rowflex .colum-2 .btn { text-align: right; }

.top03 {
	background: url(/struct/wp-content/uploads/top_recruit.jpg) no-repeat center / cover;
	margin-bottom: 80px;
}

.top03 h2, .top03 p { color: #fff; }

.contact-wrapper .rowflex {
	margin-top: 50px;
	align-items: center;
	position: relative;
}

.contact-wrapper .rowflex:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1px;
	height: 120px;
	background-color: #333;
}

.contact-wrapper .rowflex .colum-2 {
	padding: 0 50px;
	box-sizing: border-box;
}

/* スマホ対応 */
@media screen and (max-width:768px) {
	.top01,.top02,.top03 {
		padding-bottom: 30px;
	}

	.top01, .top03 {
		padding-top: 30px;
	}

	.top03 {
		padding-left: 20px;
		padding-right: 20px;
	}

	.top01 p, .top03 p:not(.btn) {
		text-align: left;
	}

	.top02 .rowflex,
	.top02 .rowflex:nth-child(even) {
		flex-direction: column-reverse;
	}

	.top02 .rowflex .colum-2 {
		width: 100%;
	}

	.top02 .rowflex .colum-2:first-child {
		padding: 0 20px;
		box-sizing: border-box;
	}

	.top02 .rowflex .colum-2:last-child img {
		height: 225px;
	}
	.contact-wrapper .rowflex {
		margin-top: 30px;
	}

	.contact-wrapper .rowflex:before {
		display: none;
	}

	.contact-wrapper .rowflex .colum-2 {
		padding: 0;
	}

}

/* * * * * * * * * * *
* 事業内容
* * * * * * * * * * */
.service01 {
	padding-bottom: 80px;
}

.service01 .item { padding-top: 30px; }

p.underline {
    text-decoration: underline;
}

/* スマホ対応 */
@media screen and (max-width:768px) {
	.service01 {
		padding-bottom: 30px;
	}

	.service01 .item {
		padding-top: 0;
	}

	.service01 .item .rowflex .colum-2 p {
		font-size: inherit;
		font-weight: normal;
	}
	td.headtd {
    width: 30%;
}

}

/* * * * * * * * * * *
* 求人要項
* * * * * * * * * * */

/* スマホ対応 */
@media screen and (max-width:768px) {
	.recruit01 p:not(.btn) {
		text-align: left;
	}
}

/* * * * * * * * * * *
* 会社概要
* * * * * * * * * * */
.company01 {
	padding-bottom: 80px;
}

td.headtd {
    background: #B2B2B2;
}

td {
    padding: 20px !important;
}

.contents.companymap {
    margin-top: 30px;
}

/* スマホ対応 */
@media screen and (max-width:768px) {
	.company01 {
		padding-bottom: 30px;
	}

	.company01 p {
		text-align: left;
	}
}
.post h3 {
    color: #fff;
    background-color: #0C67D1;
    padding: 5px;
    font-size: 23px;
}


.entry-title--post-type--page, h2 {
    padding: 0.5em 0;
    border-top: 0px solid var(--vk-color-primary);
    border-bottom: 0px solid var(--vk-color-border-hr);
}


.site-footer {
    border-top: 1px solid #4caf50;
}

.global-nav-list>li:before{
	    border-bottom: 3px solid green;
}

.site-footer-title:after, .sub-section-title:after, h3:after {
    content: ".";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    bottom: -1px;
    width: 30%;
    border-bottom: 1px solid green;
}