@charset "UTF-8";

/* m_img
---------------------------------------------------------*/
.contentpage .m_img_area .m_img{
    background-image: url("../images/clinic/m_img@2x.jpg");}
.contentpage .m_img_area .m_img::before{
    background-image: url("../images/clinic/m_deco@2x.png");}
.f_bnr{
	border-top:1px solid #DFE2E3;
}


/* 文字サイズ
---------------------------------------------------------*/
#pagebody .ft_ad.fs22{
    font-size: min(150%,2.3vw);
    letter-spacing: 0.1em;
    line-height: 1em;
}
#pagebody .ft_ad.fs29{
    font-size: min(195%,2.7vw);
    letter-spacing: 0.1em;
    line-height: 1em;
}
#pagebody .ft_ad.fs45{
    font-size: min(300%,3.8vw);
    letter-spacing: 0.15em;
    line-height: 1em;
}
#pagebody .ft_min.fs45{
    font-size: min(300%,3.8vw);
    letter-spacing: 0.05em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs35{
    font-size: min(240%,3.2vw);
    letter-spacing: 0.05em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs33{
    font-size: min(225%,3vw);
    letter-spacing: 0.05em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs30{
    font-size: min(210%,2.6vw);
    letter-spacing: 0.01em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs26{
    font-size: min(180%,2.6vw);
    letter-spacing: 0.01em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs25{
    font-size: min(175%,2.5vw);
    letter-spacing: 0.01em;
    line-height: 1.6em;
}
#pagebody .ft_min.fs22{
    font-size: min(155%,2.4vw);
    letter-spacing: 0.02em;
    font-feature-settings: "palt";
    line-height: 1.6em;
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#pagebody .ft_ad.fs22{
    font-size: 100%;
}
#pagebody .ft_ad.fs29{
    font-size:125%;
}
#pagebody .ft_ad.fs45{
    font-size:150%;
}
#pagebody .ft_min.fs45{
    font-size: 200%;
}
#pagebody .ft_min.fs35{
    font-size: 145%;
}
#pagebody .ft_min.fs33{
    font-size: 140%;
}
#pagebody .ft_min.fs30{
    font-size: 140%;
}
#pagebody .ft_min.fs26{
    font-size:120%;
}
#pagebody .ft_min.fs25{
    font-size:120%;
}
#pagebody .ft_min.fs22{
    font-size: 110%;
}
}






/* waiting
---------------------------------------------------------*/
#waiting .bg{
    position: relative;
    background: url("../images/clinic/bg@2x.jpg")no-repeat bottom left #73D9CA;
    background-size: 100% auto;
    padding-bottom: 200px;
    margin-bottom: 50px;
}
#waiting .bg::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs01@2x.png")no-repeat bottom left;
    background-size: 100% auto;
    width: 100%;
    height: 300px;
    bottom: 0;
    left: 0;
}
#waiting .bg::after{
    position: absolute;
    display:block;
    content: "";
    background: #fff;
    background-size: 100% auto;
    width: 100%;
    height: 90px;
    top:0;
    left: 0;
}
#waiting .w1200{
    position: relative;
    z-index: 2;
}
#waiting .img{
    margin: 0 auto 95px;
}
#waiting .flex_l{
    width: 60%;
}
#waiting .flex_r{
    position: relative;
    width: 44.5%;
    max-width: 528px;
    margin-right: -12.5%;
}
#waiting .flex_r::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs03@2x.png")no-repeat bottom right;
    background-size: 100% auto;
    width: 52%;
    height: 400px;
    bottom: -100px;
    right: 9%;
}
#waiting .flex_r::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs02@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 52%;
    height: 200px;
    top: calc(100% + 2.5em);
    right: 75%;
}

.cl_index1{
    position: relative;
    padding-left: 1.2em;
    box-sizing: border-box;
    margin-bottom: 1em;
}
.cl_index1::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	left: 0;
	font-size: 72%;
	top: 50%;
	transform: translateY(-50%);
}
.cl_index1.clr_white{
    color: #fff;
}
.cl_index2{
    margin-bottom: .8em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#waiting .bg{
    padding-bottom: 14vw;
    margin-bottom: 2vw;
}
#waiting .bg::after{
    height: 8vw;
}
#waiting .img{
    width: 95%;
    margin: 0 auto 5vw;
}
#waiting .flex_r{
    margin-right: -9%;
}
#waiting .flex_r::before{
    bottom: 6vw;
    right: 20%;
}
#waiting .flex_r::after{
    top: calc(100% - 1em);
}
.cl_index1{
    margin-bottom: .6em;
}
.cl_index2{
    margin-bottom: .4em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#waiting .bg{
    padding-bottom: 20vw;
    margin-bottom: 5vw;
}
#waiting .bg::after{
    height: 8vw;
}
#waiting .img{
    margin: 0 auto 6vw;
}
#waiting .flexbox{
    display: block;
}
#waiting .flex_l{
    width: 100%;
}
#waiting .flex_r{
    width: 70%;
    margin: 4% auto 0;
}
#waiting .flex_r::before{
    width: 52%;
    bottom: -4vw;
    right: -18%;
}
#waiting .flex_r::after{
    width: 52%;
    top: calc(100% + 3vw);
    right: 55%;
}

.cl_index1{
    margin-bottom: .7em;
}
.cl_index2{
    margin-bottom: .3em;
}
	
@-moz-document url-prefix() {
	.cl_index1::before{
		top: 45%;
	}
}
}





/* floor
---------------------------------------------------------*/
#floor{
    margin-bottom: 150px;
}
#floor .flexbox.type1{
    margin-bottom: 140px;
}
#floor .flexbox.type1 .flex_l{
    width: 55.6%;
    max-width: 833px;
}
#floor .flexbox.type1 .flex_r{
    width: 40.6%;
    max-width: 550px;
    padding-top: 55px;
    padding-right: 4%;
    box-sizing: border-box;
}
#floor .flexbox.type1 .flex_r p{
    max-width: 400px;
}
#floor .flexbox.type1 .cl_index1{
    color: #21B5AB;
}

#floor .flexbox.col2{
    margin-bottom: 110px;
}
#floor .flexbox.col2 li{
    width: 46.5%;
    max-width: 559px;
}
#floor .flexbox.col2 li .img{
    position: relative;
    margin-bottom: 50px;
}
#floor .flexbox.col2 li .img::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs04@2x.png")no-repeat bottom right;
    background-size: 100% auto;
    width: 33%;
    max-width: 181px;
    height: 181px;
    bottom: -1.8em;
    right: 4%;
}
#floor .flexbox.col2 li:nth-child(2) .img::before{
    background-image: url("../images/clinic/abs05@2x.png");
}
#floor .flexbox.col2 li .fs30{
    margin-bottom: .6em;
}
#floor .last_slide .swiper-slide{
    width: 30vw;
    max-width: 304px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#floor{
    margin-bottom: 15vw;
}
#floor .flexbox.type1{
    margin-bottom: 8vw;
}
#floor .flexbox.type1 .flex_r{
    padding-top: 0;
    padding-right: 3%;
}
#floor .flexbox.col2{
    margin-bottom:5vw;
}
#floor .flexbox.col2 li .img{
    margin-bottom: 2.5vw;
}
#floor .flexbox.col2 li .fs30{
    margin-bottom: .4em;
}
#floor .last_slide .swiper-slide{
    width: 25vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#floor{
    margin-bottom: 15vw;
}
#floor .flexbox.type1{
    width: 92%;
    margin: 0 auto 14vw;
    display: block;
}
#floor .flexbox.type1 .flex_l{
    width: 90%;
    margin: 0 auto;
}
#floor .flexbox.type1 .flex_r{
    width: 100%;
    max-width: 100%;
    padding-top: 5vw;
    padding-right:0;
}
#floor .flexbox.type1 .flex_r p{
    max-width: 100%;
}
#floor .flexbox.col2{
    display: block;
    margin-bottom: 10vw;
}
#floor .flexbox.col2 li{
    width: 100%;
    max-width: 100%;
    margin-bottom: 8vw;
}
#floor .flexbox.col2 li:last-child{
    margin-bottom: 0;
}
#floor .flexbox.col2 li .img{
    width: 80%;
    margin: 0 auto 4vw;
}
#floor .flexbox.col2 li .img::before{
    width: 40%;
    bottom: -1em;
    right: -8%;
}
#floor .flexbox.col2 li .fs30{
    margin-bottom: .2em;
}
#floor .last_slide .swiper-slide{
    width: 35vw;
}
}






/* family
---------------------------------------------------------*/
#family{
    margin-bottom: 120px;
}

/*fa_box1*/
#family .fa_box1{
    position: relative;
    background:rgba(255,161,145,0.35);
    border-radius: 80px 80px 0 0;
    padding:100px 4% 0;
    box-sizing: border-box;
}
#family .fa_box1::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs06@2x.png")no-repeat top left;
    background-size: 100% auto;
    width: 18%;
    height: 200px;
    top: -5.5em;
    left: 11%;
}
#family .fa_box1::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs07@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 16%;
    height: 200px;
    top: -2em;
    right: 13%;
}

/*fa_box2*/
#family .fa_box2{
    position: relative;
    background: #FFC0B5;
    padding: 80px 4% 100px;
    border-radius: 0 0 80px 80px;
}
#family .fa_box2::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs09@2x.png")no-repeat bottom left;
    background-size: 100% auto;
    width: 100%;
    height: 100px;
    bottom: calc(100% + 15em);
    left: 0;
}
#family .fa_box2::after{
    position: absolute;
    display: block;
    content: "";
    background: #FFC0B5;
    background-size: 100% auto;
    width: 100%;
    height: 15em;
    bottom: 100%;
    left: 0;
}
.cli_deco1{
    position: relative;
    width: 100%;
    display: block;
    padding-top: 2.5em;
}
.cli_deco1::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs11@2x.png")no-repeat top center;
    background-size: 100% auto;
    width: 4.8em;
    height: 1.8em;
    top:0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

#family .inbox{
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
#family .fa_box1 .fa_index{
    margin-bottom: 110px;
    text-align: center;
}
#family .fa_box1 .fa_index .fs45,
#family .fa_box1 .flexbox.type1 .cl_index1{
    color: #FF8773;
}
#family .fa_box1 .fa_index .ft_min{
    margin: 60px 0 40px;
}
#family .fa_box1 .flexbox.type1{
    position: relative;
    margin-bottom: 50px;
}
#family .fa_box1 .flexbox.type1::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs08@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 15%;
    height: 300px;
    top: -2.5em;
    right: -11%;
}
#family .fa_box1 .flexbox.type1 .flex_l{
    width: 64%;
}
#family .fa_box1 .flexbox.type1 .flex_r{
    width: 32%;
	padding-top: 50px;
}
#family .fa_box1 .flexbox.type1 .flex_r > div{
    max-width: 350px;
    margin-left: auto;
    margin-right: 0;
}
#family .fa_box1 .flexbox.type2{
    position: relative;
    z-index: 3;
    flex-flow: row-reverse;
}
#family .fa_box1 .flexbox.type2 .flex_l{
    width: 51.5%;
    max-width: 616px;
    margin-left:-1.5%;
}
#family .fa_box1 .flexbox.type2 .flex_r{
    width:43%;
    max-width: 510px;
    padding-top: 20px;
}

/*service1*/
#family .service1{
    padding: 45px 4% 55px;
    background: #fff;
}
#family .service1 .inbox{
    max-width: 1000px;
    margin: 0 auto;
}
#family .service1 .index1{
    text-align: center;
    margin-bottom: 60px;
}
#family .service1 .index1 .fs22{
    margin-bottom: 1em;
}
#family .service1 .index1 .fs30{
    margin-bottom: .6em;
}
#family .service1 .index1 .list{
    margin-top: 1.5em;
}
#family .service1 h6{
    background: #293F42;
    text-align: center;
    color: #fff;
    padding: .4em 0 .45em;
    box-sizing: border-box;
    margin-bottom: 50px;
}
#family .service1 dl{
    max-width: 890px;
    margin: 0 auto;
}
#family .service1 dt{
    margin-bottom: 1.2em;
}

/*service2*/
#family .service2{
    position: relative;
    padding: 0 4% 50px;
    box-sizing: border-box;
    text-align: center;
}
#family .service2::before{
    position: absolute;
    display: block;
    content: "";
    background: #F7EEA8;
    background-size: 100% auto;
    width: 100%;
    height: calc(100% - 1em);
    bottom: 0;
    left: 0;
}
#family .service2::after{
    position: absolute;
    display: block;
    content: "";
    background: #fff;
    background-size: 100% auto;
    width: 100%;
    height: 1em;
    top: 0;
    left: 0;
}
#family .service2 .inbox{
    position: relative;
    z-index: 2;
}
#family .service2 .ft_min{
    position: relative;
    display: inline-block;
    font-size: min(140%,2vw);
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    line-height: 1.6em;
    margin: 0 auto;
    padding: 0 2em;
    box-sizing: border-box;
}
#family .service2 .ft_min::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs12@2x.png")no-repeat top left;
    background-size: 100% auto;
    width: 1.3em;
    height: 2.5em;
    top: 60%;
	transform: translateY(-50%);
    left: 0;
}
#family .service2 .ft_min::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs13@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 1.3em;
    height: 2.5em;
    top: 60%;
	transform: translateY(-50%);
    right: 0;
}
#family .service2 .ft_min p{
    display: inline-block;
    vertical-align: middle;
}
#family .service2 .ft_min p.img{
    width: 4.8em;
}
#family .service2 .ft_min p.txt{
    padding-top: 1em;
}

/*event*/
#family .event{
    position: relative;
    margin-top: 70px;
    background: #fff;
    border:1px solid #293F42;
    border-radius: 40px;
    box-sizing: border-box;
    padding: 45px 4%;
}
#family .event::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs15@2x.png")no-repeat bottom left;
    background-size: 100% auto;
    width: 12.5%;
    height: 150px;
    bottom: 2em;
    left: -2.2%;
}
#family .event .flexbox{
    position: relative;
    z-index: 2;
    flex-flow: row-reverse;
    max-width: 1028px;
    margin: 0 auto;
}
#family .event .flex_r{
    position: relative;
    width: 39.5%;
}
#family .event .flex_r::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs15@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 36%;
    height: 140px;
    top: 2.5em;
    right: -26%;
}
#family .event .flex_r::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/clinic/abs14@2x.png")no-repeat top left;
    background-size: 100% auto;
    width: 36%;
    height: 180px;
    top: -4em;
    left: -23.5%;
}
#family .event .flex_l{
    width: 58%;
    padding-top: 1.5rem;
}
#family .event .flex_l .ft_min{
    line-height: 1.3em;
}
#family .event .flex_l .fs45{
    margin-bottom: 1.2rem;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#family{
    margin-bottom: 6vw;
}

/*fa_box1*/
#family .fa_box1{
    border-radius: 20px 20px 0 0;
    padding: 7vw 3% 0;
}
#family .fa_box1::before{
    top: -5vw;
}
#family .fa_box1::after{
    top: -2vw;
}

/*fa_box2*/
#family .fa_box2{
    padding: 4vw 3% 5%;
    border-radius: 0 0 20px 20px;
}
#family .fa_box2::before{
    bottom: calc(100% + 15vw);
}
#family .fa_box2::after{
    height: 15vw;
}
.cli_deco1{
    padding-top: 2em;
}
.cli_deco1::before{
    width: 4em;
    height: 1em;
}
#family .fa_box1 .fa_index{
    margin-bottom: 6vw;
}
#family .fa_box1 .fa_index .ft_min{
    margin: 3vw 0 2vw;
}
#family .fa_box1 .flexbox.type1{
    margin-bottom: -1vw;
}
#family .fa_box1 .flexbox.type1::before{
    top: -2em;
    right: -5%;
}
#family .fa_box1 .flexbox.type1 .flex_l{
    width: 60%;
}
#family .fa_box1 .flexbox.type1 .flex_r{
    width: 36%;
	padding-top: 0;
}
#family .fa_box1 .flexbox.type2 .flex_l{
    width: 51.5%;
    margin-left:0;
}
#family .fa_box1 .flexbox.type2 .flex_r{
    width:45%;
    max-width: 510px;
    padding-top: 5vw;
}

/*service1*/
#family .service1{
    padding:5% 4%;
}
#family .service1 .index1{
    margin-bottom: 4vw;
}
#family .service1 .index1 .fs30{
    margin-bottom: .4em;
}
#family .service1 .index1 .list{
    margin-top: 1.2em;
}
#family .service1 h6{
    margin-bottom: 3vw;
}
#family .service1 dl{
    max-width: 890px;
    margin: 0 auto;
}
#family .service1 dt{
    margin-bottom: .6em;
}

/*service2*/
#family .service2{
    padding: 0 4% 4%;
}
#family .service2 .ft_min{
    letter-spacing: 0.01em;
}
#family .service2 .ft_min p.img{
    width: 4em;
}
#family .service2::before{
    height: calc(100% - .5em);
}
#family .service2::after{
    height: .5em;
}
    
/*event*/
#family .event{
    margin-top: 5vw;
    border-radius: 20px;
    padding: 5% 3% 4%;
}
#family .event::before{
    bottom: 1em;
    left: -2.2%;
}
#family .event .flex_r::before{
    top: 2vw;
    right: -20%;
}
#family .event .flex_r::after{
    top: -6vw;
    left: -16%;
}
#family .event .flex_l{
    padding-top: .5rem;
}
#family .event .flex_l .ft_min{
    line-height: 1.5em;
}
#family .event .flex_l .fs45{
    margin-bottom: 1rem;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#family{
    margin-bottom: 12vw;
}

/*fa_box1*/
#family .fa_box1{
    border-radius: 20px 20px 0 0;
    padding: 8vw 4% 0;
}
#family .fa_box1::before{
    width: 22%;
    top: -5vw;
    left: 0;
}
#family .fa_box1::after{
    width:26%;
    top: -5vw;
    right: 0;
}

/*fa_box2*/
#family .fa_box2{
    padding: 7vw 4% 5%;
    border-radius: 0 0 20px 20px;
}
#family .fa_box2::before{
    bottom: calc(100% + 25vw);
}
#family .fa_box2::after{
    height: 26vw;
}
.cli_deco1{
    padding-top: 2em;
}
.cli_deco1::before{
    width: 4em;
    height: 1.5em;
}
#family .fa_box1 .fa_index{
    margin-bottom:6vw;
}
#family .fa_box1 .fa_index p{
    text-align: left;
}
#family .fa_box1 .fa_index .ft_min{
    margin: 4vw 0 3vw;
}
#family .fa_box1 .flexbox.type1{
    margin-bottom: 8vw;
    display: block;
}
#family .fa_box1 .flexbox.type1::before{
    width:35%;
    top: -1vw;
    right: -6%;
}
#family .fa_box1 .flexbox.type1 .flex_l{
    width:100%;
    margin: 0 auto 4%;
}
#family .fa_box1 .flexbox.type1 .flex_r{
    width: 100%;
	padding-top: 0;
}
#family .fa_box1 .flexbox.type1 .flex_r > div{
    max-width: 100%;
}
#family .fa_box1 .flexbox.type2{
    display: block;
}
#family .fa_box1 .flexbox.type2 .flex_l{
    width:90%;
    max-width:100%;
	margin: 0 auto;
}
#family .fa_box1 .flexbox.type2 .flex_r{
    width: 80%;
	margin: 0 auto 4%;
    padding-top: 0;
}

/*service1*/
#family .service1{
    padding: 6% 4%;
}
#family .service1 .index1{
    margin-bottom: 10%;
    text-align: left;
}
#family .service1 .index1 .fs22{
    margin-bottom: .5em;
    text-align: center;
}
#family .service1 .index1 .fs30{
    margin-bottom: .4em;
    text-align: center;
}
#family .service1 .index1 .list{
    margin-top: 1em;
}
#family .service1 h6{
    margin-bottom: 5%;
}
#family .service1 dt{
    margin-bottom: .5em;
}

/*service2*/
#family .service2{
    padding: 0 4% 5%;
}
#family .service2::before{
    height: calc(100% - .5em);
}
#family .service2::after{
    height: .5em;
}
#family .service2 .ft_min{
    font-size: 100%;
    text-align: left;
    padding: 8% 1.5em 5%;
}
#family .service2 .ft_min::before{
    width: 1em;
    top:85%;
    left: -1%;
}
#family .service2 .ft_min::after{
    width: 1em;
    top:85%;
    right: -1%;
}
#family .service2 .ft_min p{
    display: inline-block;
    vertical-align: middle;
}
#family .service2 .ft_min p.img{
    width: 4em;
}
#family .service2 .ft_min p.txt{
    padding-top: 0;
    line-height: 1.5em;
}
#family .service2 .com_contact_list{
    width: 100%;
}

/*event*/
#family .event{
    margin-top: 8%;
    border-radius: 20px;
    padding: 6% 4% 8%;
}
#family .event::before{
    width: 30%;
    bottom: 0;
    left: -2%;
}
#family .event .flexbox{
    display: block;
}
#family .event .flex_r{
    width:90%;
    margin: 0 auto;
    padding-right: 15%;
    box-sizing: border-box;
}
#family .event .flex_r::before{
    width: 32%;
    top: 4vw;
    right: -4%;
}
#family .event .flex_r::after{
    width: 30%;
    top: -8vw;
    left: -10%;
}
#family .event .flex_l{
    width: 100%;
    padding-top: 4%;
}
#family .event .flex_l .fs45{
    margin-bottom: .8rem;
}
#family .event .flex_l .ft_min{
    text-align: center;
}
}






/* other
---------------------------------------------------------*/
#other{
    margin-bottom: 120px;
}
#other .fs29{
    text-align: center;
    position: relative;
    padding-top: 2em;
    margin-bottom: 2.5em;
}
#other .fs29::before{
    position: absolute;
    font-family: 'fontello';
	content: '\e800';	
	right: 0;
    left: 0;
    margin: 0 auto;
	font-size:70%;
	top: 0;
    color: #C09C53;
}
#other li{
    width: 32%;
    max-width: 362px;
}
#other li .fs30{
    margin: 1em 0 1rem;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#other{
    margin-bottom: 8vw;
}
#other .fs29{
    padding-top: 1.5em;
    margin-bottom: 1.5em;
}
#other li .fs30{
    margin: .6em 0 .4rem;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#other{
    margin-bottom: 12vw;
}
#other .fs29{
    padding-top: 1.5em;
    margin-bottom: 1em;
}
#other ul{
    display: block;
}
#other li{
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid #DFE2E3;
    padding-bottom: 8%;
    margin-bottom: 10%;
}
#other li:last-child{
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
#other li .img{
    width: 70%;
    margin: 0 auto;
}
#other li .fs30{
    text-align: center;
    margin: .5em 0 .2em;
}
}






/* accredited
---------------------------------------------------------*/
#accredited{
    margin-bottom: 150px;
}
#accredited .titlebox{
    background:url("../images/clinic/abs16@2x.png")no-repeat bottom -1px left #E8F5F4;
    background-size: 100% auto;
    padding: 65px 0 120px;
    margin-bottom: 80px;
}
#accredited .titlebox .w1200{
    text-align: center;
}
#accredited .titlebox .ft_ad{
    margin-bottom: 1.5em;
}
#accredited .list{
    margin-bottom: 80px;
}
#accredited .list li{
    border-bottom: 1px solid #DFE2E3;
    padding-bottom: 60px;
    margin-bottom: 60px;
}
#accredited .list li .flexbox{
    max-width: 1200px;
    margin: 0 auto;
}
#accredited .list li:nth-child(even) .flexbox{
    flex-flow: row-reverse;
}
#accredited .list li:last-child{
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}
#accredited .list li .img{
    width: 42%;
    max-width: 480px;
}
#accredited .list li .txt{
    width: 54%;
}
#accredited .list li .txt .fs26{
    margin-bottom: 1em;
}
#accredited .list li .txt p span{
    font-weight: bold;
    color: #21B5AB;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#accredited{
    margin-bottom: 10vw;
}
#accredited .titlebox{
    padding: 5vw 0 8vw;
    margin-bottom: 5vw;
}
#accredited .titlebox .ft_ad{
    margin-bottom: 1em;
}
#accredited .list{
    margin-bottom: 8vw;
}
#accredited .list li{
    padding-bottom: 5vw;
    margin-bottom: 5vw;
}
#accredited .list li .flexbox{
    display: block;
    overflow: hidden;
}
#accredited .list li .img.flex_l{
    float: left;
    margin-right: 4%;
}
#accredited .list li .img.flex_r{
    float: right;
    margin-left: 4%;
}
#accredited .list li .img{
    margin-bottom: 1em;
}
#accredited .list li .txt{
    width: 100%!important;
}
#accredited .list li .txt .fs26{
    margin-bottom: .4em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#accredited{
    margin-bottom: 15vw;
}
#accredited .titlebox{
    padding: 8vw 0 12vw;
    margin-bottom: 8vw;
}
#accredited .titlebox .ft_ad{
    margin-bottom: 1em;
}
#accredited .list{
    margin-bottom: 8vw;
}
#accredited .list li{
    padding-bottom: 10%;
    margin-bottom: 10%;
}
#accredited .list li .flexbox{
    display: block;
}
#accredited .list li .img{
    width: 80%;
    margin: 0 auto 5%;
}
#accredited .list li .txt{
    width: 100%;
}
#accredited .list li .txt .fs26{
    margin-bottom: .4em;
    text-align: center;
}
}