@charset "UTF-8";

/* m_img
---------------------------------------------------------*/
.m_img_erea {
	position: relative;
	padding-top: min(150px,12vw);
	margin-bottom: min(100px,8vw);
}
.m_img{
	position: relative;
	width: calc(100% - 30px);
	margin: 0 auto;
	background:url("../images/dh/m_img@2x.jpg")no-repeat center center;
	background-size: cover;
	height: 492px;
	overflow: hidden;
}
.contact .m_img{
	background-image:url("../images/common/m_img_bosyu@2x.jpg");}
.page_dr .m_img{
	background-image:url("../images/dr/m_img@2x.jpg");}
.page_nursery .m_img{
	background-image:url("../images/nursery/m_img@2x.jpg");}
.page_office .m_img{
	background-image:url("../images/office/m_img@2x.jpg");}

.m_img::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/grd_pink@2x.png")no-repeat top left;
	background-size: 100% auto;
	width:66%;
	height: 982px;
	top:0;
	left: -26%;
	transform: translate(-50% -50%); 
	aspect-ratio: 982 / 982;
}
.contact .m_img::before{
	background-image:url("../images/common/grd_yellow@2x.png");}
.page_dr .m_img::before{
	background-image:url("../images/common/grd_blue2@2x.png");}
.page_nursery .m_img::before{
	background-image:url("../images/common/grd_yellow2@2x.png");}
.page_office .m_img::before{
	background-image:url("../images/common/grd_green2@2x.png");}

.m_img .m_copy{
	position: absolute;
	bottom: 170px;
	left: 0;
	right: 0;
	max-width: 1300px;
	width: 90%;
	margin: 0 auto;
	display: flex;
    justify-content: start;
    align-items: center;	
	z-index: 2;
    font-size: min(100%,1.3vw);
}
.m_img .m_copy h2{
	font-size:400%;
	font-weight: bold;
	letter-spacing: 0.16em;
	line-height: 1em;
	color: #fff;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.3));
}
.m_img .m_copy .ft_lato{
	font-size:190%;
	letter-spacing: 0.15em;
	line-height: 1em;
	color: #ffc5dc;
	margin-left:.9em;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.3));
}
.contact .m_img .m_copy .ft_lato{color: #d6c82b;}
.page_dr .m_img .m_copy .ft_lato{color: #5be8e3;}
.page_nursery .m_img .m_copy .ft_lato{color: #fed169;}
.page_office .m_img .m_copy .ft_lato{color: #acf469;}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.m_img{
	height: 35vw;
}
.m_img .m_copy{
	bottom: 14vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.m_img_erea {
	padding-top:0;
	margin-bottom: 20vw;
}
.m_img{
	height: 40vw;
	margin-top: 4vw;
}
.m_img .m_copy{
	display: block;
	bottom: 6vw;
    font-size: 50%;
}
.m_img .m_copy h2{
	letter-spacing: 0.05em;
}
.m_img .m_copy .ft_lato{
	margin-left: 0;
	margin-top: .5em;
}
}






/* present
---------------------------------------------------------*/
#present{
	position: relative;
	z-index: 10;
	margin-bottom: min(85px,6.5vw);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#present{
	margin-bottom:10%;
}
}






/* menu
---------------------------------------------------------*/
#menu .bg{
	position: relative;
	z-index: 2;
	padding-bottom: min(120px,9vw);
}
#menu .bg::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/grd_yellow@2x.png")no-repeat top left;
	background-size: 100% auto;
	width: 54%;
	height: 812px;
	bottom: -20%;
	right: -10%;
	transform: translate(-50% -50%); 
	aspect-ratio: 812 / 812;
}
#menu .w1300{
	position: relative;
	z-index: 2;
}
#menu .bo_menu{
	display: flex;
    justify-content: center;
	flex-wrap: wrap;
}
#menu .bo_menu li{
	width:23%;
	background: #fff;
	margin-right: 2.6666%;
	margin-bottom: 2.666%;
	overflow: hidden;
/*filter: drop-shadow(0 0 5px rgba(0,0,0,0.2));*/
	box-shadow: 0 0 20px -10px rgba(0, 0, 0, 1); 
}
#menu .bo_menu li:hover{
    cursor: pointer;
}
#menu .bo_menu li:nth-child(4n),
#menu .bo_menu li:last-child{
	margin-right: 0;
}
#menu .bo_menu li .com_btn1{
	display: block;
}
#menu .bo_menu li .com_btn1 a{
	display: flex;
    justify-content: space-between;
	padding: 1.3em 1.3em 1.3em 1.6em;
    font-size: min(100%,1.12vw);
}
#menu .bo_menu li .com_btn1 a span{
    font-size: 135%;
	letter-spacing: 0.15em;
}
#menu .bo_menu li .com_btn1 a i{
	font-size: 95%;
}
/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1450px) {
#menu .bo_menu li .com_btn1 a span{
	letter-spacing: normal;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#menu .bo_menu li .com_btn1 a span{
	letter-spacing: normal;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#menu .bg{
	padding-bottom: 12%;
}

#menu .bg::before{
	bottom: -100%;
}
#menu .bo_menu{
	margin-bottom:6%;
}
#menu .bo_menu li{
	width: 48%;
	margin-right: auto!important;
	margin-left: auto!important;
	margin-bottom: 2%!important;
}
#menu .bo_menu li .img{
	display: none;
}
#menu .bo_menu li .com_btn1{
	display: block;
}
#menu .bo_menu li .com_btn1 a{
	padding: 1.3em .3em;
    font-size: 90%;
}
#menu .bo_menu li .com_btn1 a span{
    font-size: 100%;
	letter-spacing: normal;
}
#menu .bo_menu li .com_btn1 a i{
	font-size: 50%;
	right: 0;
}
}





/* message
---------------------------------------------------------*/
.bo_index1{
	text-align: center;
    font-size: min(100%,1.5vw);
	margin-bottom: min(80px,6vw)
}
.bo_index1 .ft_min{
	font-size:350%;
	line-height: 1.6em;
}
.bo_index1 .ft_lato{
	font-size: 170%;
	letter-spacing: 0.2em;
	line-height: 1em;
	color: #ffc5dc;
	margin-top: .5em;
}

#message .bg{
	position: relative;
	background:url("../images/dh/mes1@2x.jpg")no-repeat right top 10%;
	background-size: 85% auto;
	padding-bottom: min(120px,10vw);
}
.page_dr #message .bg{background-image:url("../images/dr/mes1@2x.jpg");}
.page_nursery #message .bg{background-image:url("../images/nursery/mes1@2x.jpg");}
.page_office #message .bg{background-image:url("../images/office/mes1@2x.jpg");}

#message .bg::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/grd_pink2@2x.png")no-repeat bottom left;
	background-size: 100% auto;
	width: 41%;
	height: 611px;
	bottom: 0;
	left: -11%;
	transform: translate(-50% -50%); 
	aspect-ratio: 611 / 611;
}
.page_dr #message .bg::before{background-image: url("../images/common/grd_blue@2x.png");}
.page_nursery #message .bg::before{background-image: url("../images/common/grd_orange@2x.png");}
.page_office #message .bg::before{background-image: url("../images/common/grd_green@2x.png");}

#message .w1230 > div{
	position: relative;
	z-index: 2;
}

#message .box1{
	width: 63%;
	max-width: 650px;
	margin-bottom: min(85px,6.5vw);
}
.page_dr #message .box1{
	margin-bottom:180px;
}
#message .me_index1{
	font-size:min(270%,3.3vw);
	letter-spacing: 0.1em;
	line-height: 1.7em;
	margin-bottom: .5em;
}
#message .me_index1 span{color: #ff9bb3;}
.page_dr #message .ft_lato,
.page_dr #message span,
.page_dr .bo_index1 .ft_lato{
	color: #77d1ea!important;
}
.page_nursery #message .ft_lato,
.page_nursery #message span,
.page_nursery .bo_index1 .ft_lato{
	color: #febe69!important;
}
.page_office #message .ft_lato,
.page_office #message span,
.page_office .bo_index1 .ft_lato{
	color: #99ca51!important;
}

#message .box2{
	flex-flow: row-reverse;
}
#message .box2 .txt_r{
	width: 61%;
	max-width: 706px;
}
#message .box2 .img_l{
	width: 35%;
	text-align: center;
}
#message .profile .img{
	margin-bottom: 40px;
}
#message .profile .name p:first-child{
	letter-spacing: 0.25em;
	line-height: 1.5em;
	margin-bottom: 1em;
}
#message .profile .name dl{
	display: flex;
    justify-content: center;
    align-items: center;
	font-size:min(100%,1.5vw);
}
#message .profile .name dl dt{
	font-size:120%;
	letter-spacing: 0.15em;
	line-height: 1em;
	margin-right: 1em;
}
#message .profile .name dl dd{
	font-size:280%;
	letter-spacing: 0.15em;
	line-height: 1em;
}
#message .profile .name p.ft_lato{
	color: #ff9bb3;
	margin-top: 1.5em;
	letter-spacing: 0.2em;
	line-height: 1em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#message .bg{
	background-position: right -70% top 10%;
}
#message .box1{
	width: 75%;
}
.page_dr #message .box1{
	margin-bottom: 6vw;
}
#message .bg::before{
	bottom: 15%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.bo_index1{
    font-size: 100%;
	margin-bottom: 8%;
}
.bo_index1 .ft_min{
	font-size: 205%;
	letter-spacing:normal;
	line-height: 1.3em;
}
.bo_index1 .ft_lato{
	font-size: 130%;
	margin-top: .4em;
}

#message .bg{
	background-position: right -80% top 0;
	background-size: 85% auto;
	padding-bottom: 15%;
}
#message .box1{
	width: 100%;
	max-width: 100%;
	margin-bottom:8%!important;
}
#message .me_index1{
	font-size: 145%;
	letter-spacing: normal;
}

#message .box2{
	display: block;
}
#message .box2 .txt_r{
	width: 100%;
	max-width:100%;
}
#message .box2 .img_l{
	width: 100%;
	margin-top: 8%;
}
#message .profile .img{
	width: 70%;
	margin: 0 auto 4%;
}
#message .profile .name p:first-child{
	letter-spacing: 0.1em;
	margin-bottom: .8em;
}
#message .profile .name dl{
	font-size: 100%;
}
#message .profile .name dl dt{
	font-size:110%;
}
#message .profile .name dl dd{
	font-size:200%;
}
#message .profile .name p.ft_lato{
	font-size:90%;
	margin-top: 1em;
}
	
#message .bg::before{
	bottom: 5%;
}
}





/* policy
---------------------------------------------------------*/
#policy .bg{
	width: calc(100% - 30px);
	margin: 0 auto;
	background:url("../images/dh/po1@2x.jpg")no-repeat center center;
	background-size: cover;
	overflow: hidden;
	padding: min(110px,8vw) 0;
}

#policy .bo_index1 h2{
	color: #fff;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.2));
}

#policy .flex_box li{
	width: 32%;
	max-width: 377px;
}
#policy .flex_box li .img{
	width: 100%;
	margin: 0 auto 3em;
	aspect-ratio: 377 / 184;
	display: flex;
    justify-content: center;
    align-items: center;	
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#policy .bg{
	width: calc(100% - 15px);
	padding: 12% 0;
}
#policy .flex_box{
	display: block;
}
#policy .flex_box li{
	width: 100%;
	max-width: 100%;
	border-bottom: 1px solid #fff;
	padding-bottom: 8%;
	margin-bottom: 8%;
}
#policy .flex_box li:last-child{
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
#policy .flex_box li .img{
	width: 65%;
	margin: 0 auto 4%;
	display: block;
}
}





/* support
---------------------------------------------------------*/
#support .bg{
	background: #ffffea;
	padding: min(75px,6vw) 0 min(110px,9vw);
}
#support .sup_index{
	width: 65%;
	margin: 0 auto min(40px,3.5vw);
}


#support .sup_list{
	display: flex;
    justify-content: start;
	flex-wrap: wrap;
}
#support .sup_list li{
	position: relative;
	width:23.3%;
	background: #ff7888;
	margin-right: 2.2666%;
	margin-top: 2.2666%;
	border-radius: 20px;
	height: 14em;
	font-size: min(130%,1.5vw);
	letter-spacing: 0.1em;
	line-height: 1.5em;
	border:1px solid #fff;
	box-sizing: border-box;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.1));
}
.page_dr #support .sup_list li{background: #47cfe2;}
.page_nursery #support .sup_list li{background: #ffa57e;}
.page_office #support .sup_list li{background: #85ca51;}

#support .sup_list li:nth-child(-n+4){
	margin-top: 0;
}
#support .sup_list li:nth-child(4n){
	margin-right: 0;
}
#support .sup_list li:nth-child(2),
#support .sup_list li:nth-child(5),
#support .sup_list li:nth-child(8),
#support .sup_list li:nth-child(11),
#support .sup_list li:nth-child(14),
#support .sup_list li:nth-child(17),
#support .sup_list li:nth-child(20){
	background: #ff9998;/*ピンク*/
}
#support .sup_list li:nth-child(3),
#support .sup_list li:nth-child(6),
#support .sup_list li:nth-child(9),
#support .sup_list li:nth-child(12),
#support .sup_list li:nth-child(15),
#support .sup_list li:nth-child(18){
	background: #ffa570;/*オレンジ*/
}

.page_dr #support .sup_list li:nth-child(2),
.page_dr #support .sup_list li:nth-child(5),
.page_dr #support .sup_list li:nth-child(8),
.page_dr #support .sup_list li:nth-child(11),
.page_dr #support .sup_list li:nth-child(14),
.page_dr #support .sup_list li:nth-child(17),
.page_dr #support .sup_list li:nth-child(20){
	background: #4894e7;
}
.page_dr #support .sup_list li:nth-child(3),
.page_dr #support .sup_list li:nth-child(6),
.page_dr #support .sup_list li:nth-child(9),
.page_dr #support .sup_list li:nth-child(12),
.page_dr #support .sup_list li:nth-child(15),
.page_dr #support .sup_list li:nth-child(18){
	background: #4adec7;
}

.page_nursery #support .sup_list li:nth-child(2),
.page_nursery #support .sup_list li:nth-child(5),
.page_nursery #support .sup_list li:nth-child(8),
.page_nursery #support .sup_list li:nth-child(11),
.page_nursery #support .sup_list li:nth-child(14),
.page_nursery #support .sup_list li:nth-child(17),
.page_nursery #support .sup_list li:nth-child(20){
	background: #f2c23f;
}
.page_nursery #support .sup_list li:nth-child(3),
.page_nursery #support .sup_list li:nth-child(6),
.page_nursery #support .sup_list li:nth-child(9),
.page_nursery #support .sup_list li:nth-child(12),
.page_nursery #support .sup_list li:nth-child(15),
.page_nursery #support .sup_list li:nth-child(18){
	background: #f2973f;
}

.page_office #support .sup_list li:nth-child(2),
.page_office #support .sup_list li:nth-child(5),
.page_office #support .sup_list li:nth-child(8),
.page_office #support .sup_list li:nth-child(11),
.page_office #support .sup_list li:nth-child(14),
.page_office #support .sup_list li:nth-child(17),
.page_office #support .sup_list li:nth-child(20){
	background: #bfdf2d;
}
.page_office #support .sup_list li:nth-child(3),
.page_office #support .sup_list li:nth-child(6),
.page_office #support .sup_list li:nth-child(9),
.page_office #support .sup_list li:nth-child(12),
.page_office #support .sup_list li:nth-child(15),
.page_office #support .sup_list li:nth-child(18){
	background: #93b23f;
}

#support .sup_list li .inbox{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}
#support .sup_list li p{
	color: #fff;
	font-weight: bold;
	margin-bottom: 1rem;
}
#support .sup_list li p strong{
	font-weight: bold!important;
}
#support .sup_list li p:last-child{
	margin-bottom: 0;
}

#support .sup_list li .txt2{
	font-size:250%;
	letter-spacing: 0.1em;
	line-height: 1em;
}
#support .sup_list li .txt2 .short{
	font-size: 80%;
	letter-spacing: 0.1em;
	line-height: 1em;
}
#support .sup_list li .txt2 .short2{
	font-size: 70%;
	letter-spacing: 0.1em;
	line-height: 1em;
}
#support .sup_list li .txt2 .col{color: #ffffa8;}

#support .sup_list li .abs{
	position: absolute;
	width: 44%;
	bottom: 0;
}
#support .sup_list li .abs.type1{left: -6%;}
#support .sup_list li .abs.type2{right: -6%;}
#support .sup_list li .abs.type3{right: -6%;}
#support .sup_list li .abs.type4{right: -6%;}
#support .sup_list li .abs.type5{left: -12%;}
#support .sup_list li .abs.type6{left: -4%;}

#support .txt{
	text-align: center;
	margin-top: min(90px,6vw);
}
#support .txt dt{
	font-size:min(170%,2.6vw);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.7em;
	margin-bottom: .5em;
}
#support .txt span{
	display: inline;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#support .sup_list li{
	width:24%;
	margin-right: 1.333%;
	margin-top:1.333%;
	font-size:1.85vw;
	height: 12em;
}
#support .sup_list li p{
	letter-spacing: normal!important;
	margin-bottom: .6rem;
}
#support .sup_list li .txt2{
	font-size:200%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#support .bg{
	padding: 12% 0 15%;
}
#support .sup_index{
	width:100%;
	margin: 0 auto 5%;
}
#support .sup_list li{
	width: 49%;
	margin-right: 2%!important;
	margin-top: 2%!important;
	height: 11em;
	font-size: 90%;
}
#support .sup_list li:nth-child(-n+2){
	margin-top: 0!important;
}
#support .sup_list li:nth-child(2n){
	margin-right: 0!important;
}
#support .sup_list li p{
	letter-spacing: normal;
	margin-bottom: .5rem;
}
#support .sup_list li .txt2{
	font-size:200%;
	letter-spacing: normal;
	line-height: 1em;
}
#support .txt{
	text-align: left;
	margin-top: 8%;
}
#support .txt dt{
	text-align: center;
	font-size: 120%;
	letter-spacing: 0.05em;
	line-height: 1.6em;
	margin-bottom: .3em;
}
}





/* career
---------------------------------------------------------*/
#career .bg{
	background: url("../images/dh/car1@2x.jpg") no-repeat top center #fff1f1;
	background-size: 100% auto;
	padding: min(140px,12vw) 0 min(120px,10vw);
}
.page_dr #career .bg{
	background-image: url("../images/dr/car1@2x.jpg");
	background-color: #e4f5f5;
}
.page_nursery #career .bg{
	background-image: url("../images/nursery/car1@2x.jpg");
	background-color: #fffae0;
}

.bo_index2{
	text-align: center;
	margin-bottom: min(70px,5vw);
}
.bo_index2 .ft_lato{
	color:rgba(255,255,255,0.60);
	font-size:min(800%,10vw);
	letter-spacing: 0.13em;
	line-height: 1em;
}
.bo_index2 .ft_min{
	font-size: min(350%,4.5vw);
	letter-spacing: 0.05em;
	line-height: 1.4em;
	margin-top: -.7em;
}

#career .tab-menu {
	display: flex;
    justify-content: center;
    align-items: flex-end;
	text-align: center;
	color: #fff;
	max-width: 753px;
	width: 90%;
	margin: 0 auto;
	font-size:140%;
	letter-spacing: 0.15em;
	line-height: 1em;
}
#career .tab-menu li {
	width: 48.5%;
	margin-right: 3%;
	box-sizing: border-box;
	padding: 1.2em 5%;
	background: #dad6cb;
	border-radius: 15px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	cursor: pointer;
	position: relative;
}
#career .tab-menu li:last-child{
	margin-right: 0;
}
#career .tab-menu li h3 {
	font-weight:bold;
}
#career .tab-menu li.active {
	background: #ff9998;
}
.page_dr #career .tab-menu li.active,
.page_dr #career .tab-box .tab_inbox dt div{
	background: #77d1ea;
}
.page_nursery #career .tab-menu li.active,
.page_nursery #career .tab-box .tab_inbox dt div{
	background: #febe69;
}

#career .tab-box > div {
	display: none;	/* 初期表示 */
	background: #fff;
	padding: min(60px,4vw) 4%;
	text-align: center;
	border:1px solid #ff9998;
	border-radius: 20px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.1));
}
.page_dr #career .tab-box > div{border-color: #77d1ea;}

#career .tab-box > div.active {
  display: block;
}
#career .tab-box .tab_inbox {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	text-align: left;
}

#career .tab-box .tab_inbox dl{
	display: flex;
    justify-content: space-between;
	padding-bottom: 5em;
}
#career .tab-box .tab_inbox dl:last-child{
	padding-bottom: 0;
}
#career .tab-box .tab_inbox dt{
	position: relative;
	text-align: center;
	font-size:130%;
	letter-spacing: 0.1em;
	line-height: 1em;
	width: 10em;
}
#career .tab-box .tab_inbox dt::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/car_abs1@2x.png")no-repeat bottom center;
	background-size: 100% auto;
	width: 1em;
	height: 1em;
	bottom: -2.2em;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#career .tab-box .tab_inbox dl:last-child dt::before{
	display: none;
}
#career .tab-box .tab_inbox dt div{
	font-weight: bold;
	background: #ff9998;
	color: #fff;
	padding: 1em 0;
	border-radius: 10px;
}
#career .tab-box .tab_inbox dd{
	width: calc(100% - 15rem);
	min-height: 2em;
	display: flex;
    align-items: center;	
}

#career .ca_index1{
	margin: min(80px,6vw) 0 min(50px,3vw);
	text-align: center;
}
#career .ca_index1 .ft_min{
	font-size: min(230%,3.5vw);
	line-height: 1.6em;
	margin-bottom: .4em;
}
#career .col4{
	display: flex;
    justify-content: space-between;
}
#career .col4.type3{
	max-width: 1200px;
	margin: 0 auto;
}
#career .col4 li{
	width: 23%;
	max-width: 290px;
}
#career .col4.type3 li{
	width: 31%;
	max-width: 340px;
}
#career .col4 li .img{
	width: 65%;
	margin: 0 auto;
}
#career .col4 li h4{
	position: relative;
	z-index: 2;
	text-align: center;
	font-size: min(160%,2vw);
	font-weight: bold;
	line-height: 1.5em;
	background: #9689cd;
	padding: .3em 0 .25em;
	border-radius: 50px;
	color: #fff;
	margin-top: -0.5em;
	margin-bottom: .8em;
}
.page_dr #career .col4 li h4{
	margin-top: -0.7em;
}
#career .col4 li:nth-child(2) h4{background: #ffba4e;}
#career .col4 li:nth-child(3) h4{background: #8cd3d6;}
#career .col4 li:nth-child(4) h4{background: #ff9998;}

.page_dr #career .col4 li:nth-child(1) h4{background: #77d1ea;}
.page_dr #career .col4 li:nth-child(2) h4{background: #9689cd;}
.page_dr #career .col4 li:nth-child(3) h4{background: #ffba4e;}
.page_dr #career .col4 li:nth-child(4) h4{background: #68d098;}

.page_nursery #career .col4 li:nth-child(1) h4{background: #9689cd;}
.page_nursery #career .col4 li:nth-child(2) h4{background: #ffba4e;}
.page_nursery #career .col4 li:nth-child(3) h4{background: #68d098;}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#career .tab-menu li {
	padding: 1em 5% .9em;
}
#career .tab-box .tab_inbox dl{
	padding-bottom: 3em;
}
#career .tab-box .tab_inbox dt::before{
	bottom: -1.5em;
}
#career .tab-box .tab_inbox dd{
	width: calc(100% - 13rem);	
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#career .bg{
	background-size: 150% auto;
	padding: 20% 0 15%;
}
.bo_index2{
	margin-bottom: 8%;
}
.bo_index2 .ft_lato{
	font-size: 270%;
	letter-spacing: 0.1em;
}
.bo_index2 .ft_min{
	font-size: 150%;
	letter-spacing:normal;
}

#career .tab-menu {
	width: 95%;
	font-size:100%;
	letter-spacing: 0.1em;
}
#career .tab-menu li {
	padding: 1em 5%;
}
#career .tab-box > div {
	padding:5% 4%;
	border-radius: 10px;
}
#career .tab-box .tab_inbox dl{
	position: relative;
	display: block;
	padding-bottom: 1.5em;
	margin-bottom: 1.2em;
}
#career .tab-box .tab_inbox dl::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/car_abs1@2x.png")no-repeat bottom center;
	background-size: 100% auto;
	width: 1em;
	height: 1em;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#career .tab-box .tab_inbox dl:last-child::before{
	display: none;
}
#career .tab-box .tab_inbox dt{
	font-size:110%;
	margin-bottom: .5em;
	width: 100%;
}
#career .tab-box .tab_inbox dt::before{
	display: none;
}
#career .tab-box .tab_inbox dt div{
	padding:.7em 0;
}
#career .tab-box .tab_inbox dd{
	width:100%;
	min-height: auto;
	display: block;	
}

#career .ca_index1{
	margin: 10% 0 4%;
	text-align: left;
}
#career .ca_index1 .ft_min{
	font-size: 140%;
	margin-bottom: .4em;
	text-align: center;
}
#career .col4{
	display: block;
}
#career .col4 li{
	width: 100%;
	max-width: 100%;
	margin-bottom: 8%;
}
#career .col4 li:last-child{
	margin-bottom: 0;
}
#career .col4 li .img{
	width: 40%;
	margin: 0 auto;
}
#career .col4 li h4{
	font-size: 110%;
	margin-bottom: .5em;
}
	
#career .col4.type3 li{
	width: 100%;
	max-width:100%;
}
}





/* features
---------------------------------------------------------*/
#features .bg{
	position: relative;
	padding:85px 0 150px;
	background:url("../images/dh/fir_abs2_r@2x.png")no-repeat bottom #ffd2b5;
	background-size: 100% auto;
	overflow: hidden;
}
#features .bg::before{
	position: absolute;
	display: block;
	content: "";
	background:url("../images/dh/fir_abs2_l@2x.png")no-repeat bottom left;
	background-size: 100% auto;
	width: 100%;
	height: 400px;
	bottom: 0;
	left: 0;
	z-index: 3;
}
.page_dr #features .bg{
	background-image:url("../images/dr/fir_abs2_r@2x.png");
	background-color: #51b0e1;
}
.page_office #features .bg{
	background-image:url("../images/office/fir_abs2_r@2x.png");
	background-color: #b2d92d;
}
.page_dr #features .bg::before{
	background-image:url("../images/dr/fir_abs2_l@2x.png");}
.page_office #features .bg::before{
	background-image:url("../images/office/fir_abs2_l@2x.png");}

/*bo_index2*/
.page_dr #features .bo_index2 .ft_lato{	color:rgba(255,255,255,0.15);}
.page_dr #features .bo_index2 .ft_min{	color: #fff;}
.page_office #features .bo_index2 .ft_lato{	color:rgba(255,255,255,0.15);}
.page_office #features .bo_index2 .ft_min{	color: #fff;}

.features{
	position: relative;
	height: 100vh;
}
.features_inbox{
	position: absolute;
	display: block;
	top: 20%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0 auto;
}
.features_inbox2{
	position: relative;
}

/*med_title*/
.features .med_title {
	position: absolute;
	display: block;
	left: 0;
	top: 0;
	transition: all 0.4s;
	width: 28%;
	z-index: 12;
}
.features .med_title::before{
	position: absolute;
	display: block;
	content: "";
	background: #ffd2b5;
	background-size: 100% auto;
	width: 300%;
	height: 300%;
	top:0;
	right: 0;
}
.page_dr .features .med_title::before{	background: #51b0e1;}
.page_office .features .med_title::before{	background: #b2d92d;}

.features .med_title li{
	position: relative;
	width: 90%;
	max-width: 290px;
	background: #fc8d70;
	border-radius: 50px;
	font-size:min(150%,2.2vw);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	padding: .45em 0;
	text-align: center;
	color: #fff;
	margin-bottom: 2.7em;
}
.page_dr .features .med_title li{background: #85c3e4;}
.page_office .features .med_title li{background: #6dc751;}

.features .med_title li:last-child{
	margin-bottom:0;
}
.features .med_title li::before{
	position: absolute;
	display: block;
	content: "";
	border-left:dotted 4px #fc8d70;
	width: 1px;
	height: 1.3em;
	bottom: -2em;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.page_dr .features .med_title li::before{border-color:#85c3e4;}
.page_office .features .med_title li::before{border-color:#6dc751;}

.features .med_title li:last-child::before{
	display: none;
}
.features .med_title li a{
	display: block;
	pointer-events: none;
}/*
.features .med_title li,
.features .med_title li:hover{
	transition: 0.4s;
}
.features .med_title li:hover{
	opacity: .5;
}*/

/*features_content*/
.features .features_content {
	position: relative;
	z-index: 11;
	margin-left: 28%;
	/*height: 45em;*/
	margin-right: 0;
}/*
.page_dr .features .features_content {
	height:55em;
}
.page_office .features .features_content {
	height: 48em;
}*/

.features .scl_area {
	position: absolute;
	left: 0;
	top: 0;
	width: 3570px;
	height: 100%;
	padding-top: 1.5rem;
}
.page_dr .features .scl_area {
	width: 2850px;
}
.page_office .features .scl_area {
	width: 2130px;
}

.features .scl_area .box_list {
	width: 100%;
	height: 100%;
	padding-left: 0;
	padding-right: 2800px;
	display: flex;
    justify-content: space-between;
}
.page_dr .features .scl_area .box_list {
	padding-right: 2000px;
}
.page_office .features .scl_area .box_list {
	padding-right: 1350px;
}
.features .box_list > li {
	width: 690px;
	margin-right: 30px;
	height: 100%;
}
.features .box_list > li:last-child{
	margin-right: 0;
}
.features .box_list > li .inbox{
	position: relative;
	display: block;
	padding: 90px 9.5% 60px;
	box-sizing: border-box;
	background: #fff;
}
.features .box_list > li .number{
	position: absolute;
	display: inline-block;
	background: #fc8d70;
	color: #fff;
	font-size: 180%;
	list-style-type: 0.1em;
	line-height: 1em;
	font-weight: bold;
	padding: 1.1em .7em .9em;
	box-sizing: border-box;
	top:-1.5rem;
	left: 9.5%;
}
.page_dr .features .box_list > li .number{background: #51d8e1;}
.page_office .features .box_list > li .number{background: #6dc751;}

.features .box_list > li .number::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/fir_abs1@2x.png")no-repeat right top;
	background-size: auto 100%;
	width: 2em;
	height: 1.5rem;
	top:0;
	right: 100%;
}
.page_dr .features .box_list > li .number::before{
	background-image: url("../images/dr/fir_abs1@2x.png");}
.page_office .features .box_list > li .number::before{
	background-image: url("../images/office/fir_abs1@2x.png");}

.features .box_list > li .number span{
	font-size:150%;
}
.features .box_list > li .img{
	margin-bottom: min(40px,2.5vw);
}
.features .box_list > li h3{
	font-size:min(155%,2.5vw);
	letter-spacing: 0.1em;
	line-height: 1.6em;
	font-weight: bold;
	margin-bottom: .5em;
}

.features .dr_list li{
	margin-top: 30px;
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
.features .dr_list li div{
	width: 25%;
}
.features .dr_list li dl{
	width: 69%;
}
.features .dr_list li dl dt{
	font-size:120%;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.6em;
	margin-bottom: .3em;
}
.features .dr_list li dl dd{
	line-height: 1.6em;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
.page_dh .features .scl_area .box_list {
	padding-right: 81%;
}
.page_dr .features .scl_area .box_list {
	padding-right:75%;
}
.page_office .features .scl_area .box_list {
	padding-right: 69%;
}
}

/* 高さ①歯科医師
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 1100px) {
.page_dr .features_inbox{
	top: 10vh;
}
.page_dr .features .bo_index2{
	margin-bottom: 5.5vh;
	font-size:min(100%,1.5vh)!important;
}
.page_dr .features .inbox p{
	line-height: 3.5vh;
}
}

/* 高さ①
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 1000px) {
.features_inbox{
	top: 10vh;
}
.features .bo_index2{
	margin-bottom: 5.5vh;
	font-size:min(100%,1.5vh)!important;
}
.features .inbox p{
	line-height: 3.5vh;
}
}

/* 高さ②歯科医師
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 1000px) {
.page_dr .features .inbox .img{
	height: 30vh!important;
	border-radius: 20px!important;
	overflow: hidden;
	margin-bottom: 1.5vh!important;
}
.page_dr .features .med_title li{
	font-size: 2.5vh;
}
}

/* 高さ②
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 800px) {
.features .inbox .img{
	height: 30vh!important;
	border-radius: 20px!important;
	overflow: hidden;
	margin-bottom: 1.5vh!important;
}
.features .med_title li{
	font-size: 3vh;
}
.features .box_list > li h3{
	line-height: 1em;
}
}

/* 高さ③歯科医師
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 850px) {
.page_dr .features .inbox .img{
	height: 20vh!important;
}
.page_dr features .inbox p{
	line-height: 2em;
}
	
.page_dr .features .med_title li{
	font-size: 3vh;
}
	
.features .dr_list li div{
	width: 10vh;
}
.features .dr_list li dl{
	width: calc(100% - 15vh);
}
}

/* 高さ③事務
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 700px) {
.page_office .features .inbox .img{
	height: 20vh!important;
}
.page_office .features .med_title li{
	font-size: 3vh;
}
}

/* 高さ③
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 600px) {
.features .med_title li{
	font-size: 3vh;
}
}

/* 高さ④歯科医師
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 600px) {
.features .dr_list li{
	font-size:2.5vh;
}
}

/* 高さ⑤
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-height: 500px) {
.features .med_title li{
	font-size: 3vh;
}
.features .inbox{
	font-size:3vh;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#features .bg{
	padding: 8% 0 10%;
}
	
.features{
	height: auto;
}
.features_inbox{
	position: static;
	transform: translateY(0);
}
	
.features .med_title {
	width: 25%;
	margin-left: -6%;
}
.features .med_title li{
	width: 90%;
	letter-spacing: normal;
	font-size: 120%;
	padding: .45em 0;
	margin-left: 0;
	margin-right: auto;
}

/*features_content*/
.features .features_content {
	margin-left: 15%;
	height: auto!important;
}
.features .scl_area {
	position: static;
	width: 95%!important;
	height:auto;
	padding-top: 1.5rem;
}
.features .scl_area .box_list {
	width: 100%;
	height: 100%;
	padding-left: 0;
	padding-right: 0!important;
	display: block;
}
.features .box_list > li {
	width: 100%;
	margin-right: 0;
	margin-bottom: 8%;
}
.features .box_list > li:last-child{
	margin-right: 0;
	margin-bottom: 0;
}
.features .box_list > li .inbox{
	padding: 3em 4% 6%;
}
.features .box_list > li .number{
	font-size: 130%;
	padding: 1.1em .7em .9em;
	top:-1.5rem;
	left: 4%;
}
.features .box_list > li .number::before{
	width: 2em;
	height: 1.5rem;
}
.features .box_list > li .img{
	margin-bottom: 4%!important;
	height: auto;
	display: block;
}
.features .dr_list li{
	margin-top: 30px;
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
.features .dr_list li div{
	width:18%;
}
.features .dr_list li dl{
	width:78%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#features .bg{
	padding: 10% 0 12%;
}
	
.features{
	height: auto;
}
.features_inbox{
	position: static;
	transform: translateY(0);
}
	
.features_content,
.features{
	width: 100%;
	padding: 0;
}
.features .med_title {
	position: static;
	width: 100%;
	margin-bottom: 8%;
}
.features .med_title::before{
	display: none;
}
.features .med_title li{
	width: 100%;
	max-width: 100%;
	font-size: 100%;
	padding: .4em 0;
	margin-bottom: 2em;
}
.features .med_title li::before{
	height: 1em;
	bottom: -1.5em;
}

/*features_content*/
.features .features_content {
	margin-left: 0;
	height: auto!important;
}
.features .scl_area {
	position: static;
	width: 100%!important;
	height: auto;
}
.features .scl_area .box_list {
	width: 100%;
	height: auto;
	padding-left: 0;
	padding-right:0!important;
	display: block;
}
.features .box_list > li {
	width: 100%;
	margin-right: 0;
	margin-bottom: 12%;
}
.features .box_list > li:last-child{
	margin-bottom: 0;
}
.features .box_list > li .inbox{
	padding: 12% 6% 7%;
}
.features .box_list > li .number{
	font-size: 100%;
	padding: 1em .7em .8em;
	left:5%;
}
.features .box_list > li .number span{
	font-size:150%;
}
.features .box_list > li .img{
	margin-bottom: 4%;
}
.features .box_list > li h3{
	font-size: 110%;
	letter-spacing: 0.05em;
	margin-bottom: .3em;
}
	
.features .dr_list li{
	margin-top: 8%;	
}
.features .dr_list li dl dt{
	font-size:105%;
	letter-spacing: 0.1em;
	margin-bottom: .1em;
}
.features .dr_list li dl dd{
	line-height: 1.6em;
}
}






/* voice
---------------------------------------------------------*/
#voice .bg{
	background: #efefe0;
	padding-top: min(100px,8vw);
}
#voice .vo_index{
	margin: 0 auto min(50px,4vw);
	max-width: 1200px;
    font-size: min(100%,1.2vw);
}
#voice .vo_index .ft_lato{
	font-size:810%;
	letter-spacing: 0.1em;
	line-height: 1em;
	color: #fff;
	opacity: .6;
	margin-bottom: -.9em;
}
#voice .vo_index_inbox {
	display: flex;
    justify-content: center;
    align-items: center;	
	font-size: 330%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	position: relative;
	z-index: 2;
}
#voice .vo_index_inbox h2{
	position: relative;
	z-index: 3;
}
#voice .vo_index_inbox .img1{
	width:4.8em;
	margin: 0 -.7em 0 -.3em;
}
#voice .vo_index_inbox .img2{
	width:4em;
	position: relative;
	z-index: 2;
}

#voice .vo_list > section{
	position: relative;
	width: 102%;
	margin-bottom: min(115px,8.5vw);
	z-index: 2;
}
#voice .vo_list > section:nth-child(odd){
	margin-left: -4.5%;
	margin-right: auto;
}
#voice .vo_list > section:nth-child(even){
	margin-right: -4.5%;
	margin-left: auto;
}
#voice .vo_list > section:last-child{
	margin-bottom: 0;
}
#voice .vo_list > section::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/vo_shadow@2x.png")no-repeat top left;
	background-size: 100% auto;
	width: 100%;
	height: 300px;
	left: 0;
	top:100%;
}
#voice .vo_list_inbox{
	position: relative;
	background: #fff;
	padding: min(90px,7vw) 5% min(90px,7vw) 7%;
	box-sizing: border-box;
}
#voice .vo_list_inbox::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/vo_abs3@2x.png")no-repeat top right;
	background-size: 100% auto;
	width: 30%;
	height: 200px;
	top:0;
	right: 3%;
}
#voice .vo_list_inbox::after{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/vo_abs2@2x.png")no-repeat top left;
	background-size: 100% auto;
	width: 63px;
	height: 125px;
	top:-30px;
	left: 7%;
	aspect-ratio: 63 / 125;
}
.page_dr #voice .vo_list_inbox::after{
	background-image: url("../images/dr/vo_abs2@2x.png");}
.page_nursery #voice .vo_list_inbox::after{
	background-image: url("../images/nursery/vo_abs2@2x.png");}
.page_office #voice .vo_list_inbox::after{
	background-image: url("../images/office/vo_abs2@2x.png");}

#voice .vo_list .img_l{
	width: 31%;
}
#voice .vo_list .txt_r{
	width: 63%;
	max-width: 755px;
}
#voice .vo_list .txt_r h3{
	font-size:140%;
	letter-spacing: 0.15em;
	line-height: 1.5em;
	margin-bottom: .2em;
}
#voice .vo_list .txt_r .name{
	display: flex;
	align-items: flex-end;	
	margin-bottom: 2em;
}
#voice .vo_list .txt_r .name dt{
	font-size:min(270%,3.3vw);
	letter-spacing: 0.15em;
	line-height: 1.5em;
}
#voice .vo_list .txt_r .name dd{
	margin-left: .2em;
}
#voice .vo_list .txt_r .txt dt{
	font-size:min(175%,2.5vw);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: .4em;
}
#voice .vo_list .txt_r .txt dt span{color: #fc8d70;}
.page_dr #voice .vo_list .txt_r .txt dt span{color: #77d1ea;}
.page_nursery #voice .vo_list .txt_r .txt dt span{color: #ffba4e;}
.page_office #voice .vo_list .txt_r .txt dt span{color: #85ca51;}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#voice .vo_list_inbox::after{
	width: 45px;
	top:-21px;
}
#voice .vo_list > section{
	margin-bottom: 6vw;
}
#voice .vo_list .txt_r .name dt{
	font-size: 3.5vw;
	letter-spacing: 0.05em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#voice .bg{
	padding-top:8%;
}
#voice .vo_index{
	margin: 0 auto 5%;
    font-size: 40%
}
#voice .vo_index .ft_lato{
	font-size:810%;
	margin-bottom: -.3em;
}
#voice .vo_index_inbox {
	font-size: 340%;
}
#voice .vo_index_inbox .img2{
	width:4.5em;
}

#voice .vo_list > section{
	width: 106%;
	margin-bottom: 8%;
}
#voice .vo_list > section:nth-child(odd){
	margin-left: -6%;
}
#voice .vo_list > section:nth-child(even){
	margin-right: -6%;
}
#voice .vo_list_inbox{
	padding: 8% 5% 8% 5%;
}
#voice .vo_list_inbox::before{
	width: 30%;
}
#voice .vo_list_inbox::after{
	width: 45px;
	top:-23px;
}
#voice .vo_list .flex_box{
	display: block;
}
#voice .vo_list .img_l{
	width: 60%;
	margin: 0 auto 4%;
}
#voice .vo_list .txt_r{
	width: 100%;
	max-width:100%;
}
#voice .vo_list .txt_r h3{
	font-size:110%;
	letter-spacing: 0.1em;
	text-align: center;
}
#voice .vo_list .txt_r .name{
	display: block;
	margin-bottom: 6%;
	text-align: center;
}
#voice .vo_list .txt_r .name dt{
	font-size: 180%;
}
#voice .vo_list .txt_r .name dd{
	margin-left: 0;
	font-size:95%;
}
#voice .vo_list .txt_r .txt dt{
	font-size: 120%;
	letter-spacing:normal;
}
}






/* insta
---------------------------------------------------------*/
#insta .bg{
	position: relative;
	background: #efefe0;
	padding: min(110px,8vw) 0 min(120px,9vw);
}
#insta .bg::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/grd_yellow@2x.png")no-repeat bottom left;
	background-size: 100% auto;
	width:56%;
	height: 786px;
	bottom: -30%;
	left: -24%;
	transform: translate(-50% -50%); 
	aspect-ratio: 786 / 786;
}
#insta .bg::after{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/common/grd_pink2@2x.png")no-repeat top right;
	background-size: 100% auto;
	width:56%;
	height: 786px;
	top: -30%;
	right: -24%;
	transform: translate(-50% -50%); 
	aspect-ratio: 786 / 786;
}
#insta .w1500{
	position: relative;
	z-index: 2;
	text-align: center;
}
#insta .insta_abs2{
	display: none;
}

#insta .insta_title{
	font-size:min(165%,2.5vw);
	letter-spacing: 0.13em;
	line-height: 1.6em;
	margin-bottom: min(60px,4vw);
}
#insta .insta_title .img{
	width: 1.7em;
	margin: 0 auto .9em;
}
#insta .insta_title h2{
	font-weight: bold;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#insta .bg{
	padding: 12% 0 15%;
}
#insta .insta_title{
	font-size: 110%;
	letter-spacing: normal;
	margin-bottom: 6%;
}
#insta .insta_title .img{
	margin: 0 auto .4em;
}
}






/* routine
---------------------------------------------------------*/
#routine .bg{
	background: #fefdfa;
	position: relative;
	z-index: 2;
}
#routine .w1300{
	padding-top: min(110px,9vw);
	padding-bottom:min(110px,9vw);
}
#routine .bo_index2{
	margin-bottom: min(110px,9vw);
}
#routine .bo_index2 .ft_lato{
	color: #fbf5d1;
}

#routine .ro_list{
	display: flex;
    justify-content: start;
	flex-wrap: wrap;
}
#routine .ro_list li{
	width: 22.5%;
	margin-right: 3.333%;
	margin-top: min(110px,8vw);
}
#routine .ro_list li:nth-child(4n){
	margin-right: 0;
}
#routine .ro_list li:nth-child(-n+4){
	margin-top: 0;
}
#routine .ro_list li h3{
	font-size:min(220%,2.3vw);
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin: .5em 0 .1em;
	text-align: center;
}
#routine .ro_list li .time{
	position: relative;
	font-size:min(250%,2.7vw);
	line-height: 1em;
	margin-bottom: .5em;
}
#routine .ro_list li .time::before{
	position: absolute;
	display: block;
	content: "";
	border-bottom: dotted 4px #524936;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 100%;
	height: 5px;
}
#routine .ro_list li:last-child .time::before{
	display: none;
}
#routine .ro_list li .time::after{
	position: absolute;
	display: block;
	content: "";
	background: #524936;
	background-size: 100% auto;
	top: 50%;
	transform: translateY(-50%);
	left: -.05em;
	width: 5px;
	height: .8em;
	z-index: 5;
}
#routine .ro_list li .time p{
	position: relative;
	z-index: 2;
	display: inline-block;
	background: #fefdfa;
	padding-left: .5em;
	padding-right: .5em;
	box-sizing: border-box;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#routine .w1300{
	padding-top: 12%;
	padding-bottom: 15%;
}
#routine .bo_index2{
	margin-bottom: 5%;
}
#routine .ro_list{
	display: block;
}
#routine .ro_list li{
	position: relative;
	width:100%;
	margin-right:0;
	margin-top: 0;
	padding-bottom: 5%;
}
#routine .ro_list li:last-child{
	padding-bottom: 0;
}
#routine .ro_list li::before{
	position: absolute;
	display: block;
	content: "";
border-left: dotted 3px #524936;
	width: 1px;
	height: 100%;
	left: 2em;
	top:0;
}
#routine .ro_list li:last-child::before{
	display: none;
}
#routine .ro_list li h3{
	font-size: 130%;
}
#routine .ro_list li .time{
	font-size: 150%;
	margin-bottom: 0;
	padding: .5em 0 .5em;
	background: #fefdfa;
}
#routine .ro_list li .time::before{
	display: none;
}

#routine .ro_list li .img,
#routine .ro_list li h3,
#routine .ro_list li p{
	padding-left: 4em;
	box-sizing: border-box;
}
}





/* kengaku
---------------------------------------------------------*/
#kengaku .bg{
	background: #524936;
	overflow: hidden;
}
#kengaku .w1500{
	position: relative;
	text-align: center;
	padding: min(80px,6vw) 0;
}
#kengaku .w1500::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/dh/slide_abs@2x.png")no-repeat top right;
	background-size: 100% auto;
	width: 20%;
	max-width: 280px;
	height: 246px;
	top: -9%;
	right: 8%;
	aspect-ratio: 280 / 246;
}
#kengaku .inbox{
	position: relative;
	z-index: 2;
} 
#kengaku h2{
	color: #fff;
	font-size:min(240%,3vw);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: .4em;
}
#kengaku p{
	color: #fff;
}
#kengaku .com_btn1 a{
	margin-top: 1.7em; 
}
#kengaku .com_btn1 .icon-arrow1{
	background: #87d963;
	color: #fff;
}
#kengaku .com_btn1 a:hover .icon-arrow1{
	background:rgba(135,217,99,0.2);
	color: #87d963;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#kengaku .w1500{
	padding: 10% 0;
}
#kengaku .w1500::before{
	width: 40%;
	top: -4%;
	right: -8%;
}
#kengaku h2{
	font-size: 130%;
}
#kengaku p{
	text-align: left;
}
}




/* bosyu
---------------------------------------------------------*/
#bosyu .bg{
	background: #ff9bb3;
	padding: min(120px,10vw) 0;
}
.page_dr #bosyu .bg{background: #51c9e1;}
.page_nursery #bosyu .bg{background: #ffba4e;}
.page_office #bosyu .bg{background: #85ca51;}

#bosyu .bo_index2 .ft_lato{
	color: #fbf5d1;
	opacity: .2;
}
#bosyu table{
	width: 100%;
}
#bosyu table th{
	width: 22%;
	background: #fff1f1;
	text-align: left;
	font-size:130%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
}
.page_dr #bosyu table th{background: #e4f5f5;}
.page_nursery #bosyu table th{background: #ffffea;}
.page_office #bosyu table th{background: #eaf8e2;}

#bosyu table td{
	width: 78%;
	background: #fff;
}
#bosyu table th,
#bosyu table td{
	padding: min(50px,4vw) 3.8%;
	box-sizing: border-box;
	vertical-align: top; 
	border-bottom: rgba(82,73,54,0.10) 1px solid;
}
#bosyu table tr:last-child th,
#bosyu table tr:last-child td{
	border-bottom: none;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
#bosyu .bg{
	padding: 12% 0;
}
#bosyu table{
	display: block;
}
#bosyu table th{
	width: 100%;
	font-size:110%;
	text-align: center;
	border-bottom: none!important;
	padding: .5em 4%;
}
#bosyu table td{
	width: 100%;
	padding: 1em 4% 1.5em;
}
#bosyu table th,
#bosyu table td{
	display: block;
}
}






/* form
---------------------------------------------------------*/
#form .bg1{
	background: #fbf6e8;
}
#form .en_index{
	width: calc(100% - 30px);
	margin-top: 15px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -140px;
	background:url("../images/dh/en@2x.jpg")no-repeat center center;
	background-size: cover;
	overflow: hidden;
	padding: min(120px,9vw) 0 190px;
	color: #fff;
}
#form .bo_index2{
	margin-bottom: min(50px,3.5vw);
}
#form .bo_index2 .ft_lato{
	opacity: .3;
}
#form .w1200{
	text-align: center;
}
#form .en_index .fs17_2{
	margin-bottom: 2em;
}

#form .com_btn1{
	text-align: center;
	margin: min(90px,7vw) auto min(120px,10vw);
}
#form .com_btn1 a{
	background: #524936;
}
#form .com_btn1 .icon-arrow1{
	color: #524936;
}
#form .com_btn1 a:hover .icon-arrow1{
	background: rgba(255,255,255,0.2);
	color: #fff;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#form .en_index{
	margin-bottom: -5vw;
	padding-top: 7vw;
	padding-bottom: 10vw;
}
#form .en_index{
	margin-bottom: -100px;
	padding-bottom: 150px;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#form .en_index{
	margin-bottom: -5vw;
	padding: 8% 0 13vw;
}
#form .bo_index2{
	margin-bottom: 5%;
}
#form .en_index .fs17_2{
	margin-bottom: 2em;
}

#form .com_btn1{
	margin: 5% auto 15%;
}
}




/* contact
---------------------------------------------------------*/
.contentpage.contact{
	padding-bottom: 150px;
}
.contentpage.contact #pagebody{
	margin-bottom: 100px;
}
.contentpage.contact .contact_title{
	font-size:150%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: 1.5em;
}

.contact_end dt{
	font-size:200%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: .5em;
}
.contact_end .com_btn1{
	margin-top: 2em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.contentpage.contact{
	padding-bottom: 15%;
}
.contentpage.contact #pagebody{
	margin-bottom: 10%;
}
.contentpage.contact .contact_title{
	margin-bottom: 1.3em;
}
	
.contact_end dt{
	font-size: 180%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.contentpage.contact{
	padding-bottom: 15%;
}
.contentpage.contact #pagebody{
	margin-bottom: 8%;
}
.contentpage.contact .contact_title{
	font-size:120%;
	margin-bottom: 1em;
}
.contact_end dt{
	font-size: 150%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	margin-bottom: .4em;
}
}





/* what
---------------------------------------------------------*/
#what .bg{
	background: url(../images/nursery/fir_abs2@2x.png)no-repeat bottom center #fce070;
	background-size: 100% auto;
	padding: min(120px,10vw) 0 min(160px,14vw);
}
#what .wh_list{
	display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 0 auto;
}
#what .wh_list li{
	width: 48%;
	max-width: 570px;
	background: #fff;
	padding: min(40px,3.5vw) 4% min(45px,4vw);
	box-sizing: border-box;
	margin-top: 40px;
}
#what .wh_list li:nth-child(-n+2){
	margin-top: 0;
}
#what .wh_list li .inbox{
	max-width: 420px;
	margin: 0 auto;
}
#what .wh_list li .img{
	margin: 0 auto min(20px,2vw);
}
#what .wh_list li dt{
	text-align: center;
	font-size:min(190%,2.5vw);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: .2em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#what .bg{
	padding: 10% 0 15%;
}
#what .wh_list{
	display: block;
}
#what .wh_list li{
	width: 100%;
	max-width:100%;
	padding: 6% 4% 6%;
	margin-top: 0;
	margin-bottom: 5%;
}
#what .wh_list li:last-child{
	margin-bottom: 0;
}
#what .wh_list li .inbox{
	max-width: 100%;
}
#what .wh_list li .img{
	width: 70%;
	margin: 0 auto 4%;
}
#what .wh_list li dt{
	font-size: 120%;
}
}