*,
:before,
:after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
    min-width: 0
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.15
}

body {
    margin: 0
}

main {
    display: block
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
    margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
    margin: 0
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none
}

dt {
    font-weight: 700
}

dd {
    margin-left: 0
}

hr {
    clear: both;
    box-sizing: content-box;
    height: 0;
    color: inherit;
    border-top-width: 1px;
    margin: 0;
    overflow: visible
}

pre {
    font-family: monospace;
    font-size: inherit
}

address {
    font-style: inherit
}

a {
    color: inherit;
    background-color: transparent;
    text-decoration: none
}

abbr[title] {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace;
    font-size: inherit
}

small {
    font-size: 80%
}

sub,
sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

svg,
img,
embed,
object,
iframe {
    vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
    text-align: inherit;
    vertical-align: middle;
    text-transform: inherit;
    color: inherit;
    font: inherit;
    appearance: none;
    background: 0 0;
    border-radius: 0;
    margin: 0;
    padding: 0
}

button {
    cursor: pointer
}

[type=button] {
    cursor: pointer
}

[type=reset] {
    cursor: pointer
}

[type=submit] {
    cursor: pointer
}

button:disabled {
    cursor: default
}

[type=button]:disabled {
    cursor: default
}

[type=reset]:disabled {
    cursor: default
}

[type=submit]:disabled {
    cursor: default
}

:-moz-focusring {
    outline: auto
}

select:disabled {
    opacity: inherit
}

option {
    padding: 0
}

fieldset {
    min-width: 0;
    margin: 0;
    padding: 0
}

legend {
    padding: 0
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=number]::-webkit-inner-spin-button {
    height: auto
}

[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

[type=number] {
    -moz-appearance: textfield
}

label[for] {
    cursor: pointer
}

details {
    display: block
}

summary {
    display: list-item
}

[contenteditable]:focus {
    outline: auto
}

table {
    border-collapse: collapse;
    border-color: inherit
}

caption {
    text-align: left
}

td,
th {
    vertical-align: top;
    padding: 0
}

th {
    text-align: left;
    font-weight: 700
}

:root {
    --color-primary: #fff;
    --color-bg: #fff;
    --color-text: #222;
    --color-white: #fff;
    --color-black: #000;
    --color-gray-900: #111;
    --color-btn-bg: #040100
}

body {
    color: var(--color-text);
    background-color: var(--color-bg);
    font-family: dnp-shuei-gothic-gin-std, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, Arial, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-size: 1rem
}

.l-content {
    z-index: 2;
    width: 100%;
    position: relative
}

.l-section {
    z-index: 2;
    position: relative
}

.l-sectionBG {
    z-index: 1;
    pointer-events: none;
    width: 100%;
    height: 100svh;
    position: fixed;
    top: 0;
    left: 0
}

@media screen and (max-width:767px) {
    .l-sectionBG {
        height: 100dvh
    }
}

.l-sectionBG__layer {
    opacity: 0;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
    transition: opacity 1s cubic-bezier(.58, .23, .32, .94);
    position: absolute;
    top: 0;
    left: 0
}

@media (prefers-reduced-motion:reduce) {
    .l-sectionBG__layer {
        transition-duration: .01ms
    }
}

.l-sectionBG__layer--visible {
    opacity: 1
}

.l-sectionBG__layer.About {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-01.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.About {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-01.webp)
    }
}

.l-sectionBG__layer.PickUp {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-02.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.PickUp {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-02.webp)
    }
}

.l-sectionBG__layer.LineUpA {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-03.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.LineUpA {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-03.webp)
    }
}

.l-sectionBG__layer.LineUpB {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-04.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.LineUpB {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-04.webp)
    }
}

.l-sectionBG__layer.LineUpC {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-05.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.LineUpC {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-05.webp)
    }
}

.l-sectionBG__layer.Lens {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-06.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.Lens {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-06.webp)
    }
}

.l-sectionBG__layer.Prescription {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-pc-01.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.Prescription {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-sp-01.webp)
    }
}

.l-sectionBG__layer.pspPlan {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-pc-02.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.pspPlan {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-sp-02.webp)
    }
}

.l-sectionBG__layer.pspPlanRecommended {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-pc-03.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.pspPlanRecommended {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-sp-03.webp)
    }
}

.l-sectionBG__layer.pspHighSpecLens {
    background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-pc-04.webp)
}

@media screen and (max-width:767px) {
    .l-sectionBG__layer.pspHighSpecLens {
        background-image: url(/cms/contents/lp/sunglasses/prescription/img/bg-prescription-sp-04.webp)
    }
}

.l-inner {
    max-width: 1480px;
    margin: 0 auto
}

.l-cardContent {
    grid-template-columns: 340px 560px;
    justify-content: space-between;
    padding-left: 13.3108%;
    padding-right: 2.08108%;
    display: grid
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .l-cardContent {
        grid-template-columns: 1fr;
        padding-left: 17.0109%;
        padding-right: 17.0109%
    }
}

@media screen and (max-width:767px) {
    .l-cardContent {
        grid-template-columns: 1fr;
        padding-left: 6.15385%;
        padding-right: 6.15385%
    }
}

.l-cardContent .l-cardContent__body {
    transform: translateY(-10px)
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .l-cardContent .l-cardContent__thumbnail {
        width: 343px;
        height: auto;
        margin: 0 auto 78px;
        transform: translateY(0%)
    }
}

@media screen and (max-width:767px) {
    .l-cardContent .l-cardContent__thumbnail {
        width: 275px;
        height: auto;
        margin: 0 auto 70px;
        transform: translateY(0%)
    }
}

.l-cardContent .l-cardContent__thumbnail__inner {
    z-index: 2;
    position: relative
}

.l-header {
    z-index: 100;
    will-change: transform;
    position: fixed;
    bottom: 24px;
    left: 10px
}

@media screen and (max-width:767px) {
    .l-header {
        width: 100%;
        padding-left: 3.33333%;
        padding-right: 3.33333%;
        bottom: 15px;
        left: 0;
        right: 0
    }

    .l-header__inner {
        justify-content: center;
        display: flex
    }

    .l-header__nav {
        display: none
    }
}

@media (hover:hover) {
    .l-header__nav__listItem:hover:not(.LineUp) a {
        transform: translate(5px)
    }
}

.l-header__nav__listItem.LineUp {
    padding-top: 2px
}

.l-header__nav__listItem span {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 500
}

.l-header__nav__listItem a {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    transition: transform .3s cubic-bezier(.02, .67, .31, 1.17);
    display: inline-block
}

.l-header__nav__listSub {
    padding-top: 4px
}

@media (hover:hover) {
    .l-header__nav__listSubItem:hover a {
        transform: translate(3px)
    }
}

.l-header__nav__listSubItem a {
    text-indent: .603784rem;
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    display: inline-block
}

.l-header__sp {
    display: none;
    position: relative
}

@media screen and (max-width:767px) {
    .l-header__sp {
        justify-content: space-between;
        align-items: center;
        gap: 0 5px;
        display: flex
    }
}

.l-header__sp.is-open .l-header__spNavAnchor {
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0)
}

.l-header__sp.is-open .l-header__spNav:after {
    transform: translateY(-50%)rotate(180deg)
}

.l-header__spNavAnchor {
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    background: rgba(255, 255, 255, .35);
    border-radius: 11px;
    width: 220px;
    height: auto;
    padding: 28px 16px;
    transition: opacity .4s cubic-bezier(.58, .23, .32, .94), transform .5s cubic-bezier(.04, .4, 0, 1.23), visibility .5s linear;
    position: absolute;
    bottom: 48px;
    left: 0;
    transform: translateY(8px)
}

.l-header__spNavAnchorListItem {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 600;
    line-height: 84%
}

.l-header__spNavAnchorListItem.LineUp {
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 500
}

.l-header__spNavAnchorListItem.LineUp .l-header__spNavAnchorListSubItem {
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600
}

.l-header__spNavAnchorListItem:not(:first-child) {
    padding-top: 23px
}

.l-header__spNavAnchorListItem a {
    width: 100%;
    height: 100%;
    display: block
}

.l-header__spNavAnchorListSubItem {
    letter-spacing: -.02em;
    color: var(--color-text);
    padding-top: 6px;
    font-family: ivybodoni-condensed, sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 600;
    line-height: 84%
}

.l-header__spNavAnchorListSubItem:first-child {
    padding-top: 0
}

.l-header__spNavAnchorListSubItem a {
    width: 100%;
    height: 100%;
    display: block
}

.l-header__spNav {
    cursor: pointer;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    background: rgba(255, 255, 255, .35);
    border-radius: 40px;
    width: 220px;
    height: 42px;
    position: relative;
    overflow: hidden
}

.l-header__spNav:after {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/icon_pull_arrow.svg) 50%/cover no-repeat;
    width: 11px;
    height: 6px;
    transition: transform .28s cubic-bezier(.48, .09, 0, .99);
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%)
}

.l-header__spNavList {
    width: 100%;
    height: 100%;
    transition: transform .28s cubic-bezier(.48, .09, 0, .99);
    position: relative
}

.l-header__spNavListItem {
    width: 100%;
    height: 100%;
    padding-left: 15px;
    padding-right: 15px
}

.l-header__spNavListItemInner {
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex
}

.l-header__spNavListItem span {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 600;
    line-height: 84%
}

.l-header__spNavListItem.LineUp span {
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 500;
    display: block
}

.l-header__spNavListItem.LineUp small {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 600;
    line-height: 84%;
    display: block
}

.l-header__spButton {
    flex-shrink: 0;
    width: 206px !important
}

.l-footer {
    z-index: 4;
    background: url(/cms/contents/lp/sunglasses/prescription/img/bg-pc-07.webp) 50%/cover no-repeat;
    position: relative
}

@media screen and (max-width:767px) {
    .l-footer {
        background: url(/cms/contents/lp/sunglasses/prescription/img/bg-sp-07.webp) 50%/cover no-repeat
    }
}

.l-footer__inner {
    padding: 32px 29px 36px
}

@media screen and (max-width:767px) {
    .l-footer__inner {
        padding: 38px 6.15385% 36px
    }
}

.l-footer__content {
    justify-content: space-between;
    align-items: flex-start;
    display: flex
}

.l-footer__title__head {
    letter-spacing: -.02em;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 2.20894rem;
    font-style: normal;
    font-weight: 700;
    line-height: 84%
}

@media screen and (max-width:767px) {
    .l-footer__title__head {
        font-size: 1.72057rem
    }
}

.l-footer__title__main {
    width: 413px
}

@media screen and (max-width:767px) {
    .l-footer__title__main {
        width: 100%
    }
}

.l-footer__title__main span {
    text-align: left;
    letter-spacing: .03em;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 4.53414rem;
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    display: block
}

@media screen and (max-width:767px) {
    .l-footer__title__main span {
        letter-spacing: unset;
        font-size: 3.5317rem
    }
}

.l-footer__title__main span:nth-child(2) {
    letter-spacing: .053em;
    transform: translateY(-1rem)
}

@media screen and (max-width:767px) {
    .l-footer__title__main span:nth-child(2) {
        letter-spacing: .03em;
        transform: translateY(-.7rem)
    }
}

.l-footer__title__main span:nth-child(3) {
    transform: translateY(-2rem)
}

@media screen and (max-width:767px) {
    .l-footer__title__main span:nth-child(3) {
        letter-spacing: -.02em;
        transform: translateY(-1.6rem)
    }
}

.l-footer__title__main img {
    width: 100%;
    height: auto
}

.l-footer__title__year {
    width: 56px;
    padding-top: 20px;
    display: block
}

.l-footer__title__year img {
    width: 100%;
    height: auto
}

.l-footer__title__reason {
    letter-spacing: .17em;
    color: var(--color-text);
    margin-top: 38px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.375rem;
    font-style: normal;
    font-weight: 500;
    line-height: 114%
}

@media screen and (max-width:767px) {
    .l-footer__title__reason {
        letter-spacing: .32em;
        margin-top: 19px;
        font-size: 1.25rem;
        line-height: 141%
    }
}

.l-footer__main {
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700
}

@media screen and (max-width:767px) {
    .l-footer__nav {
        display: none
    }
}

@media (hover:hover) {
    .l-footer__nav__listItem:hover:not(.LineUp) a {
        transform: translate(5px)
    }
}

.l-footer__nav__listItem.LineUp {
    padding-top: 1px
}

.l-footer__nav__listItem span {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 500
}

.l-footer__nav__listItem a {
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    transition: transform .3s cubic-bezier(.02, .67, .31, 1.17);
    display: inline-block
}

.l-footer__nav__listSub {
    padding-top: 4px
}

@media (hover:hover) {
    .l-footer__nav__listSubItem:hover a {
        transform: translate(3px)
    }
}

.l-footer__nav__listSubItem a {
    text-indent: .603784rem;
    letter-spacing: -.02em;
    color: var(--color-text);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    display: inline-block
}

.l-footer__bottom {
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 210px;
    display: flex
}

@media screen and (max-width:767px) {
    .l-footer__bottom {
        width: 100%;
        padding-top: 0;
        display: block
    }

    .l-footer__bottom .c-primaryButton {
        width: 100%
    }
}

.l-footer__bottom__logo {
    width: 47px
}

@media screen and (max-width:767px) {
    .l-footer__bottom__logo {
        margin-top: 92px;
        margin-left: auto;
        margin-right: auto
    }
}

.l-footer__bottom__logo img {
    width: 100%;
    height: auto
}

.l-footer__bottom__button {
    margin-top: 20px
}

.l-footer__bottom__copyright {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    padding-top: 32px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 600;
    line-height: 131%;
    display: none
}

@media screen and (max-width:767px) {
    .l-footer__bottom__copyright {
        display: block
    }
}

.l-footerB {
    z-index: 6;
    position: relative
}

.l-footerB__inner {
    padding: 118px 29px 30px
}

@media screen and (max-width:767px) {
    .l-footerB__inner {
        padding: 157px 6.15385% 24px
    }
}

.l-footerB__bottom__copyright {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 131%;
    display: block
}

@media screen and (max-width:767px) {
    .l-footerB__bottom__copyright {
        font-size: .75rem
    }
}

.c-primaryButton {
    border: 1px solid var(--color-black);
    background: var(--color-btn-bg);
    will-change: transform;
    border-radius: 40px;
    width: fit-content;
    height: 42px;
    transition: background .35s cubic-bezier(.33, 1, .68, 1), transform .35s cubic-bezier(.33, 1, .68, 1);
    display: block
}

@media (hover:hover) {
    .c-primaryButton:hover {
        background: 0 0;
        transform: scale(1.008)
    }

    .c-primaryButton:hover a span {
        color: var(--color-black)
    }
}

.c-primaryButton.Fat {
    height: 48px
}

.c-primaryButton.Small {
    height: 36px
}

.c-primaryButton.Small a span {
    font-size: .75rem
}

@media screen and (max-width:767px) {
    .c-primaryButton.MediumText a {
        padding-left: 0;
        padding-right: 0
    }
}

.c-primaryButton.MediumText a span {
    font-size: .875rem
}

@media screen and (max-width:767px) {
    .c-primaryButton.SmallText a {
        padding-left: 0;
        padding-right: 0
    }
}

.c-primaryButton.SmallText a span {
    font-size: .8125rem
}

.c-primaryButton a {
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 37px;
    padding-right: 37px;
    display: flex
}

.c-primaryButton a span {
    text-align: center;
    letter-spacing: .02em;
    color: var(--color-white);
    font-size: .9375rem;
    line-height: 1;
    transition: color .35s cubic-bezier(.48, .03, .12, .92);
    transform: translateY(1px)
}

.c-button {
    cursor: pointer;
    color: var(--color-white);
    background-color: var(--color-primary);
    border: none;
    border-radius: 4px;
    justify-content: center;
    align-items: center;
    padding: .8em 1.6em;
    font-weight: 700;
    transition: all .3s cubic-bezier(0, .3, .355, 1);
    display: inline-flex
}

@media (hover:hover) {
    .c-button:hover {
        opacity: .8
    }
}

.c-primarySectionTitle {
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 84%;
    position: sticky;
    top: 40px;
    left: 0
}

@media screen and (max-width:767px) {
    .c-primarySectionTitle {
        padding-bottom: 42px;
        font-size: 1.0625rem;
        position: relative;
        top: 0
    }
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .c-primarySectionTitle {
        padding-bottom: 42px;
        position: relative;
        top: 0
    }
}

@media screen and (min-width:1161px) {
    .c-primarySectionTitle {
        z-index: 40
    }
}

.c-secondarySectionTitleHeading {
    padding-left: 2.7027%;
    position: sticky;
    top: 65px
}

@media screen and (max-width:767px) {
    .c-secondarySectionTitleHeading {
        top: unset;
        position: relative
    }
}

.c-secondarySectionShoulder {
    text-transform: uppercase;
    color: var(--color-black);
    padding-bottom: 15px;
    font-family: ivybodoni, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 600;
    display: block
}

@media screen and (max-width:767px) {
    .c-secondarySectionShoulder {
        text-align: center;
        padding-bottom: 13px;
        font-size: 1.375rem
    }
}

.c-secondarySectionTitle {
    letter-spacing: .17em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.0625rem;
    font-style: normal;
    font-weight: 500;
    line-height: 134%
}

@media screen and (max-width:767px) {
    .c-secondarySectionTitle {
        text-align: center;
        letter-spacing: .17em;
        font-size: 1rem;
        line-height: 134%
    }
}

.c-secondarySectionTitleDescription {
    text-align: center;
    letter-spacing: -.01em;
    width: fit-content;
    color: var(--color-text);
    margin-left: auto;
    margin-right: auto;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.3125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 141%;
    transform: rotate(-3.7deg)
}

@media screen and (max-width:767px) {
    .c-secondarySectionTitleDescription {
        text-align: center;
        letter-spacing: -.01em;
        color: var(--color-text);
        font-size: 1.3125rem;
        line-height: 161%
    }
}

.c-secondarySectionTitleDescription:before {
    content: "";
    background-color: var(--color-black);
    width: 100%;
    height: 1px;
    margin-bottom: 15px;
    margin-left: 1rem;
    display: block
}

@media screen and (max-width:767px) {
    .c-secondarySectionTitleDescription:before {
        margin-left: -.2rem
    }
}

.c-secondarySectionTitleDescription:after {
    content: "";
    background-color: var(--color-black);
    width: 100%;
    height: 1px;
    margin-top: 10px;
    margin-left: -.5rem;
    display: block
}

@media screen and (max-width:767px) {
    .c-secondarySectionTitleDescription:after {
        margin-left: -.2rem
    }
}

.c-primaryContentHeading .c-primaryContentRead {
    text-align: justify;
    width: 100%;
    padding-top: 20px
}

.c-primaryContentTitle {
    letter-spacing: .32em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 151%
}

@media screen and (max-width:767px) {
    .c-primaryContentTitle {
        font-size: 1.4375rem
    }
}

.c-primaryContentTitle.ReNew {
    justify-content: flex-start;
    gap: 0;
    display: flex;
    position: relative
}

@media screen and (max-width:767px) {
    .c-primaryContentTitle.ReNew {
        gap: 0 6px
    }
}

.c-primaryContentTitle.ReNew:after {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/icon_new_release.svg) 50%/cover no-repeat;
    width: 70px;
    height: 28px;
    display: block;
    position: relative;
    transform: translateY(-.6rem)
}

@media screen and (max-width:767px) {
    .c-primaryContentTitle.ReNew:after {
        width: 55px;
        height: 22px;
        transform: translateY(-.2rem)
    }
}

.c-primaryContentTitle.En {
    letter-spacing: .07em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 600;
    line-height: 151%
}

.c-primaryContentRead {
    letter-spacing: .02em;
    word-break: break-all;
    color: var(--color-text);
    font-optical-sizing: auto;
    font-family: Noto Sans JP, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    line-height: 164%
}

.c-secondaryContentHeading .c-secondaryContentRead {
    padding-top: 25px
}

.c-secondaryContentTitle {
    letter-spacing: .07em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 151%
}

.c-secondaryContentRead {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 164%
}

.c-primaryCardBoxTitle {
    letter-spacing: .05em;
    color: var(--color-gray-900);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%
}

.c-primaryGlassCard {
    width: 298px;
    min-width: 298px;
    max-width: 298px
}

@media screen and (min-width:768px) {
    .c-primaryGlassCard {
        width: 428px;
        min-width: 428px;
        max-width: 428px
    }
}

.c-primaryGlassCard__images {
    -webkit-user-select: none;
    user-select: none;
    touch-action: pan-y;
    filter: drop-shadow(67px 115px 53px rgba(0, 0, 0, .01))drop-shadow(4px 7px 18px rgba(0, 0, 0, .09));
    position: relative
}

.c-primaryGlassCard__images a {
    -webkit-user-drag: none;
    width: 100%;
    height: 100%;
    display: block
}

.c-primaryGlassCard__imagesInner {
    border-radius: 3px;
    display: grid;
    position: relative;
    overflow: hidden
}

.c-primaryGlassCard__imagesItem {
    pointer-events: none;
    opacity: 0;
    grid-area: 1/1;
    width: 100%;
    height: 100%;
    transition: opacity .35s
}

.c-primaryGlassCard__imagesItem.is-active {
    pointer-events: auto;
    opacity: 1
}

.c-primaryGlassCard__imagesItem img {
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    width: 100%;
    height: auto
}

.c-primaryGlassCard__Body {
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 28px;
    padding-left: 11px;
    padding-right: 11px;
    display: flex;
    position: relative
}

@media screen and (max-width:767px) {
    .c-primaryGlassCard__Body {
        padding-top: 18px;
        padding-left: 0;
        padding-right: 0;
        display: block
    }
}

.c-primaryGlassCard__colors {
    align-items: center;
    gap: 0 8px;
    margin-bottom: 7px;
    display: flex
}

.c-primaryGlassCard__colorsItem {
    cursor: pointer;
    background-color: var(--color-black);
    border: 1px solid rgba(255, 255, 255, 0);
    border-radius: 50%;
    width: 10px;
    height: 10px;
    transition: transform .25s, opacity .25s;
    display: block
}

.c-primaryGlassCard__colorsItem.is-active {
    opacity: 1;
    border: 1px solid #fff;
    transform: scale(1)
}

.c-primaryGlassCard__colorsItem.BK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bk.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BKCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bk-cl.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BKBLU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bkblu.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BKM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bkm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DMBK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmbk.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BLUSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bluss.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/br.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BRATG {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bratg.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BRCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brcl.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BRM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BRMB {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brmb.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.BRSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brss.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.CHA {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/cha.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.CLBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.CLGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clgr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.CLPK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clpk.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.CLPU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clpu.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DBLU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dblu.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DDMBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/ddmbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dgr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DGRNM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dgrnm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DMCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmcl.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DMBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DMGRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmgrn.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.DMKH {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmkh.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.G {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/g.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GNM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/gnm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/gr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grcl.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRGRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grgrn.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRH {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grh.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRJU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grju.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grn.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.GRSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grss.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.KHM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/khm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.LBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/lbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.LGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/lgr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.NV {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/nv.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.NVM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/nvm.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pk.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PKBE {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkbe.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PKBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkbr.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PKSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkss.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pu.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PUM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pum.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.PUSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/puss.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.S {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/s.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.VTCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/vtcl.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.WG {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/wg.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__colorsItem.WI {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/wi.webp) 50%/cover no-repeat
}

.c-primaryGlassCard__title {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%
}

.c-primaryGlassCard__subtitle {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%
}

@media screen and (max-width:767px) {
    .c-primaryGlassCard__subtitle {
        padding-top: 3px
    }

    .c-primaryGlassCard__viewMore {
        padding-top: 9px
    }
}

@media (hover:hover) {
    .c-primaryGlassCard__viewMore:hover a:after {
        transform-origin: 100%;
        transform: scaleX(0)
    }
}

.c-primaryGlassCard__viewMore a {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%;
    position: relative
}

.c-primaryGlassCard__viewMore a:after {
    content: "";
    transform-origin: 0;
    background: var(--color-text);
    width: 100%;
    height: 1px;
    transition: transform .35s cubic-bezier(.33, 1, .68, 1);
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0
}

@media (prefers-reduced-motion:reduce) {

    .c-primaryGlassCard__imagesItem,
    .c-primaryGlassCard__colorsItem,
    .c-secondaryGlassCard__imagesItem,
    .c-secondaryGlassCard__colorsItem {
        transition: none
    }
}

.c-secondaryGlassCard__images {
    -webkit-user-select: none;
    user-select: none;
    touch-action: pan-y;
    filter: drop-shadow(67px 115px 53px rgba(0, 0, 0, .01))drop-shadow(4px 7px 18px rgba(0, 0, 0, .09));
    border-radius: 3px;
    position: relative;
    overflow: hidden
}

.c-secondaryGlassCard__images a {
    -webkit-user-drag: none;
    width: 100%;
    height: 100%;
    display: block
}

.c-secondaryGlassCard__imagesInner {
    border-radius: 3px;
    display: grid;
    position: relative;
    overflow: hidden
}

.c-secondaryGlassCard__imagesItem {
    pointer-events: none;
    opacity: 0;
    grid-area: 1/1;
    width: 100%;
    height: 100%;
    transition: opacity .6s cubic-bezier(.58, .23, .32, .94);
    overflow: hidden
}

.c-secondaryGlassCard__imagesItem.is-active {
    pointer-events: auto;
    opacity: 1
}

.c-secondaryGlassCard__imagesItem.is-active img {
    transform: scale(1)
}

.c-secondaryGlassCard__imagesItem img {
    -webkit-user-select: none;
    user-select: none;
    transform-origin: 50%;
    -webkit-user-drag: none;
    will-change: transform;
    width: 100%;
    height: auto;
    transition: transform .6s cubic-bezier(.58, .23, .32, .94);
    transform: scale(1.015)
}

.c-secondaryGlassCard__imagesSPF {
    z-index: 2;
    pointer-events: none;
    background: url(/cms/contents/lp/sunglasses/prescription/img/logo_lens.svg) 50%/cover no-repeat;
    width: 32px;
    height: 32px;
    position: absolute;
    bottom: 7px;
    left: 7px
}

.c-secondaryGlassCard__Body {
    padding-top: 10px;
    padding-left: 3px;
    padding-right: 3px;
    position: relative
}

.c-secondaryGlassCard__colors {
    align-items: center;
    gap: 0 7px;
    display: flex
}

.c-secondaryGlassCard__colorsItem {
    cursor: pointer;
    background-color: var(--color-black);
    border: 1px solid rgba(255, 255, 255, 0);
    border-radius: 50%;
    width: 9px;
    height: 9px;
    transition: transform .25s, opacity .25s;
    display: block
}

.c-secondaryGlassCard__colorsItem.is-active {
    opacity: 1;
    border: 1px solid #fff;
    transform: scale(1)
}

.c-secondaryGlassCard__colorsItem.BK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bk.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BKCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bk-cl.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BKBLU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bkblu.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BKM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bkm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DMBK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmbk.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BLUSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bluss.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/br.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BRATG {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/bratg.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BRCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brcl.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BRM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BRMB {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brmb.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.BRSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/brss.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.CHA {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/cha.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.CLBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.CLGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clgr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.CLPK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clpk.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.CLPU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/clpu.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DBLU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dblu.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DDMBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/ddmbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dgr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DGRNM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dgrnm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DMCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmcl.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DMBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DMGRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmgrn.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.DMKH {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/dmkh.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.G {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/g.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GNM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/gnm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/gr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grcl.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRGRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grgrn.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRH {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grh.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRJU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grju.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRN {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grn.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.GRSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/grss.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.KHM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/khm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.LBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/lbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.LGR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/lgr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.NV {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/nv.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.NVM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/nvm.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PK {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pk.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PKBE {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkbe.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PKBR {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkbr.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PKSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pkss.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PU {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pu.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PUM {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/pum.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.PUSS {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/puss.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.S {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/s.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.VTCL {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/vtcl.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.WG {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/wg.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__colorsItem.WI {
    background: url(/cms/contents/lp/sunglasses/prescription/img/chip/wi.webp) 50%/cover no-repeat
}

.c-secondaryGlassCard__title {
    letter-spacing: .02em;
    color: var(--color-text);
    padding-top: 8px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 154%
}

.c-secondaryGlassCard__viewMore {
    padding-top: 6px
}

.c-secondaryGlassCard__viewMore a {
    letter-spacing: .02em;
    color: var(--color-text);
    line-height: 154%;
    position: relative
}

@media (hover:hover) {
    .c-secondaryGlassCard__viewMore a:hover:after {
        transform-origin: 100%;
        transform: scaleX(0)
    }
}

.c-secondaryGlassCard__viewMore a {
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 400
}

.c-secondaryGlassCard__viewMore a:after {
    content: "";
    transform-origin: 0;
    background: var(--color-text);
    width: 100%;
    height: 1px;
    transition: transform .35s cubic-bezier(.33, 1, .68, 1);
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0
}

.c-secondaryGlassCard__tag {
    letter-spacing: .02em;
    width: fit-content;
    color: var(--color-gray-900);
    border: 1px solid var(--color-gray-900);
    border-radius: 5px;
    justify-content: center;
    align-items: center;
    padding: 2px 5px 3px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    display: flex;
    position: absolute;
    bottom: 0;
    right: 0
}

@media screen and (max-width:767px) {
    .c-secondaryGlassCard__tag {
        border-radius: 2px;
        padding: 3px 5px 2px
    }

    .c-secondaryGlassCard__tag.BlockTag {
        width: 100%;
        margin-top: 12px;
        position: relative;
        bottom: auto;
        right: auto
    }
}

.c-tertiaryGlassCard__images {
    -webkit-user-select: none;
    user-select: none;
    touch-action: pan-y;
    filter: drop-shadow(67px 115px 53px rgba(0, 0, 0, .01))drop-shadow(4px 7px 18px rgba(0, 0, 0, .09));
    border-radius: 3px;
    position: relative;
    overflow: hidden
}

.c-tertiaryGlassCard__images a {
    -webkit-user-drag: none;
    width: 100%;
    height: 100%;
    display: block
}

.c-tertiaryGlassCard__imagesInner {
    border-radius: 3px;
    display: grid;
    position: relative;
    overflow: hidden
}

.c-tertiaryGlassCard__imagesItem {
    pointer-events: none;
    grid-area: 1/1;
    width: 100%;
    height: 100%;
    transition: opacity .35s
}

.c-tertiaryGlassCard__imagesItem:first-child {
    pointer-events: auto
}

.c-tertiaryGlassCard__imagesItem img {
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    width: 100%;
    height: auto
}

.c-tertiaryGlassCard__imagesSPF {
    z-index: 2;
    pointer-events: none;
    background: url(/cms/contents/lp/sunglasses/prescription/img/logo_lens.svg) 50%/cover no-repeat;
    width: 32px;
    height: 32px;
    position: absolute;
    bottom: 7px;
    left: 7px
}

.c-tertiaryGlassCard__Body {
    padding-top: 10px;
    padding-left: 3px;
    padding-right: 3px;
    position: relative
}

@media screen and (max-width:767px) {
    .c-tertiaryGlassCard__Body {
        padding-top: 8px
    }
}

.c-tertiaryGlassCard__title {
    letter-spacing: .02em;
    color: var(--color-text);
    flex: none;
    order: 0;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%
}

.c-tertiaryGlassCard__subtitle {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: 154%
}

.c-tertiaryGlassCard__viewMore {
    padding-top: 6px
}

.c-tertiaryGlassCard__viewMore a {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 154%;
    position: relative
}

@media (hover:hover) {
    .c-tertiaryGlassCard__viewMore a:hover:after {
        transform-origin: 100%;
        transform: scaleX(0)
    }
}

.c-tertiaryGlassCard__viewMore a:after {
    content: "";
    transform-origin: 0;
    background: var(--color-text);
    width: 100%;
    height: 1px;
    transition: transform .35s cubic-bezier(.33, 1, .68, 1);
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0
}

.c-tertiaryGlassCard__tag {
    letter-spacing: .02em;
    width: fit-content;
    color: var(--color-gray-900);
    border: 1px solid var(--color-gray-900);
    border-radius: 5px;
    justify-content: center;
    align-items: center;
    padding: 2px 5px 3px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    display: flex;
    position: absolute;
    bottom: 0;
    right: 0
}

@media screen and (max-width:767px) {
    .c-tertiaryGlassCard__tag {
        border-radius: 2px;
        width: 100%;
        margin-top: 12px;
        position: relative;
        bottom: auto;
        right: auto
    }
}

.c-primarySectionCard__imageItem {
    width: 100%;
    height: 100%
}

.c-primarySectionCard__imageItem img {
    width: 100%;
    height: auto
}

.c-primarySectionCard__content {
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 6px;
    display: flex
}

@media screen and (max-width:767px) {
    .c-primarySectionCard__content {
        padding-top: 8px;
        display: block
    }
}

.c-primarySectionCard__content.Block {
    display: block
}

.c-primarySectionCard__title {
    letter-spacing: -.01em;
    color: var(--color-black);
    font-family: ivybodoni-condensed, sans-serif;
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%
}

@media screen and (max-width:767px) {
    .c-primarySectionCard__title {
        font-size: 2.6875rem
    }
}

.c-primarySectionCard__title.Large {
    font-size: 2.8125rem
}

@media screen and (max-width:767px) {
    .c-primarySectionCard__title.Large {
        font-size: 2.6875rem
    }

    .c-primarySectionCard__subList {
        padding-top: 10px
    }
}

.c-primarySectionCard__subList.Block {
    padding-top: 7px
}

@media screen and (max-width:767px) {
    .c-primarySectionCard__subList.Block {
        padding-top: 14px
    }
}

.c-primarySectionCard__subListItem {
    text-align: right;
    letter-spacing: .02em;
    color: var(--color-text);
    padding-top: 2px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 140%
}

.c-primarySectionCard__subListItem.Large {
    font-size: .875rem
}

.c-primaryLensCard {
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 36px;
    scroll-margin-top: 2.25rem;
    display: flex
}

@media screen and (max-width:767px) {
    .c-primaryLensCard {
        grid-template-columns: 1fr 105px;
        gap: 0 22px;
        scroll-margin-top: 1.375rem;
        display: grid
    }
}

.c-primaryLensCard__contentTitle {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.3125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%;
    transform: translateY(-.3rem)
}

@media screen and (max-width:767px) {
    .c-primaryLensCard__contentTitle {
        letter-spacing: .2em;
        font-size: 1.4375rem;
        line-height: 111%;
        transform: translateY(-.1rem)
    }
}

.c-primaryLensCard__contentRead {
    letter-spacing: .02em;
    color: var(--color-text);
    padding-top: 15px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 164%
}

.c-primaryLensCard__contentButton {
    padding-top: 20px
}

@media screen and (max-width:767px) {
    .c-primaryLensCard__contentButton {
        padding-top: 10px;
        display: none
    }
}

.c-primaryLensCard__contentButtonSP {
    display: none
}

@media screen and (max-width:767px) {
    .c-primaryLensCard__contentButtonSP {
        grid-column: 1/-1;
        width: 100%;
        margin-top: 28px;
        display: block
    }

    .c-primaryLensCard__contentButtonSP .c-primaryButton {
        width: 246px;
        margin-left: auto;
        margin-right: auto;
        display: block
    }
}

.c-primaryLensCard__image {
    border-radius: 5px;
    flex-shrink: 0;
    width: 187px;
    overflow: hidden
}

@media screen and (max-width:767px) {
    .c-primaryLensCard__image {
        aspect-ratio: 105/99;
        width: 105px
    }

    .c-primaryLensCard__image img {
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100% !important
    }
}

.c-primaryLensCard__image img {
    width: 100%;
    height: auto
}

.c-pspPlanCard {
    border: 1px solid var(--color-black);
    background: #f6f4a2;
    border-radius: 7px
}

.c-pspPlanCard__point {
    text-align: center;
    letter-spacing: .05em;
    width: 100%;
    color: var(--color-white);
    background: var(--color-black);
    border-radius: 5px;
    padding: 7px 0 6px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .9375rem;
    font-style: normal;
    font-weight: 600;
    display: block
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__point {
        padding: 5px 0 4px;
        font-size: .75rem
    }
}

.c-pspPlanCard__contentInner {
    padding: 14px 16px 17px
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__contentInner {
        grid-template-columns: 36% 1fr;
        align-items: center;
        gap: 0;
        padding: 14px;
        display: grid
    }
}

.c-pspPlanCard__image {
    border-radius: 3px;
    width: 100%;
    overflow: hidden
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__image {
        aspect-ratio: 1;
        flex-shrink: 0
    }
}

.c-pspPlanCard__image img {
    width: 100%;
    height: auto
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__image img {
        object-fit: cover;
        object-position: center;
        height: 100%
    }
}

.c-pspPlanCard__content {
    padding-top: 20px
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__content {
        padding-top: 0
    }
}

.c-pspPlanCard__contentTitle {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .9375rem;
    font-style: normal;
    font-weight: 600
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__contentTitle {
        letter-spacing: -.01em;
        font-size: 1rem;
        display: block
    }
}

.c-pspPlanCard__contentRead {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 2.0625rem;
    font-style: normal;
    font-weight: 500;
    line-height: 131%
}

@media screen and (max-width:767px) {
    .c-pspPlanCard__contentRead {
        padding-top: 4px;
        font-size: 1.875rem
    }
}

.c-pspHighSpecLensCard {
    border: 1px solid var(--color-black);
    background: linear-gradient(#e5e291, #e5e291), rgba(217, 217, 217, .01);
    border-radius: 4px
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard {
        border-radius: 4px
    }
}

.c-pspHighSpecLensCard__contentInner {
    padding: 23px 19px 26px
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard__contentInner {
        padding: 19px
    }
}

.c-pspHighSpecLensCard__image {
    border-radius: 5px;
    width: 100%;
    overflow: hidden
}

.c-pspHighSpecLensCard__image img {
    width: 100%;
    height: auto
}

.c-pspHighSpecLensCard__content {
    padding-top: 10px
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard__content {
        padding-top: 18px
    }
}

.c-pspHighSpecLensCard__read {
    text-align: center;
    letter-spacing: .05em;
    color: var(--color-white);
    background: var(--color-black);
    border-radius: 2px 2px 4px 4px;
    padding: 6px 0;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    display: block;
    position: relative
}

.c-pspHighSpecLensCard__title {
    text-align: center;
    letter-spacing: -.05em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%
}

.c-pspHighSpecLensCard__hr {
    border: none;
    border-bottom: dashed 1px var(--color-black);
    width: 100%;
    height: 1px;
    margin: 21px 0 16px
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard__hr {
        display: none
    }
}

.c-pspHighSpecLensCard__description {
    text-align: center;
    letter-spacing: -.01em;
    min-height: 2.62em;
    color: var(--color-text);
    justify-content: center;
    align-items: center;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 600;
    line-height: 131%;
    display: flex
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard__description {
        padding-top: 8px;
        font-size: .75rem
    }
}

.c-pspHighSpecLensCard__price {
    letter-spacing: -.01em;
    color: var(--color-text);
    justify-content: center;
    align-items: flex-end;
    gap: 0 9px;
    padding-top: 15px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.6875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    display: flex
}

@media screen and (max-width:767px) {
    .c-pspHighSpecLensCard__price {
        gap: 0 6px;
        padding-top: 11px
    }
}

.c-pspHighSpecLensCard__price i {
    letter-spacing: -.01em;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    transform: translateY(-.25rem)
}

.c-pspHighSpecLensCard__price small {
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    display: block;
    transform: translateY(-.1rem)
}

.c-secondaryGlassCardsWrapper {
    scroll-margin-top: 5rem
}

@media screen and (max-width:767px) {
    .c-secondaryGlassCardsWrapper {
        scroll-margin-top: 4rem
    }
}

.c-secondaryGlassCardsWrapper .c-secondaryGlassCardsBox {
    padding-top: 40px
}

.c-secondaryGlassCardsWrapper .c-secondaryGlassCardsBox.WithRecommends {
    padding-top: 23px
}

.c-secondaryGlassCardsBox .c-primaryCardBoxTitle {
    padding-bottom: 16px
}

.c-secondaryGlassCardsBox .c-secondaryGlassCardsBox__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 36px;
    display: grid
}

@media screen and (max-width:767px) {
    .c-secondaryGlassCardsBox .c-secondaryGlassCardsBox__inner {
        gap: 30px 10px
    }
}

.c-secondaryGlassCardsBox .c-secondaryGlassCardsBox__button {
    width: 246px;
    margin-top: 35px;
    margin-left: auto;
    margin-right: auto;
    display: block
}

@media screen and (max-width:767px) {
    .c-secondaryGlassCardsBox .c-secondaryGlassCardsBox__button {
        margin-top: 32px
    }
}

.c-primaryLensCardsWrapper .c-primaryLensCardsBox {
    padding-top: 47px
}

.c-primaryLensCardsBox .c-primaryLensCardsBox__inner {
    grid-template-columns: 1fr;
    gap: 86px 0;
    display: grid
}

@media screen and (max-width:767px) {
    .c-primaryLensCardsBox .c-primaryLensCardsBox__inner {
        gap: 64px 0
    }
}

@keyframes p-about-images-ticker {
    0% {
        transform: translate(0, 0)
    }

    to {
        transform: translate(-50%)
    }
}

.p-content {
    width: 100%
}

.p-topKv {
    z-index: 3;
    background: var(--color-white);
    width: 100%;
    height: 100svh;
    position: relative;
    overflow: hidden
}

@media screen and (max-width:767px) {
    .p-topKv {
        background: 0 0;
        height: 100%
    }
}

.p-topKv__mainTitle {
    z-index: 2;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: relative
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle {
        display: block
    }
}

.p-topKv__mainTitle__Wrapper {
    width: 26.6892%;
    position: relative
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__Wrapper {
        width: 100%;
        padding-top: 30px;
        padding-left: 7.94872%;
        padding-right: 7.94872%
    }
}

.p-topKv__mainTitle__Body {
    width: 100%;
    margin-top: 45px;
    margin-left: auto;
    margin-right: auto;
    transform: translate(-1.8%)
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__Body {
        width: 100%;
        margin-top: 0;
        padding-left: 7.94872%;
        padding-right: 7.94872%
    }
}

.p-topKv__mainTitle__Body.WithOutYear {
    margin-top: 0
}

.p-topKv__mainTitle__Body img {
    width: 100%;
    height: auto
}

.p-topKv__mainTitle__Year {
    width: 56px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    padding-top: 26px;
    display: block;
    position: relative
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__Year {
        padding-top: 20px
    }
}

.p-topKv__mainTitle__Year img {
    width: 100%;
    height: auto
}

.p-topKv__mainTitle__Reason {
    letter-spacing: .17em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: 114%;
    position: absolute;
    top: 20px;
    left: 36px
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__Reason {
        text-align: center;
        margin-top: 16px;
        font-size: .75rem;
        position: relative;
        top: auto;
        left: auto
    }
}

.p-topKv__mainTitle__logo {
    width: 47px;
    position: absolute;
    top: 18px;
    right: 27px
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__logo {
        z-index: 3;
        width: 28px;
        top: 15px;
        right: 15px
    }
}

.p-topKv__mainTitle__logo img {
    width: 100%;
    height: auto
}

.p-topKv__mainTitle__button {
    width: 278px;
    position: absolute;
    bottom: 12px;
    right: 12px
}

@media screen and (max-width:767px) {
    .p-topKv__mainTitle__button {
        display: none
    }
}

.p-topKv__title__head {
    justify-content: space-between;
    align-items: center;
    display: flex
}

.p-topKv__title__headLabel {
    letter-spacing: -.02em;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 1.79938rem;
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    transform: translate(.45rem)
}

@media screen and (max-width:767px) {
    .p-topKv__title__headLabel {
        font-size: .866213rem;
        transform: translate(.1rem)
    }
}

.p-topKv__title__headText {
    letter-spacing: .17em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    transform: translate(.5rem)
}

@media screen and (max-width:767px) {
    .p-topKv__title__headText {
        display: none
    }
}

.p-topKv__title__main {
    justify-content: space-between;
    align-items: center;
    display: flex;
    transform: translateY(-.6rem)
}

@media screen and (max-width:767px) {
    .p-topKv__title__main {
        display: block;
        transform: translateY(0)
    }
}

.p-topKv__title__main span {
    letter-spacing: -.02em;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 6.97784vw;
    font-style: normal;
    font-weight: 600;
    line-height: 100%
}

@media screen and (max-width:767px) {
    .p-topKv__title__main span {
        letter-spacing: -.02em;
        font-size: 3.33825rem;
        line-height: 84%;
        display: block
    }

    .p-topKv__title__main span:nth-child(2) {
        letter-spacing: -.002em;
        transform: translateY(-.25rem)
    }

    .p-topKv__title__main span:nth-child(3) {
        transform: translateY(-.5rem)
    }
}

.p-topKv__nav {
    justify-content: space-between;
    align-items: center;
    display: flex;
    transform: translateY(-.1rem)
}

@media screen and (max-width:767px) {
    .p-topKv__nav {
        z-index: 100;
        gap: 0 5px;
        width: 100%;
        padding-left: 3.33333%;
        padding-right: 3.33333%;
        position: fixed;
        bottom: 15px;
        left: 0;
        transform: translateY(0)
    }
}

.p-topKv__nav__button {
    margin-left: -4px
}

@media screen and (max-width:767px) {
    .p-topKv__nav__button {
        display: none
    }
}

.p-topKv__nav__logo {
    width: 47px;
    height: 54px;
    margin-right: 5px
}

@media screen and (max-width:767px) {
    .p-topKv__nav__logo {
        display: none
    }
}

.p-topKv__nav__logo img {
    width: 100%;
    height: auto
}

.p-topKv__logoSP {
    z-index: 1;
    width: 28px;
    height: auto;
    display: none;
    position: absolute;
    top: 16px;
    right: 16px
}

@media screen and (max-width:767px) {
    .p-topKv__logoSP {
        display: block
    }
}

.p-topKv__logoSP img {
    width: 100%;
    height: auto
}

.p-topKv__image {
    z-index: 1;
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (max-width:767px) {
    .p-topKv__image {
        z-index: 1;
        aspect-ratio: 390/435;
        position: relative
    }
}

.p-topKv__image img,
.p-topKv__image video {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.p-about {
    padding: 28px 0 103px
}

@media screen and (max-width:767px) {
    .p-about {
        padding: 54px 0 70px
    }
}

.p-about .c-primarySectionTitle {
    padding-left: 30px
}

@media screen and (max-width:767px) {
    .p-about .c-primarySectionTitle {
        padding-left: 3.58974%
    }
}

.p-about .p-about__images {
    padding-top: 64px;
    padding-left: 6.75%;
    padding-right: 6.75%
}

@media screen and (max-width:767px) {
    .p-about .p-about__images {
        padding-top: 48px;
        padding-left: 0;
        padding-right: 0
    }

    .p-about .p-about__images__ticker {
        overflow: hidden
    }

    .p-about .p-about__images__items {
        flex: 0 0 50%;
        width: 50%
    }
}

.p-about .p-about__images__ticker {
    width: 100%
}

.p-about .p-about__images__tickerTrack {
    width: 100%;
    display: flex
}

@media screen and (max-width:767px) {
    .p-about .p-about__images__tickerTrack {
        flex-wrap: nowrap;
        width: 350%;
        animation: 50s linear infinite p-about-images-ticker
    }
}

.p-about .p-about__images__inner {
    justify-content: space-between;
    align-items: center;
    display: flex
}

.p-about .p-about__images__items {
    width: 100%
}

.p-about .p-about__images__items:nth-child(2) {
    display: none
}

@media screen and (max-width:767px) {
    .p-about .p-about__images__items:nth-child(2) {
        display: block
    }
}

.p-about .p-about__images__items img {
    width: 100%;
    height: auto;
    display: block
}

@media screen and (prefers-reduced-motion:reduce) and (max-width:767px) {
    .p-about .p-about__images__tickerTrack {
        animation: none;
        transform: none
    }
}

.p-about .p-about__reason {
    grid-template-columns: 41.7% 1fr;
    justify-content: center;
    gap: 0 5%;
    padding-top: 58px;
    padding-left: 5%;
    display: grid
}

@media screen and (max-width:767px) {
    .p-about .p-about__reason {
        grid-template-columns: 1fr;
        gap: 0;
        padding-top: 42px;
        padding-left: 6.15385%;
        padding-right: 6.15385%
    }
}

.p-about .p-about__reason__title {
    letter-spacing: .22em;
    color: var(--color-text);
    justify-content: flex-end;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 141%;
    display: flex
}

@media screen and (max-width:767px) {
    .p-about .p-about__reason__title {
        justify-content: flex-start;
        font-size: 1.5625rem
    }
}

.p-about .p-about__reason__content {
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 164%
}

@media screen and (max-width:767px) {
    .p-about .p-about__reason__content {
        padding-top: 24px
    }
}

.p-about .p-about__reason__content span {
    display: block
}

.p-about .p-about__reason__content span:not(:first-child) {
    padding-top: 1.45rem
}

.p-about .p-about__pickUp {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-top: 68px;
    overflow: hidden
}

@media screen and (max-width:767px) {
    .p-about .p-about__pickUp {
        padding-top: 70px
    }
}

.p-about .p-about__pickUp__title {
    letter-spacing: .05em;
    color: var(--color-gray-900);
    padding-left: 0;
    padding-right: 80px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    width: fit-content !important
}

@media screen and (max-width:767px) {
    .p-about .p-about__pickUp__title {
        padding-left: 6.15385%;
        padding-right: 0
    }
}

.p-about .p-about__pickUp__wrap {
    padding-top: 30px
}

@media screen and (max-width:767px) {
    .p-about .p-about__pickUp__wrap {
        padding-top: 24px
    }
}

.p-about .p-about__pickUp__slider.is-centered .p-about__pickUp__inner {
    justify-content: center;
    gap: 0 18px
}

.p-about .p-about__pickUp .c-primaryGlassCard {
    flex-shrink: 0
}

.p-pickUp {
    padding: 40px 0 120px
}

@media screen and (max-width:767px) {
    .p-pickUp {
        padding: 20px 0 60px
    }
}

.p-pickUp .c-primarySectionTitle {
    padding-left: 28px
}

@media screen and (max-width:767px) {
    .p-pickUp .c-primarySectionTitle {
        padding-left: 4.61538%
    }
}

.p-pickUp .l-cardContent__thumbnail {
    will-change: transform
}

.p-pickUp .p-pickUp__column {
    border: 1px solid var(--color-black);
    margin-top: 70px
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column {
        margin-top: 50px
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnTitle {
    letter-spacing: .05em;
    width: 100%;
    color: var(--color-gray-900);
    border-bottom: 1px solid var(--color-black);
    padding: 12px 14px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .6875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 100%
}

.p-pickUp .p-pickUp__column .p-pickUp__columnContent {
    padding: 39px 32px 30px
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnContent {
        padding: 50px 18px 40px
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnHeading {
    justify-content: space-between;
    align-items: center;
    gap: 0 16px;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnHeading {
        gap: 0;
        display: block
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnHeading p {
    letter-spacing: .11em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
    line-height: 131%
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnHeading p {
        font-size: 1.3125rem
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnHeading i {
    flex-shrink: 0;
    width: 107px;
    display: block
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnHeading i {
        width: 82px;
        margin: 30px auto 0
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnHeading i img {
    width: 100%;
    height: auto
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProof {
    justify-content: flex-start;
    align-items: center;
    gap: 0 16px;
    margin-top: 50px;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnProof {
        margin-top: 30px
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProof dt {
    border: 1px solid var(--color-black);
    background: var(--color-black);
    border-radius: 50%;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    display: flex
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProof dt span {
    letter-spacing: .02em;
    color: var(--color-white);
    font-family: fot-cezanne-pron, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 500
}

.p-pickUp .p-pickUp__column dd p {
    text-align: center;
    letter-spacing: .02em;
    color: var(--color-text);
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: 154%
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column dd p {
        text-align: left
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProofRead {
    letter-spacing: .02em;
    color: var(--color-text);
    margin-top: 16px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 164%
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnProofRead {
        margin-top: 22px
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProofImages {
    justify-content: center;
    align-items: center;
    gap: 0 11px;
    margin-top: 18px;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pickUp .p-pickUp__column .p-pickUp__columnProofImages {
        gap: 0;
        margin-top: 30px;
        display: block
    }
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProofImages .p-pickUp__columnProofImagesItem:not(:first-child) {
    padding-top: 12px
}

.p-pickUp .p-pickUp__column .p-pickUp__columnProofImages .p-pickUp__columnProofImagesItem img {
    width: 100%
}

.p-pickUp .p-about__anchorNav {
    padding-top: 73px
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav {
        padding-top: 68px
    }
}

.p-pickUp .p-about__anchorNav__title {
    letter-spacing: .02em;
    color: var(--color-text);
    justify-content: center;
    align-items: center;
    gap: 0 12px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: 1.0625rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav__title {
        font-size: .9375rem
    }
}

.p-pickUp .p-about__anchorNav__title:before {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/icon_anchor_title_l.svg) 50% no-repeat;
    width: 14px;
    height: 20px;
    display: block
}

.p-pickUp .p-about__anchorNav__title:after {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/icon_anchor_title_r.svg) 50% no-repeat;
    width: 14px;
    height: 20px;
    display: block
}

.p-pickUp .p-about__anchorNav__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 0 8px;
    padding-top: 29px;
    display: grid
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav__list {
        grid-template-columns: repeat(2, 1fr);
        justify-content: center;
        gap: 22px 6px;
        padding-top: 36px
    }
}

.p-pickUp .p-about__anchorNav__listItem {
    position: relative
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav__listItem:last-child:nth-child(odd) {
        grid-column: 1/-1;
        justify-self: center;
        width: calc(50% - 3px)
    }
}

@media (hover:hover) {
    .p-pickUp .p-about__anchorNav__listItem:hover:after {
        transform-origin: 100%;
        transform: scaleX(0)
    }
}

.p-pickUp .p-about__anchorNav__listItem:after {
    content: "";
    transform-origin: 0;
    background: var(--color-gray-900);
    will-change: transform;
    width: 100%;
    height: 1px;
    transition: transform .35s cubic-bezier(.33, 1, .68, 1);
    position: absolute;
    bottom: 0;
    left: 0
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav__listItem:after {
        height: 2px
    }
}

.p-pickUp .p-about__anchorNav__listItem a {
    text-align: center;
    letter-spacing: .02em;
    width: 100%;
    height: 100%;
    color: var(--color-gray-900);
    padding-bottom: .5rem;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .9375rem;
    font-style: normal;
    font-weight: 500;
    line-height: 154%;
    display: block
}

@media screen and (max-width:767px) {
    .p-pickUp .p-about__anchorNav__listItem a {
        font-size: .875rem
    }
}

.p-lineUpWrapper .c-primarySectionTitle {
    padding-left: 30px
}

.p-lineUp {
    padding: 40px 0 120px
}

@media screen and (max-width:767px) {
    .p-lineUp {
        padding: 20px 0 60px
    }
}

.p-lineUp .c-primarySectionTitle {
    padding-left: 30px
}

.p-lineUp .p-lineUp__body .c-secondaryGlassCardsWrapper:not(:last-child) {
    padding-bottom: 80px
}

@media screen and (max-width:767px) {
    .p-lineUp .p-lineUp__body .c-secondaryGlassCardsWrapper:not(:last-child) {
        padding-bottom: 78px
    }
}

.p-lineUpC .c-primarySectionCard__image {
    display: grid
}

.p-lineUpC .c-primarySectionCard__imageItem {
    pointer-events: none;
    opacity: 0;
    grid-area: 1/1;
    transition: opacity 1s cubic-bezier(.58, .23, .32, .94);
    overflow: hidden;
    transform: scale(1.015)
}

.p-lineUpC .c-primarySectionCard__imageItem img {
    width: 100%;
    height: auto;
    transition: transform 2s linear;
    display: block;
    transform: scale(1.005)
}

.p-lineUpC .c-primarySectionCard__imageItem.is-active {
    opacity: 1
}

.p-lineUpC .c-primarySectionCard__imageItem.is-active img {
    transform: scale(1)
}

.p-lens {
    padding: 40px 0 120px
}

@media screen and (max-width:767px) {
    .p-lens {
        padding: 20px 0 103px
    }
}

.p-lens .c-primarySectionTitle {
    padding-left: 30px
}

@media screen and (min-width:1161px) {

    .p-pickUp .l-cardContent__thumbnail,
    .p-lineUp .l-cardContent__thumbnail,
    .p-lens .l-cardContent__thumbnail {
        opacity: 0;
        align-self: start;
        transition: opacity .3s cubic-bezier(.33, 1, .68, 1)
    }

    .p-pickUp .l-cardContent__thumbnail.is-pin-active,
    .p-lineUp .l-cardContent__thumbnail.is-pin-active,
    .p-lens .l-cardContent__thumbnail.is-pin-active {
        opacity: 1;
        transition: opacity 1s cubic-bezier(.33, 1, .68, 1)
    }
}

.p-pspKv {
    width: 100%;
    height: 100svh;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pspKv {
        height: 100%;
        padding-bottom: 110px
    }
}

.p-pspKv__inner {
    grid-template-columns: 1fr 1fr;
    width: 100%;
    height: 100%;
    display: grid;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pspKv__inner {
        grid-template-columns: 1fr
    }
}

.p-pspKv__content {
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding-top: 43px;
    padding-bottom: 45px;
    padding-left: 43px;
    display: flex;
    position: relative
}

@media screen and (max-width:767px) {
    .p-pspKv__content {
        padding-top: 20px;
        padding-bottom: 16px;
        padding-left: 17px;
        display: block
    }
}

.p-pspKv__contentTitle {
    transform: translateY(-4%)
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle {
        padding-top: 58px;
        transform: translateY(0)
    }
}

.p-pspKv__contentTitle small {
    letter-spacing: -.02em;
    text-transform: uppercase;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 2.26366rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    display: block
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle small {
        text-align: center;
        letter-spacing: -.02em;
        text-transform: uppercase;
        font-size: 1.55462rem
    }

    .p-pspKv__contentTitle h1 {
        transform: translateY(-.1rem)
    }
}

.p-pspKv__contentTitle h1 span {
    display: block
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle h1 span {
        text-align: center
    }
}

.p-pspKv__contentTitle h1 span:first-child {
    letter-spacing: -.02em;
    text-transform: uppercase;
    color: var(--color-black);
    font-family: ivybodoni, sans-serif;
    font-size: 4.22254rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle h1 span:first-child {
        font-size: 2.89994rem
    }
}

.p-pspKv__contentTitle h1 span:nth-child(2) {
    letter-spacing: -.02em;
    color: #000;
    font-family: ivybodoni, sans-serif;
    font-size: 4.82618rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    transform: translateY(-1rem)
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle h1 span:nth-child(2) {
        font-size: 3.3145rem;
        transform: translateY(-.6rem)
    }
}

.p-pspKv__contentTitle p {
    letter-spacing: .17em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    display: block
}

@media screen and (max-width:767px) {
    .p-pspKv__contentTitle p {
        text-align: center;
        letter-spacing: .17em;
        font-size: .9375rem
    }
}

.p-pspKv__contentLogo {
    width: 47px;
    position: absolute;
    bottom: 38px;
    left: 43px
}

@media screen and (max-width:767px) {
    .p-pspKv__contentLogo {
        top: 20px;
        right: 13px;
        left: unset;
        width: 28px;
        position: absolute
    }
}

.p-pspKv__contentLogo a {
    width: 100%;
    height: auto;
    display: block
}

.p-pspKv__contentLogo a img {
    width: 100%;
    height: auto
}

.p-pspKv__image {
    background: var(--color-white);
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden
}

@media screen and (max-width:767px) {
    .p-pspKv__image {
        aspect-ratio: 358/403;
        width: 92%;
        height: auto;
        margin-top: 43px;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        top: auto;
        right: auto;
        overflow: hidden
    }
}

.p-pspKv__imageSlide {
    z-index: 0;
    pointer-events: none;
    opacity: 0;
    will-change: transform;
    margin: 0;
    transition: opacity 4s cubic-bezier(.58, .03, .2, 1), transform 10s linear;
    position: absolute;
    inset: 0;
    transform: scale(1.04)
}

.p-pspKv__imageSlide.is-active {
    z-index: 1;
    pointer-events: auto;
    opacity: 1;
    transform: scale(1.02)
}

.p-pspKv__imageSlide.is-hidden {
    z-index: 0;
    transition: opacity 8s cubic-bezier(.58, .03, .2, 1), transform 4s linear;
    transform: scale(1)
}

@media (prefers-reduced-motion:reduce) {
    .p-pspKv__imageSlide {
        transition: none
    }
}

.p-pspKv__imageSlide img {
    object-position: center;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block
}

.p-pspPlan {
    padding-top: 65px;
    padding-bottom: 112px
}

@media screen and (max-width:767px) {
    .p-pspPlan {
        padding-top: 42px;
        padding-bottom: 78px
    }
}

.p-pspPlan .p-pspPlan__greatValue {
    padding-top: 83px
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__greatValue {
        padding-top: 48px
    }
}

.p-pspPlan .p-pspPlan__greatValueRead {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 500;
    line-height: 141%
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__greatValueRead {
        font-size: 1.25rem;
        line-height: 161%
    }
}

.p-pspPlan .p-pspPlan__greatValueRead span {
    display: inline-block;
    position: relative
}

.p-pspPlan .p-pspPlan__greatValueRead span:after {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/psp_plan_underline.webp) 0/auto 100% repeat-x;
    width: 100%;
    height: 5px;
    position: absolute;
    bottom: 2px;
    left: 0
}

.p-pspPlan .p-pspPlan__points {
    grid-template-columns: repeat(3, 1fr);
    gap: 0 13px;
    margin-top: 68px;
    padding-left: 13.7838%;
    padding-right: 13.7838%;
    display: grid
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .p-pspPlan .p-pspPlan__points {
        padding-left: 6.89189%;
        padding-right: 6.89189%
    }
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__points {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px 0;
        margin-top: 72px;
        padding-left: 4.10256%;
        padding-right: 4.10256%
    }
}

.p-pspPlan .p-pspPlan__setPrice {
    margin-top: 30px;
    padding-left: 26.2838%;
    padding-right: 26.2838%
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .p-pspPlan .p-pspPlan__setPrice {
        padding-left: 13.1081%;
        padding-right: 13.1081%
    }
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPrice {
        margin-top: 20px;
        padding-left: 4.10256%;
        padding-right: 4.10256%
    }
}

.p-pspPlan .p-pspPlan__setPriceContent {
    border: 1px solid var(--color-black);
    background: #f6f4a2;
    border-radius: 5px
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceContent {
        border-radius: 0 0 5px 5px
    }
}

.p-pspPlan .p-pspPlan__setPriceTitle {
    letter-spacing: .05em;
    color: var(--color-white);
    background: var(--color-black);
    border-radius: 4px;
    justify-content: center;
    align-items: center;
    padding-top: 14px;
    padding-bottom: 12px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.3125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 84%;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceTitle {
        text-align: center;
        letter-spacing: .05em;
        border-radius: 0;
        font-size: 1.125rem
    }
}

.p-pspPlan .p-pspPlan__setPriceImage img {
    width: 100%;
    height: auto
}

.p-pspPlan .p-pspPlan__setPriceList {
    padding-top: 90px
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceList {
        padding-top: 87px
    }
}

.p-pspPlan .p-pspPlan__setPriceListTitle {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 1.5625rem;
    font-style: normal;
    font-weight: 500;
    line-height: 161%
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListTitle {
        font-size: 1.4375rem
    }
}

.p-pspPlan .p-pspPlan__setPriceListTitle span {
    display: inline-block;
    position: relative
}

.p-pspPlan .p-pspPlan__setPriceListTitle span:after {
    content: "";
    background: url(/cms/contents/lp/sunglasses/prescription/img/psp_plan_underline.webp) 0/auto 100% repeat-x;
    width: 100%;
    height: 5px;
    position: absolute;
    bottom: 0;
    left: 0
}

.p-pspPlan .p-pspPlan__setPriceListImage {
    justify-content: center;
    align-items: center;
    margin-top: 40px;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListImage {
        margin-top: 32px;
        padding-left: 8.71795%;
        padding-right: 8.71795%;
        display: block
    }
}

.p-pspPlan .p-pspPlan__setPriceListImage i {
    width: 100%;
    max-width: 687px;
    display: block
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListImage i {
        max-width: 100%
    }
}

.p-pspPlan .p-pspPlan__setPriceListImage i:first-child {
    transform: translate(10px)
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListImage i:first-child {
        transform: translate(0)
    }
}

.p-pspPlan .p-pspPlan__setPriceListImage i:nth-child(2) {
    transform: translate(-10px)
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListImage i:nth-child(2) {
        transform: translate(0)translateY(-10%)
    }
}

.p-pspPlan .p-pspPlan__setPriceListImage img {
    width: 100%;
    height: auto
}

.p-pspPlan .p-pspPlan__setPriceListRead {
    text-align: center;
    letter-spacing: -.01em;
    color: #222;
    padding-top: 40px;
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 161%
}

@media screen and (max-width:767px) {
    .p-pspPlan .p-pspPlan__setPriceListRead {
        padding-top: 24px;
        font-size: .75rem
    }
}

.p-pspPlan__recommended {
    padding-top: 77px;
    padding-bottom: 128px
}

@media screen and (max-width:767px) {
    .p-pspPlan__recommended {
        padding-top: 65px;
        padding-bottom: 90px
    }
}

.p-pspPlan__recommended .p-pspPlan__recommendedList {
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
    padding-top: 33px;
    padding-left: 21.4865%;
    padding-right: 21.4865%;
    display: grid
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .p-pspPlan__recommended .p-pspPlan__recommendedList {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (max-width:767px) {
    .p-pspPlan__recommended .p-pspPlan__recommendedList {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 10px;
        padding-top: 36px;
        padding-left: 6.15385%;
        padding-right: 6.15385%
    }
}

.p-pspHighSpecLens {
    padding-top: 108px;
    padding-bottom: 273px
}

@media screen and (max-width:767px) {
    .p-pspHighSpecLens {
        padding-top: 67px;
        padding-bottom: 230px
    }
}

.p-pspHighSpecLens .c-secondarySectionTitleDescription {
    margin-top: -60px
}

@media screen and (max-width:767px) {
    .p-pspHighSpecLens .c-secondarySectionTitleDescription {
        margin-top: 55px
    }
}

.p-pspHighSpecLens__cardList {
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
    padding-top: 64px;
    padding-left: 19.0541%;
    padding-right: 19.0541%;
    display: grid
}

@media screen and (min-width:768px) and (max-width:1160px) {
    .p-pspHighSpecLens__cardList {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (max-width:767px) {
    .p-pspHighSpecLens__cardList {
        grid-template-columns: repeat(1, 1fr);
        gap: 22px 0;
        padding-top: 84px;
        padding-left: 6.15385%;
        padding-right: 6.15385%
    }
}

.p-pspForCustomers {
    padding-top: 0;
    padding-bottom: 60px
}

@media screen and (max-width:767px) {
    .p-pspForCustomers {
        padding-top: 0;
        padding-bottom: 60px
    }
}

.p-pspForCustomers__title {
    text-align: center;
    letter-spacing: .17em;
    color: var(--color-text);
    font-family: dnp-shuei-mincho-pr6, sans-serif;
    font-size: 2rem;
    font-style: normal;
    font-weight: 500;
    line-height: 134%;
    display: block
}

@media screen and (max-width:767px) {
    .p-pspForCustomers__title {
        text-align: center;
        letter-spacing: .17em;
        font-size: 1.375rem;
        line-height: 134%
    }
}

.p-pspForCustomers__buttons {
    justify-content: center;
    align-items: center;
    gap: 0 20px;
    padding-top: 36px;
    display: flex
}

@media screen and (max-width:767px) {
    .p-pspForCustomers__buttons {
        padding-top: 48px;
        padding-left: 6.15385%;
        padding-right: 6.15385%;
        display: block
    }
}

.p-pspForCustomers__buttons .c-primaryButton {
    width: 246px;
    display: block
}

@media screen and (max-width:767px) {
    .p-pspForCustomers__buttons .c-primaryButton {
        width: 100%
    }

    .p-pspForCustomers__buttons .c-primaryButton:first-child {
        margin-bottom: 9px
    }
}

.p-pspForCustomers__description {
    text-align: center;
    letter-spacing: -.01em;
    color: var(--color-text);
    padding-top: 27px;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 131%
}

@media screen and (max-width:767px) {
    .p-pspForCustomers__description {
        padding-top: 20px;
        font-size: .75rem
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.u-fade-in {
    animation: .8s ease-out forwards fadeIn
}

@media screen and (max-width:1023px) {
    .show-desktop {
        display: none !important
    }
}

@media screen and (min-width:1024px) {
    .no-desktop {
        display: none !important
    }
}

@media screen and (min-width:768px) {
    .show-mobile {
        display: none !important
    }
}

@media screen and (max-width:767px) {
    .no-mobile {
        display: none !important
    }
}

.show-tablet {
    display: none !important
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .show-tablet {
        display: block !important
    }

    .no-tablet {
        display: none !important
    }
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    z-index: 1;
    margin-left: auto;
    margin-right: auto;
    display: block;
    position: relative
}

.swiper {
    z-index: 1;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    list-style: none;
    display: block;
    position: relative;
    overflow: hidden
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    z-index: 1;
    box-sizing: initial;
    width: 100%;
    height: 100%;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    transition-property: transform;
    display: flex;
    position: relative
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    transition-property: transform;
    display: block;
    position: relative
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    scrollbar-width: none;
    -ms-overflow-style: none;
    overflow: auto
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-slides-offset-before);
    scroll-margin-inline-start: var(--swiper-slides-offset-before)
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child {
    margin-inline-end: var(--swiper-slides-offset-after)
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-slides-offset-before);
    scroll-margin-block-start: var(--swiper-slides-offset-before)
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child {
    margin-block-end: var(--swiper-slides-offset-after)
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    width: var(--swiper-centered-offset-after);
    height: 100%;
    min-height: 1px
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    z-index: 10;
    pointer-events: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(transparent, rgba(0, 0, 0, .5))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
    z-index: 10;
    box-sizing: border-box;
    transform-origin: 50%;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-top: 4px solid transparent;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    margin-top: -21px;
    margin-left: -21px;
    position: absolute;
    top: 50%;
    left: 50%
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: 1s linear infinite swiper-preloader-spin
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(1turn)
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    width: var(--swiper-virtual-size);
    height: 1px
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    z-index: 10;
    width: var(--swiper-navigation-size);
    height: var(--swiper-navigation-size);
    cursor: pointer;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
    justify-content: center;
    align-items: center;
    display: flex;
    position: absolute
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    cursor: auto;
    pointer-events: none;
    opacity: .35
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    cursor: auto;
    pointer-events: none;
    opacity: 0
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next svg,
.swiper-button-prev svg {
    transform-origin: 50%;
    pointer-events: none;
    object-fit: contain;
    fill: currentColor;
    width: 100%;
    height: 100%
}

.swiper-button-next ::slotted(svg) {
    transform-origin: 50%;
    pointer-events: none;
    object-fit: contain;
    fill: currentColor;
    width: 100%;
    height: 100%
}

.swiper-button-prev ::slotted(svg) {
    transform-origin: 50%;
    pointer-events: none;
    object-fit: contain;
    fill: currentColor;
    width: 100%;
    height: 100%
}

.swiper-button-lock {
    display: none
}

.swiper-button-next,
.swiper-button-prev {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2)
}

.swiper-button-prev {
    right: auto;
    left: var(--swiper-navigation-sides-offset, 4px)
}

.swiper-button-prev .swiper-navigation-icon {
    transform: rotate(180deg)
}

.swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(180deg)
}

.swiper-button-next {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto
}

.swiper-horizontal .swiper-button-next,
.swiper-horizontal .swiper-button-prev,
.swiper-horizontal~.swiper-button-next,
.swiper-horizontal~.swiper-button-prev {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    margin-left: 0
}

.swiper-horizontal.swiper-rtl .swiper-button-next,
.swiper-horizontal.swiper-rtl~.swiper-button-next,
.swiper-horizontal~.swiper-button-prev,
.swiper-horizontal .swiper-button-prev {
    right: auto;
    left: var(--swiper-navigation-sides-offset, 4px)
}

.swiper-horizontal.swiper-rtl .swiper-button-prev,
.swiper-horizontal.swiper-rtl~.swiper-button-prev,
.swiper-horizontal~.swiper-button-next,
.swiper-horizontal .swiper-button-next {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto
}

.swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl~.swiper-button-next .swiper-navigation-icon,
.swiper-horizontal~.swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal .swiper-button-prev .swiper-navigation-icon {
    transform: rotate(180deg)
}

.swiper-horizontal.swiper-rtl .swiper-button-next ::slotted(.swiper-navigation-icon) {
    transform: rotate(180deg)
}

.swiper-horizontal.swiper-rtl~.swiper-button-next ::slotted(.swiper-navigation-icon) {
    transform: rotate(180deg)
}

.swiper-horizontal~.swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(180deg)
}

.swiper-horizontal .swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(180deg)
}

.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl~.swiper-button-prev .swiper-navigation-icon {
    transform: rotate(0)
}

.swiper-horizontal.swiper-rtl .swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(0)
}

.swiper-horizontal.swiper-rtl~.swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(0)
}

.swiper-vertical .swiper-button-next,
.swiper-vertical .swiper-button-prev,
.swiper-vertical~.swiper-button-next,
.swiper-vertical~.swiper-button-prev {
    right: auto;
    left: var(--swiper-navigation-top-offset, 50%);
    margin-top: 0;
    margin-left: calc(0px - var(--swiper-navigation-size) / 2)
}

.swiper-vertical .swiper-button-prev,
.swiper-vertical~.swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto
}

.swiper-vertical .swiper-button-prev .swiper-navigation-icon,
.swiper-vertical~.swiper-button-prev .swiper-navigation-icon {
    transform: rotate(-90deg)
}

.swiper-vertical .swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(-90deg)
}

.swiper-vertical~.swiper-button-prev ::slotted(.swiper-navigation-icon) {
    transform: rotate(-90deg)
}

.swiper-vertical .swiper-button-next,
.swiper-vertical~.swiper-button-next {
    top: auto;
    bottom: var(--swiper-navigation-sides-offset, 4px)
}

.swiper-vertical .swiper-button-next .swiper-navigation-icon,
.swiper-vertical~.swiper-button-next .swiper-navigation-icon {
    transform: rotate(90deg)
}

.swiper-vertical .swiper-button-next ::slotted(.swiper-navigation-icon) {
    transform: rotate(90deg)
}

.swiper-vertical~.swiper-button-next ::slotted(.swiper-navigation-icon) {
    transform: rotate(90deg)
}

.swiper-pagination {
    z-index: 10;
    text-align: center;
    transition: opacity .3s;
    position: absolute;
    transform: translateZ(0)
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination.swiper-pagination-disabled,
.swiper-pagination-disabled>.swiper-pagination {
    display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    top: var(--swiper-pagination-top, auto);
    bottom: var(--swiper-pagination-bottom, 8px);
    width: 100%;
    left: 0
}

.swiper-pagination-bullets-dynamic {
    font-size: 0;
    overflow: hidden
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    position: relative;
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2);
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    display: inline-block
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    top: 50%;
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    transform: translateY(-50%)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    width: 8px;
    top: 50%;
    transform: translateY(-50%)
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, top .2s;
    display: inline-block
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    white-space: nowrap;
    left: 50%;
    transform: translate(-50%)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: 0 0;
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(0)
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: 100% 0
}

.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    top: 0;
    left: 0
}

.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    top: 0;
    left: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1));
    touch-action: none;
    position: relative
}

.swiper-scrollbar.swiper-scrollbar-disabled,
.swiper-scrollbar-disabled>.swiper-scrollbar {
    display: none !important
}

.swiper-scrollbar.swiper-scrollbar-horizontal,
.swiper-horizontal>.swiper-scrollbar {
    z-index: 50;
    top: var(--swiper-scrollbar-top, auto);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    left: var(--swiper-scrollbar-sides-offset, 1%);
    width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
    height: var(--swiper-scrollbar-size, 4px);
    position: absolute
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    z-index: 50;
    top: var(--swiper-scrollbar-sides-offset, 1%);
    right: var(--swiper-scrollbar-right, 4px);
    left: var(--swiper-scrollbar-left, auto);
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
    position: absolute
}

.swiper-scrollbar-drag {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    width: 100%;
    height: 100%;
    position: relative;
    top: 0;
    left: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    text-align: center;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    object-fit: contain;
    max-width: 100%;
    max-height: 100%
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none
}

.swiper .swiper-notification {
    z-index: -1000;
    pointer-events: none;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-free-mode>.swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-flow: column wrap
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    pointer-events: none;
    backface-visibility: hidden;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    visibility: visible;
    pointer-events: auto
}

.swiper-cube .swiper-cube-shadow {
    z-index: 0;
    opacity: .6;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    filter: blur(50px);
    background: #000;
    position: absolute;
    inset: 0
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    visibility: visible;
    pointer-events: auto
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    z-index: 1;
    pointer-events: none;
    backface-visibility: hidden
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    backface-visibility: hidden;
    transition-property: transform, opacity, height;
    overflow: hidden
}

.swiper.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: bottom;
    backface-visibility: hidden;
    overflow: hidden
}