/**
 * スマホ用設定
 */
@media ( width < 768px ) {

    .single-staff-main {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 90%;
    }

    .single-staff-fv {
        margin: 0 auto 8.0vw;
        padding: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8.0vw 0;
    }
    .single-staff-fv .pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        order: 1;
    }
    .single-staff-fv .pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 4.0vw;
    }
    .single-staff-fv .single-staff-info {
        margin: 0;
        padding: 0;
        width: 100%;
        order: 2;
    }
    .single-staff-fv .single-staff-info h2 {
        margin: 0;
        padding: 0;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 47 / 35 );
    }
    .single-staff-fv .single-staff-info .en-name {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 8.0vw;
        font-weight: 400;
        font-family: var(--font-alphabet);
        text-align: left;
        letter-spacing: 0.1em;
    }
    .single-staff-fv .single-staff-info .ja-name {
        margin: 0;
        padding: 0;
        font-size: 4.8vw;
        font-weight: 500;
        text-align: left;
    }
    .single-staff-fv .single-staff-info .attr {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.2vw;
        font-weight: 500;
        text-align: left;
    }

    .single-staff-box {
        margin: 8.0vw auto 0;
        padding: 4.0vw;
        width: 100%;
        background: #f7f7f7;
        border-radius: 2.0vw;
    }
    .single-staff-box .head {
        margin: 0;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 4.0vw;
    }
    .single-staff-box .head .no {
        color: #00b3aa;
        font-size: 8.0vw;
        font-weight: 600;
    }
    .single-staff-box .head .name {
        font-size: 4.0vw;
        font-weight: 400;
    }
    .single-staff-box h2 {
        margin: 0.8em 0;
        font-size: 6.0vw;
        font-weight: 700;
        line-height: calc( 46 / 34 );
    }
    .single-staff-box p {
        margin: 1.0em 0 0;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 34 / 16 );
    }

    .single-post-main {
        margin: 0 auto;
        padding: 12.0vw 5%;
        width: 100%;
        background: #fafafa;
    }

    .single-post-main .attr {
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0;
    }
    .single-post-main .attr .date {
        margin: 0;
        padding: 0 4.0vw 0 0;
        font-size: 3.2vw;
        font-weight: 400;
        font-family: var(--font-alphabet);
        letter-spacing: 0.1em;
    }
    .single-post-main .attr .cat {
        margin: 0;
        padding: 0 0 0 4.0vw;
        font-size: 3.6vw;
        font-weight: 400;
    }
    .single-post-main .attr .date + .cat {
        border-left: 1px solid #dadada;
    }

    .single-post-main h1 {
        margin: 0.5em 0;
        font-size: 6.0vw;
        font-weight: 500;
        line-height: calc( 46 / 33 );
        letter-spacing: 0.11em;
    }
    .single-post-main h2 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 5.2vw;
        font-weight: 500;
        line-height: calc( 36 / 28 );
        background: #fff;
        border-left: 4px solid var(--color-theme);
    }
    .single-post-main h3 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 4.8vw;
        font-weight: 500;
        line-height: calc( 36 / 23 );
        background: #f0f0f0;
    }
    .single-post-main h4 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 4.0vw;
        font-weight: 700;
        line-height: calc( 36 / 19 );
    }
    .single-post-main blockquote {
        margin: 8.0vw 0;
        padding: 4.0vw 4.0vw 4.0vw 12.0vw;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 26 / 16 );
        border: 1px solid #e5e5e5;
        background: url(../images/icon-blockquote.svg) no-repeat 4.0vw 4.0vw / 4.0vw auto, #fff;
    }
    .single-post-main figure {
        margin: 0;
        width: 100%;
        height: auto;
    }
    .single-post-main figure img {
        display: block;
        margin: 8.0vw 0;
        width: 100%;
        height: auto;
    }
    .single-post-main p {
        margin: 1.5em 0 0;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 30 / 16 );
    }
    .single-post-main ul {
        margin: 8.0vw 0 0 4.0vw;
        list-style: none;
    }
    .single-post-main ul li {
        margin: 0;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 26 / 16 );
        list-style: none;
    }
    .single-post-main ul li::before {
        content: "－ ";
        color: var(--color-theme);
        font-weight: 700;
        display: inline-block;
        width: 1em;
        margin-left: -1em;
    }
    .single-post-main ol {
        margin: 8.0vw 0 0 4.0vw;
    }
    .single-post-main ol li {
        margin: 0;
        padding-left: 0.5em;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 26 / 16 );
    }
    .single-post-main ol li::marker {
        color: var(--color-theme);
        font-family: var(--font-alphabet);
        font-weight: 600;
    }

    .single-prev-next {
        margin: 0 auto;
        padding: 12.0vw 5%;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
        gap: 2.0vw 0;
    }
    .single-prev-next .btn-prev {
        text-align: left;
    }
    .single-prev-next .btn-common {
        margin: 0 auto;
    }
    .single-prev-next .btn-next {
        text-align: right;
    }

    .btn-common {
        display: grid;
        place-items: center;
        margin: 8.0vw auto 0;
        padding: 0;
        width: 80%;
        max-width: 328px;
        height: auto;
        aspect-ratio: 328 / 60;
        color: var(--color-theme);
        font-size: 4.0vw;
        font-weight: 500;
        text-align: center;
        line-height: 1.0;
        background: #fff;
        border: 1px solid var(--color-theme);
        border-radius: 4.0em;
    }

}


/**
 * PC用設定
 */
@media ( width >= 768px ) {

    .single-staff-main {
        margin: 0 auto;
        padding: 80px 0;
        width: 90%;
        max-width: 1136px;
    }

    .single-staff-fv {
        margin: 0 auto 62px;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .single-staff-fv .pic {
        margin: 0;
        padding: 0;
        width: 55%;
        height: auto;
    }
    .single-staff-fv .pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 16px;
    }
    .single-staff-fv .single-staff-info {
        margin: 0;
        padding: 0;
        width: calc( 45% - 80px );
    }
    .single-staff-fv .single-staff-info h2 {
        margin: 0;
        padding: 0;
        font-size: 35px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 47 / 35 );
    }
    .single-staff-fv .single-staff-info .en-name {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 40px;
        font-weight: 400;
        font-family: var(--font-alphabet);
        text-align: left;
        letter-spacing: 0.1em;
    }
    .single-staff-fv .single-staff-info .ja-name {
        margin: 0;
        padding: 0;
        font-size: 16px;
        font-weight: 500;
        text-align: left;
    }
    .single-staff-fv .single-staff-info .attr {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 14px;
        font-weight: 500;
        text-align: left;
    }

    .single-staff-box {
        margin: 32px auto 0;
        padding: 40px;
        width: 100%;
        background: #f7f7f7;
        border-radius: 16px;
    }
    .single-staff-box .head {
        margin: 0;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 32px;
    }
    .single-staff-box .head .no {
        color: #00b3aa;
        font-size: 40px;
        font-weight: 600;
    }
    .single-staff-box .head .name {
        font-size: 18px;
        font-weight: 400;
    }
    .single-staff-box h2 {
        margin: 0.8em 0;
        font-size: 34px;
        font-weight: 700;
        line-height: calc( 46 / 34 );
    }
    .single-staff-box p {
        margin: 1.0em 0 0;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 34 / 16 );
    }

    .single-post-main {
        margin: 0 auto;
        padding: 80px max( 5% , calc( 50vw - 568px ) );
        width: 100%;
        background: #fafafa;
    }

    .single-post-main .attr {
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0;
    }
    .single-post-main .attr .date {
        margin: 0;
        padding: 0 20px 0 0;
        font-size: 14px;
        font-weight: 400;
        font-family: var(--font-alphabet);
        letter-spacing: 0.1em;
    }
    .single-post-main .attr .cat {
        margin: 0;
        padding: 0 0 0 20px;
        font-size: 16px;
        font-weight: 400;
    }
    .single-post-main .attr .date + .cat {
        border-left: 1px solid #dadada;
    }

    .single-post-main h1 {
        margin: 0.5em 0;
        font-size: 33px;
        font-weight: 500;
        line-height: calc( 46 / 33 );
        letter-spacing: 0.11em;
    }
    .single-post-main h2 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 28px;
        font-weight: 500;
        line-height: calc( 36 / 28 );
        background: #fff;
        border-left: 4px solid var(--color-theme);
    }
    .single-post-main h3 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 23px;
        font-weight: 500;
        line-height: calc( 36 / 23 );
        background: #f0f0f0;
    }
    .single-post-main h4 {
        margin: 1.5em 0 1.0em;
        padding: 0.2em 0.4em;
        font-size: 19px;
        font-weight: 700;
        line-height: calc( 36 / 19 );
    }
    .single-post-main blockquote {
        margin: 40px 0;
        padding: 20px 20px 20px 60px;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 26 / 16 );
        border: 1px solid #e5e5e5;
        background: url(../images/icon-blockquote.svg) no-repeat 20px 20px / 24px auto, #fff;
    }
    .single-post-main figure {
        margin: 0;
        width: 100%;
        height: auto;
    }
    .single-post-main figure img {
        display: block;
        margin: 40px 0;
        width: 100%;
        height: auto;
    }
    .single-post-main p {
        margin: 1.5em 0 0;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 30 / 16 );
    }
    .single-post-main ul {
        margin: 40px 0 0 20px;
        list-style: none;
    }
    .single-post-main ul li {
        margin: 0;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 26 / 16 );
        list-style: none;
    }
    .single-post-main ul li::before {
        content: "－ ";
        color: var(--color-theme);
        font-weight: 700;
        display: inline-block;
        width: 1em;
        margin-left: -1em;
    }
    .single-post-main ol {
        margin: 40px 0 0 24px;
    }
    .single-post-main ol li {
        margin: 0;
        padding-left: 0.5em;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 26 / 16 );
    }
    .single-post-main ol li::marker {
        color: var(--color-theme);
        font-family: var(--font-alphabet);
        font-weight: 600;
    }

    .single-prev-next {
        margin: 0 auto;
        padding: 80px max( 5% , calc( 50vw - 568px ) );
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .single-prev-next .btn-common {
        margin: 0;
    }

    .single-post-fv {
        margin: 0 auto 62px;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .single-post-fv .pic {
        margin: 0;
        padding: 0;
        width: 55%;
        height: auto;
    }
    .single-post-fv .pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 16px;
    }
    .single-post-fv .single-post-info {
        margin: 0;
        padding: 0;
        width: calc( 45% - 80px );
    }
    .single-post-fv .single-post-info h2 {
        margin: 0;
        padding: 0;
        font-size: 35px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 47 / 35 );
    }
    .single-post-fv .single-post-info .en-name {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 40px;
        font-weight: 400;
        font-family: var(--font-alphabet);
        text-align: left;
        letter-spacing: 0.1em;
    }
    .single-post-fv .single-post-info .ja-name {
        margin: 0;
        padding: 0;
        font-size: 16px;
        font-weight: 500;
        text-align: left;
    }
    .single-post-fv .single-post-info .attr {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 14px;
        font-weight: 500;
        text-align: left;
    }

    .single-post-box {
        margin: 32px auto 0;
        padding: 40px;
        width: 100%;
        background: #f7f7f7;
        border-radius: 16px;
    }
    .single-post-box .head {
        margin: 0;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 32px;
    }
    .single-post-box .head .no {
        color: #00b3aa;
        font-size: 40px;
        font-weight: 600;
    }
    .single-post-box .head .name {
        font-size: 18px;
        font-weight: 400;
    }
    .single-post-box h2 {
        margin: 0.8em 0;
        font-size: 34px;
        font-weight: 700;
        line-height: calc( 46 / 34 );
    }
    .single-post-box p {
        margin: 1.0em 0 0;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 34 / 16 );
    }

    .btn-common {
        display: grid;
        place-items: center;
        margin: 52px auto 0;
        padding: 0;
        width: 328px;
        height: auto;
        aspect-ratio: 328 / 60;
        color: var(--color-theme);
        font-size: 19px;
        font-weight: 500;
        text-align: center;
        line-height: 1.0;
        background: #fff;
        border: 1px solid var(--color-theme);
        border-radius: 4.0em;
    }

}
