/** Shopify CDN: Minification failed

Line 9952:12 Expected ":"
Line 9952:13 Expected identifier but found "0.5s"
Line 12975:28 Expected identifier but found "."

**/
@charset "UTF-8";
@import"https://fonts.googleapis.com/css?family=Montserrat:400,500,700&display=swap";
@import"https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap";

html,
body,
div,
span,
object,
iframe,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

body {
    line-height: 1
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

nav ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none
}

figure {
    margin: 0
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: 700
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0
}

input,
select {
    vertical-align: middle
}

@media (max-width: 767px) {

    input,
    textarea {
        font-size: 16px
    }
}

.row,
.itemList {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    margin: 0 -15px 30px;
    gap: 30px 0
}

@media (max-width: 1200px) {

    .row,
    .itemList {
        margin: 0 -7.5px 15px;
        gap: 15px 0
    }
}

.row:last-child,
.itemList:last-child {
    margin-bottom: 0
}

.row--center {
    justify-content: center
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0
}

[class*=col-],
.itemList__unit {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
    list-style: none
}

@media (max-width: 1200px) {

    [class*=col-],
    .itemList__unit {
        padding-right: 7.5px;
        padding-left: 7.5px
    }
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none
}

.col-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%
}

.col-2,
.itemList--6 .itemList__unit {
    flex: 0 0 16.666667%;
    max-width: 16.666667%
}

.col-1_5,
.itemList--5 .itemList__unit {
    flex: 0 0 20%;
    max-width: 20%
}

.col-3,
.itemList--4 .itemList__unit {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4,
.itemList--3 .itemList__unit {
    flex: 0 0 33.333333%;
    max-width: 33.333333%
}

.col-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%
}

.col-6,
.itemList--2 .itemList__unit {
    flex: 0 0 50%;
    max-width: 50%
}

.col-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%
}

.col-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%
}

.col-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%
}

.col-12,
.itemList--1 .itemList__unit {
    flex: 0 0 100%;
    max-width: 100%
}

.order-first {
    order: -1
}

.order-last {
    order: 13
}

.order-0 {
    order: 0
}

.order-1 {
    order: 1
}

.order-2 {
    order: 2
}

.order-3 {
    order: 3
}

.order-4 {
    order: 4
}

.order-5 {
    order: 5
}

.order-6 {
    order: 6
}

.order-7 {
    order: 7
}

.order-8 {
    order: 8
}

.order-9 {
    order: 9
}

.order-10 {
    order: 10
}

.order-11 {
    order: 11
}

.order-12 {
    order: 12
}

.offset-1 {
    margin-left: 8.333333%
}

.offset-2 {
    margin-left: 16.666667%
}

.offset-3 {
    margin-left: 25%
}

.offset-4 {
    margin-left: 33.333333%
}

.offset-5 {
    margin-left: 41.666667%
}

.offset-6 {
    margin-left: 50%
}

.offset-7 {
    margin-left: 58.333333%
}

.offset-8 {
    margin-left: 66.666667%
}

.offset-9 {
    margin-left: 75%
}

.offset-10 {
    margin-left: 83.333333%
}

.offset-11 {
    margin-left: 91.666667%
}

.col-pc {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%
}

.col-pc-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none
}

.col-pc-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%
}

.col-pc-1_4,
.itemList-pc--7 .itemList__unit {
    flex: 0 0 14.285714%;
    max-width: 14.285714%
}

.col-pc-2,
.itemList-pc--6 .itemList__unit {
    flex: 0 0 16.666667%;
    max-width: 16.666667%
}

.col-pc-1_5,
.itemList-pc--5 .itemList__unit {
    flex: 0 0 20%;
    max-width: 20%
}

.col-pc-3,
.itemList-pc--4 .itemList__unit {
    flex: 0 0 25%;
    max-width: 25%
}

.col-pc-4,
.itemList-pc--3 .itemList__unit {
    flex: 0 0 33.333333%;
    max-width: 33.333333%
}

.col-pc-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%
}

.col-pc-6,
.itemList-pc--2 .itemList__unit {
    flex: 0 0 50%;
    max-width: 50%
}

.col-pc-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%
}

.col-pc-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%
}

.col-pc-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-pc-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%
}

.col-pc-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%
}

.col-pc-12,
.itemList-pc--1 .itemList__unit {
    flex: 0 0 100%;
    max-width: 100%
}

.order-pc-first {
    order: -1
}

.order-pc-last {
    order: 13
}

.order-pc-0 {
    order: 0
}

.order-pc-1 {
    order: 1
}

.order-pc-2 {
    order: 2
}

.order-pc-3 {
    order: 3
}

.order-pc-4 {
    order: 4
}

.order-pc-5 {
    order: 5
}

.order-pc-6 {
    order: 6
}

.order-pc-7 {
    order: 7
}

.order-pc-8 {
    order: 8
}

.order-pc-9 {
    order: 9
}

.order-pc-10 {
    order: 10
}

.order-pc-11 {
    order: 11
}

.order-pc-12 {
    order: 12
}

.offset-pc-0 {
    margin-left: 0
}

.offset-pc-1 {
    margin-left: 8.333333%
}

.offset-pc-2 {
    margin-left: 16.666667%
}

.offset-pc-3 {
    margin-left: 25%
}

.offset-pc-4 {
    margin-left: 33.333333%
}

.offset-pc-5 {
    margin-left: 41.666667%
}

.offset-pc-6 {
    margin-left: 50%
}

.offset-pc-7 {
    margin-left: 58.333333%
}

.offset-pc-8 {
    margin-left: 66.666667%
}

.offset-pc-9 {
    margin-left: 75%
}

.offset-pc-10 {
    margin-left: 83.333333%
}

.offset-pc-11 {
    margin-left: 91.666667%
}

@media (max-width: 991px) {
    .col-tab {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-tab-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }

    .col-tab-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }

    .col-tab-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }

    .col-tab-3,
    .itemList-tab--4 .itemList__unit {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-tab-4,
    .itemList-tab--3 .itemList__unit {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .col-tab-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }

    .col-tab-6,
    .itemList-tab--2 .itemList__unit {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-tab-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }

    .col-tab-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }

    .col-tab-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-tab-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }

    .col-tab-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }

    .col-tab-12,
    .itemList-tab--1 .itemList__unit {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-tab-first {
        order: -1
    }

    .order-tab-last {
        order: 13
    }

    .order-tab-0 {
        order: 0
    }

    .order-tab-1 {
        order: 1
    }

    .order-tab-2 {
        order: 2
    }

    .order-tab-3 {
        order: 3
    }

    .order-tab-4 {
        order: 4
    }

    .order-tab-5 {
        order: 5
    }

    .order-tab-6 {
        order: 6
    }

    .order-tab-7 {
        order: 7
    }

    .order-tab-8 {
        order: 8
    }

    .order-tab-9 {
        order: 9
    }

    .order-tab-10 {
        order: 10
    }

    .order-tab-11 {
        order: 11
    }

    .order-tab-12 {
        order: 12
    }

    .offset-tab-0 {
        margin-left: 0
    }

    .offset-tab-1 {
        margin-left: 8.333333%
    }

    .offset-tab-2 {
        margin-left: 16.666667%
    }

    .offset-tab-3 {
        margin-left: 25%
    }

    .offset-tab-4 {
        margin-left: 33.333333%
    }

    .offset-tab-5 {
        margin-left: 41.666667%
    }

    .offset-tab-6 {
        margin-left: 50%
    }

    .offset-tab-7 {
        margin-left: 58.333333%
    }

    .offset-tab-8 {
        margin-left: 66.666667%
    }

    .offset-tab-9 {
        margin-left: 75%
    }

    .offset-tab-10 {
        margin-left: 83.333333%
    }

    .offset-tab-11 {
        margin-left: 91.666667%
    }
}

@media (max-width: 767px) {
    .col-sp {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-sp-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }

    .col-sp-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }

    .col-sp-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }

    .col-sp-3,
    .itemList-sp--4 .itemList__unit {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sp-4,
    .itemList-sp--3 .itemList__unit {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .col-sp-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }

    .col-sp-6,
    .itemList-sp--2 .itemList__unit {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sp-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }

    .col-sp-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }

    .col-sp-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sp-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }

    .col-sp-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }

    .col-sp-12,
    .itemList-sp--1 .itemList__unit {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sp-first {
        order: -1
    }

    .order-sp-last {
        order: 13
    }

    .order-sp-0 {
        order: 0
    }

    .order-sp-1 {
        order: 1
    }

    .order-sp-2 {
        order: 2
    }

    .order-sp-3 {
        order: 3
    }

    .order-sp-4 {
        order: 4
    }

    .order-sp-5 {
        order: 5
    }

    .order-sp-6 {
        order: 6
    }

    .order-sp-7 {
        order: 7
    }

    .order-sp-8 {
        order: 8
    }

    .order-sp-9 {
        order: 9
    }

    .order-sp-10 {
        order: 10
    }

    .order-sp-11 {
        order: 11
    }

    .order-sp-12 {
        order: 12
    }

    .offset-sp-0 {
        margin-left: 0
    }

    .offset-sp-1 {
        margin-left: 8.333333%
    }

    .offset-sp-2 {
        margin-left: 16.666667%
    }

    .offset-sp-3 {
        margin-left: 25%
    }

    .offset-sp-4 {
        margin-left: 33.333333%
    }

    .offset-sp-5 {
        margin-left: 41.666667%
    }

    .offset-sp-6 {
        margin-left: 50%
    }

    .offset-sp-7 {
        margin-left: 58.333333%
    }

    .offset-sp-8 {
        margin-left: 66.666667%
    }

    .offset-sp-9 {
        margin-left: 75%
    }

    .offset-sp-10 {
        margin-left: 83.333333%
    }

    .offset-sp-11 {
        margin-left: 91.666667%
    }

    .itemList-sp--3,
    .itemList.itemList--typeC,
    .itemList.itemList--typeD {
        margin-left: -5px;
        margin-right: -5px
    }

    .itemList-sp--3 .itemList__unit,
    .itemList.itemList--typeC .itemList__unit,
    .itemList.itemList--typeD .itemList__unit {
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 10px
    }

    .itemList-sp--3 .itemList__unit p,
    .itemList.itemList--typeC .itemList__unit p,
    .itemList.itemList--typeD .itemList__unit p {
        font-size: 12px;
        line-height: 20px
    }
}

@media (max-width: 479px) {
    .col-sp2 {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-sp2-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: none
    }

    .col-sp2-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%
    }

    .col-sp2-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%
    }

    .col-sp2-3,
    .itemList-sp2--4 .itemList__unit {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-sp2-4,
    .itemList-sp2--3 .itemList__unit {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .col-sp2-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%
    }

    .col-sp2-6,
    .itemList-sp2--2 .itemList__unit {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-sp2-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }

    .col-sp2-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }

    .col-sp2-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-sp2-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }

    .col-sp2-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%
    }

    .col-sp2-12,
    .itemList-sp2--1 .itemList__unit {
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-sp2-first {
        order: -1
    }

    .order-sp2-last {
        order: 13
    }

    .order-sp2-0 {
        order: 0
    }

    .order-sp2-1 {
        order: 1
    }

    .order-sp2-2 {
        order: 2
    }

    .order-sp2-3 {
        order: 3
    }

    .order-sp2-4 {
        order: 4
    }

    .order-sp2-5 {
        order: 5
    }

    .order-sp2-6 {
        order: 6
    }

    .order-sp2-7 {
        order: 7
    }

    .order-sp2-8 {
        order: 8
    }

    .order-sp2-9 {
        order: 9
    }

    .order-sp2-10 {
        order: 10
    }

    .order-sp2-11 {
        order: 11
    }

    .order-sp2-12 {
        order: 12
    }

    .offset-sp2-0 {
        margin-left: 0
    }

    .offset-sp2-1 {
        margin-left: 8.333333%
    }

    .offset-sp2-2 {
        margin-left: 16.666667%
    }

    .offset-sp2-3 {
        margin-left: 25%
    }

    .offset-sp2-4 {
        margin-left: 33.333333%
    }

    .offset-sp2-5 {
        margin-left: 41.666667%
    }

    .offset-sp2-6 {
        margin-left: 50%
    }

    .offset-sp2-7 {
        margin-left: 58.333333%
    }

    .offset-sp2-8 {
        margin-left: 66.666667%
    }

    .offset-sp2-9 {
        margin-left: 75%
    }

    .offset-sp2-10 {
        margin-left: 83.333333%
    }

    .offset-sp2-11 {
        margin-left: 91.666667%
    }
}

:root {
    --primary-color: #5ca1ae;
    --primary-text: #5ca1ae;
    --secondary-color: #3d4744;
    --secondary-text: #3d4744;
    --cta-color: #5ca1ae;
    --cta-text: #ffffff
}

html {
    font-size: 10px;
    letter-spacing: .5px;
    scroll-padding-top: 120px
}

@media (max-width: 767px) {
    html {
        scroll-padding-top: 80px
    }
}

*,
*:before,
*:after {
    box-sizing: border-box
}

small {
    font-size: 12px
}

body {
    font-family: Zen Kaku Gothic New, \6e38\30b4\30b7\30c3\30af, YuGothic, \30d2\30e9\30ae\30ce\89d2\30b4 Pro, Hiragino Kaku Gothic Pro, \30e1\30a4\30ea\30aa, Meiryo, Osaka, \ff2d\ff33 \ff30\30b4\30b7\30c3\30af, MS PGothic, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
    font-size: 14px;
    color: #000;
    min-width: inherit;
    letter-spacing: .05em;
    background: #fff;
    font-weight: 500
}

pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow: auto
}

input,
textarea,
select,
button,
pre {
    font-family: Zen Kaku Gothic New, \6e38\30b4\30b7\30c3\30af, YuGothic, \30d2\30e9\30ae\30ce\89d2\30b4 Pro, Hiragino Kaku Gothic Pro, \30e1\30a4\30ea\30aa, Meiryo, Osaka, \ff2d\ff33 \ff30\30b4\30b7\30c3\30af, MS PGothic, sans-serif;
    color: #000
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible,
button:focus-visible,
pre:focus-visible {
    outline: none
}

strong {
    font-weight: 500
}

figure {
    text-align: center;
    margin: 0
}

figure img {
    max-width: 100%
}

video {
    max-width: 100%
}

main {
    display: block;
    width: 100%;
    position: relative
}

section {
    display: block;
    width: 100%;
    margin-bottom: 100px
}

@media (max-width: 767px) {
    section {
        margin-bottom: 32px
    }
}

p {
    display: block;
    width: 100%;
    margin-bottom: 24px;
    font-feature-settings: "palt";
    font-size: 14px;
    line-height: 24px
}

p:last-child {
    margin-bottom: 0
}

@media (max-width: 767px) {
    p {
        font-size: 14px
    }
}

hr {
    border-color: #dfdfdf
}

a,
a:visited {
    color: #000;
    text-decoration: none
}

a:hover,
a:focus {
    text-decoration: none
}

a[href^="tel:"] {
    color: #000;
    text-decoration: none
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 0 20px;
    max-width: 100%
}

@media (min-width: 1200px) {
    .container {
        padding: 0;
        max-width: 1200px
    }
}

@media (min-width: 1200px) {

    .container.pcFull,
    .hdrInner.pcFull {
        max-width: 100%;
        padding: 0 30px
    }
}

.noHiddenContainer {
    overflow: hidden
}

.noHiddenContainer .container,
.noHiddenContainer .slick-list {
    overflow: visible
}

.container--narrow {
    width: 800px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto
}

.row img {
    max-width: 100%
}

i.material-icons {
    font-size: 24px
}

@media (max-width: 991px) {
    .pcOnly {
        display: none !important
    }
}

@media (min-width: 992px) {
    .spOnly {
        display: none !important
    }
}

#container:not(.topPage) {
    max-width: 1200px;
    margin: auto
}

@media (max-width: 1200px) and (min-width: 992px) {
    #container:not(.topPage) {
        padding: 0 20px
    }

    #container #side {
        display: none !important
    }
}

@media (max-width: 991px) {
    #container #main {
        width: 100% !important
    }

    #container #side {
        display: none !important
    }
}

@media (max-width: 1200px) {
    #container {
        max-width: 100% !important
    }
}

#side {
    display: none
}

#main {
    float: none
}
@media screen and (min-width: 750px) {
 .page-width{
    max-width: 100%;
    width: 1260px;
  }
}
#container:not(.topPage) {
    width: 1200px;
    margin-left: auto;
    margin-right: auto
}

#container.topPage #main {
    width: 100%;
    padding: 0
}

#container:after {
    content: "";
    display: table;
    clear: both
}

.highlight {
    background: #f2f2f2;
    color: #000;
    padding: 100px 0
}

@media (max-width: 767px) {
    .highlight {
        padding: 32px 0
    }
}

.reverse.row {
    flex-direction: row-reverse
}

.text-center,
.text--center {
    text-align: center !important
}

.text--right {
    text-align: right !important
}

.text--left {
    text-align: left !important
}

h2.text--right span,
h2.text--right small {
    text-align: right !important
}

h2.text--left span,
h2.text--left small {
    text-align: left !important
}

@media screen and (min-width: 768px) {
    .pc--text--center {
        text-align: center
    }

    .pc--text--right {
        text-align: right
    }

    .pc--text--left {
        text-align: left !important
    }
}

@media screen and (max-width: 767px) {
    .sp--text--center {
        text-align: center !important
    }

    .sp--text--right {
        text-align: right !important
    }

    .sp--text--left {
        text-align: left !important
    }
}

.text--white {
    color: #fff !important
}

.text--xxxlarge {
    font-size: 32px
}

.text--xxlarge {
    font-size: 24px
}

.text--xlarge {
    font-size: 18px
}

.text--large {
    font-size: 16px
}

.text--small {
    font-size: 12px
}

.text--xsmall {
    font-size: 10px
}

@media screen and (max-width: 767px) {
    .text--xxxlarge {
        font-size: 24px
    }

    .text--xxlarge {
        font-size: 20px
    }
}

.text--primary {
    color: #5ca1ae !important
}

.text--secondary {
    color: #3d4744 !important
}

@media screen and (min-width: 992px) {
    .text--verticalPC {
        text-orientation: upright;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl
    }

    .text--verticalPC h2,
    .text--verticalPC h3,
    .text--verticalPC p {
        margin-bottom: 0;
        margin-left: 30px;
        line-height: 2;
        letter-spacing: .15em
    }

    .text--verticalPC h2:last-child,
    .text--verticalPC h3:last-child,
    .text--verticalPC p:last-child {
        margin-left: 0
    }

    .text--verticalPC h2 {
        letter-spacing: .2em
    }
}

.bg--primary {
    background: #5ca1ae !important;
    color: #fff !important
}

.bg--primary h2,
.bg--primary h3,
.bg--primary p {
    color: #fff
}

.bg--secondary {
    background: #3d4744 !important;
    color: #fff !important
}

.bg--secondary h2,
.bg--secondary h3,
.bg--secondary p {
    color: #fff
}

.bg--highlight {
    background: #f2f2f2 !important
}

.bg--white {
    background: #fff !important
}

.text--black {
    color: #000 !important
}

.mincho,
.text--serif {
    font-family: "Noto Serif JP", \6e38\660e\671d\4f53, Yu Mincho, YuMincho, \30d2\30e9\30ae\30ce\660e\671d Pro, Hiragino Mincho Pro, MS P\660e\671d, MS PMincho, serif !important
}

.flex-center,
.iconNav__cart .cartAmount {
    display: flex;
    align-items: center;
    justify-content: center
}

.flex-center .flex-center__inner,
.iconNav__cart .cartAmount .flex-center__inner {
    display: block;
    width: 100%
}

.alignCenter,
.newsList li,
[class*=iconButton],
a[class*=iconButton],
.newsList--typeB,
.tab--typeA .tabSwitch li,
.hdr--typeE .hdrMiddle__middle,
.hdr--typeE .hdrBottom .hdrInner,
.telAndTime>div {
    display: flex;
    align-items: center
}

.alignCenter__inner {
    max-width: 100%;
    flex: 0 0 100%
}

.mb0 {
    margin-bottom: 0 !important
}

.mb15 {
    margin-bottom: 15px !important
}

.mb30 {
    margin-bottom: 30px !important
}

.mb40,
.mb50 {
    margin-bottom: 40px !important
}

.mb60 {
    margin-bottom: 60px !important
}

.mb80 {
    margin-bottom: 80px !important
}

.mb100 {
    margin-bottom: 100px !important
}

.mt0 {
    margin-top: 0 !important
}

.mt15,
.mt20 {
    margin-top: 15px !important
}

.mt30 {
    margin-top: 30px !important
}

.mt40 {
    margin-top: 40px !important
}

.dnone {
    display: none
}

.p0 {
    padding: 0
}

.iframeWrap {
    padding-top: 56.25%;
    position: relative
}

.iframeWrap iframe {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2
}

.wp__memberOnly,
.wp__guestOnly {
    display: none !important
}

#side img {
    max-width: 100%
}

#side .hasChildren>ul,
#side .hasChildren--click>ul {
    display: none
}

#side .hasChildren>ul li,
#side .hasChildren--click>ul li {
    background: #f2f2f2;
    padding: 0 0 0 12px
}

#side .hasChildren>ul li:last-child,
#side .hasChildren--click>ul li:last-child {
    border-bottom: 0
}

#side .hasChildren>a:after {
    transform: rotate(135deg) translateY(-50%)
}

#side .hasChildren>a.open:after {
    transform: rotate(-45deg) translateY(-50%)
}

#side .hasChildren>a:hover:after {
    right: 15px;
    top: calc(50% + 3px)
}

#side .snsNav {
    justify-content: center
}

.side__search {
    margin-bottom: 30px
}

.side__search .searchForm__inner {
    width: 100%
}

.sideTitle {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    padding: 12px 0;
    margin-bottom: 0
}

.side__bnr {
    display: block;
    margin-bottom: 20px
}

.side__bnr a {
    display: block
}

.side__bnr .row {
    margin-left: -7px;
    margin-right: -7px
}

.side__bnr [class*=col] {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px
}

.side__cateNav {
    margin-bottom: 30px
}

.side__cateNav ul {
    list-style: none;
    border-top: 1px solid #dfdfdf
}

.side__cateNav ul li {
    list-style: none;
    border-bottom: 1px solid #dfdfdf
}

.side__cateNav ul li a {
    display: block;
    line-height: 24px;
    padding: 12px
}

.side__cateNav ul li a:hover {
    background: #f2f2f2;
    color: #5ca1ae
}

.side__cateNav ul li a.withIcon {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 8px 20px 8px 10px
}

.side__cateNav ul li a.withIcon span {
    flex: 0 0 32px;
    height: 32px;
    overflow: hidden;
    border-radius: 50%;
    margin-right: 15px
}

.side__cateNav ul li a.withIcon span img {
    max-width: 100%
}

#side .hasChildren--click>h3,
#side .hasChildren--click>a,
.cateList .hasChildren--click>h3,
.cateList .hasChildren--click>a {
    position: relative;
    cursor: pointer
}

#side .hasChildren--click>h3:before,
#side .hasChildren--click>h3:after,
#side .hasChildren--click>a:before,
#side .hasChildren--click>a:after,
.cateList .hasChildren--click>h3:before,
.cateList .hasChildren--click>h3:after,
.cateList .hasChildren--click>a:before,
.cateList .hasChildren--click>a:after {
    width: 10px;
    height: 2px;
    transform: translateY(-50%);
    border: 0;
    right: 13px;
    background: #000;
    display: block;
    position: absolute;
    transition: .15s;
    top: 50%
}

#side .hasChildren--click>h3:after,
#side .hasChildren--click>a:after,
.cateList .hasChildren--click>h3:after,
.cateList .hasChildren--click>a:after {
    content: ""
}

#side .hasChildren--click>h3:before,
#side .hasChildren--click>a:before,
.cateList .hasChildren--click>h3:before,
.cateList .hasChildren--click>a:before {
    content: "";
    display: block;
    position: absolute;
    transition: .15s;
    top: 50%;
    transform: rotate(90deg) translateY(-50%);
    transform-origin: top center
}

#side .hasChildren--click>h3.open:before,
#side .hasChildren--click>a.open:before,
.cateList .hasChildren--click>h3.open:before,
.cateList .hasChildren--click>a.open:before {
    opacity: 0;
    transform: translateY(-50%)
}

#side .hasChildren--click>h3:hover:before,
#side .hasChildren--click>h3:hover:after,
#side .hasChildren--click>a:hover:before,
#side .hasChildren--click>a:hover:after,
.cateList .hasChildren--click>h3:hover:before,
.cateList .hasChildren--click>h3:hover:after,
.cateList .hasChildren--click>a:hover:before,
.cateList .hasChildren--click>a:hover:after {
    background: #5ca1ae;
    right: 13px !important
}

.side__txtBnr {
    text-align: center;
    padding: 10px 20px;
    display: block;
    border: 5px solid #5ca1ae
}

.side__txtBnr strong {
    font-size: 16px;
    display: block;
    line-height: 24px
}

.side__txtBnr small {
    font-size: 12px;
    display: block;
    line-height: 24px;
    color: #5ca1ae
}

.side__txtBnr:before {
    content: "";
    display: block;
    top: 50%;
    right: 9px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    background: #5ca1ae;
    transform: translateY(-50%);
    transition: .2s
}

.side__txtBnr:after {
    border-color: #fff !important
}

.side__txtBnr:hover:before {
    right: 6px;
    transition: .2s
}

.side__txtBnr--typeB {
    background: #5ca1ae;
    color: #fff
}

.side__txtBnr--typeB:before {
    background: #fff
}

.side__txtBnr--typeB:after {
    border-color: #5ca1ae !important
}

.side__txtBnr--typeB strong,
.side__txtBnr--typeB small {
    color: #fff
}

.side__cateNav .hasChildren--hover {
    position: relative
}

.side__cateNav .hasChildren--hover>ul {
    position: absolute;
    top: -1px;
    left: 100%;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    background-color: #fff;
    border: 1px solid #dfdfdf;
    box-shadow: 2px 2px 2px #00000040;
    width: 250px;
    padding: 10px
}

.side__cateNav .hasChildren--hover>ul>li {
    border-bottom: transparent
}

.side__cateNav .hasChildren--hover>ul>li.hasChildren--hover-img a:after {
    content: none !important
}

.side__cateNav .hasChildren--hover>ul>li>a {
    padding: 5px
}

.side__cateNav .hasChildren--hover>ul>li>a:hover {
    color: #5ca1ae;
    background-color: #fff
}

.side__cateNav .hasChildren--hover>ul>li>a:hover:after {
    border-top: 2px solid #5ca1ae;
    border-right: 2px solid #5ca1ae
}

.side__cateNav .hasChildren--hover:hover>ul {
    opacity: 1;
    visibility: visible
}

.side__cateNav+.side__cateNav {
    margin-top: 15px
}

#overlay {
    position: fixed;
    display: block;
    z-index: 9999998;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #00000040;
    opacity: 0;
    pointer-events: none;
    text-align: right;
    color: #000;
    padding: 20px;
    cursor: pointer;
    transition: .3s
}

#overlay i {
    font-size: 30px
}

#overlay.open {
    opacity: 1;
    pointer-events: all;
    transition: .3s
}

#drawer {
    position: fixed;
    display: block;
    z-index: 9999999;
    inset: 0 -88vw 0 auto;
    color: #fff;
    background: #5ca1ae;
    width: 88vw;
    opacity: 0;
    pointer-events: none;
    transition: .3s;
    overflow: scroll;
    overflow-x: hidden;
    overflow-y: scroll
}

#drawer.open {
    opacity: 1;
    transition: .3s;
    right: 0;
    pointer-events: all
}

#drawer .snsNav {
    margin: 25px 15px;
    justify-content: start
}

.drawer__search {
    padding: 20px;
    border-bottom: 1px solid #dfdfdf
}

.drawer__nav {
    padding: 20px 26px;
    list-style: none
}

.drawer__nav li {
    list-style: none;
    text-align: left
}

.drawer__nav li a {
    display: block;
    position: relative;
    line-height: 24px;
    padding: 13px 15px;
    font-weight: 500;
    color: #fff !important;
    border-bottom: 1px solid #81b9c1;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

.drawer__nav li a:after {
    content: none !important;
    right: 20px !important
}

.drawer__nav li a.drawerIcon {
    display: -ms-flex;
    display: flex;
    align-items: center
}

.drawer__nav li a.drawerIcon .drawerIcon__img {
    max-width: 40px;
    flex: 0 0 40px
}

.drawer__nav li a.drawerIcon .drawerIcon__img img {
    max-width: 100%
}

.drawer__nav li a.drawerIcon .drawerIcon__text {
    max-width: calc(100% - 40px);
    flex: 0 0 calc(100% - 40px);
    padding-left: 10px
}

.drawer__nav li a + ul {
    padding: 1em;
}
.drawer__nav li a + ul a{
      padding: 5px;
  border-bottom:none;
}

.drawer__nav li .dc--typeB {
    padding: 9px 0
}

.drawer__nav li .dc--typeB a {
    border-bottom: none;
    padding: 6px 20px
}

.drawer__nav li.deactive {
    pointer-events: none
}

.drawer__nav li.deactive a {
    color: #a9c1c6 !important
}

.drawer__nav li.deactive a:before,
.drawer__nav li.deactive a:after {
    color: #a9c1c6 !important;
    border-top: 1px solid #a9c1c6 !important;
    border-right: 1px solid #a9c1c6 !important
}

.drawer_bnr {
    padding: 20px 20px 0;
    display: block;
    text-align: center
}

.drawer_bnr img {
    max-width: 100%
}

.fNav__list .color_bg,
.drawer__nav .color_bg {
    background: #5ca1ae
}

.fNav__list li.hasChildren--click>a,
.drawer__nav li.hasChildren--click>a {
    font-weight: 500
}

.fNav__list li.hasChildren--click>a:before,
.fNav__list li.hasChildren--click>a:after,
.drawer__nav li.hasChildren--click>a:before,
.drawer__nav li.hasChildren--click>a:after {
    right: 20px !important;
    border: none;
    width: 1px !important;
    height: 12px !important;
    background: #fff;
    color: #fff;
    border-top: 1px solid #fff !important;
    border-right: 1px solid #fff !important
}

.fNav__list li.hasChildren--click>a:after,
.drawer__nav li.hasChildren--click>a:after {
    content: "" !important;
    transform: rotate(90deg) translateY(-50%) !important;
    transform-origin: top center !important
}

.fNav__list li.hasChildren--click>a:before,
.drawer__nav li.hasChildren--click>a:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: rotate(0) translateY(-50%);
    transform-origin: top center;
    transition: .15s
}

.fNav__list li.hasChildren--click>a.open,
.drawer__nav li.hasChildren--click>a.open {
    color: #fff
}

.fNav__list li.hasChildren--click>a.open:before,
.drawer__nav li.hasChildren--click>a.open:before {
    transform: rotate(90deg) translateY(-50%) !important
}

.fNav__list li.hasChildren--click>a.open:after,
.drawer__nav li.hasChildren--click>a.open:after {
    color: #fff !important
}

.fNav__list li a :after,
.drawer__nav li a :after {
    border-top: 1px solid #fff !important;
    border-right: 1px solid #fff !important
}

.drawer__accountText {
    padding: 15px 20px;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf
}

.drawer__accountText h2 {
    line-height: 1.6;
    font-size: 14px;
    margin-bottom: 0;
    color: #fff
}

.drawer__accountNav {
    list-style: none;
    display: -ms-flex;
    display: flex;
    flex-wrap: wrap
}

.drawer__accountNav li {
    list-style: none;
    max-width: 50%;
    flex: 0 0 50%
}

.drawer__accountNav li.drawer__accountNavFull {
    max-width: 100%;
    flex: 0 0 100%
}

.drawer__accountNav li a {
    background: #5ca1ae;
    border-bottom: 1px solid #dfdfdf;
    font-size: 12px;
    color: #fff;
    font-weight: 500;
    padding: 13px 15px;
    display: -ms-flex;
    display: flex;
    align-items: center
}

.drawer__accountNav li a:nth-child(odd) {
    border-right: 1px solid #dfdfdf
}

.drawer__accountNav li a img,
.drawer__accountNav li a i {
    display: inline-block;
    margin-right: 5px
}

.drawer__accountNav li a:after {
    content: none !important
}

.drawer__close {
    display: -ms-flex;
    display: flex;
    justify-content: end;
    align-items: center;
    padding: 16px 16px 0;
    background: #5ca1ae;
    color: #fff
}

.drawer__close .material-icons {
    font-size: 30px;
    color: #fff
}

body.open {
    overflow: hidden !important
}

.drawer__itemList {
    padding: 30px 15px 20px;
    border-bottom: 1px solid #dfdfdf
}

.drawer__itemList p {
    line-height: 1.25 !important
}

.drawer__itemList .itemList__unit {
    padding: 0 5px !important
}

.drawer__itemList .itemList__unit .itemWrap {
    padding: 0;
    border: none
}

.drawer__itemList .itemList__unit .itemWrap:after {
    content: none
}

.drawer__itemList .itemPrice small,
.drawer__itemList .itemPrice,
.drawer__itemList .itemName {
    font-size: 10px !important
}

.drawer__itemList .itemName {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.drawer__itemList h3 {
    margin-bottom: 15px;
    font-weight: 500
}

.hdrInner .searchForm {
    width: 260px
}

@media (max-width: 1199px) {
    .hdrInner .searchForm {
        width: auto
    }
}

#hdr:not(.tpl_type_index) {
    width: 100%;
    height: 60px;
    /* background: url(/cdn/shop/files/hdr_bg.jpg) repeat center center; */
}
#hdr:not(.tpl_type_index) .hdrMiddle.hdrMiddle--logoLeft.hdrFixed {
    background: url(/cdn/shop/files/hdr_bg.jpg) repeat center center;
}

@media (min-width: 768px) {
    #hdr:not(.tpl_type_index) {
        height: 80px
    }
}

#hdr.tpl_type_index {
    width: 100%;
    height: 60px
}

@media (min-width: 768px) {
    #hdr.tpl_type_index {
        height: 80px
    }
}

#hdr.tpl_type_index:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/cdn/shop/files/hdr_bg.jpg) repeat center center;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    z-index: -1
}

#hdr.tpl_type_index.scrolled:before {
    opacity: 1
}

#hdrLogo {
    font-size: 20px;
    margin-bottom: 0
}

#hdrLogo img {
    max-width: 100%;
    height: auto
}

@media (min-width: 768px) {
    #hdrLogo img {
        max-width: 207px
    }
}

.hdrTop.hdr--primaryBg,
.hdrBottom.hdr--primaryBg {
    background: #5ca1ae;
    color: #fff
}

.hdrTop.hdr--primaryBg a,
.hdrBottom.hdr--primaryBg a {
    color: #fff
}

.hdrTop.hdr--primaryBg a:after,
.hdrBottom.hdr--primaryBg a:after {
    border-color: #fff !important
}

.hdrTop.hdr--primaryBg a:hover,
.hdrBottom.hdr--primaryBg a:hover {
    color: #fff
}

.hdrTop.hdr--primaryBg .text--primary,
.hdrBottom.hdr--primaryBg .text--primary {
    color: #fff !important
}

.hdrTop.hdr--highlightBg,
.hdrBottom.hdr--highlightBg {
    background: #f2f2f2;
    color: #000
}

.hdrTop.hdr--highlightBg a,
.hdrBottom.hdr--highlightBg a {
    color: #000
}

.hdrTop.hdr--highlightBg a:after,
.hdrBottom.hdr--highlightBg a:after {
    border-color: #000 !important
}

.hdrTop.hdr--highlightBg a:hover,
.hdrBottom.hdr--highlightBg a:hover {
    color: #000
}

.hdrTop.hdr--secondaryBg,
.hdrBottom.hdr--secondaryBg {
    background: #3d4744;
    color: #fff
}

.hdrTop.hdr--secondaryBg a,
.hdrBottom.hdr--secondaryBg a {
    color: #fff
}

.hdrTop.hdr--secondaryBg a:after,
.hdrBottom.hdr--secondaryBg a:after {
    border-color: #fff !important
}

.hdrTop.hdr--secondaryBg a:hover,
.hdrBottom.hdr--secondaryBg a:hover {
    color: #fff
}

.hdrInner {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.text--center .hdrInfo {
    text-align: center
}

@media (min-width: 1200px) {
    .hdrInner {
        padding: 0 30px
    }

    .hdrInner a:hover {
        opacity: .8
    }
}

.hdrTop {
    background: #f2f2f2;
    text-align: center
}

@media (min-width: 1200px) {
    .hdrTop .hdrInner:not(.hdrInner--one)>* {
        max-width: 50%;
        flex: 0 0 50%
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .hdrTop .hdrInner:not(.hdrInner--one) .hdrInfo {
        max-width: calc(100% - 600px);
        flex: 0 0 calc(100% - 600px)
    }

    .hdrTop .hdrInner:not(.hdrInner--one) .exNav {
        max-width: 600px;
        flex: 0 0 600px
    }
}

@media (max-width: 1199px) {
    .hdrTop .hdrInner:not(.hdrInner--one) {
        padding: 0 20px
    }
}

.hdrTop .hdrInner:not(.hdrInner--one) .hdrInfo {
    text-align: left
}

.hdrTop .snsNav {
    justify-content: flex-end;
    height: 40px
}

.hdrTop .snsNav li:last-child {
    margin-right: 0
}

.hdrMiddle {
    position: relative;
    z-index: 999
}

.hdrMiddle .hdrInner {
    height: 80px
}

@media (max-width: 1199px) {
    .hdrMiddle .hdrInner {
        padding: 0 15px
    }
}
@media (max-width: 767px) {
    .hdrMiddle .hdrInner {
        height: 60px !important;
    }
}

.hdrMiddle.hdrMiddle--logoCenter .hdrInner {
    justify-content: space-between
}

.hdrMiddle.hdrMiddle--logoCenter .hdrInner>* {
    max-width: 33.333%;
    flex: 0 0 33.333%
}

.hdrMiddle.hdrMiddle--logoCenter .hdrInner #hdrLogo,
.hdrMiddle.hdrMiddle--logoCenter .hdrInner .hdrMiddle__center {
    text-align: center
}

.hdrMiddle.hdrMiddle--logoLeft .hdrInner {
    justify-content: space-between
}

.hdrMiddle.hdrMiddle--logoLeft .hdrMiddle__center {
    flex-grow: 2;
    padding: 0 40px
}

.hdrMiddle__right .iconNav ul {
    justify-content: flex-end
}

.hdrBottom .hdrInner {
    justify-content: space-between
}

@media (max-width: 1199px) {
    .hdrBottom .hdrInner {
        padding: 0 20px
    }
}

.hdrBottom--onlyNav .gNav {
    margin: auto;
    max-width: 100%;
    flex: 0 0 100%
}

.hdrBottom--onlyNav .gNav ul {
    justify-content: center
}

.hdrBottom--onlyNav .searchForm {
    width: 100% !important
}

@media (max-width: 991px) {
    .hdrBottom--onlyNav .searchForm {
        margin: 10px 20px
    }
}

.hdrBottom--seachWrap .hdrInner {
    display: block
}

.hdrBottom--seachWrap .hdrInner .searchForm {
    padding: 10px 0
}

.hdrBottom--seachWrap .hdrInner+.hdrInner {
    border-top: 1px solid #dfdfdf
}

.hdrMiddle__right--2 {
    display: flex;
    align-items: center
}

.hdrMiddle__right--2 .searchForm {
    width: 220px
}

.hdrSearch--toggle>span {
    cursor: pointer
}

.hdrSearch__wrap {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9999;
    padding: 30px;
    background: #fff;
    box-shadow: 0 3px 3px #00000040
}

.hdrSearch__wrap .searchForm {
    width: 100%;
    margin: 0;
    max-width: none
}

@media (max-width: 991px) {
    header .searchForm {
        width: 100% !important;
        margin: 10px 0
    }

    .hdrMiddle .hdrInfo,
    .exNav {
        display: none
    }

    .hdrTop .hdrInner .hdrInfo {
        text-align: center
    }

    #hdrLogo {
        max-width: 35vw
    }
}

@media (min-width: 1280px) {
    .hdrTop--radius {
        max-width: 1280px;
        margin: auto;
        border-radius: 0 0 80px 80px
    }
}

.hdrMiddle__right--2col {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.hdrMiddle__right--2col>*:not(:first-child) {
    margin-left: 40px
}

@media (min-width: 992px) {
    .hdrMiddle--leftUnit .hdrMiddle__center {
        display: flex;
        flex-grow: 3;
        padding: 0 30px;
        align-items: center
    }

    .hdrMiddle--leftUnit #hdrLogo {
        margin-right: 30px
    }

    .hdrMiddle--leftUnit .hdrMiddle__right {
        flex-basis: 75px;
        flex-grow: 1
    }
}

.hdrMiddle--leftUnit .gNav.gNav--typeB>ul>li a {
    display: flex
}

@media (max-width: 991px) {
    .hdrMiddle--leftUnit #hdrLogo {
        top: 50%;
        transform: translateY(-50%)
    }

    .hdrMiddle--leftUnit #hdrLogo.hdrLogo--spLeft {
        left: 75px;
        right: auto
    }
}

#hdr {
    position: fixed;
    z-index: 3;
    width: 100%
}

.hdrRight {
    display: flex;
    align-items: center;
    column-gap: 15px
}

@media (min-width: 992px) {
    .hdrRight {
        width: 100%
    }
}

.hdr--typeA .hdrBottom {
    background: #5ca1ae
}

.hdr--typeA .hdrBottom a,
.hdr--typeA .hdrBottom a:hover {
    color: #fff
}

.hdr--typeA .hdrBottom .hasChildren>a:after {
    border-color: #fff
}

.hdr--typeB .hdrTop {
    background: #5ca1ae;
    color: #fff
}

.hdr--typeB .hdrTop .text--primary {
    color: #fff !important
}

.hdr--typeB .hdrBottom {
    background: #f2f2f2
}

.hdr--typeD .hdrTop {
    background: #5ca1ae;
    color: #fff
}

.hdr--typeD .hdrTop .text--primary {
    color: #fff !important
}

.hdr--typeD .hdrMiddle .gNav>ul>li>a {
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.hdr--typeD .hdrMiddle .gNav>ul>li>a>* {
    max-width: 100%;
    flex: 0 0 100%
}

@media all and (-ms-high-contrast: none) {
    .hdr--typeD .hdrMiddle .gNav>ul>li>a {
        line-height: 1.4
    }

    .hdr--typeD .hdrMiddle .gNav>ul>li>a>* {
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

.hdr--typeD .hdrBottom {
    background: #f2f2f2
}

.hdr--typeD .hdrBottom li {
    list-style-type: none
}

.hdr--typeD .hdrBottom .hdrSearch--togglewrap {
    position: relative
}

.hdr--typeD .hdrBottom .hdrSearch--togglewrap .searchForm {
    margin: 0
}

.hdr--typeD .hdrBottom .hdrSearch--toggle {
    position: static;
    display: flex;
    align-items: center;
    margin-left: 0
}

.hdr--typeD .hdrBottom .hdrSearch--toggle span {
    display: block;
    text-align: center;
    background: #5ca1ae;
    color: #fff;
    width: 100%;
    padding: 10px
}

.hdr--typeE .hdrTop {
    background: #5ca1ae;
    color: #fff
}

.hdr--typeE .hdrTop p,
.hdr--typeE .hdrTop a {
    color: #fff
}

.hdr--typeE .hdrTop a:after {
    border-color: #fff !important
}

.hdr--typeE .hdrTop a:hover {
    color: #fff
}

.hdr--typeE .hdrMiddle__left {
    max-width: none;
    flex: 0 0 auto
}

.hdr--typeE .hdrMiddle__middle {
    max-width: none;
    flex: 2 0 auto;
    padding: 0 40px;
    justify-content: space-between
}

.hdr--typeE .hdrMiddle__right {
    max-width: none;
    flex: 0 0 auto
}

.hdr--typeE .hdrBottom {
    background: #f2f2f2
}

.hdr--typeE .hdrBottom .hdrInner {
    justify-content: space-between
}

.hdr--typeE .hdrBottom .hdrInner .gNav ul {
    justify-content: flex-start
}

.hdr--typeE .hdrBottom .hdrInner .searchForm {
    width: auto;
    max-width: 300px;
    flex: 0 0 300px
}

.hdrSearch_wrap {
    display: flex;
    align-items: center;
    flex: 0 1 auto
}

.hdrSearch_wrap .searchForm__inner {
    border-radius: 0 !important
}

.hdrSearch_wrap .searchForm {
    width: auto;
    max-width: 200px !important;
    flex: 0 0 200px !important
}

.hdrSearch_wrap .button {
    width: 185px;
    flex: 0 0 185px;
    padding: 5px 30px
}

@media (max-width: 991px) {
    .hdrSearch_wrap {
        width: 100%;
        max-width: 500px
    }

    .hdrSearch_wrap .searchForm {
        margin-right: 0;
        margin-left: 0;
        max-width: calc(100% - 165px) !important;
        flex: 0 0 calc(100% - 165px) !important
    }

    .hdrSearch_wrap .button {
        width: 155px;
        flex: 0 0 155px;
        padding: 5px 10px
    }
}

.menuToggle.bg--primary {
    height: 80px;
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center
}

.hdrMiddle--rightUnit .hdrMiddle__right {
    display: flex
}

.hdrMiddle--rightUnit .hdrMiddle__right>*:not(:first-child) {
    margin-left: 30px
}

@media (max-width: 1199px) {
    .menuToggle.bg--primary {
        height: 60px;
        width: 60px;
        margin-left: -15px
    }

    .hdrMiddle__right .pcOnly {
        display: none !important
    }
}

.hdr--typeG #hdrLogo {
    position: relative
}

@media (min-width: 992px) {

    .hdr--typeI,
    .hdr--typeH {
        background: #fff
    }

    .hdr--typeI#hdr .searchForm,
    .hdr--typeH#hdr .searchForm {
        width: 250px
    }

    .hdr--typeI .hdrMiddle,
    .hdr--typeH .hdrMiddle {
        padding-top: 24px;
        box-shadow: none
    }

    .hdr--typeI .hdrMiddle .hdrInner,
    .hdr--typeH .hdrMiddle .hdrInner {
        height: auto
    }

    .hdr--typeI .hdrBottom,
    .hdr--typeH .hdrBottom {
        background: #fff
    }

    .hdr--typeI .gNav:not(.gNav--fix)>ul>li>a,
    .hdr--typeH .gNav:not(.gNav--fix)>ul>li>a {
        height: auto !important;
        min-height: auto !important
    }

    .hdr--typeI .gNav.gNav--fix>ul>li>a,
    .hdr--typeH .gNav.gNav--fix>ul>li>a {
        height: 120px
    }

    .hdr--typeI .hdrBottom .gNav>ul>li>a,
    .hdr--typeH .hdrBottom .gNav>ul>li>a {
        height: auto;
        padding-top: 24px;
        padding-bottom: 24px
    }
}

.ftr--typeD {
    width: 100%;
    height: 100%;
    background: url(/cdn/shop/files/hdr_bg.jpg) repeat center center;
    position: relative
}


.ftr--typeD .fNav__logo {
    margin-bottom: 20px;
    max-width: 50vw
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__logo {
        max-width: 312px;
        width: 100%;
        margin-bottom: 30px
    }
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__logo img {
        width: 100%;
        height: 100%
    }
}

.ftr--typeD .fNav__text {
    margin-bottom: 30px;
    line-height: 1.6;
    font-size: 12px;
    color: #fff
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__text {
        max-width: 400px;
        width: 100%;
        margin-bottom: 50px;
    }
}

@media (min-width: 768px) {
    .fNav__sns {
        position: absolute;
        inset: 170px auto auto 0;
    }

    .fNav--typeC.container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        padding: 60px 0 112px;
    }

    .ftr--typeD .fNav__right {
        margin: 0 0 0 auto;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        flex-basis: 50%;
    }
}

@media (max-width: 767px) {
    .fNav--typeC.container {
        padding: 30px 20px 0;
    }
}

@media (max-width: 1230px) and (min-width: 768px) {
    .fNav--typeC.container {
        padding-right: 20px;
        padding-left: 20px;
    }


}

.ftr--typeD .fNav__newsletter {
    margin-bottom: 45px
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__newsletter {
        margin-bottom: 40px
    }
}

.ftr--typeD .newsletterHeading {
    margin-bottom: 3px;
    line-height: 1.6;
    letter-spacing: .04em;
    color: #fff;
    font-size: 18px;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

@media (min-width: 768px) {
    .ftr--typeD .newsletterHeading {
        font-size: 20px
    }
}

.ftr--typeD .newsletterText {
    margin-bottom: 10px;
    line-height: 1.6;
    font-size: 12px;
    color: #fff
}

@media (min-width: 768px) {
    .ftr--typeD .newsletterText {
        margin-bottom: 15px;
        font-size: 14px
    }
}

.ftr--typeD .newsletterForm {
    display: flex;
    align-items: center
}

.ftr--typeD .newsletterForm input {
    padding: 7px 10px;
    min-width: 249px;
    height: 40px;
    font-size: 16px;
    color: #fff;
    background: transparent;
    border: 1px solid white;
    border-radius: 0 !important
}

.ftr--typeD .newsletterForm input::placeholder {
    color: #fff;
    opacity: 1
}

.ftr--typeD .newsletterForm input:focus-visible {
    box-shadow: none !important
}

.ftr--typeD .newsletterForm button {
    padding: 7px 33px;
    height: 40px;
    font-size: 16px;
    color: #5ca1ae;
    background: #fff;
    font-weight: 500;
    border: 1px solid white
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__sns {
        display: flex;
        align-items: center;
        column-gap: 20px
    }
}

.ftr--typeD .snsHeading {
    width: auto;
    margin-bottom: 10px;
    line-height: 1.6;
    letter-spacing: .04em;
    color: #fff;
    font-size: 18px;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

@media (min-width: 768px) {
    .ftr--typeD .snsHeading {
        font-size: 20px;
        margin-bottom: 0
    }
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__subList .container {
        display: flex;
        column-gap: 30px;
        margin: 0 auto;
        padding: 24px 0
    }
}

@media (min-width: 768px) {
    .ftr--typeD .fNav__subList li {
        list-style: none
    }
}

.ftr--typeD .fNav__subList li a {
    color: #fff;
    font-size: 12px;
    line-height: 1.6
}


.fNav__hr {
    border-top: 1px solid #fff;
    width: 100%;
    padding: 24px 0;
}

.fNav__hr .container {
    display: flex;
    justify-content: space-between;
}

ul.fNav__subList {
    display: flex;
    gap: 30px 20px;
    flex-wrap: wrap;
}

.snsNav {
    list-style: none;
    display: -ms-flex;
    display: flex;
    align-items: center
}

@media (max-width: 767px) {
    .ftr--typeD .fNav__subList li {
        flex-basis: calc(50% - 8px);
        font-size: 11px;

    }

    .fNav__hr .container {
        display: block;
    }

    ul.fNav__subList {
        gap: 10px 15px;
        padding: 0 10px;
        margin-bottom: 30px;
    }
}

.snsNav li {
    list-style: none;
    margin-right: 15px
}

.snsNav i {
    font-size: 24px
}

.snsNav.snsNav--small i {
    font-size: 18px
}

.snsNav.snsNav--small li {
    margin-right: 15px
}

.ftr--typeA,
.ftr--typeC {
    background: #fff;
    padding: 0
}

@media (min-width: 992px) {
    .ftr--typeC {
        background: #5ca1ae
    }
}

.itemName {
    line-height: 1.4;
    margin-bottom: 10px;
    font-size: 16px;
    margin-top: 20px
}

.itemName a {
    color: #000;
    font-size: 16px;
    line-height: 26px
}

.itemPrice {
    font-size: 16px;
    font-weight: 500;
    color: #666
}

.itemPrice.itemPrice--regular {
    font-weight: 500;
    font-size: 12px
}

.itemPrice.itemPrice--regular small {
    font-size: 10px
}

@media (max-width: 767px) {
    .itemPrice.itemPrice--regular {
        font-size: 11px
    }
}

.itemList small {
    font-weight: 500;
    font-size: 12px;
    display: inline-block;
    margin-left: 5px
}

.itemList .button {
    display: block;
    width: 100%;
    margin-top: 10px
}

.itemList.slick-slider {
    width: 100vw;
    margin-left: -20px
}

@media (min-width: 768px) {
    .itemList.slick-slider {
        width: 100%;
        margin-left: 0
    }
}

.itemList.slick-slider .itemList__unit {
    margin-right: 12.5px !important;
    margin-left: 12.5px !important
}

@media (min-width: 768px) {
    .itemList.slick-slider .itemList__unit {
        margin-right: 20px !important;
        margin-left: 20px !important
    }
}

.itemList .slick-prev,
.itemList .slick-next {
    top: 40%;
    transform: none;
    z-index: 999
}

.itemList .slick-prev:before,
.itemList .slick-next:before {
    content: "";
    width: 20px;
    height: 20px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    position: absolute;
    left: 0;
    top: 8px
}

.itemList .slick-prev {
    left: 20px
}

@media (min-width: 768px) {
    .itemList .slick-prev {
        left: -30px
    }
}

.itemList .slick-prev:before {
    transform: rotate(-135deg)
}

.itemList .slick-next {
    right: 20px
}

@media (min-width: 768px) {
    .itemList .slick-next {
        right: -30px
    }
}

.itemList .slick-next:before {
    transform: rotate(45deg)
}

.itemList__unit {
    line-height: 24px;
    padding: 0
}

.itemList__unit a {
    display: block
}

a.itemWrap {
    display: block;
    line-height: 24px
}

a.itemWrap:hover,
a.itemWrap:active {
    color: #5ca1ae
}

a.itemWrap:hover img,
a.itemWrap:active img {
    opacity: .8
}

.itemImgWrap {
    position: relative;
    margin-bottom: 10px
}

.itemImgWrap:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/cdn/shop/files/item_bg.png) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 100%
}

.featuredCollectionSliderWrapper .card--standard .card__inner {
    aspect-ratio: 1/1 !important
}

.card__content {
    padding: 0
}

.card__media {
    width: 100%
}

.card__media .media {
    height: 100%s
}

.card__badge.bottom.left {
    position: absolute;
    width: fit-content;
    top: -15px;
    left: -15px;
    grid-row-start: auto
}

.card__badge.bottom.left .badge {
    border: none;
    background-color: #5ca1ae
}

.card__inner {
    width: 100%;
    height: 100% !important;
    aspect-ratio: 1 !important
}

.card__inner:before {
    content: "";
    display: block;
    position: absolute;
    top: -15px;
    left: -15px;
    background: url(/cdn/shop/files/item_bg.png) no-repeat center center;
    background-size: cover;
    width: calc(100% + 30px);
    height: calc(100% + 30px);
    z-index: 0
}

#parts_Sec_template--15757636894823__featured_collection_slide_Ce693X .d_title.flbox {
    margin-bottom: 56px !important
}

#Slider-template--15757636894823__featured_collection_slide_Ce693X {
    display: flex;
    justify-content: space-between
}

#Slider-template--15757636894823__featured_collection_slide_Ce693X .grid__item {
    width: calc(50% - 23px) !important;
    max-width: 300px;
    flex-grow: unset !important
}

@media (min-width: 768px) {
    #Slider-template--15757636894823__featured_collection_slide_Ce693X .grid__item {
        width: 21% !important
    }
}

.price-item {
    color: #666;
    font-size: 18px
}

#price-template--15757637058663__main .price-item {
    color: #000;
    font-size: 22pt
}

.price-item.price-item--sale.price-item--last,
.card__badge.d-none.bottom.left {
    display: none
}

.featuredCollectionSlider.--typeB .featuredCollectionSlider-prev,
.featuredCollectionSlider.--typeB .featuredCollectionSlider-next {
    display: block;
    width: 20px !important;
    height: 20px !important;
    border-top: solid 2px #000 !important;
    border-right: solid 2px #000 !important;
    border-left: none !important
}

.featuredCollectionSlider.--typeB .featuredCollectionSlider-prev {
    top: -110px !important;
    left: calc(25vw + -35px) !important;
    transform: rotate(225deg) !important
}

@media (min-width: 992px) {
    .featuredCollectionSlider.--typeB .featuredCollectionSlider-prev {
        left: 70px !important
    }
}

.featuredCollectionSlider.--typeB .featuredCollectionSlider-next {
    top: -110px !important;
    right: calc(25vw + -35px) !important;
    transform: rotate(45deg) !important
}

@media (min-width: 992px) {
    .featuredCollectionSlider.--typeB .featuredCollectionSlider-next {
        right: 70px !important
    }
}

@media (max-width: 1100px) and (min-width: 768px) {
    .featuredCollectionSlider.--typeB .featuredCollectionSlider-prev {
        left: auto !important;
        right: calc(50vw + 135px);
    }
    .featuredCollectionSlider.--typeB .featuredCollectionSlider-next {
        right: auto !important;
        left: calc(50vw + 135px);
    }
}

.itemImg,
.itemImg img {
    position: relative;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0;
    padding: 20px;
    display: block;
    text-align: center
}

@media (min-width: 768px) {

    .itemImg,
    .itemImg img {
        aspect-ratio: 1/1
    }
}

.itemList--ranking .itemList__unit {
    position: relative
}

.itemList--ranking .itemList__unit .itemWrap:before {
    content: "";
    z-index: 2;
    display: block;
    position: absolute;
    top: 10px;
    left: 25px;
    width: 35px;
    height: 35px;
    line-height: 35px;
    font-weight: 500;
    font-size: 14px;
    text-align: center;
    background: #fff;
    border: 1px solid #dfdfdf;
    border-radius: 50%
}

@media (max-width: 767px) {
    .itemList--ranking .itemList__unit .itemWrap:before {
        left: 16px;
        width: 30px;
        height: 30px;
        line-height: 30px
    }
}

.itemList--ranking .itemList__unit:nth-child(1) .itemWrap:before {
    background: #fff1bd;
    border-color: #efda8e
}

.itemList--ranking .itemList__unit:nth-child(2) .itemWrap:before {
    background: #eaeaea;
    border-color: #c8c8c8
}

.itemList--ranking .itemList__unit:nth-child(3) .itemWrap:before {
    background: #ffddbd;
    border-color: #dfbd9e
}

.itemList--ranking .itemList__unit:nth-child(1) .itemWrap:before,
.keywordRanking li:nth-child(1) a:before {
    content: "1"
}

.itemList--ranking .itemList__unit:nth-child(2) .itemWrap:before,
.keywordRanking li:nth-child(2) a:before {
    content: "2"
}

.itemList--ranking .itemList__unit:nth-child(3) .itemWrap:before,
.keywordRanking li:nth-child(3) a:before {
    content: "3"
}

.itemList--ranking .itemList__unit:nth-child(4) .itemWrap:before,
.keywordRanking li:nth-child(4) a:before {
    content: "4"
}

.itemList--ranking .itemList__unit:nth-child(5) .itemWrap:before,
.keywordRanking li:nth-child(5) a:before {
    content: "5"
}

.itemList--ranking .itemList__unit:nth-child(6) .itemWrap:before,
.keywordRanking li:nth-child(6) a:before {
    content: "6"
}

.itemList--ranking .itemList__unit:nth-child(7) .itemWrap:before,
.keywordRanking li:nth-child(7) a:before {
    content: "7"
}

.itemList--ranking .itemList__unit:nth-child(8) .itemWrap:before,
.keywordRanking li:nth-child(8) a:before {
    content: "8"
}

.itemList--ranking .itemList__unit:nth-child(9) .itemWrap:before,
.keywordRanking li:nth-child(9) a:before {
    content: "9"
}

.itemList--ranking .itemList__unit:nth-child(10) .itemWrap:before,
.keywordRanking li:nth-child(10) a:before {
    content: "10"
}

.itemList--ranking .itemList__unit:nth-child(11) .itemWrap:before,
.keywordRanking li:nth-child(11) a:before {
    content: "11"
}

.itemList--ranking .itemList__unit:nth-child(12) .itemWrap:before,
.keywordRanking li:nth-child(12) a:before {
    content: "12"
}

.itemList--ranking .itemList__unit:nth-child(13) .itemWrap:before,
.keywordRanking li:nth-child(13) a:before {
    content: "13"
}

.itemList--ranking .itemList__unit:nth-child(14) .itemWrap:before,
.keywordRanking li:nth-child(14) a:before {
    content: "14"
}

.itemList--ranking .itemList__unit:nth-child(15) .itemWrap:before,
.keywordRanking li:nth-child(15) a:before {
    content: "15"
}

.itemList--ranking .itemList__unit:nth-child(16) .itemWrap:before,
.keywordRanking li:nth-child(16) a:before {
    content: "16"
}

.itemList--ranking .itemList__unit:nth-child(17) .itemWrap:before,
.keywordRanking li:nth-child(17) a:before {
    content: "17"
}

.itemList--ranking .itemList__unit:nth-child(18) .itemWrap:before,
.keywordRanking li:nth-child(18) a:before {
    content: "18"
}

.itemList--ranking .itemList__unit:nth-child(19) .itemWrap:before,
.keywordRanking li:nth-child(19) a:before {
    content: "19"
}

.itemList--ranking .itemList__unit:nth-child(20) .itemWrap:before,
.keywordRanking li:nth-child(20) a:before {
    content: "20"
}

.itemList--noButton .button {
    display: none !important
}

.itemList--typeC .itemList__unit {
    position: relative
}

.itemList--typeC .itemList__unit:before {
    content: "MORE";
    position: absolute;
    right: 28px;
    bottom: 20px;
    font-size: 12px;
    line-height: 1;
    z-index: 2
}

.itemList--typeC .itemList__unit:after {
    bottom: 20px;
    top: auto !important;
    right: 20px
}

.itemList--typeC .itemList__unit:hover:before,
.itemList--typeC .itemList__unit:active:before {
    color: #5ca1ae;
    transition: .2s;
    transform: translateY(-3px)
}

.itemList--typeC .itemList__unit:hover:after,
.itemList--typeC .itemList__unit:active:after {
    transition: .2s;
    transform: rotate(45deg) translateY(calc(-50% - 3px))
}

.itemList--typeC .itemWrap {
    position: relative;
    transition: .1s;
    padding: 15px;
    box-shadow: 0 2px 6px #00000040;
    border-radius: 4px;
    background: #fff;
    height: 100%
}

.itemList--typeC .itemWrap:hover,
.itemList--typeC .itemWrap:active {
    transition: .2s;
    box-shadow: 0 4px 10px #0000004d;
    transform: translateY(-3px)
}

.itemList--typeC .itemWrap .itemPrice {
    padding-right: 60px
}

@media (max-width: 992px) {
    .itemList--typeC .itemWrap {
        padding: 15px 15px 35px
    }

    .itemList--typeC .itemWrap:before {
        color: #5ca1ae;
        right: 23px;
        bottom: 15px
    }

    .itemList--typeC .itemWrap:after {
        border-color: #5ca1ae !important;
        bottom: 15px;
        right: 15px
    }

    .itemList--typeC .itemWrap .itemPrice {
        padding-right: 0
    }
}

@media (max-width: 480px) {
    .itemList--typeD {
        margin-left: -5px;
        margin-right: -5px
    }

    .itemList--typeD .itemList__unit {
        padding-left: 5px;
        padding-right: 5px
    }
}

.itemList--typeD .itemWrap {
    transition: .1s;
    border: 1px solid #dfdfdf;
    border-radius: 6px;
    padding: 14px;
    background: #fff
}

@media (max-width: 992px) {
    .itemList--typeD .itemWrap {
        padding: 10px
    }
}

.itemList--typeD .itemWrap:hover,
.itemList--typeD .itemWrap:active {
    background: #f2f2f2;
    transition: .2s;
    box-shadow: 0 2px 4px #00000040;
    transform: translateY(-3px)
}

.itemList--typeD .itemWrap:hover:before,
.itemList--typeD .itemWrap:active:before {
    color: #5ca1ae
}

.itemList--typeD .itemWrap .button {
    box-shadow: none
}

@media (max-width: 480px) {
    .itemList--typeE {
        margin-left: -5px;
        margin-right: -5px
    }

    .itemList--typeE .itemList__unit {
        padding-left: 5px;
        padding-right: 5px
    }
}

.itemList--typeE .itemWrap .itemImg {
    display: block;
    padding: 15px;
    background-color: #dfdfdf
}

@media (max-width: 480px) {
    .itemList--typeE .itemWrap .itemImg {
        padding: 10px
    }
}

@media (max-width: 767px) {

    .itemList .button,
    .itemList a.button {
        font-size: 12px;
        padding: 5px 5px 5px 20px;
        padding-right: 20px !important
    }

    .itemList .button.arrow:after,
    .itemList a.button.arrow:after {
        right: 8px
    }
}

.itemList--rankingCustom .itemList__unit:before {
    content: none !important
}

.itemList--rankingCustom .itemList__unit:nth-child(1) .itemWrap__text:before {
    content: "1"
}

.itemList--rankingCustom .itemList__unit:nth-child(2) .itemWrap__text:before {
    content: "2"
}

.itemList--rankingCustom .itemList__unit:nth-child(3) .itemWrap__text:before {
    content: "3"
}

.itemList--rankingCustom .itemList__unit:nth-child(4) .itemWrap__text:before {
    content: "4"
}

.itemList--rankingCustom .itemList__unit:nth-child(5) .itemWrap__text:before {
    content: "5"
}

.itemList--rankingCustom .itemList__unit:nth-child(6) .itemWrap__text:before {
    content: "6"
}

.itemList--rankingCustom .itemList__unit:nth-child(7) .itemWrap__text:before {
    content: "7"
}

.itemList--rankingCustom .itemList__unit:nth-child(8) .itemWrap__text:before {
    content: "8"
}

.itemList--rankingCustom .itemList__unit:nth-child(9) .itemWrap__text:before {
    content: "9"
}

.itemList--rankingCustom .itemList__unit:nth-child(10) .itemWrap__text:before {
    content: "10"
}

.itemList--rankingCustom .itemList__unit:nth-child(11) .itemWrap__text:before {
    content: "11"
}

.itemList--rankingCustom .itemList__unit:nth-child(12) .itemWrap__text:before {
    content: "12"
}

.itemList--rankingCustom .itemList__unit:nth-child(13) .itemWrap__text:before {
    content: "13"
}

.itemList--rankingCustom .itemList__unit:nth-child(14) .itemWrap__text:before {
    content: "14"
}

.itemList--rankingCustom .itemList__unit:nth-child(15) .itemWrap__text:before {
    content: "15"
}

.itemList--rankingCustom .itemList__unit:nth-child(16) .itemWrap__text:before {
    content: "16"
}

.itemList--rankingCustom .itemList__unit:nth-child(17) .itemWrap__text:before {
    content: "17"
}

.itemList--rankingCustom .itemList__unit:nth-child(18) .itemWrap__text:before {
    content: "18"
}

.itemList--rankingCustom .itemList__unit:nth-child(19) .itemWrap__text:before {
    content: "19"
}

.itemList--rankingCustom .itemList__unit:nth-child(20) .itemWrap__text:before {
    content: "20"
}

.itemList--rankingCustom .itemList__unit .itemWrap__text {
    position: relative
}

.itemList--rankingCustom .itemList__unit .itemWrap__text:before {
    content: "";
    z-index: 2;
    display: block;
    top: 10px;
    left: 25px;
    width: 24px;
    height: 24px;
    font-weight: 500;
    font-size: 11px;
    line-height: 24px;
    text-align: center;
    background: #000;
    color: #fff;
    border-radius: 50%;
    margin-bottom: 10px
}

.itemList--rankingCustom a.itemWrap {
    display: flex
}

.itemList--rankingCustom a.itemWrap .itemWrap__img {
    max-width: 100px;
    flex: 0 0 100px
}

.itemList--rankingCustom a.itemWrap .itemWrap__text {
    padding-left: 15px;
    max-width: calc(100% - 100px);
    flex: 0 0 calc(100% - 100px)
}

.contentsSlider .slick-arrow,
.lightSlider .prevBtn,
.lightSlider .nextBtn {
    transform-origin: top left top left;
    z-index: 2;
    margin: 0;
    display: block;
    width: 40px;
    height: 40px;
    transform-origin: top
}

.contentsSlider .slick-arrow:before,
.lightSlider .prevBtn:before,
.lightSlider .nextBtn:before {
    content: none
}

.lightSlider .nextBtn,
.contentsSlider .slick-next {
    transform: rotate(45deg) translateY(-50%);
    border-top: #000 1px solid;
    border-right: #000 1px solid;
    right: -30px
}

.lightSlider .prevBtn,
.contentsSlider .slick-prev {
    transform: rotate(45deg) translateY(-50%);
    border-bottom: #000 1px solid;
    border-left: #000 1px solid;
    left: -30px
}

.lightSlider .prevBtn {
    left: -45px
}

.lightSlider .nextBtn {
    right: -45px
}

@media (max-width: 1240px) {
    .contentsSlider .slick-arrow {
        width: 20px;
        height: 20px;
        transform-origin: top
    }

    .contentsSlider .slick-next {
        right: 0
    }

    .contentsSlider .slick-prev {
        left: 00px
    }
}

.contentsSlider.itemList .slick-list {
    padding: 5px 0
}

.contentsSlider .itemList__unit {
    margin-bottom: 0
}

.itemList--ranking.ranking--typeB .itemList__unit .itemWrap:before,
.itemList--ranking.ranking--typeC .itemList__unit .itemWrap:before,
.itemList--ranking.ranking--typeD .itemList__unit .itemWrap:before {
    background: #fff
}

.itemList--ranking.ranking--typeB .itemList__unit .itemWrap:before,
.itemList--ranking.ranking--typeC .itemList__unit .itemWrap:before,
.itemList--ranking.ranking--typeD .itemList__unit .itemWrap:before,
.itemList--ranking.ranking--typeE .itemList__unit .itemWrap:before {
    font-size: 20px;
    border-radius: 0;
    border: 0
}

@media (max-width: 767px) {

    .itemList--ranking.ranking--typeB .itemList__unit .itemWrap:before,
    .itemList--ranking.ranking--typeC .itemList__unit .itemWrap:before,
    .itemList--ranking.ranking--typeD .itemList__unit .itemWrap:before,
    .itemList--ranking.ranking--typeE .itemList__unit .itemWrap:before {
        font-size: 16px
    }
}

.itemList--ranking.ranking--typeB .itemList__unit {
    position: relative
}

.itemList--ranking.ranking--typeB .itemList__unit .itemWrap:before {
    border-bottom: 1px solid #5ca1ae;
    border-right: 1px solid #5ca1ae
}

.itemList--ranking.ranking--typeC .itemList__unit {
    position: relative
}

.itemList--ranking.ranking--typeC .itemList__unit .itemWrap:before {
    border: 1px solid #000
}

.itemList--ranking.ranking--typeD .itemList__unit {
    position: relative
}

.itemList--ranking.ranking--typeD .itemList__unit .itemWrap:before {
    border-bottom: 2px solid #dfdfdf;
    border-right: 2px solid #dfdfdf
}

.itemList--ranking.ranking--typeD .itemList__unit:nth-child(1) .itemWrap:before {
    background: #fce180;
    border-color: #e2b100
}

.itemList--ranking.ranking--typeD .itemList__unit:nth-child(2) .itemWrap:before {
    background: #eaeaea;
    border-color: #c8c8c8
}

.itemList--ranking.ranking--typeD .itemList__unit:nth-child(3) .itemWrap:before {
    background: #ffd7b2;
    border-color: #c06108
}

.itemList--ranking.ranking--typeE .itemList__unit {
    position: relative
}

.itemList--ranking.ranking--typeE .itemList__unit .itemWrap:before {
    top: 0;
    height: 45px;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%)
}

.itemList--ranking.ranking--typeF .itemWrap {
    overflow: hidden;
    position: relative
}

.itemList--ranking.ranking--typeF .itemWrap:before {
    background: transparent !important;
    border: none !important;
    z-index: 3;
    top: -2px;
    left: -2px;
    font-size: 16px;
    color: #fff
}

.itemList--ranking.ranking--typeF .itemWrap:after {
    content: "" !important;
    display: block;
    position: absolute;
    top: -40px;
    left: -40px;
    width: 80px;
    height: 80px;
    background: #5ca1ae;
    transform: rotate(45deg);
    z-index: 2
}

@media (max-width: 767px) {
    .itemList--ranking.ranking--typeF .itemWrap:before {
        top: -3px;
        font-size: 14px
    }

    .itemList--ranking.ranking--typeF .itemWrap:after {
        top: -30px;
        left: -30px;
        width: 60px;
        height: 60px
    }
}

.itemPrice--default {
    text-decoration: line-through;
    opacity: .5;
    font-size: 12px
}

.itemPrice--saleRate,
p.itemPrice--saleRate {
    display: block;
    margin: 8px 0 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background: #5ca1ae;
    color: #fff;
    padding: 2px 14px
}

.itemSmallStock {
    position: absolute;
    display: block;
    left: 0;
    bottom: 0;
    right: 0;
    color: #fff;
    background: #5ca1aebf;
    padding: 2px 14px
}

.itemPrice--sale {
    color: #c00
}

.itemImg .itemSoldout {
    position: absolute;
    top: 50%;
    background: #00000059;
    color: #fff;
    padding: 10px;
    left: 0;
    right: 0;
    width: auto;
    transform: translateY(-50%)
}

.itemImg .itemPrice--saleRate {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0
}

@media (max-width: 479px) {
    .spRanking>.itemList__unit:first-child {
        flex: 0 0 100%;
        max-width: 100%
    }
}

.contentsSlider .itemList__unit {
    max-width: 100% !important;
    flex-basis: 100% !important
}

.contentsSlider:not(.slick-initialize) .itemList__unit {
    max-width: 20%;
    flex-basis: 20%
}

@media (max-width: 767px) {
    .contentsSlider:not(.slick-initialize) .itemList__unit {
        max-width: 50%;
        flex-basis: 50%
    }
}

.contentsSlider.noDots .slick-dots {
    display: none !important
}

.itemArrange--typeF.itemArrange--typeF2 .itemArrange--typeF_imgbox {
    position: relative
}

.itemArrange--typeF.itemArrange--typeF2 .itemArrange--typeF_imgbox .itemArrange--typeF_imgbox_txtbox {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center
}

.itemArrange--typeF.itemArrange--typeF2 .itemArrange--typeF_imgbox .itemArrange--typeF_imgbox_txtbox .itemArrange--typeF_imgbox_txtinner {
    color: #fff
}

.itemArrange--typeF.itemArrange--typeF2 .itemArrange--typeF_imgbox .itemArrange--typeF_imgbox_txtbox .itemArrange--typeF_imgbox_txtinner .button--typeB {
    border-color: #fff;
    color: #fff;
    background: none
}

.itemArrange--typeF.itemArrange--typeF2 .itemArrange--typeF_imgbox .itemArrange--typeF_imgbox_txtbox .itemArrange--typeF_imgbox_txtinner .button--typeB.arrow:after {
    border-color: #fff
}

.itemArrange--typeF .itemArrange--typeF_title {
    margin-bottom: 25px
}

.itemArrange--typeF .row .itemArrange--typeF_sliderbox {
    width: 100%;
    padding: 0 35px
}

.itemArrange--typeF .row .itemArrange--typeF_sliderbox .slick-prev {
    left: 0
}

.itemArrange--typeF .row .itemArrange--typeF_sliderbox .slick-next {
    right: 0
}

@media (max-width: 767px) {
    .itemArrange--typeF.itemReverce .row {
        flex-direction: column-reverse
    }

    .itemArrange--typeF .bnrBox {
        text-align: center
    }

    .itemArrange--typeF .bnrBox .button {
        display: block;
        width: 100%
    }

    .itemArrange--typeF .itemArrange--typeF_imgbox {
        margin-left: -7.5px;
        margin-right: -7.5px;
        padding: 0;
        flex: 0 0 100vw;
        width: 100vw;
        max-width: 100vw
    }

    .itemArrange--typeF .itemArrange--typeF_title {
        margin-bottom: 30px
    }

    .itemArrange--typeF .row .itemArrange--typeF_sliderbox {
        padding: 0
    }
}

@media (max-width: 767px) {
    .spNoPadding {
        padding: 0 !important
    }

    .spNoPadding .multiGrid p {
        padding: 0 0 0 1em
    }
}

@media (max-width: 991px) {

    .lightSlider .prevBtn,
    .lightSlider .nextBtn {
        display: none !important
    }
}

.line-1 .itemName,
.line-2 .itemName,
.line-3 .itemName {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.multiGrid {
    display: grid;
    overflow-x: scroll;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    gap: 15px;
    padding-bottom: 15px;
    grid-auto-flow: column;
    background: #fff
}

.multiGrid.no-gutters {
    gap: 15px 0
}

.multiGrid.no-gutters p {
    padding: 0 10px
}

@media (max-width: 991px) {
    .multiGrid.sp-row-2 {
        grid-template-rows: repeat(2, auto)
    }
}

.multiGrid>* {
    width: 230px;
    flex-shrink: 0;
    isolation: isolate
}

@media (max-width: 767px) {
    .multiGrid>* {
        width: 150px
    }
}

.multiGrid.pc-2>* {
    width: 570px
}

.multiGrid.pc-3>* {
    width: 390px
}

.multiGrid.pc-4>* {
    width: 290px
}

.multiGrid.pc-6>* {
    width: 190px
}

@media (max-width: 767px) {
    .multiGrid.sp-2>* {
        width: 150px
    }
}

@media (max-width: 767px) {
    .multiGrid.sp-1>* {
        width: 280px
    }
}

.multiGrid .itemList__unit {
    padding: 0
}

@media (max-width: 767px) {
    .multiGrid .itemList__unit .itemImg {
        margin-bottom: 5px
    }
}

@media (max-width: 767px) {
    .multiGrid .itemList__unit p {
        font-size: 11px;
        line-height: 1.8
    }

    .multiGrid .itemList__unit p small {
        font-size: 10px
    }
}

.multiGrid::-webkit-scrollbar-thumb,
.multiGrid::-webkit-scrollbar-track {
    border-radius: 92px
}

.multiGrid::-webkit-scrollbar-thumb {
    background: #5ca1ae
}

.multiGrid::-webkit-scrollbar-track {
    background: #f2f2f2
}

.multiGrid::-webkit-resizer {
    width: 90%
}

.multiGrid::-webkit-scrollbar {
    height: 12px
}

.lightSlider {
    position: relative
}

.leftBtn,
.rightBtn {
    font-size: 26px;
    position: absolute;
    top: 40%;
    background-color: #fff;
    color: #000;
    padding: 20px 10px
}

.leftBtn {
    left: 0;
    border-radius: 0 3px 3px 0;
    box-shadow: 1px 1px 1px #888
}

.rightBtn {
    right: 0;
    border-radius: 3px 0 0 3px;
    box-shadow: -1px 1px 1px #888
}

.collection .grid {
    justify-content: flex-start;
    margin: 0 auto;
    margin-top: 35px !important
}
@media screen and (max-width: 749px) {
    .facet-filters__label {
    font-size: 1.2rem;
    }
    .collection .grid {
        margin-top: 15px !important
    }
}

.facet-filters__field .select__select,
.mobile-facets__sort .select__select {
    border: 1px solid #000;
    padding: 10px 28px 10px 15px;
    background: #fff
}

.facet-filters__field .select__select:focus-visible,
.mobile-facets__sort .select__select:focus-visible {
    outline: none !important;
    box-shadow: none !important
}

.facet-filters__sort+.icon-caret {
    right: 15px !important
}

.facet-filters__sort {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-radius: 0;
    background-color: #fff
}

.facet-filters__sort option,
.facet-filters__sort optgroup {
    border-radius: 0;
    padding: 10px;
    background-color: #fff
}

.articleList time {
    font-size: 12px;
    display: block
}

.articleList time:not(:last-child) {
    margin-bottom: 10px
}

.articleList__img {
    margin: auto auto 1em;
    display: block;
    max-width: 100% !important
}

.articleList__title {
    font-size: 14px;
    margin: 0 0 1em;
    line-height: 1.5;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

@media (max-width: 768px) {
    .articleList__title {
        font-size: 12px;
        line-height: 20px
    }

}

.articleList__content {
    font-size: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1
}

.articleList__wrap {
    transition: .15s;
    display: block
}

.articleList__wrap:hover,
.articleList__wrap:active {
    color: #5ca1ae;
    transition: .15s;
    opacity: .65
}

@media (max-width: 768px) {
    .articleList__content {
        display: none
    }
}

.newsList__date {
    font-size: 12px;
    display: block;
    margin-bottom: 10px
}

.articleList--typeB .articleList__wrap {
    transition: .1s;
    display: block;
    box-shadow: 0 2px 6px #00000040
}

.articleList--typeB .articleList__wrap:hover,
.articleList--typeB .articleList__wrap:active {
    transition: .2s;
    box-shadow: 0 4px 10px #0000004d;
    transform: translateY(-3px)
}

.articleList--typeB .articleList__wrap:hover .articleList__text:before,
.articleList--typeB .articleList__wrap:active .articleList__text:before {
    color: #5ca1ae
}

.articleList--typeB .articleList__wrap:hover .articleList__text:after,
.articleList--typeB .articleList__wrap:active .articleList__text:after {
    border-color: #5ca1ae
}

.articleList--typeB .articleList__img {
    margin-bottom: 0
}

.articleList--typeB .articleList__text {
    background: #fff;
    display: block;
    padding: 1em;
    position: relative
}

.articleList--typeB .articleList__text:before {
    content: "MORE";
    position: absolute;
    right: 18px;
    top: -22px;
    font-size: 12px;
    font-weight: 500
}

.articleList--typeB .articleList__text:after {
    right: 10px;
    top: -16px !important
}

.articleList--typeC .articleList__wrap {
    display: block
}

.articleList--typeC .articleList__wrap .articleList__text {
    padding: 1em;
    transition: .1s;
    display: block;
    box-shadow: 0 2px 6px #00000040;
    transform: translateY(-15px);
    z-index: 2;
    background: #fff;
    margin: 0 10px
}

.articleList--typeC .articleList__wrap:hover .articleList__text,
.articleList--typeC .articleList__wrap:active .articleList__text {
    transition: .2s;
    box-shadow: 0 4px 10px #0000004d;
    transform: translateY(-17px)
}

.articleList--typeC .articleList__img {
    margin-bottom: 0
}

.articleList--typeD .articleList__wrap {
    background: #fff;
    display: flex;
    position: relative;
    align-items: center
}

@media all and (-ms-high-contrast: none) {
    .articleList--typeD .articleList__wrap {
        align-items: center
    }
}

.articleList--typeD .articleList__wrap:before {
    content: "MORE";
    position: absolute;
    right: 28px;
    bottom: 20px;
    font-size: 12px;
    font-weight: 500
}

.articleList--typeD .articleList__wrap:after {
    content: "";
    right: 20px;
    bottom: 20px !important;
    top: inherit !important
}

.articleList--typeD .articleList__wrap:hover,
.articleList--typeD .articleList__wrap:active {
    transition: .2s;
    box-shadow: 0 2px 4px #00000040;
    transform: translateY(-3px);
    padding-right: 0 !important
}

.articleList--typeD .articleList__wrap:hover:before,
.articleList--typeD .articleList__wrap:active:before {
    color: #5ca1ae
}

.articleList--typeD .articleList__wrap:hover:after,
.articleList--typeD .articleList__wrap:active:after {
    border-color: #5ca1ae
}

.articleList--typeD .articleList__img {
    margin-bottom: auto;
    min-height: 135px;
    max-width: 135px !important;
    flex: 0 0 135px;
    -o-object-fit: cover;
    object-fit: cover
}

@media all and (-ms-high-contrast: none) {
    .articleList--typeD .articleList__img {
        min-height: inherit;
        height: auto
    }
}

.articleList--typeD .articleList__title {
    -webkit-line-clamp: 1
}

.articleList--typeD .articleList__text {
    padding: 1em;
    max-width: calc(100% - 135px);
    flex: 0 0 calc(100% - 135px)
}

@media (max-width: 992px) {
    .articleList--typeD .articleList__wrap {
        align-items: center
    }

    .articleList--typeD .articleList__img {
        max-width: 120px !important;
        flex: 0 0 120px;
        -o-object-fit: cover;
        object-fit: cover;
        min-height: 120px;
        height: 120px
    }

    .articleList--typeD .articleList__title {
        margin-bottom: 1em;
        -webkit-line-clamp: 2
    }

    .articleList--typeD .articleList__text {
        padding: 1em;
        max-width: calc(100% - 120px);
        flex: 0 0 calc(100% - 120px)
    }
}

.articleList--typeD.radius .articleList__wrap {
    border-radius: 10px;
    border: 1px solid #dfdfdf;
    overflow: hidden
}

.newsList,
.newsList li {
    list-style: none
}

.newsList a:hover,
a.newsBnr:hover {
    color: #5ca1ae;
    text-decoration: none
}

.newsList a:hover img,
a.newsBnr:hover img {
    opacity: .8
}

.newsBnr {
    text-align: center;
    display: block
}

.newsBnr img,
.newsList {
    max-width: 100%
}

.newsList li {
    list-style: none;
    display: flex;
    padding: 10px 0;
    border-bottom: 1px solid #dfdfdf
}

.newsList li time {
    font-size: 15px;
    line-height: 24px;
    flex: 0 0 fit-content
}

@media (min-width: 768px) {
    .newsList li time {
        padding-right: 1.5em
    }
}

.newsList li h3 {
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    flex: 1 1 auto;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%
}

@media (min-width: 768px) {
    .newsList li h3 {
        font-size: 15px;
        overflow: visible
    }
}

@media (max-width: 1200px) {
    .newsList li {
        flex-wrap: wrap
    }

    .newsList li time {
        font-size: 12px;
        margin: 0 auto 5px;
        line-height: 1;
        text-align: center
    }

    .newsList li span {
        margin-bottom: 5px;
        order: 0
    }

    .newsList li h3 {
        max-width: 100%;
        flex: 0 0 100%
    }
}

@media (max-width: 1200px) {
    .newsList li h3 {
        max-width: 100%;
        flex: 0 0 100%;
        text-align: center
    }
}

.newsList--typeB {
    display: flex;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    padding: 10px 0
}

.newsList--typeB .newsList__head {
    margin: 0 40px;
    flex: 0 1 auto
}

.newsList--typeB .newsList__body {
    flex: 1 1 auto;
    padding: 10px 0
}

.newsList--typeB .newsList__body ul,
.newsList--typeB .newsList__body .makeNewsWrap {
    padding: 0 10px 0 0;
    overflow: scroll;
    overflow-x: hidden;
    overflow-y: scroll;
    height: 150px
}

.newsList--typeB .newsList__body ul li,
.newsList--typeB .newsList__body .makeNewsWrap li {
    border-bottom: 0
}

.newsList--typeB .newsList__head+.newsList__body {
    max-width: calc(100% - 190px)
}

.newsList--typeB.newsList--typeB2 .newsList__body {
    max-width: 720px;
    margin: 0 auto
}

@media (max-width: 767px) {
    .newsList--typeB {
        flex-wrap: wrap;
        border: none
    }

    .newsList--typeB .newsList__head {
        margin: 0 0 20px;
        flex: 0 1 100%
    }

    .newsList--typeB .newsList__body {
        border-top: 1px solid #dfdfdf;
        border-bottom: 1px solid #dfdfdf;
        flex: 1 1 100%;
        padding: 10px 0
    }

    .newsList--typeB .newsList__body ul {
        padding: 10px 0;
        overflow: scroll;
        overflow-x: hidden;
        overflow-y: scroll;
        height: 150px
    }

    .newsList--typeB .newsList__body ul li {
        border-bottom: 0
    }

    .newsList--typeB .newsList__body ul li:first-child {
        padding-top: 0
    }

    .newsList--typeB .newsList__head+.newsList__body {
        max-width: 100%
    }

    .newsList--typeB.newsList--typeB2 .newsList__body {
        max-width: 100%
    }
}

.highlight--narrow {
    padding: 20px 0
}

.newsList--typeC {
    display: flex
}

.newsList--typeC .newsList__head {
    display: flex;
    align-items: center;
    margin-right: 20px;
    max-width: 100px;
    vertical-align: middle;
    flex: 0 0 100px
}

.newsList--typeC .newsList__head h2 {
    font-weight: 500;
    text-align: center;
    font-size: 12px;
    line-height: 26px;
    background: #5ca1ae;
    color: #fff;
    width: 100%
}

.newsList--typeC .newsList__head i {
    font-size: 14px;
    vertical-align: middle;
    line-height: 27px;
    display: inline-block
}

.newsList--typeC .newsList__body {
    max-width: calc(100% - 120px);
    flex: calc(100% - 120px)
}

.newsList--typeC .newsList__body ul li {
    border-bottom: 0;
    line-height: 30px;
    padding: 3px 0
}

@media (max-width: 767px) {
    .newsList--typeC .newsList__head {
        margin-right: 15px;
        max-width: 70px;
        vertical-align: middle;
        flex: 0 0 70px
    }

    .newsList--typeC .newsList__head h2 i {
        display: none
    }

    .newsList--typeC .newsList__body {
        max-width: 100%;
        margin-bottom: 24px
    }

    .newsList--typeC .newsList__body h3 {
        font-size: 12px
    }
}

.newsList__cate {
    margin-right: 20px
}

.newsList__cate a {
    color: #fff;
    background: #666;
    min-width: 6em;
    display: inline-block;
    text-align: center;
    font-weight: 500;
    border-radius: 15px;
    padding: 5px 10px;
    font-size: 11px
}

@media (max-width: 1200px) {
    .newsList__cate a {
        font-size: 10px;
        padding: 4px 10px
    }
}

.newsList__cate a:hover {
    opacity: .8;
    color: #fff
}

.newsList__cate.nc__new_products a {
    background: #f9b34a
}

.newsList__cate.nc__news a {
    background: #2da9c5
}

.newsList__cate.nc__media a {
    background: #cd49a8
}

.newsList__cate.nc__columns a {
    background: #4ca864
}

.newsList__cate.nc__recipe a {
    background: #df3838
}

.t-news section {
    margin-bottom: 0;
    padding: 24px 0
}

@media (min-width: 768px) {
  .t-news section {
    margin-bottom: 0;
    padding: 16px 0
}
}
@media (min-width: 768px) {
    .t-news .container {
        display: flex;
        justify-content: center;
        align-items: center;
        column-gap: 30px
    }
}

@media (min-width: 768px) {
    .t-news .h2A {
        margin: 0;
        font-size: 20px
    }
}

@media (min-width: 768px) {
    .t-news p {
        width: auto
    }
}

.home__itemList {
    padding-top: 90px;
    background: #f2f3f3
}

.home__itemList section {
    margin-top: 72px
}

@media (min-width: 768px) {
    .home__itemList section {
        margin-top: 72px
    }
}

.home__hr {
    display: block;
    width: calc(100% - 40px);
    height: 1px;
    background: #ccc;
    margin: 60px auto
}

@media (min-width: 768px) {
    .home__hr {
        max-width: 1200px;
        width: 100%;
        margin: 100px auto;
        padding: 0 40px
    }
}

.t-section-products {
    padding-bottom: 60px
}

@media (min-width: 768px) {
    .t-section-products {
        margin-bottom: 0;
        padding-bottom: 100px
    }
}

.t-section-products .itemList {
    gap: 15px;
    width: 100%;
    margin: 0;
    padding: 0
}

@media (min-width: 768px) {
    .t-section-products .itemList {
        gap: 90px 40px
    }
}

.t-section-products .itemList__unit {
    flex: 0 0 calc(50% - 7.5px)
}

@media (min-width: 768px) {
    .t-section-products .itemList__unit {
        max-width: 270px !important;
        max-height: 270px !important
    }
}

@media (min-width: 768px) {
    .t-section-products .itemList__unit img {
        width: 100%;
        height: 100%
    }
}

.t-section-products .products__more {
    margin-top: 50px
}

@media (min-width: 768px) {
    .t-section-products .products__more {
        margin-top: 135px
    }
}

.t-section-blog {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 100%;
    margin-top: 184px;
    margin-bottom: 184px;
    background: url(/cdn/shop/files/exporingjapan_bg.png) no-repeat center center/cover
}

@media (min-width: 768px) {
    .t-section-blog {
        margin-top: 240px;
        margin-bottom: 240px
    }
}

.t-section-blog:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    left: 0;
    width: 100%;
    top: -25vw;
    height: 26vw;
    background: url(/cdn/shop/files/exporingjapan_triangle_top_sp.png) no-repeat center center/100% auto
}
.v_top_page .t-section-blog:after {
    bottom: 0;
    height: 26vw;
  }
@media (min-width: 768px) {
    .v_top_page .t-section-blog:before {
        top: -16vw;
        height: 16vw;
        background: url(/cdn/shop/files/exporingjapan_triangle_top_pc.png) no-repeat center center/100% auto
    }
    .v_top_page .t-section-blog:after {
        /* bottom: -16vw; */
        height: 16vw;
      }
}

.t-section-blog:after {
    content: "";
    display: block;
    position: relative;
    z-index: 1;
    bottom: -184px;
    left: 0;
    width: 100%;
    height: 184px;
    background: url(/cdn/shop/files/exporingjapan_triangle_bottom_sp.png) no-repeat center center/100% 100%
}

@media (min-width: 768px) {
    .t-section-blog:after {
        bottom: -240px;
        height: 240px;
        background: url(/cdn/shop/files/exporingjapan_triangle_bottom_pc.png) no-repeat center center/100% 100%
    }
}

.t-section-blog .blog__bg {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

@media (min-width: 991px) {
    .t-section-blog{
      margin-top: 25vw;
      margin-bottom: 25vw;
    }
    .v_top_page .t-section-blog .blog__bg {
      top: 27%;
      max-width: 80%;
      width: 50vw;
      transform: translate(-50%, -50%);
    }
    
}
@media (max-width: 991px) {
    .v_top_page .t-section-blog{
      margin-bottom: 25vw;
    margin-top: 25vw;
    }
    .v_top_page .t-section-blog .blog__bg {
        top: 10px;
    }
}

@media (min-width: 768px) {
    .t-section-blog .blog__bg {
        top: -90px;
        left: 50%;
        transform: translate(-50%);
        max-width: 510px;
        width: 37.33vw;
        height: 35.11vw;
        object-fit: contain;
        z-index: 2
    }
}
@media (max-width: 767px) {
  .t-section-blog .blog__bg {
    left: 0;
    right: 0;
    width: 98%;
    height: auto;
    margin: auto;
}
}

@media (max-width: 991px) and (min-width: 768px){
    .v_top_page .t-section-blog .blog__bg {
        top: 10px;
        max-width: none;
        width: 100vw;
        height: 80%;
    }
}

.t-section-blog .container {
    position: relative;
    z-index: 2
}

.t-section-blog .h2D {
    color: #5ca1ae
}

.t-section-instagram {
    padding-top: 80px;
    padding-bottom: 120px;
    background: #fff;
  position:relative
}

@media (min-width: 768px) {
    .t-section-instagram {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

.t-section-instagram .instagram__icon {
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 auto 10px
}

.t-section-instagram .h2D {
    font-size: 20px
}

.t-section-faq {
    margin-bottom: 0;
    padding: 60px 0;
    background: #f2f3f3
}

.t-section-faq .container {
    margin-bottom: 60px
}

@media (min-width: 768px) {
    .t-section-faq .container {
        max-width: 840px;
        margin-bottom: 60px
    }
}

.t-section-faq .faqSection {
    margin-bottom: 0;
    padding: 0
}

#hdr.hdr--integrate .hdrMiddle {
    background: #fff;
    transition: .3s
}

#hdr.hdr--integrate .iconNav i,
#hdr.hdr--integrate .iconNav>ul>li>a,
#hdr.hdr--integrate .gNav>ul>li>a {
    color: #000 !important
}

#hdr.hdr--integrate .iconNav i:after,
#hdr.hdr--integrate .iconNav>ul>li>a:after,
#hdr.hdr--integrate .gNav>ul>li>a:after {
    border-color: #000 !important
}

#hdr.hdr--integrate .iconNav i:hover,
#hdr.hdr--integrate .iconNav i:hover i,
#hdr.hdr--integrate .iconNav>ul>li>a:hover,
#hdr.hdr--integrate .iconNav>ul>li>a:hover i,
#hdr.hdr--integrate .gNav>ul>li>a:hover,
#hdr.hdr--integrate .gNav>ul>li>a:hover i {
    color: #000 !important
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm {
    border-color: #000 !important
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm i {
    color: #000 !important
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm__inner {
    background: transparent
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm__inner input[type=text]::-moz-placeholder {
    color: #000 !important
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm__inner input[type=text]:-ms-input-placeholder {
    color: #000 !important
}

#hdr.hdr--integrate .hdrMiddle__right .searchForm__inner input[type=text],
#hdr.hdr--integrate .hdrMiddle__right .searchForm__inner input[type=text]::placeholder {
    color: #000 !important
}

#hdr.hdr--integrate.active {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 9999
}

#hdr.hdr--integrate.active+.h_box {
    display: none
}

#hdr.hdr--integrate.active:not(.integrate--fixed) .hdrMiddle {
    background: transparent;
    transition: .3s;
    box-shadow: none
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>*>i,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>a,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .gNav>ul>li>a {
    color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>*>i:after,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>a:after,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .gNav>ul>li>a:after {
    border-color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>*>i:hover,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>*>i:hover i,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>a:hover,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .iconNav>ul>li>a:hover i,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .gNav>ul>li>a:hover,
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .gNav>ul>li>a:hover i {
    color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm {
    border-color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm i {
    color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm__inner {
    background: transparent
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm__inner input[type=text]::-moz-placeholder {
    color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm__inner input[type=text]:-ms-input-placeholder {
    color: #fff !important
}

#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm__inner input[type=text],
#hdr.hdr--integrate.active:not(.integrate--fixed).whiteColor--yet .hdrMiddle__right .searchForm__inner input[type=text]::placeholder {
    color: #fff !important
}

.mainSliderFrame {
    pointer-events: none;
    position: absolute;
    z-index: 2;
    width: 100vw;
    height: 147vw
}
@media (max-width: 767px) {
  section.mainSliderSec{
    height: 147vw
    
  }
}
@media (min-width: 768px) {
    .mainSliderFrame {
        height: 100%
    }
}

.mainSliderFrame img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%
}

.mainSliderFrame .mainSliderSlogan {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80vw;
    height: auto
}

@media (min-width: 768px) {
    .mainSliderFrame .mainSliderSlogan {
        width: 490px
    }
}

.mainSliderSec {
    position: relative;
    z-index: 1;
    overflow: hidden;
    margin-bottom: 0
}

@media (min-width: 768px) {
    .mainSliderSec {
        margin-bottom: 0
    }
}

.mainSliderSec:not([data-fade=true]) .mainSliderSec__inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative
}

.mainSliderSec[data-fade=true] .mainSliderSec__inner {
    overflow: hidden
}

.mainSliderSec .slick-list {
    overflow: visible
}

.mainSliderSec .slick-list img {
    position: relative;
    left: 50%;
    transform: translate(-50%);
    object-fit: cover;
    object-position: center;
    width: auto !important;
    height: 100% !important
}

@media (min-width: 768px) {
    .mainSliderSec .slick-list img {
        height: 100% !important;
          aspect-ratio: 16 / 9;
    object-fit: cover;
    }
}


[data-dot=false] .slick-dots {
    display: none !important
}

.mainSlider[data-center=true] .slick-slide {
    padding: 0 15px
}

@media (max-width: 767px) {
    .mainSlider[data-center=true] .slick-slide {
        padding: 0 7.5px;
        width: 90vw
    }
}

.mainSlider--typeB {
    margin-bottom: 30px
}

@media (max-width: 1200px) {
    .msThumbnail {
        padding: 0 20px
    }
}

#mainSlider {
    height: 100%
}
@media (max-width: 992px) {
    .mainSlider--typeB {
        margin-bottom: 15px
    }
}

.mainSlider[data-arrow=false] .slick-arrow,
.mainSlider--typeB[data-arrow=false] .slick-arrow {
    display: none !important
}

.mainSlider .slick-arrow,
.mainSlider--typeB .slick-arrow {
    transform-origin: top left top left;
    margin: 0;
    display: block;
    width: 40px;
    height: 40px;
    transform-origin: top
}

.mainSlider .slick-arrow:before,
.mainSlider--typeB .slick-arrow:before {
    content: none
}

.mainSlider .slick-next,
.mainSlider .slick-prev,
.mainSlider--typeB .slick-next,
.mainSlider--typeB .slick-prev {
    z-index: 2;
    transform: rotate(45deg) translateY(-50%)
}

.mainSlider .slick-next,
.mainSlider--typeB .slick-next {
    border-top: #000 1px solid;
    border-right: #000 1px solid;
    right: 30px
}

.mainSlider .slick-prev,
.mainSlider--typeB .slick-prev {
    border-bottom: #000 1px solid;
    border-left: #000 1px solid;
    left: 30px
}

@media (max-width: 1240px) {

    .mainSlider .slick-arrow,
    .mainSlider--typeB .slick-arrow {
        width: 20px;
        height: 20px;
        transform-origin: top
    }

    .mainSlider .slick-next,
    .mainSlider--typeB .slick-next {
        right: 15px
    }

    .mainSlider .slick-prev,
    .mainSlider--typeB .slick-prev {
        left: 15px
    }
}


#mainSlider picture {
    display: block;
    height: 100%
}

#mainSlider picture img {
    height: 100%
}

#mainSlider:not(.slick-initialized) {
    height: calc(100vh - 90px);
    position: relative
}

#mainSlider:not(.slick-initialized)>* {
    opacity: 0
}

#mainSlider:not(.slick-initialized):before {
    content: "Loading...";
    position: absolute;
    display: block;
    inset: 50% 0 auto;
    margin: auto;
    color: #5ca1ae;
    font-size: 20px;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: relative;
    text-indent: -9999em;
    animation: load4 1.3s infinite linear;
    transform: translateZ(0)
}

.dotsA .slick-dots {
    position: absolute;
    z-index: 2;
    bottom: 20px;
    right: 10px;
    text-align: right
}

@media (min-width: 768px) {
    .dotsA .slick-dots {
        right: 150px;
        bottom: 40px
    }
}

.dotsA .slick-dots li {
    margin: 0 5px
}

@media (min-width: 768px) {
    .dotsA .slick-dots li {
        margin: 0 3px
    }
}

.dotsA .slick-dots li button:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: none;
    border: 1px solid white
}

.dotsA .slick-dots li.slick-active button:before {
    background: #fff
}

@-webkit-keyframes load4 {

    0%,
    to {
        box-shadow: 0 -3em 0 .2em, 2em -2em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em
    }

    12.5% {
        box-shadow: 0 -3em, 2em -2em 0 .2em, 3em 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    25% {
        box-shadow: 0 -3em 0 -.5em, 2em -2em, 3em 0 0 .2em, 2em 2em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    37.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0, 2em 2em 0 .2em, 0 3em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    50% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em, 0 3em 0 .2em, -2em 2em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    62.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em, -2em 2em 0 .2em, -3em 0, -2em -2em 0 -1em
    }

    75% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em, -3em 0 0 .2em, -2em -2em
    }

    87.5% {
        box-shadow: 0 -3em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em, -3em 0, -2em -2em 0 .2em
    }
}

@keyframes load4 {

    0%,
    to {
        box-shadow: 0 -3em 0 .2em, 2em -2em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em
    }

    12.5% {
        box-shadow: 0 -3em, 2em -2em 0 .2em, 3em 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    25% {
        box-shadow: 0 -3em 0 -.5em, 2em -2em, 3em 0 0 .2em, 2em 2em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    37.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0, 2em 2em 0 .2em, 0 3em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    50% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em, 0 3em 0 .2em, -2em 2em, -3em 0 0 -1em, -2em -2em 0 -1em
    }

    62.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em, -2em 2em 0 .2em, -3em 0, -2em -2em 0 -1em
    }

    75% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em, -3em 0 0 .2em, -2em -2em
    }

    87.5% {
        box-shadow: 0 -3em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em, -3em 0, -2em -2em 0 .2em
    }
}

#scrollBtn {
    position: absolute;
    bottom: 50px;
    left: 0;
    right: 0;
    margin: auto;
    width: 80px;
    text-align: center;
    z-index: 4;
    font-size: 10px;
    height: 24px;
    font-weight: 700
}

@media screen and (max-width: 992px) {
    #scrollBtn {
        bottom: 20px
    }
}

#scrollBtn:before {
    content: "";
    display: block;
    position: absolute;
    inset: auto 0 0 0;
    width: 15px;
    height: 15px;
    border-top: 1px solid #000000;
    border-right: 1px solid #000000;
    transform: rotate(135deg);
    margin: auto
}

#scrollBtn.scrollBtn--wh {
    color: #fff
}

#scrollBtn.scrollBtn--wh:before {
    border-color: #fff
}

.mainSliderSec__inner.inner_margin ul.mainSlider {
    margin: 0 auto 35px;
    position: initial
}

.mainSliderSec__inner.inner_margin ul.mainSlider .slick-dots {
    left: 0
}

.mainSlidermargin li {
    margin: 0 15px
}

@media (max-width: 1200px) {
    .mainSlidermargin li {
        margin: 0 7.5px
    }
}

.loaded-js {
    opacity: 0;
    -webkit-transition: opacity 1.5s ease .3s;
    transition: opacity 1.5s ease .3s
}

.loaded-js.loaded {
    opacity: 1
}

.mainSlider[data-fade=true] {
    position: relative
}

.mainSlider[data-fade=true]>.slick-list {
    overflow: hidden
}

.mainSlider[data-fade=true]>.slick-list,
.mainSlider[data-fade=true]>.slick-list>.slick-track,
.mainSlider[data-fade=true]>.slick-list>.slick-track>.slick-slide>div {
    position: relative;
    height: 100%
}

.mainSlider[data-fade=true]>li {
    position: relative;
    height: 100%
}

.mainSlider[data-fade=true]>li img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 100%
}

.fadeAnimetion {
    animation: fadezoom 8.5s 0s forwards;
    animation-timing-function: ease-out
}

@keyframes fadezoom {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.1)
    }
}

.mainVisual {
    overflow: hidden;
    position: relative;
    height: 714px
}

@media (max-width: 767px) {
    .mainVisual {
        height: auto
    }
}

.mainVisual .mainVisual__inner img {
    display: block;
    position: absolute;
    left: -300%;
    right: -300%;
    top: 0;
    bottom: 0;
    margin: auto;
    max-width: none;
    z-index: 2
}

@media screen and (max-width: 750px) {
    .mainVisual .mainVisual__inner img {
        position: relative;
        left: inherit;
        right: inherit;
        max-width: 100%
    }
}

.mainVisual.mainVisual--hero {
    height: 100vh;
    height: 100svh
}

@media screen and (max-width: 750px) {
    .mainVisual.mainVisual--hero .mainVisual__inner img {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        height: 100%;
        width: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.mainVisual__copy img {
    display: block;
    position: absolute;
    max-width: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 3
}

@media screen and (max-width: 992px) {
    .mainVisual__copy img {
        max-width: calc(100% - 50px)
    }
}

.mvA_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap
}

.mvA_inner img {
    max-width: 100%;
    display: block;
    margin: auto
}

.mvA_inner a {
    display: block;
    opacity: 1
}

.mvA_inner a:hover {
    opacity: .8
}

.mvA_main,
.mvA_sub {
    max-width: 50%;
    flex: 0 0 50%
}

@media (max-width: 767px) {

    .mvA_main,
    .mvA_sub {
        max-width: 100%;
        flex: 0 0 100%
    }
}

.mvA_sub {
    display: -ms-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap
}

.mvA_sub>* {
    max-width: 50% !important;
    flex: 0 0 50%;
    position: relative
}

.mvA_sub>*>span {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 5px 7px;
    font-size: 12px;
    line-height: 20px;
    background: #00000080;
    color: #fff
}

@media screen and (max-width: 1200px) {
    .mvA_sub>*>span {
        font-size: 10px;
        padding: 3px 5px
    }
}

.mainVisual--arrangeB {
    padding: 0
}

.mainVisual--arrangeB .container {
    display: flex
}

@media (max-width: 767px) {
    .mainVisual--arrangeB .container {
        flex-wrap: wrap
    }
}

.mainVisual--arrangeB a {
    display: block;
    width: 100%
}

.mainVisual--arrangeB img {
    max-width: 100%
}

.mvB_main {
    margin-right: 10px
}

@media (min-width: 768px) {
    .mvB_main {
        flex: 0 0 63%;
        max-width: 63%
    }
}

@media (max-width: 767px) {
    .mvB_main {
        max-width: 100%;
        flex: 0 0 100%;
        margin-right: 0;
        margin-bottom: 6px
    }
}

.mvB_sub {
    display: flex;
    flex-wrap: wrap
}

@media (min-width: 768px) {
    .mvB_sub {
        flex: 0 0 37%;
        max-width: 37%
    }
}

.mvB_sub>a {
    margin-bottom: 10px
}

.mvB_sub a:last-child {
    margin-bottom: 0
}

@media (max-width: 767px) {
    .mvB_sub>a {
        width: 49%;
        margin-bottom: 0;
        margin-right: 2%
    }

    .mvB_sub a:last-child {
        margin-right: 0
    }
}

.about .main-page-title,
.v_about .main-page-title {
    text-indent: -9999px;
    margin-bottom: -1.6rem
}

@media (min-width: 768px) {

    .about .main-page-title,
    .v_about .main-page-title {
        margin-bottom: 20px
    }
}

.about .page-width--narrow,
.v_about .page-width--narrow {
    max-width: 100%;
    padding: 50px 0 0;
    width: 100%;
    margin-left: auto;
    margin-right: auto
}

@media (min-width: 768px) {

    .about .page-width--narrow,
    .v_about .page-width--narrow {
        width: 1200px
    }
}

@media (min-width: 768px) {

    .about #hdr,
    .v_about #hdr {
        height: 80px
    }
}

.about #container,
.v_about #container {
    padding-top: 60px
}

@media (min-width: 768px) {

    .about #container,
    .v_about #container {
        padding-top: 130px
    }
}

.about .breadcrumbs,
.v_about .breadcrumbs {
    display: flex;
    align-items: center;
    column-gap: 10px;
    margin-bottom: 20px;
    margin-top: 18px;
    padding: 0 0 0 15px
}

@media (min-width: 768px) {

    .about .breadcrumbs,
    .v_about .breadcrumbs {
        margin-bottom: 32px;
        margin-top: 25px;
        padding: 0
    }
}

.about .breadcrumbs .breadcrumbs__text,
.v_about .breadcrumbs .breadcrumbs__text {
    width: auto;
    margin: 0;
    font-size: 14px
}

.about .breadcrumbs .breadcrumbs__text a,
.v_about .breadcrumbs .breadcrumbs__text a {
    display: block;
    width: auto;
    font-size: 14px
}

.about .about__visual,
.v_about .about__visual {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 50px
}

@media (min-width: 768px) {

    .about .about__visual,
    .v_about .about__visual {
        width: 100vw;
        height: 290px;
        margin: 0 calc(-50vw + 50%) 100px
    }
}

.about .about__visual img,
.v_about .about__visual img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.about .about__heading,
.v_about .about__heading {
    max-width: 100%;
    width: 100%;
    height: auto;
    margin-bottom: 0px;
    padding-left: 20px
}
@media (max-width: 767px) {
  .v_about .about__heading {
    width:80%;
    margin-bottom: 25px;
  }
}
@media (min-width: 768px) {

    .about .about__heading,
    .v_about .about__heading {
        /* max-width: 495px; */
        padding-left: 100px
    }
}

.about .about__heading img,
.v_about .about__heading img {
    /* width: 82%; */
    border: none !important
}

@media (min-width: 768px) {

    .about .about__heading img,
    .v_about .about__heading img {
        /* width: 100% */
    }
}

.about .about__content__text,
.v_about .about__content__text {
    letter-spacing: .1em;
    line-height: 2.6;
    font-size: 14px
}

@media (min-width: 768px) {

    .about .about__content__text,
    .v_about .about__content__text {
        font-size: 16px
    }
}

.about .about__content__text .sp_only,
.v_about .about__content__text .sp_only {
    display: block
}

@media (min-width: 768px) {

    .about .about__content__text .sp_only,
    .v_about .about__content__text .sp_only {
        display: none
    }
}

.about .about__content01,
.v_about .about__content01 {
    position: relative;
    display: flex;
    flex-direction: column;
    column-gap: 45px;
    align-items: center;
    margin-bottom: 80px;
    padding-left: 20px;
    overflow: hidden
}

@media (min-width: 768px) {

    .about .about__content01,
    .v_about .about__content01 {
        padding-left: 100px;
        flex-direction: row;
        overflow: visible
    }
}

.about .about__content01 .about__content__text,
.v_about .about__content01 .about__content__text {
    white-space: wrap
}

@media (min-width: 768px) {

    .about .about__content01 .about__content__text,
    .v_about .about__content01 .about__content__text {
        white-space: nowrap
    }
}

.about .about__content01 img,
.v_about .about__content01 img {
    width: 86%;
    margin-left: auto
}

.about .about__content01:before,
.v_about .about__content01:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 270px;
    right: -60px;
    aspect-ratio: 1 / 1;
    width: 60vw;
    height: auto;
    background: url(/cdn/shop/files/about_decoration01.svg?v=1740960554) no-repeat center center/100% 100%
}

@media (min-width: 768px) {

    .about .about__content01:before,
    .v_about .about__content01:before {
        width: 440px;
        top: -200px;
        right: -180px
    }
}

.about .about__content02,
.v_about .about__content02 {
    position: relative;
    margin-bottom: 220px
}

@media (min-width: 768px) {

    .about .about__content02,
    .v_about .about__content02 {
        margin-bottom: 150px
    }
}

.about .about__content02 img,
.v_about .about__content02 img {
    display: block;
    margin: 0 auto 70px;
    width: 100%
}

@media (min-width: 768px) {

    .about .about__content02 img,
    .v_about .about__content02 img {
        width: auto
    }
}

.about .about__content02 .about__content__text,
.v_about .about__content02 .about__content__text {
    text-align: left;
    padding: 0 0 0 20px;
    max-width: calc(100% - 40px)
}

@media (min-width: 768px) {

    .about .about__content02 .about__content__text,
    .v_about .about__content02 .about__content__text {
        text-align: left;
        padding: 0;
        max-width: 600px;
        margin: 0 auto
    }
}

.about .about__content02:before,
.v_about .about__content02:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 125px;
    left: -100px;
    aspect-ratio: 1 / 1;
    width: 60vw;
    height: auto;
    background: url(/cdn/shop/files/about_decoration02.svg?v=1740960554) no-repeat center center/100% 100%
}

@media (min-width: 768px) {

    .about .about__content02:before,
    .v_about .about__content02:before {
        top: 155px;
        left: -210px;
        width: 421px
    }
}

.about .about__content03,
.v_about .about__content03 {
    position: relative;
    margin-bottom: 80px
}

.about .about__content03 img:first-child,
.v_about .about__content03 img:first-child {
    margin-bottom: 80px;
    margin-left: 20px;
    width: calc(100vw - 60px)
}

@media (min-width: 768px) {

    .about .about__content03 img:first-child,
    .v_about .about__content03 img:first-child {
        width: auto
    }
}

.about .about__content03 img:last-child,
.v_about .about__content03 img:last-child {
    position: absolute;
    top: -160px;
    right: 20px;
    width: 62vw
}

@media (min-width: 768px) {

    .about .about__content03 img:last-child,
    .v_about .about__content03 img:last-child {
        top: -80px;
        right: 100px;
        width: auto
    }
}

.about .about__content03 .about__content__text,
.v_about .about__content03 .about__content__text {
    text-align: left;
    margin-bottom: 50px;
    padding-left: 20px;
    max-width: calc(100% - 40px)
}

@media (min-width: 768px) {

    .about .about__content03 .about__content__text,
    .v_about .about__content03 .about__content__text {
        text-align: left;
        padding: 0;
        max-width: 768px;
        margin: 0 auto 55px
    }
}

.about .about__content03 .button,
.v_about .about__content03 .button {
    max-width: 220px;
    width: 100% !important;
    padding-right: 0
}
@media (max-width: 767px) {
.about .about__content03 .button,
.v_about .about__content03 .button {
    max-width: 190px;
}
}

.about .about__content03 .button:before,
.about .about__content03 .button:after,
.v_about .about__content03 .button:before,
.v_about .about__content03 .button:after {
    content: none
}

.about .about__content03:before,
.v_about .about__content03:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 160px;
    right: 0;
    aspect-ratio: 1 / 1;
    width: 30vw;
    height: auto;
    background: url(/cdn/shop/files/about_decoration03.svg?v=1740960554) no-repeat center center/100% 100%
}

@media (min-width: 768px) {

    .about .about__content03:before,
    .v_about .about__content03:before {
        top: -120px;
        right: 0;
        width: 175px
    }
}

.about .about__content04,
.v_about .about__content04 {
    position: relative;
    margin-bottom: 150px
}

.about .about__content04 img,
.v_about .about__content04 img {
    display: block;
    margin: 0 auto;
    width: 100vw
}

@media (min-width: 768px) {

    .about .about__content04 img,
    .v_about .about__content04 img {
        width: auto
    }
}

.about .about__content04:before,
.v_about .about__content04:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -100px;
    left: -150px;
    aspect-ratio: 1 / 1;
    width: 60vw;
    height: auto;
    background: url(/cdn/shop/files/about_decoration04.svg?v=1740960554) no-repeat center center/100% 100%
}

@media (min-width: 768px) {

    .about .about__content04:before,
    .v_about .about__content04:before {
        top: -120px;
        left: -100px;
        width: 330px
    }
}

.about .about__content04:after,
.v_about .about__content04:after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -230px;
    left: -20px;
    aspect-ratio: 1 / 1;
    width: 60vw;
    height: auto;
    background: url(/cdn/shop/files/about_decoration05.svg?v=1740960554) no-repeat center center/100% 100%
}

@media (min-width: 768px) {

    .about .about__content04:after,
    .v_about .about__content04:after {
        bottom: -200px;
        left: 0;
        width: 421px
    }
}

.t-section-bnr {
    overflow: visible;
    position: relative;
    margin-top: 0;
    background: url(/cdn/shop/files/bnr_moe.png) no-repeat center center/cover
}

.t-section-bnr:before {
    content: "";
    display: block;
    position: relative;
    z-index: 2;
    top: -29px;
    width: 100%;
    height: 30px;
    background: url(/cdn/shop/files/bnr_nami.png) no-repeat center center/cover;
    transform: rotate(180deg)
}

@media (min-width: 768px) {
    .t-section-bnr:before {
        content: "";
        display: block;
        position: relative;
        z-index: 2;
        top: -49px;
        width: 100%;
        height: 50px;
        background: url(/cdn/shop/files/bnr_nami.png) no-repeat center center/cover;
        transform: rotate(180deg)
    }
}

.t-section-bnr:after {
    content: "";
    display: block;
    position: relative;
    z-index: 2;
    bottom: -29px;
    width: 100%;
    height: 30px;
    background: url(/cdn/shop/files/bnr_nami.png) no-repeat center center/cover
}

@media (min-width: 768px) {
    .t-section-bnr:after {
        content: "";
        display: block;
        position: relative;
        z-index: 2;
        bottom: -50px;
        width: 100%;
        height: 50px;
        background: url(/cdn/shop/files/bnr_nami.png) no-repeat center center/cover
    }
}

.t-section-bnr .container {
    padding: 0 35px
}
.bnrList a img.bnr {
    max-width: 100% !important;
}
@media (min-width: 768px) {
    .t-section-bnr .container {
        padding: 100px 30px
    }
}

.bnr__text {
    color: #fff;
    letter-spacing: .04em;
    line-height: 1.6;
    font-size: 14px;
    text-align: center
}

@media (min-width: 768px) {
    .bnr__text {
        letter-spacing: .1em;
        font-size: 18px
    }
}

@media (min-width: 768px) {
    .bnr__text br {
        display: none
    }
}

.bnrList a {
    display: block
}

.bnrList a img {
    margin-bottom: 15px;
    transition: .15s
}

@media (min-width: 768px) {
    .bnrList a img {
        margin-bottom: 30px
    }
}

.bnrList a:hover {
    color: #5ca1ae
}

.bnrList a:hover img {
    opacity: .65;
    transition: .15s
}

.bnrList.contentsSlider {
    margin: 0 -15px
}

.bnrList.contentsSlider .slick-slide {
    margin: 0 15px
}

@media (min-width: 768px) {
    .bnrList.contentsSlider .slick-slide {
        margin: 0
    }
}

@media (max-width: 992px) {
    .bnrList.contentsSlider {
        margin: 0 -7px
    }

    .bnrList.contentsSlider .slick-slide {
        margin: 0 7px
    }
}

.bnrBox {
    transition: .15s;
    display: block
}

.bnrBox:hover {
    opacity: .65;
    transition: .15s
}

.bnr,
.bnrBox img {
    display: block;
    max-width: 100% !important;
    margin: auto
}

@media (min-width: 768px) {

    .bnr,
    .bnrBox img {
        max-width: 1000px !important
    }
}

div.bnr:hover,
div.bnrBox:hover,
div.newsBnr:hover,
div.bnr:hover img,
div.bnrBox:hover img,
div.newsBnr:hover img {
    opacity: 1
}

.bnrBox h3 {
    font-size: 14px;
    line-height: 24px;
    margin: 10px 0 5px
}

.bnrBox img+* {
    margin-top: 10px
}

.dotsB .slick-dots {
    text-align: right
}

.dotsB .slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 8px
}

.dotsB .slick-dots li button {
    width: 8px;
    height: 8px
}

.dotsB .slick-dots li button:before {
    width: 8px;
    height: 8px
}

.rightVissibleSlider {
    overflow: hidden
}

.rightVissibleSlider .container,
.rightVissibleSlider .slick-list {
    overflow: visible
}

.rightVissibleSlider .container {
    position: relative
}

@media (max-width: 1199px) {
    .rightVissibleSlider .container {
        position: relative
    }

    .rightVissibleSlider .container:after {
        content: unset
    }

    .rightVissibleSlider .container .slick-list {
        padding-right: 50px
    }
}

.row.cateList {
    gap: 20px 0;
    margin-left: -10px;
    margin-right: -10px
}

.row.cateList [class*=col-] {
    padding: 0 10px
}

@media (max-width: 768px) {
    .row.cateList {
        gap: 20px 0
    }

    .row.cateList [class*=col-] {
        padding: 0 5px
    }

    .row.cateList .button {
        width: 100%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 11px;
        padding: 5px 10px
    }
}

.gNav .megaMenu li a.button,
a.iconButton,
.iconButton,
.cateList .button,
[class*=iconButton],
a[class*=iconButton] {
    color: #000;
    font-weight: 500;
    text-align: left;
    border-radius: 100px;
    border: 1px solid #dfdfdf;
    background: #fff;
    line-height: 20px;
    padding: 10px 30px 10px 10px !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    width: 100%
}

@media (max-width: 768px) {

    .gNav .megaMenu li a.button,
    a.iconButton,
    .iconButton,
    .cateList .button,
    [class*=iconButton],
    a[class*=iconButton] {
        font-size: 12px
    }
}

[class*=iconButton]:hover,
a[class*=iconButton]:hover {
    color: #5ca1ae;
    background: #f2f2f2
}

[class*=iconButton].noBorder,
a[class*=iconButton].noBorder {
    border: none;
    background: transparent
}

[class*=iconButton] b,
a[class*=iconButton] b {
    padding: 0 5px
}

[class*=iconButton] span:first-child,
a[class*=iconButton] span:first-child {
    border-radius: 50%;
    overflow: hidden;
    max-width: 40px;
    flex: 0 0 40px
}

[class*=iconButton] span:first-child img,
[class*=iconButton] span:first-child svg,
a[class*=iconButton] span:first-child img,
a[class*=iconButton] span:first-child svg {
    max-width: 100%;
    height: 40px;
    -o-object-fit: cover;
    object-fit: cover
}

@media all and (-ms-high-contrast: none) {

    [class*=iconButton] span:first-child img,
    [class*=iconButton] span:first-child svg,
    a[class*=iconButton] span:first-child img,
    a[class*=iconButton] span:first-child svg {
        height: auto
    }
}

[class*=iconButton] span:nth-child(2),
a[class*=iconButton] span:nth-child(2) {
    padding: 0 10px;
    max-width: calc(100% - 40px);
    flex: 0 0 calc(100% - 40px)
}

@media (max-width: 767px) {

    [class*=iconButton] span:first-child,
    a[class*=iconButton] span:first-child {
        max-width: 30px;
        flex: 0 0 30px
    }

    [class*=iconButton] span:first-child img,
    [class*=iconButton] span:first-child svg,
    a[class*=iconButton] span:first-child img,
    a[class*=iconButton] span:first-child svg {
        height: 30px
    }

    [class*=iconButton] span:nth-child(2),
    a[class*=iconButton] span:nth-child(2) {
        font-size: 12px;
        line-height: 20px;
        max-width: calc(100% - 30px);
        flex: 0 0 calc(100% - 30px)
    }
}

figure {
    display: block;
    margin: 0
}

figure figcaption {
    font-size: 14px;
    display: block;
    line-height: 1.7;
    margin-top: 10px;
    font-weight: 500
}

@media (max-width: 767px) {
    figure figcaption {
        font-size: 12px
    }
}

figure img,
figure svg {
    max-width: 100%;
    margin: auto
}

@media (max-width: 767px) {
    .cateList--typeC figcaption {
        font-size: 10px
    }
}

.childrenImg--radius img,
.childrenImg--radius svg {
    max-width: 100%;
    margin: auto;
    border-radius: 50%
}

.iconButton--square,
a.iconButton--square {
    padding: 0 !important;
    border-radius: 0
}

.iconButton--square span:first-child,
a.iconButton--square span:first-child {
    border-radius: 0;
    max-width: 50px;
    flex: 0 0 50px
}

.iconButton--square span:first-child img,
a.iconButton--square span:first-child img {
    height: 50px
}

.iconButton--square span:nth-child(2),
a.iconButton--square span:nth-child(2) {
    max-width: calc(100% - 70px);
    flex: 0 0 calc(100% - 70px)
}

.iconButton--squareNoImg {
    border-radius: 0 !important
}

.cateList__children {
    list-style: none;
    line-height: 24px;
    margin-top: 15px
}

.cateList__children>li {
    margin-bottom: 5px
}

.cateList__children>li>a {
    display: block;
    text-align: left
}

.cateList__children>li>a:hover {
    color: #5ca1ae
}

@media (max-width: 767px) {
    .cateList__children {
        display: none;
        font-size: 12px
    }
}

.cateLink__parents {
    display: block;
    text-align: left;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    padding: 8px 0;
    border-bottom: 1px solid #dfdfdf
}

.cateLink__parents:hover {
    color: #5ca1ae
}

@media (max-width: 767px) {
    .cateLink__parents {
        font-size: 12px
    }
}

@media (max-width: 767px) {

    .cateList a.cateList__hasChildren:before,
    .cateList a.cateList__hasChildren:after {
        width: 10px;
        height: 2px;
        transform: translateY(-50%);
        border: 0;
        right: 13px;
        background: #000
    }

    .cateList a.cateList__hasChildren:before {
        content: "";
        display: block;
        position: absolute;
        transition: .15s;
        top: 50%;
        transform: rotate(90deg) translateY(-50%);
        transform-origin: top center
    }

    .cateList a.cateList__hasChildren.open:before {
        opacity: 0;
        transform: translateY(-50%)
    }

    .cateList a.cateList__hasChildren:hover:after {
        right: 13px
    }

    .cateList>*:not(:last-child) .cateList__children {
        margin-bottom: 20px
    }
}

#popupBnr {
    position: fixed;
    z-index: 99999999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

#popupBnr--close {
    position: absolute;
    inset: -30px -30px auto auto
}

#popupBnr--close i {
    color: #fff;
    font-size: 30px
}

.popupBnrBox {
    position: relative;
    max-width: calc(100vw - 60px)
}

#popupBnr.pb--center {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #00000080
}

#popupBnr.pb--right {
    inset: auto 15px 15px auto
}

.pb--right #popupBnr--close {
    inset: -30px auto auto -30px
}

.pb--right #popupBnr--close i {
    color: #000
}

#popupBnr.pb--left {
    inset: auto auto 15px 15px
}

.pb--left #popupBnr--close {
    inset: -30px -30px auto auto
}

.pb--left #popupBnr--close i {
    color: #000
}

.textBnr__box {
    display: block;
    position: relative;
    transition: .15s
}

.textBnr__box>div {
    position: absolute;
    inset: auto 0 0 0;
    padding: 45px
}

.textBnr__box:hover {
    opacity: .8;
    transition: .15s
}

.textBnr__box h3 {
    font-size: 24px
}

.textBnr__box h3,
.textBnr__box p {
    line-height: 1.5
}

.textBnr__box h3+p {
    margin-top: 12px
}

.textBnr__box .tb__btn {
    margin-top: 24px
}

@media (min-width: 768px) {
    .textBnr__box.tb--narrow>span {
        padding: 30px
    }

    .textBnr__box.tb--narrow h3 {
        font-size: 20px
    }
}

@media (max-width: 767px) {
    .textBnr__box>span {
        padding: 30px
    }

    .textBnr__box h3 {
        font-size: 16px
    }

    .textBnr__box h3+p {
        margin: 10px 0 0
    }

    .textBnr__box .tb__btn {
        margin-top: 20px
    }

    .textBnr__box .button {
        font-size: 12px;
        width: 170px
    }
}

.cateListB {
    width: 100%;
    height: 100%;
    margin-top: -75px;
    margin-bottom: 0;
    padding: 110px 0 60px;
    background: url(/cdn/shop/files/category_bg.png) no-repeat center center/cover
}

@media (min-width: 768px) {
    .cateListB {
        margin-top: -100px;
        padding: 115px 0 80px
    }
}

.cateListB .h2A {
    color: #5ca1ae
}

.cateBlock {
    list-style: none;
    justify-content: center;
    gap: 15px;
    width: 100%;
    margin: 0;
    padding: 0
}

@media (min-width: 768px) {
    .cateBlock {
        gap: 30px
    }
}

.cateBlock li {
    list-style: none;
    margin: 0;
    padding: 0;
    flex: 0 0 calc(50% - 7.5px)
}

@media (min-width: 768px) {
    .cateBlock li {
        flex: 0 0 calc(33.333333333333336% - 30px)
    }
}

.cateBlock li a {
    display: block
}

.cateBlock li a:hover{
  opacity:0.8;
  transition:0.3s;
}

.cateBlock li img {
    max-width: 100%
}

.cateBlock--wide li {
    padding: 20px
}

@media (max-width: 767px) {
    .cateBlock--wide li {
        padding: 10px
    }
}

.subCategoryBox {
    margin-bottom: 30px
}

.sc_h3A,
.sc_h3B {
    font-size: 20px;
    margin-bottom: 20px;
    padding: 5px 0;
    line-height: 1.8;
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media (max-width: 767px) {

    .sc_h3A,
    .sc_h3B {
        font-size: 14px
    }
}

.sc_h3A>a,
.sc_h3B>a {
    font-size: 12px
}

@media (max-width: 767px) {

    .sc_h3A>a,
    .sc_h3B>a {
        font-size: 10px
    }
}

.sc_h3A>a:after,
.sc_h3B>a:after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(45deg);
    transform-origin: right;
    margin-left: 5px
}

.sc_h3A {
    border-bottom: 1px solid #000
}

.sc_h3B>a {
    border-radius: 50px;
    border: 1px solid #000;
    padding: 2px 12px;
    transition: .15s
}

.sc_h3B>a:hover {
    background: #000;
    color: #fff;
    transition: .15s
}

.sc_h3B>a:hover:after {
    border-color: #fff
}

.subCategory__description.highlightBg {
    background: #f2f2f2;
    padding: 1em
}

.categoryMain img {
    max-width: 100%;
}
.conceptA {
    margin-bottom: 0;
    padding: 56px 20px 160px !important;
    position: relative;
    overflow: hidden;
    background: #f2f3f3 !important;
    min-height: 145vw
}

@media (min-width: 768px) {
    .conceptA {
        padding: 100px 20px 345px !important;
        min-height: 100%
    }
}

.conceptA .container {
    position: relative;
    z-index: 3;
    padding: 0
}

.conceptA p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: .06em
}

@media (min-width: 768px) {
    .conceptA p {
        letter-spacing: .1em;
        line-height: 42px !important;
        font-size: 16px;
        margin-bottom: 60px
    }
  .conceptA p.conceptA__heading {
      margin-bottom: 15px;
  }
}

.conceptA__heading {
    max-width: 175px;
    width: 100%;
    margin: 0 auto 20px
}

@media (min-width: 768px) {
    .conceptA__heading {
        max-width: 230px;
        margin: 0 auto 30px
    }
}

.conceptA__heading img {
    width: 100%;
    height: auto
}

.conceptA__title {
    max-width: 280px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 28px !important
}

@media (min-width: 768px) {
    .conceptA__title {
        max-width: 497px;
        margin-bottom: 50px !important
    }
}

.conceptA__title img {
    width: 70%;
    height: auto
}

@media (min-width: 768px) {
    .conceptA__title img {
        width: 100%
    }
}

.conceptA__bg {
    z-index: 2;
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom;
}

.conceptB .conceptB__textWrap {
    max-width: 100%;
    flex: 0 0 100%
}

.conceptB .text--left,
.conceptB .text--left small {
    text-align: left !important
}

.conceptB-2 .row {
    margin-left: 0;
    margin-right: 0
}

.conceptB-2 .row>* {
    padding: 0;
    margin-bottom: 0
}

.conceptB-2 .row>* .conceptB__textWrap {
    padding: 0 60px
}

@media (max-width: 767px) {
    .conceptB-2 .row>* {
        margin-bottom: 15px
    }

    .conceptB-2 .row>* .conceptB__textWrap {
        padding: 0
    }
}

.conceptC {
    position: relative;
    overflow: hidden
}

.conceptC .conceptC__text {
    position: relative;
    z-index: 3;
    background: #ffffffe6;
    padding: 60px;
    margin: 60px;
    width: 520px
}

.conceptC .conceptC__text.text--verticalPC,
.conceptC .conceptC__text.text--vertical {
    width: auto
}

.conceptC .conceptC__text:not(.conceptC__text--right) {
    margin-right: auto !important
}

.conceptC .conceptC__text--right {
    margin-left: auto !important
}

.conceptC .container:not(.conceptC__bg)>.conceptC__text {
    margin: 60px 0
}

.conceptC.conceptC2 .conceptC__text {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

.conceptC p {
    line-height: 30px
}

.conceptC .text--verticalPC p {
    line-height: 2;
    height: max-content
}

@media (max-width: 767px) {
    .conceptC .conceptC__bg.container {
        padding: 30px 20px
    }

    .conceptC.conceptC__bg {
        padding: 30px 20px;
        background-size: cover;
        background-attachment: inherit
    }

    .conceptC.conceptC__bg.container {
        background-size: cover
    }

    .conceptC.conceptC__bg .container {
        padding: 0
    }

    .conceptC .conceptC__text {
        position: relative;
        z-index: 3;
        background: #fff;
        padding: 30px 20px;
        margin: 0;
        width: 100% !important
    }

    .conceptC .conceptC__text p {
        line-height: 24px
    }

    .conceptC .conceptC__text--right {
        margin: 0
    }
}

.conceptC .bgTransparent {
    background: transparent !important
}

@media (min-width: 768px) {
    .conceptC .bgTransparent {
        width: 600px !important;
        padding: 60px 0 !important
    }
}

@media (max-width: 767px) {
    .conceptC .bgTransparent {
        padding: 0 !important
    }
}

.conceptC__bg {
    z-index: 2;
    overflow: hidden;
    position: relative;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.conceptC__bg.container {
    background-size: 1200px auto
}

.conceptD__row {
    display: flex;
    overflow: hidden
}

.conceptD__img,
.conceptD__text {
    max-width: calc(50% + 30px);
    flex: 0 0 calc(50% + 30px)
}

.conceptD__img {
    position: relative;
    z-index: 2
}

.conceptD__img img {
    z-index: 2;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 60px;
    left: 0;
    max-width: 100%;
    width: 100%;
    height: calc(100% - 60px);
    -o-object-fit: cover;
    object-fit: cover
}

@media all and (-ms-high-contrast: none) {
    .conceptD__img img {
        position: relative;
        height: auto !important
    }
}

.conceptD__text {
    position: relative;
    z-index: 3;
    margin: 60px 0 0 -60px;
    padding: 60px;
    background: #fff
}

.conceptD__text p {
    line-height: 30px
}

.conceptD2 .conceptD__text {
    margin: 111px 0 111px -60px
}

@media (max-width: 767px) {
    .conceptD2 .container {
        padding: 0
    }
}

@media (max-width: 767px) {
    .conceptD2 .conceptD__text {
        margin: -100px 15px 0
    }
}

@media (min-width: 768px) {
    .conceptD__row--textLeft {
        padding-bottom: 60px
    }

    .conceptD__row--textLeft .conceptD__img {
        order: 2;
        margin-top: 60px
    }

    .conceptD__row--textLeft img {
        bottom: -60px;
        height: calc(100% + 60px)
    }

    .conceptD__row--textLeft .conceptD__text {
        order: 1;
        margin: 0 -60px 0 0;
        padding: 60px
    }
}

@media (max-width: 767px) {
    .conceptD__row {
        flex-wrap: wrap
    }

    .conceptD__img,
    .conceptD__text {
        max-width: 100%;
        flex: 0 0 100%
    }

    .conceptD__img img {
        position: relative;
        bottom: 0;
        height: auto
    }

    .conceptD__text {
        position: relative;
        z-index: 3;
        margin: -60px 15px 0;
        max-width: calc(100% - 30px);
        padding: 40px 20px;
        background: #000;
        color: #fff
    }

    .conceptD__text h2 span,
    .conceptD__text h2 small {
        color: #fff
    }

    .conceptD__text p {
        font-size: 12px
    }
}

.conceptE__bg {
    position: relative;
    overflow: hidden;
    height: 400px;
    z-index: 2
}

.conceptE__bg img {
    position: absolute;
    top: -300%;
    bottom: -300%;
    left: -300%;
    right: -300%;
    margin: auto;
    width: 1920px;
    max-width: none
}

.conceptE__text {
    width: 750px;
    position: relative;
    z-index: 3;
    margin-top: -100px;
    margin-left: auto;
    margin-right: auto;
    background: #fff;
    box-shadow: 0 2px 4px #00000040;
    padding: 40px
}

.conceptE__text h2 {
    margin-bottom: 15px
}

@media (max-width: 991px) {
    .conceptE__text {
        padding: 30px 15px;
        width: calc(100% - 30px);
        margin: -50px 15px 0
    }
}

.bgBlack {
    background: #000;
    color: #fff
}

.bgBlack h2 span,
.bgBlack h2 small {
    color: #fff
}

.bgBlack.conceptC__text {
    background: #000000e6
}

@media (min-width: 768px) {
    .itemArrange__wrap {
        display: flex;
        flex-wrap: wrap
    }

    .itemArrange__wrap>* {
        flex: 0 0 100%;
        max-width: 100%
    }

    .itemArrange--typeA>*:nth-child(2n) .itemArrange__img {
        order: 2
    }

    .itemArrange--typeA>*:nth-child(2n) .itemArrange__img:after {
        bottom: auto;
        top: -40px
    }

    .itemArrange--typeA>*:nth-child(2n) .itemArrange__text {
        margin-bottom: 30px !important
    }
}

.itemArrange h3 {
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 12px
}

.itemArrange *:last-child {
    margin-bottom: 0 !important
}

.itemArrange--typeA .itemArrange__img:after {
    content: "";
    display: block;
    position: absolute;
    width: 1px;
    height: 100px;
    background: #000;
    inset: auto 40px -60px auto
}

.itemArrange--typeB .itemArrange__wrap {
    padding: 30px
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__img {
    flex: 0 0 44%;
    max-width: 44%;
    margin-bottom: 0
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__text {
    flex: 0 0 52%;
    max-width: 52%;
    margin-left: 4%
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__text p {
    margin-bottom: 20px
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__text .itemArrange__price {
    letter-spacing: 1px;
    line-height: 24px;
    font-size: 22px
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__text .itemArrange__price small {
    padding-left: 3px;
    font-size: 10px
}

.itemArrange--typeB .itemArrange__wrap .itemArrange__text .button {
    max-width: 160px
}

.itemArrange--typeE .itemArrange__text {
    padding: 0 10px
}

.itemArrange--typeE .itemArrange__text h3 {
    margin-bottom: 5px;
    font-size: 24px
}

.itemArrange--typeC .itemArrange__img,
.itemArrange--typeD .itemArrange__img {
    margin-bottom: 0
}

.itemArrange--typeC .itemArrange__text,
.itemArrange--typeD .itemArrange__text {
    padding: 40px
}

.itemArrange--typeC .itemArrange__text .h2C,
.itemArrange--typeD .itemArrange__text .h2C {
    line-height: 24px;
    font-size: 18px;
    margin-bottom: 15px
}

.itemArrange--typeC .itemArrange__text .button,
.itemArrange--typeD .itemArrange__text .button {
    max-width: 200px
}

.itemArrange--typeD_row {
    display: flex;
    flex-wrap: wrap
}

.itemArrange--typeD_row.itemArrange__text--left {
    flex-direction: row-reverse
}

.itemArrange--typeD_row .itemArrange__img {
    position: relative;
    flex: 0 0 57%;
    max-width: 57%;
    min-height: 1px
}

.itemArrange--typeD_row .itemArrange__img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.itemArrange--typeD_row .itemArrange__text {
    flex: 0 0 43%;
    max-width: 43%
}

.itemArrange__img {
    display: block;
    margin-bottom: 20px;
    position: relative
}

@media screen and (max-width: 767px) {
    .itemArrange h3 {
        font-size: 18px
    }

    .itemArrange [class*=col] {
        margin-bottom: 30px
    }

    .itemArrange--typeB .itemArrange__wrap {
        padding: 15px;
        display: flex;
        flex-wrap: wrap
    }

    .itemArrange--typeB .itemArrange__wrap>* {
        flex: 0 0 100% !important;
        max-width: 100% !important
    }

    .itemArrange--typeB .itemArrange__wrap .itemArrange__text {
        padding: 20px;
        margin-left: 0
    }

    .itemArrange--typeD .itemArrange--typeD_row .itemArrange__img {
        flex: 0 0 100%;
        max-width: 100%
    }

    .itemArrange--typeD .itemArrange--typeD_row .itemArrange__img .conceptF__bg {
        position: static;
        -o-object-fit: inherit;
        object-fit: inherit
    }

    .itemArrange--typeD .itemArrange--typeD_row .itemArrange__text {
        flex: 0 0 100%;
        max-width: 100%
    }

    .itemArrange--typeD .itemArrange__text {
        padding: 30px 20px
    }

    .itemArrange--typeD .itemArrange__text .text--right {
        text-align: left !important
    }

    .itemArrange__text .button {
        display: block
    }

    .itemArrange__text .button span {
        width: 100% !important;
        max-width: 100% !important
    }
}

.itemArrange--typeG p+.itemArrange__price {
    margin-top: -10px
}

.itemArrange--typeG .itemArrange__price {
    font-weight: 500;
    font-size: 16px
}

.itemArrange--typeG .itemArrange__price small {
    font-size: 12px;
    font-weight: 500
}

.itemArrange__img img {
    display: block
}

.keywordSearch .row {
    align-items: center;
    justify-content: center
}

@media (min-width: 768px) {
    .keywordSearch .row {
        flex-wrap: nowrap
    }
}

.keywordSearch .button {
    border-radius: 0;
    width: 100%;
    max-width: 345px;
    margin: 30px 0
}

@media (max-width: 767px) {
    .keywordSearch .button {
        margin: 15px 0
    }
}

.ks__searchForm {
    padding-right: 20px;
    margin-bottom: 0
}

@media (max-width: 767px) {
    .ks__searchForm {
        padding-right: 7.5px
    }
}

.ks__keywords {
    margin-bottom: 0
}

@media (max-width: 767px) {
    .ks__keywords {
        border: 0;
        padding-top: 20px
    }
}

.keywordList {
    display: flex;
    flex-wrap: wrap;
    list-style: none
}

@media (max-width: 767px) {
    .keywordList {
        margin: 0 -5px;
        justify-content: center
    }
}

.keywordList li {
    margin: 5px
}

@media (max-width: 767px) {
    .keywordList li {
        margin: 0 2.5px 5px
    }
}

.keywordList li a {
    display: block;
    background: #f2f2f2;
    border: 1px solid #f2f2f2;
    font-size: 12px;
    line-height: 16px;
    padding: 3px .5em;
    text-align: center;
    border-radius: 6px
}

.keywordList li a:hover {
    background: transparent
}

@media (max-width: 479px) {
    .keywordList li a {
        font-size: 10px
    }
}

@media (min-width: 768px) {
    .keywordSearch--typeA .ks__searchForm {
        flex: 0 0 25%;
        max-width: 25%
    }
}

@media (min-width: 768px) {
    .keywordSearch--typeA .ks__keywords {
        flex: 0 0 auto;
        max-width: 75%;
        width: auto
    }
}

.keywordSearch--typeB .ks__searchForm {
    width: 600px;
    max-width: 100%;
    margin: 0 auto 30px
}

.keywordSearch--typeB .ks__keywords {
    padding-top: 0;
    display: flex;
    justify-content: center;
    align-items: center
}

.keywordSearch--typeB .ks__keywords h3 {
    flex: 0 0 80px;
    font-weight: 500
}

@media (max-width: 767px) {
    .keywordSearch--typeB .ks__keywords h3 {
        font-size: 12px
    }

    .keywordSearch--typeB .ks__keywords ul {
        justify-content: flex-start
    }
}

.keywordSearch--typeB .keywordList {
    justify-content: center
}

table.shopInfoTable {
    width: 100%;
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 20px
}

@media (max-width: 767px) {
    table.shopInfoTable {
        font-size: 12px;
        line-height: 20px
    }
}

table.shopInfoTable th {
    font-weight: 500;
    text-align: left;
    line-height: 24px;
    padding: 2px 0;
    border: none
}

@media (max-width: 767px) {
    table.shopInfoTable th {
        width: 25%
    }

    table.shopInfoTable th.bg {
        width: 30%
    }
}

table.shopInfoTable th img {
    display: inline-block;
    margin-right: 12px
}

table.shopInfoTable th.bg {
    background-color: #f2f2f2;
    padding: 10px;
    border-bottom: 1px solid #fff;
    white-space: nowrap
}

table.shopInfoTable td {
    border: none;
    line-height: 24px;
    padding: 2px 0 2px 10px;
    text-align: left
}

.shopInfo--text h3 {
    margin-top: 20px
}

.shopInfo--text.alignCenter h3 {
    margin-top: 0
}

.shopInfo--text.alignCenter table.shopInfoTable {
    margin-bottom: 0
}

@media (max-width: 767px) {
    .shopInfoSec .container {
        padding: 0
    }

    .shopInfoSec .row {
        margin: 0
    }

    .shopInfoSec [class*=col-] {
        padding: 0
    }

    .shopInfoSec .shopInfo--text .h3A {
        padding: 0 15px
    }

    .shopInfoSec .shopInfo--text .shopInfoTable {
        max-width: calc(100% - 30px);
        margin-left: auto;
        margin-right: auto
    }
}

.shoppingGuide {
    text-align: center
}

.shoppingGuide.highlight [class*=col] .inner {
    background: #fff
}

.shoppingGuide [class*=col] {
    margin-bottom: 0
}

@media (max-width: 767px) {
    .shoppingGuide [class*=col] {
        margin-bottom: 15px
    }
}

.shoppingGuide .inner {
    padding: 20px 10px
}

.shoppingGuide h3 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: #5ca1ae;
    margin-bottom: 7px
}

.shoppingGuide picture {
    margin: 8px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px
}

.shoppingGuide p {
    font-size: 14px;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 0
}

@media (max-width: 768px) {
    .shoppingGuide p {
        font-size: 12px
    }
}

.shoppingGuide p small {
    font-weight: 400;
    font-size: 10px;
    line-height: 14px
}

.shoppingGuide i.material-icons {
    font-size: 48px;
    margin: 10px auto
}

.shoppingGuide__title {
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    border-bottom: 2px solid #5ca1ae;
    line-height: 1.5;
    padding: 8px 0;
    margin-bottom: 30px
}

.shoppingGuide__title i {
    display: inline-block;
    font-size: 28px;
    margin-right: 14px;
    vertical-align: middle
}

@media (max-width: 768px) {
    .shoppingGuide__title {
        font-size: 16px
    }
}

.userGuide h2 {
    border-color: #000;
    padding: 5px 0
}

@media (max-width: 767px) {
    .userGuide h2 {
        font-size: 14px
    }
}

.userGuide i {
    vertical-align: middle;
    margin-right: 10px
}

.userGuide h3 {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 8px
}

.userGuide h3+h3 {
    margin-top: 24px
}

.userGuide__card {
    list-style: none;
    display: flex;
    margin: 0 -5px 24px
}

.userGuide__card li {
    list-style: none;
    padding: 0 5px
}

.userGuide__info {
    margin-top: 24px;
    margin-bottom: 24px;
    padding: 10px;
    background: #fff;
    text-align: center;
    font-weight: 500
}

.userGuide__info span {
    font-size: 16px
}

.userGuide__info strong {
    color: #5ca1ae;
    font-size: 16px
}

.userGuide__btn {
    display: inline-block;
    padding: 12px 24px 12px 12px;
    font-size: 14px;
    font-weight: 500;
    background: #fff;
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    margin-bottom: 24px;
    width: 100%
}

.userGuide__btn:after {
    right: 10px !important
}

.userGuide__btn:hover {
    color: #5ca1ae
}

.userGuide__btn i {
    font-size: 20px;
    color: #5ca1ae
}

.userGuide__tel {
    margin-bottom: 24px
}

.userGuide__tel p {
    margin-bottom: 5px;
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    letter-spacing: -1px
}

.userGuide__tel i {
    margin-right: 8px;
    font-size: 20px;
    vertical-align: middle;
    line-height: 24px;
    color: #5ca1ae
}

@media (max-width: 991px) {
    .userGuide__btn {
        width: 100%;
        text-align: center
    }

    .userGuide .col-sp-12 {
        margin-bottom: 30px
    }

    .userGuide h3 {
        font-size: 14px
    }
}

.userGuide__btn.arrow {
    padding-right: 25px
}

@media (min-width: 768px) {
    .userGuide .hasChildren--clickSP>.mb30:last-child {
        margin-bottom: 0 !important
    }
}

@media (max-width: 767px) {
    .mb0--sp {
        margin-bottom: 0 !important
    }

    .userGuide .hasChildren--clickSP>div {
        display: none
    }

    .userGuide .hasChildren--clickSP>h2 {
        position: relative;
        cursor: pointer
    }

    .userGuide .hasChildren--clickSP>h2:before,
    .userGuide .hasChildren--clickSP>h2:after {
        width: 10px;
        height: 2px;
        transform: translateY(-50%);
        border: 0;
        right: 13px;
        background: #000;
        display: block;
        position: absolute;
        transition: .15s;
        top: 50%
    }

    .userGuide .hasChildren--clickSP>h2:after {
        content: ""
    }

    .userGuide .hasChildren--clickSP>h2:before {
        content: "";
        display: block;
        position: absolute;
        transition: .15s;
        top: 50%;
        transform: rotate(90deg) translateY(-50%);
        transform-origin: top center
    }

    .userGuide .hasChildren--clickSP>h2.open:before {
        opacity: 0;
        transform: translateY(-50%)
    }

    .userGuide .hasChildren--clickSP>h2:hover:before,
    .userGuide .hasChildren--clickSP>h2:hover:after {
        background: #5ca1ae;
        right: 13px !important
    }
}

.tabContent {
    display: none
}

.tabContent.active {
    display: block
}

.tabSwitch {
    padding-bottom: 15px;
    margin-bottom: 10px
}

.tabSwitch span {
    display: block;
    text-align: center
}

.tabSwitch li {
    text-align: center
}

@media (max-width: 992px) {
    .tabSwitch.scrollX {
        justify-content: flex-start !important;
        overflow-x: scroll;
        overflow-y: visible
    }

    .tabSwitch.scrollX>li {
        white-space: nowrap;
        flex-grow: auto
    }

    .tabSwitch.scrollX>li:first-child {
        margin-left: 0
    }

    .tabSwitch>li {
        font-size: 11px !important
    }
}

.tabSwitch,
.tabSwitch>li {
    list-style: none;
    transition: .15s;
    cursor: pointer
}

.tabSwitch:hover,
.tabSwitch>li:hover {
    transition: .15s
}

.tab--typeB .tabSwitch,
.tab--typeC .tabSwitch,
.tab--typeD .tabSwitch {
    display: flex;
    align-items: center;
    justify-content: center
}

.tab--typeA .tabSwitch {
    display: flex;
    justify-content: center;
    margin-left: 0;
    margin-right: 0
}

.tab--typeA .tabSwitch li {
    pointer-events: all;
    justify-content: center;
    background: #f2f2f2;
    font-size: 16px;
    padding: 12px;
    line-height: 24px;
    font-weight: 500;
    margin-bottom: 0;
    position: relative
}

@media (max-width: 767px) {
    .tab--typeA .tabSwitch li {
        padding: 8px;
        line-height: 1.5
    }
}

.tab--typeA .tabSwitch li:not(:last-child) {
    border-right: 1px solid #dfdfdf
}

.tab--typeA .tabSwitch li:hover {
    color: #5ca1ae
}

.tab--typeA .tabSwitch li:after {
    transition: .15s;
    content: "";
    display: block;
    position: absolute;
    inset: auto 0 -12px 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 15px 0 15px;
    border-color: transparent transparent transparent transparent
}

.tab--typeA .tabSwitch li.active {
    background: #5ca1ae;
    color: #fff;
    border-right: 1px solid #dfdfdf;
    transition: .15s
}

.tab--typeA .tabSwitch li.active:after {
    transition: .15s;
    border-color: #5ca1ae transparent transparent transparent
}

.tab--typeD .tabSwitch li,
.tab--typeB .tabSwitch li {
    pointer-events: all;
    border-bottom: 4px solid transparent;
    padding: 15px 40px;
    font-size: 16px;
    font-weight: 500;
    position: relative
}

.tab--typeD .tabSwitch li:hover,
.tab--typeB .tabSwitch li:hover {
    color: #5ca1ae
}

.tab--typeD .tabSwitch li:after,
.tab--typeB .tabSwitch li:after {
    content: "";
    position: absolute;
    inset: 15px 0 15px auto;
    display: block;
    width: 1px;
    background: #dfdfdf
}

.tab--typeD .tabSwitch li.active,
.tab--typeB .tabSwitch li.active {
    border-bottom: 4px solid #5ca1ae;
    font-weight: 500;
    color: #5ca1ae
}

@media (max-width: 992px) {

    .tab--typeD .tabSwitch li,
    .tab--typeB .tabSwitch li {
        padding: 1em 15px;
        font-size: 12px
    }
}

.tab--typeD .tabSwitch li {
    margin: 0 15px
}

.tab--typeD .tabSwitch li:after {
    inset: 15px -15px 15px auto
}

.tab--typeD .tabSwitch li:before {
    content: "";
    display: block;
    position: absolute;
    inset: auto 0 -7px 0;
    height: 2px
}

.tab--typeD .tabSwitch li.active {
    border-bottom: none;
    background: #5ca1ae;
    color: #fff
}

.tab--typeD .tabSwitch li.active:before {
    content: "";
    background: #5ca1ae
}

.tab--typeC .tabSwitch li {
    pointer-events: all;
    padding: 0 5px;
    min-width: auto
}

.tab--typeC .tabSwitch li>span {
    display: block;
    border-radius: 100px;
    min-width: auto;
    border: 2px solid #dfdfdf;
    padding: 6px 40px;
    line-height: 24px;
    font-weight: 500;
    transition: .15s
}

.tab--typeC .tabSwitch li:hover span {
    color: #5ca1ae;
    background: #f2f2f2;
    transition: .15s
}

.tab--typeC .tabSwitch li.active>span {
    border: 2px solid #5ca1ae;
    color: #fff;
    background: #5ca1ae
}

.tabSwitch--2row>li {
    flex: 0 0 50%;
    text-align: center
}

.tabSwitch--3row>li {
    flex: 0 0 33.333%;
    text-align: center
}

.tabSwitch--4row>li {
    flex: 0 0 25%;
    text-align: center
}

.faqWrap {
    margin-bottom: 60px !important
}

.faqWrap dl {
    display: block;
    box-sizing: border-box;
    padding: 20px;
    margin: 0;
    margin-bottom: 0 !important;
    border: none !important;
    border-top: 1px solid #dfdfdf !important;
    border-radius: 0 !important;
    background: none !important;
    position: relative
}

.faqWrap dl:before {
    content: "Q.";
    position: absolute;
    font-size: 20px;
    color: #000 !important;
    font-weight: 500 !important;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

.faqWrap dl:last-child {
    border-bottom: 1px solid #dfdfdf !important
}

.faqWrap dl dt {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    padding-right: 50px;
    cursor: pointer
}

@media (max-width: 767px) {
    .faqWrap dl dt {
        font-size: 14px
    }
}

.faqWrap dl dt:before,
.faqWrap dl dt:after {
    content: "" !important;
    top: 2px !important;
    left: auto !important;
    right: 20px !important;
    width: 2px !important;
    height: 18px !important;
    /* border-left: none !important */
}

.faqWrap dl dt:after {
    top: 2px !important;
    transform: rotate(-90deg) !important
}

.faqWrap dl dd {
    display: none;
    font-size: 16px;
    line-height: 24px
}

@media (max-width: 767px) {
    .faqWrap dl dd {
        line-height: 1.6;
        font-size: 12px
    }
}

.faqWrap dl dd:before {
    font-weight: 500 !important
}

.faqWrap dl dt,
.faqWrap dl dd {
    padding-left: 36px;
    position: relative;
    text-align: left
}

.faqWrap dl dt:before,
.faqWrap dl dd:before {
    position: absolute;
    left: 0;
    top: 2px;
    font-size: 20px;
    line-height: 1;
    font-weight: 500;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

@media (max-width: 767px) {

    .faqWrap dl dt,
    .faqWrap dl dd {
        padding-left: 30px;
        line-height: 20px
    }

    .faqWrap dl dt:before,
    .faqWrap dl dd:before {
        font-size: 20px
    }
}

.faqWrap.faqWrap--noJS dl dd {
    display: block
}

.faqWrap.faqWrap--noJS dl dt {
    border-bottom: 1px solid #dfdfdf;
    margin-bottom: 16px;
    padding-bottom: 16px;
    cursor: auto
}

.faqWrap.faqWrap--noJS dl dt:after {
    content: none
}

.faqWrap dt:not(.open)+dd {
    visibility: visible !important;
    opacity: 1 !important;
    padding: 20px 20px 0 40px;
    margin-top: 20px
}

.faqWrap dl dd:before {
    top: 18px;
    left: 2px !important;
    color: #5298a4 !important
}

.snsFollow {
    padding: 110px 10px;
    position: relative;
    overflow: hidden
}

@media (max-width: 767px) {
    .snsFollow {
        padding: 95px 0
    }
}

.snsFollow_row {
    display: flex;
    align-items: center;
    gap: 20px 0
}

@media (max-width: 767px) {
    .snsFollow_row {
        flex-wrap: wrap
    }
}

.snsFollow_center {
    justify-content: center
}

.snsFollow_left {
    justify-content: flex-start
}

.snsFollow_right {
    justify-content: flex-end
}

.snsFollow_row__wrap {
    padding: 0 15px
}

@media (max-width: 767px) {
    .snsFollow_row__wrap {
        width: 100%;
        padding: 0
    }
}

.snsFollow_row__wrap .snsNav li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    background-color: #fff;
    border-radius: 50%
}

@media (max-width: 767px) {
    .snsFollow_row__wrap .snsNav li a {
        width: 60px;
        height: 60px
    }
}

@media (max-width: 767px) {
    .snsFollow_row__wrap .snsNav {
        justify-content: center
    }
}

@media (max-width: 767px) {
    .snsFollow__textWrap {
        width: 100%
    }
}

table.specChart {
    width: 100%;
    border-collapse: collapse
}

table.specChart tr {
    border-bottom: 1px solid #dfdfdf
}

table.specChart th,
table.specChart td {
    padding: 5px 0;
    text-align: center
}

table.specChart th {
    width: 30%;
    font-weight: 400;
    font-size: 13px
}

table.specChart td {
    width: 20%
}

table.specChart td span {
    font-size: 12px;
    background: #f2f2f2;
    border: 1px solid #dfdfdf;
    color: #ccc;
    text-align: center;
    display: block;
    margin: 5px;
    padding: 5px
}

table.specChart td.select span {
    background: #5ca1ae;
    color: #fff
}

.specTableWrap {
    overflow: auto;
    margin-bottom: 40px
}

.specTableWrap table {
    border-collapse: collapse;
    border: 1px solid #dfdfdf
}

.specTableWrap th {
    background: #f2f2f2
}

.specTableWrap th,
.specTableWrap td {
    border: 1px solid #dfdfdf;
    font-weight: 400;
    font-size: 13px;
    padding: 10px 15px;
    min-width: 100px;
    text-align: center
}

[class*=visibility] {
    content-visibility: auto
}

.visibility200 {
    contain-intrinsic-size: 200px
}

.visibility300 {
    contain-intrinsic-size: 300px
}

.visibility500 {
    contain-intrinsic-size: 500px
}

.visibility1000 {
    contain-intrinsic-size: 1000px
}

.visibility1500 {
    contain-intrinsic-size: 1500px
}

.visibility2000 {
    contain-intrinsic-size: 2000px
}

.voiceBox {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    background: #f2f2f2;
    border-radius: 10px;
    margin: 0;
    height: 100%
}

.voiceBox__img {
    max-width: 140px;
    flex: 0 0 140px;
    margin-right: 15px;
    text-align: center
}

.voiceBox__text p {
    margin-bottom: 15px;
    font-size: 12px
}

.voiceBox__text p:last-child {
    margin-bottom: 0
}

.voiceBox__user {
    border-top: 1px solid #000;
    padding-top: 15px;
    font-size: 12px;
    display: block;
    font-style: normal
}

@media (max-width: 991px) {
    .voiceBox__img {
        max-width: 100%;
        margin-bottom: 15px
    }

    .voiceBox {
        display: block;
        padding: 15px;
        background: #f2f2f2;
        border-radius: 10px
    }

    .voiceBox__user {
        text-align: right
    }
}

.gallery--typeA>li {
    position: relative;
    padding-top: 100%
}

.gallery--typeA svg,
.gallery--typeA img {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 991px) {
    ul.gallery--typeA {
        display: flex;
        margin-left: -3.5px;
        margin-right: -3.5px;
        flex-wrap: wrap
    }

    ul.gallery--typeA:not(.gallery--noGutters) img {
        width: calc(100% - 7px);
        height: calc(100% - 7px);
        left: 3.5px;
        right: 3.5px
    }

    ul.gallery--typeA>li {
        list-style: none;
        margin-bottom: 0;
        padding-top: 33.333%;
        max-width: 33.333%;
        flex: 0 0 33.333%
    }

    ul.gallery--noGutters {
        margin-left: 0;
        margin-right: 0
    }

    ul.gallery--noGutters>li {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 0
    }
}

@media (min-width: 992px) {
    ul.gallery--typeA {
        display: grid;
        width: 100%;
        grid-template-rows: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
        grid-auto-flow: column;
        grid-row-gap: 15px;
        grid-column-gap: 15px
    }

    ul.gallery--typeA.gallery--typeA3 {
        grid-template-rows: auto;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
        grid-auto-flow: initial
    }

    ul.gallery--noGutters {
        grid-row-gap: 0;
        grid-column-gap: 0
    }

    ul.gallery--typeA>li {
        list-style: none
    }

    ul.gallery--typeA1>li:nth-of-type(2),
    ul.gallery--typeA1>li:nth-of-type(4),
    ul.gallery--typeA1>li:nth-of-type(8) {
        grid-row: span 2;
        grid-column: span 2
    }

    ul.gallery--typeA2>li:nth-of-type(1),
    ul.gallery--typeA2>li:nth-of-type(5),
    ul.gallery--typeA2>li:nth-of-type(7) {
        grid-row: span 2;
        grid-column: span 2
    }
}

@media all and (min-width: 992px) and (-ms-high-contrast: none) {
    ul.gallery--typeA {
        display: flex;
        margin-left: -7.5px;
        margin-right: -7.5px;
        flex-wrap: wrap
    }

    ul.gallery--typeA>li {
        list-style: none;
        margin-bottom: 15px;
        max-width: 33.333%;
        flex: 0 0 33.333%;
        padding-top: 33.333%
    }

    ul.gallery--typeA>li:not(.gallery--noGutters) img {
        width: calc(100% - 15px);
        height: calc(100% - 15px);
        left: 7.5px;
        right: 7.5px
    }
}

.gallery--typeB {
    list-style: none;
    width: 100%;
    align-items: center
}

@media (max-width: 991px) {
    .gallery--typeB {
        width: calc(100% + 15px)
    }

    .gallery--typeB .gbSub {
        max-width: calc(100% + 15px);
        flex-basis: calc(100% + 15px)
    }
}

.gallery--typeB a {
    display: block;
    text-align: center
}

@media (min-width: 992px) {
    .gbMain {
        margin-bottom: 0
    }

    .gbSub a {
        position: relative;
        padding-top: 100%
    }

    .gbSub a img {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .gbSub.row {
        margin-bottom: -30px
    }
}

.hover-icon>li {
    position: relative
}

.hover-icon>li>a {
    display: block
}

.hover-icon>li>a span {
    opacity: 0;
    transition: opacity .3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

.hover-icon>li>a span img {
    max-width: 35px;
    position: initial;
    width: auto;
    height: auto
}

.hover-icon>li>a:hover span {
    opacity: 1;
    transition: opacity .3s ease;
    z-index: 2
}

.hover-icon>li>a:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    transition: opacity .3s ease
}

.hover-icon>li>a:before {
    background-color: #0009;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.hover-icon>li>a:hover:before {
    opacity: 1
}

#modalDetailSearch {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

#modalDetailSearch.open {
    opacity: 1;
    pointer-events: all;
    transition: .15s
}

#modalDetailSearch>form {
    width: 600px;
    max-width: calc(100% - 30px);
    max-height: 90vh;
    padding: 30px;
    background: #fff;
    z-index: 3;
    position: relative
}

#modalDetailSearch ul.ccSearch>li {
    max-width: 100%;
    flex: 0 0 100%;
    margin-bottom: 20px
}

#mdsBg,
#mdsClose {
    position: absolute;
    cursor: pointer;
    text-align: right
}

#mdsBg i,
#mdsClose i {
    display: inline-block
}

#mdsBg {
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000c
}

#mdsClose {
    z-index: 2;
    text-align: right;
    background: transparent;
    border: none;
    color: #fff;
    top: -40px;
    right: 0
}

#toTop,
.toDetailSearch {
    display: block;
    position: fixed;
    z-index: 995;
    bottom: 30px;
    right: 30px
}

#toTop a,
.toDetailSearch a {
    opacity: 1
}

#toTop a:hover,
.toDetailSearch a:hover {
    opacity: .8
}

@media (max-width: 992px) {

    #toTop,
    .toDetailSearch {
        bottom: 10px;
        right: 10px
    }
}

#toTop a {
    display: block;
    width: 80px;
    height: auto
}

#toTop a img {
    max-width: 100%;
    width: 100%;
    height: auto
}

.toDetailSearch {
    bottom: 90px
}

@media (max-width: 992px) {
    .toDetailSearch {
        bottom: 70px
    }
}

.toDetailSearch a {
    padding: 0 0 5px;
    width: 55px;
    height: 55px
}

.toDetailSearch a>span {
    display: block
}

.toDetailSearch i {
    display: block;
    text-align: center
}

.toDetailSearch small {
    display: block;
    text-align: center;
    font-size: 10px;
    font-weight: 400
}

.side__detailSearch {
    padding: 15px;
    margin-bottom: 30px;
    border: 1px solid #dfdfdf
}

.side__detailSearch ul,
.side__detailSearch li {
    list-style: none
}

.side__detailSearch .sideTitle {
    font-size: 14px;
    padding: 0;
    margin-bottom: 6px
}

.side__detailSearch select {
    width: 100%;
    padding: 6px;
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto
}

.side__detailSearch input[type=text],
.side__detailSearch input[type=tel] {
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    width: 100%;
    padding: 2px 5px
}

.side__detailSearch input[type=checkbox] {
    display: none
}

.side__detailSearch label {
    line-height: 1.6;
    display: block
}

.side__detailSearch .radioLabel,
.side__detailSearch .checkLabel {
    cursor: pointer;
    position: relative;
    width: auto;
    line-height: 24px
}

.side__detailSearch .radioLabel {
    box-sizing: border-box;
    display: inline-block;
    padding: 0 0 0 5px
}

.side__detailSearch .checkLabel {
    box-sizing: border-box;
    display: block;
    padding: 0 30px
}

.side__detailSearch .checkLabel:before {
    background: #fff;
    border: 1px solid #dfdfdf;
    content: "";
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px
}

.side__detailSearch .checkLabel.radio:before {
    border-radius: 50%
}

.side__detailSearch .checkLabel:after {
    content: "";
    border-right: 2px solid #5ca1ae;
    border-bottom: 2px solid #5ca1ae;
    box-sizing: border-box;
    display: block;
    height: 9px;
    left: 10px;
    margin-top: -6px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 6px
}

.side__detailSearch input[type=checkbox]:checked+.checkLabel:after {
    opacity: 1
}

.side__detailSearch input[type=checkbox]:checked+.checkLabel {
    background: #f2f2f2
}

.sds__box {
    margin-bottom: 15px
}

.sds__hotword {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #dfdfdf
}

.sds__hotword .sideTitle {
    padding: 0
}

.sds__hotword ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px
}

.sds__hotword ul li {
    margin: 0 5px 5px 0
}

.sds__hotword ul li a {
    display: block;
    font-size: 10px;
    background: #f2f2f2;
    padding: 5px;
    border-radius: 5px
}

.searchForm+.sds__hotword {
    border-top: none;
    padding-top: 0
}

.sds__priceRange {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.sds__priceRange input {
    max-width: calc(50% - 32px);
    flex: 0 0 calc(50% - 32px)
}

.sds__priceRange span {
    font-size: 12px
}

.sds__color ul {
    display: flex;
    margin: 5px -5px -10px
}

.sds__color ul li {
    list-style: none;
    flex: 0 0 34px;
    max-width: 34px;
    padding: 2px;
    margin: 0 10px 10px 0
}

.sds__color label {
    border-radius: 50%;
    position: relative;
    height: 34px;
    width: 34px;
    cursor: pointer
}

.sds__color label:before,
.sds__color label>div {
    position: absolute;
    display: block;
    border-radius: 50%
}

.sds__color label>div {
    top: 4px;
    right: 4px;
    bottom: 4px;
    left: 4px;
    z-index: 3
}

.sds__color label:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 1px solid #dfdfdf;
    background: #fff;
    z-index: 2
}

.sds__color label span {
    display: none
}

.sds__color input[type=checkbox]:checked+label:before {
    border-color: #5ca1ae !important;
    transition: .05s
}

#sds_submit {
    border-radius: 0;
    max-width: 100%;
    width: 100%
}

.hdrSearch--ds {
    background: #fff !important
}

.hdrSearch--ds .side__detailSearch {
    padding: 0;
    margin-bottom: 15px;
    border: none
}

.hdrSearch__wrap {
    overflow-x: hidden;
    overflow-y: scroll;
    max-height: calc(100svh - 120px)
}

.hdrSearch__inner {
    width: 550px;
    max-width: 100%;
    margin: auto
}

.hdrSearch__inner .searchForm {
    width: 100% !important
}

@media (min-width: 992px) {
    .main__detailSearch #sds_submit {
        display: block;
        max-width: 345px;
        margin: auto
    }

    .main__detailSearch .side__detailSearch {
        padding: 30px
    }
}

.wow {
    opacity: 0;
    transform: translateY(50px)
}

.wow.animated {
    opacity: 1;
    transition: 1.5s;
    transform: translateY(0)
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    transform: translateZ(0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

#mainSlider .slick-initialized .slick-slide{
  transition:0s;
}
@media (min-width: 992px) {
  #mainSlider .slick-slide{
    height:780px;
  }
}
#mainSlider .slick-initialized .slick-slide.fadeAnimetion{
  transition;0.5s;
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.nextBtn,
.prevBtn,
.slick-prev,
.slick-next {
    position: absolute;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0px;
    font-size: 0px;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    border: none;
    outline: none
}

.nextBtn:hover,
.nextBtn:focus,
.prevBtn:hover,
.prevBtn:focus,
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent
}

.nextBtn:hover:before,
.nextBtn:focus:before,
.prevBtn:hover:before,
.prevBtn:focus:before,
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1
}

.nextBtn.slick-disabled:before,
.prevBtn.slick-disabled:before,
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 1
}

.nextBtn:before,
.prevBtn:before,
.slick-prev:before,
.slick-next:before {
    font-family: slick;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-prev {
    left: -25px
}

[dir=rtl] .slick-prev {
    left: auto;
    right: -25px
}

.slick-prev:before {
    content: ""
}

[dir=rtl] .slick-prev:before {
    content: ""
}

.slick-next {
    right: -25px
}

[dir=rtl] .slick-next {
    left: -25px;
    right: auto
}

.slick-next:before {
    content: ""
}

[dir=rtl] .slick-next:before {
    content: ""
}

.slick-dotted.slick-slider {
    margin-bottom: 35px
}

.slick-dotted.slick-slider.dotsA {
    margin-bottom: 0
}

.slick-dots {
    position: absolute;
    bottom: -30px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 14px;
    width: 14px;
    margin: 0 10px;
    padding: 0;
    cursor: pointer
}

.slick-dots li button {
    border: 0;
    background: transparent;
    display: block;
    height: 14px;
    width: 14px;
    outline: none;
    line-height: 0px;
    font-size: 0px;
    color: transparent;
    padding: 5px;
    cursor: pointer
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 14px;
    height: 14px;
    line-height: 10px;
    text-align: center;
    background: #f2f2f2;
    border-radius: 50%;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
    background: #5ca1ae;
    opacity: 1
}

@media (max-width: 767px) {

    .slick-dots li,
    .slick-dots li button {
        height: 10px;
        width: 10px
    }

    .slick-dots li button:before {
        height: 10px;
        width: 10px
    }
}

.button,
.button--typeA,
.button--typeB,
.button--typeC,
.button--typeD,
.megaMenu__button,
a.button {
    position: relative;
    transition: .3s;
    width: 100%;
    min-width: 100px;
    max-width: 160px;
    line-height: 27px;
    padding: 0;
    display: inline-block;
    text-align: center;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif;
    font-weight: 500;
    border: 1px solid;
    border-color: #000
}


.button.arrow,
.button--typeA.arrow,
.button--typeB.arrow,
.button--typeC.arrow,
.button--typeD.arrow,
.megaMenu__button.arrow,
a.button.arrow {
    padding-right: 30px
}

.button:hover,
.button--typeA:hover,
.button--typeB:hover,
.button--typeC:hover,
.button--typeD:hover,
.megaMenu__button:hover,
a.button:hover {
    border-color: #5ca1ae;
    background-color: #fff;
    color: #5ca1ae;
    transition: .3s
}

.button span,
.button i,
.button--typeA span,
.button--typeA i,
.button--typeB span,
.button--typeB i,
.button--typeC span,
.button--typeC i,
.button--typeD span,
.button--typeD i,
.megaMenu__button span,
.megaMenu__button i,
a.button span,
a.button i {
    display: inline-block;
    vertical-align: middle;
    margin: 0 3px
}

.button span,
.button--typeA span,
.button--typeB span,
.button--typeC span,
.button--typeD span,
.megaMenu__button span,
a.button span {
    line-height: 24px
}

.button.block,
.button--typeA.block,
.button--typeB.block,
.button--typeC.block,
.button--typeD.block,
.megaMenu__button.block,
a.button.block {
    display: block;
    width: 100%
}

.button:before,
.button:after,
.button--typeA:before,
.button--typeA:after,
.button--typeB:before,
.button--typeB:after,
.button--typeC:before,
.button--typeC:after,
.button--typeD:before,
.button--typeD:after,
.megaMenu__button:before,
.megaMenu__button:after,
a.button:before,
a.button:after {
    box-shadow: none !important
}

.button--typeA,
a.button--typeA,
.button,
a.button {
    background: #fff;
    color: #000;
    font-size: 18px !important;
    padding: 0;
    min-height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 0 auto;
    letter-spacing: .04em
}

@media (min-width: 768px) {

    .button--typeA,
    a.button--typeA,
    .button,
    a.button {
        font-size: 14px !important;
        padding: 0;
        min-height: 40px
    }
}

.button--typeA.arrow:after,
a.button--typeA.arrow:after,
.button.arrow:after,
a.button.arrow:after {
    border-color: #fff;
    right: 15px
}

.button--typeA.arrow:hover,
a.button--typeA.arrow:hover,
.button.arrow:hover,
a.button.arrow:hover {
    border-color: #5ca1ae;
    background-color: #fff;
    color: #5ca1ae
}

.button--typeA.arrow:hover:after,
a.button--typeA.arrow:hover:after,
.button.arrow:hover:after,
a.button.arrow:hover:after {
    border-color: #5ca1ae;
    right: 10px
}

.button--typeB,
a.button--typeB {
    border: 1px solid #5ca1ae;
    background-color: #fff;
    color: #5ca1ae;
    border-radius: 0
}

.button--typeB:after,
a.button--typeB:after {
    border-color: #5ca1ae
}

.button--typeB:hover,
a.button--typeB:hover {
    background: #f2f2f2
}

.button--typeB.arrow:after,
a.button--typeB.arrow:after {
    border-color: #5ca1ae
}

.button--typeC,
a.button--typeC {
    padding: 0;
    padding-right: 0 !important;
    width: auto;
    background: none;
    border: none;
    box-shadow: none
}

.button--typeC span,
a.button--typeC span {
    margin: 0;
    border: 1px solid #5ca1ae;
    background-color: #fff;
    border-radius: 0;
    color: #5ca1ae;
    position: relative;
    z-index: 3;
    display: inline-block;
    padding: 10px 30px;
    font-weight: 500;
    letter-spacing: 2px
}

.button--typeC span:after,
a.button--typeC span:after {
    border-color: #5ca1ae;
    border-width: 1px
}

.button--typeC.arrow:after,
a.button--typeC.arrow:after {
    z-index: 4;
    border-color: #5ca1ae
}

.button--typeC.arrow:hover:after,
a.button--typeC.arrow:hover:after {
    border-color: #fff
}

.button--typeC:hover,
a.button--typeC:hover {
    box-shadow: none
}

.button--typeC:before,
a.button--typeC:before {
    z-index: 2;
    content: "";
    pointer-events: none;
    position: absolute;
    display: block;
    top: 5px;
    right: -5px;
    bottom: -5px;
    left: 5px;
    border: 1px solid #5ca1ae;
    border-radius: 0
}

.button--typeC:hover span,
a.button--typeC:hover span {
    background: #5ca1ae;
    color: #fff
}

.button--typeC:hover span:after,
a.button--typeC:hover span:after {
    border-color: #fff
}

.button--typeC:hover:before,
a.button--typeC:hover:before {
    transition: .15s;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.button--typeC.block span {
    display: block
}

.button--typeD,
a.button--typeD {
    padding: 0;
    padding-right: 0 !important;
    width: auto
}

.button--typeD span,
a.button--typeD span {
    border: 1px solid #5ca1ae;
    background-color: #fff;
    border-radius: 0;
    color: #5ca1ae;
    position: relative;
    z-index: 3;
    display: inline-block;
    padding: 15px 30px;
    font-weight: 500;
    letter-spacing: 2px
}

.button--typeD span:after,
a.button--typeD span:after {
    border-color: #5ca1ae;
    border-width: 1px
}

.button--typeD:before,
a.button--typeD:before {
    transition: .15s;
    z-index: 2;
    content: "";
    position: absolute;
    display: block;
    background: #5ca1ae;
    top: 5px;
    right: -5px;
    bottom: -5px;
    left: 5px;
    border: 1px solid #5ca1ae;
    border-radius: 0
}

.button--typeD:hover span,
a.button--typeD:hover span {
    background: #5ca1ae;
    color: #fff
}

.button--typeD:hover span:after,
a.button--typeD:hover span:after {
    border-color: #fff
}

.button--typeD:hover:before,
a.button--typeD:hover:before {
    transition: .15s;
    top: 0;
    right: -0px;
    bottom: -0px;
    left: 0
}

.button--typeE,
a.button--typeE {
    display: inline-block;
    padding-right: 25px;
    position: relative
}

.button--typeE:before,
a.button--typeE:before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background-color: #5ca1ae;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.button--typeE:after,
a.button--typeE:after {
    border-color: #fff;
    position: absolute;
    right: 6px
}

.button--typeE:hover:after,
a.button--typeE:hover:after {
    right: 6px;
    border-color: #fff
}

.button--typeE2,
a.button--typeE2 {
    display: inline-block;
    padding-right: 70px;
    position: relative;
    line-height: 60px;
    font-weight: 500
}

.button--typeE2:before,
a.button--typeE2:before {
    content: "";
    display: block;
    width: 60px;
    height: 60px;
    background-color: #fff;
    border: 1px solid #5ca1ae;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.button--typeE2:after,
a.button--typeE2:after {
    content: "";
    width: 20px;
    height: 6px;
    border: none;
    border-bottom: 2px solid #5ca1ae;
    border-right: 2px solid #5ca1ae;
    transform: skew(45deg) translateY(-6px);
    position: absolute;
    top: 10px;
    right: 20px;
    bottom: 0;
    margin: auto;
    transition: .3s
}

.button--typeE2:hover:after,
a.button--typeE2:hover:after {
    right: 15px;
    transition: .3s;
    border-color: #5ca1ae
}

.button--typeF,
a.button--typeF {
    position: relative;
    transition: .3s;
    width: 170px;
    line-height: 70px;
    padding: 0 30px 0 70px;
    display: inline-block;
    text-align: center;
    font-weight: 500;
    border: 1px solid #5ca1ae;
    border-radius: 500px
}

.button--typeF:before,
a.button--typeF:before {
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    background-color: #5ca1ae;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 10px;
    bottom: 0;
    margin: auto
}

.button--typeF:after,
a.button--typeF:after {
    content: "";
    width: 20px;
    height: 6px;
    border: none;
    border-bottom: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: skew(45deg) translateY(-6px);
    position: absolute;
    top: 10px;
    left: 28px;
    bottom: 0;
    margin: auto;
    transition: .3s
}

.button--typeF:hover:after,
a.button--typeF:hover:after {
    left: 33px;
    border-color: #fff
}

.button.block {
    display: block;
    width: 100%;
    max-width: 100%
}

.copyright {
    line-height: 20px;
    text-align: center;
    font-size: 12px;
    color: #fff
}


.copyright--typeA {
    background: #5ca1ae;
    color: #fff
}

.copyright--typeB {
    border-top: 1px solid #dfdfdf
}
@media (max-width: 767px) {
  a.button,.button {
    max-width: 140px;
    font-size:15px !important;
  }
  .t-news a.button {
    font-size:14px !important;
    min-width: 110px !important;
      max-width: 110px !important;
      width: 110px !important;
        min-height: 30px !important;
  }
}
@media (min-width: 992px) {
    .fNav--typeA {
        padding: 40px 0
    }

    .fNav--typeA .fNav__list h3 {
        line-height: 20px;
        padding: 10px 0;
        font-size: 16px;
        border-bottom: 1px solid #dfdfdf;
        margin-bottom: 10px;
        text-align: left
    }

    .fNav--typeA .fNav__list li {
        text-align: left;
        line-height: 24px
    }

    .fNav--typeA .fNav__list li a:hover {
        color: #5ca1ae
    }

    .fNav--typeA .fNav__logo {
        text-align: right;
        margin-bottom: 30px
    }

    .fNav--typeA .snsNav {
        justify-content: flex-end
    }

    .fNav--typeA .snsNav li:last-child {
        margin-right: 0
    }

    .fNav--typeA .snsNav i {
        font-size: 30px
    }

    .fNav--typeB {
        padding: 30px 0
    }

    .fNav--typeB .fNav__logo {
        text-align: center;
        margin-bottom: 20px
    }

    .fNav--typeB .fNav__list {
        display: flex;
        justify-content: center;
        align-items: center
    }

    .fNav--typeB .fNav__list li {
        padding: 0 14px
    }

    .fNav--typeB .fNav__list li:not(:last-child) {
        border-right: 1px solid #000
    }

    .fNav--typeB .fNav__list li a:after {
        content: none !important
    }

    .fNav__list,
    .fNav__list ul,
    .fNav__list li {
        list-style: none
    }

    .fNav--typeC {
        padding-top: 20px;
        padding-bottom: 20px;
        display: flex;
        justify-content: space-between;
        align-items: center
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .fNav--typeC {
        display: block;
        padding-top: 0;
        padding-bottom: 0
    }
}

@media (min-width: 992px) {
    .fNav--typeC .snsNav {
        padding: 0 40px
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .fNav--typeC .snsNav {
        padding: 0
    }
}

@media (min-width: 992px) {
    .fNav--typeC .fNav__list {
        flex-grow: 2;
        display: flex;
        justify-content: flex-end;
        align-items: center
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .fNav--typeC .fNav__list {
        display: block
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .fNav--typeC .fNav__list li:not(:first-child) {
        margin-top: 20px
    }
}

@media (min-width: 992px) {
    .fNav--typeC .fNav__list li a {
        font-size: 12px
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .fNav--typeC .fNav__list li a {
        font-size: 16px;
        color: #fff
    }
}

@media (min-width: 992px) {
    .fNav--typeC .fNav__list li a:after {
        content: none !important
    }

    .fNav--typeD {
        background: #5ca1ae;
        padding: 20px 0
    }

    .fNav--typeD .fNav__list {
        display: flex;
        justify-content: center;
        align-items: center
    }

    .fNav--typeD .fNav__list a {
        color: #fff
    }

    .fNav--typeD .fNav__list li {
        padding: 0 20px;
        line-height: 20px
    }

    .fNav--typeD .fNav__list li a:after {
        content: none !important
    }
}

@media (max-width: 991px) {

    .fNav--typeA {
        padding-top: 10px
    }

    .fNav--typeA .fNav__list h3 {
        font-size: 16px;
        padding: 8px 0;
        line-height: 24px;
        border-bottom: 1px solid #dfdfdf;
        margin-bottom: 10px;
        text-align: left
    }

    .fNav--typeA .fNav__list ul li {
        line-height: 24px;
        text-align: left
    }

    .fNav--typeA .snsNav {
        justify-content: center;
        margin-bottom: 20px
    }

    .fNav--typeC .fNav__list {
        display: block;
        max-width: 100%;
        margin-bottom: 50px
    }

    .fNav--typeC .fNav__list li {
        list-style: none;
        border-right: none !important;
        padding: 0
    }

    .fNav--typeC .fNav__list li:not(:first-child) {
        margin-top: 20px
    }

    .fNav--typeC .fNav__list li a {
        display: block;
        line-height: 1.3;
        font-size: 14px;
        color: #fff
    }

    .fNav--typeC .fNav__list li a:after {
        content: none !important
    }

    .fNav--typeC .fNav__sns {
        margin-bottom: 45px;
        padding-left: 20px;
    }

    .fNav--typeC .fNav__sns .snsHeading {
        margin-bottom: 10px;
        line-height: 1.6;
        letter-spacing: .04em;
        color: #fff;
        font-size: 18px
    }

    .fNav--typeC .fNav__subList {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
        width: 100vw;
        margin: 0 calc(50% - 50vw) 40px;
        padding: 25px 35px 0;
        border-top: 1px solid white
    }

    .fNav--typeC .fNav__subList li {
        list-style: none;
        width: calc(50% - 10px)
    }

    .fNav--typeC .fNav__subList li a {
        display: block;
        line-height: 1.3;
        font-size: 12px;
        color: #fff
    }
}

.exNav.exNav--typeA ul li a,
.arrow,
.megaMenu .button,
.megaMenu .megaMenu__button,
.itemList--typeC .itemList__unit,
.articleList--typeB .articleList__text,
.articleList--typeD .articleList__wrap,
[class*=iconButton],
a[class*=iconButton],
.cateList .button,
.side__cateNav ul li a,
.drawer__nav li a,
.side__txtBnr,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a,
.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child,
.hdrCatMenu ul a,
.arrow--typeB,
.keywordRanking__toggle li a,
a.megaMenu__arrow,
li.hasChildren>a {
    position: relative;
    transition: .3s
}

.exNav.exNav--typeA ul li a:hover,
.arrow:hover,
.megaMenu .button:hover,
.megaMenu .megaMenu__button:hover,
.itemList--typeC .itemList__unit:hover,
.articleList--typeB .articleList__text:hover,
.articleList--typeD .articleList__wrap:hover,
[class*=iconButton]:hover,
a[class*=iconButton]:hover,
.cateList .button:hover,
.side__cateNav ul li a:hover,
.drawer__nav li a:hover,
.side__txtBnr:hover,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a:hover,
.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child:hover,
.hdrCatMenu ul a:hover,
.arrow--typeB:hover,
.keywordRanking__toggle li a:hover,
a.megaMenu__arrow:hover,
li.hasChildren>a:hover {
    transition: .3s
}

.exNav.exNav--typeA ul li a:after,
.arrow:after,
.megaMenu .button:after,
.megaMenu .megaMenu__button:after,
.itemList--typeC .itemList__unit:after,
.articleList--typeB .articleList__text:after,
.articleList--typeD .articleList__wrap:after,
[class*=iconButton]:after,
a[class*=iconButton]:after,
.cateList .button:after,
.side__cateNav ul li a:after,
.drawer__nav li a:after,
.side__txtBnr:after,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a:after,
.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child:after,
.hdrCatMenu ul a:after,
.arrow--typeB:after,
.keywordRanking__toggle li a:after,
a.megaMenu__arrow:after,
li.hasChildren>a:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: top center;
    transition: .15s
}

.exNav.exNav--typeA ul li a:hover:after,
.arrow:hover:after,
.megaMenu .button:hover:after,
.megaMenu .megaMenu__button:hover:after,
.itemList--typeC .itemList__unit:hover:after,
.articleList--typeB .articleList__text:hover:after,
.articleList--typeD .articleList__wrap:hover:after,
[class*=iconButton]:hover:after,
a[class*=iconButton]:hover:after,
.cateList .button:hover:after,
.side__cateNav ul li a:hover:after,
.drawer__nav li a:hover:after,
.side__txtBnr:hover:after,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a:hover:after,
.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child:hover:after,
.hdrCatMenu ul a:hover:after,
.arrow--typeB:hover:after,
.keywordRanking__toggle li a:hover:after,
a.megaMenu__arrow:hover:after,
li.hasChildren>a:hover:after {
    transition: .2s;
    margin-left: 3px;
    border-color: #5ca1ae
}

.megaMenu .button,
.megaMenu .megaMenu__button,
.side__cateNav ul li a,
.hdrCatMenu ul a,
.drawer__nav li a,
.keywordRanking__toggle li a,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a,
[class*=iconButton],
a[class*=iconButton],
.cateList .button,
.side__txtBnr,
.arrow {
    position: relative;
    padding-right: 15px
}

.megaMenu .button:after,
.megaMenu .megaMenu__button:after,
.side__cateNav ul li a:after,
.hdrCatMenu ul a:after,
.drawer__nav li a:after,
.keywordRanking__toggle li a:after,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a:after,
[class*=iconButton]:after,
a[class*=iconButton]:after,
.cateList .button:after,
.side__txtBnr:after,
.arrow:after {
    right: 15px
}

.megaMenu .button:hover:after,
.megaMenu .megaMenu__button:hover:after,
.side__cateNav ul li a:hover:after,
.hdrCatMenu ul a:hover:after,
.drawer__nav li a:hover:after,
.keywordRanking__toggle li a:hover:after,
[class*=fNav--type]:not(.fNav--typeA) .fNav__list a:hover:after,
[class*=iconButton]:hover:after,
a[class*=iconButton]:hover:after,
.cateList .button:hover:after,
.side__txtBnr:hover:after,
.arrow:hover:after {
    right: 12px
}

[class*=fNav--type]:not(.fNav--typeA) .fNav__list a {
    padding-right: 0
}

li.hasChildren>a:after {
    transform: rotate(135deg) translateY(-50%)
}

li.hasChildren>a:hover:after {
    border-color: #fff
}

.gNav.gNav--typeD>ul>li.hasChildren>a>span:after {
    transform: rotate(135deg) translateY(-50%) !important
}

.gNav.gNav--typeD>ul>li.hasChildren:hover>a>span:after,
.gNav.gNav--typeD>ul>li.hasChildren>a>span.open:after {
    transform: rotate(-45deg) translateY(-50%) !important
}

.arrow--none:after {
    content: none !important
}

.arrow--typeB,
a.arrow--typeB {
    padding-left: 50px;
    padding-right: 50px;
    position: relative
}

.arrow--typeB:after,
a.arrow--typeB:after {
    content: "";
    width: 30px;
    height: 8px;
    right: 15px;
    border: none;
    border-bottom: 1px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: skew(45deg) translateY(-6px)
}

.arrow--typeB:hover:after,
a.arrow--typeB:hover:after {
    right: 10px;
    border-color: #fff
}

.arrow--typeB.button--typeB:after,
a.arrow--typeB.button--typeB:after {
    border-color: #5ca1ae
}

.arrow--typeD,
a.arrow--typeD {
    position: relative
}

.arrow--typeD:before,
a.arrow--typeD:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid #ffffff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    margin: auto
}

.arrow--typeD:after,
a.arrow--typeD:after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    margin: auto
}

.arrow--typeE,
a.arrow--typeE {
    position: relative;
    padding-right: 45px
}

.arrow--typeE:before,
a.arrow--typeE:before {
    content: "";
    display: block;
    width: 45px;
    height: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.arrow--typeE:after,
a.arrow--typeE:after {
    content: "";
    width: 20px;
    height: 6px;
    border: none;
    border-bottom: 1px solid #5ca1ae;
    border-right: 2px solid #5ca1ae;
    transform: skew(45deg) translateY(-6px);
    position: absolute;
    top: 10px;
    right: 10px;
    bottom: 0;
    margin: auto;
    transition: .3s
}

.arrow--typeE:hover:after,
a.arrow--typeE:hover:after {
    right: 5px;
    transition: .3s
}

.iframe__wrap {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 66%
}

.iframe__wrap.narrow {
    padding-top: 40%
}

.iframe__wrap.xnarrow {
    padding-top: 25%
}

.iframe__wrap.square {
    padding-top: 100%
}

@media (max-width: 767px) {
    .iframe__wrap {
        padding-top: 66%
    }

    .iframe__wrap.xnarrow {
        padding-top: 40%
    }

    .fNav--typeC .fNav__sns {
        margin-bottom: 45px;
        padding-left: 0px;
    }

}

.iframe__wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.iframe__caption {
    margin-top: .5em
}

.fbWrap {
    text-align: center;
    width: 100%;
    overflow: hidden
}

.searchForm {
    position: relative;
    width: 100%
}

.searchForm .searchForm__inner {
    position: relative;
    height: 40px;
    background: #fff;
    display: flex;
    align-items: center
}

.searchForm input[type=text] {
    padding: 10px 45px 10px 14px;
    background: transparent;
    border: none;
    line-height: 1;
    width: 100%;
    display: none;
    font-size: 16px;
    transform: scale(.8);
    transform-origin: center left
}

.searchForm .searchForm__submit {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    line-height: 1;
    padding: 5px
}

.searchForm.searchFormA .searchForm__inner {
    border: 1px solid #dfdfdf
}

.searchForm.searchFormA .searchForm__inner,
.searchForm.searchFormC .searchForm__inner,
.searchForm.searchFormA .searchForm__inner input[type=text],
.searchForm.searchFormC .searchForm__inner input[type=text] {
    border-radius: 6px
}

.searchForm.searchFormB .searchForm__inner {
    border: 1px solid #dfdfdf;
    border-radius: 100px
}

.searchForm.searchFormB .searchForm__inner input[type=text] {
    border-radius: 100px
}

.searchForm.searchFormC .searchForm__inner {
    background: none
}

.searchForm.searchFormD .searchForm__inner {
    background: #f2f2f2;
    border-radius: 100px
}

.searchForm.searchFormD .searchForm__inner input[type=text] {
    border-radius: 100px
}

.searchForm.searchFormE {
    border-bottom: 1px solid #dfdfdf
}

.searchForm i.material-icons {
    color: #fff;
    font-size: 32px;
    margin-top: 5px
}

.searchForm input[type=text]:focus {
    outline: none;
    box-shadow: none
}

.keywordRanking__toggle {
    pointer-events: none;
    opacity: 0;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff
}

.keywordRanking__toggle.open {
    pointer-events: all;
    opacity: 1
}

.keywordRanking__toggle h3 {
    border-bottom: 1px solid #dfdfdf;
    font-size: 16px;
    padding: 12px 15px
}

.keywordRanking__toggle .keywordRanking__close {
    display: block;
    margin: 15px;
    border: 1px solid #000;
    padding: 10px 15px;
    text-align: center
}

.keywordRanking {
    list-style: none
}

.keywordRanking li a {
    padding: 12px 15px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #dfdfdf
}

.keywordRanking li a:before {
    content: "";
    width: 24px;
    height: 24px;
    display: -ms-inline-flex;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    border-radius: 50px;
    border: 1px solid #000;
    margin-right: 10px;
    font-size: 12px
}

.keywordRanking li:nth-child(1) a:before {
    content: "1"
}

.keywordRanking li:nth-child(1) a:before {
    background: #fff1bd;
    border-color: #efda8e
}

.keywordRanking li:nth-child(2) a:before {
    background: #eaeaea;
    border-color: #c8c8c8
}

.keywordRanking li:nth-child(3) a:before {
    background: #ffddbd;
    border-color: #dfbd9e
}

.ccSearchWrap {
    background: #f2f2f2;
    padding: 30px
}

@media (max-width: 767px) {
    .ccSearchWrap {
        padding: 30px 15px
    }
}

.ccSearch {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 24px;
    justify-content: center
}

li.ccSearch__priceWrap {
    display: flex
}

.ccSearch input,
.ccSearch select {
    border-radius: 2px;
    border: 1px solid #dfdfdf;
    padding: 10px 4px;
    width: 100%;
    line-height: 21px
}

ul.ccSearch>li {
    max-width: 33.333%;
    flex: 0 0 33.333%;
    vertical-align: middle;
    line-height: 25px
}

ul.ccSearch>li label {
    display: block;
    font-weight: 700;
    margin-bottom: 5px
}

@media (min-width: 768px) {
    ul.ccSearch {
        margin-left: -10px;
        margin-right: -10px
    }

    ul.ccSearch>li {
        padding: 0 10px
    }
}

@media (max-width: 767px) {
    ul.ccSearch>li {
        max-width: 100%;
        flex: 0 0 100%;
        margin-bottom: 14px
    }
}

input.ccSearch__price {
    max-width: 110px;
    margin: 0 10px
}

input.ccSearch__price:first-child {
    margin-left: 0
}

.ccHeadWrap {
    margin: 0 0 30px;
    display: flex;
    align-items: center;
    justify-content: center
}

.ccCount {
    margin-right: 15px
}

.ccCount strong {
    font-size: 18px;
    margin: 0 2px
}

select.ccSortSelect {
    padding: 5px;
    border: 1px solid #dfdfdf
}

table tr th,
table tr td {
    overflow-wrap: break-word;
    line-height: 1.6
}

table.table--basic {
    width: 100%;
    table-layout: fixed
}

table.table--basic tr th,
table.table--basic tr td {
    border: 1px solid #dfdfdf;
    padding: .5em
}

table.table--basic tr th {
    background: #fff;
    font-weight: 400;
    width: 25%
}

table.table--basic.table--gray tr th {
    background: #f2f2f2
}

table.table--menu {
    width: 100%
}

table.table--menu caption {
    border-bottom: 1px solid gray;
    padding: .5em .5em .75em;
    font-weight: 700;
    font-size: 14.2rem
}

@media (max-width: 767px) {
    table.table--menu caption {
        font-size: 14rem
    }
}

table.table--menu tr th,
table.table--menu tr td {
    border-bottom: 1px solid #dfdfdf;
    padding: .75em .5em;
    word-break: break-all
}

table.table--menu tr th small,
table.table--menu tr td small {
    color: #4d4d4d
}

table.table--menu tr th {
    font-weight: 400;
    text-align: left
}

table.table--schedule {
    width: 100%
}

table.table--schedule tbody tr th,
table.table--schedule tbody tr td,
table.table--schedule thead tr th,
table.table--schedule thead tr td {
    padding: .5em;
    border: 1px solid #5094a1;
    text-align: center
}

table.table--schedule thead tr th,
table.table--schedule thead tr td {
    background: #6dabb6;
    font-weight: 400
}

table.table--schedule tbody tr th,
table.table--schedule tbody tr td {
    font-weight: 400;
    color: #000
}

table.table--schedule tbody tr th:first-child,
table.table--schedule tbody tr td:first-child {
    width: 30%;
    min-width: 10rem
}

table.table--schedule tbody tr th {
    width: 25%
}

.pageH1 {
    margin-top: 100px
}

@media (max-width: 767px) {
    .pageH1 {
        margin-top: 60px
    }
}

.h1A {
    font-size: 32px;
    text-align: center;
    margin-bottom: 60px
}

@media (max-width: 767px) {
    .h1A {
        font-size: 24px;
        margin-bottom: 30px
    }
}

h1,
h2,
h3,
h4,
h5,
h6,
.post_title {
    font-weight: 500
}

.h2A,
.h2B,
.h2C,
.h2D,
.h2E,
.h2F,
.h2G,
.h2H,
.h2I {
    font-size: 36px;
    line-height: 48px;
    margin-bottom: 48px;
    text-align: center;
    font-weight: 500;
    letter-spacing: .04em;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

.h2A small,
.h2B small,
.h2C small,
.h2D small,
.h2E small,
.h2F small,
.h2G small,
.h2H small,
.h2I small {
    font-size: 12px;
    display: block;
    text-align: center;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 1px
}

.h2A>span,
.h2B>span,
.h2C>span,
.h2D>span,
.h2E>span,
.h2F>span,
.h2G>span,
.h2H>span,
.h2I>span {
    color: #5ca1ae;
    font-size: 44px
}

@media (max-width: 479px) {

    .h2A,
    .h2B,
    .h2C,
    .h2D,
    .h2E,
    .h2F,
    .h2G,
    .h2H,
    .h2I {
        font-size: 25px;
        letter-spacing: .04em;
        line-height: 36px;
        margin-bottom: 20px
    }

    .h2A>span,
    .h2B>span,
    .h2C>span,
    .h2D>span,
    .h2E>span,
    .h2F>span,
    .h2G>span,
    .h2H>span,
    .h2I>span {
        font-size: 33px
    }
}

.h2G {
    position: relative
}

.h2G:after {
    content: "";
    display: block;
    width: 2px;
    height: 24px;
    background: #000;
    margin: auto
}

.h2G>small,
.h2G span {
    margin-bottom: 10px
}

.h2B {
    position: relative;
    padding-bottom: 10px
}

.h2B:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 60px;
    height: 2px;
    background: #dfdfdf
}

.h2C small,
.h2C a,
.h2E small,
.h2E a {
    color: #5ca1ae
}

.h2C .arrow:after,
.h2E .arrow:after {
    border-color: #5ca1ae;
    border-width: 2px
}

.h2D span {
    display: block;
    margin-top: 6px;
    letter-spacing: 1px;
    line-height: 24px
}

.h2D small {
    letter-spacing: 1px;
    display: inline-block;
    padding: 2px 10px;
    color: #fff;
    background: #3d4744
}

.h2E small {
    font-weight: 700
}

.h2F {
    padding-bottom: 10px;
    text-align: left;
    display: -ms-flex;
    display: flex;
    align-items: center;
    border-bottom: 3px solid #5ca1ae
}

.h2F small {
    margin-left: 20px;
    font-size: 14px;
    font-weight: 500
}

.h2-button {
    position: relative
}

.h2-button_area {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center
}

.h2-button-typeA,
.h2-button-typeB,
.h2-button-typeC {
    font-size: 12px;
    color: #5ca1ae !important;
    line-height: 1.4;
    display: inline-flex;
    align-items: center
}

.h2-button-typeA:after,
.h2-button-typeB:after,
.h2-button-typeC:after {
    border-top: 1px solid #5ca1ae;
    border-right: 1px solid #5ca1ae
}

.h2-button-typeA {
    padding-right: 25px
}

.h2-button-typeB,
.h2-button-typeC {
    padding: 5px 25px;
    text-align: center;
    border-bottom: 1px solid #5ca1ae
}

.h2-button-typeC {
    border: 1px solid #5ca1ae
}

.h3A,
.h3B,
.h3C,
.h3D,
.h3E,
.h3F,
.h3G {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 20px;
    text-align: left;
    letter-spacing: 3px;
    font-weight: 500;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

.h3B {
    text-align: center
}

.h3C {
    padding-bottom: 5px;
    border-bottom: 1px solid #dfdfdf
}

.h3D {
    line-height: 1.6;
    padding-left: 15px;
    margin-bottom: 24px;
    border-left: 5px solid #3d4744
}

.h3E {
    padding-bottom: 5px;
    border-bottom: 2px solid #dfdfdf;
    position: relative
}

.h3E:after {
    content: "";
    display: block;
    position: absolute;
    width: 80px;
    height: 2px;
    background: #3d4744;
    bottom: -2px;
    left: 0
}

.btnNav {
    flex: 0 0 auto
}

.btnNav a {
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    padding: 6px 30px 6px 10px;
    line-height: 24px;
    font-weight: 500
}

.btnNav a i {
    vertical-align: middle;
    display: inline-block;
    margin-right: 5px;
    color: #5ca1ae
}

.btnNav a.arrow:after {
    right: 15px
}

.btnNav a:hover {
    color: #5ca1ae;
    background: #f2f2f2
}

.btnNav a:hover:after {
    right: 10px
}

.hdrMiddle__middle .btnNav:nth-child(2) {
    text-align: right
}

.hdr__catNavC {
    width: 100%
}

.spSwiper {
    padding: 8px 15px;
    width: 100%;
    margin-bottom: 0
}

.spSwiper li {
    white-space: nowrap;
    margin-right: 20px;
    line-height: 24px;
    font-weight: 500;
    font-size: 12px
}

.spSwiper .slick-prev {
    left: 0;
    transform: translateY(-50%) rotate(-135deg)
}

.spSwiper .slick-next {
    right: 0;
    transform: translateY(-50%) rotate(45deg)
}

.spSwiper .slick-prev,
.spSwiper .slick-next {
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    height: 8px;
    width: 8px
}

.spSwiper .slick-prev:before,
.spSwiper .slick-next:before {
    content: none !important
}

.hdrCatMenu {
    height: 40px;
    display: flex;
    align-items: center
}

.hdrCatMenu.hdrCatMenu2row {
    flex-wrap: wrap
}

.hdrCatMenu.hdrCatMenu2row .hdrCatMenu__col {
    flex-basis: 50%;
    max-width: 50%
}

.hdrCatMenu.hdrCatMenu3row .hdrCatMenu__col {
    flex-basis: 33.33%;
    max-width: 33.33%
}

.hdrCatMenu.hdrCatMenu--simple .hdrCatMenu__col:nth-child(2) {
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf
}

.hdrCatMenu.hdrCatMenu--simple .hdrCatMenu__col .hdrCatMenu--toggle {
    background: #5ca1ae;
    color: #fff;
    font-size: 12px
}

.hdrCatMenu.hdrCatMenu--simple .hdrCatMenu__col .hdrCatMenu--toggle:after,
.hdrCatMenu.hdrCatMenu--simple .hdrCatMenu__col .hdrCatMenu--toggle:before {
    content: none
}

.hdrCatMenu.hdrCatMenu--simple .hdrCatMenu__col .hdrCatMenu--toggle.open {
    background: #fff;
    color: #000
}

.hdrCatMenu.hdrCatMenuD2 {
    border-top: solid 1px #dfdfdf;
    border-bottom: solid 1px #dfdfdf
}

.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu__col:nth-of-type(n+2) {
    border-left: solid 1px #dfdfdf
}

.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu__col>ul {
    border-top: solid 1px #dfdfdf
}

.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu--toggle {
    background: #fff
}

.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu--toggle.open {
    background: #5ca1ae;
    color: #fff
}

.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu--toggle:before,
.hdrCatMenu.hdrCatMenuD2 .hdrCatMenu--toggle:after {
    content: none
}

.hdrCatMenu--toggle {
    display: block;
    position: relative
}

.hdrCatMenu--toggle:after,
.hdrCatMenu--toggle:before {
    content: "";
    display: block;
    position: absolute;
    width: 10px;
    height: 2px;
    background: #000;
    top: 50%;
    right: 0
}

.hdrCatMenu--toggle:before {
    transform: rotate(90deg);
    transition: .15s
}

.hdrCatMenu--toggle.open:before {
    transform: rotate(0);
    transition: .15s
}

.hdrCatMenu__col {
    max-width: 100%;
    flex: 0 0 100%;
    text-align: center;
    height: 40px;
    line-height: 40px
}

.hdrCatMenu__col i {
    line-height: 40px;
    vertical-align: middle
}

.hdrCatMenu__col ul {
    display: none;
    z-index: 3;
    position: absolute;
    inset: 100% 0 auto 0
}

.hdrCatMenu__col ul.hdrCatMenu_category>li.hasChildren--click>a:hover:after {
    right: 15px
}

.hdrCatMenu__col ul.hdrCatMenu_category>li.hasChildren--click>a:after {
    transform: rotate(135deg) translateY(-50%)
}

.hdrCatMenu__col ul.hdrCatMenu_category>li.hasChildren--click>a.open:after {
    transform: rotate(-45deg) translateY(-50%)
}

.hdrCatMenu__col ul.hdrCatMenu_category>li>a {
    line-height: 50px
}

.hdrCatMenu__col ul.hdrCatMenu_category>li>a:after {
    width: 8px;
    height: 8px
}

.hdrCatMenu__col ul.hdrCatMenu_category>li a {
    background: #999;
    color: #fff
}

.hdrCatMenu__col ul.hdrCatMenu_category>li a:after {
    border-color: #fff
}

.hdrCatMenu__col ul.hdrCatMenu_category>li a.open {
    border-bottom: none
}

.hdrCatMenu__col ul.hdrCatMenu_category>li ul {
    position: static;
    background: #999;
    padding: 11px 33px 22px;
    border-bottom: solid 1px #dfdfdf
}

.hdrCatMenu__col ul.hdrCatMenu_category>li ul li a {
    font-size: 12px;
    line-height: 24px;
    border-bottom: none
}

.hdrCatMenu__col ul.row {
    background: #ececec;
    padding: 25px 15px 15px
}

.hdrCatMenu__col ul.row.open {
    display: flex !important
}

.hdrCatMenu__col ul.row a {
    background: none;
    padding: 0;
    text-align: inherit
}

.hdrCatMenu__col ul.row a:after {
    content: none
}

.hdrCatMenu__col ul.row a small {
    display: block;
    line-height: 1;
    margin-top: 5px
}

.hdrCatMenu__col ul a {
    display: block;
    text-align: left;
    padding-left: 20px;
    background: #fff;
    border-bottom: 1px solid #dfdfdf
}

.exNav ul {
    height: 40px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

@media all and (-ms-high-contrast: none) {
    .exNav ul {
        height: auto;
        min-height: auto
    }
}

.exNav ul li {
    margin-right: 20px
}

.exNav ul li:last-child {
    margin-right: 0
}

.exNav ul li a {
    position: relative;
    display: block;
    line-height: 1
}

.exNav ul li a:hover {
    text-decoration: none;
    color: #5ca1ae
}

.exNav.exNav--typeA ul li a {
    padding-left: 20px
}

.exNav.exNav--typeA ul li a:after {
    content: "";
    left: 0
}

.exNav.exNav--typeB ul li:not(:first-child) {
    padding-left: 20px;
    border-left: 1px solid #000
}

#fixedNav {
    position: fixed;
    inset: auto 0 0 0;
    z-index: 500
}

#fixedNav .hdrSearch--toggle .hdrSearch__wrap {
    top: auto;
    bottom: 100%
}

.gNav>ul {
    display: -ms-flex;
    display: flex;
    justify-content: center
}

.gNav>ul>li {
    display: block
}

.gNav>ul>li:not(:last-child) {
    margin-right: 30px
}

.hdrMiddle .gNav>ul>li.hasChildren>a {
  pointer-events: none;
}
/* .hdrMiddle .gNav>ul>li.hasChildren>a[href="/collections"] {
  pointer-events: all;
} */
.gNav>ul>li a {
  line-height: 1.15;
}

.gNav>ul>li a[href="#"], .gNav>ul>li a[href=""] {
    pointer-events: none;
    color: #a9c1c6 !important
}

/* .gNav>ul>li:nth-child(3) a {
    color: #a9c1c6 !important
}

.gNav>ul>li:nth-child(3) a:after {
    border-color: #a9c1c6 !important
}

.gNav>ul>li:nth-child(3) a.open:after {
    transform: rotate(135deg) translateY(-50%)
}

.gNav>ul>li:nth-child(3) ul.open {
    display: none !important
} */

.gNav>ul>li>a {
    text-decoration: none;
    color: #fff
}

.gNav>ul>li>a strong {
    display: block;
    margin-bottom: 8px;
    font-weight: 500
}

.gNav>ul>li>a:hover {
    color: #fff;
    text-decoration: none
}

.gNav li.hasChildren>a {
    padding-right: 16px
}

.gNav li.hasChildren>a:after {
    content: "";
    right: 0;
    border-color: #fff
}

.gNav li.hasChildren:after {
    content: none
}

.hdrMiddle .gNav>ul>li>a,
.hdrMiddle .gNav>ul>li>span {
    height: 80px;
    font-size: 15px;
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif
}

@media (max-width: 1199px) {

    .hdrMiddle .gNav>ul>li>a,
    .hdrMiddle .gNav>ul>li>span {
        height: 60px
    }
}

.gNav__listIcon {
    display: inline-block;
    margin-right: 5px
}

.gNav__listIcon.material-icons {
    text-indent: -9999px;
    width: 32px;
    background: url(/cdn/shop/files/header_search_icon_c431ea65-ee56-4b39-9f75-a5084ed1b5ec.png?v=1741631972) 2px 4px no-repeat
}

nav.hrd_keywordWrap {
    display: flex;
    align-items: center
}

.gNav>ul>li>a,
.hrd_keyword a {
    display: flex;
    align-items: center;
    text-align: center;
    min-height: 60px
}

@media all and (-ms-high-contrast: none) {

    .gNav>ul>li>a,
    .hrd_keyword a {
        line-height: 60px
    }
}

.hrd_keyword {
    display: flex
}

.hrd_keyword>li {
    margin-right: 15px
}

.hrd_keyword a {
    margin-right: 20px !important;
    font-weight: 500;
    color: #5ca1ae
}

.hrd_keywordWrap .hrd_keywordTitle {
    align-items: center;
    display: flex !important;
    margin-right: 30px !important
}

.hrd_keywordTitle i {
    margin-left: 10px
}

.gNav.gNav--typeB>ul>li {
    margin-right: 30px
}

.gNav.gNav--typeB>ul>li:last-child {
    margin-right: 0
}

.gNav.gNav--typeB>ul>li a {
    font-size: 12px;
    display: block
}

.gNav.gNav--typeB>ul>li a strong {
    font-size: 14px
}

@media all and (-ms-high-contrast: none) {
    .gNav.gNav--typeB>ul>li a {
        line-height: 1.4
    }

    .gNav.gNav--typeB>ul>li a>* {
        flex-basis: auto
    }
}

.gNav.gNav--typeD>ul>li>a {
    display: block
}

.gNav.gNav--typeD>ul>li>a>span {
    display: block;
    font-size: 12px
}

.gNav.gNav--typeD>ul>li>a>span:last-child {
    margin-top: 10px
}

@media all and (-ms-high-contrast: none) {
    .gNav.gNav--typeD>ul>li>a {
        line-height: 1.4
    }

    .gNav.gNav--typeD>ul>li>a>* {
        flex-basis: auto
    }
}

.gNav.gNav--typeD>ul>li.hasChildren>a {
    padding-right: 0
}

.gNav.gNav--typeD>ul>li.hasChildren>a:after {
    content: none
}

.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child {
    padding-right: 10px;
    padding-bottom: 1px
}

.gNav.gNav--typeD>ul>li.hasChildren>a>span:last-child:after {
    right: 0
}

.hdrInfo {
    margin-bottom: 0;
    line-height: 24px
}

@media (max-width: 767px) {
    .hdrInfo {
        font-size: 12px;
        text-align: center
    }
}

.hdrInfo * {
    vertical-align: bottom
}

.hdrInfo img {
    display: inline-block;
    margin-right: 10px
}

.hdrInfo strong {
    margin-right: 5px;
    display: inline-block;
    vertical-align: bottom
}

.hdrInfo i {
    vertical-align: bottom;
    line-height: 30px;
    margin-right: 5px;
    display: inline-block
}

.telAndTime>div {
    white-space: nowrap
}

.telAndTime>div i {
    margin-right: 5px
}

.iconNav>ul {
    display: flex;
    align-items: center
}

.iconNav>ul>li {
    display: block
}

.iconNav span,
.iconNav label,
.iconNav a {
    display: block;
    padding: 5px;
    text-align: center
}

.iconNav span:hover img,
.iconNav span:hover i,
.iconNav label:hover img,
.iconNav label:hover i,
.iconNav a:hover img,
.iconNav a:hover i {
    opacity: .8;
    color: #5ca1ae
}

.iconNav span small,
.iconNav label small,
.iconNav a small {
    display: block;
    text-align: center;
    font-size: 10px;
    letter-spacing: 0;
    font-weight: 500
}

.iconNav i {
    font-size: 30px
}

@media (max-width: 1200px) {
    .iconNav i {
        font-size: 24px
    }
}

.iconNav img {
    display: inline-block;
    width: auto;
    height: 24px
}

@media (min-width: 768px) {
    .iconNav img {
        margin: 0 5px
    }
}

.iconNav [class*=hasChildren]:not(:last-child) {
    margin-right: 15px
}

.iconNav [class*=hasChildren]>ul {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    background: #fff;
    padding: 10px;
    z-index: 2;
    transition: .15s
}

.iconNav [class*=hasChildren]>ul a {
    padding: 5px;
    line-height: 24px
}

@media (max-width: 1200px) {
    .iconNav [class*=hasChildren]>ul {
        right: 0;
        top: 100%
    }
}

@media (max-width: 992px) {



    .iconNav [class*=hasChildren]>ul .hasChildren--close {
        display: block;
        background: #000
    }

    .iconNav [class*=hasChildren]>ul .hasChildren--close a {
        color: #fff;
        vertical-align: middle
    }

    .iconNav [class*=hasChildren]>ul .hasChildren--close a i {
        vertical-align: middle;
        margin-right: 5px
    }
}

.iconNav [class*=hasChildren]>a:after {
    left: auto;
    right: -4px;
    border-color: #fff
}

.iconNav [class*=hasChildren]>ul.open {
    opacity: 1;
    pointer-events: all
}

@media (min-width: 768px) {
    .iconNav--image [class*=hasChildren]>a:after {
        right: 0
    }
}

.hasChildren--close {
    display: none
}

#menu-icon {
    width: 24px;
    height: 18px;
    display: block;
    transition: all .4s;
    position: relative
}

#menu-icon span {
    display: inline-block;
    transition: all .4s;
    padding: 0;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff
}

#menu-icon span:nth-of-type(1) {
    top: 0
}

#menu-icon span:nth-of-type(2) {
    top: 8px
}

#menu-icon span:nth-of-type(3) {
    bottom: 0px
}

#menu-icon small {
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 10px;
    line-height: 1
}

.hdrSearch--toggle {
    margin-left: 5px
}

.bottomNav {
    background: #5ca1ae;
    color: #fff;
    padding: 10px
}

.bottomNav ul {
    display: flex;
    justify-content: center;
    align-items: center
}

.bottomNav ul li {
    margin: 0 2px;
    max-width: 20%;
    flex: 0 0 20%
}

.bottomNav ul li a {
    color: #fff;
    display: block
}

.bottomNav__icon {
    display: block;
    text-align: center;
    line-height: 1
}

.bottomNav__text {
    display: block;
    text-align: center;
    font-size: 10px;
    margin-top: 3px;
    line-height: 1
}

.iconNav__cart {
    position: relative
}

.iconNav__cart .cartAmount {
    position: absolute;
    top: 0;
    right: -2px;
    height: 15px;
    width: 15px;
    background: #5ca1ae;
    color: #fff;
    border-radius: 50%;
    font-size: 10px
}

.iconNav--text>ul>li a {
    padding: 0;
    line-height: 1
}

.iconNav--text>ul>li .iconNav__cart .cartAmount {
    right: -5px;
    top: -5px
}

.iconNav--text>ul>li:not(:last-child) {
    margin-right: 24px
}

.iconNav--text>ul>li:not(:last-child)[class*=hasChildren] {
    margin-right: 29px
}

@media (max-width: 991px) {
    .iconNav--text>ul>li:not(:last-child)[class*=hasChildren] {
        margin-right: 10px
    }
}

.iconNav--text>ul>li small {
    display: block;
    text-align: center;
    margin-top: 5px
}

@media (max-width: 991px) {
    .iconNav--text>ul>li small {
        display: none !important
    }
}

.hdrBottom {
    position: relative
}

.gNav li.hasChildren>ul,
.gNav li.hasChildren>.megaMenu {
    position: absolute;
    z-index: 9999;
    inset: 100% 0 auto 0;
    opacity: 0;
    pointer-events: none;
    background: #fff
}

.gNav li.hasChildren>ul.open,
.gNav li.hasChildren>.megaMenu.open {
    pointer-events: all;
    opacity: 1;
    transition: .3s
}

.gNav .megaMenu__inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
}

.gNav .megaMenu {
    padding: 30px 0;
    border-bottom: 1px solid #dfdfdf
}

.gNav .megaMenu li a {
    width: 100%;
    color: #000;
    font-weight: 500;
    text-align: left
}

.gNav .megaMenu li a:hover {
    color: #5ca1ae
}

.gNav .megaMenu li a:hover img {
    opacity: .8
}

.gNav .megaMenu li a small {
    font-weight: initial;
    margin-top: 5px;
    line-height: 1.6;
    display: block;
    text-align: center
}

.gNav .megaMenu li a.withIcon {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.gNav .megaMenu li a.withIcon span {
    flex: 0 0 40px;
    height: 40px;
    overflow: hidden;
    border-radius: 50%;
    margin-right: 15px
}

.gNav .megaMenu li a.withIcon span img {
    max-width: 100%
}

.gNav .megaMenu .row {
    gap: 20px 0
}

.gNav .megaMenu .row [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
    margin-right: 0
}

.gNav .megaMenu--typeB {
    padding: 30px 0 20px
}

.gNav .megaMenu--typeB ul.row {
    justify-content: flex-start !important
}

.megaMenu__button {
    border: 1px solid #dfdfdf;
    border-radius: 100px;
    padding: 10px 30px 10px 15px
}

.megaMenu__button:hover {
    background: #f2f2f2
}

.gNav .downMenu {
    position: relative
}

.gNav .downMenu ul {
    right: auto !important;
    background: #fffc !important;
    display: block;
    min-width: 100%
}

.gNav .downMenu ul a {
    color: #000;
    padding: 8px 15px;
    line-height: 24px;
    display: block;
    white-space: nowrap
}

.gNav .downMenu ul a:hover {
    background: #fff;
    transition: .1s
}

.megaMenu__title {
    width: 1200px;
    margin: 0 auto 14px;
    font-size: 14px;
    line-height: 18px;
    padding-bottom: 8px;
    border-bottom: 1px solid #000
}

.megaMenu__inner+.megaMenu__title {
    margin-top: 20px
}

.megaMenu__arrow {
    display: flex;
    line-height: 24px;
    padding: 0 15px 0 5px;
    font-weight: 500 !important;
    height: 100%
}

.megaMenu__arrow:after {
    left: -10px;
    top: 13px !important;
    border-width: 1px !important
}

#shopify-section-template--15757636894823__04251197-7be7-41ad-b24d-cb920fecd3b3,
#shopify-section-template--15757636894823__index_contents_9Mei6j,
#shopify-section-template--15757636894823__index_category_PBNJ9w,
#parts_Sec_template--15757636894823__featured_collection_slide_b_EyiMDc,
#parts_Sec_template--15757636894823__featured_collection_slide_b_cd99c8,
#parts_Sec_template--15757636894823__26487b9e-ad3c-44d9-bcc9-a6bc38785073,
#shopify-section-template--15757636894823__26487b9e-ad3c-44d9-bcc9-a6bc38785073,
#shopify-section-template--15757636894823__featured_collection_slide_b_cd99c8,
#shopify-section-template--15757636894823__featured_collection_slide_b_EyiMDc,
#shopify-section-template--15757636894823__0987ced0-4c62-4eb8-9d30-30349394318a {
    margin-bottom: 0 !important
}

#shopify-section-template--15757636894823__4e7afe22-c513-44bf-9a13-8421be89f71e,
#shopify-section-template--15757636894823__bf9ec774-556b-4bfe-aa1d-049a63c9dcd6,
#shopify-section-template--15757636894823__index_contents_9Mei6j,
#shopify-section-template--15757636894823__e4f32f1a-ffc6-4f15-8bbd-6a2c4744e8d4,
#shopify-section-template--15757636894823__index_category_PBNJ9w,
#shopify-section-template--15757636894823__26487b9e-ad3c-44d9-bcc9-a6bc38785073,
#parts_Sec_template--15757636894823__featured_collection_slide_b_cd99c8,
#parts_Sec_template--15757636894823__featured_collection_slide_b_EyiMDc,
#shopify-section-template--15757636894823__featured_collection_slide_b_EyiMDc,
#shopify-section-template--15757636894823__featured_collection_slide_b_cd99c8,
#shopify-section-template--15757636894823__featured_collection_slide_Ce693X {
    margin-top: 0 !important
}


#shopify-section-template--15757636894823__4e7afe22-c513-44bf-9a13-8421be89f71e {
    padding: 24px 0 8px;
    background: #fff
}
  #parts_Sec_template--15757636894823__26487b9e-ad3c-44d9-bcc9-a6bc38785073,
  #parts_Sec_template--15757636894823__featured_collection_slide_b_cd99c8 {
      padding-bottom: 0 !important
  }
@media (min-width: 768px) {
    #shopify-section-template--15757636894823__4e7afe22-c513-44bf-9a13-8421be89f71e {
        padding: 0
    }

}

#shopify-section-template--15757636894823__4e7afe22-c513-44bf-9a13-8421be89f71e .t-news .button {
    width: 100px;
    max-width: 100px;
    min-width: 100px;
    min-height: 30px
}

.product.grid {
    flex-direction: column;
    padding: 0
}

.product.grid #GalleryViewer-template--15757637058663__main {
    margin-left: 0;
    margin-right: 0
}

@media (min-width: 768px) {
    .product.grid {
        flex-direction: row;
        justify-content: space-between
    }
}

.product.grid .grid__item {
    width: 100% !important;
    position: relative
}

@media (min-width: 768px) {
    .product.grid .grid__item {
        width: 47% !important
    }
}

.product.grid .grid__item .thumbnail-slider.small-hide {
    display: flex !important
}

.product.grid .grid__item .grid--peek.slider .grid__item:first-of-type {
    margin-left: 0;
  padding:0;
}
.product__media.media.media--transparent.gradient.global-media-settings {
    border: none;
}
.global-media-settings:not(..cart-notification-product) {
    width: 100%;
}
.product__modal-opener{
    padding: 15px;
}

    .product__media-list.slider.slider--mobile {
        scroll-padding-left: 0;
    }

.product.grid .grid__item .product__media-gallery .product__modal-opener--image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/cdn/shop/files/item_bg.png) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 100%;
    z-index: 0
}

@media (min-width: 768px) {
    .product.grid .grid__item .product__media-gallery .product__modal-opener--image:before {
        background: url(/cdn/shop/files/item_detail_bg.png) no-repeat center center background-size: cover;
    }
}

.product.grid .grid__item .thumbnail-slider .slider.slider--mobile {
    flex-wrap: wrap;
    flex: none;
    overflow-x: visible;
    margin: 0 auto 30px;
    padding: 0;
  width: 100%;
}

.product.grid .grid__item .thumbnail-slider .slider-button {
    display: none
}

.product.grid .grid__item .thumbnail[aria-current] {
    box-shadow: 0 0 0 2px #5ca1ae !important;
    border-color: #5ca1ae !important
}

.product.grid .grid__item .thumbnail[aria-current] img {
    aspect-ratio: 1;
    object-fit: contain
}

.product.grid .thumbnail-list__item.slider__slide {
    max-width: 100px;
  width: 100px;
    flex-basis: calc(20% - 8px);
}

@media (min-width: 768px) {
    .product.grid .thumbnail-list__item.slider__slide {
        max-width: 100%
    flex-basis: calc(20% - 16px);
      
    }
  .product.grid .grid__item .thumbnail-slider .slider.slider--mobile{
    gap:17px;
  }
}

.product.grid .product__title {
    margin-bottom: 0
}

@media (min-width: 768px) {
    .product.grid .product__title {
        margin-bottom: 1.5rem
    }
}

.product.grid .product__title h1 {
    font-size: 22pt
}

@media (min-width: 768px) {
    .product.grid .product__title h1 {
        font-size: 26px
    }
}

.product.grid .product__info-wrapper .price--large {
    margin-top: -10px
}

/* @media (min-width: 768px) {
    .product.grid .product__info-wrapper .price--large {
        margin-top: 24px
    }
} */

.page-width.product_breadcrumbs {
    margin-top: 110px !important
}

@media screen and (max-width: 749px) {
    .page-width.product_breadcrumbs {
        margin-top: 80px !important
    }
}

.product-recommendations .d_title {
    margin-bottom: 40px
}

.product-grid {
    display: flex;
    justify-content: center;
    gap: 15px;
    padding: 0;
}

@media (min-width: 768px) {
    .product-grid {
        gap: 40px;
    }
}

.product-grid .grid__item {
    width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important
}

@media (min-width: 768px) {
    .product-grid .grid__item {
        width: calc(25% - 30px) !important;
        max-width: calc(25% - 30px) !important
    }
}

.item_pref {
    padding: 4px 14px 4px 18px;
    margin-bottom: 10px !important;
    border: 1px solid #000;
    width: fit-content
}

.product__info-container .price-item {
    font-weight: 500;
    font-size: 28px
}

.product__exp-wrapper {
    padding: 0
}

.button.product-form__submit {
    background: #5ca5ae;
    width: 100% !important;
    max-width: 100%;
    border: none !important
}

.shopify-policy__container {
    margin-top: 110px;
    padding-bottom: 128px
}
@media (min-width: 768px) {
  .shopify-policy__container {
    margin-top: 140px;
  }
}
.custom_status {
    position: absolute;
    top: 0;
    left: 0;
    width: fit-content;
    padding: 0.7rem 1.2rem;
    font-size: 12px;
    color: #fff;
    background: #5ca1ae;
    z-index: 999
}

@media (min-width: 768px) {
    .custom_status {
        padding: 12px 23px;
        font-size: 16px;
    }
}

.custom_info {
    margin-bottom: 10px
}

.custom_shopCraftsman,
.custom_productKeyword {
    margin-bottom: 24px
}

.product-form__input input[type=radio]+label {
    border-radius: 4px !important;
    padding: 10px 30px !important
}

.product-form__input input[type=radio]:checked+label {
    background-color: #fab2a4 !important
}

.wrapper_productDetailTable {
    border-top: 1px solid #999
}

.wrapper_productDetailTable li {
    padding: 20px;
    border-bottom: 1px solid #999;
    display: flex;
    justify-content: space-between
}
@media (max-width: 749px) {
    .wrapper_productDetailTable li {
        padding: 25px 5px;
    }
  .section-template--15757636894823__featured_collection_slide_Ce693X {
    padding-bottom: 100px !important;
}
}

.custom_info,
.product__info-container h3,
.wrapper_productDetailTable li span {
    display: block;
    line-height: 2;
    font-size: 16px;
}

.wrapper_productDetailTable li span:first-child {
    width: 20%
}

.wrapper_productDetailTable li span:last-child {
    width: 73%
}
@media screen and (max-width: 767px) {
  .wrapper_productDetailTable li span:first-child {
    width: 25%
}

.wrapper_productDetailTable li span:last-child {
    width: 68%
}
}

#Sku-template--15757637058663__main,
#Share-template--15757637058663__main {
    display: none
}

.share-button__button.contact-for-item {
    text-align: center;
    display: flex;
    margin-bottom: 32px
}

.shopify-policy__body ol {
    padding: 0 20px;
  line-height: 1.8;
}

.shopify-policy__body ol:first-child {
    margin-top: 20px
}

.d_title {
    margin-bottom: 1.6em
}

.d_title .main_en {
    font-family: Montserrat, Zen Kaku Gothic New, sans-serif;
    font-size: 25px
}

@media (min-width: 768px) {
    .d_title .main_en {
        font-size: 36px
    }
}


#parts_Sec_template--15757636894823__featured_collection_slide_Ce693X {
    position: relative;
}
@media (min-width: 768px) {
  #parts_Sec_template--15757636894823__featured_collection_slide_Ce693X {
      padding-bottom: 110px
  }
}
#parts_Sec_template--15757636894823__featured_collection_slide_Ce693X:before {
    content: "";
    position: absolute;
    top: 0;
    left: 30px;
    width: calc(100% - 60px);
    height: 1px;
    background: #ccc
}

#shopify-section-template--15757636993127__main {
    overflow: hidden;
    margin-bottom: 0
}.facets-container {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
    padding-top: 1rem;
    justify-content: end;
  }
  
  .active-facets-mobile {
    margin-bottom: 0.5rem;
  }
  
  .mobile-facets__list {
    overflow-y: auto;
  }
  
  @media screen and (min-width: 750px) {
    .facets-container > * + * {
      margin-top: 0;
    }
  
    .facets__form .product-count {
      grid-column-start: 3;
      align-self: flex-start;
    }
  }
  
  @media screen and (max-width: 989px) {
    .facets-container {
      grid-template-columns: auto minmax(0, max-content);
      column-gap: 2rem;
    }
  }
  
  .facet-filters {
    align-items: flex-start;
    display: flex;
    grid-column: 2;
    grid-row: 1;
    padding-left: 2.5rem;
  }
  
  @media screen and (min-width: 990px) {
    .facet-filters {
      padding-left: 3rem;
    }
  }
  
  .facet-filters__label {
    display: block;
    color: var(--color-foreground-85);
    font-size: 1.4rem;
    margin: 0 2rem 0 0;
  }
  @media screen and (max-width: 989px) {
    .facet-filters__label {
        font-size: 1.2rem;
      }
  }
  .facet-filters__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.4rem;
    cursor: pointer;
    height: 4.5rem;
    padding: 0 1.5rem;
    min-width: 25rem;
    margin-top: 2.4rem;
    border: 0.1rem solid rgba(var(--color-foreground), 0.55);
  }
  @media screen and (max-width: 989px) {
    .facet-filters__summary {
        font-size: 1.2rem;
    }
  }
  .facet-filters__summary::after {
    position: static;
  }
  
  .facet-filters__field {
    align-items: center;
    display: flex;
    flex-grow: 1;
    justify-content: flex-end;
  }
  
  .facet-filters__field .select {
    width: auto;
  }
  
  .facet-filters__field .select:after,
  .facet-filters__field .select:before,
  .mobile-facets__sort .select:after,
  .mobile-facets__sort .select:before {
    content: none;
  }
  
  .facet-filters__field .select__select,
  .mobile-facets__sort .select__select {
    border-radius: 0;
    min-width: auto;
    min-height: auto;
    transition: none;
  }
  
  .facet-filters button {
    margin-left: 2.5rem;
  }
  
  .facet-filters__sort {
    background-color: transparent;
    border: 0;
    border-radius: 0;
    font-size: 1.4rem;
    height: auto;
    line-height: calc(1 + 0.5 / var(--font-body-scale));
    margin: 0;
    padding-left: 0;
    padding-right: 1.75rem;
  }
  @media screen and (max-width: 989px) {
    .facet-filters__sort {
        font-size: 1.2rem;
      }
      .facet-filters__field .select__select, .mobile-facets__sort .select__select {
        padding: 7px 24px 7px 11px !important;
    }
  }
  .facet-filters__sort + .icon-caret {
    right: 0;
  }
  
  @media screen and (forced-colors: active) {
    .facet-filters__sort {
      border: none;
    }
  }
  
  .facet-filters__sort,
  .facet-filters__sort:hover {
    box-shadow: none;
    filter: none;
    transition: none;
  }
  
  .mobile-facets__sort .select__select:focus-visible {
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
    outline-offset: 0.3rem;
    box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
      0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
  }
  
  .mobile-facets__sort .select__select.focused,
  .no-js .mobile-facets__sort .select__select:focus {
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
    outline-offset: 0.3rem;
    box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
      0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
  }
  
  .facet-filters__sort:focus-visible {
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
    outline-offset: 1rem;
    box-shadow: 0 0 0 1rem rgb(var(--color-background)),
      0 0 0.2rem 1.2rem rgba(var(--color-foreground), 0.3);
  }
  
  .facet-filters__sort.focused,
  .no-js .facet-filters__sort:focus {
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
    outline-offset: 1rem;
    box-shadow: 0 0 0 1rem rgb(var(--color-background)),
      0 0 0.2rem 1.2rem rgba(var(--color-foreground), 0.3);
  }
  
  .no-js .facet-filters__sort:focus:not(:focus-visible),
  .no-js .mobile-facets__sort .select__select:focus:not(:focus-visible) {
    outline: 0;
    box-shadow: none;
  }
  
  .facets {
    display: block;
    grid-column-start: span 2;
  }
  
  .facets__form {
    display: grid;
    /* gap: 0 3.5rem; */
    grid-template-columns: 1fr max-content max-content;
    margin-bottom: 0.5rem;
  }
  
  .facets__wrapper {
    align-items: center;
    align-self: flex-start;
    grid-column: 1;
    grid-row: 1;
    display: flex;
    flex-wrap: wrap;
  }
  
  .facets__heading {
    display: block;
    color: rgba(var(--color-foreground), 0.85);
    font-size: 1.4rem;
    margin: -1.5rem 2rem 0 0;
  }
  
  .facets__reset {
    margin-left: auto;
  }
  
  .facets__disclosure {
    margin-right: 3.5rem;
  }
  
  .facets__summary {
    color: rgba(var(--color-foreground), 0.75);
    font-size: 1.4rem;
    padding: 0 1.75rem 0 0;
    margin-bottom: 1.5rem;
  }
  
  .facets__disclosure fieldset {
    padding: 0;
    margin: 0;
    border: 0;
  }
  
  .facets__disclosure[open] .facets__summary,
  .facets__summary:hover {
    color: rgb(var(--color-foreground));
  }
  
  .facets__disclosure[open] .facets__display,
  .facets__disclosure-vertical[open] .facets__display-vertical  {
    animation: animateMenuOpen var(--duration-default) ease;
  }
  
  .facets__summary span {
    transition: text-decoration var(--duration-short) ease;
  }
  
  .facets__summary:hover span {
    text-decoration: underline;
    text-underline-offset: 0.3rem;
  }
  
  .disclosure-has-popup[open] > .facets__summary::before {
    z-index: 2;
  }
  
  .facets__summary > span {
    line-height: calc(1 + 0.3 / var(--font-body-scale));
  }
  
  .facets__summary .icon-caret {
    right: 0;
  }
  
  .facets__display {
    border-width: var(--popup-border-width);
    border-style: solid;
    border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
    border-radius: var(--popup-corner-radius);
    box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
    background-color: rgb(var(--color-background));
    position: absolute;
    top: calc(100% + 0.5rem);
    left: -1.2rem;
    width: 35rem;
    max-height: 55rem;
    overflow-y: auto;
  }
  
  .facets__header {
    border-bottom: 1px solid rgba(var(--color-foreground), 0.2);
    padding: 1.5rem 2rem;
    display: flex;
    justify-content: space-between;
    font-size: 1.4rem;
    position: sticky;
    top: 0;
    background-color: rgb(var(--color-background));
    z-index: 1;
  }
  
  .facets__list {
    padding: 0.5rem 2rem;
  }
  
  .facets__item {
    display: flex;
    align-items: center;
  }
  
  .facets__item label,
  .facets__item input[type='checkbox'] {
    cursor: pointer;
  }
  
  .facet-checkbox {
    padding: 1rem 2rem 1rem 0;
    flex-grow: 1;
    position: relative;
    font-size: 1.4rem;
    display: flex;
    word-break: break-word;
  }
  
  .facet-checkbox input[type='checkbox'] {
    position: absolute;
    opacity: 1;
    width: 1.6rem;
    height: 1.6rem;
    top: 0.7rem;
    left: -0.4rem;
    z-index: -1;
    appearance: none;
    -webkit-appearance: none;
  }
  
  .no-js .facet-checkbox input[type='checkbox'] {
    z-index: 0;
  }
  
  .facet-checkbox > svg {
    background-color: rgb(var(--color-background));
    margin-right: 1.2rem;
    flex-shrink: 0;
  }
  
  .facet-checkbox .icon-checkmark {
    visibility: hidden;
    position: absolute;
    left: 0.3rem;
    z-index: 5;
    top: 1.4rem;
  }
  
  .facet-checkbox > input[type='checkbox']:checked ~ .icon-checkmark {
    visibility: visible;
  }
  
  @media screen and (forced-colors: active) {
    .facet-checkbox > svg {
      background-color: inherit;
      border: 0.1rem solid rgb(var(--color-background));
    }
  
    .facet-checkbox > input[type='checkbox']:checked ~ .icon-checkmark {
      border: none;
    }
  }
  
  .facet-checkbox--disabled {
    color: rgba(var(--color-foreground), 0.4);
  }
  
  .facets__price {
    display: flex;
    padding: 2rem;
  }
  
  .facets__price .field + .field-currency {
    margin-left: 2rem;
  }
  
  .facets__price .field {
    align-items: center;
  }
  
  .facets__price .field-currency {
    align-self: center;
    margin-right: 0.6rem;
  }
  
  .facets__price .field__label {
    left: 1.5rem;
  }
  
  button.facets__button {
    min-height: 0;
    margin: 0 0 0 0.5rem;
    box-shadow: none;
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
  }
  
  .facets__button-no-js {
    transform: translateY(-0.6rem);
  }
  
  .active-facets {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    grid-column: 1 / -1;
    grid-row: 2;
    margin-top: -0.5rem;
  }
  
  .active-facets__button {
    display: block;
    margin-right: 1.5rem;
    margin-top: 1.5rem;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
    text-decoration: none;
  }
  
  span.active-facets__button-inner {
    color: rgb(var(--color-foreground));
    box-shadow: 0 0 0 0.1rem rgb(var(--color-foreground));
    border-radius: 2.6rem;
    font-size: 1rem;
    min-height: 0;
    min-width: 0;
    padding: 0.5rem 1rem;
    display: flex;
    align-items: stretch;
  }
  
  span.active-facets__button-inner:before,
  span.active-facets__button-inner:after {
    display: none;
  }
  
  .active-facets__button-wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
    padding-top: 1.5rem;
  }
  
  .active-facets__button-wrapper * {
    font-size: 1rem;
  }
  
  @media screen and (min-width: 990px) {
    .active-facets__button {
      margin-right: 1.5rem;
    }
  
    .active-facets__button-wrapper *,
    span.active-facets__button-inner {
      font-size: 1.4rem;
    }
  }
  
  @media screen and (max-width: 989px) {
    .active-facets {
      margin: 0 -1.2rem -1.2rem;
    }
  
    .active-facets__button,
    .active-facets__button-remove {
      margin: 0;
      padding: 1.2rem;
    }
  
    span.active-facets__button-inner {
      padding-bottom: 0.3rem;
      padding-top: 0.3rem;
    }
  
    .active-facets__button-wrapper {
      padding-top: 0;
      margin-left: 1.2rem;
    }
  }
  
  .active-facets__button:hover .active-facets__button-inner {
    box-shadow: 0 0 0 0.2rem rgb(var(--color-foreground));
  }
  
  .active-facets__button--light .active-facets__button-inner {
    box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2);
  }
  
  .active-facets__button--light:hover .active-facets__button-inner {
    box-shadow: 0 0 0 0.2rem rgba(var(--color-foreground), 0.4);
  }
  
  a.active-facets__button:focus-visible {
    outline: none;
    box-shadow: none;
  }
  
  a.active-facets__button.focused,
  .no-js a.active-facets__button:focus {
    outline: none;
    box-shadow: none;
  }
  
  a.active-facets__button:focus-visible .active-facets__button-inner {
    box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2),
      0 0 0 0.2rem rgb(var(--color-background)),
      0 0 0 0.4rem rgb(var(--color-foreground));
    outline: none;
  }
  
  a.active-facets__button.focused .active-facets__button-inner,
  .no-js a.active-facets__button:focus .active-facets__button-inner {
    box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2),
      0 0 0 0.2rem rgb(var(--color-background)),
      0 0 0 0.4rem rgb(var(--color-foreground));
    outline: none;
  }
  
  .active-facets__button svg {
    align-self: center;
    flex-shrink: 0;
    margin-left: 0.6rem;
    margin-right: -0.2rem;
    pointer-events: none;
    width: 1.2rem;
  }
  
  @media all and (min-width: 990px) {
    .active-facets__button svg {
      margin-right: -0.4rem;
      margin-top: 0.1rem;
      width: 1.4rem;
    }
  }
  
  .active-facets facet-remove:only-child {
    display: none;
  }
  
  .facets-vertical .active-facets .active-facets-vertical-filter:only-child > facet-remove {
    display: none;
  }
  
  .facets-vertical .active-facets-vertical-filter {
    display: flex;
    width: 100%;
    justify-content: space-between;
  }
  
  .facets-vertical .active-facets-vertical-filter .active-facets__button-wrapper {
    padding-top: 0;
    display: flex;
    align-items: flex-start;
  }
  
  .facets-vertical .active-facets__button {
    margin-top: 0;
  }
  
  .active-facets__button.disabled,
  .mobile-facets__clear.disabled {
    pointer-events: none;
  }
  
  .mobile-facets__clear-wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
  }
  
  .mobile-facets {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    background-color: rgba(var(--color-foreground), 0.5);
    pointer-events: none;
  }
  
  .mobile-facets__disclosure {
    display: flex;
  }
  
  .mobile-facets__wrapper {
    margin-left: 0;
    display: flex;
  }
  
  .mobile-facets__wrapper .disclosure-has-popup[open] > summary::before {
    height: 100vh;
    z-index: 3;
  }
  
  .mobile-facets__inner {
    background-color: rgb(var(--color-background));
    width: calc(100% - 5rem);
    margin-left: auto;
    height: 100%;
    overflow-y: auto;
    pointer-events: all;
    transition: transform var(--duration-short) ease;
    max-width: 37.5rem;
    display: flex;
    flex-direction: column;
    border-color: rgba(var(--color-foreground), var(--drawer-border-opacity));
    border-style: solid;
    border-width: 0 0 0 var(--drawer-border-width);
    filter: drop-shadow(
      var(--drawer-shadow-horizontal-offset)
      var(--drawer-shadow-vertical-offset)
      var(--drawer-shadow-blur-radius)
      rgba(var(--color-shadow), var(--drawer-shadow-opacity))
    );
  }
  
  .menu-opening .mobile-facets__inner {
    transform: translateX(0);
  }
  
  .js .disclosure-has-popup:not(.menu-opening) .mobile-facets__inner {
    transform: translateX(105vw);
  }
  
  .mobile-facets__header {
    border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.08);
    padding: 1rem 2.5rem;
    text-align: center;
    display: flex;
    position: sticky;
    top: 0;
    z-index: 2;
  }
  
  .mobile-facets__header-inner {
    flex-grow: 1;
    position: relative;
  }
  
  .mobile-facets__info {
    padding: 0 2.6rem;
  }
  
  .mobile-facets__heading {
    font-size: calc(var(--font-heading-scale) * 1.4rem);
    margin: 0;
  }
  
  .mobile-facets__count {
    color: rgba(var(--color-foreground), 0.7);
    font-size: 1.3rem;
    margin: 0;
    flex-grow: 1;
  }
  
  .mobile-facets__open-wrapper {
    display: inline-block;
  }
  
  .mobile-facets__open {
    text-align: left;
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    display: flex;
    align-items: center;
    color: rgba(var(--color-link), var(--alpha-link));
  }
  
  .mobile-facets__open:hover {
    color: rgb(var(--color-link));
  }
  
  .mobile-facets__open:hover line,
  .mobile-facets__open:hover circle {
    stroke: rgb(var(--color-link));
  }
  
  .mobile-facets__open-label {
    transition: text-decoration var(--duration-short) ease;
  }
  
  .mobile-facets__open:hover .mobile-facets__open-label {
    text-decoration: underline;
    text-underline-offset: 0.3rem;
  }
  
  .mobile-facets__open > * + * {
    margin-left: 1rem;
  }
  
  .mobile-facets__open svg {
    width: 2rem;
  }
  
  .mobile-facets__open line,
  .mobile-facets__open circle {
    stroke: rgba(var(--color-link), var(--alpha-link));
  }
  
  .mobile-facets__close {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0.7rem;
    right: 1rem;
    width: 4.4rem;
    height: 4.4rem;
    z-index: 101;
    opacity: 0;
    transition: opacity var(--duration-short) ease;
  }
  
  .mobile-facets__close svg {
    width: 2.2rem;
  }
  
  details.menu-opening .mobile-facets__close {
    display: flex;
    opacity: 1;
  }
  
  details.menu-opening .mobile-facets__close svg {
    margin: 0;
  }
  
  .mobile-facets__close-button {
    align-items: center;
    background-color: transparent;
    display: flex;
    font-size: 1.4rem;
    font: inherit;
    letter-spacing: inherit;
    margin-top: 1.5rem;
    padding: 1.2rem 2.6rem;
    text-decoration: none;
    width: calc(100% - 5.2rem);
  }
  
  .no-js .mobile-facets__close-button {
    display: none;
  }
  
  .mobile-facets__close-button .icon-arrow {
    transform: rotate(180deg);
    margin-right: 1rem;
  }
  
  .mobile-facets__main {
    padding: 2.7rem 0 0;
    position: relative;
    z-index: 1;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
  }
  
  .mobile-facets__details[open] .icon-caret {
    transform: rotate(180deg);
  }
  
  .no-js .mobile-facets__details {
    border-bottom: 1px solid rgba(var(--color-foreground), 0.04);
  }
  
  .mobile-facets__highlight {
    opacity: 0;
    visibility: hidden;
  }
  
  .mobile-facets__checkbox:checked + .mobile-facets__highlight {
    visibility: visible;
    opacity: 1;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: block;
    background-color: rgba(var(--color-foreground), 0.04);
  }
  
  .mobile-facets__summary {
    padding: 1.3rem 2.5rem;
  }
  
  .mobile-facets__summary svg {
    margin-left: auto;
  }
  
  .mobile-facets__summary > div,
  .facets__summary > div {
    display: flex;
    align-items: center;
  }
  
  .js .mobile-facets__submenu {
    position: absolute;
    top: 0;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 3;
    transform: translateX(100%);
    visibility: hidden;
    display: flex;
    flex-direction: column;
  }
  
  .js details[open] > .mobile-facets__submenu {
    transition: transform 0.4s cubic-bezier(0.29, 0.63, 0.44, 1),
      visibility 0.4s cubic-bezier(0.29, 0.63, 0.44, 1);
  }
  
  .js details[open].menu-opening > .mobile-facets__submenu {
    transform: translateX(0);
    visibility: visible;
  }
  
  .js .menu-drawer__submenu .mobile-facets__submenu {
    overflow-y: auto;
  }
  
  .js .mobile-facets .submenu-open {
    visibility: hidden; /* hide menus from screen readers when hidden by submenu */
  }
  
  .mobile-facets__item {
    position: relative;
  }
  
  input.mobile-facets__checkbox {
    border: 0;
    position: absolute;
    width: 1.6rem;
    height: 1.6rem;
    position: absolute;
    left: 2.1rem;
    top: 1.2rem;
    z-index: 0;
    appearance: none;
    -webkit-appearance: none;
  }
  
  .mobile-facets__label {
    padding: 1.5rem 2rem 1.5rem 2.5rem;
    width: 100%;
    transition: background-color 0.2s ease;
    word-break: break-word;
    display: flex;
  }
  
  .mobile-facets__label > svg {
    background-color: rgb(var(--color-background));
    position: relative;
    z-index: 2;
    margin-right: 1.2rem;
    flex-shrink: 0;
  }
  
  .mobile-facets__label .icon-checkmark {
    position: absolute;
    top: 1.9rem;
    left: 2.8rem;
    visibility: hidden;
  }
  
  .mobile-facets__label > input[type='checkbox']:checked ~ .icon-checkmark {
    visibility: visible;
  }
  
  .mobile-facets__arrow,
  .mobile-facets__summary .icon-caret {
    margin-left: auto;
    display: block;
  }
  
  .mobile-facets__label--disabled {
    opacity: 0.5;
  }
  
  .mobile-facets__footer {
    border-top: 0.1rem solid rgba(var(--color-foreground), 0.08);
    padding: 2rem;
    bottom: 0;
    position: sticky;
    display: flex;
    z-index: 2;
    margin-top: auto;
    background-color:rgb(var(--color-background));
    background: var(--gradient-background);
  }
  
  .mobile-facets__footer > * + * {
    margin-left: 1rem;
  }
  
  .mobile-facets__footer > * {
    width: 50%;
  }
  
  .mobile-facets__footer noscript .button {
    width: 100%;
  }
  
  .mobile-facets__sort {
    display: flex;
    justify-content: space-between;
  }
  
  .mobile-facets__sort label {
    flex-shrink: 0;
  }
  
  .mobile-facets__sort .select {
    width: auto;
  }
  
  .no-js .mobile-facets__sort .select {
    position: relative;
    right: -1rem;
  }
  
  .mobile-facets__sort .select .icon-caret {
    right: 0;
  }
  
  .mobile-facets__sort .select__select {
    background-color: transparent;
    border-radius: 0;
    box-shadow: none;
    filter: none;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    padding-left: 0.5rem;
    padding-right: 1.5rem;
  }
  
  .product-count {
    align-self: center;
    position: relative;
    text-align: right;
  }
  
  .product-count__text {
    font-size: 1.4rem;
    line-height: calc(1 + 0.5 / var(--font-body-scale));
    margin: 0;
  }
  
  .product-count__text.loading {
    visibility: hidden;
  }
  
  .product-count .loading-overlay__spinner,
  .product-count-vertical .loading-overlay__spinner  {
    display: none;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1.8rem;
  }
  
  .product-count__text.loading + .loading-overlay__spinner {
    display: block;
  }
  
  @media screen and (min-width: 750px) {
    .facets-vertical {
      display: flex;
    }
  
    .facets-wrap-vertical {
      border: none;
      padding-left: 0;
    }
      
    .facets__form-vertical {
      display: flex;
      flex-direction: column;
      width: 26rem;
    }
  
    .facets__disclosure-vertical {
      border-top: solid rgba(var(--color-foreground), 0.1);
      margin-right: 0;
    }
    
    .facets-vertical .facets__summary {
      padding-top: 1.5rem;
      margin-bottom: 0;
      padding-bottom: 1.5rem;
    }
    
    .facets__heading--vertical {
      margin: 0 0 1.5rem 0;
      font-size: 1.5rem;
    }
  
    .facets__header-vertical {
      padding: 1.5rem 2rem 1.5rem 0;
      font-size: 1.4rem;
    }
    
    .facets__display-vertical {
      padding-bottom: 1.5rem;
    }
   
    .facets-vertical .facets-wrapper {
      padding-right: 3rem;
    }
  
    .facets-vertical .facets-wrapper--no-filters {
      display: none;
    }
  
    .no-js .facets-vertical .facets-wrapper--no-filters {
      display: block;
    }
  
    .facets-vertical .product-grid-container {
      width: 100%;
    }
  
    .facets-vertical-form {
      display: flex;
      justify-content: flex-end;
    }
  
    .product-count-vertical {
      margin-left: 3.5rem;
    }
  
    .facets-vertical .active-facets__button-wrapper {
      margin-bottom: 2rem;
    }
  
    .facets-vertical .no-js .facets__button-no-js {
      transform: none;
      margin-left: 0;
    }
  
    .facets-vertical .no-js .facet-filters__field {
      justify-content: flex-start;
      padding-bottom: 1rem;
      padding-top: 2rem;
    }
  
    .facets-vertical .facets__price {
      padding: 0.5rem 0.5rem 0.5rem 0;
    }
  
    .facets-vertical .facets__price .field:last-of-type {
      margin-left: 1rem;
    }
  
    .facets-vertical .active-facets__button {
      margin-bottom: 1.5rem;
    }
  
    .no-js .facets-vertical .facet-filters.sorting {
      padding-left: 0;
      flex-direction: column;
    }
  
    .facets-vertical .facet-checkbox input[type='checkbox'] {
      z-index: 0;
    }
  
    .no-js .facets-vertical .facets-container {
      display: flex;
      flex-direction: column;
    }
  
    .facets-vertical .active-facets facet-remove:last-of-type {
      margin-bottom: 1rem;
    }
  
    .facets-vertical .active-facets {
      margin: 0;
      align-items: flex-start;
    }
  
    .facets__disclosure-vertical[open] .facets__summary .icon-caret {
      transform: rotate(180deg);
    }
    
    .facets-container-drawer {
      display: flex;;
      flex-flow: row wrap;
      align-items: center;
      column-gap: 0;
    }
  
    .facets-container-drawer .mobile-facets__wrapper  {
      margin-right: 2rem;
      flex-grow: 1;
    }
  
    .facets-container-drawer .product-count {
      margin: 0 0 0.5rem 3.5rem;
    }
  
    .facets-container-drawer .facets-pill {
      width: 100%;
    }
  
  
    .facets-container-drawer .facets__form {
      display: block;
    }
  }
  
  @media screen and (min-width: 750px) and (max-width: 989px) {
    .facets-vertical .active-facets__button {
      padding: 1rem;
      margin-bottom: 0;
      margin-left: -0.5rem;
    }
  
    .facets-vertical .active-facets__button-remove {
      padding: 0 1rem 1rem;
    }
  }


.product__description,
.product__description p{
  font-size: 16px;
  line-height:2;
}