@charset "UTF-8";

/* index01 index-schedule ============ */

.index01 {
align-items:center;}
.index01 .ttl {
width:14%;
max-width:140px;
min-width:60px;}
.index01 .ttl img {
max-width:36%;
transform:translate(3%,7%);}
.index01 .slide .bnr-homecare {
position:absolute;
z-index:2;
left:15px;
bottom:15px;
width:32%;
max-width:180px;}
.index01 .slide .bnr-homecare img {
box-shadow:3px 3px 8px 0 rgba(0,0,0,0.2);
border-radius:50%;
transition:transform 0.25s;}
.index01 .slide .bnr-homecare img:hover {
transform:scale(1.1);}

.index01 .slide {
position:relative;
width:86%;
max-width:calc(100% - 60px);
min-width:calc(100% - 140px);
overflow:hidden;
border-radius:80px 0 0 0;}
.swiper-slide {
position:relative;
width:100%;
height:600px;
overflow:hidden;}
.swiper-slide img {
pointer-events:none;
object-fit:cover;
width:100%;
height:100%;}
.swiper-button-prev , .swiper-button-next {
display:none;}
.swiper-pagination-bullet {
display:none;
margin:0 2px !important;
width:8px;
height:8px;
background:#fff;
border-radius:50%;
opacity:1;}
.swiper-pagination-bullet-active {
background:#81b826;}

@media only screen and (max-width:1023px) {

.index01 {
padding:15px 0 0 0;}
.index01 .ttl img {
transform:translate(0%,0%);}
.swiper-slide {
height:auto;
aspect-ratio:8 / 5;}

}

@media only screen and (max-width:800px) {

.swiper-slide {
aspect-ratio:27 / 20;}
.index01 .slide .bnr-homecare {
left:12px;
bottom:12px;}

}

.index-schedule {
text-align:left;
position:relative;
margin:0 auto;
width:86%;
max-width:1200px;}
.index-schedule .index-schedule-contents {
position:absolute;
z-index:2;
padding:25px 25px 5px;
right:0;
bottom:0;
width:100%;
max-width:450px;
background:rgba(255,255,255,0.9);
border-radius:25px 0 0 0;}
.index-schedule .index-schedule-contents .tel {
margin:0 0 8px 0;
font-size:180%;
line-height:1.2;
font-weight:bold;}
.index-schedule .index-schedule-contents .tel a {
color:#222;}
.index-schedule .index-schedule-contents table {
margin:0 0 0.7em 0;
width:100%;
font-size:81.25%;
line-height:1.35;
white-space:nowrap;}
.index-schedule .index-schedule-contents table th {
text-align:center;
padding:0.4em 0;
color:#fff;
background:#81b826;}
.index-schedule .index-schedule-contents table td {
text-align:center;
padding:0.6em 0.4em;
background:#fff;
border-bottom:1px solid #81b826;}
.index-schedule .index-schedule-contents .notice {
text-align:left;
margin-top:0.4em;
font-size:68.75%;
line-height:1.55;}

@media only screen and (max-width:1023px) {

.index-schedule {
width:100%;
background:linear-gradient(0deg,#d6e6ae,#fff);}
.index-schedule .index-schedule-contents {
position:static;
margin:0 auto;
padding:4% 0;
width:88%;
max-width:640px;
background:none;
border-radius:0;}
.index-schedule .index-schedule-contents .tel {
display:none;}

}

@media only screen and (max-width:767px) {

.index-schedule .index-schedule-contents {
padding:30px 0;}

}

/* index02 index-topics ============ */

.index02 {
text-align:left;}
.index-topics {
justify-content:space-between;
-ms-flex-pack:justify;
margin:0 auto;}
.index-topics .left , .index-topics .right {
position:relative;
padding:0px 4.2% 4.2% 0;
width:47.5%;}
.index-topics .left::before , .index-topics .right::before {
content:"";
position:absolute;
z-index:-1;
right:0;
top:0;
width:calc(100% - 110px);
height:100%;
background:#f5f3f0;
border-radius:40px 0 40px 0;}
.index-topics .ttl {
position:relative;}
.index-topics .ttl h2 {
pointer-events:none;
padding:0 0 8px 0;
border-bottom:2px solid #81b826;}
.index-topics .ttl .btn {
position:absolute;
top:50%;
right:0;
width:38px;
height:38px;
line-height:0;
transform:translate(0,-50%);}
.index-topics .ttl .btn a {
position:relative;
display:block;
width:100%;
height:100%;
border:2px solid #81b826;
transition:transform 0.25s;
border-radius:50%;}
.index-topics .ttl .btn a:hover {
transform:translate(5px,0);}
.index-topics .ttl .btn a::after {
content:"";
position:absolute;
z-index:2;
left:50%;
top:50%;
width:25%;
height:25%;
border-top:2px solid #81b826;
border-right:2px solid #81b826;
transform:translate(-70%,-50%) rotate(45deg);}
.index-topics ul {}
.index-topics ul li {
border-bottom:1px dotted #222;}
.index-topics ul li a {
display:block;
color:#222;}
.index-topics ul li a:hover {
color:#e82;}
.index-topics ul li a dl {
justify-content:space-between;
align-items:center;}
.index-topics ul li a dt {
text-align:center;
padding:24px 0;
width:80px;
line-height:1.2;
white-space:nowrap;}
.index-topics ul li a dt .date01 {
padding:0 0 4px 0;
font-size:10px;
border-bottom:1px solid rgba(0,0,0,0.2);}
.index-topics ul li a dt .date02 {
margin:4px 0 0 0;
font-size:140%;
font-weight:bold;}
.index-topics ul li a dd {
width:calc(100% - 140px);}
.index-topics ul li a h3 {
margin:4px 0;
font-size:100%;
line-height:1.4;}

@media only screen and (max-width:1023px) {

.index-topics {
max-width:640px;}
.index-topics .left , .index-topics .right {
width:100%;
padding:0px 6.2% 6.2% 0;}
.index-topics .right {
margin:45px 0 0 0;}

}

@media only screen and (max-width:640px) {

.index-topics .left::before , .index-topics .right::before {
width:calc(100% - 90px);
border-radius:30px 0 30px 0;}
.index-topics .ttl h2 img {
width:70px;}
.index-topics ul li a dt {
padding:22px 0;
width:70px;}
.index-topics ul li a dt .date02 {
font-size:132%;}
.index-topics ul li a dd {
width:calc(100% - 110px);}
.index-topics ul li a h3 {
font-size:92%;}

}

/* index03 ============ */

.index03 {
padding-top:0;}

@media only screen and (max-width:640px) {

.index03 .txt {
text-align:left;}
.index03 .txt br {
display:none;}

}

/*
.index-symptom ul {
font-family:"M PLUS 1",sans-serif;
text-align:left;
justify-content:space-between;
margin:0 auto;
width:100%;}
.index-symptom ul li {
margin:1.5% 0 0 0;
padding:23px 19px 27px 27px;
width:49.25%;
background:#fff;
box-shadow:1px 1px 2px 0 rgba(0,0,0,0.15);
border-radius:20px;}
.index-symptom ul li h3 {
margin:0 0 6px 0;
font-size:172%;
line-height:40px;
font-weight:500;
color:#e82;
white-space:nowrap;}
.index-symptom ul li h3 span {
margin:0 7px 0 0;}
.index-symptom ul li h3 span img {
pointer-events:none;
background:#e82;
border-radius:50%;}
.index-symptom ul li .btn {
display:flex;
flex-wrap:wrap}
.index-symptom ul li .btn a {
position:relative;
flex:1 1 auto;
margin:9px 8px 0 0;
padding:0 13px 0 26px;
font-size:100%;
line-height:34px;
color:#222;
box-shadow:0 0 0 1px #e82;
border-radius:17px;
transition:0.25s;}
.index-symptom ul li .btn a::before {
content:"";
position:absolute;
left:6px;
top:50%;
width:14px;
height:14px;
background:#e82;
border-radius:50%;
transform:translate(0,-50%);}
.index-symptom ul li .btn a::after {
content:"";
position:absolute;
left:9px;
top:50%;
width:4px;
height:4px;
border-top:1px solid #fff;
border-right:1px solid #fff;
transform:translate(0,-50%) rotate(45deg);}
.index-symptom ul li .btn a:hover { 
background:#e82;
color:#fff;}

@media only screen and (max-width:1023px) {

.index-symptom ul {
max-width:640px;}
.index-symptom ul li {
margin:2.5% 0 0 0;
width:100%;}

}

@media only screen and (max-width:640px) {

.index-symptom ul li {
margin:11px 0 0 0;
padding:14px 7px 15px 15px;
border-radius:15px;}
.index-symptom ul li .btn a {
margin:9px 8px 0 0;
font-size:100%;
line-height:30px;
border-radius:15px;}

}
*/

/* index04 ============ */

.index04 {
line-height:1.7;}
.index0401 , .index0402 {
position:relative;
z-index:2;
padding:90px 5%;}
.index0401::before , .index0402::before {
content:"";
position:absolute;
z-index:-1;
left:0;
top:0;
width:50%;
height:100%;
background:linear-gradient(-90deg,#d6e6ae, #ebf3d8);}
.index0402::before {
left:50%;
background:linear-gradient(90deg,#d6e6ae, #ebf3d8);}
.index04 h3 {
margin:0 0 0.5em 0;
font-size:204%;
line-height:1.2;
font-weight:bold;}
.index04 h3 span {
margin:0 0 0 10px;
font-size:12px;
color:#81b826;
font-weight:normal;}
.index04 h4 {
font-family:"M PLUS 1",sans-serif;
margin:0 0 0.6em 0;
font-size:164%;
line-height:1.3;
font-weight:500;
letter-spacing:-0.02em;
color:#81b826;}
.index04 .btn {
font-family:"M PLUS 1",sans-serif;
position:absolute;
z-index:100;
bottom:0;
right:0;
width:130px;
height:130px;
transform:translate(20%,25%);}
.index04 .btn a {
position:relative;
display:block;
padding:41px 0 47px 0;
font-size:100%;
line-height:21px;
font-weight:500;
color:#81b826;
background:#fff;
white-space:nowrap;
border-radius:50%;
transition:background 0.25s;}
.index04 .btn a:hover {
background:#fc3;}
.index04 .btn a::before {
content:"";
position:absolute;
left:50%;
top:50%;
width:80%;
height:80%;
border-top:2px solid #81b826;
border-right:2px solid transparent;
border-bottom:2px solid #81b826;
border-left:2px solid transparent;
border-radius:50%;
transform:translate(-50%,-50%);}
.index04 .btn a::after {
content:"";
position:absolute;
left:50%;
bottom:35px;
width:24px;
height:5px;
border-bottom:1px solid #81b826;
border-right:2px solid #81b826;
transform:translate(-63%,0) skew(45deg);}

@media only screen and (max-width:1023px) {

.index0401 , .index0402 {
padding:0;}
.index0402-02 {
padding-bottom:9%;}
.index0401::before , .index0402::before {
display:none;}
.index04 .btn {
transform:translate(-20%,50%);}

}

@media only screen and (max-width:640px) {

.index04 h3 {
font-size:188%;}
.index04 h4 {
font-size:140%;}
.index04 h4 br {
display:none;}
.index04 .btn {
transform:translate(-5%,50%) scale(0.8);}

}

.index0401 ul {
justify-content:space-between;
width:100%;}
.index0401 ul li {
width:45%;}
.index0401 .img {
position:relative;
aspect-ratio:3 / 2;}
.index0401 .img img {
pointer-events:none;
object-fit:cover;
width:100%;
height:100%;}
.index0401 .txt {
text-align:left;
padding:40px 0 0 0;}
.index0402 .img {
position:relative;
margin:0 0 0 auto;
width:66.6666%;
height:500px;}
.index0402 .img img {
pointer-events:none;
object-fit:cover;
width:100%;
height:100%;}
.index0402 .txt {
text-align:left;
padding:40px 40px 40px 0;
position:absolute;
left:0;
top:50%;
width:48%;
background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,0.8));
transform:translate(0,-50%);}

@media only screen and (max-width:1023px) {

.index0401 ul li {
width:100%;}
.index0401 .img , .index0402 .img {
width:100%;
height:auto;
aspect-ratio:16 / 9;}
.index0401 .txt , .index0402 .txt {
margin:0 auto;
padding:45px 0 45px 0;
position:static;
width:90%;
max-width:640px;
background:none;
transform:translate(0,0%);}

}

.index-medical-time {
margin-top:70px;
padding:0 1.4em 1.4em;
background:#fff;
border-radius:25px;}
.index-medical-time .ttl {
display:flex;
align-items:center;
margin:0 auto;
width:40%;
max-width:120px;
background:#81b826;
aspect-ratio:1 / 1;
border-radius:50%;
transform:translate(0,-16.5%);}
.index-medical-time .ttl h3 {
width:100%;
font-size:124%;
line-height:1.4;
font-weight:bold;
white-space:nowrap;
color:#fff;
letter-spacing:-0.01em;}
.index-medical-time ul {
justify-content:space-between;}
.index-medical-time ul li {
text-align:left;
padding:1.6em 0 0 0;
width:48.5%;}
.index-medical-time ul li h4 {
margin-bottom:0.4em;
font-size:132%;
line-height:1.2;
font-weight:bold;}

@media only screen and (max-width:1023px) {

.index-medical-time {
margin-top:3%;
max-width:640px;}
.index-medical-time ul li {
width:100%;}

}
