@charset "UTF-8";
table {
    border-collapse: collapse
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, button, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-style: normal;
    vertical-align: baseline;
    word-wrap: break-word
}

body, html, input, select, textarea {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", "Lucida Grande", Verdana, sans-serif;
    font-weight: 500
}

* {
    box-sizing: border-box
}

input[type=radio], input[type=checkbox] {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0
}

:root {
    --brand-main-color: #000000;
    --bottom-navigation-bar-height: 3.5rem;
    --header-height-mobile: 3.5rem;
    --header-height-desktop: 4rem;
    --bottom-login-bar-height: 5.5rem
}

.brand-client-green {
    /*--brand-main-color: #6ff06c;*/
    --brand-main-color: #0047ab;
    --brand-checked-color: #ebf5ff
}

.brand-admin-blue {
    /*--brand-main-color: #6c9cf0;*/
    /*--brand-main-color: #47b578;*/
    --brand-main-color: #000000;
    --brand-checked-color: #eff9f8
}

body, html {
    width: 100%;
    background-color: #fcfcfc;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

:root body, :root html, _::-webkit-full-page-media, _:future {
    -webkit-font-smoothing: subpixel-antialiased
}

ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: none
}

table {
    border-spacing: 0
}

img {
    border: 0;
    vertical-align: bottom
}

input[type=submit], input[type=button] {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=mail], input[type=tel], input[type=password], input[type=text], select, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

input[type=mail]:focus, input[type=tel]:focus, input[type=password]:focus, input[type=text]:focus, select:focus, textarea:focus {
    outline: var(--brand-main-color) solid 1px
}

a {
    color: var(--brand-main-color)
}

body.is-no-scroll {
    overflow: hidden
}

.wrapper {
    display: flex;
    flex-flow: column;
    min-height: 100vh
}

.l-header-01 {
    position: sticky;
    top: 0;
    z-index: 100;
    height: var(--header-height-mobile);
    background: #fff;
    box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24)
}

.l-header-01__inner--body {
    display: flex;
    align-items: center;
    width: calc(100% - 2rem);
    margin-right: auto;
    margin-left: auto;
}

@media screen and (min-width: 560px) {
    .l-header-01__inner--body {
        width: calc(100% - 3rem)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__inner--body {
        justify-content: space-between;
        width: 100%;
        height: var(--header-height-desktop)
    }
}

@media screen and (min-width: 960px) {
    .l-header-01 {
        height: var(--header-height-desktop)
    }

    .l-header-01__inner--logo {
        order: 1;
        width: 25%;
        padding-left: 2rem
    }
}

@media screen and (min-width: 960px) and (min-width: 1280px) {
    .l-header-01__inner--logo {
        width: 30%
    }
}

.l-header-01__link--logo {
    display: block;
    width: 8rem
}

@media screen and (min-width: 370px) {
    .l-header-01__link--logo {
        width: 9rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .l-header-01__link--logo {
        width: 11rem;
        opacity: 1;
        transition: .2s opacity
    }

    .l-header-01__link--logo:hover {
        opacity: .64
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--logo {
        width: 12rem
    }
}

.l-header-01__inner--sub-navigation {
    display: flex;
    justify-content: flex-end;
    margin-left: auto
}

@media screen and (min-width: 960px) {
    .l-header-01__inner--sub-navigation {
        order: 3;
        width: 25%;
        min-width: 17rem;
        margin-left: inherit
    }
}

@media screen and (min-width: 960px) and (min-width: 1280px) {
    .l-header-01__inner--sub-navigation {
        width: 30%;
        min-width: inherit
    }
}

.l-header-01__link--notice {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    height: var(--header-height-mobile);
    padding: 0 .25rem;
    text-decoration: none
}

@media screen and (min-width: 560px) {
    .l-header-01__link--notice {
        padding: 0 .5rem
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__link--notice {
        position: relative;
        height: var(--header-height-desktop);
        width: 100%;
        max-width: 5.5rem;
        padding: 0
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--notice {
        flex-direction: inherit;
        width: auto;
        max-width: inherit;
        padding: 0 1rem
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__link--notice:hover .l-header-01__tx--notice {
        opacity: .64
    }

    .l-header-01__link--notice:before {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1px;
        height: 100%;
        border-left: 1px solid #ccc;
        content: ""
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--notice:before {
        height: 64%;
        border-left: 1px dotted #666
    }
}

.l-header-01__tx--notice {
    color: #222;
    font-size: .625rem;
    font-weight: 600
}

@media screen and (min-width: 960px) {
    .l-header-01__tx--notice {
        font-size: .75rem
    }
}

@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__tx--notice {
        font-size: 1rem
    }
}

.l-header-01__inner--mypage {
    display: none
}

@media screen and (min-width: 960px) {
    .l-header-01__inner--mypage {
        display: block;
        position: relative;
        width: 100%;
        max-width: 5.5rem
    }

    .l-header-01__inner--mypage:hover .l-header-01__wrap--my-dropdown {
        opacity: 1;
        visibility: visible
    }
}

@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__inner--mypage {
        width: auto;
        max-width: inherit
    }
}

@media screen and (min-width: 960px) {
    .l-header-01__link--mypage {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        position: relative;
        width: 100%;
        max-width: 5.5rem;
        height: var(--header-height-desktop);
        text-decoration: none;
        cursor: pointer
    }
}

@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--mypage {
        flex-direction: inherit;
        width: auto;
        max-width: inherit;
        padding: 0 1rem
    }
}

@media screen and (min-width: 960px) {
    .l-header-01__link--mypage:hover .l-header-01__ico--mypage, .l-header-01__link--mypage:hover .l-header-01__label--mypage {
        opacity: .64
    }

    .l-header-01__link--mypage:before {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1px;
        height: 100%;
        border-left: 1px solid #ccc;
        content: ""
    }

    .l-header-01__label--mypage {
        display: flex;
        justify-content: center;
        flex-direction: column;
        line-height: 1rem
    }
}

.l-header-01__ico--mypage {
    width: 1.25rem
}

@media screen and (min-width: 1440px) {
    .l-header-01__ico--mypage {
        margin-right: .25rem
    }
}


@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--mypage:before {
        height: 64%;
        border-left: 1px dotted #666
    }
}

@media screen and (min-width: 960px) {
    .l-header-01__tx--mypage {
        color: #222;
        font-size: .75rem;
        font-weight: 600
    }
}

.l-header-01__wrap--my-dropdown {
    display: none
}

@media screen and (min-width: 960px) {
    .l-header-01__wrap--my-dropdown {
        position: absolute;
        z-index: 5;
        top: 100%;
        right: 0;
        opacity: 0;
        visibility: hidden;
        padding-top: .25rem;
        transition: .2s
    }

    .l-header-01__wrap--my-dropdown.is-loaded {
        display: block
    }

    .l-header-01__inner--my-dropdown {
        width: 16.5rem;
        padding: 1.5rem 1rem;
        background: #fff;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24)
    }

    .l-header-01__link--my-dropdown {
        display: block;
        color: #222;
        font-size: 1rem;
        font-weight: 500;
        text-decoration: none
    }

    .l-header-01__link--my-dropdown:hover {
        text-decoration: underline
    }

    .l-header-01__link--my-dropdown:not(:last-child) {
        margin-bottom: .5rem
    }
}

.l-header-01__link--analytical {
    display: none
}

@media screen and (min-width: 370px) {
    .l-header-01__link--analytical {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        height: var(--header-height-mobile);
        padding: 0 .25rem;
        text-decoration: none
    }
}

@media screen and (min-width: 370px) and (min-width: 560px) {
    .l-header-01__link--analytical {
        padding: 0 .5rem
    }
}

@media screen and (min-width: 370px) and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__link--analytical {
        width: 100%;
        max-width: 5.5rem;
        height: var(--header-height-desktop);
        padding: 0;
        background: var(--brand-main-color);
        opacity: 1;
        transition: .2s opacity
    }

    .l-header-01__link--analytical:hover {
        opacity: .64
    }
}

@media screen and (min-width: 370px) and (min-width: 560px) and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__link--analytical {
        width: 7.5rem;
        max-width: inherit;
        padding: 0;
        flex-direction: inherit
    }
}

@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__tx--mypage {
        font-size: 1rem
    }

}

.l-header-01__tx--vacant {
    color: #222;
    font-size: .625rem;
    font-weight: 600
}

@media screen and (min-width: 960px) {

    .l-header-01__tx--vacant {
        color: #fff;
        font-size: .75rem
    }

    .l-header-01__inner--global-navigation {
        display: flex;
        align-items: center;
        justify-content: center;
        order: 2;
        flex: 1
    }
}

@media screen and (min-width: 960px) and (min-width: 1440px) {
    .l-header-01__tx--vacant {
        font-size: 1rem
    }
}

@media screen and (min-width: 960px) and (min-width: 1280px) {
    .l-header-01__inner--global-navigation {
        flex: inherit;
        width: 40%
    }
}

.l-header-01__wrap--drop-navigation {
    display: none
}

.l-header-01__inner--drop-navigation.margin-adjust {
    margin-right: 2.8vw
}

@media screen and (min-width: 1280px) {
    .l-header-01__inner--drop-navigation.margin-adjust {
        margin-right: 2.5rem
    }
}

@media screen and (min-width: 1280px) and (min-width: 1440px) {
    .l-header-01__inner--drop-navigation.margin-adjust {
        margin-right: 3rem
    }
}

@media screen and (min-width: 1280px) and (min-width: 1440px) and (min-width: 1640px) {
    .l-header-01__inner--drop-navigation.margin-adjust {
        margin-right: 4rem
    }
}

@media screen and (min-width: 960px) {
    .l-header-01__wrap--drop-navigation {
        display: flex
    }

    .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:focus-within .l-header-01__flame--drop-navigation, .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:focus-within ~ .l-header-01__overlay--drop-navigation, .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:hover .l-header-01__flame--drop-navigation, .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:hover ~ .l-header-01__overlay--drop-navigation {
        opacity: 1;
        visibility: visible;
        pointer-events: inherit
    }

    .l-header-01__inner--drop-navigation {
        display: flex;
        align-items: center
    }

    .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:focus-within .l-header-01__link--drop-navigation:after, .l-header-01__inner--drop-navigation.j-drop-navigation-trigger:hover .l-header-01__link--drop-navigation:after {
        background: var(--brand-main-color)
    }

    .l-header-01__link--drop-navigation {
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        height: var(--header-height-desktop);
        color: #222;
        font-size: .875rem;
        font-weight: 600;
        text-decoration: none;
        cursor: pointer
    }

    .l-header-01__link--drop-navigation:hover {
        color: rgba(16, 16, 16, .64)
    }

    .l-header-01__link--drop-navigation:after {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 4px;
        background: #fff;
        transition: .4s background;
        content: ""
    }
}

@media screen and (min-width: 960px) and (min-width: 1020px) {
    .l-header-01__link--drop-navigation {
        font-size: 1rem
    }
}

@media screen and (min-width: 960px) {
    .l-header-01__flame--drop-navigation {
        display: none;
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        opacity: 0;
        z-index: 5;
        visibility: hidden;
        padding: 2.5rem;
        background: #fff;
        border-top: 1px solid #ccc;
        box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24);
        transition: .4s opacity, .4s visibility;
        pointer-events: none
    }

    .l-header-01__flame--drop-navigation.is-loaded {
        display: block
    }

    .l-header-01__ico--drop-navigation {
        width: 2.5rem;
        margin-bottom: .25rem
    }

    .l-header-01__tx-link--drop-navigation {
        color: #222;
        font-size: 1rem;
        font-weight: 600
    }

    .l-header-01__overlay--drop-navigation {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1;
        opacity: 0;
        visibility: hidden;
        width: 100%;
        height: calc(100vh - var(--header-height-desktop));
        background: rgba(16, 16, 16, .32);
        transition: .4s opacity, .4s visibility;
        pointer-events: none
    }

    .l-header-01__overlay--drop-navigation.is-loaded {
        display: block
    }
}

.l-header-01__inner--hamburger {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: var(--header-height-mobile);
    padding-left: .25rem;
    text-decoration: none;
    cursor: pointer
}

@media screen and (min-width: 560px) {
    .l-header-01__inner--hamburger {
        padding-left: .5rem
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__inner--hamburger {
        display: none
    }
}

.l-header-01__ico--hamburger {
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-bottom: .125rem
}

.l-header-01__line--hamburger {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #666
}

.l-header-01__line--hamburger:nth-child(1) {
    top: 0
}

.l-header-01__line--hamburger:nth-child(2) {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.l-header-01__line--hamburger:nth-child(3) {
    bottom: 0
}

.l-header-01__tx--hamburger {
    color: #222;
    font-size: .625rem;
    font-weight: 600;
    cursor: pointer
}

.l-header-01__inner--drawer-navigation {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 5;
    width: calc(100% - 64px);
    max-width: 320px;
    height: 100%;
    margin-right: calc(-100% + 64px);
    transition: .2s margin
}

.l-header-01__inner--drawer-navigation.is-active {
    margin-right: 0
}

.l-header-01__inner--drawer-navigation.is-active .l-header-01__ico-close--drawer-navigation {
    display: block
}

@media screen and (min-width: 960px) {
    .l-header-01__inner--drawer-navigation {
        display: none
    }
}

.l-header-01__overlay--drawer-navigation {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    visibility: hidden;
    transition: .2s opacity, .2s visibility;
    opacity: 0
}

.l-header-01__overlay--drawer-navigation.is-active {
    display: block;
    opacity: 1;
    visibility: visible
}

.l-header-01__ico-close--drawer-navigation {
    display: none;
    position: absolute;
    top: 1.5rem;
    left: -2.75rem;
    z-index: 5;
    width: 1.5rem;
    height: 1.5rem;
    background: 0 0;
    border: none;
    cursor: pointer
}

.l-header-01__ico-close--drawer-navigation:before {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    width: 100%;
    height: 3px;
    background: #fff;
    content: ""
}

.l-header-01__ico-close--drawer-navigation:after {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
    width: 100%;
    height: 3px;
    background: #fff;
    content: ""
}

.j-drop-navigation-trigger:focus-within ~ .l-header-01__overlay--drop-navigation, .j-drop-navigation-trigger:hover ~ .l-header-01__overlay--drop-navigation {
    visibility: visible;
    opacity: 1
}

.l-header-02 {
    border-top: 2px solid var(--brand-main-color)
}

@media screen and (min-width: 960px) {
    .l-header-01__overlay--drawer-navigation, .l-header-01__overlay--drawer-navigation.is-active {
        display: none
    }

    .l-header-02 {
        position: sticky;
        top: 0;
        z-index: 100;
        background: #fff;
        box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24);
        height: var(--header-height-desktop)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-02__inner--body {
        display: flex;
        align-items: center;
        width: calc(100% - 5rem);
        max-width: 105.25rem;
        height: 100%;
        margin-right: auto;
        margin-left: auto
    }
}

.l-header-02__inner--logo {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 1;
    padding: 0 1rem;
    height: var(--header-height-mobile);
    background: #fff;
    box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24)
}

@media screen and (min-width: 560px) {
    .l-header-02__inner--logo {
        padding: 0 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-02__inner--logo {
        display: inherit;
        align-items: inherit;
        width: 17.5rem;
        height: 100%;
        padding: 0;
        background: inherit;
        box-shadow: inherit
    }
}

.l-header-03 {
    box-shadow: 0 8px 16px -6px rgba(0, 0, 0, .24)
}

.l-header-03 {
    height: var(--header-height-mobile);
    background: #fff
}

@media screen and (min-width: 960px) {
    .l-header-03 {
        height: var(--header-height-desktop)
    }
}

.l-header-03__inner--body {
    display: flex;
    align-items: center;
    width: calc(100% - 2rem);
    height: 100%;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 560px) {
    .l-header-03__inner--body {
        width: calc(100% - 3rem)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-03__inner--body {
        width: calc(100% - 5rem);
        max-width: 105.25rem
    }
}

.l-header-01__img--logo, .l-header-03__img--logo {
    /*width: 10em;*/
    max-height: 50px;
    max-width: 200px;
}

@media screen and (min-width: 560px) {
    .l-header-01__img--logo {
        /*width: 15em;*/
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-header-01__img--logo {
        /*width: 20em;*/
    }
}

.l-main__wrap--01 {
    padding-top: 1rem;
    padding-bottom: 3.5rem
}

.l-main__section--00 {
    margin-bottom: 0
}

@media screen and (min-width: 960px) {
    .l-main__wrap--01 {
        padding-top: 2rem;
        padding-bottom: 5rem
    }

    .l-main__layout--navigation {
        display: grid;
        grid-template-columns:20% 1fr;
        gap: 2.5rem
    }

    .l-main__section--00 {
        margin-bottom: 0
    }
}

.l-main__section--01 {
    margin-bottom: 4rem
}

@media screen and (min-width: 960px) {
    .l-main__section--01 {
        margin-bottom: 5rem
    }
}

.l-main__section--02 {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .l-main__section--02 {
        margin-bottom: 2rem
    }
}

.l-main__section--03 {
    margin-bottom: 1.5rem
}

.l-main__section--05:not(:last-child) {
    margin-bottom: 1.5rem
}

.l-main__width-type--01 {
    width: calc(100% - 2rem);
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 560px) {
    .l-main__width-type--01 {
        width: calc(100% - 3rem)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-main__width-type--01 {
        width: calc(100% - 5rem);
        max-width: 105.25rem
    }
}

@media screen and (min-width: 960px) {
    .l-main__section--05:not(:last-child) {
        margin-bottom: 2rem
    }
}

.l-main__inner--breadcrumb {
    width: calc(100% - 2rem);
    margin-right: auto;
    margin-bottom: 1rem;
    margin-left: auto
}

@media screen and (min-width: 560px) {
    .l-main__inner--breadcrumb {
        width: calc(100% - 3rem)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-main__inner--breadcrumb {
        width: calc(100% - 5rem);
        max-width: 105.25rem;
        margin-bottom: 1.5rem
    }
}

.l-main__inner--headline {
    width: calc(100% - 2rem);
    margin-right: auto;
    margin-bottom: 1.5rem;
    margin-left: auto
}

@media screen and (min-width: 560px) {
    .l-main__inner--headline {
        width: calc(100% - 3rem)
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .l-main__inner--headline {
        width: calc(100% - 5rem);
        max-width: 105.25rem;
        margin-bottom: 2rem
    }
}

.l-main__inner--crosshead {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .l-main__inner--crosshead {
        margin-bottom: 2rem
    }
}

.l-footer-01 {
    margin-top: auto
}

.l-footer-01.space-bottom-navigation-bar .l-footer-01__inner {
    padding-bottom: var(--bottom-navigation-bar-height)
}

.l-footer-01__inner--page-top {
    display: none
}

.l-footer-01__link--page-top {
    font-size: .75rem
}

@media screen and (min-width: 370px) {
    .l-footer-01__link--page-top {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .l-footer-01__link--page-top {
        font-size: 1rem
    }
}

.l-footer-01__inner {
    background: #f2f2f2
}

.l-footer-01.space-bottom-navigation-bar .l-footer-01__inner {
    padding-bottom: 0
}

.l-footer-01__wrap---main-navigation {
    display: flex;
    padding: 1rem 0;
    align-content: center;
    justify-content: center;
}

@media screen and (min-width: 960px) {


    .l-footer-01__inner--page-top {
        display: flex;
        width: calc(100% - 5rem);
        max-width: 105.25rem;
        margin-right: auto;
        margin-left: auto;
        padding-bottom: .25rem
    }

    .l-footer-01__link--page-top {
        margin-left: auto;
        color: #222;
        text-decoration: none;
        font-weight: 600
    }

    .l-footer-01__link--page-top:hover {
        text-decoration: underline
    }

    .l-footer-01__inner--body {
        width: calc(100% - 5rem);
        max-width: 105.25rem;
        margin-right: auto;
        margin-left: auto
    }

    .l-footer-01__wrap---main-navigation {
        display: flex;
        padding: 2rem 0
    }

}

.l-footer-01 .display-desktop {
    display: none
}

@media screen and (min-width: 960px) {
    .l-footer-01 .display-mobile {
        display: none
    }

    .l-footer-01 .display-desktop {
        display: block
    }
}


@media screen and (min-width: 960px) {

    .c-button-primary {
        opacity: 1;
        transition: .2s opacity
    }

    .c-button-primary:hover {
        opacity: .64
    }
}

.c-button-primary {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 2.5rem;
    padding: 0 .5rem;
    background: var(--brand-main-color);
    border: none;
    border-radius: 4px;
    text-decoration: none;
    cursor: pointer
}

.c-button-primary__text {
    color: #fff;
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
    line-height: 1rem
}

.c-button-steps {
    background: var(--brand-main-color)
}

.c-button-steps {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 0;
    width: 100%;
    min-height: 3rem;
    padding: 0 .5rem;
    border: none;
    border-radius: 4px;
    text-decoration: none;
    cursor: pointer
}

@media screen and (min-width: 960px) {
    .c-button-primary__text {
        font-size: 1rem
    }

    .c-button-steps {
        min-height: 3.5rem;
        opacity: 1;
        transition: .2s opacity
    }

    .c-button-steps:hover {
        opacity: .64
    }
}

.c-button-steps__text {
    color: #fff;
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
    line-height: 1rem
}

.c-button-steps__ico {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: 2.5rem;
    height: 3rem
}

@media screen and (min-width: 960px) {
    .c-button-steps__text {
        font-size: 1rem
    }

    .c-button-steps__ico {
        height: 3.5rem
    }

    .c-button-steps.is-disabled:hover {
        opacity: 1
    }
}

.c-button-steps__ico:before {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1px;
    height: 32%;
    background: #fff;
    content: ""
}

.c-button-steps__ico:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-color: transparent transparent transparent #fff;
    border-style: solid;
    border-width: 4px 0 4px 8px;
    content: ""
}

.c-button-steps.is-disabled {
    background: #ccc;
    cursor: default;
    pointer-events: none
}

.c-textlink-01__path {
    fill: var(--brand-main-color)
}

.c-alert-error__path--warning {
    fill: #d8000c
}

.c-button-headlink {
    display: flex;
    align-items: center;
    cursor: pointer
}

.c-button-headlink {
    justify-content: center;
    position: relative;
    width: 100%;
    opacity: 1;
    color: #222;
    text-decoration: underline
}

@media screen and (min-width: 480px) {
    .c-button-headlink {
        min-height: 2rem;
        padding: 0 .5rem;
        background: #f2f2f2;
        border: 1px solid #666;
        border-radius: 4px;
        text-decoration: none
    }

    .c-button-headlink__arrow-ico {
        display: none
    }
}

@media screen and (min-width: 480px) and (min-width: 960px) {
    .c-button-headlink {
        opacity: 1;
        transition: .2s opacity
    }

    .c-button-headlink:hover {
        opacity: .64
    }
}

.c-button-headlink__arrow-ico {
    position: relative;
    width: 12px;
    height: 12px;
    margin-right: .125rem;
    border-radius: 50%;
    background: var(--brand-main-color)
}

.c-button-headlink__arrow-ico:after {
    position: absolute;
    top: 50%;
    left: calc(50% - 1px);
    width: 3px;
    height: 3px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    content: ""
}

.c-button-headlink__text {
    color: #222;
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none
}

@media screen and (min-width: 960px) {
    .c-button-headlink__text {
        font-size: 1rem
    }
}

.c-input-text {
    display: block;
    width: 100%;
    height: 2rem;
    padding: 0 .5rem;
    background: #fff;
    border: 1px solid #666;
    border-radius: 4px;
    color: #222;
    font-size: 1rem
}

@media screen and (min-width: 960px) {

    .c-input-text {
        height: 2.5rem
    }
}

.c-input-select__select {
    padding: 0 1.5rem 0 .5rem;
    background: #fff;
    cursor: pointer
}

.c-input-select {
    display: block;
    position: relative;
    width: 100%
}

.c-input-select__select {
    display: block;
    width: 100%;
    height: 2rem;
    border: 1px solid #666;
    border-radius: 4px;
    color: #222;
    font-size: 1rem
}

@media screen and (min-width: 960px) {
    .c-input-select__select {
        height: 2.5rem
    }
}

.c-input-select:after {
    position: absolute;
    top: 50%;
    right: .5rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.8px 4.5px 0;
    border-color: #222 transparent transparent;
    pointer-events: none;
    content: ""
}

.c-input-select.is-disabled {
    pointer-events: none;
    opacity: .24
}

.c-input-checkbox, .c-input-radio {
    display: flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .5rem;
    background: #fff;
    border: 1px solid #666;
    border-radius: 4px;
    cursor: pointer
}

.c-input-checkbox.is-active, .c-input-radio.is-active {
    background: var(--brand-checked-color)
}

.c-input-checkbox__box, .c-input-radio__box {
    margin-right: .5rem
}

.c-input-checkbox__text, .c-input-radio__text {
    font-size: 1rem;
    color: #222
}

@media screen and (min-width: 960px) {
    .c-input-checkbox, .c-input-radio {
        min-height: 2.5rem
    }

    .c-input-checkbox__text, .c-input-radio__text {
        line-height: 1.15rem
    }

    .c-input-textarea {
        height: 10rem
    }
}

.c-input-textarea {
    display: block;
    width: 100%;
    min-height: 10rem;
    padding: .5rem;
    background: #fff;
    border: 1px solid #666;
    border-radius: 4px;
    color: #222;
    font-size: 1rem;
    resize: vertical
}

.c-input-sort {
    display: block;
    position: relative;
    width: 100%
}

.c-input-sort__select {
    display: block;
    width: 100%;
    height: 2rem;
    padding: 0 1.5rem 0 .5rem;
    background: #fff;
    border: 1px solid #666;
    border-radius: 4px;
    color: #222;
    font-size: 1rem;
    cursor: pointer
}

@media screen and (min-width: 960px) {
    .c-input-sort__select {
        height: 2.5rem
    }
}

.c-input-sort:after, .c-input-sort:before {
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    z-index: 1;
    right: .5rem;
    pointer-events: none
}

.c-input-sort:before {
    bottom: calc(50% + 1px);
    border-width: 0 4.5px 7.8px;
    border-color: transparent transparent #222
}

.c-input-sort:after {
    top: calc(50% + 1px);
    border-width: 7.8px 4.5px 0;
    border-color: #222 transparent transparent
}

.c-textlink-01, .c-textlink-02 {
    align-items: center;
    cursor: pointer
}


.c-textlink-01 {
    display: inline-flex;
    text-decoration: underline
}

@media screen and (min-width: 960px) {

    .c-textlink-01:hover {
        text-decoration: none
    }
}

.c-textlink-01__text {
    font-size: .75rem;
    color: var(--brand-main-color);
    font-weight: 600;
    text-decoration: none
}

@media screen and (min-width: 370px) {
    .c-textlink-01__text {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-textlink-01__text {
        font-size: 1rem
    }
}

.c-textlink-01__ico {
    width: .75rem;
    margin: 0 .125rem
}

.c-textlink-02__path {
    fill: #222
}

.c-textlink-02 {
    display: inline-flex;
    background: 0 0;
    border: none;
    color: #222;
    text-decoration: none
}

@media screen and (min-width: 960px) {
    .c-textlink-02:hover {
        text-decoration: underline
    }
}

.c-textlink-02__text {
    font-size: .75rem;
    color: #222;
    font-weight: 600;
    text-decoration: none
}

@media screen and (min-width: 370px) {
    .c-textlink-02__text {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-textlink-02__text {
        font-size: 1rem
    }
}

.c-textlink-02__ico {
    width: .75rem;
    margin-right: .25rem
}

.c-heading-headline {
    color: #222;
    font-size: 1.25rem;
    font-weight: 700
}

@media screen and (min-width: 370px) {
    .c-heading-headline {
        font-size: 1.5rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-heading-headline {
        font-size: 1.75rem
    }
}

.c-heading-crosshead {
    display: flex;
    flex-direction: column
}

@media screen and (min-width: 560px) {
    .c-heading-crosshead {
        align-items: center;
        flex-direction: inherit
    }
}

.c-heading-crosshead__text {
    color: #222;
    font-size: 1rem;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-heading-crosshead__text {
        font-size: 1.125rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-heading-crosshead__text {
        font-size: 1.25rem
    }
}

.c-heading-subheading {
    color: #222;
    font-size: .875rem;
    font-weight: 600
}

.c-textblock-01, .c-textblock-02 {
    font-weight: 500;
    color: #222
}

@media screen and (min-width: 370px) {
    .c-heading-subheading {
        font-size: 1rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-heading-subheading {
        font-size: 1.125rem
    }
}

.c-textblock-01 {
    font-size: .75rem
}

@media screen and (min-width: 370px) {
    .c-textblock-01 {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-textblock-01 {
        font-size: 1rem
    }
}

.c-textblock-02 {
    font-size: .75rem
}

@media screen and (min-width: 370px) {
    .c-textblock-02 {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-textblock-02 {
        font-size: 1rem;
        word-break: break-word;
    }
}

@media screen and (min-width: 480px) and (min-width: 960px) {
    .c-textblock-01 {
        line-height: 1.5rem
    }

}

.c-text-horizontal-scroll-announce {
    display: flex
}

.c-text-horizontal-scroll-announce__kome {
    color: #666;
    font-weight: 500;
    font-size: .625rem
}

@media screen and (min-width: 960px) {
    .c-text-horizontal-scroll-announce__kome {
        font-size: .75rem
    }
}

.c-text-horizontal-scroll-announce__text {
    flex: 1;
    color: #666;
    font-weight: 500;
    font-size: .625rem
}

@media screen and (min-width: 960px) {
    .c-text-horizontal-scroll-announce__text {
        font-size: .75rem
    }
}

.c-texticon-required {
    font-size: .625rem;
    display: inline-flex
}


.c-texticon-required {
    border-radius: 4px;
    font-weight: 600;
    white-space: nowrap;
    padding: .125rem .5rem;
    color: #fff
}

.c-texticon-required {
    line-height: 1rem;
    background: #d8000c;
    border: 1px solid #d8000c
}

@media screen and (min-width: 370px) {
    .c-texticon-required {
        font-size: .75rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-texticon-required {
        font-size: .875rem;
        line-height: 1.15rem
    }
}

.c-overlay {
    width: 100%;
    height: 100%;
    background: rgba(16, 16, 16, .8)
}

.c-breadcrumb__inner {
    display: flex;
    align-items: center;
    margin-right: auto;
    margin-left: auto;
    overflow: auto;
    white-space: nowrap
}

.c-breadcrumb__link {
    font-size: .625rem;
    position: relative;
    margin-right: 1.5rem;
    font-weight: 500;
    text-decoration: none
}

@media screen and (min-width: 370px) {
    .c-breadcrumb__link {
        font-size: .75rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-breadcrumb__link {
        font-size: .875rem
    }
}

@media screen and (min-width: 960px) {
    .c-breadcrumb__inner {
        overflow: inherit
    }

    .c-breadcrumb__list:last-child {
        overflow: hidden;
        text-overflow: ellipsis;
        word-break: break-word;
        word-wrap: normal;
        white-space: nowrap
    }

    .c-breadcrumb__link {
        margin-right: 2.5rem
    }

    .c-breadcrumb__link:hover {
        text-decoration: underline
    }
}

.c-breadcrumb__link:after {
    position: absolute;
    top: 50%;
    right: -1rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #666;
    text-decoration: none;
    pointer-events: none;
    content: "＞"
}

.c-breadcrumb__current {
    font-size: .625rem;
    color: #666;
    font-weight: 500
}

@media screen and (min-width: 370px) {
    .c-breadcrumb__current {
        font-size: .75rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-breadcrumb__current {
        font-size: .875rem
    }
}

.c-sequence {
    display: flex;
    align-items: center;
    position: relative;
    width: 100%;
    height: 2.5rem;
    border: 1px solid #666;
    border-radius: 4px;
    overflow: hidden
}

@media screen and (min-width: 960px) {
    .c-breadcrumb__link:after {
        right: -1.75rem
    }

    .c-sequence {
        height: 3rem
    }
}

.c-sequence__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    height: 100%;
    background: #fff
}

.c-sequence__inner:first-child {
    border-radius: 4px 0 0 4px
}

.c-sequence__inner:last-child {
    border-radius: 0 4px 4px 0
}

.c-sequence__inner:before {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    content: ""
}

.c-sequence__num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: .8rem;
    height: .8rem;
    margin-right: .125rem;
    background: #666;
    border-radius: 100%;
    color: #fff;
    font-size: .625rem;
    font-weight: 600
}

@media screen and (min-width: 960px) {
    .c-sequence__num {
        width: 1rem;
        height: 1rem;
        margin-right: .25rem;
        font-size: .75rem
    }
}

.c-sequence__text {
    color: #666;
    font-size: .75rem;
    font-weight: 600
}

@media screen and (max-width: 370px) {
    .c-sequence__text {
        font-size: .625rem
    }
}

@media screen and (min-width: 370px) {
    .c-sequence__text {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-sequence__text {
        font-size: 1rem
    }
}

.c-sequence__arrow {
    position: absolute;
    top: 50%;
    right: -8px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 5;
    height: calc(100% + 2px)
}

.c-sequence__back--arrow {
    fill: #fff
}

.c-sequence__path--arrow {
    fill: #fff;
    stroke: #666;
    stroke-width: 1;
    stroke-miterlimit: 10
}

.c-sequence.is-step1 .c-sequence__inner:nth-child(1) .c-sequence__path--arrow, .c-sequence.is-step2 .c-sequence__inner:nth-child(1) .c-sequence__back--arrow, .c-sequence.is-step2 .c-sequence__inner:nth-child(2) .c-sequence__path--arrow, .c-sequence.is-step3 .c-sequence__inner:nth-child(2) .c-sequence__back--arrow, .c-sequence.is-step3 .c-sequence__inner:nth-child(3) .c-sequence__path--arrow, .c-sequence.is-step4 .c-sequence__inner:nth-child(3) .c-sequence__back--arrow, .c-sequence.is-step4 .c-sequence__inner:nth-child(4) .c-sequence__path--arrow {
    fill: var(--brand-main-color)
}

.c-sequence.is-step1 .c-sequence__inner:nth-child(1) {
    background: var(--brand-main-color)
}

.c-sequence.is-step1 .c-sequence__inner:nth-child(1) .c-sequence__num {
    background: #fff;
    color: var(--brand-main-color)
}

.c-sequence.is-step1 .c-sequence__inner:nth-child(1) .c-sequence__text {
    color: #fff
}

.c-sequence.is-step2 .c-sequence__inner:nth-child(1) .c-sequence__num {
    background: var(--brand-main-color);
    color: #fff
}

.c-sequence.is-step2 .c-sequence__inner:nth-child(1) .c-sequence__text {
    color: var(--brand-main-color)
}

.c-sequence.is-step2 .c-sequence__inner:nth-child(2) {
    background: var(--brand-main-color)
}

.c-sequence.is-step2 .c-sequence__inner:nth-child(2) .c-sequence__num {
    background: #fff;
    color: var(--brand-main-color)
}

.c-sequence.is-step2 .c-sequence__inner:nth-child(2) .c-sequence__text {
    color: #fff
}

.c-sequence.is-step3 .c-sequence__inner:nth-child(1) .c-sequence__num, .c-sequence.is-step3 .c-sequence__inner:nth-child(2) .c-sequence__num {
    background: var(--brand-main-color);
    color: #fff
}

.c-sequence.is-step3 .c-sequence__inner:nth-child(1) .c-sequence__text, .c-sequence.is-step3 .c-sequence__inner:nth-child(2) .c-sequence__text {
    color: var(--brand-main-color)
}

.c-sequence.is-step3 .c-sequence__inner:nth-child(3) {
    background: var(--brand-main-color)
}

.c-sequence.is-step3 .c-sequence__inner:nth-child(3) .c-sequence__num {
    background: #fff;
    color: var(--brand-main-color)
}

.c-sequence.is-step3 .c-sequence__inner:nth-child(3) .c-sequence__text {
    color: #fff
}

.c-sequence.is-step4 .c-sequence__inner:nth-child(1) .c-sequence__num, .c-sequence.is-step4 .c-sequence__inner:nth-child(2) .c-sequence__num, .c-sequence.is-step4 .c-sequence__inner:nth-child(3) .c-sequence__num {
    background: var(--brand-main-color);
    color: #fff
}

.c-sequence.is-step4 .c-sequence__inner:nth-child(1) .c-sequence__text, .c-sequence.is-step4 .c-sequence__inner:nth-child(2) .c-sequence__text, .c-sequence.is-step4 .c-sequence__inner:nth-child(3) .c-sequence__text {
    color: var(--brand-main-color)
}

.c-sequence.is-step4 .c-sequence__inner:nth-child(4) {
    background: var(--brand-main-color)
}

.c-sequence.is-step4 .c-sequence__inner:nth-child(4) .c-sequence__num {
    background: #fff;
    color: var(--brand-main-color)
}

.c-sequence.is-step4 .c-sequence__inner:nth-child(4) .c-sequence__text {
    color: #fff
}

.c-navigation-mypage {
    display: none;
    position: fixed;
    z-index: 10;
    bottom: 0;
    left: 0;
    background: #fff;
    /*border-top: 1px solid #666*/
}

@media screen and (min-width: 960px) {
    .c-navigation-mypage {
        display: block;
        position: sticky;
        z-index: inherit;
        top: calc(var(--header-height-desktop) + 2.5rem);
        bottom: inherit;
        left: inherit
    }
}

.c-navigation-mypage__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: 3.5rem;
    text-decoration: none
}

.c-navigation-mypage__inner.is-active .c-navigation-mypage__text {
    color: var(--brand-main-color);
    font-weight: 600
}

@media screen and (min-width: 960px) {
    .c-navigation-mypage__inner {
        justify-content: inherit;
        flex-direction: inherit;
        position: relative;
        width: auto;
        border-top: 1px dotted #666;
        transition: .2s background;
        padding-left: 31px;
    }

    .c-navigation-mypage__inner:hover {
        background: #f2f2f2
    }

    .c-navigation-mypage__inner:hover .c-navigation-mypage__text {
        color: #222
    }

    .c-navigation-mypage__inner.is-active {
        /*padding-left: .75rem*/
    }

    .c-navigation-mypage__inner.is-active:hover .c-navigation-mypage__text {
        color: var(--brand-main-color);
    }
    .c-navigation-mypage__inner svg g path:last-child {
        fill: #222;
    }
    .c-navigation-mypage__inner.is-active svg g path:last-child {
        fill: var(--brand-main-color);
    }

    .c-navigation-mypage__inner.is-active:before {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        border-color: transparent transparent transparent var(--brand-main-color);
        border-style: solid;
        border-width: 4px 0 4px 8px;
        content: "";
        margin-left: 14px;
    }
}

.c-navigation-mypage__text {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #222;
    font-weight: 600;
    font-size: .625rem;
    padding-top: 2px;
}

.c-navigation-mypage__text.pc {
    display: none;
    padding-left:4px;
}

.c-navigation-mypage__text.sp {
    display: -webkit-box
}

@media screen and (min-width: 960px) {
    .c-navigation-mypage__text {
        font-size: 1rem;
        font-weight: 500;
        transition: .2s color
    }

    .c-navigation-mypage__text.pc {
        display: -webkit-box
    }

    .c-navigation-mypage__text.sp {
        display: none
    }
}

.c-accordion-mobile {
    max-height: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: .2s
}

@media screen and (min-width: 960px) {

    .c-accordion-mobile {
        max-height: inherit;
        overflow: inherit;
        -webkit-backface-visibility: inherit;
        backface-visibility: inherit;
        transition: inherit
    }

}

.c-card-analysis-01 {
    display: flex;
    flex-direction: column;
    height: 100%
}

.c-card-analysis-01__img-flame {
    display: block;
    position: relative;
    height: 0;
    padding-top: 57.75934%;
    overflow: hidden;
    border-radius: 4px;
    margin-bottom: 1rem
}

.c-card-analysis-01__img-src {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    /*width: 100%;*/
    height: 100%;
    overflow: hidden;
    border-radius: 0;
    -o-object-fit: cover;
    object-fit: cover
}

.c-card-analysis-01__name {
    margin-bottom: .5rem;
}

.c-card-my-reservation {
    padding: 1rem;
    background: #fff;
    border: 1px solid #666;
    border-radius: 4px
}

@media screen and (min-width: 960px) {
    .c-card-my-reservation {
        padding: 1.5rem
    }
}

.c-card-my-reservation__btn:not(:last-child) {
    margin-bottom: 1rem
}

.c-alert-error__inner--description, .c-alert-success__inner--description, .c-alert-lost__inner--description {
    margin-top: .5rem
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .c-alert-error {
        padding: 1rem
    }
}

.c-alert-error {
    width: 100%;
    padding: 1rem;
    background: #fff1f0;
    border: 1px solid #d8000c;
    border-radius: 4px
}

.c-alert-error__inner--heading {
    display: flex;
    align-items: center
}

.c-alert-error__ico--warning {
    width: 1rem;
    margin-right: .25rem
}

@media screen and (min-width: 960px) {
    .c-alert-error__ico--warning {
        width: 1.25rem
    }
}

.c-alert-error__heading {
    font-size: .75rem;
    color: #d8000c;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-alert-error__heading {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-alert-error__heading {
        font-size: 1rem
    }
}

.c-alert-input-error {
    display: inline-flex;
    flex-direction: column;
    position: relative;
    padding: .25rem .5rem;
    background: #d8000c;
    border-radius: 4px
}

.c-alert-success__inner--heading, .c-alert-lost__inner--heading {
    align-items: center;
    display: flex
}

.c-alert-input-error:after {
    position: absolute;
    top: 0;
    left: .5rem;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 2px 4px;
    border-color: transparent transparent #d8000c;
    content: ""
}

.c-alert-input-error__tx {
    font-size: .75rem;
    color: #fff;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-alert-input-error__tx {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-alert-input-error__tx {
        font-size: 1rem
    }
}

.c-alert-input-error__tx:not(:last-child) {
    margin-bottom: .25rem
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .c-alert-success, .c-alert-lost {
        padding: 1rem
    }
}

.c-alert-success {
    width: 100%;
    padding: 1rem;
    background: #eff9fb;
    border: 1px solid #00a699;
    border-radius: 4px
}
.c-alert-lost {
    width: 100%;
    padding: 1rem;
    background: #fff1f0;
    border: 1px solid #d8000c;
    border-radius: 4px;
}

.c-alert-success__ico--warning {
    width: 1rem;
    margin-right: .25rem
}

@media screen and (min-width: 960px) {
    .c-alert-success__ico--warning {
        width: 1.25rem
    }
}

.c-alert-success__path--warning {
    fill: #00a699
}

.c-alert-success__heading {
    font-size: .75rem;
    color: #00a699;
    font-weight: 600
}
.c-alert-lost__heading {
    font-size: .75rem;
    color: #d8000c;
    font-weight: 600;
}

@media screen and (min-width: 370px) {
    .c-alert-success__heading, .c-alert-lost__heading {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-alert-success__heading, .c-alert-lost__heading {
        font-size: 1rem
    }
}

.c-alert-success__description {
    font-size: .75rem;
    color: #00a699;
    font-weight: 500
}

@media screen and (min-width: 370px) {
    .c-alert-success__description {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-alert-success__description {
        font-size: 1rem
    }
}

.c-alert-success__description:not(:last-child) {
    margin-bottom: .5rem
}

.c-list-group-definition {
    width: 100%;
    border-top: 1px dotted #666
}

@media screen and (min-width: 960px) {
    .c-list-group-definition {
        border: 1px solid #666;
        border-radius: 4px
    }
}

.c-list-group-definition__inner {
    width: 100%;
    border-bottom: 1px dotted #666;
    padding: 1rem 0
}

.c-list-group-definition__dt {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: .5rem
}

@media screen and (min-width: 960px) {
    .c-list-group-definition__inner {
        display: flex;
        padding: 0
    }

    .c-list-group-definition__inner:first-child .c-list-group-definition__dt {
        border-top-left-radius: 4px
    }

    .c-list-group-definition__inner:first-child .c-list-group-definition__dd {
        border-top-right-radius: 4px
    }

    .c-list-group-definition__inner:last-child .c-list-group-definition__dt {
        border-bottom-left-radius: 4px
    }

    .c-list-group-definition__inner:last-child .c-list-group-definition__dd {
        border-bottom-right-radius: 4px
    }

    .c-list-group-definition__inner:not(:last-child) {
        border-bottom: 1px dotted #666
    }

    .c-list-group-definition__inner:last-child {
        border-bottom: none
    }

    .c-list-group-definition__inner--confirm-traveler {
        display: flex;
        padding: 0
    }

    .c-list-group-definition__inner--confirm-traveler:first-child .c-list-group-definition__confirm-traveler-dd {
        border-top-right-radius: 4px
    }

    .c-list-group-definition__inner--confirm-traveler:last-child .c-list-group-definition__confirm-traveler-dd {
        border-bottom-right-radius: 4px
    }

    .c-list-group-definition__inner--confirm-traveler:not(:last-child) {
        border-bottom: 1px dotted #666
    }

    .c-list-group-definition__dt {
        width: 25%;
        min-width: 12rem;
        margin-bottom: 0;
        padding: 1rem;
        background: #f2f2f2;
        border-right: 1px solid #666
    }
}

.c-list-group-definition__text--dt {
    font-size: .75rem;
    color: #666;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-list-group-definition__text--dt {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-list-group-definition__text--dt {
        font-size: 1rem
    }
}

@media screen and (min-width: 960px) {
    .c-list-group-definition__text--dt {
        flex: 1;
        color: #222
    }
}

.c-list-group-definition__ico--dt {
    display: flex;
    align-items: center;
    padding-left: .25rem
}

.c-list-group-definition__dd {
    width: 100%
}

@media screen and (min-width: 960px) {
    .c-list-group-definition__ico--dt {
        margin-left: auto;
        padding-left: 1rem
    }

    .c-list-group-definition__dd {
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 1;
        padding: 1rem;
        background: #fff
    }

    .c-list-group-definition__confirm-traveler-dd {
        flex: 1;
        padding: 1rem;
        background: #fff
    }
}

.c-list-group-notice {
    border-top: 1px solid #666
}

.c-list-group-notice__inner {
    position: relative;
    border-bottom: 1px dotted #666
}

.c-list-group-notice__no-link {
    display: block;
    padding: 1rem 0;
    text-decoration: none;
    color: #666
}

@media screen and (min-width: 960px) {
    .c-list-group-notice__no-link {
        flex-direction: inherit;
        padding: 1.5rem 0
    }

    .c-list-group-notice__no-link:hover .c-list-group-news__title {
        text-decoration: underline
    }

    :root {
        --bottom-login-bar-height: 6.5rem
    }
}

.c-list-group-notice__date {
    font-size: .75rem;
    display: block;
    margin-bottom: .5rem;
    color: #666;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-list-group-notice__date {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-list-group-notice__date {
        font-size: 1rem
    }
}

.c-list-group-notice__title {
    display: block;
    font-weight: 600
}

.c-list-group-notice__text {
    display: block
}

.c-table-37__th--3, .c-table-37__th--7 {
    background: #f2f2f2;
    border: 1px solid #666;
    vertical-align: middle;
    padding: .5rem
}

@media screen and (min-width: 510px) {
    .c-table-37__horizontal-scroll-announce {
        display: none
    }
}

.c-table-37__th--3.is-align-left {
    text-align: left
}

.c-table-37__th--3.is-align-center {
    text-align: center
}

.c-table-37__th--7 {
    width: 70%
}

.c-table-37__th--7.is-align-left {
    text-align: left
}

.c-table-37__th--7.is-align-center {
    text-align: center
}

.c-table-37__th--7.is-align-right {
    text-align: right
}

.c-table-37__tx--th {
    font-size: .75rem;
    color: #222;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-table-37__tx--th {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-table-37__tx--th {
        font-size: 1rem
    }
}

.c-table-37__td--7 {
    width: 70%;
    padding: .5rem;
    background: #fff;
    border: 1px solid #666;
    vertical-align: middle
}

.c-table-55__inner {
    width: 100%;
    border-collapse: collapse
}

.c-table-55__th--3, .c-table-55__th--5 {
    background: #f2f2f2;
    border: 1px solid #666;
    vertical-align: middle;
    padding: .5rem
}

.c-table-37__td--7.is-align-left {
    text-align: left
}

.c-table-37__td--7.is-align-center {
    text-align: center
}

.c-table-37__td--7.is-align-right {
    text-align: right
}

.c-table-55 {
    overflow: scroll
}

@media screen and (min-width: 560px) {
    .c-table-55 {
        overflow: inherit
    }
}

.c-table-55__inner {
    min-width: 30rem;
    /*table-layout: fixed*/
}

.c-table-55__th--3.is-align-left {
    text-align: left
}

.c-table-55__th--3.is-align-center {
    text-align: center
}

.c-table-55__th--5.is-align-left {
    text-align: left
}

.c-table-55__th--5.is-align-center {
    text-align: center
}

.c-table-55__th--5.is-align-right {
    text-align: right
}

.c-table-55__tx--th {
    font-size: .75rem;
    color: #222;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-table-55__tx--th {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-table-55__tx--th {
        font-size: 1rem
    }
}

.c-table-55__td--5 {
    padding: .5rem;
    background: #fff;
    border: 1px solid #666;
    vertical-align: middle
}

.c-table-55__td--5.is-align-left {
    text-align: left
}

.c-table-55__td--5.is-align-center {
    text-align: center
}

.c-table-55__td--5.is-align-right {
    text-align: right
}

@media screen and (min-width: 560px) {
    .c-table-55__inner {
        min-width: inherit
    }

}

.c-search__date-period-inner, .c-search__date-period-warap {
    display: flex;
    align-items: center;
    width: 100%
}

.c-search-result {
    display: flex;
    flex-direction: column;
    width: 100%
}

.c-search-result__heading {
    margin-right: auto
}

.c-search-result__heading:not(:only-child) {
    margin-bottom: 1rem
}

@media screen and (min-width: 960px) {
    .c-search-result {
        flex-direction: inherit;
        align-items: stretch
    }

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

    .c-search-result__heading:not(:only-child) {
        margin-bottom: 0
    }

    .c-search-result__sort-select {
        display: flex;
        align-items: center
    }

    .c-search-result__wrap {
        margin-left: auto
    }
}

.c-search-result__item {
    display: none
}

.c-search-result__sort:not(:last-child) {
    margin-bottom: .5rem
}

@media screen and (min-width: 960px) {
    .c-search-result__item {
        display: block;
        flex: 1;
        font-weight: 600
    }

    .c-search-result__sort {
        width: 10.5rem
    }

    .c-search-result__sort:not(:last-child) {
        margin-right: .5rem;
        margin-bottom: 0
    }
}

.c-search-result__sort-adjust {
    margin-bottom: 1rem
}

.c-top-information-bar {
    display: flex;
    align-items: center;
    padding: .5rem 1rem;
    background: #00a699;
    border-bottom: 1px solid #fff
}

@media screen and (min-width: 560px) {
    .c-top-information-bar {
        padding: .5rem 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .c-top-information-bar {
        padding: .5rem 2rem
    }
}

.c-top-information-bar__item {
    display: flex;
    align-items: center
}

.c-top-information-bar__ico-item {
    width: .75rem;
    margin-right: .25rem
}

.c-top-information-bar__path-item {
    fill: #fff
}

.c-top-information-bar__item-text {
    color: #fff;
    font-size: .75rem;
    font-weight: 600
}

@media screen and (min-width: 960px) {
    .c-search-result__sort-adjust {
        margin-bottom: 0
    }

    .c-top-information-bar__item-text {
        font-size: .875rem
    }
}

.c-top-information-bar__item-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1px;
    height: 12px;
    margin: 0 .5rem;
    background: #fff
}

@media screen and (min-width: 960px) {
    .c-top-information-bar__item-bar {
        margin: 0 1rem
    }
}

.c-top-information-bar__article-wrap {
    flex: 1;
    height: 18px;
    padding-right: 1rem;
    overflow: hidden
}

@media screen and (min-width: 960px) {
    .c-top-information-bar__article-wrap {
        height: 21px
    }
}

.c-top-information-bar__article {
    display: flex;
    align-items: center;
    height: 100%;
    transition: .4s margin
}

.c-top-information-bar__article-link {
    display: flex;
    align-items: center;
    color: #fff;
    text-decoration: underline;
    overflow: hidden
}

.c-top-information-bar__article-text {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #fff;
    font-size: .75rem;
    font-weight: 600
}

@media screen and (min-width: 960px) {
    .c-top-information-bar__article-link:hover {
        text-decoration: none
    }

    .c-top-information-bar__article-text {
        font-size: .875rem
    }
}

.c-top-information-bar__close-btn {
    position: relative;
    width: 1rem;
    height: 1rem;
    background: 0 0;
    border: none;
    cursor: pointer
}

.c-top-information-bar__close-btn:after, .c-top-information-bar__close-btn:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 3px;
    background: #fff;
    content: ""
}

.c-top-information-bar__close-btn:before {
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg)
}

.c-top-information-bar__close-btn:after {
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg)
}

.c-pagination__item .next:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 6px;
    height: 6px;
    margin-left: -2px;
    border-top: 2px solid #222;
    border-right: 2px solid #222;
    content: ""
}

.c-drawer-navigation {
    position: relative;
    height: 100%;
    overflow: auto
}

.c-drawer-navigation__link--mypage:after, .c-drawer-navigation__link:after {
    top: 50%;
    width: 6px;
    height: 6px;
    border-right: 2px solid #666
}

.c-drawer-navigation__inner {
    background: #fff
}

.c-drawer-navigation__heading {
    padding: .25rem 1rem;
    background: #ebeaea;
    border-top: 1px solid #ccc;
    color: #666;
    font-weight: 600
}

@media screen and (min-width: 560px) {
    .c-drawer-navigation__heading {
        /*padding: .25rem 1.5rem*/
    }
}

.c-drawer-navigation__link--mypage {
    display: flex;
    align-items: center;
    position: relative;
    padding: 1rem;
    border-top: 1px dotted #ccc;
    text-decoration: none
}

.c-drawer-navigation__link--mypage:after {
    position: absolute;
    right: 1rem;
    -webkit-transform: rotate(45deg) translate(-50%, -50%);
    transform: rotate(45deg) translate(-50%, -50%);
    border-top: 2px solid #666;
    content: ""
}

.c-drawer-navigation__link:after {
    -webkit-transform: rotate(45deg) translate(-50%, -50%);
    content: ""
}

@media screen and (min-width: 560px) {
    .c-drawer-navigation__link--mypage {
        padding: 1rem 1.5rem
    }

    .c-drawer-navigation__link--mypage:after {
        right: 1.5rem
    }
}

.c-drawer-navigation__link {
    display: flex;
    align-items: center;
    position: relative;
    padding: 1rem;
    border-top: 1px dotted #ccc;
    text-decoration: none
}

.c-drawer-navigation__link:after {
    position: absolute;
    right: 1rem;
    transform: rotate(45deg) translate(-50%, -50%);
    border-top: 2px solid #666
}

@media screen and (min-width: 560px) {
    .c-drawer-navigation__link {
        padding: 1rem 1.5rem
    }

    .c-drawer-navigation__link:after {
        right: 1.5rem
    }
}

.c-drawer-navigation__tx-link {
    font-size: .75rem;
    color: #222;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .c-drawer-navigation__tx-link {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .c-drawer-navigation__tx-link {
        font-size: 1rem
    }
}

.c-drawer-navigation__inner--foot {
    padding: 2rem 1rem 1.5rem;
    background: #f2f2f2;
    border-top: 1px solid #ccc
}

@media screen and (min-width: 560px) {
    .c-drawer-navigation__inner--foot {
        padding: 2rem 1.5rem 1.5rem
    }

}

@media screen and (min-width: 560px) {
    .p-card-list-analysis__list {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 1.5rem;
    }
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .p-card-list-analysis__list {
        grid-template-columns:1fr 1fr;
        gap: 2rem
    }
}

.c-card-analysis-01__description{
    flex-grow: 1;
    margin-bottom: 1rem;
}

.p-card-list-analysis__inner:not(:last-child) {
    margin-bottom: 2rem
}

@media screen and (min-width: 560px) {
    .p-card-list-analysis__inner:not(:last-child) {
        margin-bottom: 0
    }
}

@media screen and (min-width: 370px) {
    .p-content-template p:not([class]) {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-content-template p:not([class]) {
        font-size: 1rem
    }
}

@media screen and (min-width: 960px) {

    .p-content-template a:not([class]):hover {
        text-decoration: none
    }
}

.p-content-template b {
    font-size: .75rem;
    color: #222;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .p-content-template b {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-content-template b {
        font-size: 1rem
    }
}

.p-content-template img.is-desktop, .p-content-template img.is-mobile, .p-content-template img:not([class]), .p-content-template img:not(.business_list_icon) {
    width: 100%;
    height: auto;
    border: 1px solid #222;
    border-radius: 4px
}

.p-content-template blockquote:not([class]) {
    position: relative;
    padding: 1rem;
    background: #f2f2f2;
    border-radius: 4px
}

.p-content-template blockquote:not([class]) p:not(:last-child) {
    margin-bottom: 0
}

.p-content-template strong {
    font-weight: 600
}

.p-content-template em {
    font-style: italic
}

.p-content-template hr:not([class]) {
    background: 0 0;
    border-top: 1px dotted #666
}

.p-content-template li:not([class]) {
    font-size: .75rem;
    position: relative;
    padding-left: .85rem;
    color: #222;
    font-weight: 500
}

@media screen and (min-width: 370px) {
    .p-content-template li:not([class]) {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-content-template li:not([class]) {
        font-size: 1rem
    }
}

@media screen and (min-width: 480px) and (min-width: 960px) {
    .p-content-template li:not([class]) {
        padding-left: 1rem
    }
}

.p-content-template li:not([class]):not(:last-child) {
    margin-bottom: .125rem
}

.p-content-template li:not([class]):before {
    position: absolute;
    top: 0;
    left: 0;
    content: "・"
}

.p-content-template__inner:not(:last-child) {
    margin-bottom: 1rem
}

.p-content-template__btn-field {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: #f2f2f2;
    border-radius: 4px
}

@media screen and (min-width: 960px) {
    .p-content-template__inner:not(:last-child) {
        margin-bottom: 1.5rem
    }

    .p-content-template__btn-field {
        padding: 1.5rem
    }

    .p-content-template__btn {
        max-width: 20rem;
        min-width: 15rem
    }

}

.p-content-template .is-mobile {
    display: none
}

.p-content-template .is-mobile.is-active {
    display: block
}

.p-content-template .is-desktop {
    display: none
}

.p-content-template .is-desktop.is-active {
    display: block
}

.p-entitled-table__inner {
    width: 100%
}

.p-login-area {
    padding: 1.5rem 1rem;
    background: #f2f2f2;
    border-radius: 4px
}

@media screen and (min-width: 560px) and (min-width: 960px) {
    .p-login-area {
        display: flex;
        align-items: center;
        padding: 2.5rem 3rem
    }
}

.p-login-area__inner--account {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
}

@media screen and (min-width: 960px) {

    .p-login-area__inner--account {
        order: 2;
        width: 100%;
        padding-left: 15rem;
        padding-right: 15rem;
        border-bottom: none;
    }
}

.p-login-area__heading--account {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .p-login-area__heading--account {
        display: flex;
        justify-content: center;
        margin-bottom: 1.5rem
    }
}

.p-login-area__wrap--input {
    margin-bottom: 2.5rem
}

.p-login-area__item {
    font-size: .625rem;
    color: #222;
    margin-bottom: .25rem;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .p-login-area__item {
        font-size: .75rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-login-area__item {
        font-size: .875rem
    }
}

.p-login-area__inner--input:not(:last-child) {
    margin-bottom: 1rem
}

@media screen and (min-width: 960px) {
    .p-login-area__inner--input:not(:last-child) {
        margin-bottom: 1.5rem
    }
}

.p-heading-set__right {
    margin-left: auto
}

.p-heading-set {
    display: flex;
    align-items: center
}

.p-heading-set__right {
    display: flex
}

.p-heading-set__link.is-pc {
    display: none
}

@media screen and (min-width: 560px) {
    .p-heading-set__link.is-pc {
        display: block
    }

    .p-heading-set__link.is-sp {
        display: none
    }
}

@media screen and (min-width: 480px) {
    .p-heading-set__link-set-inner {
        display: flex;
        align-items: center;
        width: 100%
    }
}

.p-heading-set__premium-link-inner {
    margin-top: .25rem
}

@media screen and (min-width: 480px) {
    .p-heading-set__premium-link-inner {
        margin-top: 0
    }
}

.p-input-form__inner--00, .p-input-form__inner--01, .p-input-form__inner--02 {
    display: block;
    width: 100%
}

.p-input-form__text--dt-annotation {
    font-size: .625rem
}

.p-input-form__inner--01:not(:last-child) {
    margin-bottom: .5rem
}

.p-input-form__inner--02:not(:last-child) {
    margin-bottom: 1rem
}

.p-input-form__size--01 {
    width: 100%
}

@media screen and (min-width: 960px) {
    .p-input-form__size--01 {
        width: 50%
    }
}

.p-input-form__size--02 {
    width: 100%
}

@media screen and (min-width: 960px) {
    .p-input-form__size--02 {
        width: 80%
    }

}

.p-input-form__inner--form:not(:last-child) {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .p-input-form__inner--form:not(:last-child) {
        margin-bottom: 2rem
    }
}

@media screen and (min-width: 960px) {

    .p-input-form__wrap--cta {
        display: flex;
        align-items: center
    }
}

.p-input-form__inner--alert, .p-input-form__inner--cta-btn {
    margin-bottom: 1rem
}

.p-input-form__inner--back-btn {
    display: flex
}

@media screen and (min-width: 960px) {
    .p-input-form__inner--back-btn {
        width: 25%;
        min-width: 12rem;
        order: 1;
        display: block
    }

    .p-input-form__inner--cta-btn {
        order: 2;
        flex: 1;
        margin-bottom: 0
    }
}

.p-input-form__input-error {
    margin-top: .5rem
}

.p-input-form__inner--password-display {
    margin-bottom: .25rem
}

.p-input-form__inner--password-display.is-hide .p-input-form__password--hide {
    display: none
}

.p-input-form__inner--password-display.is-hide .p-input-form__password--display {
    display: block
}

.p-input-form__password--display {
    display: none
}

.p-input-form__wrap-anti {
    display: grid;
    gap: .5rem;
    grid-template-columns:1fr 1fr
}

.p-input-form__anti {
    width: 100%
}

.p-input-form__br-pc {
    display: none
}

@media screen and (min-width: 960px) {
    .p-input-form__br-pc {
        display: block
    }
}

.p-done__heading {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .p-done {
        display: flex;
        align-items: center;
        flex-direction: column
    }

    .p-done__heading {
        margin-bottom: 2rem
    }
}

.p-done__inner--description {
    margin-bottom: 1.5rem
}

.p-done__description {
    font-size: .75rem;
    color: #222;
    font-weight: 500
}

.p-done__inner--sales-forecast {
    margin-bottom: 1rem
}

@media screen and (min-width: 370px) {
    .p-done__description {
        font-size: .875rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-done__description {
        font-size: 1rem
    }
}

@media screen and (min-width: 960px) {
    .p-done__inner--description {
        margin-bottom: 2rem
    }
    .p-done__description {
        text-align: center
    }
    .p-done__inner--sales-forecast {
        margin-bottom: 1rem
    }

}

.p-done__inner--cta:not(:last-child) {
    margin-bottom: 1.5rem
}

@media screen and (min-width: 960px) {
    .p-done__inner--cta {
        width: 15rem
    }

    .p-done__inner--cta:not(:last-child) {
        margin-bottom: 2rem
    }
}

.p-done__inner-sales-forecast {
    width: 100%;
    padding: 1rem;
    background: #eff9fb;
    border-radius: 4px;
    text-align: center;
}

.p-done__heading-sales-forecast {
    /*margin-bottom: 1rem;*/
    color: #00a699;
    font-size: .75rem;
    font-weight: 600
}

@media screen and (min-width: 370px) {
    .p-done__heading-sales-forecast {
        font-size: 1.25rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-done__heading-sales-forecast {
        font-size: 1.25rem
    }
}

.p-done__formula {
    /*color: #00a699;*/
    font-size: .75rem;
    font-weight: 500;
    text-align: center;
    padding-top: 1rem;
}

@media screen and (min-width: 370px) {
    .p-done__formula {
        font-size: .8rem
    }
}

@media screen and (min-width: 370px) and (min-width: 960px) {
    .p-done__formula {
        font-size: .875rem
    }
}

.u-margin-top-01 {
    margin-top: .125rem
}

.u-margin-top-02 {
    margin-top: .25rem
}

.u-margin-top-03 {
    margin-top: .5rem
}

.u-margin-top-04 {
    margin-top: 1rem
}

.u-margin-right-01 {
    margin-right: .125rem
}

.u-margin-right-02 {
    margin-right: .25rem
}

.u-margin-right-03 {
    margin-right: .5rem
}

.u-margin-right-04 {
    margin-right: 1rem
}

.u-margin-bottom-01 {
    margin-bottom: .125rem
}

.u-margin-bottom-02 {
    margin-bottom: .25rem
}

.u-margin-bottom-03 {
    margin-bottom: .5rem
}

.u-margin-bottom-04 {
    margin-bottom: 1rem
}

.u-margin-left-01 {
    margin-left: .125rem
}

.u-margin-left-02 {
    margin-left: .25rem
}

.u-margin-left-03 {
    margin-left: .5rem
}

.u-margin-left-04 {
    margin-left: 1rem
}

.u-width-auto {
    width: auto
}

.u-width-100 {
    width: 100%
}

#businessTable .tablesorter-header {
    cursor: pointer;
    outline: none;
}
#businessTable .tablesorter-header-inner::after {
    font-size: 10px;
    margin-left: 2px;
}

.l-footer-02__copyright {
    display: flex;
    align-items: center;
    color: #666;
    font-size: .825rem;
    font-weight: 500;
    align-content: center;
    justify-content: center;
}

@media screen and (min-width: 370px) {
    .l-footer-02__copyright {
        font-size:.85rem;
    }
}

@media screen and (min-width: 370px) and (min-width:960px) {
    .l-footer-02__tx-link--sub-navigation {
        font-weight:500
    }

    .l-footer-02__copyright {
        margin: auto
    }
}

@media screen and (max-width: 960px) {
    .half-scale {
        zoom:0.5;
        /*transform: scale(0.5);*/
        /*transform-origin: top left;*/
        /*width: 200%;*/
        /*margin:calc(413px / 4 * -1) calc(640px / 4 * -1);*/
    }
}


.c-input-review {
    display: flex;
    padding: .5rem 1rem;
    background: #f2f2f2;
    border: 1px solid #666;
    border-radius: 4px;
    cursor: pointer
}

.c-input-review.is-active {
    background: var(--brand-checked-color)
}

.c-input-review__inner--check {
    padding-top: .125rem
}

.c-input-review__inner--content {
    flex: 1;
    padding-left: .25rem
}

@media screen and (min-width: 960px) {
    .c-input-review__inner--content {
        padding-left:.5rem
    }
}

.c-input-review__name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.review_box_btn {
    max-width: 50rem;
    margin-top: 3rem;
}

@media screen and (min-width: 960px) {
    .review_box {
        display: flex;
        align-items: center;
        flex-direction: column;
    }
}

.c-tab-top {
    padding-top: 1.5rem;
}

.c-tab-top__inner {
    display: flex;
    position: relative
}

.c-tab-top__inner:after,.c-tab-top__inner:before {
    position: absolute;
    height: 1px;
    content: "";
    border-bottom: 1px solid #666;
    bottom: 0
}

.c-tab-top__inner:before {
    left: 0;
    width: 0
}

@media screen and (min-width: 560px) {
    .c-tab-top__inner:before {
        left:-1.5rem;
        width: 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width:960px) {
    .c-tab-top__inner:before {
        left:0;
        width: .5rem
    }
}

.c-tab-top__inner:after {
    right: -1rem;
    width: 1rem
}

@media screen and (min-width: 560px) {
    .c-tab-top__inner:after {
        right:-1.5rem;
        width: 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width:960px) {
    .c-tab-top__inner:after {
        right:0;
        width: .5rem
    }
}

.c-tab-top__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 3rem;
    background: #f2f2f2;
    border-bottom: 1px solid #666;
    text-decoration: none
}

.c-tab-top__link:first-child {
    border-top-left-radius: 4px
}

.c-tab-top__link:last-child {
    border-right: 1px solid #666;
    border-top-right-radius: 4px
}

.c-tab-top__link.is-active {
    background: #fcfcfc;
    border-bottom: 1px solid #fcfcfc;
    pointer-events: none
}

.c-tab-top__link.is-active .c-tab-top__text {
    color: var(--brand-main-color);
    font-weight: 600
}

.c-tab-top__link.is-active .c-tab-top__ico {
    background: var(--brand-main-color)
}

.c-tab-top__text {
    font-size: .75rem;
    color: #666;
    font-weight: 500
}

@media screen and (min-width: 370px) {
    .c-tab-top__text {
        font-size:.875rem
    }
}

@media screen and (min-width: 370px) and (min-width:960px) {
    .c-tab-top__text {
        font-size:1rem
    }
}

.c-tab-top__ico {
    display: block;
    position: relative;
    width: .75rem;
    height: .75rem;
    margin-right: .25rem;
    background: #666;
    border-radius: 100%
}

.c-tab-top__ico:after {
    position: absolute;
    top: 50%;
    left: calc(50% - 1px);
    -webkit-transform: translate(-50%,-50%) rotate(45deg);
    transform: translate(-50%,-50%) rotate(45deg);
    width: 3px;
    height: 3px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: ""
}

.c-tab-top__inner {
    display: flex;
    position: relative
}

.c-tab-top__inner:after,.c-tab-top__inner:before {
    position: absolute;
    height: 1px;
    content: "";
    border-bottom: 1px solid #666;
    bottom: 0
}

.c-tab-top__inner:before {
    left: -1rem;
    width: 1rem
}

@media screen and (min-width: 560px) {
    .c-tab-top__inner:before {
        left:-1.5rem;
        width: 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width:960px) {
    .c-tab-top__inner:before {
        left:0;
        width: 0
    }
}

.c-tab-top__inner:after {
    right: -1rem;
    width: 1rem
}

@media screen and (min-width: 560px) {
    .c-tab-top__inner:after {
        right:-1.5rem;
        width: 1.5rem
    }
}

@media screen and (min-width: 560px) and (min-width:960px) {
    .c-tab-top__inner:after {
        right:0;
        width: 0
    }
}

.c-tab-top__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 3rem;
    background: #f2f2f2;
    border-bottom: 1px solid #666;
    text-decoration: none
}

.c-tab-top__link:first-child {
    border-top-left-radius: 4px
}

.c-tab-top__link:last-child {
    border-right: 1px solid #666;
    border-top-right-radius: 4px
}

.c-tab-top__link.is-active {
    background: #fcfcfc;
    border-bottom: 1px solid #fcfcfc;
    pointer-events: none
}

.c-tab-top__link.is-active .c-tab-top__text {
    color: var(--brand-main-color);
    font-weight: 600
}

.c-tab-top__link.is-active .c-tab-top__ico {
    background: var(--brand-main-color)
}

.c-tab-top__text {
    font-size: .75rem;
    color: #666;
    font-weight: 500
}

@media screen and (min-width: 370px) {
    .c-tab-top__text {
        font-size:.875rem
    }
}

@media screen and (min-width: 370px) and (min-width:960px) {
    .c-tab-top__text {
        font-size:1rem
    }
}

.c-tab-top__ico {
    display: block;
    position: relative;
    width: .75rem;
    height: .75rem;
    margin-right: .25rem;
    background: #666;
    border-radius: 100%
}

.c-tab-top__ico:after {
    position: absolute;
    top: 50%;
    left: calc(50% - 1px);
    -webkit-transform: translate(-50%,-50%) rotate(45deg);
    transform: translate(-50%,-50%) rotate(45deg);
    width: 3px;
    height: 3px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: ""
}

.c-tab-bottom__inner {
    display: flex;
    position: relative
}

.c-tab-bottom__inner:after,.c-tab-bottom__inner:before {
    position: absolute;
    top: 0;
    height: 1px;
    border-top: 1px solid #666;
    content: ""
}

@media screen and (min-width: 960px) {
    .c-tab-top__link {
        min-height:3.5rem
    }

    .c-tab-top__link:hover .c-tab-top__text {
        text-decoration: underline
    }

    .c-tab-bottom__inner {
        padding: 0 .5rem
    }
}

.c-input-postalcode__ico,.c-tab-top__link {
    border-top: 1px solid #666;
    border-left: 1px solid #666
}




.review-wrap-point {
    display:flex;
    flex-wrap: wrap;
    padding: 15px 0;
}
.review-wrap-point:not(:first-child) {
    border-top: solid 1px #dddddd;
}

.review-label-point:nth-child(1), .review-output-point:nth-child(1) {
    width: 50%;
    text-align: center;
}
.review-label-point:nth-child(2), .review-output-point:nth-child(2) {
    width: 50%;
    text-align: center;
}

.review-label-point {
    margin-bottom: 0;
    text-align: center;
    color: #666666;
    font-size: 14px;
}

.review-output-point {
    line-height: 1.25rem;
    font-size: 14px;
}


.review-wrap-opinion {
    display:flex;
    flex-wrap: wrap;
    padding: 15px 0;
}
.review-wrap-opinion:not(:first-child) {
    border-top: solid 1px #dddddd;
}

.review-label-opinion:nth-child(1), .review-output-opinion:nth-child(1) {
    width: 15%;
    text-align: center;
}
.review-label-opinion:nth-child(2), .review-output-opinion:nth-child(2) {
    width: 10%;
    text-align: center;
}
.review-label-opinion:nth-child(3), .review-output-opinion:nth-child(3) {
    width: 75%;
}

.review-label-opinion {
    margin-bottom: 0;
    text-align: center;
    color: #666666;
    font-size: 14px;
}

.review-output-opinion {
    line-height: 1.25rem;
    font-size: 14px;
}

.review-output-opinion-google-text{
    color: #9c9a9a;
}


/* 横スクロールテーブル対応 */

.slider-table{
    overflow: auto;
    width: 100%;
}
.slider-table table{
    margin: 0;
    border-spacing: 0;

}
.slider-table td{
    white-space: nowrap;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    background: #FFF;
    padding: 5px;
}
.slider-table th{
    white-space: nowrap;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    background: #f2f2f2;
    position: sticky;
    top: 0;
    left: 0;
}
.slider-table tr:first-child th{
    border-top: 1px solid #999;
}
.slider-table th:first-child{
    border-left: 1px solid #999;
}
.slider-table tr:first-child th:first-child{
    z-index: 1;
}
.ranking_area {
    font-size: .75rem;
}
.ranking_note {
    font-size: .875rem;
    color: #666;
    padding-left: 40px;
}
@media screen and (max-width: 960px) {
    .ranking_note {
        font-size:.6rem;
        padding-left: 15px;
    }
}