/* charset="UTF-8" */

/*===========================
common 
 ==========================*/
html {
    font-size: 62.5%;
    scroll-behavior: auto;
}

body {
    font-family:
        'Noto serif JP', Arial, sans-serif;
    font-style: normal;
    color: ver(--primary-black, #333a3a);
    background-color: ver(--primary-white);
    line-height: 1.8;
    box-sizing: border-box;
    background-repeat: no-repeat;
}

img {
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    opacity: 0.9;
}

/* 画像SP */
@media screen and (min-width: 375px) and (max-width: 519px) {
    .img__problem {
        height: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 150%;
    }
}

/* コンテナ */
.container {
    overflow: hidden;
}

.main-container,
.main-container * {
    box-sizing: border-box;
}

input,
select,
textarea,
button {
    outline: 0;
}

.main-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    position: relative;
    width: 355px;
    height: 72px;
    margin: 0 auto;
    padding: 0 14px 0 14px;
    width: 100%;
    line-height: 180%;
}

/* kiraraロゴ */
.header__topic,
.nav__topic {
    width: 122px;
    height: 65px;
    padding: 0 65px 0 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-clip: padding-box;
    color: #798543;
    font-family: 'Cormorant', serif;
    font-weight: 700;
    font-style: italic;
    font-size: 50px;
    line-height: 65px;
}

.footer__topic {
    transform: translateX(-300px);
    display: flex;
    align-items: center;
    justify-content: center;
    background-clip: padding-box;
    color: #798543;
    font-family: 'Cormorant', serif;
    font-weight: 700;
    font-style: italic;
    font-size: 40px;
}


/*==========================
Article header
==========================*/
.article__header {
    padding: 48px var(--contentPadding) 24px;

}

.flame269 {
    display: flex;
    width: 100%;
    justify-content: center;
    position: relative;

}

.img {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.img.mainVisual {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.trial {
    box-shadow: 65px 65px 0 #F0F0EE;
}


.overlay-text {
    align-items: center;
    justify-content: center;
    width: 25.903%;
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    background: #f0f0f0;
}

@media screen and (min-width:769px) {
    .article__header {
        display: flex;
        max-width: 1440px;
        justify-content: center;
        align-items: center;
    }

    .menupc {
        display: flex;
        justify-content: space-between;
        list-style: none;
        border-left: 1px solif #8B6931;
        position: -webkit-sticky;
        /* Safari対応 */
        position: sticky;
        top: 0;
        z-index: 1000;

        .menupc.sticky {
            position: fixed;
            top: 0;
        }

        li:last-child {
            border-left: 1px solif #8B6931;
        }

        li a {
            display: flex;
            flex-direction: column;
            padding: 0px 14px;
            color: #8B6931;
            font-size: 16px;
            font-weight: 400;
            text-align: center;
            text-decoration: none;
            line-height: 1.6;

        }

        li a span {
            color: #8B6931;
            font-size: 12px;

        }

        .menu-item .menu-description {
            display: block;
            font-size: 12px;
            color: #8B6931;
            font-style: normal;
        }

        .menu-item:hover {
            background-color: rgba(231, 221, 221, 0.30);
            /* ホバー時の背景色 */
        }

    }
    .trial {
        box-shadow: 65px 65px 0 #F0F0EE;
        width: 70%;
    }

}

.flame219 {
    width: 115px;
    height: 71px;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    gap: 20px;
    font-family: Noto Serif jp;
    font-size: 16px;
    font-weight: 300;
    color: #8B6931;
    /* line-height: 20.8px; */
    text-align: center;
}

.header__btn {
    width: 40px;
    height: 40px;
    padding: 20px 14px;
    background-size: cover;
    background-image: url('../img/btn-menu.png');
    position: fixed;
    right: 14px;
    z-index: 1001;

}

/* pc表示 ***************************/
@media screen and (min-width:769px) {
    .article__header {
        display: flex;
        max-width: 1440px;
        justify-content: center;
        align-items: center;
    }

    .header__topic {
        display: flex;
        width: 174px;
        height: 91px;
        flex-direction: column;
        justify-content: center;
        flex-shrink: 0;

    }

    .header__btn {
        display: none;

    }
}

@media screen and (min-width: 375px)and (max-width: 519px) {
    .footer__topic {
        transform: translateX(-100px);
    }
}

@media screen and (min-width: 520px)and (max-width: 768px) {
    .footer__topic {
        transform: translateX(-200px);
    }
}

/* pc end ************************************/

/* nav ************************************/
.nav {
    width: 380px;
    padding: 0px 0px 20px 0px;
    background-color: #f9f9f9;
    text-align: center;
    height: 600px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.4s;

}

.nav__btn {
    width: 40px;
    height: 40px;
    background-image: url('../img/closeボタン1.png');
    background-size: cover;
    transition: 0.4s;
}

.nav_list {
    width: 375px;
    line-height: 2;
    text-align: left;

    li:last-child {
        border-left: 1px solif #8B6931;
    }

    li a {
        display: flex;
        flex-direction: column;
        padding: 20px 0;
        color: #8B6931;
        font-size: 12px;
        font-weight: 400;
        text-align: center;
        text-decoration: none;
        line-height: 1.3;

    }

    li a span {
        color: #8B6931;
        font-size: 16px;
    }
}

.nav__item {
    height: 31px;
    padding: 30px;
    color: #8B6931;
    font-family: 'Cormorant', serif;
    font-weight: 300;
    font-size: 24px;
}


.nav__btnEntry::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(../images/icon-arrow);
    background-size: contain;
    background-position: center;
    margin: 0 8px;
}

.nav__btnEntry:hover {
    opacity: 0.5;
}

.nav__item:last-of-type {
    display: none;
}


/* .nav.activ表示 */
.nav.active {
    display: block;
    transform: translateX(0);
    background: #f0f0f0;
}

.nav {
    display: none;
}

.hidden {
    display: none;
}


@media screen and(min-width:769px) {
    .nav.active {
        transform: translateX(-100);

    }

    .slider {}

    .article__header {
        background-image: url(../img/mainimg.png);
        /* 背景画像のパスを指定 */
        background-position: center;
        /* 画像を中央に配置 */
        background-repeat: no-repeat;
        /* 画像を繰り返さない */
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        color: #fff;
        /* テキストの色を設定 */
        padding: 20px;

    }
}

/* nav end ************************************/

.header__topic14r {
    width: 350px;
    color: #798543;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 13px;
    width: 100%;
    padding: 20px 0px 10px 20px;
}

.header__topic20sb {
    width: 310px;
    height: 68px;
    color: #9A9A9A;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 20px;
    width: 100%;
    padding: 0px 20px;

}

/* SP表示　PC表示 ************************************/
@media screen and (min-width: 375px) and (max-width: 519px) {
    .header__topic14r {
        font-size: 11px;
        white-space: nowrap;
        transform: translateY(-40px);
    }

    .header__topic20sb {
        font-size: 18px;
        white-space: nowrap;
        transform: translateY(-40px);
    }
}

@media screen and (min-width: 520px) and (max-width: 768px) {
    .header__topic14r {
        font-size: 14px;
        white-space: nowrap;
        transform: translateY(-60px);
    }

    .header__topic20sb {
        font-size: 30px;
        white-space: nowrap;
        transform: translateY(-60px);
    }
}

@media screen and (min-width: 769px) and (max-width: 959px) {
    .header__topic14r {
        font-size: 14px;
        white-space: nowrap;
        transform: translateY(-80px);
    }

    .header__topic20sb {
        font-size: 35px;
        white-space: nowrap;
        transform: translateY(-80px);
    }
}

@media screen and (min-width: 960px) and (max-width: 2560px) {
    .header__topic14r {
        font-size: 18px;
        white-space: nowrap;
        transform: translateY(-110px);
    }

    .header__topic20sb {
        font-size: 40px;
        white-space: nowrap;
        transform: translateY(-110px);
    }

}

.message_topic {
    color: #8B6931;
    font-family: 'Cormorant', serif;
    font-weight: 500;
    font-style: italic;
    font-size: 45px;
}

.section--news {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #F2EBE9;
    height: 50px;
}

.flame24,
.flame25 {
    display: flex;
    width: 72px;
    height: 62px;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    /* background: #DFCACC; */
    color: #FFFFFF;
}

.Caption__txt12L,
.Caption__news__txt12r {
    color: #8B6931;
    text-align: left;
    font-family: "Noto Serif TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    font-style: italic;

}

/* 流れるニュース */
.flame273 {
    display: block;
    width: 100%;
    height: 30px;
    overflow: hidden;
    background-color: #dfb1b6;;
}

.news-banner__content {
    display: inline-block;
    color: #fff;
    line-height: 30px;
    padding-left: 100%;
    white-space: nowrap;
    animation: animate-banner 30s linear infinite;
    font-size: 16px;
  }
  
  /* バナー内の要素をすべて選択 */
  .news-banner__content > * {
    display: inline-block;
  }
  
  /* 横にスクロールさせるアニメーション */
  @keyframes animate-banner {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-100%);
    }
  }


.flame262 {
    display: flex;
    width: 165pxpx;
    height: 72pxpx;
    gap: 0px;
    opacity: 0px;
}

.section--main {
    background: #F0F0EE;
}

.menupc {
    position: -webkit-sticky;
    /* Safari対応 */
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    text-align: center;
    background-color: #fff;
    z-index: 1000;
    /* 他の要素よりも前面に表示 */
    display: flex;
    justify-content: space-between;
    list-style: none;
    height: 46px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.menupc.sticky {
    position: fixed;
    top: 0;
}

@media screen and (min-width: 375px) and (max-width: 768px) {
    .menupc {
        display: none;
    }
}

.section--message,
.section--lineup,
.section--voice,
.section--problem {
    display: flex;
    width: 100%;
    padding: 14px;
    flex-direction: column;
    flex-shrink: 0;
    background: rgba(231, 221, 221, 0.50);
}

.message,
.lineup,
.voice,
.problem {
    display: flex;
    width: 100%;
    padding: 0px 0px 10px 0px;
    flex-direction: column;
    flex-shrink: 0;
}

/* スライドショー/ */
.slideshow-container {
    max-width: 100%;
    position: relative;
    margin: auto;
    
}

.slideshowpc-container {
    max-width: 100%;
    position: relative;
}

.mySlides {
    display: flex;
    justify-content: center;
}

.fade {
    animation-name: fade;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
}

@keyframes fade {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.flame195,.flame195r {
    opacity: 0;
    transform: translateY(20px);
    /* 少し下からフェードイン */
    transition: opacity 1s ease-out, transform 1s ease-out;
    max-width: 400px;
}
.flame195.visible {
    opacity: 1;
    transform: translateY(0);
}
.flame195r.visible {
    opacity: 1;
    transform: translateY(0);}
.flame195{
   text-align: left;
}
.flame195r{
    /* text-align: right; */
}


@media screen and (min-width: 520px)and (max-width: 768px) {

    .message,
    .lineup,
    .problem {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
}

@media screen and (min-width: 375px)and (max-width: 959px) {
    .voice {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;

    }
}

.section--problem,
.section--trial,
.section--voice {
    display: flex;
    width: 100%;
    padding: 14px;
    flex-direction: column;
    flex-shrink: 0;
    background: rgba(242, 235, 233, 0.50);
}

.section--problem {
    padding: 10px 0px;
    flex-direction: column;
    display: flex;
    width: 100%;
    padding: 10px;
    flex-direction: column;
    background: #FFFFFF;

}

.flame203 {
    color: #576165;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    /* 31.2px */
}

.problemcoment {
    align-items: center;
    justify-content: center;
    /* width: 25.903%; */
    position: relative;
    z-index: 10;
}

.overlay-texttri {
    display: flex;
    justify-content: space-between;
    list-style: none;
    border-left: 1px solif #8B6931;
    padding: 0px 60px;
    max-width: 500px;

    li:last-child {
        border-left: 1px solif #8B6931;
    }

    li a {
        display: flex;
        flex-direction: column;
        padding: 10px 0;
        color: #8B6931;
        font-size: 12px;
        font-weight: 400;
        text-align: center;
        text-decoration: none;
        line-height: 1.6;
    }

    li a span {
        color: #8B6931;
        font-size: 16px;
    }
}


@media screen and (min-width: 960px) and (max-width:2560px) {
    .overlay-texttri {
        display: flex;
    }

    .lineuppc {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        margin: 20px;
        padding: 20px;
        background-color: #fff;
        border-radius: 10px;
    }

}

@media screen and (min-width: 375px) and (max-width:768px) {
    .overlay-texttri {}

}

.flame282 {
    width: 100%;
    align-items: center;
}

.nav__header,
.header,
.flame263,
.flame260,
.flame264,
.flame268,
.flame132 {
    padding: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #8B6931;
}
.nav__header,
.header {
    padding: 0px 14px;
    background: #f0f0f0;
    
}

.footer-flame268 {
    padding: 10px 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8B6931;
}

.message_topic,
.trial_topic,
.lineup_topic,
.voice_topic,
.footer_topic,
.problem_topic {
    color: #8B6931;
    font-family: 'Cormorant', serif;
    font-weight: 500;
    font-style: italic;
    font-size: 40px;
    line-height: 45px;
}

@media screen and (min-width: 375px) and (max-width: 768px) {

    .message_topic,
    .trial_topic,
    .lineup_topic,
    .voice_topic,
    .footer_topic,
    .problem_topic {
        color: #8B6931;
        font-family: 'Cormorant', serif;
        font-weight: 500;
        font-style: italic;
        font-size: 40px;
    }
}

.Caption__txt14r {
    color: #9A9A9A;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    font-size: 14px;
    padding: 10px 14px;
    line-height: 1.8;
    text-align: right;
}
.Caption__txt14rtry {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    font-size: 16px;
    padding: 10px 14px;
    line-height: 1.8;
    text-align: right;
    margin-top: 50px;
}

@media screen and (min-width: 375px) and (max-width: 768px) {
    .Caption__txt14r {
        text-align: left;
    }
}

.top__btn {
    width: 40px;
    height: 40px;
    padding: 20px 14px;
    background-size: cover;
    background-image: url('../img/btn_top.png');

    position: fixed;
    bottom: 1.4%;
    right: 1.4%;
}

.flame208,
.flame160,
.flame238,
.flame239,
.flame259 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 20px 14px;
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
    background: rgba(231, 221, 221, 0.50);
    margin: 0 auto;
}

.flame284 {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0px 14px 0px 19px;
    flex-direction: column;
    flex-shrink: 0;
    border-radius: 10px;
    background: #FFFFFF;
    padding: 10px;
    gap: 15px;
    max-width: 400px;

}

.flame284vo {
    display: flex;
    align-items: center;
    /* width: 100%; */
    width: 32%;
    padding: 0px 14px 0px 19px;
    flex-direction: column;
    flex-shrink: 0;
    border-radius: 10px;
    background: #FFFFFF;
    padding: 10px;
    gap: 15px;
    max-width: 400px;
}

@media screen and (min-width: 375px) and (max-width:700px) {
    .flame284vo {
        width: 96%;
    }
}

@media screen and (min-width: 701px) and (max-width:1020px) {
    .flame284vo {
        width: 48%;
    }
}

@media screen and (min-width: 1021px) and (max-width:2560px) {
    .flame284vo {
        width: 32%;
    }
}




@media screen and (min-width: 769px) and (max-width: 2560px) {

    .flame208pc,
    .flame160pc,
    .flame238pc,
    .flame239pc,
    .flame259pc,
    .flame284pc {
        display: flex;
        width: 100%;
        align-items: center;
    }

    .flame284pc {
        display: flex;
        width: 100%;
        padding: 20px 14px;
        align-items: center;
        max-width: 400px;
    }

    .flame195,.flame195r {
        flex-direction: column;
        gap: 10px;
        display: block;
        width: 50%;
        padding: 14px;
    }

    .text-blue {
        color: #3A65AC;
        font-weight: 700;
    }

    .flame208,
    .flame160,
    .flame238,
    .flame239,
    .flame259,
    .flame284 {
        display: none;
    }

    .section--message,
    .section--trial,
    .section--lineup,
    .section--voice {
        display: flex;
        flex-direction: column;
        flex-shrink: 0;
    }
   

    .messagepc,
    .lineuppc,
    .problempc {
        display: flex;
        padding: 14px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        /* gap: 30px; */
        flex-shrink: 0;
        background: rgba(231, 221, 221, 0.50);
        max-width: 1122;
    }
   
    /* 円のスタイルを共通化 */
.circle {
    position: absolute;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: -1;
}

/* 個別の円の位置やサイズを調整 */
/* .circle1 {
    width: 200px;
    height: 200px;
    top: 580%;
    left: 50%;
} */

/* .circle2 {
    width: 150px;
    height: 150px;
    top: 640%;
    left: 17%;
} */

/* .circle3 {
    width: 100px;
    height: 100px;
    top:650%;
    left: 40%;
} */

/* .circle4 {
    width: 200px;
    height: 200px;
    top: 550%;
    left: 70%;
} */

/* .circle5 {
    width: 150px;
    height: 150px;
    top: 600%;
    left: 15%;
} */

/* .circle6 {
    width: 100px;
    height: 100px;
    top: 620%;
    left: 60%;
} */

.circle7 {
    width: 100px;
    height: 100px;
    top: 170%;
    left: 80%;
}

/* .circle8 {
    width: 150px;
    height: 150px;
    top: 190%;
    left: 30%;
} */

/* .circle9 {
    width: 200px;
    height: 200px;
    top: 140%;
    left: 60%;
} */

.circle10 {
    width: 100px;
    height: 100px;
    top: 220%;
    left: 60%;
}

.circle11 {
    width: 150px;
    height: 150px;
    top: 250%;
    left: 55%;
}

/* .circle12 {
    width: 200px;
    height: 200px;
    top: 280%;
    left: 30%;
} */

.circle13 {
    width: 150px;
    height: 150px;
    top: 310%;
    left: 55%;
}
}

.lineuppc {
    padding: 14px;

}

.voice {
    background: #E4E3E3;
}

.flame282 {
    display: flex;
    justify-content: center;
    padding: 0px 14px;
    margin-left: 24px;
}

.flame282tri {
    width: 48%;
}

@media screen and (min-width: 769px) and (max-width:2560px) {
    .flame282tri1440 {
        display: flex;
        /* justify-content: space-between; */
        padding-left:150px;
    }

    .trial1440 {
        width: 34%;
        height: 40%;
        box-shadow: 60px 60px 0 #F0F0EE;

    }
}

@media screen and (min-width: 375px) and (max-width:768px) {
    .trial1440 {}

    .flame282tri {
        width: 100%;
    }
}

/* .message_its,
.message_lady1,
.message_kouji,
.message_hifu,
.message_lady3,
.lineup_its,
.lineup_swd,
.lineup_premiate {
    width: 100%;
    
} */

@media screen and (min-width: 520px)and (max-width: 768px) {

    .message_its,
    .message_lady1,
    .message_kouji,
    .message_hifu,
    .message_lady3,
    .lineup_its,
    .lineup_swd,
    .lineup_premiate {
        max-width: 450px;
    }

    .flame208,
    .flame160,
    .flame238,
    .flame239,
    .flame259,
    .flame284 {
        display: flex;
        justify-content: center;
        max-width: 500px;
        background: rgba(231, 221, 221, 0.50);
    }

}


/* @media screen and (min-width: 769px)and (max-width: 959px) {

    .message_its,
    .message_lady1,
    .message_kouji,
    .message_hifu,
    .message_lady3,
    .lineup_its,
    .lineup_swd,
    .lineup_premiate {
        max-width: 450px;
        width: 100%;
    }

    .flame275 {
        display: block;
        max-width: 450px
    }

    .flame208pc {
        display: flex;
        width: 1000px;
        padding: 20px 14px;
        align-items: center;
        justify-content: center;

    }

    .flame284pc {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        padding: 0px 14px 0px 19px;
        flex-direction: column;
        border-radius: 10px;
        background: #FFFFFF;
        padding: 10px;
        gap: 15px;

    }

} */

.flame208pc,
.flame160pc,
.flame238pc,
.flame239pc,
.flame259pc {
    width: 100%;
    display: flex;
    background: rgba(231, 221, 221, 0.50);


}

@media screen and (min-width: 375px) and (max-width: 768px) {

    .flame208pc,
    .flame160pc,
    .flame238pc,
    .flame239pc,
    .flame259pc,
    .flame284pc {
        display: none;
    }
}

@media screen and (min-width: 375px) and (max-width: 768px) {

    .message_its,
    .message_lady1,
    .message_kouji,
    .message_hifu,
    .message_lady3,
    .lineup_its,
    .lineup_swd,
    .lineup_premiate {
        margin: 0 auto;
        width: 100%; /* または指定したい固定幅 */
    }


}

@media screen and (min-width: 769px) and (max-width: 1100px) {


    .message_lady1,
    .message_kouji,
    .message_hifu,
    .message_lady3 {
        width: 38%;
        max-width: 450px;
    }

    .message_its {
        width: 80%;
        float: right;
    }

    .lineup_its,
    .lineup_premiate {
        float: right;

    }
    .lineup_swd
    {
        float: left;

    }
}

@media screen and (min-width: 1101px) and (max-width: 2560px) {


    .message_lady1,
    .message_kouji,
    .message_hifu,
    .message_lady3 {
        width: 38%;
        max-width: 450px;
    }

    .message_its {
        width: 80%;
        float: right;
    }

    .lineup_its,
    .lineup_premiate {
        width: 70%;
        float: right;

    }
    .lineup_swd
    {
        width: 70%;
        float: left;

    }
}

.flame275 {
    display: block;
    max-width: 450px
}

.Caption_txt14r {
    color: #576165;
    font-family: "Noto Serif JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    padding-top: 10px;
    list-style: disc;
    line-height: 1.8;
}

.link__txt14m,
.trial__txt14m,
.more__txt14m {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    font-size: 14px;
    text-align: left;
    line-height: 1.8;
}

.Caption_txt15r {
    color: #576165;
    font-family: "Noto Serif JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.8;
}

.Caption_txt15sb {
    color: #576165;
    font-family: "Noto Serif JP";
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.8;
}

.Caption__txt16sb {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.8;
    text-align: left;
}

.Caption__txt16sbgr {
    color: #576165;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.8;
    text-align: left;
}

.Caption__txt16m,
.Caption__trial__txt16m {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-size: 16px;
    line-height: 1.8;
}

.Caption__txt16b,
.Caption__trial__txt16b {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;
    text-align: left;
    padding: 0px 14px;
    margin: revert;
}

.Caption__txt16r,
.Caption__lineup__txt16r {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 16px;
    text-align: left;
    padding: 0px 14px;
    line-height: 1.8;
}

.text-red {
    color: #B22D35;
    font-weight: 700;
}

.Caption__txt16b {
    font-size: 18px;
    line-height: 1.8;
    font-weight: 600;
}

@media screen and (min-width: 375px) and (max-width: 959px) {
    .box {

        justify-content: center;
        display: contents;
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        max-height: 1600px;
        /* セクションの高さを固定 */
        overflow-y: auto;
        /* 垂直方向のスクロールを有効にする */
        padding: 10px;
        /* コンテンツとスクロールバーの間に余白を追加 */
        border: 1px solid #ddd;
        /* 境界線を追加して見やすくする（任意） */
        box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
        /* ボックスにシャドウを追加（任意） */
    }
}


@media screen and (min-width: 769px) and (max-width: 2560px) {

    .Caption__txt16r,
    .Caption__lineup__txt16r {
        font-size: 16px;
        line-height: 1.8;
    }

    .text-red {
        color: #B22D35;
    }

    .Caption__txt16b {
        font-size: 18px;
        line-height: 1.8;
        font-weight: 600;
    }

    .flame208pc,
    .flame160pc,
    .flame238pc,
    .flame239pc,
    .flame259pc {
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(231, 221, 221, 0.50);
        padding: 60px;

    }

    .flame284pc {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        padding: 0px 14px 0px 19px;
        flex-direction: column;
        border-radius: 10px;
        background: #FFFFFF;
        padding: 10px;
        gap: 15px;

    }

    .voicebox,
    .box {
        display: contents;
        gap: 20px;

    }

    .box {
        justify-content: center;
        display: contents;
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        padding: 0px 0px 20px 0px;
        max-height: 1600px;
        /* セクションの高さを固定 */
        overflow-y: auto;
        /* 垂直方向のスクロールを有効にする */
        padding: 10px;
        /* コンテンツとスクロールバーの間に余白を追加 */
        border: 1px solid #ddd;
        /* 境界線を追加して見やすくする（任意） */
        box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
        /* ボックスにシャドウを追加（任意） */
    }
}

.scroll-icon {
    width: 30px;
    /* アイコンのサイズを指定 */
    height: 30px;
    margin-left: 10px;
    /* テキストとアイコンの間にスペースを追加 */
    vertical-align: middle;
}

.Caption__txt16rul {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 16px;
    text-align: left;
    padding: 0px 14px;
    list-style: disc;
    margin-left: 23px;
    line-height: 1.8;

}

.Caption__txt20sb {
    color: #8B6931;
    font-family: 'Noto Serif JP', serif;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    line-height: 1.8;
    margin-bottom: 10px;

}

.Caption__txt20sbgr,
.Caption__txt20sbtry {
    color: #576165;
    font-family: 'Noto Serif JP', serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.8;
    text-align: center;
    padding: 0px 0px 20px 0px;
}

@media screen and (min-width: 960px) and (max-width: 2560px) {

    .Caption__txt20sbgr,
    .Caption__txt20sbtry {
        font-size: 24px;
    }
}

.emphasisgry {
    background-image: linear-gradient(#E4E3E3 30%);
    /* text-decoration: underline; */
    border-bottom: 4px solid #D1A7A1;
}

.emphasisred {
    background-image: linear-gradient(#DFCACC 30%);
    /* text-decoration: underline; */
    border-bottom: 4px solid #D1A7A1;
}

.Caption__txt20sbgr,
.Caption__txt20sbtry {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 20px;
    /* テキストサイズを設定 */
    opacity: 0;
    
}

.Caption__txt20sbgr.visible,
.Caption__txt20sbtry.visible {
    opacity: 1;
    animation: typing 4s steps(40, end);
}

@keyframes typing {
    from {
        width: 0
    }

    to {
        width: 100%
    }
}

@keyframes blink-caret {

    from,
    to {
        border-color: transparent
    }

    50% {
        border-color: black;
    }
}

@media screen and (min-width: 375px) and (max-width: 768px) {

    .Caption__txt20sbgr,
    .Caption__txt20sbtry {
        text-align: left;
        font-size: 16px;
    }
}

.Caption__txt20b {
    color: rgba(225, 175, 179, 0.50);
    font-family: "Oleo Script";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    font-style: italic;
    line-height: 1.8;
}

.Caption__txt24b {
    color: #DFCACCE5;
    font-family: "Oleo Script";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    font-style: italic;
    line-height: 1.8;
}

.flame175,
.flame168 {
    width: 100%;
    height: 160.34px;
    padding: 0px 14px 0px 0px;
    gap: 0px;
    display: flex;
    justify: space-between;
    opacity: 0px;

}

.flame242 {
    display: flex;
    justify-content: center;
    width: 100%;
}

.flame166,
.flame135 {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    align-self: stretch;
}

.btn_link {
    width: 40px;
    height: 40px;
}



.flame205 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.problem_topic {
    color: #576165;
    font-family: Cormorant;
    font-size: 40px;
    font-style: italic;
    font-weight: 500;
    padding-left: 14px;

}


.flame203 {
    font-family: 'Noto Serif JP', serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.8;
    text-align: left;
    transform: translatex(-10px);
    transform: translatey(100px);

}

.flame9 {
    white-space: nowrap;
    transform: translateY(-110px);
    transform: translatex(-50px);
}

@media screen and (min-width: 375px) and (max-width: 519px) {
    .flame9 {
        transform: translatex(-100px);
    }
}

.flame281 {
    padding-left: 14px;
}

/* .overlay-texttri {
    align-items: center;
    padding: 50px;
} */

@media screen and (min-width: 375px) and (max-width: 519px) {
    .problem_topic {
        padding-left: 14px;
        font-size: 40px;
    }
}

@media screen and (min-width: 520px) and (max-width: 768px) {
    .problem_topic {
        padding-left: 14px;
        font-size: 40px;
    }
}

@media screen and (min-width: 769px) and (max-width: 959px) {
    .problem_topic {}
}

@media screen and (min-width: 960px) and (max-width: 2560px) {
    .problem_topic {}
}

.flame202 {
    flex-shrink: 0;
}

.flame243{
    display:block ;
    justify-content: flex-end;
} 
.flame245,
.flame278,
.flame279 {
    gap: 10px;
    line-height: 20px;

}

@media screen and (min-width: 375px) and (max-width: 768px) {
    .flame245 {
        width: 100%;
    }
}

@media screen and (min-width: 769px) and (max-width: 2560px) {
    .flame245 {
        width: 50%;
    }
}

.flame246 {
    display: flex;
}

.btn_link {
    max-width: 100%;
}

.flame52,
.flame53,
.flame36 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
    padding: 0px 0px 0px 14px;
    gap: 15px;
}

.Caption__txt14rtri {
    text-align: center;
    color: #576165;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 14px;
    padding: 10px 14px 0px 0px;
    line-height: 1.8;
    width: 150px;
    background-color: #F2EBE9;
}

.text-blue {
    color: #3A65AC;
    font-weight: 700;
}

.section--voice {
    display: flex;
    padding: 10px 20px;
    flex-direction: column;
    gap: 10px;
    flex-shrink: 0;
    background: #E4E3E3E5;
}


.flame267 {
    display: flex;
    padding: 10px 0px;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.Caption__txt15rinter {
    color: #B22D35;
    font-family: Inter;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
}

.Caption__txt16rinter,
.Caption__txt16rinterl {
    color: #8B6931;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    text-align: center;
}

.Caption__txt14rinter,
.Caption__txt14rinterl {
    color: #8B6931;
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    padding: 0px 20px;
}

.Caption__txt16rinterl {
    text-align: left;
    background: #FFFFFF;
    padding: 0px 20px;
    line-height: 1.8;
}

.flame283 {
    display: flex;
    width: 100%;
    padding: 0px 14px 0px 19px;
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
    border-radius: 10px;
}

.flame283p {
    display: flex;
    width: 100%;
    padding: 0px 0px 0px 19px;
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
    border-radius: 10px;
}

.article__footer {
    background-image: url("../img/kirara_zensin.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: white;
}

.section_footer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    flex-shrink: 0;

}

.footerNav {
    display: flex;
    padding: 30px 50px;
    justify-content: space-between;
    transform: translateX(-300px);
    white-space: nowrap;

}

@media screen and (min-width: 375px) and (max-width: 519px) {
    .footerNav {
        display: flex;
        padding: 30px 50px;
        justify-content: space-between;
        transform: translateX(-100px);

    }
}

@media screen and (min-width: 520px) and (max-width: 768px) {
    .footerNav {
        display: flex;
        padding: 30px 50px;
        justify-content: space-between;
        transform: translateX(-200px);

    }
}

.footerNav__item {
    font-size: 18px;
    color: #8B6931;
}

@media screen and (min-width: 375px) and (max-width: 519px) {

    .article__footer {
        background-size: 80%
    }
}

@media screen and (min-width: 520px) and (max-width: 768px) {

    .article__footer {
        background-size: 70%
    }
}

/* @media screen and (min-width: 769px) and (max-width: 959px) {

    .article__footer {
        background-size: 60%
    }
} */

@media screen and (min-width: 960px) and (max-width: 2560px) {

    .article__footer {
        background-size: 50%
    }
}


.footer__txt15rinter {
    display: flex;
    padding: 1px 0px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    line-height: 1.8;
}



.contact {
    display: flex;
    justify-content: center;
    font-size: 16px;
    color: #8B6931;
    padding: 0px 0px 20px 0px;
}

.copy {
    display: flex;
    justify-content: center;
    color: #8B6931;
    font-family: Inter;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    background-color: #E4E3E3E5;
    height: 20px;
}

.image-container {
    position: relative;
    display: inline-block;
    width: 60%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.image-container img {
    display: block;
}

.image-container .overlay-text {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    font-family: Inter;
    color: #B22D35;
    font-size: 16px;
    font-weight: 700;
    background: rgba(255, 255, 255, 0);
    padding: 5px;
    border-radius: 5px;
    width: 100%;
    padding: 30px 30px 0px 30px
}

.footer_topic {
    text-decoration: none;
    border-bottom: 2px solid #8B6931;
}

.footerbox {
    display: flex;
    justify-content: center;

}

.footerNav_list1 {
    width: 33.33%;
    display: block;
    justify-content: center;
}

.footerNav_list2 {
    width: 33.33%;
    display: block;
    justify-content: center;
}

.footerimg {
    width: 33.33%;
    display: flex;
    justify-content: center;
}

/* contact sns */
.contact {
    gap: 30px;
    display: block;
    text-align: center;
}

footer {
    background-color: white;
    text-align: center;
}

.social-links {
    display: flex;
    gap: 20px;
    margin-top: 30px;
    justify-content: center;
}


.social-icon img {
    width: 30px;
    height: 30px;
    /* アイコンのサイズを調整 */
    transition: transform 0.3s ease;
    /* マウスオーバー時のアニメーション */
}

.socialhot-icon img {
    width: 80px;
    height: 30px;
    /* アイコンのサイズを調整 */
    transition: transform 0.3s ease;
    /* マウスオーバー時のアニメーション */
}

.social-icon img:hover {
    transform: scale(1.2);
    /* マウスオーバーでアイコンが拡大する */
}