.c-company__txt--bg {
    color: #fff;
    font-size: 150px;
    font-weight: 800;
    line-height: .8;
    opacity: .6;
    position: absolute;
}

.c-company__head {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .12em;
}

@media screen and (max-width: 900px) {
    .c-company__txt--bg {
        font-size: 80px;
    }

    .c-company__head {
        font-size: 24px;
    }
}

/*===========================================================================*/
/*  profile  */
/*===========================================================================*/
.p-profile {
    position: relative;
    padding-top: 120px;
    padding-bottom: 110px;
}

.p-profile::before {
    background-color: #303135;
    content: '';
    height: 1px;
    left: 50%;
    position: absolute;
    bottom: 0;
    width: calc(100% - 80px);
    transform: translate(-50%, 0);
    max-width: 1240px;
}

.p-profile__bg {
    border-radius: 100vh;
    opacity: 0.3;
    background: #FFE294;
    filter: blur(150px);
    width: 535px;
    height: 535px;
    bottom: -165px;
    right: calc(50% + 465px);
    position: absolute;
}

.p-profile__bgTxt {
    position: absolute;
    left: -13px;
    top: 91px;
}

.p-profile__inner {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
}

.p-profile__head {
    width: 264px;
}

.p-profile__table {
    width: calc(100% - 264px);
    max-width: 853px;
    margin-top: -23px;
}

.p-profile__table dl {
    padding: 30px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: #cbcbcb solid 1px;
}

.p-profile__table dl dt {
    width: 163px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: .12em;
}

.p-profile__table dl dd {
    width: calc(100% - 163px);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: .12em;
}

.p-profile__table dl dd li {
    position: relative;
    padding-left: 16px;
}
.p-profile__table dl dd li::before {
    content: '・';
    left: 0;
    position: absolute;
    top: 0;
}

@media screen and (max-width: 900px) {
    .p-profile {
        padding-top: 46px;
        padding-bottom: 0;
    }

    .p-profile::before {
        display: none;
    }

    .p-profile__bg {
        display: none;
    }

    .p-profile__bgTxt {
        left: -10px;
        top: 34px;
    }

    .p-profile__inner {
        display: block;
    }

    .p-profile__head {
        width: 100%;
    }

    .p-profile__table {
        width: 100%;
        margin-top: 27px;
    }

    .p-profile__table dl {
        padding: 18px 0;
        display: block;
    }

    .p-profile__table dl dt {
        width: 100%;
        font-size: 15px;
    }

    .p-profile__table dl dd {
        width: 100%;
        font-size: 15px;
        margin-top: 5px;
    }

    .p-profile__table dl dd li {
        padding-left: 15px;
    }
}

/*===========================================================================*/
/*  history  */
/*===========================================================================*/
.p-history {
    position: relative;
    z-index: 2;
    padding-top: 64px;
}

.p-history__bgTxt {
    top: 36px;
    left: -13px;
}

.p-history__inner {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
}

.p-history__head {
    width: 264px;
}

.p-history__table {
    width: calc(100% - 264px);
    max-width: 853px;
    padding-top: 6px;
}

.p-history__table dl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    padding-bottom: 35px;
    z-index: 2;
}
.p-history__table dl:last-of-type {
    padding-bottom: 0;
}

.p-history__table dl::before {
    content: '';
    height: calc(100% - 20px);
    left: 13.5px;
    position: absolute;
    top: 50%;
    width: calc(100% - 14px);
    z-index: -1;
    border-left: #b1b1b1 dashed 1px;
}
.p-history__table dl:last-of-type:before {
    display: none;
}

.p-history__table dl dt {
    width: 178px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .12em;
    position: relative;
    padding-left: 45px;
}
.p-history__table dl dt::before {
    background: url('../img/company/dot.svg') no-repeat center center/contain;
    content: '';
    height: 28px;
    left: 0;
    position: absolute;
    top: -1px;
    width: 28px;
}

.p-history__table dl dd {
    width: calc(100% - 178px);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: .12em;
}

@media screen and (max-width: 900px) {
    .p-history {
        padding-top: 72px;
    }

    .p-history__bgTxt {
        top: 60px;
        left: -10px;
    }

    .p-history__inner {
        display: block;
    }

    .p-history__head {
        width: 100%;
    }

    .p-history__table {
        width: 100%;
        padding-top: 47px;
    }

    .p-history__table dl {
        display: block;
        padding-bottom: 20px;
    }

    .p-history__table dl::before {
        content: '';
        height: calc(100% - 10px);
        left: 13.5px;
        position: absolute;
        top: 14px;
        width: calc(100% - 14px);
        z-index: -1;
        border-left: #b1b1b1 dashed 1px;
    }
    .p-history__table dl:last-of-type:before {
        display: none;
    }

    .p-history__table dl dt {
        width: 100%;
        font-size: 16px;
    }
    .p-history__table dl dt::before {
        top: -2px;
    }

    .p-history__table dl dd {
        width: 100%;
        padding-left: 45px;
        font-size: 14px;
        margin-top: 8px;
    }
}

/*===========================================================================*/
/*  access  */
/*===========================================================================*/
.p-access {
    position: relative;
    padding-top: 180px;
    padding-bottom: 120px;
}

.p-access__bg {
    border-radius: 100vh;
    opacity: 0.2;
    background:#FFE294;
    filter: blur(150px);
    width: 535px;
    height: 535px;
    bottom: -96px;
    right: calc(50% + 387px);
    position: absolute;
}

.p-access__bgTxt {
    top: 144px;
    left: -13px;
}

.p-access__inner {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
}

.p-access__txts {
    width: 264px;
}

.p-access__txt {
    margin-top: 24px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
}

.p-access__contents {
    width: calc(100% - 264px);
    max-width: 853px;
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.p-access__content--img {
    overflow: hidden;
    border-radius: 30px;
}

.p-access__content--head {
    margin-top: 20px;
    position: relative;
    padding-left: 36px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .12em;
}
.p-access__content--head::before {
    background-color: #45C0A8;
    content: '';
    height: 3px;
    left: 0;
    position: absolute;
    top: 17px;
    width: 21px;
}

.p-access__content--txt {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
}

.p-access__content--table {
    margin-top: 18px;
    padding: 18px 0;
    border-top: #acacac dashed 1px;
    border-bottom: #acacac dashed 1px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.p-access__content--table dl {
    display: flex;
    justify-content: space-between;
}

.p-access__content--table dl dt {
    width: 78px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .02em;
}
.p-access__content--table.--02 dl dt {
    width: 198px;
}

.p-access__content--table dl dd {
    width: calc(100% - 78px);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: .02em;
}
.p-access__content--table.--02 dl dd {
    width: calc(100% - 198px);
}

.p-access__content--btns {
    margin-top: 21px;
    display: flex;
    gap: 38px;
}

@media screen and (max-width: 900px) {
    .p-access {
        padding-top: 72px;
        padding-bottom: 32px;
    }

    .p-access__bg {
        display: none;
    }

    .p-access__bgTxt {
        top: 60px;
        left: -10px;
    }

    .p-access__inner {
        display: block;
    }

    .p-access__txts {
        width: 100%;
    }

    .p-access__txt {
        margin-top: 16px;
        line-height: 1.8;
    }

    .p-access__contents {
        width: 100%;
        margin-top: 30px;
    }

    .p-access__content--img {
        border-radius: 20px;
    }

    .p-access__content--head {
        margin-top: 15px;
        padding-left: 30px;
        font-size: 18px;
    }
    .p-access__content--head::before {
        height: 3px;
        top: 13px;
        width: 18px;
    }

    .p-access__content--txt {
        margin-top: 12px;
        line-height: 1.8;
    }

    .p-access__content--table {
        margin-top: 20px;
        padding: 20px 0;
        gap: 12px;
    }
    .p-access__content--table.--02 {
        border-bottom: none;
        padding-bottom: 0;
    }

    .p-access__content--table dl {
        display: block;
    }

    .p-access__content--table dl dt {
        width: 100%;
        font-size: 15px;
        line-height: 1.55;
    }
    .p-access__content--table.--02 dl dt {
        width: 100%;
    }

    .p-access__content--table dl dd {
        width: 100%;
        font-size: 15px;
        line-height: 1.55;
        letter-spacing: .12em;
        margin-top: 6px;
    }
    .p-access__content--table.--02 dl dd {
        width: 100%;
    }

    .p-access__content--btns {
        margin-top: 20px;
        flex-direction: column;
        gap: 15px;
    }
}