@charset "UTF-8";

html {
    box-sizing: border-box
}

*,*:before,*:after {
    box-sizing: inherit
}

:before,:after {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    cursor: default;
    line-height: 1.5;
    -moz-tab-size: 4;
    tab-size: 4;
    -webkit-tap-highlight-color: transparent;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    word-break: break-word
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

dl dl,dl ol,dl ul,ol dl,ul dl,ol ol,ol ul,ul ol,ul ul {
    margin: 0
}

hr {
    height: 0;
    overflow: visible
}

main {
    display: block
}

nav ol,nav ul {
    list-style: none;
    padding: 0
}

pre {
    font-family: monospace,monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    text-decoration: underline;
    text-decoration: underline dotted
}

b,strong {
    font-weight: bolder
}

code,kbd,samp {
    font-family: monospace,monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

img {
    max-width: 100%;
    height: auto
}

audio,canvas,iframe,img,svg,video {
    vertical-align: top
}

audio,video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

iframe,img {
    border-style: none
}

svg:not([fill]) {
    fill: currentColor
}

svg:not(:root) {
    overflow: hidden
}

table {
    border-collapse: collapse
}

button,input,select {
    margin: 0
}

button {
    overflow: visible;
    text-transform: none
}

button,[type=button],[type=reset],[type=submit] {
    -webkit-appearance: button
}

fieldset {
    border: 1px solid #a0a0a0;
    padding: .35em .75em .625em
}

input {
    overflow: visible
}

legend {
    display: table;
    max-width: 100%;
    white-space: normal;
    color: inherit
}

progress {
    display: inline-block;
    vertical-align: baseline
}

select {
    text-transform: none
}

textarea {
    margin: 0;
    overflow: auto;
    resize: vertical
}

[type=checkbox],[type=radio] {
    padding: 0
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-inner-spin-button,::-webkit-outer-spin-button {
    height: auto
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

::-moz-focus-inner {
    border-style: none;
    padding: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
    box-shadow: none
}

details {
    display: block
}

dialog {
    background-color: #fff;
    border: solid;
    color: #000;
    display: block;
    height: -moz-fit-content;
    height: -webkit-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content
}

dialog:not([open]) {
    display: none
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

a,area,button,input,label,select,summary,textarea,[tabindex] {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

[hidden] {
    display: none
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled=true],[disabled] {
    cursor: not-allowed
}

[aria-hidden=false][hidden] {
    display: initial
}

[aria-hidden=false][hidden]:not(:focus) {
    clip: rect(0,0,0,0);
    position: absolute
}

dl dd {
    margin-left: 0
}

figure {
    margin: 0
}

table {
    table-layout: fixed
}

menu {
    padding: 0
}

html {
    font-size: 62.5%
}

@media screen and (max-width: 750px) {
    html {
        font-size:2.666vw
    }
}

body {
    line-height: 1.8;
    font-family: Noto Sans JP,-apple-system,BlinkMacSystemFont,Helvetica Neue,YuGothic,Hiragino Kaku Gothic ProN,Arial,Meiryo,sans-serif
}

@media screen and (max-width: 750px) {
    body {
        line-height:1.5;
        min-width: 1%;
        overflow-x: hidden;
        position: relative
    }
}

img {
    image-rendering: -webkit-optimize-contrast
}

@media screen and (min-width: 751px) {
    .over:hover {
        opacity:.6;
        transition: opacity .3s
    }
}

label {
    cursor: pointer
}

a {
    color: #009af0;
    transition: all .4s
}

a:link,a:active,a:visited {
    text-decoration: none
}

a:hover,a:focus {
    text-decoration: underline
}

.f-container {
    width: 100%;
    margin: 0 auto;
    padding: 1px 35px;
    max-width: 1100px;
    position: relative;
    overflow-x: hidden
}

@media screen and (max-width: 750px) {
    .f-container {
        padding:1px 6vw
    }
}

@media screen and (max-width: 750px) {
    .f-container.l-header__wrap {
        padding:0 2.6vw
    }
}

.f-main {
    overflow-x: hidden
}

.l-header {
    display: block;
    width: 100%;
    position: relative;
    left: 0%;
    top: 0%;
    background: #FFFFFF;
    box-shadow: 0 4px 4px #7c7c7c40;
    z-index: 10
}

.l-header__wrap {
    height: 65px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.l-header__title {
    font-size: min(1.7475728155vw,18px);
    font-weight: 700;
    display: flex;
    align-items: center
}

@media screen and (max-width: 750px) {
    .l-header__title {
        font-size:3.4666666667vw
    }
}

.l-header__title img {
    margin-right: .2em
}

.l-header__cable {
    display: flex;
    align-items: center
}

.l-header__text {
    font-size: min(1.359223301vw,14px);
    font-weight: 700;
    color: #fff;
    background: #16A765;
    border-radius: 50px;
    padding: .2em 1em;
    margin-left: 1em
}

@media screen and (max-width: 750px) {
    .l-header__text {
        font-size:2.1333333333vw
    }
}

.l-header__jds {
    margin-right: .5em
}

.l-header__jds img {
    height: 40px;
    width: auto
}

@media screen and (max-width: 750px) {
    .l-header__jds {
        display:flex;
        align-items: center;
        height: 100%
    }

    .l-header__jds img {
        height: 30px
    }
}

@media screen and (max-width: 750px) {
    .l-header__wrap {
        height:14vw
    }

    .l-header__title {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
        font-size: 3.46vw;
        height: 14vw
    }

    .l-header__cable {
        align-items: flex-start
    }

    .l-header__cable img {
        height: 1.3em;
        width: auto
    }

    .l-header__text {
        display: block;
        padding: .2em 1.5em;
        margin-left: 0;
        font-size: 2.66vw;
        transform: scale(.8);
        transform-origin: center left
    }
}

.l-footer {
    font-size: min(1.1650485437vw,12px);
    text-align: center;
    padding: 1em 0;
    margin: 3em 0 0;
    background: #F2F2F2;
    border-top: 1px solid #D9D9D9
}

@media screen and (max-width: 750px) {
    .l-footer {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .l-footer {
        padding:0 0 2em;
        border-top: none;
        background: #FFFFFF
    }
}

.s-container {
    height: 75vh
}

.c-btn {
    display: block;
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
    padding: .7em 0;
    position: relative;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    border: none;
    outline: none;
    appearance: none;
    cursor: pointer;
    font-size: min(2.1359223301vw,22px)
}

@media screen and (max-width: 750px) {
    .c-btn {
        font-size:4.5333333333vw
    }
}

.c-btn:hover {
    text-decoration: none
}

.c-btn:disabled {
    background: #D9D9D9;
    cursor: not-allowed
}

.c-btn__textmain {
    width: fit-content;
    position: relative;
    margin: 0 auto
}

.c-btn__textmain.-icoR:after {
    content: "";
    position: absolute;
    right: -1.5em;
    top: 50%;
    transform: translateY(-50%);
    display: block
}

.c-btn__textmain.-icoBlank:after {
    width: .8em;
    height: .8em;
    background: url(/build/assets/ico_blank_black-c7699df4.svg) no-repeat center;
    background-size: contain
}

.c-btn__textmain.-icoL:after {
    content: "";
    position: absolute;
    left: -2em;
    top: 50%;
    transform: translateY(-50%);
    display: block
}

.c-btn__textmain.-credit:after {
    width: 1.6em;
    height: 1.12em;
    background: url(/build/assets/ico_credit_white-a6712b6e.svg) no-repeat center;
    background-size: contain
}

.c-btn__textmain.-bank:after {
    width: 1.5em;
    height: 1.1em;
    background: url(/build/assets/ico_bank_white-ab83032d.svg) no-repeat center;
    background-size: contain
}

.c-btn__textmain.-opposing:after {
    width: 1.5em;
    height: 1.5em;
    background: url(/build/assets/ico_opposing_white-df895c32.svg) no-repeat center;
    background-size: contain
}

.c-btn__textsub {
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-btn__textsub {
        font-size:3.2vw
    }
}

.c-btn.-green {
    background: #16A765;
    color: #fff
}

.c-btn.-green:disabled {
    background: #D9D9D9
}

.c-btn.-black {
    background: #363636;
    color: #fff
}

.c-btn.-white {
    background: #FFFFFF;
    color: #000;
    border: 2px solid #EBEBEB;
    border-radius: 6px;
    padding: .61em 0
}

.c-btn.-line2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: .57em 0
}

.c-btn.-line2.-white {
    padding: .26em 0
}

button .c-btn.-line2 {
    line-height: 1.8
}

.c-btn.-ico:after {
    content: "";
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    display: block
}

.c-btn.-arrowDoubleWhiteR:after {
    width: .8em;
    height: .8em;
    background: url(/build/assets/ico_arrow_double_r_white-a9255260.svg) no-repeat center;
    background-size: contain
}

@media screen and (max-width: 750px) {
    .c-btn {
        padding:1em 0;
        box-shadow: 0 2px 2px #00000040
    }

    .c-btn__textmain.-icoR:after {
        transform: translateY(-60%)
    }

    .c-btn__textmain.-icoL {
        left: 1em
    }

    .c-btn__textmain.-bank:after {
        width: 2em;
        height: 1.5em;
        left: -2.5em
    }

    .c-btn__textmain.-opposing:after {
        width: 2.5em;
        height: 2em;
        left: -2.5em
    }

    .c-btn.-white {
        padding: .9em 0;
        border: 1px solid #EBEBEB;
        border-radius: 3px
    }

    .c-btn.-line2 {
        padding: .49em 0
    }

    .c-btn.-line2.-white {
        padding: .37em 0
    }

    .c-btn.-arrowDoubleWhiteR {
        padding-right: 1em
    }
}

.c-btn-back {
    display: block;
    width: 100%;
    max-width: 6em;
    margin: 1em auto;
    border-radius: 6px;
    padding: .2em 0 .2em 1em;
    position: relative;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    font-size: min(1.5533980583vw,16px);
    background: #FFFFFF;
    color: #000;
    border: 2px solid #EBEBEB;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-back {
        font-size:4.5333333333vw
    }
}

.c-btn-back:hover {
    text-decoration: none
}

.c-btn-back:before {
    content: "";
    position: absolute;
    left: 1em;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: .8em;
    height: .8em;
    background: url(/build/assets/ico_arrow_double_l_orange-74a78118.svg) no-repeat center;
    background-size: contain
}

@media screen and (max-width: 750px) {
    .c-btn-back {
        border-radius:3px;
        box-shadow: 0 2px 2px #00000040;
        border: 1px solid #EBEBEB;
        padding: .3em 0 .3em 1em
    }
}

.c-btn-close {
    display: block;
    width: 100%;
    max-width: 6em;
    margin: 1em auto;
    border-radius: 6px;
    padding: .2em 0;
    position: relative;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    font-size: min(1.5533980583vw,16px);
    background: #FFFFFF;
    color: #000;
    border: 2px solid #EBEBEB;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-close {
        font-size:4.5333333333vw
    }
}

.c-btn-close:hover {
    text-decoration: none
}

@media screen and (max-width: 750px) {
    .c-btn-close {
        border-radius:3px;
        box-shadow: 0 2px 2px #00000040;
        border: 1px solid #EBEBEB;
        padding: .3em 0
    }
}

.c-btn-mail {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70%;
    max-width: 346px;
    margin: 1em;
    padding: .5em 0;
    position: relative;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    background: #FFFFFF;
    color: #000;
    border: 2px solid #EBEBEB;
    border-radius: 6px;
    cursor: pointer;
    font-size: min(1.7475728155vw,18px)
}

@media screen and (max-width: 750px) {
    .c-btn-mail {
        font-size:4.5333333333vw
    }
}

.c-btn-mail:hover {
    text-decoration: none
}

.c-btn-mail:before {
    content: "";
    display: block;
    width: 1.8em;
    height: 1.4em;
    background: url(/build/assets/ico_mail_green-435bee28.svg) no-repeat center;
    background-size: contain;
    margin-right: 1em
}

.c-btn-mail__text {
    display: flex;
    flex-direction: column
}

.c-btn-mail__textsub {
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-btn-mail__textsub {
        font-size:3.2vw
    }
}

.c-btn-mail:disabled {
    background: #D9D9D9;
    color: #fff;
    cursor: not-allowed
}

.c-btn-mail:disabled:before {
    background: url(/build/assets/ico_mail_white-a9f084c4.svg) no-repeat center;
    background-size: contain;
    margin-right: 1em
}

@media screen and (max-width: 750px) {
    .c-btn-mail {
        box-shadow:0 2px 2px #00000040;
        border: 1px solid #EBEBEB;
        border-radius: 3px;
        max-width: 100%;
        width: 100%;
        margin: 0 auto 1em
    }
}

.c-btn-zip {
    display: block;
    width: 6em;
    padding: .5em 0;
    font-size: min(1.5533980583vw,16px);
    font-weight: 700;
    text-align: center;
    background: #000000;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-zip {
        font-size:3.7333333333vw
    }
}

.c-btn-zip:hover {
    text-decoration: none
}

.c-btn-zip:disabled {
    background: #D9D9D9;
    cursor: not-allowed
}

@media screen and (max-width: 750px) {
    .c-btn-zip {
        border-radius:2px
    }
}

.c-btn-revision {
    display: block;
    width: 5em;
    padding: .2em 0;
    font-size: min(1.5533980583vw,16px);
    font-weight: 700;
    text-align: center;
    background: #F65734;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-revision {
        font-size:3.7333333333vw
    }
}

.c-btn-revision:hover {
    text-decoration: none
}

@media screen and (max-width: 750px) {
    .c-btn-revision {
        width:4em;
        border-radius: 2px
    }
}

.c-btn-logout {
    display: block;
    width: 8em;
    padding: .2em 0;
    font-size: min(1.359223301vw,14px);
    font-weight: 700;
    text-align: center;
    background: #9A9A9A;
    color: #fff;
    border: none;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-logout {
        font-size:2.9333333333vw
    }
}

.c-btn-logout:hover {
    text-decoration: none
}

@media screen and (max-width: 750px) {
    .c-btn-logout {
        width:6em
    }
}

.c-btn-cancel {
    display: block;
    width: 15em;
    padding: .2em 0;
    margin: 10em auto 0;
    font-size: min(1.359223301vw,14px);
    text-align: center;
    background: #F2F2F2;
    color: #666;
    border: none;
    cursor: pointer
}

@media screen and (max-width: 750px) {
    .c-btn-cancel {
        font-size:3.2vw
    }
}

.c-btn-cancel:hover {
    text-decoration: none
}

.c-btnVertical {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 5em 0;
    row-gap: 3em
}

@media screen and (max-width: 750px) {
    .c-btnVertical {
        margin:3em 0;
        row-gap: 1.5em
    }
}

.c-btnHorizontal {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    margin: 0 0 1em
}

.c-btnHorizontal>a {
    margin: 0
}

.c-btnHorizontal>a+a {
    margin-right: 1.5em
}

@media screen and (max-width: 750px) {
    .c-btnHorizontal {
        display:block
    }

    .c-btnHorizontal>a {
        margin: 0 auto 1em
    }

    .c-btnHorizontal>a+a {
        margin-right: auto
    }
}

.c-inputItem {
    font-size: min(1.359223301vw,14px);
    margin: 0
}

@media screen and (max-width: 750px) {
    .c-inputItem {
        font-size:3.2vw
    }
}

.c-inputItem__headding {
    padding: 2em 0 1em;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap
}

.c-inputItem__headding p {
    font-size: min(1.5533980583vw,16px);
    font-weight: 700;
    margin: 0;
    width: calc(100% - 4em);
    line-height: 1.4
}

@media screen and (max-width: 750px) {
    .c-inputItem__headding p {
        font-size:4vw
    }
}

.c-inputItem__headding p a {
    color: #000;
    text-decoration: underline
}

@media (any-hover: hover) {
    .c-inputItem__headding p a:hover {
        text-decoration:none
    }
}

.c-inputItem__headding2 {
    padding: 1em 0 .5em;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap
}

.c-inputItem__headding2 p {
    font-size: min(1.5533980583vw,16px);
    font-weight: 400;
    margin: 0 .5em 0 0
}

@media screen and (max-width: 750px) {
    .c-inputItem__headding2 p {
        font-size:4vw
    }
}

.c-inputItem__req {
    font-size: min(1.1650485437vw,12px);
    font-weight: 700;
    color: #fff;
    background: #F65734;
    text-align: center;
    letter-spacing: .2em;
    line-height: 1.5;
    display: block;
    width: 3.5em
}

@media screen and (max-width: 750px) {
    .c-inputItem__req {
        font-size:2.6666666667vw
    }
}

.c-inputItem__req+p {
    margin: 0 0 0 .5em
}

.c-inputItem__any {
    font-size: min(1.1650485437vw,12px);
    font-weight: 700;
    color: #fff;
    background: #16A765;
    text-align: center;
    letter-spacing: .2em;
    line-height: 1.5;
    display: block;
    width: 3.5em
}

@media screen and (max-width: 750px) {
    .c-inputItem__any {
        font-size:2.6666666667vw
    }
}

.c-inputItem__any+p {
    margin: 0 0 0 .5em
}

.c-inputItem__detail {
    background: #FFFBF4;
    padding: 2em 1em
}

.c-inputItem__detail>p,.c-inputItem__detail>.c-inputItem__error {
    margin-left: auto;
    margin-right: auto;
    max-width: 760px
}

.c-inputItem__detail>.c-inputItem__error {
    margin-top: 1em;
    padding-top: 0;
    padding-bottom: 1em
}

.c-inputItem__detail>p:last-child {
    margin-bottom: 0
}

.c-inputItem__error {
    padding: .5em 0 0
}

.p-formPlan .c-inputItem__error {
    background: #FFFFFF;
    padding: .5em 1em 0
}

.c-inputItem__error p {
    font-size: min(1.359223301vw,14px);
    color: #f65734;
    margin: 0
}

@media screen and (max-width: 750px) {
    .c-inputItem__error p {
        font-size:3.2vw
    }
}

.c-inputItem__error.-black p {
    color: #000;
    font-weight: 700
}

@media screen and (max-width: 750px) {
    .c-inputItem__headding {
        display:block
    }

    .c-inputItem__headding p {
        margin: 0;
        width: 100%
    }

    .c-inputItem__detail {
        margin-left: calc(50% - 50vw)!important;
        margin-right: calc(50% - 50vw)!important;
        width: 100vw!important;
        padding: 1.5em 6vw
    }

    .c-inputItem__error {
        margin-left: calc(50% - 50vw)!important;
        margin-right: calc(50% - 50vw)!important;
        width: 100vw!important;
        padding: .5em 6vw 0
    }

    .p-formPlan .c-inputItem__error {
        padding: .5em 6vw 0
    }

    .c-inputItem-full {
        width: 100%!important;
        margin-left: 0!important;
        margin-right: 0!important;
        padding-left: 0!important;
        padding-right: 0!important
    }

    p+.c-inputItem__req {
        margin: 0 0 0 .5em
    }

    p+.c-inputItem__any {
        margin: 0 0 0 .5em
    }
}

.f-formHorizontal {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    max-width: 760px;
    font-size: min(1.5533980583vw,16px)
}

.f-formHorizontal+.f-formHorizontal {
    margin-top: 1.5em
}

@media screen and (max-width: 750px) {
    .f-formHorizontal {
        font-size:4vw
    }
}

.f-formHorizontal__headding {
    width: 10em
}

.f-formHorizontal__headding p {
    margin: 0;
    line-height: 1.4
}

.f-formHorizontal__detail {
    width: calc(100% - 11em)
}

@media screen and (max-width: 750px) {
    .f-formHorizontal__headding {
        width:100%;
        display: flex;
        align-items: center;
        padding: .5em 0
    }

    .f-formHorizontal__detail {
        width: 100%
    }
}

.c-inputCol1 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    row-gap: 1em
}

.c-inputCol1>* {
    width: 100%
}

.c-inputCol2 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    row-gap: 1em
}

.c-inputCol2>* {
    width: 48%
}

@media screen and (max-width: 750px) {
    .c-inputCol2.-sp1col {
        row-gap:1em
    }

    .c-inputCol2.-sp1col>* {
        width: 100%
    }
}

.c-inputCol3 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    row-gap: 1em;
    width: 80%;
    margin: 0 auto
}

.p-formPlan .c-inputCol3 {
    width: 100%
}

.c-inputCol3>* {
    width: 31%
}

@media screen and (max-width: 750px) {
    .c-inputCol3 {
        width:100%
    }

    .c-inputCol3.-sp2col>* {
        width: 48%
    }

    .c-inputCol3.-sp1col>* {
        width: 100%
    }
}

.c-input50per {
    display: grid;
    grid-template-columns: 48.5% 48.5%;
    column-gap: 3%
}

.c-input33per {
    display: grid;
    grid-template-columns: 33% 33% 33%;
    column-gap: 3%
}

.c-inputYmd {
    display: grid;
    grid-template-columns: 40% 27% 27%;
    column-gap: 3%
}

.c-inputYmd .single_customer_input_field {
    display: flex;
    align-items: center
}

.c-inputYmd .single_customer_input_field .c-inputSelectSimple__arrow {
    width: calc(100% - 2em);
    margin-right: .5em
}

.c-inputMultiBottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    row-gap: .5em
}

.c-inputHorizontal {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 1em 2em
}

.c-inputHorizontal .c-inputRadio {
    margin-top: 0
}

.c-inputVertical {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.c-inputPanel {
    background: #FFFFFF;
    border: 2px solid #D9D9D9;
    box-shadow: 0 4px 4px #00000040;
    border-radius: 8px;
    text-align: center;
    line-height: 1.4;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: min(1.7475728155vw,18px);
    padding: .5em;
    min-height: 3em;
    position: relative
}

@media screen and (max-width: 750px) {
    .c-inputPanel {
        font-size:4vw
    }
}

.c-inputPanel.-alLeft {
    padding-left: 1em;
    padding-right: 1em;
    align-items: flex-start;
    text-align: left
}

.c-inputPanel.-alLeft .c-inputPanel__text {
    padding-top: .3em
}

.c-inputPanel__input {
    opacity: 0;
    position: absolute
}

.c-inputPanel__input:checked+.c-inputPanel {
    background: #F1FFC5;
    border: 2px solid #16A765;
    box-shadow: none
}

.c-inputPanel__input:disabled+.c-inputPanel {
    background: #F2F2F2;
    border: 2px solid #D9D9D9;
    cursor: not-allowed
}

.c-inputPanel__text {
    font-weight: 700
}

.c-inputPanel__textMin {
    font-size: min(1.5533980583vw,16px);
    font-weight: 400;
    margin-left: 1em
}

@media screen and (max-width: 750px) {
    .c-inputPanel__textMin {
        font-size:2.6666666667vw
    }
}

.c-inputPanel__monthly {
    font-weight: 700
}

.c-inputPanel__monthlyMin {
    font-size: min(1.5533980583vw,16px);
    font-weight: 400;
    margin-left: 1em
}

@media screen and (max-width: 750px) {
    .c-inputPanel__monthlyMin {
        font-size:2.6666666667vw
    }
}

.c-inputPanel__subtext {
    font-size: min(1.359223301vw,14px);
    font-weight: 700
}

@media screen and (max-width: 750px) {
    .c-inputPanel__subtext {
        font-size:2.6666666667vw
    }
}

.c-inputPanel__price {
    font-size: min(1.4563106796vw,15px);
    font-weight: 700
}

@media screen and (max-width: 750px) {
    .c-inputPanel__price {
        font-size:3.2vw
    }
}

.c-inputPanel__price strong {
    font-size: min(2.1359223301vw,22px);
    color: #f65734
}

@media screen and (max-width: 750px) {
    .c-inputPanel__price strong {
        font-size:4.9333333333vw
    }
}

@media screen and (min-width: 751px) {
    .c-inputPanel__balloon {
        position:absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%,-80%);
        display: block;
        background: #16A765;
        border-radius: 2px;
        color: #fff;
        font-size: min(1.359223301vw,14px);
        font-weight: 700;
        text-align: center;
        line-height: 1.6;
        width: 85%
    }
}

@media screen and (min-width: 751px) and (max-width: 750px) {
    .c-inputPanel__balloon {
        font-size:4vw
    }
}

@media screen and (min-width: 751px) {
    .c-inputPanel__balloon:after {
        content:"▼";
        color: #16a765;
        position: absolute;
        bottom: -1em;
        left: 50%;
        transform: translate(-50%) scale(1.4,.7)
    }

    .c-inputPanel__balloon strong {
        color: #faff00
    }
}

@media screen and (max-width: 750px) {
    .c-inputPanel__balloon {
        font-size:min(1.359223301vw,14px);
        font-weight: 700
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-inputPanel__balloon {
        font-size:3.7333333333vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputPanel__balloon.-spmin {
        font-size:min(1.359223301vw,14px);
        font-weight: 400
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-inputPanel__balloon.-spmin {
        font-size:2.6666666667vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputPanel__balloon strong {
        font-weight:400
    }
}

.c-inputPanel__description {
    font-size: min(1.359223301vw,14px);
    margin: .5em 0
}

@media screen and (max-width: 750px) {
    .c-inputPanel__description {
        font-size:2.6666666667vw
    }
}

.c-inputPanel__stock {
    font-size: min(1.359223301vw,14px);
    padding: .1em .3em;
    margin: .5em 0
}

@media screen and (max-width: 750px) {
    .c-inputPanel__stock {
        font-size:2.6666666667vw
    }
}

.c-inputPanel__stock.-in {
    color: #16a765;
    border: 1px solid #16A765
}

.c-inputPanel__stock.-low {
    color: #f65734;
    border: 1px solid #F65734
}

.c-inputPanel__stock.-no {
    color: #fff;
    border: 1px solid #666666;
    background: #666666
}

.c-inputPanel.-terminal {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1em
}

.c-inputPanel.-terminal .c-inputPanel__price {
    position: absolute;
    top: 0;
    right: 0
}

.c-inputPanel.-terminal .c-inputPanel__price strong {
    color: #000
}

.c-inputPanel.-terminal .c-inputPanel__img {
    width: 18%;
    display: flex;
    justify-content: center;
    align-items: center
}

.c-inputPanel.-terminal .c-inputPanel__right {
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    position: relative
}

.c-inputPanel.-terminal .c-inputPanel__description {
    margin-top: 1.5em;
    line-height: 1.8
}

.c-inputPanel.-color {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1em;
    text-align: left
}

.c-inputPanel.-color .c-inputPanel__price strong {
    color: #000
}

.c-inputPanel.-color .c-inputPanel__img {
    width: 32%;
    display: flex;
    justify-content: center;
    align-items: center
}

.c-inputPanel.-color .c-inputPanel__right {
    width: 64%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    position: relative
}

.c-inputPanel.-accessory {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1em
}

.c-inputPanel.-accessory .c-inputPanel__text {
    max-width: calc(100% - 7em)
}

.c-inputPanel.-accessory .c-inputPanel__price {
    position: absolute;
    top: 0;
    right: 0
}

.c-inputPanel.-accessory .c-inputPanel__price strong {
    color: #000
}

.c-inputPanel.-accessory .c-inputPanel__img {
    width: 18%;
    display: flex;
    justify-content: center;
    align-items: center
}

.c-inputPanel.-accessory .c-inputPanel__right {
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    position: relative
}

@media screen and (max-width: 750px) {
    .c-inputPanel {
        border:2px solid #D9D9D9;
        box-shadow: 0 3px 3px #00000040;
        border-radius: 4px
    }

    .c-inputPanel__input:checked+.c-inputPanel {
        border: 2px solid #16A765
    }

    .c-inputPanel.-spLeft {
        padding-left: 1em;
        padding-right: 1em;
        align-items: flex-start;
        text-align: left
    }

    .c-inputPanel__text {
        display: flex;
        flex-direction: column
    }

    .c-inputPanel__textMin {
        margin-left: 0;
        margin-top: .5em
    }

    .c-inputPanel__monthly {
        display: flex;
        align-items: center
    }

    .c-inputPanel__monthlyMin {
        margin-left: 0;
        margin-top: .5em
    }

    .c-inputPanel.-terminal {
        flex-direction: column;
        justify-content: space-between
    }

    .c-inputPanel.-terminal .c-inputPanel__price {
        position: relative
    }

    .c-inputPanel.-terminal .c-inputPanel__price strong {
        color: #000
    }

    .c-inputPanel.-terminal .c-inputPanel__img {
        width: 60%;
        display: flex;
        justify-content: center;
        align-items: center
    }

    .c-inputPanel.-terminal .c-inputPanel__right {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: 1em
    }

    .c-inputPanel.-terminal .c-inputPanel__description {
        margin: .5em 0;
        line-height: 1.8
    }

    .c-inputPanel.-color .c-inputPanel__price strong {
        font-size: min(2.1359223301vw,22px)
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-inputPanel.-color .c-inputPanel__price strong {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputPanel.-accessory {
        display:flex;
        flex-direction: row;
        justify-content: space-between;
        padding: 1em;
        text-align: left
    }

    .c-inputPanel.-accessory .c-inputPanel__text {
        max-width: 100%
    }

    .c-inputPanel.-accessory .c-inputPanel__price {
        position: relative
    }

    .c-inputPanel.-accessory .c-inputPanel__price strong {
        color: #000;
        font-size: min(2.1359223301vw,22px)
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-inputPanel.-accessory .c-inputPanel__price strong {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputPanel.-accessory .c-inputPanel__img {
        width:32%;
        display: flex;
        justify-content: center;
        align-items: center
    }

    .c-inputPanel.-accessory .c-inputPanel__right {
        width: 64%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        position: relative
    }
}

input,select {
    appearance: none
}

.c-inputCheck {
    display: flex;
    align-items: flex-start;
    margin-top: .7em;
    position: relative;
    width: 100%;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .c-inputCheck {
        font-size:4vw
    }
}

.c-inputCheck:before {
    content: "";
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    border: 2px solid #D9D9D9;
    background: #FFFFFF;
    border-radius: 2px;
    margin-right: .5em;
    position: relative;
    top: .3em
}

.c-inputCheck__input {
    display: none
}

.c-inputCheck__input:checked+.c-inputCheck:after {
    content: "";
    display: block;
    width: 1.2em;
    height: 1.2em;
    background: url(/build/assets/ico_check-56edd034.svg) center no-repeat;
    background-size: contain;
    position: absolute;
    left: .1em;
    top: .3em;
    transform: scale(1.2)
}

.c-inputCheck__text {
    max-width: calc(100% - 2em)
}

.c-inputCheck__text span {
    display: block;
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-inputCheck__text span {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputCheck:before {
        top:.1em
    }

    .c-inputCheck__input:checked+.c-inputCheck:after {
        top: 0
    }
}

.c-inputRadio {
    display: flex;
    align-items: flex-start;
    margin-top: .7em;
    position: relative;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .c-inputRadio {
        font-size:4vw
    }
}

.c-inputVertical .c-inputRadio {
    width: 100%
}

.c-inputVertical .c-inputRadio__text {
    max-width: calc(100% - 2em)
}

.c-inputRadio:before {
    content: "";
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    border: 2px solid #D9D9D9;
    background: #FFFFFF;
    border-radius: 50px;
    margin-right: .5em;
    position: relative;
    top: .3em;
    transform: scale(1.2)
}

.c-inputRadio__input {
    display: none
}

.c-inputRadio__input:checked+.c-inputRadio:after {
    content: "";
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    border: 2px solid #16A765;
    background: #16A765;
    border-radius: 50px;
    margin-right: .5em;
    position: absolute;
    top: .3em;
    transform: scale(.6)
}

.c-inputRadio__text span {
    display: block;
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-inputRadio__text span {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .c-inputRadio:before {
        top:.1em
    }

    .c-inputRadio__input:checked+.c-inputRadio:after {
        top: .1em
    }
}

.c-inputSelect {
    background: #FFFFFF;
    width: 100%;
    border: 2px solid #D9D9D9;
    box-shadow: 0 4px 4px #00000040;
    border-radius: 8px;
    text-align: center;
    line-height: 1.7;
    align-items: center;
    color: #000;
    font-size: min(1.7475728155vw,18px);
    font-weight: 700;
    padding: .5em 1em;
    min-height: 3em
}

@media screen and (max-width: 750px) {
    .c-inputSelect {
        font-size:4vw
    }
}

.c-inputSelect__arrow {
    position: relative
}

.c-inputSelect__arrow:after {
    content: "▼";
    display: block;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%) scaleX(1.5);
    pointer-events: none
}

@media screen and (max-width: 750px) {
    .c-inputSelect {
        border:1px solid #D9D9D9;
        box-shadow: 0 2px 2px #00000040;
        border-radius: 4px;
        text-align: center;
        align-items: center;
        text-align-last: center
    }
}

.c-inputSelectSimple {
    background: #FFFFFF;
    border: 2px solid #D9D9D9;
    border-radius: 8px;
    line-height: 1.4;
    align-items: center;
    padding: 1.2em 1.5em
}

.c-inputSelectSimple__arrow {
    position: relative
}

.c-inputSelectSimple__arrow:after {
    content: "";
    display: block;
    width: 11px;
    height: 7px;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    background: url(/build/assets/ico_arrow_down-eb47b470.svg) center no-repeat;
    background-size: contain;
    pointer-events: none
}

.c-inputSelectSimple__arrow input {
    width: 100%
}

.c-inputSelectSimple:disabled {
    border: 2px solid #D9D9D9;
    background: #F2F2F2;
    cursor: not-allowed
}

@media screen and (max-width: 750px) {
    .c-inputSelectSimple {
        border:1px solid #D9D9D9;
        border-radius: 4px;
        padding: .6em 1em
    }
}

.c-inputText {
    background: #FFFFFF;
    border: 2px solid #D9D9D9;
    border-radius: 8px;
    line-height: 1.4;
    padding: 1.2em 1.5em;
    min-height: 2.9em
}

.c-inputText:read-only {
    background: #F2F2F2
}

.c-inputText::-webkit-calendar-picker-indicator {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%
}

@media screen and (max-width: 750px) {
    .c-inputText {
        border:1px solid #D9D9D9;
        border-radius: 4px;
        padding: .6em 1em
    }
}

.c-inputCalendar {
    position: relative;
    min-width: 200px
}

.c-inputCalendar:after {
    content: "";
    display: block;
    width: 1.3em;
    height: 1.3em;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    background: url(/build/assets/ico_calendar-8b1c1190.svg) center no-repeat;
    background-size: contain;
    pointer-events: none
}

.c-inputCalendar input {
    width: 100%
}

@media screen and (max-width: 750px) {
    .c-inputCalendar:after {
        width:1.1em;
        height: 1.1em
    }
}

.c-inputPassword {
    flex: 1;
    outline: none;
    border: none;
    width: calc(100% - 3em)
}

.c-inputPassword__wrap {
    display: flex;
    background: #FFFFFF;
    border: 2px solid #D9D9D9;
    border-radius: 8px;
    line-height: 1.4;
    padding: 1.2em .5em 1.2em 1.5em
}

.c-inputPassword__button {
    width: 2em;
    border: none;
    background: url(/build/assets/ico_password-5e5a1af5.svg) center no-repeat;
    background-size: contain;
    cursor: pointer
}

.c-inputPassword__button.-show {
    background: url(/build/assets/ico_password_show-4e752885.svg) center no-repeat;
    background-size: contain
}

@media (any-hover: hover) {
    .c-inputPassword__button:hover {
        opacity:.7
    }
}

.c-inputPassword__disabled {
    background: #EBEBEB;
    cursor: not-allowed
}

@media screen and (max-width: 750px) {
    .c-inputPassword__wrap {
        border:1px solid #D9D9D9;
        border-radius: 4px;
        padding: .6em 0 .6em 1em
    }
}

.c-hedding01 {
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    border-bottom: 2px solid #16A765;
    padding-bottom: .56em;
    margin-top: 1em;
    margin-bottom: 1em
}

@media screen and (max-width: 750px) {
    .c-hedding01 {
        font-size:5.3333333333vw
    }
}

.c-hedding01 strong {
    color: #16a765
}

@media screen and (max-width: 750px) {
    .c-hedding01 {
        border-bottom:1px solid #16A765
    }
}

.c-hedding02 {
    font-size: min(1.9417475728vw,20px);
    font-weight: 700;
    border-bottom: 2px solid #16A765;
    padding-bottom: .56em;
    margin-top: 2em;
    margin-bottom: 1em
}

@media screen and (max-width: 750px) {
    .c-hedding02 {
        font-size:4.5333333333vw
    }
}

.c-hedding03 {
    font-size: min(1.9417475728vw,20px);
    font-weight: 700;
    margin-top: 2em;
    margin-bottom: 1em;
    text-align: center;
    color: #16a765
}

@media screen and (max-width: 750px) {
    .c-hedding03 {
        font-size:5.3333333333vw
    }
}

@media screen and (max-width: 750px) {
    .c-hedding03 {
        text-align:left
    }
}

.c-hedding04 {
    font-size: min(1.9417475728vw,20px);
    font-weight: 700;
    margin-top: 2em;
    margin-bottom: 1em
}

@media screen and (max-width: 750px) {
    .c-hedding04 {
        font-size:5.3333333333vw
    }
}

@media screen and (max-width: 750px) {
    .c-hedding04 {
        text-align:left
    }
}

.c-hedding05 {
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    border-bottom: 2px solid #16A765;
    padding-bottom: .56em;
    margin-top: 1em;
    margin-bottom: 1em
}

@media screen and (max-width: 750px) {
    .c-hedding05 {
        font-size:5.3333333333vw
    }
}

.c-hedding05 strong {
    color: #16a765
}

@media screen and (max-width: 750px) {
    .c-hedding05 {
        border-bottom:none;
        padding-bottom: 0;
        display: none
    }
}

.c-heddingCenter {
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    text-align: center;
    margin: 2em 0 1em
}

@media screen and (max-width: 750px) {
    .c-heddingCenter {
        font-size:3.4666666667vw
    }
}

.c-heddingGreen {
    font-size: min(1.9417475728vw,20px);
    font-weight: 700;
    color: #16a765;
    margin: 2em 0 1em
}

@media screen and (max-width: 750px) {
    .c-heddingGreen {
        font-size:5.3333333333vw
    }
}

.c-heddingFull {
    margin-left: calc(50% - 50vw)!important;
    margin-right: calc(50% - 50vw)!important;
    width: 100vw!important;
    margin-top: 0;
    margin-bottom: 0;
    padding: .56em 0
}

.c-heddingFull.-border {
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    border-bottom: 2px solid #16A765
}

@media screen and (max-width: 750px) {
    .c-heddingFull.-border {
        font-size:5.3333333333vw
    }
}

.c-heddingFull.-border strong {
    color: #16a765
}

.c-heddingFull.-fill {
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    background: #16A765;
    color: #fff
}

@media screen and (max-width: 750px) {
    .c-heddingFull.-fill {
        font-size:4vw
    }
}

@media screen and (max-width: 750px) {
    .c-heddingFull.-fill {
        padding:.8em 0
    }
}

.c-heddingBtn {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.c-hedding06 {
    font-size: min(1.9417475728vw,20px);
    font-weight: 700;
    margin-top: 2em;
    margin-bottom: 1em
}

@media screen and (max-width: 750px) {
    .c-hedding06 {
        font-size:5.3333333333vw
    }
}

@media screen and (max-width: 750px) {
    .c-hedding06 {
        text-align:left
    }
}

.c-text {
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .c-text {
        font-size:4vw
    }
}

.c-textMin {
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-textMin {
        font-size:3.2vw
    }
}

.c-textCenter {
    font-size: min(1.359223301vw,14px);
    text-align: center
}

@media screen and (max-width: 750px) {
    .c-textCenter {
        font-size:4vw
    }
}

.c-textCenter a {
    text-decoration: underline
}

@media (any-hover: hover) {
    .c-textCenter a:hover {
        text-decoration:none
    }
}

@media screen and (max-width: 750px) {
    .c-textCenter.-spleft {
        text-align:left
    }
}

.c-textCenter1 {
    font-size: min(1.359223301vw,14px);
    text-align: center;
    font-weight: 700;
    margin-top: 30px;
    margin-bottom: 20px
}

@media screen and (max-width: 750px) {
    .c-textCenter1 {
        font-size:4vw
    }
}

.q {
    text-align: center;
    margin-top: -20px
}

@media (max-width: 600px) {
    .q>span {
        display:block
    }
}

.c-textInfo {
    font-size: min(1.5533980583vw,16px);
    font-weight: 700
}

@media screen and (max-width: 750px) {
    .c-textInfo {
        font-size:4vw
    }
}

@media screen and (max-width: 750px) {
    .c-textInfo.-spcenter {
        text-align:center
    }
}

.c-textAttention {
    font-size: min(1.5533980583vw,16px);
    color: #f65734
}

@media screen and (max-width: 750px) {
    .c-textAttention {
        font-size:3.4666666667vw
    }
}

.c-textRetransmit {
    text-align: center;
    font-size: min(1.359223301vw,14px)
}

@media screen and (max-width: 750px) {
    .c-textRetransmit {
        font-size:4vw
    }
}

.c-textRetransmit a {
    text-decoration: underline
}

@media (any-hover: hover) {
    .c-textRetransmit a:hover {
        text-decoration:none
    }
}

.c-textAttentionEkyc {
    font-size: min(1.5533980583vw,16px);
    width: 100%;
    max-width: fit-content;
    margin: 0 auto
}

@media screen and (max-width: 750px) {
    .c-textAttentionEkyc {
        font-size:3.4666666667vw
    }
}

@media screen and (max-width: 750px) {
    .c-textAttentionEkyc {
        max-width:calc(100% - 2em)
    }
}

.p-tableConfirm {
    table-layout: auto;
    width: 100%;
    border-top: 1px solid #16A765;
    border-right: 1px solid #16A765;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-tableConfirm {
        font-size:4vw
    }
}

.p-tableConfirm th,.p-tableConfirm td {
    border-bottom: 1px solid #16A765;
    border-left: 1px solid #16A765;
    padding: .8em;
    text-align: left;
    vertical-align: top
}

.p-tableConfirm th {
    background: #F1FFC5;
    font-weight: 700;
    width: 30%
}

@media screen and (max-width: 750px) {
    .p-tableConfirm th,.p-tableConfirm td {
        display:block;
        width: 100%
    }
}

.p-tableComplete {
    table-layout: auto;
    width: 100%;
    border-top: 1px solid #F6A834;
    border-right: 1px solid #F6A834;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-tableComplete {
        font-size:4vw
    }
}

.p-tableComplete th,.p-tableComplete td {
    border-bottom: 1px solid #F6A834;
    border-left: 1px solid #F6A834;
    padding: .8em;
    text-align: left;
    vertical-align: top
}

.p-tableComplete th {
    background: #FFFBF4;
    font-weight: 700;
    width: 30%
}

.p-tableComplete td p:first-child {
    margin-top: 0
}

.p-tableComplete td p:last-child {
    margin-bottom: 0
}

@media screen and (max-width: 750px) {
    .p-tableComplete th,.p-tableComplete td {
        display:block;
        width: 100%
    }
}

.p-reserve {
    font-size: min(1.5533980583vw,16px);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1em;
    margin: 0 0 2em
}

@media screen and (max-width: 750px) {
    .p-reserve {
        font-size:3.2vw
    }
}

.p-reserve__bg {
    background: #FFFBF4
}

.p-reserve__bg .c-heddingCenter {
    color: #16a765
}

.p-reserve__item {
    width: 100%;
    background: #FFFFFF;
    padding: 1em 2em;
    border-radius: 5px;
    border: 2px solid #16A765
}

.p-reserve__head {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: 1em
}

.p-reserve__icon {
    width: 60px;
    text-align: center
}

.p-reserve__icon img {
    max-width: 40px
}

.p-reserve__title {
    font-size: min(2.1359223301vw,22px);
    font-weight: 700;
    color: #16a765;
    margin: 0
}

@media screen and (max-width: 750px) {
    .p-reserve__title {
        font-size:4.5333333333vw
    }
}

.p-reserve__text {
    margin: 0;
    line-height: 1.4;
    font-weight: 700
}

.p-reserve__head+.p-reserve__text {
    margin: 1em 0 0 calc(60px + 1em);
    font-weight: 400
}

@media screen and (max-width: 750px) {
    .p-reserve__bg {
        background:#EBEBEB
    }

    .p-reserve__bg .c-heddingCenter {
        color: #000
    }

    .p-reserve__item {
        width: 100%;
        padding: 1.5em 2em;
        border: none
    }

    .p-reserve__head+.p-reserve__text {
        margin: 1em 0
    }
}

.p-progressbar {
    background: linear-gradient(90deg,#F2F2F2 0%,#F2F2F2 50%,#D9D9D9 50%,#D9D9D9 100%)
}

.p-progressbar.-first {
    background: linear-gradient(90deg,#16A765 0%,#16A765 50%,#D9D9D9 50%,#D9D9D9 100%)
}

.p-progressbar.-last {
    background: linear-gradient(90deg,#F2F2F2 0%,#F2F2F2 50%,#F65734 50%,#F65734 100%)
}

.p-progressbar__list {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
    overflow-y: hidden;
    font-size: min(1.7475728155vw,18px)
}

@media screen and (max-width: 750px) {
    .p-progressbar__list {
        font-size:4vw
    }
}

.p-progressbar__wrap {
    width: 100%;
    margin: 0 auto;
    max-width: 1100px;
    position: relative
}

.p-progressbar__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    width: 20%;
    padding: .3em 0 .3em 2.5em;
    background: #F2F2F2;
    color: #000;
    min-height: 4em
}

.p-progressbar__item.-step3 {
    width: 33.3333333333%
}

.p-progressbar__item:not(:last-child):before {
    position: absolute;
    z-index: 5;
    top: 50%;
    transform: translateY(-50%);
    left: calc(100% + 1.5px);
    content: "";
    border: 2.1em solid transparent;
    border-left: 1.7em solid #FFFFFF;
    margin: auto
}

.p-progressbar__item:not(:last-child):after {
    position: absolute;
    z-index: 5;
    top: 50%;
    transform: translateY(-50%);
    left: 100%;
    content: "";
    border: 2.1em solid transparent;
    border-left: 1.7em solid #F2F2F2;
    margin: auto
}

.p-progressbar__item.-active {
    background: #16A765
}

.p-progressbar__item.-active:not(:last-child):after {
    border-left-color: #16a765
}

.p-progressbar__item.-active .p-progressbar__step {
    display: block
}

.p-progressbar__item.-fin {
    background: #D9D9D9;
    color: #9a9a9a
}

.p-progressbar__item.-fin:not(:last-child):after {
    border-left-color: #d9d9d9
}

.p-progressbar__item.-fin .p-progressbar__step {
    display: block
}

.p-progressbar.-last .p-progressbar__item.-fin {
    background: #F65734!important
}

.p-progressbar.-last .p-progressbar__item.-fin .p-progressbar__text {
    color: #fff!important
}

.p-progressbar__text {
    font-size: min(1.359223301vw,14px);
    margin: 0;
    line-height: 1.3;
    color: #9a9a9a;
    text-align: center;
    white-space: nowrap
}

@media screen and (max-width: 750px) {
    .p-progressbar__text {
        font-size:4vw
    }
}

.-active .p-progressbar__text {
    font-weight: 700;
    color: #fff;
    text-align: left
}

.p-progressbar__step {
    font-size: min(1.1650485437vw,12px);
    display: none;
    line-height: 1;
    margin-bottom: .5em;
    color: #f1ffc5
}

@media screen and (max-width: 750px) {
    .p-progressbar__step {
        font-size:2.6666666667vw
    }
}

.p-progressbar__step strong {
    font-size: min(1.7475728155vw,18px);
    margin: 0 .2em
}

@media screen and (max-width: 750px) {
    .p-progressbar__step strong {
        font-size:4vw
    }
}

@media screen and (max-width: 750px) {
    .p-progressbar__list {
        overflow:hidden
    }

    .p-progressbar__item {
        width: 50%;
        padding: .3em 0 .5em 2.5em;
        min-height: 3.7em
    }

    .p-progressbar__item.-step3 {
        width: 50%
    }

    .p-progressbar__item:not(:last-child):before {
        content: none
    }

    .p-progressbar__text {
        text-align: left;
        color: #545454
    }

    .p-progressbar__step {
        line-height: 1.5;
        display: block;
        margin-bottom: 0;
        color: #545454
    }

    .-active .p-progressbar__step {
        color: #fff
    }
}

.p-blockWarning {
    border: 5px solid #F65734;
    padding: 1em 0;
    text-align: center;
    color: #f65734;
    font-weight: 700;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-blockWarning {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .p-blockWarning {
        border:3px solid #F65734
    }
}

.p-formPlan {
    width: 76%;
    padding: 0;
    max-width: 760px
}

@media screen and (max-width: 750px) {
    .p-formPlan {
        width:100%
    }
}

.p-formSide {
    position: absolute;
    width: 22%;
    max-width: 240px;
    right: 0;
    top: 30px;
    background: rgba(0,0,0,.77);
    padding: 9px;
    z-index: 5
}

.p-formSideAmount {
    background: #FFFFFF;
    border-radius: 8px;
    margin: 0 0 9px
}

.p-formSideAmount__title {
    background: #FFF0D6;
    border-radius: 8px 8px 0 0;
    font-size: min(1.5533980583vw,16px);
    padding: 0 1em
}

@media screen and (max-width: 750px) {
    .p-formSideAmount__title {
        font-size:3.0666666667vw
    }
}

.p-formSideAmount__detail {
    font-size: min(1.359223301vw,14px);
    padding: 0 .5em;
    text-align: right
}

@media screen and (max-width: 750px) {
    .p-formSideAmount__detail {
        font-size:2.6666666667vw
    }
}

.p-formSideAmount__detail strong {
    font-size: min(1.7475728155vw,18px);
    font-weight: 700;
    color: #f65734
}

@media screen and (max-width: 750px) {
    .p-formSideAmount__detail strong {
        font-size:3.7333333333vw
    }
}

.p-formSideAmount__detail ul {
    list-style: none;
    padding: .5em 0 0;
    border-top: 1px solid #D9D9D9
}

.p-formSideAmount__detail ul li {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.p-formSideAmount__detail ul li span:first-child {
    line-height: 1.2;
    text-align: left
}

.p-formSideAmount__detail ul li span:last-child {
    white-space: nowrap
}

.p-formSideAmount__detail ul li strong {
    font-size: min(1.359223301vw,14px);
    color: #000
}

@media screen and (max-width: 750px) {
    .p-formSideAmount__detail ul li strong {
        font-size:2.6666666667vw
    }
}

@media screen and (min-width: 751px) {
    .p-formSide.-fixed {
        position:fixed;
        right: inherit;
        transform: translate(-100%)
    }

    .p-formSide.-pchide {
        position: absolute;
        top: inherit!important;
        left: inherit!important;
        right: 0;
        bottom: 0;
        transform: none
    }
}

@media screen and (max-width: 750px) {
    .p-formSide {
        display:flex;
        justify-content: space-between;
        column-gap: 5px;
        width: 100%;
        max-width: 100%;
        height: 80px;
        position: fixed;
        top: inherit;
        bottom: -80px;
        right: 0;
        padding: 5px;
        transition: .5s
    }

    .p-formSide.-fixed {
        left: 0!important;
        bottom: 0
    }

    .p-formSide.-sphide {
        left: 0!important;
        bottom: -80px
    }

    .p-formSide__top {
        background: #FFFFFF;
        border-radius: 4px;
        width: 66%
    }

    .p-formSideAmount {
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        height: 35px;
        margin: 0
    }

    .p-formSideAmount:first-child .p-formSideAmount__title {
        border-radius: 8px 0 0
    }

    .p-formSideAmount:last-child .p-formSideAmount__title {
        border-radius: 0 0 0 8px
    }

    .p-formSideAmount__title {
        width: 7em;
        padding: 0 1em;
        display: flex;
        align-items: center;
        font-size: 12px
    }

    .p-formSideAmount__detail {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        width: calc(100% - 9em);
        font-size: 10px
    }

    .p-formSideAmount__detail strong {
        color: #000
    }

    .p-formSideAmount__price {
        font-size: 14px
    }

    .p-formSide__bottom {
        width: 32%
    }
}

.p-btn-breakdown {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 0;
    padding: .4em 0;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    background: #FFFFFF;
    color: #000;
    border: 2px solid #EBEBEB;
    border-radius: 6px;
    font-size: min(1.7475728155vw,18px)
}

@media screen and (max-width: 750px) {
    .p-btn-breakdown {
        font-size:3.6vw
    }
}

.p-btn-breakdown:hover {
    text-decoration: none
}

.p-btn-breakdown__text {
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 750px) {
    .p-btn-breakdown {
        box-shadow:0 2px 2px #00000040;
        border: 1px solid #EBEBEB;
        border-radius: 3px;
        font-size: 14px
    }
}

.p-btn-application {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: .5em 0 0;
    padding: .4em 0;
    box-shadow: 0 4px 4px #00000040;
    font-weight: 700;
    text-align: center;
    background: #F65734;
    color: #fff;
    border: none;
    outline: none;
    appearance: none;
    position: relative;
    font-size: min(1.7475728155vw,18px)
}

@media screen and (max-width: 750px) {
    .p-btn-application {
        font-size:3.6vw
    }
}

.p-btn-application:disabled {
    background: #D9D9D9
}

.p-btn-application:hover {
    text-decoration: none
}

.p-btn-application__text {
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 750px) {
    .p-btn-application {
        margin:4px 0 0;
        font-size: 14px
    }
}

.p-headdingBreakdown {
    text-align: center;
    font-size: min(2.3300970874vw,24px);
    font-weight: 700;
    color: #16a765;
    margin: 0 0 1.5em;
    padding-top: 3em;
    position: relative
}

@media screen and (max-width: 750px) {
    .p-headdingBreakdown {
        font-size:4.8vw
    }
}

.p-headdingBreakdown:before {
    content: "";
    display: block;
    width: 2em;
    height: 2em;
    background: url(/build/assets/ico_arrow_double_b_green-6b186551.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    left: 50%;
    bottom: -2.5em;
    transform: translate(-50%)
}

.f-amount {
    font-size: min(1.5533980583vw,16px);
    box-sizing: border-box;
    background: #FFFFFF;
    border: 2px solid #D9D9D9;
    border-radius: 8px;
    margin: 1em 0
}

@media screen and (max-width: 750px) {
    .f-amount {
        font-size:3.4666666667vw
    }
}

.f-amount:first-child {
    margin-top: 3em
}

.f-amount__title {
    font-size: min(1.7475728155vw,18px);
    padding: .5em 1.5em;
    text-align: center
}

@media screen and (max-width: 750px) {
    .f-amount__title {
        font-size:4vw
    }
}

.f-amount__title strong {
    font-size: min(2.9126213592vw,30px);
    font-weight: 700;
    color: #f65734;
    margin-left: .5em
}

@media screen and (max-width: 750px) {
    .f-amount__title strong {
        font-size:6.6666666667vw
    }
}

.f-amount__detail {
    background: #FFF0D6;
    margin: 0;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.f-amount__detail dt {
    text-align: center;
    width: 7em;
    font-weight: 700
}

.f-amount__detail dd {
    background: #FFFFFF;
    width: calc(100% - 7em);
    padding: .5em 1em
}

.f-amount__detail dd ul {
    list-style: none;
    padding-left: 0
}

.f-amount__detail dd ul li {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    text-align: right
}

.f-amount__detail dd ul li+li {
    margin-top: .5em
}

.f-amount__detail dd ul li .f-amount__price {
    font-size: min(1.5533980583vw,16px);
    min-width: 10em;
    text-align: right
}

@media screen and (max-width: 750px) {
    .f-amount__detail dd ul li .f-amount__price {
        font-size:3.4666666667vw
    }
}

.f-amount__detail dd ul li .f-amount__price strong {
    font-weight: 700
}

.f-amount__detail dd ul li.-subtotal .f-amount__price strong {
    font-size: min(2.9126213592vw,30px)
}

@media screen and (max-width: 750px) {
    .f-amount__detail dd ul li.-subtotal .f-amount__price strong {
        font-size:5.3333333333vw
    }
}

.f-amount+p {
    font-size: min(1.359223301vw,14px);
    margin: 1em 0;
    text-align: center
}

@media screen and (max-width: 750px) {
    .f-amount+p {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .f-amount {
        border:1px solid #D9D9D9;
        border-radius: 4px
    }

    .f-amount__title {
        text-align: right
    }

    .f-amount__detail {
        display: block
    }

    .f-amount__detail dt {
        text-align: left;
        margin-bottom: .5em
    }

    .f-amount__detail dd {
        width: 100%
    }

    .f-amount__detail dd ul li .f-amount__price {
        width: inherit;
        min-width: 5.5em;
        margin-left: .5em
    }

    .f-amount__detail dd ul li.-subtotal .f-amount__price {
        width: inherit;
        min-width: inherit
    }

    .f-amount+p {
        text-align: left
    }
}

.f-about {
    border-top: 2px solid #EBEBEB;
    padding: 2em 0
}

.f-about p {
    font-size: min(1.1650485437vw,12px)
}

@media screen and (max-width: 750px) {
    .f-about p {
        font-size:2.6666666667vw
    }
}

.p-confirmDetail {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-confirmDetail {
        font-size:3.4666666667vw
    }
}

.p-confirmDetail+.p-confirmDetail {
    margin-top: 1em
}

.p-confirmDetail dt {
    color: #16a765;
    font-weight: 700
}

.p-confirmDetail dd {
    text-align: right
}

.p-confirmDetail.-price dt {
    color: #000;
    font-weight: 400
}

.p-confirmDetail.-price dd {
    white-space: nowrap
}

.p-confirmPrice {
    margin: 0;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-confirmPrice {
        font-size:3.4666666667vw
    }
}

.p-confirmPrice+.p-confirmPrice {
    margin-top: 1em;
    padding-top: 1em;
    position: relative
}

.p-confirmPrice+.p-confirmPrice:before {
    content: "";
    width: calc(100% + 1.6em);
    height: 1px;
    background: #16A765;
    position: absolute;
    top: 0;
    left: -.8em
}

.p-confirmPrice dt {
    color: #16a765;
    font-weight: 700
}

.p-confirmPrice__total {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: 1px solid #363636;
    margin-bottom: 1em
}

.p-confirmPrice__total strong {
    font-size: min(2.1359223301vw,22px);
    font-weight: 700;
    color: #f65734;
    margin-right: .5em
}

@media screen and (max-width: 750px) {
    .p-confirmPrice__total strong {
        font-size:5.3333333333vw
    }
}

.p-completePrice {
    margin: 0;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-completePrice {
        font-size:3.4666666667vw
    }
}

.p-completePrice+.p-completePrice {
    margin-top: 1em;
    padding-top: 1em;
    position: relative
}

.p-completePrice+.p-completePrice:before {
    content: "";
    width: calc(100% + 1.6em);
    height: 1px;
    background: #F6A834;
    position: absolute;
    top: 0;
    left: -.8em
}

.p-completePrice dt {
    font-weight: 700;
    color: #16a765
}

.p-completePrice__total {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: 1px solid #363636;
    margin-bottom: 1em
}

.p-completePrice__total strong {
    font-size: min(2.1359223301vw,22px);
    font-weight: 700;
    margin-right: .5em;
    color: #f65734
}

@media screen and (max-width: 750px) {
    .p-completePrice__total strong {
        font-size:5.3333333333vw
    }
}

.p-completeDetail {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-completeDetail {
        font-size:3.4666666667vw
    }
}

.p-completeDetail+.p-completeDetail {
    margin-top: 1em
}

.p-completeDetail dt {
    font-weight: 700
}

.p-completeDetail dd {
    text-align: right
}

.p-completeDetail.-price dt {
    color: #000;
    font-weight: 400
}

.p-completeDetail.-price dd {
    white-space: nowrap
}

.p-completeTel {
    border: 1px solid #C6C6C6;
    border-radius: 5px;
    padding: 2em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 500px;
    margin: 0 auto
}

.p-completeTel p {
    margin: 0
}

.p-completeTel__tel {
    font-weight: 500;
    color: #16a765;
    font-size: min(2.9126213592vw,30px)
}

@media screen and (max-width: 750px) {
    .p-completeTel__tel {
        font-size:6.4vw
    }
}

.p-completeTel__tel:before {
    content: "";
    display: inline-block;
    width: 1em;
    height: .7em;
    background: url(/build/assets/ico_tel-3534714f.svg) no-repeat center;
    background-size: contain
}

.p-completeTel__name {
    font-weight: 700;
    color: #545454;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-completeTel__name {
        font-size:3.2vw
    }
}

.p-completeTel__info {
    margin-top: 1em!important;
    font-size: min(1.5533980583vw,16px)
}

@media screen and (max-width: 750px) {
    .p-completeTel__info {
        font-size:3.2vw
    }
}

@media screen and (max-width: 750px) {
    .u-pc {
        display:none!important
    }
}

@media screen and (min-width: 751px) {
    .u-sp {
        display:none!important
    }
}

.u-clearfix:after {
    display: block;
    clear: both;
    content: ""
}

.u-alignL {
    text-align: left
}

.u-alignC {
    text-align: center
}

.u-alignR {
    text-align: right
}

.u-textPrimary {
    color: #16a765
}

.u-textSecondary {
    color: #f65734
}

.u-textSmall {
    font-size: 90%
}

.u-textBold {
    font-weight: 700
}

.u-my0 {
    margin-top: 0;
    margin-bottom: 0
}

.u-my2em {
    margin-top: 2em
}

.u-mt3em {
    margin-top: 3em
}

.u-mb1em {
    margin-bottom: 1em
}

.-ratio16-9 {
    padding-top: 56.25%
}

.-ratio4-3 {
    padding-top: 75%
}

.u-w100p {
    width: 100%
}

.u-w50p {
    width: 50%
}

.u-w100p-1em {
    width: calc(100% - 1.5em)
}

.u-w1em {
    width: 1em
}

.u-wfit {
    width: fit-content
}

.bg-gray-l2 {
    background: #EBEBEB
}

@media screen and (min-width: 751px) {
    .bg-gray-l2.-home {
        background:#FFFBF4
    }

    .bg-gray-l2.-home .c-heddingCenter {
        color: #16a765
    }
}

.text-21 {
    font-size: 21Px
}

.text-26 {
    font-size: 26px
}

.text-20 {
    font-size: 20px
}

.z-99 {
    z-index: 999
}
