﻿.site-footer {
    margin-top: 0
}

.maru_wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    height: 100%;
    width: 100%;
}

.maru {
    height: 50px;
    width: 50px;
    border-radius: 50%;
    line-height: 50px;
    text-align: center;
    background: #0066bb;
    font-size: 24px;
    margin-left: 20px;
}


@media screen and (min-width:900px) {

    .site-footer {
        margin-top: 0 !important
    }
}

.only--pc {
    display: inherit
}

.only--sp {
    display: none
}

@media screen and (max-width:639px) {
    .only--pc {
        display: none
    }

    .only--sp {
        display: inherit
    }
}

.notice--red {
    color: #b22222
}

input[type=email],
input[type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=checkbox],
input[type=file] {
    display: none
}

button[type=button] {
    outline: 0
}

button[disabled] {
    background-color: #EAEAEA;
    color: black;
    cursor: not-allowed;
}

select {
    font-size: 18px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

    select::-ms-expand {
        display: none
    }

input::-webkit-input-placeholder {
    color: #878787
}

input:-ms-input-placeholder {
    color: #878787
}

input::placeholder {
    color: #878787
}

.errorMessage {
    color: #b22222;
    margin-bottom: 0
}

.optionButton:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: #fff;
    width: 3pc;
    height: 3pc;
    border-radius: 3px;
    top: 0;
    bottom: 0;
    left: 8px;
    margin: auto 0;
    pointer-events: none
}

.payPayOptionButton:before,
.rakutenPayOptionButton:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: 0;
    width: 3pc;
    height: 3pc;
    border-radius: 5px;
    top: 0;
    bottom: 0;
    left: 8px;
    margin: auto 0;
    pointer-events: none
}

.optionButton,
.optionButton2 {
    position: relative;
    background: #60bb33;
    border-radius: 3px
}

.payPayOptionButton,
.rakutenPayOptionButton {
    position: relative;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    max-width: 730px;
    width: 100%;
    margin:20px 0px 20px 0px;
}

/*.optionButton2:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: #60bb33;
    width: 3pc;
    height: 3pc;
    border-radius: 3px;
    top: 0;
    bottom: 0;
    left: 8px;
    margin: auto 0;
    pointer-events: none
}*/

@media screen and (max-width:999px) {
    .optionButton2:before,
    .optionButton:before,
    .payPayOptionButton:before,
    .rakutenPayOptionButton:before {
        width: 40px;
        height: 40px
    }
}

.optionButton a:active,
.optionButton a:hover,
.optionButton a:link,
.optionButton a:visited {
    color: #fff
}

.payPayOptionButton a:active,
.payPayOptionButton a:hover,
.payPayOptionButton a:link,
.payPayOptionButton a:visited,
.rakutenPayOptionButton a:active,
.rakutenPayOptionButton a:hover,
.rakutenPayOptionButton a:link,
.rakutenPayOptionButton a:visited {
    color: #195f9d
}

.optionButton:hover,
.payPayOptionButton:hover,
.rakutenPayOptionButton:hover {
    opacity: .8
}

.optionButton__input {
    display: block;
    width: 100%;
    background: 0;
    border: 0;
    color: #fff;
    font-size: 20px;
    padding: 1pc 0;
    text-align: center
}

.payPayOptionButton__input,
.rakutenPayOptionButton__input {
    display: block;
    width: 100%;
    background: 0;
    border: 0;
    color: #195f9d;
    font-size: 20px;
    padding: 1pc 0;
    text-align: left;
}

.optionButton__input:after,
.optionButton__link:after {
    top: 50%;
    bottom: 50%;
    right: 10px;
    content: '';
    background: url(/img/common/arrow-r-white.svg)left top no-repeat;
    height: 15px;
    -ms-transform: translateY(-50%);
    position: absolute
}

.payPayOptionButton__input:after,
.rakutenPayOptionButton__input:after {
    top: 50%;
    bottom: 50%;
    right: 10px;
    content: '';
    background: url(/img/common/arrow-r-blue.svg)left top no-repeat;
    height: 15px;
    -ms-transform: translateY(-50%);
    position: absolute
}

.optionButton__input[disabled]:after,
.PayPayOptionButton__input[disabled]:after,
.RakutenPayOptionButton__input[disabled]:after {
    top: 50%;
    bottom: 50%;
    right: 10px;
    content: '';
    background: url(/img/common/arrow-r-gray.svg)left top no-repeat;
    height: 15px;
    -ms-transform: translateY(-50%);
    position: absolute
}

.optionButton__link:disabled:after {
    top: 50%;
    bottom: 50%;
    right: 10px;
    content: '';
    background: url(/img/common/arrow-r-gray.svg)left top no-repeat;
    height: 15px;
    -ms-transform: translateY(-50%);
    position: absolute
}

.optionButton2 a:active,
.optionButton2 a:hover,
.optionButton2 a:link,
.optionButton2 a:visited {
    color: #fff
}

.optionButton2:hover {
    opacity: .8
}

.optionButton2__input {
    display: block;
    width: 100%;
    background: 0;
    border: 0;
    color: #fff;
    font-size: 20px;
    padding: 1pc 0;
    text-align: center
}

    .optionButton2__input:after,
    .optionButton2__link:after {
        top: 50%;
        bottom: 50%;
        right: 10px;
        content: '';
        background: url(/img/common/arrow-r-white.svg)left top no-repeat;
        height: 15px;
        -ms-transform: translateY(-50%);
        position: absolute
    }

@media screen and (max-width:999px) {
    .optionButton2__input,
    .optionButton__input,
    .payPayOptionButton__input,
    .rakutenPayOptionButton__input {
        font-size: 18.5px;
        font-weight: 700
    }
}

.optionButton__input:after,
.payPayOptionButton__input:after,
.rakutenPayOptionButton__input:after {
    display: inline-block;
    width: 15px;
    transform: translateY(-50%)
}

.optionButton__link {
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    padding: 1pc 0;
    text-align: center
}

.optionButton2__input:after {
    display: inline-block;
    width: 15px;
    transform: translateY(-50%)
}

.optionButton2__link {
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    padding: 1pc 0;
    text-align: center
}

@media screen and (max-width:999px) {
    .optionButton2__link,
    .optionButton__link {
        font-size: 18.5px;
        font-weight: 700
    }
}

.optionButton__link:active,
.optionButton__link:hover,
.optionButton__link:visited {
    color: #fff
}

.optionButton__link:after {
    display: inline-block;
    width: 15px;
    transform: translateY(-50%)
}

.optionButton__nolink {
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    padding: 1pc;
    text-align: center;
    margin-bottom: 0
}

.optionButton2__link:active,
.optionButton2__link:hover,
.optionButton2__link:visited {
    color: #fff
}

.optionButton2__link:after {
    display: inline-block;
    width: 15px;
    transform: translateY(-50%)
}

.optionButton2__nolink {
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    padding: 1pc;
    text-align: center;
    margin-bottom: 0
}

.button--price button:before {
    position: absolute;
    top: 8px;
    left: 21px;
    display: inline-block;
    border: 0;
    font-weight: 700;
    font-size: 30px;
    color: #60bb33
}

@media screen and (max-width:999px) {
    .button--price button:before {
        top: 7px;
        left: 1pc
    }
}

.button--netbooking a:before,
.button--phonebooking button:before,
.button--phonebooking p:before,
.button--start2 button:before,
.button--start button:before {
    position: absolute;
    top: 50%;
    bottom: 50%;
    content: '';
    display: inline-block
}

.button--netbooking a:before {
    left: 15px;
    background: url(/img/osu/common/icon-calender-blue2.svg)left top no-repeat;
    background-size: 100% auto;
    width: 33px;
    height: 34px;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (max-width:999px) {
    .button--netbooking a:before {
        left: 11px
    }
}

.button--phonebooking button:before,
.button--phonebooking p:before {
    left: 17px;
    background: url(/img/osu/common/icon-phone-blue.svg) left top no-repeat;
    background-size: 100% auto;
    width: 30px;
    height: 33px;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (max-width:999px) {
    .button--phonebooking button:before,
    .button--phonebooking p:before {
        left: 14px
    }
}

.button--start {
    max-width: 380px;
    width: 100%;
    margin: 0 auto
}

.button--start2 {
    max-width: 450px;
    width: 100%;
    margin: 0 auto
}

    .button--start2 button:before,
    .button--start button:before {
        left: 18px;
        background: url(/img/osu/common/icon-start-green.svg)left center no-repeat;
        background-size: 100% auto;
        width: 33px;
        height: 34px;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

@media screen and (max-width:999px) {
    .button--start2 button:before,
    .button--start button:before {
        left: 1pc;
        width: 28px;
        height: 2pc
    }
}

.button--normal {
    max-width: 380px;
    width: 100%;
    margin: 0 auto
}

.paymentbutton--normal {
    width: 100%;
    margin: 0 auto
}

.button--normal:before {
    display: none
}

.button--help {
    display: inline-block;
    color: #06b;
    font-size: 20px;
    -ms-transform: translateY(3px);
    transform: translateY(3px);
    margin-right: 15px;
    cursor: pointer;
    line-height: 1em;
    position: relative;
    z-index: 4
}

@media screen and (max-width:999px) {
    .button--help {
        font-size: 18px;
        margin-right: 1.5vw
    }
}

.button--help fas {
    position: relative;
    z-index: 1
}

.button--help:hover .popWindow {
    display: inherit
}

.button--smallClose {
    display: inline-block;
    color: #9f9fa0;
    font-size: 30px;
    cursor: pointer;
    margin-left: 5px;
    -ms-transform: translateY(5px);
    transform: translateY(5px)
}

.swal2-styled {
    min-width: 100px !important;
}

#swal2-title {
    font-size : 17px !important;
}

#swal2-html-container {
    font-size: 13px !important;
    font-weight: 700 !important;
}

.windowLayout_estimate {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    max-width: 730px;
    width: 100%;
    margin: 0 auto 20px;
    padding: 20px;
    box-sizing: border-box
}

@media screen and (max-width:999px) {
    .button--smallClose {
        font-size: 22px
    }

    .windowLayout_estimate {
        border: 0;
        padding: 0;
        margin: 0;
        width: 100%;
        box-sizing: border-box
    }
}

.windowLayout {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    max-width: 730px;
    width: 100%;
    margin: 0 auto 20px;
    padding: 10px 20px;
    box-sizing: border-box
}

@media screen and (max-width:999px) {
    .button--smallClose {
        font-size: 22px
    }

    .windowLayout {
        /*padding: 7vw 5vw 10px;*/
        margin-bottom: 20px
    }
}

.windowLayout__title {
    text-align: center;
    font-size: 22px;
    margin-bottom: 0;
    line-height: 2em
}

@media screen and (max-width:999px) {
    .windowLayout__title {
        font-size: 17px;
        margin-bottom: 5px;
        font-weight: 700
    }
}

.h2_padding {
    padding: 20px 0 10px
}

@media screen and (max-width:999px) {
    .h2_padding {
        /*padding: 0*/
    }
}

.windowLayout__title .icon--required {
    display: inline-block;
    background: #b22222;
    color: #fff;
    border-radius: 3px;
    font-size: 1pc;
    line-height: 1.6em;
    padding: 0 5px;
    margin-left: 15px;
    -ms-transform: translateY(-4px);
    transform: translateY(-4px)
}

@media screen and (max-width:999px) {
    .windowLayout__title .icon--required {
        font-size: 13px
    }
}

.windowLayout__text {
    text-align: center;
    font-size: 1pc
}

.popWindow {
    position: absolute;
    width: 600px;
    height: auto;
    text-align: right;
    display: none;
    z-index: 2
}

@media screen and (max-width:999px) {
    .windowLayout__text {
        font-size: 13px;
        margin-bottom: 15px
    }

    .popWindow {
        width: 300px
    }

        .popWindow.arrow--uploadDocument {
            width: 390px
        }

        .popWindow.arrow--passWord {
            width: 390px
        }
}

.popWindow__inner {
    display: inline-block;
    background: #fff;
    box-sizing: border-box;
    border: 1px solid #06b;
    padding: 18px 10px 18px 18px;
    color: #000;
    border-radius: 3px;
    box-shadow: 3px 3px 0 0 #06b;
    text-align: left
}

    .popWindow__inner:after,
    .popWindow__inner:before {
        position: absolute;
        display: inline-block;
        width: 0;
        height: 0;
        border-style: solid;
        content: ''
    }

    .popWindow__inner:before {
        right: 110px;
        border-width: 0 0 34px 34px;
        border-color: transparent transparent #06b
    }

@media screen and (max-width:999px) {
    .popWindow__inner {
        padding: 10px
    }

        .popWindow__inner:before {
            border-width: 0 0 31px 31px
        }
}

.popWindow__inner:after {
    right: 111px;
    border-width: 0 0 2pc 2pc;
    border-color: transparent transparent #fff;
    z-index: 3
}

.popWindow.arrow--starterKit {
    top: 240%;
    right: -50px
}

@media screen and (max-width:999px) {
    .popWindow__inner:after {
        border-width: 0 0 29px 29px
    }

    .popWindow.arrow--starterKit {
        top: 270%
    }
}

.popWindow.arrow--starterKit .popWindow__inner:before {
    right: 60px;
    top: -33px
}

.popWindow.arrow--starterKit .popWindow__inner:after {
    right: 61px;
    top: -30px
}

.popWindow.arrow--safePack {
    bottom: 240%;
    left: -300px
}

@media screen and (max-width:999px) {
    .popWindow.arrow--starterKit .popWindow__inner:before {
        top: -30px
    }

    .popWindow.arrow--starterKit .popWindow__inner:after {
        top: -27px
    }

    .popWindow.arrow--safePack {
        left: -150px;
        bottom: 300%
    }
}

.popWindow.arrow--safePack .popWindow__inner:before {
    bottom: -33px;
    left: 52%;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media screen and (max-width:999px) {
    .popWindow.arrow--safePack .popWindow__inner:before {
        bottom: -31px
    }
}

.popWindow.arrow--safePack .popWindow__inner:after {
    bottom: -30px;
    left: 52.3%;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media screen and (max-width:999px) {
    .popWindow.arrow--safePack .popWindow__inner:after {
        bottom: -28px
    }
}

.popWindow.arrow--passNom {
    bottom: 240%;
    left: -75pt;
    text-align: left
}

@media screen and (max-width:999px) {
    .popWindow.arrow--passNom {
        left: -5pc;
        bottom: 300%
    }
}

.popWindow.arrow--passNom .popWindow__inner:before {
    bottom: -33px;
    left: 110px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media screen and (max-width:999px) {
    .popWindow.arrow--passNom .popWindow__inner:before {
        left: 90px;
        bottom: -31px
    }
}

.popWindow.arrow--passNom .popWindow__inner:after {
    bottom: -30px;
    left: 111px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media screen and (max-width:999px) {
    .popWindow.arrow--passNom .popWindow__inner:after {
        left: 91px;
        bottom: -28px
    }
}

.popWindow.arrow--securityCode {
    bottom: 240%;
    right: -75pt
}

.popWindow.arrow--uploadDocument {
    bottom: 240%;
    right: -75pt
}

.popWindow.arrow--passWord {
    bottom: 240%;
    right: -75pt
}

@media screen and (max-width:999px) {
    .popWindow.arrow--securityCode {
        right: -155px;
        bottom: 300%
    }
}

@media screen and (max-width:999px) {
    .popWindow.arrow--uploadDocument {
        right: -65px;
    }

    .popWindow.arrow--passWord {
        right: -50px;
    }
}

.popWindow.arrow--securityCode .popWindow__inner:before {
    bottom: -33px;
    right: 75px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.popWindow.arrow--uploadDocument .popWindow__inner:before {
    bottom: -33px;
    right: 55px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.popWindow.arrow--passWord .popWindow__inner:before {
    bottom: -33px;
    right: 55px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media screen and (max-width:999px) {
    .popWindow.arrow--securityCode .popWindow__inner:before {
        right: 130px;
        bottom: -31px
    }
}

@media screen and (max-width:999px) {
    .popWindow.arrow--uploadDocument .popWindow__inner:before {
        bottom: -30px
    }

    .popWindow.arrow--passWord .popWindow__inner:before {
        bottom: -30px;
        right: 35px;
    }
}

.popWindow.arrow--securityCode .popWindow__inner:after {
    bottom: -30px;
    right: 76px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.popWindow.arrow--uploadDocument .popWindow__inner:after {
    bottom: -28px;
    right: 56px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.popWindow.arrow--passWord .popWindow__inner:after {
    bottom: -28px;
    right: 56px;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.popWindow__title {
    display: block;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px
}

@media screen and (max-width:999px) {
    .popWindow.arrow--securityCode .popWindow__inner:after {
        right: 131px;
        bottom: -28px
    }

    .popWindow__title {
        font-size: 15px;
        margin-bottom: 5px
    }
}

@media screen and (max-width:999px) {
    .popWindow.arrow--uploadDocument .popWindow__inner:after {
        right: 56px;
        bottom: -27px
    }

    .popWindow.arrow--passWord .popWindow__inner:after {
        right: 36px;
        bottom: -27px
    }

    .popWindow__title {
        font-size: 15px;
        margin-bottom: 5px
    }
}

.popWindow__text {
    display: block;
    font-size: 15px;
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1.6
}

@media screen and (max-width:999px) {
    .popWindow__text {
        font-size: 9pt
    }
}

.popWindow__image.image--cardSecurityCd {
    display: block;
    background: url(/img/osu/common/icon-cardSecurityCd.svg)left top no-repeat;
    background-size: 100% auto;
    width: 188px;
    height: 7pc;
    margin: 1em auto 0
}

.pageBackButton {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    font-size: 18px
}

    .pageBackButton button {
        background: 0;
        border: 0;
        color: #06b
    }

        .pageBackButton button:before {
            content: '';
            background: url(/img/common/arrow-l-blue.svg)left top no-repeat;
            background-size: 100% auto;
            display: inline-block;
            width: 15px;
            height: 22px;
            margin-right: 10px;
            -ms-transform: translateY(5px);
            transform: translateY(5px)
        }

@media screen and (max-width:999px) {
    .pageBackButton {
        font-size: 15px;
        padding: 10px 0 0
    }

        .pageBackButton button {
            padding: 0
        }

            .pageBackButton button:before {
                width: 8px;
                height: 9pt;
                -ms-transform: translateY(1px);
                transform: translateY(1px);
                margin-right: 5px
            }
}

.loading {
    text-align: center;
    position: fixed;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    box-sizing: border-box
}

    .loading .icon--loading {
        color: #06b;
        font-size: 40px;
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

.shopOption {
    max-width: 55pc;
    margin-top: 1em !important;
}

.shopOption,
.shopOption2 {
    width: 100%;
    margin: 0 auto 5px
}

.shopOption2 {
    max-width: 450px
}

.shopInfomationBlock {
    display: -ms-flexbox;
    display: flex;
    border-bottom: 0 solid #ccc;
    padding-bottom: 0
}

@media screen and (max-width:999px) {
    .shopOption,
    .shopOption2 {
        width: 100%;
        margin: 0
    }

    .shopInfomationBlock {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: center;
        align-items: center;
        padding-bottom: 10px !important;
    }
}

.shopInfomationBlock__image {
    border: 1px solid #ccc;
    width: 11%;
    min-width: 11%
}

.shopInfomationBlock__image2 {
    border: 1px solid #ccc;
    width: 16%;
    margin-left: 200px;
    margin-top: 0
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__image {
        width: 70px
    }

    .shopInfomationBlock__image2 {
        width: 70px;
        margin-left: 0;
        margin-top: 15px
    }
}

.shopInfomationBlock__image2 img,
.shopInfomationBlock__image img {
    width: 100%;
    height: auto
}

.shopInfomationBlock__data {
    width: 46%;
    padding-left: 2%;
    box-sizing: border-box;
    padding-top: 5px;
    display: flex;
}

    .shopInfomationBlock__data div:first-child {
        flex-grow: 1;
        width: 100%
    }

.shopInfomationBlock__data2 {
    width: 100%;
    padding-left: 2%;
    box-sizing: border-box;
    padding-top: 3px
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__data,
    .shopInfomationBlock__data2 {
        width: 55%;
        padding-top: 0
    }

        .shopInfomationBlock__data a {
            font-size: 12px;
        }
}

.shopInfomationBlock__data p {
    font-size: 1pc;
    margin-bottom: 0;
    line-height: 2.4em
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__data p {
        display: block;
        font-size: 15px;
        line-height: 1em;
        padding-top: 14px;
    }
}

.shopInfomationBlock__data p span {
    font-size: 14px
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__data p span {
        font-size: 11px
    }
}

.shopInfomationBlock__price {
    width: 53%;
    box-sizing: border-box;
    padding-top: 10px;
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__price {
        width: 100%;
        padding-top: 2vw;
        order: 1
    }
}

.shopInfomationBlock__price dl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

    .shopInfomationBlock__price dl dt {
        font-size: 1pc;
        width: 20%;
        line-height: 1.8em
    }

@media screen and (max-width:999px) {
    .shopInfomationBlock__price dl {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 0
    }

        .shopInfomationBlock__price dl dt {
            width: auto;
            font-size: 14px;
            line-height: 1.5em
        }
}

.shopInfomationBlock__price dl dd {
    font-size: 1pc;
    width: 100%;
    line-height: 1.8em
}

.shopInfomationBlock .price--notice {
    color: #b22222
}

@media screen and (max-width:999px) {
    .shopInfomationBlock .price--notice.tax-included {
        margin-top: 5px;
    }
}

.shopInfomationBlock .price--month {
    font-size: 14px
}

@media screen and (max-width:999px) {
    .shopInfomationBlock__price dl dd {
        width: 100%;
        font-size: 14px;
        line-height: 1.5em
    }

    .shopInfomationBlock .price--month {
        font-size: 10px
    }
}

.shopCommentBlock {
    font-size: 15px;
    padding-top: 10px;
    padding-bottom: 10px
}

.shopSizechangeBlock {
    text-align: right;
    padding-top: 5px
}

@media screen and (max-width:999px) {
    .shopCommentBlock {
        font-size: 13px;
        padding-top: 0;
        padding-bottom: 10px
    }

    .shopSizechangeBlock {
        padding-top: 0
    }
}

.shopSizechangeBlock__button {
    border: 0;
    background: 0;
    color: #06b;
    padding: 0;
    font-size: 1pc
}

    .shopSizechangeBlock__button:before {
        font-family: Font Awesome\ 5 Free;
        content: "\f303";
        display: inline-block;
        border: 0;
        font-weight: 700;
        margin-right: 5px
    }

.optionEntryBlock {
    background: #fff;
    padding: 35px 0
}

@media screen and (max-width:999px) {
    .shopSizechangeBlock__button {
        font-size: 14px;
        margin-bottom: 10px
    }

    .optionEntryBlock {
        padding: 20px 3.2vw 15px
    }
}

.optionEntryBlock__selectText {
    text-align: center;
    font-size: 18px
}

    .optionEntryBlock__selectText:after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 35px 35px 0;
        border-color: #f0f0f0 transparent transparent;
        display: block;
        margin: -1px auto 0
    }


@media screen and (max-width:999px) {
    .optionEntryBlock__selectText {
        font-size: 15px
    }

        .optionEntryBlock__selectText:after {
            border-width: 28px 28px 0;
            margin-top: 0
        }
}

.optionEntryBlock__noticeText {
    text-align: center;
    font-size: 14px;
    margin: 0;
    padding-top: 15px
}

@media screen and (max-width:999px) {
    .optionEntryBlock__noticeText {
        text-align: left;
        font-size: 9pt;
        text-indent: -1em;
        padding-top: 0;
        padding-left: 1em
    }
}

.optionEntryBlock .optionEntryBox {
    position: relative;
    background: #fff;
    border-radius: 5px;
    max-width: 700px;
    width: 100%;
    margin: 0 auto 15px;
    text-align: center;
    border-bottom: 1px solid #ccc
}

.optionEntryBlock .optionEntryBox__buttonArea {
    padding: 20px 0 0;
    cursor: pointer
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox {
        margin-bottom: 15px
    }

    .optionEntryBlock .optionEntryBox__buttonArea {
        padding: 10px 0
    }
}

.optionEntryBlock .optionEntryBox__title {
    font-size: 24px;
    color: #60bb33;
    font-weight: 700;
    margin-bottom: 5px
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox__title {
        font-size: 21px
    }
}

.optionEntryBlock .optionEntryBox__description {
    font-size: 18px;
    margin-bottom: 0
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox__description {
        font-size: 13px
    }
}

.optionEntryBlock .optionEntryBox__toggleButton {
    background: #06b;
    border: 2px solid #06b;
    border-radius: 3px;
    font-size: 0;
    color: #fff;
    position: absolute;
    top: 35px;
    right: 40px;
    margin: auto;
    height: 30px;
    padding: 0 2px
}

.optionEntryBlock .optionEntryBox .toggle--close:after,
.optionEntryBlock .optionEntryBox .toggle--open:after {
    display: inline-block;
    font-size: 34px;
    font-weight: 700;
    line-height: .8em;
    font-family: Font Awesome\ 5 Free
}

.optionEntryBlock .optionEntryBox .toggle--open:after {
    content: "\f107";
    border: 0
}

.optionEntryBlock .optionEntryBox .toggle--close {
    border: 2px solid #06b;
    background: #fff;
    color: #06b
}

    .optionEntryBlock .optionEntryBox .toggle--close:after {
        content: "\f106";
        border: 0
    }

.optionEntryBlock .optionEntryBox__text {
    text-align: center;
    font-size: 1pc;
    padding-top: 15px
}

.optionEntryBox__text2 {
    text-align: center;
    font-size: 14px;
    padding-top: 15px
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox__toggleButton {
        right: 4vw;
        top: 28px
    }

    .optionEntryBlock .optionEntryBox__text .optionEntryBox__text2 {
        font-size: 9pt;
        padding-top: 2vw
    }
}

.optionEntryBlock .optionEntryBox__text .optionEntryBox__text2:last-child {
    margin-bottom: 0;
    padding-bottom: 10px
}

.optionEntryBlock .optionEntryBox__form {
    margin: 0 40px;
    padding: 0 85px 20px;
    text-align: left
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox__form {
        margin: 0 4vw;
        padding: 0 0 10px
    }
}

.optionEntryBlock .optionEntryBox__form.entry--visit {
    padding-top: 0
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox__form.entry--visit {
        padding-top: 0;
        padding-bottom: 10px
    }
}

.optionEntryBlock .optionEntryBox .optionEntryForm {
    margin-bottom: 20px
}

.optionEntryBlock .optionEntryBox .optionEntryForm__name {
    font-size: 1pc;
    padding-bottom: 5px;
    font-weight: 700
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox .optionEntryForm__name {
        font-size: 13px
    }
}

.optionEntryBlock .optionEntryBox .optionEntryForm__radioButton {
    font-size: 1pc;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 15px;
    color: #000
}

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox .optionEntryForm__radioButton {
        font-size: 14px;
        margin-bottom: 2vw
    }
}

.optionEntryBlock .optionEntryBox .optionEntryForm__radioButton label {
    width: 48%
}

.optionEntryBlock .optionEntryBox .optionEntryForm__selectDay {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 15px
}

    .optionEntryBlock .optionEntryBox .optionEntryForm__selectDay .inputText--day {
        width: 82%;
        display: inline-block;
        border: 1px solid #aaa;
        border-radius: 3px;
        padding: 15px 0 15px 15px;
        box-sizing: border-box;
        background: #ffc;
        color: #000;
        font-size: 18px;
        cursor: pointer
    }

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox .optionEntryForm__selectDay {
        margin-bottom: 2vw
    }

        .optionEntryBlock .optionEntryBox .optionEntryForm__selectDay .inputText--day {
            font-size: 15px
        }
}

.optionEntryBlock .optionEntryBox .optionEntryForm__selectDay .input--selectDay {
    font-size: 0;
    background: 0;
    border: 0
}

    .optionEntryBlock .optionEntryBox .optionEntryForm__selectDay .input--selectDay:before {
        content: '';
        background: url(/img/osu/common/icon-calender-blue.svg)left top no-repeat;
        background-size: 100% auto;
        width: 3pc;
        height: 3pc;
        display: inline-block;
        border: 0;
        font-weight: 700;
        font-size: 44px;
        line-height: .9em;
        color: #06b
    }

.optionEntryBlock .optionEntryBox .optionEntryForm__notice {
    font-size: 14px
}

.optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio] {
    display: none
}

    .optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio] + span {
        position: relative;
        display: inline-block;
        background: #fff;
        border: 1px solid #aaa;
        border-radius: 5px;
        padding: 22px 0 20px 40px;
        box-sizing: border-box;
        width: 100%;
        color: #000;
        line-height: 1em
    }

@media screen and (max-width:999px) {
    .optionEntryBlock .optionEntryBox .optionEntryForm__notice {
        font-size: 9pt
    }

    .optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio] + span {
        padding: 20px 0 18px 40px
    }
}

.optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio] + span:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid #aaa;
    background: #fff;
    border-radius: 50%;
    margin-right: 8px;
    position: absolute;
    top: 50%;
    bottom: 50%;
    left: 10px;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio]:checked + span {
    background: #ffc;
    color: #000
}

    .optionEntryBlock .optionEntryBox .optionEntryForm input[type=radio]:checked + span:after {
        content: '';
        display: inline-block;
        width: 10px;
        height: 10px;
        background: #06b;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        bottom: 50%;
        left: 1pc;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

.optionCallcenterBlock {
    background: #e0e0e0;
    text-align: center;
    padding: 30px 0 25px
}

.optionCallcenterBlock2 {
    background: #e0e0e0;
    text-align: center;
    padding-top: 30px;
    padding-bottom: 5px;
}

.optionCallcenterBlock__text {
    font-size: 14px;
    margin-bottom: 20px
}

@media screen and (max-width:639px) {
    .optionCallcenterBlock {
        padding: 15px 0 10px
    }

    .optionCallcenterBlock2 {
        padding-top: 15px;
        padding-bottom: 5px;
    }

    .optionCallcenterBlock__text {
        font-size: 11px;
        margin-bottom: 10px
    }
}

.optionCallcenterBlock__number {
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 22px;
    margin-right: 30px;
    vartical-align: middle
}

    .optionCallcenterBlock__number a {
        color: #000;
        text-decoration: none;
        padding: 0
    }

.confirmationBlock .confirmationRuleBox__list dt span,
.thanksBlock .thanksCompleteBox__text span {
    text-decoration: underline
}

@media screen and (max-width:639px) {
    .optionCallcenterBlock__number {
        background: #fff;
        border: 1px solid #ccc;
        border-radius: 5px;
        margin: 0 20px 20px;
        display: block;
        font-size: 19px;
        font-weight: 700
    }

        .optionCallcenterBlock__number a {
            display: block;
            padding: 10px 0
        }
}

.optionCallcenterBlock__number a:before {
    content: '';
    display: inline-block;
    background: url(/img/osu/icon-phone.svg);
    width: 2pc;
    height: 2pc;
    background-size: 100% 2pc;
    margin-right: 8px;
    -ms-transform: translateY(8px);
    transform: translateY(8px)
}

.optionCallcenterBlock__receptionTime {
    font-size: 14px;
    margin-bottom: 0
}

@media screen and (max-width:639px) {
    .optionCallcenterBlock__number a:before {
        width: 25px;
        height: 25px;
        background-size: 100% 25px;
        margin-right: 2px;
        -ms-transform: translateY(5px);
        transform: translateY(5px)
    }

    .optionCallcenterBlock__receptionTime {
        font-size: 11px
    }
}

.paymentEstimateBlock .selectInfomation {
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 25px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .selectInfomation {
        width: calc(100% - 10vw);
        padding-top: 5px;
        padding-bottom: 1em
    }
}

.paymentEstimateBlock .selectInfomation .infomationBox {
    border-bottom: 1px solid #ccc
}

.infomationBox2,
.paymentEstimateBlock .selectInfomation .infomationBox {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    padding: 15px 0;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
}

.infomationBox {
    display: block !important
}

    .infomationBox .shopInfomationBlock__name {
        display: flex;
        align-items: center
    }

.infomationBox2 {
    font-size: 15px;
}

.infomationBox3 {
    position: relative;
    border-top: 1px solid #ccc;
    display: -ms-flexbox;
    display: flex;
    padding: 1em 0 0;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
}

    .infomationBox3 .kitSelect-detail {
        font-size: 15px;
    }

        .infomationBox3 .kitSelect-detail a {
            padding-left: 2em;
        }

.paymentEstimateBlock .selectInfomation .infomationBox .infomationBox2 .infomationBox3:last-child {
    border-bottom: 0
}

.paymentEstimateBlock .selectInfomation .infomationBox__name {
    font-size: 18px;
    margin: 0
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .selectInfomation .infomationBox__name {
        font-size: 9pt
    }
}

.paymentEstimateBlock .selectInfomation .infomationBox__name span {
    display: block;
    font-size: 14px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .selectInfomation .infomationBox__name span {
        font-size: 9px
    }
}

.paymentEstimateBlock .selectInfomation .infomationBox__button .button--change {
    border-radius: 3px;
    background: #fff;
    border: 1px solid #06b;
    font-size: 15px;
    color: #06b;
    padding: 2px 8px
}

    .paymentEstimateBlock .selectInfomation .infomationBox__button .button--change:before {
        font-family: Font Awesome\ 5 Free;
        content: "\f303";
        display: inline-block;
        border: 0;
        font-weight: 600;
        margin-right: 5px
    }

.optionUnitInfo .infomationBox__button .button--change {
    border-radius: 3px;
    background: #fff;
    border: 1px solid #06b;
    font-size: 15px;
    color: #06b;
    padding: 2px 8px;
    width: 82px;
}

    .optionUnitInfo .infomationBox__button .button--change:before {
        font-family: Font Awesome\ 5 Free;
        content: "\f303";
        display: inline-block;
        border: 0;
        font-weight: 600;
        margin-right: 5px
    }


.paymentEstimateBlock .paymentEstimateBox__wrap {
    background: #fff;
    padding-top: 20px
}



@media screen and (max-width:999px) {
    .paymentEstimateBlock .selectInfomation .infomationBox__button .button--change {
        font-size: 9pt
    }

    .paymentEstimateBlock .paymentEstimateBox__wrap {
        padding: 10px
    }
}

.paymentEstimateBlock .paymentEstimateBox__totalPrice {
    font-size: 24px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: #b22222;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__totalPrice {
        font-size: 1pc;
        margin-bottom: 3vw
    }
}

.paymentEstimateBlock .paymentEstimateBox__cardInfomation {
    background: #eaeaea;
    padding: 20px;
    margin-bottom: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__cardInfomation {
        display: block;
        text-align: center;
        margin-bottom: 20px
    }
}

.paymentEstimateBlock .paymentEstimateBox__cardInfomation p {
    color: #b22222;
    font-size: 18px;
    margin: 0
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__cardInfomation p {
        font-size: 9pt
    }
}

.paymentEstimateBlock .paymentEstimateBox__cardInfomation span {
    display: block;
    color: #000;
    font-size: 14px
}

.paymentEstimateBlock .paymentEstimateBox__items {
    padding: 0 15px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__cardInfomation span {
        font-size: 9px
    }

    .paymentEstimateBlock .paymentEstimateBox__items {
        padding: 0;
        margin-bottom: 0
    }
}

.paymentEstimateBlock .paymentEstimateBox__items dl {
    position: relative;
    padding-bottom: 24px
}

.paymentEstimateBlock .paymentEstimateBox__items dt {
    font-size: 18px
}

.paymentEstimateBlock .paymentEstimateBox__items dd {
    margin-left: 20px;
    border-bottom: 1px solid #ccc
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__items dt {
        font-size: 14px;
        margin-bottom: 1vw
    }

    .paymentEstimateBlock .paymentEstimateBox__items dd {
        border-bottom: 0
    }
}

/*.paymentEstimateBlock .paymentEstimateBox__items dd:last-child {
    border-bottom: 0
}*/

.paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item {
    margin: 0;
    font-size: 14px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

    .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item.items--discount {
        border-top: 1px dotted #ccc;
        padding-top: 8px;
        margin-top: 8px
    }

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item {
        font-size: 14px
    }

        .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item.items--discount {
            padding-top: 0;
            margin-top: 0;
            border-top: 0
        }
}

.paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title {
    display: inline-block;
    margin: 0;
    font-size: 15px
}

    .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title:before {
        content: '';
        display: inline-block;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #06b;
        -ms-transform: translateY(-3px);
        transform: translateY(-3px);
        margin-right: 5px
    }

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title {
        font-size: 14px
    }

        .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title:before {
            -ms-transform: translateY(-1px);
            transform: translateY(-1px)
        }
}

.paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title .button--help {
    display: inline-block;
    margin-left: 5px;
    -ms-transform: translateY(1px);
    transform: translateY(1px);
    font-size: 22px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__items dd .itemsBox_item .items--title .button--help {
        font-size: 14px;
        margin-left: 1vw
    }
}

.paymentEstimateBlock .paymentEstimateBox__items ul li {
    font-size: 14px;
    line-height: 2em;
    text-indent: -1em;
    padding-left: 1em
}

    .paymentEstimateBlock .paymentEstimateBox__items ul li span {
        color: #b22222
    }

.paymentEstimateBlock .paymentEstimateBox__button {
    text-align: center
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__items ul li {
        font-size: 14px;
        line-height: 1.6em;
        margin-bottom: 5px
    }

    .paymentEstimateBlock .paymentEstimateBox__button {
        margin-bottom: 10px
    }
}

.paymentEstimateBlock .paymentEstimateBox__button button {
    position: relative;
    border: 1px solid #06b;
    border-radius: 3px;
    background: #fff;
    font-size: 22px;
    color: #06b;
    padding: 9pt 25px;
    line-height: 1em
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__button button {
        padding: 10px 25px 15px;
        font-size: 1pc;
        font-weight: 700
    }
}

.paymentEstimateBlock .paymentEstimateBox__button button:before {
    font-family: Font Awesome\ 5 Free;
    content: "\f157";
    display: inline-block;
    border: 0;
    font-weight: 700;
    font-size: 34px;
    line-height: .8em;
    margin-right: 10px;
    -ms-transform: translateY(4px);
    transform: translateY(4px)
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .paymentEstimateBox__button button:before {
        font-size: 24px;
        -ms-transform: translateY(3px);
        transform: translateY(3px)
    }
}

.paymentEstimateBlock__text {
    text-align: center;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock__text {
        font-size: 13px;
        margin-bottom: 15px
    }
}

.paymentEstimateBlock__text:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2pc 47px 0;
    border-color: #ccc transparent transparent;
    display: block;
    margin: 0 auto 20px
}

.personaInfoFormBlock {
    background: #fff;
    padding-top: 20px
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock__text:before {
        border-width: 23px 38px 0;
        margin-bottom: 15px
    }

    .personaInfoFormBlock {
        padding: 5vw
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea {
    border-bottom: 1px solid silver;
    border-left: 1px solid silver;
    border-right: 1px solid silver;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea {
        display: block;
        border: 0
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea:nth-child(3) {
    border-top: 1px solid silver
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dt {
    padding: 0 0 0 15px;
    font-size: 1pc;
    background: #f0f0f0;
    border-right: 1px solid silver;
    width: 37%;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea:nth-child(3) {
        border-top: 0
    }

    .personaInfoFormBlock .personaInfoFormBox__inputArea dt {
        width: 100%;
        border: 0;
        background: 0;
        padding: 0;
        font-size: 13px;
        font-weight: 700;
        margin-bottom: 5px
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dt .title--long {
    margin: 0
}

    .personaInfoFormBlock .personaInfoFormBox__inputArea dt .title--long .item--notice {
        font-size: 14px;
        display: block;
        width: 100%;
        text-align: left
    }

.personaInfoFormBlock .personaInfoFormBox__inputArea dt .button--help {
    margin-left: 0;
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd {
    padding: 10px 30px;
    width: 63%;
    box-sizing: border-box;
    font-size: 1pc
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea dt .title--long .item--notice {
        display: none
    }

    .personaInfoFormBlock .personaInfoFormBox__inputArea dt .button--help {
        margin-left: 0;
        margin-right: 0;
        -ms-transform: translateY(2px);
        transform: translateY(2px)
    }

    .personaInfoFormBlock .personaInfoFormBox__inputArea dt .only--sp {
        display: inline
    }

    .personaInfoFormBlock .personaInfoFormBox__inputArea dd {
        padding: 0;
        font-size: 13px;
        width: 100%;
        margin-bottom: 10px
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd:nth-child(4) {
    padding: 0 30px 7px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd:nth-child(4) {
        padding: 0;
        margin-right: 10px
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd:nth-child(4) input[type=email],
.personaInfoFormBlock .personaInfoFormBox__inputArea dd:nth-child(4) input[type=text] {
    margin: 0 0 7px
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd input[type=email],
.personaInfoFormBlock .personaInfoFormBox__inputArea dd input[type=text] {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 18px;
    padding: 10px;
    box-sizing: border-box;
    margin: 7px 0
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd input[type=email],
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd input[type=text] {
        margin: 0 0 7px;
        font-size: 1pc
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd .selectWrap {
    position: relative;
    display: inline-block;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 18px
}

    .personaInfoFormBlock .personaInfoFormBox__inputArea dd .selectWrap select {
        background: 0;
        border: 0;
        padding: 10px;
        box-sizing: border-box;
        width: 100%
    }

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd .selectWrap,
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd .selectWrap select {
        font-size: 1pc
    }
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd .selectWrap:after {
    position: absolute;
    top: 50%;
    bottom: 50%;
    right: 0;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-weight: 700;
    font-size: 30px;
    padding: 0 13px;
    border-left: 1px solid #ccc;
    color: #0269b8;
    width: 20px;
    height: 40px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none
}

.personaInfoFormBlock .personaInfoFormBox__inputArea dd .errorMessage {
    font-size: 14px;
    display: block
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox__inputArea dd .errorMessage {
        font-size: 9pt
    }
}

.personaInfoFormBlock .personaInfoFormBox .button--answer {
    border-radius: 3px;
    background: #fff;
    border: 1px solid #06b;
    font-size: 18px;
    color: #06b;
    padding: 2px 10px
}

    .personaInfoFormBlock .personaInfoFormBox .button--answer:before {
        font-family: Font Awesome\ 5 Free;
        content: "\f303";
        display: inline-block;
        border: 0;
        font-weight: 700;
        margin-right: 5px
    }

.personaInfoFormBlock .personaInfoFormBox .area--corporationFirstName,
.personaInfoFormBlock .personaInfoFormBox .area--corporationFirstNameKana,
.personaInfoFormBlock .personaInfoFormBox .area--corporationLastName,
.personaInfoFormBlock .personaInfoFormBox .area--corporationLastNameKana,
.personaInfoFormBlock .personaInfoFormBox .area--firstName,
.personaInfoFormBlock .personaInfoFormBox .area--firstNameKana,
.personaInfoFormBlock .personaInfoFormBox .area--lastName,
.personaInfoFormBlock .personaInfoFormBox .area--lastNameKana,
.personaInfoFormBlock .personaInfoFormBox .area--passNo {
    width: 180px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox .button--answer {
        font-size: 9pt
    }

    .personaInfoFormBlock .personaInfoFormBox .area--corporationFirstName,
    .personaInfoFormBlock .personaInfoFormBox .area--corporationFirstNameKana,
    .personaInfoFormBlock .personaInfoFormBox .area--corporationLastName,
    .personaInfoFormBlock .personaInfoFormBox .area--corporationLastNameKana,
    .personaInfoFormBlock .personaInfoFormBox .area--firstName,
    .personaInfoFormBlock .personaInfoFormBox .area--firstNameKana,
    .personaInfoFormBlock .personaInfoFormBox .area--lastName,
    .personaInfoFormBlock .personaInfoFormBox .area--lastNameKana,
    .personaInfoFormBlock .personaInfoFormBox .area--passNo {
        width: 100%
    }
}

.personaInfoFormBlock .personaInfoFormBox .area--corporationName,
.personaInfoFormBlock .personaInfoFormBox .area--corporationNameKana {
    width: 100%
}

.personaInfoFormBlock .personaInfoFormBox .area--zipCode {
    width: 150px;
    margin-bottom: 7px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox .area--zipCode {
        width: 165px
    }
}

.personaInfoFormBlock .personaInfoFormBox .area--selectPrefecture {
    width: 180px;
    margin-bottom: 7px
}

.personaInfoFormBlock .personaInfoFormBox .area--selectGender,
.personaInfoFormBlock .personaInfoFormBox .area--birthYear {
    width: 80%;
    margin-bottom: 7px
}

.personaInfoFormBlock .personaInfoFormBox .area--address1,
.personaInfoFormBlock .personaInfoFormBox .area--city {
    width: 100%;
    margin-bottom: 7px
}

.personaInfoFormBlock .personaInfoFormBox .area--address2,
.personaInfoFormBlock .personaInfoFormBox .area--email,
.personaInfoFormBlock .personaInfoFormBox .area--emailConf,
.personaInfoFormBlock .personaInfoFormBox .area--tel1,
.personaInfoFormBlock .personaInfoFormBox .area--tel2 {
    width: 100%
}

.personaInfoFormBlock .personaInfoFormBox .area--question {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

    .personaInfoFormBlock .personaInfoFormBox .area--question .errorMessage {
        font-size: 18px
    }

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaInfoFormBox .area--question .errorMessage {
        font-size: 9pt
    }
}

.personaInfoFormBlock__text {
    text-align: center;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock__text {
        font-size: 13px;
        margin-bottom: 15px
    }
}

.personaInfoFormBlock .personaCheckFormBox__sendingEntry {
    margin-bottom: 30px
}

.personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list {
    border-top: 1px solid #ccc
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list {
        border-width: 1px
    }
}

.personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list li {
    border-bottom: 1px solid #ccc;
    padding: 15px 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center
}

    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list li dl {
        font-size: 1pc;
        padding-right: 10px;
        box-sizing: border-box;
        width: calc(100% - 98px)
    }

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list li {
        border-width: 1px
    }

        .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list li dl {
            font-size: 9pt;
            width: calc(100% - 67px)
        }
}

.personaInfoFormBlock .personaCheckFormBox .fileSelectBox__list li dl dd {
    word-break: break-all;
    line-height: 1.2em
}

.personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton {
    width: 98px
}

    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton label span {
        display: -ms-flexbox;
        display: flex;
        font-size: 10px;
        color: #fff;
        background: #06b;
        border-radius: 5px;
        padding: 17px 14px 10px;
        line-height: 1.4em
    }

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton {
        width: 67px
    }

        .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton label span {
            padding: 10px 7px
        }
}

.personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton label span:before {
    content: '';
    background: url(/img/osu/common/icon-folder.svg)left top no-repeat;
    background-size: auto 100%;
    display: inline-block;
    width: 40px;
    height: 30px;
    margin-right: 10px;
    -ms-transform: translateY(-4px);
    transform: translateY(-4px)
}

.personaInfoFormBlock .personaCheckFormBox__notice {
    margin-bottom: 50px
}

    .personaInfoFormBlock .personaCheckFormBox__notice li {
        line-height: 2em;
        font-size: 1pc;
        text-indent: -1em;
        padding: 0 0 0 1em
    }

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox .fileSelectBox__pickButton label span:before {
        -ms-transform: translateY(2px);
        transform: translateY(2px);
        width: 28px;
        height: 22px;
        margin-right: 5px
    }

    .personaInfoFormBlock .personaCheckFormBox__notice {
        margin-bottom: 30px
    }

        .personaInfoFormBlock .personaCheckFormBox__notice li {
            font-size: 9pt;
            line-height: 1.6em
        }
}

.personaInfoFormBlock .personaCheckFormBox__mailEntry p {
    font-size: 1pc
}

.personaInfoFormBlock .personaCheckFormBox__checkBox {
    text-align: center;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox__mailEntry p {
        font-size: 9pt
    }

    .personaInfoFormBlock .personaCheckFormBox__checkBox {
        margin-bottom: 10px
    }
}

.personaInfoFormBlock .personaCheckFormBox__checkBox label {
    position: relative;
    width: 100%
}

.personaInfoFormBlock .personaCheckFormBox__checkBox span {
    border: 1px solid #06b;
    padding: 14px 10px 14px 25px;
    border-radius: 3px;
    color: #06b;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox__checkBox span {
        font-size: 15px;
        width: 100%;
        display: inline-block;
        box-sizing: border-box;
        padding: 14px 0;
        font-weight: 700
    }
}

.personaInfoFormBlock .personaCheckFormBox__checkBox span:after {
    font-family: Font Awesome\ 5 Free;
    content: "\f00c";
    display: inline-block;
    font-weight: 700;
    font-size: 26px;
    color: #c5c5c5;
    width: 36px;
    height: 36px;
    line-height: 1.5em;
    border: 1px solid #06b;
    border-radius: 3px;
    -ms-transform: translateY(6px);
    transform: translateY(6px);
    margin-left: 45px;
    background: #fff
}

.personaInfoFormBlock .personaCheckFormBox__checkBox input[type=checkbox]:checked + span {
    color: #fff;
    background: #06b
}

    .personaInfoFormBlock .personaCheckFormBox__checkBox input[type=checkbox]:checked + span:after {
        color: #06b
    }

.confirmationBlock {
    background: #fff;
    padding-top: 50px
}

@media screen and (max-width:999px) {
    .personaInfoFormBlock .personaCheckFormBox__checkBox span:after {
        width: 25px;
        height: 25px;
        line-height: 1.5em;
        font-size: 18px;
        -ms-transform: translateY(0);
        transform: translateY(0);
        margin-left: 10px
    }

    .confirmationBlock {
        padding: 5vw
    }
}

.confirmationBlock .confirmationClientBox__subTitle {
    margin-bottom: 0;
    text-decoration: underline;
    font-size: 1pc
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationClientBox__subTitle {
        font-size: 9pt
    }
}

.confirmationBlock .confirmationClientBox__list__item {
    position: relative;
    border-bottom: 1px solid #ccc;
    font-size: 18px;
    padding: 14px 0
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationClientBox__list__item {
        font-size: 13px
    }

        .confirmationBlock .confirmationClientBox__list__item p {
            font-size: 9pt
        }
}

.confirmationBlock .confirmationClientBox__list__item:last-child {
    border-bottom: 0
}

.confirmationBlock .confirmationClientBox__list__item.item--price:before {
    display: none
}

.confirmationBlock .confirmationClientBox__list__item .listNotice {
    font-size: 14px;
    padding-top: 2px
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationClientBox__list__item .listNotice {
        font-size: 9pt;
        padding-left: 1.3em
    }
}

.confirmationBlock .confirmationClientBox__list__item .listNotice li {
    text-indent: -1em;
    padding-left: 1em
}

.confirmationBlock .confirmationClientBox__list__item .priceWrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between
}

    .confirmationBlock .confirmationClientBox__list__item .priceWrap p {
        text-align: left;
        font-size: 18px;
        margin: 0
    }

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationClientBox__list__item .priceWrap p {
        font-size: 13px
    }
}

.confirmationBlock .confirmationClientBox__list__item__data {
    margin: 0;
    padding-left: 1.2em;
    font-size: 18px
}

    .confirmationBlock .confirmationClientBox__list__item__data:before {
        content: '';
        display: inline-block;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #06b;
        -ms-transform: translateY(-3px);
        transform: translateY(-3px);
        margin-right: 5px;
        position: absolute;
        left: 3px;
        top: 25px
    }

.confirmationBlock__text {
    text-align: center;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationClientBox__list__item__data {
        padding-left: 15px
    }

        .confirmationBlock .confirmationClientBox__list__item__data:before {
            margin-right: 0;
            -ms-transform: translateY(-6px);
            transform: translateY(-6px)
        }

    .confirmationBlock__text {
        font-size: 13px;
        margin-bottom: 15px
    }
}

.confirmationBlock .confirmationRuleBox__list {
    padding-bottom: 10px
}

    .confirmationBlock .confirmationRuleBox__list dt {
        color: #b22222;
        font-size: 18px;
        margin-bottom: 5px
    }

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationRuleBox__list dt {
        font-size: 13px
    }
}

.confirmationBlock .confirmationRuleBox__list dd {
    margin-bottom: 30px;
    font-size: 14px;
    text-indent: -1em;
    padding: 0 0 0 1em
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationRuleBox__list dd {
        font-size: 9pt;
        margin-bottom: 15px
    }
}

.confirmationBlock .confirmationRuleBox p {
    font-size: 18px
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationRuleBox p {
        font-size: 9pt
    }
}

.confirmationBlock .confirmationRuleBox__detail {
    overflow-y: scroll;
    font-size: 18px;
    height: 10em;
    margin-bottom: 25px
}

.paymentBlock {
    background: #fff;
    /*padding-top: 50px*/
}

@media screen and (max-width:999px) {
    .confirmationBlock .confirmationRuleBox__detail {
        font-size: 9pt
    }

    .paymentBlock {
        padding: 0vw 5vw
    }
}

.paymentBlock .paymentCreditBox__totalPrice {
    font-size: 24px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: #b22222;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__totalPrice {
        font-size: 1pc;
        margin-bottom: 3vw
    }
}

.paymentBlock .paymentCreditBox__cardInfomation {
    background: #eaeaea;
    padding: 20px;
    margin-bottom: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: center
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfomation {
        display: block;
        text-align: center;
        margin-bottom: 20px
    }
}

.paymentBlock .paymentCreditBox__cardInfomation p {
    color: #b22222;
    font-size: 18px;
    margin: 0
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfomation p {
        font-size: 9pt
    }
}

.paymentBlock .paymentCreditBox__cardInfomation span {
    display: block;
    color: #000;
    font-size: 14px
}

.thanksBlock .thanksCompleteBox__text.type--notice,
.thanksBlock .thanksSendMailBox__text.type--notice {
    color: #b22222
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

    .paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl {
        width: 48%
    }

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfomation span {
        font-size: 9px
    }

    .paymentBlock .paymentCreditBox__cardInfoForm__inputArea {
        display: block
    }

        .paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl {
            width: 100%
        }
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dt {
    font-size: 18px
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dt {
        font-size: 13px;
        font-weight: 700
    }
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dt .button--help {
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd {
    margin-bottom: 5px;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd {
        font-size: 13px
    }
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .errorMessage {
    font-size: 14px
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd input[type=text] {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 18px;
    padding: 10px;
    box-sizing: border-box;
    margin: 7px 0
}

@media screen and (max-width:999px) {
    .paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd input[type=text] {
        font-size: 1pc
    }
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .area--cardNo,
.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .area--cardSecurityCd,
.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .area--cardUserName {
    width: 100%
}

.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .area--cardMM,
.paymentBlock .paymentCreditBox__cardInfoForm__inputArea dl dd .area--cardYY {
    width: 46%
}

.paymentBlock__text {
    text-align: center;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .paymentBlock__text {
        font-size: 13px;
        margin-bottom: 15px
    }
}

.thanksBlock {
    background: #fff;
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: center
}

    .thanksBlock .thanksSendMailBox__text {
        font-size: 24px;
    }

    .thanksBlock .thanksSendMailBox__text2 {
        font-size: 24px;
        margin-top: -1.8rem
    }

@media screen and (max-width:999px) {
    .thanksBlock {
        background: #fff;
        padding-top: 30px;
        padding-bottom: 50px;
        text-align: center
    }

        .thanksBlock .thanksSendMailBox__text {
            font-size: 15px;
        }

        .thanksBlock .thanksSendMailBox__text2 {
            font-size: 15px;
            margin-top: -1.8rem
        }
}

.thanksBlock .thanksSendMailBox__image {
    width: 196px;
    height: 133px;
    margin: 0 auto
}

@media screen and (max-width:639px) {
    .thanksBlock .thanksSendMailBox__image {
        width: 162px;
        height: 111px
    }
}

.thanksBlock .thanksSendMailBox__image img {
    width: 100%;
    height: auto
}

.thanksBlock .thanksCompleteBox__title {
    font-size: 24px;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .thanksBlock .thanksCompleteBox__title {
        font-size: 15px
    }
}

.thanksBlock .thanksCompleteBox__text {
    font-size: 24px
}

@media screen and (max-width:999px) {
    .thanksBlock .thanksCompleteBox__text {
        font-size: 15px
    }
}

.thanksBlock .thanksCompleteBox__image {
    width: 154px;
    height: 164px;
    margin: 0 auto 25px;
    padding-left: 30px
}

@media screen and (max-width:639px) {
    .thanksBlock .thanksCompleteBox__image {
        width: 75pt;
        height: 107px;
        padding-left: 20px
    }
}

.thanksBlock .thanksCompleteBox__image img {
    width: 100%;
    height: auto
}

.thanksBlock .thanksCompleteBox__flow:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2pc 47px 0;
    border-color: #ccc transparent transparent;
    display: block;
    margin: 20px auto
}

.thanksBlock .thanksCompleteBox__flow h3 {
    font-size: 24px;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .thanksBlock .thanksCompleteBox__flow h3 {
        font-size: 15px
    }
}

.thanksBlock .thanksCompleteBox__flow p {
    font-size: 18px;
    margin-bottom: 30px
}

@media screen and (max-width:999px) {
    .thanksBlock .thanksCompleteBox__flow p {
        font-size: 9pt
    }
}

.thanksBlock .thanksCompleteBox__button a {
    display: inline-block;
    padding: 10px 60px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    text-decoration: none;
    color: #000;
    font-size: 18px
}

.smbcBlock {
    background: #fff;
    padding-top: 20px;
    padding-bottom: 20px
}

@media screen and (max-width:999px) {
    .thanksBlock .thanksCompleteBox__button a {
        font-size: 1pc
    }

    .smbcBlock {
        padding: 0
    }
}

.smbcBlock .smbcBox__list__item {
    position: relative;
    border-bottom: 1px solid #ccc;
    font-size: 18px;
    padding: 14px 0
}

@media screen and (max-width:999px) {
    .smbcBlock .smbcBox__list__item {
        font-size: 13px
    }
}

.smbcBlock .smbcBox__list__item:last-child {
    border-bottom: 0
}

.smbcBlock .smbcBox__list__item.item--price:before {
    display: none
}

.smbcBlock .smbcBox__list__item .listNotice {
    font-size: 14px;
    padding-top: 2px
}

@media screen and (max-width:999px) {
    .smbcBlock .smbcBox__list__item .listNotice {
        font-size: 9pt;
        padding-left: 1.3em
    }
}

.smbcBlock .smbcBox__list__item .listNotice li {
    text-indent: -1em;
    padding-left: 1em
}

.smbcBlock .smbcBox__list__item .dataWrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between
}

    .smbcBlock .smbcBox__list__item .dataWrap p {
        font-size: 18px;
        margin: 0
    }

@media screen and (max-width:999px) {
    .smbcBlock .smbcBox__list__item .dataWrap p {
        font-size: 13px
    }
}

.smbcBlock .smbcBox__list__item__data {
    margin: 0;
    padding-left: 1.2em;
    font-size: 18px
}

    .smbcBlock .smbcBox__list__item__data.dataWrap p:first-child:before,
    .smbcBlock .smbcBox__list__item__data:before {
        content: '';
        display: inline-block;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #06b;
        -ms-transform: translateY(-3px);
        transform: translateY(-3px);
        margin-right: 5px;
        position: absolute;
        left: 3px;
        top: 25px
    }

.modal-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5
}

.modal-wrapper-2 {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5
}

.modal-background {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5)
}

.modalWindow {
    display: inline-block;
    position: absolute;
    top: calc(50% + 35px);
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
    width: 826px;
    overflow-y: auto;
    /*height: 85%*/
    max-height: 85%
}

.modalWindow__inner {
    position: relative;
    display: block;
    /*overflow-y: auto;*/
    height: 100%;
    -webkit-overflow-scrolling: auto;
    padding: 35px 40px 0;
    box-sizing: border-box
}

@media screen and (max-width:999px) {
    .modalWindow {
        width: 90%
    }

    .modalWindow__inner {
        padding: 6vw 3.5vw 0
    }
}


/*.modalWindow__inner::-webkit-scrollbar {*/

.modalWindow::-webkit-scrollbar {
    width: 5px;
    border-radius: 3px
}


/*.modalWindow__inner::-webkit-scrollbar-thumb {*/

.modalWindow::-webkit-scrollbar-thumb {
    background: #535353;
    border-radius: 3px
}


/*.modalWindow__inner::-webkit-scrollbar-track-piece {*/

.modalWindow::-webkit-scrollbar-track-piece {
    background: #ccc
}

.modalWindow__title {
    text-align: center;
    margin: 0 0 30px;
    font-weight: 900;
    font-size: 15px;
}

@media screen and (max-width:999px) {
    .modalWindow__title {
        font-size: 17px;
        margin: 0 0 15px;
        font-weight: 700
    }
}

@media screen and (max-width:639px) {
    .modalWindow__title {
        margin: 0 0 6vw;
        font-weight: 700
    }
    /*.modal-area-KitSelect .modalWindow__inner {
        overflow-y: scroll
    }*/
}

.modalWindow__text {
    text-align: center;
    margin: 0 0 25px
}

.modalButton {
    border-radius: 5px
}

.modalButton__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 41px
}

@media screen and (max-width:999px) {
    .modalWindow__text {
        font-size: 9pt;
        margin: 0 0 3vw
    }

    .modalButton__wrap {
        padding-bottom: 20px
    }
}

.button--closed-small {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #0067b8;
    border: 0;
    color: #fff;
    font-size: 0;
    width: 36px;
    height: 36px
}

.button--closed-large,
.button--complete {
    font-size: 1pc;
    max-width: 148px;
    display: inline-block
}

.button--complete2 {
    font-size: 18px;
    max-width: 280px;
    display: inline-block
}

@media screen and (max-width:999px) {
    .button--closed-small {
        top: 3.5vw;
        right: 4vw
    }
}

.button--closed-small:before {
    content: '';
    width: 1pc;
    height: 1pc;
    display: inline-block;
    background: url(/img/common/icon-close-3.svg)no-repeat;
    top: 15px;
    right: 15px;
    background-size: 1pc 1pc
}

.button--closed-large {
    background: #e0e0e0;
    border: 1px solid #ccc;
    color: #000;
    padding: 7px 0;
    margin: 0 15px;
    width: 100%
}

@media screen and (max-width:999px) {
    .button--closed-large {
        font-size: 1pc;
        margin: 0 10px;
        padding: 9px 0
    }
}

.button--closed-large:before {
    content: '';
    width: 11px;
    height: 11px;
    display: inline-block;
    background: url(/img/common/icon-close-5.svg)no-repeat;
    background-size: 9px 9px;
    margin-right: 5px;
    -ms-transform: translateY(1px);
    transform: translateY(1px)
}

.button--complete {
    background: #0168b7;
    border: 1px solid #0168b7;
    color: #fff;
    padding: 7px 0;
    margin: 0 15px;
    width: 100%
}

.button--complete2 {
    background: #60bb33;
    border: 1px solid #60bb33;
    color: #fff;
    padding: 9pt 0;
    margin: 0 10px;
    width: 100%
}

@media screen and (max-width:999px) {
    .button--closed-large:before {
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    .button--complete,
    .button--complete2 {
        font-size: 1pc;
        margin: 0 10px;
        padding: 9px 0
    }
}

.button--complete2:before,
.button--complete:before {
    font-family: Font Awesome\ 5 Free;
    content: "\f14a";
    display: inline-block;
    border: 0;
    line-height: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-right: 5px;
    -ms-transform: translateY(1px);
    transform: translateY(1px)
}

.modal-area-KitSelect {
    width: 764px
}

    .modal-area-KitSelect .modalButton__wrap {
        padding-top: 18px
    }

@media screen and (max-width:999px) {
    .button--complete2:before,
    .button--complete:before {
        font-size: 20px
    }

    .modal-area-KitSelect {
        width: 90%
    }

        .modal-area-KitSelect .modalButton__wrap {
            padding-top: 0
        }
}

.optionKitBlock__radioButtonWrapper {
    width: 50%;
    margin-top: -10px
}

@media screen and (max-width:999px) {
    .optionKitBlock__radioButtonWrapper {
        width: 100%;
        margin-top: -10px
    }
}

.optionKitBlock__rackImage {
    float: right;
    max-width: 250px;
    width: 100%;
    margin: -10px 0 20px 15px
}

@media screen and (max-width:999px) {
    .optionKitBlock__rackImage {
        max-width: 150px;
        width: 100%;
        margin: 10px 0 10px 15px;
        text-align: center;
        clear: both
    }
}

.optionKitBlock__radioButton {
    font-size: 15px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px
}

    .optionKitBlock__radioButton label {
        width: 47%
    }

    .optionKitBlock__radioButton input[type=radio] {
        display: none
    }

        .optionKitBlock__radioButton input[type=radio] + span {
            position: relative;
            display: inline-block;
            background: #fff;
            border: 1px solid #ccc;
            border-radius: 5px;
            padding: 10px 0 10px 40px;
            box-sizing: border-box;
            width: 100%;
            color: #000
        }

            .optionKitBlock__radioButton input[type=radio] + span:before,
            .optionKitBlock__radioButton input[type=radio]:checked + span:after {
                position: absolute;
                display: inline-block;
                -ms-transform: translateY(-50%);
                top: 50%;
                bottom: 50%;
                content: ''
            }

            .optionKitBlock__radioButton input[type=radio] + span:before {
                left: 10px;
                width: 20px;
                height: 20px;
                border: 1px solid #ccc;
                background: #fff;
                border-radius: 50%;
                transform: translateY(-50%)
            }

@media screen and (max-width:999px) {
    .optionKitBlock__radioButton {
        font-size: 15px;
        margin-bottom: 15px
    }

        .optionKitBlock__radioButton input[type=radio] + span {
            padding: 8px 0 10px 35px
        }

            .optionKitBlock__radioButton input[type=radio] + span:before {
                left: 10px;
                width: 18px;
                height: 18px
            }
}

.optionKitBlock__radioButton input[type=radio]:checked + span {
    background: #ffc;
    color: #000
}

    .optionKitBlock__radioButton input[type=radio]:checked + span:after {
        left: 15px;
        width: 9pt;
        height: 9pt;
        background: #06b;
        border-radius: 50%;
        transform: translateY(-50%)
    }

@media screen and (max-width:999px) {
    .optionKitBlock__radioButton input[type=radio]:checked + span:after {
        width: 10px;
        height: 10px;
        left: 15px
    }

    .optionKitBlock__kitSelect {
        padding-bottom: 4px
    }
}

.optionKitBlock .kitItemBox {
    position: relative;
    background: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
    width: 100%;
    padding: 20px;
    margin: 0 auto 25px;
    box-sizing: border-box
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox {
        padding: 15px 10px;
        margin-bottom: 15px
    }
}

.optionKitBlock .kitItemBox.js--kitSelected {
    background: #ffc
}

.optionKitBlock .kitItemBox__name {
    border-bottom: 1px solid #ccc;
    text-align: left;
    padding-bottom: 20px
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__name {
        padding-bottom: 15px
    }
}

.optionKitBlock .kitItemBox__name label input[type=radio] {
    display: none
}

    .optionKitBlock .kitItemBox__name label input[type=radio] + p {
        position: relative;
        font-size: 18px;
        padding: 0 0 0 35px;
        margin: 0;
        color: #000
    }

        .optionKitBlock .kitItemBox__name label input[type=radio] + p:before {
            position: absolute;
            top: 50%;
            bottom: 50%;
            left: 0;
            content: '';
            display: inline-block;
            width: 26px;
            height: 26px;
            border: 1px solid #ccc;
            background: #fff;
            border-radius: 50%;
            margin-right: 8px;
            -ms-transform: translateY(-50%);
            transform: translateY(-50%)
        }

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__name label input[type=radio] + p {
        font-size: 15px;
        padding: 0 0 0 30px
    }

        .optionKitBlock .kitItemBox__name label input[type=radio] + p:before {
            width: 18px;
            height: 18px;
            margin-right: 4px
        }
}

.optionKitBlock .kitItemBox__name label input[type=radio]:checked + p {
    color: #000
}

    .optionKitBlock .kitItemBox__name label input[type=radio]:checked + p:after {
        content: '';
        display: inline-block;
        width: 14px;
        height: 14px;
        background: #06b;
        border-radius: 50%;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 7px;
        margin: auto 0
    }

.optionKitBlock .kitItemBox__name label p span {
    display: block;
    font-weight: 400;
    font-size: 14px
}

.optionKitBlock .kitItemBox__item ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 26px
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__name label input[type=radio]:checked + p:after {
        width: 10px;
        height: 10px;
        left: 5px
    }

    .optionKitBlock .kitItemBox__name label p span {
        font-size: 10.5px
    }

    .optionKitBlock .kitItemBox__item ul {
        padding-top: 15px
    }
}

.optionKitBlock .kitItemBox__item ul li {
    padding: 92px 25px 0;
    font-size: 9pt
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__item ul li {
        text-align: center;
        font-size: 8px;
        padding: 90px 25px 0
    }
}

.optionKitBlock .kitItemBox__item ul li.item--card {
    background: url(/img/osu/common/icon-card.svg)center 7px no-repeat;
    background-size: 105px 68px
}

@media screen and (max-width:639px) {
    .optionKitBlock .kitItemBox__item ul li {
        padding: 60px 4vw 0
    }

    .optionKitBlock .kitItemBox__item ul.items--basic li {
        padding: 60px 4.5vw 0
    }

    .optionKitBlock .kitItemBox__item ul.items--rack li {
        text-align: center;
        padding: 60px 0 0;
        width: 25%
    }

    .optionKitBlock .kitItemBox__item ul li.item--card {
        background-size: 66px 43px
    }
}

.optionKitBlock .kitItemBox__item ul li.item--plus {
    background: url(/img/osu/common/icon-plus.svg)center 7px no-repeat;
    background-size: 82px 70px
}

@media screen and (max-width:639px) {
    .optionKitBlock .kitItemBox__item ul li.item--plus {
        background-size: 52px 44px
    }
}

.optionKitBlock .kitItemBox__item ul li.item--heart {
    background: url(/img/osu/common/icon-heart.svg)center 7px no-repeat;
    background-size: 82px 70px
}

@media screen and (max-width:639px) {
    .optionKitBlock .kitItemBox__item ul li.item--heart {
        background-size: 52px 44px
    }
}

.optionKitBlock .kitItemBox__item ul li.item--key {
    background: url(/img/osu/common/icon-key.svg)center top no-repeat;
    background-size: 67px 76px
}

@media screen and (max-width:639px) {
    .optionKitBlock .kitItemBox__item ul li.item--key {
        background-size: 42px 3pc
    }
}

.optionKitBlock .kitItemBox__item ul li.item--rack {
    background: url(/img/osu/common/icon-rack.svg)center top no-repeat;
    background-size: 54px 5pc
}

@media screen and (max-width:639px) {
    .optionKitBlock .kitItemBox__item ul li.item--rack {
        background-size: 33px 50px
    }
    /*.modal-area-Unit .modalWindow__inner {
        overflow-y: scroll
    }*/
}

.optionKitBlock .kitItemBox__custom {
    padding-top: 0
}

    .optionKitBlock .kitItemBox__custom dl {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
        padding-top: 10px
    }

        .optionKitBlock .kitItemBox__custom dl dd,
        .optionKitBlock .kitItemBox__custom dl dt {
            font-size: 15px
        }

        .optionKitBlock .kitItemBox__custom dl dt {
            width: 45%;
            padding: 9pt 0
        }

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd,
    .optionKitBlock .kitItemBox__custom dl dt {
        font-size: 9pt
    }

    .optionKitBlock .kitItemBox__custom dl dt {
        padding: 5px 0;
        width: 39%
    }
}

.optionKitBlock .kitItemBox__custom dl dd.item--number {
    width: 35%;
    text-align: center
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd.item--number {
        width: 45%
    }
}

.optionKitBlock .kitItemBox__custom dl dd.item--price {
    width: 20%;
    text-align: right
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd.item--price {
        width: 27%
    }
}

.optionKitBlock .kitItemBox__custom dl dd.item--price .price--free {
    color: #b22222
}

.optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap {
    position: relative;
    display: inline-block;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 1pc;
    width: 100%
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap {
        font-size: 20px;
        -ms-transform: scale(.8);
        transform: scale(.8);
        width: 138%
    }
}

.optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap select {
    background: 0;
    border: 0;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1pc;
    width: 100%
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap select {
        font-size: 18px;
        -ms-transform: scale(.8);
        transform: scale(.8);
        width: 120%;
        margin-left: -10%;
        padding: 15px 0 15px 15px
    }
}

.optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap:after {
    position: absolute;
    top: 50%;
    bottom: 50%;
    right: 0;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-weight: 700;
    font-size: 26px;
    padding: 0 13px;
    border-left: 1px solid #ccc;
    color: #0269b8;
    width: 20px;
    height: 40px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none;
    background: #fff
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom dl dd.item--number .selectWrap:after {
        font-size: 20px;
        height: 20px;
        width: 10px;
        padding: 0 20px 0 15px
    }
}

.optionKitBlock .kitItemBox__custom ul {
    padding-top: 20px
}

    .optionKitBlock .kitItemBox__custom ul li {
        font-size: 14px
    }

.optionKitBlock .optionKiteditBox {
    margin-bottom: 18px
}

.optionKitBlock .optionKiteditBox__inner {
    text-align: right
}

.optionKitBlock .optionKiteditBox__contents {
    text-align: left;
    padding-top: 30px
}

@media screen and (max-width:999px) {
    .optionKitBlock .kitItemBox__custom ul li {
        font-size: 10.5px
    }

    .optionKitBlock .optionKiteditBox {
        margin-bottom: 20px
    }

    .optionKitBlock .optionKiteditBox__contents {
        padding-top: 15px
    }
}

.optionKitBlock .optionKiteditBox__toggleButton {
    text-align: right;
    border: 0;
    background: 0;
    color: #06b;
    font-size: 1pc;
    padding: 0
}

.optionKitBlock .optionKiteditBox .toggle--close:after,
.optionKitBlock .optionKiteditBox .toggle--open:after {
    text-align: center;
    margin-top: -1px;
    margin-left: 5px;
    vertical-align: middle;
    display: inline-block;
    font-family: Font Awesome\ 5 Free;
    font-weight: 700
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox__toggleButton {
        font-size: 1pc
    }
}

.optionKitBlock .optionKiteditBox .toggle--close:after {
    content: "\f106";
    border: 3px solid #06b;
    border-radius: 3px;
    font-size: 34px;
    line-height: .8em;
    width: 26px;
    height: 26px;
    -ms-transform: translateY(-1px);
    transform: translateY(-1px)
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .toggle--close:after {
        width: 19px;
        height: 19px;
        font-size: 24px;
        line-height: .8em
    }
}

.optionKitBlock .optionKiteditBox .toggle--open {
    background: #fff;
    color: #06b
}

    .optionKitBlock .optionKiteditBox .toggle--open:after {
        content: "\f107";
        border: 3px solid #06b;
        background: #06b;
        color: #fff;
        border-radius: 3px;
        font-size: 34px;
        line-height: .9em;
        width: 26px;
        height: 26px;
        -ms-transform: translateY(-1px);
        transform: translateY(-1px)
    }

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .toggle--open:after {
        width: 19px;
        height: 19px;
        font-size: 24px;
        line-height: .8em
    }

    .optionKitBlock .optionKiteditBox__text {
        margin-bottom: 15px
    }
}

.optionKitBlock .optionKiteditBox .kitEditBox {
    position: relative;
    background: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
    width: 100%;
    padding: 20px;
    margin: 30px auto 25px;
    box-sizing: border-box
}

.optionKitBlock .optionKiteditBox .kitAboutBox {
    margin-bottom: 30px
}

.optionKitBlock .optionKiteditBox .kitAboutBox__title {
    width: 100%;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitEditBox {
        padding: 4vw
    }

    .optionKitBlock .optionKiteditBox .kitAboutBox {
        margin-bottom: 15px
    }

    .optionKitBlock .optionKiteditBox .kitAboutBox__title {
        font-weight: 700;
        font-size: 15px;
        margin-bottom: 5px
    }

    .optionKitBlock .optionKiteditBox .kitAboutBox__text p {
        font-size: 14px;
        letter-spacing: -.05em
    }
}

.optionKitBlock .optionKiteditBox .kitAboutBox__text p {
    margin-bottom: 10px
}

    .optionKitBlock .optionKiteditBox .kitAboutBox__text p.text--notice {
        color: #b22222
    }

.optionKitBlock .optionKiteditBox .kitAboutBox__image {
    float: right;
    max-width: 150px;
    width: 100%;
    height: 75pt
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitAboutBox__image {
        text-align: center;
        max-width: 106px;
        margin-left: 5px
    }

        .optionKitBlock .optionKiteditBox .kitAboutBox__image.image--marginNone {
            margin-left: 0
        }
}

.optionKitBlock .optionKiteditBox .kitAboutBox__image .item--card {
    background: url(/img/osu/common/icon-card.svg)center top no-repeat;
    background-size: 100% auto;
    width: 106px;
    height: 68px;
    margin: 0 auto
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitAboutBox__image .item--card {
        display: inline-block;
        margin: 0
    }
}

.optionKitBlock .optionKiteditBox .kitAboutBox__image .item--plus {
    background: url(/img/osu/common/icon-plus.svg)center top no-repeat;
    background-size: 100% auto;
    width: 82px;
    height: 70px;
    margin: 0 auto
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitAboutBox__image .item--plus {
        display: inline-block;
        margin: 0
    }
}

.optionKitBlock .optionKiteditBox .kitAboutBox__image .item--key {
    background: url(/img/osu/common/icon-key.svg)center top no-repeat;
    background-size: 100% auto;
    width: 67px;
    height: 76px;
    margin: 0 auto
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitAboutBox__image .item--key {
        display: inline-block;
        margin: 0
    }
}

.optionKitBlock .optionKiteditBox .kitAboutBox__image .item--rack {
    background: url(/img/osu/common/icon-rack.svg)center top no-repeat;
    background-size: 100% auto;
    width: 54px;
    height: 5pc;
    margin: 0 auto
}

.modal-area-Unit {
    width: 764px
}

@media screen and (max-width:999px) {
    .optionKitBlock .optionKiteditBox .kitAboutBox__image .item--rack {
        display: inline-block;
        margin: 0
    }

    .modal-area-Unit {
        width: 90%
    }
}

.optionUnitBlock__form .form--item {
    /*margin-bottom: 28px*/
}

.optionUnitBlock__form__size {
    position: relative;
    display: inline-block;
    background: #fffcdb;
    border: 1px solid #ccc;
    border-radius: 5px;
    color: #000;
    width: 50%;
    margin-bottom: 12px;
    text-align: left
}

    .optionUnitBlock__form__size select {
        background: 0;
        border: 0;
        padding: 20px 0 20px 20px;
        box-sizing: border-box;
        width: 100%;
        outline: 0
    }

@media screen and (max-width:999px) {
    .optionUnitBlock__form__size {
        width: 100%;
        margin-bottom: 8px;
    }

        .optionUnitBlock__form__size select {
            font-size: 1pc;
            -ms-transform: scale(.9);
            transform: scale(.9);
            width: 108%;
            margin-left: -5%;
            padding: 20px 0 20px 10px
        }
}

.optionUnitBlock__form__size:after {
    position: absolute;
    top: 50%;
    bottom: 50%;
    right: 0;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-weight: 700;
    font-size: 34px;
    padding: 0 15px;
    border-left: 1px solid #ccc;
    color: #0269b8;
    width: 20px;
    height: 40px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none
}

.optionUnitBlock .showmore--container {
    text-align: center;
    margin-bottom: 20px;
}

.optionUnitBlock .btn--extender {
    padding: 4px 10px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: auto;
    font-size: 110%;
    color: #0168B7;
}

.optionUnitBlock .btn--showmore:before {
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: inline-block;
    border: 0;
    line-height: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-right: 6px;
    -ms-transform: translateY(1px);
    background: transparent;
    transform: translateY(2px);
}

.optionUnitBlock .btn--showmore:after {
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: inline-block;
    border: 0;
    line-height: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-left: 6px;
    -ms-transform: translateY(1px);
    background: transparent;
    transform: translateY(2px);
}

.optionUnitBlock .btn--showless:before {
    font-family: Font Awesome\ 5 Free;
    content: '\f0d8';
    display: inline-block;
    border: 0;
    line-height: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-right: 6px;
    -ms-transform: translateY(1px);
    background: transparent;
    transform: translateY(2px);
}

.optionUnitBlock .btn--showless:after {
    font-family: Font Awesome\ 5 Free;
    content: '\f0d8';
    display: inline-block;
    border: 0;
    line-height: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-left: 6px;
    -ms-transform: translateY(1px);
    background: transparent;
    transform: translateY(2px);
}

.unitItemBox .item--check-btn {
    position: absolute;
    top: 40%;
    right: 1rem;
    font-size: 14px;
    border: none;
    background-color: #d1d1d1;
    border-radius: 4px;
    padding: 2px 6px;
    color: white;
}

    .unitItemBox .item--check-btn.unitSelected {
        border: none;
        background-color: #0168B7;
    }

        .unitItemBox .item--check-btn.unitSelected:before {
            font-family: Font Awesome\ 5 Free;
            content: "\f14a";
            display: inline-block;
            border: 0;
            line-height: 1em;
            font-size: 18px;
            font-weight: 700;
            margin-right: 2px;
            -ms-transform: translateY(1px);
            background: transparent;
            transform: translateY(2px);
        }

    .unitItemBox .item--check-btn:before {
        content: "";
        display: inline-block;
        width: 1.2rem;
        background: white;
        height: 1.2rem;
        -ms-transform: translateY(1px);
        transform: translateY(3px);
        margin-right: 2px;
    }


.optionUnitBlock__form .unitItemBox {
    position: relative;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 20px 30px;
    margin-bottom: 12px;
}

    .optionUnitBlock__form .unitItemBox.unitSelected {
        background: #fffcdb;
        font-size: 16px;
    }

        .optionUnitBlock__form .unitItemBox.unitSelected .item--selectButton:after {
            content: '';
            display: inline-block;
            background: #0269b8;
            border-radius: 50%
        }

.list--divider {
    margin: 14px 0;
}

@media screen and (max-width:999px) {
    .list--divider {
        margin: 10px 0;
    }
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form__size:after {
        font-size: 24px
    }

    .optionUnitBlock__form .unitItemBox {
        padding: 3vw 1.4rem;
        margin-bottom: 8px;
    }

        .optionUnitBlock__form .unitItemBox.unitSelected .item--selectButton:after {
            width: 8px;
            height: 8px
        }
}

.optionUnitBlock__form .unitItemBox__name {
    /*border-bottom: 1px solid #ccc;*/
    /*padding: 10px 0 20px;*/
    font-size: 18px
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox__name {
        font-size: 15px;
        border-bottom: 0;
        padding: 0
    }

        .optionUnitBlock__form .unitItemBox__name span {
            /*font-size: 9pt;*/
            margin: 0 -2px
        }
}

.optionUnitBlock__form .unitItemBox__name .labelArea:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: '';
    background-color: transparent
}

.optionUnitBlock__form .unitItemBox__price {
    /*border-bottom: 1px solid #ccc;*/
    /*padding: 20px 0;*/
    font-size: 18px
}

    .optionUnitBlock__form .unitItemBox__price dl {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

        .optionUnitBlock__form .unitItemBox__price dl dt {
            width: 18%
        }

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox__price {
        font-size: 13px;
        padding: 0 0;
    }

        .optionUnitBlock__form .unitItemBox__price dl dt {
            width: auto;
            -ms-flex-preferred-size: auto;
            flex-basis: auto;
            -ms-flex-negative: 1;
            flex-shrink: 1;
            text-indent: -.5em
        }
}

.optionUnitBlock__form .unitItemBox__price dl dd {
    width: 82%
}

.optionUnitBlock__form .unitItemBox__comment {
    padding-top: 20px;
    font-size: 14px
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox__price dl dd {
        width: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        -ms-flex-positive: 10;
        flex-grow: 10
    }

    .optionUnitBlock__form .unitItemBox__comment {
        font-size: 9pt;
        padding-top: 2vw
    }
}

.optionUnitBlock__form .unitItemBox__button {
    background: #000
}

.optionUnitBlock__form .unitItemBox .item--selectButton {
    font-size: 0;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    box-sizing: border-box;
    padding: 2px
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox .item--selectButton {
        width: 1pc;
        height: 1pc
    }
}

.optionUnitBlock__form .unitItemBox .item--selectButton:after {
    content: '';
    display: inline-block;
    background: #fff;
    border-radius: 50%;
    width: 14px;
    height: 14px
}

.optionUnitBlock__form .unitItemBox .item--floor {
    font-size: 14px;
    word-break: break-all
}

.optionUnitBlock__form .unitItemBox .item--name {
    text-decoration: underline;
    color: #0168B7;
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox .item--selectButton:after {
        width: 8px;
        height: 8px
    }

    .optionUnitBlock__form .unitItemBox .item--floor {
        font-size: 10.5px
    }
}

.optionUnitBlock__form .unitItemBox .item--priceMonth {
    font-size: 14px
}

.optionUnitBlock__form .unitItemBox .item--priceCampain,
.optionUnitBlock__form .unitItemBox .item--priceDiscount {
    color: #b22222
}

.modal-area-Date, .modal-area-Date-Estimate {
    width: 406px;
    height: auto
}

@media screen and (max-width:999px) {
    .optionUnitBlock__form .unitItemBox .item--priceMonth {
        font-size: 10.5px
    }

    .modal-area-Date, .modal-area-Date-Estimate {
        width: 90%;
        height: auto
    }
}

.datepicker-days,
.datepicker-inline {
    width: 100%
}

.modal-area-Date-Estimate .modalWindow__inner {
    padding: 25px 25px 0;
    overflow-y: auto
}

.modal-area-Date .modalWindow__inner {
    padding: 25px 25px 0;
    overflow-y: auto
}

@media screen and (max-width:999px) {
    .modal-area-Date .modalWindow__inner {
        padding: 4vw 3.5vw 0
    }
    .modal-area-Date-Estimate .modalWindow__inner {
        padding: 4vw 3.5vw 0
    }
}

.modal-area-Date .modalButton__wrap {
    padding-bottom: 30px
}

.modal-area-Date-Estimate .modalButton__wrap {
    padding-bottom: 30px
}

.datepicker {
    margin-bottom: 23px
}

@media screen and (max-width:639px) {
    .datepicker {
        margin-bottom: 20px
    }

    .modal-area-Price .modalWindow__inner {
        overflow-y: scroll
    }
}

.datepicker-switch {
    font-size: 18px;
    text-align: center;
}

@media screen and (max-width:999px) {
    .modal-area-Date .modalButton__wrap {
        padding-bottom: 20px
    }

    .modal-area-Date-Estimate .modalButton__wrap {
        padding-bottom: 20px
    }

    .datepicker-switch {
        font-size: 15px
    }
}

.datepicker .table-condensed {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    box-siging: border-box
}

    .datepicker .table-condensed thead th.dow {
        text-align: center;
        padding: 9pt 0;
        font-size: 14px;
        border-radius: 0;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc
    }

@media screen and (max-width:999px) {
    .datepicker .table-condensed thead th.dow {
        font-size: 9pt;
        padding: 10px 0
    }
}

.datepicker .table-condensed thead th.dow:first-child {
    border-left: 1px solid #ccc;
    border-top-left-radius: 5px
}

.datepicker .table-condensed thead th.dow:last-child {
    border-right: 1px solid #ccc;
    border-top-right-radius: 5px
}

.datepicker .table-condensed tbody td {
    text-align: center;
    padding: 9pt 0;
    font-size: 20px;
    border-radius: 0;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    line-height: 1em;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    font-family: Arial, sans-serif
}

@media screen and (max-width:999px) {
    .datepicker .table-condensed tbody td {
        font-size: 17px;
        padding: 10px 0
    }
}

.datepicker .table-condensed tbody td:last-child {
    border-right: 1px solid #ccc
}

.datepicker .table-condensed tbody td.new {
    color: #aaa
}

.datepicker .table-condensed tbody td.active {
    border-radius: 0;
    background: #06b;
    color: #fff;
    font-weight: 700
}

.datepicker .table-condensed tbody td.disabled,
.datepicker .table-condensed tbody td.disabled-date {
    background: #d6d6d6;
    color: #888
}

.datepicker .table-condensed tbody tr:last-child td:first-child {
    border-bottom-left-radius: 5px
}

.datepicker .table-condensed tbody tr:last-child td:last-child {
    border-bottom-right-radius: 5px
}

.datepicker .table-condensed th.next,
.datepicker .table-condensed th.prev {
    font-size: 0;
    padding: 0
}

.datepicker .table-condensed th.next {
    text-align: right
}

.datepicker .table-condensed th.prev {
    text-align: left
}

.datepicker .table-condensed .next:hover,
.datepicker .table-condensed .prev:hover {
    background: 0
}

.datepicker .table-condensed .next:before,
.datepicker .table-condensed .prev:before {
    font-family: Font Awesome\ 5 Free;
    color: #fff;
    font-size: 18px;
    background: #06b;
    border-radius: 5px;
    width: 36px;
    height: 36px;
    font-weight: 700
}

.datepicker .table-condensed .prev:before {
    content: '\f104'
}

.datepicker .table-condensed .next:before,
.datepicker .table-condensed .prev:before {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
}

.datepicker .table-condensed .next:before {
    content: '\f105'
}

.datepicker .table-condensed .next.disabled:before,
.datepicker .table-condensed .prev.disabled:before {
    background: #e0e0e0
}

.notice--startTime {
    color: #b22222;
    font-size: 1pc;
    text-align: center;
    padding-top: 20px;
    padding-bottom: 10px;
    margin: 0
}

@media screen and (max-width:999px) {
    .notice--startTime {
        font-size: 13px;
        padding-top: 10px
    }
}

.optionPriceBlock__paymentNotice {
    padding: 20px;
    margin: 0 0 10px;
    background: #eaeaea;
    font-size: 18px
}

@media screen and (max-width:999px) {
    .optionPriceBlock__paymentNotice {
        font-size: 9pt;
        padding: 5vw
    }
}

.optionPriceBlock__paymentNotice span {
    color: #b22222;
    padding: 0 5px
}

.optionPriceBlock .priceListBox__list__item {
    position: relative;
    border-bottom: 1px solid #ccc;
    padding: 15px 0
}

    .optionPriceBlock .priceListBox__list__item:last-child {
        border-bottom: 0;
        margin-bottom: 25px
    }

    .optionPriceBlock .priceListBox__list__item dl {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center
    }

        .optionPriceBlock .priceListBox__list__item dl dt {
            font-size: 18px;
            padding: 0 0 0 30px;
            box-sizing: border-box
        }

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dt {
        font-size: 13px;
        padding: 0
    }
}

.optionPriceBlock .priceListBox__list__item dl dd {
    font-size: 18px;
    text-align: left;
    box-sizing: border-box
}

.optionPriceBlock .priceListBox__list__item dl dt.item--month {
    width: 54%
}

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd {
        font-size: 13px
    }

    .optionPriceBlock .priceListBox__list__item dl dt.item--month {
        width: auto;
        -ms-flex-positive: 2;
        flex-grow: 2
    }
}

.optionPriceBlock .priceListBox__list__item dl dd.item--priceDown {
    width: 12%
}

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd.item--priceDown {
        width: 68px;
        text-align: right;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
}

.optionPriceBlock .priceListBox__list__item dl dd.item--priceDown span {
    border: 1px solid #b22222;
    border-radius: 5px;
    color: #b22222;
    padding: 0 10px
}

.optionPriceBlock .priceListBox__list__item dl dd.item--monthPrice {
    text-align: right;
    width: 25%;
    padding: 0 30px 0 0
}

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd.item--monthPrice {
        padding: 0 10px 0 0;
        width: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
}

.optionPriceBlock .priceListBox__list__item dl dd.toggleButton {
    text-align: right;
    width: 4%
}

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd.toggleButton {
        width: auto
    }
}

.optionPriceBlock .priceListBox__list__item dl dd.toggleButton .check--month:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: '';
    background-color: transparent
}

.optionPriceBlock .priceListBox__list__item dl dd.toggleButton button {
    font-size: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

    .optionPriceBlock .priceListBox__list__item dl dd.toggleButton button.js--toggleButtonActive:before {
        font-family: Font Awesome\ 5 Free;
        content: "\f107";
        display: inline-block;
        font-weight: 700;
        font-size: 26px;
        line-height: 1.2em;
        width: 26px;
        height: 26px;
        text-align: center;
        color: #fff;
        border: 3px solid #06b;
        border-radius: 3px;
        background: #06b
    }

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd.toggleButton button.js--toggleButtonActive:before {
        width: 22px;
        height: 22px;
        font-size: 22px;
        line-height: 1.2em
    }
}

.optionPriceBlock .priceListBox__list__item dl dd.toggleButton button.js--toggleButtonPassive:before {
    font-family: Font Awesome\ 5 Free;
    content: "\f106";
    display: inline-block;
    font-weight: 700;
    font-size: 26px;
    line-height: 1em;
    width: 26px;
    height: 26px;
    text-align: center;
    color: #06b;
    border: 3px solid #06b;
    border-radius: 3px;
    background: #fff
}

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item dl dd.toggleButton button.js--toggleButtonPassive:before {
        width: 22px;
        height: 22px;
        font-size: 22px;
        line-height: 1.2em
    }
}

.optionPriceBlock .priceListBox__list__item .toggleWindow {
    width: 100%
}

    .optionPriceBlock .priceListBox__list__item .toggleWindow.js--toggleWindowActive {
        display: block
    }

    .optionPriceBlock .priceListBox__list__item .toggleWindow.js--toggleWindowPassive {
        display: none
    }

    .optionPriceBlock .priceListBox__list__item .toggleWindow ul li {
        padding: 15px 72px 15px 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
        margin-left: 40px;
        border-bottom: 1px solid #ccc
    }

    .optionPriceBlock .priceListBox__list__item .toggleWindow ul:last-child li:last-child {
        border-bottom: 0
    }

    .optionPriceBlock .priceListBox__list__item .toggleWindow ul li p {
        margin-bottom: 0;
        font-size: 18px
    }

@media screen and (max-width:999px) {
    .optionPriceBlock .priceListBox__list__item .toggleWindow ul li {
        padding: 15px 38px 15px 0
    }

        .optionPriceBlock .priceListBox__list__item .toggleWindow ul li p {
            font-size: 13px
        }
}

.optionPriceBlock .priceListBox__list__item .toggleWindow ul li p:before {
    content: '';
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #06b;
    -ms-transform: translateY(-3px);
    transform: translateY(-3px);
    margin-right: 5px
}

.optionPriceBlock .priceListBox__list__item .toggleWindow ul li.item--discount {
    display: block;
    text-align: right
}

.optionPriceBlock__notice {
    padding: 0 30px;
    margin-bottom: 30px
}

@media screen and (max-width:999px) {
    .optionPriceBlock__notice {
        padding: 0
    }
}

.optionPriceBlock__notice li {
    font-size: 14px;
    line-height: 1.8em;
    text-indent: -1em;
    padding-left: 1em
}

.modal-area-Question {
    max-width: 648px
}

@media screen and (max-width:639px) {
    .modal-area-Question .modalWindow__inner {
        overflow-y: scroll
    }
}

.optionQuestionBlock__list__wrap {
    width: 100%;
    text-align: left;
    margin: 0 20px 15px
}

@media screen and (max-width:999px) {
    .optionPriceBlock__notice li {
        font-size: 10.5px
    }

    .optionQuestionBlock__list__wrap {
        text-align: left;
        margin: 0 10px;
        box-sizing: border-box
    }
}

.optionQuestionBlock__list {
    display: inline-block;
    margin: 0 auto;
    text-align: left;
    padding-bottom: 20px
}

    .optionQuestionBlock__list li {
        font-size: 18px;
        line-height: 2.2em
    }

@media screen and (max-width:999px) {
    .optionQuestionBlock__list li {
        font-size: 13px;
        line-height: 2em
    }
}

.optionQuestionBlock__list li label span:before {
    font-family: Font Awesome\ 5 Free;
    content: "\f00c";
    display: inline-block;
    font-weight: 700;
    font-size: 20px;
    color: #ccc;
    width: 30px;
    height: 30px;
    line-height: 1.5em;
    border: 1px solid #aaa;
    border-radius: 3px;
    margin-right: 20px;
    background: #fff;
    text-align: center
}

@media screen and (max-width:999px) {
    .optionQuestionBlock__list li label span:before {
        width: 21px;
        height: 21px;
        font-size: 14px;
        margin-right: 10px
    }
}

.optionQuestionBlock__list li input[type=checkbox]:checked + span:before {
    color: #06b;
    border: 1px solid #06b
}

.optionQuestionBlock__firstView {
    position: relative;
    margin: 0 20px 30px
}

    .optionQuestionBlock__firstView select {
        width: 100%;
        border: 1px solid #ccc;
        border-radius: 3px;
        padding: 20px 0 20px 20px;
        background-color: white
    }

@media screen and (max-width:999px) {
    .optionQuestionBlock__firstView {
        margin: 0 10px 20px;
        overflow: hidden
    }

        .optionQuestionBlock__firstView select {
            font-size: 1pc;
            -ms-transform: scale(.8);
            transform: scale(.8);
            width: 124%;
            margin-left: -12%;
            padding: 15px 0 15px 10px
        }
}

.optionQuestionBlock__firstView:after {
    position: absolute;
    top: 50%;
    bottom: 50%;
    right: 2px;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: Font Awesome\ 5 Free;
    content: '\f0d7';
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-weight: 700;
    font-size: 34px;
    padding: 0 15px;
    border-left: 1px solid #ccc;
    color: #0269b8;
    width: 30px;
    height: 54px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none;
    background: #fff
}

@media screen and (max-width:999px) {
    .optionQuestionBlock__firstView:after {
        font-size: 24px;
        width: 10px;
        padding: 0 14px;
        height: 36px
    }
}

.modal-area-photo {
    max-width: 860px;
    width: auto;
    height: auto
}

@media screen and (max-width:999px) {
    .modal-area-photo {
        width: 90%;
        height: 80%
    }
}

.optionPhotoBlock__file {
    max-width: 600px;
    width: 100%;
    max-height: 5in;
    height: 100%;
    overflow: hidden;
    text-align: center
}

    .optionPhotoBlock__file img {
        height: auto;
        width: 100%
    }

.optionPhotoBlock__fileName {
    text-align: center;
    font-size: 18px;
    padding: 30px 0
}

@media screen and (max-width:999px) {
    .optionPhotoBlock__file {
        max-width: 100%
    }

    .optionPhotoBlock__fileName {
        font-size: 9pt;
        padding: 5vw 0
    }
}

.unitSelectBlock {
    width: 100%;
    padding: 10px 0 5px;
    margin: 0;
    background-color: #f0f0f0
}

@media screen and (max-width:999px) {
    .unitSelectBlock {
        width: 100%;
        padding: 5px 12px;
        margin: 0;
        background-color: #f0f0f0;
        box-sizing: border-box;
    }
}

.personaCheckFormBox__arrow:before,
.personaInfoFormBlock__text:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2pc 47px 0;
    border-color: #ccc transparent transparent;
    display: block;
    margin: 0 auto 20px
}

@media screen and (max-width:999px) {
    .personaCheckFormBox__arrow:before,
    .personaInfoFormBlock__text:before {
        border-width: 23px 38px 0;
        margin-bottom: 15px
    }
}

.confirmationBlock__text:before,
.confirmationRuleBox__arrow:before,
.paymentCreditBox__arrow:before,
.thanksCompleteBox__arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2pc 47px 0;
    border-color: #ccc transparent transparent;
    display: block;
    margin: 0 auto 20px
}

@media screen and (max-width:999px) {
    .confirmationBlock__text:before,
    .confirmationRuleBox__arrow:before,
    .paymentCreditBox__arrow:before,
    .thanksCompleteBox__arrow:before {
        border-width: 23px 38px 0;
        margin-bottom: 15px
    }
}

.thanksCompleteBox {
    padding-right: 3.2vw;
    padding-left: 3.2vw
}

.thanksCompletBlock {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    max-width: 862px;
    width: 100%;
    margin: 0 auto 8px;
    padding: 40px 25px 5px;
    box-sizing: border-box
}

@media screen and (max-width:999px) {
    .thanksCompletBlock {
        padding: 7vw 5vw 10px;
        margin-bottom: 20px
    }
}

.thanksCompletBlock__textnUnder {
    text-align: left;
    font-size: 14px;
    text-indent: -1em;
    padding-top: 0;
    padding-left: 1em
}

.thanksCompletBlock .smbcBox {
    display: none
}

.thanksCompletBlock .smbcBlock {
    background: 0
}

.thanksCompleteBox__description p:nth-child(1) {
    font-size: 1pc
}

.thanksCompleteBox__flow h2 {
    font-size: 24px
}

.thanksCompleteBox__flow ul {
    list-style: none;
    max-width: 750pt;
    margin: 0 auto
}

.thanksCompleteBox__flow li {
    float: left;
    width: 30%
}

    .thanksCompleteBox__flow li p {
        padding-top: 10px;
        font-size: 14px !important
    }

    .thanksCompleteBox__flow li:nth-child(1),
    .thanksCompleteBox__flow li:nth-child(2) {
        margin-right: 5%
    }

@media screen and (max-width:999px) {
    .thanksCompleteBox__flow li {
        float: left;
        width: 100%
    }

        .thanksCompleteBox__flow li:nth-child(1),
        .thanksCompleteBox__flow li:nth-child(2) {
            margin-right: 0
        }

    .thanksCompleteBox__description p:nth-child(1) {
        font-size: 14px
    }
}

.paymentEstimateBlock__textGreen {
    color: #60bb33;
    text-align: center;
    font-size: 20px
}

    .paymentEstimateBlock__textGreen span {
        text-decoration: underline
    }

@media screen and (max-width:999px) {
    .paymentEstimateBlock__textGreen {
        font-size: 1pc
    }

    body .thanksCompleteBox__flow h2 {
        font-size: 15px
    }

    body .thanksCompletBlock__textnUnder {
        font-size: 9pt
    }
}

.paymentEstimateBox__title {
    text-align: center;
    font-size: 24px;
    margin-bottom: 20px
}

.pageBackButton__about {
    padding: 20px 20px 10px;
    border-radius: 4px;
    background-color: #f0f0f0;
    box-sizing: border-box;
    text-align: center;
    margin: 0 auto;
    max-width: 730px;
    margin-top: 30px;
    margin-bottom: 30px
}

.pageBackButton__about2 {
    padding-left: 10px;
    margin: -5px auto 0px auto;
    max-width: 862px;
}

.pageBackButton__aboutBox {
    margin-bottom: 0
}

    .pageBackButton__aboutBox label {
        float: left;
        font-size: 17px;
        margin-bottom: 8px
    }

.pageBackButton__about ul {
    list-style: none;
    clear: both
}

.pageBackButton__about li {
    text-align: left
}

@media screen and (max-width:450px) {
    body .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd:nth-child(1) span,
    body .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd:nth-child(3) span {
        font-size: 9pt
    }

    body .paymentEstimateBlock .paymentEstimateBox__items dd {
        font-size: 14px
    }

    body .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(4),
    body .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(4) {
        font-size: 14px;
        text-align: right
    }

    body .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(5),
    body .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(5) {
        font-size: 10px;
        text-align: center;
        width: 10%
    }
}

@media screen and (max-width:999px) {
    .paymentEstimateBox__title {
        font-size: 17px;
        font-weight: 700
    }

    .pageBackButton__about {
        padding: 10px;
        max-width: 750pt
    }

    .pageBackButton__about2 {
        padding-left: 0px;
        margin: -5px auto 0px auto;
        max-width: 750pt
    }

    body .paymentEstimateBlock .shopInfomationBlock__left {
        display: block
    }

    body .paymentEstimateBlock .infomationBox__button button {
        min-width: 63px
    }

    body .paymentEstimateBlock .shopInfomationBlock__data {
        width: auto;
        word-break: break-all;
        float: left
    }

    .paymentEstimateBlock .shopInfomationBlock__data p {
        font-size: 9pt;
        margin-top: 5px
    }

    .paymentEstimateBlock .shopInfomationBlock__data label {
        display: block;
        width: 100%
    }

    .paymentEstimateBlock .shopInfomationBlock__image .shopInfomationBlock__image2 {
        float: left;
        margin-right: 2%
    }

    .paymentEstimateBlock .shopInfomationBlock__price {
        margin-left: 0;
        clear: both
    }

    body .paymentEstimateBlock .shopInfomationBlock__price dl dt {
        width: 100%
    }

    .paymentEstimateBox__wrap .paymentEstimateBox {
        padding: 10px 3vw
    }

    body .paymentEstimateBlock .paymentEstimateBox__wrap .infomationBox__button button {
        min-width: auto
    }

    body .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__items .paymentEstimateBox__itemsMain {
        font-size: 14px
    }

    .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd:nth-child(1) span {
        font-size: 14px;
        padding: 2px
    }

    .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd:nth-child(3) span {
        font-size: 14px;
        padding: 2px;
        text-align: center
    }

    .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd:nth-child(4) span {
        font-size: 14px;
        text-align: right;
        margin-right: 0
    }

    body .paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsTop dd {
        font-size: 14px
    }

    .paymentEstimateBox__itemsTop dd:nth-child(5) span {
        width: 100%;
        text-align: center;
        font-size: 9pt;
        float: right
    }
}

.paymentEstimateBlock .shopInfomationBlock__left {
    display: contents;
    width: calc(100% - 63px);
    float: left
}

.paymentEstimateBlock .shopInfomationBlock__right, .optionUnitInfo .shopInfomationBlock__right {
    display: flex;
    align-items: center;
    -webkit-align-items: center;
}

@media screen and (max-width:999px) {
    .paymentEstimateBlock .shopInfomationBlock__right, .optionUnitInfo .shopInfomationBlock__right {
        flex-grow: 1;
        justify-content: flex-end
    }
}


.infomationBox__button {
    flex-grow: 1
}

.shopInfomationBlock__right .infomationBox__button {
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
}

.paymentEstimateBlock .unitSelectBlock {
    padding: 5px 0
}

.paymentEstimateBlock .selectInfomation {
    max-width: 750pt
}

.paymentEstimateBlock .shopInfomationBlock {
    border-bottom: 0;
    padding-bottom: 0;
    width: 100%
}

.paymentEstimateBlock .infomationBox__button button {
    min-width: 81px;
    float: right
}

.paymentEstimateBlock .shopInfomationBlock__image img .shopInfomationBlock__image2 img {
    border: 1px solid #ccc
}

.paymentEstimateBlock .shopInfomationBlock__image .shopInfomationBlock__image2 {
    border: 0
}

.paymentEstimateBlock .price--info label {
    color: #b22222
}

.paymentEstimateBlock .paymentEstimateBox__wrap .paymentEstimateBox__itemsMain dd,
body .paymentEstimateBlock .paymentEstimateBox__itemsTop dd {
    margin-left: 0;
    border-bottom: 0;
    padding: 0;
    float: left
}

.paymentEstimateBlock .paymentEstimateBox__itemsClear {
    clear: both
}

body .paymentEstimateBlock .paymentEstimateBox__itemsSub {
    border-bottom: 0 solid #ccc;
    padding: 2px 0;
    margin-left: 15%;
    margin-right: 3%
}

@media screen and (max-width:999px) {
    body .paymentEstimateBlock .paymentEstimateBox__itemsSub {
        border-bottom: 0 solid #ccc;
        padding: 2px 0;
        margin-left: 15%;
        margin-right: 5%
    }
}

.paymentEstimateBox__itemsSub:nth-child(1) {
    padding-top: 5px
}

body .paymentEstimateBlock .paymentEstimateBox__itemsEnd {
    margin-left: 15%;
    margin-right: 3%;
    padding-top: 10px
}

@media screen and (max-width:999px) {
    body .paymentEstimateBlock .paymentEstimateBox__itemsEnd {
        margin-left: 15%;
        margin-right: 5%;
        padding-top: 10px
    }
}

body .paymentEstimateBlock .paymentEstimateBox__items .paymentEstimateBox__itemsSub .items--discount {
    color: #b22222;
    border-top: 8px;
    padding-top: 8px
}

body .paymentEstimateBlock .paymentEstimateBox__itemsMain {
    border-bottom: 1px solid #ccc;
    padding-top: 5px;
    padding-bottom: 20px;
    font-size: 1pc;
    margin-left: 0
}

.paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(1),
.paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(1) {
    width: 15%;
    text-align: center
}

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(1) span {
        border-radius: 3px;
        background: #fff;
        border: 1px solid #60bb33;
        font-size: 1pc;
        color: #60bb33;
        padding: 2px 8px
    }

.paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(2),
.paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(2) {
    width: 23%
}

.paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(3),
.paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(3) {
    width: 36%
}

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(3) span {
        border-radius: 3px;
        background: #fff;
        border: 1px solid #b22222;
        font-size: 1pc;
        color: #b22222;
        padding: 2px 8px;
        float: right
    }

.paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(4),
.paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(4) {
    width: 18%;
    text-align: right
}

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(4) span {
        font-size: 14px;
        text-align: right
    }

.paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(5),
.paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(5) {
    width: 8%;
    text-align: center
}

@media screen and (max-width:999px) {
    body .paymentEstimateBlock .paymentEstimateBox__itemsMain {
        border-bottom: 1px solid #ccc;
        padding-top: 0;
        padding-bottom: 10px;
        font-size: 1pc;
        margin-left: 0
    }

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(1),
    .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(1) {
        width: 14%
    }

        .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(1) span {
            border-radius: 3px;
            background: #fff;
            border: 1px solid #60bb33;
            font-size: 1pc;
            color: #60bb33;
            padding: 2px 8px
        }

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(2),
    .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(2) {
        width: 22%
    }

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(3),
    .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(3) {
        width: 28%
    }

        .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(3) span {
            border-radius: 3px;
            background: #fff;
            border: 1px solid #b22222;
            font-size: 1pc;
            color: #b22222;
            padding: 0 10px;
            margin-right: 0
        }

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(4),
    .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(4) {
        width: 25%;
        text-align: right
    }

        .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(4) span {
            font-size: 14px;
            text-align: right
        }

    .paymentEstimateBlock .paymentEstimateBox__itemsMain dd:nth-child(5),
    .paymentEstimateBlock .paymentEstimateBox__itemsTop dd:nth-child(5) {
        width: 7%;
        text-align: center
    }
}

.optionUnitBlock__form__seach {
    float: right;
    width: 45%;
    font-size: 18px
}

    .optionUnitBlock__form__seach .optionUnitBlock__form__seachInput {
        padding: 20px 0 20px 20px;
        box-sizing: border-box;
        outline: 0;
        display: inline-block;
        background: #fff;
        border: 1px solid #ccc;
        border-radius: 5px;
        color: #000;
        width: calc(100% - 89px);
        margin-bottom: 25px;
        text-align: left;
        height: 69px;
        float: left;
        margin-right: 10px
    }

    .optionUnitBlock__form__seach .optionUnitBlock__form__seachSubmit {
        background: #0067b8;
        border: 0;
        color: #fff;
        width: 79px;
        margin-top: 10px;
        height: 50px;
        border-radius: 5px
    }

    .optionUnitBlock__form__seach .modalButton__wrap {
        float: left;
        color: #b22222
    }

    .optionUnitBlock__form__seach .fa-search {
        margin-right: 5px
    }

.optionUnitBlock__form__clear {
    clear: both
}

@media screen and (max-width:999px) {
    body .optionUnitBlock__form__seach {
        width: 100%;
        font-size: 1pc
    }
}

.optionEntryBlock__contactText {
    text-align: center;
    font-size: 14px;
    margin: 0;
    padding-top: 15px;
    margin-bottom: 20px
}

@media screen and (max-width:999px) {
    .optionEntryBlock__contactText {
        text-align: left;
        font-size: 9pt;
        padding-top: 0
    }
}

.left_center {
    text-align: center
}

@media screen and (max-width:999px) {
    .left_center {
        text-align: left;
        margin-left: 10px
    }
}

.sp_block {
    display: inline-block
}

.pricesub_right {
    margin-right: 35px;
    font-size: 15px
}

@media screen and (max-width:999px) {
    .pricesub_right {
        margin-right: 20px;
        font-size: 14px
    }
}

.float_sp {
    display: contents;
    width: calc(100% - 63px)
}

@media screen and (max-width:999px) {
    .float_sp {
        display: contents;
        width: calc(100% - 63px);
        float: left
    }
}

.paymentEstimateBox__items .paymentEstimateBox__itemsMain__button:after {
    content: "\f107";
    border: 0;
    display: inline-block;
    font-size: 30px;
    font-weight: 600;
    line-height: .8em;
    font-family: Font Awesome\ 5 Free
}

.paymentEstimateBox__items .paymentEstimateBox__itemsMain__button {
    background: #06b;
    border: 2px solid #06b;
    border-radius: 3px;
    font-size: 0;
    color: #fff;
    position: relative;
    top: 0;
    right: 0;
    margin: auto;
    height: 30px;
    padding: 0 2px
}

@media screen and (max-width:999px) {
    .paymentEstimateBox__items .paymentEstimateBox__itemsMain__button:after {
        content: "\f107";
        border: 0;
        display: inline-block;
        font-size: 22px;
        font-weight: 600;
        line-height: .8em;
        font-family: Font Awesome\ 5 Free
    }

    .paymentEstimateBox__items .paymentEstimateBox__itemsMain__button {
        background: #06b;
        border: 1px solid #06b;
        border-radius: 2px;
        font-size: 0;
        color: #fff;
        position: relative;
        top: 0;
        right: 0;
        margin: auto;
        height: 22px;
        padding: 0 2px
    }
}

.margin-bottom-clear {
    margin-bottom: 10px
}

@media screen and (max-width:999px) {
    .margin-bottom-clear {
        margin-bottom: 0
    }
}


.rackbanner {
    margin: 10px auto 0;
    display: flex;
    width: 540px;
    height: auto;
    border: 1px solid #fff;
    border-radius: 5px;
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .2));
    text-align: left;
    padding: 15px;
    font-size: 110%;
    background-color: white
}

/*.rackbanner img {
    width: auto;
    height: 100px;
}

.rackbanner .content {
    margin: 0 1em;
    position: relative;
}

.rackbanner .btn-detail {
    right: 0;
    color: #0067b8;
    position: absolute;
    text-decoration: underline;
}*/

@media screen and (max-width:999px) {
    /*.rackbanner {
        margin: 10px auto 0;
        width: 90%;
        height: auto;
        border: 1px solid #fff;
        border-radius: 5px;
        background: url(/img/osu/rack02.jpg)right top no-repeat #fff;
        background-size: 90%;
        filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .2));
        text-align: left;
        padding: 15px;
        font-size: 100%
    }*/
}

.txshadow {
    text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff
}

.blue_bt_left {
    width: 49%;
    float: left
}

@media screen and (max-width:999px) {
    .blue_bt_left {
        width: 100%;
        float: left
    }
}

.blue_bt_right {
    width: 49%;
    float: right
}

.blue_bt_full {
    width: 100%;
    float: left
}

@media screen and (max-width:999px) {
    .blue_bt_right {
        width: 100%;
        float: left
    }
}

.margin_bottom {
    margin-bottom: 10px
}

@media screen and (max-width:999px) {
    .margin_bottom {
        margin-bottom: -10px
    }
}

.margin_top25 {
    margin-top: 25px
}

@media screen and (max-width:999px) {
    .margin_top25 {
        margin-top: 0
    }
}

.margin_bottom10 {
    margin-bottom: -10px
}

@media screen and (max-width:999px) {
    .margin_bottom10 {
        margin-bottom: 0
    }
}

.font16 {
    font-size: 1pc
}

@media screen and (max-width:999px) {
    .font16 {
        font-size: 15px
    }

    .dropdownlayout {
        width: 100%;
        width: 950px
    }

    .margin-top20 {
        margin-top: 0
    }

    @media screen and (min-width:900px) {
        .margin-top20 {
            margin-top: -20px
        }
    }

    .margin-left25 {
        margin-left: 0;
        padding: 0
    }

    @media screen and (min-width:900px) {
        .margin-left25 {
            margin-left: -25px;
            padding: 0
        }
    }
}

#entryNakano {
    padding: 10px;
    color: #b22222;
    word-break: keep-all
}

@media screen and (min-width:900px) {
    .campaign-text .campaign-text2 {
        margin-left: 0em;
        padding: .18em .35em .1em;
        display: inline-block;
        color: #fff;
        background-color: #b22222;
        line-height: 1.3;
        font-size: .9em
    }

    .campaign-text-left .campaign-text-left2 {
        margin-left: 0em
    }
}

.campaign-text {
    margin-left: .70em;
    padding: .18em .35em .1em;
    display: inline-block;
    color: #fff;
    background-color: #b22222;
    line-height: 1.3;
    font-size: .9em
}

.campaign-text-left {
    margin-left: .70em
}

.campaign-text2 {
    margin-left: .10em;
    padding: .18em .35em .1em;
    display: inline-block;
    color: #fff;
    background-color: #b22222;
    line-height: 1.3;
    font-size: .9em
}

.campaign-text-left2 {
    margin-left: .10em
}



/* Checkマーク */

ul.check {
    list-style-type: none;
    text-align: left;
    margin-left: 20px;
    margin-top: 15px;
}

li.check {
    position: relative;
    line-height: 1.8;
}

    li.check::after {
        content: '';
        display: block;
        position: absolute;
        top: .5em;
        left: -1.5em;
        width: 10px;
        height: 5px;
        border-left: 3px solid #60bb33;
        border-bottom: 3px solid #60bb33;
        transform: rotate(-45deg);
    }

.check_box_pc {
    width: 100%;
    padding-bottom: 50px;
}

.check_box_sp {
    width: 100%;
    padding-bottom: 0px;
}

.check_left {
    float: left;
    width: 50%;
}

.check_right {
    float: right;
    width: 50%;
}

.check_area {
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 10px;
    padding-left: 30px;
    max-width: 500px;
}

.check_area2 {
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 30px;
    padding-left: 0px;
    max-width: 500px;
}

.check_done {
    margin-right: auto;
    margin-left: auto;
    padding-top: 25px;
    padding-bottom: 10px;
    max-width: 100%;
    text-align: center;
    background-color: #fffeee;
}

.check_step {
    margin-right: auto;
    margin-left: auto;
    padding-top: 25px;
    padding-bottom: 20px;
    max-width: 100%;
    text-align: center;
    background-color: #fffeee;
}

.check_time {
    margin-left: .25em;
    padding: 5px;
    display: inline-block;
    line-height: 1.3;
    font-size: 120%;
    background: linear-gradient(transparent 60%, #f6ff5f 60%);
}

.check_font {
    font-size: 22px;
    text-align: center;
    color: #60bb33;
    font-weight: bold;
}

.note-list > li {
    position: relative;
    padding-left: 1.1em
}

    .note-list > li:before {
        content: "※";
        position: absolute;
        top: 0;
        left: 0
    }

@media screen and (max-width:999px) {
    .check_font {
        font-size: 20px;
        text-align: center;
        color: #60bb33;
        font-weight: bold;
    }

    .check_area2 {
        margin-right: auto;
        margin-left: auto;
        padding-bottom: 20px;
        padding-left: 20px;
        max-width: 500px;
    }

    .check_done {
        margin-right: auto;
        margin-left: auto;
        padding-top: 15px;
        padding-bottom: 5px;
        max-width: 100%;
        text-align: center;
        background-color: #fffeee;
    }

    .check_step {
        margin-right: auto;
        margin-left: auto;
        padding-top: 15px;
        padding-bottom: 10px;
        max-width: 100%;
        text-align: center;
        background-color: #fffeee;
    }
}

/* Step SP */
.step_bg {
    padding: 10px;
    width: 100%;
    height: 100%;
    text-align: center;
    background-color: #fffeee;
}

.step_wrapper {
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    display: block;
}

.step_left {
    float: left;
    width: 100%;
    text-align: center;
    display: block;
}

.step_h2 {
    margin: 20px 0 10px;
    font-size: 18px;
    text-align: center;
    font-weight: bold;
}

.step_right {
    margin-top: 5px;
    float: left;
    width: 100%;
    text-align: center;
    display: block;
}

.form_width {
    width: 100%;
    margin: auto;
}

.form_width2 {
    width: 100%;
    margin: auto;
}

.osu_staff_bg {
    background-image: url(/img/osu/osu_staff_bg_sp.png);
    background-repeat: repeat-x;
}

.osu_staff {
    width: 50%;
    height: 50%;
}

.osu_img_left {
    float: left;
    position: absolute;
    top: 100px;
}

.osu_img_right {
    float: right;
    text-align: right;
    margin-top: -45px;
}

.osu_margin-top {
    margin-top: 100px
}

.osu_padding-top {
    padding-top: -60px
}

.osu_br {
    display:block;
}

.center_div {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

.no-results {
    text-align: center;
    padding: 40px 20px;    
}



    /* Step PC */
    @media (min-width: 700px) {
        .step_bg {
            margin-bottom: 0;
            width: 100%;
            text-align: center;
            height: 130px;
        }

        .step_wrapper {
            margin-right: auto;
            margin-left: auto;
            width: 700px;
            display: block;
        }

        .step_left {
            float: left;
            width: 50%;
            text-align: left;
        }

        .step_h2 {
            margin: 24px 0 8px;
            font-size: 22px;
            text-align: left;
            font-weight: bold;
        }

        .step_right {
            margin-top: 20px;
            float: right;
            width: 50%;
            text-align: right;
        }
    }

    /* Step PC */
    @media (min-width: 999px) {
        .step_bg {
            margin-bottom: 0;
            width: 100%;
            text-align: center;
            height: 130px;
        }

        .step_wrapper {
            margin-right: auto;
            margin-left: auto;
            width: 1000px;
            display: block;
        }

        .step_left {
            float: left;
            width: 50%;
            text-align: left;
        }

        .step_h2 {
            margin: 24px 0 15px;
            font-size: 22px;
            text-align: left;
            font-weight: bold;
        }

        .step_right {
            margin-top: 20px;
            float: right;
            width: 50%;
            text-align: right;
        }

        .form_width {
            width: 60%;
            margin: auto;
        }

        .form_width2 {
            width: 85%;
            margin: auto;
        }

        .osu_staff_bg {
            background-image: url(/img/osu/osu_staff_bg.png);
            background-repeat: repeat-x;
        }

        .osu_staff {
            width:150px;
            height:232px;
        }

        .osu_img_wrapper {
            height: 232px;
            display:block;
            width:630px;
            padding-top:10px;
        }

        .osu_img_left {
            float: left;
            position:absolute;
            width: 470px;
            top: 250px;
            margin-left: 30px;
        }

        .osu_img_right {
            float: right;
            margin-top: -20px;
            height: 232px;
            width: 150px;
        }

        .osu_margin-top {
            margin-top: 200px
        }

        .osu_padding-top {
            padding-top: 20px
        }

        .osu_br {
            display:none;
        }
    }
