/* TOP About Us：既存のHTML本文をPCでも表示 */
section.about {
    position: relative;
    padding: 5.6vw 0 8.2vw;
    background: linear-gradient(100deg,#030c37,#020719 65%,#03091b);
    color: #fff;
    isolation: isolate;
}
section.about::before {
    content: '';
    position: absolute;
    inset: 0 0 0 46%;
    z-index: -1;
    background: linear-gradient(90deg,#112b43 0%,#09131e 45%,#020609 75%,#04091a 100%);
    clip-path: polygon(9% 0,100% 0,100% 100%,0 100%);
    pointer-events: none;
}
section.about > .about-art { display: none; }
section.about > .about-content {
    position: relative;
    width: 86%;
    max-width: 1840px;
    height: auto;
    padding: 0;
    margin: 0 5% 0 9%;
    overflow: visible;
    clip: auto;
    clip-path: none;
    white-space: normal;
    border: 0;
    display: grid;
    grid-template-columns: minmax(0,44fr) minmax(0,46fr);
    column-gap: 10%;
    align-items: start;
}
section.about .about-content > div { min-width: 0; }
section.about .about-content h2 {
    font-family: Arial,sans-serif;
    font-size: clamp(54px,5.25vw,104px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.025em;
    margin: 0 0 14px;
}
section.about .about-content .lead {
    color: #4b94d6;
    font-size: clamp(22px,2.05vw,40px);
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .04em;
    margin: 0 0 18px;
}
section.about .about-content p {
    font-size: clamp(15px,1.07vw,21px);
    line-height: 1.8;
    letter-spacing: .015em;
}
section.about .about-content > div > p:not(.lead) { margin: 0; }
section.about .about-body { margin-top: 3.5vw; }
section.about .about-body p { margin: 0; }
section.about .about-body p + p { margin-top: 1.5em; }
section.about .values {
    min-width: 0;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 2vw;
}
section.about .values > div {
    display: grid;
    grid-template-columns: minmax(0,32fr) minmax(0,68fr);
    align-items: center;
    column-gap: 4%;
    margin: 0;
    min-width: 0;
}
section.about .values dt {
    min-width: 0;
    width: 100%;
    aspect-ratio: 917 / 896;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 6%;
    border: 0;
    border-radius: 0;
    background: url('images/top/about-ring.png') center / 100% 100% no-repeat;
    box-shadow: none;
    text-align: center;
}
section.about .values strong {
    display: block;
    width: 100%;
    color: #fff;
    font-family: Arial,sans-serif;
    font-size: clamp(17px,1.52vw,30px);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.3;
    white-space: nowrap;
}
section.about .values strong::first-letter { font-size: 1.65em; }
section.about .values small {
    display: block;
    font-size: clamp(14px,1.04vw,20px);
    line-height: 1.5;
    margin: 0;
}
section.about .values dd {
    min-width: 0;
    margin: 0;
    font-size: clamp(12px,1vw,21px);
    line-height: 1.8;
    letter-spacing: .015em;
    overflow-wrap: anywhere;
}
@media (max-width:1200px) and (min-width:901px) {
    section.about > .about-content { width:90%;margin:0 auto;grid-template-columns:1fr 1fr;column-gap:6%; }
    section.about .values > div { grid-template-columns:150px minmax(0,1fr); }
    section.about .values strong { font-size:17px; }
    section.about .about-content .lead { font-size:24px; }
}
@media (max-width:900px) {
    section.about { padding:70px 0; }
    section.about::before {
        inset: 40% 0 0 0;
        background: none;
    }
    section.about > .about-content { width:88%;max-width:720px;margin:0 auto;grid-template-columns:1fr;gap:45px; }
    section.about .about-content h2 { font-size:60px; }
    section.about .about-content .lead { font-size:25px; }
    section.about .about-content p { font-size:16px; }
    section.about .about-body { margin-top:35px; }
    section.about .values { gap:26px; }
    section.about .values > div { grid-template-columns:190px minmax(0,1fr);gap:24px; }
    section.about .values strong { font-size:23px; }
    section.about .values dd { font-size:16px; }
    section.about .values small { font-size:16px; }
}
@media (max-width:480px) {
    section.about .about-content h2 { font-size:52px; }
    section.about .about-content .lead { font-size:22px; }
    section.about .values > div { grid-template-columns:140px minmax(0,1fr);gap:16px; }
    section.about .values strong { font-size:16px; }
    section.about .values small { font-size:14px; }
    section.about .values dd { font-size:14px;line-height:1.8; }
}
@media (max-width:350px) {
    section.about .values > div { grid-template-columns:1fr;gap:15px; }
    section.about .values dt { width:170px;justify-self:center; }
    section.about .values dd { text-align:center; }
}
