/* ========================================
   Common
======================================== */
.nk-static-page {
    overflow-x: hidden;
}

.nk-section-head {
    text-align: center;
}

.nk-section-head__img {
    display: block;
    width: 210px;
    margin: 0 auto;
}

.nk-section-head__subtitle {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 170%;
    margin: 10px 0 0;
}

/* ========================================
   Flow
======================================== */
.nk-after-service-flow {
    margin: 125px 0 0;
    background-color: #EDEDED;
}

.nk-flow__inner {
    width: 1200px;
    max-width: 100%;
    padding: 90px 20px 80px;
    margin: 0 auto;
}

.nk-flow__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 85px;
    margin: 20px 0 0;
}

.nk-flow__item {
    position: relative;
}

.nk-flow__item:not(:last-of-type)::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='47' height='26' viewBox='0 0 47 26' fill='none'%3E%3Cpath d='M29.9174 23.9385L44.2266 12.5562L29.9174 1.17383' stroke='black' stroke-width='3'/%3E%3Cline x1='42.2773' y1='13.0806' x2='0.00013746' y2='13.0806' stroke='black' stroke-width='3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 44px;
    height: 22px;
    position: absolute;
    top: 50%;
    transform: translateY(-100%);
    right: -70px;
}

.nk-flow__item img {
    border-radius: 15px;
}

.nk-flow__label {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 40px;
    margin: 8px 0 0;
    text-align: center;
}

/* ========================================
   AfterService
======================================== */
.nk-after-service-intro {
    margin: 80px 0 0;
    position: relative;
    z-index: 2;
}

.nk-after-service-intro__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 143px;
}

.nk-after-service-intro__text {
    width: 564px;
    flex-grow: 1;
    flex-shrink: 0;
}

.nk-after-service-intro__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 170%;
}

.nk-after-service-intro__desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
    margin: 38px 0 0;
}

.nk-after-service-intro__image {
    width: 51.121%;
    flex-shrink: 0;
}

.nk-after-service-intro__image img {
    border-radius: 20px;
}

@media (max-width: 1440px) {
    .nk-after-service-intro__image img {
        border-radius: 20px 0 0 20px;
    }
}

@media (max-width: 1439px) {
    .nk-after-service-intro__inner {
        gap: 45px;
    }

    .nk-after-service-intro__text {
        flex-shrink: 1;
    }

    .nk-after-service-intro__image img {
        border-radius: 20px;
    }
}

.nk-after-service-aftercare {
    margin: 80px 0 0;
    position: relative;
    isolation: isolate;
    z-index: 1;
}

.nk-after-service-aftercare::before,
.nk-after-service-aftercare::after {
    content: '';
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}

.nk-after-service-aftercare::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='746' height='819' viewBox='0 0 746 819' fill='none'%3E%3Cpath d='M507.5 0L439.5 373.5L0 819H645.503L994 404.807L507.5 0Z' fill='%23FF69B4' fill-opacity='0.1'/%3E%3C/svg%3E");
    width: 994px;
    height: 819px;
    top: -560px;
    right: -250px;
}

.nk-after-service-aftercare::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='568' height='871' viewBox='0 0 568 871' fill='none'%3E%3Cpath d='M263.569 0L-260.788 98.624L-335 642.664L166.606 871L568 360.728L263.569 0Z' fill='%23AEE8E0' fill-opacity='0.34'/%3E%3C/svg%3E");
    width: 903px;
    height: 871px;
    top: 70px;
    left: 0;
}

.nk-after-service-aftercare__inner {
    width: 1140px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-after-service-aftercare__list {
    display: flex;
    gap: 40px;
    margin: 30px 0 0;
}

.nk-after-service-aftercare__item {
    width: 530px;
    max-width: 100%;
    padding: 30px 30px 25px;
    border-radius: 10px;
    border: 2px solid #000;
    background-color: #FFF;
}

.nk-after-service-aftercare__item-title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.8px;
    border-bottom: 5px solid #00CCCC;
    display: inline-block;
}

.nk-after-service-aftercare__item-desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 30px;
    margin: 5px 0 0;
    letter-spacing: 0.7px;
}

.nk-after-service-warranty {
    margin: 80px 0 0;
    position: relative;
    isolation: isolate;
    z-index: 1;
}

.nk-after-service-warranty::before {
    content: '';
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='730' height='490' viewBox='0 0 730 490' fill='none'%3E%3Cpath d='M518 75.3068L639 0L994 489.5L273.5 344.5L0 75.3068H518Z' fill='%23EFEFEF'/%3E%3C/svg%3E");
    width: 994px;
    height: 489.5px;
    position: absolute;
    z-index: -1;
    top: 230px;
    right: -260px;
}

.nk-after-service-warranty__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 20px auto 0;
    display: flex;
    align-items: center;
    gap: 143px;
}

.nk-after-service-warranty__image {
    width: 51.121%;
    flex-shrink: 0;
    margin: 0 0 0 -140px;
}

.nk-after-service-warranty__text {
    width: 564px;
    max-width: 100%;
    flex-grow: 1;
    flex-shrink: 1;
}

.nk-after-service-warranty__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 170%;
}

.nk-after-service-warranty__desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
    margin: 26px 0 0;
}

@media (max-width: 1439px) {
    .nk-after-service-warranty__inner {
        gap: 45px;
    }

    .nk-after-service-warranty__image {
        margin: 0;
    }
}

/* ========================================
   ForBusiness
======================================== */
.nk-biz-intro {
    margin: 65px 0 0;
    position: relative;
    z-index: 1;
}

.nk-biz-intro::before {
    content: '';
    width: 994px;
    height: 819px;
    position: absolute;
    top: 220px;
    right: -300px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='746' height='819' viewBox='0 0 746 819' fill='none'%3E%3Cpath d='M507.5 0L439.5 373.5L0 819H645.503L994 404.807L507.5 0Z' fill='%23FF69B4' fill-opacity='0.1'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}

.nk-biz-intro__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}

.nk-biz-intro__text {
    width: 564px;
}

.nk-biz-intro__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 170%;
}

.nk-biz-intro__desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
    margin: 38px 0 0;
}

.nk-biz-intro__image {
    width: 541px;
    max-width: 100%;
    flex-shrink: 0;
}

.nk-biz-intro__image img {
    border-radius: 20px;
}

@media (max-width: 1439px) {
    .nk-biz-intro__inner {
        gap: 4.166vw;
    }

    .nk-biz-intro__image {
        width: 37.59vw;
        min-width: 360px;
    }
}

.nk-biz-specializes {
    margin: 120px 0 0;
    background-color: #EDEDED;
    position: relative;
    z-index: 2;
}

.nk-biz-specializes__inner {
    width: 1200px;
    max-width: 100%;
    padding: 80px 20px 120px;
    margin: 0 auto;
}

.nk-biz-specializes__list {
    display: flex;
    gap: 40px;
    margin: 35px 0 0;
}

.nk-biz-specializes__item img {
    border-radius: 50%;
    display: block;
}

.nk-biz-specializes__label {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    margin: 20px 0 0;
    text-align: center;
}

@media (max-width: 1439px) {
    .nk-biz-specializes__list {
        gap: 2.78vw;
    }
}

.nk-biz-service {
    margin: 90px 0 0;
    position: relative;
    z-index: 1;
}

.nk-biz-service::before,
.nk-biz-service::after {
    content: '';
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}

.nk-biz-service::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='568' height='871' viewBox='0 0 568 871' fill='none'%3E%3Cpath d='M263.569 0L-260.788 98.624L-335 642.664L166.606 871L568 360.728L263.569 0Z' fill='%23AEE8E0' fill-opacity='0.34'/%3E%3C/svg%3E");
    width: 903px;
    height: 871px;
    top: -450px;
    left: 0;
}

.nk-biz-service::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='730' height='490' viewBox='0 0 730 490' fill='none'%3E%3Cpath d='M518 75.3068L639 0L994 489.5L273.5 344.5L0 75.3068H518Z' fill='%23EFEFEF'/%3E%3C/svg%3E");
    width: 994px;
    height: 489.5px;
    top: 225px;
    right: -265px;
}

.nk-biz-service__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-biz-service__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    gap: 65px 50px;
    margin: 40px 0 0;
}

.nk-biz-service__item-title {
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 170%;
    margin: 20px 0 0;
}

.nk-biz-service__item-desc {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 200%;
    margin: 15px 0 0;
}

@media (max-width: 1439px) {
    .nk-biz-service__list {
        gap: 4.513vw 3.472vw;
    }
}

.nk-biz-recommended {
    margin: 100px 0 0;
    background-color: #EDEDED;
}

.nk-biz-recommended__inner {
    width: 1200px;
    max-width: 100%;
    padding: 90px 20px 110px;
    margin: 0 auto;
}

.nk-biz-recommended__list {
    display: flex;
    gap: 40px;
    margin: 40px 0 0;
}

.nk-biz-recommended__item img {
    border-radius: 20px;
}

.nk-biz-recommended__label {
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    margin: 20px 0 0;
}

@media (max-width: 1439px) {
    .nk-biz-recommended__list {
        gap: 2.78vw;
    }
}

.nk-biz-application__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-biz-application__lead {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 200%;
    margin: 32px 0 0;
}

.nk-biz-application__list {
    display: flex;
    gap: 80px;
    margin: 30px auto 0;
}

.nk-biz-application__item {
    width: 216px;
    max-width: 100%;
    padding: 45px 12px 40px 35px;
    background-color: rgba(255, 238, 6, 0.16);
    position: relative;
}

.nk-biz-application__item:last-of-type {
    width: 272px;
    max-width: 100%;
    padding: 45px 35px 40px;
}

.nk-biz-application__item:not(:last-of-type) {
    position: relative;
}

.nk-biz-application__item:not(:last-of-type)::before {
    content: '';
    width: 55px;
    height: 100%;
    background-color: rgba(255, 238, 6, 0.16);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    top: 0;
    right: -55px;
}

.nk-biz-application__item img {
    display: block;
    width: 38px;
    position: absolute;
    top: -10px;
    left: 18px;
}

.nk-biz-application__item-title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 200%;
    text-align: center;
    margin: 0 3px 0 0;
}

.nk-biz-application__item-desc {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 200%;
    margin: 12px 0 0;
}

.nk-biz-application__link {
    display: block;
    border-radius: 10px;
    background-color: #FFEE06;
    padding: 12px 0;
    width: 423px;
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 170%;
    margin: 58px auto 0;
    transition: opacity 0.3s ease;
}

@media (hover: hover) {
    .nk-biz-application__link:hover {
        opacity: 0.5;
    }
}

@media (max-width: 1439px) {
    .nk-biz-application__list {
        gap: 5.555vw;
    }

    .nk-biz-application__item:not(:last-of-type)::before {
        width: 3.82vw;
        right: -3.82vw;
    }
}

@media (max-width: 1439px) {
    .nk-biz-application__list {
        gap: 5.555vw;
    }

    .nk-biz-application__item:not(:last-of-type)::before {
        width: 3.82vw;
        right: -3.82vw;
    }
}

@media (max-width: 1039px) {
    .nk-biz-application__list {
        width: 600px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ========================================
   BulkOrder
======================================== */
.nk-bulk-intro {
    margin: 65px 0 0;
}

.nk-bulk-intro__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}

.nk-bulk-intro__text {
    width: 564px;
}

.nk-bulk-intro__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 170%;
}

.nk-bulk-intro__desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
    margin: 38px 0 0;
}

.nk-bulk-intro__image {
    width: 541px;
    max-width: 100%;
    flex-shrink: 0;
}

.nk-bulk-intro__image img {
    border-radius: 20px;
}

@media (max-width: 1439px) {
    .nk-bulk-intro__inner {
        gap: 4.166vw;
    }

    .nk-bulk-intro__image {
        width: 37.59vw;
        min-width: 360px;
    }
}

.nk-bulk-recommended {
    margin: 75px 0 0;
    background-color: #EDEDED;
    position: relative;
    z-index: 2;
}

.nk-bulk-recommended__inner {
    width: 1200px;
    max-width: 100%;
    padding: 75px 20px 80px;
    margin: 0 auto;
}

.nk-bulk-recommended__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 50px;
    margin: 40px 0 0;
}

.nk-bulk-recommended__item {
    border-radius: 10px;
}

.nk-bulk-recommended__label {
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 170%;
    margin: 20px 0 0;
}

.nk-bulk-why {
    margin: 100px 0 0;
    position: relative;
    isolation: isolate;
    z-index: 1;
}

.nk-bulk-why::before,
.nk-bulk-why::after {
    content: '';
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}

.nk-bulk-why::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='746' height='819' viewBox='0 0 746 819' fill='none'%3E%3Cpath d='M507.5 0L439.5 373.5L0 819H645.503L994 404.807L507.5 0Z' fill='%23FF69B4' fill-opacity='0.1'/%3E%3C/svg%3E");
    width: 994px;
    height: 819px;
    top: -380px;
    right: -245px;
}

.nk-bulk-why::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='568' height='871' viewBox='0 0 568 871' fill='none'%3E%3Cpath d='M263.569 0L-260.788 98.624L-335 642.664L166.606 871L568 360.728L263.569 0Z' fill='%23AEE8E0' fill-opacity='0.34'/%3E%3C/svg%3E");
    width: 903px;
    height: 871px;
    bottom: -155px;
    left: -35px;
}

.nk-bulk-why__inner {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-bulk-why__item {
    display: flex;
    align-items: center;
    gap: 55px;
    margin: 65px 0 0;
}

.nk-bulk-why__item:nth-of-type(2) {
    flex-direction: row-reverse;
}

.nk-bulk-why__image {
    width: 530px;
    max-width: 100%;
    flex-shrink: 0;
}

.nk-bulk-why__text {
    width: 530px;
}

.nk-bulk-why__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 170%;
}

.nk-bulk-why__desc {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
    margin: 30px 0 0;
}

@media (max-width: 1439px) {
    .nk-bulk-why__item {
        gap: 3.819vw;
    }

    .nk-bulk-why__image {
        width: 36.81vw;
        min-width: 340px;
    }
}

/* ========================================
   Contact
======================================== */
.ec-contactRole,
.ec-contactConfirmRole,
.ec-contactCompleteRole {
    width: 1200px;
    max-width: 100%;
    margin: 60px auto 0;
}

.ec-off1Grid .ec-off1Grid__cell {
    width: 100%;
    margin-left: 0;
}

.ec-contactRole p {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
}

.ec-borderedDefs {
    margin: 15px 0 0;
}

.ec-zipInputHelp span {
    color: #0CC;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
}

.ec-off4Grid {
    margin: 40px 0 0;
}

.ec-contactCompleteRole .ec-off4Grid {
    margin: 0;
}

.ec-off4Grid .ec-off4Grid__cell {
    width: 430px;
    margin: 0 auto;
}

.ec-blockBtn--action {
    height: auto;
    border: none;
    padding: 12px 0;
    border-radius: 10px;
    background-color: #FFEE06;
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 170%;
    transition: opacity 0.3s ease;
}

.ec-blockBtn--cancel {
    height: auto;
    border: none;
    padding: 12px 0;
    border-radius: 10px;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 170%;
}

@media (hover: hover) {
    .ec-blockBtn--action:hover {
        background-color: #FFEE06;
        color: #000;
        opacity: 0.5;
    }
}

.ec-blockBtn--action:focus,
.ec-blockBtn--action:active:focus {
    background-color: #FFEE06;
    color: #000;
    box-shadow: none;
    border: none;
    outline: none;
}

.ec-reportHeading {
    border: none;
}

.ec-borderedDefs dd {
    line-height: 170%;
}

/* ========================================
   MyPage
======================================== */
.ec-mypageRole {
    width: 1200px;
    max-width: 100%;
    padding: 0 20px;
}

.ec-mypageRole:first-of-type {
    margin: 200px auto 0;
}

.ec-mypageRole:nth-of-type(2) {
    margin: 0 auto;
}

.nk-mypage-header__title {
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 38px;
    font-weight: 700;
    line-height: normal;
    text-align: center;
}

.ec-mypageRole .ec-navlistRole {
    margin: 80px auto 0;
}

.ec-mypageRole .ec-navlistRole .ec-navlistRole__navlist {
    margin: 0;
}

.ec-mypageRole .ec-navlistRole .active a {
    color: #5AC2D8;
}

.ec-mypageRole .nk-mypage-welcome {
    margin: 56px 0 0;
    padding: 0;
    border: none;
}

.ec-mypageRole .nk-mypage-welcome__name {
    color: #000;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}

.ec-mypageRole .nk-mypage-welcome__point-wrap {
    margin: 33px 0 0;
    padding: 30px 0;
    border-top: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}

.ec-mypageRole .nk-mypage-welcome__point,
.ec-mypageRole .nk-mypage-welcome__point-note {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}

.ec-mypageRole .nk-mypage-welcome__point span,
.ec-mypageRole .nk-mypage-welcome__point-note span {
    color: #DE4848;
}

.ec-mypageRole .ec-historyRole .ec-historyRole__detail {
    border: none;
}

.ec-mypageRole .ec-para-normal,
.ec-mypageRole .ec-favoriteRole__header {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    margin: 15px 0 0;
    padding: 0 0 15px;
    border-bottom: 1px solid #D9D9D9;
}

.ec-mypageRole .ec-historyRole .ec-historyRole__contents {
    border-top: none;
    border-bottom: 1px solid #D9D9D9;
}

.ec-mypageRole .ec-favoriteRole__detail {
    margin: 15px 0 0;
    padding: 0 0 15px;
    border-bottom: 1px solid #D9D9D9;
}

.ec-mypageRole  .ec-favoriteRole .ec-favoriteRole__item {
    margin-bottom: 0;
}

.ec-mypageRole .ec-borderedDefs {
    margin: 56px 0 0;
}

.ec-registerCompleteRole {
    margin: 80px auto 0;
}

.ec-addressRole .ec-addressRole__actions {
    margin-top: 20px;
}

.ec-withdrawRole,
.ec-mypageRole .ec-withdrawConfirmRole {
    margin: 55px auto 0;
}

.ec-mypageRole .ec-withdrawConfirmRole .ec-off3Grid .ec-off3Grid__cell {
    width: 100%;
    margin-left: 0;
    text-align: center;
}

.ec-orderRole__detail {
    margin: 30px 0 0;
}

.ec-orderRole__detail .ec-pageHeader h2 {
    font-size: 18px;
    margin: 16px 0;
    font-weight: bold;
}

.ec-orderRole__detail .ec-blockBtn--cancel {
    max-width: 430px;
    margin: 0 auto;
}

.nk-login {
    margin: 200px 0 0;
}

.ec-login {
    margin: 80px 16px 0;
}

/* ========================================
   Faq
======================================== */
.nk-faq-intro {
    margin: 124px 0 0;
}

.nk-faq-intro__inner {
    width: 1240px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-faq-intro__desc {
    color: #000;
    text-align: center;
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 200%;
}

.nk-faq-search {
    margin: 45px 0 0;
}

.nk-faq-search__inner {
    width: 985px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-faq-search__form {
    display: flex;
    align-items: center;
}

.nk-faq-search__input {
    width: 790px;
    max-width: 100%;
    border: 1px solid #000;
    color: #000;
    font-family: "Noto Sans JP Regular", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
    padding: 10px 15px;
    margin: 0 18px 0 0;
    display: block;
}

.nk-faq-search__input::placeholder {
    color: #C3C3C3;
}

.nk-faq-search__btn {
    width: 137px;
    padding: 10px 0;
    color: #000;
    font-family: "Noto Sans JP Regular", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
    border-radius: 10px;
    background-color: #EDEDED;
    border: none;
    display: block;
}

.nk-faq-category {
    margin: 50px 0 0;
}

.nk-faq-category__inner {
    width: 1240px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-faq-category__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(188px, 1fr));
    gap: 20px 15px;
}

.nk-faq-category__link {
    color: #000;
    font-family: "Noto Sans JP Regular", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
    border-bottom: 1px solid #000;
    padding: 0 0 6px;
    position: relative;
    display: block;
}

.nk-faq-category__item:last-of-type .nk-faq-category__link {
    line-height: 100%;
}

.nk-faq-category__link::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none'%3E%3Ccircle cx='11' cy='11' r='10.5' stroke='black'/%3E%3Cpath d='M7 9L11.5 13.5L16 9' stroke='black'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-65%);
}

.nk-faq-content {
    margin: 30px 0 0;
}

.nk-faq-content__inner {
    width: 1240px;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.nk-faq-section:not(:first-of-type) {
    margin: 80px 0 0;
}

.nk-faq-section__title {
    color: #000;
    font-family: "Noto Sans", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 200%;
}

.nk-faq-list {
    margin: 20px 0 0;
}

.nk-faq-item:not(:first-of-type) {
    margin: 35px 0 0;
}

.nk-faq-item__question {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 12px 15px;
    background-color: #F7F7F7;
    border-bottom: 1px solid #D9D9D9;
    cursor: pointer;
    position: relative;
}

.nk-faq-item__question::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='10' viewBox='0 0 18 10' fill='none'%3E%3Cpath d='M0.351562 9.20715L8.85156 0.707153L17.3516 9.20715' stroke='black'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 17px;
    height: 8.5px;
    position: absolute;
    top: 50%;
    right: 13.5px;
    transform: translateY(-50%) rotate(180deg);
}

.nk-faq-item__question.is-open::after {
    transform: translateY(-50%) rotate(0deg);
}

.nk-faq-item__q {
    color: #000;
    text-align: center;
    font-family: Helvetica;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 45px;
    width: 45px;
    height: 45px;
    background-color: #FFEE06;
    border-radius: 50%;
    display: block;
}

.nk-faq-item__question-text {
    max-width: 600px;
    color: #000;
    font-family: "Noto Sans JP Medium", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: normal;
}

.nk-faq-item__answer {
    margin: 20px 0 0;
    transition: max-height 0.3s ease;
    overflow: hidden;
}

.nk-faq-item__answer-text {
    color: #000;
    font-family: "Noto Sans JP Regular", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
}

/* ========================================
   SP
======================================== */
@media (max-width: 768px) {
    /* Common */
    .nk-section-head__img {
        display: block;
        width: 160px;
        margin: 0 auto;
    }

    .nk-section-head__subtitle {
        font-size: 18px;
        margin: 6px 0 0;
    }

    /* AfterService */
    .nk-after-service-intro {
        margin: 57px 0 0;
    }

    .nk-after-service-intro__inner {
        width: 100%;
        padding: 0;
        display: block;
    }

    .nk-after-service-intro__text {
        width: 100%;
        padding: 0 20px;
        flex-grow: 0;
    }

    .nk-after-service-intro__title {
        font-size: 18px;
    }

    .nk-after-service-intro__desc {
        font-size: 14px;
        line-height: 170%;
        margin: 25px 0 0;
    }

    .nk-after-service-intro__image {
        width: 100%;
        height: 449px;
        flex-shrink: 1;
        margin: 32px 0 0;
        padding: 0 0 0 20px;
        overflow: hidden;
    }

    .nk-after-service-intro__image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px 0 0 20px;
    }

    .nk-after-service-aftercare::before {
        width: 472px;
        height: 388px;
        top: -115px;
        right: -210px;
    }

    .nk-after-service-aftercare::after {
        width: 353px;
        height: 341px;
        top: 530px;
    }

    .nk-after-service-aftercare__inner {
        width: 100%;
    }

    .nk-after-service-aftercare__list {
        display: block;
        margin: 0;
    }

    .nk-after-service-aftercare__item {
        width: 100%;
        padding: 25px 30px;
        margin: 25px 0 0;
    }

    .nk-after-service-aftercare__item-desc {
        line-height: 170%;
        margin: 16px 0 0;
    }

    .nk-after-service-warranty::before {
        width: 480px;
        height: 236px;
        z-index: -1;
        top: 535px;
        right: -175px;
    }

    .nk-after-service-warranty__inner {
        width: 100%;
        padding: 0;
        margin: 25px auto 0;
        display: block;
    }

    .nk-after-service-warranty__image {
        width: 100%;
        height: 478px;
        flex-shrink: 1;
        overflow: hidden;
    }

    .nk-after-service-warranty__image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .nk-after-service-warranty__text {
        width: 100%;
        flex-grow: 0;
        padding: 0 20px;
    }

    .nk-after-service-warranty__title {
        font-size: 16px;
        margin: 30px 0 0;
    }

    .nk-after-service-warranty__desc {
        font-size: 14px;
        line-height: 170%;
        margin: 16px 0 0;
    }

    /* Flow */
    .nk-flow {
        margin: 85px 0 0;
    }

    .nk-flow__inner {
        width: 100%;
        padding: 45px 20px;
    }

    .nk-flow__list {
        gap: 30px;
    }

    .nk-flow__item {
        min-width: 84px;
    }

    .nk-flow__item:not(:last-of-type)::after {
        display: none;
    }

    .nk-flow__label {
        font-size: 14px;
        white-space: nowrap;
    }

    /* ForBusiness */
    .nk-biz-intro {
        margin: 57px 0 0;
    }

    .nk-biz-intro::before {
        display: none;
    }

    .nk-biz-intro__inner {
        width: 100%;
        display: block;
    }

    .nk-biz-intro__text {
        width: 100%;
    }

    .nk-biz-intro__title {
        font-size: 18px;
    }

    .nk-biz-intro__desc {
        font-size: 14px;
        line-height: 170%;
        margin: 25px 0 0;
    }

    .nk-biz-intro__image {
        width: 100%;
        max-width: 360px;
        min-width: 0;
        flex-shrink: 0;
        margin: 33px auto 0;
    }

    .nk-biz-intro__image img {
        border-radius: 10px;
    }

    .nk-biz-specializes {
        margin: 80px 0 0;
    }

    .nk-biz-specializes__inner {
        width: 100%;
        padding: 60px 30px 55px;
    }

    .nk-biz-specializes__list {
        max-width: 480px;
        flex-wrap: wrap;
        gap: 20px 15px;
        margin: 28px auto 0;
    }

    .nk-biz-specializes__item {
        width: 150px;
        max-width: 100%;
    }

    .nk-biz-specializes__label {
        font-size: 14px;
        margin: 10px 0 0;
    }

    .nk-biz-service {
        margin: 80px 0 0;
    }

    .nk-biz-service::before,
    .nk-biz-service::after {
        display: none;
    }

    .nk-biz-service__inner {
        width: 100%;
    }

    .nk-biz-service__list {
        display: block;
        margin: 0;
    }

    .nk-biz-service__item {
        margin: 40px 0 0;
    }

    .nk-biz-service__item-head {
        display: flex;
        align-items: center;
        gap: 20px;
    }

    .nk-biz-service__item-head img {
        width: 169px;
        max-width: 100%;
    }

    .nk-biz-service__item-title {
        font-size: 16px;
        text-align: left;
        margin: 0;
    }

    .nk-biz-service__item-desc {
        line-height: 170%;
        margin: 20px 0 0;
    }

    .nk-biz-recommended {
        margin: 80px 0 0;
    }

    .nk-biz-recommended__inner {
        width: 100%;
        padding: 55px 20px;
    }

    .nk-biz-recommended__list {
        max-width: 515px;
        display: flex;
        flex-wrap: wrap;
        gap: 10px 20px;
        margin: 25px auto 0;
    }

    .nk-biz-recommended__item {
        width: 157px;
        max-width: 100%;
    }

    .nk-biz-recommended__item img {
        border-radius: 10px;
    }

    .nk-biz-recommended__label {
        font-size: 14px;
        margin: 10px 0 0;
    }

    .nk-biz-application__inner {
        width: 100%;
        max-width: 550px;
    }

    .nk-biz-application__lead {
        font-size: 18px;
        line-height: 170%;
        margin: 15px 0 0;
    }

    .nk-biz-application__list {
        width: 100%;
        display: block;
    }

    .nk-biz-application__item {
        width: 100%;
        padding: 18px 25px 10px;
    }

    .nk-biz-application__item:last-of-type {
        width: 100%;
        padding: 18px 25px 40px;
    }

    .nk-biz-application__item:not(:last-of-type) {
        position: relative;
        margin: 0 0 50px;
    }

    .nk-biz-application__item:not(:last-of-type)::before {
        width: 100%;
        height: 50px;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        position: absolute;
        top: auto;
        right: 0;
        bottom: -50px;
    }

    .nk-biz-application__item img {
        top: -8px;
        left: 47px;
    }

    .nk-biz-application__item-title {
        font-size: 18px;
        margin: 0;
    }

    .nk-biz-application__item-desc {
        line-height: 170%;
        margin: 15px 0 0;
    }

    .nk-biz-application__link {
        border-radius: 6px;
        width: 100%;
        font-size: 16px;
        margin: 20px auto 0;
    }

    /* BulkOrder */
    .nk-bulk-intro {
        margin: 57px 0 0;
    }

    .nk-bulk-intro::before {
        display: none;
    }

    .nk-bulk-intro__inner {
        width: 100%;
        display: block;
    }

    .nk-bulk-intro__text {
        width: 100%;
    }

    .nk-bulk-intro__title {
        font-size: 18px;
    }

    .nk-bulk-intro__desc {
        font-size: 14px;
        line-height: 170%;
        margin: 25px 0 0;
    }

    .nk-bulk-intro__image {
        width: 100%;
        max-width: 360px;
        min-width: 0;
        flex-shrink: 0;
        margin: 33px auto 0;
    }

    .nk-bulk-intro__image img {
        border-radius: 10px;
    }

    .nk-bulk-recommended {
        margin: 80px 0 0;
    }

    .nk-bulk-recommended__inner {
        width: 100%;
        padding: 50px 20px 60px;
    }

    .nk-bulk-recommended__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px 20px;
        margin: 25px 0 0;
    }

    .nk-bulk-recommended__item {
        border-radius: 6px;
    }

    .nk-bulk-recommended__label {
        font-size: 14px;
        margin: 10px 0 0;
    }

    .nk-bulk-why::before {
        width: 472px;
        height: 388px;
        top: -140px;
        right: -200px;
    }

    .nk-bulk-why::after {
        width: 353px;
        height: 341px;
        bottom: -200px;
        left: 0;
    }

    .nk-bulk-why__inner {
        width: 100%;
        padding: 0 20px;
    }

    .nk-bulk-why__item {
        display: block;
        margin: 40px 0 0;
    }

    .nk-bulk-why__image {
        width: 100%;
        min-width: 0;
    }

    .nk-bulk-why__text {
        width: 100%;
    }

    .nk-bulk-why__title {
        font-size: 16px;
        margin: 25px 0 0;
    }

    .nk-bulk-why__desc {
        font-size: 14px;
        line-height: 170%;
        margin: 15px 0 0;
    }

    /* Contact */
    .ec-contactRole,
    .ec-contactConfirmRole,
    .ec-contactCompleteRole {
        width: 100%;
        margin: 25px auto 0;
    }

    .ec-contactRole p {
        font-size: 14px;
        line-height: 170%;
    }

    .ec-borderedDefs {
        margin: 25px 0 0;
    }

    .ec-zipInputHelp span {
        font-size: 14px;
    }

    .ec-off4Grid {
        margin: 25px 0 0;
    }

    .ec-off4Grid .ec-off4Grid__cell {
        width: 100%;
    }

    .ec-blockBtn--action {
        font-size: 16px;
    }

    .ec-blockBtn--cancel {
        font-size: 16px;
    }

    /* MyPage */
    .ec-mypageRole {
        width: 100%;
    }

    .ec-mypageRole:first-of-type {
        margin: 35px auto 0;
    }

    .nk-mypage-header__title {
        font-size: 20px;
    }

    .ec-mypageRole .ec-navlistRole {
        margin: 40px auto 0;
    }

    .ec-mypageRole .nk-mypage-welcome {
        margin: 30px 0 0;
    }

    .ec-mypageRole .nk-mypage-welcome__name {
        font-size: 14px;
    }

    .ec-mypageRole .nk-mypage-welcome__point-wrap {
        margin: 15px 0 0;
        padding: 25px 0;
    }

    .ec-mypageRole .ec-historyRole .ec-historyRole__detail {
        padding: 15px 0 0;
        border-top: 1px solid #D9D9D9;
    }

    .ec-mypageRole .nk-mypage-welcome__point,
    .ec-mypageRole .nk-mypage-welcome__point-note {
        font-size: 14px;
    }

    .ec-mypageRole .ec-para-normal,
    .ec-mypageRole .ec-favoriteRole__header {
        font-size: 14px;
    }

    .ec-mypageRole .ec-borderedDefs {
        margin: 30px 0 0;
    }

    .ec-registerCompleteRole {
        margin: 45px auto 0;
    }

    .ec-withdrawRole,
    .ec-mypageRole .ec-withdrawConfirmRole {
        margin: 30px auto 0;
    }

    .ec-orderRole__detail .ec-pageHeader h2 {
        font-size: 16px;
    }

    .nk-login {
        margin: 35px 0 0;
    }

    .ec-login {
        margin: 40px 0 20px;
    }

    /* Faq */
    .nk-faq-intro {
        margin: 46px 0 0;
    }

    .nk-faq-intro__inner {
        width: 100%;
    }

    .nk-faq-intro__desc {
        font-size: 14px;
    }

    .nk-faq-search {
        margin: 30px 0 0;
    }

    .nk-faq-search__inner {
        width: 100%;
    }

    .nk-faq-search__form {
        display: block;
    }

    .nk-faq-search__input {
        width: 100%;
        font-size: 14px;
        padding: 10px;
        margin: 0;
    }

    .nk-faq-search__btn {
        width: 120px;
        font-size: 14px;
        margin: 14px 0 0;
    }

    .nk-faq-category {
        margin: 50px 0 0;
    }

    .nk-faq-category {
        margin: 35px 0 0;
    }

    .nk-faq-category__inner {
        width: 100%;
    }

    .nk-faq-category__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 13px 18px;
    }

    .nk-faq-category__link {
        font-size: 14px;
        padding: 0 0 10px;
    }

    .nk-faq-category__link::after {
        width: 20px;
        height: 20px;
        transform: translateY(-65%);
    }

    .nk-faq-content {
        margin: 65px 0 0;
    }

    .nk-faq-content__inner {
        width: 100%;
    }

    .nk-faq-section:not(:first-of-type) {
        margin: 25px 0 0;
    }

    .nk-faq-section__title {
        font-size: 20px;
    }

    .nk-faq-list {
        margin: 10px 0 0;
    }

    .nk-faq-item:not(:first-of-type) {
        margin: 25px 0 0;
    }

    .nk-faq-item__question {
        align-items: baseline;
        gap: 10px;
        padding: 6px;
    }

    .nk-faq-item__question::after {
        width: 10px;
        height: 6px;
        top: 50%;
        right: 7px;
    }

    .nk-faq-item__q {
        font-size: 16px;
        line-height: 33px;
        width: 33px;
        height: 33px;
    }

    .nk-faq-item__question-text {
        max-width: 80%;
        font-size: 16px;
    }

    .nk-faq-item__answer {
        margin: 15px 0 0;
    }

    .nk-faq-item__answer-text {
        font-size: 14px;
    }
}

@media (max-width: 599px) {
    /* Flow */
    .nk-flow__list {
        width: 250px;
        display: block;
        margin: 0 auto;
        position: relative;
    }

    .nk-flow__list::before {
        content: '';
        width: 2px;
        height: 100%;
        background-color: #000000;
        position: absolute;
        top: 3px;
        left: -22px;
    }

    .nk-flow__list::after {
        content: '';
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 24 12' fill='none'%3E%3Cpath d='M0.660156 0.749726L11.6602 10.4561L22.6602 0.749726' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-size: contain;
        width: 27px;
        height: 22px;
        position: absolute;
        left: -34px;
        bottom: -14px;
    }

    .nk-flow__item {
        min-width: 0;
        display: flex;
        align-items: center;
        gap: 24px;
        margin: 20px 0 0;
    }

    .nk-flow__item img {
        width: 105px;
        max-width: 100%;
        display: block;
    }

    .nk-flow__item:not(:last-of-type)::after {
        display: none;
    }

    .nk-flow__label {
        font-size: 14px;
        text-align: left;
        white-space: initial;
    }
}

@media (max-width: 550px) {
    /* ForBusiness */
    .nk-biz-recommended__list {
        max-width: 335px;
    }
}

@media (max-width: 539px) {
    /* ForBusiness */
    .nk-biz-specializes__list {
        max-width: 315px;
    }
}

@media (max-width: 374px) {
    /* ForBusiness */
    .nk-biz-specializes__inner {
        padding: 60px 15px 55px;
    }

    .nk-biz-recommended__item {
        width: 147px;
    }
}