@charset "utf-8";
/*
Theme Name:mrp-child
Template:mrp
Version: 1.0.0
*/
/*
DesignCode CSS: ver 0.01
*/
/*------------------------------------------------------
Theme Material
------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
@font-face
{
font-family:"こころ明朝" ;
src: url('https://cdn.leafscape.be/kokoro/Kokoro_web.woff2')
     format("woff2");
}

:root {
	/*------▼基本設定▼------*/
	--color-background: #fff;
	--color-font: #111;
	--color-primary: #DDF1ED;
	--color-primary-shade: #29AEDB;
	--color-primary-tint: #A8E4F8;
	--color-secondary: #D5F4FF;
	--color-secondary-tint: #d33232;
	--color-table-border: #707070;
	--body-font-size: min(calc(1.9rem + (1vw - 19.2px) * 0.1294), 1.9rem); /* 1.6-1.4rem (1920-375) */
	--body-font-family: "Zen Kaku Gothic New", sans-serif;
	--content-max-width: 1440px;
	--max-wide:calc(((100vw - 100%) / 2) * -1);
	--max-wide-inner:calc((100vw - var(--content-max-width)) / 2);
	/*------▼ヘッダー設定▼------*/
	--header-background: #F3FCFF;
	--header-color-font: #29AEDB;
	--header-color-primary: #6DC9E8;
	--header-color-primary-shade: #D5F4FF;
	--header-color-primary-tint: #f53215;
	/*------▼フッター設定▼------*/
	--footer-background: transparent;
	--footer-color-font: #29AEDB;
	--footer-color-primary: #29AEDB;
	/*------▼フォント設定▼------*/
	--font-family01: "こころ明朝", cursive;
	--font-family02: "手書き雑フォント", sans-serif;
}

.bg_re{
	position:relative;
}
.bg_max{
	margin-left:var(--max-wide);
	margin-right:var(--max-wide);
}
.w_fit{
	max-width:fit-content
}
.flex_wrap{
	flex-wrap: wrap;
}
.gap_col_row {
    row-gap: 1em;
}
.txt_red {
	color:red;
}
.txt_white{
	color:white;
}
.ap_1 img{
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;	
}
.ap_3_2 img{
	width: 100%;
	aspect-ratio: 3/2;
	object-fit: cover;
}
.ap_8_5 img{
	width: 100%;
	aspect-ratio: 8/5;
	object-fit: cover;
}
.min_txt, .post .min_txt {
    font-size: 2.2rem;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    /* color: var(--color-primary-shade); */
}
.em_txt, .post .em_txt{
	font-size: var(--rem24w);
	color: var(--color-primary);
}
.mid_txt, .post .mid_txt {
    font-size: var(--rem30);
    color: var(--color-primary);
}
.img_r30 img {
    border-radius: 30px;
}
.marker_green{
	background: linear-gradient(transparent 60%, #A8E4F8 60%);
}
/*GM*/
@media print, screen and (min-width: 1024px) {	
	nav#mainNav ul li a:hover span, nav#mainNav ul li a:active span,    nav#mainNav ul li.current-menu-item a span,
	nav#mainNav ul li.current-menu-item a b, nav#mainNav ul li a:hover b, nav#mainNav ul li a:active b, nav#mainNav ul li.current-menu-parent a b,nav#mainNav ul li.current-menu-parent a span {
		color: var(--header-color-font);
	}
nav#mainNav ul li a span{
		font-family:var(--font-family01);
		font-weight:100;
	}
	#header a.head_btn {
        flex-direction: row;
	 }
	#header a.head_btn span{
		margin-left: 0.5em;
		font-weight: 500;
		color: var(--header-color-font);
	}
	#header a.head_btn.mail_btn span{
		color:white;
	}	
	#header a.head_btn:hover {
        background: var(--header-color-primary);
		opacity:0.8;
	}
	#header a.head_btn.tel_btn:hover{
		background: var(--header-color-primary-shade);
	}
	nav#mainNav ul li a {
		padding: var(--px20) var(--px12);
	}
	nav#mainNav ul li.current-menu-parent a,
	nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover,
	.sticky-header #header > .inner {
		background: var(--header-background);
	}
	#header .logo img {
		max-width: max-content;
		/* max-height: 35px; */
	}
	nav#mainNav ul li a b, nav#mainNav ul li a span{
		font-weight: 400;
		font-family: var(--font-family01);
	}
	nav#mainNav ul li a span{
		font-size:15px;
	}
}
@media print, screen and (max-width: 1024px) {
	#header .logo img {
		max-width: max-content;
		max-height: 23px;
	}
}
@media print, screen and (max-width: 1023px) {
	nav#mainNav ul li a,
    nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover {
        background: var(--header-background);
    }
}
/*blog-list*/
#front_top_content, #front_bottom_content {
    background: transparent;
}
#front-sectionPost {
    width: 100%;
    margin: 0;
}
#wrapper{
	width:90%;
}
.post .time, .postlist .time, .post2b .time, .post4b .time {
    background: white;
    padding: 7.5px 15px;
    border-radius: 5px;
}
.post2b h2, .post4b h2, .post2b h2 a, .post4b h2 a {
    /* color: var(--color-primary-shade); */
}
.post4b_img img {
	border-radius:20px;
}
.post_link a, .post2b_link a, .post4b_link a,
.post_link, .post2b_link, .post4b_link,
.post .time, .postlist .time, .post2b .time, .post4b .time{
	color: var(--color-primary-shade);
}
.post .time a, .post2b .time a, .post4b .time a, .postlist .time a{
	color: var(--color-primary-shade);
	font-weight: 500;
}
#front-sectionPost{
	max-width: unset;
}
#footer .footnav ul > li::before, #footer .footnav ul > li::after {
	content:none;
}
#thumbImg::before, header#h1Header::before {
    opacity: 0;
}
.post .subimitarea .linkBtn input[type="submit"] {
    padding: 0;
}
.linkBtn, .post .linkBtn{
	background: var(--color-primary-shade);
}
.wpcf7-form .must {
    background: var(--color-secondary-tint);
}
.post table th{
	background: var(--color-secondary);
}
.post table td {
	background:white;
}
/*h1*/
.post h1{
	/* color: var(--color-primary-shade); */
	font-weight: 500;
}
h1.title span.txt_tate {
	writing-mode: vertical-rl;
	font-family: var(--body-font-family);
	font-weight: 500;
}
header#h1Header h1.title{
	color:var(--color-primary-shade);
	font-weight:500;
}
@media only screen and (max-width: 768px) {
	h1.title span.txt_tate {
		writing-mode: horizontal-tb;
	}
	h1.title{
		text-align:left;
	}
}
/*h2*/
.post h2{
	color:var(--color-primary-shade);
	font-weight:500;
	padding:0;
	z-index: 10;
	line-height: 1.2;
}
.post h2::after{
	content:none;
}

h2.green_circle:before {
    content: '';
    width: calc((min(calc(6.4rem + (1vw - 19.2px) * 0.4531), 6.4rem))*1.5);
    height: calc((min(calc(6.4rem + (1vw - 19.2px) * 0.4531), 6.4rem))*1.5);
    background: var(--color-primary);
    calc((min(calc(4.4rem + (1vw - 19.2px) * 0.4531), 4.4rem))*1.5): 100px;
    top: calc((min(calc(4.4rem + (1vw - 19.2px) * 0.4531), 4.4rem))*1.5);
    left: calc((min(calc(-0.4rem + (1vw - 19.2px) * 0.4531), -0.4rem))*1.5);
    z-index: -1;
    border-radius: 100%;
}
h2.green_circle.blue:before{
	background: var(--color-primary-tint);
}
h2.green_circle.right-blue:before{
	background: var(--color-secondary);
}
/*h3*/
.post h3{
	border-bottom-color:var(--color-primary-shade);
}
/*h4*/
.post h4::before{
	background:var(--color-primary-shade);
}
a.link_green {
	justify-content: end;
	display: flex;
	color: var(--color-primary-shade);
	line-height: 0.7;
	border: solid 1px;
	padding: 6px 15px;
	width: fit-content;
	border-radius: 100px;
	float: inline-end;
}

a.link_green .link_triangle {
	width: 18px;
	height: 15px;
	clip-path: polygon(0 0, 50% 50%, 0 100%);
	background: var(--color-primary-shade);
}
a.link_green:hover,
a.link_green:hover .link_triangle{
	opacity:0.8;
}
.top01 h1.title {
	text-align: left;
}
.top01 h2,.top02 h2,.top05 h2,.top06 h2,.top07 h2{
	text-align:left;
	margin-top: -5rem!important;
}
.top03 h2:first-child{
	margin-top: -10rem!important;
}
.top01 .w50:last-child .bg_re::before{
	content:"";
	position:absolute;
	width:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	height:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	background:url(https://iribaen.com/wp-content/uploads/top01-1.png);
	background-repeat:no-repeat;
	background-size:contain;
	bottom:-15rem;
	left:0rem;
}
.top06 .w50:last-child .bg_re::before{
	content:"";
	position:absolute;
	width:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	height:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	background:url(https://iribaen.com/wp-content/uploads/top06-1.png);
	background-repeat:no-repeat;
	background-size:contain;
	top:-10rem;
	left:0rem;
}
.top02 h2,.top05 h2, .top07 h2.line_1{
	transform: rotateZ(-9deg);
}
.top07 h2.line_2{
	transform: rotateZ(6deg);
	margin-top: 5rem!important;
	margin-left: 7rem;
	font-size: var(--px30);
}
.top02 .w50:last-child .bg_re::before{
	content:"";
	position:absolute;
	width:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	height:calc((min(calc(12rem + (1vw - 19.2px) * 0.4531), 12rem))*1.5);
	background:url(https://iribaen.com/wp-content/uploads/top02-1.png);
	background-repeat:no-repeat;
	background-size:contain;
	bottom:-15rem;
	right:0rem;
}
.top06 h2,
.top03 h2{
	text-align:right;
}
.top03 h2.green_circle.blue:before{
	top:10rem;
	left: 88%;
	background: var(--color-secondary);
}

.top06 h2.green_circle:before{
	left: 88%;
}
.top03 .line_1{
	font-size: var(--px30);
	transform: rotateZ(10deg);
}
.top06 h2{
	transform: rotateZ(10deg);
}
.top03 .line_2{
	margin-top: 7rem;
	transform: rotateZ(-5deg);
}

.top04 .gap1{
	gap:1%;
}
.top04 a.card {
	background: var(--color-secondary);
	border-radius: 30px;
	padding: 30px 20px;
	display: flow-root;
}
.top04 a.card:hover {
	opacity: 0.7;
}
.top04 a.card p{
	font-weight:500;
}
.top04 .card img {
	width: 90px;
	position: relative;
	float: right;
}
.top04 .flexbox {
	width: 98%;
	margin: auto;
}
.top05 h2.green_circle:before {
	background: var(--color-secondary);
}
.top07 #gallery-1 img{
	border-radius:20px;
}
.cta{
	background:url(https://iribaen.com/wp-content/uploads/cta_bg.png);
	background-repeat:no-repeat;
	background-size:cover;
}
.cta .card{
	background:white;
	border-radius: 30px;
}
.cta .card img{
	border-start-start-radius:30px;
	border-start-end-radius:30px;
}

.cta p.bg_green{
	background:#7EBB74;
	color:white;
	font-family:var(--font-family01);
	padding-top:2px;
	padding-bottom: 10px;
	font-size: var(--rem24w);
}
.cta a.link_green {
	float: none;
	margin: auto;
}
.cta dl{
	margin-top:5px;
	border-bottom:solid 1px;
}
h1.title.bottom-loop{
	text-align:left;
	font-family:var(--body-font-family);
}
@media only screen and (max-width: 1400px){
	.cta .inner{
		width:90%;
	}
}
@media only screen and (max-width: 768px) {
	.top01 .w50:last-child, .top02 .w50, .top03 .w50 ,.top05 .w50:last-child ,.top07 .w50:last-child{
		padding-top: 5rem;
	}
	.top06 .w50:last-child{
		padding-top: 15rem;
	}
	.top04 .flexbox {
		width: 90%;
	}
}
.about-us{
	background:url(/wp-content/uploads/about-us.png);
	z-index:-99;
	background-size: cover;
	background-position-x: 40%;
}
.policy{
	background:url(/wp-content/uploads/policy.png);
	z-index:-99;
	background-size: cover;
	background-position-x: 60%;
}
.policy h2,
.about-us h2{
	margin-top: -5rem!important;
}

.about-us .card{
	z-index:-80;
}
.about-us01 h1{
	color:var(--color-primary-shade);
}
.policy01 h2::before,
.about-us02 h2::before{
	left:95%;
}

.about-us02 figure img{
	width: 100%;
	aspect-ratio: 8/5;
	object-fit: cover;
	border-radius:30px;
	z-index: 0;
	position: relative;
}
.about-us02 figure {
	position: relative;
}
.about-us02 figure figcaption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	color: white;
	font-size: var(--rem36);
	font-weight: 700;
	z-index: 20;
	width: 100%;
	text-align: center;
	font-family: var(--font-family01);
	line-height: 1.2;
}

.about-us02 figure::after {
  content: '';
  display: inline-block;
  background: rgba(41, 174, 219,.7);
  width: 100%;
  height: 100%;
  border-radius: 30px;
  position: absolute;
  top: 0;
  left: 0;
}
.about-us03 h2{
	text-align:right;
}
.about-us03 h2.green_circle:before{
	left:90%;
}
.about-us03 h2.line_1{
	transform: rotateZ(7deg);
}
.about-us03 h2.line_2{
	margin-top:0;
}

.policy01 figure img{
	width: 100%;
	aspect-ratio: 8/5;
	object-fit: cover;
	border-radius:30px;
	z-index: 0;
	position: relative;
}
.policy01 figure {
	position: relative;
}
.policy01 figure figcaption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	color: var(--color-primary-shade);
	font-size: var(--rem36);
	font-weight: 500;
	z-index: 20;
	width: 100%;
	text-align: center;
	font-family: var(--font-family01);
	line-height: 1.2;
}

.policy01 .icon img{
	height: calc((min(calc(4.5rem + (1vw - 19.2px) * 0.4531), 4.5rem))*1.5);
	position: relative;
	right: -85%;
	transform: translateY(-120%) translateX(-50%);
	color: var(--color-primary-shade);
	z-index: 20;
}

.policy01 .icon-size .icon img{
	right: -60%;
}
.policy01 li p{
	margin-top: -6rem;
	height: 6rem;
	display: list-item;
	margin-left: auto;
	margin-right: auto;
}
.about-us04 h2.wow-d {
	background:inherit;
	position: relative;
	overflow: inherit;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
	margin: 0 0 3rem;
	font-size: 3rem;
	text-align: center;
	line-height: 1.4;
	color:white;
}
.about-us04 h2.wow-d::after {
  content: none;
}
.about-us04 h2.wow-d > span {
	position: relative;
	display: inline-block;
	padding: 0 6rem;
}
.about-us04 h2.wow-d > span::before,
.about-us04 h2.wow-d > span::after{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 4.4rem;
	height: 0.2rem;
	background-color: white;;
}
.about-us04 h2.wow-d > span::before {
	left:0;
	-moz-transform: rotate(60deg);
	-webkit-transform: rotate(60deg);
	-ms-transform: rotate(60deg);
	transform: rotate(60deg);
}
.about-us04 h2.wow-d > span::after {
	right: 0;
	-moz-transform: rotate(-60deg);
	-webkit-transform: rotate(-60deg);
	-ms-transform: rotate(-60deg);
	transform: rotate(-60deg);
}

.about-us04{
	background: var(--color-primary-tint);
}
.about-us04 ul li{
	width: 47.5%;
}
.about-us04 ul{
	margin:auto;
	justify-content: space-around;
}
.about-us04 img{
	border-radius:100%;
}
.about-us04 h2.green_circle{
	margin-top: -5rem;
	color:#284C50;
	font-family:var(--body-font-family);
}
.about-us04 .card .w55{
	width:55%;
}
.about-us04 .card .w45{
	width:55%;
}
@media only screen and (max-width: 1440px){
		.policy .inner,.about-us .inner,.about-us02 .inner,.about-us04 .inner,.about-us04 .max_w900{
		width:90%;
	}
}
@media only screen and (max-width: 768px){
	.about-us02 figure,
	.policy01 figure{
		width:70%;
		margin: auto;
	}
	.policy01 li p{
		margin-top: -8rem;
		width:70%;
		height: 8rem;
	}
	.about-us02 figure{
		margin-bottom: var(--px80w);
	}
	.policy01 .icon img{
		right: -75%;
		height: 9.5rem;
	}
	.about-us04 ul li{
		width: 100%;
		margin-bottom:20px;
	}
}
@media only screen and (max-width: 431px){
	.about-us02 figure,
	.policy01 figure{
		margin-top: -5rem;
		width:90%;
	}
	.policy01 li p{
		margin-top: -5rem;
		width:90%;
		height:15rem;
	}
	.policy01 .icon img {
        right: -85%;
        height: 5.5rem;
    }
	.about-us04 ul li{
		display:block;
	}
	.about-us04 .sp_nowrap .w50 {
        width: 100%;
    }
	.about-us04 .card .w55,
	.about-us04 .card .w45{
		width:100%;
		display:block;
	}
	.about-us04 h2.wow-d{
		font-size:2.5rem;
	}
}

.recruit a.link_green{
	float: none;
    margin: auto;
}


.flowlist {
  padding-left: 10rem;
  position: relative;
}
.flowlist::before {
  content: "";
  width: 15px;
  height: 100%;
  background: #eee;
  margin-left: -8px;
  display: block;
  position: absolute;
  top: 0;
  left: 10rem;
}
.flowlist > li {
  position: relative;
}
.flowlist > li:not(:last-child) {
  margin-bottom: 8vh;
}
.flowlist > li .icon {
  font-size:1.6rem;
  color: #fff;
  background: var(--color-primary-shade);
  padding: 0.3rem 2rem;
  display: block;
  position: absolute;
  top: 0.6rem;
  left: -11rem;
  z-index: 100;
  /* font-style: italic; */
  font-weight: 500;
  border-radius: 5px;
}
.flowlist > li .icon::after {
  content: "";
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent var(--color-primary-shade);
  position: absolute;
  top: 50%;
  left: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.flowlist > li dl {
  padding-left: 7rem;
  position: relative;
	padding-top: 0.7rem;
}
.flowlist > li dl::before,
.flowlist > li dl::after {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
}
.flowlist > li dl::before {
  width: 7px;
  height: 7px;
  margin-top: 0;
  background: var(--color-primary-shade);
  border-radius: 50%;
  left: -4px;
}
.flowlist > li dl::after {
  width: 50px;
  border-bottom: 1px dashed #999;
  position: absolute;
  left: 5px;
	top: 2.3rem;
}
.flowlist > li dl dt {
  margin-bottom: 0.5rem;
  font-weight: 400;
  font-size: 1.8rem;
}
.flowlist > li dl dt span.smaller{
	font-size:1.5rem;
}
@media (max-width: 768px) {
	.flowlist > li .icon {
		font-size: 1.2rem;
	}

	.flowlist {
		padding-left: 10rem;
	}

	.flowlist > li .icon {
		left: -9rem;
	}

	.flowlist::before {
		left: 10rem;
	}

	.flowlist > li dl {
		padding-left: 4.5rem;
	}

	.flowlist > li dl::after {
		width: 30px;
	}

	.flowlist > li dl dt {
		font-size: 1.4rem;
	}
}
.schedule::before{
	content:"";
	position:absolute;
	width: 500px;
	height: 500px;
	background:url(/wp-content/uploads/feature02-blue.png);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -10;
	top: 45rem;
	left: 20rem;
	overflow: hidden;
}
.schedule::after{
	content:"";
	position:absolute;
	width: 500px;
	height: 500px;
	background:url(/wp-content/uploads/feature02-yellow.png);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -10;
	top: 110rem;
	left: 25%;
}

.schedule .w_fit::before{
	content:"";
	position:absolute;
	width: 200px;
	height: 200px;
	background:url(/wp-content/uploads/baloon.png);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -9;
	top: 0;
	left: 90%;
}
.schedule .w_fit::after{
	content:"";
	width: 200px;
	height: 200px;
	background:url(/wp-content/uploads/trees.png);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -9;
	bottom: -10rem;
	right: 105%;
	position: absolute;
}
@media print, screen and (max-width: 1024px) {
	.schedule::after{
		/* bottom: -30%; */
	}
	.schedule .w_fit::after{
		/* right: 115%; */
	}
	.schedule .w_fit::before{
		left:90%;
	}
}
@media print, screen and (max-width: 768px) {
	.schedule::before{
		left: 4rem;
		width: 350px;
		height: 350px;
		top: 50rem;
	}
	.schedule::after{
		top: 120rem;
		left: 5rem;
		width: 300px;
		height: 300px;
	}
	.schedule .w_fit::before{
		left: 18rem;
	}
	.schedule .w_fit::after{
		right: 20rem;
		bottom: -16rem;
		width: 150px;
		height: 150px;
	}
}
@media print, screen and (max-width: 430px){
	.schedule::before{
		left: 5rem;
		width: 260px;
		top: 50rem;
		height: 260px;
	}
	.schedule::after{
		width: 260px;
		height: 260px;
		top: 125rem;
		left: 5rem;
	}
	.schedule .w_fit::before{
		left: 15rem;
		width: 150px;
		height: 150px;
		top: 3rem;
	}
	.schedule .w_fit::after{
		left: 2rem;
		width: 120px;
		bottom: -18rem;
	}
}
@media print, screen and (max-width: 320px){
	.schedule::before{
		left: 1rem;
	}
	.schedule .w_fit::before{
		left: 8rem;
	}
	.schedule::after{
		width:200px;
		height: 200px;
		top: 135rem;
	}
}
.post ul#sitemap_list.sitemap_disp_level_0 > li a{
	font-weight:400;
}
/*いばり園*/