@charset "UTF-8";
.greeting{
    margin-top: 5rem;
    .greeting_wrap{
        display: flex;
    }
    .greeting_contents,.greeting_img{
        width: 50%;
    }
    .greeting_contents{
        margin-top: 10rem;
    }
    .contents_text{
        font-size: 1.6rem;
    }
    p+p{
        margin-top: 2rem;
    }
}
@media screen and (max-width: 1000px) {
    .greeting{
        margin-top: 1rem;
        .greeting_wrap{
            flex-direction: column;
        }
        .greeting_contents,.greeting_img{
            width: 100%;
        }
        .greeting_contents{
            margin-top: 2rem;
        }
    }
}
.doctor{
    margin-top: 14rem;
    .doctor_img{
        position: relative;
        z-index: 0;
    }
    .doctor_bg{
        position: relative;
        z-index: 1;
        margin-top: -16rem;
        padding-top: 6rem;
        background: url('../../img/about/doctor_bg.png') no-repeat center top /cover;
    }
    .p_ttl+p{
        text-align: center;
        margin-top: 4rem;
    }
    .doctor_wrap{
        display: flex;
        margin-top: 8rem;
        gap: 0 2rem;
    }
    .doctor_icon{
        margin-right: 3rem;
        img{
                width: calc(176/2*0.1rem);
        }
    }
    .doctor_img{
        width: 51%;
    }
    .doctor_contents{
        width: 49%;
        /* padding-top: 8rem; */
    }
    .doctor_contents+.doctor_contents{
        margin-top: 8rem;
    }
    .doctor_name{
        display: flex;
        /* align-items: center; */
    }
    dt{
        span{
            display: block;
        }
        span+span{
            margin-top: 1rem;
        }
    }
    .name_position{
        font-size: 1.5rem;
    }
    .name_kanji{
        font-size: 2.6rem;
    }
    .name_kana{
        font-size: 1.7rem;
        color: var(--main-c);
    }
    h3{
        font-size: 2.1rem;
        margin-top: 4rem;
        span{
            display: inline-block;
            padding-bottom: 0.4rem;
            border-bottom: 2px dashed var(--main-c);
        }
    }
    h4{
        margin-top: 4rem;
        font-size: 1.8rem;
        color: var(--main-c);
    }
    h4+.contents_text{
        margin-top: 1.5rem;
    }
    li{
        line-height: 2;
        span{
            color: var(--main-c);
            font-size: 1rem;
            vertical-align: middle;
            padding-right: 0.5em;
        }
        margin-left: 1em;
        text-indent: -1.5em;
    }           
}
@media screen and (max-width: 1000px) {
    .doctor{
        margin-top: 5rem;
        .doctor_bg{
            margin-top: -5rem;
            padding-top: 6rem;
            background: url('../../img/about/sp_doctor_bg.png') no-repeat center top /100% 100%;
            position: relative;
            &::after{
                position: absolute;
                bottom: 0;
                left: 0;
                width: 100%;
                height: 19.5rem;
                background: url('../../img/about/sp_line.svg') no-repeat center/auto 100%;
                z-index: 1;
                content: '';
                transform: translateY(50%);
            }
        }
        .p_ttl+p{
            text-align: center;
            margin-top: 3rem;
            font-size: 1.6rem;
        }
        .doctor_wrap{
            flex-direction: column;
            margin-top: 4rem;
        }
        .doctor_img{
            width: 100%;
        }
        .doctor_contents{
            width: 100%;
            padding-top: 4rem;
        }
        .doctor_contents+.doctor_contents{
            margin-top: 4rem;
        }
        .doctor_icon{
            width: 10rem;
        }
        .name_position{
            font-size: 1.2rem;
        }
        .name_kanji{
            font-size: 2rem;
            margin-top: 0.4rem;
        }
        .name_kana{
            font-size: 1.3rem;
            margin-top: 0.4rem;
        }
        h3{
            font-size: 1.6rem;
            line-height: 2.3;
            margin-top: 0;
            span{
                padding-bottom: 0;
                border-bottom: 0.1rem dashed var(--main-c);
            }
        }
        h4{
            margin-top: 3rem;
            font-size: 1.44rem;
        }
        h4+ul{
            margin-top: 0.8rem;
        }
        li{
            font-size: 1.2rem;
            line-height: 2;
            span{
                color: var(--main-c);
                font-size: 1rem;
                vertical-align: middle;
                padding-right: 0.5em;
            }
        }
    }
}
.column02_wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 14rem;
    .doctor_contents:nth-of-type(odd){
        width: 48%;
        margin-top: 8rem;
    }
    .doctor_contents:nth-of-type(even){
        width: 46%;
    }
    h3{
        span{
        width: fit-content;
        }
    }
    .name_kanji,.name_kana{
        display: inline-block;
    }
    .name_kana{
        margin-left: 1em;
    }
}
@media screen and (max-width: 1000px) {
    .column02_wrap{
        flex-direction: column;
        padding-bottom: 14rem;
        margin-top: 4rem;
        
        .doctor_contents:nth-of-type(odd){
            width: 100%;
        }
        .doctor_contents:nth-of-type(even){
            width: 100%;
        }
        h3{
            span{
                width: fit-content;
                display: inline;
            }
        }
        .name_kanji,.name_kana{
            display: block;
        }
        .name_kana{
            margin-left: 0;
        }
    }
}
.history{
    margin-top: 9rem;
    ul{
        margin: 5rem auto 0;
        width: 52rem;
    }
    dl{
        display: flex;
        align-items: baseline;
    }
    dt{
        width: 15rem;
        font-weight: 500;
        color: var(--main-c);
    }
    dd{
        span{
            color: var(--main-c);
            font-size: 1rem;
            vertical-align: middle;
            padding-right: 0.5em;
            padding-bottom: 0.6rem;
            display: inline-block;
        }
        ul{
            width: auto;
        }
        li{
            text-indent: -1em;
            margin-left: 1em;
        }
    }
    li+li{
        margin-top: 2rem;
    }
}
@media screen and (max-width: 1000px) {
    .history{
        margin-top: 5rem;
        ul{
            margin: 3rem auto 0;
            width: 33rem;
        }
        dl{
            display: flex;
            font-size: 1.3rem;
        }
        dt{
            width: 10rem;
        }
        dd{
            width: calc(100% - 10rem);

        }
        li+li{
            margin-top: 1rem;
        }

        dd span{

            font-size: 0.8rem;
        }
    }
}
.philosophy{
    margin-top: 7rem;
    border-radius: 20px;
    h2{
        padding-top: 4rem;
    }
    h2+p{
        margin-top: 3rem;
        font-size: 2.3rem;
        color: var(--main-c);
        font-weight: 500;
        text-align: center;
        padding-bottom: 8rem;
    }
    h2+ul{
        margin-top: 3rem;
        font-size: 1.9rem;
        line-height: 2;
        color: var(--main-c);
        font-weight: 500;
        span{
            color: var(--main-c);
            font-size: 1rem;
            vertical-align: middle;
            padding-right: 0.5em;
        }
    }
    li{
        margin-left: 1em;
        text-indent: -1em;
    }
    .philosophy_inr{
        border-radius: 40px;
        background: url('../../img/about/philosophy_bg.jpg') no-repeat center/cover;
    }
    ul{
        margin-left: 10rem;
        padding-bottom: 5.8rem;
    }
}
@media screen and (max-width: 1000px) {
    .philosophy{
        margin-top: 4rem;
        border-radius: 20px;
        h2{
            padding-top: 3.4rem;
        }
        h2+p{
            margin-top: 1rem;
            font-size: 1.7rem;
            padding-bottom: 3rem;
        }
        h2+ul{
            margin-top:  3.4rem;
            font-size: 1.5rem;
            padding-right: 1em;
            span{
                color: var(--main-c);
                font-size: 0.8rem;
                vertical-align: middle;
                padding-right: 0.5em;
            }
        }
        .philosophy_inr{
            border-radius: 20px;
            background: url('../../img/about/philosophy_bg.jpg') no-repeat center/cover;
        }
        ul{
            margin-left: 1em;
            padding-bottom: 3.4rem;
        }
        li+li{
            margin-top: 1rem;
        }
    }
}
.partner{
    margin: 6rem auto;
    h2+div{
        margin-top: 3rem;
        font-size: 1.9rem;
        line-height: 2;
        font-weight: 500;
    }
    li{
        span{
            color: var(--main-c);
            font-size: 1rem;
            vertical-align: middle;
            padding-right: 0.5em;
            padding-bottom: 0.6rem;
            display: inline-block;
        }
    }
    .partner_wrap{
        display: flex;
        justify-content: center;
        gap: 0 4rem;
    }
}
.dx-info {
  margin: 12rem auto 5rem;
  h2.p_ttl {
    margin-bottom: 2.5rem;
  }
  p {
    display: block;
    width: 80%;
    line-height: 2.8rem;
    margin: 2rem auto 0;
  }
  ul {
    display: block;
    width: 80%;
    margin: 3rem auto 0;
    padding-left: 2.5rem;
    li {
      span {
        color: var(--main-c);
        font-size: 1rem;
        vertical-align: middle;
        padding-right: 0.5em;
      }
    }
  }
}
@media screen and (max-width: 1000px) {
    .partner{
        margin-top: 4rem;
        h2+div{
            margin-top: 3rem;
            font-size: 1.9rem;
            line-height: 2;
            font-weight: 500;
        }
        li{
            font-size: 1.4rem;
            span{
                color: var(--main-c);
                font-size: 1rem;
                vertical-align: middle;
                padding-right: 0.5em;
            }
        }
        .partner_wrap{
            flex-direction: column;
            gap: 0;
        }
    }
    .dx-info {
      margin: 8rem auto 3rem;
      p {
        width: 95%;
        line-height: 2.5rem;
      }
      ul {
        width: 90%;
        margin: 2rem auto 0;
        padding: 0;
        li {
          text-indent: -1rem;
          padding-left: 1rem;
          line-height: 1.8rem;
          margin-bottom: 1.5rem;
          span {
            color: var(--main-c);
            font-size: 1rem;
            vertical-align: middle;
            padding-right: 0.5em;
          }
        }
      }
    }
}