@charset "UTF-8";
/* CSS Document */

@keyframes slideranim{
0%{
filter: blur(30px);
transform: scale(1.6);
opacity: 0;
}
100%{
filter: blur(0);
transform: scale(1);
opacity: 1;
}
}

@keyframes txtloop {
0% {
transform: translateX(100%);
}
to {
transform: translateX(-100%);
}
}

@keyframes txtloop2 {
0% {
transform: translateX(0);
}
to {
transform: translateX(-200%);
}
}


@keyframes svg {
0% {
fill: transparent;
stroke-dashoffset: 1600px;
}
80% {
fill: transparent;
}
100%{
stroke-dashoffset: 0;
fill: #FFF;
}
}


/*PC*/
@media print, screen and (min-width: 768px) {


/*index
-----------------------------------------------*/
#hospitalization .idx_list{
display: flex;
flex-wrap: wrap;
}

#hospitalization .idx_list li{
width: 31.333%;
margin-right: 2%;
margin-bottom: 2%;
}

#hospitalization .idx_list li:nth-child(3n){
margin-right: 0;
}


/*life
-----------------------------------------------*/
#hospitalization .life_img_r{
width: 40%;
margin: 0 0 30px 30px;
float: right;
}

#hospitalization .life_img_r img{
border-radius: 10px;
overflow: hidden;
}

#hospitalization .life_img3{
display:flex;
flex-wrap: wrap;
justify-content:space-between;
margin: 0 0 50px;
}

#hospitalization .life_img3 li{
width: 31%;
}

#hospitalization .life_img3 li img{
border-radius: 10px;
overflow: hidden;
}


/*surgery
-----------------------------------------------*/
#hospitalization .img_r{
width: 40%;
margin: 0 0 30px 30px;
float: right;
}

#hospitalization .img_r img{
border-radius: 10px;
overflow: hidden;
}

#hospitalization .surgery_dl{
margin: 0;
}

#hospitalization .surgery_dl dt{
font-size: 20px;
font-weight: bold;
line-height: 1.2;
letter-spacing: .1em;
background: #f5f9fc;
padding: 11px 20px;
border-radius: 6px;
margin-bottom: 20px;
}

#hospitalization .surgery_dl dd{
margin-bottom: 50px;
}

#hospitalization .surgery_dl dd:last-child{
margin-bottom: 0;
}

#hospitalization .surgery_list{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}

#hospitalization .surgery_list li{
width: 31%;
}

#hospitalization .surgery_list li img{
border-radius: 1rem;
}

#hospitalization .surgery_list li h3{
font-size: 18px;
line-height: 1;
text-align: center;
margin: 10px 0 10px;
}

#hospitalization .surgery_list li p{
font-size: 14px;
}


/*rehabili
-------------------------------------*/
.flow_design08 {
display: flex;
justify-content: center;
align-items: center;
}

.flow08 {
padding-left: 0;
}

.flow08 > li {
list-style-type: none;
border-radius: .6rem;
background: #F4F6FA;
position: relative;
padding: 10px 20px;
}

.flow08 > li:not(:last-child) {
margin-bottom: 20px;
}

.flow08 > li dl {
gap: 20px;
}

.flow08 > li dl dt {
font-size: 1.2em;
font-weight: 700;
}

.flow08 > li .icon08 {
color: #008dcf;
margin-right: 0.5em;
}

.flow08 > li dl dd {
padding-left:32px;
}

.flow_design02 {
width: 100%;
}

.flow_design02 ul {
padding: 0;
}

.flow_design02 li {
list-style-type: none;
}

.flow_design02 dd {
margin-left: 0;
}

.flow02 > li {
padding: 20px 10px;
}

.flow02 > li:not(:last-child) {
border-bottom: 2px solid #0b60b0;
position: relative;
}

.flow02 > li:not(:last-child)::before,
.flow02 > li:not(:last-child)::after {
content: "";
border: solid transparent;
position: absolute;
top: 100%;
left: 15%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.flow02 > li:not(:last-child)::before {
border-width: 12px;
border-top-color: #0b60b0;
}

.flow02 > li:not(:last-child)::after {
border-width: 12px;
}

.flow02 > li dl {
margin: 0;
}

.flow02 > li dl dt {
font-size: 1.3em;
font-weight: 600;
margin-bottom: 0.5em;
padding-bottom: 0.5em;
display: flex;
}

.flow02 > li dl dt .icon02 {
font-size: 0.6em;
color: #fff;
background: #0b60b0;
padding: 5px 10px;
display: inline-block;
margin-right: 0.5em;
}


}
/*sp*/
@media only screen and (max-width: 767px) {

/*index
-----------------------------------------------*/
#hospitalization .idx_list{
}

#hospitalization .idx_list li{
width: 100%;
margin-bottom:15px;
}

#hospitalization .idx_list li:last-child{
margin-bottom: 0;
}


/*life
-----------------------------------------------*/
#hospitalization .life_img_r{
width: 80%;
margin: 0 auto 20px;
}

#hospitalization .life_img_r img{
border-radius: 10px;
overflow: hidden;
}

#hospitalization .life_img3{
display:flex;
flex-wrap: wrap;
justify-content:space-between;
margin: 0 0 50px;
}

#hospitalization .life_img3 li{
width: 31%;
}

#hospitalization .life_img3 li img{
border-radius: 10px;
overflow: hidden;
}


/*surgery
-----------------------------------------------*/
#hospitalization .img_r{
width: 40%;
margin: 0 0 30px 30px;
float: right;
}

#hospitalization .img_r img{
border-radius: 10px;
overflow: hidden;
}

#hospitalization .surgery_dl{
margin: 0;
}

#hospitalization .surgery_dl dt{
font-size: 20px;
font-weight: bold;
line-height: 1.2;
letter-spacing: .1em;
background: #f5f9fc;
padding: 11px 20px;
border-radius: 6px;
margin-bottom: 20px;
}

#hospitalization .surgery_dl dd{
margin-bottom: 50px;
}

#hospitalization .surgery_dl dd:last-child{
margin-bottom: 0;
}

#hospitalization .surgery_list{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}

#hospitalization .surgery_list li{
width: 31%;
}

#hospitalization .surgery_list li img{
border-radius: 1rem;
}

#hospitalization .surgery_list li h3{
font-size: 18px;
line-height: 1;
text-align: center;
margin: 10px 0 10px;
}

#hospitalization .surgery_list li p{
font-size: 14px;
}


/*rehabili
-------------------------------------*/
.flow_design08 {
display: flex;
justify-content: center;
align-items: center;
}

.flow08 {
padding-left: 0;
}

.flow08 > li {
list-style-type: none;
border-radius: .6rem;
background: #F4F6FA;
position: relative;
padding: 10px 20px;
}

.flow08 > li:not(:last-child) {
margin-bottom: 20px;
}

.flow08 > li dl {
gap: 20px;
}

.flow08 > li dl dt {
font-size: 14px;
font-weight: 700;
}

.flow08 > li .icon08 {
color: #008dcf;
margin-right: 0.5em;
}

.flow08 > li dl dd {
padding-left:15px;
font-size: 14px;
}

.flow_design02 {
width: 100%;
}

.flow_design02 ul {
padding: 0;
}

.flow_design02 li {
list-style-type: none;
}

.flow_design02 dd {
margin-left: 0;
font-size: 14px;
}

.flow02 > li {
padding: 20px 10px;
}

.flow02 > li:not(:last-child) {
border-bottom: 2px solid #0b60b0;
position: relative;
}

.flow02 > li:not(:last-child)::before,
.flow02 > li:not(:last-child)::after {
content: "";
border: solid transparent;
position: absolute;
top: 100%;
left: 15%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.flow02 > li:not(:last-child)::before {
border-width: 12px;
border-top-color: #0b60b0;
}

.flow02 > li:not(:last-child)::after {
border-width: 12px;
}

.flow02 > li dl {
margin: 0;
}

.flow02 > li dl dt {
font-size:14px;
font-weight: 700;
margin-bottom: 0.5em;
padding-bottom: 0.5em;
display: flex;
}

.flow02 > li dl dt .icon02 {
font-size:14px;
color: #fff;
background: #0b60b0;
padding: 5px 10px;
display: inline-block;
margin-right: 0.5em;
white-space: nowrap;
}


}