@charset "UTF-8";



/*---------------------------------------------------------
 Specialist
---------------------------------------------------------*/
.specialist {
    .c-title--enjp {
        .c-hdg--deco {
            margin-top: -0.43em;
        }
    }
}

/* Specialist - spec-box
-----------------------------------------------*/
.spec-box {
    position: relative;
    padding-top: min(10%, 120px);
    margin-bottom: min(10%, 120px);

    &:first-child {
        padding-top: 1px;
    }
    &::before {
        position: absolute;
        content: "";
        background: linear-gradient(to bottom, var(--color-bei), transparent);
        width: 100vw;
        height: 640px;
        inset: 0 0 auto 0;
        margin-inline: calc(50% - 50vw);
        z-index: -1;
    }

    .c-prof {
        & dt {
            position: relative;
            padding-left: 1.4em;
        }
        & dt::before {
            position: absolute;
			display: block;
			content: "";
			background-color: currentColor;
			width: 1px;
			height: 1.1em;
            transform-origin: left bottom;
			rotate: 35deg;
			left: 0;
			top: 0;
        }
    }
}


.spec-box__record {
    margin: 5% auto 4%;
    
    & dl {
        position: relative;
        display: flex;
        align-items: center;
        column-gap: .2em;
        font: var(--font-min);
        font-size: min(2.2vw,179%);
        line-height: 1.4;
        letter-spacing: .1em;
        white-space: nowrap;
    }
    & dd {
        font-size: 114%;

        > span {
            position: relative;
            color: var(--color-taq);
            font: var(--font-en);
            font-size: 285%;
            letter-spacing: normal;
            vertical-align: -0.1em;
            margin-right: .1em;

            &::before {
                position: absolute;
                content: "";
                background: url(../../images/reason/expert-dentist/path-underline.svg) no-repeat center bottom;
                background-size: 100% 100%;
                width: calc(100% + 0.2em);
                height: 0.45em;
                inset: auto auto 0.12em 50%;
                translate: -50% 0;
                z-index: -1;
            }
            &.is-lg::before {
                background-image: url(../../images/reason/expert-dentist/path-underline-lg.svg);
            }
        }
    }
}
.spec-box__img {
    position: relative;

    > img {
        clip-path: polygon(0 0, 100% 0, 75% 100%, 0 100%);
    }
    .c-txt--ccl {
        position: absolute;
		color: #FFF;
        /* font-size: min(2.2vw,194%); */
		font-size: min(5.5cqw);
		background: linear-gradient(to right, rgb(252 199 233 / 0.8), rgb(180 190 255 / 0.8));
		width: min(7em);
		min-width: 7em;
		right: 0;
		bottom: 8%;
        
        > p {
            > span {
                font-size: 78%;
                letter-spacing: normal;
            }
        }
        &:nth-child(3) {
            right: 34%;
        }
    }
}
.spec-box__main {
    .spec-box__img {
        container-type: inline-size;
    }
}
.spec-box__sub {
    .spec-box__img {
        > img {
            clip-path: polygon(0 0, 100% 0, 100% 100%, 25% 100%);
        }
    }
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

.spec-box__inner {
    width: 94%;
    max-width: 1350px;
    margin-bottom: min(8%,70px);

    .spec-box__img {
        width: 45%;
    }
}

.spec-box__main {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    .spec-box__txt {
        width: 52%;
    }
}
.spec-box__sub {
    margin-left: auto;

    .spec-box__img {
        margin-left: 0;
    }
    .spec-box__txt {
        padding-right: 5%;
    }
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.spec-box {
    padding-top: 12%;
    margin-bottom: 12%;

    &::before {
        height: 640px;
    }

    .c-brac-wrap {
        margin: 5% auto 4%;
        
        & dl {
            font-size: 105%;
            letter-spacing: .1em;
        }
    }
}
.spec-box__inner {
    width: 100%;
    margin-bottom: 10%;
}
.spec-box__img {
    width: 90%;
    margin-bottom: 6%;
}
.spec-box__txt {
    padding: 0 5%;
}

.spec-box__sub {
    .spec-box__img {
        margin-left: auto;
        margin-right: 0;
    }
}
}



/*---------------------------------------------------------
 
---------------------------------------------------------*/
.c-chk-list {
    font: var(--font-min);
    margin: 4% auto;

    > li {
        height: 6.4em;
        background-color: #f0ee6f;
        border-radius: 0;

        &::before {
            width: 1.6em;
            height: 1.2em;
        }
    }
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

.c-chk-list {
    column-gap: 3.7%;
    font-size: min(2.6vw,1.76rem);

    > li {
        width: 12.5em;
    }
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.c-chk-list {
    margin: 7% auto;
}
}



/*---------------------------------------------------------

---------------------------------------------------------*/

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

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

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


}