@charset "UTF-8";
.p_about03__list__label,
.p_about03__list__ttl .jp,
.p_about03__list__ttl .en,
.p_about03__list__txt,
.p_about06__list__label {
    font-family: "Oswald", sans-serif;
}

.p_about .c_ttl32 {
    font-size: 1.151875rem;
    letter-spacing: 0.22em;
}
.p_about01__head {
    position: relative;
    z-index: 1;
    padding: 2px 0 173px 0;
    margin-top: 20px;
}
.p_about01__head__img {
    height: 100%;
    position: absolute;
    left: 0;
    width: 100%;
    top: 0;
    z-index: 1;
    width: calc(100% + 54px);
    margin-left: -27px;
}
.p_about01__head__img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.p_about01__ttl {
    position: relative;
    z-index: 2;
    color: #fff;
    font-size: 1.24rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.7857862903;
    display: inline-block;
    font-feature-settings: "palt";
}
.p_about01__list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    padding-top: 20px;
    margin-bottom: 40px;
    display: none;
}
.p_about01__list__item {
    padding: 0 20px;
    position: relative;
    font-size: 0.885625rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.9004940014;
}
.p_about01__list__item::after {
    content: "";
    width: 1px;
    height: 100%;
    background-color: #fff;
    position: absolute;
    right: 0;
    top: 0;
}
.p_about01__list__item:last-child::after {
    display: none;
}
.p_about01__list__link.active {
    position: relative;
}
.p_about01__list__link.active::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #b40000;
    position: absolute;
    left: 0;
    bottom: -5px;
}
.p_about02 {
    background-color: #000;
    position: relative;
    z-index: 2;
    padding-top: 52px;
    padding-bottom: 54px;
}
.p_about02 .c_ttl32 {
    margin-bottom: 27px;
}
.p_about02__tbl__ttl {
    width: 100px;
    font-weight: 700;
    font-size: 0.885625rem;
    line-height: 1.6;
    letter-spacing: 0.07em;
    font-feature-settings: "palt";
    position: relative;
    padding: 10px 0 7px;
}
.p_about02__tbl__ttl::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
}
.p_about02__tbl__content {
    width: calc(100% - 100px);
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.04em;
    font-feature-settings: "palt";
    position: relative;
    padding: 9px 0 8px 9px;
    margin-right: -5px;
}
.p_about02__tbl__content::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #b3b3b3;
    position: absolute;
    left: 0;
    bottom: 0;
}
.p_about02__tbl__item {
    display: flex;
}
.p_about02__tbl__item:first-child .p_about02__tbl__ttl::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 0;
}
.p_about02__tbl__item:first-child .p_about02__tbl__content::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #b3b3b3;
    position: absolute;
    left: 0;
    top: 0;
}
.p_about03 {
    background: url(../images/common/bg_02.webp) no-repeat center;
    background-size: cover;
    padding: 38px 0 46px;
    position: relative;
    z-index: 2;
}
.p_about03 .c_ttl32 {
    margin-bottom: 26px;
}
.p_about03__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 26px 18px;
}
.p_about03__list__item {
    width: 100%;
    max-width: 150px;
}
.p_about03__list__img img {
    margin-bottom: -10px;
    aspect-ratio: 185/200;
    -o-object-fit: cover;
    object-fit: cover;
    margin-bottom: -20px;
}
.p_about03__list__label {
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.4;
    display: inline-block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    max-width: 100%;
    background-color: #b40000;
    padding: 3px 10px;
    margin-bottom: 4px;
}
.p_about03__list__ttl {
    text-align: center;
    margin-bottom: 3px;
}
.p_about03__list__ttl .jp {
    font-size: 1.063125rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: 1.4;
    display: block;
    margin-bottom: 1px;
}
.p_about03__list__ttl .en {
    font-size: 0.70875rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.4;
    display: block;
}
.p_about03__list__txt {
    font-size: 0.575625rem;
    font-weight: 500;
    letter-spacing: 0.033em;
    line-height: 1.3724212812;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    max-height: 52px;
    width: calc(100% - 15px);
}
.p_about04 {
    padding: 65px 0 37px 0;
    background: url(../images/about/bg_03.webp) no-repeat top center;
    background-size: cover;
    position: relative;
    z-index: 2;
}
.p_about04 .c_ttl32 {
    margin-bottom: 38px;
}
.p_about04__flex {
    margin-bottom: 30px;
}
.p_about04__flex__img {
    width: 240px;
    margin: 0 auto 32px auto;
}
.p_about04__flex__txt {
    font-size: 0.885625rem;
    letter-spacing: 0em;
    line-height: 1.9004940014;
    font-weight: 500;
    text-align: justify;
}
.p_about04__flex__txt .red {
    color: #b40000;
    text-decoration: underline;
    text-underline-offset: 5px;
}
.p_about04__img {
    max-width: 790px;
    margin: 0 auto;
    display: grid;
    grid-gap: 26px;
    padding-left: 20px;
    padding-right: 20px;
}
.p_about04__img img {
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 3/1.71;
}
.p_about05 {
    padding: 50px 0;
    background: url(../images/about/bg_04.webp) no-repeat bottom center;
    background-size: cover;
    position: relative;
    z-index: 2;
}
.p_about05 .c_ttl32 {
    margin-bottom: 40px;
}
.p_about05__img {
    margin-bottom: 34px;
    width: calc(100% + 20px);
    margin-left: -10px;
}
.p_about05__img img {
    aspect-ratio: 340/170;
    -o-object-fit: cover;
    object-fit: cover;
}
.p_about05__flex {
    max-width: 912px;
    margin: 0 auto;
}
.p_about05__flex__content {
    margin-bottom: 33px;
}
.p_about05__flex__img {
    display: grid;
    grid-gap: 26px;
    padding: 0 20px;
}
.p_about05__flex__img img {
    aspect-ratio: 280/160;
    -o-object-fit: cover;
    object-fit: cover;
}
.p_about05__flex__txt {
    font-size: 0.885625rem;
    letter-spacing: 0.033em;
    line-height: 1.9004940014;
    font-weight: 500;
}
.p_about05__flex__txt .red {
    color: #b40000;
    text-decoration: underline;
    text-underline-offset: 5px;
}
.p_about06 {
    padding: 34px 0 35px;
    background-color: #1a1a1a;
    position: relative;
    z-index: 2;
}
.p_about06 .c_ttl32 {
    margin-bottom: 41px;
}
.p_about06__list {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 9px;
}
.p_about06__list__img {
    position: relative;
}
.p_about06__list__label {
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.14em;
    text-align: center;
    min-width: 65px;
    display: inline-block;
    background-color: #b40000;
    position: absolute;
    left: 0;
    bottom: 2px;
    translate: 0 50%;
    padding: 3px 5px 2px;
}
.p_about06__list__content {
    padding-top: 20px;
}
.p_about06__list__ttl {
    font-size: 1.063125rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.06em;
    font-feature-settings: "palt";
    display: block;
    margin-bottom: 5px;
}
.p_about06__list__txt {
    font-size: 0.7975rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9435736677;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    max-height: 57px;
}
@media screen and (min-width: 768px) {
    .p_about .c_ttl32 {
        letter-spacing: 0.044em;
        font-size: clamp(1.32875rem, 2.076171875vw + 0.3321875rem, 1.993125rem);
    }
    .p_about01__head {
        margin-top: -6px;
        padding: 133px 0 126px 0;
    }
    .p_about01__head__img {
        width: 100%;
        margin-left: 0;
    }
    .p_about01__ttl {
        font-size: clamp(1.24rem, 3.044921875vw + -0.2215625rem, 2.214375rem);
        line-height: 1.800169348;
        letter-spacing: 0.085em;
    }
    .p_about01__list {
        display: flex;
        padding-top: 25px;
        margin-bottom: 75px;
    }
    .p_about01__list__item {
        padding: 0 clamp(0.9375rem, 3.3203125vw + -0.65625rem, 2rem);
        font-size: clamp(0.875rem, 0.865234375vw + 0.4596875rem, 1.151875rem);
        line-height: 2.0765056972;
    }
    .p_about01__list__item::after {
        height: calc(100% - 0.8em);
        top: 0.5em;
    }
    .p_about01__list__link.active::after {
        bottom: -10px;
    }
    .p_about02 {
        padding-top: 0;
        padding-bottom: 88px;
    }
    .p_about02 .c_ttl32 {
        margin-bottom: 37px;
    }
    .p_about02__tbl__ttl {
        font-size: clamp(0.885625rem, 1.107421875vw + 0.3540625rem, 1.24rem);
        padding: 18px 15px 15px
            clamp(1.5625rem, 3.3203125vw + -0.03125rem, 2.625rem);
        width: clamp(11.25rem, 7.8125vw + 7.5rem, 13.75rem);
    }
    .p_about02__tbl__content {
        letter-spacing: 0.07em;
        font-size: clamp(0.885625rem, 1.107421875vw + 0.3540625rem, 1.24rem);
        width: calc(100% - clamp(11.25rem, 7.8125vw + 7.5rem, 13.75rem));
        padding: 18px 15px 15px clamp(2.5rem, 5.859375vw + -0.3125rem, 4.375rem);
    }
    .p_about03 {
        padding: 80px 0 83px 0;
    }
    .p_about03 .c_ttl32 {
        margin-bottom: 40px;
    }
    .p_about03__list {
        gap: 26px clamp(0.9375rem, 0.5859375vw + 0.65625rem, 1.125rem);
    }
    .p_about03__list__item {
        max-width: 185px;
    }
    .p_about03__list__img img {
        margin-bottom: -14px;
    }
    .p_about03__list__label {
        margin-bottom: 8px;
        padding: 7px 7px;
        font-size: 0.75rem;
        letter-spacing: 0.34em;
    }
    .p_about03__list__ttl {
        margin-bottom: 9px;
    }
    .p_about03__list__ttl .jp {
        margin-bottom: 2px;
        font-size: clamp(1.063125rem, 0.552734375vw + 0.7978125rem, 1.24rem);
    }
    .p_about03__list__ttl .en {
        font-size: clamp(0.70875rem, 0.552734375vw + 0.4434375rem, 0.885625rem);
    }
    .p_about03__list__txt {
        max-height: clamp(3.625rem, 1.171875vw + 3.0625rem, 4rem);
        font-size: clamp(0.575625rem, 0.138671875vw + 0.5090625rem, 0.62rem);
        width: calc(100% - 16px);
        line-height: 1.5715725806;
    }
    .p_about04 {
        background: unset;
        padding: 125px 0 49px;
    }
    .p_about04 .c_ttl32 {
        margin-bottom: 80px;
    }
    .p_about04__flex {
        display: flex;
        margin-bottom: 70px;
    }
    .p_about04__flex__img {
        margin: 0;
        width: clamp(15.625rem, 16.2109375vw + 7.84375rem, 20.8125rem);
        padding-top: 6px;
    }
    .p_about04__flex__content {
        width: calc(
            100% - clamp(15.625rem, 16.2109375vw + 7.84375rem, 20.8125rem)
        );
        padding-left: clamp(2.5rem, 5.859375vw + -0.3125rem, 4.375rem);
    }
    .p_about04__flex__txt {
        letter-spacing: 0.033em;
        font-size: 1.151875rem;
        line-height: 2.0765056972;
    }
    .p_about04__flex__txt .red {
        text-underline-offset: 8px;
    }
    .p_about04__flex__txt .red:hover {
        text-decoration: none;
    }
    .p_about04__img {
        padding-left: 0;
        padding-right: 0;
        grid-gap: clamp(1.25rem, 2.5390625vw + 0.03125rem, 2.0625rem);
        grid-template-columns: 1fr 1fr;
    }
    .p_about04__img img {
        aspect-ratio: 281/163.53;
    }
    .p_about .bg01 {
        background: url(../images/about/bg_02.webp) no-repeat top center;
        background-size: cover;
    }
    .p_about05 {
        background: unset;
        padding: 50px 0 102px;
    }
    .p_about05 .c_ttl32 {
        margin-bottom: 48px;
    }
    .p_about05__img {
        width: 100%;
        margin-left: 0;
        margin-bottom: 50px;
    }
    .p_about05__img img {
        aspect-ratio: 1200/450;
    }
    .p_about05__flex {
        margin: 0 auto;
        display: flex;
        align-items: flex-start;
    }
    .p_about05__flex__content {
        margin-bottom: 0;
        width: calc(100% - clamp(15.625rem, 25vw + 3.625rem, 23.625rem));
        padding-right: clamp(1.875rem, 3.90625vw + 0rem, 3.125rem);
    }
    .p_about05__flex__img {
        padding: 0;
        grid-gap: 30px;
        width: clamp(15.625rem, 25vw + 3.625rem, 23.625rem);
        padding-top: 10px;
    }
    .p_about05__flex__img img {
        aspect-ratio: 378/220;
    }
    .p_about05__flex__txt {
        font-size: 1.151875rem;
        line-height: 2.0765056972;
    }
    .p_about05__flex__txt .red {
        text-underline-offset: 8px;
    }
    .p_about05__flex__txt .red:hover {
        text-decoration: none;
    }
    .p_about06 {
        padding: 70px 0 60px 0;
    }
    .p_about06 .c_ttl32 {
        margin-bottom: 50px;
    }
    .p_about06__list {
        grid-gap: clamp(2.5rem, 7.8125vw + -1.25rem, 5rem);
        grid-template-columns: 1fr 1fr;
    }
    .p_about06__list__label {
        min-width: 120px;
        bottom: 0;
        padding: 7px 20px 4px;
        font-size: 1.125rem;
    }
    .p_about06__list__content {
        padding-top: 35px;
    }
    .p_about06__list__ttl {
        margin-bottom: 14px;
        font-size: clamp(1.063125rem, 2.90625vw + -0.331875rem, 1.993125rem);
    }
    .p_about06__list__txt {
        max-height: 64px;
        font-size: clamp(0.7975rem, 1.107421875vw + 0.2659375rem, 1.151875rem);
        line-height: 1.7303309821;
    }
}
