.feature_map {
    position: relative;
    font-size: 10px;
}

.feature_map__header {
    position: absolute;
    width: 50%;
    z-index: 200
}

.feature_map .map {
    margin: 0 auto;
    overflow: visible
}

.feature_map .map__elevation--1 {
    fill: #bdeab5
}

.feature_map .map__elevation--2 {
    fill: #eff1ca
}

.feature_map .map__elevation--3 {
    fill: #e2e4af
}

.feature_map .map__elevation--4 {
    fill: #cfd195
}

.feature_map .map__lines {
    fill: none;
    stroke: #bbb;
    stroke-width: .35;
    stroke-linecap: square;
    stroke-miterlimit: 10
}

.feature_map .map__lines--okinawa_divider {
    opacity: .5;
    transform: translate(-2.5%, 2.5%)
}

.feature_map .map__area {
    fill: inherit
}

.feature_map .map__area--region {
    fill: #d4f4d0;
    stroke: #55d95c;
    stroke-width: .005em
}

.feature_map .map__area--region_mask {
    fill: transparent;
    transition: fill .25s
}

.feature_map .map__area--region_mask.is-active,
.feature_map .map__area--region_mask:hover {
    fill: rgba(255, 52, 52, .45);
    stroke: rgba(255, 52, 52, .55);
    stroke-width: .15
}

.feature_map .map__spot {
    height: .7em;
    width: .7em;
    margin-top: -.35em;
    margin-left: -.35em;
    transition: transform .1s ease-out;

}

.feature_map .map__spot__marker {
    color: #ff3434;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .3))
}

.feature_map .map__spot__label {
    text-shadow: 1px 0 1px hsla(0, 0%, 100%, .5);
    transition: color .1s;
    writing-mode: horizontal-tb;
    text-orientation: mixed;
    direction: ltr;
    white-space: nowrap;
}

.feature_map .map__spot.is-active .map__spot__label {
    color: #ff3434
}

.feature_map .map__spot--destination {
    height: 1em;
    width: 1em;
    margin-top: -.5em;
    margin-left: -.5em;
    font-size: .6em;
    line-height: 1.1
}

.feature_map .map__spot--destination .map__spot__marker {
    height: inherit;
    width: inherit
}

.feature_map .map__spot--destination .map__spot__label {
    font-size: 1.2rem;
    letter-spacing: .015em
}

.feature_map .map__spot--destination .map__spot__label:hover {
    color: #ff3434
}

@media(max-width:599px) {
    .feature_map .map__spot--destination.map__spot--label_only {
        font-size: 1.4rem
    }
}

@media(max-width:459px) {
    .feature_map .map__spot--destination.map__spot--label_only {
        font-size: 1.25rem
    }
}

.feature_map .map__spot--destination.map__spot--major {
    font-size: 1em
}

.feature_map .map__spot--destination.map__spot--major .map__spot__marker {
    width: .825em;
    height: .825em;
    color: #ff3434
}

.feature_map .map__spot--destination.map__spot--major .map__spot__label {
    color: #111;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0
}

.feature_map .map__spot--destination.is-active .map__spot__marker,
.feature_map .map__spot--destination.map__spot--major.is-active .map__spot__marker {
    color: #ff3434;
    transform: scale(1.45);
    transform-origin: bottom;
    transition: transform .375s cubic-bezier(.68, -.55, .265, 1.55)
}

.feature_map .map__spot--destination.is-active .map__spot__label,
.feature_map .map__spot--destination.map__spot--major.is-active .map__spot__label {
    color: #ff3434;
    transition: color .1s
}

.feature_map .map__spot--destination.is-active.map__spot--label_only,
.feature_map .map__spot--destination.map__spot--major.is-active.map__spot--label_only {
    transform: scale(1.1);
    transition: transform .15s;
    transform-origin: center
}

.feature_map .map__spot--destination.is-active:not(.map__spot--label_only):before,
.feature_map .map__spot--destination.map__spot--major.is-active:not(.map__spot--label_only):before {
    background-color: #ff3434;
    border: .025em solid #fff;
    transform: translate(50%, 100%) scale(1.2);
    transition: transform .1s;
    transform-origin: center
}

.feature_map .map__spot--destination.map__spot--major.is-active .map__spot__marker {
    transform: scale(1.325)
}

.feature_map .map__spot--region {
    height: 1em;
    width: 1em;
    margin-top: -.5em;
    margin-left: -.5em;
    font-size: 1.4rem
}

.feature_map .map__spot--region .map__spot__marker {
    height: inherit;
    width: inherit
}

.feature_map .map__spot--region .map__spot__label {
    font-weight: 700;
    color: #1e4412;
    letter-spacing: .025em
}

.feature_map .map__spot--region .map__spot__label:hover {
    color: #ff3434 !important
}

.feature_map .map__spot--region.is-active,
.feature_map .map__spot--region:hover {
    transform: scale(1.125)
}

.feature_map .map__spot--region.is-active .map__spot__label,
.feature_map .map__spot--region:hover .map__spot__label {
    color: red;
    text-shadow: 0 0 4px hsla(0, 0%, 100%, .9)
}

.feature_map__preview_box {
    position: relative;
    width: 100%;
    border-radius: 1.5rem
}

@media(max-width:767px) and (min-width:600px) {
    .feature_map__preview_box {
        width: calc(100% - 8rem) !important;
        margin-left: 4rem;
        margin-right: 4rem;
        margin-top: 20px;
    }
}

@media(max-width:599px) {
    .feature_map__preview_box {
        width: calc(100% + var(--site-margins)*2) !important;
        margin-left: 0;
        margin-right: 0;
    }
}

.feature_map__preview_box__item {
    border-radius: 1.5rem
}

.feature_map__preview_box .owl-stage-outer,
.feature_map__preview_box__item {
    z-index: 1
}

.feature_map__preview_box .animated {
    animation-duration: .5s
}

.feature_map__preview_box .image,
.feature_map__preview_box__img_wrap {
    border-radius: inherit
}

.feature_map__preview_box__img_wrap,
.feature_map__preview_box__text_wrap {
    overflow: hidden
}

.feature_map__preview_box__img_wrap {
    position: relative;
    display: block;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.feature_map__preview_box .image {
    position: relative;
    z-index: 0;
    margin: -4.25rem 0;
    height: 310px;
}

@media(max-width:599px) and (min-width:400px) {
    .feature_map__preview_box .image {
        height: 250px;
    }
}

@media(max-width:399px) {
    .feature_map__preview_box .image {
        margin: -1.25rem 0;
        height: 200px;
    }
}

.feature_map__preview_box .image__mask:after {
    height: 96%;
    transition: opacity .67s
}

.feature_map__preview_box__text_wrap {
    display: flex;
    align-items: center;
    background-color: #fff;
    padding: 1.6rem;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit
}

.feature_map__preview_box__text {
    flex: 1 auto
}

.feature_map__preview_box__eyebrow {
    color: #767676;
    font-size: 1.35rem;
    font-weight: 500;
    line-height: 1.143;
    margin-bottom: .2rem
}

.feature_map__preview_box__name {
    position: relative;
    font-weight: 500;
    font-size: 2.25rem;
    line-height: 1.2444444
}

.feature_map__preview_box__name:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: -1.6rem;
    width: .5em;
    height: .5em;
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform .1s .5s
}

.feature_map__preview_box__desc {
    display: block;
    font-size: 1.6rem;
    line-height: 2rem;
    color: #676767;
    margin-top: .2rem;
}

.feature_map__preview_box__chevron {
    flex: none;
    color: #888;
    font-size: 1.2rem;
    margin-left: 1em;
    position: relative;
    top: -.15em;
    right: -.25em
}

.feature_map__preview_box.owl-theme-jg .owl-next,
.feature_map__preview_box.owl-theme-jg .owl-prev {
    transition: box-shadow .1s, left .25s, right .25s;
    z-index: 0
}

.feature_map__preview_box.owl-theme-jg .owl-next.disabled,
.feature_map__preview_box.owl-theme-jg .owl-prev.disabled {
    visibility: hidden
}

.feature_map__preview_box.owl-theme-jg .owl-prev {
    left: -3.2rem
}

.feature_map__preview_box.owl-theme-jg .owl-next {
    right: -3.2rem
}

@media(max-width:767px) {
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        left: -3.2rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next {
        right: -3.2rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next,
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        z-index: 0;
    }
}

@media(max-width:599px) {
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        left: 1.6rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next {
        right: 1.6rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next,
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        z-index: 1;
    }
}

@media(max-width:599px) and (min-width:500px) {
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        left: 2.0rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next {
        right: 2.0rem;
    }
}

@media(max-width:499px) and (min-width:376px) {
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        left: 1.4rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next {
        right: 1.4rem;
    }
}

@media(max-width:375px) {
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        left: 1.0rem;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next {
        right: 1.0rem;
    }
}

.feature_map__preview_box .owl-item.active .feature_map__preview_box__name:after {
    transform: translate(-50%, -50%) scale(1)
}

@media(max-width:599px) {
    .feature_map__preview_box .image {
        margin: -1.25rem 0;
    }

    .feature_map .map__lines--desktop_only,
    .feature_map .map__spot--desktop,
    .feature_map .map__spot--destination .map__spot__marker {
        display: none
    }

    .feature_map .map__spot--destination:not(.map__spot--label_only) {
        pointer-events: none
    }

    .feature_map .map__spot--destination:not(.map__spot--label_only):before {
        content: "";
        display: block;
        background-color: #fff;
        border: 1px solid #545454;
        border-radius: 50%;
        height: .475em;
        width: .475em;
        transform: translate(50%, 100%);
        transition: background-color .1s, border .1s;
    }

    .feature_map .map__spot--destination.map__spot--major:not(.map__spot--label_only):before {
        height: .5em;
        width: .5em;
        background-color: #ff3434;
        border: 1.5px solid #fff;
        box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
        margin: .15em 0 -.05em;
    }

    .feature_map__preview_box {
        width: calc(100% + var(--site-margins)*2) !important;
        margin-top: 3.2rem;
        margin-bottom: 0;
        border-radius: 0;
    }

    .feature_map__preview_box:after {
        content: "";
        position: absolute;
        left: -7.5%;
        right: -7.5%;
        top: -5%;
        z-index: 0;
        background-color: #f7f7f7;
        width: 107.5%;
        height: 110%;
    }

    .feature_map__preview_box.owl-theme-jg .owl-item {
        transition: opacity .5s;
    }

    .feature_map__preview_box.owl-theme-jg .owl-item:not(.active) {
        opacity: .67;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next,
    .feature_map__preview_box.owl-theme-jg .owl-prev {
        z-index: 1;
    }

    .feature_map__preview_box.owl-theme-jg .owl-next:before,
    .feature_map__preview_box.owl-theme-jg .owl-prev:before {
        content: "";
        position: absolute;
        top: 0;
        display: block;
        height: 300%;
        width: 133.33%;
        transform: translateY(-33.33%);
    }
}

@media(min-width:600px) {
    .feature_map .map {
        margin: 0 auto;
    }

    .feature_map__header {
        width: 42.5%;
        max-width: 33.6rem;
    }

    .feature_map__preview_box__eyebrow {
        font-size: 1.4rem
    }

    .feature_map__preview_box__name {
        font-size: 2.4rem;
        line-height: 3.2rem
    }

    .feature_map .map {
        width: 98%;
        max-width: 680px
    }

    .feature_map .map__lines--mobile_only,
    .feature_map .map__spot--mobile {
        display: none
    }

    .feature_map .map--region {
        font-size: .875em
    }

    .feature_map__preview_box {
        box-shadow: 0 6px 16px 8px rgba(36, 0, 0, .075)
    }

    .feature_map__preview_box:hover .owl-prev {
        left: -3.6rem
    }

    .feature_map__preview_box:hover .owl-next {
        right: -3.6rem
    }
}

@media(min-width:460px) {
    .feature_map .map__spot--destination {
        font-size: 1.55rem
    }

    .feature_map .map__spot--destination .map__spot__label {
        font-size: 1.4rem
    }

    .feature_map .map__spot--destination.map__spot--major .map__spot__label {
        font-size: 2rem
    }
}

@media(min-width:780px) {
    .feature_map .map__spot--destination.map__spot--major {
        font-size: 1.5em
    }

    .feature_map .map__spot--destination.map__spot--major .map__spot__label {
        font-size: 2.4rem
    }

    .feature_map .map__spot--region {
        font-size: 1.8rem
    }
}

@media(min-width:780px)and (max-width:960px),
(min-width:1024px) {
    .feature_map .map {
        width: 92.5%
    }

    .feature_map__preview_box__text_wrap {
        padding: 1.6rem 1.8rem
    }

    .feature_map__preview_box__name:after {
        left: -1.8rem
    }
}


.owl-carousel {
    display: none;
    width: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    position: relative;
    z-index: 1;
}

.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
    display: block;
    width: 100%;
}

.owl-nav.disabled,
.owl-dots.disabled {
    display: none;
}

.owl-nav .owl-prev,
.owl-nav .owl-next,
.owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-nav button.owl-prev,
.owl-nav button.owl-next,
button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit;
}

.owl-carousel.owl-loaded {
    display: block;
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block;
}

.owl-carousel.owl-hidden {
    opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
    visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
    -ms-touch-action: none;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: grab;
}

.owl-carousel.owl-rtl {
    direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
    float: right;
}

.no-js .owl-carousel {
    display: block;
}

@keyframes owl_fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.owl-carousel .animated {
    animation-duration: 500ms;
    animation-fill-mode: both;
}

.owl-carousel .owl-animated-out {
    z-index: 1;
}

.owl-carousel .fadeIn {
    animation-name: owl_fadeIn;
}

.owl-carousel .fadeOut {
    animation-name: owl_fadeOut;
}

.owl-height {
    transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d;
}

.owl-theme .owl-nav [class*="owl-"] {
    cursor: pointer;
}

.owl-theme .owl-nav .disabled {
    cursor: default;
}

.owl-theme .owl-dots {
    text-align: center;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.owl-theme .owl-dots .owl-dot {
    display: inline-block;
}

.owl-theme .owl-dots .owl-dot span {
    background: #d6d6d6;
    display: block;
    -webkit-backface-visibility: visible;
    transition: opacity 200ms ease;
}

.owl-theme-jg .owl-prev,
.owl-theme-jg .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4.8em;
    height: 4.8em;
    background-color: #fff !important;
    border: solid 1px #f7f7f7 !important;
    border-radius: 50%;
    box-shadow: 0 1.5px 2.5px rgba(0, 0, 0, 0.15);
    cursor: pointer;
    transition: box-shadow 0.25s;
    z-index: 1;
}

.owl-theme-jg .owl-prev.disabled,
.owl-theme-jg .owl-next.disabled {
    visibility: hidden;
}

.owl-theme-jg .owl-prev:hover,
.owl-theme-jg .owl-next:hover {
    box-shadow: 0 2.5px 4px rgba(0, 0, 0, 0.2);
}

.owl-theme-jg .owl-prev::after,
.owl-theme-jg .owl-next::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    content: "";
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32px' height='32px' viewBox='0 0 32 32'%3E%3Cpath fill='%23ff3434' d='M1,11l15,14l15-14l-4-4L16,17L5,7L1,11z'/%3E%3C/svg%3E");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    height: 1.4em;
    width: 1.4em;
}

.owl-theme-jg .owl-prev {
    left: -1.25em;
}

.owl-theme-jg .owl-prev::after {
    transform: rotate(90deg) translate(-50%, 50%);
}

.owl-theme-jg .owl-next {
    right: -1.25em;
}

.owl-theme-jg .owl-next::after {
    transform: rotate(-90deg) translate(50%, -50%);
}

.map_rowbox {
    display: grid;
    grid-template-columns: 1fr;
}

@media (min-width: 768px) {
    .map_rowbox {
        position: relative;
    }

    .map.map--feature {
        justify-self: end;
    }

    .feature_map__preview_box {
        position: absolute;
        top: 0;
        left: 0;
        max-width: 50%;
    }
}

/* マップ関連 */
.map {
    overflow: hidden
}

.map__wrap {
    position: relative;
    width: auto
}

.map__map {
    display: block;
    width: inherit
}

.map__spot {
    z-index: 1
}

.map__spot,
.map__spot__label {
    display: block;
    position: absolute
}

.map__spot--bottom .map__spot__label,
.map__spot--center .map__spot__label,
.map__spot--top .map__spot__label {
    text-align: center;
    left: 50%;
    transform: translateX(-50%)
}

.map__spot--left .map__spot__label,
.map__spot--right .map__spot__label {
    top: 50%;
    transform: translateY(-50%)
}

.map__spot--bottom-left .map__spot__label,
.map__spot--left .map__spot__label,
.map__spot--top-left .map__spot__label {
    text-align: left;
    left: 0
}

.map__spot--bottom-left .map__spot__label {
    bottom: 0
}

.map__spot--bottom-right .map__spot__label,
.map__spot--right .map__spot__label,
.map__spot--top-right .map__spot__label {
    text-align: right;
    right: 0
}

.map__spot--bottom-right .map__spot__label {
    bottom: 0
}

.map--clickable_areas .map__area {
    cursor: pointer
}

.map--get_there_teaser_legacy .map__area {
    fill: #e2e2e2
}

.map--get_there_teaser_legacy .map__area[data-okinawa-pos=left],
.map--get_there_teaser_legacy .map__area[data-okinawa-pos=right] {
    display: none
}

.map--get_there_teaser_legacy .map__spot__label {
    text-shadow: 1px 0 1px hsla(0, 0%, 100%, .5);
    line-height: 1.1;
    width: max-content;
    transition: color .25s
}

.map--get_there_teaser_legacy .map__spot--reference {
    height: .6rem;
    width: .6rem;
    margin-top: -.3rem;
    margin-left: -.3rem
}

.map--get_there_teaser_legacy .map__spot--reference .map__spot__marker {
    height: inherit;
    width: inherit
}

.map--get_there_teaser_legacy .map__spot--reference.map__spot--top-left .map__spot__label,
.map--get_there_teaser_legacy .map__spot--reference.map__spot--top-right .map__spot__label,
.map--get_there_teaser_legacy .map__spot--reference.map__spot--top .map__spot__label {
    bottom: .6rem
}

.map--get_there_teaser_legacy .map__spot--reference.map__spot--bottom-left .map__spot__label,
.map--get_there_teaser_legacy .map__spot--reference.map__spot--bottom-right .map__spot__label,
.map--get_there_teaser_legacy .map__spot--reference.map__spot--bottom .map__spot__label {
    top: .6rem
}

.map--get_there_teaser_legacy .map__spot--reference.map__spot--left .map__spot__label {
    left: .75rem
}

.map--get_there_teaser_legacy .map__spot--reference.map__spot--right .map__spot__label {
    right: .75rem
}

.map--get_there_teaser_legacy .map__spot--reference .map__spot__marker {
    border-radius: 50%;
    background-color: #655e5e
}

.map--get_there_teaser_legacy .map__spot--reference .map__spot__label {
    color: #444;
    font-size: 1.4rem
}

.map--get_there_teaser_legacy .map__spot--reference .map__spot__label:hover {
    color: #ff3434
}

@media(min-width:600px) {
    .map--get_there_teaser_legacy .map__spot--reference .map__spot__label {
        font-size: 1.5rem
    }
}

.map--get_there_teaser_legacy .map__spot--primary {
    height: .9rem;
    width: .9rem;
    margin-top: -.45rem;
    margin-left: -.45rem
}

.map--get_there_teaser_legacy .map__spot--primary .map__spot__marker {
    height: inherit;
    width: inherit
}

.map--get_there_teaser_legacy .map__spot--primary.map__spot--top-left .map__spot__label,
.map--get_there_teaser_legacy .map__spot--primary.map__spot--top-right .map__spot__label,
.map--get_there_teaser_legacy .map__spot--primary.map__spot--top .map__spot__label {
    bottom: .9rem
}

.map--get_there_teaser_legacy .map__spot--primary.map__spot--bottom-left .map__spot__label,
.map--get_there_teaser_legacy .map__spot--primary.map__spot--bottom-right .map__spot__label,
.map--get_there_teaser_legacy .map__spot--primary.map__spot--bottom .map__spot__label {
    top: .9rem
}

.map--get_there_teaser_legacy .map__spot--primary.map__spot--left .map__spot__label {
    left: 1.125rem
}

.map--get_there_teaser_legacy .map__spot--primary.map__spot--right .map__spot__label {
    right: 1.125rem
}

.map--get_there_teaser_legacy .map__spot--primary .map__spot__marker {
    border-radius: 50%;
    background-color: #ff3434;
    box-shadow: 0 1px 2px rgba(50, 0, 0, .1)
}

.map--get_there_teaser_legacy .map__spot--primary .map__spot__label {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: -.01em;
    height: max-content
}

.map--get_there_teaser_legacy .map__spot.map__spot--left .map__spot__label {
    margin-left: 30%
}

.map--get_there_teaser_legacy .map__spot.map__spot--right .map__spot__label {
    margin-right: 25%
}

@media(max-width:599px) {
    .map--get_there_teaser_legacy .map__spot--primary.map__spot--left .map__spot__label {
        margin-left: 50%
    }
}

.map--get_there_teaser_legacy-okinawa .map__wrap {
    transform: translate(17.5%, -36%)
}

.map--get_there_teaser_legacy-okinawa .map__area[data-okinawa-pos=left] {
    display: block
}

.map_spot_hover_card {
    box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
    border-radius: .75rem
}

.map_spot_hover_card.tooltipster-sidetip .tooltipster-box {
    background-color: #fff;
    border-radius: 0
}

.map_spot_hover_card.tooltipster-sidetip .tooltipster-content {
    color: #111;
    padding: 0;
    width: 33.6rem
}

.map_spot_hover_card.tooltipster-sidetip .tooltipster-box,
.map_spot_hover_card.tooltipster-sidetip .tooltipster-content {
    border-radius: inherit
}

.map_spot_hover_card__name,
.map_spot_hover_card__season_info,
.map_spot_hover_card__season_spots_link {
    padding: 0 1.6rem
}

.map_spot_hover_card__image,
.map_spot_hover_card__image_wrap {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit
}

.map_spot_hover_card__image {
    background-color: #f9f7f7;
    position: relative;
    padding-top: 33.3333333333%
}

.map_spot_hover_card__image:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to right top, #0a0a0a, rgba(10, 10, 10, 0) 56%);
    opacity: .74;
    z-index: 101
}

.map_spot_hover_card__image_img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    max-width: 100%;
    height: 100%
}

.map_spot_hover_card__name {
    position: absolute;
    bottom: 1.6rem;
    left: 0;
    color: #fff;
    font-weight: 500;
    font-size: 2.45rem;
    z-index: 102
}

.map_spot_hover_card__season_info,
.map_spot_hover_card__season_spots_link {
    display: flex;
    align-items: center;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem
}

.map_spot_hover_card__season_info {
    border-bottom: 1px solid #eaeaea
}

.map_spot_hover_card__season_info .season_state {
    flex: 0 auto;
    align-items: center;
    font-size: 1.2em;
    margin-right: -.4rem
}

.map_spot_hover_card__season_info .season_state__mini_lbl {
    padding-top: 0;
    padding-bottom: .1rem
}

.map_spot_hover_card__best_viewing {
    flex: 1 auto;
    display: flex;
    flex-direction: column;
    min-width: max-content
}

.map_spot_hover_card__best_viewing_lbl {
    color: #767676;
    font-size: .825em;
    font-weight: 500;
    line-height: 1.1;
    margin-bottom: .2rem
}

.map_spot_hover_card__best_viewing_dates {
    font-size: 1.075em
}

.map_spot_hover_card__best_viewing--est .map_spot_hover_card__best_viewing_dates {
    font-weight: 500
}

.map_spot_hover_card__reports {
    background-color: #fafafa;
    border-bottom: 1px solid #eaeaea;
    padding: 0 1.6rem 1.6rem
}

.map_spot_hover_card__reports_lbl {
    padding: 1rem 0 1.2rem;
    color: #767676;
    font-size: .95em;
    font-weight: 500
}

.map_spot_hover_card__reports .seasonal_report_links {
    display: flex;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
    border-radius: .35em
}

.map_spot_hover_card__reports .seasonal_report_links__link {
    background-color: #fff
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__link {
    background-color: #fff;
    font-size: .95em
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__image_wrap {
    width: 10.5rem;
    padding: 0
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__text_wrap {
    padding: 0 1.2rem
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__title {
    font-size: 1.05em
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__title_text {
    font-weight: 300
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__date {
    font-size: .95em;
    line-height: 1.3
}

.map_spot_hover_card__reports .seasonal_report_links__link--compact .seasonal_report_links__time_ago {
    font-size: 1rem;
    padding: .05em .55em;
    bottom: .4rem;
    left: .4rem
}

.map_spot_hover_card__reports .owl-stage-outer {
    border-radius: inherit
}

.map_spot_hover_card__reports .owl-next,
.map_spot_hover_card__reports .owl-prev {
    position: absolute
}

.map_spot_hover_card__season_spots_link {
    font-weight: 500;
    font-size: 1.55rem;
    line-height: 1.5;
    transition: color .1s
}

.map_spot_hover_card__season_spots_link_icon {
    color: #a2a2a2;
    margin-right: 1.2rem;
    transition: color .1s
}

.map_spot_hover_card__season_spots_link_chevron {
    width: 1rem;
    height: 1rem;
    transform: rotate(-90deg);
    color: #a2a2a2;
    margin-left: auto
}

.map_spot_hover_card__season_spots_link--sakura:hover,
.map_spot_hover_card__season_spots_link--sakura:hover .map_spot_hover_card__season_spots_link_icon {
    color: #f9338b
}

.map_spot_hover_card__season_spots_link--koyo:hover,
.map_spot_hover_card__season_spots_link--koyo:hover .map_spot_hover_card__season_spots_link_icon {
    color: #f12511
}



/* エリアボックスの色 */
.o-region--hokkaido {
    --region-color: #3a759b
}

.o-region--hokkaido.o-region--map_area_fill .map__area[data-id=hokkaido] {
    fill: var(--region-color)
}

.o-region--tohoku {
    --region-color: #a39800
}

.o-region--tohoku.o-region--map_area_fill .map__area[data-id=tohoku] {
    fill: var(--region-color)
}

.o-region--kanto {
    --region-color: #b0446c
}

.o-region--kanto.o-region--map_area_fill .map__area[data-id=kanto] {
    fill: var(--region-color)
}

.o-region--chubu {
    --region-color: #d65611
}

.o-region--chubu.o-region--map_area_fill .map__area[data-id=chubu] {
    fill: var(--region-color)
}

.o-region--kansai {
    --region-color: #348d8a
}

.o-region--kansai.o-region--map_area_fill .map__area[data-id=kansai] {
    fill: var(--region-color)
}

.o-region--chugoku {
    --region-color: #3d7c12
}

.o-region--chugoku.o-region--map_area_fill .map__area[data-id=chugoku] {
    fill: var(--region-color)
}

.o-region--shikoku {
    --region-color: #007bc5
}

.o-region--shikoku.o-region--map_area_fill .map__area[data-id=shikoku] {
    fill: var(--region-color)
}

.o-region--kyushu {
    --region-color: #c530bf
}

.o-region--kyushu.o-region--map_area_fill .map__area[data-id=kyushu] {
    fill: var(--region-color)
}

.o-region--okinawa {
    --region-color: #fa3938
}

.o-region--okinawa.o-region--map_area_fill .map__area[data-id=okinawa] {
    fill: var(--region-color)
}

.o-region--after_bg:after {
    background-color: var(--region-color) !important
}

.o-region--hover_color:hover {
    color: var(--region-color) !important
}





/* 基本設定系 */

.s-typography {
    line-height: 1.5
}

.s-typography--h3 i a,
.s-typography--h4 i a,
.s-typography--h5 i a,
.s-typography--link,
.s-typography--links a,
.s-typography>:is(h3, h4, h5) i a,
.s-typography>:is(p, ul, ol, dl) a,
.s-typography>a,
.s-typography table>a,
.type--legacy-small a,
.type--legacy a {
    text-decoration-line: underline;
    text-decoration-color: red;
    text-decoration-thickness: .06em;
    text-underline-offset: .1em;
    transition: color .2s, text-decoration-color .1s
}

.s-typography--h3 i a:hover,
.s-typography--h4 i a:hover,
.s-typography--h5 i a:hover,
.s-typography--link:hover,
.s-typography--links a:hover,
.s-typography>:is(h3, h4, h5) i a:hover,
.s-typography>:is(p, ul, ol, dl) a:hover,
.s-typography>a:hover,
.s-typography table>a:hover,
.type--legacy-small a:hover,
.type--legacy a:hover {
    color: red;
    text-decoration-color: rgba(255, 0, 0, 0)
}

.s-typography--h3>a,
.s-typography--h4>a,
.s-typography--h5>a,
.s-typography--link-hover,
.s-typography>:is(h3, h4, h5)>a {
    transition: color .2s, text-decoration-color .1s
}

.s-typography--h3>a:hover,
.s-typography--h4>a:hover,
.s-typography--h5>a:hover,
.s-typography--link-hover:hover,
.s-typography>:is(h3, h4, h5)>a:hover {
    color: red;
    text-decoration: rgba(255, 0, 0, 0)
}

.s-typography>:is(h3, h4, h5, ul, ol, dl, p) {
    max-width: 74rem
}

.s-typography--h3,
.s-typography>h3 {
    font-size: 1.7777778em;
    line-height: 1.125;
    font-weight: 500;
    letter-spacing: -.0067em
}

.s-typography>h3 {
    margin: 1.0666667em 0 .5333333em
}

@media(min-width:780px) {

    .s-typography--h3,
    .s-typography>h3 {
        font-size: 2.2222222em;
        line-height: 1.2
    }

    .s-typography>h3 {
        margin-block: 1.1111111em .4444444em
    }
}

.s-typography--h4,
.s-typography>h4 {
    font-size: 1.05555556em;
    line-height: 1.26315789
}

.s-typography>h4 {
    margin-block: 1.684210525em .84210526em
}

.s-typography--h5,
.s-typography>h5 {
    font-size: 1.027778em;
    line-height: 1.2972973;
    font-weight: 500
}

.s-typography>h5 {
    margin-block: 1.5135135em .864864em
}

.s-typography--h3 i,
.s-typography--h4 i,
.s-typography--h5 i,
.s-typography>:is(h3, h4, h5) i {
    font-weight: 300;
    font-style: normal
}

.s-typography--h3:first-child,
.s-typography--h4:first-child,
.s-typography--h5:first-child,
.s-typography>:is(h3, h4, h5):first-child {
    margin-top: 0
}

.s-typography>.s-typography:not(:first-child)>h3 {
    margin-top: 1.3333333em
}

.s-typography hr+h3 {
    margin-top: 0
}

.s-typography>:is(.image+h3, .table+h3, .codeblock+h3) {
    margin-top: 1.3333333em
}

@media(min-width:780px) {
    .s-typography>:is(.image+h3, .table+h3, .codeblock+h3) {
        margin-top: 1.6em
    }
}

.s-typography>:is(.image+h4, .alert+h4, .table+h4, .codeblock+h4) {
    margin-top: 2.2222222em
}

.s-typography p {
    margin-bottom: 1.3333333em
}

.s-typography p:last-child {
    margin-bottom: 0
}

.s-typography small {
    color: #676767
}

.s-typography>:is(ul, ol, dl) {
    margin-bottom: 1.3333333em
}

.s-typography>:is(ul, ol, dl)>*+* {
    margin-top: 1.3333333em
}

.s-typography>:is(ul, ol, dl) p {
    margin-bottom: 1.3333333em
}

.s-typography>:is(ul, ol) dl>*,
.s-typography>:is(ul, ol) li,
.s-typography>dl :is(li, dt, dd) {
    position: relative;
    padding-left: 1.5em
}

.s-typography>:is(ul, ol, dl) :is(ul, ol, dl) {
    margin-top: .6666667em
}

.s-typography>:is(ul, ol, dl) p+:is(ul, ol, dl) {
    margin-top: -.6666667em;
    margin-bottom: 1.3333333em
}

.s-typography>:is(ul, ol, dl)>:is(li, dd) :is(li, dd) {
    margin-bottom: .6666667em
}

.s-typography>p+:is(ul, ol, dl) {
    margin-top: -.3333333em
}

.s-typography>p+:is(ul, ol, dl).list--compact {
    margin-top: -.66667em
}

.s-typography .list--compact {
    margin-bottom: .66667em
}

.s-typography>:is(ul, ol, dl) dt:before,
.s-typography>:is(ul, ol, dl) ul>li:before,
.s-typography>ul>li:before {
    content: "•";
    position: absolute;
    left: .425em;
    font-size: 1.2em;
    line-height: 1.35
}

.s-typography :is(ol, ul, dl) {
    counter-reset: a
}

.s-typography>:is(ul, ol, dl) ol li:before,
.s-typography>ol li:before {
    content: counter(a) ".";
    counter-increment: a;
    position: absolute;
    left: .375em;
    color: #545454
}

.s-typography>:is(ul, ol, dl) dt {
    font-weight: 700
}

.s-typography>:is(ul, ol, dl) dt i {
    font-weight: 300;
    font-style: normal
}

.s-typography>:is(ul, ol, dl) dt+dd {
    margin-top: 0
}

.s-typography hr {
    border: none;
    background-color: #eaeaea;
    height: 1px;
    margin: 2.6666667em 0
}

.s-typography a.button {
    text-decoration: none
}

.s-typography>.image {
    border-radius: .75rem
}

.s-typography>:is(.image, .media) {
    margin-block: 1.7777777em
}

.s-typography>.image--float {
    margin-top: 0
}

.s-typography>.ad_spot {
    margin-bottom: 1.3333333em
}

.s-typography>.alert {
    margin-bottom: 4rem
}

.s-typography>.spot_list {
    margin-bottom: 1.3333333em
}

.s-typography>*+.section_links {
    margin-top: 3.2rem
}

.s-typography>.link_gallery {
    margin-bottom: 4rem
}

.s-typography>h3+.link_gallery,
.s-typography>h3+p+.link_gallery {
    margin-top: 1.3333333em;
    margin-bottom: 5.6rem
}

@media(min-width:780px) {

    .s-typography>h3+.link_gallery,
    .s-typography>h3+p+.link_gallery {
        margin-bottom: 8.8rem
    }
}

.s-typography .table {
    margin: 4rem auto
}

.s-typography .get_there_cards {
    margin-bottom: 4rem
}

.s-typography>.app_error {
    margin-bottom: 1.7777777em
}


@media(max-width:599px) {
    .feature_map__preview_box {
        overflow: hidden !important;
        max-width: 100vw !important;
        height: auto !important;
    }

    .feature_map__preview_box .owl-stage-outer {
        overflow: hidden !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
        margin-top: 16px;
        margin-bottom: 16px;
    }

    .feature_map__preview_box .owl-stage {
        height: auto !important;
    }

    .feature_map__preview_box .owl-item {
        height: auto !important;
    }
}


/* ========================================
    マップスポット位置調整
======================================== */

/* ========== 札幌 ========== */
.map__spot--destination-sapporo.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-sapporo.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-sapporo.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-sapporo.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-sapporo.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 16.75%;
    left: 62.15%;
}

.map__spot--destination-sapporo.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-sapporo.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-sapporo.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-sapporo.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-sapporo.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 17.25%;
    left: 62.85%;
}

/* ========== 千歳 ========== */
.map__spot--destination-chitose.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-chitose.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-chitose.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-chitose.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-chitose.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 21.75%;
    left: 54.15%;
}

.map__spot--destination-chitose.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-chitose.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-chitose.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-chitose.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-chitose.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 22.25%;
    left: 56.85%;
}

/* ========== 函館 ========== */
.map__spot--destination-hakodate.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-hakodate.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-hakodate.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-hakodate.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-hakodate.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 29.5%;
    left: 83.75%;
}

.map__spot--destination-hakodate.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-hakodate.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-hakodate.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-hakodate.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-hakodate.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 29.5%;
    left: 83%;
}

/* ========== 旭川 ========== */
.map__spot--destination-asahikawa.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-asahikawa.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-asahikawa.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-asahikawa.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-asahikawa.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 2.5%;
    left: 85.75%;
}

.map__spot--destination-asahikawa.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-asahikawa.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-asahikawa.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-asahikawa.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-asahikawa.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 2.5%;
    left: 86%;
}

/* ========== 秋田 ========== */
.map__spot--destination-akita.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-akita.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-akita.map__spot--mobile.map__spot--label_only.lang-cht {
    top: 35.5%;
    left: 56%;
}

.map__spot--destination-akita.map__spot--mobile.map__spot--label_only.lang-en {
    top: 35.5%;
    left: 55.75%;
}

.map__spot--destination-akita.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 35.5%;
    left: 54.25%;
}

.map__spot--destination-akita.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-akita.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-akita.map__spot--desktop.map__spot--label_only.lang-cht {
    top: 35.25%;
    left: 60.25%;
}

.map__spot--destination-akita.map__spot--desktop.map__spot--label_only.lang-en {
    top: 35.25%;
    left: 60%;
}

.map__spot--destination-akita.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 35.25%;
    left: 59%;
}

/* ========== 盛岡 ========== */
.map__spot--destination-morioka.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-morioka.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-morioka.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-morioka.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-morioka.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 40.25%;
    left: 84.75%;
}

.map__spot--destination-morioka.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-morioka.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-morioka.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-morioka.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-morioka.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 40.75%;
    left: 84%;
}

/* ========== 仙台 ========== */
.map__spot--destination-sendai.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-sendai.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-sendai.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-sendai.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-sendai.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 50%;
    left: 83.75%;
}

.map__spot--destination-sendai.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-sendai.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-sendai.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-sendai.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-sendai.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 48.75%;
    left: 83%;
}

/* ========== 山形 ========== */
.map__spot--destination-yamagata.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-yamagata.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-yamagata.map__spot--mobile.map__spot--label_only.lang-cht {
    top: 45.5%;
    left: 49.75%;
}

.map__spot--destination-yamagata.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-yamagata.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 45.5%;
    left: 46.75%;
}

.map__spot--destination-yamagata.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-yamagata.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-yamagata.map__spot--desktop.map__spot--label_only.lang-cht {
    top: 46.25%;
    left: 56%;
}

.map__spot--destination-yamagata.map__spot--desktop.map__spot--label_only.lang-en {
    top: 46.25%;
    left: 50%;
}

.map__spot--destination-yamagata.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 46.25%;
    left: 51%;
}

/* ========== 郡山 ========== */
.map__spot--destination-koriyama.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-koriyama.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-koriyama.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-koriyama.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-koriyama.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 56.5%;
    left: 77.75%;
}

.map__spot--destination-koriyama.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-koriyama.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-koriyama.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-koriyama.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-koriyama.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 55.75%;
    left: 76%;
}

/* ========== 東京 ========== */
.map__spot--destination-tokyo.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-tokyo.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-tokyo.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-tokyo.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-tokyo.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 67.8%;
    left: 74.5%;
}

.map__spot--destination-tokyo.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-tokyo.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-tokyo.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-tokyo.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-tokyo.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 65.35%;
    left: 74.25%;
}

/* ========== 名古屋 ========== */
.map__spot--destination-nagoya.map__spot--label_only.lang-jp,
.map__spot--destination-nagoya.map__spot--label_only.lang-chs,
.map__spot--destination-nagoya.map__spot--label_only.lang-cht {
    top: 86.5%;
    left: 46.25%;
}

.map__spot--destination-nagoya.map__spot--label_only.lang-en {
    top: 86.5%;
    left: 43.75%;
}

.map__spot--destination-nagoya.map__spot--label_only.lang-kr {
    top: 86.5%;
    left: 45.75%;
}

/* ========== 京都 ========== */
.map__spot--destination-kyoto.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-kyoto.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-kyoto.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-kyoto.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-kyoto.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 46%;
    left: 35.75%;
}

.map__spot--destination-kyoto.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-kyoto.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-kyoto.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-kyoto.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-kyoto.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 51.4%;
    left: 41%;
}

/* ========== 大阪 ========== */
.map__spot--destination-osaka.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-osaka.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-osaka.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-osaka.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-osaka.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 53.5%;
    left: 35%;
}

.map__spot--destination-osaka.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-osaka.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-osaka.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-osaka.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-osaka.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 57.5%;
    left: 35.25%;
}

/* ========== 広島 ========== */
.map__spot--destination-hiroshima.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-hiroshima.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-hiroshima.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-hiroshima.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-hiroshima.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 58.75%;
    left: 22%;
}

.map__spot--destination-hiroshima.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-hiroshima.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-hiroshima.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-hiroshima.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-hiroshima.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 62%;
    left: 22%;
}

/* ========== 香川 ========== */
.map__spot--destination-kagawa.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-kagawa.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-kagawa.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-kagawa.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 97.75%;
    left: 30.5%;
}

.map__spot--destination-kagawa.map__spot--mobile.map__spot--label_only.lang-en {
    top: 97.75%;
    left: 31%;
}

.map__spot--destination-kagawa.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-kagawa.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-kagawa.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-kagawa.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-kagawa.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 85%;
    left: 30.5%;
}

/* ========== 福岡 ========== */
.map__spot--destination-fukuoka.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-fukuoka.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-fukuoka.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-fukuoka.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-fukuoka.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 64.5%;
    left: 10.25%;
}

.map__spot--destination-fukuoka.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-fukuoka.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-fukuoka.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-fukuoka.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-fukuoka.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 65.5%;
    left: 10.25%;
}

/* ========== 佐賀 ========== */
.map__spot--destination-saga.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-saga.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-saga.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-saga.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-saga.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 54.5%;
    left: 7.25%;
}

.map__spot--destination-saga.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-saga.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--destination-saga.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-saga.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--destination-saga.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 69.5%;
    left: 7.25%;
}

/* ========== 長崎 ========== */
.map__spot--destination-nagasaki.map__spot--mobile {
    top: 96%;
}

.map__spot--destination-nagasaki.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-nagasaki.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-nagasaki.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-nagasaki.map__spot--mobile.map__spot--label_only.lang-cht {
    left: 0.5%;
}

.map__spot--destination-nagasaki.map__spot--mobile.map__spot--label_only.lang-kr {
    left: 0;
}

.map__spot--destination-nagasaki.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-nagasaki.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-nagasaki.map__spot--desktop.map__spot--label_only.lang-cht {
    top: 96.25%;
    left: 0.85%;
}

.map__spot--destination-nagasaki.map__spot--desktop.map__spot--label_only.lang-en {
    top: 96.25%;
    left: -1.5%;
}

.map__spot--destination-nagasaki.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 96.25%;
    left: -0.8%;
}

/* ========== 熊本 ========== */
.map__spot--destination-kumamoto.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-kumamoto.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-kumamoto.map__spot--mobile.map__spot--label_only.lang-cht {
    top: 103%;
    left: 10.45%;
}

.map__spot--destination-kumamoto.map__spot--mobile.map__spot--label_only.lang-en {
    top: 103%;
    left: 4.45%;
}

.map__spot--destination-kumamoto.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 103%;
    left: 6.45%;
}

.map__spot--destination-kumamoto.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-kumamoto.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-kumamoto.map__spot--desktop.map__spot--label_only.lang-cht {
    top: 101.25%;
    left: 10.75%;
}

.map__spot--destination-kumamoto.map__spot--desktop.map__spot--label_only.lang-en {
    top: 102.25%;
    left: 7.15%;
}

.map__spot--destination-kumamoto.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 102.25%;
    left: 8.15%;
}

/* ========== 鹿児島 ========== */
.map__spot--destination-kagoshima.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-kagoshima.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-kagoshima.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-kagoshima.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-kagoshima.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 94.5%;
    left: 14%;
}


.map__spot--destination-kagoshima.map__spot--desktop {
    top: 99%;
}
.map__spot--destination-kagoshima.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-kagoshima.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-kagoshima.map__spot--desktop.map__spot--label_only.lang-cht{
    left: 16%;
}

.map__spot--destination-kagoshima.map__spot--desktop.map__spot--label_only.lang-en {
    left: 14.5%;
}

.map__spot--destination-kagoshima.map__spot--desktop.map__spot--label_only.lang-kr {
    left: 15%;
}

/* ========== 大分 ========== */
.map__spot--destination-oita.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--destination-oita.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--destination-oita.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--destination-oita.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--destination-oita.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 89.3%;
    left: 17.5%;
}


.map__spot--destination-oita.map__spot--desktop {
    top: 90%;
}
.map__spot--destination-oita.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--destination-oita.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--destination-oita.map__spot--desktop.map__spot--label_only.lang-cht{
    left: 20.3%;
}

.map__spot--destination-oita.map__spot--desktop.map__spot--label_only.lang-en {
    left: 20.3%;
}

.map__spot--destination-oita.map__spot--desktop.map__spot--label_only.lang-kr {
    left: 19.2%;
}

/* ========== 地域名 ========== */
/* 北海道 */
.map__spot--region-hokkaido.map__spot--label_only.lang-jp,
.map__spot--region-hokkaido.map__spot--label_only.lang-chs,
.map__spot--region-hokkaido.map__spot--label_only.lang-cht {
    top: 14.25%;
    left: 81.5%;
}

.map__spot--region-hokkaido.map__spot--label_only.lang-en {
    top: 11.75%;
    left: 82.5%;
}

.map__spot--region-hokkaido.map__spot--label_only.lang-kr {
    top: 13.75%;
    left: 82.5%;
}

/* 東北 */
.map__spot--region-tohoku.map__spot--label_only.lang-jp,
.map__spot--region-tohoku.map__spot--label_only.lang-en,
.map__spot--region-tohoku.map__spot--label_only.lang-chs,
.map__spot--region-tohoku.map__spot--label_only.lang-cht,
.map__spot--region-tohoku.map__spot--label_only.lang-kr {
    top: 41.5%;
    left: 71%;
}

/* 関東 */
.map__spot--region-kanto.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-kanto.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-kanto.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-kanto.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-kanto.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 62.75%;
    left: 60.75%;
}

.map__spot--region-kanto.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-kanto.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-kanto.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-kanto.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-kanto.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 63.25%;
    left: 61.75%;
}

/* 中部 */
.map__spot--region-chubu.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-chubu.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-chubu.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-chubu.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-chubu.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 67%;
    left: 51%;
}

.map__spot--region-chubu.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-chubu.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-chubu.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-chubu.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-chubu.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 66.25%;
    left: 51%;
}

/* 関西 */
.map__spot--region-kansai.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-kansai.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-kansai.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-kansai.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-kansai.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 75.25%;
    left: 36.25%;
}

.map__spot--region-kansai.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-kansai.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-kansai.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-kansai.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-kansai.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 74.5%;
    left: 38.75%;
}

/* 中国 */
.map__spot--region-chugoku.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-chugoku.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-chugoku.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-chugoku.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-chugoku.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 70.5%;
    left: 31.25%;
}

.map__spot--region-chugoku.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-chugoku.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-chugoku.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-chugoku.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-chugoku.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 70.5%;
    left: 27.5%;
}

/* 四国 */
.map__spot--region-shikoku.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-shikoku.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-shikoku.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-shikoku.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-shikoku.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 79%;
    left: 26.75%;
}

.map__spot--region-shikoku.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-shikoku.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-shikoku.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-shikoku.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-shikoku.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 78.85%;
    left: 28%;
}

/* 九州 */
.map__spot--region-kyushu.map__spot--mobile.map__spot--label_only.lang-jp,
.map__spot--region-kyushu.map__spot--mobile.map__spot--label_only.lang-en,
.map__spot--region-kyushu.map__spot--mobile.map__spot--label_only.lang-chs,
.map__spot--region-kyushu.map__spot--mobile.map__spot--label_only.lang-cht,
.map__spot--region-kyushu.map__spot--mobile.map__spot--label_only.lang-kr {
    top: 82.75%;
    left: 11%;
}

.map__spot--region-kyushu.map__spot--desktop.map__spot--label_only.lang-jp,
.map__spot--region-kyushu.map__spot--desktop.map__spot--label_only.lang-en,
.map__spot--region-kyushu.map__spot--desktop.map__spot--label_only.lang-chs,
.map__spot--region-kyushu.map__spot--desktop.map__spot--label_only.lang-cht,
.map__spot--region-kyushu.map__spot--desktop.map__spot--label_only.lang-kr {
    top: 81.75%;
    left: 12%;
}

/* 沖縄 */
.map__spot--region-okinawa.map__spot--label_only.lang-jp,
.map__spot--region-okinawa.map__spot--label_only.lang-en,
.map__spot--region-okinawa.map__spot--label_only.lang-chs,
.map__spot--region-okinawa.map__spot--label_only.lang-cht,
.map__spot--region-okinawa.map__spot--label_only.lang-kr {
    top: 88%;
    left: 85%;
}
