@charset "utf-8";

h2 {
text-align: center;
position: relative;
margin: 2em auto;
font-size: 1.2em;
}
h2:before {
content: "";
display: block;
width: 2em;
height: 2em;
background: url("../img/sports/ic3.png") center / contain no-repeat;
position: absolute;
top: -2em;
left: 50%;
transform: translate(-50%, -50%);
}
h2 span {
display: block;
margin: 1em auto;
color: #8D8D8D;
width: fit-conetnt;
width: -moz-fit-conetnt;
padding: 0 1em;
}
h2 span:before {
content: "";
display: block;
width: 6em;
height: 2px;
margin: .5em auto;
background: #2EA761;
}

#mf1 .cbox {
width: 1000px;
margin: 3vw auto 0;
background: #EFFFEB;
border-radius: 15px;
display: flex;
justify-content: center;
align-items: center;
padding: 1.5em 2em;
}
#mf1 .cboxs {
width: 20%;
border-right: 2px dashed #2EA761;
display: flex;
justify-content: center;
align-items: center;
flex-direction:column; 
}
#mf1 .tbox {
width: 70%;
background: #fff;
border-radius: 15px;
padding: 1em;
margin: 0 2em;
}

#mf2 .cbox {
width: 1000px;
display: flex;
border-bottom: 2px dashed #2AA157;
margin: 5vw auto;
padding: 0 0 3vw;
}
#mf2 .cbox:last-child {
border-bottom: none;
}
#mf2 figure {
margin: 0 3% 0 0;
}
#mf2 h2 {
font-size: 1.4em;
font-weight: bold;
border-bottom: 2px solid #2AA157;
margin-bottom: 1em;
padding: .6em 0 .5em;
margin: 0 auto 1em;
text-align: left;
}
#mf2 h2:before {
display: none;
}
#mf2 div p {
margin-bottom: 1em;
}

#mf3 {
background: #F2F0EC;
padding: 5vw 0;
}
#mf3 ul {
width: 1000px;
margin: 0 auto;
padding: 15px;
display: flex;
overflow: hidden;
}
#mf3 li {
width: 30%;
margin: 0 5% 0 0;
background: #fff;
padding: 1em 2em;
border-radius: 15px;
box-shadow: 3px 3px 15px rgb(0 0 0 / 20%);
}
#mf3 li:last-child {
margin-right: 0;
}
#mf3 li h3,
#mf3 li figure {
text-align: center;
}
#mf3 li figure {
margin: 2vw 0;
}
#mf3 li h3 {
font-weight: bold;
text-align: center;
}
#mf3 li a {
display: block;
text-decoration: underline;
color: #2AA157;
text-align: left;
margin-top: 2em;
}


#mf4{
margin: 100px 0;
}
#mf4 .mf-frame{
background: url("../img/sports_rehabilitation/bg.png") center center no-repeat;
}
#mf4 .mf-inner{
padding: 100px 0;
}
#mf4 .cbox{
width: 750px;
margin: 0 auto;
background: rgba(255,255,255,0.8);
border-radius: 10px;
}
#mf4 .cbox-inner{
padding: 100px;
}
#mf4 h2{
text-align: left;
font-size: 1.25em;
font-weight: bold;
border-bottom: #55A468 solid 2px;
padding: 0 0 20px 0;
margin: 0 0 20px 0;
}


@media screen and (max-width: 1024px) {
#mf1 .cbox,
#mf2 .cbox,
#mf3 ul {
width: auto;
}
#mf1 .cbox {
padding: 1em;
display: block;
}
#mf1 .cboxs {
width: 100%;
border-right: none;
border-bottom: 2px dashed #2EA761;
padding-bottom: .5em;
margin-bottom: 1em;
}
#mf1 .tbox{
width: 100%;
margin: 0;
}

#mf2 h2 {
margin: 1em auto;
}

#mf2 .cbox {
width: auto;
display: block;
margin: 5vw auto 10vw;
padding: 10px;
}
#mf2 figure {
margin: 0;
text-align: center;
}
#mf3 ul {
display: block;
}
#mf3 li {
width: 100%;
margin: 3vw auto;
}



#mf4{
margin: 10vw 0;
}
#mf4 .mf-frame{
background: url("../img/sports_rehabilitation/bgs.png") center center /cover no-repeat;
}

#mf4 .mf-inner{
padding: 5vw;
}
#mf4 .cbox{
width: auto;
}
#mf4 .cbox-inner{
padding: 5vw;
}
#mf4 h2{
padding: 0 0 2vw 0;
margin: 0 0 2vw 0;
}


}


@media screen and (max-width: 768px) {
h2:before {
width: 1.2em;
height: 1.2em;
top: -1em;
}
h2 span {
margin: 0;
line-height: 1;
}

}

@media screen and (max-width: 540px) {
#mainvis .cbox figure {
width: 6vw;
}
}



