@charset "UTF-8";

.p-top__img {
    max-width: 460px;
    margin: auto;
}

.p-servicelogo {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #fff;
    border-radius: 16px;
    padding-top: 8px;
    margin: 40px auto;
}

.c-block:has(.p-servicelogo) {
    padding: 24px 32px 8px;
}

.p-servicelogo li {
    width: calc((100% - 24px) / 4);
    margin-bottom: 8px;
}

.p-servicelogo+.c-btn-area {
    padding: 0;
}

.p-servicelogo+.c-btn-area .c-btn {
    margin: 0 0 120px;
}

.p-info {
    text-align: left;

}

@container wrap-host (max-width: 767px) {
    .c-block:has(.p-servicelogo) {
        padding: 8px 0 0 0;
    }

    .p-servicelogo {
        margin: 40px auto 40px;
    }

    .p-servicelogo li {
        width: calc((100% - 8px) / 2);
    }

    .p-servicelogo+.c-btn-area .c-btn {
        margin: 0;
    }

    .p-info.c-block {
        margin-bottom: 76px;
    }
}



.p-slider {
    overflow: hidden;
    width: 100%;
    margin: auto;
    position: relative;
}

.p-slider__container {
    overflow: hidden;
    margin-bottom: 16px;
}

.p-slider__container ul {
    display: flex;
    list-style: none;
    height: 100%;
    transition-duration: .5s;
}

.p-slider__container li {
    width: 100%;
    height: 100%;
    min-width: 100%;
}

.p-slider__container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.p-slider .p-slider__btn {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 95%;
    max-width: 764px;
    margin: 0 auto 16px;
}

.p-slider__num {
    display: flex;
    width: fit-content;
}

.p-slider__num li {
    width: 24px;
    height: 24px;
    position: relative;
    border-radius: 50%;

}

.p-slider__num li::before {
    content: '';
    position: absolute;
    top: 8px;
    left: 8px;
    width: 8px;
    height: 8px;
    border: 1px solid #706B61;
    border-radius: 50%;

}

.p-slider__num li.p-slider__num--active::before {
    background-color: #706B61;
}

.p-slider button {
    border: none;
    width: 24px;
    height: 24px;
    cursor: pointer;
    position: relative;
    background-color: transparent;
}

.p-slider button#slider_prev::before,
.p-slider button#slider_next::before {
    content: '';
    position: absolute;
    top: 8px;
    left: 8px;
    width: 8px;
    height: 8px;
    border: 2px solid #706B61;
    border-bottom: none;
    border-right: none;
}

.p-slider button#slider_prev::before {
    transform: rotate(-45deg);
}

.p-slider button#slider_next::before {
    transform: rotate(135deg);
}

@container wrap-host (max-width: 767px) {
    .p-slider__container {
        
        margin-bottom: 8px;
    }

    .p-slider .p-slider__btn {
        width: 92%;
        margin-bottom: 8px;
    }
}

.c-section:has(.p-top__notice) {
    padding: 0 0 80px;
}

@container wrap-host (max-width: 767px) {
    .c-section:has(.p-top__notice) {
        padding: 0 0 40px;
    }

    .p-notice.c-block.c-notice {
        margin-bottom: 24px;
    }

    .c-notice+.c-area {
        margin-bottom: 40px;
    }
}

.p-info .c-btn-area {
    padding: 27px 0 0;

}

.p-top__lead {
    font-size: 2.4rem;
    line-height: 1.6;
    font-weight: bold;
    margin: 40px auto;
}

.p-text {
    margin-bottom: 35px;
}

.p-top__corporate {
    max-width: 700px;
    margin: auto;
}

.p-top__corporate .p-top__corporate--one,
.p-top__corporate .p-top__corporate--two {
    display: flex;
    
    color: #3D3D3D;
    text-decoration: none;
}
.p-top__corporate .p-top__corporate--one {
background-color: #F7F5F3;
    border-radius: 16px;
}
.p-top__corporate .p-top__corporate--two > div {
background-color: #F7F5F3;
    border-radius: 16px;
}


.p-top__corporate-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.p-top__corporate--one .p-top__corporate-img img {
    border-radius: 16px 0 0 16px;
}

.p-top__corporate--two .p-top__corporate-img img {
    border-radius: 16px 16px 0 0;
}

.p-top__corporate--one {
    margin: 40px auto 32px;
}

.p-top__corporate a {
   color: #3D3D3D;
   text-decoration: none;

}

.p-top__corporate--one .p-top__corporate-img,
.p-top__corporate--one .p-top__corporate-txt {
    width: 50%;

}

.p-top__corporate--two {
    display: flex;
    justify-content: space-between;
    margin-bottom: 22px;
}

.p-top__corporate--two > div {
    width: calc(50% - 16px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.p-top__corporate-txt {
    padding: 24px;
    text-align: left;
    
}
.p-top__corporate--two .p-top__corporate-txt {
    width: 100%;
}

.p-top__corporate-title {
    display: inline-block;
    width: 100%;
    margin-bottom: 12px;
    font-size: 2rem;
    font-weight: 700;
    position: relative;
    padding: 0 24px 8px 0;
}

.p-top__corporate-title::before {
    content: '';
    position: absolute;
    top: calc(50% - 8px);
    right: 10px;
    width: 10px;
    height: 10px;
    border: 2px solid #CC0000;
    border-bottom: none;
    border-right: none;
    transform: rotate(135deg);
    background-color: transparent;
}

.p-top__corporate-title::after {
    position: absolute;
    content: "";
    bottom: -3px;
    left: 0;
    width: 24px;
    height: 2px;
    border-radius: 5px;
    background: #c00;
    transform: translateY(-50%);
}

.p-top__corporate+.c-btn-area {
    padding-bottom: 0;
}

.p-top__corporate+.c-btn-area a {
    margin-bottom: 0;
}

@container wrap-host (max-width: 767px) {
    .c-section.c-section--white01+.c-section.p-service .c-section-inner>.c-pagetitle_h2 {
        margin: 80px 0 40px;
    }

    .p-info .c-btn-area {
        padding: 22px 0 0;
    }

    .c-section.c-section--white02 .c-area:has(.p-top__corporate) {
        margin-bottom: 0;
    }

    .p-top__corporate--one {
        margin-bottom: 24px;
    }

    .p-top__corporate--one {
        flex-direction: column;
        flex-wrap: wrap;
        margin-bottom: 24px;

    }

    .p-top__corporate--one .p-top__corporate-img img {
        border-radius: 16px 16px 0 0;
    }
    .p-top__corporate--one .p-top__corporate-img,
    .p-top__corporate--one .p-top__corporate-txt {
        width: 100%;

    }

    .p-top__corporate--two {
        flex-direction: column;
        flex-wrap: wrap;
        margin-bottom: 30px;
    }

    .p-top__corporate--two > div {
        width: 100%;
        margin-bottom: 24px;

    }

    .p-top__corporate--two > div:last-of-type {
        margin-bottom: 0;
    }

    .p-top__corporate-txt {
        padding: 24px 16px;
    }
    .p-top__corporate-txt .c-text{
        margin-bottom: 0;
    }
}

.p-top__bnrarea {
    margin-top: 24px;
    display: flex;
        justify-content: center;
}
.p-top__bnrarea a {
    display: flex;
    width: 180px;
    height: auto;
    border-radius: 8px;
    margin: 0 8px;
}
.p-top__bnrarea a img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
}
.c-area:has(.p-top__bnrarea) {
        margin-bottom: 80px;
    }
@container wrap-host (max-width: 767px) {
    .p-top__bnrarea {
        margin-top: 16px;
    }
    .p-top__bnrarea a {
        margin: 0 8px 0 0;
    }
    .p-top__bnrarea a:nth-of-type(2n) {
         margin: 0 0 0 8px;
    }
    .c-area:has(.p-top__bnrarea) {
        margin-bottom: 40px;
    }

}
.c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
}
@container wrap-host (max-width: 767px) {
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea{
        flex-wrap: wrap;
        max-width: 500px;
        width: 100%;
        margin: 40px auto;
    }
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea a {
        margin-right: 8px;
        margin-left:0;
        width: calc(50% - 12px);
        max-width: 180px;
    }
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea a:nth-of-type(2n) {
        margin-right: 0;
        margin-left: 8px;
    }
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea a:nth-of-type(n+3) {
        margin-top: 16px;
    }
}
@container wrap-host (max-width: 375px) {
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea {
        flex-wrap: wrap;
        margin-bottom: 24px !important;
    }
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea a {
        width: calc(50% - 12px);
        margin-right: 8px;
    }
    .c-section.p-section__cpbnr .c-section-inner .p-top__bnrarea a:nth-of-type(2n) {
        margin-left: 8px;
    }
}
.p-target {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1s, transform 1s;
}

.p-target.p-visible {
    opacity: 1;
    transform: translateY(0);
}

