
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body.concept header li.nav-concept::after {
    display: block;
}

/* ==============================
  ページタイトル
============================== */
.page-title-wrap  {
    padding:  6.21% 0 6.32%;
}
.page-title-wrap h1 {
    width: 23.56%;
    margin: 0 auto;
}
.page-title-wrap h1 span.jp {
    display: block;
    width: 26.69%;
    margin: 0.7em auto 0;
}
.page-title-wrap p {
    width: 32.74%;
    margin: 4.54% auto 0;
}
.page-title-wrap p span {
    overflow: hidden;
}
@media print, screen and (max-width: 768px) {
    .page-title-wrap  {
        padding: 34.74vw 0 15.62vw;
    }
    .page-title-wrap h1 {
        width: 44.384vw;
    }
    .page-title-wrap h1 span.jp {
        width: 20.06vw;
        margin: 5.05vw auto 0;
        line-height: 1;
    }
    .page-title-wrap p {
        width: 45.02vw;
        margin: 9.7vw auto 0;
    }
    .page-title-wrap p .page-title-text01 {
        width: 44vw;
    }
    .page-title-wrap p .page-title-text02 {
        margin-top: 4.44vw;
    }
}

/* ==============================
  共通
============================== */
section {
    position: relative;
}
section + section {
    border-top: 1px solid #CCCCCC;
}

section .column-wrap .text-box h2 span.jp {
    margin: 1em 0 0;
    font-size: min(1.9vw, 2.6rem);
}
section .column-wrap .text-box p {
    font-size: min(1.09vw, 1.5rem);
}

section .column-wrap .text-box h3 span {
    overflow: hidden;
    display: block;
    line-height: 1;
    font-size: min(0.31vw, 4.3rem);
}
section .column-wrap .text-box h3 span + span {
    margin-top: 6.2em;
}
@media print, screen and (max-width: 768px) {
    section h2 {
        font-size: 1vw;
        line-height: 1;
        margin: 0 auto;
    }
    section h2::after {
        width: 10.2vw;
        margin: 7.6vw auto 0;
    }
    section .column-wrap .text-box h2 span.jp {
        margin: 5.65vw auto 0;
    }
    section .column-wrap .text-box p {
        font-size: 3.2vw;
    }


    section .column-wrap .text-box h3 span + span {
        margin-top: 5.78vw;
    }
}

/* ==============================
  Introduction
============================== */
#introduction {
    padding: 5.77% 0 7.43%;
    border-top: 1px solid #CCCCCC;
}
#introduction h2 {
    position: absolute;
    top: 11.15%;
    right: 10.23%;
    width: 32.7%;
    margin: 0 auto;
    z-index: 10;
}
#introduction h2::after {
    display: none;
}
#introduction h2 .introduction-text02 {
    width: 83.6%;
    margin: 9.66% 0 0;
}

#introduction .image-box.image01 {
    width: 60.29%;
}

#introduction .image-wrap {
    position: relative;
    margin-top: 7.76%;
}
#introduction .image-box.image02 {
    position: absolute;
    width: 23.31%;
    right: 5.32%;
    bottom: 91.67%;
}
#introduction .image-box.image03 {
    width: 29.15%;
    margin: 0 0 0 9.6%;
}
/* 画像の影 */
#introduction .image-box.image03::before {
    bottom: -12.11%;
    left: -10.08%;

    width:75.62%;

    aspect-ratio: 301 / 226;
}

#introduction .image-wrap p {
    position: absolute;
    top: 28.64%;
    left: 47.22%;
    font-size: min(1.09vw, 1.5rem);
    line-height: 2.2;
}
@media print, screen and (max-width: 768px) {
    #introduction {
        display: flex;
        flex-direction: column;
        padding:16.43vw 0 30.92vw;
    }
    #introduction h2 {
        order: 2;
        position: relative;
        top: 0;
        right: 0;
        width: 71.37vw;
        margin-top: 11.92vw;
    }
    #introduction h2 .introduction-text01 {
        width: 27.18vw;
        margin: 0 auto;
    }
    #introduction h2 .introduction-text02 {
        width: 100%;
        margin: 5.55vw 0 0;
    }

    #introduction .image-box.image01 {
        order: 1;
        width: 100%;
    }

    #introduction .image-wrap {
        order: 3;
        position: relative;
        margin-top: 12.93vw;
        padding-top: 61.64vw;
    }
    #introduction .image-box.image02 {
        position: relative;
        right: 0;
        bottom: 0;
        width: 52.9vw;
        margin: 11.52vw 0 0 auto;
    }
    #introduction .image-box.image03 {
        position: absolute;
        width: 64.72vw;
        top: 0;
        left: 7.45vw;
        margin: 0;
    }
    /* 画像の影 */
    #introduction .image-box.image03::before {
        bottom: -4.51vw;
        right: -4.37vw;
        left: auto;

        width: 34.52vw;

        aspect-ratio: 130 / 97;
    }

    #introduction .image-wrap p {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        text-align: center;
        font-size: 3.2vw;
    }
}


/* ==============================
  淡路夢舞台
============================== */
#yumebutai {
    padding: 9.05% 0 7.11%;
}

#yumebutai .column-wrap {
    justify-content: flex-end;
}
#yumebutai .column-wrap .image-box {
    order: 2;
    width: 55.17%;
}
#yumebutai .column-wrap .text-box {
    order: 1;
    width: 29.2%;
    margin-right: 6.26%;
}
#yumebutai .column-wrap .text-box h2 {
    width: 100%;
}
#yumebutai .column-wrap .text-box h2 span.en {
    width: 85.8%;
    margin-left: 0;
}
#yumebutai .column-wrap .text-box h2 span.jp {
    width: 37.22%;
}
#yumebutai .column-wrap .text-box h3 {
    width: 93.05%;
    margin: 11.73% 0 6.06%;
}
#yumebutai .column-wrap .text-box h3 .yumebutai-text01 {
    width: 52.44%;
}
#yumebutai .column-wrap .text-box h3 .yumebutai-text02 {
    width: 99.06%;
}


#yumebutai .image-wrap {
    margin-top: 7.10%;
}
#yumebutai .image-wrap .image-box.image02 {
    width: 34.10%;
    margin-left: 5.10%;
}
#yumebutai .image-wrap .image-box.image03 {
    position: absolute;
    top: 17.26%;
    right: 15.75%;
    width: 21.99%;
}
/* 画像の影 */
#yumebutai .image-wrap .image-box.image03::before {
    right: -11.63%;
    bottom: -19.05%;

    width: 88.9%;

    aspect-ratio: 301 / 226;
}
@media print, screen and (max-width: 768px) {
    #yumebutai {
        padding: 55.37vw 0 26.54vw;
    }

    #yumebutai .column-wrap {
        justify-content: flex-end;
    }
    #yumebutai .column-wrap .image-box {
        order: 1;
        width: 92.66vw;
        margin: 0 0 0 auto;
    }
    #yumebutai .column-wrap .text-box {
        order: 2;
        width: 85.33vw;
        margin: 0 auto;
    }
    #yumebutai .column-wrap .text-box h2 {
        position: absolute;
        top: 16.87vw;
        right: 0;
        left: 0;
        width: 47.753vw;
        margin: 0 auto;
    }
    #yumebutai .column-wrap .text-box h2 span.en {
        margin: 0 auto;
    }
    #yumebutai .column-wrap .text-box h2 span.jp {
        width: 20.423vw;
    }
    #yumebutai .column-wrap .text-box h3 {
        width: 55.89vw;
        margin: 7.47vw 0 7.88vw;
    }
    #yumebutai .column-wrap .text-box h3 .yumebutai-text01 {
        width: 100%;
    }
    #yumebutai .column-wrap .text-box h3 .yumebutai-text02 {
        width: 94.75%;
    }
    #yumebutai .column-wrap .text-box h3 .yumebutai-text03 {
        width: 77.4%;
        margin-left: 3em;
    }


    #yumebutai .image-wrap {
        margin-top: 17.98vw;
    }
    #yumebutai .image-wrap .image-box.image02 {
        width: 72vw;
        margin-left:0;
    }
    #yumebutai .image-wrap .image-box.image03 {
        position: relative;
        top: 0;
        right: 0;
        width: 69.3vw;
        margin: 16.77vw 7.68vw 0 auto;
    }
    /* 画像の影 */
    #yumebutai .image-wrap .image-box.image03::before {
        right: -12.75%;
        bottom: -18.9%;

        aspect-ratio: 206 / 155;
    }
}


/* ==============================
  誓い
============================== */
#ceremony {
    padding: 7.89% 0 6.41%;
}

#ceremony .column-wrap {
    justify-content: flex-start;
}
#ceremony .column-wrap .image-box {
    width: 49.45%;
}
#ceremony .column-wrap .text-box {
    width: 30.65%;
    margin-left: 5.38%;
}
#ceremony .column-wrap .text-box h2 {
    width: 91.35%;
}
#ceremony .column-wrap .text-box h2 span.jp {
    width: 14.14%;
}
#ceremony .column-wrap .text-box h3 {
    width: 84.92%;
    margin: 12.04% 0 6.24%;
}
#ceremony .column-wrap .text-box h3 .ceremony-text01 {
    width: 100%;
}
#ceremony .column-wrap .text-box h3 .ceremony-text02 {
    width: 64.81%;
}

#ceremony .image-wrap {
    margin-top: 5.65%;
}
#ceremony .image-wrap .image-box.image02 {
    width: 35.8%;
    position: absolute;
    top: -165.11%;
    right: 5.46%;
}
#ceremony .image-wrap .image-box.image03 {
    width: 31.27%;
    margin-left: 33.57%;
}
/* 画像の影 */
#ceremony .image-wrap .image-box.image03::before {
    left: -9.4%;
    bottom: -13.03%;

    width: 55.81%;

    aspect-ratio: 239 / 179;
}
#ceremony .image-wrap .image-box.image04 {
    position: absolute;
    top: -13.03%;
    right: 10.42%;
    width: 16.67%;
}
@media print, screen and (max-width: 768px) {
    #ceremony {
        padding: 51.73vw 0 23.44vw;
    }

    #ceremony .column-wrap {
    }
    #ceremony .column-wrap .image-box {
        position: relative;
        width: 92.66vw;
        margin: 0 0 0 auto;
    }
    /* 画像の影 */
    #ceremony .column-wrap .image-box::before {
        left: -7.92%;
        bottom: -6.97%;

        width: 37.17%;

        aspect-ratio: 130 / 127;
    }
    #ceremony .column-wrap .text-box {
        width: 85.33vw;
        margin: 0 auto;
    }
    #ceremony .column-wrap .text-box h2 {
        position: absolute;
        top: 16.97vw;
        right: 0;
        left: 0;
        width: 52.67vw;
    }
    #ceremony .column-wrap .text-box h2 span.jp {
        width: 7.25vw;
    }
    #ceremony .column-wrap .text-box h3 {
        width: 61.51vw;
        margin: 16.57vw 0 8.08vw;
    }
    #ceremony .column-wrap .text-box h3 .ceremony-text01 {
        width: 55.76%;
    }
    #ceremony .column-wrap .text-box h3 .ceremony-text02 {
        width: 95.61%;
    }
    #ceremony .column-wrap .text-box h3 .ceremony-text02 {
        width: 99.93%;
    }


    #ceremony .image-wrap {
        margin-top: 13.81vw;
        display: flex;
        flex-direction: column;
    }
    #ceremony .image-wrap .image-box.image02 {
        width: 82.32vw;
        position: relative;
        top: 0;
        right: 0;
        margin: 0 0 0 auto;
        order: 1;
    }
    #ceremony .image-wrap .image-box.image03 {
        width: 66.66vw;
        margin: 14.4vw 0 0;
        order: 3;
    }
    /* 画像の影 */
    #ceremony .image-wrap .image-box.image03::before {
        left: auto;
        right: -9.01%;
        bottom: -12.93%;

        width: 55.81%;

        aspect-ratio: 4 / 3;
    }
    #ceremony .image-wrap .image-box.image04 {
        order: 2;
        position: relative;
        top: 0;
        right: 0;
        width: 50.66vw;
        margin: 14.85vw 10.4vw 0 auto;
    }
}

/* ==============================
  記憶
============================== */
#memory {
    padding: 7.12% 0 7.2%;
}

#memory .column-wrap {
    justify-content: flex-end;
}
#memory .column-wrap .image-box {
    order: 2;
    width: 55.96%;
}
#memory .column-wrap .text-box {
    order: 1;
    width: 33.55%;
    margin-right: 3.87%;
}
#memory .column-wrap .text-box h2 {
    width: 70.21%;
}
#memory .column-wrap .text-box h2 span.jp {
    width: 18.06%;
}
#memory .column-wrap .text-box h3 {
    width: 87.38%;
    margin: 8.48% 0 6.18%;
}
#memory .column-wrap .text-box h3 .memory-text01 {
    width: 77.15%;
}
#memory .column-wrap .text-box h3 .memory-text02 {
    width: 100%;
}

#memory .image_list-wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 85.84%;
    margin: 7.24% auto 6.4%;
}
#memory .image_list-wrap .swiper-wrapper {
    justify-content: space-between;    
}
#memory .image_list-wrap .swiper-slide {
    width: 19.35%;
}

#memory .image-wrap .image-box.image02 {
    width: 44.03%;
    margin-left: 5.22%;
}
#memory .image-wrap .image-box.image03 {
    width: 24.32%;
    position: absolute;
    top: 32.17%;
    right: 8.85%;
}
/* 画像の影 */
#memory .image-wrap .image-box.image03::before {
    right: -13.38%;
    bottom: -18.26%;

    width: 79.12%;

    aspect-ratio: 263 / 200;
}
@media print, screen and (max-width: 768px) {
    #memory {
        padding: 61.03vw 0 26.67vw;
    }

    #memory .column-wrap {
    }
    #memory .column-wrap .image-box {
        order: 1;
        width: 92.53vw;
        margin: 0 0 0 auto;
    }
    #memory .column-wrap .text-box {
        order: 2;
        width: 84.8vw;
        margin: 0 auto;
    }
    #memory .column-wrap .text-box h2 {
        position: absolute;
        top: 22.63vw;
        right: 0;
        left: 0;
        width: 41.71vw;
    }
    #memory .column-wrap .text-box h2 span.jp {
        width: 7.37vw;
    }
    #memory .column-wrap .text-box h3 {
        width: 77.33vw;
        margin: 12.83vw 0 9.6vw;
    }
    #memory .column-wrap .text-box h3 .memory-text01 {
        width: 100%;
    }
    #memory .column-wrap .text-box h3 .memory-text02 {
        width: 61.95%;
        margin-left: 3em;
    }
    #memory .column-wrap .text-box h3 .memory-text03 {
        width: 63.14%;
    }

    #memory .image_list-wrap {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        width: 100%;
        margin: 12.93vw auto 13.47vw;
    }
    #memory .image_list-wrap .swiper .swiper-wrapper {
        transition-timing-function: linear;
    }
    #memory .image_list-wrap .swiper-slide {
        width: 60.53vw;
        margin: 0;
    }

    #memory .image-wrap .image-box.image02 {
        width: 92.41vw;
        /*margin-left: 5.22%;*/
        margin-left: 0;
    }
    #memory .image-wrap .image-box.image03 {
        width: 61.18vw;
        position: relative;
        top: 0;
        right: 0;
        margin: 15.76vw 8.35vw 0 auto;
    }
    /* 画像の影 */
    #memory .image-wrap .image-box.image03::before {
        right: -13.65%;
        bottom: -18.45%;
        aspect-ratio: 91 / 69;
    }
}

/* ==============================
  滞在
============================== */
#stay {
    padding: 7.54% 0 18.59%;
}

#stay .column-wrap {
    justify-content: flex-start;
}
#stay .column-wrap .image-box {
    width: 49.45%;
}
#stay .column-wrap .text-box {
    width: 30.28%;
    margin-left: 5.49%;
}
#stay .column-wrap .text-box h2 {
    width: 37.19%;
}
#stay .column-wrap .text-box h2 span.jp {
    width: 25.44%;
}
#stay .column-wrap .text-box h3 {
    width: 71.99%;
    margin: 11.33% 0 5.45%;
}
#stay .column-wrap .text-box h3 .stay-text01 {
    width: 100%;
}
#stay .column-wrap .text-box h3 .stay-text02 {
    width: 100%;
}

#stay .image-wrap {
    margin-top: 6.1%;
}
#stay .image-wrap .image-box.image02 {
    width: 26.95%;
    position: absolute;
    top: -14.95%;
    left: 15.02%;
}
#stay .image-wrap .image-box.image03 {
    width: 15.42%;
    position: absolute;
    top: 67.5%;
    left: 36.01%;
}
#stay .image-wrap .image-box.image04 {
    width: 23.71%;
    position: absolute;
    top: 81.65%;
    left: 5.08%;
}
/* 画像の影 */
#stay .image-wrap .image-box.image04::before {
    left: -10.52%;
    bottom: -14.59%;

    width: 68.14%;

    aspect-ratio: 221 / 123;
}
#stay .image-wrap .image-box.image05 {
    width: 41.77%;
    margin: 0 0 0 auto;
}
@media print, screen and (max-width: 768px) {
    #stay {
        padding: 53.35vw 0 22.43vw;
    }

    #stay .column-wrap {
    }
    #stay .column-wrap .image-box {
        width: 92.53vw;
        margin: 0 0 0 auto;
    }
    #stay .column-wrap .text-box {
        width: 84.8vw;
        margin: 0 auto;
    }
    #stay .column-wrap .text-box h2 {
        position: absolute;
        top: 20.21vw;
        right: 0;
        left: 0;
        width: 23.97vw;
    }
    #stay .column-wrap .text-box h2 span.jp {
        width: 7.37vw;
    }
    #stay .column-wrap .text-box h3 {
        width: 79.43vw;
        margin: 13.47vw 0 8.35vw;
    }
    #stay .column-wrap .text-box h3 .stay-text01 {
        width: 100%;
    }
    #stay .column-wrap .text-box h3 .stay-text02 {
        width: 74.4%;
        margin-left: 2em;
    }
    #stay .column-wrap .text-box h3 .stay-text03 {
        width: 21.71%;
    }

    #stay .image-wrap {
        margin-top: 13.94vw;
        display: flex;
        flex-direction: column;
    }
    #stay .image-wrap .image-box.image02 {
        width: 82.66vw;
        position: relative;
        top: 0;
        left: 0;
        margin: 0 0 0 auto;
    }
    #stay .image-wrap .image-box.image03 {
        width: 61.33vw;
        position: relative;
        top: 0;
        left: 0;
        margin-top: 17.58vw;
    }
    #stay .image-wrap .image-box.image04 {
        order: 5;
        width: 65.07vw;
        position: relative;
        top: 0;
        left: 0;
        margin: 16.37vw 7.68vw 0 auto;
    }
    /* 画像の影 */
    #stay .image-wrap .image-box.image04::before {
        left: -10.63%;
        bottom: -14.75%;

        width: 68.14%;

        aspect-ratio: 166 / 93;
    }
    #stay .image-wrap .image-box.image05 {
        order: 4;
        width: 100%;
        margin: 18.79vw 0 0;
    }
}


/* ==============================
  建築家
============================== */
#architect {
    padding: 9.23% 0 10.15%;
}

#architect h2 {
    width: 12.44%;
    margin: 0 auto 3.32%;
    font-size: min( 2.19vw, 3rem);
}
#architect h2::after {
    display: none;
}
#architect h2 .tit {
    width: 39.35%;
}
#architect h2 .name {
    width: 100%;
    margin-top: 1.5em;
}

#architect p {
    text-align: center;
    font-size: min(1.09vw, 1.5rem);
    line-height: 2.3;
}
@media print, screen and (max-width: 768px) {
    #architect {
        padding: 16.03vw 0 19.13vw;
    }

    #architect h2 {
        width: 34.65vw;
        margin: 0 auto 8.28vw;
        font-size: 6.13vw;
    }
    #architect h2 .tit {
        width: 39.31%;
    }

    #architect p {
        width: 84.8vw;
        margin: 0 auto;
        text-align: left;
        font-size: 3.2vw;
    }
}

/* ==============================
  タイムスケジュール
============================== */
#time_schedule {
    background-image: url(../images/concept/time_schedule-background.jpg);
    background-repeat: no-repeat;
    /* background-attachment: fixed; */
    background-position: top center;
    background-size: 100% auto;
    border-top: none;
    padding: 11.09% 0 5.49%;
}

#time_schedule .time_schedule-wrap {
    width: 75.05%;
    background-color: rgba(248, 247, 245, 0.9);
    margin: 0 auto;
    padding: 8.42% 0 9.25%;
}
#time_schedule h2 {
    width: 37.15%;
    margin: 0 auto 4.8%;
    font-size: min( 3.66vw, 5rem);
}
#time_schedule h2::after {
    display: none;
}
#time_schedule h2 .en {
    width: 100%;
}
#time_schedule h2 .jp {
    width: 43.63%;
    margin-top: 1.5em;
}

#time_schedule p {
    text-align: center;
    font-size: min(1.17vw, 1.6rem);
    line-height: 2.1;
}
#time_schedule p + p {
    margin-top: 2em
}

/* タイムスケジュールのスライダー */
#time_schedule .time_schedule-container {
    position: relative;
    margin: 9.25% 0 0;
}

/* タイムスケジュールのナビボタン */
#time_schedule .swiper-button-next,
#time_schedule .swiper-button-prev {
    width: 5.35%;
}
#time_schedule .swiper-button-prev, #time_schedule .swiper-rtl .swiper-button-next {
    left:calc(50% - 30.04%);
}
#time_schedule .swiper-button-next, #time_schedule .swiper-rtl .swiper-button-prev {
    right:calc(50% - 30.04%);
}

/* 水色の縦線 */
.time_schedule-line {
    margin: 0 auto;
    height: 2.6em;
    width: 1px;
    background-color: #32adc6;
}

/* タイムスケジュール　テキスト部分のアニメーション */
.swiper-slide .time_schedule-list-text {
    opacity: 0 !important;
    display: block;
    width: 52.08%;
    margin: 0 auto;
}
.swiper-slide-active .time_schedule-list-text {
    opacity: 1 !important;
    transition: opacity 1.8s;
}
.swiper-slide-prev .time_schedule-list-text {
    display: none;
}

/* タイムスケジュール　テキスト部分のスタイル */
.time_schedule-list-text .time {
    color: #32adc6;
    font-size: min(2.34vw, 3.2rem);
    text-align: center;
    font-weight: bold;
    /*ゴシック*/
    font-family: "Noto Sans JP", sans-serif;
}
.time_schedule-list-text h6 {
    font-size: min(1.362vw, 1.86rem);
    font-weight: 400;
    /*width: 3.13em;*/
    margin: 7.49% auto 3.69%;
    text-align: center;
}
/* 時間下のテキスト画像のサイズ */
/*.time-0900 .time_schedule-list-text h6 {
    width: 3.13em;
}
.time-0930 .time_schedule-list-text h6 {
    width: 9.46em;
}
.time-1000 .time_schedule-list-text h6 {
    width: 12.43em;
}
.time-1100 .time_schedule-list-text h6 {
    width: 12.45em;
}
.time-1130 .time_schedule-list-text h6 {
    width: 8.14em;
}
.time-1200 .time_schedule-list-text h6 {
    width: 7.83em;
}
.time-1300 .time_schedule-list-text h6 {
    width: 8.46em;
}
.time-1530 .time_schedule-list-text h6 {
    width: 8.67em;
}
.time-1630 .time_schedule-list-text h6 {
    width: 4.52em;
}*/
.time_schedule-list-text p {
    font-size: min(1.02vw, 1.4rem);
    line-height: 2;
}

/* タイムスケジュール下のテキスト */
#time_schedule .under_text-wrap h6 {
    width: 49.8%;
    margin: 5.10% auto 0;
    font-size: min(1.46vw, 2rem);
}
#time_schedule .under_text-wrap h6 span {
    display: block;
    margin: 0 auto;
    line-height: 1;
    overflow: hidden;
}
#time_schedule .under_text-wrap h6 .under_text01 {
    width: 100%;
}
#time_schedule .under_text-wrap h6 .under_text02 {
    width: 62.55%;
    margin-top: 0.8em;
}

@media print, screen and (max-width: 768px) {
    #time_schedule {
        background-image: url(../sp-images/concept/time_schedule-background.png);
        background-color: rgba(248, 247, 245, 0.9);
        padding: 69.12vw 0 0;
    }

    #time_schedule .time_schedule-wrap {
        width: 100%;
        background-color: unset;
        margin: 0 auto;
        padding: 0 0 20.29vw;
    }
    #time_schedule h2 {
        width: 49.55vw;
        margin: 0 auto 10.5vw;
        font-size: 10.66vw;
    }
    #time_schedule h2::after {
        display: none;
    }
    #time_schedule h2 .en {
        width: 47.11%;
    }
    #time_schedule h2 .en.time_schedule-tit02 {
        width: 100%;
    }
    #time_schedule h2 .jp {
        width: 71.66%;
        margin-top: 1.5em;
    }

    #time_schedule p {
        font-size: 4vw;
        width: 84.8vw;
        margin: 0 auto;
    }
    #time_schedule p + p {
        margin-top: 2em
    }

    /* タイムスケジュールのスライダー */
    #time_schedule .time_schedule-container {
        position: relative;
        margin: 14.34vw 0 0;
    }

    /* タイムスケジュールのナビボタン */
    #time_schedule .swiper-button-next,
    #time_schedule .swiper-button-prev {
        width: 9.17vw;
    }
    #time_schedule .swiper-button-prev, #time_schedule .swiper-rtl .swiper-button-next {
        left:calc(50% - 48.1vw);
    }
    #time_schedule .swiper-button-next, #time_schedule .swiper-rtl .swiper-button-prev {
        right:calc(50% - 48.1%);
    }

    /* 水色の縦線 */
    .time_schedule-line {
        height: 10.41vw;
    }

    /* タイムスケジュール　テキスト部分のアニメーション */
    .swiper-slide .time_schedule-list-text {
        width: 84.8vw;
    }

    /* タイムスケジュール　テキスト部分のスタイル */
    .time_schedule-list-text .time {
        font-size: 8vw;
    }
    .time_schedule-list-text h6 {
        font-size: 4.267vw;
        /*width: 3.13em;*/
        margin: 7.49% auto 3.69%;
    }
    /* 時間下のテキスト画像のサイズ */
    /*.time-0900 .time_schedule-list-text h6 {
        width: 12.97vw;
    }
    .time-0930 .time_schedule-list-text h6 {
        width: 39.13vw;
    }
    .time-1000 .time_schedule-list-text h6 {
        width: 51.39vw;
    }
    .time-1100 .time_schedule-list-text h6 {
        width: 51.49vw;
    }
    .time-1130 .time_schedule-list-text h6 {
        width: 33.68vw;
    }
    .time-1200 .time_schedule-list-text h6 {
        width: 32.37vw;
    }
    .time-1300 .time_schedule-list-text h6 {
        width: 35.01vw;
    }
    .time-1530 .time_schedule-list-text h6 {
        width: 35.88vw;
    }
    .time-1630 .time_schedule-list-text h6 {
        width: 22.7vw;
    }*/
    .time_schedule-list-text p {
        font-size: 4vw;
    }

    /* タイムスケジュール下のテキスト */
    #time_schedule .under_text-wrap {
        background-color: #FFF;
        width: 100%;
        margin: 0 auto;
        padding: 11.23vw 0 29.91vw;
    }
    #time_schedule .under_text-wrap h6 {
        width: 82.33vw;
        margin: 0 auto;
        font-size: 4.26vw;
    }
    #time_schedule .under_text-wrap h6 .under_text01 {
        width: 86.73%;
    }
    #time_schedule .under_text-wrap h6 .under_text02 {
        width: 70.66%;
        margin: 0.8em auto;
    }

}
