@charset "utf-8";


/* ==================================================================
	about.css
	
=================================================================== */

/* --------------------------------
   □  intro
-------------------------------- */
#intro .title {
    padding: 30px 0 50px;
}
#intro .title h2 {
    color: #36353D;
    font-size: 9.5rem;
    text-transform: uppercase;
    position: relative;
}
    #intro .title h2 .op{
            opacity: 0.08;
        }
    #intro .title h2 .mincho {
        font-size: 3.1rem;
        letter-spacing: 0.04rem;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }
#intro .brackets {
    width: 100%;
    max-width: 1018px;
    margin: 0 auto;
	padding: 30px;
	position: relative;
}
    #intro .brackets:before,
    #intro .brackets:after {
        content: '';
        width: 30px;
        height: 30px;
        position: absolute;
    }
    #intro .brackets:before {
        border-left: solid 1px #36353D;
        border-top: solid 1px #36353D;
        top: 0;
        left: 0;
    }
    #intro .brackets:after {
        border-right: solid 1px #36353D;
        border-bottom: solid 1px #36353D;
        bottom: 0;
        right: 0;
    }
    #intro .brackets .text {
        font-size: 2.2rem;
        letter-spacing: 0.1rem;
        line-height: 2;
        text-align: center;
    }

/* --------------------------------
   □  commitment
-------------------------------- */
#commitment {
    padding-bottom: 0;
}
#commitment ul.list li {
    width: 31.59%;
    max-width: 388px;
}
#commitment ul.list li dd {
    padding: 60px 24px;
    position: relative;
}
    #commitment ul.list li dd .circle {
        width: 64px;
        height: 64px; 
        background-color: #2D2853;
        border: 1px solid #3F3A65;
        border-radius: 50%;
        margin: 0 auto;
        text-align: center;
        line-height: 64px;
        color: #fff;
        font-size: 2.5rem;
        filter: drop-shadow(0px 8px 32px rgba(0,0,0,0.2));
        position: absolute;
        left: 30px;
        top: -30px;
    }
    #commitment ul.list li dd .ttl {
        font-size: 2.2rem;
        margin-bottom: 16px;
    }
    #commitment ul.list li dd .text {
        font-size: 1.5rem;
        line-height: 1.8;
    }

/* --------------------------------
   □  doctors
-------------------------------- */
    #doctors section.subSection:last-of-type {
        padding-top: 50px;
    }
    #doctors .flexbox + .flexbox {
        margin-top: 50px;
    }
    #doctors .flexbox figure {
        width: 42.75%;
        max-width: 525px;
    }
    #doctors .flexbox .titleArea {
        min-width: 630px;
        width: 51.30%;
    }
        #doctors h4 {
            font-size: 2.6rem;
            margin-bottom: 30px;
        }
            #doctors h4 .pos {
                display: block;
                font-size: 1.4rem;
                margin-bottom: 20px;
            }
            #doctors h4 .en {
                font-size: 1.4rem;
                padding-left: 10px;
            }
        #doctors p.text {
            font-size: 1.8rem;
            line-height: 1.8;
            margin-bottom: 0;
        }
        #doctors p.text._s {
            font-size: 1.5rem;
        }
#doctors .graybox {
    padding: 60px 70px;
}
    #doctors .graybox h4 {
        font-size: 2.4rem;
        margin-bottom: 20px;
    }
    #doctors .graybox li {
        font-size: 1.5rem;
        line-height: 1.8;
    }

/* --------------------------------
   □  facility
-------------------------------- */
#facility {
    padding-bottom: 200px;
}

/* ◆ slickSlider
-------------------------------- */
ul.slickSlider {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
.slick-list {
    max-height: 616px;
}
ul.slickSlider li {
    margin-right: 2vw;
    margin-left: 2vw;
}
ul.slickSlider li p {
    margin-bottom: 0;
}
ul.slickSlider li img {
    display: block;
    width:100%;
}
ul.slickSlider .prev-arrow,
ul.slickSlider .next-arrow {
    width: 64px;
    height: 64px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
    ul.slickSlider .prev-arrow:hover,
    ul.slickSlider .next-arrow:hover {
        opacity: 0.7;
        cursor:pointer;
        transition: all 300ms 0s ease;
    }
    ul.slickSlider .prev-arrow {
        left: 25vw;
    }
    ul.slickSlider .next-arrow {
        right: 25vw;
    }
ul.slickSlider .slick-dots {
    bottom: -40px;
    z-index: 10;
}
    ul.slickSlider .slick-dots li {
        margin: 0 10px 0 0;
        height: 12px;
        width: 12px;
    }
    ul.slickSlider .slick-dots li button {
        padding: 0;
        height: 12px;
        width: 12px;
    }
    ul.slickSlider .slick-dots li button:before {
        font-size: 30px;
        line-height: 12px;
        width: 12px;
    }


@media (max-width: 1300px) and 
(min-width: 768px) {
    /* --------------------------------
    □  commitment
    -------------------------------- */
    #commitment ul.list li {
        width: 31.59%;
        max-width: inherit;
    }

    /* --------------------------------
    □  doctors
    -------------------------------- */
    #doctors .flexbox .titleArea {
        min-width: inherit;
    }
    #doctors .graybox div:first-child{
        margin-right: 4%;
    }

}


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

    /* --------------------------------
    □  intro
    -------------------------------- */
    #intro .title {
        padding: 0 0 30px;
    }
    #intro .title h2 {
        font-size: 5rem;
    }
    #intro .title h2 .mincho {
        font-size: 2.4rem;
        width: 100%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
    #intro .brackets {
        padding: 4%;
    }
    #intro .brackets .text {
        font-size: 1.8rem;
    }

    /* --------------------------------
    □  commitment
    -------------------------------- */
    #commitment {
        padding-bottom: 30px;
    }
    #commitment ul.list li {
        max-width: inherit;
    }
    #commitment ul.list li dt img {
        width: 100%;
    }
    #commitment ul.list li dd {
        padding: 30px 0;
    }
        #commitment ul.list li:nth-child(5) dd {
            padding-bottom: 0;
        }
    #commitment ul.list li dd .circle {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 2rem;
        left: 20px;
        top: -20px;
    }
    #commitment ul.list li dd .ttl {
        font-size: 1.8rem;
    }

    /* --------------------------------
    □  doctors
    -------------------------------- */
    #doctors .flexbox {
        margin-bottom: 30px;
    }
    #doctors .flexbox figure {
        max-width: inherit;
        margin-bottom: 30px;
    }
        #doctors .flexbox figure img {
            width: 100%;
        }
    #doctors .flexbox .titleArea {
        min-width: inherit;
    }
        #doctors h4 {
            font-size: 2.4rem;
            margin-bottom: 20px;
        }
        #doctors h4 .pos {
            margin-bottom: 10px;
        }
        #doctors p.text {
            font-size: 1.5rem;
        }
    #doctors .flexbox + .flexbox {
        margin-top: 30px;
    }
    #doctors .graybox {
        padding: 30px 4%;
    }
        #doctors .graybox div + div {
            margin-top: 30px;
        }
    #doctors section.subSection:last-of-type {
        padding-top: 20px;
    }
        #doctors section.subSection:last-of-type .flexbox {
            margin-bottom: 0;
        }

    /* --------------------------------
    □  facility
    -------------------------------- */
    #facility {
        padding-bottom: 80px;
    }
    
    /* ◆ slickSlider
	-------------------------------- */
    ul.slickSlider {
        margin: 0 auto;
        height: auto;
    }
    ul.slickSlider li {
        width: 100%;
        margin: 0 auto 20px;
    }


}
