:where(button, input, select) {
    margin: 0;
}

.st2-hero--general-search__tab-box {
    /* background-color: rgba(255,255,255,.88) */
}

.st2-hero--general-search__tab-box.this-active {
    display: block
}

@media(max-width: 736px) {
    .st2-hero--general-search__tab-box.this-active {
        display:flex;
        align-items: center
    }
}

@media(max-width: 736px) {
    .modal-domestic-stay-window-is-active .st2-hero--general-search__tab-box.tab--domestic-stay {
        opacity:1;
        visibility: visible;
        overflow-y: auto;
        -ms-overflow-style: -ms-autohiding-scrollbar
    }
}

@media(max-width: 736px)and (max-height: 97.344vw) {
    .modal-domestic-stay-window-is-active .st2-hero--general-search__tab-box.tab--domestic-stay {
        display:block
    }
}

@media(max-width: 736px) {
    .modal-domestic-tour-window-is-active .st2-hero--general-search__tab-box.tab--domestic-tour {
        opacity:1;
        visibility: visible;
        overflow-y: auto;
        -ms-overflow-style: -ms-autohiding-scrollbar
    }
}

@media(max-width: 736px)and (max-height: 110.938vw) {
    .modal-domestic-tour-window-is-active .st2-hero--general-search__tab-box.tab--domestic-tour {
        display:block
    }
}

@media(max-width: 736px) {
    .modal-overseas-tour-window-is-active .st2-hero--general-search__tab-box.tab--overseas-tour {
        opacity:1;
        visibility: visible;
        overflow-y: auto;
        -ms-overflow-style: -ms-autohiding-scrollbar
    }
}

@media(max-width: 736px)and (max-height: 110.938vw) {
    .modal-overseas-tour-window-is-active .st2-hero--general-search__tab-box.tab--overseas-tour {
        display:block
    }
}

@media(max-width: 736px) {
    .modal-japan-railways-plus-stay-window-is-active .st2-hero--general-search__tab-box.tab--japan-railways-plus-stay {
        opacity:1;
        visibility: visible;
        overflow-y: auto;
        -ms-overflow-style: -ms-autohiding-scrollbar
    }
}

@media(max-width: 736px)and (max-height: 110.938vw) {
    .modal-japan-railways-plus-stay-window-is-active .st2-hero--general-search__tab-box.tab--japan-railways-plus-stay {
        display:block
    }
}

@media(min-width: 737px) {
    .st2-hero--general-search__tab-box {
        display:none;
        padding: 0rem 2rem
    }
}

@media(max-width: 736px) {
    .st2-hero--general-search__tab-box {
        padding:1rem;
        background-color: rgba(0,0,0,.64);
        -webkit-backdrop-filter: blur(0.4rem);
        backdrop-filter: blur(0.4rem);
        transition: all .5s cubic-bezier(0.25, 0.8, 0.25, 1);
        position: fixed;
        z-index: 9999;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        visibility: hidden
    }
}

@media(max-width: 736px) {
    .st2-hero--general-search__tab-box>div {
        position:relative;
        padding: 1rem;
        background-color: #fff
    }
}

.st2-btn[data-btn-border=true] a {
    border-radius: 0.2rem
}

.st2-btn[data-btn-border=true] a.this-active i {
    transform: rotate(180deg)
}

.st2-heading--search+.st2-hero--form-grouping-wrapper {
    margin-top: 1rem
}

.st2-hero--form-grouping-wrapper>div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: -1rem;
    margin-left: -3rem
}

.st2-hero--form-grouping-wrapper .st2-hero--search__tabmenu {
    font-size: inherit
}

.st2-hero--form-grouping-wrapper .st2-hero--search__tabmenu input[type=radio] {
    display: inline
}

.st2-hero--form-grouping-wrapper .st2-hero--search__tabmenu--switch {
    cursor: pointer
}



.st2-hero--form-grouping {
    margin-left: 1rem
}

@media(min-width: 737px) {
    .st2-hero--form-grouping {
        margin-top:1rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping {
        margin-top:2rem;
        width: 100%
    }
}

@media(min-width: 737px) {
    .ie .st2-hero--form-grouping .st2-form--increment-number [type=text],.edge .st2-hero--form-grouping .st2-form--increment-number [type=text] {
        flex:0 1 auto
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping .st2-form--button-submit button[type=submit] {
        height:2rem
    }
}


.st2-hero--search__tabmenu[data-switch="1"]+.st2-hero--search__item .st2-form__area-lv1>option[value="114"],.st2-hero--search__tabmenu[data-switch="1"]+.st2-hero--form-grouping+.st2-hero--form-grouping+.st2-hero--form-grouping .st2-form__area-lv1>option[value="114"] {
    display: none
}


.st2-hero--form-grouping-01>div {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-01>div {
        width:35rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-01>div {
        width:100%;
        flex-wrap: wrap
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-01>div .st2-form--select {
        width:10rem;
        margin-left: 0.5rem;
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-01>div .st2-form--select {
        margin-top:1rem;
        width: 100%
    }
}
@media(min-width: 737px) {
    .st2-hero--form-grouping-06>div .st2-form--select {
        width:17.9rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-06>div .st2-form--select {
        margin-top:1rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-07>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 57.2rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-07>div {
        justify-content: flex-start;
        width: 40rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-07>div .st2-form--select {
        margin-left: 1rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-07>div .st2-form--select[aria-hidden=true] {
        display: none;
        opacity: 0;
        visibility: hidden
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-07>div .st2-form--select {
        width:16.7rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-07>div .st2-form--select {
        margin-top:1rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-08>div .st2-form--select {
        width:16.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-08>div .st2-form--select {
        margin-top:0.5rem
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-10>div .st2-form--select {
        width:16.5rem
    }

    .st2-search--holiday .st2-hero--form-grouping-10>div .st2-form--select {
        width: 22rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-10>div .st2-form--select {
        margin-top:0.5rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-11>div .st2-form--select {
        width:19rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-11>div .st2-form--select {
        margin-top:0.5rem
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-12>div .st2-form--select {
        width:26.8rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-12>div .st2-form--select {
        margin-top:0.5rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-14>div .st2-form--select {
        width:16.7rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-14>div .st2-form--select {
        margin-top:1rem
    }
}

.st2-hero--form-grouping-18>div .st2-form--select {
    width: 12rem
}

.st2-hero--form-grouping-19>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 73rem
}

.st2-hero--form-grouping-19>div .st2-form--select {
    width: 16rem
}


.st2-hero--form-grouping-24>div .st2-form--select {
    width: 31%
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-27>div .st2-form--select {
        width:16.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-27>div .st2-form--select {
        margin-top:0.5rem
    }
}

.st2-form--select {
    display: block
}

@media(max-width: 736px) {
    .st2-form--select {
        max-height:2.8rem
    }
}

.st2-form--select>span {
    display: inherit
}

.st2-form--select>span>span {
    display: inherit
}

.st2-form--select>span>span>span {
    display: inherit
}

.st2-form--select>span>span>span>span {
    position: relative;
    display: inherit
}

@media(max-width: 736px) {
    .st2-form--select>span>span>span>span {
        top:-0.8rem;
        transform: scale(0.625);
        transform-origin: 0;
        width: 160%
    }
}

.st2-form--select>span>span>span>span::after {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    height: 100%;
    background: no-repeat 50% 50% url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNiIgaGVpZ2h0PSIzNiI+PHBhdGggZmlsbD0iIzMzMyIgZD0iTTI0LjkgMTIuOUwxOCAxOS44bC02LjktNi45TDkgMTVsOSA5IDktOS0yLjEtMi4xeiIvPjwvc3ZnPg==);
    pointer-events: none;
    content: ""
}

@media(min-width: 737px) {
    .st2-form--select>span>span>span>span::after {
        background-size:50% 50%;
        width: 3.7rem
    }
}

@media(max-width: 736px) {
    .st2-form--select>span>span>span>span::after {
        background-size:80% 50%;
        width: 2.75rem
    }
}

@media(min-width: 1011px) {
    .st2-form--select.this-specific select {
        padding:0.9rem 3rem 0.8rem 1.2rem;
        font-size: 1.2rem
    }
}

@media(max-width: 1010px)and (min-width: 737px) {
    .st2-form--select.this-specific select {
        padding:0.7rem 3rem 0.7rem 1.2rem;
        font-size: 1.6rem
    }
}

.st2-form--select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    display: inherit;
    width: 100%;
    border: solid 1px #999;
    border-radius: 0.4rem;
    background: #fff;
    cursor: pointer;
    outline: none
}

.st2-form--select select::-ms-expand {
    display: none
}

.st2-form--select select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000
}

@media(min-width: 737px) {
    .st2-form--select select {
        padding:0.3rem 1.7rem 0.3rem 0.6rem
    }
}

@media(max-width: 736px) {
    .st2-form--select select {
        padding:0.88rem 4.4rem 0.88rem 1.2rem;
        font-size: 1.6rem
    }
}

.st2-form--select select.this-inactive {
    pointer-events: none;
    background: #eee
}

@media(max-width: 736px) {
    .st2-form--select.dp-lodging select {
        font-size:1.3rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping.st2-hero--form-grouping-13 .st2-form--button-submit button[type=submit] {
        height:5.8rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-02>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 20rem
    }
    .st2-hero--form-grouping-01>div>p,
    .st2-hero--form-grouping-02>div>p,
    .st2-hero--form-grouping-03>div>p,
    .st2-hero--form-grouping-04>div>p {
        margin: 0;
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-02>div>p {
        margin-bottom:0.6rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-03>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 30rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-03>div>p {
        margin-bottom:0.6rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-03>div .st2-form--input-text {
        margin-top:1rem
    }
}

@media(min-width: 737px) {
    .ie .st2-hero--form-grouping-03>div .st2-form--input-text,.edge .st2-hero--form-grouping-03>div .st2-form--input-text,.firefox .st2-hero--form-grouping-03>div .st2-form--input-text {
        width:19.2rem
    }
}

.st2-hero--form-grouping-04>div {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-04>div {
        width:24rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div {
        width:100%;
        flex-wrap: wrap
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div>* {
        width:47%
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div>*:nth-child(1) {
        order:1
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div>*:nth-child(2) {
        margin-top:0.25rem;
        order: 3
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div>*:nth-child(3) {
        order:2
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div>*:nth-child(4) {
        margin-top:0.25rem;
        order: 4
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-04>div .st2-form--increment-number input {
        width:3rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-04>div .st2-form--increment-number input {
        width:9rem
    }
}

.firefox .st2-hero--form-grouping-04>div .st2-form--increment-number input {
    flex-basis: auto
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-05>div {
        width:5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-05>div {
        width:100%
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-06>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 23rem
    }
}




@media(min-width: 737px) {
    .st2-hero--form-grouping-08>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 40rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-08>div {
        width: 32rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-08>div>div {
        margin-top:1rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-08>div .st2-form--input-text {
        width:16.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-08>div .st2-form--input-text {
        margin-top:0.25rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-08>div .st2-form--input-checkbox {
        margin-top:1.5rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-09>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 18rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-number {
        margin-top:0.5rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-number input {
        width:4.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-number input {
        flex:0 1 auto;
        width: 100%
    }
}

.firefox .st2-hero--form-grouping-09>div .st2-form--increment-number input {
    flex-basis: auto
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-select {
        width:100%;
        margin-top: 0.5rem
    }
}

.ie .st2-hero--form-grouping-09>div .st2-form--increment-select,.edge .st2-hero--form-grouping-09>div .st2-form--increment-select {
    margin-left: 1rem;
    flex-grow: 1
}

.st2-hero--form-grouping-09>div .st2-form--increment-select label {
    position: relative
}

.st2-hero--form-grouping-09>div .st2-form--increment-select label::after {
    content: normal
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-select label {
        border-top:1px solid #cfcfcf;
        border-bottom: 1px solid #cfcfcf;
        width: 100%
    }
}

.st2-hero--form-grouping-09>div .st2-form--increment-select button {
    width: auto
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-select select {
        padding:2px 1rem 2px 2rem;
        width: 6.2rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-09>div .st2-form--increment-select select {
        padding: 2px 0;
        text-align: center;
        width: 7.7rem
    }

    .firefox .st2-hero--form-grouping-09>div .st2-form--increment-select select {
        padding: 2px 1rem
    }

    .ie .st2-hero--form-grouping-09>div .st2-form--increment-select select,.edge .st2-hero--form-grouping-09>div .st2-form--increment-select select {
        width: 100%
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09>div .st2-form--increment-select select {
        width:1em;
        margin: 0 auto;
        border: none;
        padding: 2px 0 3px 0
    }
}

.st2-hero--form-grouping-09__selected-txt {
    pointer-events: none;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    width: 6.2rem;
    background-color: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    display: inherit;
    border: solid 1px #999;
    border-right: none;
    border-left: none;
    border-radius: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-09__selected-txt {
        display:none
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-10>div {
        width:15rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-10>div {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 27.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-10>div {
        width:100%
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-11>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 66.7rem
    }

    #tab--overseas-tour .st2-hero--form-grouping-11>div {
        display: block;
        width: 15rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-11>div p {
        width:5.4rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-12>div {
        display:flex;
        align-items: baseline;
        justify-content: space-between;
        width: 33.4rem
    }
}

@media(min-width: 737px) {
    .firefox .st2-hero--form-grouping-12>div {
        align-items:center
    }
}

@media(min-width: 1101px) {
    .ie .st2-hero--form-grouping-12>div,.edge .st2-hero--form-grouping-12>div {
        width:34.1rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-12>div p {
        width:5.4rem
    }
}

@media(min-width: 737px) {
    .firefox .st2-hero--form-grouping-12>div p {
        transform:translateY(-45%)
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-12>div .st2-form--input-text {
        width:26.8rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-12>div .st2-form--input-text {
        margin-top:0.25rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-12>div .st2-form--input-checkbox {
        margin-top:0.5rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-12>div .st2-form--input-checkbox {
        margin-top:0.25rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-13>div {
        width:30.3rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-13>div {
        width:100%
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-14>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 74.8rem
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-15>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 21.6rem
    }

    .st2-hero--form-grouping-15>div p {
        white-space: nowrap
    }
}

.st2-hero--form-grouping-16>div {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-16>div {
        width:55rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-16>div {
        width:100%;
        flex-wrap: wrap
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select {
        width:100%;
        margin-top: 0.5rem
    }
}

.ie .st2-hero--form-grouping-16>div .st2-form--increment-select,.edge .st2-hero--form-grouping-16>div .st2-form--increment-select {
    margin-left: 1rem;
    flex-grow: 1
}

.st2-hero--form-grouping-16>div .st2-form--increment-select label::after {
    content: normal
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select label {
        border-top:1px solid #cfcfcf;
        border-bottom: 1px solid #cfcfcf;
        width: 100%
    }
}

.st2-hero--form-grouping-16>div .st2-form--increment-select button {
    width: auto
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select select {
        padding:2px 1rem 2px 2rem;
        width: 5rem
    }

    .firefox .st2-hero--form-grouping-16>div .st2-form--increment-select select {
        padding: 2px 1rem
    }

    .ie .st2-hero--form-grouping-16>div .st2-form--increment-select select,.edge .st2-hero--form-grouping-16>div .st2-form--increment-select select {
        width: 100%
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select select {
        width:1em;
        margin: 0 auto;
        border: none;
        padding: 2px 0 3px 0
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select:last-child select {
        padding:2px 0.5rem 2px 1rem;
        width: 8rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-16>div .st2-form--increment-select:last-child select {
        width:7rem
    }
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-17>div {
        display:flex;
        flex-direction: column;
        width: 15.4rem
    }
}

@media(min-width: 737px) {
    .ie .st2-hero--form-grouping-17>div .st2-form--input-text,.edge .st2-hero--form-grouping-17>div .st2-form--input-text,.firefox .st2-hero--form-grouping-17>div .st2-form--input-text {
        width:19.2rem
    }
}

.st2-hero--form-grouping-18>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 19rem
}

.st2-hero--form-grouping-20>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 22rem
}

.st2-hero--form-grouping-20>div .st2-form--input-text {
    width: 17rem
}

@media(min-width: 737px) {
    .ie .st2-hero--form-grouping-20>div .st2-form--input-text,.edge .st2-hero--form-grouping-20>div .st2-form--input-text,.firefox .st2-hero--form-grouping-20>div .st2-form--input-text {
        width:19.2rem
    }
}

.st2-hero--form-grouping-21>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 40rem
}

.st2-hero--form-grouping-21>div .st2-form--increment-number input {
    width: 5rem
}

.firefox .st2-hero--form-grouping-21>div .st2-form--increment-number input {
    flex-basis: auto
}

.st2-hero--form-grouping-21>div .st2-form--input-text input {
    width: 10rem
}

.st2-hero--form-grouping-22>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 17rem
}

.st2-hero--form-grouping-22>div .st2-form--increment-number input {
    width: 5rem
}

.firefox .st2-hero--form-grouping-22>div .st2-form--increment-number input {
    flex-basis: auto
}

.st2-hero--form-grouping-23>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 50rem
}

.st2-hero--form-grouping-24 {
    width: 100%
}

.st2-hero--form-grouping-24>div {
    display: flex;
    align-items: center;
    justify-content: space-between
}


.st2-hero--form-grouping-25>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 41.5rem
}

.st2-hero--form-grouping-25>div .st2-form--input-text {
    width: 18rem
}

.st2-hero--form-grouping-26>div {
    width: 15rem
}

@media(min-width: 737px) {
    .st2-hero--form-grouping-27>div {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 21.6rem
    }
}

@media(max-width: 736px) {
    .st2-hero--form-grouping-27>div>div {
        margin-top:1rem
    }
}


@media(min-width: 737px) {
    .st2-hero--form-grouping-28>div {
        width:15.6rem
    }
}

.st2-form--input-radio {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer
}

@media(min-width: 737px) {
    .st2-form--input-radio {
        margin-right:0.4rem
    }
}

@media(max-width: 736px) {
    .st2-form--input-radio {
        margin-right:0.8rem
    }
}

.st2-form--input-radio>span {
    display: inherit;
    vertical-align: inherit
}

.st2-form--input-radio>span>span {
    display: inherit;
    vertical-align: inherit
}

.st2-form--input-radio>span>span>span {
    display: inherit;
    vertical-align: inherit
}

.st2-form--input-radio>span>span>span>span {
    display: flex;
    align-items: center
}

.st2-form--input-radio [type=radio] {
    cursor: pointer
}

.st2-form--input-radio [type=radio]+span {
    margin-left: 0.3rem
}

.st2-form--input-radio span {
    display: block;
    line-height: 1
}

.modal-static .flatpickr-calendar {
    visibility: hidden
}

.modal-static.active {
    visibility: visible
}

.modal-static.active .flatpickr-calendar {
    visibility: visible
}

.st2-form--increment-number,.st2-form--increment-number-static {
    display: block
}

.st2-form--increment-number.this-inactive,.st2-form--increment-number-static.this-inactive {
    position: relative
}

.st2-form--increment-number.this-inactive::after,.st2-form--increment-number-static.this-inactive::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(238,238,238,.8);
    width: 100%;
    height: 100%
}

@media(max-width: 736px) {
    .st2-form--increment-number.this-inactive::after,.st2-form--increment-number-static.this-inactive::after {
        transform:scaleY(0.625)
    }

    .domestic-stay .st2-form--increment-number.this-inactive::after,.domestic-stay .st2-form--increment-number-static.this-inactive::after {
        top: -0.8rem
    }
}

.st2-form--increment-number>span,.st2-form--increment-number-static>span {
    display: inherit
}

.st2-form--increment-number>span>span,.st2-form--increment-number-static>span>span {
    display: inherit
}

.st2-form--increment-number>span>span>span,.st2-form--increment-number-static>span>span>span {
    display: inherit
}

.st2-form--increment-number>span>span>span>span,.st2-form--increment-number-static>span>span>span>span {
    display: flex;
    align-content: stretch
}

@media(max-width: 736px) {
    .st2-form--increment-number>span>span>span>span,.st2-form--increment-number-static>span>span>span>span {
        transform:scale(0.625);
        transform-origin: 0;
        width: 160%
    }
}

@media(max-width: 736px) {
    .st2-split-layout--domestic-stay-exclusive .st2-form--increment-number>span>span>span>span,.st2-split-layout--domestic-stay-exclusive .st2-form--increment-number-static>span>span>span>span {
        position:relative;
        top: -0.8rem
    }
}

.st2-form--increment-number button,.st2-form--increment-number-static button {
    flex-shrink: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    padding: 0;
    border: solid 1px #999;
    background-color: #fff;
    outline: none;
    cursor: pointer
}

@media(min-width: 737px) {
    .st2-form--increment-number button,.st2-form--increment-number-static button {
        width:2rem
    }
}

@media(max-width: 736px) {
    .st2-form--increment-number button,.st2-form--increment-number-static button {
        width:3.28rem
    }
}

.st2-form--increment-number button:first-child,
.st2-form--increment-number input:first-child,
.st2-form--increment-number-static button:first-child {
    border-radius: 0.4rem 0 0 0.4rem;
    width: 2rem!important;
}

.st2-form--increment-number button:last-child,
.st2-form--increment-number input:last-child,
.st2-form--increment-number-static button:last-child {
    border-radius: 0 0.4rem 0.4rem 0
}

.st2-form--increment-number button i,.st2-form--increment-number-static button i {
    display: block;
    margin: 0 auto
}

@media(min-width: 737px) {
    .st2-form--increment-number button i,.st2-form--increment-number-static button i {
        width:2.4rem;
        height: 2.4rem
    }
}

@media(max-width: 736px) {
    .st2-form--increment-number button i,.st2-form--increment-number-static button i {
        width:2.4rem;
        height: 2.4rem
    }
}

.st2-form--increment-number button i svg,.st2-form--increment-number-static button i svg {
    display: inherit;
    width: inherit;
    height: inherit;
    fill: #333
}

.st2-form--increment-number input[type=text],.st2-form--increment-number-static input[type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    display: block;
    border: solid 1px #999;
    border-right: none;
    border-left: none;
    background: #fff;
    text-align: center;
    cursor: pointer;
    transition: background-color .5s cubic-bezier(0.25, 0.8, 0.25, 1);
    letter-spacing: -0.5pt;
    flex-grow: 1;
    flex-basis: auto;
    width: 0
}

@media(min-width: 737px) {
    .st2-form--increment-number-container[data-size=large] .st2-form--increment-number input[type=text],.st2-form--increment-number-container[data-size=large] .st2-form--increment-number-static input[type=text] {
        padding:0.7rem 0
    }
}

@media(max-width: 736px) {
    .st2-form--increment-number-container[data-size=large] .st2-form--increment-number input[type=text],.st2-form--increment-number-container[data-size=large] .st2-form--increment-number-static input[type=text] {
        padding:0.7rem 0
    }
}

@media(max-width: 736px) {
    .st2-form--increment-number input[type=text],.st2-form--increment-number-static input[type=text] {
        font-size:1.6rem
    }
}

@media(min-width: 737px) {
    .firefox .st2-split-layout--japan-railways-plus-stay-exclusive .st2-form--increment-number input[type=text],.firefox .st2-split-layout--japan-railways-plus-stay-exclusive .st2-form--increment-number-static input[type=text] {
        max-width:calc(100% - 6rem)
    }
}

@media(max-width: 736px) {
    .firefox .st2-split-layout--japan-railways-plus-stay-exclusive .st2-form--increment-number input[type=text],.firefox .st2-split-layout--japan-railways-plus-stay-exclusive .st2-form--increment-number-static input[type=text] {
        max-width:calc(100% - 4rem)
    }
}

@media(min-width: 737px) {
    .st2-split-layout--domestic-stay-exclusive .st2-form--increment-number input[type=text],.st2-split-layout--domestic-stay-exclusive .st2-form--increment-number-static input[type=text] {
        max-width:calc(100% - 5.8rem);
        font-size: 1.2rem
    }
}

@media(max-width: 736px) {
    .st2-split-layout--domestic-stay-exclusive .st2-form--increment-number input[type=text],.st2-split-layout--domestic-stay-exclusive .st2-form--increment-number-static input[type=text] {
        flex-shrink:0;
        flex-basis: 0
    }
}

@media(max-width: 736px) {
    .firefox .st2-split-layout--domestic-stay-exclusive .st2-form--increment-number input[type=text],.firefox .st2-split-layout--domestic-stay-exclusive .st2-form--increment-number-static input[type=text] {
        flex-basis:auto;
        width: calc(100% - 4.1rem)
    }
}

@media(max-width: 736px) {
    .ie .st2-split-layout--domestic-stay-exclusive__item--diff .st2-form--increment-number input[type=text],.edge .st2-split-layout--domestic-stay-exclusive__item--diff .st2-form--increment-number input[type=text],.ie .st2-split-layout--domestic-stay-exclusive__item--diff .st2-form--increment-number-static input[type=text],.edge .st2-split-layout--domestic-stay-exclusive__item--diff .st2-form--increment-number-static input[type=text] {
        width:8.4rem;
        flex-basis: auto
    }
}

.st2-holidaydp-form svg.icn-remove,.st2-holidaydp-form svg.icn-add {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: 2rem;
    height: 2rem;
    pointer-events: none
}


.st2-form--button-submit {
    display: inherit
}

.st2-form--button-submit>span {
    display: inherit
}

.st2-form--button-submit>span>span {
    display: inherit
}

.st2-form--button-submit>span>span>span {
    display: inherit
}

.st2-form--button-submit>span>span>span>span {
    display: inherit
}

.st2-form--button-submit button[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    display: block;
    margin: 0 auto;
    max-width: 30rem;
    width: 100%;
    border: none;
    border-radius: 0.4rem;
    background: #90b200;
    color: #fff;
    cursor: pointer
}

@media(min-width: 737px) {
    .st2-form--button-submit button[type=submit] {
        height:5.4rem;
        font-size: 1rem
    }
}

@media(max-width: 736px) {
    .st2-form--button-submit button[type=submit] {
        height:3.5rem;
        font-size: 1.4rem
    }
}


@media(min-width: 737px) {
    .st2-keyword-search-bar__form .st2-form--button-submit button[type=submit] {
        max-width:15rem;
        height: 3.7rem
    }
}


@media(min-width: 737px) {
    .st2-pamphlet-search-area .st2-form--button-submit button[type=submit] {
        height:3.5rem;
        font-size: 1.6rem
    }
}
@media(min-width: 737px) {
    .st2-hero--search.form-only .st2-form--button-submit button[type=submit] {
        width: 100%;
        height: auto;
        padding: 0.9rem 2rem
    }
}

.st2-hero--general-search__btn--close {
    position: absolute;
    z-index: 1;
    top: 0.5rem;
    right: 0.5rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    border: none;
    border-radius: 100%;
    background-color: #949494;
    cursor: pointer
}

@media(min-width: 737px) {
    .st2-hero--general-search__btn--close {
        display:none
    }
}

.st2-hero--general-search__btn--close i {
    display: block;
    width: 1.7rem;
    height: 1.7rem
}

.st2-hero--general-search__btn--close i svg {
    display: inherit;
    width: inherit;
    height: inherit;
    fill: #fff
}




@media(min-width: 737px) {
    .st2-form--input-checkbox {
        margin-right:1rem
    }

    .st2-form--button-submit button[type=submit] {
        width: 100%;
        height: auto;
        padding: 0 0
    }
}

@media (min-width: 737px) {
    .st2-form--input-text [type=text] {
        padding: 0.7rem 1.2rem;
    }
}

.st2-form--input-text [type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    display: block;
    width: 11rem;
    border: solid 1px #999;
    border-radius: 0.4rem;
    background: #fff;
    cursor: pointer;
    transition: background-color .5s cubic-bezier(0.25, 0.8, 0.25, 1);
}

@media (min-width: 737px) {
    .st2-form--input-text.st2-datepicker-wrapper i {
        width: 2rem;
        height: 2rem;
        display: inline-block;
    }
}

.st2-form--input-text.st2-datepicker-wrapper i {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 1rem;
    display: block;
    transform: translateY(-50%);
    pointer-events: none;
    background: #fff;
}

[aria-hidden=true] {
    speak: none;
}