@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/

/*------------------------
改行位置の調整------------------------*/


@media screen and (min-width: 769px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 768px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}

/*カラムの間隔調整
----------------------------*/

.post .column2_50 {
	width:47.5%;
	margin:0 1%;
}
@media only screen and (max-width: 640px) {
	.post .column2_50 {
		width:100%;
		margin:5px 0;
	}
}

/*----------------------
ヘッダー隙間調整
----------------------*/
.mobile #breadcrumb{
margin-top: 60px;
}
.mobile #mainImg{
margin-top: 60px;
}
body.mobile #header .logo{
height: 60px;
}
.mobile #header .logo .mark{
vertical-align: middle;
}


/*----------------------
送信ボタンの幅を広げる
----------------------*/
.wpcf7 .linkBtn {
display:block;
}

/*アレンジ強調枠組み
----------------------------*/
.round {
	border: 2px solid #ce5e39;
	margin-bottom:15px;
}

.round2 {
	border: 2px solid #47b1ff;
	margin-bottom:15px;
}

.round3 {
	border: 2px solid #e1a9a7;
	margin-bottom:15px;
}


.round4 {
	border: 2px solid #1a0b07;
	margin-bottom:15px;
}

.round p, .round2 p, .round3 p, .round4 p{
	padding:1em;
}


/*
テキストの背景に画像を敷くアレンジ（1）
*/

#wrapper, #content, .post{
	overflow: visible;
	}
.post {
    background-color: rgba(255,255,255,0);
}
#top_msg {
	position: relative;;
	padding: 30px 0;
	line-height: 1.8;
}
#top_msg::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	background: url(/struct/wp-content/uploads/top01.jpg) no-repeat center center;
	background-size: cover;
	-webkit-background-size: cover;
	content: "";
	z-index: -1;
}

@media (min-width: 641px){
	#top_msg {
		padding: 50px 0;
		text-align: center;
	}
}


/*
テキストの背景に画像を敷くアレンジ（2）
*/

#wrapper, #content, .post{
	overflow: visible;
	}
.post {
    background-color: rgba(255,255,255,0);
}
#top2_msg {
	position: relative;
	margin-bottom: 30px;
	padding: 30px 0;
	line-height: 1.8;
}
#top2_msg::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	background: url(/struct/wp-content/uploads/top02.jpg) no-repeat center center;
	background-size: cover;
	-webkit-background-size: cover;
	content: "";
	z-index: -1;
}
@media (min-width: 641px){
	#top2_msg {
		margin-bottom: 50px;
		padding: 50px 0;
		text-align: center;
	}
}


/*@media only screen and (min-width: 1024px) */
.full_width {
    width: 100vw;
    margin-left: calc((100vw - 100%) / 2 * -1 );
}


/*
テキストの背景に画像を敷くアレンジ（3）
*/

#wrapper, #content, .post{
	overflow: visible;
	}
.post {
    background-color: rgba(255,255,255,0);
}
#top3_msg {
	position: relative;
	margin-bottom: 30px;
	padding: 30px 0;
}
#top3_msg::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100vw;
	height: 100%;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	background: url(/struct/wp-content/uploads/top03a.jpg) no-repeat center center;
	background-size: cover;
	-webkit-background-size: cover;
	content: "";
	z-index: -1;
}
@media (min-width: 641px){
	#top3_msg {
		margin-bottom: 50px;
		padding: 50px 0;
		text-align: center;
	}
}


/*@media only screen and (min-width: 1024px) */
.full_width {
    width: 100vw;
    margin-left: calc((100vw - 100%) / 2 * -1 );
}




/*------------------------
画像を画面横幅一杯に表示
------------------------*/
/*class="container full_width"で、画面一杯&横並び配置になる*/
.container.full_width {
    width: 100vw;
    margin-left: calc((100vw - 100%) / 2 * -1);
}
/*class="container full_width mobile_verticalで、スマホ時は縦並びに*/
.post .container.full_width.mobile_vertical {
	flex-wrap:wrap;
}
@media (max-width:768px) {
	.post .container.full_width.mobile_vertical .column3_33,
	.post .container.full_width.mobile_vertical .column4_25,
	.post .container.full_width.mobile_vertical .column2_50 {
		width:100%;
	}
}

.post .container .column3_33, .post .container-rwd .column3_33{
	margin:0 auto;
}
.post .container .column3_33 img, .post .container-rwd .column3_33 img{
	margin:0 auto;	
}

.post .container .column2_50, .post .container-rwd .column2_50{
	margin:0 auto;
}
.post .container .column2_50 img, .post .container-rwd .column2_50 img{
	margin:0 auto;	
}

.post .container .column4_25, .post .container-rwd .column4_25{
	margin:0 auto;
}
.post .container .column4_25 img, .post .container-rwd .column4_25 img{
	margin:0 auto;	
}



/*表組み線のみアレンジ*/

.post table, .post table th, .post table td {
	border:none;
}
.post table tr {
	border-bottom:1px solid #1a0b07;
}
.post table th {
	background-color:transparent;
	font-weight:bold;
}
.post table tr:last-child {
	border-bottom:none;
}

/*表組み文字サイズ調整*/

.post table {
	font-size: 100%;
}


/*------------------------
スマホ時のh1重なり防止
------------------------*/

@media only screen and (max-width: 900px) {
h1.title span, .post h1::before {
font-size: 26px;
}
}

/*------------------------
グローバルメニュー幅調整
------------------------*/
@media only screen and (min-width: 1024px) {

nav#mainNav ul li a {
	padding-left:28px;
	padding-right:28px;
}

}/*@media only screen and (min-width: 1024px) */


/*------------------------
投稿一覧ページ見出し修正
------------------------*/
.post4b h2 {
    overflow: hidden;
}

.post h2 {
    overflow: hidden;
}


/*タイトル背景img被り対策
-----------------------------------*/
body.mobile #mainImg,
body.mobile #breadcrumb ,
body.mobile #header + #wrapper,
body.mobile #header + #wrapper-full,
body.mobile #h1Header ,
body.mobile #thumbImg {
margin-top:60px !important;
}

body.mobile.page-template-page-fullthumb #breadcrumb,
body.mobile.page-template-page-nosidebar-fullthumb #breadcrumb,
body.mobile.page-template-page-nosidebar-fullwidththumb #breadcrumb,
body.mobile.page-template-page-fullthumb-h1 #breadcrumb,
body.mobile.page-template-page-nosidebar-fullthumb-h1 #breadcrumb,
body.mobile.page-template-page-nosidebar-fullwidththumb-h1 #breadcrumb {
margin-top:0px !important;
}



/*囲み*/

.box01{
	border: 4px solid #ce5c39;
    border-radius: 10px;
	background: #cfbfba;
    padding: 10px;
}

.box02{
	border: 4px solid #47b1ff;
    border-radius: 10px;
    background: #e6f4ff;
    padding: 10px;
}


/*メイン画像下隙間詰める----------------------------*/

#mainImg {
    padding-bottom: 0;
}
.home #content {
    padding-top: 0;
}
.home .post {
    padding-top: 0;
}

/*カラムの間隔調整
----------------------------*/

.post .column3_33 {
	width:30.5%;
	margin:0 1%;
}
@media only screen and (max-width: 640px) {
	.post .column3_33 {
		width:100%;
		margin:5px 0;
	}
}


/*-----------------------------------
パララックス
-----------------------------------*/
body{
	overflow-x:hidden;
	}
#wrapper, #content, .post{
	overflow: visible;
	}
.greeting h1 {
	font-size: 200%;
	margin-bottom: 2em;
	text-align: center;
	border-width:0;
}
.greeting {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: 0 calc((100vw - 100%) / 2);
	background: url(/struct/wp-content/uploads/top00.jpg) no-repeat center center;
	background-size:cover;
	background-attachment: fixed;
}
.bg-mask { /*背景写真を半透明白にする*/
  height: 100%;
  background: rgba(255,255,255,0.5);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: 0 calc((100vw - 100%) / 2);
}
.greeting .box {
padding:40px 8px;
font-weight:bold;
min-height: 360px;
}

.post table {
	font-size: 100%;
}






/*--------------------------------------------------
	オリジナル設定
--------------------------------------------------*/
@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;
	}
	.box_w2.vcen {
		-webkit-align-items: center;
		align-items: center;
	}
}