@charset "UTF-8";
/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

* {
    margin: 0;
}

html,
body {
    height: 100%;
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

input,
button,
textarea,
select {
    font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

#root,
#__next {
    isolation: isolate;
}

/* A Modern CSS Reset */
*,
*::before,
*::after {
    box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
    margin: 0;
}

ul[role='list'],
ol[role='list'] {
    list-style: none;
}

html:focus-within {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5;
}

a:not([class]) {
    text-decoration-skip-ink: auto;
}

img,
picture {
    max-width: 100%;
    display: block;
}

input,
button,
textarea,
select {
    font: inherit;
}

@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
.c_white {
    color: #fff;
}

.c_black {
    color: #2d2d2d;
}

.c_gray {
    color: #afafaf;
}

.c_brown {
    color: #e9dacb;
}

.c_gold {
    color: #c1ae92;
}

.bg_white {
    background-color: #fff;
}

.bg_black {
    background-color: #2d2d2d;
}

.bg_gray {
    background-color: #afafaf;
}

.bg_brown {
    background-color: #e9dacb;
}

.bg_gold {
    background-color: #c1ae92;
}

.bdc_white {
    border-color: #fff;
}

.bdc_black {
    border-color: #2d2d2d;
}

.bdc_gray {
    border-color: #afafaf;
}

.bdc_brown {
    border-color: #e9dacb;
}

.bdc_gold {
    border-color: #c1ae92;
}

@media (max-width: 1024px) {
    .pc-only {
        display: none !important;
    }
}

@media (min-width: 1025px) {
    .sp-only {
        display: none !important;
    }
}

@media (max-width: 1024px) {
    .pc_only {
        display: none !important;
    }
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    color: #2d2d2d;
}

.vertical-rl {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.gothic {
    font-family: '游ゴシック', 'Yu Gothic', 'Hiragino Kaku Gothic ProN',
        'Meiryo', sans-serif;
}

.klee {
    font-family: 'Klee One', cursive;
}

.alegreya {
    font-family: 'Alegreya Sans SC', sans-serif;
}

.cinzel {
    font-family: 'Cinzel', serif;
}

.noto {
    font-family: 'Noto Sans JP', sans-serif;
}

.movies {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.movies iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.lh175 {
    line-height: 1.75;
}

.lh16px {
    line-height: 1.6px;
}

.aspect-square {
    aspect-ratio: 1/1;
}

.btn01 {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 48px;
    border: 1px solid #2d2d2d;
    background-color: #fff;
    font-size: 15px;
    color: #2d2d2d;
}
.btn01::after {
    content: '';
    position: absolute;
    top: 24px;
    right: -20px;
    width: 40px;
    height: 1px;
    background-color: #2d2d2d;
    transition: 0.3s;
}
.btn01:hover::after {
    animation: btn01 0.5s;
}

.btn-shop-search {
    display: flex;
    background-color: #2d2d2d;
    color: white;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 24px;
    border: 1px solid white;
    position: relative;
    top: 0;
    transition: all 0.3s;
}
.btn-shop-search:hover {
    top: -3px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}
.btn-shop-search__wrap {
    max-width: 224px;
    width: 100%;
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    transition: all 0.5s;
}
@media (max-width: 1024px) {
    .btn-shop-search__wrap {
        opacity: 0;
        max-width: 320px;
        right: 50%;
        transform: translate(50%, 0);
    }
}

@keyframes btn01 {
    0% {
        width: 40px;
        right: -20px;
    }
    50% {
        width: 0;
        right: -20px;
    }
    51% {
        width: 0;
        right: 20px;
    }
    100% {
        width: 40px;
        right: -20px;
    }
}
.pager {
    @apply max-w-screen-sm mx-auto flex justify-center;
}
.pager .page-numbers {
    @apply bg-white font-bold py-2 px-4 border-2 mx-2;
    border-color: #ffa32b;
}
.pager .page-numbers--active {
    background-color: #ffa32b;
    @apply text-white font-bold py-2 px-4 border-2 mx-2;
}

.gallery-th div img {
    opacity: 0.2;
    transition: 0.3s;
    cursor: pointer;
}
.gallery-th div.slick-current img {
    opacity: 1;
    transition: 0.3s;
}

.fadeIn {
    animation: fadeIn 1s forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.fadeInUp {
    animation: fadeInUp 1s forwards;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 20%, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.leftToRight {
    opacity: 1 !important;
    position: relative;
}
.leftToRight::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    animation: leftToRight 2s forwards;
}

@keyframes leftToRight {
    0% {
        transform-origin: right;
        transform: scaleX(1);
    }
    100% {
        transform-origin: right;
        transform: scaleX(0);
    }
}
.bg-blindfold {
    position: relative;
    color: transparent;
    animation-name: kf_c01a;
    animation-duration: 0s;
    animation-delay: 0.5s;
    animation-fill-mode: forwards;
}
.bg-blindfold::before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0%;
    right: 100%;
    bottom: 0%;
    left: 0%;
    background: #a675a5;
    animation-name: kf_c01b;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}

@keyframes kf_c01a {
    100% {
        color: inherit;
    }
}
@keyframes kf_c01b {
    50% {
        left: 0%;
        right: 0%;
    }
    100% {
        left: 100%;
        right: 0%;
    }
}
/*スクロールダウン全体の場所*/
.scroll-down {
    /*描画位置※位置は適宜調整してください*/
    position: absolute;
    left: 50%;
    bottom: 30px;
    /*全体の高さ*/
    height: 50px;
    display: none;
}
@media (max-width: 1024px) {
    .scroll-down {
        display: block;
    }
}
.scroll-down span {
    /*描画位置*/
    position: absolute;
    left: -15px;
    top: -15px;
    /*テキストの形状*/
    color: #eee;
    font-size: 10px;
    letter-spacing: 0.05em;
}
.scroll-down::after {
    content: '';
    /*描画位置*/
    position: absolute;
    top: 0;
    /*線の形状*/
    width: 1px;
    height: 46px;
    background: #eee;
    /*線の動き1.4秒かけて動く。永遠にループ*/
    animation: pathmove 1.4s ease-in-out infinite;
    opacity: 0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove {
    0% {
        height: 0;
        top: 0;
        opacity: 0;
    }
    30% {
        height: 46px;
        opacity: 1;
    }
    100% {
        height: 0;
        top: 50px;
        opacity: 0;
    }
}
@media (max-width: 1024px) {
    .item-active {
        animation: expand_height 1s;
    }
}

@media (max-width: 1024px) {
    .item-deactive {
        animation: shrink_height ease-out 1s;
    }
}

@keyframes expand_height {
    0% {
        min-height: 0;
    }
    100% {
        min-height: 700px;
    }
}
@keyframes shrink_height {
    0% {
        min-height: 700px;
    }
    100% {
        min-height: 0;
    }
}
.mt2 {
    margin-top: 2px;
}

.ml2 {
    margin-left: 2px;
}

.mr2 {
    margin-right: 2px;
}

.mb2 {
    margin-bottom: 2px;
}

.mt4 {
    margin-top: 4px;
}

.ml4 {
    margin-left: 4px;
}

.mr4 {
    margin-right: 4px;
}

.mb4 {
    margin-bottom: 4px;
}

.mt6 {
    margin-top: 6px;
}

.ml6 {
    margin-left: 6px;
}

.mr6 {
    margin-right: 6px;
}

.mb6 {
    margin-bottom: 6px;
}

.mt8 {
    margin-top: 8px;
}

.ml8 {
    margin-left: 8px;
}

.mr8 {
    margin-right: 8px;
}

.mb8 {
    margin-bottom: 8px;
}

.mt10 {
    margin-top: 10px;
}

.ml10 {
    margin-left: 10px;
}

.mr10 {
    margin-right: 10px;
}

.mb10 {
    margin-bottom: 10px;
}

.mt12 {
    margin-top: 12px;
}

.ml12 {
    margin-left: 12px;
}

.mr12 {
    margin-right: 12px;
}

.mb12 {
    margin-bottom: 12px;
}

.mt14 {
    margin-top: 14px;
}

.ml14 {
    margin-left: 14px;
}

.mr14 {
    margin-right: 14px;
}

.mb14 {
    margin-bottom: 14px;
}

.mt16 {
    margin-top: 16px;
}

.ml16 {
    margin-left: 16px;
}

.mr16 {
    margin-right: 16px;
}

.mb16 {
    margin-bottom: 16px;
}

.mt18 {
    margin-top: 18px;
}

.ml18 {
    margin-left: 18px;
}

.mr18 {
    margin-right: 18px;
}

.mb18 {
    margin-bottom: 18px;
}

.mt20 {
    margin-top: 20px;
}

.ml20 {
    margin-left: 20px;
}

.mr20 {
    margin-right: 20px;
}

.mb20 {
    margin-bottom: 20px;
}

.mt22 {
    margin-top: 22px;
}

.ml22 {
    margin-left: 22px;
}

.mr22 {
    margin-right: 22px;
}

.mb22 {
    margin-bottom: 22px;
}

.mt24 {
    margin-top: 24px;
}

.ml24 {
    margin-left: 24px;
}

.mr24 {
    margin-right: 24px;
}

.mb24 {
    margin-bottom: 24px;
}

.mt26 {
    margin-top: 26px;
}

.ml26 {
    margin-left: 26px;
}

.mr26 {
    margin-right: 26px;
}

.mb26 {
    margin-bottom: 26px;
}

.mt28 {
    margin-top: 28px;
}

.ml28 {
    margin-left: 28px;
}

.mr28 {
    margin-right: 28px;
}

.mb28 {
    margin-bottom: 28px;
}

.mt30 {
    margin-top: 30px;
}

.ml30 {
    margin-left: 30px;
}

.mr30 {
    margin-right: 30px;
}

.mb30 {
    margin-bottom: 30px;
}

.mt32 {
    margin-top: 32px;
}

.ml32 {
    margin-left: 32px;
}

.mr32 {
    margin-right: 32px;
}

.mb32 {
    margin-bottom: 32px;
}

.mt34 {
    margin-top: 34px;
}

.ml34 {
    margin-left: 34px;
}

.mr34 {
    margin-right: 34px;
}

.mb34 {
    margin-bottom: 34px;
}

.mt36 {
    margin-top: 36px;
}

.ml36 {
    margin-left: 36px;
}

.mr36 {
    margin-right: 36px;
}

.mb36 {
    margin-bottom: 36px;
}

.mt38 {
    margin-top: 38px;
}

.ml38 {
    margin-left: 38px;
}

.mr38 {
    margin-right: 38px;
}

.mb38 {
    margin-bottom: 38px;
}

.mt40 {
    margin-top: 40px;
}

.ml40 {
    margin-left: 40px;
}

.mr40 {
    margin-right: 40px;
}

.mb40 {
    margin-bottom: 40px;
}

.mt42 {
    margin-top: 42px;
}

.ml42 {
    margin-left: 42px;
}

.mr42 {
    margin-right: 42px;
}

.mb42 {
    margin-bottom: 42px;
}

.mt44 {
    margin-top: 44px;
}

.ml44 {
    margin-left: 44px;
}

.mr44 {
    margin-right: 44px;
}

.mb44 {
    margin-bottom: 44px;
}

.mt46 {
    margin-top: 46px;
}

.ml46 {
    margin-left: 46px;
}

.mr46 {
    margin-right: 46px;
}

.mb46 {
    margin-bottom: 46px;
}

.mt48 {
    margin-top: 48px;
}

.ml48 {
    margin-left: 48px;
}

.mr48 {
    margin-right: 48px;
}

.mb48 {
    margin-bottom: 48px;
}

.mt50 {
    margin-top: 50px;
}

.ml50 {
    margin-left: 50px;
}

.mr50 {
    margin-right: 50px;
}

.mb50 {
    margin-bottom: 50px;
}

.mt52 {
    margin-top: 52px;
}

.ml52 {
    margin-left: 52px;
}

.mr52 {
    margin-right: 52px;
}

.mb52 {
    margin-bottom: 52px;
}

.mt54 {
    margin-top: 54px;
}

.ml54 {
    margin-left: 54px;
}

.mr54 {
    margin-right: 54px;
}

.mb54 {
    margin-bottom: 54px;
}

.mt56 {
    margin-top: 56px;
}

.ml56 {
    margin-left: 56px;
}

.mr56 {
    margin-right: 56px;
}

.mb56 {
    margin-bottom: 56px;
}

.mt58 {
    margin-top: 58px;
}

.ml58 {
    margin-left: 58px;
}

.mr58 {
    margin-right: 58px;
}

.mb58 {
    margin-bottom: 58px;
}

.mt60 {
    margin-top: 60px;
}

.ml60 {
    margin-left: 60px;
}

.mr60 {
    margin-right: 60px;
}

.mb60 {
    margin-bottom: 60px;
}

.mt62 {
    margin-top: 62px;
}

.ml62 {
    margin-left: 62px;
}

.mr62 {
    margin-right: 62px;
}

.mb62 {
    margin-bottom: 62px;
}

.mt64 {
    margin-top: 64px;
}

.ml64 {
    margin-left: 64px;
}

.mr64 {
    margin-right: 64px;
}

.mb64 {
    margin-bottom: 64px;
}

.mt66 {
    margin-top: 66px;
}

.ml66 {
    margin-left: 66px;
}

.mr66 {
    margin-right: 66px;
}

.mb66 {
    margin-bottom: 66px;
}

.mt68 {
    margin-top: 68px;
}

.ml68 {
    margin-left: 68px;
}

.mr68 {
    margin-right: 68px;
}

.mb68 {
    margin-bottom: 68px;
}

.mt70 {
    margin-top: 70px;
}

.ml70 {
    margin-left: 70px;
}

.mr70 {
    margin-right: 70px;
}

.mb70 {
    margin-bottom: 70px;
}

.mt72 {
    margin-top: 72px;
}

.ml72 {
    margin-left: 72px;
}

.mr72 {
    margin-right: 72px;
}

.mb72 {
    margin-bottom: 72px;
}

.mt74 {
    margin-top: 74px;
}

.ml74 {
    margin-left: 74px;
}

.mr74 {
    margin-right: 74px;
}

.mb74 {
    margin-bottom: 74px;
}

.mt76 {
    margin-top: 76px;
}

.ml76 {
    margin-left: 76px;
}

.mr76 {
    margin-right: 76px;
}

.mb76 {
    margin-bottom: 76px;
}

.mt78 {
    margin-top: 78px;
}

.ml78 {
    margin-left: 78px;
}

.mr78 {
    margin-right: 78px;
}

.mb78 {
    margin-bottom: 78px;
}

.mt80 {
    margin-top: 80px;
}

.ml80 {
    margin-left: 80px;
}

.mr80 {
    margin-right: 80px;
}

.mb80 {
    margin-bottom: 80px;
}

@media (max-width: 767px) {
    .smt0 {
        margin-top: 0px;
    }
    .sml0 {
        margin-left: 0px;
    }
    .smr0 {
        margin-right: 0px;
    }
    .smb0 {
        margin-bottom: 0px;
    }
    .smt2 {
        margin-top: 2px;
    }
    .sml2 {
        margin-left: 2px;
    }
    .smr2 {
        margin-right: 2px;
    }
    .smb2 {
        margin-bottom: 2px;
    }
    .smt4 {
        margin-top: 4px;
    }
    .sml4 {
        margin-left: 4px;
    }
    .smr4 {
        margin-right: 4px;
    }
    .smb4 {
        margin-bottom: 4px;
    }
    .smt6 {
        margin-top: 6px;
    }
    .sml6 {
        margin-left: 6px;
    }
    .smr6 {
        margin-right: 6px;
    }
    .smb6 {
        margin-bottom: 6px;
    }
    .smt8 {
        margin-top: 8px;
    }
    .sml8 {
        margin-left: 8px;
    }
    .smr8 {
        margin-right: 8px;
    }
    .smb8 {
        margin-bottom: 8px;
    }
    .smt10 {
        margin-top: 10px;
    }
    .sml10 {
        margin-left: 10px;
    }
    .smr10 {
        margin-right: 10px;
    }
    .smb10 {
        margin-bottom: 10px;
    }
    .smt12 {
        margin-top: 12px;
    }
    .sml12 {
        margin-left: 12px;
    }
    .smr12 {
        margin-right: 12px;
    }
    .smb12 {
        margin-bottom: 12px;
    }
    .smt14 {
        margin-top: 14px;
    }
    .sml14 {
        margin-left: 14px;
    }
    .smr14 {
        margin-right: 14px;
    }
    .smb14 {
        margin-bottom: 14px;
    }
    .smt16 {
        margin-top: 16px;
    }
    .sml16 {
        margin-left: 16px;
    }
    .smr16 {
        margin-right: 16px;
    }
    .smb16 {
        margin-bottom: 16px;
    }
    .smt18 {
        margin-top: 18px;
    }
    .sml18 {
        margin-left: 18px;
    }
    .smr18 {
        margin-right: 18px;
    }
    .smb18 {
        margin-bottom: 18px;
    }
    .smt20 {
        margin-top: 20px;
    }
    .sml20 {
        margin-left: 20px;
    }
    .smr20 {
        margin-right: 20px;
    }
    .smb20 {
        margin-bottom: 20px;
    }
    .smt22 {
        margin-top: 22px;
    }
    .sml22 {
        margin-left: 22px;
    }
    .smr22 {
        margin-right: 22px;
    }
    .smb22 {
        margin-bottom: 22px;
    }
    .smt24 {
        margin-top: 24px;
    }
    .sml24 {
        margin-left: 24px;
    }
    .smr24 {
        margin-right: 24px;
    }
    .smb24 {
        margin-bottom: 24px;
    }
    .smt26 {
        margin-top: 26px;
    }
    .sml26 {
        margin-left: 26px;
    }
    .smr26 {
        margin-right: 26px;
    }
    .smb26 {
        margin-bottom: 26px;
    }
    .smt28 {
        margin-top: 28px;
    }
    .sml28 {
        margin-left: 28px;
    }
    .smr28 {
        margin-right: 28px;
    }
    .smb28 {
        margin-bottom: 28px;
    }
    .smt30 {
        margin-top: 30px;
    }
    .sml30 {
        margin-left: 30px;
    }
    .smr30 {
        margin-right: 30px;
    }
    .smb30 {
        margin-bottom: 30px;
    }
    .smt32 {
        margin-top: 32px;
    }
    .sml32 {
        margin-left: 32px;
    }
    .smr32 {
        margin-right: 32px;
    }
    .smb32 {
        margin-bottom: 32px;
    }
    .smt34 {
        margin-top: 34px;
    }
    .sml34 {
        margin-left: 34px;
    }
    .smr34 {
        margin-right: 34px;
    }
    .smb34 {
        margin-bottom: 34px;
    }
    .smt36 {
        margin-top: 36px;
    }
    .sml36 {
        margin-left: 36px;
    }
    .smr36 {
        margin-right: 36px;
    }
    .smb36 {
        margin-bottom: 36px;
    }
    .smt38 {
        margin-top: 38px;
    }
    .sml38 {
        margin-left: 38px;
    }
    .smr38 {
        margin-right: 38px;
    }
    .smb38 {
        margin-bottom: 38px;
    }
    .smt40 {
        margin-top: 40px;
    }
    .sml40 {
        margin-left: 40px;
    }
    .smr40 {
        margin-right: 40px;
    }
    .smb40 {
        margin-bottom: 40px;
    }
    .smt42 {
        margin-top: 42px;
    }
    .sml42 {
        margin-left: 42px;
    }
    .smr42 {
        margin-right: 42px;
    }
    .smb42 {
        margin-bottom: 42px;
    }
    .smt44 {
        margin-top: 44px;
    }
    .sml44 {
        margin-left: 44px;
    }
    .smr44 {
        margin-right: 44px;
    }
    .smb44 {
        margin-bottom: 44px;
    }
    .smt46 {
        margin-top: 46px;
    }
    .sml46 {
        margin-left: 46px;
    }
    .smr46 {
        margin-right: 46px;
    }
    .smb46 {
        margin-bottom: 46px;
    }
    .smt48 {
        margin-top: 48px;
    }
    .sml48 {
        margin-left: 48px;
    }
    .smr48 {
        margin-right: 48px;
    }
    .smb48 {
        margin-bottom: 48px;
    }
    .smt50 {
        margin-top: 50px;
    }
    .sml50 {
        margin-left: 50px;
    }
    .smr50 {
        margin-right: 50px;
    }
    .smb50 {
        margin-bottom: 50px;
    }
    .smt52 {
        margin-top: 52px;
    }
    .sml52 {
        margin-left: 52px;
    }
    .smr52 {
        margin-right: 52px;
    }
    .smb52 {
        margin-bottom: 52px;
    }
    .smt54 {
        margin-top: 54px;
    }
    .sml54 {
        margin-left: 54px;
    }
    .smr54 {
        margin-right: 54px;
    }
    .smb54 {
        margin-bottom: 54px;
    }
    .smt56 {
        margin-top: 56px;
    }
    .sml56 {
        margin-left: 56px;
    }
    .smr56 {
        margin-right: 56px;
    }
    .smb56 {
        margin-bottom: 56px;
    }
    .smt58 {
        margin-top: 58px;
    }
    .sml58 {
        margin-left: 58px;
    }
    .smr58 {
        margin-right: 58px;
    }
    .smb58 {
        margin-bottom: 58px;
    }
    .smt60 {
        margin-top: 60px;
    }
    .sml60 {
        margin-left: 60px;
    }
    .smr60 {
        margin-right: 60px;
    }
    .smb60 {
        margin-bottom: 60px;
    }
    .smt62 {
        margin-top: 62px;
    }
    .sml62 {
        margin-left: 62px;
    }
    .smr62 {
        margin-right: 62px;
    }
    .smb62 {
        margin-bottom: 62px;
    }
    .smt64 {
        margin-top: 64px;
    }
    .sml64 {
        margin-left: 64px;
    }
    .smr64 {
        margin-right: 64px;
    }
    .smb64 {
        margin-bottom: 64px;
    }
    .smt66 {
        margin-top: 66px;
    }
    .sml66 {
        margin-left: 66px;
    }
    .smr66 {
        margin-right: 66px;
    }
    .smb66 {
        margin-bottom: 66px;
    }
    .smt68 {
        margin-top: 68px;
    }
    .sml68 {
        margin-left: 68px;
    }
    .smr68 {
        margin-right: 68px;
    }
    .smb68 {
        margin-bottom: 68px;
    }
    .smt70 {
        margin-top: 70px;
    }
    .sml70 {
        margin-left: 70px;
    }
    .smr70 {
        margin-right: 70px;
    }
    .smb70 {
        margin-bottom: 70px;
    }
    .smt72 {
        margin-top: 72px;
    }
    .sml72 {
        margin-left: 72px;
    }
    .smr72 {
        margin-right: 72px;
    }
    .smb72 {
        margin-bottom: 72px;
    }
    .smt74 {
        margin-top: 74px;
    }
    .sml74 {
        margin-left: 74px;
    }
    .smr74 {
        margin-right: 74px;
    }
    .smb74 {
        margin-bottom: 74px;
    }
    .smt76 {
        margin-top: 76px;
    }
    .sml76 {
        margin-left: 76px;
    }
    .smr76 {
        margin-right: 76px;
    }
    .smb76 {
        margin-bottom: 76px;
    }
    .smt78 {
        margin-top: 78px;
    }
    .sml78 {
        margin-left: 78px;
    }
    .smr78 {
        margin-right: 78px;
    }
    .smb78 {
        margin-bottom: 78px;
    }
    .smt80 {
        margin-top: 80px;
    }
    .sml80 {
        margin-left: 80px;
    }
    .smr80 {
        margin-right: 80px;
    }
    .smb80 {
        margin-bottom: 80px;
    }
}
.mb-86px {
    margin-bottom: 86px;
}

.pt2 {
    padding-top: 2px;
}

.pl2 {
    padding-left: 2px;
}

.pr2 {
    padding-right: 2px;
}

.pb2 {
    padding-bottom: 2px;
}

.pt4 {
    padding-top: 4px;
}

.pl4 {
    padding-left: 4px;
}

.pr4 {
    padding-right: 4px;
}

.pb4 {
    padding-bottom: 4px;
}

.pt6 {
    padding-top: 6px;
}

.pl6 {
    padding-left: 6px;
}

.pr6 {
    padding-right: 6px;
}

.pb6 {
    padding-bottom: 6px;
}

.pt8 {
    padding-top: 8px;
}

.pl8 {
    padding-left: 8px;
}

.pr8 {
    padding-right: 8px;
}

.pb8 {
    padding-bottom: 8px;
}

.pt10 {
    padding-top: 10px;
}

.pl10 {
    padding-left: 10px;
}

.pr10 {
    padding-right: 10px;
}

.pb10 {
    padding-bottom: 10px;
}

.pt12 {
    padding-top: 12px;
}

.pl12 {
    padding-left: 12px;
}

.pr12 {
    padding-right: 12px;
}

.pb12 {
    padding-bottom: 12px;
}

.pt14 {
    padding-top: 14px;
}

.pl14 {
    padding-left: 14px;
}

.pr14 {
    padding-right: 14px;
}

.pb14 {
    padding-bottom: 14px;
}

.pt16 {
    padding-top: 16px;
}

.pl16 {
    padding-left: 16px;
}

.pr16 {
    padding-right: 16px;
}

.pb16 {
    padding-bottom: 16px;
}

.pt18 {
    padding-top: 18px;
}

.pl18 {
    padding-left: 18px;
}

.pr18 {
    padding-right: 18px;
}

.pb18 {
    padding-bottom: 18px;
}

.pt20 {
    padding-top: 20px;
}

.pl20 {
    padding-left: 20px;
}

.pr20 {
    padding-right: 20px;
}

.pb20 {
    padding-bottom: 20px;
}

.pt22 {
    padding-top: 22px;
}

.pl22 {
    padding-left: 22px;
}

.pr22 {
    padding-right: 22px;
}

.pb22 {
    padding-bottom: 22px;
}

.pt24 {
    padding-top: 24px;
}

.pl24 {
    padding-left: 24px;
}

.pr24 {
    padding-right: 24px;
}

.pb24 {
    padding-bottom: 24px;
}

.pt26 {
    padding-top: 26px;
}

.pl26 {
    padding-left: 26px;
}

.pr26 {
    padding-right: 26px;
}

.pb26 {
    padding-bottom: 26px;
}

.pt28 {
    padding-top: 28px;
}

.pl28 {
    padding-left: 28px;
}

.pr28 {
    padding-right: 28px;
}

.pb28 {
    padding-bottom: 28px;
}

.pt30 {
    padding-top: 30px;
}

.pl30 {
    padding-left: 30px;
}

.pr30 {
    padding-right: 30px;
}

.pb30 {
    padding-bottom: 30px;
}

.pt32 {
    padding-top: 32px;
}

.pl32 {
    padding-left: 32px;
}

.pr32 {
    padding-right: 32px;
}

.pb32 {
    padding-bottom: 32px;
}

.pt34 {
    padding-top: 34px;
}

.pl34 {
    padding-left: 34px;
}

.pr34 {
    padding-right: 34px;
}

.pb34 {
    padding-bottom: 34px;
}

.pt36 {
    padding-top: 36px;
}

.pl36 {
    padding-left: 36px;
}

.pr36 {
    padding-right: 36px;
}

.pb36 {
    padding-bottom: 36px;
}

.pt38 {
    padding-top: 38px;
}

.pl38 {
    padding-left: 38px;
}

.pr38 {
    padding-right: 38px;
}

.pb38 {
    padding-bottom: 38px;
}

.pt40 {
    padding-top: 40px;
}

.pl40 {
    padding-left: 40px;
}

.pr40 {
    padding-right: 40px;
}

.pb40 {
    padding-bottom: 40px;
}

.pt42 {
    padding-top: 42px;
}

.pl42 {
    padding-left: 42px;
}

.pr42 {
    padding-right: 42px;
}

.pb42 {
    padding-bottom: 42px;
}

.pt44 {
    padding-top: 44px;
}

.pl44 {
    padding-left: 44px;
}

.pr44 {
    padding-right: 44px;
}

.pb44 {
    padding-bottom: 44px;
}

.pt46 {
    padding-top: 46px;
}

.pl46 {
    padding-left: 46px;
}

.pr46 {
    padding-right: 46px;
}

.pb46 {
    padding-bottom: 46px;
}

.pt48 {
    padding-top: 48px;
}

.pl48 {
    padding-left: 48px;
}

.pr48 {
    padding-right: 48px;
}

.pb48 {
    padding-bottom: 48px;
}

.pt50 {
    padding-top: 50px;
}

.pl50 {
    padding-left: 50px;
}

.pr50 {
    padding-right: 50px;
}

.pb50 {
    padding-bottom: 50px;
}

.pt52 {
    padding-top: 52px;
}

.pl52 {
    padding-left: 52px;
}

.pr52 {
    padding-right: 52px;
}

.pb52 {
    padding-bottom: 52px;
}

.pt54 {
    padding-top: 54px;
}

.pl54 {
    padding-left: 54px;
}

.pr54 {
    padding-right: 54px;
}

.pb54 {
    padding-bottom: 54px;
}

.pt56 {
    padding-top: 56px;
}

.pl56 {
    padding-left: 56px;
}

.pr56 {
    padding-right: 56px;
}

.pb56 {
    padding-bottom: 56px;
}

.pt58 {
    padding-top: 58px;
}

.pl58 {
    padding-left: 58px;
}

.pr58 {
    padding-right: 58px;
}

.pb58 {
    padding-bottom: 58px;
}

.pt60 {
    padding-top: 60px;
}

.pl60 {
    padding-left: 60px;
}

.pr60 {
    padding-right: 60px;
}

.pb60 {
    padding-bottom: 60px;
}

.pt62 {
    padding-top: 62px;
}

.pl62 {
    padding-left: 62px;
}

.pr62 {
    padding-right: 62px;
}

.pb62 {
    padding-bottom: 62px;
}

.pt64 {
    padding-top: 64px;
}

.pl64 {
    padding-left: 64px;
}

.pr64 {
    padding-right: 64px;
}

.pb64 {
    padding-bottom: 64px;
}

.pt66 {
    padding-top: 66px;
}

.pl66 {
    padding-left: 66px;
}

.pr66 {
    padding-right: 66px;
}

.pb66 {
    padding-bottom: 66px;
}

.pt68 {
    padding-top: 68px;
}

.pl68 {
    padding-left: 68px;
}

.pr68 {
    padding-right: 68px;
}

.pb68 {
    padding-bottom: 68px;
}

.pt70 {
    padding-top: 70px;
}

.pl70 {
    padding-left: 70px;
}

.pr70 {
    padding-right: 70px;
}

.pb70 {
    padding-bottom: 70px;
}

.pt72 {
    padding-top: 72px;
}

.pl72 {
    padding-left: 72px;
}

.pr72 {
    padding-right: 72px;
}

.pb72 {
    padding-bottom: 72px;
}

.pt74 {
    padding-top: 74px;
}

.pl74 {
    padding-left: 74px;
}

.pr74 {
    padding-right: 74px;
}

.pb74 {
    padding-bottom: 74px;
}

.pt76 {
    padding-top: 76px;
}

.pl76 {
    padding-left: 76px;
}

.pr76 {
    padding-right: 76px;
}

.pb76 {
    padding-bottom: 76px;
}

.pt78 {
    padding-top: 78px;
}

.pl78 {
    padding-left: 78px;
}

.pr78 {
    padding-right: 78px;
}

.pb78 {
    padding-bottom: 78px;
}

.pt80 {
    padding-top: 80px;
}

.pl80 {
    padding-left: 80px;
}

.pr80 {
    padding-right: 80px;
}

.pb80 {
    padding-bottom: 80px;
}

@media (max-width: 767px) {
    .spt0 {
        padding-top: 0px;
    }
    .spl0 {
        padding-left: 0px;
    }
    .spr0 {
        padding-right: 0px;
    }
    .spb0 {
        padding-bottom: 0px;
    }
    .spt2 {
        padding-top: 2px;
    }
    .spl2 {
        padding-left: 2px;
    }
    .spr2 {
        padding-right: 2px;
    }
    .spb2 {
        padding-bottom: 2px;
    }
    .spt4 {
        padding-top: 4px;
    }
    .spl4 {
        padding-left: 4px;
    }
    .spr4 {
        padding-right: 4px;
    }
    .spb4 {
        padding-bottom: 4px;
    }
    .spt6 {
        padding-top: 6px;
    }
    .spl6 {
        padding-left: 6px;
    }
    .spr6 {
        padding-right: 6px;
    }
    .spb6 {
        padding-bottom: 6px;
    }
    .spt8 {
        padding-top: 8px;
    }
    .spl8 {
        padding-left: 8px;
    }
    .spr8 {
        padding-right: 8px;
    }
    .spb8 {
        padding-bottom: 8px;
    }
    .spt10 {
        padding-top: 10px;
    }
    .spl10 {
        padding-left: 10px;
    }
    .spr10 {
        padding-right: 10px;
    }
    .spb10 {
        padding-bottom: 10px;
    }
    .spt12 {
        padding-top: 12px;
    }
    .spl12 {
        padding-left: 12px;
    }
    .spr12 {
        padding-right: 12px;
    }
    .spb12 {
        padding-bottom: 12px;
    }
    .spt14 {
        padding-top: 14px;
    }
    .spl14 {
        padding-left: 14px;
    }
    .spr14 {
        padding-right: 14px;
    }
    .spb14 {
        padding-bottom: 14px;
    }
    .spt16 {
        padding-top: 16px;
    }
    .spl16 {
        padding-left: 16px;
    }
    .spr16 {
        padding-right: 16px;
    }
    .spb16 {
        padding-bottom: 16px;
    }
    .spt18 {
        padding-top: 18px;
    }
    .spl18 {
        padding-left: 18px;
    }
    .spr18 {
        padding-right: 18px;
    }
    .spb18 {
        padding-bottom: 18px;
    }
    .spt20 {
        padding-top: 20px;
    }
    .spl20 {
        padding-left: 20px;
    }
    .spr20 {
        padding-right: 20px;
    }
    .spb20 {
        padding-bottom: 20px;
    }
    .spt22 {
        padding-top: 22px;
    }
    .spl22 {
        padding-left: 22px;
    }
    .spr22 {
        padding-right: 22px;
    }
    .spb22 {
        padding-bottom: 22px;
    }
    .spt24 {
        padding-top: 24px;
    }
    .spl24 {
        padding-left: 24px;
    }
    .spr24 {
        padding-right: 24px;
    }
    .spb24 {
        padding-bottom: 24px;
    }
    .spt26 {
        padding-top: 26px;
    }
    .spl26 {
        padding-left: 26px;
    }
    .spr26 {
        padding-right: 26px;
    }
    .spb26 {
        padding-bottom: 26px;
    }
    .spt28 {
        padding-top: 28px;
    }
    .spl28 {
        padding-left: 28px;
    }
    .spr28 {
        padding-right: 28px;
    }
    .spb28 {
        padding-bottom: 28px;
    }
    .spt30 {
        padding-top: 30px;
    }
    .spl30 {
        padding-left: 30px;
    }
    .spr30 {
        padding-right: 30px;
    }
    .spb30 {
        padding-bottom: 30px;
    }
    .spt32 {
        padding-top: 32px;
    }
    .spl32 {
        padding-left: 32px;
    }
    .spr32 {
        padding-right: 32px;
    }
    .spb32 {
        padding-bottom: 32px;
    }
    .spt34 {
        padding-top: 34px;
    }
    .spl34 {
        padding-left: 34px;
    }
    .spr34 {
        padding-right: 34px;
    }
    .spb34 {
        padding-bottom: 34px;
    }
    .spt36 {
        padding-top: 36px;
    }
    .spl36 {
        padding-left: 36px;
    }
    .spr36 {
        padding-right: 36px;
    }
    .spb36 {
        padding-bottom: 36px;
    }
    .spt38 {
        padding-top: 38px;
    }
    .spl38 {
        padding-left: 38px;
    }
    .spr38 {
        padding-right: 38px;
    }
    .spb38 {
        padding-bottom: 38px;
    }
    .spt40 {
        padding-top: 40px;
    }
    .spl40 {
        padding-left: 40px;
    }
    .spr40 {
        padding-right: 40px;
    }
    .spb40 {
        padding-bottom: 40px;
    }
    .spt42 {
        padding-top: 42px;
    }
    .spl42 {
        padding-left: 42px;
    }
    .spr42 {
        padding-right: 42px;
    }
    .spb42 {
        padding-bottom: 42px;
    }
    .spt44 {
        padding-top: 44px;
    }
    .spl44 {
        padding-left: 44px;
    }
    .spr44 {
        padding-right: 44px;
    }
    .spb44 {
        padding-bottom: 44px;
    }
    .spt46 {
        padding-top: 46px;
    }
    .spl46 {
        padding-left: 46px;
    }
    .spr46 {
        padding-right: 46px;
    }
    .spb46 {
        padding-bottom: 46px;
    }
    .spt48 {
        padding-top: 48px;
    }
    .spl48 {
        padding-left: 48px;
    }
    .spr48 {
        padding-right: 48px;
    }
    .spb48 {
        padding-bottom: 48px;
    }
    .spt50 {
        padding-top: 50px;
    }
    .spl50 {
        padding-left: 50px;
    }
    .spr50 {
        padding-right: 50px;
    }
    .spb50 {
        padding-bottom: 50px;
    }
    .spt52 {
        padding-top: 52px;
    }
    .spl52 {
        padding-left: 52px;
    }
    .spr52 {
        padding-right: 52px;
    }
    .spb52 {
        padding-bottom: 52px;
    }
    .spt54 {
        padding-top: 54px;
    }
    .spl54 {
        padding-left: 54px;
    }
    .spr54 {
        padding-right: 54px;
    }
    .spb54 {
        padding-bottom: 54px;
    }
    .spt56 {
        padding-top: 56px;
    }
    .spl56 {
        padding-left: 56px;
    }
    .spr56 {
        padding-right: 56px;
    }
    .spb56 {
        padding-bottom: 56px;
    }
    .spt58 {
        padding-top: 58px;
    }
    .spl58 {
        padding-left: 58px;
    }
    .spr58 {
        padding-right: 58px;
    }
    .spb58 {
        padding-bottom: 58px;
    }
    .spt60 {
        padding-top: 60px;
    }
    .spl60 {
        padding-left: 60px;
    }
    .spr60 {
        padding-right: 60px;
    }
    .spb60 {
        padding-bottom: 60px;
    }
    .spt62 {
        padding-top: 62px;
    }
    .spl62 {
        padding-left: 62px;
    }
    .spr62 {
        padding-right: 62px;
    }
    .spb62 {
        padding-bottom: 62px;
    }
    .spt64 {
        padding-top: 64px;
    }
    .spl64 {
        padding-left: 64px;
    }
    .spr64 {
        padding-right: 64px;
    }
    .spb64 {
        padding-bottom: 64px;
    }
    .spt66 {
        padding-top: 66px;
    }
    .spl66 {
        padding-left: 66px;
    }
    .spr66 {
        padding-right: 66px;
    }
    .spb66 {
        padding-bottom: 66px;
    }
    .spt68 {
        padding-top: 68px;
    }
    .spl68 {
        padding-left: 68px;
    }
    .spr68 {
        padding-right: 68px;
    }
    .spb68 {
        padding-bottom: 68px;
    }
    .spt70 {
        padding-top: 70px;
    }
    .spl70 {
        padding-left: 70px;
    }
    .spr70 {
        padding-right: 70px;
    }
    .spb70 {
        padding-bottom: 70px;
    }
    .spt72 {
        padding-top: 72px;
    }
    .spl72 {
        padding-left: 72px;
    }
    .spr72 {
        padding-right: 72px;
    }
    .spb72 {
        padding-bottom: 72px;
    }
    .spt74 {
        padding-top: 74px;
    }
    .spl74 {
        padding-left: 74px;
    }
    .spr74 {
        padding-right: 74px;
    }
    .spb74 {
        padding-bottom: 74px;
    }
    .spt76 {
        padding-top: 76px;
    }
    .spl76 {
        padding-left: 76px;
    }
    .spr76 {
        padding-right: 76px;
    }
    .spb76 {
        padding-bottom: 76px;
    }
    .spt78 {
        padding-top: 78px;
    }
    .spl78 {
        padding-left: 78px;
    }
    .spr78 {
        padding-right: 78px;
    }
    .spb78 {
        padding-bottom: 78px;
    }
    .spt80 {
        padding-top: 80px;
    }
    .spl80 {
        padding-left: 80px;
    }
    .spr80 {
        padding-right: 80px;
    }
    .spb80 {
        padding-bottom: 80px;
    }
}
.fz10 {
    font-size: 10px;
}

.fz15 {
    font-size: 15px;
}

.fz12 {
    font-size: 12px;
}

.fz15 {
    font-size: 15px;
}

.fz14 {
    font-size: 14px;
}

.fz15 {
    font-size: 15px;
}

.fz16 {
    font-size: 16px;
}

.fz15 {
    font-size: 15px;
}

.fz18 {
    font-size: 18px;
}

.fz15 {
    font-size: 15px;
}

.fz20 {
    font-size: 20px;
}

.fz15 {
    font-size: 15px;
}

.fz22 {
    font-size: 22px;
}

.fz15 {
    font-size: 15px;
}

.fz24 {
    font-size: 24px;
}

.fz15 {
    font-size: 15px;
}

.fz26 {
    font-size: 26px;
}

.fz15 {
    font-size: 15px;
}

.fz28 {
    font-size: 28px;
}

.fz15 {
    font-size: 15px;
}

.fz30 {
    font-size: 30px;
}

.fz15 {
    font-size: 15px;
}

.fz32 {
    font-size: 32px;
}

.fz15 {
    font-size: 15px;
}

.fz34 {
    font-size: 34px;
}

.fz15 {
    font-size: 15px;
}

.fz36 {
    font-size: 36px;
}

.fz15 {
    font-size: 15px;
}

.fz38 {
    font-size: 38px;
}

.fz15 {
    font-size: 15px;
}

.fz40 {
    font-size: 40px;
}

.fz15 {
    font-size: 15px;
}

.fz42 {
    font-size: 42px;
}

.fz15 {
    font-size: 15px;
}

.fz44 {
    font-size: 44px;
}

.fz15 {
    font-size: 15px;
}

.fz46 {
    font-size: 46px;
}

.fz15 {
    font-size: 15px;
}

.fz48 {
    font-size: 48px;
}

.fz15 {
    font-size: 15px;
}

.fz50 {
    font-size: 50px;
}

.fz15 {
    font-size: 15px;
}

.fz52 {
    font-size: 52px;
}

.fz15 {
    font-size: 15px;
}

.fz54 {
    font-size: 54px;
}

.fz15 {
    font-size: 15px;
}

.fz56 {
    font-size: 56px;
}

.fz15 {
    font-size: 15px;
}

.fz58 {
    font-size: 58px;
}

.fz15 {
    font-size: 15px;
}

.fz60 {
    font-size: 60px;
}

.fz15 {
    font-size: 15px;
}

.fz62 {
    font-size: 62px;
}

.fz15 {
    font-size: 15px;
}

.fz64 {
    font-size: 64px;
}

.fz15 {
    font-size: 15px;
}

.fz66 {
    font-size: 66px;
}

.fz15 {
    font-size: 15px;
}

.fz68 {
    font-size: 68px;
}

.fz15 {
    font-size: 15px;
}

.fz70 {
    font-size: 70px;
}

.fz15 {
    font-size: 15px;
}

@media (max-width: 767px) {
    .sfz10 {
        font-size: 10px;
    }
    .sfz12 {
        font-size: 12px;
    }
    .sfz14 {
        font-size: 14px;
    }
    .sfz16 {
        font-size: 16px;
    }
    .sfz18 {
        font-size: 18px;
    }
    .sfz20 {
        font-size: 20px;
    }
    .sfz22 {
        font-size: 22px;
    }
    .sfz24 {
        font-size: 24px;
    }
    .sfz26 {
        font-size: 26px;
    }
    .sfz28 {
        font-size: 28px;
    }
    .sfz30 {
        font-size: 30px;
    }
    .sfz32 {
        font-size: 32px;
    }
    .sfz34 {
        font-size: 34px;
    }
    .sfz36 {
        font-size: 36px;
    }
    .sfz38 {
        font-size: 38px;
    }
    .sfz40 {
        font-size: 40px;
    }
    .sfz42 {
        font-size: 42px;
    }
    .sfz44 {
        font-size: 44px;
    }
    .sfz46 {
        font-size: 46px;
    }
    .sfz48 {
        font-size: 48px;
    }
    .sfz50 {
        font-size: 50px;
    }
    .sfz52 {
        font-size: 52px;
    }
    .sfz54 {
        font-size: 54px;
    }
    .sfz56 {
        font-size: 56px;
    }
    .sfz58 {
        font-size: 58px;
    }
    .sfz60 {
        font-size: 60px;
    }
    .sfz62 {
        font-size: 62px;
    }
    .sfz64 {
        font-size: 64px;
    }
    .sfz66 {
        font-size: 66px;
    }
    .sfz68 {
        font-size: 68px;
    }
    .sfz70 {
        font-size: 70px;
    }
    .sfz15 {
        font-size: 15px;
    }
}
.max-width,
.max-width--392,
.max-width--400,
.max-width--520,
.max-width--693,
.max-width--880,
.max-width--1120,
.max-width--1170 {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.max-width--1170 {
    max-width: 1170px;
}
.max-width--1120 {
    max-width: 1120px;
}
.max-width--880 {
    max-width: 880px;
}
.max-width--693 {
    max-width: 693px;
}
.max-width--520 {
    max-width: 520px;
}
.max-width--400 {
    max-width: 400px;
}
.max-width--392 {
    max-width: 392px;
}

.bg-gold {
    background-color: #c1ae92;
}

.page-header {
    position: relative;
    padding-top: 41.6%;
    @apply bg-center bg-cover bg-no-repeat;
}
.page-header__title {
    font-size: 2rem;
    font-weight: bold;
    color: white;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.breadcrumb {
    max-width: 1200px;
    width: 100%;
    margin: auto;
}
@media (max-width: 767px) {
    .breadcrumb {
        font-size: 0.8rem;
    }
}
.breadcrumb__wrap {
    width: 100%;
}
.breadcrumb__list {
    list-style: none;
    margin: 0;
    padding: 0.25rem;
    display: flex;
}
.breadcrumb__item a {
    color: hotpink;
    text-decoration: underline;
}
.breadcrumb__item:last-child::after {
    content: '';
}
.breadcrumb__item::after {
    content: '　＞　';
}

@media (max-width: 1024px) {
    .menu {
        display: none;
        background-color: #2d2d2d;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 20;
    }
}
.menu--lower {
    display: none;
    background-color: #2d2d2d;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
}
.menu--lower .menu-nav {
    margin: 200px 0 0 48px;
}
.menu--lower .menu-list {
    margin-top: 40px;
}
.menu--lower .menu-link span {
    display: block;
    font-size: 32px;
    line-height: 1;
}
@media (max-width: 1024px) {
    .menu-nav {
        margin: 200px 0 0 48px;
    }
}
.menu-list {
    margin-top: 1.5vw;
}
.menu-list:first-child {
    margin-top: 0;
}
@media (min-width: 1600px) {
    .menu-list {
        margin-top: 24px;
    }
}
@media (max-width: 1024px) {
    .menu-list {
        margin-top: 40px;
    }
}
.menu-link {
    color: #c1ae92;
    font-size: 0.875vw;
}
@media (max-width: 1024px) {
    .menu-link {
        font-size: 14px;
    }
}
@media (min-width: 1600px) {
    .menu-link {
        font-size: 14px;
    }
}
@media (min-width: 1600px) and (max-width: 1024px) {
    .menu-link {
        font-size: 16px;
    }
}
.menu-link span {
    font-family: 'Cinzel', serif;
    font-size: 2.25vw;
    margin-right: 1.5vw;
}
@media (min-width: 1600px) {
    .menu-link span {
        font-size: 36px;
        margin-right: 24px;
    }
}
@media (max-width: 1024px) {
    .menu-link span {
        display: block;
        font-size: 32px;
        line-height: 1;
    }
}

.menuBtn {
    display: none;
    width: 40px;
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 30;
    cursor: pointer;
}
.menuBtn--lower {
    display: block;
}
.menuBtn--lower span {
    background-color: #2d2d2d !important;
}
.menuBtn--lower span:last-child::after {
    color: #2d2d2d !important;
}
.menuBtn--lower.menuBtn--active span {
    background-color: #fff !important;
}
.menuBtn--lower.menuBtn--active span:last-child::after {
    color: #fff !important;
}
@media (max-width: 1024px) {
    .menuBtn {
        display: block;
    }
}
.menuBtn span {
    display: block;
    width: 40px;
    height: 2px;
    background-color: #fff;
    transition: all 0.4s;
    margin-top: 6px;
}
.menuBtn span:first-child {
    margin-top: 0;
}
.menuBtn span:last-child {
    position: relative;
}
.menuBtn span:last-child::after {
    position: absolute;
    top: 2px;
    left: 4px;
    content: 'MENU';
    font-family: 'Alegreya Sans SC', sans-serif;
    color: #fff;
    font-size: 12px;
}
.menuBtn--active span:nth-of-type(1) {
    transform: translateY(8px) rotate(-20deg);
}
.menuBtn--active span:nth-of-type(2) {
    opacity: 0;
}
.menuBtn--active span:nth-of-type(3) {
    transform: translateY(-8px) rotate(20deg);
}
.menuBtn--active span:nth-of-type(3)::after {
    content: 'CLOSE';
    top: 8px;
    left: 10px;
    transform: translateY(0) rotate(-20deg);
}

.front-page .menuBtn span {
    filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.7));
}

/*
.lower-page {
    .menu {
        &-nav {
            display: none;
        }
    }

    .menuBtn {
        display: block;

        span {
            background-color: black;
        }
    }

    .menuBtn {
        &--active {
            span {
                background-color: white;
            }
        }
    }
}
*/
.footerNav {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 20px 0;
    border-bottom: 1px solid #afafaf;
}
@media (max-width: 1024px) {
    .footerNav {
        display: block;
        padding: 0;
    }
}
.footerNav-list {
    width: 218px;
    border-right: 1px solid #fff;
}
@media (max-width: 1024px) {
    .footerNav-list {
        margin: 0 auto;
        border-right: none;
        border-bottom: 1px solid #fff;
    }
}
.footerNav-list:last-child {
    border-right: none;
}
@media (max-width: 1024px) {
    .footerNav-list:last-child {
        border-bottom: none;
    }
}
.footerNav-link {
    width: 100%;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #fff;
    transition: color 0.3s ease;
}
@media (max-width: 1024px) {
    .footerNav-link {
        height: 52px;
    }
}
.footerNav-link:hover {
    color: #c1ae92;
}
@media (max-width: 1024px) {
    .footerNav-link:hover {
        color: inherit;
    }
}

.footerCentral {
    padding: 20px 0;
    text-align: center;
    border-bottom: 1px solid #afafaf;
}
.footerCentral-link {
    font-size: 14px;
    color: #fff;
}
.footerCentral-link::after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('../../images/footer/icn_link.png');
    background-size: 100%;
    margin-left: 8px;
}

.movie-slider__wrap {
    position: relative;
    width: 100%;
    height: 900px;
    background-color: white;
}
@media (max-width: 1024px) {
    .movie-slider__wrap {
        height: 100svh;
        background-color: black;
    }
}
.movie-slider-item {
    position: relative;
    width: 100%;
    aspect-ratio: 540/960;
}
.movie-slider-item__video {
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
}

.message-slider-container {
    position: absolute;
    width: 100%;
    bottom: 114px;
    left: 0;
    padding: 0 1rem;
    z-index: 9;
}
.message-slider-item__message {
    font-family: 'Klee One', cursive;
    font-size: 3vw;
    color: #2d2d2d;
    line-height: 1.5;
}
@media (min-width: 1600px) {
    .message-slider-item__message {
        font-size: 62px;
    }
}
@media (max-width: 1024px) {
    .message-slider-item__message {
        font-size: 7.8125vw;
        color: #fff;
        text-shadow: 1px 1px 4px #444;
    }
}

.frontKey {
    max-width: 1600px;
    height: 900px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
@media (max-width: 1024px) {
    .frontKey {
        position: relative;
        height: initial;
    }
}
.frontKey-movies {
    position: relative;
    width: 556px;
    height: 100%;
    overflow: hidden;
}
@media (max-width: 1024px) {
    .frontKey-movies {
        width: 100%;
    }
}
.frontKey-wrap {
    width: calc(100% - 556px);
    display: flex;
    align-items: center;
    padding: 0 8px;
}
@media (min-width: 1024px) and (max-width: 1400px) {
    .frontKey-wrap {
        padding-left: 40px;
    }
}
@media (max-width: 1024px) {
    .frontKey-wrap {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding: 0;
    }
}
.frontKey-main {
    max-width: 720px;
    width: 100%;
    margin: 4rem auto 0 auto;
    opacity: 0;
}
@media (max-width: 1024px) {
    .frontKey-main {
        position: relative;
        max-width: 100%;
        width: 100%;
        height: 100%;
        opacity: 1;
    }
}
.frontKey-ttl {
    font-family: 'Alegreya Sans SC', sans-serif;
    font-size: 3.5vw;
    color: #2d2d2d;
    line-height: 1;
    margin-bottom: 129px;
}
@media (min-width: 1600px) {
    .frontKey-ttl {
        font-size: 56px;
    }
}
@media (max-width: 1024px) {
    .frontKey-ttl {
        font-size: 28px;
        color: #fff;
        position: fixed;
        z-index: 3;
        top: 20px;
        left: 20px;
        margin-bottom: 0;
        text-shadow: 1px 1px 4px #444;
    }
}
.frontKey-msg {
    font-family: 'Klee One', cursive;
    opacity: 0;
    margin-top: 3vw;
    font-size: 3.875vw;
    color: #2d2d2d;
    line-height: 1.5;
}
@media (min-width: 1600px) {
    .frontKey-msg {
        margin-top: 48px;
        font-size: 62px;
    }
}
@media (max-width: 1024px) {
    .frontKey-msg {
        position: absolute;
        bottom: 114px;
        left: 6.25vw;
        font-size: 7.8125vw;
        color: #fff;
        text-shadow: 1px 1px 4px #444;
    }
}

.frontCast {
    margin: 40px auto 0 auto;
    max-width: 1171px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 32px 24px;
}
@media (max-width: 1024px) {
    .frontCast {
        max-width: 648px;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 32px 16px;
    }
}
.frontCast li {
    width: 215px;
}
@media (max-width: 1024px) {
    .frontCast li {
        width: 100%;
    }
}
.frontCast figure {
    margin: 0;
}
.frontCast figcaption {
    margin-top: 12px;
    position: relative;
    font-size: 14px;
    line-height: 1.2;
    padding-left: 20px;
}
.frontCast figcaption::before {
    content: '';
    position: absolute;
    top: 2px;
    left: 0;
    width: 16px;
    height: 16px;
    background-image: url('../../images/front/icn_name.png');
    background-size: 100%;
}

.frontClub {
    background-color: #2d2d2d;
    padding: 144px 20px 96px 20px;
}
@media (max-width: 1024px) {
    .frontClub {
        padding-top: 96px;
        padding-bottom: 64px;
    }
}
.frontClub-wrap {
    max-width: 1120px;
    margin: 40px auto 0 auto;
    display: flex;
    justify-content: space-between;
}
@media (max-width: 1024px) {
    .frontClub-wrap {
        max-width: 640px;
        display: block;
    }
}
.frontClub-nav {
    width: 400px;
}
@media (max-width: 1024px) {
    .frontClub-nav {
        width: 100%;
    }
}
.frontClub-nav__ttl {
    display: flex;
    align-items: center;
    padding-left: 16px;
    height: 40px;
    border-left: 4px solid #c1ae92;
    font-size: 20px;
    color: #fff;
}
.frontClub-nav__list {
    margin-top: 16px;
    border-top: 1px solid #fff;
}
.frontClub-nav__item {
    border-bottom: 1px solid #fff;
}
.frontClub-link {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 12px 56px 12px 16px;
    background-image: url('../../images/front/icn_club.png');
    background-size: 40px 40px;
    background-position: center right 8px;
    background-repeat: no-repeat;
    transition: 0.3s;
}
@media (max-width: 1024px) {
    .frontClub-link {
        background-image: url('../../images/front/icn_club_sp.png');
    }
}
.frontClub-link__ttl {
    font-size: 22px;
    color: #fff;
    font-weight: 500;
    transition: 0.3s;
}
.frontClub-link__ttl-sub {
    display: block;
    font-weight: 400;
    color: #c1ae92;
    font-size: 14px;
}
.frontClub-link:hover,
.frontClub-link--active {
    background-image: url('../../images/front/icn_club_active.png');
    background-color: #c1ae92;
}
@media (max-width: 1024px) {
    .frontClub-link:hover,
    .frontClub-link--active {
        background-image: url('../../images/front/icn_club_sp.png');
        background-color: #2d2d2d;
    }
}
.frontClub-link:hover .frontClub-link__ttl,
.frontClub-link--active .frontClub-link__ttl {
    color: #2d2d2d;
}
.frontClub-link:hover .frontClub-link__ttl span,
.frontClub-link--active .frontClub-link__ttl span {
    color: #fff;
}
@media (max-width: 1024px) {
    .frontClub-link:hover .frontClub-link__ttl,
    .frontClub-link--active .frontClub-link__ttl {
        color: #fff;
    }
    .frontClub-link:hover .frontClub-link__ttl .frontClub-link__ttl-sub,
    .frontClub-link--active .frontClub-link__ttl .frontClub-link__ttl-sub {
        color: #c1ae92;
    }
}
@media (max-width: 1024px) {
    .frontClub-link--active {
        background-image: url('../../images/front/icn_club_sp_active.png') !important;
    }
}
.frontClub-details {
    margin-top: 56px;
    width: 600px;
}
@media (max-width: 1024px) {
    .frontClub-details {
        display: none;
    }
}
.frontClub-body {
    opacity: 0;
    transition: 0.8s;
}
@media (max-width: 1024px) {
    .frontClub-body {
        transition: 0.5s;
    }
}
.frontClub-body--active {
    opacity: 1;
}
.frontClub-body--active .frontClub-map iframe {
    opacity: 1;
}
@media (max-width: 1024px) {
    .frontClub-body {
        padding-bottom: 32px;
    }
}
.frontClub-map {
    margin-top: 24px;
    height: 340px;
}
@media (max-width: 767px) {
    .frontClub-map {
        height: 340px;
    }
}
.frontClub-map iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 320/180;
    opacity: 0;
    transition: opacity 0.5s;
    transition-delay: 0.4s;
}
.frontClub-btn {
    margin-top: 24px;
    display: flex;
    justify-content: space-between;
}
.frontClub-btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 49%;
    height: 48px;
    background-color: #fff;
    font-size: 15px;
    color: #2d2d2d;
    transition: 0.3s;
}
.frontClub-btn a:hover {
    background-color: #c1ae92;
}
@media (max-width: 1024px) {
    .frontClub-btn a:hover {
        background-color: #fff;
    }
}

.frontVisitors {
    max-width: 960px;
    width: 100%;
    margin: 40px auto 0 auto;
    display: flex;
    align-items: center;
}
@media (max-width: 1024px) {
    .frontVisitors {
        max-width: 640px;
        display: block;
    }
}

.cast-image {
    max-width: 400px;
    width: 100%;
}
.cast-tag-label {
    border: 1px solid #c1ae92;
    border-radius: 30px;
    transition:
        background-color,
        color 0.5s ease;
}
.cast-tag-label:hover {
    background-color: #c1ae92;
    color: white;
}
.cast-tag-label.active {
    background-color: #c1ae92;
    color: white;
}
.cast-new-label {
    margin: auto;
    display: flex;
    align-items: center;
}
.cast-new-label::before,
.cast-new-label::after {
    content: '';
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}
.cast-new-label::before {
    margin-right: 1rem;
}
.cast-new-label::after {
    margin-left: 1rem;
}
.cast-slider__image {
    padding-top: 160%;
    height: 640px;
}
@media (max-width: 1600px) {
    .cast-slider__image {
        padding-top: 160%;
        height: 320px;
    }
}
@media (max-width: 767px) {
    .cast-slider__image {
        height: initial;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}
.cast-slider-nav__image {
    aspect-ratio: 400/640;
}
.cast-slider-nav .slick-current .cast-slider-nav__image {
    border: 4px solid #c1ae92;
}

.recommend-cast-slider .slick-slide {
    height: auto !important;
}
.recommend-cast-slider .slick-next,
.recommend-cast-slider .slick-prev {
    top: 39%;
}
@media (max-width: 767px) {
    .recommend-cast-slider .slick-next,
    .recommend-cast-slider .slick-prev {
        top: 30%;
    }
}
.recommend-cast-slider .slick-next {
    right: -80px !important;
}
@media (max-width: 767px) {
    .recommend-cast-slider .slick-next {
        right: 5px !important;
    }
}
.recommend-cast-slider .slick-prev {
    left: -80px !important;
}
@media (max-width: 767px) {
    .recommend-cast-slider .slick-prev {
        left: 5px !important;
    }
}
.recommend-cast-slider .slick-next:before {
    background: url('../../images/cast/arrow_right.svg') !important;
    background-size: contain !important;
}
.recommend-cast-slider .slick-prev:before {
    background: url('../../images/cast/arrow_left.svg') !important;
    background-size: contain !important;
}
.recommend-cast-slider .slick-arrow {
    z-index: 2 !important;
    width: 60px !important;
    height: 60px !important;
}
@media (max-width: 767px) {
    .recommend-cast-slider .slick-arrow {
        width: 40px !important;
        height: 40px !important;
    }
}
.recommend-cast-slider .slick-arrow:before {
    content: '' !important;
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1 !important;
}
.recommend-cast-slider .slick-dots {
    bottom: -32px !important;
}
.recommend-cast-slider .slick-dots li {
    margin: 0 -2px;
}
.recommend-cast-slider .slick-dots li button::before {
    color: #c1ae92;
}

.interview-image {
    aspect-ratio: 520/260;
}

/*# sourceMappingURL=app.css.map */
