/* =========================================
   About page
========================================= */

section.about-intro{
    padding:88px 0 112px;
}

.about-intro__title,
.about-section__title,
.about-contact__title{
    margin:0;
    font-family:"Times New Roman", serif;
    font-weight:400;
}

.about-intro__title{
    font-size:clamp(3.5rem, 7vw, 6rem);
    letter-spacing:-0.04em;
    line-height:1;
}

.about-intro__lead{
    max-width:650px;
    margin-top:72px;
    font-size:1.0625rem;
    line-height:2;
}

.about-intro__lead p + p{
    margin-top:28px;
}

section.about-philosophy,
section.about-profile,
section.about-office,
section.about-laile{
    padding:0;
}

.about-section{
    padding-top:80px;
    padding-bottom:80px;
    border-top:1px solid #e5e5e5;
}

.about-section__label{
    color:#777;
    font-family:"Times New Roman", serif;
    font-size:0.875rem;
    letter-spacing:0.12em;
    margin-bottom:12px;
}

.about-section__content{
    max-width:720px;
}

.about-section__title{
    font-size:clamp(2.5rem, 4.5vw, 4rem);
    letter-spacing:-0.03em;
    line-height:1.1;
}

.about-profile .about-section__title,
.about-office .about-section__title{
    font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
}

.about-section__text{
    margin-top:48px;
    color:#555;
    line-height:2;
}

.about-section__text p + p{
    margin-top:28px;
}

.about-profile__role{
    margin-top:32px;
    color:#555;
    font-size:0.9375rem;
}

.about-profile__name{
    margin-top:6px;
    font-size:1.5rem;
    font-weight:400;
    letter-spacing:0.08em;
}

.about-office__list{
    margin:48px 0 0;
    border-top:1px solid #e5e5e5;
}

.about-office__item{
    display:grid;
    grid-template-columns:160px minmax(0, 1fr);
    padding:22px 0;
    border-bottom:1px solid #e5e5e5;
}

.about-office__item dt{
    color:#777;
    font-size:0.875rem;
}

.about-office__item dd{
    margin:0;
    line-height:1.9;
}

.about-laile__description{
    margin-top:40px;
    color:#555;
    line-height:2;
}

.about-link{
    display:inline-flex;
    align-items:center;
    gap:16px;
    margin-top:32px;
    padding-bottom:6px;
    border-bottom:1px solid #222;
    font-family:"Times New Roman", serif;
    font-size:1.125rem;
}

section.about-contact{
    padding:112px 0;
    border-top:1px solid #e5e5e5;
    text-align:center;
}

.about-contact__message{
    color:#555;
    line-height:2;
}

.about-contact__title{
    margin-top:36px;
    font-size:clamp(3rem, 6vw, 5rem);
    letter-spacing:-0.03em;
    line-height:1;
}

.about-contact__title a{
    display:inline-flex;
    align-items:center;
    gap:24px;
}

@media (max-width:768px){

    section.about-intro{
        padding:56px 0 64px;
    }

    .about-intro__title{
        font-size:3.5rem;
    }

    .about-intro__lead{
        margin-top:48px;
        font-size:0.9375rem;
        line-height:1.9;
    }

    .about-intro__lead p + p{
        margin-top:22px;
    }

    .about-intro__lead br,
    .about-section__text br,
    .about-laile__description br{
        display:none;
    }

    .about-section{
        display:block;
        padding-top:56px;
        padding-bottom:56px;
    }

    .about-section__content{
        margin-top:24px;
    }

    .about-section__title{
        font-size:2.5rem;
    }

    .about-section__text{
        margin-top:32px;
        font-size:0.9375rem;
        line-height:1.9;
    }

    .about-section__text p + p{
        margin-top:22px;
    }

    .about-profile__role{
        margin-top:24px;
    }

    .about-profile__name{
        font-size:1.25rem;
    }

    .about-office__list{
        margin-top:32px;
    }

    .about-office__item{
        display:block;
        padding:18px 0;
    }

    .about-office__item dd{
        margin-top:6px;
        font-size:0.9375rem;
    }

    .about-laile__description{
        margin-top:28px;
        font-size:0.9375rem;
        line-height:1.9;
    }

    section.about-contact{
        padding:72px 0;
    }

    .about-contact__message{
        font-size:0.9375rem;
        line-height:1.9;
    }

    .about-contact__title{
        margin-top:28px;
        font-size:3rem;
    }

    .about-contact__title a{
        gap:16px;
    }
}
