@charset "UTF-8";
:root {
    /* use colors */
    --violet: rgba(154, 165, 248, 1);
    --violet-light: rgba(154, 165, 248, 0.3);
    --blue: rgba(51, 203, 254, 1);
    --black: rgba(0, 0, 0, 1);
    --black-light: rgba(112, 112, 112, 1);
    --gray: rgba(221, 221, 221, 1);
    --gray-light: rgba(204, 204, 204, 1);
    --gray--border: rgba(239, 239, 239, 1);
    --red: rgba(255, 0, 157, 1);
    --white: rgba(255, 255, 255, 1);
}
html {
    font-size: 62.5%;/* -> 10px */
}
/* font setting */
p,span,a,label{
    font-family: "Noto Sans", sans-serif;
    font-weight: 300;
    font-style: normal;
}
a:hover {
    color: var(--violet);
}
/* select */
.stl-sb64 {
    display: inline-flex;
    align-items: center;
    position: relative;
}
.stl-sb64::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: var(--black);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}
.stl-sb64 select {
    appearance: none;
    min-width: 6.4rem;
    height: 3.2rem;
    padding: 0 1rem;
    border: 1px solid var(--black);
    color: var(--black);
    font-size: 1.4rem;
    cursor: pointer;
}
/* button */
.stl-btn240 {
    display: block;
    width: 24rem;
    padding: 1.6rem 0;
    border: 2px solid var(--violet);
    border-radius: 2.5rem;
    text-align: center;
    color: var(--black);
    font-size: 1.6rem;
    font-weight: 600;
}
.stl-btn240:hover {
    background-color: var(--violet);
    color: var(--white);
}
.stl-btn240-nagative {
    display: block;
    width: 24rem;
    padding: 1.6rem 0;
    border: 2px solid var(--gray--border);
    border-radius: 2.5rem;
    text-align: center;
    color: var(--black);
    background-color: var(--gray--border);
    font-size: 1.6rem;
    font-weight: 600;
}
.stl-btn240-nagative:hover {
    background-color: var(--gray);
    border: 2px solid var(--gray);
    color: var(--white);
}
.stl-btn-dis {
    opacity: 0.5;
    cursor: not-allowed;
}
.stl-btn-dis:hover {
    border: 2px solid var(--violet);
    color: var(--black);
    background-color: var(--white);
}
/* radio */
.stl-radio {
    border: none;
}
.stl-radio label {
    display: flex;
    font-size: 1.4rem;
    align-items: flex-start;
    gap: 0 1.6rem;
    position: relative;
    margin-bottom: 2.4rem;
    cursor: pointer;
}
.stl-radio label::before,
.stl-radio label:has(:checked)::after {
    border-radius: 50%;
    content: '';
}
.stl-radio label::before {
    width: 20px;
    height: 20px;
    border: 1px solid var(--black-light);
    flex-shrink: 0;
}
.stl-radio label:has(:checked)::after {
    position: absolute;
    top: 6px;
    left: 6px;
    width: 8px;
    height: 8px;
    background-color: var(--blue);
}
.stl-radio input {
    display: none;
}
/* input */
.stl-input {
    width: 30rem;
    margin-right: 7.2rem;
    & label {
        font-size: 12px;
        color: var(--black);
        margin-bottom: 8px;
        display: block;
        cursor: pointer;
    }
    & input {
        width: 100%;
        padding: 16px;
        color: var(--black);
        border: 1px solid var(--black);
        border-radius: 8px;
        font-size: 14px;
        display: block;
    }
    & input:focus {
        outline: none;
        border: 1px solid var(--violet);
    }
    & input[disabled] {
        background-color: var(--gray-light);
    }
}
.mail-unmatch {
    display: none;
    padding: 0.8rem;
    color: var(--red);
    font-weight: 600;
    margin-bottom: 1.6rem;
}
/* checkbox */
.stl-agreement {
    display: flex;
    justify-content: center;
}

.stl-agreement label {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    gap: 1.6rem;
    position: relative;
    cursor: pointer;
}

.stl-agreement label::before {
    width: 2.4rem;
    height: 2.4rem;
    border: 1px solid var(--gray);
    content: '';
}

.stl-agreement label:has(:checked)::after {
    position: absolute;
    top: 0.4rem;
    left: 0.8rem;
    transform: rotate(45deg);
    width: 0.8rem;
    height: 1.2rem;
    border: solid var(--violet);
    border-width: 0 3px 3px 0;
    content: '';
}

.stl-agreement input {
    display: none;
}
/* header */
#stl__header {
    height: 7.2rem;
    padding: 0 4rem;
    margin-bottom: 7.2rem;
    border-bottom: 0.1rem solid var(--black);
    display: flex;
    justify-content: space-between;
    min-width: 132rem;
    & .stl__header__left {
        display: flex;
        align-items: center;
        & img {
            height: 4rem;
            width: auto;
            margin-right: 4rem;
        }
        & p {
            font-size: 1.6rem;
            font-weight: 600;
        }
    }
    & .stl__header__rigth {
        display: flex;
        align-items: center;
        font-size: 1.4rem;
        & .stl__header__cart {
            display: flex;
            align-items: center;
            margin-right: 4rem;
            & img {
                height: 3.2rem;
                width: auto;
                min-width: 3.2rem;
                margin-right: 0.8rem;
            }
            & .stl__header__cart--count {
                background-color: var(--black);
                color: var(--white);
                min-width: 2.4rem;
                height: 2.4rem;
                display: flex;
                justify-content: center;
                align-items: center;
                border-radius: 50%;
                margin-right: 0.8rem;
                font-weight: 600;
                line-height: 1;
                font-size: 1.2rem;
            }
        }
        & .stl__header__menue--resposive {
            display: none;
            height: 2.4rem;
            width: 2.4rem;
            & span {
                display: block;
                width: 100%;
                height: 0.2rem;
                background-color: var(--black);
                margin-bottom: 8px;
            }
        }
    }
}
/* wrapperここから */
.wrapper {
    display: block;
    width: 98rem;
    margin: 0 auto 7.2rem auto;
    /* 商品選択ページここから */
    & #stl__select__item{
        margin-bottom: 72px;
    }
    & .stl__subtitle {
        font-size: 3.2rem;
        font-weight: 600;
        margin-bottom: 2.4rem;
    }
    & .stl__status--flex {
        display: flex;
        justify-content: space-between;
        & .stl__status {
            display: flex;
            flex-wrap: wrap;
            margin-bottom: 3.2rem;
            & span {
                font-size: 1.4rem;
                color: var(--gray-light);
                margin-left: 0.4rem;
                margin-bottom: 0.4rem;
                display: inline-block;
                line-height: 1.4rem;
                max-width: 100%;
            }
            & .stl__status--active {
                font-weight: 600;
                color: var(--blue);
            }
        }
        & .stl__status--link {
            font-size: 1.4rem;
            font-weight: 600;
        }
    }
    & .stl__select__item--cards {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(3, 316px);
        gap: 2rem;
        & .stl__select__item--card {
            width: 316px;
            height: 316px;
            padding: 4rem;
            text-align: center;
            border: 1px solid var(--gray--border);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
            border-radius: 0.8rem;
            display: flex;
            flex-direction: column;
            align-items: center;
            & img {
                width: 200px;
            }
            & span {
                font-size: 1.4rem;
                font-weight: 600;
                display: block;
                margin-top: auto;
                color: inherit;
            }
            &:hover {
                border: 4px solid var(--violet);
                color: inherit;
            }
        }
    }
    & .stl__news--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        & span {
            display: block;
            font-size: 1.4rem;
            margin-bottom: 16px;
        }
        & a {
            font-size: 1.4rem;
        }
    }
    & .stl__news--row:last-child {
        border-bottom: 1px solid var(--gray--border);;
    }
    /* 金額選択ページここから */
    & .stl__select__prices--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        & span {
            font-size: 1.4rem;
        }
        & .stl__select__prices--flex {
            display: flex;
            margin-bottom: 2.4rem;
            & .stl__select__prices--img {
                margin-right: 4rem;
                & img {
                    width: 20rem;
                    height: auto;
                }
            }
            & .stl__select__prices--detail {
                margin-bottom: 2.4rem;
                & a {
                    font-size: 1.6rem;
                    font-weight: 600;
                    margin-right: 3.2rem;
                    cursor: pointer;
                }
                & span {
                    font-size: 1.6rem;
                    font-weight: 600;
                }
                & .allow {
                    color: var(--violet);
                }
                & .stl__select__prices--detail--pc {
                display: inline-block;
                margin-bottom: 2.4rem;
                }
                & .stl__select__prices--detail--responsive {
                    display: none;
                    margin-bottom: 2.4rem;
                }
                & .stl__select__prices--noaml {
                    & span {
                        font-size: 1.4rem;
                        font-weight: 400;
                        line-height: 2.5;
                    }
                }
                & .stl__select__prices--sale {
                    display: flex;
                    & div:first-child {
                        margin-right: 0.8rem;
                    }
                    & .original__price {
                        & span {
                            font-size: 1.4rem;
                            font-weight: 400;
                            line-height: 2.5;
                            text-decoration: line-through;
                        }
                    }
                    & .sale__price {
                        & span {
                            font-size: 1.4rem;
                            line-height: 2.5;
                        }
                    }
                }
                & .stl__select__prices--itemcode {
                    & span {
                        font-size: 1.4rem;
                        font-weight: 400;
                    }
                }
            }
        }
    }
    & .stl__select__prices--row:last-child {
        border-bottom: 1px solid var(--gray--border);
    }
    /* カートに追加ここから */
    & .add__cart--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        border-bottom: 1px solid var(--gray--border);
        & img {
            width: 20rem;
            height: auto;
        }
        & .add__cart--flex {
            display: flex;
            margin-bottom: 2.4rem;
            & .add__cart--img {
                margin-right: 4rem;
            }
            & .add__cart--detail {
                & .add__cart--detail--item {
                    margin-bottom: 2.4rem;
                    & span {
                        font-size: 1.6rem;
                        font-weight: 600;
                    }
                }
                & .add__cart--detail--price {
                    & span {
                        font-size: 1.4rem;
                        line-height: 1.7;
                    }
                }
                & .add__cart--detail--itemcode {
                    & span {
                        font-size: 1.4rem;
                        line-height: 1.7;
                    }
                }
                & .add__cart--detail--maker {
                    & span {
                        display: inline-block;
                        font-size: 1.4rem;
                        line-height: 1.7;
                        margin-bottom: 0.8rem;
                    }
                    & a {
                        font-size: 1.4rem;
                        font-weight: 600;
                        display: block;
                    }
                }
            }
        }
        & .add__cart--text {
            margin-bottom: 4rem;
            & span {
                font-size: 1.4rem;
            }
        }
        & .add__cart--edit {
            display: flex;
            & span {
                font-size: 1.4rem;
                margin-right: 1.6rem
            }
            & .stl-sb64 {
                margin-right: 4rem;
            }
        }
    }
    /* カート内を確認ここから */
    & .confirm__cart--row {
        padding: 32px 0;
        border-top: 1px solid var(--gray--border);
        & .confirm__cart--detail {
            & .confirm__cart--detail--item {
                & span {
                    display: block;
                    font-size: 1.6rem;
                    font-weight: 600;
                    margin-bottom: 2.4rem;
                }
            }
            & .confirm__cart--detail--price {
                margin-bottom: 0.8rem;
                & span {
                    font-size: 1.4rem;
                }
            }
            & .confirm__cart--detail--itemcode {
                margin-bottom: 2.4rem;
                & span {
                    font-size: 1.4rem;
                }
            }
            & .confirm__cart--editor--flex {
                display: flex;
                align-items: center;
                & .stl-sb64 {
                    margin-right: 2.4rem;
                    & span {
                    font-size: 1.4rem;
                    margin-right: 1.6rem;
                    }
                }
                & .confirm__cart--editor {
                    & span {
                        font-size: 1.4rem;
                        font-weight: bold;
                    }
                    & .confirm__cart--editor--edit:hover {
                        color: var(--violet);
                        cursor: pointer;
                    }
                    & .confirm__cart--editor--trash:hover {
                        color: var(--violet);
                        cursor: pointer;
                    }
                }
            }
        }
    }
    & .confirm__cart--row:not(:has(~ .confirm__cart--row)) {
    border-bottom: 1px solid var(--gray--border);
    margin-bottom: 3.2rem;
    }
    & p {
        font-size: 1.4rem;
        margin-bottom: 2.4rem;
    }
    & .confirm__cart--subtotal {
        margin-bottom: 3.2rem;
        text-align: end;
        & span {
            font-size: 1.4rem;
            font-weight: 600;
        }
        & .confirm__cart--subtotal--price {
            font-size: 1.9rem;
            line-height: 2;
        }
    }
    & .confirm__cart--btn {
        display: flex;
        justify-content: flex-end;
    }
    & .confirm__cart--btn--back {
        display: none;
    }
    /* 支払方法を選択ここから */
    & .payment__method--item--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        & .payment__method--detail--item {
            margin-bottom: 1.6rem;
            & span {
                font-size: 1.6rem;
                font-weight: 600;
            }
        }
        & .payment__method--detail--price {
            & span {
                font-size: 1.4rem;
                line-height: 1.7;
            }
        }
        & .payment__method--detail--itemcode {
            & span {
                font-size: 1.4rem;
                line-height: 1.7;
            }
        }
    }
    & .payment__method--item--row:not(:has(~ .payment__method--item--row)) {
    border-bottom: 1px solid var(--gray--border);
    margin-bottom: 3.2rem;
    }
    & .payment__method--subtotal {
        margin-bottom: 7.2rem;
        text-align: end;
        & span {
            font-size: 1.4rem;
            font-weight: 600;
        }
        & .payment__method--subtotal--price {
            font-size: 1.9rem;
            line-height: 2;
        }
    }
    & .payment__method--select--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        & .payment__method--select--flex {
            display: flex;
            justify-content: space-between;
            & .payment__method--select--txt {
                & p {
                    font-size: 1.2rem;
                    line-height: 1.7;
                    margin-bottom: 0;
                }
                & span {
                    font-size: 1.2rem;
                    line-height: 1.7
                }
                & a {
                    font-size: 1.2rem;
                    line-height: 1.7;
                    font-weight: 600;
                }
                & .payment__method--select--attention {
                    & p {
                        color: var(--red);
                        font-weight: 600;
                    }
                }
            }

            & .payment__method--select--img {
                & img {
                    width: 27.6rem;
                }
            }
        }
    }
    & .payment__method--select--row:not(:has(~ .payment__method--select--row)) {
    border-bottom: 1px solid var(--gray--border);
    margin-bottom: 3.2rem;
    }
    & .payment__method--btn {
        display: flex;
        justify-content: flex-end;
    }
    & .payment__method--btn--back {
            display: none;
        }
    /* 購入者情報を登録ここから */
    & .register__info--item--row {
        padding: 3.2rem 0;
        border-top: 1px solid var(--gray--border);
        & span {
            font-size: 1.4rem;
        }
        & .register__info--detail--item {
            margin-bottom: 1.6rem;
            & span {
                font-size: 1.6rem;
                font-weight: 600;
            }
        }
        & .register__info--detail--price {
            & span {
                font-size: 1.4rem;
                line-height: 1.7;
            }
        }
        & .register__info--detail--itemcode {
            & span {
                font-size: 1.4rem;
                line-height: 1.7;
            }
        }
        & .register__info--subtitle {
            display: block;
            font-size: 1.9rem;
            font-weight: 600;
            margin-bottom: 2.4rem;
        }
        & .register__info--flex {
            display: flex;
            margin-bottom: 2.4rem;
        }
        & li {
            font-size: 1.2rem;
            line-height: 1.7;
        }
        & .register__info--scroll {
            width: 100%;
            height: 16rem;
            overflow: auto;
            border: 1px solid var(--gray--border);
            padding: 1.6rem;
            margin-bottom: 3.2rem;
            & span {
                display: block;
                margin-bottom: 0.8rem;
            }
            & p {
                line-height: 1.7;
            }
            & p:last-child {
                margin-bottom: 0;
            }
        }
    }
    & .register__info--item--row:not(:has(~ .register__info--item--row)) {
    border-bottom: 1px solid var(--gray--border);
    margin-bottom: 3.2rem;
    }
    & .register__info--item--row:has(.register__info--agreement) {
    border-bottom: none;
    }
    & .register__info--subtotal {
        margin-bottom: 7.2rem;
        text-align: end;
        & span {
            font-size: 1.4rem;
            font-weight: 600;
        }
        & .register__info--subtotal--price {
            font-size: 1.9rem;
            line-height: 2;
        }
    }
    & .register__info__btn--flex {
        display: flex;
        justify-content: center;
        & .register__info--btn--back {
            margin-right: 4rem;
        }
    }
}
/* footer */
footer {
    background-color: var(--blue);
    & .wrapper {
        padding: 5.6rem 0;
        margin-bottom: 0;
        & .footer__menue {
            display: flex;
            justify-content: space-between;
            margin-bottom: 88px;
            & .footer__menue--left a {
                font-size: 1.4rem;
                font-weight: 600;
            }
            & .footer__menue--left a:hover {
                color: var(--white);
            }
            & .footer__menue--left li {
                margin-bottom: 1.6rem;
            }
            & .footer__menue--left li:last-child {
                margin-bottom: 0;
            }
            & .footer__menue--right {
                text-align: -webkit-right;
                & img {
                    display: block;
                    width: 8rem;
                    margin-bottom: 1.6rem;
                }
                & span {
                    display: block;
                    font-size: 1.4rem;
                    font-weight: 600;
                    margin-bottom: 1rem;
                }
                & a {
                    font-size: 1.2rem;
                    font-weight: 600;
                }
                & a:hover {
                    color: var(--white);
                }
            }
        }
        & .footer__logo {
            display: flex;
            justify-content: space-between;
            & .footer__logo--left {
                & p {
                    color: var(--white);
                    font-size: 4.8rem;
                    font-weight: 600;
                    margin-bottom: 1rem;
                }
                & span {
                    font-size: 12px;
                }
            }
            & .footer__logo--right {
                & img {
                    width: 8rem;
                }
            }
        }
    }
}
/* modal */
.stl__modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    & .stl__modal__content {
        position: relative;
        width: 100%;
        height: 100%;
        background: #40BFED;
        background: -webkit-linear-gradient(180deg, rgba(64, 191, 237, 0.90) 0%, rgba(169, 176, 217, 0.90) 100%);
        background: -moz-linear-gradient(180deg, rgba(64, 191, 237, 0.90) 0%, rgba(169, 176, 217, 0.90) 100%);
        background: linear-gradient(180deg, rgba(64, 191, 237, 0.90) 0%, rgba(169, 176, 217, 0.90) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#40BFED", endColorstr="#A9B0D9FC", GradientType=0);
        z-index: 1001;
        padding: 5.6rem 4rem 7.2rem 4rem;
        & .stl__modal__content--btn {
            text-align: right;
            margin-bottom: 4.8rem;
            & .stl__modal__close {
                color: var(--white);
                font-size: 1.6rem;
                font-weight: 600;
            }
        }
        & p {
            color: var(--white);
            font-size: 3.2rem;
            font-weight: 600;
            margin-bottom: 2.4rem;
        }
        & span {
            display: block;
            color: var(--white);
            font-size: 1.5rem;
            font-weight: 600;
            line-height: 1.7;
            margin-bottom: 5.6rem;
        }
    }
    & .stl__modal__menu {
        & ul li {
            margin-bottom: 3.2rem;
            & a {
                color: var(--white);
                font-size: 1.6rem;
                font-weight: 600;
            }
        }
    }
    & .stl__modal__footer {
        position: fixed;
        bottom: 7.2rem;
        & p {
            color: var(--white);
            font-size: 3.2rem;
            font-weight: 600;
            margin-bottom: 0.8px;
        }
        & span {
            color: var(--white);
            font-size: 0.8rem;
            margin-bottom: 0;
            font-weight: 300;
        }
    }
}
.stl__modal.active {
    display: block;
}
/* Responsive */
@media (max-width: 980px) {
    .stl__header__left {
        & p{
            display: none;
        }
    }
    #stl__header {
        min-width: auto;
        padding: 0 2.4rem;
    }
}
@media (max-width: 600px) {
    /* button */
    .stl-btn240 {
        width: 100%;
        padding: 1.6rem 0;
    }
    .stl-btn240-nagative {
        width: 100%;
        padding: 1.6rem 0;
    }
    #stl__header {
        padding-top: 3.2rem;
        border: none;
        margin-bottom: 3.2rem;
        & .stl__header__left {
            & img {
                height: 4rem;
                width: auto;
            }
        }
        & .stl__header__rigth {
            & .stl__header__cart {
                margin-right: 2.4rem;
            & img {
                    height: 2.4rem;
                    min-width: 2.4rem;
                }
                & .stl__header__cart--price {
                    display: none;
                }
                & .stl__header__cart--count {
                    min-width: 1.9rem;
                    height: 1.9rem;
                    font-size: 1rem;
                }
            }
            & .stl__header__menue {
                display: none;
            }
            & .stl__header__menue--resposive {
                display: block;
            }
        }
    }
    .stl-input {
        width: 100%;
        margin-right: 0;
        margin-bottom: 2.4rem;
        & label {
            font-size: 12px;
            color: var(--black);
            margin-bottom: 8px;
            display: block;
            cursor: pointer;
        }
        & input {
            width: 100%;
            padding: 16px;
            color: var(--black);
            border: 1px solid var(--black);
            border-radius: 8px;
            font-size: 14px;
            display: block;
        }
        & input:focus {
            outline: none;
            border: 1px solid var(--violet);
        }
        & input[disabled] {
            background-color: var(--gray-light);
        }
    }
    .wrapper {
        width: 100%;
        max-width: 100%;
        padding: 0 2.4rem;
        margin: 0 0 5.6rem 0;
        & #stl__select__item {
            margin-bottom: 5.6rem;
        }
        & .stl__subtitle {
            font-size: 2.4rem;
            margin-bottom: 1.6rem;
        }
        & .stl__status--flex {
            & .stl__status {
                margin-bottom: 2.4rem;
                & span {
                    font-size: 1.2rem;
                    display: inline-block;
                    white-space: normal;
                }
            }
            & .stl__status--link {
                display: none;
            }
        }
        & .stl__select__item--cards {
            grid-template-columns: repeat(2, 1fr);
            gap: 10px;
            & .stl__select__item--card {
                width: 100%;
                height: auto;
                aspect-ratio: 1 / 1;
                padding: 2.4rem 1.6rem;
                & img {
                    width: 12rem;
                }
                & span {
                    font-size: 1rem;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }
            }
        }
        & .stl__news--row {
            & span {
                font-size: 1.2rem;
            }
            & a {
                font-size: 1.3rem;
                line-height: 1.7;
            }
        }
        & .stl__select__prices--row {
            & span {
                line-height: 1.7;
            }
            & .stl__select__prices--flex {
                display: block;
                margin-bottom: 1.6rem;
                & .stl__select__prices--img {
                    & img {
                        width: 16rem;
                        height: auto;
                        margin-bottom: 2.4rem;
                    }
                }
                & .stl__select__prices--detail {
                    margin-bottom: 2.4rem;
                    & a {
                        font-size: 1.4rem;
                        font-weight: 600;
                        margin-right: 2.4rem;
                    }
                    & span {
                        font-size: 1.4rem;
                        font-weight: 600;
                    }
                    & .stl__select__prices--detail--pc {
                    display: none;
                    }
                    & .stl__select__prices--detail--responsive {
                        display: inline-block;
                        margin-bottom: 1.6rem;
                    }
                    & .stl__select__prices--noaml {
                        & span {
                            font-size: 1.4rem;
                            font-weight: 400;
                            line-height: 2.5;
                        }
                    }
                }
            }
        }
        & .add__cart--row {
            & img {
                width: 16rem;
            }
            & .add__cart--flex {
                display: block;
                & .add__cart--img {
                    margin-bottom: 2.4rem;
                }
                & .add__cart--detail {
                    & .add__cart--detail--item {
                        margin-bottom: 1.6rem;
                        & span {
                            font-size: 1.4rem;
                        }
                    }
                    & .add__cart--detail--price {
                        & span {
                            font-size: 1.4rem;
                            line-height: 1.7;
                        }
                    }
                }
            }
            & .add__cart--text {
                margin-bottom: 2.4rem;
                & span {
                    font-size: 1.4rem;
                    line-height: 1.7;
                }
            }
            & .add__cart--edit {
                display: block;
                & span {
                    font-size: 1.4rem;
                    margin-right: 1.6rem
                }
                & .stl-sb64 {
                    margin-right: 0;
                    margin-bottom: 4rem;
                }
            }
        }
        & .confirm__cart--row {
            & .confirm__cart--detail {
                & .confirm__cart--detail--item {
                    & span {
                        font-size: 1.4rem;
                        margin-bottom: 1.6rem;
                    }
                }
                & .confirm__cart--detail--price {
                    & span {
                        font-size: 1.3rem;
                    }
                }
                & .confirm__cart--detail--itemcode {
                    & span {
                        font-size: 1.3rem;
                    }
                }
                & .confirm__cart--editor--flex {
                    & .stl-sb64 {
                        & span {
                        font-size: 1.3rem;
                        }
                    }
                    & .confirm__cart--editor {
                        & span {
                            font-size: 1.3rem;
                        }
                    }
                }
            }
        }
        & p {
            font-size: 1.3rem;
            margin-bottom: 1.6rem;
            line-height: 1.7;
        }
        & .confirm__cart--subtotal {
            margin-bottom: 3.2rem;
            text-align: end;
            & span {
                font-size: 1.2rem;
                font-weight: 600;
            }
            & .confirm__cart--subtotal--price {
                font-size: 1.6rem;
                line-height: 2;
            }
        }
        & .confirm__cart--btn:has(~ .confirm__cart--btn--back) {
            margin-bottom: 2.4rem;
        }
        & .confirm__cart--btn--back {
            display: block;
        }
        & .payment__method--item--row {
            & .payment__method--detail--item {
                & span {
                    font-size: 1.4rem;
                }
            }
            & .payment__method--detail--price {
                & span {
                    font-size: 1.3rem;
                }
            }
            & .payment__method--detail--itemcode {
                & span {
                    font-size: 1.3rem;
                }
            }
        }
        & .payment__method--subtotal {
            margin-bottom: 3.2rem;
            & span {
                font-size: 1.2rem;
                font-weight: 600;
            }
            & .payment__method--subtotal--price {
                font-size: 1.6rem;
                line-height: 2;
            }
        }
        & .payment__method--select--row {
            & .payment__method--select--flex {
                display: var(--black);
                & .payment__method--select--txt {
                    & p {
                        font-size: 1.3rem;
                    }
                    & span {
                        font-size: 1.2rem;
                    }
                    & a {
                        font-size: 1.2rem;
                    }
                }

                & .payment__method--select--img {
                    & img {
                        width: 21.6rem;
                        height: auto;
                    }
                }
            }
        }
        & .payment__method--select--row:not(:has(~ .payment__method--select--row)) {
        border-bottom: 1px solid var(--gray--border);
        margin-bottom: 3.2rem;
        }
        & .payment__method--btn {
            display: flex;
            justify-content: flex-end;
        }
        & .payment__method--btn:has(~ .payment__method--btn--back) {
            margin-bottom: 2.4rem;
        }
        & .payment__method--btn--back {
            display: block;
        }
        /* 購入者情報を登録ここから */
        & .register__info--item--row {
            & span {
                font-size: 1.4rem;
            }
            & .register__info--detail--item {
                margin-bottom: 1.6rem;
                & span {
                    font-size: 1.4rem;
                }
            }
            & .register__info--detail--price {
                & span {
                    font-size: 1.3rem;
                }
            }
            & .register__info--detail--itemcode {
                & span {
                    font-size: 1.3rem;
                }
            }
            & .register__info--subtitle {
                display: block;
                font-size: 1.6rem;
                font-weight: 600;
                margin-bottom: 2.4rem;
            }
            & .register__info--flex {
                display: block;
                margin-bottom: 2.4rem;
            }
            & li {
                font-size: 1.2rem;
                line-height: 1.7;
            }
            & .register__info--scroll {
                width: 100%;
                height: 16rem;
                overflow: auto;
                border: 1px solid var(--gray--border);
                padding: 1.6rem;
                margin-bottom: 3.2rem;
                & span {
                    display: block;
                    margin-bottom: 0.8rem;
                }
                & p {
                    line-height: 1.7;
                }
                & p:last-child {
                    margin-bottom: 0;
                }
            }
        }
        & .register__info--subtotal {
            margin-bottom: 5.6rem;
            text-align: end;
            & span {
                font-size: 1.2rem;
            }
            & .register__info--subtotal--price {
                font-size: 1.6rem;
            }
        }
        & .register__info__btn--flex {
            display: flex;
            flex-direction: column-reverse;
            & .register__info--btn {
                margin-bottom: 2.4rem;
            }
            & .register__info--btn--back {
                margin-right: 0;
            }
        }
        & .register__info--item--row:has(.register__info--agreement) {
            border-bottom: none;
            margin-bottom: 0;
        }
    }
    footer {
        & .wrapper {
            padding: 5.6rem 2.4rem;
            margin-bottom: 0;
            & .footer__menue {
                display: block;
                margin-bottom: 24px;
                & .footer__menue--left a {
                    font-size: 1.3rem;
                }
                & .footer__menue--right {
                    display: none;
                }
            }
            & .footer__logo {
                display: flex;
                flex-direction: column-reverse;
                & .footer__logo--left {
                    & p {
                        font-size: 3.2rem;
                        margin-bottom: 1rem;
                    }
                    & span {
                        font-size: 8px;
                    }
                }
                & .footer__logo--right {
                    & img {
                        width: 4.8rem;
                        margin-bottom: 2.4rem;
                    }
                }
            }
        }
    }
}