
/* 既存のスタイル */
* {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    overflow: hidden;
    touch-action: pan-y;
}

body {
    margin: 0;
    padding: 0;
    font-family: "Roboto", sans-serif;
    height: 100dvh;
    min-height: 100dvh;
    max-width: 100vw;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    display: flex;
    flex-direction: column;
}

img {
    max-width: 100%;
    height: auto;
}
ul,li{
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
    list-style-type: none;
    line-height: 1;
}
/* Header Styles */
.header {
    position: relative;
    height: 52px;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 100%;
    z-index: 1000;
}

/* スライド内ヘッダー */
.slide-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 52px;
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header__logo {
    width: 70%;
    max-width: 348px;
    height: auto;
    object-fit: contain;
    object-position: center;
    user-select: none;
    -webkit-user-select: none;
    -webkit-user-drag: none;
    user-drag: none;
}

/* Footer */
.footer {
    color: #fff;
    text-align: center;
    width: 56vh;
    max-width: 580px;
    z-index: 1001;
    flex-shrink: 0;
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.mg0{
    margin: 0;
}

.image-container {
    position: relative;
}

.overlay-text {
    position: absolute;
    bottom: 0;
    color: #333;
    padding: 0 3px 3px;
    margin: 0;
    font-size: .6rem;
}
.overlay-text:first-child {
    right: calc(50% + 5px);
}
.overlay-text:last-child {
    left: calc(55% + 5px);
}

/* スマホ縦サイズでは100%幅 */
@media (max-width: 580px) and (orientation: portrait) {
    .footer {
        width: 100%;
        max-width: 100%;
    }
}

/* スライド内フッター */
.slide-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 10;
    padding: 8px 0;
}

.footer__text {
    font-size: 2.5vw;
    line-height: 1.2;
    margin: 0;
}
.footer__text__first {
    color: #000;
}

@media (min-width: 580px) {
    .footer__text {
        font-size: 15px;
    }
}

.footer__cta {
    display: flex;
    justify-content: center;
    align-items: center;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0 auto;
    z-index: 1000;
}
.footer__cta__text {
	font-weight: bold;
	color: #000000;
	font-size: 14px;
    margin-bottom: 5px;
}

/* スマホ縦サイズでは100%幅 */
@media (max-width: 580px) and (orientation: portrait) {
    .footer__cta {
        width: 100%;
        left: 0;
        right: 0;
        margin: 0;
    }
}

.footer__cta__btn {
    flex-shrink: 0;
    width: 50%;
    display: block;
}

.footer__cta__btn img {
    width: 100%;
    height: auto;
    display: block;
}

/* Main Layout */
.main {
    position: relative;
    max-width: 580px;
    margin: 0 auto;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    width: 100%;
    background-color: #ffffff;
    transition: background 0.3s ease;
}

.main__wrap {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    background-color: #ffffff;
}

/* 各スライドに対応する背景クラス */
.main.slide-1-bg {
    background-color: #ffffff;
}

.main.slide-2-bg {
    background-image: url('img/bg-souzoku02-sp.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.main.slide-3-bg {
    background-color: #ffffff;
}

.main.slide-4-bg {
    background-image: url('img/bg-souzoku04-sp.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.main.slide-5-bg {
    background-image: url('img/bg-souzoku05-sp.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.main.slide-6-bg {
    background-color: #ffffff;
}

.main.slide-7-bg {
    background-image: url('img/bg-souzoku07.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Swiper Container */
.swiper-container,
.swiper {
    flex: 1;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: ease-out;
}

/* Swiper Slide */
.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
}

/* フルスクリーン背景を実現する疑似要素 */
.swiper-slide::before {
    content: '';
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 100vh;
    z-index: -2;
    pointer-events: none;
}

/* 各スライドの背景設定 */
.slide-1::before {
    background-color: #ffffff;
}

/* 背景要素 - スライド内相対配置に変更 */
.slide-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 1;
    transition: opacity 0.3s ease;
    z-index: 0;
    background-attachment: scroll;
    display: block;
    pointer-events: none;
}

/* アクティブスライドの背景を表示 */
.swiper-slide-active .slide-bg {
    opacity: 1;
}

/* 初期表示用 - 最初のスライドの背景を表示 */
.slide-1 .slide-bg {
    opacity: 1;
}

/* 背景画像の確実な表示設定 */
.slide-bg[style*="background-image"] {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
}

.slide-bg[style*="background-color"] {
    background-size: auto;
}

/* 背景を確実に表示するための追加設定 - メイン定義に統合済み */

/* スライドコンテンツ */
.slide-content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 5;
    background: transparent;
    padding: 0; /* 基本はパディングなし */
    box-sizing: border-box;
}

/* Slide Wrapper */
.slide-wrap {
    width: 100%;
    position: relative;
    margin: 0 auto;
    /*display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;*/
    max-height: 100%;
	top:-10%;
}

.slide-wrap--media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
}

.slide-wrap__image {
    width: 100%;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
    pointer-events: none;
}

.slide-wrap__image--1 {
    position: relative;
}

.slide-wrap--center {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.slide-wrap__cta-title{
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: 30px;
    line-height: 1.3;
    color: #fff;
    font-weight: 700;
    margin: 0 0 15px;
}
.slide-wrap__text--small{
    font-size: 24px;
}
.slide-wrap__text--emphasis{
    font-size: 32px;
    color: #feea10;
}
.slide-wrap__btn-wrap{
    display: grid;
    gap: 10px;
	padding: 15px 20px 0;
}
.slide-wrap__btn{
    display: block;
}
.slide-wrap__notice{
    display: grid;
    gap: 5px;
    background-color: #52667e;
    border-radius: 5px;
    padding: 10px;
    margin: 15px 20px 0;
}
.slide-wrap__notice-item{
    font-size: 11px;
    line-height: 1.4;
    text-align: left;
    color: #fff;
}

/* スワイプインジケーター */
.swipe-indicator {
    position: absolute;
    right: 10%;
    top: 70%;
    z-index: 20;
    pointer-events: none;
    /*animation: swipePulse 2s infinite;*/
}

.swipe-arrow {
    display: flex;
    align-items: center;
    gap: 3px;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
    padding: 5px 8px;
    border-radius: 15px;
    font-size: 11px;
    font-weight: bold;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.arrow-text {
    font-size: 12px;
    animation: arrowMove 1.5s infinite;
}

.swipe-text {
    font-size: 10px;
    white-space: nowrap;
}

/* アニメーション */
@keyframes swipePulse {
    0%, 100% {
        opacity: 0.8;
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(1.05);
    }
}

@keyframes arrowMove {
    0%, 100% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(3px);
    }
}
/* Swiper Pagination Container */
.swiper-pagination-container {
    position: absolute;
    bottom: 80px; /* フッターの真上に配置 */
    left: 0;
    right: 0;
    width: 100%;
    padding: 8px 0;
    flex-shrink: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    pointer-events: auto;
}

/* Swiper Pagination */
.swiper-pagination {
    position: static;
    text-align: center;
    z-index: 10;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    gap: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: auto;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    width: auto;
}

.swiper-pagination-bullets {
    display: flex;
    align-items: center;
}

.swiper-pagination-bullet {
    width: 2.4vw;
    height: 2.4vw;
    display: inline-block;
    border-radius: 50%;
    background: #FFFFFF;
    border: 1px solid #5b3a0f;
    opacity: 1;
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 2px);
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.3s ease;
    outline: none;
}

@media (min-width: 580px) {
    .swiper-pagination-bullet {
        width: 1vw;
        height: 1vw;
    }
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #5b3a0f;
    transform: scale(1.2);
}

.swiper .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #5b3a0f;
    border: 1px solid #FFF;
}

.main .swiper .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #5b3a0f;
    border: 1px solid #FFF;
}

.swiper-pagination-bullet:hover {
    background: #b0b0b0;
}

/* Swiper Navigation */
.swiper-button-prev,
.swiper-button-next {
    width: 40px;
    height: 40px;
    margin: 0;
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #3c2c25;
    background-color: #fff;
    border-radius: 20px;
    font-size: 14px;
    font-weight: bold;
    padding: 12px 12px;
    transition: all 0.3s ease;
    pointer-events: auto;
    user-select: none;
    box-sizing: border-box;
    box-shadow: 0 2px 8px rgba(139, 69, 19, 0.3);
    border: none;
    position: static;
}

.swiper-button-prev {
    position: static;
    margin: 0 8px 0 0;
    margin-top: initial;
    flex-shrink: 0;
}

.swiper-button-next {
    position: static;
    margin: 0 0 0 8px;
    margin-top: initial;
    flex-shrink: 0;
}

.swiper-button-prev:after {
    content: '←';
	font-weight: bold;
}

.swiper-button-next:after {
    content: '→';
	font-weight: bold;
}

.swiper-button-prev:active,
.swiper-button-next:active {
    box-shadow: 0 2px 6px rgba(139, 69, 19, 0.3);
}

.swiper-button-disabled {
    display: none;
}

.swiper-button-prev[style*="display: none"],
.swiper-button-next[style*="display: none"] {
    display: none;
}



/* Responsive Design */
@media (min-width: 580px) {
    html, body {
        width: 100%;
        height: 100dvh;
        margin: 0;
        padding: 0;
    }

    body {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .main {
        width: calc(100vh * 9 / 16);
        max-width: min(580px, 90vw);
        height: 100dvh;
        margin: 0;
        position: relative;
        background-color: #fff;
        display: flex;
        flex-direction: column;
    }


}

/* 580px以下（スマートフォン縦向き） */
@media (max-width: 580px) and (orientation: portrait) {
    html, body {
        width: 100vw;
        height: 100dvh;
        margin: 0;
        padding: 0;
    }

    body {
        display: flex;
        flex-direction: column;
    }

    .main {
        max-width: 100vw;
        width: 100%;
        margin: 0;
        flex: 1;
        display: flex;
        flex-direction: column;
    }

    .header {
        height: 50px;
        width: 100%;
    }

    .slide-header {
        height: 50px;
    }

    .header__logo {
        width: 71.4666666667vw;
        height: auto;
    }

    .footer__text {
        font-size: 0.5rem;
    }

    /* スマホ縦向きのページネーション位置調整 */
    .swiper-pagination-container {
        bottom: 100px; /* フッターの真上に配置 */
    }

    /* スマホ縦向きでのスワイプインジケーター調整 */
    .swipe-indicator {
        right: 10%;
    }

    .swipe-arrow {
        padding: 10px;
        font-size: 12px;
    }

    .arrow-text {
        font-size: 11px;
    }

    .swipe-text {
        font-size: 9px;
    }
}

/* iPhone SE対応（375px幅時の調整） */
@media (max-width: 375px) {
    .swiper-pagination-container {
        bottom: 85px; /* フッターの真上に配置 */
    }
}

/* 極端に横長の機種対応（Galaxy S系、Xperia 1系など） */
@media (max-width: 1000px) and (orientation: landscape) and (max-height: 400px) {
    html, body {
        width: 100%;
        height: 100dvh;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .main {
        width: 90vw;
        max-width: 90vw;
    }

    .main.fullScreen {
        max-width: unset;
        width: calc(100vh * 6 / 16);
    }



    .header {
        height: 25px;
    }

    .slide-header {
        height: 25px;
    }

    .header__logo {
        width: 85%;
        max-width: 120px;
    }

    .footer__text {
        font-size: 5px;
        line-height: 1;
    }

}

/* 特に縦横比が長い機種（Xperia5シリーズなど）対応 */
@media (max-width: 1000px) and (orientation: landscape) and (max-height: 450px) {
    html, body {
        width: 100%;
        height: 100dvh;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .main {
        width: 85vw;
        max-width: 85vw;
    }

    .main.fullScreen {
        max-width: unset;
        width: calc(100vh * 7 / 16);
    }

    .header {
        height: 30px;
    }

    .slide-header {
        height: 30px;
    }

    .header__logo {
        width: 90%;
        max-width: 150px;
    }


    .footer__text {
        font-size: 6px;
        line-height: 1.1;
    }

    /* 極端に横長画面でのナビゲーションボタン調整 */
    .swiper-button-prev,
    .swiper-button-next {
        width: 20px;
        height: 20px;
        font-size: 10px;
        padding: 6px 6px;
        margin: 0 3px;
    }

    .swiper-pagination-container {
        bottom: 35px; /* フッターと被らない適切な位置 */
        padding: 1px 0;
        max-width: calc(100% - 15px);
        margin: 0 auto;
        left: 7px;
        right: 7px;
    }

    .swiper-pagination {
        margin: 0 10px;
    }
}

/* スマホ横向き対応 - DEBUG v3 2025/01/20 15:45 */
@media (max-width: 1000px) and (orientation: landscape) {
    html, body {
        width: 100%;
        height: 100dvh;
        margin: 0;
        padding: 0;
    }

    body {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .main {
        width: calc(100vh * 9 / 16);
        max-width: min(400px, 80vw);
        height: 100dvh;
        margin: 0 auto;
        position: relative;
        background-color: #fff;
        display: flex;
        flex-direction: column;

    }

    .main.fullScreen {
        max-width: unset;
        width: 56vh;
    }

    .main__wrap.fullScreen {
        max-width: unset;
        width: 56vh;
    }

    .header {
        height: 40px;
        width: 100%;
        margin: 0 auto;
    }

    .slide-header {
        height: 40px;
    }

    .header__logo {
        width: 100%;
    }

    .footer {
        margin: 0;
        min-height: auto;
    }

    .footer__text {
        font-size: 0.5rem;
        line-height: 1.2;
    }

    .footer__cta__text {
        font-size: 10px;
    }

    /* スマホ横向きでのナビゲーションボタン調整 */
    .swiper-button-prev,
    .swiper-button-next {
        width: 24px;
        height: 24px;
        font-size: 12px;
        padding: 8px 8px;
        margin: 0 4px;
    }

    /* スマホ横向きでのスワイプインジケーター調整 */
    .swipe-indicator {
        right: 5px;
    }

    .swipe-arrow {
        padding: 3px 6px;
        font-size: 9px;
    }

    .arrow-text {
        font-size: 10px;
    }

    .swipe-text {
        font-size: 8px;
    }

    .swiper-pagination-container {
        bottom: 40px; /* フッターと被らない適切な位置 */
        padding: 2px 0;
        max-width: calc(100% - 20px);
        margin: 0 auto;
        left: 10px;
        right: 10px;
    }

    .swiper-pagination {
        margin: 0 15px;
    }

}

.swiper-pagination {
    gap: 2px;
}

/* より大きなスマホ横向き対応 - 基本設定を継承 */

/* 全デバイス共通のボタン配置 */
.swiper-button-prev,
.swiper-button-next {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: manipulation;
    pointer-events: auto;
    cursor: pointer;
    visibility: visible;
}

.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

@media screen {
    .swiper-button-prev,
    .swiper-button-next {
        visibility: visible;
        display: flex;
    }

    .swiper-button-prev:not(.swiper-button-disabled),
    .swiper-button-next:not(.swiper-button-disabled) {
        pointer-events: auto;
        cursor: pointer;
    }
}

/* PC縦幅600未満対応 */
@media (min-width: 1201px) and (max-height: 599px) {
    .swiper-pagination {
        gap: 2px;
    }

    .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
    }


}

/* PC版で縦650px以下の時のfooter調整 */
@media (min-width: 580px) and (max-height: 650px) {
    .footer__text {
        font-size: 0.5rem;
    }
}

/* スライド背景色 */
.slide-1 .slide-bg {
    background-color: #f2ebe1;
}

.slide-2 .slide-bg,
.slide-3 .slide-bg {
    background-color: #f3f3f2;
}

.slide-4 .slide-bg,
.slide-5 .slide-bg,
.slide-6 .slide-bg,
.slide-7 .slide-bg,
.slide-8 .slide-bg,
.slide-9 .slide-bg {
    background-color: #f2ebe1;
}


.cta__button--phone {
    background: linear-gradient(180deg, #f58c4c 10%, #f15c00 100%);
}
.cta__button {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    /* gap: 3px; */
    /* padding: 12px 10px; */
    /* border-radius: 10px; */
    text-decoration: none;
    color: white;
    font-weight: bold;
	font-size: 1.0rem;
    min-height: 60px;
    transition: transform 0.2s ease;
}

.cta__buttons {
    display: flex
;
    /* gap: 10px; */
    width: 100%;
    max-width: 580px;
}

.cta__icon {
    font-size: 1.2em;
    display: flex;
    align-items: center;
    margin-right: 8px;
}

.icon-freecall,
.icon-24h {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

cta__text {
    font-size: 1.0rem;
}

.cta--1 {
    position: absolute;
    bottom: 0;
    }

.cta {
    width: 100%;
    height: auto;
    min-height: 60px;
    position: relative;
    background-color: #fff;
    /* border-top: 1px solid #e0e0e0; */
    display: flex
;
    align-items: center;
    justify-content: center;
    /* padding: 10px; */
}

.cta__button--line {
    background: linear-gradient(0deg, #459c2b 10%, #6aaf55 100%);
}

/* スライド9のボタンスタイル */
.slide-9 .slide-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    /*gap: 20px;
    padding: 20px;*/
}

.slide-9 .slide-wrap__btn-wrap {
    width: 100%;
    max-width: 400px;
}

.slide-9 .slide-wrap__btn[href^="tel"] {
    background: linear-gradient(180deg, #f58c4c 10%, #f15c00 100%);
}

.slide-9 .slide-wrap__btn[href^="/contact"] {
    background: linear-gradient(0deg, #459c2b 10%, #6aaf55 100%);
}

.slide-9 .slide-wrap__btn:hover {
    transform: translateY(-2px);
    opacity: 0.9;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.slide-9 .slide-wrap__btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.slide-9 .slide-wrap__btn-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

.slide-9 .slide-wrap__btn-icon {
    margin-right: 10px;
}

.slide-9 .slide-wrap__btn-icon img {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.slide-9 .slide-wrap__btn-label {
    font-size: 20px;
    font-weight: bold;
}

.slide-9 .slide-wrap__btn-time {
    font-size: 14px;
    font-weight: normal;
}

/* スライド9のスタイル */
.slide-9 .slide-wrap__title {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    color: #3c2c25;
    margin-bottom: 10px;
}

.slide-9 .slide-wrap__subtitle {
    font-size: 18px;
    text-align: center;
    color: #3c2c25;
    margin-bottom: 20px;
    line-height: 1.4;
}

.slide-9 .slide-wrap__btn-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.slide-9 .slide-wrap__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px 20px;
    border-radius: 50px;
    text-decoration: none;
    color: #ffffff;
    font-weight: bold;
    transition: transform 0.2s ease;
	width: 100%;
    font-size: 18px;
    box-shadow: 0 5px 0 0 rgba(97, 95, 92, 0.4);
}

.slide-9 .slide-wrap__btn--tel {
    background: linear-gradient(0deg, #ff8e3f 10%, #ffa566 100%);
}

.slide-9 .slide-wrap__btn--web {
    background: linear-gradient(0deg, #3c2c25 10%, #79584a 100%);
}

.slide-9 .slide-wrap__btn:hover {
    transform: translateY(-2px);
    opacity: 0.9;
}

.slide-9 .slide-wrap__btn-icon {
    font-size: 24px;
}

.slide-9 .slide-wrap__btn-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.slide-9 .slide-wrap__btn-label {
    font-size: 24px;
    /*margin-bottom: 5px;*/
}

.slide-9 .slide-wrap__btn-time {
    font-size: 14px;
    font-weight: normal;
}

.arrow-text {
  display: block;
  text-align: center;
  line-height: 1.5;
}

.arrow-text i {
  display: block;
  margin-bottom: 5px;
}

@media (orientation: landscape) and (max-height: 450px) {
	.slide-9 .slide-wrap__btn {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		padding: 5px 20px;
		border-radius: 50px;
		text-decoration: none;
		color: #ffffff;
		font-weight: bold;
		transition: transform 0.2s ease;
		width: 100%;
		font-size: 18px;
		box-shadow: 0 5px 0 0 rgba(97, 95, 92, 0.4);
	}

	.slide-9 .slide-wrap__btn-label {
		font-size: 12px;
		/* margin-bottom: 5px; */
	}
	.slide-9 .slide-wrap__btn-time {
		font-size: 10px;
		font-weight: normal;
	}
	.cta__button {
		flex: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		/* gap: 3px; */
		/* padding: 12px 10px; */
		/* border-radius: 10px; */
		text-decoration: none;
		color: white;
		font-weight: bold;
		font-size: .6rem;
		min-height: 60px;
		transition: transform 0.2s ease;
	}
  }

