@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
.l-wrapper {
    position: relative;
    overflow-x: hidden;
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: absolute;
    inset: 0;
    padding: 25px 38px 0 43px;
    height: -moz-fit-content;
    height: fit-content;
    z-index: 999;
}
@media screen and (max-width: 1365px) {
    .l-header {
        position: fixed;
    }
}
@media screen and (max-width: 767px) {
    .l-header {
        padding: calc(18 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
    }
}
.l-header__container {
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width: 767px) {
    .l-header__container {
        position: relative;
    }
}
.l-header__logo {
    width: 321px;
}
@media screen and (max-width: 767px) {
    .l-header__logo {
        width: calc(211 / var(--design-width) * 100vw);
        transition: width 0.3s;
    }
    .l-header__logo img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .is-narrow .l-header__logo {
        width: calc(144 / var(--design-width) * 100vw);
    }
}

.l-header__logo-link {
    display: block;
    width: 100%;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-header__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-header__logo-link img {
    width: 100%;
    height: auto;
}
.l-header__logo-img-01 {
    display: none;
}
.top .l-header__logo-img-01 {
    display: block;
}

.company .l-header__logo-img-01 {
    display: block;
}

.business .l-header__logo-img-01 {
    display: block;
}

.odei .l-header__logo-img-01 {
    display: block;
}

.hasai .l-header__logo-img-01 {
    display: block;
}

.ryudoka .l-header__logo-img-01 {
    display: block;
}

.kairyodo .l-header__logo-img-01 {
    display: block;
}

.is-narrow .l-header__logo-img-01 {
    display: none;
}

.l-header__logo-img-02 {
    display: block;
}
.top .l-header__logo-img-02 {
    display: none;
}

.company .l-header__logo-img-02 {
    display: none;
}

.business .l-header__logo-img-02 {
    display: none;
}

.odei .l-header__logo-img-02 {
    display: none;
}

.hasai .l-header__logo-img-02 {
    display: none;
}

.ryudoka .l-header__logo-img-02 {
    display: none;
}

.kairyodo .l-header__logo-img-02 {
    display: none;
}

.is-narrow .l-header__logo-img-02 {
    display: block;
}

.l-header--scroll {
    display: block;
    position: fixed;
    top: -96px;
    padding: 15px 38px 15px 43px;
    height: calc(var(--fixed-header-height) * 1px);
    background-color: var(--color-white-1);
    transition: top 0.3s;
}
.l-header--scroll .l-header__logo {
    width: 146px;
}
.l-header--scroll .l-header__container {
    align-items: center;
}
@media screen and (max-width: 1365px) {
    .l-header--scroll {
        display: none;
    }
}
.l-header--scroll.is-narrow {
    top: 0;
}
.l-header--scroll .l-header__logo-img-02 {
    display: block !important;
}

/* ---------------------------------------------
*   l-header-nav
--------------------------------------------- */
.l-header-nav {
    display: flex;
    align-items: start;
    -moz-column-gap: 27px;
         column-gap: 27px;
}
@media screen and (max-width: 1365px) {
    .l-header-nav {
        flex-direction: column;
        margin-inline: auto;
        padding-inline: 35px;
        max-width: 563px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav {
        padding-inline: calc(35 / var(--design-width) * 100vw);
        max-width: 100%;
    }
}
.l-header--scroll .l-header-nav {
    -moz-column-gap: 26px;
         column-gap: 26px;
    align-items: center;
}

.l-header-nav__list-1 {
    margin-top: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__list-1 {
        margin-top: 40px;
        display: grid;
        align-items: start;
        grid-template-areas: "A B" "C D" "C E" "C F" "C G" "C H";
        gap: 30px 70px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__list-1 {
        margin-top: calc(70 / var(--design-width) * 100vw);
        gap: calc(26 / var(--design-width) * 100vw) calc(35 / var(--design-width) * 100vw);
    }
}
.l-header--scroll .l-header-nav__list-1 {
    margin-top: 0;
    -moz-column-gap: 21px;
         column-gap: 21px;
}

@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(1) {
        grid-area: A;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(2) {
        grid-area: C;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(3) {
        grid-area: B;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(4) {
        grid-area: D;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(5) {
        grid-area: E;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item:nth-of-type(6) {
        grid-area: F;
    }
}
.l-header-nav__link {
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.2;
    color: var(--color-text-3);
}
@media (hover: hover) and (pointer: fine) {
    .l-header-nav__link {
        transition: opacity var(--hover-duration);
    }
    .l-header-nav__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__link {
        font-size: 30px;
        font-weight: bold;
        line-height: 1.4444444444;
        color: var(--color-base-1);
        text-shadow: none;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__link {
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}
.top .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .top .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.company .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .company .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.business .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .business .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.odei .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .odei .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.hasai .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .hasai .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.ryudoka .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .ryudoka .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.kairyodo .l-header-nav__link {
    color: var(--color-white-1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1365px) {
    .kairyodo .l-header-nav__link {
        color: var(--color-base-1);
        text-shadow: none;
    }
}

.l-header--scroll .l-header-nav__link {
    letter-spacing: 0;
    color: var(--color-base-1) !important;
    text-shadow: none;
}

.l-header-nav__sub-item {
    display: none;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__sub-item {
        display: block;
        margin-top: 30px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__sub-item {
        margin-top: calc(26 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__sub-list {
        display: flex;
        flex-direction: column;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__sub-list {
        row-gap: calc(28 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__sub-list-item {
        position: relative;
        padding-left: 52px;
        line-height: 0;
    }
    .l-header-nav__sub-list-item::before {
        position: absolute;
        top: -5px;
        left: 0;
        content: "";
        display: block;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 1px solid var(--color-accent-1);
    }
    .l-header-nav__sub-list-item::after {
        position: absolute;
        top: 6px;
        left: 10px;
        content: "";
        display: block;
        width: 16px;
        height: 14px;
        -webkit-mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
                mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
        -webkit-mask-size: 100% 100%;
                mask-size: 100% 100%;
        background-color: var(--color-accent-1);
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__sub-list-item {
        position: relative;
        padding-left: calc(26 / var(--design-width) * 100vw);
        line-height: 0;
    }
    .l-header-nav__sub-list-item::before {
        top: 0;
        transform: translateY(0);
        width: calc(18 / var(--design-width) * 100vw);
        height: calc(18 / var(--design-width) * 100vw);
    }
    .l-header-nav__sub-list-item::after {
        top: 16%;
        transform: translateY(0);
        left: calc(5 / var(--design-width) * 100vw);
        width: calc(8 / var(--design-width) * 100vw);
        height: calc(7 / var(--design-width) * 100vw);
    }
    .l-header-nav__sub-list-item:nth-of-type(1)::after, .l-header-nav__sub-list-item:nth-of-type(3)::after, .l-header-nav__sub-list-item:nth-of-type(4)::after {
        top: 32%;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-header-nav__sub-list-link {
        transition: opacity var(--hover-duration);
    }
    .l-header-nav__sub-list-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__sub-list-link {
        font-size: 18px;
        font-weight: 500;
        letter-spacing: 0.02em;
        line-height: 1.4166666667;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__sub-list-link {
        font-size: calc(12 / var(--design-width) * 100vw);
    }
}
.l-header-nav__list-2 {
    margin-top: 2px;
    display: grid;
    grid-template-areas: "A B" "C C";
    gap: 8px 7px;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__list-2 {
        margin-top: 43px;
        display: flex;
        flex-direction: column;
        gap: 20px 0;
        width: 493px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__list-2 {
        margin-top: calc(43 / var(--design-width) * 100vw);
        gap: calc(10 / var(--design-width) * 100vw) 0;
        width: 100%;
    }
}
.l-header--scroll .l-header-nav__list-2 {
    display: flex;
    margin-top: 0;
    gap: 0 10px;
}

.l-header-nav__item-2:nth-of-type(1) {
    grid-area: A;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(1) {
        order: 2;
    }
}
.l-header-nav__item-2:nth-of-type(1) .l-header-nav__link-2 {
    padding: 12px 15px 9px;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(1) .l-header-nav__link-2 {
        padding: 19px 15px 17px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__item-2:nth-of-type(1) .l-header-nav__link-2 {
        padding: calc(9 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
    }
}
.l-header--scroll .l-header-nav__item-2:nth-of-type(1) .l-header-nav__link-2 {
    padding: 12px 15px 10px 16px;
}

.l-header-nav__item-2:nth-of-type(2) {
    grid-area: B;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(2) {
        order: 3;
    }
}
.l-header-nav__item-2:nth-of-type(2) .l-header-nav__link-2 {
    padding: 12px 15px 9px;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(2) .l-header-nav__link-2 {
        padding: 19px 15px 17px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__item-2:nth-of-type(2) .l-header-nav__link-2 {
        padding: calc(9 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
    }
}
.l-header--scroll .l-header-nav__item-2:nth-of-type(2) .l-header-nav__link-2 {
    padding: 12px 15px 10px 16px;
}

.l-header-nav__item-2:nth-of-type(3) {
    grid-area: C;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(3) {
        order: 1;
    }
}
.l-header-nav__item-2:nth-of-type(3) .l-header-nav__link-2 {
    display: flex;
    -moz-column-gap: 20px;
         column-gap: 20px;
    padding: 3px 36px 10px;
    background-color: var(--color-accent-2);
}
@media screen and (max-width: 1365px) {
    .l-header-nav__item-2:nth-of-type(3) .l-header-nav__link-2 {
        -moz-column-gap: 38px;
             column-gap: 38px;
        align-items: center;
        justify-content: center;
        padding: 10px 36px 17px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__item-2:nth-of-type(3) .l-header-nav__link-2 {
        -moz-column-gap: calc(19 / var(--design-width) * 100vw);
             column-gap: calc(19 / var(--design-width) * 100vw);
        padding: calc(10 / var(--design-width) * 100vw) calc(35 / var(--design-width) * 100vw) calc(14 / var(--design-width) * 100vw);
    }
}
.l-header--scroll .l-header-nav__item-2:nth-of-type(3) .l-header-nav__link-2 {
    flex-direction: column;
    padding: 2px 49px 8px 49px;
}

.recruit .l-header-nav__item-2:nth-of-type(3) {
    display: none;
}

.entry .l-header-nav__item-2:nth-of-type(3) {
    display: none;
}

.l-header-nav__link-2 {
    display: block;
    border-radius: 10px;
    color: var(--color-white-1);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-nav__link-2 {
        transition: opacity var(--hover-duration);
    }
    .l-header-nav__link-2:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-nav__link-2 {
        border-radius: 20px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__link-2 {
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.l-header-nav__link-txt-1 {
    display: block;
    text-align: center;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.4285714286;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__link-txt-1 {
        font-size: calc(16 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__link-txt-1 {
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.4166666667;
    }
}
.l-header--scroll .l-header-nav__link-txt-1 {
    font-size: calc(13 / var(--root-fz) * 1rem);
    line-height: 1.4615384615;
}

.l-header-nav__link-txt-2 {
    margin-top: -2px;
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.09em;
    line-height: 1.45;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__link-txt-2 {
        margin-top: 0;
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__link-txt-2 {
        margin-top: 0;
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.l-header--scroll .l-header-nav__link-txt-2 {
    font-size: calc(19 / var(--root-fz) * 1rem);
    line-height: 1.4210526316;
}

.l-header-nav__link-txt-3 {
    font-size: calc(40 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.01em;
    line-height: 1.45;
}
@media screen and (max-width: 767px) {
    .l-header-nav__link-txt-3 {
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
    }
}
.l-header--scroll .l-header-nav__link-txt-3 {
    text-align: center;
    font-size: calc(26 / var(--root-fz) * 1rem);
    line-height: 1.4230769231;
}

.l-header-nav__link-txt-4 {
    margin-top: 24px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.4285714286;
}
@media screen and (max-width: 1365px) {
    .l-header-nav__link-txt-4 {
        margin-top: 6px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-nav__link-txt-4 {
        margin-top: calc(4 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.l-header--scroll .l-header-nav__link-txt-4 {
    margin-top: 0;
    text-align: center;
    font-size: calc(13 / var(--root-fz) * 1rem);
    line-height: 1.4615384615;
}

/* ---------------------------------------------
*   l-header-menu
--------------------------------------------- */
.l-header-menu {
    z-index: 998;
}
@media screen and (min-width: 1366px) {
    .l-header-menu {
        display: block !important;
    }
}
@media screen and (max-width: 1365px) {
    .l-header-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow-y: auto;
        display: none;
        background-color: var(--color-background-2);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-menu__container {
        padding: 25px 38px 25px 43px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-menu__container {
        padding: calc(19 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
    }
}
.l-header-menu__logo {
    display: none;
}
@media screen and (max-width: 1365px) {
    .l-header-menu__logo {
        display: block;
        width: 321px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-menu__logo {
        width: calc(211 / var(--design-width) * 100vw);
    }
    .l-header-menu__logo img {
        width: 100%;
        height: auto;
    }
}
.l-header-menu__logo-link {
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-menu__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-header-menu__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   l-header-menu-button
--------------------------------------------- */
.l-header-menu-button {
    display: none;
    position: relative;
    border: 0;
    border-radius: 0;
    background: none;
    margin: 0;
    box-shadow: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline: none;
    touch-action: manipulation;
    cursor: pointer;
    z-index: 999;
    transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-menu-button {
        transition: opacity var(--hover-duration);
    }
    .l-header-menu-button:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .l-header-menu-button {
        margin-right: 10px;
        display: block;
        border: 2px solid var(--color-base-1);
        border-radius: 50%;
        width: 70px;
        height: 70px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-menu-button {
        margin-right: calc(5 / var(--design-width) * 100vw);
        border: 1px solid var(--color-base-1);
        width: calc(46 / var(--design-width) * 100vw);
        height: calc(46 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .top .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .company .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .business .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .odei .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .hasai .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .ryudoka .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .kairyodo .l-header-menu-button {
        border-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .is-menu-opened .l-header-menu-button {
        border-color: var(--color-accent-1);
    }
}

@media screen and (max-width: 1365px) {
    .is-narrow .l-header-menu-button {
        border-color: var(--color-accent-1);
        background-color: var(--color-white-1);
        filter: drop-shadow(3px 3px 8px rgba(0, 0, 0, 0.16));
    }
}
@media screen and (max-width: 767px) {
    .is-narrow .l-header-menu-button {
        filter: drop-shadow(calc(3 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw) calc(8 / var(--design-width) * 100vw) rgba(0, 0, 0, 0.16));
    }
}

@media screen and (max-width: 1365px) {
    .is-menu-opened .is-narrow .l-header-menu-button {
        background-color: transparent;
        filter: none;
    }
}

@media screen and (max-width: 1365px) {
    .l-header-menu-button__lines {
        position: relative;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        display: block;
        width: 35px;
        height: 10px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-menu-button__lines {
        width: calc(24 / var(--design-width) * 100vw);
        height: calc(7 / var(--design-width) * 100vw);
    }
}
.l-header-menu-button__line {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    background-color: var(--color-base-1);
    transition: 0.3s transform;
}
@media screen and (max-width: 1365px) {
    .l-header-menu-button__line {
        height: 2px;
    }
}
@media screen and (max-width: 767px) {
    .l-header-menu-button__line {
        height: 1px;
    }
}
@media screen and (max-width: 1365px) {
    .top .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .company .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .business .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .odei .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .hasai .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .ryudoka .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .kairyodo .l-header-menu-button__line {
        background-color: var(--color-white-1);
    }
}

@media screen and (max-width: 1365px) {
    .is-menu-opened .l-header-menu-button__line {
        background-color: var(--color-accent-1);
    }
}

@media screen and (max-width: 1365px) {
    .is-narrow .l-header-menu-button__line {
        background-color: var(--color-accent-1);
    }
}

.l-header-menu-button__line--top {
    top: 0;
}
.is-menu-opened .l-header-menu-button__line--top {
    top: 50%;
    transform: rotate(30deg) translateY(-50%);
}

.l-header-menu-button__line--bottom {
    bottom: 0;
}
.is-menu-opened .l-header-menu-button__line--bottom {
    bottom: 50%;
    transform: rotate(-30deg) translateY(50%);
}

/* ---------------------------------------------
*   l-global-nav
--------------------------------------------- */
/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    position: relative;
    z-index: 1;
}

/* ---------------------------------------------
*   l-breadcrumb
--------------------------------------------- */
/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    position: relative;
    background-color: var(--color-background-1);
    margin-top: -142px;
    padding: 236px 55px 236px calc(var(--contents-side-padding) * 1px);
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .l-footer {
        margin-top: calc(-52 / var(--design-width) * 100vw);
        padding: calc(95 / var(--design-width) * 100vw) calc(var(--contents-side-padding) / var(--design-width) * 100vw) calc(108 / var(--design-width) * 100vw);
    }
}
.l-footer__container {
    position: relative;
    display: flex;
    align-items: start;
    justify-content: space-between;
    margin-inline: auto;
    max-width: 1228px;
}
@media screen and (max-width: 1099px) {
    .l-footer__container {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .l-footer__container {
        max-width: initial;
    }
}
.l-footer__logo {
    width: 385px;
}
@media screen and (max-width: 767px) {
    .l-footer__logo {
        width: calc(197 / var(--design-width) * 100vw);
    }
}
.l-footer__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-footer__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-footer__logo-link img {
    width: 100%;
    height: auto;
}
.l-footer__info {
    margin-top: 46px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.75;
}
@media screen and (max-width: 767px) {
    .l-footer__info {
        margin-top: calc(19 / var(--design-width) * 100vw);
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.8333333333;
    }
}
.l-footer__address, .l-footer__tel, .l-footer__time {
    display: block;
}
.l-footer__right {
    position: relative;
}
@media screen and (max-width: 1099px) {
    .l-footer__right {
        margin-left: auto;
    }
}
@media screen and (max-width: 767px) {
    .l-footer__right {
        margin-left: 0;
        width: 100%;
    }
}
.l-footer__copyright {
    margin-top: 45px;
    margin-inline: auto 20px;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .l-footer__copyright {
        margin-top: calc(44 / var(--design-width) * 100vw);
        margin-inline: auto;
    }
}
.l-footer__copyright-txt {
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.4166666667;
}
@media screen and (max-width: 767px) {
    .l-footer__copyright-txt {
        text-align: center;
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.l-footer__carousel {
    position: absolute;
    bottom: -11px;
    left: 0;
    margin-inline: calc(50% - 50vw);
    width: 100vw;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .l-footer__carousel {
        bottom: calc(-17 / var(--design-width) * 100vw);
    }
}
.l-footer__carousel-txt {
    display: block;
    padding-right: 0.25em;
    white-space: nowrap;
    font-size: 190px;
    font-weight: 600;
    line-height: 1;
    color: var(--color-text-2);
    width: 2238px;
}
@media screen and (max-width: 767px) {
    .l-footer__carousel-txt {
        font-size: calc(70 / var(--design-width) * 100vw);
        line-height: 1.4428571429;
        width: calc(825 / var(--design-width) * 100vw);
    }
}
.l-footer__carousel-txt:nth-of-type(odd) {
    animation: infinity-scroll-left 90s linear infinite;
}
.l-footer__carousel-txt:nth-of-type(even) {
    position: absolute;
    top: 0;
    left: 0;
    animation: infinity-scroll-left 90s -45s linear infinite;
}
@keyframes infinity-scroll-left {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* ---------------------------------------------
*   l-footer-nav
--------------------------------------------- */
.l-footer-nav {
    margin-top: 104px;
}
@media screen and (max-width: 1099px) {
    .l-footer-nav {
        margin-top: 47px;
    }
}
@media screen and (max-width: 767px) {
    .l-footer-nav {
        margin-top: calc(45 / var(--design-width) * 100vw);
    }
}
.l-footer-nav__list {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    grid-template-areas: "A B C D" "E F G H" "I J K L";
    row-gap: 16px;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__list {
        margin-right: 0;
        grid-template-columns: repeat(2, max-content);
        grid-template-areas: "A E" "B F" "C G" "D H";
        row-gap: calc(25 / var(--design-width) * 100vw);
        -moz-column-gap: calc(36 / var(--design-width) * 100vw);
             column-gap: calc(36 / var(--design-width) * 100vw);
    }
}
.l-footer-nav__item {
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.4285714286;
}
.l-footer-nav__item:nth-of-type(1) {
    grid-area: A;
    margin-right: 78px;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(1) {
        margin-right: 0;
    }
}
.l-footer-nav__item:nth-of-type(2) {
    grid-area: B;
    margin-right: 113px;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(2) {
        margin-right: 0;
    }
}
.l-footer-nav__item:nth-of-type(3) {
    grid-area: C;
    margin-right: 99px;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(3) {
        margin-right: 0;
    }
}
.l-footer-nav__item:nth-of-type(4) {
    grid-area: D;
}
.l-footer-nav__item:nth-of-type(5) {
    grid-area: F;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(5) {
        grid-area: E;
    }
}
.l-footer-nav__item:nth-of-type(6) {
    grid-area: G;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(6) {
        grid-area: F;
    }
}
.l-footer-nav__item:nth-of-type(7) {
    grid-area: H;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(7) {
        grid-area: G;
    }
}
.l-footer-nav__item:nth-of-type(8) {
    grid-area: J;
}
@media screen and (max-width: 767px) {
    .l-footer-nav__item:nth-of-type(8) {
        grid-area: H;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__link {
        transition: opacity var(--hover-duration);
    }
    .l-footer-nav__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/*  .l-footer-pagetop
--------------------------------------------- */
.l-footer-pagetop {
    position: fixed;
    right: 50%;
    bottom: 15px;
    transform: translateX(calc(50% + 569px));
    z-index: 998;
    pointer-events: none;
}
@media screen and (max-width: 1365px) {
    .l-footer-pagetop {
        right: 55px;
        transform: translateX(0);
    }
}
@media screen and (max-width: 767px) {
    .l-footer-pagetop {
        right: 50%;
        bottom: calc(15 / var(--design-width) * 100vw);
        transform: translateX(calc(175 / var(--design-width) * 100vw));
    }
}
.l-footer-pagetop.is-stop {
    position: absolute;
    top: -22px;
    right: 28px;
    transform: translateX(0);
}
@media screen and (max-width: 1365px) {
    .l-footer-pagetop.is-stop {
        top: 0;
        right: 0;
    }
}
@media screen and (max-width: 767px) {
    .l-footer-pagetop.is-stop {
        top: calc(-11 / var(--design-width) * 100vw);
    }
}
.l-footer-pagetop__btn {
    position: relative;
    display: block;
    z-index: 9;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s, visibility 0.3s;
    border-radius: 50%;
    width: 62px;
    height: 62px;
    background-color: var(--color-accent-1);
    pointer-events: all;
}
@media screen and (max-width: 767px) {
    .l-footer-pagetop__btn {
        width: calc(48 / var(--design-width) * 100vw);
        height: calc(48 / var(--design-width) * 100vw);
    }
}
.l-footer-pagetop__btn.is-show {
    visibility: visible;
    opacity: 1;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-pagetop__btn.is-show:hover {
        opacity: 0.7;
    }
}
.l-footer-pagetop__btn::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_arrow_03.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_03.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-white-1);
    width: 21px;
    height: 25px;
}
@media screen and (max-width: 767px) {
    .l-footer-pagetop__btn::before {
        width: calc(16 / var(--design-width) * 100vw);
        height: calc(19 / var(--design-width) * 100vw);
    }
}
.thanks .l-footer-pagetop__btn {
    opacity: 1;
    visibility: visible;
}

/* ---------------------------------------------
*   c-acc-01
--------------------------------------------- */
.c-acc-01 {
    border-radius: 20px;
    background-color: var(--color-background-2);
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-acc-01 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.c-acc-01__head {
    position: relative;
    display: flex;
    padding: 37px 100px 37px 46px;
    width: 100%;
    color: var(--color-base-1);
}
@media (hover: hover) and (pointer: fine) {
    .c-acc-01__head {
        transition: opacity var(--hover-duration);
    }
    .c-acc-01__head:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .c-acc-01__head {
        align-items: center;
    }
}
@media screen and (max-width: 767px) {
    .c-acc-01__head {
        flex-direction: column;
        align-items: start;
        row-gap: calc(12 / var(--design-width) * 100vw);
        padding: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw) calc(25 / var(--design-width) * 100vw);
    }
    .windows.chrome .c-acc-01__head {
        padding: calc(20 / var(--design-width) * 100vw) 7.7142857143% calc(25 / var(--design-width) * 100vw);
    }
    .windows.edge .c-acc-01__head {
        padding: calc(20 / var(--design-width) * 100vw) 7.7142857143% calc(25 / var(--design-width) * 100vw);
    }
}
.c-acc-01__head::before {
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 30px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-acc-01__head::before {
        top: calc(15 / var(--design-width) * 100vw);
        right: calc(15 / var(--design-width) * 100vw);
        transform: translateY(0);
        width: calc(30 / var(--design-width) * 100vw);
    }
}
.c-acc-01__head::after {
    position: absolute;
    top: 50%;
    right: 61px;
    transform: translateY(-50%);
    content: "";
    display: block;
}
@media screen and (max-width: 767px) {
    .c-acc-01__head::after {
        top: calc(26 / var(--design-width) * 100vw);
        right: calc(26 / var(--design-width) * 100vw);
        transform: translateY(0);
    }
}
.c-acc-01.is-close .c-acc-01__head::after {
    -webkit-mask: url(../img/ico_plus_01.svg) 0 0 no-repeat;
            mask: url(../img/ico_plus_01.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-white-1);
    width: 8px;
    height: 8px;
}
@media screen and (max-width: 767px) {
    .c-acc-01.is-close .c-acc-01__head::after {
        width: calc(8 / var(--design-width) * 100vw);
        height: calc(8 / var(--design-width) * 100vw);
    }
}

.c-acc-01.is-open .c-acc-01__head::after {
    -webkit-mask: url(../img/ico_minus_01.svg) 0 0 no-repeat;
            mask: url(../img/ico_minus_01.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-white-1);
    width: 8px;
    height: 8px;
}
@media screen and (max-width: 767px) {
    .c-acc-01.is-open .c-acc-01__head::after {
        width: calc(8 / var(--design-width) * 100vw);
        height: calc(8 / var(--design-width) * 100vw);
    }
}

.c-acc-01__wrap {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
@media screen and (max-width: 1199px) {
    .c-acc-01__wrap {
        flex-direction: column;
        row-gap: 4px;
    }
}
@media screen and (max-width: 767px) {
    .c-acc-01__wrap {
        align-items: start;
        row-gap: calc(10 / var(--design-width) * 100vw);
    }
}
.c-acc-01__date {
    margin-right: 30px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.035em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-acc-01__date {
        margin-right: 0;
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 400;
        line-height: 1.4285714286;
    }
}
.c-acc-01__news-label {
    margin-right: 32px;
}
@media screen and (max-width: 767px) {
    .c-acc-01__news-label {
        margin-right: 0;
    }
}
.c-acc-01__ttl {
    text-align: left;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.035em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-acc-01__ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7142857143;
    }
}
.c-acc-01__body-inner {
    padding: 15px 46px 49px;
}
@media screen and (max-width: 767px) {
    .c-acc-01__body-inner {
        padding: 0 calc(30 / var(--design-width) * 100vw) calc(19 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
    .windows.chrome .c-acc-01__body-inner {
        padding: 0 7.1428571429% calc(19 / var(--design-width) * 100vw) 7.1428571429%;
    }
    .windows.edge .c-acc-01__body-inner {
        padding: 0 7.1428571429% calc(19 / var(--design-width) * 100vw) 7.1428571429%;
    }
}
.c-acc-01__body-inner > *:first-child {
    margin-top: 0;
}
.c-acc-01 p {
    margin-top: 1em;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
}
@media screen and (max-width: 767px) {
    .c-acc-01 p {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.8571428571;
    }
}
@media screen and (max-width: 1199px) {
    .c-acc-01 p .tb-hide {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .c-acc-01 p .tb-hide {
        display: block;
    }
}

/* ---------------------------------------------
*   c-block
--------------------------------------------- */
/* ---------------------------------------------
*   c-box-info
--------------------------------------------- */
.c-box-info__ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-box-info__ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-box-info__body {
    margin-top: 10px;
    padding: 20px;
    border-radius: 20px;
    background-color: var(--color-background-5);
}
@media screen and (max-width: 767px) {
    .c-box-info__body {
        margin-top: calc(16 / var(--design-width) * 100vw);
        padding: calc(10 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        height: calc(200 / var(--design-width) * 100vw);
    }
}
.c-box-info__list {
    counter-reset: li;
}
@media screen and (max-width: 767px) {
    .c-box-info__list {
        display: block;
        padding-right: calc(10 / var(--design-width) * 100vw);
        padding-bottom: calc(5 / var(--design-width) * 100vw);
        height: 100%;
        overflow-y: scroll;
    }
}
.c-box-info__list-item {
    position: relative;
    padding-left: 1em;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.6666666667;
    letter-spacing: -0.02em;
}
@media screen and (max-width: 767px) {
    .c-box-info__list-item {
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.6;
        letter-spacing: 0.02em;
    }
}
.c-box-info__list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: li;
    content: counter(li) ".";
}
.c-box-info__list-item + .c-box-info__list-item {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .c-box-info__list-item + .c-box-info__list-item {
        margin-top: calc(16 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-btn-01
--------------------------------------------- */
.c-btn-01 {
    position: relative;
    display: grid;
    place-items: center;
    padding-block: 12px;
    border-radius: 100vh;
    background-color: var(--color-btn-1);
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.035em;
    line-height: 1;
    color: var(--color-white-1);
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-01 {
        transition: opacity var(--hover-duration);
    }
    .c-btn-01:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-btn-01 {
        padding-block: calc(9 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
.windows.chrome .c-btn-01 {
    padding-block: 11px 13px;
}
@media screen and (max-width: 767px) {
    .windows.chrome .c-btn-01 {
        padding-block: calc(9 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}

.windows.edge .c-btn-01 {
    padding-block: 11px 13px;
}
@media screen and (max-width: 767px) {
    .windows.edge .c-btn-01 {
        padding-block: calc(9 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}

.firefox .c-btn-01 {
    padding-block: 10px 14px;
}
@media screen and (max-width: 767px) {
    .firefox .c-btn-01 {
        padding-block: calc(9 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}

.c-btn-01::after {
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-white-1);
    width: 8px;
    height: 16px;
}
@media screen and (max-width: 767px) {
    .c-btn-01::after {
        right: calc(12 / var(--design-width) * 100vw);
        width: calc(7 / var(--design-width) * 100vw);
        height: calc(12 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-card-01
--------------------------------------------- */
.c-card-01-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 25px;
         column-gap: 25px;
}
@media screen and (max-width: 1365px) {
    .c-card-01-container {
        display: flex;
        flex-direction: column;
        row-gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-card-01-container {
        row-gap: calc(10 / var(--design-width) * 100vw);
    }
}

.c-card-01 {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    padding: 27px 40px 29px;
    border: 1px solid var(--color-border-1);
    border-radius: 30px;
    background-color: var(--color-background-3);
}
@media screen and (max-width: 767px) {
    .c-card-01 {
        grid-template-areas: "A A" "B C" "D D";
        padding: calc(17 / var(--design-width) * 100vw) calc(29 / var(--design-width) * 100vw) calc(29 / var(--design-width) * 100vw) calc(29 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
    .windows.chrome .c-card-01 {
        padding: calc(17 / var(--design-width) * 100vw) 6.2857142857% calc(29 / var(--design-width) * 100vw);
    }
    .windows.edge .c-card-01 {
        padding: calc(17 / var(--design-width) * 100vw) 6.2857142857% calc(29 / var(--design-width) * 100vw);
    }
}
.c-card-01__ttl {
    text-align: center;
    font-size: calc(45 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.035em;
    line-height: 1.4444444444;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .c-card-01__ttl {
        grid-area: A;
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.4375;
    }
}
.c-card-01__img {
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .c-card-01__img {
        grid-area: B;
    }
}
.c-card-01__img img {
    width: 100%;
    height: auto;
}
.c-card-01__btn-area {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
@media screen and (max-width: 767px) {
    .c-card-01__btn-area {
        grid-area: C;
        margin-top: 0;
        width: calc(155 / var(--design-width) * 100vw);
    }
}
.c-card-01__btn:not(:first-of-type) {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .c-card-01__btn:not(:first-of-type) {
        margin-top: calc(12 / var(--design-width) * 100vw);
    }
}
.c-card-01__txt {
    margin-top: 23px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.035em;
    line-height: 1.625;
}
@media screen and (max-width: 767px) {
    .c-card-01__txt {
        grid-area: D;
        margin-top: 0;
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
@media screen and (max-width: 1365px) {
    .c-card-01__txt br {
        display: none;
    }
}
.c-card-01:nth-of-type(1) .c-card-01__img {
    margin-top: 20px;
    width: 111px;
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(1) .c-card-01__img {
        margin-left: calc(-2 / var(--design-width) * 100vw);
        margin-top: calc(17 / var(--design-width) * 100vw);
        margin-right: calc(22 / var(--design-width) * 100vw);
        width: calc(96 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(1) .c-card-01__btn-area {
        margin-top: calc(17 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(1) .c-card-01__txt {
        margin-top: calc(19 / var(--design-width) * 100vw);
    }
}
.c-card-01:nth-of-type(2) .c-card-01__img {
    margin-top: 38px;
    width: 107px;
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(2) .c-card-01__img {
        margin-left: calc(2 / var(--design-width) * 100vw);
        margin-top: calc(9 / var(--design-width) * 100vw);
        margin-right: calc(21 / var(--design-width) * 100vw);
        width: calc(92.5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(2) .c-card-01__btn-area {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.c-card-01:nth-of-type(2) .c-card-01__txt {
    text-align: center;
}
@media screen and (max-width: 1365px) {
    .c-card-01:nth-of-type(2) .c-card-01__txt {
        text-align: left;
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(2) .c-card-01__txt {
        margin-top: calc(31 / var(--design-width) * 100vw);
    }
}
.c-card-01:nth-of-type(3) .c-card-01__img {
    margin-top: 32px;
    width: 90px;
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(3) .c-card-01__img {
        margin-left: calc(13 / var(--design-width) * 100vw);
        margin-top: calc(21 / var(--design-width) * 100vw);
        margin-right: calc(25 / var(--design-width) * 100vw);
        width: calc(77.5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(3) .c-card-01__btn-area {
        margin-top: calc(17 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-card-01:nth-of-type(3) .c-card-01__txt {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-card-02
--------------------------------------------- */
.c-card-02-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 1365px) {
    .c-card-02-container {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 1099px) {
    .c-card-02-container {
        grid-template-columns: repeat(1, 1fr);
    }
}

.c-card-02 {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-card-02 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.c-card-02:nth-of-type(n + 4) {
    margin-top: 50px;
}
@media screen and (max-width: 1365px) {
    .c-card-02:nth-of-type(n + 3) {
        margin-top: 50px;
    }
}
@media screen and (max-width: 1099px) {
    .c-card-02:nth-of-type(n + 2) {
        margin-top: 50px;
    }
}
@media screen and (max-width: 767px) {
    .c-card-02:nth-of-type(n + 2) {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
.c-card-02__img {
    width: 100%;
    overflow: hidden;
}
.c-card-02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-02__body {
    padding: 31px 23px 18px 37px;
    background-color: var(--color-background-2);
    min-height: 173px;
}
@media screen and (max-width: 767px) {
    .c-card-02__body {
        padding: calc(17 / var(--design-width) * 100vw) 2.8571428571% calc(8 / var(--design-width) * 100vw) 8.5714285714%;
        min-height: calc(125 / var(--design-width) * 100vw);
    }
}
.c-card-02__ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-card-02__ttl {
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}
.c-card-02__txt-area {
    margin-top: 17px;
}
@media screen and (max-width: 767px) {
    .c-card-02__txt-area {
        margin-top: calc(8 / var(--design-width) * 100vw);
    }
}
.c-card-02__item {
    display: flex;
    align-items: flex-start;
}
.c-card-02__item-ttl, .c-card-02__txt {
    display: block;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.8571428571;
}
@media screen and (max-width: 767px) {
    .c-card-02__item-ttl, .c-card-02__txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
        letter-spacing: 0.04em;
    }
}
@media screen and (max-width: 767px) {
    .c-card-02__item-ttl br, .c-card-02__txt br {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .c-card-02__txt {
        margin-top: calc(3 / var(--design-width) * 100vw);
        line-height: 1.43;
    }
}
.c-card-02__item-ttl {
    flex-shrink: 0;
}
.c-card-02__foot {
    display: block;
    padding-block: 24px 23px;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-card-02__foot {
        padding-block: calc(25 / var(--design-width) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-card-02__foot:hover .c-link-01::before {
        background-color: var(--color-accent-1) !important;
    }
    .c-card-02__foot:hover .c-link-01::after {
        transform: translateY(-50%) scale(1.2380952381) !important;
        background-color: var(--color-white-1) !important;
    }
}
.c-card-02__link {
    margin-inline: auto;
}

/* ---------------------------------------------
*   c-cassette-01
--------------------------------------------- */
/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form-01
--------------------------------------------- */
@media screen and (max-width: 999px) {
    .c-form-01__item-wrap {
        width: 100%;
    }
}
.c-form-01__item-wrap:has(.wpcf7-not-valid) input {
    border: 1px solid var(--color-accent-2);
    background-color: rgba(255, 78, 138, 0.1);
}
.c-form-01__item {
    display: flex;
    align-items: center;
    -moz-column-gap: 64px;
         column-gap: 64px;
    padding-block: 19px;
    border-bottom: 1px solid var(--color-border-2);
}
@media screen and (max-width: 999px) {
    .c-form-01__item {
        flex-direction: column;
        align-items: start;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .c-form-01__item {
        row-gap: calc(27 / var(--design-width) * 100vw);
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-01__item:nth-of-type(1) {
    padding-block: 26px;
    border-top: 1px solid var(--color-border-2);
}
@media screen and (max-width: 767px) {
    .c-form-01__item:nth-of-type(1) {
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-01__item:nth-of-type(2) {
    padding-block: 23px;
}
@media screen and (max-width: 767px) {
    .c-form-01__item:nth-of-type(2) {
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-01__item:nth-of-type(2) .c-form-01__item-desc {
    margin-top: 2px;
}
@media screen and (max-width: 767px) {
    .c-form-01__item:nth-of-type(2) .c-form-01__item-desc {
        margin-top: calc(4 / var(--design-width) * 100vw);
    }
}
.c-form-01__item:nth-of-type(3) {
    padding-block: 39px;
    align-items: start;
}
@media screen and (max-width: 767px) {
    .c-form-01__item:nth-of-type(3) {
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-01__item:nth-of-type(3) .c-form-01__item-wrap {
    margin-top: 40px;
}
@media screen and (max-width: 999px) {
    .c-form-01__item:nth-of-type(3) .c-form-01__item-wrap {
        margin-top: 0;
    }
}
.c-form-01__item:nth-of-type(3) .c-form-01__item-desc {
    margin-top: 4px;
}
.c-form-01__item > :first-child {
    width: 300px;
}
@media screen and (max-width: 999px) {
    .c-form-01__item > :first-child {
        width: 100%;
    }
}
.c-form-01__item > :last-child {
    flex: 1;
}
.c-form-01__item-ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-01__item-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-01__item-ttl strong {
    color: var(--color-accent-2);
}
.c-form-01__item-desc {
    position: relative;
    padding-left: 1em;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.5714285714;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-01__item-desc {
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.c-form-01__item-desc::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
@media screen and (max-width: 999px) {
    .c-form-01__item-desc br {
        display: none;
    }
}
.c-form-01__info {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-form-01__info {
        margin-top: calc(40 / var(--design-width) * 100vw);
    }
}
.c-form-01__accept {
    margin-top: 34px;
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .c-form-01__accept {
        margin-top: calc(27 / var(--design-width) * 100vw);
    }
}
.c-form-01 .wpcf7-checkbox .wpcf7-list-item,
.c-form-01 .wpcf7-acceptance .wpcf7-list-item {
    display: block;
    margin: 0;
}
.c-form-01 .wpcf7-checkbox .wpcf7-list-item-label,
.c-form-01 .wpcf7-acceptance .wpcf7-list-item-label {
    position: relative;
    padding-left: 28px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.02em;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item-label,
    .c-form-01 .wpcf7-acceptance .wpcf7-list-item-label {
        transition: opacity var(--hover-duration);
    }
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item-label:hover,
    .c-form-01 .wpcf7-acceptance .wpcf7-list-item-label:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item-label,
    .c-form-01 .wpcf7-acceptance .wpcf7-list-item-label {
        padding-left: calc(28 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-01 .wpcf7-checkbox .wpcf7-list-item-label::before,
.c-form-01 .wpcf7-acceptance .wpcf7-list-item-label::before {
    position: absolute;
    top: 53%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    border: 1px solid var(--color-base-1);
    width: 18px;
    height: 18px;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item-label::before,
    .c-form-01 .wpcf7-acceptance .wpcf7-list-item-label::before {
        width: calc(18 / var(--design-width) * 100vw);
        height: calc(18 / var(--design-width) * 100vw);
    }
}
.c-form-01 .wpcf7-checkbox .wpcf7-list-item-label::after,
.c-form-01 .wpcf7-acceptance .wpcf7-list-item-label::after {
    position: absolute;
    top: 53%;
    left: 4px;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    background-color: var(--color-base-1);
    opacity: 0;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item-label::after,
    .c-form-01 .wpcf7-acceptance .wpcf7-list-item-label::after {
        left: calc(4 / var(--design-width) * 100vw);
        width: calc(10 / var(--design-width) * 100vw);
        height: calc(10 / var(--design-width) * 100vw);
    }
}
.c-form-01 .wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label::after,
.c-form-01 .wpcf7-acceptance input[type=checkbox]:checked + .wpcf7-list-item-label::after {
    opacity: 1;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item {
        margin-left: calc(26 / var(--design-width) * 100vw);
    }
    .c-form-01 .wpcf7-checkbox .wpcf7-list-item:not(:first-child) {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.c-form-01 .wpcf7-checkbox .wpcf7-list-item input[type=checkbox] {
    position: absolute;
    opacity: 0;
}
.c-form-01 .wpcf7-form-control-wrap {
    display: block;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-form-control-wrap {
        width: 100%;
    }
}
.c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture] {
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture] {
        transition: opacity var(--hover-duration);
    }
    .c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture]:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture] {
        width: 100%;
    }
}
.c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture]::after {
    position: absolute;
    top: 44%;
    right: 16px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_select-arrow.svg) 0 0 no-repeat;
            mask: url(../img/ico_select-arrow.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
    background-color: #656565;
    width: 14px;
    height: 8px;
    pointer-events: none;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-form-control-wrap[data-name=your_prefecture]::after {
        top: 39%;
        right: calc(24 / var(--design-width) * 100vw);
        width: calc(16 / var(--design-width) * 100vw);
        height: calc(9 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 999px) {
    .c-form-01 .wpcf7-form-control-wrap[data-name=inquiry] {
        width: 100%;
    }
}
.c-form-01 .wpcf7-textarea,
.c-form-01 .wpcf7-text,
.c-form-01 .wpcf7-select {
    padding: 10px 30px;
    border-radius: 10px;
    background-color: var(--color-background-5);
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-textarea,
    .c-form-01 .wpcf7-text,
    .c-form-01 .wpcf7-select {
        padding: calc(22 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        letter-spacing: 0.02em;
    }
}
.c-form-01 .wpcf7-textarea::-moz-placeholder, .c-form-01 .wpcf7-text::-moz-placeholder, .c-form-01 .wpcf7-select::-moz-placeholder {
    color: var(--color-text-4);
}
.c-form-01 .wpcf7-textarea::placeholder,
.c-form-01 .wpcf7-text::placeholder,
.c-form-01 .wpcf7-select::placeholder {
    color: var(--color-text-4);
}
.c-form-01 .wpcf7-textarea {
    max-width: 652px;
    width: 100%;
    height: 150px;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-textarea {
        height: calc(216 / var(--design-width) * 100vw);
    }
}
.c-form-01 .wpcf7-text {
    max-width: 346px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-text {
        max-width: initial;
    }
}
.c-form-01 .wpcf7-text[name=your_address] {
    max-width: 652px;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-text[name=your_address] {
        max-width: initial;
    }
}
.c-form-01 .wpcf7-text[name=your_email] {
    max-width: 534px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-text[name=your_email] {
        max-width: initial;
    }
}
.c-form-01 .wpcf7-text[name=your_email_confirm] {
    margin-top: 10px;
    max-width: 534px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-text[name=your_email_confirm] {
        margin-top: calc(15 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.c-form-01 .wpcf7-select {
    margin-bottom: 10px;
    text-align: center;
    width: 272px;
    color: var(--color-base-1);
}
@media (hover: hover) and (pointer: fine) {
    .c-form-01 .wpcf7-select {
        transition: opacity var(--hover-duration);
    }
    .c-form-01 .wpcf7-select:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 999px) {
    .c-form-01 .wpcf7-select {
        text-align: left;
    }
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-select {
        margin-bottom: calc(15 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.c-form-01 .wpcf7-select.is-placeholder {
    color: var(--color-text-4);
}
.c-form-01 .wpcf7-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 35px;
    margin-inline: auto;
    padding-block: 27px 31px;
    border-radius: 20px;
    background-color: var(--color-accent-2);
    width: 320px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-white-1);
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-01 .wpcf7-submit {
        transition: opacity var(--hover-duration);
    }
    .c-form-01 .wpcf7-submit:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-submit {
        margin-top: calc(30 / var(--design-width) * 100vw);
        padding-block: calc(19 / var(--design-width) * 100vw) calc(21 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        width: 100%;
    }
}
.c-form-01 .wpcf7-not-valid-tip {
    margin-top: 10px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-not-valid-tip {
        margin-top: calc(15 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-form-01 .wpcf7-checkbox + .wpcf7-not-valid-tip {
        margin-top: calc(20 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-01 .wpcf7-not-valid {
    border: 1px solid var(--color-accent-2);
    background-color: rgba(255, 78, 138, 0.1);
}
.c-form-01 .wpcf7-not-valid.wpcf7-checkbox {
    border: none;
}
.c-form-01 input[type=checkbox]:focus-visible + .wpcf7-list-item-label {
    outline: auto;
    outline-color: var(--color-accent-1);
}

/* ---------------------------------------------
*   c-form-02
--------------------------------------------- */
@media screen and (max-width: 1099px) {
    .c-form-02__item-wrap {
        width: 100%;
    }
}
.c-form-02__item-wrap:has(.wpcf7-not-valid) input {
    border: 1px solid var(--color-accent-2);
    background-color: rgba(255, 78, 138, 0.1);
}
.c-form-02__item-wrap--flex {
    display: flex;
    align-items: center;
    -moz-column-gap: 10px;
         column-gap: 10px;
}
@media screen and (max-width: 767px) {
    .c-form-02__item-wrap--flex {
        flex-wrap: wrap;
        row-gap: calc(15 / var(--design-width) * 100vw);
    }
}
.c-form-02__item-sub-wrap {
    display: flex;
    align-items: center;
    -moz-column-gap: 10px;
         column-gap: 10px;
    flex: 1;
}
.c-form-02__item {
    display: flex;
    align-items: center;
    -moz-column-gap: 64px;
         column-gap: 64px;
    padding-block: 19px;
    border-bottom: 1px solid var(--color-border-2);
}
@media screen and (max-width: 1099px) {
    .c-form-02__item {
        flex-direction: column;
        align-items: start;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .c-form-02__item {
        row-gap: calc(27 / var(--design-width) * 100vw);
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item:nth-of-type(1) {
    padding-block: 19px;
    border-top: 1px solid var(--color-border-2);
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(1) {
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item:nth-of-type(2) {
    padding-block: 19px;
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(2) {
        padding-block: calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item:nth-of-type(3) {
    padding-block: 19px;
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(3) {
        padding-block: calc(30 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(4) {
        padding-block: calc(30 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(5) {
        padding-block: calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item:nth-of-type(6) {
    padding-block: 30px;
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(6) {
        padding-block: calc(20 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item:nth-of-type(7) {
    padding-block: 40px;
}
@media screen and (max-width: 767px) {
    .c-form-02__item:nth-of-type(7) {
        padding-block: calc(30 / var(--design-width) * 100vw);
    }
}
.c-form-02__item > :first-child {
    width: 300px;
}
@media screen and (max-width: 1099px) {
    .c-form-02__item > :first-child {
        width: 100%;
    }
}
.c-form-02__item > :last-child {
    flex: 1;
}
.c-form-02__item-ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-02__item-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-02__item-ttl strong {
    color: var(--color-accent-2);
}
.c-form-02__item-desc {
    position: relative;
    padding-left: 1em;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.5714285714;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-02__item-desc {
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.c-form-02__item-desc::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
@media screen and (max-width: 1099px) {
    .c-form-02__item-desc br {
        display: none;
    }
}
.c-form-02__info {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-form-02__info {
        margin-top: calc(40 / var(--design-width) * 100vw);
    }
}
.c-form-02__accept {
    margin-top: 34px;
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .c-form-02__accept {
        margin-top: calc(27 / var(--design-width) * 100vw);
    }
}
.c-form-02 .wpcf7-checkbox .wpcf7-list-item,
.c-form-02 .wpcf7-acceptance .wpcf7-list-item {
    display: block;
    margin: 0;
}
.c-form-02 .wpcf7-checkbox .wpcf7-list-item-label,
.c-form-02 .wpcf7-acceptance .wpcf7-list-item-label {
    position: relative;
    padding-left: 28px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.02em;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item-label,
    .c-form-02 .wpcf7-acceptance .wpcf7-list-item-label {
        transition: opacity var(--hover-duration);
    }
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item-label:hover,
    .c-form-02 .wpcf7-acceptance .wpcf7-list-item-label:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item-label,
    .c-form-02 .wpcf7-acceptance .wpcf7-list-item-label {
        padding-left: calc(28 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-02 .wpcf7-checkbox .wpcf7-list-item-label::before,
.c-form-02 .wpcf7-acceptance .wpcf7-list-item-label::before {
    position: absolute;
    top: 53%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    border: 1px solid var(--color-base-1);
    width: 18px;
    height: 18px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item-label::before,
    .c-form-02 .wpcf7-acceptance .wpcf7-list-item-label::before {
        width: calc(18 / var(--design-width) * 100vw);
        height: calc(18 / var(--design-width) * 100vw);
    }
}
.c-form-02 .wpcf7-checkbox .wpcf7-list-item-label::after,
.c-form-02 .wpcf7-acceptance .wpcf7-list-item-label::after {
    position: absolute;
    top: 53%;
    left: 4px;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    background-color: var(--color-base-1);
    opacity: 0;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item-label::after,
    .c-form-02 .wpcf7-acceptance .wpcf7-list-item-label::after {
        left: calc(4 / var(--design-width) * 100vw);
        width: calc(10 / var(--design-width) * 100vw);
        height: calc(10 / var(--design-width) * 100vw);
    }
}
.c-form-02 .wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label::after,
.c-form-02 .wpcf7-acceptance input[type=checkbox]:checked + .wpcf7-list-item-label::after {
    opacity: 1;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item {
        margin-left: calc(26 / var(--design-width) * 100vw);
    }
    .c-form-02 .wpcf7-checkbox .wpcf7-list-item:not(:first-child) {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.c-form-02 .wpcf7-checkbox input[type=checkbox] {
    position: absolute;
    opacity: 0;
}
.c-form-02 .wpcf7-form-control-wrap {
    display: block;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-form-control-wrap {
        width: 100%;
    }
}
.c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_year], .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_month], .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_day] {
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_year], .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_month], .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_day] {
        transition: opacity var(--hover-duration);
    }
    .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_year]:hover, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_month]:hover, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_day]:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_year]::after, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_month]::after, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_day]::after {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_select-arrow.svg) 0 0 no-repeat;
            mask: url(../img/ico_select-arrow.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
    background-color: #656565;
    width: 14px;
    height: 8px;
    pointer-events: none;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_year]::after, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_month]::after, .c-form-02 .wpcf7-form-control-wrap[data-name=your_birthday_day]::after {
        top: 50%;
        right: calc(24 / var(--design-width) * 100vw);
        width: calc(16 / var(--design-width) * 100vw);
        height: calc(9 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1099px) {
    .c-form-02 .wpcf7-form-control-wrap[data-name=your_message] {
        width: 100%;
    }
}
.c-form-02 .wpcf7-textarea,
.c-form-02 .wpcf7-text,
.c-form-02 .wpcf7-select {
    padding: 10px 30px;
    border-radius: 10px;
    background-color: var(--color-background-5);
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-textarea,
    .c-form-02 .wpcf7-text,
    .c-form-02 .wpcf7-select {
        padding: calc(22 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        letter-spacing: 0.02em;
    }
}
.c-form-02 .wpcf7-textarea::-moz-placeholder, .c-form-02 .wpcf7-text::-moz-placeholder, .c-form-02 .wpcf7-select::-moz-placeholder {
    color: var(--color-text-4);
}
.c-form-02 .wpcf7-textarea::placeholder,
.c-form-02 .wpcf7-text::placeholder,
.c-form-02 .wpcf7-select::placeholder {
    color: var(--color-text-4);
}
.c-form-02 .wpcf7-textarea {
    max-width: 652px;
    width: 100%;
    height: 150px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-textarea {
        height: calc(216 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.c-form-02 .wpcf7-text {
    max-width: 346px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-text {
        max-width: initial;
    }
}
.c-form-02 .wpcf7-text[name=your_address] {
    max-width: 652px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-text[name=your_address] {
        max-width: initial;
    }
}
.c-form-02 .wpcf7-text[name=your_email] {
    max-width: 534px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-text[name=your_email] {
        max-width: initial;
    }
}
.c-form-02 .wpcf7-text[name=your_email_confirm] {
    margin-top: 10px;
    max-width: 534px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-text[name=your_email_confirm] {
        margin-top: calc(15 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.c-form-02 .wpcf7-select {
    width: 130px;
    color: var(--color-base-1);
}
@media (hover: hover) and (pointer: fine) {
    .c-form-02 .wpcf7-select {
        transition: opacity var(--hover-duration);
    }
    .c-form-02 .wpcf7-select:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-form-02 .wpcf7-select.is-placeholder {
    color: var(--color-text-4);
}
.c-form-02 .wpcf7-select[name=your_birthday_year] {
    padding-left: 39px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-select[name=your_birthday_year] {
        padding-left: calc(91 / var(--design-width) * 100vw);
        width: calc(215 / var(--design-width) * 100vw);
    }
}
.c-form-02 .wpcf7-select[name=your_birthday_month], .c-form-02 .wpcf7-select[name=your_birthday_day] {
    padding-left: 51px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-select[name=your_birthday_month], .c-form-02 .wpcf7-select[name=your_birthday_day] {
        padding-left: calc(57 / var(--design-width) * 100vw);
        width: calc(141 / var(--design-width) * 100vw);
    }
}
.c-form-02 select.is-initial {
    color: var(--color-text-4);
}
.c-form-02 .wpcf7-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 35px;
    margin-inline: auto;
    padding-block: 27px 31px;
    border-radius: 20px;
    background-color: var(--color-accent-2);
    width: 320px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-white-1);
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-02 .wpcf7-submit {
        transition: opacity var(--hover-duration);
    }
    .c-form-02 .wpcf7-submit:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-submit {
        margin-top: calc(30 / var(--design-width) * 100vw);
        padding-block: calc(19 / var(--design-width) * 100vw) calc(21 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        width: 100%;
    }
}
.c-form-02 .wpcf7-not-valid-tip,
.c-form-02 .birth-error-area {
    margin-top: 10px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-not-valid-tip,
    .c-form-02 .birth-error-area {
        margin-top: calc(15 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02 .wpcf7-checkbox + .wpcf7-not-valid-tip {
        margin-top: calc(20 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-form-02 .wpcf7-not-valid {
    border: 1px solid var(--color-accent-2);
    background-color: rgba(255, 78, 138, 0.1);
}
.c-form-02 .wpcf7-not-valid.wpcf7-checkbox {
    border: none;
}
.c-form-02 .js-birth-wrap:has([name=your_birthday_day].wpcf7-not-valid) [name=your_birthday_year],
.c-form-02 .js-birth-wrap:has([name=your_birthday_day].wpcf7-not-valid) [name=your_birthday_month] {
    border: 1px solid var(--color-accent-2);
    background-color: rgba(255, 78, 138, 0.1);
}
.c-form-02 .js-birth-wrap .wpcf7-not-valid-tip {
    display: none;
}
.c-form-02 input[type=checkbox]:focus-visible + .wpcf7-list-item-label {
    outline: auto;
    outline-color: var(--color-accent-1);
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-handler {
    border: none;
    margin-bottom: 0;
    padding: 29px 30px 28px;
    border-radius: 10px;
    background-color: var(--color-background-5);
    max-width: 652px;
}
@media screen and (max-width: 1099px) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-handler {
        max-width: initial;
    }
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-handler {
        padding: 0;
        border-radius: 0;
        background-color: transparent;
        width: -moz-fit-content;
        width: fit-content;
    }
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-container {
    padding: 0;
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner {
    text-align: left;
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner span {
    display: block;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4285714286;
    letter-spacing: 0.02em;
    color: var(--color-text-4);
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner span {
        display: none;
    }
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner span:nth-of-type(2) {
    margin-top: 8px;
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .codedropz-btn-wrap {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .codedropz-btn-wrap {
        margin-top: 0;
    }
}
.c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .cd-upload-btn {
    display: flex;
    justify-content: center;
    padding-block: 6px 9px;
    border-radius: 10px;
    background-color: rgba(101, 101, 101, 0.8);
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4285714286;
    letter-spacing: 0.02em;
    color: var(--color-white-1);
    width: 174px;
}
@media (hover: hover) and (pointer: fine) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .cd-upload-btn {
        transition: opacity var(--hover-duration);
    }
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .cd-upload-btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .cd-upload-btn {
        padding-block: calc(6 / var(--design-width) * 100vw) calc(9 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        width: calc(174 / var(--design-width) * 100vw);
    }
    .edge .c-form-02 .codedropz-upload-wrapper .codedropz-upload-inner .cd-upload-btn {
        padding-block: calc(7 / var(--design-width) * 100vw) calc(9 / var(--design-width) * 100vw);
    }
}
.c-form-02 .codedropz-upload-wrapper .dnd-upload-counter {
    display: none;
}
.c-form-02 .codedropz-upload-wrapper .d-none {
    display: none;
}
.c-form-02 .codedropz-upload-wrapper .dnd-upload-image {
    display: none;
}
.c-form-02 .codedropz-upload-wrapper .dnd-upload-details {
    padding-left: 0;
}
.c-form-02 .codedropz-upload-wrapper .dnd-upload-details .name {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .dnd-upload-details .name {
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
.c-form-02 .codedropz-upload-wrapper .dnd-upload-details .dnd-progress-bar {
    display: none;
}
.c-form-02 .codedropz-upload-wrapper .has-error {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: var(--color-accent-2) !important;
}
@media screen and (max-width: 767px) {
    .c-form-02 .codedropz-upload-wrapper .has-error {
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
.c-form-02__file-desc {
    margin-top: 10px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4285714286;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-form-02__file-desc {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
    }
}
.c-form-02--file .c-form-02__item {
    padding-inline: 50px;
    -moz-column-gap: 18.8%;
         column-gap: 18.8%;
}
@media screen and (max-width: 767px) {
    .c-form-02--file .c-form-02__item {
        padding-inline: 0;
    }
}
.c-form-02--file .c-form-02__item-ttl {
    width: 160px;
}
@media screen and (max-width: 767px) {
    .c-form-02--file .c-form-02__item-ttl {
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-img
--------------------------------------------- */
/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    height: 100dvh;
}
@media screen and (max-width: 767px) {
    .c-kv {
        height: 100dvh;
    }
}
.c-kv__img {
    height: 100%;
}
.c-kv__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-kv__list {
    display: none;
}
@media screen and (max-width: 1365px) {
    .c-kv__list {
        display: block;
        position: absolute;
        top: calc(100dvh - 100px);
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
        -moz-column-gap: 20px;
             column-gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-kv__list {
        top: calc(100dvh - 74 / var(--design-width) * 100vw);
        left: calc(26 / var(--design-width) * 100vw);
        transform: translateX(0);
        -moz-column-gap: calc(10 / var(--design-width) * 100vw);
             column-gap: calc(10 / var(--design-width) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-kv__list-link {
        transition: opacity var(--hover-duration);
    }
    .c-kv__list-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .c-kv__list-link {
        display: block;
        padding: 12px 15px 9px;
        border-radius: 10px;
        background-color: var(--color-accent-1);
        color: var(--color-white-1);
        width: 350px;
    }
}
@media screen and (max-width: 767px) {
    .c-kv__list-link {
        display: block;
        padding: calc(7 / var(--design-width) * 100vw) calc(17 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        color: var(--color-white-1);
        width: initial;
    }
}
.c-kv__link-txt-1 {
    display: block;
    text-align: right;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.4285714286;
}
@media screen and (max-width: 1365px) {
    .c-kv__link-txt-1 {
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .c-kv__link-txt-1 {
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.4166666667;
    }
}
.c-kv__link-txt-2 {
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.09em;
    line-height: 1.45;
}
@media screen and (max-width: 1365px) {
    .c-kv__link-txt-2 {
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .c-kv__link-txt-2 {
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}

/* ---------------------------------------------
*   c-kv-lower
--------------------------------------------- */
.c-kv-lower {
    position: relative;
    height: 100dvh;
}
.c-kv-lower__img {
    height: 100%;
}
.c-kv-lower__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-kv-lower__ttl {
    position: absolute;
    bottom: 19px;
    left: 133px;
}
@media screen and (max-width: 1365px) {
    .c-kv-lower__ttl {
        left: calc(133 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl {
        bottom: calc(16 / var(--design-width) * 100vw);
        left: calc(15 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--business .c-ttl-lower-01__main-ttl {
        margin-left: calc(5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--odei .c-ttl-lower-01__main-ttl {
        margin-left: calc(5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .c-kv-lower__ttl--hasai {
        bottom: 30px;
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--hasai {
        bottom: calc(22 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .c-kv-lower__ttl--hasai .c-ttl-lower-01__main-ttl {
        margin-top: 0;
        line-height: 1.18;
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--hasai .c-ttl-lower-01__main-ttl {
        margin-top: calc(5 / var(--design-width) * 100vw);
        margin-left: calc(5 / var(--design-width) * 100vw);
        line-height: 1.18;
    }
}
.c-kv-lower__ttl--hasai br {
    display: none;
}
@media screen and (max-width: 1365px) {
    .c-kv-lower__ttl--hasai br {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--kairyodo .c-ttl-lower-01__main-ttl {
        margin-left: calc(5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 899px) {
    .c-kv-lower__ttl--ryudoka .c-ttl-lower-01__main-ttl {
        font-size: calc(105 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__ttl--ryudoka .c-ttl-lower-01__main-ttl {
        margin-left: calc(6 / var(--design-width) * 100vw);
        font-size: calc(50 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__ttl--recruit:nth-of-type(1) {
        display: none;
    }
}
.c-kv-lower__ttl--recruit:nth-of-type(2) {
    display: none;
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__ttl--recruit:nth-of-type(2) {
        display: block;
    }
}
.c-kv-lower__lead {
    position: absolute;
    top: 50%;
    left: 133px;
    transform: translateY(calc(-50% - 36px));
    font-size: calc(78 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.3974358974;
    color: var(--color-white-1);
}
@media screen and (max-width: 1365px) {
    .c-kv-lower__lead {
        left: 9.7435897436vw;
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__lead {
        top: calc(104 / var(--design-width) * 100vw);
        transform: translateY(0);
        left: calc(18 / var(--design-width) * 100vw);
        font-size: calc(44 / var(--design-width) * 100vw);
        line-height: 1.3863636364;
    }
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__lead--1 {
        display: none;
    }
}
.c-kv-lower__lead--2 {
    display: none;
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__lead--2 {
        display: block;
    }
}
.c-kv-lower__lead-txt-1, .c-kv-lower__lead-txt-2, .c-kv-lower__lead-txt-3 {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    white-space: nowrap;
}
.c-kv-lower__lead-txt-1::after, .c-kv-lower__lead-txt-2::after, .c-kv-lower__lead-txt-3::after {
    content: "";
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    height: 71.5596330275%;
    background-color: var(--color-accent-2);
    z-index: -1;
}
@media screen and (max-width: 767px) {
    .c-kv-lower__lead-txt-1::after, .c-kv-lower__lead-txt-2::after, .c-kv-lower__lead-txt-3::after {
        height: 80.3278688525%;
    }
}
.c-kv-lower__lead-txt-1::after {
    width: 98.7179487179%;
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__lead-txt-1::after {
        width: 100.4545454545%;
    }
}
.c-kv-lower__lead-txt-2 {
    letter-spacing: -0.065em;
}
@media screen and (max-width: 767px) {
    .c-kv-lower__lead-txt-2 {
        letter-spacing: 0;
    }
}
.c-kv-lower__lead-txt-2::after {
    width: 94.9685534591%;
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__lead-txt-2::after {
        width: 104.5454545455%;
    }
}
@media screen and (max-width: 767px) {
    .c-kv-lower__lead-txt-3 {
        letter-spacing: -0.081em;
    }
}
@media screen and (max-width: 1099px) {
    .c-kv-lower__lead-txt-3::after {
        width: 93.6111111111%;
    }
}

/* ---------------------------------------------
*   c-label-01
--------------------------------------------- */
.c-label-01 {
    display: grid;
    place-items: center;
    padding-block: 6px 7px;
    border-radius: 100vh;
    background-color: var(--color-accent-2);
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.035em;
    line-height: 1;
    color: var(--color-white-1);
    min-width: 122px;
}
@media screen and (max-width: 767px) {
    .c-label-01 {
        font-size: calc(12 / var(--design-width) * 100vw);
        padding: calc(4 / var(--design-width) * 100vw) calc(23 / var(--design-width) * 100vw) calc(5 / var(--design-width) * 100vw);
        min-width: calc(96 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-label-01--news {
        font-size: calc(14 / var(--design-width) * 100vw);
        padding: calc(7 / var(--design-width) * 100vw) calc(32 / var(--design-width) * 100vw);
        min-width: calc(122 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-link-01
--------------------------------------------- */
.c-link-01 {
    position: relative;
    display: block;
    padding-right: 57px;
    width: -moz-fit-content;
    width: fit-content;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.087em;
    line-height: 1.4285714286;
    cursor: pointer;
}
@media screen and (max-width: 1365px) {
    .c-link-01 {
        font-size: calc(20 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .c-link-01 {
        padding-right: calc(42 / var(--design-width) * 100vw);
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.4166666667;
    }
}
.c-link-01::before {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-base-1);
    width: 18px;
    height: 15px;
    transition: background-color 0.3s;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-link-01::before {
        right: calc(10 / var(--design-width) * 100vw);
        width: calc(14 / var(--design-width) * 100vw);
        height: calc(11 / var(--design-width) * 100vw);
    }
}
.c-link-01::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 42px;
    height: 42px;
    border: 1px solid var(--color-base-1);
    border-radius: 50%;
    transition: transform 0.3s, background-color 0.3s;
}
@media screen and (max-width: 767px) {
    .c-link-01::after {
        width: calc(34 / var(--design-width) * 100vw);
        height: calc(34 / var(--design-width) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-link-01:hover::before {
        background-color: var(--color-white-1);
    }
    .c-link-01:hover::after {
        transform: translateY(-50%) scale(1.2380952381);
        background-color: var(--color-base-1);
    }
}
.c-link-01--case-card {
    padding-right: 44px;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .c-link-01--case-card {
        padding-right: calc(44 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0.087em;
    }
}
.c-link-01--case-card::before {
    right: 10px;
    width: 14px;
    height: 11px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .c-link-01--case-card::before {
        right: calc(10 / var(--design-width) * 100vw);
        width: calc(14 / var(--design-width) * 100vw);
        height: calc(11 / var(--design-width) * 100vw);
    }
}
.c-link-01--case-card::after {
    width: 34px;
    height: 34px;
    border-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .c-link-01--case-card::after {
        width: calc(34 / var(--design-width) * 100vw);
        height: calc(34 / var(--design-width) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-link-01--case-card:hover::before {
        background-color: var(--color-accent-1);
    }
    .c-link-01--case-card:hover::after {
        transform: translateY(-50%) scale(1.2380952381);
        background-color: var(--color-white-1);
    }
}

/* ---------------------------------------------
*   c-link-map
--------------------------------------------- */
.c-link-map {
    position: relative;
    padding-right: 20px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4285714286;
    color: var(--color-accent-2);
    text-decoration: underline;
}
@media screen and (max-width: 767px) {
    .c-link-map {
        padding-right: calc(16 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-link-map:hover {
        text-decoration: none;
    }
}
.c-link-map::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 14px;
    height: 18px;
    background: url(../img/ico_pin.svg) 0 0 no-repeat;
    background-size: 100% auto;
}
@media screen and (max-width: 767px) {
    .c-link-map::after {
        width: calc(12 / var(--design-width) * 100vw);
        height: calc(16 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-list
--------------------------------------------- */
/* ---------------------------------------------
*   wp-pagenavi
--------------------------------------------- */
.wp-pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 12px;
         column-gap: 12px;
}
@media screen and (max-width: 767px) {
    .wp-pagenavi {
        -moz-column-gap: calc(15 / var(--design-width) * 100vw);
             column-gap: calc(15 / var(--design-width) * 100vw);
    }
}
.wp-pagenavi .current,
.wp-pagenavi .page {
    display: grid;
    place-items: center;
    border-radius: 50%;
    width: 40px;
    aspect-ratio: 1;
    border-style: solid;
    border-color: var(--color-accent-1);
    border-width: 1px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.035em;
    transition: color 0.3s, background-color 0.3s;
}
@media screen and (max-width: 767px) {
    .wp-pagenavi .current,
    .wp-pagenavi .page {
        width: calc(34 / var(--design-width) * 100vw);
        border-width: max(1px, 1 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
    }
}
.wp-pagenavi .current {
    background-color: var(--color-accent-1);
    color: var(--color-white-1);
}
.wp-pagenavi .page {
    color: var(--color-accent-1);
}
.wp-pagenavi a {
    transition: background-color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
    .wp-pagenavi a:hover {
        background-color: var(--color-accent-1);
        border-color: var(--color-accent-1) !important;
        color: var(--color-white-1);
    }
}
.wp-pagenavi span {
    padding: 0 !important;
    margin: 0 !important;
}
.wp-pagenavi span.current {
    border-color: var(--color-accent-1) !important;
}
.wp-pagenavi .nextpostslink {
    color: transparent;
    transition: opacity 0.3s;
    -webkit-mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-accent-1);
}
@media (hover: hover) and (pointer: fine) {
    .wp-pagenavi .nextpostslink:hover {
        color: transparent;
        border-color: transparent !important;
        opacity: 0.7;
    }
}
.wp-pagenavi .previouspostslink {
    color: transparent;
    transition: opacity 0.3s;
    -webkit-mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_04.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-accent-1);
    rotate: 180deg;
}
@media (hover: hover) and (pointer: fine) {
    .wp-pagenavi .previouspostslink:hover {
        color: transparent;
        border-color: transparent !important;
        opacity: 0.7;
    }
}

/* ---------------------------------------------
*   c-section-01
--------------------------------------------- */
.c-section-01 {
    border-radius: 0 0 50px 50px;
    padding-bottom: 100px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
}
@media screen and (max-width: 1365px) {
    .c-section-01 {
        padding-inline: 50px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-01 {
        border-radius: 0 0 calc(30 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
        padding-inline: calc(var(--contents-side-padding) / var(--design-width) * 100vw);
    }
    .windows.chrome .c-section-01 {
        padding-inline: 5.1282051282%;
    }
    .windows.edge .c-section-01 {
        padding-inline: 5.1282051282%;
    }
}
.c-section-01--white {
    background-color: var(--color-background-3);
}
.c-section-01--orange {
    background-color: var(--color-background-1);
}
.c-section-01--pink {
    background-color: var(--color-background-8);
}
.c-section-01__inner {
    margin-inline: auto;
    padding-inline: calc(var(--contents-side-padding-2) * 1px);
    max-width: calc(var(--contents-width) * 1px);
}
@media screen and (max-width: 767px) {
    .c-section-01__inner {
        padding-inline: 0;
        max-width: initial;
    }
}

/* ---------------------------------------------
*   c-slider
--------------------------------------------- */
/* ---------------------------------------------
*   c-slider-kv
--------------------------------------------- */
.c-slider-kv {
    width: 100%;
    height: 100%;
}
.c-slider-kv__wrapper {
    height: 100%;
}
.c-slider-kv .splide__track {
    height: 100%;
}
.c-slider-kv .splide__slide {
    position: relative;
}
.c-slider-kv .splide__slide:nth-of-type(1) .c-slider-kv__txt {
    transform: translate(-50%, calc(-50% + 35 / var(--design-width) * 100vw));
    width: 843px;
}
@media screen and (max-width: 1365px) {
    .c-slider-kv .splide__slide:nth-of-type(1) .c-slider-kv__txt {
        width: 750px;
    }
}
@media screen and (max-width: 767px) {
    .c-slider-kv .splide__slide:nth-of-type(1) .c-slider-kv__txt {
        transform: translate(-50%, calc(-50% + 4 / var(--design-width) * 100vw));
        width: calc(419.5 / var(--design-width) * 100vw);
    }
}
.c-slider-kv .splide__slide:nth-of-type(2) .c-slider-kv__txt {
    transform: translate(-50%, calc(-50% + 35 / var(--design-width) * 100vw));
    width: 742px;
}
@media screen and (max-width: 767px) {
    .c-slider-kv .splide__slide:nth-of-type(2) .c-slider-kv__txt {
        transform: translate(-50%, calc(-50% + 5 / var(--design-width) * 100vw));
        width: calc(375.5 / var(--design-width) * 100vw);
    }
}
.c-slider-kv .splide__slide:nth-of-type(3) .c-slider-kv__txt {
    transform: translate(-50%, calc(-50% - 15 / var(--design-width) * 100vw));
    width: 925px;
}
@media screen and (max-width: 1365px) {
    .c-slider-kv .splide__slide:nth-of-type(3) .c-slider-kv__txt {
        width: 750px;
    }
}
@media screen and (max-width: 767px) {
    .c-slider-kv .splide__slide:nth-of-type(3) .c-slider-kv__txt {
        transform: translate(-50%, calc(-50% - 8 / var(--design-width) * 100vw));
        width: calc(417 / var(--design-width) * 100vw);
    }
}
.c-slider-kv .splide__slide:nth-of-type(4) .c-slider-kv__txt {
    transform: translate(-50%, calc(-50% + 5 / var(--design-width) * 100vw));
    width: 857px;
}
@media screen and (max-width: 1365px) {
    .c-slider-kv .splide__slide:nth-of-type(4) .c-slider-kv__txt {
        width: 750px;
    }
}
@media screen and (max-width: 767px) {
    .c-slider-kv .splide__slide:nth-of-type(4) .c-slider-kv__txt {
        transform: translate(-50%, calc(-50% + 5 / var(--design-width) * 100vw));
        width: calc(440.5 / var(--design-width) * 100vw);
    }
}
.c-slider-kv .splide__slide .c-slider-kv__img {
    transform: translateX(-10%);
}
.c-slider-kv .splide__slide.is-active .c-slider-kv__img {
    transform: translateX(0);
    transition: transform 3s ease;
}
.c-slider-kv .splide__slide.is-prev-slide .c-slider-kv__img {
    transform: translateX(10%) scale(1.1);
    transition: transform 3s ease;
}
.c-slider-kv__txt {
    position: absolute;
    top: 50%;
    left: 50%;
}
.c-slider-kv__txt img {
    width: 100%;
    height: auto;
}
.c-slider-kv__img {
    width: 100%;
    height: 100%;
}
.c-slider-kv__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-slider-01
--------------------------------------------- */
.c-slider-01 {
    margin-inline: calc(50% - 50vw);
}
@media screen and (max-width: 767px) {
    .mac.safari .c-slider-01 .splide__track {
        overflow: initial;
    }
}
.c-slider-01 .splide__slide {
    width: 274px !important;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .c-slider-01 .splide__slide {
        width: calc(128 / var(--design-width) * 100vw) !important;
    }
}
.c-slider-01__img {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-slider-01__img {
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.c-slider-01__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-tile
--------------------------------------------- */
/* ---------------------------------------------
*   c-ttl-01
--------------------------------------------- */
.c-ttl-01 {
    position: relative;
    padding-left: 18px;
    padding-bottom: 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.035em;
    line-height: 1.45;
}
@media screen and (max-width: 767px) {
    .c-ttl-01 {
        padding-left: calc(13 / var(--design-width) * 100vw);
        padding-bottom: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.c-ttl-01::before {
    position: absolute;
    top: 40%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .c-ttl-01::before {
        top: 36%;
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.c-ttl-01--green {
    border-bottom-color: rgba(23, 173, 17, 0.5);
    color: var(--color-text-1);
}
.c-ttl-01--green::before {
    background-color: var(--color-text-1);
}
.c-ttl-01--orange {
    border-bottom-color: rgba(222, 163, 1, 0.5);
    color: var(--color-accent-1);
}
.c-ttl-01--orange::before {
    background-color: var(--color-accent-1);
}
.c-ttl-01--pink {
    border-bottom-color: rgba(255, 78, 138, 0.5);
    color: var(--color-accent-2);
}
.c-ttl-01--pink::before {
    background-color: var(--color-accent-2);
}

/* ---------------------------------------------
*   c-ttl-02
--------------------------------------------- */
.c-ttl-02__ttl-txt {
    display: block;
    position: relative;
    padding-left: 18px;
    padding-bottom: 21px;
    border-bottom: 1px solid rgba(222, 163, 1, 0.5);
    text-align: left;
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4375;
    color: var(--color-accent-1);
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-ttl-02__ttl-txt {
        position: relative;
        padding-left: calc(13 / var(--design-width) * 100vw);
        padding-bottom: calc(7 / var(--design-width) * 100vw);
        font-size: calc(24 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.4583333333;
        letter-spacing: 0.035em;
    }
}
.c-ttl-02__ttl-txt::before {
    position: absolute;
    top: 29.4117647059%;
    left: 0;
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-ttl-02__ttl-txt::before {
        top: 36.7647058824%;
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.c-ttl-02__ttl-txt--blue {
    border-bottom-color: rgba(1, 152, 216, 0.5);
    color: var(--color-accent-3);
}
.c-ttl-02__ttl-txt--blue::before {
    background-color: var(--color-accent-3);
}
@media screen and (max-width: 767px) {
    .c-ttl-02__icon {
        position: absolute;
        top: calc(3 / var(--design-width) * 100vw);
        right: calc(10 / var(--design-width) * 100vw);
        display: block;
        content: "";
        border-radius: 50%;
        width: calc(30 / var(--design-width) * 100vw);
        aspect-ratio: 1;
        background-color: var(--color-accent-1);
        transition: opacity 0.3s;
        will-change: opacity;
    }
    .c-ttl-02__icon::after {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        content: "";
        display: block;
        border-radius: 50%;
        width: calc(8 / var(--design-width) * 100vw);
        aspect-ratio: 1;
        -webkit-mask-position: 0 0;
                mask-position: 0 0;
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-size: 100% 100%;
                mask-size: 100% 100%;
        background-color: var(--color-white-1);
    }
    .is-open .c-ttl-02__icon::after {
        -webkit-mask-image: url(../img/ico_minus_02.svg);
                mask-image: url(../img/ico_minus_02.svg);
    }
    .is-close .c-ttl-02__icon::after {
        -webkit-mask-image: url(../img/ico_plus_02.svg);
                mask-image: url(../img/ico_plus_02.svg);
    }
    .c-ttl-02__icon--blue {
        background-color: var(--color-accent-3);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-ttl-02:hover .c-ttl-02__icon {
        opacity: 0.7;
    }
}

/* ---------------------------------------------
*   c-ttl-03
--------------------------------------------- */
.c-ttl-03 {
    padding-bottom: 19px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}
@media screen and (max-width: 767px) {
    .c-ttl-03 {
        padding-bottom: calc(10 / var(--design-width) * 100vw);
    }
}
.c-ttl-03--ls-35 {
    padding-bottom: 15px;
}
@media screen and (max-width: 767px) {
    .c-ttl-03--ls-35 {
        padding-bottom: calc(10 / var(--design-width) * 100vw);
    }
}
.c-ttl-03--ls-35 .c-ttl-03__ttl-txt {
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .c-ttl-03--ls-35 .c-ttl-03__ttl-txt::before {
        width: calc(8 / var(--design-width) * 100vw);
    }
}
.c-ttl-03__ttl-txt {
    position: relative;
    display: block;
    padding-left: 18px;
    text-align: left;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-base-1);
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-ttl-03__ttl-txt {
        padding-left: calc(13 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
        letter-spacing: 0.035em;
    }
}
.c-ttl-03__ttl-txt::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-ttl-03__ttl-txt::before {
        top: calc(11 / var(--design-width) * 100vw);
        transform: translateY(0);
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.c-ttl-03--orange .c-ttl-03__ttl-txt {
    color: var(--color-accent-1);
}
.c-ttl-03--orange .c-ttl-03__ttl-txt::before {
    background-color: var(--color-base-1);
}

@media screen and (max-width: 767px) {
    .c-ttl-03__icon {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        content: "";
        border-radius: 50%;
        width: calc(30 / var(--design-width) * 100vw);
        aspect-ratio: 1;
        background-color: var(--color-accent-1);
        transition: opacity 0.3s;
        will-change: opacity;
    }
    .c-ttl-03__icon::after {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        content: "";
        display: block;
        border-radius: 50%;
        width: calc(8 / var(--design-width) * 100vw);
        aspect-ratio: 1;
        -webkit-mask-position: 0 0;
                mask-position: 0 0;
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-size: 100% 100%;
                mask-size: 100% 100%;
        background-color: var(--color-white-1);
    }
    .is-open .c-ttl-03__icon::after {
        -webkit-mask-image: url(../img/ico_minus_02.svg);
                mask-image: url(../img/ico_minus_02.svg);
    }
    .is-close .c-ttl-03__icon::after {
        -webkit-mask-image: url(../img/ico_plus_02.svg);
                mask-image: url(../img/ico_plus_02.svg);
    }
    .c-ttl-03__icon--blue {
        background-color: var(--color-accent-3);
    }
    .c-ttl-03__icon--white {
        background-color: var(--color-white-1);
    }
    .c-ttl-03__icon--white::after {
        background-color: var(--color-accent-2);
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-ttl-03:hover .c-ttl-03__icon {
        opacity: 0.7;
    }
}
.c-ttl-03--orange {
    border-bottom-color: rgba(132, 93, 81, 0.5);
}
.c-ttl-03--white {
    border-bottom-color: rgba(255, 255, 255, 0.5);
}
.c-ttl-03--white .c-ttl-03__ttl-txt {
    color: var(--color-white-1);
}
.c-ttl-03--white .c-ttl-03__ttl-txt::before {
    background-color: var(--color-white-1);
}

/* ---------------------------------------------
*   c-ttl-04
--------------------------------------------- */
.c-ttl-04 {
    padding-bottom: 19px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}
@media screen and (max-width: 767px) {
    .c-ttl-04 {
        padding-bottom: calc(7 / var(--design-width) * 100vw);
    }
}
.c-ttl-04__ttl-txt {
    position: relative;
    padding-left: 18px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .c-ttl-04__ttl-txt {
        padding-left: calc(13 / var(--design-width) * 100vw);
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
        font-weight: bold;
        letter-spacing: 0.035em;
    }
}
.c-ttl-04__ttl-txt::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .c-ttl-04__ttl-txt::before {
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.c-ttl-04--orange {
    border-bottom-color: rgba(222, 163, 1, 0.5);
}
.c-ttl-04--orange .c-ttl-04__ttl-txt {
    color: var(--color-accent-1);
}
.c-ttl-04--orange .c-ttl-04__ttl-txt::before {
    background-color: var(--color-accent-1);
}
.c-ttl-04--base {
    border-bottom-color: rgba(132, 93, 81, 0.5);
}
.c-ttl-04--base .c-ttl-04__ttl-txt {
    color: var(--color-base-1);
}
.c-ttl-04--base .c-ttl-04__ttl-txt::before {
    background-color: var(--color-accent-1);
}
.c-ttl-04--white {
    border-bottom-color: rgba(255, 255, 255, 0.5);
}
.c-ttl-04--white .c-ttl-04__ttl-txt {
    color: var(--color-white-1);
}
.c-ttl-04--white .c-ttl-04__ttl-txt::before {
    background-color: var(--color-white-1);
}
.c-ttl-04--pink {
    border-bottom-color: rgba(255, 78, 138, 0.5);
}
.c-ttl-04--pink .c-ttl-04__ttl-txt {
    color: var(--color-accent-2);
}
.c-ttl-04--pink .c-ttl-04__ttl-txt::before {
    background-color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .c-ttl-04--fz-20-sp {
        padding-bottom: calc(9 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .c-ttl-04--fz-20-sp .c-ttl-04__ttl-txt {
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-ttl-lower-01
--------------------------------------------- */
.c-ttl-lower-01 {
    color: var(--color-white-1);
}
.c-ttl-lower-01__sub-ttl {
    position: relative;
    padding-left: 18px;
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.45;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .c-ttl-lower-01__sub-ttl {
        margin-left: calc(6 / var(--design-width) * 100vw);
        padding-left: calc(16 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0;
    }
}
.c-ttl-lower-01__dot {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .c-ttl-lower-01__dot {
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.c-ttl-lower-01__main-ttl {
    margin-top: -16px;
    display: block;
    font-size: calc(119 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.4453781513;
}
@media screen and (max-width: 767px) {
    .c-ttl-lower-01__main-ttl {
        margin-top: calc(-3 / var(--design-width) * 100vw);
        font-size: calc(50 / var(--design-width) * 100vw);
        line-height: 1.44;
        letter-spacing: 0;
    }
}
.c-ttl-lower-01--recruit {
    bottom: 14px;
}
@media screen and (max-width: 767px) {
    .c-ttl-lower-01--recruit {
        bottom: calc(12 / var(--design-width) * 100vw);
    }
}
.c-ttl-lower-01--recruit .c-ttl-lower-01__sub-ttl {
    color: var(--color-accent-2);
}
.c-ttl-lower-01--recruit .c-ttl-lower-01__dot {
    background-color: var(--color-accent-2);
}
.c-ttl-lower-01--recruit .c-ttl-lower-01__main-ttl {
    margin-top: -27px;
    margin-left: -11px;
    font-size: calc(130 / var(--root-fz) * 1rem);
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .c-ttl-lower-01--recruit .c-ttl-lower-01__main-ttl {
        margin-top: calc(-14 / var(--design-width) * 100vw);
        margin-left: calc(5 / var(--design-width) * 100vw);
        font-size: calc(60 / var(--design-width) * 100vw);
        line-height: 1.45;
    }
}

/* ---------------------------------------------
*   c-txt
--------------------------------------------- */
/* ---------------------------------------------
*   c-wysiwyg
--------------------------------------------- */
.c-wysiwyg {
    overflow: hidden;
}
.c-wysiwyg::after {
    content: "";
    display: block;
    clear: both;
}
.c-wysiwyg > *:first-child {
    margin-top: 0;
}
.c-wysiwyg__lead {
    letter-spacing: 0.03em !important;
}
@media screen and (max-width: 767px) {
    .c-wysiwyg__lead {
        letter-spacing: 0 !important;
    }
}
.c-wysiwyg__img-flex, .c-wysiwyg__img-flex-2 {
    margin-top: 30px;
    display: grid;
    gap: 40px;
}
@media screen and (max-width: 1199px) {
    .c-wysiwyg__img-flex, .c-wysiwyg__img-flex-2 {
        flex-direction: column;
        gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-wysiwyg__img-flex, .c-wysiwyg__img-flex-2 {
        margin-top: calc(30 / var(--design-width) * 100vw);
        grid-template-columns: 1fr !important;
        gap: calc(15 / var(--design-width) * 100vw);
    }
}
.c-wysiwyg__img-flex:has(figure:only-of-type), .c-wysiwyg__img-flex-2:has(figure:only-of-type) {
    grid-template-columns: 1fr;
}
.c-wysiwyg__img-flex:has(figure:nth-of-type(2)):not(:has(img:nth-of-type(3))), .c-wysiwyg__img-flex-2:has(figure:nth-of-type(2)):not(:has(img:nth-of-type(3))) {
    grid-template-columns: repeat(2, 1fr);
}
.c-wysiwyg__img-flex:has(figure:nth-of-type(4)):not(:has(img:nth-of-type(5))), .c-wysiwyg__img-flex-2:has(figure:nth-of-type(4)):not(:has(img:nth-of-type(5))) {
    grid-template-columns: repeat(2, 1fr);
}
.c-wysiwyg__img-flex-2 {
    margin-top: 70px;
}
@media screen and (max-width: 767px) {
    .c-wysiwyg__img-flex-2 {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.c-wysiwyg p {
    margin-top: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .c-wysiwyg p {
        margin-top: calc(30 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0.04em;
    }
    .windows.chrome .c-wysiwyg p {
        font-size: calc(13.5 / var(--design-width) * 100vw);
    }
    .windows.edge .c-wysiwyg p {
        font-size: calc(13.5 / var(--design-width) * 100vw);
    }
}
.c-wysiwyg p small {
    margin-top: 6px;
    display: inline-block;
    font-size: calc(12 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-wysiwyg p small {
        margin-top: calc(6 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.c-wysiwyg figure {
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .c-wysiwyg figure {
        border-radius: 1.4652014652vw;
    }
}
.c-wysiwyg figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-wysiwyg img[class*=wp-image-],
.c-wysiwyg img[class*=attachment-] {
    display: block;
    height: auto;
    max-width: 100%;
}

/* ---------------------------------------------
*   p-business-section-01
--------------------------------------------- */
.p-business-section-01 {
    padding-block: 61px 110px;
}
@media screen and (max-width: 767px) {
    .p-business-section-01 {
        padding-block: calc(34 / var(--design-width) * 100vw) calc(47 / var(--design-width) * 100vw);
    }
}
.p-business-section-01__wrap {
    display: flex;
    align-items: start;
    -moz-column-gap: 38px;
         column-gap: 38px;
}
@media screen and (max-width: 1365px) {
    .p-business-section-01__wrap {
        flex-direction: column;
    }
}
.p-business-section-01__lead {
    margin-top: 92px;
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.8125;
    letter-spacing: 0;
    width: 480px;
}
@media screen and (max-width: 1365px) {
    .p-business-section-01__lead {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-business-section-01__lead {
        margin-top: 0;
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.6666666667;
    }
}
.p-business-section-01__lead strong {
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-business-section-01__lead br {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-business-section-01__lead br {
        display: block;
    }
}
.p-business-section-01__img-01 {
    margin-right: -50px;
    width: 632px;
}
@media screen and (max-width: 1365px) {
    .p-business-section-01__img-01 {
        margin-top: 30px;
        margin-inline: auto;
        width: 100%;
        max-width: 632px;
    }
}
@media screen and (max-width: 767px) {
    .p-business-section-01__img-01 {
        margin-top: calc(18 / var(--design-width) * 100vw);
        margin-inline: auto;
        width: 98.5714285714%;
    }
}
.p-business-section-01__img-01 img {
    width: 100%;
    height: auto;
}
.p-business-section-01__card-wrap {
    margin-top: 74px;
}
@media screen and (max-width: 767px) {
    .p-business-section-01__card-wrap {
        margin-top: calc(47 / var(--design-width) * 100vw);
    }
}
.p-business-section-01__cassette {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-business-section-01__cassette {
        margin-top: calc(48 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-cassette-01
--------------------------------------------- */
.p-business-cassette-01__ttl {
    margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
    .p-business-cassette-01__ttl {
        margin-bottom: calc(18 / var(--design-width) * 100vw);
    }
}
.p-business-cassette-01__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-cassette-01__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-business-cassette-01__list {
    margin-top: 42px;
}
@media screen and (max-width: 767px) {
    .p-business-cassette-01__list {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-card-01
--------------------------------------------- */
.p-business-card-01-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 40px;
}
@media screen and (max-width: 1249px) {
    .p-business-card-01-wrap {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p-business-card-01-wrap {
        gap: calc(20 / var(--design-width) * 100vw);
    }
}

.p-business-card-01 {
    border-radius: 30px;
    background-color: var(--color-background-2);
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-business-card-01 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-card-01__img {
    width: 100%;
}
.p-business-card-01__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-card-01__body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 29px 40px 46px 40px;
    min-height: 281px;
}
@media screen and (max-width: 767px) {
    .p-business-card-01__body {
        padding: calc(21 / var(--design-width) * 100vw) 8.5714285714% calc(36 / var(--design-width) * 100vw);
        min-height: calc(246 / var(--design-width) * 100vw);
    }
}
.p-business-card-01__ttl {
    text-align: center;
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4375;
    letter-spacing: 0;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-business-card-01__ttl {
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
    }
}
.p-business-card-01__txt {
    margin-top: 29px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-card-01__txt {
        margin-top: calc(18 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7142857143;
    }
}
.p-business-card-01__link {
    margin-top: 35px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-business-card-01__link {
        margin-top: 0;
    }
}

/* ---------------------------------------------
*   p-business-list-01
--------------------------------------------- */
.p-business-list-01 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 40px;
}
@media screen and (max-width: 1199px) {
    .p-business-list-01 {
        gap: 20px;
    }
}
@media screen and (max-width: 999px) {
    .p-business-list-01 {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p-business-list-01 {
        gap: calc(10 / var(--design-width) * 100vw);
    }
}
.p-business-list-01__item {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background-color: var(--color-accent-1);
    height: 92px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.035em;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-business-list-01__item {
        border-radius: calc(10 / var(--design-width) * 100vw);
        height: calc(51 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        letter-spacing: 0.02em;
    }
}

/* ---------------------------------------------
*   p-business-lower-section-01
--------------------------------------------- */
.p-business-lower-section-01 {
    padding-block: 75px 85px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-section-01 {
        padding-block: calc(34 / var(--design-width) * 100vw) calc(77 / var(--design-width) * 100vw);
    }
}
.p-business-lower-section-01__box-wrap {
    margin-top: 55px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-section-01__box-wrap {
        margin-top: calc(38 / var(--design-width) * 100vw);
    }
}
.p-business-lower-section-01__txt-2 {
    max-width: 1037px;
}
.p-business-lower-section-01__box-wrap-2 {
    margin-top: 45px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-section-01__box-wrap-2 {
        margin-top: calc(28 / var(--design-width) * 100vw);
    }
}
.p-business-lower-section-01__box-wrap-3 {
    margin-top: 45px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-section-01__box-wrap-3 {
        margin-top: calc(28 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-cassette-01
--------------------------------------------- */
.p-business-lower-cassette-01__img-01 {
    margin-top: 80px;
    margin-inline: auto;
    max-width: 805px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__img-01 {
        margin-top: calc(-20 / var(--design-width) * 100vw);
        margin-left: calc(-20 / var(--design-width) * 100vw);
        width: 111.4285714286%;
    }
}
.p-business-lower-cassette-01__img-01 img {
    width: 100%;
    height: auto;
}
.p-business-lower-cassette-01__img-02 {
    margin-top: -19px;
    margin-left: -6.0909090909%;
    width: 112.1818181818%;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__img-02 {
        margin-top: calc(20 / var(--design-width) * 100vw);
        margin-left: 0;
        width: 100%;
    }
}
.p-business-lower-cassette-01__img-02 img {
    width: 100%;
    height: auto;
}
.p-business-lower-cassette-01__ttl-02 {
    margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__ttl-02 {
        margin-bottom: calc(30 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01__container + .p-business-lower-cassette-01__container {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__container + .p-business-lower-cassette-01__container {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01__container-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__container-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.4285714286;
    }
}
.p-business-lower-cassette-01__list {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01__list {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--1 {
    margin-top: 84px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--1 {
        margin-top: calc(71 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--2 {
    margin-top: 100px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--2 {
        margin-top: calc(21 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--3 {
    margin-top: 79px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--3 {
        margin-top: calc(51 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--4 {
    margin-top: 118px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--4 {
        margin-top: calc(51 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--5 {
    margin-top: 100px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--5 {
        margin-top: calc(57 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-01--6 {
    margin-top: 137px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-01--6 {
        margin-top: calc(70 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-cassette-02
--------------------------------------------- */
.p-business-lower-cassette-02__body {
    margin-top: 40px;
    display: flex;
    align-items: start;
    -moz-column-gap: 73px;
         column-gap: 73px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__body {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__body {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02__body-left {
    flex: 1;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__body-left {
        display: contents;
    }
}
.p-business-lower-cassette-02__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__txt {
        order: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-business-lower-cassette-02__list-ttl {
    margin-top: 58px;
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__list-ttl {
        margin-top: 40px;
        order: 3;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__list-ttl {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02__list {
    margin-top: 10px;
    margin-right: -21px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__list {
        margin-right: 0;
        width: 100%;
        order: 4;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__list {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02__list-item {
    display: grid;
    place-items: center;
    padding-inline: 20px;
    border-radius: 15px;
    background-color: var(--color-background-4);
    min-height: 72px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__list-item {
        border-radius: calc(10 / var(--design-width) * 100vw);
        min-height: calc(68 / var(--design-width) * 100vw);
        text-align: center;
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.625;
    }
}
.p-business-lower-cassette-02__list-item + .p-business-lower-cassette-02__list-item {
    margin-top: 10px;
}
.p-business-lower-cassette-02__img-01 {
    border-radius: 30px;
    overflow: hidden;
    width: 457px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__img-01 {
        margin-top: 20px;
        border-radius: 2.1978021978vw;
        width: 100%;
        order: 2;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__img-01 {
        margin-top: calc(18 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02__img-01 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-lower-cassette-02__img-02 {
    margin-top: -114px;
    margin-left: -6.0909090909%;
    width: 112.1818181818%;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02__img-02 {
        margin-top: calc(-114 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__img-02 {
        margin-top: calc(7 / var(--design-width) * 100vw);
        width: 111.4285714286%;
        margin-left: -5.7142857143%;
    }
}
.p-business-lower-cassette-02__movie-01 {
    margin-top: 41px;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 1100/614;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02__movie-01 {
        margin-top: calc(19 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        aspect-ratio: 350/195;
    }
}
.p-business-lower-cassette-02__movie-01 iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: none;
}
@media (hover: hover) and (pointer: fine) {
    .p-business-lower-cassette-02__movie-01 iframe {
        transition: opacity var(--hover-duration);
    }
    .p-business-lower-cassette-02__movie-01 iframe:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-business-lower-cassette-02--1 {
    margin-top: 79px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02--1 {
        margin-top: calc(49 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02--2 {
    margin-top: 92px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02--2 {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-02--3 {
    margin-top: -81px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-02--3 {
        margin-top: -5.9340659341vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-02--3 {
        margin-top: calc(45 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-cassette-03
--------------------------------------------- */
.p-business-lower-cassette-03__img-01 {
    margin-top: -123px;
    margin-left: -6.3636363636%;
    width: 112.0909090909%;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-03__img-01 {
        margin-top: -8.8644688645vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-03__img-01 {
        margin-top: calc(6 / var(--design-width) * 100vw);
        margin-left: -5.7142857143%;
        width: 111.4285714286%;
    }
}
.p-business-lower-cassette-03__movie-01 {
    margin-top: 40px;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 1100/614;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-03__movie-01 {
        margin-top: calc(30 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        aspect-ratio: 350/195;
    }
}
.p-business-lower-cassette-03__movie-01 iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: none;
}
@media (hover: hover) and (pointer: fine) {
    .p-business-lower-cassette-03__movie-01 iframe {
        transition: opacity var(--hover-duration);
    }
    .p-business-lower-cassette-03__movie-01 iframe:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-business-lower-cassette-03--1 {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-03--1 {
        margin-top: 50px;
    }
}
.p-business-lower-cassette-03--2 {
    margin-top: -96px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-03--2 {
        margin-top: -7.032967033vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-03--2 {
        margin-top: calc(37 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-cassette-04
--------------------------------------------- */
.p-business-lower-cassette-04__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-business-lower-cassette-04__link {
    display: block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0;
    text-decoration: underline;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04__link {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 2;
    }
}
.p-business-lower-cassette-04__link:first-of-type {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04__link:first-of-type {
        margin-top: calc(12 / var(--design-width) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine) {
    .p-business-lower-cassette-04__link:hover {
        text-decoration: none;
    }
}
.p-business-lower-cassette-04--1 {
    margin-top: 69px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04--1 {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-04--1 .p-business-lower-cassette-04__body {
    margin-top: 13px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04--1 .p-business-lower-cassette-04__body {
        margin-top: calc(13 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-04--2 {
    margin-top: 56px;
    padding-bottom: 30px;
    border-bottom: 1px solid var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04--2 {
        margin-top: calc(37 / var(--design-width) * 100vw);
        padding-bottom: calc(17 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-04--2 .p-business-lower-cassette-04__body {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-04--2 .p-business-lower-cassette-04__body {
        margin-top: calc(15 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-cassette-05
--------------------------------------------- */
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__txt-01 .tb-hide {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__txt-01 .tb-hide {
        display: block !important;
    }
}
.p-business-lower-cassette-05__ttl-01 {
    margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__ttl-01 {
        margin-bottom: calc(19 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05__wrap {
    margin-top: -55px;
    display: flex;
    align-items: end;
    -moz-column-gap: 44px;
         column-gap: 44px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__wrap {
        margin-top: 30px;
        flex-direction: column-reverse;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__wrap {
        margin-top: calc(28 / var(--design-width) * 100vw);
        flex-direction: column-reverse;
        row-gap: calc(30 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05__wrap-left {
    flex: 1;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__wrap-left {
        width: 100%;
    }
}
.p-business-lower-cassette-05__list-01-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-01-ttl {
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05__list-01 {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-01 {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05__list-01-item {
    padding: 12px 33px;
    border-radius: 15px;
    background-color: var(--color-background-4);
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__list-01-item {
        display: flex;
        align-items: center;
        min-height: 72px;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-01-item {
        display: block;
        border-radius: calc(10 / var(--design-width) * 100vw);
        padding: calc(8 / var(--design-width) * 100vw) 8.5714285714%;
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        min-height: initial;
    }
}
.p-business-lower-cassette-05__list-01-item + .p-business-lower-cassette-05__list-01-item {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-01-item + .p-business-lower-cassette-05__list-01-item {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__list-01-item .sp-hide {
        display: none;
    }
}
.p-business-lower-cassette-05__img-01 {
    margin-right: -20px;
    border-radius: 30px;
    width: 626px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05__img-01 {
        margin-right: 0;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__img-01 {
        margin-right: 0;
        border-radius: calc(20 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.p-business-lower-cassette-05__img-01 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-lower-cassette-05__list-02-item + .p-business-lower-cassette-05__list-02-item {
    margin-top: 27px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-02-item + .p-business-lower-cassette-05__list-02-item {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05__list-02-item-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-02-item-ttl {
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-business-lower-cassette-05__list-02-item-txt {
    margin-top: 7px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: -0.02em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__list-02-item-txt {
        margin-top: calc(6 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-business-lower-cassette-05__img-02 {
    margin-top: 36px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__img-02 {
        margin-top: calc(28 / var(--design-width) * 100vw);
        margin-left: -5.7142857143%;
        width: 111.4285714286%;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__img-03 {
        margin-top: calc(10 / var(--design-width) * 100vw);
        margin-left: -5.7142857143%;
        width: 111.4285714286%;
    }
}
.p-business-lower-cassette-05__txt-02 {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__txt-02 {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-business-lower-cassette-05__card-wrap {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__card-wrap {
        margin-top: calc(37 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05__box-table {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05--1 {
    padding-bottom: 79px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05--1 {
        padding-bottom: calc(40 / var(--design-width) * 100vw);
    }
}
.p-business-lower-cassette-05--2 {
    margin-inline: calc(50% - 50vw);
    padding-block: 49px 21px;
    background-color: var(--color-background-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05--2 {
        margin-inline: 0;
        padding-block: 0 calc(60 / var(--design-width) * 100vw);
        background-color: transparent;
    }
}
.p-business-lower-cassette-05--2 .p-business-lower-cassette-05__inner {
    margin-inline: auto;
    padding-inline: 133px;
    max-width: 1366px;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-cassette-05--2 .p-business-lower-cassette-05__inner {
        padding-inline: 100px;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05--2 .p-business-lower-cassette-05__inner {
        padding-inline: 0;
    }
}
.p-business-lower-cassette-05--3 {
    padding-block: 80px 67px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-cassette-05--3 {
        padding-block: 0 calc(50 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-business-lower-card-01
--------------------------------------------- */
.p-business-lower-card-01-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 40px;
}
@media screen and (max-width: 1099px) {
    .p-business-lower-card-01-wrap {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01-wrap {
        grid-template-columns: repeat(1, 1fr);
        gap: calc(20 / var(--design-width) * 100vw) 0;
    }
}

.p-business-lower-card-01 {
    border-radius: 30px;
    background-color: var(--color-background-2);
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-card-01__img {
    width: 100%;
}
.p-business-lower-card-01__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-lower-card-01__body {
    padding: 45px 41px 43px 40px;
    min-height: 335px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01__body {
        padding: calc(22 / var(--design-width) * 100vw) 8.5714285714% calc(31 / var(--design-width) * 100vw);
        min-height: initial;
    }
}
.p-business-lower-card-01__ttl {
    text-align: center;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01__ttl {
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
    }
}
.p-business-lower-card-01__sub-ttl {
    display: block;
    margin-top: 16px;
    text-align: center;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.035em;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01__sub-ttl {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-business-lower-card-01__txt {
    margin-top: 37px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: -0.033em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-card-01__txt {
        margin-top: calc(20 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0;
    }
}
.p-business-lower-card-01__txt--ls-0 {
    letter-spacing: 0;
}

/* ---------------------------------------------
*   p-business-lower-box-01
--------------------------------------------- */
.p-business-lower-box-01-wrap {
    display: flex;
    -moz-column-gap: 4.5454545455%;
         column-gap: 4.5454545455%;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-01-wrap {
        flex-direction: column;
        row-gap: calc(51 / var(--design-width) * 100vw);
    }
}

.p-business-lower-box-01 {
    position: relative;
}
.p-business-lower-box-01:not(:last-of-type)::after {
    position: absolute;
    top: 40%;
    right: -7.5075075075%;
    transform: translateX(50%);
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 0 13px 12px;
    border-color: transparent transparent transparent #17AD11;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-box-01:not(:last-of-type)::after {
        border-width: 0.9523809524vw 0 0.9523809524vw 0.8791208791vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-01:not(:last-of-type)::after {
        top: initial;
        right: initial;
        bottom: calc(-31 / var(--design-width) * 100vw);
        left: 50%;
        transform: translateX(-50%);
        border-width: calc(12 / var(--design-width) * 100vw) calc(13 / var(--design-width) * 100vw) 0 calc(13 / var(--design-width) * 100vw);
        border-color: #17AD11 transparent transparent transparent;
    }
}
.p-business-lower-box-01__img {
    border-radius: 20px;
    width: 100%;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-box-01__img {
        border-radius: 1.4652014652vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-01__img {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-01__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-lower-box-01__txt {
    display: block;
    margin-top: 11px;
    text-align: center;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-01__txt {
        margin-top: calc(6 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-business-lower-box-01__txt--green {
    color: var(--color-text-1);
}

/* ---------------------------------------------
*   p-business-lower-box-02
--------------------------------------------- */
.p-business-lower-box-02-wrap {
    display: flex;
    -moz-column-gap: 6.7272727273%;
         column-gap: 6.7272727273%;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-02-wrap {
        flex-direction: column;
        row-gap: calc(40 / var(--design-width) * 100vw);
    }
}

.p-business-lower-box-02__img {
    width: 100%;
    border-radius: 30px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-box-02__img {
        border-radius: 2.1978021978vw;
    }
}
.p-business-lower-box-02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-business-lower-box-02__txt {
    margin-top: 20px;
    display: block;
    text-align: center;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.035em;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-02__txt {
        margin-top: calc(5 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}

/* ---------------------------------------------
*   p-business-lower-box-03
--------------------------------------------- */
.p-business-lower-box-03-wrap {
    display: flex;
    -moz-column-gap: 6.5454545455%;
         column-gap: 6.5454545455%;
}

.p-business-lower-box-03 {
    position: relative;
}
.p-business-lower-box-03:first-of-type::after {
    position: absolute;
    top: 47.0183486239%;
    right: -7.0038910506%;
    transform: translateX(50%);
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 0 13px 12px;
    border-color: transparent transparent transparent #17AD11;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-box-03:first-of-type::after {
        border-width: 0.9523809524vw 0 0.9523809524vw 0.8791208791vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-03:first-of-type::after {
        display: none;
    }
}
.p-business-lower-box-03__img {
    border-radius: 30px;
    width: 100%;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-business-lower-box-03__img {
        border-radius: 2.1978021978vw;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-03__img {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-03__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   p-business-lower-box-04
--------------------------------------------- */
.p-business-lower-box-04 + .p-business-lower-box-04 {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04 + .p-business-lower-box-04 {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-04__ttl {
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4444444444;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04__ttl {
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
        letter-spacing: 0.02em;
    }
}
.p-business-lower-box-04__body {
    display: flex;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04__body {
        flex-direction: column;
    }
}
.p-business-lower-box-04__list:nth-of-type(2) {
    margin-left: 34px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04__list:nth-of-type(2) {
        margin-left: 0;
    }
}
.p-business-lower-box-04__list:nth-of-type(3) {
    margin-left: 50px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04__list:nth-of-type(3) {
        margin-left: 0;
    }
}
.p-business-lower-box-04__list-item {
    position: relative;
    padding-left: 1em;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-04__list-item {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-business-lower-box-04__list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "・";
}

/* ---------------------------------------------
*   p-business-lower-box-table
--------------------------------------------- */
.p-business-lower-box-table__head {
    display: flex;
    padding-left: 50px;
    padding-bottom: 16px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__head {
        padding-left: 0;
        padding-bottom: calc(3 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-table__heading {
    display: block;
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4444444444;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__heading {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.4615384615;
        letter-spacing: 0.035em;
    }
}
.p-business-lower-box-table__heading:nth-of-type(1) {
    width: 195px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__heading:nth-of-type(1) {
        width: calc(126 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-table__item {
    display: flex;
    align-items: center;
    padding-block: 15px 18px;
    padding-left: 50px;
    border-bottom: 1px dotted var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__item {
        padding-block: calc(5 / var(--design-width) * 100vw);
        padding-left: 0;
    }
}
.p-business-lower-box-table__item:first-of-type {
    border-top: 1px dotted var(--color-base-1);
}
.p-business-lower-box-table__txt {
    display: block;
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4444444444;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.5384615385;
        letter-spacing: 0;
    }
}
.p-business-lower-box-table__txt:nth-of-type(1) {
    font-weight: 500;
    width: 195px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-box-table__txt:nth-of-type(1) {
        line-height: 1.4615384615;
        letter-spacing: 0.035em;
        width: calc(126 / var(--design-width) * 100vw);
    }
}
.p-business-lower-box-table__txt:nth-of-type(2) {
    flex: 1;
}

/* ---------------------------------------------
*   p-business-lower-list-01
--------------------------------------------- */
.p-business-lower-list-01__item {
    padding: 27px 48px;
    border-radius: 20px;
    background-color: var(--color-background-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-01__item {
        padding: calc(29 / var(--design-width) * 100vw) 2.8571428571% calc(18 / var(--design-width) * 100vw) 4.2857142857%;
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-01__item + .p-business-lower-list-01__item {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-01__item + .p-business-lower-list-01__item {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-01--gray .p-business-lower-list-01__item {
    background-color: var(--color-background-2);
}
.p-business-lower-list-01--mt-0 {
    margin-top: 0;
}

/* ---------------------------------------------
*   p-business-lower-list-qa
--------------------------------------------- */
.p-business-lower-list-qa {
    display: flex;
    flex-direction: column;
    row-gap: 23px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa {
        row-gap: calc(23 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-qa__q, .p-business-lower-list-qa__a {
    position: relative;
    padding-left: 54px;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__q, .p-business-lower-list-qa__a {
        padding-left: calc(49 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-qa__q {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__q {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__q--mr {
        margin-right: calc(-5 / var(--design-width) * 100vw);
        letter-spacing: 0.005em;
    }
}
.p-business-lower-list-qa__a {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__a {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
.p-business-lower-list-qa__q-label, .p-business-lower-list-qa__a-label {
    position: absolute;
    top: -7px;
    left: 0;
    border-radius: 50%;
    width: 38px;
    aspect-ratio: 1;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__q-label, .p-business-lower-list-qa__a-label {
        top: calc(-9 / var(--design-width) * 100vw);
        width: calc(38 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-qa__q-label {
    background-color: var(--color-accent-4);
}
.p-business-lower-list-qa__a-label {
    background-color: var(--color-accent-2);
}
.p-business-lower-list-qa__q-label-txt, .p-business-lower-list-qa__a-label-txt {
    position: absolute;
    top: 46.5%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__q-label-txt, .p-business-lower-list-qa__a-label-txt {
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}
.p-business-lower-list-qa__a-label-txt {
    left: 52%;
}
.windows.firefox .p-business-lower-list-qa__a-label-txt {
    left: 51%;
}

.p-business-lower-list-qa__link {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.625;
    letter-spacing: 0.035em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__link {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
    }
}
.p-business-lower-list-qa__link-2 {
    margin-top: 15px;
    margin-left: -2px;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.035em;
    color: var(--color-accent-2);
}
@media (hover: hover) and (pointer: fine) {
    .p-business-lower-list-qa__link-2 {
        transition: opacity var(--hover-duration);
    }
    .p-business-lower-list-qa__link-2:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-list-qa__link-2 {
        margin-top: calc(8 / var(--design-width) * 100vw);
        margin-left: calc(-1 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}

/* ---------------------------------------------
*   p-business-lower-txt-01
--------------------------------------------- */
.p-business-lower-txt-01 {
    font-size: calc(24 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.875;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-business-lower-txt-01 {
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.75;
    }
}
.p-business-lower-txt-01 strong {
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-business-lower-txt-01 .tb-hide {
        display: none;
    }
}
@media screen and (max-width: 1365px) {
    .p-business-lower-txt-01 .tb-hide-2 {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-business-lower-txt-01 .tb-hide-2 {
        display: block;
    }
}

/* ---------------------------------------------
*   p-case-section-01
--------------------------------------------- */
.p-case-section-01 {
    padding-top: 149px;
    padding-bottom: 118px;
}
@media screen and (max-width: 767px) {
    .p-case-section-01 {
        padding-top: calc(88 / var(--design-width) * 100vw);
        padding-bottom: calc(58 / var(--design-width) * 100vw);
    }
}
.p-case-section-01__ttl {
    color: var(--color-accent-1);
}
.p-case-section-01__ttl-sub-txt {
    position: relative;
    display: block;
    padding-left: 18px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.45;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-case-section-01__ttl-sub-txt {
        padding-left: calc(16 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0;
    }
}
.p-case-section-01__ttl-sub-txt::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    width: 8px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-case-section-01__ttl-sub-txt::before {
        width: calc(6 / var(--design-width) * 100vw);
    }
}
.p-case-section-01__ttl-main-txt {
    display: block;
    font-size: calc(54 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.462962963;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-case-section-01__ttl-main-txt {
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.4375;
        letter-spacing: 0.06em;
    }
}
.p-case-section-01__txt {
    margin-top: 30px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-case-section-01__txt {
        margin-top: calc(18 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0;
    }
}
.p-case-section-01__card-container {
    margin-top: 56px;
}
@media screen and (max-width: 767px) {
    .p-case-section-01__card-container {
        margin-top: calc(28 / var(--design-width) * 100vw);
    }
}
.p-case-section-01__pagination {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-case-section-01__pagination {
        margin-top: calc(54 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-case-detail-section-01
--------------------------------------------- */
.p-case-detail-section-01 {
    padding-top: 149px;
    padding-bottom: 118px;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01 {
        padding-top: calc(115 / var(--design-width) * 100vw);
        padding-bottom: calc(70 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__ttl {
    color: var(--color-accent-1);
}
.p-case-detail-section-01__ttl-sub-txt {
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.45;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__ttl-sub-txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0;
    }
}
.p-case-detail-section-01__ttl-main-txt {
    display: block;
    font-size: calc(54 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.4363636364;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__ttl-main-txt {
        font-size: calc(26 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.4230769231;
        letter-spacing: 0;
    }
}
.p-case-detail-section-01__label-list {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__label-list {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__label-list-item {
    display: flex;
    align-items: stretch;
    border: 1px solid var(--color-border-1);
    border-radius: 100vh;
    min-width: 439px;
    width: -moz-fit-content;
    width: fit-content;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__label-list-item {
        min-width: initial;
        width: 100%;
    }
}
.p-case-detail-section-01__label-list-item + .p-case-detail-section-01__label-list-item {
    margin-top: 8px;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__label-list-item + .p-case-detail-section-01__label-list-item {
        margin-top: calc(8 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__item-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 7px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1;
    color: var(--color-white-1);
    background-color: var(--color-background-4);
    width: 116px;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__item-ttl {
        padding-block: calc(6 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        width: 21.1428571429%;
    }
}
.p-case-detail-section-01__item-txt {
    display: flex;
    align-items: center;
    padding-inline: 29px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__item-txt {
        padding-inline: calc(7 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__item-txt br {
    display: none;
}
.p-case-detail-section-01__body {
    margin-top: 70px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__body {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__body::after {
    content: "";
    display: block;
    clear: both;
}
.p-case-detail-section-01__body > *:first-child {
    margin-top: 0;
}
.p-case-detail-section-01__body .wp-block-columns {
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}
@media screen and (max-width: 1365px) {
    .p-case-detail-section-01__body .wp-block-columns {
        gap: 2.9304029304vw;
    }
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__body .wp-block-columns {
        margin-top: calc(30 / var(--design-width) * 100vw);
        grid-template-columns: 1fr !important;
        gap: calc(15 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__body p {
    margin-top: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__body p {
        margin-top: calc(30 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0.04em;
    }
    .windows.chrome .p-case-detail-section-01__body p {
        font-size: calc(13.5 / var(--design-width) * 100vw);
    }
    .windows.edge .p-case-detail-section-01__body p {
        font-size: calc(13.5 / var(--design-width) * 100vw);
    }
}
.p-case-detail-section-01__body p small {
    margin-top: 6px;
    display: inline-block;
    font-size: calc(12 / var(--root-fz) * 1rem);
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__body p small {
        margin-top: calc(6 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-case-detail-section-01__body p strong {
    font-weight: bold;
}
.p-case-detail-section-01__body p em {
    font-style: italic;
}
.p-case-detail-section-01__body p a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .p-case-detail-section-01__body p a {
        transition: opacity var(--hover-duration);
    }
    .p-case-detail-section-01__body p a:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.p-case-detail-section-01__body figure {
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-case-detail-section-01__body figure {
        border-radius: 1.4652014652vw;
    }
}
.p-case-detail-section-01__body figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-case-detail-section-01__link {
    margin-top: 69px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-case-detail-section-01__link {
        margin-top: calc(47 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-company-section-01
--------------------------------------------- */
.p-company-section-01 {
    position: relative;
    padding-block: 93px 121px;
    z-index: 3;
}
@media screen and (max-width: 767px) {
    .p-company-section-01 {
        padding-block: calc(32 / var(--design-width) * 100vw) calc(55 / var(--design-width) * 100vw);
    }
}
.p-company-section-01__list-01-item {
    display: flex;
    align-items: center;
    -moz-column-gap: 58px;
         column-gap: 58px;
}
@media screen and (max-width: 1365px) {
    .p-company-section-01__list-01-item {
        flex-direction: column;
        align-items: start;
        row-gap: 10px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-01-item {
        flex-direction: column;
        align-items: start;
        row-gap: calc(17 / var(--design-width) * 100vw);
    }
}
.p-company-section-01__list-01-item + .p-company-section-01__list-01-item {
    margin-top: 82px;
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-01-item + .p-company-section-01__list-01-item {
        margin-top: calc(48 / var(--design-width) * 100vw);
    }
}
.p-company-section-01__list-01-item-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-01-item-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-company-section-01__list-01-item-txt {
    margin-right: -37px;
    font-size: calc(47 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4680851064;
    letter-spacing: 0.012em;
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-company-section-01__list-01-item-txt {
        margin-left: -30px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-01-item-txt {
        margin-left: 0;
        font-size: calc(35 / var(--design-width) * 100vw);
        line-height: 1;
    }
}
@media screen and (max-width: 1365px) {
    .p-company-section-01__list-01-item-txt span {
        display: block;
    }
    .p-company-section-01__list-01-item-txt span:nth-of-type(2) {
        margin-left: 48px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-01-item-txt span:nth-of-type(1) {
        margin-left: calc(-22 / var(--design-width) * 100vw);
    }
    .p-company-section-01__list-01-item-txt span:nth-of-type(2) {
        margin-top: calc(10 / var(--design-width) * 100vw);
        margin-left: 0;
    }
}
@media screen and (max-width: 1365px) {
    .p-company-section-01__list-01-item-txt--mr-0 {
        margin-left: 0;
        margin-right: 0;
    }
}
.p-company-section-01__list-02 {
    margin-left: 31px;
}
@media screen and (max-width: 1365px) {
    .p-company-section-01__list-02 {
        margin-left: 0;
    }
}
.p-company-section-01__list-02-item {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 1099px) {
    .p-company-section-01__list-02-item {
        flex-direction: column;
        align-items: start;
        row-gap: 3px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-02-item {
        row-gap: calc(3 / var(--design-width) * 100vw);
    }
}
.p-company-section-01__list-02-item + .p-company-section-01__list-02-item {
    margin-top: 13px;
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-02-item + .p-company-section-01__list-02-item {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}
.p-company-section-01__list-02-item-ttl {
    margin-right: 39px;
    font-size: calc(28 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4285714286;
    letter-spacing: 0.035em;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-02-item-ttl {
        font-size: calc(18 / var(--design-width) * 100vw);
        line-height: 1.4444444444;
    }
}
.p-company-section-01__list-02-item-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-company-section-01__list-02-item-txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}

/* ---------------------------------------------
*   p-company-section-02
--------------------------------------------- */
.p-company-section-02 {
    position: relative;
    margin-top: -50px;
    padding-block: 113px 118px;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .p-company-section-02 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(89 / var(--design-width) * 100vw) calc(35 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-company-section-03
--------------------------------------------- */
.p-company-section-03 {
    position: relative;
    margin-top: -50px;
    padding-block: 118px 153px;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-company-section-03 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(110 / var(--design-width) * 100vw) calc(55 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-company-cassette-01
--------------------------------------------- */
.p-company-cassette-01__ttl {
    margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__ttl {
        margin-bottom: calc(18 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01__greeting {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__greeting {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7692307692;
        letter-spacing: -0.04em;
    }
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-01__greeting .tb-hide {
        display: none;
    }
}
.p-company-cassette-01__name {
    display: block;
    margin-top: 38px;
    text-align: right;
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4444444444;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__name {
        margin-top: calc(25 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-company-cassette-01__list-01 {
    border-radius: 10px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__list-01 {
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01__txt-01 {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.02em;
    max-width: 849px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__txt-01 {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7692307692;
        letter-spacing: -0.04em;
    }
}
.p-company-cassette-01__txt-02 {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__txt-02 {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0.02em;
    }
}
.p-company-cassette-01__img-01 {
    margin-top: 65px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__img-01 {
        margin-top: calc(22 / var(--design-width) * 100vw);
        margin-left: calc(-3 / var(--design-width) * 100vw);
        width: 101.7142857143%;
    }
}
.p-company-cassette-01__desc {
    position: relative;
    margin-top: 20px;
    padding-left: 1em;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4285714286;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__desc {
        margin-top: calc(14 / var(--design-width) * 100vw);
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.6666666667;
    }
}
.p-company-cassette-01__desc::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
.p-company-cassette-01__container {
    margin-bottom: 20px;
    border: 2px solid var(--color-accent-1);
    border-radius: 30px;
    padding: 39px 38px;
}
@media screen and (max-width: 899px) {
    .p-company-cassette-01__container {
        padding: 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__container {
        margin-bottom: calc(15 / var(--design-width) * 100vw);
        border-width: 1px;
        border-radius: calc(20 / var(--design-width) * 100vw);
        padding: calc(11 / var(--design-width) * 100vw) 2.5714285714% calc(30 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01__container--mb-0 {
    margin-bottom: 0;
}
.p-company-cassette-01__wrap {
    margin-top: 57px;
    display: flex;
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-01__wrap {
        flex-direction: column;
        row-gap: 40px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01__wrap {
        margin-top: calc(50 / var(--design-width) * 100vw);
        flex-direction: column;
        row-gap: calc(40 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--02 {
    margin-top: 50px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--02 {
        margin-top: calc(60 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--03 {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--03 {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--04 {
    margin-top: 86px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--04 {
        margin-top: calc(48 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--06 {
    margin-top: 67px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--06 {
        margin-top: calc(48 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--07 {
    margin-top: 70px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--07 {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-01--08 {
    margin-top: 123px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-01--08 {
        margin-top: calc(60 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-company-cassette-02
--------------------------------------------- */
.p-company-cassette-02 {
    display: flex;
    -moz-column-gap: 30px;
         column-gap: 30px;
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-02 {
        flex-direction: column-reverse;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02 {
        row-gap: calc(15 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-02 + .p-company-cassette-02 {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02 + .p-company-cassette-02 {
        margin-top: calc(42 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-02__container {
    width: 100%;
    max-width: 534px;
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-02__container {
        max-width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__container {
        padding-inline: 6.0606060606%;
    }
}
.p-company-cassette-02__ttl {
    display: grid;
    place-items: center;
    padding-block: 12px;
    border-radius: 100vh;
    background-color: var(--color-accent-1);
    width: 249px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__ttl {
        display: block;
        width: auto;
        padding-block: 0;
        border-radius: initial;
        background-color: transparent;
    }
}
.p-company-cassette-02__ttl--white {
    border: 1px solid var(--color-accent-1);
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__ttl--white {
        border: none;
        background-color: transparent;
    }
}
.p-company-cassette-02__ttl-txt {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.035em;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__ttl-txt {
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
        color: var(--color-accent-1);
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__ttl-txt--2 {
        letter-spacing: 0.135em;
    }
}
.p-company-cassette-02__ttl--white .p-company-cassette-02__ttl-txt {
    color: var(--color-accent-1);
}

.p-company-cassette-02__lead {
    position: relative;
    margin-top: 10px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4285714286;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__lead {
        margin-top: calc(5 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.5384615385;
        letter-spacing: 0.03em;
    }
}
.p-company-cassette-02__lead--fwm {
    margin-bottom: 30px;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__lead--fwm {
        margin-bottom: 0;
    }
}
.p-company-cassette-02__lead--label {
    padding-left: 5em;
}
.p-company-cassette-02__lead--label::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "操業内容：";
}
.p-company-cassette-02__body {
    margin-top: 28px;
    display: flex;
    -moz-column-gap: 33px;
         column-gap: 33px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__body {
        margin-top: calc(17 / var(--design-width) * 100vw);
        flex-direction: column;
        row-gap: calc(17 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-02__info {
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.7142857143;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 899px) {
    .p-company-cassette-02__info {
        font-size: calc(12 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__info {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
.p-company-cassette-02__info strong {
    font-weight: bold;
}
.p-company-cassette-02__map-link {
    align-self: end;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__map-link {
        align-self: start;
    }
}
.p-company-cassette-02__foot {
    margin-top: 13px;
    padding-top: 8px;
    border-top: 1px dotted var(--color-base-1);
    display: flex;
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 899px) {
    .p-company-cassette-02__foot {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__foot {
        margin-top: calc(24 / var(--design-width) * 100vw);
        padding-top: calc(18 / var(--design-width) * 100vw);
        flex-direction: column;
    }
}
.p-company-cassette-02__item {
    display: flex;
    -moz-column-gap: 29px;
         column-gap: 29px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__item {
        margin-right: calc(-19 / var(--design-width) * 100vw);
        -moz-column-gap: 6.5517241379%;
             column-gap: 6.5517241379%;
    }
}
.p-company-cassette-02__list--3 .p-company-cassette-02__item {
    align-items: center;
    -moz-column-gap: 14px;
         column-gap: 14px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__list--3 .p-company-cassette-02__item {
        flex-direction: column;
        align-items: start;
        row-gap: calc(12 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-02__list--3 .p-company-cassette-02__item .p-company-cassette-02__item-ttl {
    line-height: 1.6428571429;
}

.p-company-cassette-02__item-ttl, .p-company-cassette-02__item-txt {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.8571428571;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 899px) {
    .p-company-cassette-02__item-ttl, .p-company-cassette-02__item-txt {
        font-size: calc(12 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__item-ttl, .p-company-cassette-02__item-txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
.p-company-cassette-02__item-ttl {
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__item-ttl {
        flex-shrink: 0;
    }
}
.p-company-cassette-02__list--5 .p-company-cassette-02__item-ttl {
    width: 87px;
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__list--5 .p-company-cassette-02__item-ttl {
        width: calc(81 / var(--design-width) * 100vw);
    }
}

.p-company-cassette-02__item-txt {
    font-weight: 400;
}
.p-company-cassette-02__img {
    border-radius: 30px;
    width: 455px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-02__img {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-company-cassette-02__img {
        border-radius: calc(15 / var(--design-width) * 100vw);
    }
}
.p-company-cassette-02__img img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   p-company-box-01
--------------------------------------------- */
.p-company-box-01__head {
    display: flex;
    align-items: center;
    padding-block: 10px;
    padding-left: 30px;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-01__head {
        padding-block: calc(11 / var(--design-width) * 100vw) calc(12 / var(--design-width) * 100vw);
        padding-left: calc(30 / var(--design-width) * 100vw);
    }
}
.p-company-box-01__ttl {
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.02em;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-01__ttl {
        font-size: calc(12 / var(--design-width) * 100vw);
    }
}
.p-company-box-01__body {
    display: flex;
    align-items: flex-start;
    padding: 14px 0 16px 30px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 1099px) {
    .p-company-box-01__body {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-01__body {
        position: relative;
        flex-direction: column;
        padding: calc(16 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw) calc(16 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
    }
}
.p-company-box-01__body--cgap-60 {
    -moz-column-gap: 60px;
         column-gap: 60px;
}
.p-company-box-01__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-01__txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
.p-company-box-01__map-link {
    margin-top: 3px;
    margin-left: 27px;
}
@media screen and (max-width: 1099px) {
    .p-company-box-01__map-link {
        margin-left: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-01__map-link {
        position: absolute;
        top: calc(39 / var(--design-width) * 100vw);
        left: calc(226 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-company-box-02
--------------------------------------------- */
.p-company-cassette-01__wrap .p-company-box-02 {
    width: 50%;
}
@media screen and (max-width: 1365px) {
    .p-company-cassette-01__wrap .p-company-box-02 {
        width: 100%;
    }
}

.p-company-box-02__ttl {
    display: grid;
    place-items: center;
    padding-block: 10px;
    border-radius: 10px;
    background-color: var(--color-accent-1);
    width: 100%;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__ttl {
        padding: calc(11 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-company-box-02__ttl-txt {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-02__ttl-txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        letter-spacing: 0.02em;
    }
}
.p-company-box-02__body {
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__body {
        margin-top: calc(11 / var(--design-width) * 100vw);
        padding-inline: 2.8571428571%;
    }
}
.p-company-box-02__list-01 {
    margin-top: 10px;
    border-bottom: 1px solid var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01 {
        margin-top: 0;
    }
}
.p-company-box-02__list-01-item {
    display: flex;
    padding-block: 12px 13px;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01-item {
        -moz-column-gap: 11.2121212121%;
             column-gap: 11.2121212121%;
        padding-block: calc(10 / var(--design-width) * 100vw) calc(12 / var(--design-width) * 100vw);
    }
}
.p-company-box-02__list-01-item:nth-of-type(1) {
    padding-top: 0;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01-item:nth-of-type(1) {
        padding-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-company-box-02__list-01-item + .p-company-box-02__list-01-item {
    border-top: 1px dotted var(--color-base-1);
}
.p-company-box-02__list-01-item:last-of-type {
    padding-bottom: 15px;
}
.p-company-box-02__list-01-item-ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.02em;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01-item-ttl {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
    }
}
.p-company-box-02__list-01-item-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.625;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01-item-txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 400;
        line-height: 1.7692307692;
    }
}
.p-company-box-02__list-01-item-txt:nth-of-type(1) {
    margin-left: 14.0909090909%;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__list-01-item-txt:nth-of-type(1) {
        margin-left: 0;
    }
}
.p-company-box-02__list-01-item-txt:nth-of-type(2) {
    margin-left: auto;
    align-self: center;
}
@media screen and (max-width: 949px) {
    .p-company-box-02__list-01-item-txt:nth-of-type(2) {
        display: none;
    }
}
.p-company-box-02__txt-01 {
    margin-top: 27px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__txt-01 {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
        letter-spacing: 0.045em;
    }
}
.p-company-box-02__txt-02 {
    margin-right: -9px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__txt-02 {
        margin-right: 0;
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
        letter-spacing: 0.045em;
    }
}
@media screen and (max-width: 1365px) {
    .p-company-box-02__txt-02 br {
        display: none;
    }
}
.p-company-box-02__txt-03 {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.625;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-02__txt-03 {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
        letter-spacing: 0.045em;
    }
}

/* ---------------------------------------------
*   p-company-box-03
--------------------------------------------- */
.p-company-box-03-wrap {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}
@media screen and (max-width: 1365px) {
    .p-company-box-03-wrap {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-03-wrap {
        margin-top: calc(17 / var(--design-width) * 100vw);
        gap: calc(15 / var(--design-width) * 100vw);
    }
}

.p-company-box-03 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 31px 60px 35px;
    border-radius: 30px;
    background-color: rgba(1, 152, 216, 0.1);
    min-height: 507px;
}
@media screen and (max-width: 767px) {
    .p-company-box-03 {
        padding: calc(17 / var(--design-width) * 100vw) 8.5714285714% calc(32 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        min-height: initial;
    }
}
.p-company-box-03__ttl {
    padding-bottom: 22px;
    border-bottom: 1px solid var(--color-accent-3);
    text-align: center;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    color: var(--color-accent-3);
}
@media screen and (max-width: 767px) {
    .p-company-box-03__ttl {
        padding-bottom: calc(13 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
        letter-spacing: 0.035em;
    }
}
.p-company-box-03__txt {
    margin-top: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
}
@media screen and (max-width: 767px) {
    .p-company-box-03__txt {
        margin-top: calc(13 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
    .windows.chrome .p-company-box-03__txt {
        letter-spacing: -0.03em;
    }
    .windows.edge .p-company-box-03__txt {
        letter-spacing: -0.03em;
    }
}
.p-company-box-03__list-ttl {
    margin-top: 21px;
    display: block;
}
@media screen and (max-width: 767px) {
    .p-company-box-03__list-ttl {
        margin-top: calc(16 / var(--design-width) * 100vw);
    }
}
.p-company-box-03__list-item {
    position: relative;
    padding-left: 1em;
}
.p-company-box-03__list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "・";
}
.p-company-box-03__list-ttl, .p-company-box-03__list-item {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
}
@media screen and (max-width: 767px) {
    .p-company-box-03__list-ttl, .p-company-box-03__list-item {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
    .windows.chrome .p-company-box-03__list-ttl, .windows.chrome .p-company-box-03__list-item {
        letter-spacing: -0.03em;
    }
    .windows.edge .p-company-box-03__list-ttl, .windows.edge .p-company-box-03__list-item {
        letter-spacing: -0.039em;
    }
}
.p-company-box-03__img-wrap {
    display: flex;
    -moz-column-gap: 5px;
         column-gap: 5px;
    margin-top: 28px;
}
@media screen and (max-width: 1365px) {
    .p-company-box-03__img-wrap {
        flex-wrap: wrap;
        row-gap: 5px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-03__img-wrap {
        margin-top: calc(20 / var(--design-width) * 100vw);
        -moz-column-gap: calc(4 / var(--design-width) * 100vw);
             column-gap: calc(4 / var(--design-width) * 100vw);
    }
}
.p-company-box-03__img {
    width: 78px;
}
@media screen and (max-width: 767px) {
    .p-company-box-03__img {
        width: calc(53 / var(--design-width) * 100vw);
    }
}
.p-company-box-03:nth-of-type(4) .p-company-box-03__list-item:nth-of-type(3) {
    margin-right: calc(-9 / var(--design-width) * 100vw);
}

/* ---------------------------------------------
*   p-company-box-car
--------------------------------------------- */
.p-company-box-car {
    display: flex;
    border-radius: 30px;
    overflow: hidden;
}
@media screen and (max-width: 1099px) {
    .p-company-box-car {
        flex-direction: column-reverse;
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-car {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-company-box-car + .p-company-box-car {
    margin-top: 19px;
}
@media screen and (max-width: 767px) {
    .p-company-box-car + .p-company-box-car {
        margin-top: calc(14 / var(--design-width) * 100vw);
    }
}
.p-company-box-car__container {
    flex-shrink: 0;
    padding: 28px 39px 31px 47px;
    background-color: var(--color-background-2);
    width: 410px;
}
@media screen and (max-width: 1099px) {
    .p-company-box-car__container {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-company-box-car__container {
        padding: calc(15 / var(--design-width) * 100vw) 2.8571428571% calc(23 / var(--design-width) * 100vw) 8.5714285714%;
        width: 100%;
    }
}
.p-company-box-car__ttl {
    padding-bottom: 21px;
    border-bottom: 1px solid var(--color-accent-1);
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0.035em;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-car__ttl {
        padding-bottom: 0;
        border-bottom: none;
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.4583333333;
    }
}
.p-company-box-car__container-body {
    margin-top: 13px;
    display: flex;
    -moz-column-gap: 29px;
         column-gap: 29px;
}
@media screen and (max-width: 767px) {
    .p-company-box-car__container-body {
        margin-top: calc(21 / var(--design-width) * 100vw);
        -moz-column-gap: 6.4516129032%;
             column-gap: 6.4516129032%;
    }
}
.p-company-box-car__container-body-wrap:nth-of-type(1) {
    width: 166px;
}
@media screen and (max-width: 767px) {
    .p-company-box-car__container-body-wrap:nth-of-type(1) {
        width: 49.6774193548%;
    }
}
.p-company-box-car__container-body-wrap:nth-of-type(2) {
    flex: 1;
}
.p-company-box-car__sub-ttl {
    display: block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.035em;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-car__sub-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-company-box-car__txt {
    margin-top: 5px;
    display: block;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4285714286;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-company-box-car__txt {
        margin-top: calc(7 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.5384615385;
    }
}
.p-company-box-car__sup {
    display: block;
    margin-left: -6px;
    margin-right: -25px;
    font-size: calc(10 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.5;
    white-space: nowrap;
}
@media screen and (max-width: 767px) {
    .p-company-box-car__sup {
        margin-left: calc(-8 / var(--design-width) * 100vw);
        margin-right: calc(-25 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        letter-spacing: -0.06em;
    }
}
.p-company-box-car__img {
    width: 690px;
}
@media screen and (max-width: 1099px) {
    .p-company-box-car__img {
        width: 100%;
    }
}
.p-company-box-car__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   p-company-box-table
--------------------------------------------- */
.p-company-box-table {
    margin-top: 43px;
}
@media screen and (max-width: 767px) {
    .p-company-box-table {
        margin-top: calc(17 / var(--design-width) * 100vw);
    }
}
.p-company-box-table__head {
    padding-bottom: 6px;
    border-bottom: 1px solid var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-table__head {
        padding-top: calc(3 / var(--design-width) * 100vw);
        padding-bottom: calc(6 / var(--design-width) * 100vw);
        border-top: 1px solid var(--color-base-1);
        line-height: 1;
    }
}
.p-company-box-table__heading {
    display: inline-block;
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.4285714286;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__heading {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1;
        letter-spacing: 0.035em;
    }
}
.p-company-box-table__heading:nth-of-type(1) {
    font-weight: 500;
    width: 145px;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__heading:nth-of-type(1) {
        width: calc(86 / var(--design-width) * 100vw);
    }
}
.p-company-box-table__heading:nth-of-type(2) {
    font-weight: 400;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__heading:nth-of-type(2) {
        font-weight: 500;
    }
}
.p-company-box-table__item {
    padding-block: 5px 7px;
    border-bottom: 1px dotted var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-company-box-table__item {
        line-height: 1;
        padding-block: calc(3 / var(--design-width) * 100vw) calc(7 / var(--design-width) * 100vw);
    }
}
.p-company-box-table__item:last-of-type {
    border-bottom: 1px solid var(--color-base-1);
}
.p-company-box-table__txt {
    display: inline-block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1;
        letter-spacing: 0.035em;
    }
}
.p-company-box-table__txt:nth-of-type(1) {
    font-weight: 500;
    width: 145px;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__txt:nth-of-type(1) {
        width: calc(86 / var(--design-width) * 100vw);
    }
}
.p-company-box-table__txt:nth-of-type(2) {
    font-weight: 600;
}
@media screen and (max-width: 767px) {
    .p-company-box-table__txt:nth-of-type(2) {
        font-weight: 500;
    }
}

/* ---------------------------------------------
*   p-company-list-01
--------------------------------------------- */
.p-company-list-01__item {
    display: flex;
    align-items: center;
    padding: 13px 39px;
}
@media screen and (max-width: 1099px) {
    .p-company-list-01__item {
        min-height: 74px;
    }
}
@media screen and (max-width: 767px) {
    .p-company-list-01__item {
        padding: calc(11 / var(--design-width) * 100vw) 2.8571428571% calc(13 / var(--design-width) * 100vw) 8.5714285714%;
        min-height: calc(89 / var(--design-width) * 100vw);
    }
}
.p-company-list-01__item:nth-of-type(even) {
    background-color: var(--color-white-1);
}
.p-company-list-01__date, .p-company-list-01__txt {
    display: block;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-company-list-01__date, .p-company-list-01__txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.6923076923;
    }
}
.p-company-list-01__date {
    width: 175px;
}
@media screen and (max-width: 767px) {
    .p-company-list-01__date {
        width: calc(106 / var(--design-width) * 100vw);
    }
}
.p-company-list-01__txt {
    flex: 1;
}

/* ---------------------------------------------
*   p-contact-section-01
--------------------------------------------- */
.p-contact-section-01 {
    padding-block: 178px 111px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01 {
        padding-block: calc(98 / var(--design-width) * 100vw) calc(68 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__ttl {
    font-size: calc(54 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.462962963;
    letter-spacing: 0.081em;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__ttl {
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.4375;
        letter-spacing: 0.06em;
    }
}
.p-contact-section-01__ttl--pink {
    color: var(--color-accent-2);
}
.thanks .p-contact-section-01__ttl {
    text-align: center;
}

.p-contact-section-01__contact-tel {
    margin-top: 71px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__contact-tel {
        margin-top: calc(28 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__contact-tel-ttl {
    position: relative;
    padding-left: 18px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__contact-tel-ttl {
        padding-left: calc(13 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.45;
        letter-spacing: 0.035em;
    }
}
.p-contact-section-01__contact-tel-ttl::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__contact-tel-ttl::before {
        width: calc(6 / var(--design-width) * 100vw);
        height: calc(6 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__contact-tel-txt {
    margin-top: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__contact-tel-txt {
        margin-top: calc(4 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-contact-section-01__tel {
    display: block;
    margin-top: 3px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4230769231;
    letter-spacing: 0.081em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__tel {
        margin-top: calc(4 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
    }
}
.p-contact-section-01__form {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form {
        margin-top: calc(34 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__form--entry {
    margin-top: 54px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form--entry {
        margin-top: calc(28 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__form-ttl {
    display: flex;
    align-items: center;
    padding: 21px 35px 24px;
    border-radius: 10px;
    background-color: var(--color-accent-1);
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    color: var(--color-white-1);
    height: 71px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form-ttl {
        justify-content: center;
        padding: calc(13 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        height: initial;
    }
}
.p-contact-section-01__form-ttl--pink {
    background-color: var(--color-accent-2);
}
.p-contact-section-01__form-txt {
    margin-top: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form-txt {
        margin-top: calc(13 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-contact-section-01__form-note {
    display: block;
    margin-top: 10px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4285714286;
    letter-spacing: 0.081em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form-note {
        margin-top: calc(8 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-contact-section-01__form-form {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__form-form {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__txt {
    margin-top: 36px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__txt {
        margin-top: calc(20 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.7142857143;
    }
}
.p-contact-section-01__confirm {
    margin-top: 36px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__confirm {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__btn-wrap {
    margin-top: 83px;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 30px;
         column-gap: 30px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__btn-wrap {
        margin-top: calc(40 / var(--design-width) * 100vw);
        flex-direction: column-reverse;
        row-gap: calc(15 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__btn-wrap .wpcf7-previous,
.p-contact-section-01__btn-wrap .wpcf7-submit {
    display: flex;
    justify-content: center;
    padding-block: 20px 26px;
    border-radius: 20px;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4230769231;
    max-width: 320px;
    width: 100%;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .p-contact-section-01__btn-wrap .wpcf7-previous,
    .p-contact-section-01__btn-wrap .wpcf7-submit {
        transition: opacity var(--hover-duration);
    }
    .p-contact-section-01__btn-wrap .wpcf7-previous:hover,
    .p-contact-section-01__btn-wrap .wpcf7-submit:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__btn-wrap .wpcf7-previous,
    .p-contact-section-01__btn-wrap .wpcf7-submit {
        padding-block: calc(13 / var(--design-width) * 100vw) calc(18 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.45;
        max-width: initial;
    }
}
.p-contact-section-01__btn-wrap .wpcf7-previous {
    border: 1px solid var(--color-base-1);
    color: var(--color-base-1);
}
.p-contact-section-01__btn-wrap .wpcf7-submit {
    background-color: var(--color-accent-2);
    color: var(--color-white-1);
}
.p-contact-section-01__file-form {
    margin-top: 30px;
}
.p-contact-section-01__thanks-txt {
    margin-top: 40px;
    text-align: center;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__thanks-txt {
        margin-top: calc(20 / var(--design-width) * 100vw);
        text-align: left;
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.7142857143;
    }
    .windows.chrome .p-contact-section-01__thanks-txt {
        font-size: calc(13.7 / var(--design-width) * 100vw);
    }
    .windows.edge .p-contact-section-01__thanks-txt {
        font-size: calc(13.7 / var(--design-width) * 100vw);
    }
}
.p-contact-section-01__thanks-btn {
    margin-top: 63px;
    margin-inline: auto;
    display: flex;
    justify-content: center;
    padding-block: 22px 26px;
    border-radius: 20px;
    background-color: var(--color-accent-2);
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-white-1);
    width: 320px;
}
@media (hover: hover) and (pointer: fine) {
    .p-contact-section-01__thanks-btn {
        transition: opacity var(--hover-duration);
    }
    .p-contact-section-01__thanks-btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-contact-section-01__thanks-btn {
        margin-top: calc(40 / var(--design-width) * 100vw);
        padding-block: calc(13 / var(--design-width) * 100vw) calc(18 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.45;
        width: 100%;
    }
}
.p-contact-section-01--confirm {
    padding-bottom: 150px;
}
@media screen and (max-width: 767px) {
    .p-contact-section-01--confirm {
        padding-bottom: calc(70 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-contact-cassette-confirm
--------------------------------------------- */
.p-contact-cassette-confirm {
    padding: 18px 50px;
    border-radius: 20px;
    background-color: var(--color-background-5);
}
@media screen and (max-width: 767px) {
    .p-contact-cassette-confirm {
        padding: calc(17 / var(--design-width) * 100vw) 2.8571428571% calc(20 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-contact-cassette-confirm__list-item {
    display: flex;
    align-items: center;
    -moz-column-gap: 18.8%;
         column-gap: 18.8%;
    padding-block: 40px;
    border-bottom: 1px solid var(--color-border-2);
}
@media screen and (max-width: 767px) {
    .p-contact-cassette-confirm__list-item {
        flex-direction: column;
        align-items: start;
        row-gap: calc(15 / var(--design-width) * 100vw);
        padding-block: calc(20 / var(--design-width) * 100vw);
        padding-inline: 6.0606060606%;
    }
}
.p-contact-cassette-confirm__list-item:last-of-type {
    border-bottom: none;
}
@media screen and (max-width: 1365px) {
    .p-contact-cassette-confirm__list-item--textarea {
        flex-direction: column;
        align-items: start;
        row-gap: 15px;
    }
}
@media screen and (max-width: 1365px) {
    .p-contact-cassette-confirm__list-item--textarea .p-contact-cassette-confirm__list-item-txt {
        max-width: initial;
    }
}
.p-contact-cassette-confirm__list-item-ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
    width: 160px;
}
@media screen and (max-width: 767px) {
    .p-contact-cassette-confirm__list-item-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        width: 100%;
    }
}
.p-contact-cassette-confirm__list-item-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0;
    flex: 1;
    max-width: 534px;
}
@media screen and (max-width: 767px) {
    .p-contact-cassette-confirm__list-item-txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0.02em;
        max-width: initial;
    }
}

/* ---------------------------------------------
*   p-flow-section-01
--------------------------------------------- */
.p-flow-section-01 {
    padding-block: 178px 118px;
}
@media screen and (max-width: 767px) {
    .p-flow-section-01 {
        padding-block: calc(98 / var(--design-width) * 100vw) calc(60 / var(--design-width) * 100vw);
    }
}
.p-flow-section-01__ttl {
    font-size: calc(54 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.462962963;
    letter-spacing: 0.081em;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-flow-section-01__ttl {
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.4375;
        letter-spacing: 0.06em;
    }
}
.p-flow-section-01__txt-01 {
    margin-top: 20px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-flow-section-01__txt-01 {
        margin-top: calc(28 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.7142857143;
        letter-spacing: 0;
    }
}
.p-flow-section-01__box-01-wrap {
    margin-top: 104px;
}
@media screen and (max-width: 767px) {
    .p-flow-section-01__box-01-wrap {
        margin-top: calc(44 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-flow-cassette-01
--------------------------------------------- */
.p-flow-cassette-01 {
    position: relative;
}
.p-flow-cassette-01::after {
    position: absolute;
    bottom: -42px;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 43px 41px 0 41px;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01::after {
        bottom: calc(-26 / var(--design-width) * 100vw);
        border-width: calc(27 / var(--design-width) * 100vw) calc(26 / var(--design-width) * 100vw) 0 calc(26 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__ttl {
    position: relative;
    margin-inline: auto;
    padding-left: 66px;
    text-align: center;
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5625;
    letter-spacing: 0;
    color: var(--color-accent-1);
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__ttl {
        padding-top: calc(42 / var(--design-width) * 100vw);
        padding-left: 0;
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.5;
        width: 100%;
    }
}
@media screen and (max-width: 899px) {
    .p-flow-cassette-01__ttl--fz-28-tb {
        font-size: calc(28 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__ttl--fz-28-tb {
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 899px) {
    .p-flow-cassette-01__ttl--fz-28-tb .p-flow-cassette-01__ttl-num {
        top: 0;
    }
}
.p-flow-cassette-01__ttl-num {
    position: absolute;
    top: 2px;
    left: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__ttl-num {
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: calc(32 / var(--design-width) * 100vw);
        height: calc(32 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__ttl-num-txt {
    position: absolute;
    top: 47%;
    left: 51%;
    transform: translate(-50%, -50%);
    font-size: calc(22 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__ttl-num-txt {
        top: 48%;
        font-size: calc(14 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__list-01-ttl {
    position: relative;
    display: block;
    text-align: center;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.081em;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-01-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-flow-cassette-01__list-01-ttl::before, .p-flow-cassette-01__list-01-ttl::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: calc((100% - 283px) / 2);
    height: 1px;
    border-bottom: 1px dotted var(--color-border-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-01-ttl::before, .p-flow-cassette-01__list-01-ttl::after {
        width: calc(82 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__list-01-ttl::before {
    left: 0;
}
.p-flow-cassette-01__list-01-ttl::after {
    right: 0;
}
.p-flow-cassette-01__list-01 {
    margin-top: 33px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px 15px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-01 {
        margin-top: calc(10 / var(--design-width) * 100vw);
        grid-template-columns: repeat(2, 1fr);
        gap: calc(10 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__list-01-item {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 7px 10px;
    border-radius: 10px;
    background-color: var(--color-background-4);
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.45;
    color: var(--color-white-1);
    width: 100%;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-01-item {
        padding-block: calc(8 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-flow-cassette-01__list-02-item {
    display: flex;
    align-items: center;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01__list-02-item {
        align-items: start;
        flex-direction: column;
        row-gap: 10px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-02-item {
        row-gap: calc(7 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__list-02-item + .p-flow-cassette-01__list-02-item {
    margin-top: 11px;
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01__list-02-item + .p-flow-cassette-01__list-02-item {
        margin-top: 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-02-item + .p-flow-cassette-01__list-02-item {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01__list-02-item > :first-child {
    width: 267px;
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01__list-02-item > :first-child {
        width: 100%;
    }
}
.p-flow-cassette-01__list-02-item > :not(:first-child) {
    flex: 1;
}
.p-flow-cassette-01__list-02-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__list-02-txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01__list-02-txt .sp-hide {
        display: none;
    }
}
.p-flow-cassette-01__txt-01 {
    text-align: center;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__txt-01 {
        text-align: left;
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-flow-cassette-01__txt-02 {
    margin-top: 17px;
    margin-left: 36.2727272727%;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4285714286;
    letter-spacing: 0;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01__txt-02 {
        margin-left: 4.004004004vw;
        text-align: center;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__txt-02 {
        margin-top: calc(7 / var(--design-width) * 100vw);
        margin-left: 0;
        text-align: center;
        font-size: calc(10 / var(--design-width) * 100vw);
        font-weight: 600;
        line-height: 1.5;
        width: 100%;
    }
}
.p-flow-cassette-01__wrap {
    margin-top: 24px;
    margin-inline: auto;
    display: flex;
    align-items: center;
    -moz-column-gap: 14px;
         column-gap: 14px;
    max-width: 773px;
}
@media screen and (max-width: 1199px) {
    .p-flow-cassette-01__wrap {
        flex-direction: column;
        row-gap: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__wrap {
        margin-top: calc(20 / var(--design-width) * 100vw);
        row-gap: calc(17 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.p-flow-cassette-01__txt-03 {
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.8571428571;
    letter-spacing: 0;
    flex: 1;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__txt-03 {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-flow-cassette-01__dl {
    margin-top: 86px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01__dl {
        margin-top: calc(39 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--orange {
    margin-inline: calc(50% - 50vw);
    background-color: var(--color-background-6);
}
.p-flow-cassette-01--orange::after {
    border-color: var(--color-background-6) transparent transparent transparent;
}
.p-flow-cassette-01--orange .p-flow-cassette-01__inner {
    margin-inline: auto;
    padding-inline: 133px;
    max-width: 1366px;
}
@media screen and (max-width: 1365px) {
    .p-flow-cassette-01--orange .p-flow-cassette-01__inner {
        padding-inline: 100px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--orange .p-flow-cassette-01__inner {
        padding-inline: calc(20 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--white {
    background-color: var(--color-white-1);
}
.p-flow-cassette-01--white::after {
    border-color: var(--color-white-1) transparent transparent transparent;
}
.p-flow-cassette-01--1 {
    margin-top: 61px;
    padding-block: 100px 108px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--1 {
        margin-top: calc(33 / var(--design-width) * 100vw);
        padding-block: calc(30 / var(--design-width) * 100vw) calc(40 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--1 .p-flow-cassette-01__body {
    margin-top: 67px;
    margin-inline: auto;
    max-width: 831px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--1 .p-flow-cassette-01__body {
        margin-top: calc(27 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.p-flow-cassette-01--2 {
    padding-block: 125px 114px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--2 {
        padding-block: calc(57 / var(--design-width) * 100vw) calc(40 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--2 .p-flow-cassette-01__body {
    margin-top: 75px;
    margin-inline: auto;
    max-width: 767px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--2 .p-flow-cassette-01__body {
        margin-top: calc(28 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.p-flow-cassette-01--3 {
    padding-block: 127px 110px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--3 {
        padding-block: calc(58 / var(--design-width) * 100vw) calc(40 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--3 .p-flow-cassette-01__body {
    margin-top: 36px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--3 .p-flow-cassette-01__body {
        margin-top: calc(25 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--4 {
    padding-top: 122px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--4 {
        padding-top: calc(57 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-01--4::after {
    display: none;
}
.p-flow-cassette-01--4 .p-flow-cassette-01__body {
    margin-top: 38px;
    margin-inline: auto;
    max-width: 1000px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--4 .p-flow-cassette-01__body {
        margin-top: calc(30 / var(--design-width) * 100vw);
        max-width: initial;
    }
}
.p-flow-cassette-01--4 .p-flow-cassette-01__ttl {
    margin-left: 34.7272727273%;
}
@media screen and (max-width: 999px) {
    .p-flow-cassette-01--4 .p-flow-cassette-01__ttl {
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-01--4 .p-flow-cassette-01__ttl {
        margin-left: 0;
        margin-right: initial;
    }
}

/* ---------------------------------------------
*   p-flow-cassette-02
--------------------------------------------- */
.p-flow-cassette-02 {
    padding: 29px 34px 23px 35px;
    border-radius: 20px;
    background-color: var(--color-background-4);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-02 {
        padding: calc(30 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw) calc(26 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-02__ttl {
    text-align: center;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-02__ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.4285714286;
    }
}
.p-flow-cassette-02__box-02-wrap {
    margin-top: 26px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-02__box-02-wrap {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-flow-cassette-dl
--------------------------------------------- */
.p-flow-cassette-dl {
    border-radius: 20px;
    border: 2px solid var(--color-accent-1);
    overflow: hidden;
}
.p-flow-cassette-dl__head {
    display: flex;
    align-items: center;
    -moz-column-gap: 24px;
         column-gap: 24px;
    padding: 15px 24px 19px 35px;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__head {
        align-items: start;
        flex-direction: column;
        row-gap: 10px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__head {
        align-items: start;
        flex-direction: column;
        row-gap: calc(10 / var(--design-width) * 100vw);
        padding: calc(24 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw) calc(19 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-dl__ttl {
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__ttl {
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
    }
}
.p-flow-cassette-dl__head-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__head-txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.8461538462;
    }
}
.p-flow-cassette-dl__list-item {
    display: flex;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item {
        display: block;
        padding: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__list-item {
        display: block;
        padding: calc(14 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-dl__list-item:not(:last-of-type) {
    border-bottom: 1px dotted var(--color-accent-1);
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item:last-of-type {
        padding-bottom: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__list-item:last-of-type {
        padding-bottom: calc(30 / var(--design-width) * 100vw);
    }
}
.p-flow-cassette-dl__list-item:last-of-type .p-flow-cassette-dl__list-item-right {
    padding-bottom: 45px;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item:last-of-type .p-flow-cassette-dl__list-item-right {
        padding-bottom: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__list-item:last-of-type .p-flow-cassette-dl__list-item-right {
        padding-bottom: 0;
    }
}
.p-flow-cassette-dl__list-item-left {
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px dotted var(--color-accent-1);
    width: 227px;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item-left {
        display: block;
        border-right: none;
        width: 100%;
    }
}
.p-flow-cassette-dl__list-item-left--ais {
    align-items: start;
}
.p-flow-cassette-dl__list-item-ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
    color: var(--color-accent-1);
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item-ttl {
        display: block;
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__list-item-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-flow-cassette-dl__list-item-ttl--mt-26-pc {
    margin-top: 26px;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item-ttl--mt-26-pc {
        margin-top: 0;
    }
}
.p-flow-cassette-dl__list-item-right {
    display: flex;
    align-items: start;
    -moz-column-gap: 21px;
         column-gap: 21px;
    padding-block: 15px 16px;
    padding-inline: 29px 36px;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__list-item-right {
        margin-top: 15px;
        flex-direction: column;
        align-items: center;
        padding: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__list-item-right {
        display: block;
        margin-top: calc(3 / var(--design-width) * 100vw);
        padding: 0;
    }
}
.p-flow-cassette-dl__txt {
    display: block;
    margin-top: 11px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0;
    width: 384px;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__txt {
        margin-top: 0;
        text-align: center;
        width: -moz-fit-content;
        width: fit-content;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
        width: 100%;
    }
}
.p-flow-cassette-dl__txt--mt-0 {
    margin-top: 0;
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__txt--mt-0 {
        text-align: left;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__txt--mt-0 {
        text-align: left;
    }
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__txt .sp-hide {
        display: none;
    }
}
@media screen and (max-width: 1299px) {
    .p-flow-cassette-dl__link {
        margin-top: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__link {
        margin-top: calc(8 / var(--design-width) * 100vw);
        margin-inline: auto;
        padding: calc(13 / var(--design-width) * 100vw) calc(27 / var(--design-width) * 100vw) !important;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__link .p-flow-link-dl__txt {
        font-size: calc(14 / var(--design-width) * 100vw) !important;
        line-height: 1.4285714286 !important;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__link .p-flow-link-dl__txt small {
        font-size: calc(12 / var(--design-width) * 100vw) !important;
        line-height: 1.6666666667 !important;
    }
}
.p-flow-cassette-dl__link + .p-flow-cassette-dl__link {
    margin-top: 8px;
}
@media screen and (max-width: 767px) {
    .p-flow-cassette-dl__link + .p-flow-cassette-dl__link {
        margin-top: calc(9 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-flow-box-01
--------------------------------------------- */
.p-flow-box-01-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01-wrap {
        margin-inline: auto;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01-wrap {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: calc(28 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw);
    }
}

.p-flow-box-01 {
    position: relative;
    border-radius: 20px;
    border: 2px solid var(--color-accent-1);
    width: 210px;
    height: 262px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01 {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01 {
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: 100%;
        height: calc(194 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__num {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: 46px;
    aspect-ratio: 1;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__num {
        width: calc(32 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__num-txt {
    position: absolute;
    top: 47%;
    left: 51%;
    transform: translate(-50%, -50%);
    font-size: calc(22 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__num-txt {
        font-size: calc(14 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__img--1 {
    margin-top: 59px;
    margin-left: 65px;
    width: 78px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01__img--1 {
        margin-right: auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__img--1 {
        margin-top: calc(41 / var(--design-width) * 100vw);
        margin-right: initial;
        margin-left: calc(56 / var(--design-width) * 100vw);
        width: calc(52 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__img--2 {
    margin-top: 38px;
    margin-left: 55px;
    width: 93px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01__img--2 {
        margin-right: auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__img--2 {
        margin-top: calc(33 / var(--design-width) * 100vw);
        margin-right: initial;
        margin-left: calc(50 / var(--design-width) * 100vw);
        width: calc(62 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__img--3 {
    margin-top: 50px;
    margin-left: 70px;
    width: 67px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01__img--3 {
        margin-right: auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__img--3 {
        margin-top: calc(40 / var(--design-width) * 100vw);
        margin-right: initial;
        margin-left: calc(62 / var(--design-width) * 100vw);
        width: calc(44 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__img--4 {
    margin-top: 48px;
    margin-left: 73px;
    width: 80px;
}
@media screen and (max-width: 1199px) {
    .p-flow-box-01__img--4 {
        margin-right: auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__img--4 {
        margin-top: calc(38 / var(--design-width) * 100vw);
        margin-right: initial;
        margin-left: calc(60 / var(--design-width) * 100vw);
        width: calc(53 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__img img {
    width: 100%;
    height: auto;
}
.p-flow-box-01__txt {
    text-align: center;
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5555555556;
    letter-spacing: 0;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-flow-box-01__txt--1 {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__txt--1 {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__txt--2 {
    margin-top: 21px;
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__txt--2 {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__txt--3 {
    margin-top: 31px;
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__txt--3 {
        margin-top: calc(21 / var(--design-width) * 100vw);
    }
}
.p-flow-box-01__txt--4 {
    margin-top: 29px;
}
@media screen and (max-width: 767px) {
    .p-flow-box-01__txt--4 {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-flow-box-02
--------------------------------------------- */
.p-flow-box-02-wrap {
    display: flex;
    align-items: start;
    -moz-column-gap: 19px;
         column-gap: 19px;
}
@media screen and (max-width: 1299px) {
    .p-flow-box-02-wrap {
        flex-direction: column;
        row-gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-flow-box-02-wrap {
        flex-direction: column;
        row-gap: calc(20 / var(--design-width) * 100vw);
    }
}

.p-flow-box-02 {
    flex: 1;
}
@media screen and (max-width: 1299px) {
    .p-flow-box-02 {
        width: 100%;
    }
}
.p-flow-box-02__content {
    padding: 17px 26px;
    border-radius: 10px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-02__content {
        padding: calc(9 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw) calc(16 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-flow-box-02__ttl {
    display: block;
    padding-bottom: 12px;
    border-bottom: 1px dotted var(--color-border-1);
    text-align: center;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-02__ttl {
        padding-bottom: calc(9 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.4285714286;
    }
}
.p-flow-box-02__txt {
    display: block;
    margin-top: 8px;
    text-align: center;
    font-size: calc(22 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4545454545;
    letter-spacing: 0;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-02__txt {
        margin-top: calc(11 / var(--design-width) * 100vw);
        font-size: calc(18 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.4444444444;
    }
}
.p-flow-box-02__txt--2 {
    margin-right: -25px;
    letter-spacing: -0.026em;
}
@media screen and (max-width: 767px) {
    .p-flow-box-02__txt--2 {
        margin-right: 0;
        letter-spacing: 0;
    }
}
.p-flow-box-02__desc {
    position: relative;
    margin-top: 11px;
    padding-left: 1em;
    font-size: calc(10 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-box-02__desc {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-flow-box-02__desc::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}

/* ---------------------------------------------
*   p-flow-link-01
--------------------------------------------- */
.p-flow-link-01 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 8px 9px;
    border-radius: 10px;
    background-color: var(--color-background-4);
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.45;
    color: var(--color-white-1);
}
@media (hover: hover) and (pointer: fine) {
    .p-flow-link-01 {
        transition: opacity var(--hover-duration);
    }
    .p-flow-link-01:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-flow-link-01 {
        padding-block: calc(8 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-flow-link-01::after {
    position: absolute;
    top: 50%;
    right: 21px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_arrow_05.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_05.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    width: 7px;
    height: 12px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-link-01::after {
        right: calc(26 / var(--design-width) * 100vw);
        width: calc(7 / var(--design-width) * 100vw);
        height: calc(12 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-flow-link-dl
--------------------------------------------- */
.p-flow-link-dl {
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 27px 12px;
    border-radius: 10px;
    background-color: var(--color-background-4);
    width: 312px;
}
@media (hover: hover) and (pointer: fine) {
    .p-flow-link-dl {
        transition: opacity var(--hover-duration);
    }
    .p-flow-link-dl:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-flow-link-dl {
        padding: calc(10 / var(--design-width) * 100vw) calc(27 / var(--design-width) * 100vw) calc(12 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: calc(290 / var(--design-width) * 100vw);
    }
}
.p-flow-link-dl::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_dl.svg) 0 0 no-repeat;
            mask: url(../img/ico_dl.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-white-1);
    width: 23px;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .p-flow-link-dl::after {
        right: calc(19 / var(--design-width) * 100vw);
        width: calc(23 / var(--design-width) * 100vw);
        height: calc(22 / var(--design-width) * 100vw);
    }
}
.p-flow-link-dl__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-flow-link-dl__txt {
        font-size: calc(16 / var(--design-width) * 100vw);
    }
}
.p-flow-link-dl__txt small {
    font-size: calc(12 / var(--root-fz) * 1rem);
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .p-flow-link-dl__txt small {
        font-size: calc(12 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-news-section-01
--------------------------------------------- */
.p-news-section-01 {
    padding-top: 149px;
    padding-bottom: 133px;
}
@media screen and (max-width: 767px) {
    .p-news-section-01 {
        padding-top: calc(88 / var(--design-width) * 100vw);
        padding-bottom: calc(72 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__ttl {
    color: var(--color-accent-1);
}
.p-news-section-01__ttl-sub-txt {
    display: block;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.45;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__ttl-sub-txt {
        position: relative;
        padding-left: calc(16 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
        letter-spacing: 0;
    }
    .p-news-section-01__ttl-sub-txt::before {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        content: "";
        display: block;
        border-radius: 50%;
        width: calc(6 / var(--design-width) * 100vw);
        aspect-ratio: 1;
        background-color: var(--color-accent-1);
    }
}
.p-news-section-01__ttl-main-txt {
    display: block;
    font-size: calc(54 / var(--root-fz) * 1rem);
    font-weight: 800;
    line-height: 1.4363636364;
    letter-spacing: 0.081em;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__ttl-main-txt {
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.4375;
        letter-spacing: 0.06em;
    }
}
.p-news-section-01__wrap {
    margin-top: 32px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
@media screen and (max-width: 1199px) {
    .p-news-section-01__wrap {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__wrap {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1199px) {
    .p-news-section-01__link-list {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        row-gap: 10px;
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__link-list {
        row-gap: calc(10 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__list-item + .p-news-section-01__list-item {
    margin-top: 10px;
}
@media screen and (max-width: 1199px) {
    .p-news-section-01__list-item + .p-news-section-01__list-item {
        margin-top: 0;
    }
}
@media screen and (max-width: 1199px) {
    .p-news-section-01__list-item:not(:last-of-type) {
        margin-right: 20px;
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__list-item:not(:last-of-type) {
        margin-right: calc(20 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__link {
    position: relative;
    padding-left: 26px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.5;
}
@media (hover: hover) and (pointer: fine) {
    .p-news-section-01__link {
        transition: opacity var(--hover-duration);
    }
    .p-news-section-01__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__link {
        padding-left: calc(26 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-news-section-01__link::before {
    position: absolute;
    top: 54%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    border: 1px solid var(--color-base-1);
    width: 18px;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__link::before {
        width: calc(18 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__link.is-current::after {
    position: absolute;
    top: 54%;
    left: 4px;
    transform: translateY(-50%);
    content: "";
    display: block;
    border-radius: 50%;
    background-color: var(--color-accent-2);
    width: 10px;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__link.is-current::after {
        left: calc(4 / var(--design-width) * 100vw);
        width: calc(10 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__main-list {
    max-width: 794px;
    width: 100%;
}
@media screen and (max-width: 1199px) {
    .p-news-section-01__main-list {
        margin-top: 30px;
        max-width: initial;
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__main-list {
        margin-top: calc(29 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__main-list-item:not(:first-of-type) {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__main-list-item:not(:first-of-type) {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__main-list-item[id] {
    scroll-margin-top: 50px;
}
@media screen and (max-width: 1365px) {
    .p-news-section-01__main-list-item[id] {
        scroll-margin-top: 145px;
    }
}
@media screen and (max-width: 767px) {
    .p-news-section-01__main-list-item[id] {
        scroll-margin-top: calc(132 / var(--design-width) * 100vw);
    }
}
.p-news-section-01__pagination {
    margin-top: 91px;
}
@media screen and (max-width: 767px) {
    .p-news-section-01__pagination {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-section-01
--------------------------------------------- */
.p-recruit-section-01 {
    position: relative;
    padding-top: 96px;
    padding-bottom: 0;
    z-index: 3;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01 {
        padding-top: calc(42 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__inner {
    position: relative;
    padding-bottom: 558px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__inner {
        padding-bottom: 750px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__inner {
        padding-bottom: calc(384 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__lead {
    margin-left: calc(26 / var(--design-width) * 100vw);
    text-align: center;
    font-size: calc(45 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4444444444;
    letter-spacing: 0.02em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__lead {
        margin-left: 0;
        font-size: calc(26 / var(--design-width) * 100vw);
        line-height: 1.3846153846;
        letter-spacing: 0;
    }
}
.p-recruit-section-01__lead br {
    display: none;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__lead br {
        display: block;
    }
}
.p-recruit-section-01__wrap-1 {
    margin-top: 79px;
    display: flex;
    align-items: start;
    -moz-column-gap: 42px;
         column-gap: 42px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__wrap-1 {
        margin-top: 50px;
        flex-direction: column-reverse;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__wrap-1 {
        margin-top: calc(33 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__wrap-1-left {
    width: 401px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__wrap-1-left {
        width: 100%;
    }
}
.p-recruit-section-01__sub-lead {
    margin-top: 53px;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__sub-lead {
        margin-top: calc(21 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__sub-lead-txt {
    position: relative;
    display: block;
    font-size: calc(24 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0;
    color: var(--color-white-1);
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__sub-lead-txt {
        font-size: calc(24 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__sub-lead-txt::before {
    position: absolute;
    top: 53%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    height: 27px;
    background-color: var(--color-accent-2);
    z-index: -1;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__sub-lead-txt::before {
        height: calc(27 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__sub-lead-txt:nth-of-type(1)::before {
    width: 93.2291666667%;
}
.p-recruit-section-01__wrap-2-right .p-recruit-section-01__sub-lead-txt:nth-of-type(1)::before {
    width: 95.4861111111%;
}

.p-recruit-section-01__sub-lead-txt:nth-of-type(2)::before {
    width: 101.2861736334%;
}
.p-recruit-section-01__txt-1 {
    margin-top: 9px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__txt-1 {
        margin-top: calc(16 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-recruit-section-01__txt-1--ls-28 {
    letter-spacing: 0.028em;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__txt-1--ls-28 {
        letter-spacing: -0.01em;
    }
}
.p-recruit-section-01__wrap-2-right .p-recruit-section-01__txt-1 {
    margin-top: 18px;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__wrap-2-right .p-recruit-section-01__txt-1 {
        margin-top: calc(5 / var(--design-width) * 100vw);
    }
}

.p-recruit-section-01__wrap-1-right {
    margin-right: calc(50% - 50vw);
    flex: 1;
}
.p-recruit-section-01__img-01 {
    width: 100%;
    height: 574px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__img-01 {
        margin-left: 8.1081081081%;
        width: 121.5189873418%;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-01 {
        margin-left: calc(30 / var(--design-width) * 100vw);
        width: 91.8918918919%;
        height: initial;
    }
}
.p-recruit-section-01__img-01 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-section-01__img-01-wrap {
    height: 100%;
    border-radius: 30px 0 0 30px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-01-wrap {
        border-radius: calc(20 / var(--design-width) * 100vw) 0 0 calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__wrap-2 {
    margin-top: -169px;
    display: flex;
    align-items: end;
    -moz-column-gap: 121px;
         column-gap: 121px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__wrap-2 {
        margin-top: 30px;
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__wrap-2 {
        margin-top: calc(18 / var(--design-width) * 100vw);
        flex-direction: column;
    }
}
.p-recruit-section-01__img-02 {
    margin-left: -50px;
    width: 422px;
    border-radius: 30px;
    overflow: hidden;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__img-02 {
        margin-left: 0;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-02 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__img-02 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-section-01__wrap-2-right {
    flex: 1;
    margin-bottom: -11px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__wrap-2-right {
        margin-bottom: 0;
    }
}
.p-recruit-section-01__img-03 {
    position: absolute;
    right: 0;
    bottom: 223px;
    border-radius: 30px;
    width: 372px;
    overflow: hidden;
    z-index: 1;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__img-03 {
        right: 50px;
        bottom: 475px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-03 {
        bottom: calc(232 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: calc(163 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__img-03 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-section-01__img-04 {
    position: absolute;
    bottom: 99px;
    left: 199px;
    border-radius: 30px;
    width: 421px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-recruit-section-01__img-04 {
        left: 0;
    }
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__img-04 {
        left: 50px;
        bottom: 150px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-04 {
        bottom: calc(106 / var(--design-width) * 100vw);
        left: 0;
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: calc(238 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__img-04 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-section-01__img-05 {
    position: absolute;
    bottom: -116px;
    right: 260px;
    border-radius: 30px;
    width: 250px;
    overflow: hidden;
}
@media screen and (max-width: 1099px) {
    .p-recruit-section-01__img-05 {
        right: 50px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-section-01__img-05 {
        right: calc(39 / var(--design-width) * 100vw);
        bottom: calc(-47 / var(--design-width) * 100vw);
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: calc(183 / var(--design-width) * 100vw);
    }
}
.p-recruit-section-01__img-05 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   p-recruit-section-02
--------------------------------------------- */
.p-recruit-section-02 {
    position: relative;
    margin-top: -50px;
    padding-block: 229px 118px;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-02 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(127 / var(--design-width) * 100vw) calc(61 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-section-03
--------------------------------------------- */
.p-recruit-section-03 {
    position: relative;
    margin-top: -50px;
    padding-block: 110px 170px;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-recruit-section-03 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(90 / var(--design-width) * 100vw) calc(93 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-cassette-01
--------------------------------------------- */
.p-recruit-cassette-01__box-01-wrap {
    margin-top: 56px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-01__box-01-wrap {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-01__desc {
    margin-top: 18px;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.8333333333;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-01__desc {
        display: none;
    }
}
.p-recruit-cassette-01__desc-list {
    display: none;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-01__desc-list {
        display: block;
        margin-top: 18px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-01__desc-list {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-01__desc-list-item {
    position: relative;
    padding-left: 1em;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.8333333333;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-01__desc-list-item {
        font-size: calc(10 / var(--design-width) * 100vw);
        font-weight: 400;
        line-height: 2;
    }
}
.p-recruit-cassette-01__desc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
.p-recruit-cassette-01__link {
    margin-top: 70px;
    margin-inline: auto;
    display: flex;
    justify-content: center;
    border-radius: 20px;
    padding-block: 22px 26px;
    background-color: var(--color-accent-2);
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-white-1);
    width: 320px;
}
@media (hover: hover) and (pointer: fine) {
    .p-recruit-cassette-01__link {
        transition: opacity var(--hover-duration);
    }
    .p-recruit-cassette-01__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-01__link {
        margin-top: calc(40 / var(--design-width) * 100vw);
        padding-block: calc(16 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
        border-radius: calc(20 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
        width: 100%;
    }
}
.p-recruit-cassette-01:nth-of-type(2) {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-01:nth-of-type(2) {
        margin-top: calc(62 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-cassette-02
--------------------------------------------- */
.p-recruit-cassette-02 {
    margin-top: 12px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-02 {
        margin-top: 80px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-02 {
        margin-top: calc(72 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-02__ttl-02 {
    margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-02__ttl-02 {
        margin-bottom: calc(19 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-02__container + .p-recruit-cassette-02__container {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-02__container + .p-recruit-cassette-02__container {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-02__list {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-02__list {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-cassette-meal
--------------------------------------------- */
.p-recruit-cassette-meal {
    display: flex;
    align-items: start;
    -moz-column-gap: 44px;
         column-gap: 44px;
}
.p-recruit-cassette-meal__wrap {
    flex: 1;
}
.p-recruit-cassette-meal__ttl {
    font-size: calc(24 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4583333333;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__ttl {
        font-size: calc(20 / var(--design-width) * 100vw);
        font-weight: bold;
        line-height: 1.6;
    }
}
.p-recruit-cassette-meal__txt {
    margin-top: 12px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__txt {
        margin-top: calc(15 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7142857143;
    }
}
.p-recruit-cassette-meal__list {
    margin-top: 18px;
    width: 433px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__list {
        margin-top: calc(32 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.p-recruit-cassette-meal__list-item {
    display: flex;
    padding: 4px 30px 6px 34px;
    border: 1px solid var(--color-white-1);
    border-radius: 10px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__list-item {
        justify-content: center;
        padding: calc(7 / var(--design-width) * 100vw) 3.7142857143%;
        border-radius: calc(10 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
    .windows.chrome .p-recruit-cassette-meal__list-item {
        padding: calc(7 / var(--design-width) * 100vw) 1.7142857143%;
    }
    .windows.edge .p-recruit-cassette-meal__list-item {
        padding: calc(7 / var(--design-width) * 100vw) 1.7142857143%;
    }
}
.firefox .p-recruit-cassette-meal__list-item {
    padding: 4px 26px 6px 34px;
}
@media screen and (max-width: 767px) {
    .firefox .p-recruit-cassette-meal__list-item {
        padding: calc(7 / var(--design-width) * 100vw) 3.7142857143%;
    }
}

.p-recruit-cassette-meal__list-item + .p-recruit-cassette-meal__list-item {
    margin-top: 6px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__list-item + .p-recruit-cassette-meal__list-item {
        margin-top: calc(5 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-meal__img-01 {
    border-radius: 30px;
    width: 423px;
    overflow: hidden;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-meal__img-01 {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__img-01 {
        border-radius: calc(30 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.p-recruit-cassette-meal__img-01 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-cassette-meal__desc {
    margin-top: 8px;
    display: block;
    text-align: right;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4166666667;
    letter-spacing: 0;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal__desc {
        margin-top: calc(9 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-recruit-cassette-meal:nth-of-type(1) {
    margin-top: 54px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-meal:nth-of-type(1) {
        margin-top: 30px;
        flex-direction: column;
        row-gap: 40px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal:nth-of-type(1) {
        margin-top: calc(29 / var(--design-width) * 100vw);
        row-gap: calc(31 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-meal:nth-of-type(2) {
    margin-top: 31px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-meal:nth-of-type(2) {
        margin-top: 30px;
        flex-direction: column-reverse;
        row-gap: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-meal:nth-of-type(2) {
        margin-top: calc(14 / var(--design-width) * 100vw);
        row-gap: calc(16 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-cassette-info
--------------------------------------------- */
.p-recruit-cassette-info {
    margin-top: 64px;
    padding-bottom: 79px;
    border-bottom: 1px solid rgba(255, 78, 138, 0.5);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info {
        margin-top: calc(30 / var(--design-width) * 100vw);
        padding-bottom: calc(40 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-info__wrap {
    display: flex;
    align-items: start;
    -moz-column-gap: 75px;
         column-gap: 75px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-info__wrap {
        flex-direction: column-reverse;
        row-gap: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info__wrap {
        row-gap: calc(15 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-info__left {
    flex: 1;
}
.p-recruit-cassette-info__ttl {
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info__ttl {
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.45;
    }
}
.p-recruit-cassette-info__txt {
    margin-top: 17px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.8571428571;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info__txt {
        margin-top: calc(12 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-recruit-cassette-info__img {
    border-radius: 20px;
    width: 367px;
    overflow: hidden;
}
@media screen and (max-width: 1099px) {
    .p-recruit-cassette-info__img {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info__img {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-info__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-recruit-cassette-info__acc {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info__acc {
        margin-top: calc(38 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info:nth-of-type(2) {
        margin-top: calc(50 / var(--design-width) * 100vw);
        padding-bottom: calc(54 / var(--design-width) * 100vw);
    }
}
.p-recruit-cassette-info:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
}
@media screen and (max-width: 767px) {
    .p-recruit-cassette-info:last-of-type {
        margin-top: calc(50 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-recruit-box-01
--------------------------------------------- */
.p-recruit-box-01-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 19px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-box-01-wrap {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01-wrap {
        grid-template-columns: repeat(1, 1fr);
        row-gap: calc(10 / var(--design-width) * 100vw);
    }
}

.p-recruit-box-01 {
    padding: 29px 44px 26px;
    border-radius: 20px;
    background-color: var(--color-white-1);
    min-height: 181px;
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01 {
        padding: calc(20 / var(--design-width) * 100vw) 8.5714285714% calc(27 / var(--design-width) * 100vw);
        min-height: initial;
    }
    .windows.chrome .p-recruit-box-01 {
        padding: calc(20 / var(--design-width) * 100vw) 6.8571428571% calc(27 / var(--design-width) * 100vw);
    }
    .windows.edge .p-recruit-box-01 {
        padding: calc(20 / var(--design-width) * 100vw) 6.8571428571% calc(27 / var(--design-width) * 100vw);
    }
}
.p-recruit-box-01__head {
    position: relative;
}
.p-recruit-box-01__step {
    position: absolute;
    top: -7px;
    left: 0;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4285714286;
    letter-spacing: 0;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__step {
        position: static;
        display: block;
        text-align: center;
        font-size: calc(14 / var(--design-width) * 100vw);
    }
}
.p-recruit-box-01__ttl {
    margin-top: 7px;
    text-align: center;
    font-size: calc(26 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.4230769231;
    letter-spacing: 0;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__ttl {
        margin-top: calc(5 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-box-01__txt {
    margin-top: 26px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__txt {
        margin-top: calc(15 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-recruit-box-01__txt--ls-0 {
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__txt--ls-0 {
        letter-spacing: -0.02em;
    }
}
.p-recruit-box-01__txt--ls-40 {
    letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__txt--ls-40 {
        letter-spacing: -0.02em;
    }
}
.p-recruit-box-01__desc {
    margin-top: 8px;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.4166666667;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-recruit-box-01__desc {
        margin-top: calc(11 / var(--design-width) * 100vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.5;
        letter-spacing: -0.006em;
    }
}

/* ---------------------------------------------
*   p-recruit-list-01
--------------------------------------------- */
.p-recruit-list-01__item {
    padding: 27px 48px;
    border-radius: 20px;
    background-color: var(--color-background-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-list-01__item {
        padding: calc(29 / var(--design-width) * 100vw) 2.8571428571% calc(18 / var(--design-width) * 100vw) 4.2857142857%;
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-01__item + .p-recruit-list-01__item {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-01__item + .p-recruit-list-01__item {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-01--white .p-recruit-list-01__item {
    background-color: var(--color-white-1);
}
.p-recruit-list-01--mt-0 {
    margin-top: 0;
}

/* ---------------------------------------------
*   p-recruit-list-qa
--------------------------------------------- */
.p-recruit-list-qa {
    display: flex;
    flex-direction: column;
    row-gap: 23px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa {
        row-gap: calc(23 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-qa__q, .p-recruit-list-qa__a {
    position: relative;
    padding-left: 54px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__q, .p-recruit-list-qa__a {
        padding-left: calc(49 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-qa__q {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__q {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__q--mr {
        margin-right: calc(-5 / var(--design-width) * 100vw);
        letter-spacing: 0.005em;
    }
}
.p-recruit-list-qa__a {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    line-height: 1.625;
    letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__a {
        font-size: calc(13 / var(--design-width) * 100vw);
        line-height: 1.7692307692;
    }
}
.p-recruit-list-qa__q-label, .p-recruit-list-qa__a-label {
    position: absolute;
    top: -7px;
    left: 0;
    border-radius: 50%;
    width: 38px;
    aspect-ratio: 1;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__q-label, .p-recruit-list-qa__a-label {
        top: calc(-9 / var(--design-width) * 100vw);
        width: calc(38 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-qa__q-label {
    background-color: var(--color-accent-4);
}
.p-recruit-list-qa__a-label {
    background-color: var(--color-accent-2);
}
.p-recruit-list-qa__q-label-txt, .p-recruit-list-qa__a-label-txt {
    position: absolute;
    top: 46.5%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: calc(18 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1;
    color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__q-label-txt, .p-recruit-list-qa__a-label-txt {
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-qa__a-label-txt {
    left: 52%;
}
.windows.firefox .p-recruit-list-qa__a-label-txt {
    left: 51%;
}

.p-recruit-list-qa__link {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.625;
    letter-spacing: 0.035em;
    color: var(--color-accent-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__link {
        font-size: calc(13 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7692307692;
    }
}
.p-recruit-list-qa__link-2 {
    margin-top: 15px;
    margin-left: -2px;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.035em;
    color: var(--color-accent-2);
}
@media (hover: hover) and (pointer: fine) {
    .p-recruit-list-qa__link-2 {
        transition: opacity var(--hover-duration);
    }
    .p-recruit-list-qa__link-2:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-qa__link-2 {
        margin-top: calc(8 / var(--design-width) * 100vw);
        margin-left: calc(-1 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}

/* ---------------------------------------------
*   p-recruit-list-info
--------------------------------------------- */
.p-recruit-list-info__item {
    display: flex;
    align-items: center;
    padding-block: 18px 22px;
    border-top: 1px dotted var(--color-border-3);
    min-height: 82px;
}
@media screen and (max-width: 1099px) {
    .p-recruit-list-info__item {
        flex-direction: column;
        align-items: start;
        row-gap: 10px;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__item {
        padding-block: calc(13 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw);
        row-gap: calc(7 / var(--design-width) * 100vw);
        min-height: calc(82 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-info__item:last-of-type {
    padding-bottom: 36px;
}
.p-recruit-list-info__ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0;
    width: 232px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__ttl {
        font-size: calc(12 / var(--design-width) * 100vw);
        line-height: 1.4166666667;
        width: 100%;
        color: var(--color-accent-2);
    }
}
.p-recruit-list-info__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0;
    flex: 1;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-recruit-list-info__txt small {
    font-size: calc(12 / var(--root-fz) * 1rem);
    line-height: 2.1666666667;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt small {
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 2.4;
    }
    .windows.chrome .p-recruit-list-info__txt small {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
    .windows.edge .p-recruit-list-info__txt small {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt .sp {
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 2.4;
    }
    .windows.chrome .p-recruit-list-info__txt .sp {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
    .windows.edge .p-recruit-list-info__txt .sp {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1199px) {
    .p-recruit-list-info__txt .tb-hide {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt .tb-hide {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt .lh {
        display: block;
        line-height: 1.5;
    }
}
.p-recruit-list-info__desc {
    margin-top: 10px;
    display: block;
    font-size: calc(12 / var(--root-fz) * 1rem);
    font-weight: 500;
    line-height: 1.6666666667;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__desc {
        margin-top: calc(2 / var(--design-width) * 100vw);
        margin-right: calc(50% - 50vw);
        font-size: calc(10 / var(--design-width) * 100vw);
        line-height: 1.8;
        white-space: nowrap;
    }
    .windows.chrome .p-recruit-list-info__desc {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
    .windows.edge .p-recruit-list-info__desc {
        font-size: calc(9.5 / var(--design-width) * 100vw);
    }
}
.p-recruit-list-info__txt-wrap-1 {
    margin-bottom: 26px;
    display: flex;
    -moz-column-gap: 31px;
         column-gap: 31px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt-wrap-1 {
        margin-bottom: 1.5em;
        flex-direction: column;
        row-gap: 1.5em;
    }
}
.p-recruit-list-info__txt-wrap-2 {
    display: flex;
    -moz-column-gap: 35px;
         column-gap: 35px;
}
@media screen and (max-width: 767px) {
    .p-recruit-list-info__txt-wrap-2 {
        flex-direction: column;
    }
}
.p-recruit-list-info__list {
    counter-reset: li;
}
.p-recruit-list-info__list-item {
    position: relative;
    padding-left: 1em;
}
.p-recruit-list-info__list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: li;
    content: counter(li) ".";
}

/* ---------------------------------------------
*   p-recruit-acc-01
--------------------------------------------- */
.p-recruit-acc-01 {
    border-radius: 20px;
    background-color: var(--color-background-2);
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01 {
        border-radius: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-acc-01__head {
    position: relative;
    padding: 43px 50px;
    text-align: left;
    width: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .p-recruit-acc-01__head {
        transition: opacity var(--hover-duration);
    }
    .p-recruit-acc-01__head:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__head {
        padding: calc(21 / var(--design-width) * 100vw) 8.5714285714% calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-acc-01__btn-txt {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
    color: var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__btn-txt {
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}
.p-recruit-acc-01__icon {
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translateY(-50%);
    display: block;
    border-radius: 50%;
    background-color: var(--color-accent-2);
    width: 30px;
    aspect-ratio: 1;
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__icon {
        right: 8.5714285714%;
        width: calc(30 / var(--design-width) * 100vw);
    }
}
.p-recruit-acc-01__icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    width: 14px;
    height: 2px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__icon::before {
        width: calc(8 / var(--design-width) * 100vw);
        height: 1px;
    }
}
.p-recruit-acc-01__icon::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    width: 2px;
    height: 13px;
    background-color: var(--color-white-1);
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__icon::after {
        width: 1px;
        height: calc(8 / var(--design-width) * 100vw);
    }
}
.p-recruit-acc-01.is-close .p-recruit-acc-01__icon::after {
    display: block;
}
.p-recruit-acc-01.is-open .p-recruit-acc-01__icon::after {
    display: none;
}
.p-recruit-acc-01__icon ::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    width: 2px;
    height: 13px;
    background-color: var(--color-white-1);
}
.p-recruit-acc-01__body {
    padding-inline: 50px;
}
@media screen and (max-width: 767px) {
    .p-recruit-acc-01__body {
        padding-inline: 8.5714285714%;
    }
}

/* ---------------------------------------------
*   p-top-section-01
--------------------------------------------- */
.p-top-section-01 {
    position: relative;
    padding-block: 57px 120px;
    z-index: 5;
}
@media screen and (max-width: 767px) {
    .p-top-section-01 {
        padding-block: calc(45 / var(--design-width) * 100vw) calc(55 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__inner {
        padding-inline: calc(10 / var(--design-width) * 100vw);
    }
    .windows.chrome .p-top-section-01__inner {
        padding-inline: 2.8571428571%;
    }
    .windows.edge .p-top-section-01__inner {
        padding-inline: 2.8571428571%;
    }
}
.p-top-section-01__heading {
    margin-inline: -72px;
    font-size: calc(110 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: -0.028em;
    line-height: 1.4545454545;
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__heading {
        text-align: center;
        line-height: 0.9259259259;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__heading {
        margin-inline: calc(-2 / var(--design-width) * 100vw);
        font-size: calc(54 / var(--design-width) * 100vw);
        letter-spacing: 0.01em;
        line-height: 0.9259259259;
    }
}
.p-top-section-01__heading br {
    display: none;
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__heading br {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__heading span:nth-of-type(4) {
        margin-right: calc(-4 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__heading span:nth-of-type(9) {
        margin-right: calc(-10 / var(--design-width) * 100vw);
    }
}
.p-top-section-01__container {
    margin-top: 79px;
    display: flex;
    align-items: start;
    justify-content: center;
    -moz-column-gap: 74px;
         column-gap: 74px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__container {
        flex-direction: column;
        align-items: center;
        padding-inline: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__container {
        margin-top: calc(44 / var(--design-width) * 100vw);
    }
}
.p-top-section-01__lead {
    flex-shrink: 0;
    font-size: calc(41 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.035em;
    line-height: 1.4634146341;
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__lead {
        text-align: center;
        word-break: keep-all;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__lead {
        font-size: calc(26 / var(--design-width) * 100vw);
        line-height: 1.3846153846;
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__lead br {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__lead br {
        display: block;
    }
}
.p-top-section-01__txt {
    margin-top: -5px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.9;
}
@media screen and (max-width: 1365px) {
    .p-top-section-01__txt {
        margin-top: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-01__txt {
        margin-top: calc(32 / var(--design-width) * 100vw);
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.875;
    }
}

/* ---------------------------------------------
*   p-top-section-02
--------------------------------------------- */
.p-top-section-02 {
    position: relative;
    margin-top: -50px;
    padding-block: 150px 100px;
    z-index: 4;
}
@media screen and (max-width: 767px) {
    .p-top-section-02 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(112 / var(--design-width) * 100vw) calc(60 / var(--design-width) * 100vw);
    }
}
.p-top-section-02__container {
    margin-top: 50px;
    display: flex;
    align-items: start;
    justify-content: center;
    -moz-column-gap: 38px;
         column-gap: 38px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__container {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__container {
        margin-top: calc(1 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__container-left {
        display: contents;
    }
}
.p-top-section-02__container-left-ttl {
    font-size: calc(94 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.4468085106;
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__container-left-ttl {
        order: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__container-left-ttl {
        font-size: calc(50 / var(--design-width) * 100vw);
        line-height: 1.44;
    }
}
.p-top-section-02__txt {
    margin-top: 44px;
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: bold;
    line-height: 1.8125;
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__txt {
        order: 2;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__txt {
        margin-top: calc(27 / var(--design-width) * 100vw);
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.6666666667;
    }
}
.p-top-section-02__txt strong {
    color: var(--color-text-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__txt br {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__txt br {
        display: block;
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__container-right {
        order: 3;
        margin-top: 30px;
        margin-inline: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__container-right {
        margin-top: calc(27 / var(--design-width) * 100vw);
    }
}
.p-top-section-02__img-01 {
    margin-top: 18px;
    margin-right: -50px;
    width: 632px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__img-01 {
        margin-top: 0;
        margin-right: 0;
        width: 100%;
        max-width: 632px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__img-01 {
        margin-inline: auto;
        width: 98.5714285714%;
    }
}
.p-top-section-02__img-01 img {
    width: 100%;
    height: auto;
}
.p-top-section-02__link-01 {
    margin-top: 44px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-02__link-01 {
        order: 4;
        margin-inline: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-02__link-01 {
        margin-top: calc(38 / var(--design-width) * 100vw);
    }
}
.p-top-section-02__card-container {
    margin-top: 77px;
}
@media screen and (max-width: 767px) {
    .p-top-section-02__card-container {
        margin-top: calc(58 / var(--design-width) * 100vw);
    }
}
.p-top-section-02__link-02 {
    margin-top: 88px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-top-section-02__link-02 {
        margin-top: calc(39 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-top-section-03
--------------------------------------------- */
.p-top-section-03 {
    position: relative;
    margin-top: -50px;
    padding-block: 150px 100px;
    z-index: 3;
}
@media screen and (max-width: 767px) {
    .p-top-section-03 {
        padding-block: calc(103 / var(--design-width) * 100vw) calc(60 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__sub-ttl {
    margin-top: 50px;
    font-size: calc(94 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0.035em;
    line-height: 1.4468085106;
    color: var(--color-accent-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__sub-ttl {
        white-space: nowrap;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__sub-ttl {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(50 / var(--design-width) * 100vw);
        letter-spacing: 0;
        line-height: 1.44;
    }
}
.p-top-section-03__txt {
    margin-top: 11px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.087em;
    line-height: 1.9;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__txt {
        margin-top: calc(28 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 600;
        letter-spacing: 0.02em;
        line-height: 1.7142857143;
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__txt br {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__txt br {
        display: block;
    }
}
.p-top-section-03__container {
    margin-top: 66px;
    display: flex;
    align-items: start;
    -moz-column-gap: 42px;
         column-gap: 42px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__container {
        margin-top: 40px;
        flex-direction: column-reverse;
        row-gap: 41px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__container {
        margin-top: calc(22 / var(--design-width) * 100vw);
        flex-direction: column-reverse;
        row-gap: calc(41 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__container-left {
    flex: 1;
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__container-left {
        width: 100%;
    }
}
.p-top-section-03__container-left-ttl {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    line-height: 1.45;
    color: var(--color-text-1);
}
@media screen and (max-width: 767px) {
    .p-top-section-03__container-left-ttl {
        font-size: calc(16 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.p-top-section-03__list {
    margin-top: 14px;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__list-item {
    display: flex;
    align-items: stretch;
    border: 2px solid var(--color-border-1);
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list-item {
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.p-top-section-03__list-item:not(:first-of-type) {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list-item:not(:first-of-type) {
        margin-top: calc(5 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__list-item-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding-block: 31px 35px;
    text-align: center;
    font-size: calc(24 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1;
    color: var(--color-white-1);
    width: 170px;
    background-color: var(--color-background-4);
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list-item-ttl {
        padding-block: calc(13 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        width: 25.7142857143%;
    }
}
.p-top-section-03__list-item-txt {
    display: flex;
    align-items: center;
    padding: 0 24px 0 23px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.087em;
    line-height: 1.5;
    color: var(--color-text-1);
    background-color: var(--color-white-1);
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__list-item-txt {
        padding: 0 20px 0 20px;
        font-size: calc(24 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list-item-txt {
        padding: calc(13 / var(--design-width) * 100vw) 0 calc(13 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
        font-size: calc(13 / var(--design-width) * 100vw);
        letter-spacing: -0.04em;
        line-height: 1;
    }
    .windows.chrome .p-top-section-03__list-item-txt {
        padding: calc(13 / var(--design-width) * 100vw) 0 calc(13 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
    }
    .windows.edge .p-top-section-03__list-item-txt {
        padding: calc(13 / var(--design-width) * 100vw) 0 calc(13 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__list-item-txt br {
        display: none;
    }
}
@media screen and (max-width: 949px) {
    .p-top-section-03__list-item-txt br {
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__list-item-txt br {
        display: none;
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__container-right {
        width: 100%;
    }
}
.p-top-section-03__img-01 {
    border-radius: 30px;
    width: 645px;
    overflow: hidden;
    flex-shrink: 0;
}
@media screen and (max-width: 1365px) {
    .p-top-section-03__img-01 {
        border-radius: calc(30 / var(--design-width) * 100vw);
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-03__img-01 {
        border-radius: calc(10 / var(--design-width) * 100vw);
        width: 100%;
    }
}
.p-top-section-03__img-01 img {
    width: 100%;
    height: auto;
}
.p-top-section-03__slider-ttl {
    position: relative;
    margin-top: 37px;
    padding-left: 20px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.035em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__slider-ttl {
        margin-top: calc(50 / var(--design-width) * 100vw);
        padding-left: calc(14 / var(--design-width) * 100vw);
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-top-section-03__slider-ttl::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-top-section-03__slider-ttl::before {
        width: calc(8 / var(--design-width) * 100vw);
        height: calc(8 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__slider {
    margin-top: 24px;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__slider {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-03__link-01 {
    margin-top: 86px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-top-section-03__link-01 {
        margin-top: calc(49 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   p-top-section-04
--------------------------------------------- */
.p-top-section-04 {
    position: relative;
    margin-top: -50px;
    padding-block: 142px 89px;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .p-top-section-04 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(90 / var(--design-width) * 100vw) calc(56 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__container {
    display: flex;
    align-items: start;
    -moz-column-gap: 142px;
         column-gap: 142px;
    margin-top: 50px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__container {
        flex-direction: column-reverse;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__container {
        margin-top: calc(30 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__container-left {
        margin-inline: auto;
    }
}
.p-top-section-04__container-left-ttl {
    font-size: calc(32 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.035em;
    line-height: 1.40625;
    color: var(--color-accent-2);
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__container-left-ttl {
        font-size: calc(20 / var(--root-fz) * 1rem);
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__container-left-ttl {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.4285714286;
    }
}
.p-top-section-04__link-01 {
    position: relative;
    display: block;
    padding-bottom: 77px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__link-01 {
        margin-top: 88px;
        padding-right: 57px;
        padding-bottom: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__link-01 {
        margin-top: calc(37 / var(--design-width) * 100vw);
        padding-right: calc(44 / var(--design-width) * 100vw);
        padding-bottom: 0;
    }
}
.p-top-section-04__link-01::before {
    position: absolute;
    bottom: 20px;
    left: 18px;
    content: "";
    display: block;
    -webkit-mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
            mask: url(../img/ico_arrow_01.svg) 0 0 no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
    background-color: var(--color-accent-2);
    width: 25px;
    height: 21px;
    transition: background-color 0.3s;
    z-index: 1;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__link-01::before {
        top: 50%;
        bottom: initial;
        left: initial;
        right: 12px;
        transform: translateY(-50%);
        width: 18px;
        height: 15px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__link-01::before {
        right: calc(10 / var(--design-width) * 100vw);
        width: calc(14 / var(--design-width) * 100vw);
        height: calc(11 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__link-01::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    display: block;
    border: 2px solid var(--color-accent-2);
    border-radius: 50%;
    width: 62px;
    aspect-ratio: 1;
    transition: transform 0.3s, background-color 0.3s;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__link-01::after {
        top: 50%;
        bottom: initial;
        right: 0;
        left: initial;
        transform: translateY(-50%);
        width: 42px;
        border-width: 1px;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__link-01::after {
        border-width: calc(1 / var(--design-width) * 100vw);
        width: calc(34 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__link-01 br {
        display: none;
    }
}
@media (hover: hover) and (pointer: fine) {
    .p-top-section-04__link-01:hover::before {
        background-color: var(--color-white-1);
    }
    .p-top-section-04__link-01:hover::after {
        transform: scale(1.1612903226);
        background-color: var(--color-accent-2);
    }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1365px) {
    .p-top-section-04__link-01:hover::after {
        transform: translateY(-50%) scale(1.1612903226);
    }
}
.p-top-section-04__news-list {
    flex: 1;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__news-list {
        width: 100%;
    }
}
.p-top-section-04__news-item {
    border-radius: 20px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-top-section-04__news-item {
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__news-item:not(:first-of-type) {
    margin-top: 14px;
}
@media screen and (max-width: 767px) {
    .p-top-section-04__news-item:not(:first-of-type) {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__news-link {
    display: flex;
    padding: 37px 44px;
    background-color: var(--color-white-1);
}
@media (hover: hover) and (pointer: fine) {
    .p-top-section-04__news-link {
        transition: opacity var(--hover-duration);
    }
    .p-top-section-04__news-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__news-link {
        align-items: center;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__news-link {
        -moz-column-gap: calc(40 / var(--design-width) * 100vw);
             column-gap: calc(40 / var(--design-width) * 100vw);
        padding: calc(12 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw);
        min-height: calc(72 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__news-link-wrap {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
@media screen and (max-width: 1365px) {
    .p-top-section-04__news-link-wrap {
        flex-direction: column;
        row-gap: 4px;
        flex-shrink: 0;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-04__news-link-wrap {
        row-gap: calc(4 / var(--design-width) * 100vw);
    }
}
.p-top-section-04__date {
    margin-right: 30px;
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.035em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-top-section-04__date {
        margin-top: calc(-5 / var(--design-width) * 100vw);
        margin-right: 0;
        font-size: calc(12 / var(--design-width) * 100vw);
        font-weight: 400;
        line-height: 1.4166666667;
    }
}
.p-top-section-04__news-label {
    margin-right: 31px;
}
@media screen and (max-width: 767px) {
    .p-top-section-04__news-label {
        margin-right: 0;
    }
}
.p-top-section-04__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 400;
    letter-spacing: 0.035em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-top-section-04__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        font-weight: 500;
        line-height: 1.7142857143;
    }
}

/* ---------------------------------------------
*   p-top-section-05
--------------------------------------------- */
.p-top-section-05 {
    position: relative;
    margin-top: -50px;
    padding-block: 150px 130px;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .p-top-section-05 {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        padding-block: calc(100 / var(--design-width) * 100vw) calc(46 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__container-ttl {
    margin-top: 50px;
    font-size: calc(100 / var(--root-fz) * 1rem);
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.45;
    color: var(--color-accent-1);
}
@media screen and (max-width: 767px) {
    .p-top-section-05__container-ttl {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(50 / var(--design-width) * 100vw);
        line-height: 1.44;
    }
}
.p-top-section-05__container {
    margin-top: 34px;
    display: flex;
    align-items: start;
    -moz-column-gap: 97px;
         column-gap: 97px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__container {
        flex-direction: column;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__container {
        margin-top: calc(20 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__container-left {
        display: contents;
    }
}
.p-top-section-05__txt {
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.9;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__txt {
        order: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__txt {
        font-size: calc(14 / var(--design-width) * 100vw);
        line-height: 1.7142857143;
    }
}
.p-top-section-05__list-ttl {
    display: block;
    margin-top: 54px;
    font-size: calc(20 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.45;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__list-ttl {
        order: 3;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__list-ttl {
        margin-top: calc(32 / var(--design-width) * 100vw);
        font-size: calc(15 / var(--design-width) * 100vw);
        line-height: 1.4;
    }
}
.p-top-section-05__list {
    margin-top: 19px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__list {
        order: 4;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__list {
        margin-top: calc(11 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__list-item {
    display: flex;
    -moz-column-gap: 25px;
         column-gap: 25px;
    padding-block: 14px 13px;
    border-bottom: 1px solid var(--color-base-1);
}
@media screen and (max-width: 767px) {
    .p-top-section-05__list-item {
        -moz-column-gap: calc(39 / var(--design-width) * 100vw);
             column-gap: calc(39 / var(--design-width) * 100vw);
        padding-block: calc(7 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__list-item:first-of-type {
    border-top: 1px solid var(--color-base-1);
}
.p-top-section-05__list-item-ttl {
    margin-top: 2px;
    font-size: calc(14 / var(--root-fz) * 1rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.4285714286;
    width: 43px;
}
@media screen and (max-width: 767px) {
    .p-top-section-05__list-item-ttl {
        margin-top: 0;
        font-size: calc(13 / var(--design-width) * 100vw);
        letter-spacing: 0.014em;
        line-height: 1.4615384615;
        width: calc(40 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__list-item-txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .p-top-section-05__list-item-txt {
        font-size: calc(13 / var(--design-width) * 100vw);
        letter-spacing: 0.014em;
        line-height: 1.4615384615;
    }
}
.p-top-section-05__sub-list-item {
    display: flex;
    -moz-column-gap: 25px;
         column-gap: 25px;
}
@media screen and (max-width: 767px) {
    .p-top-section-05__sub-list-item {
        -moz-column-gap: calc(39 / var(--design-width) * 100vw);
             column-gap: calc(39 / var(--design-width) * 100vw);
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__sub-list-item + .p-top-section-05__sub-list-item {
        margin-top: calc(6 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__link-01 {
    margin-top: 81px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__link-01 {
        order: 5;
        margin-inline: auto;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__link-01 {
        margin-top: calc(44 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__container-right {
    margin-top: 4px;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__container-right {
        order: 2;
        margin-top: 40px;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__container-right {
        margin-top: calc(18 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__img {
    border-radius: 20px;
    width: 531px;
    overflow: hidden;
}
@media screen and (max-width: 1365px) {
    .p-top-section-05__img {
        border-radius: calc(20 / var(--design-width) * 100vw);
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-top-section-05__img {
        border-radius: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__img:not(:first-of-type) {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-top-section-05__img:not(:first-of-type) {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.p-top-section-05__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   p-lower-page-xx
--------------------------------------------- */
/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: var(--color-white-1) !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

.js-menu {
    will-change: opacity;
    transform: translateZ(0);
}

.js-tel-disabled {
    pointer-events: none;
}

.js-scroll-threshold {
    position: absolute;
    top: 0;
    height: 100dvh;
}
@media screen and (max-width: 1365px) {
    .js-scroll-threshold {
        height: calc(100dvh - var(--fixed-header-height) * 1px);
    }
}
@media screen and (max-width: 767px) {
    .js-scroll-threshold {
        height: calc(100dvh - var(--fixed-header-height) / var(--design-width) * 100vw);
    }
}

.js-pagetop-threshold {
    position: absolute;
    top: 0;
    height: 100dvh;
}

.js-pagetop-stop {
    height: 1px;
}

.js-fadein {
    opacity: 0;
}
.js-fadein.is-active {
    opacity: 1;
    transition: opacity 1s;
}

.js-fadein-2 {
    opacity: 0;
}
.js-fadein-2.is-active {
    opacity: 1;
    transition: opacity 1s;
}

.js-fadein-3 {
    opacity: 0;
}
.js-fadein-3.is-active {
    opacity: 1;
    transition: opacity 1s;
}

.js-fadein-up {
    opacity: 0;
    transform: translateY(50px);
}
.js-fadein-up.is-active {
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

.js-fadein-left,
.js-fadein-left-2 {
    opacity: 0;
    transform: translateX(-50px);
}
.js-fadein-left.is-active,
.js-fadein-left-2.is-active {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

.js-wave span,
.js-wave-2 span {
    display: inline-block;
    opacity: 0;
    transition: opacity 0.4s;
}
.js-wave.is-active span,
.js-wave-2.is-active span {
    opacity: 1;
    animation: wave 1s;
}
.js-wave.is-active span:nth-of-type(1),
.js-wave-2.is-active span:nth-of-type(1) {
    animation-delay: 0s;
    transition-delay: 0s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(2),
.js-wave-2.is-active span:nth-of-type(2) {
    animation-delay: 0.04s;
    transition-delay: 0.04s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(3),
.js-wave-2.is-active span:nth-of-type(3) {
    animation-delay: 0.08s;
    transition-delay: 0.08s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(4),
.js-wave-2.is-active span:nth-of-type(4) {
    animation-delay: 0.12s;
    transition-delay: 0.12s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(5),
.js-wave-2.is-active span:nth-of-type(5) {
    animation-delay: 0.16s;
    transition-delay: 0.16s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(6),
.js-wave-2.is-active span:nth-of-type(6) {
    animation-delay: 0.2s;
    transition-delay: 0.2s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(7),
.js-wave-2.is-active span:nth-of-type(7) {
    animation-delay: 0.24s;
    transition-delay: 0.24s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(8),
.js-wave-2.is-active span:nth-of-type(8) {
    animation-delay: 0.28s;
    transition-delay: 0.28s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(9),
.js-wave-2.is-active span:nth-of-type(9) {
    animation-delay: 0.32s;
    transition-delay: 0.32s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(10),
.js-wave-2.is-active span:nth-of-type(10) {
    animation-delay: 0.36s;
    transition-delay: 0.36s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(11),
.js-wave-2.is-active span:nth-of-type(11) {
    animation-delay: 0.4s;
    transition-delay: 0.4s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(12),
.js-wave-2.is-active span:nth-of-type(12) {
    animation-delay: 0.44s;
    transition-delay: 0.44s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(13),
.js-wave-2.is-active span:nth-of-type(13) {
    animation-delay: 0.48s;
    transition-delay: 0.48s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(14),
.js-wave-2.is-active span:nth-of-type(14) {
    animation-delay: 0.52s;
    transition-delay: 0.52s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(15),
.js-wave-2.is-active span:nth-of-type(15) {
    animation-delay: 0.56s;
    transition-delay: 0.56s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(16),
.js-wave-2.is-active span:nth-of-type(16) {
    animation-delay: 0.6s;
    transition-delay: 0.6s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(17),
.js-wave-2.is-active span:nth-of-type(17) {
    animation-delay: 0.64s;
    transition-delay: 0.64s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(18),
.js-wave-2.is-active span:nth-of-type(18) {
    animation-delay: 0.68s;
    transition-delay: 0.68s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(19),
.js-wave-2.is-active span:nth-of-type(19) {
    animation-delay: 0.72s;
    transition-delay: 0.72s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(20),
.js-wave-2.is-active span:nth-of-type(20) {
    animation-delay: 0.76s;
    transition-delay: 0.76s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(21),
.js-wave-2.is-active span:nth-of-type(21) {
    animation-delay: 0.8s;
    transition-delay: 0.8s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(22),
.js-wave-2.is-active span:nth-of-type(22) {
    animation-delay: 0.84s;
    transition-delay: 0.84s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(23),
.js-wave-2.is-active span:nth-of-type(23) {
    animation-delay: 0.88s;
    transition-delay: 0.88s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(24),
.js-wave-2.is-active span:nth-of-type(24) {
    animation-delay: 0.92s;
    transition-delay: 0.92s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(25),
.js-wave-2.is-active span:nth-of-type(25) {
    animation-delay: 0.96s;
    transition-delay: 0.96s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(26),
.js-wave-2.is-active span:nth-of-type(26) {
    animation-delay: 1s;
    transition-delay: 1s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(27),
.js-wave-2.is-active span:nth-of-type(27) {
    animation-delay: 1.04s;
    transition-delay: 1.04s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(28),
.js-wave-2.is-active span:nth-of-type(28) {
    animation-delay: 1.08s;
    transition-delay: 1.08s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(29),
.js-wave-2.is-active span:nth-of-type(29) {
    animation-delay: 1.12s;
    transition-delay: 1.12s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(30),
.js-wave-2.is-active span:nth-of-type(30) {
    animation-delay: 1.16s;
    transition-delay: 1.16s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(31),
.js-wave-2.is-active span:nth-of-type(31) {
    animation-delay: 1.2s;
    transition-delay: 1.2s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(32),
.js-wave-2.is-active span:nth-of-type(32) {
    animation-delay: 1.24s;
    transition-delay: 1.24s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(33),
.js-wave-2.is-active span:nth-of-type(33) {
    animation-delay: 1.28s;
    transition-delay: 1.28s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(34),
.js-wave-2.is-active span:nth-of-type(34) {
    animation-delay: 1.32s;
    transition-delay: 1.32s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(35),
.js-wave-2.is-active span:nth-of-type(35) {
    animation-delay: 1.36s;
    transition-delay: 1.36s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(36),
.js-wave-2.is-active span:nth-of-type(36) {
    animation-delay: 1.4s;
    transition-delay: 1.4s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(37),
.js-wave-2.is-active span:nth-of-type(37) {
    animation-delay: 1.44s;
    transition-delay: 1.44s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(38),
.js-wave-2.is-active span:nth-of-type(38) {
    animation-delay: 1.48s;
    transition-delay: 1.48s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(39),
.js-wave-2.is-active span:nth-of-type(39) {
    animation-delay: 1.52s;
    transition-delay: 1.52s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(40),
.js-wave-2.is-active span:nth-of-type(40) {
    animation-delay: 1.56s;
    transition-delay: 1.56s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(41),
.js-wave-2.is-active span:nth-of-type(41) {
    animation-delay: 1.6s;
    transition-delay: 1.6s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(42),
.js-wave-2.is-active span:nth-of-type(42) {
    animation-delay: 1.64s;
    transition-delay: 1.64s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(43),
.js-wave-2.is-active span:nth-of-type(43) {
    animation-delay: 1.68s;
    transition-delay: 1.68s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(44),
.js-wave-2.is-active span:nth-of-type(44) {
    animation-delay: 1.72s;
    transition-delay: 1.72s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(45),
.js-wave-2.is-active span:nth-of-type(45) {
    animation-delay: 1.76s;
    transition-delay: 1.76s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(46),
.js-wave-2.is-active span:nth-of-type(46) {
    animation-delay: 1.8s;
    transition-delay: 1.8s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(47),
.js-wave-2.is-active span:nth-of-type(47) {
    animation-delay: 1.84s;
    transition-delay: 1.84s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(48),
.js-wave-2.is-active span:nth-of-type(48) {
    animation-delay: 1.88s;
    transition-delay: 1.88s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(49),
.js-wave-2.is-active span:nth-of-type(49) {
    animation-delay: 1.92s;
    transition-delay: 1.92s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}
.js-wave.is-active span:nth-of-type(50),
.js-wave-2.is-active span:nth-of-type(50) {
    animation-delay: 1.96s;
    transition-delay: 1.96s;
}
.js-wave.is-active .c-ttl-lower-01__dot,
.js-wave-2.is-active .c-ttl-lower-01__dot {
    opacity: 1;
    animation: wave2 1s;
}

@keyframes wave {
    0% {
        transform: translate3d(0, 100%, 0);
    }
    50% {
        transform: translate3d(0, -10%, 0);
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}
@keyframes wave2 {
    0% {
        transform: translate3d(0, 100%, 0);
    }
    50% {
        transform: translate3d(0, -10%, 0);
    }
    100% {
        transform: translate3d(0, -50%, 0);
    }
}
.js-acc-target,
.js-acc-target-sp {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target,
.js-acc-scope.is-close .js-acc-target-sp {
    animation: closeAccAnim 0.5s forwards;
}

.js-acc-scope.is-open .js-acc-target,
.js-acc-scope.is-open .js-acc-target-sp {
    animation: openAccAnim 0.5s forwards;
}

.js-acc-scope-sp.is-close .js-acc-target,
.js-acc-scope-sp.is-close .js-acc-target-sp {
    animation: closeAccAnim 0.5s forwards;
}

.js-acc-scope-sp.is-open .js-acc-target,
.js-acc-scope-sp.is-open .js-acc-target-sp {
    animation: openAccAnim 0.5s forwards;
}

@keyframes openAccAnim {
    0% {
        height: 0px;
        visibility: hidden;
    }
    99% {
        height: var(--acc-body-height);
        visibility: visible;
    }
    100% {
        height: auto;
    }
}
@keyframes closeAccAnim {
    0% {
        height: var(--acc-body-height);
    }
    99% {
        visibility: visible;
    }
    100% {
        height: 0px;
        visibility: hidden;
    }
}

@media print and (min-width: 768px), screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 767px), screen and (max-width: 767px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--10 {
        margin-top: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--15 {
        margin-top: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--20 {
        margin-top: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--25 {
        margin-top: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--30 {
        margin-top: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--35 {
        margin-top: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--40 {
        margin-top: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--45 {
        margin-top: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--50 {
        margin-top: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--55 {
        margin-top: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--60 {
        margin-top: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--65 {
        margin-top: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--70 {
        margin-top: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--75 {
        margin-top: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--80 {
        margin-top: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--85 {
        margin-top: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--90 {
        margin-top: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--95 {
        margin-top: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--100 {
        margin-top: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--105 {
        margin-top: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--110 {
        margin-top: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--115 {
        margin-top: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--120 {
        margin-top: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--125 {
        margin-top: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--130 {
        margin-top: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--135 {
        margin-top: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--140 {
        margin-top: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--145 {
        margin-top: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--150 {
        margin-top: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--155 {
        margin-top: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--160 {
        margin-top: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--165 {
        margin-top: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--170 {
        margin-top: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--175 {
        margin-top: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--180 {
        margin-top: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--185 {
        margin-top: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--190 {
        margin-top: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--195 {
        margin-top: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--200 {
        margin-top: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--205 {
        margin-top: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--210 {
        margin-top: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--215 {
        margin-top: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--220 {
        margin-top: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--225 {
        margin-top: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--230 {
        margin-top: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--235 {
        margin-top: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--240 {
        margin-top: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--245 {
        margin-top: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--250 {
        margin-top: calc(250 / var(--design-width) * 100vw) !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--10 {
        margin-bottom: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--15 {
        margin-bottom: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--20 {
        margin-bottom: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--25 {
        margin-bottom: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--30 {
        margin-bottom: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--35 {
        margin-bottom: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--40 {
        margin-bottom: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--45 {
        margin-bottom: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--50 {
        margin-bottom: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--55 {
        margin-bottom: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--60 {
        margin-bottom: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--65 {
        margin-bottom: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--70 {
        margin-bottom: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--75 {
        margin-bottom: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--80 {
        margin-bottom: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--85 {
        margin-bottom: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--90 {
        margin-bottom: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--95 {
        margin-bottom: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--100 {
        margin-bottom: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--105 {
        margin-bottom: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--110 {
        margin-bottom: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--115 {
        margin-bottom: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--120 {
        margin-bottom: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--125 {
        margin-bottom: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--130 {
        margin-bottom: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--135 {
        margin-bottom: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--140 {
        margin-bottom: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--145 {
        margin-bottom: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--150 {
        margin-bottom: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--155 {
        margin-bottom: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--160 {
        margin-bottom: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--165 {
        margin-bottom: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--170 {
        margin-bottom: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--175 {
        margin-bottom: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--180 {
        margin-bottom: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--185 {
        margin-bottom: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--190 {
        margin-bottom: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--195 {
        margin-bottom: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--200 {
        margin-bottom: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--205 {
        margin-bottom: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--210 {
        margin-bottom: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--215 {
        margin-bottom: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--220 {
        margin-bottom: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--225 {
        margin-bottom: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--230 {
        margin-bottom: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--235 {
        margin-bottom: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--240 {
        margin-bottom: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--245 {
        margin-bottom: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--250 {
        margin-bottom: calc(250 / var(--design-width) * 100vw) !important;
    }
}