/* リセットとベース設定 */
:root {
  --color-1: #0B3282;
}
.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 {
    float: none !important;
    width: auto !important;
    height: auto !important;
}

.sp {
  display: none;
}
.pc {
  display: block;
}
@media (max-width: 780px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}


/* アニメーションレイヤーのスタイル */

#center-animation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.8s ease;
    background: radial-gradient(50% 50% at 50% 50%, #FFFFFF 25%, rgba(238, 250, 255, 0.75) 100%);
}

#line-animation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.8s ease;
    background: radial-gradient(50% 50% at 50% 50%, #FFFFFF 25%, rgba(238, 250, 255, 0.75) 100%);
}

#center-animation-container>div,
#line-animation-container>div {
    height: 100%;
}


/* 中央線エフェクト用のコンテナ */


/* 光線エフェクト用のコンテナ */

#center-animation-container,
#line-animation-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    filter: blur(10px);
}


/*section共通コードここから*/

#scroll-img {
    position: fixed;
    right: 43px;
    bottom: 0px;
    width: 9px;
}

#scroll-img>div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
}

#scroll-img>div>.image:nth-child(2) {
    width: 1px !important;
    /* animation: scrollSuggestion 3s infinite; */
}
#scroll-img>div>.image:nth-child(2) img {
    opacity: 0;
}

#scroll-img>div::before,
#scroll-img>div::after {
    content: none !important;
}

@media (max-width: 780px) {
    #scroll-img {
        right: 20px;
    }
}

#scroll-img .image {
    width: 9px;
    /* animation: scrollSuggestion 3s infinite; */
}

#scroll-img>div>.image:nth-child(2)>div {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#scroll-img>div>.image:nth-child(2)>div::before,
#scroll-img>div>.image:nth-child(2)>div::after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  transform: translateX(-50%);
}
#scroll-img>div>.image:nth-child(2)>div::before {
  background-color: #D9D9D9;
}

#scroll-img>div>.image:nth-child(2)>div::after {
  height: 0;
  background-color: #0B3282;
  animation: scrollBarHeightAnimation 1.5s infinite;
}
@keyframes scrollBarHeightAnimation {
  0% {
    top: 0;
    height: 0;
  }
  33.33% {
    top: 0;
    height: 100%;
  }
  66.67% {
    top: 100%;
    height: 0;
  }
  100% {
    top: 100%;
    height: 0;
  }
}


/* セクションタイトルの共通スタイル */

#section1-title,
#section2-title,
#section3-title,
#section4-title,
#section5-title,
#section6-title,
#section7-title,
#section8-title,
#section9-title,
#section10-title,
#section11-title,
#section12-title {
    font-family: 'Jost', sans-serif;
    text-align: center;
    margin-bottom: calc(1.5vw + 2.5px);
    /* 1440pxで約24px */
}



/* セクションタイトル内のh2要素の共通スタイル */

#section1-title h2,
#section2-title h2,
#section3-title h2,
#section4-title h2,
#section5-title h2,
#section6-title h2,
#section7-title h2,
#section8-title h2,
#section9-title h2,
#section10-title h2,
#section11-title h2,
#section12-title h2 {
    color: #0B3282;
    padding: 0;
    margin: 0;
    font-weight: 500;
    font-size: calc(1.5vw + 6px);
    /* letter-spacing: -0.025em; */
}


/* タイトル用画像のスタイル */

#section1-title .image img,
#section2-title .image img,
#section3-title .image img,
#section4-title .image img,
#section5-title .image img,
#section6-title .image img,
#section7-title .image img,
#section8-title .image img,
#section9-title .image img,
#section10-title .image img,
#section11-title .image img,
#section12-title .image img {
    max-width: calc(3.2vw + 15px); /* 1440pxで約60px */
    height: 1px;
    margin: 0 auto;
    display: block;
}


/* レスポンシブ設定: 1600px以上 */

@media (min-width: 1600px) {
    #section1-title h2,
    #section2-title h2,
    #section3-title h2,
    #section4-title h2,
    #section5-title h2,
    #section6-title h2,
    #section7-title h2,
    #section8-title h2,
    #section9-title h2,
    #section10-title h2,
    #section11-title h2,
    #section12-title h2 {
        font-size: 30.8px;
    }
}


/* レスポンシブ設定: 780px以下 */

@media (max-width: 780px) {
    #section1-title h2,
    #section2-title h2,
    #section3-title h2,
    #section4-title h2,
    #section5-title h2,
    #section6-title h2,
    #section7-title h2,
    #section8-title h2,
    #section9-title h2,
    #section10-title h2,
    #section11-title h2,
    #section12-title h2 {
        font-size: calc(4vw + 5px);
    }
    #section1-title,
    #section2-title,
    #section3-title,
    #section4-title,
    #section5-title,
    #section6-title,
    #section7-title,
    #section8-title,
    #section9-title,
    #section10-title,
    #section11-title,
    #section12-title {
        margin-bottom: 16px;
    }
    #section1-title .image img,
    #section2-title .image img,
    #section3-title .image img,
    #section4-title .image img,
    #section5-title .image img,
    #section6-title .image img,
    #section7-title .image img,
    #section8-title .image img,
    #section9-title .image img,
    #section10-title .image img,
    #section11-title .image img,
    #section12-title .image img {
        max-width: calc(8vw + 16px);
    }
}

#section1,
#section2,
#section3,
#section4,
#section5,
#section6,
#section7,
#section8,
#section9,
#section10,
#section11 {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
}
@media (min-width: 781px) {
    #section1 {
        min-height: calc(100vh - 120px);
    }
}


/* セクションタイトル内のテキスト要素の共通スタイル */

#section1-title .text,
#section2-title .text,
#section3-title .text,
#section4-title .text,
#section5-title .text,
#section6-title .text,
#section7-title .text,
#section8-title .text,
#section9-title .text,
#section10-title .text,
#section11-title .text {
    margin-bottom: calc(1.2vw + 2.5px);
    /* 1440pxで約20px */
}


/* レスポンシブ設定: 1600px以上 */

@media (min-width: 1600px) {
    #section1-title .text,
    #section2-title .text,
    #section3-title .text,
    #section4-title .text,
    #section5-title .text,
    #section6-title .text,
    #section7-title .text,
    #section8-title .text,
    #section9-title .text,
    #section10-title .text,
    #section11-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px */

@media (min-width: 781px) and (max-width: 1359px) {
    #section1-title .text,
    #section2-title .text,
    #section3-title .text,
    #section4-title .text,
    #section5-title .text,
    #section6-title .text,
    #section7-title .text,
    #section8-title .text,
    #section9-title .text,
    #section10-title .text,
    #section11-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
}


/* レスポンシブ設定: 780px以下 */

@media (max-width: 780px) {
    #section1-title .text,
    #section2-title .text,
    #section3-title .text,
    #section4-title .text,
    #section5-title .text,
    #section6-title .text,
    #section7-title .text,
    #section8-title .text,
    #section9-title .text,
    #section10-title .text,
    #section11-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* モバイルでの最小値確保 */
    }
}


/*section共通コードここまで*/


/* ==============================================================
   section1
============================================================== */

#section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p {
    font-family: 'Shippori Mincho B1', serif;
    margin-bottom: 20px;
    letter-spacing: -0.55em;
}

#section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p {
    font-family: 'EB Garamond', serif;
    letter-spacing: -0.025em;
}


/* 大見出し - 68px基準 */

#section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
    font-size: calc(4.5vw + 3px);
    /* 1440pxで約68px */
    line-height: 1.2;
    display: inline-block;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
}


/* 中見出し - 64px基準(cmp-text--weight-medium class) */

#section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
    font-size: calc(4.2vw + 3.5px);
    /* 1440pxで約64px */
    font-weight: 500;
}


/* 小見出し - 20px基準 */

#section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
    font-size: calc(1.1vw + 4px);
    /* 1440pxで約20px */
    line-height: 1.5;
    display: inline-block;
    font-family: 'EB Garamond', serif;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section1-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: 74.8px;
        /* 68pxの110% */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: 70.4px;
        /* 64pxの110% */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: 22px;
        /* 20pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section2-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(4vw + 4px);
        /* 1360pxで約58px */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: calc(3.8vw + 4px);
        /* 1360pxで約56px */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: calc(1vw + 4px);
        /* 1360pxで約18px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
  #section1>div {
    transform: translateY(-10vw);
  }
    #section2-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* 1360pxで約16px */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(7vw + 5px) !important;
        /* モバイルでも読みやすいサイズに */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p >span {
        /* letter-spacing: -0.1em; */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: calc(5.5vw + 5px) !important;
        /* 少し小さめに */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: calc(5.5vw + 5px) !important;
        /* 少し小さめに */
    }
    #section1>div>div #section-title-wrap1>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: calc(1.5vw + 8px) !important;
        /* モバイルでの最小サイズを確保 */
    }
}


/*section1 end*/


/* ==============================================================
   section2
============================================================== */

#section2 {
    margin-bottom: 200px;
}

#section2-title {
    margin-bottom: calc(1.8vw + 4px);
    /* 1440pxで約30px */
}

#section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(1.4vw + 4px);
    /* 1440pxで約24px */
    line-height: 1.6;
    display: inline-block;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section2-title {
        margin-bottom: 33px;
        /* 30pxの110% */
    }
    #section2-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: 26.4px;
        /* 24pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section2 {
        margin-bottom: calc(100vw - 90%);
    }
    #section2-title {
        margin-bottom: calc(1.6vw + 4px);
        /* 1360pxで約26px */
    }
    #section2-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(1.2vw + 4px);
        /* 1360pxで約20px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section2 {
        margin-bottom: 24vw;
    }
    #section2-title {
        margin-bottom: calc(3vw + 16px);
        /* モバイルでの最小値確保 */
    }
    #section2-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* モバイルでの最小値確保 */
    }
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p {
        text-align: left !important;
        padding-left: 14vw;
        padding-right: 14vw;
    }
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(2vw + 7.5px);
        /* モバイルでも読みやすいサイズに */
        line-height: 1.5;
    }
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(1),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(2),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(3),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(4),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(8),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(9),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(10),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(11),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(12),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(16),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(17),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(18),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(19),
    #section2>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p>span br:nth-child(20) {
        display: none;
    }
}


/* section2 end */


/* ==============================================================
   section3
============================================================== */

#section3 {
    margin-bottom: 200px;
}

#section3-title {
    margin-bottom: calc(5.2vw + 11px);
    /* 1440pxで約86px */
}

#section3>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(1.4vw + 4px);
    /* 1440pxで約24px */
    line-height: 1.6;
    display: inline-block;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section3-title {
        margin-bottom: 94.6px;
        /* 86pxの110% */
    }
    #section3-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
    #section3>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: 26.4px;
        /* 24pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section3-title {
        margin-bottom: calc(4.8vw + 10px);
        /* 1360pxで約75px */
    }
    #section3-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
    #section3>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(1.2vw + 4px);
        /* 1360pxで約20px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section3 {
        margin-bottom: 24vw;
        justify-content: flex-start;
        min-height: 0;
    }
    #section3-title {
        margin-bottom: calc(6vw + 8px);
        /* モバイルでも適切なスペース確保 */
    }
    #section3-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* モバイルでの最小値確保 */
    }
    #section3>div>div #section2-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(2vw + 7.5px);
        /* モバイルでも読みやすいサイズに */
        line-height: 1.5;
    }
    #section3-cont1 img {
        aspect-ratio: 1/1;
        object-fit: cover;
    }
}

#section3 #section3-cont1 {
    position: relative;
}

#section3 #section3-cont1 .image+div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#section3 #section3-cont1 .image+div .cmp-button {
    min-width: calc(5vw + 100px);
}
#section3 #section3-cont1 .image+div .cmp-button__text {
    font-size: calc(0.8vw + 2px) !important;
}
@media (min-width: 1600px) {
  #section3 #section3-cont1 .image+div .cmp-button__text {
    margin: 1rem;
}
}
@media (max-width: 780px) {
  #section3 #section3-cont1 .image+div .cmp-button {
    min-width: calc(20vw + 100px);
  }
  #section3 #section3-cont1 .image+div .cmp-button__text {
    font-size: calc(2.6vw + 2px) !important;
  }
}


/* section3 end */


/* ==============================================================
   section4
============================================================== */

#section4-title {
    margin-bottom: calc(1.8vw + 4px);
    /* 1440pxで約30px */
}

#section4>div>div:first-child >div >div {
    margin-bottom: calc(4.5vw);
    /* 1440pxで約150px */
}

#section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(2.1vw + 6px);
    /* 1440pxで約36px */
    line-height: 1.6;
    display: inline-block;
}
#section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p > span {
    letter-spacing: -0.025em;
}

/* section4のcontainer-479ab19ecc用スタイル */

#section4>div>div:last-child >div >div {
    margin-top: 180px;
    margin-bottom: 290px;
}


/* 最初のpタグのspan */

#section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type span {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    /* semibold */
    font-size: calc(1.2vw + 2.7px);
    /* 1440pxで約20px */
    line-height: 1.6;
    display: inline-block;
}


/* 3つ目のpタグのspan (p:first-of-type + p + p) */

#section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    /* semibold */
    line-height: 1.6;
    display: inline-block;
}


/* 3つ目のpタグ内のクラス別サイズ指定 */

#section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-20-16 {
    font-size: calc(1.2vw + 2.7px);
    /* 1440pxで約20px */
}

#section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-28 {
    font-size: calc(2.1vw + 6px);
    /* 1440pxで約36px */
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type span {
        font-size: 22px;
        /* 20pxの110% */
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-20-16 {
        font-size: 22px;
        /* 20pxの110% */
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-28 {
        font-size: 39.6px;
        /* 36pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type span {
        font-size: calc(1vw + 2.4px);
        /* 1360pxで約16px */
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-20-16 {
        font-size: calc(1vw + 2.4px);
        /* 1360pxで約16px */
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-28 {
        font-size: calc(1.9vw + 6px);
        /* 1360pxで約32px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(3vw + 9px) !important;
    }
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--line-break-for-sp {
        display: block;
    }
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span br {
        display: none;
    }
    #section4>div>div:last-child >div >div {
        margin-top: calc(12vw + 90px);
        margin-bottom: calc(40vw);
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type span {
        font-size: calc(2.6vw + 6px) !important;
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-20-16 {
        /* font-size: calc(1.8vw + 6px); */
    }
    #section4>div>div:last-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p:first-of-type+p+p span.cmp-text--size-28 {
        font-size: calc(5vw + 11px) !important;
    }
    #section4>div>div:last-child >div >div p {
        padding-left: 14vw;
        padding-right: 14vw;
    }
    #section4>div>div:last-child >div >div p:first-child {
        text-align: left !important;
    }
    #section4>div>div:last-child >div >div p:first-child .cmp-text--line-break-for-pc br {
        display: none;
    }
    #section4>div>div:last-child >div >div p:nth-child(2) {
        margin-bottom: 0 !important;
    }
}


/* レスポンシブ対応の調整 */

@media (min-width: 1600px) {
    #section4>div>div:first-child >div >div {
        margin-bottom: 165px;
        /* 150pxの110% */
    }
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p span {
        font-size: 39.6px;
        /* 36pxの110% */
    }
}

@media (min-width: 781px) and (max-width: 1359px) {
    #section4>div>div:first-child >div >div {
        margin-bottom: calc(6vw + 24px);
        /* 1360pxで約約130px */
    }
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p span {
        font-size: calc(1.9vw + 6px);
        /* 1360pxで約32px */
    }
}

@media (max-width: 780px) {
    #section4>div>div:first-child >div >div {
        margin-bottom: calc(1vw);
        /* モバイルでも十分なスペース確保 */
    }
    #section4>div>div:first-child >div >div>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12 p span {
        font-size: calc(3vw + 11px);
        /* モバイルでも読みやすいサイズに */
    }
    #section4>div>div:nth-child(2) >div >div img {
        aspect-ratio: 1/1;
        object-fit: cover;
    }
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section4-title {
        margin-bottom: 33px;
        /* 30pxの110% */
    }
    #section4-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section4-title {
        margin-bottom: calc(1.6vw + 4px);
        /* 1360pxで約26px */
    }
    #section4-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section4-title {
        margin-bottom: calc(3vw + 16px);
        /* モバイルでの最小値確保 */
    }
    #section4-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* モバイルでの最小値確保 */
    }
}


/* section4 end */


/* section 5 ~ 8 */


/* 5 - 8 共通*/


/* Base styles for sections 5-8 containers with responsive padding */

[id^="question"] {
    padding-top: calc(10vw + 8px);
    padding-bottom: calc(10vw + 8px);
}
#question1 {
    padding-top: calc(10vw + 8px);
    padding-bottom: calc(10vw + 8px);
}

#section-title-wrap5-2,
#question1,
#question3,
#question2 {
    padding: calc(12vw + 2px) 0 calc(16vw + 8px);
    /* 1440pxで約89px 0 124px */
}

#section5>div>div:nth-child(2),
#section6>div>div:nth-child(2),
#section7>div>div:nth-child(2),
#section8>div>div:nth-child(2),
#section8>div>div:nth-child(3) {
    padding-left: calc(4vw + 4px);
    padding-right: calc(4vw + 4px);
    /* 1440pxで約62px */
}

#section5>div>div:nth-child(2) p,
#section6>div>div:nth-child(2) p,
#section7>div>div:nth-child(2) p,
#section8>div>div:nth-child(2) p {
    /* padding-bottom: calc(2.5vw + 0px);*/
    /* Base font size for reference design (1440px) */
    font-size: calc(1vw + 1.6px); /* 1440pxで約16px */
    
    /* 1440pxで約80px 56px */
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
  [id^="question"] {
    padding-top: 157.9px;
    padding-bottom: 212px;
  }
  #question1 {
    padding-top: 157.9px;
    padding-bottom: 212px;
  }
    #section-title-wrap5-2,
    #question1,
    #question3,
    #question2 {
        padding: 196px 0 272px;
        /* 89px/124pxの110% */
    }
    #section5>div>div:nth-child(2),
    #section6>div>div:nth-child(2),
    #section7>div>div:nth-child(2),
    #section8>div>div:nth-child(2),
    #section8>div>div:nth-child(3) {
        /* padding-left: 68.2px; */
        /* padding-right: 68.2px; */
        /* font-size: 17.6px; */
        /* 62pxの110% */
    }
    #section5>div>div:nth-child(2) p,
    #section6>div>div:nth-child(2) p,
    #section7>div>div:nth-child(2) p,
    #section8>div>div:nth-child(2) p {
        /* padding-bottom: 39.6px; */
        /* 80px/56pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section-title-wrap5-2,
    #question1,
    #question3,
    #question2 {
        padding: calc(11vw + 2px) 0 calc(15vw + 8px);
        /* 1360pxで約77px 0 110px */
    }
    #section5>div>div:nth-child(2),
    #section6>div>div:nth-child(2),
    #section7>div>div:nth-child(2),
    #section8>div>div:nth-child(2),
    #section8>div>div:nth-child(3) {
        padding-left: calc(3.5vw + 4px);
        padding-right: calc(3.5vw + 4px);
        /* 1360pxで約52px */
    }
    #section5>div>div:nth-child(2) p,
    #section6>div>div:nth-child(2) p,
    #section7>div>div:nth-child(2) p,
    #section8>div>div:nth-child(2) p {
        /* padding-bottom: calc(2.2vw + 6px); */
        /* font-size: calc(0.9vw + 1.8px) */
        /* 1360pxで約69px 46px */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
  [id^="question"] {
    padding-top: calc(8vw + 5px);
    padding-bottom: calc(8vw + 5px);
  }
  #question1 {
    padding-top: calc(8vw + 5px);
    padding-bottom: calc(8vw + 5px);
  }
    #section-title-wrap5-2,
    #question1,
    #question3,
    #question2 {
        padding: calc(8vw + 5px) 0 calc(10vw + 12px);
        /* モバイルでの適切なスペース */
    }
    #section5>div>div:nth-child(2),
    #section6>div>div:nth-child(2),
    #section7>div>div:nth-child(2),
    #section8>div>div:nth-child(2),
    #section8>div>div:nth-child(3) {
        padding-left: calc(5vw + 4px);
        padding-right: calc(5vw + 4px);
        /* モバイルでの適切な余白 */
    }
    #section5>div>div:nth-child(2) p,
    #section6>div>div:nth-child(2) p,
    #section7>div>div:nth-child(2) p,
    #section8>div>div:nth-child(2) p {
        /* padding-bottom: calc(4vw + 8px); */
        /* font-size: calc(1.1vw + 8px); */
        /* モバイルでの適切な余白 */
    }
}

#modal-btn-wrap1,
#modal-btn-wrap2,
#modal-btn-wrap3,
#modal-btn-wrap4 {}

#modal-btn-wrap1>.aem-Grid.aem-Grid--12.aem-Grid--default--12::before,
#modal-btn-wrap2>.aem-Grid.aem-Grid--12.aem-Grid--default--12::before,
#modal-btn-wrap3>.aem-Grid.aem-Grid--12.aem-Grid--default--12::before,
#modal-btn-wrap4>.aem-Grid.aem-Grid--12.aem-Grid--default--12::before {
    display: none;
}

#modal-btn-wrap1>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
#modal-btn-wrap2>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
#modal-btn-wrap3>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
#modal-btn-wrap4>.aem-Grid.aem-Grid--12.aem-Grid--default--12 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 calc(6vw + 9.6px);
    /* 1440pxで約64px 96px */
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #modal-btn-wrap1>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap2>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap3>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap4>.aem-Grid.aem-Grid--12.aem-Grid--default--12 {
        gap: 70.4px 105.6px;
        /* 64px/96pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #modal-btn-wrap1>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap2>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap3>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap4>.aem-Grid.aem-Grid--12.aem-Grid--default--12 {
        gap: 0 calc(5vw + 8px);
        /* 1360pxで約54px 76px */
    }
}


/* レスポンシブ設定: 780px以下 - 1カラム、縦32pxベース */

@media (max-width: 780px) {
    #modal-btn-wrap1>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap2>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap3>.aem-Grid.aem-Grid--12.aem-Grid--default--12,
    #modal-btn-wrap4>.aem-Grid.aem-Grid--12.aem-Grid--default--12 {
        grid-template-columns: 1fr;
        /* 1カラムに変更 */
        gap: calc(2vw + 16px) 0;
        /* 縦のみのギャップ、横は0、780pxで約32px */
    }
}

#modal-btn1,
#modal-btn2,
#modal-btn3,
#modal-btn4,
#modal-btn5,
#modal-btn6,
#modal-btn7,
#modal-btn8,
#modal-btn9,
#modal-btn10,
#modal-btn11,
#modal-btn12,
#modal-btn13,
#modal-btn14,
#modal-btn15,
#modal-btn16 {
    cursor: pointer;
    transition: opacity 0.4s;
}


/* モーダルボタンのコンテナに相対位置指定 */

#modal-btn1>div>div:nth-child(1)>div>div>div,
#modal-btn2>div>div:nth-child(1)>div>div>div,
#modal-btn3>div>div:nth-child(1)>div>div>div,
#modal-btn4>div>div:nth-child(1)>div>div>div,
#modal-btn5>div>div:nth-child(1)>div>div>div,
#modal-btn6>div>div:nth-child(1)>div>div>div,
#modal-btn7>div>div:nth-child(1)>div>div>div,
#modal-btn8>div>div:nth-child(1)>div>div>div,
#modal-btn9>div>div:nth-child(1)>div>div>div,
#modal-btn10>div>div:nth-child(1)>div>div>div,
#modal-btn11>div>div:nth-child(1)>div>div>div,
#modal-btn12>div>div:nth-child(1)>div>div>div,
#modal-btn13>div>div:nth-child(1)>div>div>div,
#modal-btn14>div>div:nth-child(1)>div>div>div,
#modal-btn15>div>div:nth-child(1)>div>div>div,
#modal-btn16>div>div:nth-child(1)>div>div>div {
    position: relative;
}


/* containerクラスを左下に絶対配置 */
#modal-btn1>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn1>div>div:nth-child(1)>div>div>div p,
#modal-btn1>div>div:nth-child(1)>div>div>div span,
#modal-btn2>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn2>div>div:nth-child(1)>div>div>div p,
#modal-btn2>div>div:nth-child(1)>div>div>div span,
#modal-btn3>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn3>div>div:nth-child(1)>div>div>div p,
#modal-btn3>div>div:nth-child(1)>div>div>div span,
#modal-btn4>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn4>div>div:nth-child(1)>div>div>div p,
#modal-btn4>div>div:nth-child(1)>div>div>div span,
#modal-btn5>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn5>div>div:nth-child(1)>div>div>div p,
#modal-btn5>div>div:nth-child(1)>div>div>div span,
#modal-btn6>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn6>div>div:nth-child(1)>div>div>div p,
#modal-btn6>div>div:nth-child(1)>div>div>div span,
#modal-btn7>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn7>div>div:nth-child(1)>div>div>div p,
#modal-btn7>div>div:nth-child(1)>div>div>div span,
#modal-btn8>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn8>div>div:nth-child(1)>div>div>div p,
#modal-btn8>div>div:nth-child(1)>div>div>div span,
#modal-btn9>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn9>div>div:nth-child(1)>div>div>div p,
#modal-btn9>div>div:nth-child(1)>div>div>div span,
#modal-btn10>div>div:nth-child(1)>div>div>div .cmp-text,
#modal-btn10>div>div:nth-child(1)>div>div>div p,
#modal-btn10>div>div:nth-child(1)>div>div>div span,
#modal-btn11>div>div:nth-child(1)>div>div>div .cmp-text, 
#modal-btn11>div>div:nth-child(1)>div>div>div p,
#modal-btn11>div>div:nth-child(1)>div>div>div span {
  font-size: calc(0.9vw + 2px) !important;
  letter-spacing: -0.05em;
  line-height: 1.6;
}
#modal-btn1>div>div:nth-child(1)>div>div>div .container,
#modal-btn2>div>div:nth-child(1)>div>div>div .container,
#modal-btn3>div>div:nth-child(1)>div>div>div .container,
#modal-btn4>div>div:nth-child(1)>div>div>div .container,
#modal-btn5>div>div:nth-child(1)>div>div>div .container,
#modal-btn6>div>div:nth-child(1)>div>div>div .container,
#modal-btn7>div>div:nth-child(1)>div>div>div .container,
#modal-btn8>div>div:nth-child(1)>div>div>div .container,
#modal-btn9>div>div:nth-child(1)>div>div>div .container,
#modal-btn10>div>div:nth-child(1)>div>div>div .container,
#modal-btn11>div>div:nth-child(1)>div>div>div .container {
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #FFFFFF;
  padding: calc(1.2vw + 6px) calc(1.6vw + 8px);
  font-family: 'Shippori Mincho B1', serif;
  font-weight: 500;
  font-size: calc(0.8vw + 2px); /* 1440pxで約14px */
  width: auto !important;
  display: inline-block;
}


/* レスポンシブ対応 */

@media (max-width: 780px) {
  #modal-btn1>div>div:nth-child(1)>div>div>div .container,
  #modal-btn2>div>div:nth-child(1)>div>div>div .container,
  #modal-btn3>div>div:nth-child(1)>div>div>div .container,
  #modal-btn4>div>div:nth-child(1)>div>div>div .container,
  #modal-btn5>div>div:nth-child(1)>div>div>div .container,
  #modal-btn6>div>div:nth-child(1)>div>div>div .container,
  #modal-btn7>div>div:nth-child(1)>div>div>div .container,
  #modal-btn8>div>div:nth-child(1)>div>div>div .container,
  #modal-btn9>div>div:nth-child(1)>div>div>div .container,
  #modal-btn10>div>div:nth-child(1)>div>div>div .container,
  #modal-btn11>div>div:nth-child(1)>div>div>div .container {
    width: 100%;
    padding: calc(2vw + 8px) calc(5vw + 9px);
    position: static;
    width: 100% !important;
  }
  #modal-btn1>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn2>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn3>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn4>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn5>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn6>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn7>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn8>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn9>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn10>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14,
  #modal-btn11>div>div:nth-child(1)>div>div>div .container .cmp-text .cmp-text--size-14 {
    font-size: calc(6.9vw - 12px) !important;
  }
}

@media (min-width: 1600px) {
  #modal-btn1>div>div:nth-child(1)>div>div>div .container,
  #modal-btn2>div>div:nth-child(1)>div>div>div .container,
  #modal-btn3>div>div:nth-child(1)>div>div>div .container,
  #modal-btn4>div>div:nth-child(1)>div>div>div .container,
  #modal-btn5>div>div:nth-child(1)>div>div>div .container,
  #modal-btn6>div>div:nth-child(1)>div>div>div .container,
  #modal-btn7>div>div:nth-child(1)>div>div>div .container,
  #modal-btn8>div>div:nth-child(1)>div>div>div .container,
  #modal-btn9>div>div:nth-child(1)>div>div>div .container,
  #modal-btn10>div>div:nth-child(1)>div>div>div .container,
  #modal-btn11>div>div:nth-child(1)>div>div>div .container {
    padding: 26px 35px;
    font-size: 15.4px;
    /* 14pxの110% */
  }
}

#modal-btn1>div>div:nth-child(1) .image,
#modal-btn2>div>div:nth-child(1) .image,
#modal-btn3>div>div:nth-child(1) .image,
#modal-btn4>div>div:nth-child(1) .image,
#modal-btn5>div>div:nth-child(1) .image,
#modal-btn6>div>div:nth-child(1) .image,
#modal-btn7>div>div:nth-child(1) .image,
#modal-btn8>div>div:nth-child(1) .image,
#modal-btn9>div>div:nth-child(1) .image,
#modal-btn10>div>div:nth-child(1) .image,
#modal-btn11>div>div:nth-child(1) .image {
  overflow: hidden;
}

#modal-btn1>div>div:nth-child(1) .image img,
#modal-btn2>div>div:nth-child(1) .image img,
#modal-btn3>div>div:nth-child(1) .image img,
#modal-btn4>div>div:nth-child(1) .image img,
#modal-btn5>div>div:nth-child(1) .image img,
#modal-btn6>div>div:nth-child(1) .image img,
#modal-btn7>div>div:nth-child(1) .image img,
#modal-btn8>div>div:nth-child(1) .image img,
#modal-btn9>div>div:nth-child(1) .image img,
#modal-btn10>div>div:nth-child(1) .image img,
#modal-btn11>div>div:nth-child(1) .image img {
  transition: transform 0.3s ease;
  width: 100%;
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: top center;
}

#modal-btn1:hover>div>div:nth-child(1) .image img,
#modal-btn2:hover>div>div:nth-child(1) .image img,
#modal-btn3:hover>div>div:nth-child(1) .image img,
#modal-btn4:hover>div>div:nth-child(1) .image img,
#modal-btn5:hover>div>div:nth-child(1) .image img,
#modal-btn6:hover>div>div:nth-child(1) .image img,
#modal-btn7:hover>div>div:nth-child(1) .image img,
#modal-btn8:hover>div>div:nth-child(1) .image img,
#modal-btn9:hover>div>div:nth-child(1) .image img,
#modal-btn10:hover>div>div:nth-child(1) .image img,
#modal-btn11:hover>div>div:nth-child(1) .image img {
  transform: scale(1.05);
}

#modal-btn1>div>div:nth-child(2),
#modal-btn2>div>div:nth-child(2),
#modal-btn3>div>div:nth-child(2),
#modal-btn4>div>div:nth-child(2),
#modal-btn5>div>div:nth-child(2),
#modal-btn6>div>div:nth-child(2),
#modal-btn7>div>div:nth-child(2),
#modal-btn8>div>div:nth-child(2),
#modal-btn9>div>div:nth-child(2),
#modal-btn10>div>div:nth-child(2),
#modal-btn11>div>div:nth-child(2) {
  margin-top: 1.5em;
}


/* Modal button text styles */

#modal-btn1>div>div:nth-child(2),
#modal-btn2>div>div:nth-child(2),
#modal-btn3>div>div:nth-child(2),
#modal-btn4>div>div:nth-child(2),
#modal-btn5>div>div:nth-child(2),
#modal-btn6>div>div:nth-child(2),
#modal-btn7>div>div:nth-child(2),
#modal-btn8>div>div:nth-child(2),
#modal-btn9>div>div:nth-child(2),
#modal-btn10>div>div:nth-child(2),
#modal-btn11>div>div:nth-child(2) {
  color: #0B3282;
  margin-bottom: 0;
  font-family: 'Shippori Mincho B1', serif;
  font-weight: 500;
  /* Medium */
}


/* First span inside paragraph */

#modal-btn1>div>div:nth-child(2) p span,
#modal-btn2>div>div:nth-child(2) p span,
#modal-btn3>div>div:nth-child(2) p span,
#modal-btn4>div>div:nth-child(2) p span,
#modal-btn5>div>div:nth-child(2) p span,
#modal-btn6>div>div:nth-child(2) p span,
#modal-btn7>div>div:nth-child(2) p span,
#modal-btn8>div>div:nth-child(2) p span,
#modal-btn9>div>div:nth-child(2) p span,
#modal-btn10>div>div:nth-child(2) p span,
#modal-btn11>div>div:nth-child(2) p span {
  font-size: calc(0.7vw + 2px);
  /* Responsive font size based on 12px */
  line-height: 1.5;
  display: block;
  margin-bottom: 0.25em;
}


/* Paragraph + paragraph span */

#modal-btn1>div>div:nth-child(2) p+p span,
#modal-btn2>div>div:nth-child(2) p+p span,
#modal-btn3>div>div:nth-child(2) p+p span,
#modal-btn4>div>div:nth-child(2) p+p span,
#modal-btn5>div>div:nth-child(2) p+p span,
#modal-btn6>div>div:nth-child(2) p+p span,
#modal-btn7>div>div:nth-child(2) p+p span,
#modal-btn8>div>div:nth-child(2) p+p span,
#modal-btn9>div>div:nth-child(2) p+p span,
#modal-btn10>div>div:nth-child(2) p+p span,
#modal-btn11>div>div:nth-child(2) p+p span,
#modal-btn12>div>div:nth-child(2) p+p span,
#modal-btn13>div>div:nth-child(2) p+p span,
#modal-btn14>div>div:nth-child(2) p+p span,
#modal-btn15>div>div:nth-child(2) p+p span,
#modal-btn16>div>div:nth-child(2) p+p span {
    font-size: calc(1.4vw + 4px);
    /* Responsive font size based on 24px */
    line-height: 1.4;
}

#modal-btn1>div>div:nth-child(2) p:first-child,
#modal-btn2>div>div:nth-child(2) p:first-child,
#modal-btn3>div>div:nth-child(2) p:first-child,
#modal-btn4>div>div:nth-child(2) p:first-child,
#modal-btn5>div>div:nth-child(2) p:first-child,
#modal-btn7>div>div:nth-child(2) p:first-child,
#modal-btn8>div>div:nth-child(2) p:first-child,
#modal-btn9>div>div:nth-child(2) p:first-child,
#modal-btn10>div>div:nth-child(2) p:first-child,
#modal-btn11>div>div:nth-child(2) p:first-child,
#modal-btn12>div>div:nth-child(2) p:first-child,
#modal-btn13>div>div:nth-child(2) p:first-child,
#modal-btn14>div>div:nth-child(2) p:first-child,
#modal-btn15>div>div:nth-child(2) p:first-child,
#modal-btn16>div>div:nth-child(2) p:first-child {
  margin-bottom: 0.5em;
}


/* Responsive adjustments for larger screens */

@media (min-width: 1600px) {
    #modal-btn1>div>div:nth-child(2) p span,
    #modal-btn2>div>div:nth-child(2) p span,
    #modal-btn3>div>div:nth-child(2) p span,
    #modal-btn4>div>div:nth-child(2) p span,
    #modal-btn5>div>div:nth-child(2) p span,
    #modal-btn6>div>div:nth-child(2) p span,
    #modal-btn7>div>div:nth-child(2) p span,
    #modal-btn8>div>div:nth-child(2) p span,
    #modal-btn9>div>div:nth-child(2) p span,
    #modal-btn10>div>div:nth-child(2) p span,
    #modal-btn11>div>div:nth-child(2) p span,
    #modal-btn12>div>div:nth-child(2) p span,
    #modal-btn13>div>div:nth-child(2) p span,
    #modal-btn14>div>div:nth-child(2) p span,
    #modal-btn15>div>div:nth-child(2) p span,
    #modal-btn16>div>div:nth-child(2) p span {
        font-size: 13.2px;
        /* 12px の 110% */
    }
    #modal-btn1>div>div:nth-child(2) p+p span,
    #modal-btn2>div>div:nth-child(2) p+p span,
    #modal-btn3>div>div:nth-child(2) p+p span,
    #modal-btn4>div>div:nth-child(2) p+p span,
    #modal-btn5>div>div:nth-child(2) p+p span,
    #modal-btn6>div>div:nth-child(2) p+p span,
    #modal-btn7>div>div:nth-child(2) p+p span,
    #modal-btn8>div>div:nth-child(2) p+p span,
    #modal-btn9>div>div:nth-child(2) p+p span,
    #modal-btn10>div>div:nth-child(2) p+p span,
    #modal-btn11>div>div:nth-child(2) p+p span,
    #modal-btn12>div>div:nth-child(2) p+p span,
    #modal-btn13>div>div:nth-child(2) p+p span,
    #modal-btn14>div>div:nth-child(2) p+p span,
    #modal-btn15>div>div:nth-child(2) p+p span,
    #modal-btn16>div>div:nth-child(2) p+p span {
        font-size: 26.4px;
        /* 24px の 110% */
    }
}


/* Responsive adjustments for mobile screens */

@media (max-width: 780px) {
    #modal-btn1>div>div:nth-child(2) p span,
    #modal-btn2>div>div:nth-child(2) p span,
    #modal-btn3>div>div:nth-child(2) p span,
    #modal-btn4>div>div:nth-child(2) p span,
    #modal-btn5>div>div:nth-child(2) p span,
    #modal-btn6>div>div:nth-child(2) p span,
    #modal-btn7>div>div:nth-child(2) p span,
    #modal-btn8>div>div:nth-child(2) p span,
    #modal-btn9>div>div:nth-child(2) p span,
    #modal-btn10>div>div:nth-child(2) p span,
    #modal-btn11>div>div:nth-child(2) p span,
    #modal-btn12>div>div:nth-child(2) p span,
    #modal-btn13>div>div:nth-child(2) p span,
    #modal-btn14>div>div:nth-child(2) p span,
    #modal-btn15>div>div:nth-child(2) p span,
    #modal-btn16>div>div:nth-child(2) p span {
        font-size: calc(1.2vw + 4px);
        /* Better readability on mobile */
    }
    #modal-btn1>div>div:nth-child(2) p+p span,
    #modal-btn2>div>div:nth-child(2) p+p span,
    #modal-btn3>div>div:nth-child(2) p+p span,
    #modal-btn4>div>div:nth-child(2) p+p span,
    #modal-btn5>div>div:nth-child(2) p+p span,
    #modal-btn6>div>div:nth-child(2) p+p span,
    #modal-btn7>div>div:nth-child(2) p+p span,
    #modal-btn8>div>div:nth-child(2) p+p span,
    #modal-btn9>div>div:nth-child(2) p+p span,
    #modal-btn10>div>div:nth-child(2) p+p span,
    #modal-btn11>div>div:nth-child(2) p+p span,
    #modal-btn12>div>div:nth-child(2) p+p span,
    #modal-btn13>div>div:nth-child(2) p+p span,
    #modal-btn14>div>div:nth-child(2) p+p span,
    #modal-btn15>div>div:nth-child(2) p+p span,
    #modal-btn16>div>div:nth-child(2) p+p span {
        font-size: calc(4.5vw + 8px);
        line-height: 1;
        /* Better readability on mobile */
    }
}


/*section5*/


/* sections 5-8 text styles */
#section-title-wrap5 .cmp-text--size-36 {
  font-family: 'Shippori Mincho B1', serif;
  font-weight: 500;
  font-size: calc(2.5vw + 0px);
  line-height: 1.5;
  letter-spacing: -0.05em;
}
[id^="question"] .cmp-text--size-40,
#section-title-wrap5-2 .cmp-text--size-40,
#question1 .cmp-text--size-40,
#question3 .cmp-text--size-40,
#question2 .cmp-text--size-40 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(3.6vw + 0px); /* 1440pxで約56px */
    line-height: 1.5;
    letter-spacing: -0.05em;
    color: var(--color-1);
}

[id^="question"] .cmp-text--size-20-14,
#section-title-wrap5-2 .cmp-text--size-20-14,
#question1 .cmp-text--size-20-14,
#question3 .cmp-text--size-20-14,
#question2 .cmp-text--size-20-14 {
    font-family: 'EB Garamond', serif;
    font-size: calc(1.2vw + 2.7px);
    /* 1440pxで約20px */
    line-height: 1.6;
    display: inline-block;
    margin-top: 0.5em;
    letter-spacing: -0.025em;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
  section-title-wrap5 .cmp-text--size-36 {
    font-size: 39.6px;
  }
  [id^="question"] .cmp-text--size-40,
  #section-title-wrap5-2 .cmp-text--size-40,
  #question1 .cmp-text--size-40,
  #question3 .cmp-text--size-40,
  #question2 .cmp-text--size-40 {
    font-size: 58.6px;
    /* 56pxの110% */
  }
    [id^="question"] .cmp-text--size-20-14,
    #section-title-wrap5-2 .cmp-text--size-20-14,
    #question1 .cmp-text--size-20-14,
    #question3 .cmp-text--size-20-14,
    #question2 .cmp-text--size-20-14 {
        font-size: 22px;
        /* 20pxの110% */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
  section-title-wrap5 .cmp-text--size-36 {
    font-size: calc(2vw + 8px) !important; /* モバイルでも読みやすいサイズに */
  }
  [id^="question"] .cmp-text--size-40,
    #section-title-wrap5-2 .cmp-text--size-40,
    #question1 .cmp-text--size-40,
    #question3 .cmp-text--size-40,
    #question2 .cmp-text--size-40 {
        font-size: calc(4vw + 10px) !important;
        /* letter-spacing: -0.1em; */
        /* モバイルでも読みやすいサイズに */
    }
    [id^="question"] .cmp-text--size-20-14,
    #section-title-wrap5-2 .cmp-text--size-20-14,
    #question1 .cmp-text--size-20-14,
    #question3 .cmp-text--size-20-14,
    #question2 .cmp-text--size-20-14 {
        font-size: calc(1.5vw + 15px) !important;
        padding-left: 14vw;
        padding-right: 14vw;
    }
}


/* section 5 ~ 8 end */


/* ==============================================================
section9
============================================================== */

#section9 {
  margin-top: 254px;
    margin-bottom: 254px;
    /* Fixed bottom margin of 254px */
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section9 {
      margin-top: 279.4px;
        margin-bottom: 279.4px;
        /* 140px * 1.1 for larger screens */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
    #section9 {
      margin-top: calc(5vw + 10px);
        margin-bottom: 0;
        /* Responsive margin for mobile */
    }
}

#section9 #section9-wrap>div>div:nth-child(2) {
    padding-top: calc(1.4vw + 0px);
    /* 1440pxで約20px */
    padding-bottom: calc(5.56vw + 0px);
    /* 1440pxで約80px */
}

#section9 #section9-wrap>div>div:nth-child(2) .cmp-text--size-40 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(3.3vw + 0.4px);
    /* 1440pxで約48px */
    line-height: 1.5;
    /* letter-spacing: -0.1em; */
}

#section9 #section9-wrap>div>div:nth-child(3) .cmp-text--size-20-14 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    /* semibold */
    font-size: calc(1.2vw + 2.7px);
    /* 1440pxで約20px */
    line-height: 1.6;
}


/* Section 9: Adding top margin of 72px to div:nth-child(4) through div:nth-child(8) */

#section9 #section9-wrap>div>div:nth-child(4) {
    margin-top: 72px;
}
#section9 #section9-wrap>div>div:nth-child(5),
#section9 #section9-wrap>div>div:nth-child(6),
#section9 #section9-wrap>div>div:nth-child(7),
#section9 #section9-wrap>div>div:nth-child(8) {
    margin-top: 42px;
}


/* Responsive adjustments for the top margin */

@media (min-width: 1600px) {
    #section9 #section9-wrap>div>div:nth-child(4) {
        margin-top: 79.2px;
    }
    #section9 #section9-wrap>div>div:nth-child(5),
    #section9 #section9-wrap>div>div:nth-child(6),
    #section9 #section9-wrap>div>div:nth-child(7),
    #section9 #section9-wrap>div>div:nth-child(8) {
        margin-top: 46.2px;
        /* 42px * 1.1 for larger screens */
    }
}

@media (max-width: 780px) {
    #section9 #section9-wrap>div>div:nth-child(4) {
        margin-top: calc(5vw + 32px);
        /* Responsive margin for mobile */
    }
    #section9 #section9-wrap>div>div:nth-child(5),
    #section9 #section9-wrap>div>div:nth-child(6),
    #section9 #section9-wrap>div>div:nth-child(7),
    #section9 #section9-wrap>div>div:nth-child(8) {
        margin-top: calc(5vw + 0px);
        /* Responsive margin for mobile */
    }
}

#section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-20-14,
#section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-20-14,
#section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-20-14,
#section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-20-14,
#section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-20-14 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(1.4vw + 4px);
    /* 1440pxで約24px */
    line-height: 1.6;
}

#section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-40,
#section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-40,
#section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-40,
#section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-40,
#section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-40 {
    font-family: 'Jost', sans-serif;
    font-weight: 600;
    /* semibold */
    font-size: calc(2.8vw + 0px);
    /* 1440pxで約40px */
    line-height: 1.5;
}

#section9 #section9-wrap>div>div:nth-child(4) .cmp-text--eduEC-black,
#section9 #section9-wrap>div>div:nth-child(5) .cmp-text--eduEC-black,
#section9 #section9-wrap>div>div:nth-child(6) .cmp-text--eduEC-black,
#section9 #section9-wrap>div>div:nth-child(7) .cmp-text--eduEC-black,
#section9 #section9-wrap>div>div:nth-child(8) .cmp-text--eduEC-black {
    color: #008AFF;
}

#section9 #section9-wrap>div>div:nth-child(4) .cmp-text--eduEC-blue,
#section9 #section9-wrap>div>div:nth-child(5) .cmp-text--eduEC-blue,
#section9 #section9-wrap>div>div:nth-child(6) .cmp-text--eduEC-blue,
#section9 #section9-wrap>div>div:nth-child(7) .cmp-text--eduEC-blue,
#section9 #section9-wrap>div>div:nth-child(8) .cmp-text--eduEC-blue {
    color: #0B3282;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section9 #section9-wrap>div>div:nth-child(2) {
        padding-top: 22px;
        /* 20pxの110% */
        padding-bottom: 88px;
        /* 80pxの110% */
    }
    #section9 #section9-wrap>div>div:nth-child(2) .cmp-text--size-40 {
        font-size: 52.8px;
        /* 48pxの110% */
    }
    #section9 #section9-wrap>div>div:nth-child(3) .cmp-text--size-20-14 {
        font-size: 22px;
        /* 20pxの110% */
    }
    #section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-20-14 {
        font-size: 26.4px;
        /* 24pxの110% */
    }
    #section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-40 {
        /* font-size: 44px; */
        /* 40pxの110% */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
    #section9 #section9-wrap>div>div:nth-child(2) {
        padding-top: calc(4vw);
        padding-bottom: calc(7vw);
    }
    #section9 #section9-wrap>div>div:nth-child(2) .cmp-text--size-40 {
        font-size: calc(4vw + 12px);
        /* letter-spacing: -0.1em; */
        /* モバイルでも読みやすいサイズに */
    }
    #section9 #section9-wrap>div>div:nth-child(3) p {
        padding-left: 15vw;
        padding-right: 15vw;
        text-align: left !important;
    }
    #section9 #section9-wrap>div>div:nth-child(3) p br {
        display: none;
    }
    #section9 #section9-wrap>div>div:nth-child(3) .cmp-text--size-20-14 {
        font-size: calc(2.2vw + 6px) !important;
        /* モバイルでも読みやすいサイズに */
    }
    #section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-20-14,
    #section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-20-14 {
        font-size: calc(2.8vw + 8px) !important;
        /* モバイルでも読みやすいサイズに */
    }
    #section9 #section9-wrap>div>div:nth-child(4) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(5) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(6) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(7) .cmp-text--size-40,
    #section9 #section9-wrap>div>div:nth-child(8) .cmp-text--size-40 {
        font-size: calc(3.5vw + 12px) !important;
        /* モバイルでも読みやすいサイズに */
    }
}


/* ==============================================================
section9 end
============================================================== */


/* ==============================================================
section10
============================================================== */

#section10 {
    margin-top: 110px;
    position: relative;
}

/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section10 {
        margin-top: 121px;
        /* 110px の 110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section10 {
        margin-top: calc(7vw + 14.8px);
        /* 1360pxで約110px */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
    #section10 {
        margin-top: calc(10vw + 72px);
        /* モバイルでも適切なスペースを確保 */
    }
}

#section10-title {
    margin-bottom: calc(1.8vw + 4px);
    /* 1440pxで約30px */
}

#section10-title .text {
    margin-bottom: calc(1.2vw + 2.5px);
    /* 1440pxで約20px */
}


/* container-9df83b3e8bの設定 */

#section10-wrap2 {
    /* padding-bottom: calc(8.3vw + 0.4px); */
    /* 1440pxで約120px */
}


/* container-9df83b3e8bの.cmp-text--size-40に対するスタイル */

#section10-wrap2 .cmp-text--size-40 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(3.3vw + 0.4px);
    /* 1440pxで約48px */
    line-height: 1.5;
    /* letter-spacing: -0.1em; */
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section10-title {
        margin-bottom: 33px;
        /* 30pxの110% */
    }
    #section10-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
    #section10-wrap2 {
        padding-bottom: 132px;
        /* 120pxの110% */
    }
    #section10-wrap2 .cmp-text--size-40 {
        font-size: 52.8px;
        /* 48pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section10-title {
        margin-bottom: calc(1.6vw + 4px);
        /* 1360pxで約26px */
    }
    #section10-title .text {
        margin-bottom: calc(1vw + 2.5px);
        /* 1360pxで約16px */
    }
    #section10-wrap2 {
        /* padding-bottom: calc(7.8vw + 4px); */
        /* 1360pxで約110px */
    }
    #section10-wrap2 .cmp-text--size-40 {
        font-size: calc(3.1vw + 2px);
        /* 1360pxで約44px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section10-title {
        margin-bottom: calc(3vw + 16px);
        /* モバイルでの最小値確保 */
    }
    #section10-title .text {
        margin-bottom: calc(1.5vw + 2px);
        /* モバイルでの最小値確保 */
    }
    #section10-wrap2 {
        padding-bottom: calc(10vw + 42px);
        /* モバイルでも適切なスペースを確保 */
    }
    #section10-wrap2 .cmp-text--size-40 {
        font-size: calc(4vw + 12px);
        /* letter-spacing: -0.1em; */
        /* モバイルでも読みやすいサイズに */
    }
}


/* 1) Service section shared styles */

#service1>div>div:nth-child(2),
#service2>div>div:nth-child(2),
#service3>div>div:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

#service1>div>div:nth-child(2)>.switch-container,
#service2>div>div:nth-child(2)>.switch-container,
#service3>div>div:nth-child(2)>.switch-container {
    position: relative;
    width: 100%;
    height: 100%;
}

#service1>div>div:nth-child(2)>.switch-container::before,
#service2>div>div:nth-child(2)>.switch-container::before,
#service3>div>div:nth-child(2)>.switch-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}


/* Center service content and set text color */


/* Center service content and set text color */

#service-content1,
#service-content2,
#service-content3 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    width: 100%;
    color: #fff;
}


/* Content container styling */

#service-content1>div,
#service-content2>div,
#service-content3>div {
    margin: 0 auto;
    opacity: 0;
    transition: all 1s ease;
}


/* 2) Typography settings */

#service-content1 .cmp-text--size-28,
#service-content2 .cmp-text--size-28,
#service-content3 .cmp-text--size-28 {
    font-family: 'Jost', sans-serif;
    font-size: calc(1.8vw + 2px); /* 1440pxで約28px */
    line-height: 1.4;
}

#service-content1 .cmp-text--size-40,
#service-content2 .cmp-text--size-40,
#service-content3 .cmp-text--size-40 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(3.3vw + 0.4px); /* 1440pxで約48px */
    line-height: 1.4;
    /* letter-spacing: -0.1em; */
}


[id^="service-content"] >div>.container:nth-child(2)+div p,
#service-content1 .cmp-text--size-20-14,
#service-content2 .cmp-text--size-20-14,
#service-content3 .cmp-text--size-20-14 {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    font-size: calc(0.8vw + 2px); /* 1440pxで約14px */
    line-height: 2; /* 行間200% */
}

#service-content1>div>.container:nth-child(2),
#service-content2>div>.container:nth-child(2),
#service-content3>div>.container:nth-child(2) {
    margin-bottom: 1em;
}


/* Responsive styles */

@media (min-width: 1600px) {
    #service-content1 .cmp-text--size-28,
    #service-content2 .cmp-text--size-28,
    #service-content3 .cmp-text--size-28 {
        font-size: 30.8px;
        /* 28px * 110% */
    }
    #service-content1 .cmp-text--size-40,
    #service-content2 .cmp-text--size-40,
    #service-content3 .cmp-text--size-40 {
        font-size: 52.8px;
        /* 48px * 110% */
    }
    [id^="service-content"] >div>.container:nth-child(2)+div p,
    #service-content1 .cmp-text--size-20-14,
    #service-content2 .cmp-text--size-20-14,
    #service-content3 .cmp-text--size-20-14 {
        font-size: 22px;
    }
}

@media (max-width: 780px) {
    #service-content1,
    #service-content2,
    #service-content3 {
                padding: 0 10vw;
    }
    [id^="service-content"] .text h3,
    [id^="service-content"] .text p {
      text-align: left !important;
    }
    #service-content1 .cmp-text--size-28,
    #service-content2 .cmp-text--size-28,
    #service-content3 .cmp-text--size-28 {
        font-size: calc(2.5vw + 6px) !important;
    }
    #service-content1 .cmp-text--size-40,
    #service-content2 .cmp-text--size-40,
    #service-content3 .cmp-text--size-40 {
        font-size: calc(4vw + 8px) !important;
        /* letter-spacing: -0.1em; */
    }
    [id^="service-content"] >div>.container:nth-child(2)+div p,
    #service-content1 .cmp-text--size-20-14,
    #service-content2 .cmp-text--size-20-14,
    #service-content3 .cmp-text--size-20-14 {
        font-size: calc(2.2vw + 2.5px) !important;
    }
}

#services-container>div::before,
#services-container>div::after {
    content: none;
}

#services-container {
    position: relative;
    width: 100%;
    /* height: 100vh; */
    overflow: hidden;
}
#services-container>div {
  display: grid;
  gap: calc(10vw + 8px);
}

@media (max-width: 780px) {
    #services-container {
        padding: 0 5vw !important;
        /* margin-top: 50px !important; */
    }
    #services-container>div {
      margin-top: 50px !important;
    }
    #services-container>div {
      display: grid;
      gap: 25vh;
    }
}


/* 各サービスの基本スタイル */

#service1,
#service2,
#service3 {
    opacity: 1;
    /* visibility: hidden; */
    z-index: 1;
    /* position: absolute; */
    /* top: 0; */
    /* left: 0; */
    width: 100%;
    /* height: 100vh; */
    /* transition: all 0.8s ease; */
    /* transform: scale(0.4); */
    padding: 0 80px 0;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media (min-width: 781px) {
  #service1 {
    padding-top: 60px;
  }
}
@media (max-width: 780px) {
    #service1,
    #service2,
    #service3 {
        padding: 0;
        /* transform: scale(0.6); */
        align-items: flex-start;
        height: auto;
        min-height: calc(50vh + 50px);
    }
    /* #service3 {
        height: auto;
        min-height: calc(50vh + 50px);
    } */
}


/* サービス背景と画像の初期状態 */

#service-bg1,
#service-bg2,
#service-bg3 {
    position: relative;
    width: 100%;
    height: 100%;
    /* transform: scale(0.4); */
    transition: all 0.8s ease;
}
#service1>div>div:nth-child(2)>.switch-container::before,
#service2>div>div:nth-child(2)>.switch-container::before,
#service3>div>div:nth-child(2)>.switch-container::before {
    /* transform: scale(0.4); */
    transition: all 0.8s ease;
    opacity: 0;
}

#service-bg1 img,
#service-bg2 img,
#service-bg3 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#service-bg1 img {
  aspect-ratio: 1918/1022;
}

@media (max-width: 780px) {
    #service-bg1 img,
    #service-bg2 img,
    #service-bg3 img {
        aspect-ratio: 1/1.62;
    }
    #service-bg3 img {
        object-position: 60% center;
    }
}


/* サービスコンテンツの初期状態 */

#service-content1>div,
#service-content2>div,
#service-content3>div {
    transform: translateY(30px);
    transition: all 0.8s ease;
}


/* アクティブクラスのスタイル */

.service-active {
    opacity: 1 !important;
    /* visibility: visible !important; */
}

.service-active #service-content1>div,
.service-active #service-content2>div,
.service-active #service-content3>div {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.4s;
}

.service-active #service-bg1,
.service-active #service-bg2,
.service-active #service-bg3,
.service-active #service-bg1::before,
.service-active #service-bg2::before,
.service-active #service-bg3::before,
#service1.service-active >div>div:nth-child(2)>.switch-container::before,
#service2.service-active >div>div:nth-child(2)>.switch-container::before,
#service3.service-active >div>div:nth-child(2)>.switch-container::before {
    /* transform: scale(1); */
    transition-delay: 1.2;
}
#service1.service-active >div>div:nth-child(2)>.switch-container::before,
#service2.service-active >div>div:nth-child(2)>.switch-container::before,
#service3.service-active >div>div:nth-child(2)>.switch-container::before {
    opacity: 1;
}




/* スクロールロック用のスタイル */

body.scroll-locked {
    overflow: hidden;
}

#scroll-lock-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background-color: transparent;
    display: none;
    pointer-events: all;
}

.service-active {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 10;
}


/* ==============================================================
section10 end
============================================================== */


/* ==============================================================
section11
============================================================== */

#section11 {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
}

#section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p {
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    margin-bottom: 20px;
    /* letter-spacing: -0.1em; */
}

#section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p {
    font-family: 'EB Garamond', serif;
}


/* 大見出し - 68px基準 */

#section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
    font-size: calc(3.3vw + 4.41px);
    /* 1440pxで約68px */
    line-height: 1.2;
    display: inline-block;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    /* letter-spacing: -0.1em; */
}


/* 中見出し - 64px基準(cmp-text--weight-medium class) */

#section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
    font-size: calc(3.2vw + 3.5px);
    /* 1440pxで約64px */
    font-weight: 500;
}


/* 小見出し - 20px基準 */

#section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
    font-size: calc(1.1vw + 4px);
    /* 1440pxで約20px */
    line-height: 1.5;
    display: inline-block;
    font-family: 'EB Garamond', serif;
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #section11-title .text {
        margin-bottom: 22px;
        /* 20pxの110% */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: 57.123px;
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: 56.4px;
        /* 64pxの110% */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: 22px;
        /* 20pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(3.819852941vw);
        /* 1360pxで約58px */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: calc(3.3vw + 4px);
        /* 1360pxで約56px */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: calc(1vw + 4px);
        /* 1360pxで約18px */
    }
}


/* レスポンシブ設定: 780px以下 - リキッド、モバイル対応 */

@media (max-width: 780px) {
    #section11 {
        /* min-height: 50vh; */
        /* margin-top: calc(-15vh + 50px); */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p {
        transform: translateX(1vw);
        letter-spacing: -0.25em;
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span {
        font-size: calc(7vw + 5px) !important;
        /* モバイルでも読みやすいサイズに */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p >span {
        letter-spacing: -0.05em;
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(2) p span.cmp-text--weight-medium {
        font-size: calc(5.5vw + 5px) !important;
        /* 少し小さめに */
    }
    #section11>div>div #section11-wrap>.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12:nth-child(3) p span {
        font-size: calc(2vw + 8px) !important;
        /* モバイルでの最小サイズを確保 */
    }
    #section11 .cmp-text--line-break-for-sp {
        display: block !important;
    }
}


/* ==============================================================
section11 end
============================================================== */

.cmp-button {
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    background-color: #0B3282;
    border-radius: 100px;
    font-family: 'Jost', sans-serif;
    font-weight: 600;
}


/* 中央光線のスタイル - パフォーマンス最適化 */

.ray {
    position: absolute;
    top: 50%;
    left: 50%;
    transform-origin: center;
    opacity: 0;
    will-change: transform, opacity;
    border-radius: 40%;
    mix-blend-mode: multiply;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}


/* 光線のスタイル */

#ray-wrapper {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 0;
}

.line-ray {
    position: absolute;
    height: 100vh;
    transform-origin: left center !important;
    left: 0;
    top: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

.line-ray::before {
    content: "";
    position: absolute;
    display: block;
    height: 12px;
    width: 200px;
    background: #fff;
    border-radius: 100px;
    opacity: 0;
    scale: 0;
    transform-origin: left center;
    mix-blend-mode: screen;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}


/* 光線の色 */

.line-ray-color-0::before {
    background: rgba(255, 107, 139, 0.8);
    /* ピンク */
}

.line-ray-color-1::before {
    background: rgba(74, 144, 226, 0.8);
    /* 青 */
}

.line-ray-color-2::before {
    background: rgba(255, 166, 77, 0.8);
    /* オレンジ */
}


/* コントロールボタン */


/* コントロールボタン - AEM Grid対応版 */

#controls {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 100;
    width: 40px;
    height: 40px;
}

#controls .switch-container {
    width: 100%;
}

#toggle-animation {
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.2);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}

#toggle-animation .aem-Grid {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#toggle-animation:hover {
    background-color: rgba(0, 0, 0, 0.2);
}


/* アイコンコンテナのスタイル */

#pause-icon,
#play-icon {
    width: 16px;
    height: 16px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0.7);
}


/* 一時停止アイコン */

#pause-icon .aem-Grid::before,
#pause-icon .aem-Grid::after {
    content: '';
    position: absolute;
    width: 5px;
    height: 16px;
    background-color: #333;
    top: 0;
}

#pause-icon .aem-Grid::before {
    left: 1px;
}

#pause-icon .aem-Grid::after {
    right: 1px;
}


/* 再生アイコン */

#play-icon {
    margin-left: 2px;
}

#play-icon .aem-Grid::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 14px solid #333;
    left: 1px;
}


/* 特定の要素を非表示にするためのスタイル */

.switch-container[style*="display: none"] {
    display: none !important;
}


/* 非表示にするためのスタイル */

.hidden {
    display: none;
}


/* スクロールロック用オーバーレイ */

#scroll-lock-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background-color: transparent;
    display: none;
    pointer-events: all;
}


/* AEM Grid対応の追加スタイル */

.container.responsivegrid.aem-GridColumn {
    margin: 0;
    padding: 0;
}

.aem-Grid.aem-Grid--12.aem-Grid--default--12 {
    width: 100%;
    height: 100%;
    position: relative;
}

.switch-container .aem-Grid.aem-Grid--12.aem-Grid--default--12 {
    width: 100%;
    height: auto;
}


/* モバイル対応 */

@media (max-width: 768px) {
    #center-animation-container,
    #line-animation-container {
        /* filter: blur(3px); */
    }
}


/* ==============================================================
   modal の中身
============================================================== */

#modal-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: none;
    cursor: pointer;
    z-index: 999;
    opacity: 0;
    transition: opacity 0.3s ease;
}

#modal-bg.is-active {
    display: block;
}

#modal-bg.is-b {
    opacity: 1;
    background-color: rgba(0,0,0,0.5);
}


/* モーダルを非表示にする */

#modal1,
#modal2,
#modal3,
#modal4,
#modal5,
#modal6,
#modal7,
#modal8,
#modal9,
#modal10,
#modal11,
#modal12,
#modal13,
#modal14,
#modal15,
#modal16 {
    visibility: hidden;
}


/* モーダルが表示される時のスタイル */

.modal-visible {
    visibility: visible !important;
}


/* モーダル表示時のアニメーション */

@keyframes modalFadeIn {
    from {
        opacity: 0;
        transform: translate(-50%, -40%);
        filter: blur(10px);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -45%);
        filter: blur(0);
    }
}

@keyframes modalFadeOut {
    from {
        opacity: 1;
        transform: translate(-50%, -45%);
        filter: blur(0px);
    }
    to {
        opacity: 0;
        transform: translate(-50%, -40%);
        filter: blur(10px);
    }
}

#modal1 .aem-Grid::before,
#modal1 .aem-Grid::after,
#modal2 .aem-Grid::before,
#modal2 .aem-Grid::after,
#modal3 .aem-Grid::before,
#modal3 .aem-Grid::after,
#modal4 .aem-Grid::before,
#modal4 .aem-Grid::after,
#modal5 .aem-Grid::before,
#modal5 .aem-Grid::after,
#modal6 .aem-Grid::before,
#modal6 .aem-Grid::after,
#modal7 .aem-Grid::before,
#modal7 .aem-Grid::after,
#modal8 .aem-Grid::before,
#modal8 .aem-Grid::after,
#modal9 .aem-Grid::before,
#modal9 .aem-Grid::after,
#modal10 .aem-Grid::before,
#modal10 .aem-Grid::after,
#modal11 .aem-Grid::before,
#modal11 .aem-Grid::after,
#modal12 .aem-Grid::before,
#modal12 .aem-Grid::after,
#modal13 .aem-Grid::before,
#modal13 .aem-Grid::after,
#modal14 .aem-Grid::before,
#modal14 .aem-Grid::after,
#modal15 .aem-Grid::before,
#modal15 .aem-Grid::after,
#modal16 .aem-Grid::before,
#modal16 .aem-Grid::after {
    content: none;
}


/* modal内の閉じるボタン */

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div {
    background-color: #F6FCFF;
    border: 1px solid rgba(204, 204, 204, 0.8);
    width: calc(2.5vw + 4px);
    height: calc(2.5vw + 4px);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}
@media (max-width: 780px) {
  #modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div,
  #modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div {
      width: calc(5vw + 10px);
      height: calc(5vw + 10px);
  }
}

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div:hover {
    background-color: rgba(246, 252, 255, 0.4);
}

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div {
    width: calc(0.8vw + 10px);
    height: calc(0.8vw + 10px);
    position: relative;
}
@media (max-width: 780px) {
  #modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div,
  #modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div {
      width: calc(2vw + 8px); /* Mobile responsive width */
      height: calc(2vw + 8px); /* Mobile responsive height */
  }
}

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div {
    position: absolute;
    width: 100% !important;
    height: 2px !important;
    top: 50%;
    left: 0;
    background-color: #000;
}

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:first-child {
    transform: translateY(-50%) rotate(45deg);
}

#modal1>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal2>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal3>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal4>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal5>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal6>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal7>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal8>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal9>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal10>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal11>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal12>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal13>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal14>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal15>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child,
#modal16>div>div>div>div>div>div:nth-child(1)>div>div>div>div>div>div>div>div:last-child {
    transform: translateY(-50%) rotate(-45deg);
}


/*モーダルのコンテンツ*/


/* Apply styles to all modals from modal1 through modal16 */

#modal1>div>div>div>div,
#modal2>div>div>div>div,
#modal3>div>div>div>div,
#modal4>div>div>div>div,
#modal5>div>div>div>div,
#modal6>div>div>div>div,
#modal7>div>div>div>div,
#modal8>div>div>div>div,
#modal9>div>div>div>div,
#modal10>div>div>div>div,
#modal11>div>div>div>div,
#modal12>div>div>div>div,
#modal13>div>div>div>div,
#modal14>div>div>div>div,
#modal15>div>div>div>div,
#modal16>div>div>div>div {
    position: fixed;
    top: 50%;
    left: calc(50% - 62px);
    opacity: 0;
    transform: translate(-50%, -40%);
    width: calc(100% - 124px);
    margin: 0 62px;
    z-index: 1000;
    filter: blur(10px);
}

#modal1.modal-visible>div>div>div>div,
#modal2.modal-visible>div>div>div>div,
#modal3.modal-visible>div>div>div>div,
#modal4.modal-visible>div>div>div>div,
#modal5.modal-visible>div>div>div>div,
#modal6.modal-visible>div>div>div>div,
#modal7.modal-visible>div>div>div>div,
#modal8.modal-visible>div>div>div>div,
#modal9.modal-visible>div>div>div>div,
#modal10.modal-visible>div>div>div>div,
#modal11.modal-visible>div>div>div>div,
#modal12.modal-visible>div>div>div>div,
#modal13.modal-visible>div>div>div>div,
#modal14.modal-visible>div>div>div>div,
#modal15.modal-visible>div>div>div>div,
#modal16.modal-visible>div>div>div>div {
    animation: modalFadeIn 0.8s ease-out both;
}

#modal1.modal-closing>div>div>div>div,
#modal2.modal-closing>div>div>div>div,
#modal3.modal-closing>div>div>div>div,
#modal4.modal-closing>div>div>div>div,
#modal5.modal-closing>div>div>div>div,
#modal6.modal-closing>div>div>div>div,
#modal7.modal-closing>div>div>div>div,
#modal8.modal-closing>div>div>div>div,
#modal9.modal-closing>div>div>div>div,
#modal10.modal-closing>div>div>div>div,
#modal11.modal-closing>div>div>div>div,
#modal12.modal-closing>div>div>div>div,
#modal13.modal-closing>div>div>div>div,
#modal14.modal-closing>div>div>div>div,
#modal15.modal-closing>div>div>div>div,
#modal16.modal-closing>div>div>div>div {
    animation: modalFadeOut 0.8s ease-out both;
}

#modal1>div>div>div>div>div>div:nth-child(1),
#modal2>div>div>div>div>div>div:nth-child(1),
#modal3>div>div>div>div>div>div:nth-child(1),
#modal4>div>div>div>div>div>div:nth-child(1),
#modal5>div>div>div>div>div>div:nth-child(1),
#modal6>div>div>div>div>div>div:nth-child(1),
#modal7>div>div>div>div>div>div:nth-child(1),
#modal8>div>div>div>div>div>div:nth-child(1),
#modal9>div>div>div>div>div>div:nth-child(1),
#modal10>div>div>div>div>div>div:nth-child(1),
#modal11>div>div>div>div>div>div:nth-child(1),
#modal12>div>div>div>div>div>div:nth-child(1),
#modal13>div>div>div>div>div>div:nth-child(1),
#modal14>div>div>div>div>div>div:nth-child(1),
#modal15>div>div>div>div>div>div:nth-child(1),
#modal16>div>div>div>div>div>div:nth-child(1) {
    position: absolute;
    top: 0.25vw;
    right: 0.25vw;
    transform: translate(50%, -50%);
    z-index: 2;
}

#modal1>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal2>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal3>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal4>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal5>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal6>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal7>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal8>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal9>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal10>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal11>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal12>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal13>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal14>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal15>div>div>div>div>div>div:nth-child(2)>div>div>div,
#modal16>div>div>div>div>div>div:nth-child(2)>div>div>div {
    display: flex;
    background-color: #fff;
    overflow: auto;
}

#modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
#modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1) {
    padding: calc(5.56vw + 0px) calc(9.86vw + 0px) calc(5.56vw + 0px) calc(5.56vw + 0px);
    /* 1440pxで約80px 142px 80px 80px */
    width: 100%;
    flex: 1;
}

#modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
#modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) {
    width: calc(42.22vw) !important;
    /* 1440pxで608px */
    min-width: calc(42.22vw) !important;
    /* 1440pxで608px */
    aspect-ratio: 608 / 378;
    /* 608x378のアスペクト比を維持 */
}

#modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img,
#modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) img {
    height: 100%;
    object-fit: cover;
}

#modal1 .text p:nth-child(1),
#modal2 .text p:nth-child(1),
#modal3 .text p:nth-child(1),
#modal4 .text p:nth-child(1),
#modal5 .text p:nth-child(1),
#modal6 .text p:nth-child(1),
#modal7 .text p:nth-child(1),
#modal8 .text p:nth-child(1),
#modal9 .text p:nth-child(1),
#modal10 .text p:nth-child(1),
#modal11 .text p:nth-child(1),
#modal12 .text p:nth-child(1),
#modal13 .text p:nth-child(1),
#modal14 .text p:nth-child(1),
#modal15 .text p:nth-child(1),
#modal16 .text p:nth-child(1) {
    font-family: 'Shippori Mincho B1', serif;
    font-style: normal;
    font-weight: 500;
    color: #0B3282;
    margin-bottom: 0;
}

#modal1 .text p:nth-child(1) span,
#modal2 .text p:nth-child(1) span,
#modal3 .text p:nth-child(1) span,
#modal4 .text p:nth-child(1) span,
#modal5 .text p:nth-child(1) span,
#modal6 .text p:nth-child(1) span,
#modal7 .text p:nth-child(1) span,
#modal8 .text p:nth-child(1) span,
#modal9 .text p:nth-child(1) span,
#modal10 .text p:nth-child(1) span,
#modal11 .text p:nth-child(1) span,
#modal12 .text p:nth-child(1) span,
#modal13 .text p:nth-child(1) span,
#modal14 .text p:nth-child(1) span,
#modal15 .text p:nth-child(1) span,
#modal16 .text p:nth-child(1) span {
    font-size: calc(1vw + 1.6px);
    /* 1440pxで約16px */
}

#modal1 .text p:nth-child(2),
#modal2 .text p:nth-child(2),
#modal3 .text p:nth-child(2),
#modal4 .text p:nth-child(2),
#modal5 .text p:nth-child(2),
#modal6 .text p:nth-child(2),
#modal7 .text p:nth-child(2),
#modal8 .text p:nth-child(2),
#modal9 .text p:nth-child(2),
#modal10 .text p:nth-child(2),
#modal11 .text p:nth-child(2),
#modal12 .text p:nth-child(2),
#modal13 .text p:nth-child(2),
#modal14 .text p:nth-child(2),
#modal15 .text p:nth-child(2),
#modal16 .text p:nth-child(2) {
    font-family: 'Shippori Mincho B1', serif;
    font-style: normal;
    font-weight: 500;
    color: #0B3282;
    margin-bottom: 1em;
}

#modal1 .text p:nth-child(2) span,
#modal2 .text p:nth-child(2) span,
#modal3 .text p:nth-child(2) span,
#modal4 .text p:nth-child(2) span,
#modal5 .text p:nth-child(2) span,
#modal6 .text p:nth-child(2) span,
#modal7 .text p:nth-child(2) span,
#modal8 .text p:nth-child(2) span,
#modal9 .text p:nth-child(2) span,
#modal10 .text p:nth-child(2) span,
#modal11 .text p:nth-child(2) span,
#modal12 .text p:nth-child(2) span,
#modal13 .text p:nth-child(2) span,
#modal14 .text p:nth-child(2) span,
#modal15 .text p:nth-child(2) span,
#modal16 .text p:nth-child(2) span {
    font-size: calc(2vw + 3.2px);
    /* 1440pxで約32px */
}

#modal1 .text p:nth-child(3),
#modal2 .text p:nth-child(3),
#modal3 .text p:nth-child(3),
#modal4 .text p:nth-child(3),
#modal5 .text p:nth-child(3),
#modal6 .text p:nth-child(3),
#modal7 .text p:nth-child(3),
#modal8 .text p:nth-child(3),
#modal9 .text p:nth-child(3),
#modal10 .text p:nth-child(3),
#modal11 .text p:nth-child(3),
#modal12 .text p:nth-child(3),
#modal13 .text p:nth-child(3),
#modal14 .text p:nth-child(3),
#modal15 .text p:nth-child(3),
#modal16 .text p:nth-child(3) {
    font-family: 'Shippori Mincho B1', serif;
    font-style: normal;
    font-weight: 500;
    color: #333333;
    font-size: calc(1vw + 1.6px);
    /* 1440pxで約16px */
    line-height: 2;
}


/*inner modal close*/

#modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
#modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div {
    display: none;
}

@media (max-width: 780px) {
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div {
        display: block;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text p {
        font-family: 'Shippori Mincho B1', serif;
        font-style: normal;
        font-weight: 500;
        color: #333333;
        font-size: calc(1.8vw + 4px);
        /* 16px responsive */
        margin-bottom: 0 !important;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: calc(4vw + 8.8px);
        /* 48px responsive */
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: calc(1.5vw + 4.3px);
        /* 16px responsive */
        max-width: calc(18vw + 54.6px);
        /* 195px responsive */
        height: calc(5vw + 21px);
        /* 60px responsive */
        background: #FFFFFF;
        border: 1px solid #EEEEEE;
        border-radius: 100px;
        cursor: pointer;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div {
        transition: all 0.3s ease;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div:hover {
        background-color: rgba(246, 252, 255, 0.4);
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div {
        width: calc(1.5vw + 4.3px);
        /* 16px responsive */
        height: calc(1.5vw + 4.3px);
        /* 16px responsive */
        position: relative;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div {
        position: absolute;
        width: 100% !important;
        height: 2px !important;
        top: 50%;
        left: 0;
        background-color: #000;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:first-child {
        transform: translateY(-50%) rotate(45deg);
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1)>div>div>div>.text+div>div>div>div>.text+div>div>div>div>div:last-child {
        transform: translateY(-50%) rotate(-45deg);
    }
}


/* レスポンシブ設定: 1600px以上 - 固定サイズ */

@media (min-width: 1600px) {
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1) {
        padding: 88px 156.2px 88px 88px;
        /* 80px/142px/80px/80pxの110% */
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) {
        width: 50% !important;
        /* 608pxの110% */
        min-width: 668.8px !important;
    }
    #modal1 .text p:nth-child(1) span,
    #modal2 .text p:nth-child(1) span,
    #modal3 .text p:nth-child(1) span,
    #modal4 .text p:nth-child(1) span,
    #modal5 .text p:nth-child(1) span,
    #modal6 .text p:nth-child(1) span,
    #modal7 .text p:nth-child(1) span,
    #modal8 .text p:nth-child(1) span,
    #modal9 .text p:nth-child(1) span,
    #modal10 .text p:nth-child(1) span,
    #modal11 .text p:nth-child(1) span,
    #modal12 .text p:nth-child(1) span,
    #modal13 .text p:nth-child(1) span,
    #modal14 .text p:nth-child(1) span,
    #modal15 .text p:nth-child(1) span,
    #modal16 .text p:nth-child(1) span {
        font-size: 17.6px;
        /* 16pxの110% */
    }
    #modal1 .text p:nth-child(2) span,
    #modal2 .text p:nth-child(2) span,
    #modal3 .text p:nth-child(2) span,
    #modal4 .text p:nth-child(2) span,
    #modal5 .text p:nth-child(2) span,
    #modal6 .text p:nth-child(2) span,
    #modal7 .text p:nth-child(2) span,
    #modal8 .text p:nth-child(2) span,
    #modal9 .text p:nth-child(2) span,
    #modal10 .text p:nth-child(2) span,
    #modal11 .text p:nth-child(2) span,
    #modal12 .text p:nth-child(2) span,
    #modal13 .text p:nth-child(2) span,
    #modal14 .text p:nth-child(2) span,
    #modal15 .text p:nth-child(2) span,
    #modal16 .text p:nth-child(2) span {
        font-size: 35.2px;
        /* 32pxの110% */
    }
    #modal1 .text p:nth-child(3),
    #modal2 .text p:nth-child(3),
    #modal3 .text p:nth-child(3),
    #modal4 .text p:nth-child(3),
    #modal5 .text p:nth-child(3),
    #modal6 .text p:nth-child(3),
    #modal7 .text p:nth-child(3),
    #modal8 .text p:nth-child(3),
    #modal9 .text p:nth-child(3),
    #modal10 .text p:nth-child(3),
    #modal11 .text p:nth-child(3),
    #modal12 .text p:nth-child(3),
    #modal13 .text p:nth-child(3),
    #modal14 .text p:nth-child(3),
    #modal15 .text p:nth-child(3),
    #modal16 .text p:nth-child(3) {
        font-size: 17.6px;
        /* 16pxの110% */
    }
}


/* レスポンシブ設定: 780px〜1360px - リキッド */

@media (min-width: 781px) and (max-width: 1359px) {
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1) {
        padding: calc(5vw + 12px) calc(8.5vw + 24.4px) calc(5vw + 12px) calc(5vw + 12px);
        /* 1360pxで約80px 140px 80px 80px */
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) {
        width: calc(44.7vw) !important;
        /* 1360pxで約608px */
        min-width: calc(44.7vw) !important;
    }
    #modal1 .text p:nth-child(1) span,
    #modal2 .text p:nth-child(1) span,
    #modal3 .text p:nth-child(1) span,
    #modal4 .text p:nth-child(1) span,
    #modal5 .text p:nth-child(1) span,
    #modal6 .text p:nth-child(1) span,
    #modal7 .text p:nth-child(1) span,
    #modal8 .text p:nth-child(1) span,
    #modal9 .text p:nth-child(1) span,
    #modal10 .text p:nth-child(1) span,
    #modal11 .text p:nth-child(1) span,
    #modal12 .text p:nth-child(1) span,
    #modal13 .text p:nth-child(1) span,
    #modal14 .text p:nth-child(1) span,
    #modal15 .text p:nth-child(1) span,
    #modal16 .text p:nth-child(1) span {
        font-size: calc(0.9vw + 1.8px);
        /* 1360pxで約14px */
    }
    #modal1 .text p:nth-child(2) span,
    #modal2 .text p:nth-child(2) span,
    #modal3 .text p:nth-child(2) span,
    #modal4 .text p:nth-child(2) span,
    #modal5 .text p:nth-child(2) span,
    #modal6 .text p:nth-child(2) span,
    #modal7 .text p:nth-child(2) span,
    #modal8 .text p:nth-child(2) span,
    #modal9 .text p:nth-child(2) span,
    #modal10 .text p:nth-child(2) span,
    #modal11 .text p:nth-child(2) span,
    #modal12 .text p:nth-child(2) span,
    #modal13 .text p:nth-child(2) span,
    #modal14 .text p:nth-child(2) span,
    #modal15 .text p:nth-child(2) span,
    #modal16 .text p:nth-child(2) span {
        font-size: calc(1.8vw + 3.5px);
        /* 1360pxで約28px */
    }
    #modal1 .text p:nth-child(3),
    #modal2 .text p:nth-child(3),
    #modal3 .text p:nth-child(3),
    #modal4 .text p:nth-child(3),
    #modal5 .text p:nth-child(3),
    #modal6 .text p:nth-child(3),
    #modal7 .text p:nth-child(3),
    #modal8 .text p:nth-child(3),
    #modal9 .text p:nth-child(3),
    #modal10 .text p:nth-child(3),
    #modal11 .text p:nth-child(3),
    #modal12 .text p:nth-child(3),
    #modal13 .text p:nth-child(3),
    #modal14 .text p:nth-child(3),
    #modal15 .text p:nth-child(3),
    #modal16 .text p:nth-child(3) {
        font-size: calc(0.9vw + 1.8px);
        /* 1360pxで約14px */
    }
}


/* レスポンシブ設定: 780px以下 - モバイル対応 */

@media (max-width: 780px) {
    #modal1>div>div>div>div,
    #modal2>div>div>div>div,
    #modal3>div>div>div>div,
    #modal4>div>div>div>div,
    #modal5>div>div>div>div,
    #modal6>div>div>div>div,
    #modal7>div>div>div>div,
    #modal8>div>div>div>div,
    #modal9>div>div>div>div,
    #modal10>div>div>div>div,
    #modal11>div>div>div>div,
    #modal12>div>div>div>div,
    #modal13>div>div>div>div,
    #modal14>div>div>div>div,
    #modal15>div>div>div>div,
    #modal16>div>div>div>div {
        width: calc(100% - 48px);
        margin: 0 auto;
        left: 50%;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div,
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div {
        flex-direction: column-reverse;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(1) {
        padding: calc(4vw) calc(5vw + 16px) calc(5vw + 8px);
        /* モバイルでの適切なパディング */
        width: 100%;
    }
    #modal1>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal2>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal3>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal4>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal5>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal6>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal7>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal8>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal9>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal10>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal11>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal12>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal13>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal14>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal15>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2),
    #modal16>div>div>div>div>div>div:nth-child(2)>div>div>div>div:nth-child(2) {
        width: 100% !important;
        min-width: 100% !important;
        height: auto;
        aspect-ratio: 608 / 378;
        /* アスペクト比は維持 */
    }
    #modal1 .text p:nth-child(1) span,
    #modal2 .text p:nth-child(1) span,
    #modal3 .text p:nth-child(1) span,
    #modal4 .text p:nth-child(1) span,
    #modal5 .text p:nth-child(1) span,
    #modal6 .text p:nth-child(1) span,
    #modal7 .text p:nth-child(1) span,
    #modal8 .text p:nth-child(1) span,
    #modal9 .text p:nth-child(1) span,
    #modal10 .text p:nth-child(1) span,
    #modal11 .text p:nth-child(1) span,
    #modal12 .text p:nth-child(1) span,
    #modal13 .text p:nth-child(1) span,
    #modal14 .text p:nth-child(1) span,
    #modal15 .text p:nth-child(1) span,
    #modal16 .text p:nth-child(1) span {
        font-size: calc(1.8vw + 2px);
        /* モバイルでも読みやすいサイズに */
    }
    #modal1 .text p:nth-child(2), #modal2 .text p:nth-child(2), #modal3 .text p:nth-child(2), #modal4 .text p:nth-child(2), #modal5 .text p:nth-child(2), #modal6 .text p:nth-child(2), #modal7 .text p:nth-child(2), #modal8 .text p:nth-child(2), #modal9 .text p:nth-child(2), #modal10 .text p:nth-child(2), #modal11 .text p:nth-child(2), #modal12 .text p:nth-child(2), #modal13 .text p:nth-child(2), #modal14 .text p:nth-child(2), #modal15 .text p:nth-child(2), #modal16 .text p:nth-child(2) {
      margin-bottom: 0.6em;
    }
    #modal1 .text p:nth-child(2) span,
    #modal2 .text p:nth-child(2) span,
    #modal3 .text p:nth-child(2) span,
    #modal4 .text p:nth-child(2) span,
    #modal5 .text p:nth-child(2) span,
    #modal6 .text p:nth-child(2) span,
    #modal7 .text p:nth-child(2) span,
    #modal8 .text p:nth-child(2) span,
    #modal9 .text p:nth-child(2) span,
    #modal10 .text p:nth-child(2) span,
    #modal11 .text p:nth-child(2) span,
    #modal12 .text p:nth-child(2) span,
    #modal13 .text p:nth-child(2) span,
    #modal14 .text p:nth-child(2) span,
    #modal15 .text p:nth-child(2) span,
    #modal16 .text p:nth-child(2) span {
        font-size: calc(4.5vw + 6px);
        /* モバイルでも読みやすいサイズに */
    }
    #modal1 .text p:nth-child(3),
    #modal2 .text p:nth-child(3),
    #modal3 .text p:nth-child(3),
    #modal4 .text p:nth-child(3),
    #modal5 .text p:nth-child(3),
    #modal6 .text p:nth-child(3),
    #modal7 .text p:nth-child(3),
    #modal8 .text p:nth-child(3),
    #modal9 .text p:nth-child(3),
    #modal10 .text p:nth-child(3),
    #modal11 .text p:nth-child(3),
    #modal12 .text p:nth-child(3),
    #modal13 .text p:nth-child(3),
    #modal14 .text p:nth-child(3),
    #modal15 .text p:nth-child(3),
    #modal16 .text p:nth-child(3) {
        font-size: calc(2.6vw + 2px);
        /* モバイルでも読みやすいサイズに */
        line-height: 1.8;
    }
}


/* ==============================================================
   modal の中身 end
============================================================== */


/* ==============================================================
   animation用のクラス
============================================================== */

#section-title-wrap1,
#section2-txt,
#section3-cont1>div>.image+div>div,
#section2-title,
#section3-title,
#section4-title,
#container-6596a1faa2,
#section4>div>div:nth-child(3) >div >div,
#section-title-wrap5-2,
#question1,
#question3,
#question2,
#section9-title,
#section9-cont1,
#section9-cont2,
#section9-cont3,
#section9-cont4,
#section9-cont5,
#section9-cont6,
#section9-cont7,
#section10-wrap,
#section11-wrap,
#section12-txt,
#section12-grid {
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.4s ease-in-out;
}

#section-title-wrap1.is-active,
#section2-txt.is-active,
#section3-cont1>div>.image+div>div.is-active,
#section2-title.is-active,
#section3-title.is-active,
#section4-title.is-active,
#container-6596a1faa2.is-active,
#section4>div>div:nth-child(3) >div >div.is-active,
#section-title-wrap5-2.is-active,
#question1.is-active,
#question3.is-active,
#question2.is-active,
#section9-title.is-active,
#section9-cont1.is-active,
#section9-cont2.is-active,
#section9-cont3.is-active,
#section9-cont4.is-active,
#section9-cont5.is-active,
#section9-cont6.is-active,
#section9-cont7.is-active,
#section10-wrap.is-active,
#section11-wrap.is-active,
#section12-txt.is-active,
#section12-grid.is-active {
    opacity: 1;
    transform: translateY(0);
}

#section3-cont1>div>.image,
#section4>div>div:nth-child(2) >div >div {
    opacity: 0;
    transform: translateY(10px) scale(0.9);
    transition: all 0.8s ease-in-out;
}

#section3-cont1>div>.image.is-active,
#section4>div>div:nth-child(2) >div >div.is-active {
    opacity: 1;
    transform: translateY(10px) scale(1);
}

#modal-btn-wrap1,
#modal-btn-wrap2,
#modal-btn-wrap3,
#modal-btn-wrap4 {
    opacity: 0;
    filter: blur(10px);
    transition: all 0.4s ease-in-out;
}

#modal-btn-wrap1.is-active,
#modal-btn-wrap2.is-active,
#modal-btn-wrap3.is-active,
#modal-btn-wrap4.is-active {
    opacity: 1;
    filter: blur(0);
}

/* YouTubeモーダル用スタイル */
#section3-cont button+* {
    position: fixed;
    top: 0;
    left: 0;
}
#section3-cont button+* > div {
    display: none;
}
.cmp-youtube.cmp-youtube-stretch+div {display: none;}
#youtube-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1000;
  width: 80%;
  max-width: 1200px;
  background: transparent;
  visibility: hidden;
}
#youtube-modal #section3-cont button+* {
    position: absolute;
}
#youtube-modal #section3-cont button+* > div {
    display: block;
}

#youtube-modal.modal-visible {
  visibility: visible;
}

#youtube-modal > div {
  opacity: 0;
  transform: translate(0%, 5%);
  filter: blur(10px);
}
#youtube-modal.modal-visible > div {
  animation: modalFadeIn-youtube 0.6s ease-out both;
}

#youtube-modal.modal-closing > div {
  animation: modalFadeOut-youtube 0.6s ease-out both;
}

.youtube-modal-close-container {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
  z-index: 2;
}

.youtube-modal-close {
  background-color: #0B3282;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(5px);
  transition: all 0.3s ease;
}

.youtube-modal-close:hover {
  background-color: rgba(11, 50, 130,0.8);
}

.close-icon {
  width: 16px;
  height: 16px;
  position: relative;
}

.close-line {
  position: absolute;
  width: 100%;
  height: 2px;
  top: 50%;
  left: 0;
  background-color: #fff;
}

.close-line:first-child {
  transform: translateY(-50%) rotate(45deg);
}

.close-line:last-child {
  transform: translateY(-50%) rotate(-45deg);
}

.youtube-modal-content-container {
  position: relative;
  padding-top: 56.25%; /* 16:9のアスペクト比 */
  width: 100%;
}
.youtube-modal-content-container > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* モーダル内のYouTubeコンテンツスタイル調整 */
.youtube-modal-content-container #section3-cont button+* {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* レスポンシブ対応 */
@media (max-width: 780px) {
  #youtube-modal {
    width: calc(100% - 40px);
  }
}


@keyframes modalFadeIn-youtube {
    from {
        opacity: 0;
        transform: translate(0%, 5%);
        filter: blur(10px);
    }
    to {
        opacity: 1;
        transform: translate(0%, 0%);
        filter: blur(0);
    }
}

@keyframes modalFadeOut-youtube {
    from {
        opacity: 1;
        transform: translate(0%, 0%);
        filter: blur(0px);
    }
    to {
        opacity: 0;
        transform: translate(0%, 5%);
        filter: blur(10px);
    }
}


/* =========================================
   #section12
   ========================================= */
#section12 {
    padding-left: calc(4vw + 4px);
    padding-right: calc(4vw + 4px);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
    margin-top: 110px;
}
#section12-grid > .aem-Grid {
    margin-top: 110px;
}
@media (min-width: 1600px) {
    #section12,#section12-grid > .aem-Grid {
        margin-top: 121px;
        /* 110px の 110% */
    }
}
@media (min-width: 781px) and (max-width: 1359px) {
    #section12 {
        margin-top: calc(7vw + 14.8px);
        padding-left: calc(3.5vw + 4px);
        padding-right: calc(3.5vw + 4px);
    }
    #section12-grid > .aem-Grid {
        margin-top: calc(7vw + 14.8px);
    }
}
@media (max-width: 780px) {
    #section12 {
        margin-top: calc(10vw + 72px);
        padding-left: calc(10vw + 4px);
        padding-right: calc(10vw + 4px);
    }
    #section12-grid > .aem-Grid {
        margin-top: calc(10vw + 12px);
    }
}
#section12 *::before,
#section12 *::after {
  display: none;
}

/* 大見出し - 68px基準 */

#section12-txt >div>div:nth-child(1) p span {
    font-size: calc(3.3vw + 0.4px);
    line-height: 1.5;
    display: inline-block;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    /* letter-spacing: -0.1em; */
}
#section12-txt >div>div:nth-child(2) p {
    font-size: calc(1.1vw + 4px);
    /* 1440pxで約20px */
    line-height: 1.8;
    font-family: 'Shippori Mincho B1', serif;
    margin-top: 2em;
}
#section12-grid p {
    font-size: calc(0.8vw + 2.5px);
    font-family: 'Shippori Mincho B1', serif;
}
@media (min-width: 1600px) {
    #section12-txt >div>div:nth-child(1) p span {
        font-size: 52.8px;
    }
    #section12-txt >div>div:nth-child(2) p {
        font-size: 22px;
        /* 20pxの110% */
    }
    #section12-grid p {
        font-size: 15.4px;
    }
}
@media (min-width: 781px) and (max-width: 1359px) {
    #section12-txt >div>div:nth-child(2) p {
        font-size: calc(1vw + 4px);
        /* 1360pxで約18px */
    }
}
@media (max-width: 780px) {
    
    #section12-txt >div>div:nth-child(1) p span {
        font-size: calc(7vw + 5px) !important;
        /* モバイルでも読みやすいサイズに */
    }
    #section12-txt >div>div:nth-child(2) p {
        font-size: calc(2vw + 8px) !important;
        text-align: left !important;
        /* モバイルでの最小サイズを確保 */
    }
    #section12-grid p {
        font-size: calc(2.2vw + 6px) !important;
        margin-top: -20px;
        line-height: 1.5;
    }
}


@media (min-width: 768px) {

  /* --------------------------------------------------------
     1. 大枠のレイアウト（3カラム構成）
     固定ID: #section12-grid を起点にする
  -------------------------------------------------------- */
  #section12-grid > .aem-Grid {
    display: grid;
    grid-template-columns: 1fr 2fr 1fr; /* 左・中央(2倍)・右 */
    gap: calc(3.5vw + 4px); /* カラム間の大きな余白 */
    align-items: start;
  }

  /* 直下の子要素（カラム）のスタイルリセット */
  #section12-grid > .aem-Grid > .aem-GridColumn {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
  }

  /* --------------------------------------------------------
     2. 中央エリア（Waves Place & Streamer Times）
     固定ID: #section12-center-grid を起点にする
  -------------------------------------------------------- */
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 内部を2分割 */
    gap: 0;
  }

  #section12-center-grid > .aem-Grid > .aem-GridColumn {
    width: auto !important;
    padding: 0 !important;
  }

  /* --- 配置の強制変更 (Grid Area) --- */
  
  /* 2つ目の画像 (Waves Img: 1番目の要素) */
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div >div>div>div>div>div:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
  }

  /* 2つ目のロゴ (Waves Logo: 2番目の要素) */
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div >div>div>div>div>div:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
    margin: 30px 0;
    display: flex;
    justify-content: center;
  }

  /* 3つ目の画像 (Streamer Img: 3番目の要素) */
  #section12-center-grid > .aem-Grid > div:nth-child(2) >div>div>div >div>div>div>div>div:nth-child(1) {
    grid-column: 2;
    grid-row: 1;
  }

  /* 3つ目のロゴ (Streamer Logo: 4番目の要素) */
  #section12-center-grid > .aem-Grid > div:nth-child(2) >div>div>div >div>div>div>div>div:nth-child(2) {
    grid-column: 2;
    grid-row: 2;
    margin: 30px 0;
    display: flex;
    justify-content: center;
  }

  /* 中央下のテキスト (5番目の要素) */
  #section12-center-grid > .aem-Grid > .aem-GridColumn:nth-child(5) {
    grid-column: 1 / span 2;
    grid-row: 3;
    margin-top: 10px;
  }


  /* --------------------------------------------------------
     3. 左右（Moflin / TONEBOOK）のロゴ位置調整
     #section12-grid の子要素（1番目と3番目）の中へ潜る
  -------------------------------------------------------- */
  
  /* 左カラム (Moflin) 内のグリッド制御 */
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(1) > .switch-container > .cmp-container > .aem-Grid {
    display: flex;
    flex-direction: column;
  }
  /* 左カラム内のロゴ（2番目の要素） */
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(1) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) {
    margin: 30px 0 !important;
    display: flex;
    justify-content: center;
  }

  /* 右カラム (TONEBOOK) 内のグリッド制御 */
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(3) > .switch-container > .cmp-container > .aem-Grid {
    display: flex;
    flex-direction: column;
  }
  /* 右カラム内のロゴ（2番目の要素） */
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(3) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) {
    margin: 30px 0 !important;
    display: flex;
    justify-content: center;
  }

  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(1) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) img,
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div >div>div>div>div>div:nth-child(2) img,
  #section12-center-grid > .aem-Grid > div:nth-child(2) >div>div>div >div>div>div>div>div:nth-child(2) img,
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(3) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) img {
    max-height: 75px;
  }
}

/* =========================================
   SP Layout (767px以下)
   ========================================= */
@media (max-width: 767px) {
  /* グリッドを解除して縦積みに */
  #section12-grid > .aem-Grid,
  #section12-center-grid > .aem-Grid {
    display: block !important;
  }

  /* カラム間のマージン */
  #section12 .aem-GridColumn {
    width: 100% !important;
    margin-bottom: 40px;
  }
  #section12-grid >div>div:first-child {
    margin-bottom: 60px;
  }
  #section12-grid >div>div:nth-child(2) {
    margin-bottom: -20px;
  }

  /* --- 中央エリア内のSP用余白調整 --- */
  
  /* Waves Logo (2番目) */
  #section12-center-grid > .aem-Grid > .aem-GridColumn:nth-child(2) {
     margin-top: 15px;
     margin-bottom: 50px;
     display: flex;
     justify-content: center;
  }
  
  /* Streamer Logo (4番目) */
  #section12-center-grid > .aem-Grid > .aem-GridColumn:nth-child(4) {
     margin-top: 15px;
     margin-bottom: 50px;
     display: flex;
     justify-content: center;
  }

  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(1) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2),
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div >div>div>div>div>div:nth-child(2),
  #section12-center-grid > .aem-Grid > div:nth-child(2) >div>div>div >div>div>div>div>div:nth-child(2),
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(3) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) {
    margin-top: -20px;
  } 

  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(1) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) img,
  #section12-center-grid > .aem-Grid > div:first-child >div>div>div >div>div>div>div>div:nth-child(2) img,
  #section12-center-grid > .aem-Grid > div:nth-child(2) >div>div>div >div>div>div>div>div:nth-child(2) img,
  #section12-grid > .aem-Grid > .aem-GridColumn:nth-child(3) > .switch-container > .cmp-container > .aem-Grid > .aem-GridColumn:nth-child(2) img {
    max-height: calc(22vw);
    margin: auto;
    width: auto !important;
  }
}