.main {
    overflow: hidden;
    background-color: #E9FAFF;
    position: relative;
}

.keyvisual {
    background: url(../img/keyvisual.webp);
    width: 100%;
    height: 100.8rem;
    background-size: cover;
    position: relative;
    padding-top: 31.9rem;
}

.keyvisual__title {
    margin-left: 7.3rem;
    margin-bottom: 15rem;
}

.keyvisual__textimg{
    width: 30rem;
    height: 30rem;
    margin-left: 7.3rem;
    display: block;
}

.keyvisual__title h2,
.keyvisual__title p {
    background-color: #FFFFFF;
    width: fit-content;
}

.keyvisual__title h2 {
    padding-inline: 1.6rem;
    font-size: 5.9rem;
    font-weight: 900;
}

.keyvisual__title p {
    margin-top: 2.8rem;
    padding-inline: 1.2rem;
    font-size: 3.4rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
}

.keyvisual__digital {
    display: flex;
    position: absolute;
    bottom: 0;
    width: 100%;
    justify-content: space-between;
    padding-block: 1.2rem;
}

.keyvisual__digital img {
    width: 32.6rem;
    height: 5rem;
    position: relative;
    z-index: 2;
    margin-left: 2.5rem;
    background-color: #FFFFFF;
}

.keyvisual__digital .cover {
    background-color: #00818F;
    opacity: 0.8;
    width: 100%;
    height: 8rem;
    position: absolute;
    top: 0;
}

.keyvisual__digital .digital__text {
    position: relative;
    z-index: 2;
    color: #FFFFFF;
    font-size: 3.7rem;
    font-weight: 700;
    font-family: "Oswald", sans-serif;
    letter-spacing: 0.185rem;
    margin-right: 2rem;
}

.keyvisual__digital .digital__text span:first-child {
    font-size: 2.3rem;
    margin-left: 1rem;
    letter-spacing: 0.115rem;
}

.keyvisual__digital .digital__text span:nth-child(2) {
    font-size: 3.3rem;
    margin-left: 1rem;
    letter-spacing: 0.165rem;
}

.keyvisual__digital .digital__text span:nth-child(3) {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 3.2rem;
    font-weight: 900;
    margin-left: 1.6rem;
    letter-spacing: 0.16rem;
}

.tactics {
    position: relative;
    padding-bottom: 72.8rem;
    margin-bottom: 13rem;
}

.tactics-inner {
    width: 118rem;
    margin: -1rem auto 0;
    position: relative;
    z-index: 2;
}

.tactics__subtitle {
    font-size: 28.9rem;
    color: #FFFFFF;
    font-family: "Oswald", sans-serif;
    text-align: center;
    font-weight: 700;
}

.tactics__preface {
    margin-top: -16.8rem;
    font-family: "Noto Serif JP", serif;
    margin-bottom: 4.3rem;
}

.tactics__preface h3 {
    font-size: 6.5rem;
    color: #076F7A;
    text-align: center;
    margin-bottom: 4.7rem;
    font-weight: 700;
}

.tactics__preface p {
    margin-left: 10.6rem;
    font-size: 2.1rem;
    font-weight: 500;
    line-height: 5rem;
}

.tactics__content {
    display: flex;
    gap: 3.3rem;
    margin-bottom: 6.2rem;
}

.tactics__content figure {
    width: 62.4rem;
    height: 60.8rem;
}

.tactics__content ol {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    font-family: "Noto Serif JP", serif;
    margin-top: 3.3rem;
}

.tactics__content ol h4 {
    font-weight: 700;
    font-size: 2.7rem;
    color: #009DAE;
}

.tactics__content ol h4 span {
    font-size: 8rem;
    font-weight: 900;
    font-family: "Roboto", serif;
    font-style: italic;
}

.tactics__content ol p {
    width: fit-content;
    font-size: 1.8rem;
    font-weight: 500;
    margin-top: -1.9rem;
}

.tactics__business h3 {
    display: flex;
    gap: 3.6rem;
    font-size: 6.5rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
    color: #076F7A;
    align-items: end;
    margin-bottom: 4.5rem;
}

.tactics__business h3 img {
    width: 8.3rem;
    height: 15.4rem;
    margin-left: 23.6rem;
}

.tactics__business p {
    line-height: 5rem;
    font-size: 2.1rem;
    font-weight: 500;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.05rem;
}

.tactics__bg {
    position: absolute;
    bottom: 0;
}

.mv03 {
    margin-bottom: 3.5rem;
}

.mv03 .swiper-area {
    position: relative;
    color: #FFFFFF;
}

.mv03 .swiper-main {
    width: 143.2rem;
    height: 87.4rem;
    margin-left: 0;
    border-radius: 5rem;
    transform: scale(0.8);
}

@media only screen and (max-width: 1024px) {
    .mv03 .swiper-main {
        height: max(70vh, 70vw);
    }
}

@media only screen and (max-width: 599px) {
    .mv03 .swiper-main {
        margin-right: 4rem;
    }
}

.mv03 .swiper-thumb {
    position: absolute;
    top: 10rem;
    right: 20rem;
    transform: scale(0.8);
    bottom: 10rem;
    width: min(54.1rem, 30vw);
}

@media only screen and (max-width: 599px) {
    .mv03 .swiper-thumb {
        top: auto;
        bottom: -6rem;
        width: 20rem;
        height: 24rem;
        border-radius: 1rem 0 0 1rem;
    }
}

.mv03 .slide {
    display: flex;
    align-items: end;
    justify-content: initial !important;
    height: 100%;
    padding: 0 3.3rem 5.9rem;
}

@media only screen and (min-width: 600px) {
    .mv03 .slide {
        place-content: center;
    }
}

@media only screen and (max-width: 599px) {
    .mv03 .slide {
        padding-top: 20%;
    }
}

@media only screen and (min-width: 1025px) {
    .mv03 .slide img {
        -webkit-transition: 2s var(--easing);
        transition: 2s var(--easing);
    }
}

.mv03 .slide-media {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mv03 .slide-content {
    -webkit-transition: 3s 0.5s var(--easing);
    transition: 3s 0.5s var(--easing);
    -webkit-transform: translateY(-6rem);
    transform: translateY(-6rem);
    opacity: 0;
}

.mv03 .slide-title {
    font-family: "Noto Serif JP", serif;
    font-size: 2.8rem;
    margin-bottom: 1rem;
    font-weight: 500;
}

.mv03 .slide-text {
    font-family: "Noto Serif JP", serif;
    font-size: 1.8rem;
    font-weight: 500;
}

.mv03 .swiper-slide[class*=-active] .slide-content {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

.mv03 .thumb {
    font-weight: bold;
    position: relative;
    display: grid;
    overflow: hidden;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 100%;
    padding: 0 4rem;
    cursor: pointer;
    -webkit-transition: 2s var(--easing);
    transition: 2s var(--easing);
}

@media only screen and (min-width: 600px) {
    .mv03 .thumb {
        border-radius: 3rem;
    }
}

@media only screen and (max-width: 1024px) {
    .mv03 .thumb {
        padding: 0 2.4rem;
    }
}

.mv03 .thumb::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 0.4rem;
    content: "";
    -webkit-transition: 1s var(--easing);
    transition: 1s var(--easing);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    background-color: #069DAE;
}

.mv03 .thumb-media {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mv03 .thumb-media img {
    -webkit-transition: 2s var(--easing);
    transition: 2s var(--easing);
    object-position: 0rem -7rem;
    transform: scale(1.2);
}

.mv03 .thumb-title {
    font-size: 1.8rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
    position: relative;
    z-index: 1;
}

@media only screen and (max-width: 1024px) {
    .mv03 .thumb-title {
        font-size: 1.4rem;
    }
}

.mv03 .thumb-title span {
    font-size: 6.9rem;
    font-family: "Roboto", serif;
    font-weight: 900;
    font-style: italic;
    margin-right: 1rem;
}

.mv03 .swiper-slide-thumb-active .thumb {
    color: #069DAE;
}

.mv03 .swiper-slide-thumb-active .thumb::before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
}

.mv03 .swiper-slide-thumb-active .thumb-media img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0.7;
    -webkit-filter: blur(3px);
    filter: blur(3px);
    mix-blend-mode: hard-light;
}

.swiper-thumb .swiper-wrapper .swiper-slide:nth-child(3) .thumb-media img {
    object-position: 0rem -20rem;
}

.city-feature__title {
    display: flex;
    gap: 12.6rem;
    margin: 0 auto 12rem;
    width: 179.8rem;
}

.city-feature__title h2 {
    width: 30rem;
    font-size: 3.6rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
    color: #076F7A;
}

.city-feature__title p {
    width: 137.1rem;
    font-size: 1.8rem;
    font-weight: 500;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.09rem;
}

.city-feature .access {
    display: flex;
    width: fit-content;
    justify-content: center;
    margin: 0 auto 26.5rem;
    background-color: #FFFFFF;
    position: relative;
    z-index: 2;
}

.city-feature .access figure {
    position: relative;
}

.city-feature .access figure img {
    width: 46.2rem;
    height: 38.9rem;
}

.city-feature .access__text-box {
    width: 63.2rem;
    padding: 4.3rem 4.4rem;
    font-family: "Noto Serif JP", serif;
    position: relative;
}

.city-feature .access__text-box h3 {
    font-size: 3.6rem;
    font-weight: 700;
    color: #076F7A;
}

.city-feature .access__text-box p {
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 3.5rem;
}

.city-feature .access .good {
    width: 31.9rem;
    position: absolute;
    top: -6.45rem;
    right: 4.1rem;
}

.city-feature .access .good img {
    width: 100%;
    height: auto;
}

.voice-bg {
    width: 216.842rem;
    position: absolute;
    top: 472rem;
    left: -10rem;
}

.voice-bg img {
    width: 100%;
    height: auto;
}

.voice-inner {
    position: relative;
    z-index: 2;
    margin: 0 auto;
}

.voice__icon {
    position: absolute;
    top: 7rem;
    right: 62.1rem;
    width: 14rem;
    height: 14.6rem;
}

.voice-inner h2 {
    font-size: 28.9rem;
    color: #FFFFFF;
    font-family: "Oswald", sans-serif;
    text-align: center;
    font-weight: 700;
}

.voice__preface {
    text-align: center;
    font-family: "Noto Serif JP", serif;
    margin-top: -16.8rem;
    margin-bottom: 8rem;
}

.voice__preface h3 {
    color: #076F7A;
    font-size: 6.5rem;
    font-weight: 700;
    margin-bottom: 4.25rem;
}

.voice__preface p {
    font-size: 2.1rem;
    font-weight: 500;
    line-height: 5rem;
}

.voice__content {
    display: flex;
    gap: 6rem;
    justify-content: center;
    margin-bottom: 7.5rem;
}

.voice__item {
    width: 78.8rem;
    height: 35.6rem;
    display: flex;
    gap: 3.7rem;
    background-color: #FFFFFF;
    border-radius: 2rem;
    padding: 5.8rem 4.6rem 4.5rem 4.7rem;
    font-family: "Noto Serif JP", serif;
    position: relative;
}

.voice__item figure {
    width: 16.6rem;
    height: 16.6rem;
    overflow: hidden;
    border-radius: 50%;
    background-color: #000000;
}

.voice__item h3 {
    font-size: 2.6rem;
    font-weight: 700;
    color: #076F7A;
    margin-bottom: 1.7rem;
}

.voice__item p {
    font-size: 1.8rem;
    font-weight: 500;
}

.voice__item span {
    font-size: 1.6rem;
    font-weight: 500;
    position: absolute;
    bottom: 4.5rem;
    right: 4.6rem;
}

.biz-button {
    width: 100%;
    display: flex;
    justify-content: center;
}

.biz-button a {
    display: flex;
    font-size: 2.7rem;
    font-weight: 700;
    padding-block: 2.1rem;
    background-color: #FF014A;
    border-radius: 4rem;
    width: 45.8rem;
    justify-content: center;
    gap: 3.4rem;
    color: #FFFFFF;
    align-items: center;
}

.biz-button a::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 1rem solid transparent;
    border-bottom: 1rem solid transparent;
    border-left: 1.011rem solid #ffffff;
    border-right: 0;
}

.biz-button a:hover {
    background-color: #096F7A;
}

.program {
    position: relative;
}

.program__icon {
    width: 19.2rem;
    height: 17rem;
    position: absolute;
    top: 20rem;
    left: 43.9rem;
}

.program__bg {
    position: absolute;
    width: 76.9rem;
    height: 45.6rem;
    transform: scale(1.6);
    right: -14rem;
    top: -19rem;
}

.program-inner {
    position: relative;
    z-index: 2;
    margin: 0 auto;
}

.program-inner h2 {
    font-size: 28.9rem;
    color: #FFFFFF;
    font-family: "Oswald", sans-serif;
    text-align: center;
    font-weight: 700;
    padding-top: 15rem;
}

.program__preface {
    text-align: center;
    margin-top: -16.8rem;
    margin-bottom: 7rem;
}

.program__preface h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 6.5rem;
    font-weight: 700;
    color: #076F7A;
    margin-bottom: 2.4rem;
}

.program__preface p {
    font-size: 2.4rem;
    font-weight: 700;
    background-color: #E8FC2B;
    width: fit-content;
    padding: 1.6rem 6.1rem;
    margin: 0 auto;
}

.program__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 0 auto;
}

.program__list li {
    display: flex;
    align-items: center;
    gap: 1.7rem;
}

.program__number {
    font-size: 16.1rem;
    font-weight: 900;
    font-style: italic;
    font-family: "Roboto", serif;
    color: #069DAE;
}

.program__text {
    font-family: "Noto Serif JP", serif;
    width: 39.4rem;
}

.program__text h3 {
    font-size: 2.7rem;
    font-weight: 700;
    color: #076F7A;
    margin-bottom: 1.6rem;
}

.program__text p {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 3rem;
    letter-spacing: 0.09rem;
}

.program__table {
    font-size: 1.6rem;
    border-collapse: collapse;
    text-align: left;
    margin: 0 auto 2.1rem;
    letter-spacing: 0.08rem;
}

.program__table th {
    font-weight: 700;
    border: 0.1rem solid #DDDDDD;
    background-color: #9EEEEF;
    padding-block: 1.093rem 1.507rem;
}

.program__table .time {
    padding-left: 4.091rem;
    width: 19.4rem;
}

.program__table .content {
    padding-left: 7.7rem;
    width: 51.7rem;
}

.program__table .duration {
    width: 15.4rem;
    text-align: center;
}

.program__table .table-speaker {
    padding-left: 1.958rem;
    width: 31.3rem;
}

.program__table td {
    font-weight: 400;
    border: 0.1rem solid #DDDDDD;
    background-color: #FFFFFF;
    padding: 0.993rem 1.2rem 1.4rem 0;
}

.overview {
    display: flex;
    gap: 4.3rem;
    margin-left: 49.5rem;
}

.overview h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 2.4rem;
    font-weight: 500;
}

.overview__content {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.6rem;
    font-weight: 500;
    gap: 1rem 3.5rem;
    width: 80rem;
}

.overview__content div {
    display: flex;
    gap: 1.7rem;
}

.overview__content div:nth-child(1) h4,
.overview__content div:nth-child(3) h4 {
    width: 10rem;
}

.overview__content div:nth-child(2) h4,
.overview__content div:nth-child(4) h4 {
    width: 13.4rem;
}

.overview__content div:nth-child(1) p,
.overview__content div:nth-child(3) p {
    width: 22rem;
}

.overview__content div:nth-child(2) p,
.overview__content div:nth-child(4) p {
    width: 26.4rem;
}

.speaker-inner {
    position: relative;
    z-index: 2;
    margin: -17rem auto 12.7rem;
}

.speaker-inner h2 {
    font-size: 28.9rem;
    color: #FFFFFF;
    font-family: "Oswald", sans-serif;
    text-align: center;
    font-weight: 700;
    padding-top: 15rem;
}

.speaker-inner h3 {
    text-align: center;
    margin-top: -16.8rem;
    margin-bottom: 3.8rem;
    font-family: "Noto Serif JP", serif;
    font-size: 6.5rem;
    font-weight: 700;
    color: #076F7A;
}

.speaker__content {
    display: flex;
    gap: 6.8rem;
    justify-content: center;
    font-family: "Noto Serif JP", serif;
}

.speaker__item {
    width: 25.5rem;
}

.speaker__item figure {
    width: 21.1rem;
    height: 21.1rem;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 1.6rem;
    margin-inline: auto;
}

.speaker__item h4 {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 500;
    margin-bottom: 1rem;
}

.speaker__item div {
    font-size: 1.9rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 1.5rem;
}

.speaker__item p {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 2.6rem;
    letter-spacing: 0.08rem;
}

.office-img img {
    width: 100%;
    margin-bottom: 5rem;
    height: 60.7rem;
}

.map {
    margin-bottom: 20rem;
}

.map iframe {
    width: 168rem;
    height: 52.7rem;
    margin: 0 auto 1.5rem;
    display: block;
}

.map-text-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 168rem;
    margin: 0 auto;
}

.map__link {
    display: flex;
    font-family: "Noto Serif JP", serif;
    align-items: center;
}

.map__link h2 {
    font-size: 2.6rem;
    font-weight: 400;
}

.map__link a {
    font-size: 1.6rem;
    font-weight: 500;
    display: flex;
    gap: 1rem;
    align-items: center;
}

.map__link--detail {
    margin-left: 2.4rem;
    color: #076F7A;
    text-decoration: underline;
}

.map__link--detail img {
    width: 1.656rem;
    height: 2.22rem;
}

.map__link--official {
    margin-left: 3.3rem;
    color: #076F7A;
    text-decoration: underline;
}

.map__link--official img {
    width: 2.207rem;
    height: 2.207rem;
}

.map__info {
    font-family: "Noto Serif JP", serif;
    font-size: 1.6rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 2.3rem;
}

.map__info p {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.map__info p img {
    width: 1.822rem;
    height: 2.581rem;
}

.application {
    background-color: #FFFFFF;
    padding-bottom: 95rem;
    position: relative;
}

.application__logo {
    width: 36.6rem;
    height: 21.1rem;
    margin: 0 auto 5.3rem;
    position: relative;
    top: -10rem;
}

.application h2 {
    margin-top: -10rem;
    margin-bottom: 3.4rem;
    font-size: 6rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
    color: #076F7A;
    text-align: center;
}

.application p {
    text-align: center;
    font-family: "Noto Serif JP", serif;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 4.2rem;
    margin-bottom: 7.2rem;
}

.application button {
    display: flex;
    position: relative;
    z-index: 2;
    justify-content: center;
    width: 100%;
}

.application button a {
    display: flex;
    background: linear-gradient(75deg, #FF0045 0%, #FF1491 100%);
    border: 0.3rem solid #FFFFFF;
    border-radius: 2rem;
    width: 50.7rem;
    height: 9rem;
    font-size: 2.7rem;
    font-weight: 700;
    color: #FFFFFF;
    position: relative;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 0.6rem 0.6rem #00000029;
}

.application button a img {
    width: 7.624rem;
    height: 6.6rem;
    position: absolute;
    top: -1.8rem;
    right: 3.1rem;
}

.application__bg {
    position: absolute;
    bottom: 0;
    width: 100%;
}

.application__icon {
    width: 30.4rem;
    height: 30.4rem;
    position: absolute;
    top: 10rem;
    right: 4.3rem;
}

@media screen and (max-width: 699.98px) {
    .main {
        overflow: hidden;
    }

    .keyvisual {
        padding-top: 9.3rem;
        height: 67rem;
        background-position: -45rem;
    }

    .keyvisual__title {
        writing-mode: vertical-rl;
        text-orientation: upright;
        margin-right: 2.2rem;
        margin-left: auto;
        margin-bottom: 0;
    }

    .keyvisual__title h2 {
        font-size: 3.3rem;
        background-color: transparent;
        width: fit-content;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 0.9rem;
        letter-spacing: 0.165rem;
    }

    .keyvisual__title h2 span {
        background-color: #FFFFFF;
        padding-inline: 1rem;
        width: fit-content;
        height: fit-content;
    }

    .keyvisual__title p {
        margin-top: 0;
        padding-inline: 1rem 0;
        margin-right: 0.9rem;
        font-size: 1.5rem;
    }

    .keyvisual__textimg{
        width: 20rem;
        height: 20rem;
        margin-left: 0;
        margin-top: 4rem;
    }

    .keyvisual__digital {
        bottom: 1.1rem;
        padding: 0;
    }

    .keyvisual__digital img {
        width: 32.6rem;
        height: 5rem;
        border-radius: 0.6rem;
    }

    .digital--sp {
        margin-bottom: 5rem;
    }

    .digital--sp .digital__text {
        background-color: #2E99A5;
        color: #FFFFFF;
        font-family: "Oswald", sans-serif;
        font-size: 5.2rem;
        font-weight: 700;
        line-height: 3rem;
        padding-block: 4rem 2.2rem;
        text-align: center;
        margin-bottom: 4.3rem;
    }

    .digital--sp .digital__text span:first-child {
        font-size: 3.1rem;
        margin-left: 1.5rem;
    }

    .digital--sp .digital__text span:last-child {
        font-size: 2.9rem;
        font-family: "Noto Sans JP", sans-serif;
    }

    .digital--sp button {
        margin: 0 auto;
        width: 100%;
    }

    .digital--sp button:first-of-type {
        margin-bottom: 2rem;
    }

    .digital--sp button a {
        width: 32.1rem;
        height: 5.7rem;
        border-radius: 4rem;
        background-color: #FE394B;
        color: #FFFFFF;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
        font-size: 1.8rem;
        font-weight: 700;
    }

    .digital--sp button a::after {
        content: "";
        width: 0;
        height: 0;
        margin-left: 2rem;
        border-style: solid;
        border-right: 0.7rem solid transparent;
        border-left: 0.7rem solid transparent;
        border-top: 0.7rem solid #ffffff;
        border-bottom: 0;
    }

    .tactics {
        padding-bottom: 15rem;
        margin-bottom: 11.2rem;
    }

    .tactics-inner {
        width: 37.5rem;
    }

    .tactics__subtitle {
        font-size: 8.6rem;
    }

    .tactics__preface {
        margin-top: -6.2rem;
    }

    .tactics__preface h3 {
        font-size: 3rem;
        margin-bottom: 1.3rem;
    }

    .tactics__preface h3 span {
        font-size: 5rem;
    }

    .tactics__preface p {
        margin: 0 auto 4.6rem;
        width: 33.5rem;
        font-size: 1.8rem;
        line-height: 3.9rem;
    }

    .tactics__content {
        flex-direction: column;
        align-items: center;
        gap: 2rem;
        margin-bottom: 6rem;
    }

    .tactics__content figure {
        width: 37.5rem;
        height: 36.5rem;
    }

    .tactics__content ol {
        margin-top: 0;
        width: 33.5rem;
    }

    .tactics__content ol h4 {
        font-size: 2.1rem;
        margin-bottom: 1.5rem;
    }

    .tactics__content ol h4 span {
        font-size: 5rem;
        margin-right: 1rem;
    }

    .tactics__content ol p {
        line-height: 3.3rem;
    }

    .tactics__business h3 img {
        display: none;
    }

    .tactics__business h3 {
        font-size: 3rem;
        display: block;
        text-align: center;
        margin-bottom: 2rem;
    }

    .tactics__business p {
        width: 33.5rem;
        font-size: 1.8rem;
        margin: 0 auto;
        line-height: 3.9rem;
    }

    .tactics__bg img {
        object-position: -6rem 0rem;
        transform: scale(1.5);
    }

    .mv03 {
        display: block;
        margin-bottom: 11rem;
    }

    .mv03 .swiper-main {
        width: 80vw;
        height: 40rem;
        margin-right: 4rem;
        border-radius: 0 2rem 2rem 0;
        transform: scale(1);
    }

    .mv03 .slide {
        align-items: end;
        padding: 0 2rem 4rem;
    }

    .mv03 .slide-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .mv03 .slide-content {
        position: relative;
        z-index: 1;
        max-width: 55vw;
        color: #FFFFFF;
        text-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.35);
    }

    .mv03 .slide-title {
        font-size: 2rem;
    }

    .mv03 .slide-text {
        font-size: 1.5rem;
        line-height: 2.4rem;
    }

    .mv03 .swiper-thumb {
        top: 5rem;
        bottom: auto;
        border-radius: 0;
        height: 30rem;
        width: 16rem;
        right: 0;
        transform: scale(1);
    }

    .mv03 .thumb {
        padding-inline: 0.5rem 0rem;
    }

    .mv03 .thumb-media img {
        object-position: 0rem -2rem;
    }

    .swiper-thumb .swiper-wrapper .swiper-slide:nth-child(3) .thumb-media img {
        object-position: 0rem -5rem;
    }

    .mv03 .swiper-thumb .thumb-title span {
        font-size: 1.5rem;
        margin-right: 0.5rem;
    }

    .mv03 .swiper-thumb .thumb-title {
        font-size: 1.2rem;
        font-weight: 500;
    }

    .city-feature__title {
        flex-direction: column;
        width: 33.5rem;
        gap: 2rem;
        margin-bottom: 5.56rem;
    }

    .city-feature__title h2 {
        font-size: 2.4rem;
        font-weight: 500;
        text-align: center;
    }

    .city-feature__title p {
        width: 33.5rem;
        line-height: 3rem;
    }

    .city-feature .access {
        flex-direction: column;
        width: 33.5rem;
        margin-bottom: 7.58rem;
    }

    .city-feature .access figure img {
        width: 33.5rem;
        object-position: 0;
    }

    .city-feature .access .good {
        width: 19.2rem;
        right: 0;
        top: -3.5rem;
    }

    .city-feature .access__text-box {
        width: 33.5rem;
        padding: 1.5rem 2.7rem 4rem 2rem;
    }

    .city-feature .access__text-box h3 {
        font-size: 2.4rem;
        text-align: center;
        margin-bottom: 1.7rem;
    }

    .voice-bg {
        display: none;
    }

    .voice__icon {
        display: none;
    }

    .voice {
        margin-bottom: 7.78rem;
    }

    .voice-inner h2 {
        font-size: 8.9rem;
    }

    .voice__preface {
        margin-top: -6.5rem;
        margin-bottom: 4.4rem;
    }

    .voice__preface h3 {
        font-size: 3rem;
        font-weight: 500;
        margin-bottom: 2rem;
    }

    .voice__preface p {
        text-align: center;
        font-size: 1.8rem;
        width: 33.5rem;
        margin-inline: auto;
        line-height: 3.9rem;
    }

    .voice__content {
        flex-direction: column;
        align-items: center;
        margin-bottom: 4rem;
    }

    .voice__item {
        flex-direction: column;
        width: 33.5rem;
        padding: 3.6rem 1.9rem 3.8rem;
        gap: 2.4rem;
        align-items: center;
    }

    .voice__item h3 {
        font-size: 2.1rem;
        margin-bottom: 2rem;
    }

    .voice__item span {
        bottom: 3.8rem;
        right: 2.3rem;
    }

    .biz-button a {
        width: 32.1rem;
        height: 5.7rem;
        font-size: 1.8rem;
    }

    .biz-button a::after {
        border-top-width: 0.7rem;
        border-bottom-width: 0.7rem;
        border-left-width: 0.7rem;
    }

    .program__bg {
        display: none;
    }

    .program__icon {
        display: none;
    }

    .program {
        margin-bottom: 7.78rem;
    }

    .program-inner h2 {
        padding-top: 0;
        font-size: 8.9rem;
    }

    .program__preface {
        margin-top: -6.5rem;
        margin-bottom: 3.57rem;
    }

    .program__preface h3 {
        font-size: 3rem;
        font-weight: 500;
        margin-bottom: 0.9rem;
    }

    .program__preface p {
        padding: 1rem 2.7rem;
        font-size: 1.8rem;
        width: 100%;
    }

    .program__list {
        flex-direction: column;
        width: 33.5rem;
        gap: 2rem;
        margin-bottom: 6.1rem;
    }

    .program__list li {
        flex-direction: column;
    }

    .program__number {
        font-size: 4.9rem;
    }

    .program__text {
        width: 33.5rem;
    }

    .program__text h3 {
        font-size: 2.4rem;
        font-weight: 500;
        text-align: center;
        margin-top: -2rem;
        margin-bottom: 1.5rem;
    }

    .program__table-inner {
        overflow-x: scroll;
        height: fit-content;
    }

    .program__table-inner::-webkit-scrollbar {
        display: none;
    }

    .program__table {
        width: 118rem;
        margin-left: 2rem;
        margin-bottom: 2.6rem;
    }

    .overview {
        flex-direction: column;
        margin-left: 2rem;
        gap: 2rem;
    }

    .overview__content {
        flex-direction: column;
    }

    .overview__content div {
        flex-direction: column;
    }

    .speaker-inner {
        margin: 0;
    }

    .speaker-inner h2 {
        padding: 0;
        font-size: 8.9rem;
    }

    .speaker-inner h3 {
        font-size: 3rem;
        font-weight: 500;
        margin-top: -6.5rem;
        margin-bottom: 2.9rem;
    }

    .speaker__content {
        flex-direction: column;
        align-items: center;
        gap: 4rem;
        margin-bottom: 7.95rem;
    }

    .office-img img {
        height: 38.5rem;
    }

    .map {
        margin-bottom: 19rem;
    }

    .map iframe {
        width: 33.5rem;
        height: 33.3rem;
    }

    .map-text-box {
        flex-direction: column;
        width: 33.1rem;
        align-items: start;
    }

    .map__link {
        flex-direction: column;
        align-items: start;
    }

    .map__link h2 {
        font-size: 3rem;
        margin-bottom: 1.5rem;
    }

    .map__link--detail {
        margin-left: 0;
        margin-bottom: 2rem;
    }

    .map__link--official {
        margin-left: 0;
        margin-bottom: 2rem;
    }

    .map__info {
        flex-direction: column;
        align-items: start;
        font-size: 1.8rem;
        line-height: 3.2rem;
        gap: 1.7rem;
    }

    .application {
        padding-bottom: 25rem;
    }

    .application__icon {
        display: none;
    }

    .application h2 {
        font-size: 3rem;
        font-weight: 500;
        margin-bottom: 4rem;
    }

    .application h2 span {
        display: inline;
    }

    .application p {
        font-size: 1.8rem;
        font-weight: 500;
        margin-bottom: 3.75rem;
    }

    .application button a {
        width: 33.5rem;
        font-size: 1.8rem;
        height: 5.9rem;
    }

    .application button a img {
        width: 5.038rem;
        height: 4.362rem;
        right: 2rem;
    }

    .application__bg {
        width: 56.25rem;
        height: 35.156rem;
    }

}