@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary
{
    display: block;
}

html
{
    font-family: sans-serif;

        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;
}

a
{
    background: transparent;
}

a:focus
{
    outline: thin dotted;
}

a:active,
a:hover
{
    outline: 0;
}

abbr[title]
{
    border-bottom: 1px dotted;
}

b,
strong,
.strong
{
    font-weight: bold;
}

dfn,
em,
.em
{
    font-style: italic;
}

hr
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    height: 0;
}

p
{
    -webkit-hyphens: auto;
            hyphens: auto; 

    -epub-hyphens: auto;
        -ms-hyphens: auto;
}

pre
{
    margin: 0;

    white-space: pre-wrap;
}

dl,
menu,
ol,
ul
{
    margin: 1em 0;
}

dd
{
    margin: 0;
}

ol,
ul
{
    padding: 0;

    list-style-type: none;
}

img
{
    border: 0;
}

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

figure
{
    margin: 0;
}

button,
input,
select,
textarea
{
    font-family: inherit;
    font-size: 100%;

    margin: 0;
}

button,
input
{
    line-height: normal;
}

button,
select
{
    text-transform: none;
}

button,
html input[type='button'],
input[type='reset'],
input[type='submit']
{
    cursor: pointer; 

    -webkit-appearance: button;
}

input[type='submit']
{
    border: none;
}

button[disabled],
html input[disabled]
{
    cursor: default;
}

input[type='checkbox'],
input[type='radio']
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
}

input[type='search']
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box; 

    -webkit-appearance: textfield;
}

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner
{
    padding: 0; 

    border: 0;
}

textarea
{
    overflow: auto;

    vertical-align: top;
}

table
{
    border-spacing: 0; 
    border-collapse: collapse;
}

*
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

html
{
    position: relative;

    overflow: auto; 

    height: 100%;
}

body
{
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 100%;
    line-height: 1.5;

    position: static;

    overflow: hidden; 

    color: #3c3c3c;
    background-color: #fff;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

    vertical-align: bottom;
}

a
{
    text-decoration: none; 

    color: #13448f;
}

a:hover
{
    text-decoration: underline;
}

p
{
    font-size: 100%;
    line-height: 170%;
}

div,
p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
a,
form,
input,
object,
dt,
dd,
dl,
iframe,
label
{
    margin: 0;
    padding: 0;
}

ol,
ul,
li,
dl,
dt,
dd
{
    list-style-position: outside;
    list-style-type: none; 
    list-style-image: none;
}

figure
{
    margin: 0;
}

a
{
    -webkit-transition: opacity .3s ease-out;
            transition: opacity .3s ease-out; 
    text-decoration: underline;

    color: #0e9a43;
}
a:hover
{
    text-decoration: none;

    opacity: .8;
}

.bold
{
    font-weight: bold;
}

.indent
{
    margin-left: 1em;
}

.flex
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.tl
{
    text-align: left;
}

.tc
{
    text-align: center !important;
}

.tr
{
    text-align: right;
}

.red
{
    color: #b81a35;
}

.blue
{
    color: #003d9a;
}

.roboto
{
    font-family: 'Roboto', sans-serif;
}

input,
button,
textarea,
select
{
    margin: 0;
    padding: 0;

    border-radius: 0;
    outline: none;
    background: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

input::-ms-clear
{
    visibility: hidden;
}

input::-ms-reveal
{
    visibility: hidden;
}

select::-ms-expand
{
    display: none;
}

input[type='text'],
input[type='number'],
input[type='email'],
input[type='password']
{
    font-size: 16px;

    width: 100%;
    height: 40px;
    padding: 0 10px;

    border: 1px solid #003d9a;
    border-radius: 5px; 
    background: #fff;
}
input[type='text']::-webkit-input-placeholder,
input[type='number']::-webkit-input-placeholder,
input[type='email']::-webkit-input-placeholder,
input[type='password']::-webkit-input-placeholder
{
    color: #c8c8c8;
}
input[type='text']::-moz-placeholder,
input[type='number']::-moz-placeholder,
input[type='email']::-moz-placeholder,
input[type='password']::-moz-placeholder
{
    color: #c8c8c8;
}
input[type='text']:-ms-input-placeholder,
input[type='number']:-ms-input-placeholder,
input[type='email']:-ms-input-placeholder,
input[type='password']:-ms-input-placeholder
{
    color: #c8c8c8;
}
input[type='text']::-ms-input-placeholder,
input[type='number']::-ms-input-placeholder,
input[type='email']::-ms-input-placeholder,
input[type='password']::-ms-input-placeholder
{
    color: #c8c8c8;
}
input[type='text']::placeholder,
input[type='number']::placeholder,
input[type='email']::placeholder,
input[type='password']::placeholder
{
    color: #c8c8c8;
}
input[type='text']:valid,
input[type='number']:valid,
input[type='email']:valid,
input[type='password']:valid
{
    border: 1px solid #003d9a; 
    background: #fff;
}
input[type='text']:focus,
input[type='number']:focus,
input[type='email']:focus,
input[type='password']:focus
{
    border: 1px solid #00a7eb; 
    background-color: #eef8fd;
}
input[type='text']:required,
input[type='number']:required,
input[type='email']:required,
input[type='password']:required
{
    border: 1px solid #003d9a; 
    background: #e5f5ec;
}
input[type='text']:disabled,
input[type='number']:disabled,
input[type='email']:disabled,
input[type='password']:disabled
{
    cursor: not-allowed; 

    background: #a7a7a7;
}

input[type='radio'],
input[type='checkbox']
{
    display: none;
}

input[type='number']
{
    -moz-appearance: textfield;
}
input[type='number']::-webkit-outer-spin-button,
input[type='number']::-webkit-inner-spin-button
{
    margin: 0; 

    -webkit-appearance: none;
}

@media screen and (max-width: 767px)
{
    a
    {
        -webkit-transition: none;
                transition: none;
    }
    a:hover
    {
        opacity: 1;
    }
}

.header
{
    position: fixed;
    z-index: 997;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 80px;
    padding: 10px 60px 10px 40px;

    color: #333; 
    background: #fff;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header-inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header-logo
{
    line-height: 1.0;

    height: 40px; 
    margin-right: 24px;
}
.header-logo img
{
    vertical-align: top;
}
.header-lead
{
    font-size: 14px; 
    font-weight: bold;
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@-webkit-keyframes anime
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    68%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    73%
    {
        -webkit-transform: scale(1.1);
                transform: scale(1.1);
    }
    80%
    {
        -webkit-transform: scale(.9);
                transform: scale(.9);
    }
    90%
    {
        -webkit-transform: scale(1.05);
                transform: scale(1.05);
    }
    100%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

@keyframes anime
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    68%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    73%
    {
        -webkit-transform: scale(1.1);
                transform: scale(1.1);
    }
    80%
    {
        -webkit-transform: scale(.9);
                transform: scale(.9);
    }
    90%
    {
        -webkit-transform: scale(1.05);
                transform: scale(1.05);
    }
    100%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

.menu
{
    position: fixed;
    z-index: 20; 
    top: 0;
    right: 0;

    width: 460px;
}
.menu-btn
{
    position: absolute;
    top: 16px;
    right: 16px;

    display: block;
}

.menu-trigger
{
    position: absolute;
    z-index: 100;
    top: 0;
    right: 0;

    width: 80px;
    height: 80px;

    cursor: pointer; 
    text-align: center;
}
.menu-trigger::before
{
    display: block;

    padding-top: 100%; 

    content: '';
}
.menu-trigger.is-open
{
    background-color: transparent; 
    -webkit-box-shadow: none;
            box-shadow: none;
}
.menu-trigger.is-open span:nth-of-type(1)
{
    -webkit-transform: translateY(13px) rotate(-45deg);
            transform: translateY(13px) rotate(-45deg);

    background-color: #000;
}
.menu-trigger.is-open span:nth-of-type(2)
{
    -webkit-transform: translateX(24px);
            transform: translateX(24px);

    opacity: 0;
}
.menu-trigger.is-open span:nth-of-type(3)
{
    -webkit-transform: translateY(-11px) rotate(45deg);
            transform: translateY(-11px) rotate(45deg);

    background-color: #000;
}
.menu-trigger.is-open small
{
    font-size: 12px; 

    color: #000;
}
.menu-trigger span
{
    position: absolute;
    right: 0;
    left: 0;

    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 50%;
    height: 2px;
    margin: auto; 

    -webkit-transition: all .4s;
            transition: all .4s;

    border-radius: 4px;
    background-color: #000;
}
.menu-trigger span:nth-of-type(1)
{
    top: 18px;
}
.menu-trigger span:nth-of-type(2)
{
    top: 30px;
}
.menu-trigger span:nth-of-type(3)
{
    top: 42px;
}
.menu-trigger small
{
    font-weight: bold; 
    line-height: 1;

    position: absolute;
    top: 64%;
    left: 0;

    width: 100%;
}

.menu-bg
{
    position: fixed;
    z-index: 10; 
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 0, 0, .5);
}

.globalnav
{
    position: fixed;
    z-index: 90;
    top: 0;
    right: 0;

    width: 460px;
    height: 100%;
    padding-top: 80px;

    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    text-align: left; 

    opacity: 0;
    background: #e9e3c7;
}
.globalnav ul
{
    border-top: solid 2px #fff;
}
.globalnav a
{
    font-size: 20px;
    font-weight: bold;
    line-height: 1; 

    position: relative;

    display: block;

    padding: 16px 24px;

    text-decoration: none;

    color: #333;
    border-bottom: solid 2px #fff;
}
.globalnav a:after
{
    font-family: 'Material Icons';
    line-height: 1;

    position: absolute;
    top: 50%;
    right: 12px;

    margin-top: -.5em;

    content: '\e315';
    pointer-events: none;

    color: #9b0303;
}
.globalnav a.hoken:after
{
    right: 16px;

    width: 14px;
    height: 10px;
    margin-top: -5px;

    content: '';

    background: url('/static/img/common/ic_blank_menu.png') no-repeat 0 0;
    background-size: 14px auto;
}

.footer
{
    padding-top: 20px;
}
.footer-float
{
    position: fixed;
    z-index: 100;
    top: 50%;
    right: -290px;

    margin-top: -83px;

    cursor: pointer;
    -webkit-transition: all 300ms 0s ease;
            transition: all 300ms 0s ease;
}
.footer-float:hover
{
    right: -280px;
}
.footer-float.active
{
    right: 0;
}
.footer-white
{
    position: relative;

    padding: 30px 24px;

    border-top: solid 1px #dcdcdc;
    background: #fff;
}
.footer-white p
{
    font-size: 10px;
}
.footer-white-text:nth-child(1)
{
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.footer-white-text__wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-right: 80px;
}
.footer-logo
{
    margin-bottom: 8px;
}
.footer-privacy
{
    position: absolute;
    right: 20px; 
    bottom: 10px;
}
.footer-link
{
    font-size: 12px;
    line-height: 1;

    position: relative;

    display: inline-block;

    padding-right: calc(1em + 8px);

    text-decoration: none;
}
.footer-link:after
{
    font-family: 'Material Icons';
    font-size: 2em;
    line-height: 1; 

    position: absolute;
    top: 50%;
    right: 0;

    margin-top: -.5em;

    content: '\e315';
}
.footer-area
{
    padding: 0 24px; 

    text-align: center;
}
.footer-lead
{
    font-size: 18px;
    font-weight: bold; 

    margin-bottom: 1em;

    color: #333;
}
.footer-title
{
    font-size: 28px;
    font-weight: bold; 

    margin-bottom: .5em;

    color: #333;
}
.footer-time
{
    font-size: 18px;
    font-weight: bold;

    margin-bottom: 10px; 

    color: #333;
}
.footer-tel
{
    font-size: 42px;
    font-weight: bold;
    line-height: 1; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 10px;

    color: #333;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.footer-tel i
{
    font-size: 12px;
    font-style: normal;
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 68px;
    height: 26px;
    margin-right: 15px; 

    color: #333;
    border: 1px solid #606060;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.footer-address
{
    font-size: 18px;
    font-weight: bold; 

    margin-bottom: 20px;

    color: #333;
}
.footer-ca
{
    position: relative;

    padding: 20px 24px;

    background: #e8e7e7;
}
.footer-nav
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-bottom: 20px; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.footer-nav li
{
    line-height: 1;
}
.footer-nav li:last-of-type a
{
    padding-right: 0; 

    border-right: none;
}
.footer-nav a
{
    font-size: 12px;

    padding: 0 8px;

    text-decoration: none; 

    color: #333;
    border-right: solid 1px #333;
}
.footer-nav a:hover
{
    text-decoration: underline;
}
.footer-box
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.footer-company
{
    font-size: 20px;
    font-weight: bold;

    color: #9b0303;
}
.footer-copy
{
    font-size: 12px; 

    margin-left: auto;

    color: #333;
}
.footer-pagetop
{
    position: absolute;
    top: -80px;
    right: 20px;

    width: 60px;
    height: 60px;

    cursor: pointer; 

    border-radius: 100%;
    background: #9b0303;
}
.footer-pagetop:after
{
    font-family: 'Material Icons';
    font-size: 1.8em;
    line-height: 1.8em;

    position: absolute;
    top: 50%;
    left: 50%;

    width: 1.8em;

    content: '\e316';
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    text-align: center; 

    color: #fff;
}
.footer-pagetop:hover
{
    opacity: .8;
}

body.fixed
{
    position: fixed;

    width: 100%;
}

.js-modal
{
    display: none;
}

.modal
{
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    overflow-y: scroll;

    width: 100%;
    height: 100%;
    padding: 0 20px;

    background: rgba(0, 0, 0, .3);

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}
.modal__content
{
    position: relative;

    overflow: hidden; 

    width: 100%;
    max-width: 880px;
    margin: 50px auto;

    text-align: center;

    border-radius: 10px;
    background: #fff;
}

.pc-view
{
    display: block;
}

.sp-view
{
    display: none;
}

@media screen and (max-width: 767px)
{
    .menu-trigger
    {
        top: 0;
        right: 2vw;

        width: 50px;
    }
    .menu-trigger.is-open span:nth-of-type(1)
    {
        -webkit-transform: translateY(7px) rotate(-45deg);
                transform: translateY(7px) rotate(-45deg);
    }
    .menu-trigger.is-open span:nth-of-type(2)
    {
        -webkit-transform: translateX(20px);
                transform: translateX(20px);
    }
    .menu-trigger.is-open span:nth-of-type(3)
    {
        -webkit-transform: translateY(-7px) rotate(45deg);
                transform: translateY(-7px) rotate(45deg);
    }
    .menu-trigger.is-open small
    {
        font-size: 10px;
    }
    .menu-trigger span:nth-of-type(1)
    {
        top: 10px;
    }
    .menu-trigger span:nth-of-type(2)
    {
        top: 17px;
    }
    .menu-trigger span:nth-of-type(3)
    {
        top: 24px;
    }
    .menu-trigger small
    {
        font-size: 10px; 

        top: 40%;
    }
    .globalnav
    {
        width: 90vw;
        padding-top: 50px;
    }
    .globalnav ul
    {
        border-top: solid 1px #fff;
    }
    .globalnav a
    {
        font-size: 14px; 

        padding: 12px 12px;

        border-bottom: solid 1px #fff;
    }
    .globalnav a.hoken:after
    {
        right: 14px;

        width: 11px;
        height: 8px;
        margin-top: -7px;

        background: url('/static/img/icon_blank_menu.png') no-repeat 0 0;
        background-size: 11px auto;
    }
    .header
    {
        height: 54px;
        padding: 8px;

        text-align: center;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .header-inner
    {
        display: block;

        text-align: center;
    }
    .header-logo
    {
        font-size: 1%;
        line-height: 1; 

        height: auto;
        margin-right: 0;
        padding: 2px 0 10px;
    }
    .header-logo img
    {
        width: 150px;

        vertical-align: top;
    }
    .header-lead
    {
        font-size: 10px; 

        margin-top: 0;
        padding: 0;
    }
    .header-btn
    {
        margin-right: 56px;
        margin-left: 10px; 
        padding-right: 0;
    }
    .header-btn a
    {
        width: 86px;
        height: 36px;

        opacity: 1;
        background: url('/static/img/common/bt_check_header_sp.png') no-repeat 0 0;
        background-size: 86px 36px;
    }
    .footer
    {
        padding-top: 40px;
    }
    .footer-float
    {
        display: none;
    }
    .footer-white
    {
        padding: 10px 10px 30px;
    }
    .footer-white-text
    {
        width: 100%;
        margin-bottom: 10px;
    }
    .footer-white-text__wrapper
    {
        display: block;

        padding-right: 0;
    }
    .footer-privacy
    {
        top: 10px;
        right: 20px; 
        bottom: auto;
    }
    .footer-lead
    {
        font-size: 12px;
    }
    .footer-title
    {
        font-size: 16px; 

        margin-bottom: 0;
    }
    .footer-link
    {
        padding-right: 16px;
    }
    .footer-link:after
    {
        font-size: 1.5em;
    }
    .footer-time
    {
        font-size: 10px;
    }
    .footer-tel
    {
        font-size: 30px;
    }
    .footer-address
    {
        font-size: 10px; 

        margin-bottom: 40px;
    }
    .footer-ca
    {
        padding: 10px; 

        text-align: center;
    }
    .footer-nav
    {
        padding-bottom: 20px; 

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .footer-nav li
    {
        margin-bottom: 4px;
    }
    .footer-nav a
    {
        font-size: 10px; 

        padding: 0 8px;
    }
    .footer-box
    {
        display: block;
    }
    .footer-box .footer-logo
    {
        margin-left: auto;
    }
    .footer-logo
    {
        width: 160px;
        margin: 0 auto 8px 0;
    }
    .footer-copy
    {
        font-size: 10px;
    }
    .footer-pagetop
    {
        top: -36px;

        width: 32px;
        height: 32px;
    }
    .footer-pagetop:after
    {
        font-size: 1.4em;
        line-height: 1.4em; 

        width: 1.4em;
    }
    .footer-btn_area
    {
        height: 56px; 
        margin-top: 40px;
    }
    .footer-btn_area a
    {
        position: fixed;
        bottom: 0; 
        left: 0;

        display: block;

        width: 269px;
        height: auto;
    }
    .footer-btn_area a.static
    {
        position: static;
    }
    .footer-btn
    {
        width: 268px;
    }
    .footer-btn img
    {
        width: 100%;
        height: auto;
    }
    .footer-company
    {
        font-size: 16px;
    }
    .modal
    {
        width: 100%;
        padding: 0 10px;
    }
    .modal__content
    {
        margin: 20px 0;

        border-radius: 6px;
    }
    .pc-view
    {
        display: none;
    }
    .sp-view
    {
        display: block;
    }
}

.visual
{
    margin: 80px 0 0;
    padding: 20px 24px; 

    background: #9b0303;
}
.visual.procedure
{
    padding: 20px;
}
.visual-content
{
    position: relative; 

    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}
.visual-btn_01
{
    position: absolute;
    top: 3.51171%;
    left: 3.22581%; 

    display: block;

    width: 11.69355%;
}
.visual-btn_02
{
    position: absolute;
    top: 65.71906%;
    left: 62.25806%;

    display: block;

    width: 27.90323%;

    cursor: pointer;
}
.visual-faq,
.visual-procedure
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 1080px;
    margin: 0 auto; 
    padding: 40px 20px 30px 20px;

    background: #fff;
}
.visual-faq__img,
.visual-procedure__img
{
    display: block;

    margin: 0 auto 40px;
}
.visual-faq__title,
.visual-procedure__title
{
    font-size: 48px;
    font-weight: bold;
    line-height: 1;
    line-height: 1; 

    max-width: 1000px;
    margin: 0 auto 10px;

    text-align: center;

    color: #9b0303;
}
.visual-faq__lead,
.visual-procedure__lead
{
    font-size: 24px;
    font-weight: bold;

    padding-bottom: 25px;

    text-align: center;

    color: #9b0303;
}

.anchor_link
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 750px;
    margin: 0 auto;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.anchor_link li
{
    display: block;

    margin: 0 10px 10px;
}
.anchor_link li a
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1;

    position: relative; 

    display: block;

    padding: 15px 50px 15px 20px;

    text-align: center;
    white-space: nowrap;
    text-decoration: none;

    color: #fff;
    border-radius: 6px;
    background: #a58342;
}
.anchor_link li a::after
{
    position: absolute;
    top: 50%;
    right: 20px;

    display: block;

    width: 20px;
    height: 12px;
    margin-top: -6px; 

    content: '';

    background: url('/static/img/procedure/ic_btn.png') no-repeat center center;
}

.content
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.content.features
{
    padding: 50px 24px 80px;
}
.content.insurance
{
    padding: 75px 24px 80px; 

    background: #e9e3c7;
}
.content.schedule
{
    padding: 70px 24px 80px;
}
.content.lineup
{
    padding: 60px 24px 60px; 

    border-top: 10px solid #cfcfcf;
}
.content.procedure
{
    padding: 70px 24px 70px; 

    background: #e9e3c7;
}
.content.procedure:nth-child(even)
{
    background: #fff;
}
.content.faq-01
{
    padding: 40px 24px 80px; 

    background: #fff;
}
.content.faq-02
{
    padding: 40px 24px 80px; 

    background: #e9e3c7;
}
.content.faq-other
{
    padding: 60px 24px 60px; 

    border-top: 10px solid #cfcfcf;
}
.content-bottom_link
{
    padding: 60px 24px 80px;
}
.content-title
{
    font-size: 46px;
    font-weight: bold;
    line-height: 1;

    padding-bottom: 40px; 

    text-align: center;

    color: #9b0303;
}
.content-title span
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;

    display: block;

    padding-top: 8px;
    padding-bottom: 8px;
}
.content-title.fs42
{
    font-size: 42px;
}
.content-title.contact
{
    color: #333;
}
.content.banner
{
    padding: 50px 24px 0;

    text-align: center;
}
.content.banner a
{
    display: inline-block;
}
.content.banner a img
{
    width: auto;
}

.bt_check
{
    display: block;

    width: 476px;
    margin: 0 auto;
}

.features-box
{
    max-width: 910px;
    margin: 0 auto 30px; 
    padding: 15px 36px;

    border: 4px solid #e8e7e7;
    border-radius: 10px;
}
.features-box:nth-last-of-type(1)
{
    margin-bottom: 80px;
}

.features-header
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.features-header::before
{
    position: absolute;
    top: 26px;
    right: 0;

    display: block;

    width: 36px;
    height: 36px;

    content: '';
    -webkit-transition: all .3s;
            transition: all .3s; 

    background: url('/static/img/common/ic_toggle_01.png');
    background-size: 36px 36px;
}
.features-header.active::before
{
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
}

.features-num
{
    display: block;

    width: 88px;
    margin-right: 10px;
}
.features-num img
{
    position: relative;
}

.features-title
{
    font-size: 28px;
    font-weight: bold;
    line-height: 1.2;

    width: calc(100% - 98px - 40px); 

    color: #333;
}
.features-title span
{
    font-size: 20px;
    line-height: 1;

    display: block;

    margin-bottom: 5px; 

    color: #333;
}
.features-title span i
{
    font-size: 24px;
    font-style: normal !important;
}
.features-title span.fs18
{
    font-size: 18px;
}
.features-title span.fs18 strong
{
    font-size: inherit;
}
.features-title span.fs18 strong.red
{
    font-size: 20px;
}
.features-title span.fs18 strong.red span
{
    font-size: 24px;
    font-weight: bold;

    display: inline-block;

    color: inherit;
}
.features-title__tips
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-top: 3px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.features-title__tips span
{
    font-size: 18px;
    font-weight: bold;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 30px;
    margin-right: 5px; 
    padding: 0 24px;

    color: #fff;
    border-radius: 15px;
    background: #9b0303;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.features-title__tips span i
{
    font-size: 14px; 
    font-style: normal;
}
.features-title img
{
    display: inline-block;

    margin-right: 5px;
}

.features-sub_title
{
    font-size: 36px;

    text-align: center; 

    color: #333;
}

.features-content
{
    display: none; 

    max-width: 830px;
    margin: 15px auto 0;
    padding-top: 40px;

    border-top: 4px solid #e8e7e7;
}

.features-lead
{
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5; 

    margin-bottom: 25px;

    text-align: center;

    color: #333;
}
.features-lead span
{
    font-size: 36px;
}

.features-text
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5;

    margin-bottom: 40px; 

    text-align: center;

    color: #333;
}
.features-text__iryo_01
{
    font-size: 22px;
    font-weight: bold;

    margin-bottom: 40px; 
    padding: 30px 30px 20px;

    text-align: center;

    color: #333;
    border-radius: 10px;
    background: #e0f1ff;
}
.features-text__iryo_01 span
{
    color: #ba1631;
}
.features-text__iryo_02
{
    font-size: 24px !important;
    font-weight: bold !important;
    line-height: 1.4 !important; 

    margin-bottom: 10px;

    text-align: center !important;

    color: #003d9a !important;
}
.features-text__iryo_02 span
{
    font-size: 28px;
}
.features-text__iryo_02 span span
{
    font-size: 36px;
}
.features-text__iryo_03
{
    font-size: 20px !important;
    font-weight: bold !important;
    line-height: 1.5 !important;

    margin-bottom: 20px; 

    text-align: left !important;

    color: #003d9a !important;
}
.features-text__iryo_04
{
    font-size: 24px !important;
    font-weight: bold !important;
    line-height: 1.4 !important;

    margin-bottom: 40px; 

    text-align: center !important;

    color: #003d9a !important;
}
.features-text span
{
    font-size: 14px;

    display: block;

    text-align: center;
}

.features-notes
{
    font-size: 12px;

    max-width: 710px;
    margin: 0 auto 30px;
}

.features-btn
{
    font-size: 22px;
    font-weight: bold;
    line-height: 52px;

    position: relative; 

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 580px;
    height: 60px;
    margin: 0 auto 20px;

    text-align: center;
    text-decoration: none;

    color: #9b0303;
    border: 4px solid #9b0303;
    border-radius: 6px;
    background: #fff;
}
.features-btn::after
{
    position: absolute;
    top: 50%;
    right: 20px;

    display: block;

    width: 12px;
    height: 20px;
    margin-top: -10px; 

    content: '';

    background: url('/static/img/common/ic_link.png');
}

.features-01__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 830px;
    margin: 0 auto 30px;
    padding: 40px 24px 32px;

    border-radius: 10px;
    background: #f0f0f0;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.features-01__inner img
{
    display: block;

    margin-bottom: 32px;
}
.features-01__inner p
{
    font-size: 14px;

    width: 100%;

    text-align: center;
}
.features-01__inner .cancer-notes
{
    font-size: 14px; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 640px;
    margin: 0 auto;

    text-align: left;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.features-01__inner .cancer-notes dd
{
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.features-01__inner h3
{
    font-size: 24px;

    margin-bottom: 20px; 

    text-align: center;
}

.features-02__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 32px;
    padding-top: 15px;
}
.features-02__list li
{
    position: relative;

    width: calc(100% - 60px / 3);
    margin-right: 30px;
    padding: 50px 0 30px;

    text-align: center; 

    border-radius: 10px;
    background: #f0f0f0;
}
.features-02__list li::after
{
    position: absolute;
    top: -10px;
    left: -10px; 

    display: block;

    width: 56px;
    height: 56px;

    content: '';

    background: url('/static/img/common/ic_check.png');
}
.features-02__list li .image
{
    display: block;

    margin: 0 auto 15px;
}
.features-02__list li .text
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: calc(100% - 114px - 15px);

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.features-02__list li .text p
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4; 

    width: 100%;

    text-align: center;

    color: #333;
}
.features-02__list li .text-set
{
    font-size: 14px !important; 

    display: inline-block;
}
.features-02__list li:nth-last-child(1)
{
    margin-right: 0;
}

.features-03 img
{
    display: block;
}

.features-03__img01
{
    margin-bottom: 23px;
}

.features-03__title
{
    font-size: 24px;
    font-weight: bold;
    line-height: 60px;

    position: relative; 

    text-align: center;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #a58342;
}
.features-03__title img
{
    position: absolute;
    top: 50%;
    left: 10px;

    display: block;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

.features-03__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 830px;
    margin: 0 auto 30px;
    padding: 40px 24px 32px;

    border-radius: 10px;
    background: #f0f0f0;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.features-03__inner img
{
    display: block;

    margin-bottom: 32px;
}
.features-03__inner p
{
    font-size: 14px;

    width: 100%;

    text-align: center;
}

.features-03__content
{
    margin-bottom: 30px; 
    padding: 36px 18px 20px;

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #f0f0f0;
}

.features-03__inner
{
    margin-bottom: 20px; 

    border-radius: 10px;
    background: #fff;
}
.features-03__inner.pb
{
    padding-bottom: 10px;
}

.features-03__img03_2
{
    margin-bottom: 32px;
}

.features-03__img03_3
{
    margin-bottom: 30px;
}

.features-03__img03_4
{
    margin-bottom: 20px;
}

.features-03__img03_5
{
    margin-bottom: 26px;
}

.features-03__img03_6
{
    margin-bottom: 26px;
}

.features-04
{
    padding-bottom: 20px;
}
.features-04__inner
{
    position: relative; 

    max-width: 830px;
    margin: 0 auto 43px;
    padding: 30px 30px 38px;

    border-radius: 10px;
    background: #f0f0f0;
}
.features-04__inner img
{
    display: block;

    width: auto;
    margin-bottom: 8px;
}
.features-04__inner p
{
    font-size: 12px;
    line-height: 1; 

    text-align: right;

    color: #787878;
}
.features-04 .img_04_01
{
    display: block; 

    width: 100%;
    max-width: 737px !important;
    margin: 0 auto 20px;
}
.features-04 .img_04_text
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    margin: 0 auto;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.features-04 .img_04_01_iryo
{
    display: block;

    margin: 0 auto;
}
.features-04__content
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box; 
    max-width: 706px;
    margin: 0 auto 50px;
}
.features-04__header
{
    font-size: 22px;
    font-weight: bold;
    line-height: 56px;

    text-align: center;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; 
    background: #5c5c5c;
}
.features-04__header span
{
    font-size: 18px;
}
.features-04__body
{
    padding-top: 40px;
    padding-bottom: 20px; 

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #f0f0f0;
}
.features-04__body p
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5; 

    margin-bottom: 32px;

    text-align: center;

    color: #333;
}
.features-04__body img
{
    display: block;

    width: calc(100% - 40px);
    height: auto;
    margin: 0 auto;
}

.features-05__inner
{
    margin: 0 auto;
}
.features-05__inner h3
{
    font-size: 24px;
    font-weight: bold;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 64px;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; 
    background: #5c5c5c;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.features-05__list
{
    margin-bottom: 20px; 
    padding: 0 46px;

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #f0f0f0;
}
.features-05__list li
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 32px 7px;

    border-bottom: 3px solid #fff; 

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.features-05__list li:nth-last-child(1)
{
    border-bottom: none;
}
.features-05__list li .num
{
    width: 69px;
    margin-right: 32px;
}
.features-05__list li .num img
{
    width: 100%;
    height: auto;
}
.features-05__list li .text
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.8; 

    width: calc(100% - 102px);

    color: #333;
}
.features-05__list li .text span
{
    font-size: 12px;
    line-height: 1.2;

    display: block;
}
.features-05__list li .text-set
{
    font-size: 14px !important; 

    display: inline-block !important;
}
.features-05__list li .text sup
{
    font-size: 12px;

    vertical-align: top;
}
.features-05__list li .text p
{
    position: relative; 

    padding-left: 1.1em;
}
.features-05__list li .text p::before
{
    position: absolute;
    top: 0;
    left: 0; 

    display: block;

    width: 1em;
    height: 1em;

    content: '●';
}
.features-05__list li dl
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.features-05__list li dl:nth-child(1)
{
    padding-top: 10px;
}
.features-05__list__notes
{
    width: 100%;
    padding-left: 102px;

    counter-reset: number 0;
}
.features-05__list__notes li
{
    font-size: 12px;
    line-height: 1.6;

    position: relative; 

    padding: 0 0 0 2.2em !important;

    border-bottom: none !important;
}
.features-05__list__notes li:before
{
    position: absolute;
    left: 0; 

    content: '※' counter(number);
    counter-increment: number 1;
}

.features-05__notes
{
    font-size: 12px;

    margin-bottom: 20px;
}

.features-05__table
{
    width: 100%;

    border-top: 1px solid #a9a9a9;
    border-left: 1px solid #a9a9a9;
}
.features-05__table th
{
    font-size: 14px;
    font-weight: normal;

    padding: 15px;

    text-align: left;
    vertical-align: top;
    white-space: nowrap; 

    color: #333;
    border-right: 1px solid #a9a9a9;
    border-bottom: 1px solid #a9a9a9;
    background: #e9e3c7;
}
.features-05__table td
{
    font-size: 14px;

    padding: 15px;

    text-align: left;
    vertical-align: top; 

    color: #000;
    border-right: 1px solid #a9a9a9;
    border-bottom: 1px solid #a9a9a9;
    background: #fff;
}
.features-05__table__wrapper
{
    border-radius: 10px;
    background: #f0f0f0;
}
.features-05__table__wrapper h3
{
    font-size: 22px;
    font-weight: bold;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 64px;

    color: #333; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.features-05__table__wrapper h3 i
{
    position: absolute;
    top: 50%;
    right: 30px;

    display: block;

    width: 25px;
    height: 25px;

    -webkit-transition: all .3s;
            transition: all .3s; 
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url('/static/img/common/ic_toggle_01.png');
    background-size: 25px 25px;
}
.features-05__table__wrapper h3 i.active
{
    -webkit-transform: translateY(-50%) rotate(-180deg);
            transform: translateY(-50%) rotate(-180deg);
}
.features-05__table__content
{
    display: none; 

    padding: 20px 60px 30px;

    border-top: 2px solid #fff;
}
.features-05__table__notes
{
    counter-reset: number 0;
}
.features-05__table__notes li
{
    font-size: 12px;
    line-height: 1.6;

    position: relative; 

    padding: 0 0 0 3.8em;

    border-bottom: none;
}
.features-05__table__notes li:before
{
    position: absolute;
    left: 0; 

    content: '（※' counter(number) '）';
    counter-increment: number 1;
}
.features-05__table__notes-kome li
{
    font-size: 12px;
    line-height: 1.6;

    position: relative; 

    padding: 0 0 0 1.2em;

    border-bottom: none;
}
.features-05__table__notes-kome li:before
{
    position: absolute;
    left: 0; 

    content: '＊';
}

.insurance-content
{
    max-width: 910px;
    margin: 0 auto;
}

.insurance-table__wrapper
{
    margin-bottom: 20px;
}
.insurance-table__wrapper img
{
    width: 100%;
    height: auto;
}

.insurance-title
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1; 

    margin-bottom: 14px;

    color: #333;
}
.insurance-title span
{
    font-size: 14px; 

    display: inline-block;

    margin-left: 10px;
}

.insurance-lead
{
    font-size: 22px;
    font-weight: bold;

    margin-bottom: 50px; 

    text-align: center;

    color: #333;
}

.insurance-text
{
    font-size: 12px;
    line-height: 1.6;

    margin-bottom: 10px; 

    color: #787878;
}
.insurance-text.procedure
{
    margin-bottom: 40px;
}

.insurance-column
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 40px; 

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
}
.insurance-column__box
{
    width: 50%;
}
.insurance-column__box p
{
    font-size: 14px;
    font-weight: bold;

    color: #787878;
}
.insurance-column__box dl
{
    font-size: 12px;

    display: table;

    color: #787878;
}
.insurance-column__box dl dt,
.insurance-column__box dl dd
{
    display: table-cell;
}
.insurance-column__box dl dt
{
    white-space: nowrap;
}

.insurance-notes__header
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 60px; 
    padding: 15px 0 10px;
    padding: auto;

    text-align: center;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #5c5c5c;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.insurance-notes__header span
{
    font-size: 20px;

    display: inline-block;

    margin-right: 25px;
}

.insurance-notes__body
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box; 
    padding: 28px 40px;

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #fff;
}

.insurance-notes__title
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1; 

    margin-bottom: 25px;

    text-align: center;

    color: #333;
}

.insurance-notes__text
{
    font-size: 12px;

    margin-bottom: 20px; 

    color: #333;
}

.insurance-notes__list
{
    margin-bottom: 20px; 
    padding: 0 46px;

    border-radius: 10px;
    background: #f0f0f0;
}
.insurance-notes__list li
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 40px 8px 32px;

    border-bottom: 3px solid #fff; 

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.insurance-notes__list li:nth-last-child(1)
{
    border-bottom: none;
}
.insurance-notes__list li .num
{
    width: 69px;
    margin-right: 32px;
}
.insurance-notes__list li .num img
{
    width: 100%;
    height: auto;
}
.insurance-notes__list li .text
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.8; 

    width: calc(100% - 102px);

    color: #333;
}
.insurance-notes__list li .text span
{
    font-size: 12px;
    line-height: 1.2;

    display: block;
}
.insurance-notes__list li .text-set
{
    font-size: 14px !important; 

    display: inline-block !important;
}
.insurance-notes__list li .text sup
{
    font-size: 12px;

    vertical-align: top;
}
.insurance-notes__list li .text p
{
    position: relative; 

    padding-left: 1.1em;
}
.insurance-notes__list li .text p::before
{
    position: absolute;
    top: 0;
    left: 0; 

    display: block;

    width: 1em;
    height: 1em;

    content: '●';
}
.insurance-notes__list__notes
{
    width: 100%;
    padding-left: 102px;

    counter-reset: number 0;
}
.insurance-notes__list__notes li
{
    font-size: 12px;
    line-height: 1.6;

    position: relative; 

    padding: 0 0 0 2.2em !important;

    border-bottom: none !important;
}
.insurance-notes__list__notes li:before
{
    position: absolute;
    left: 0; 

    content: '※' counter(number);
    counter-increment: number 1;
}

.insurance-link
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 910px; 
    margin: 0 auto 0;
}
.insurance-link.mb80
{
    margin-bottom: 80px;
}
.insurance-link__box
{
    display: block;
    overflow: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: calc(50% - 15px);
    margin-right: 30px;

    cursor: pointer;
    text-decoration: none; 

    border: 4px solid #a58342;
    border-radius: 10px;
    background: #fff;
    background: #a58342;
}
.insurance-link__box:nth-child(2)
{
    margin-right: 0;
}
.insurance-link__header
{
    position: relative; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 10px 20px;

    background: #a58342;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.insurance-link__header::after
{
    position: absolute;
    top: 50%;
    right: 20px;

    display: block;

    width: 36px;
    height: 36px;
    margin-top: -18px; 

    content: '';

    background: url('/static/img/common/ic_link_box.png');
}
.insurance-link__header div
{
    margin-right: 16px;
}
.insurance-link__header h2
{
    font-size: 22px; 

    color: #fff;
}
.insurance-link__body
{
    font-size: 14px; 
    line-height: 1.4;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    padding: 24px 16px;

    color: #000;
    background: #fff;
}

.insurance-tab
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.insurance-tab.tab_item_3 li
{
    width: calc((100% - 8px) / 3);
}
.insurance-tab.tab_item_3 li img
{
    width: 100%;
    height: auto;
}
.insurance-tab.tab_item_3 li .on
{
    display: none;
}
.insurance-tab.tab_item_3 li.active img
{
    display: none;
}
.insurance-tab.tab_item_3 li.active img.on
{
    display: block;
}
.insurance-tab__content
{
    margin-bottom: 20px;
    padding: 20px 40px 40px;

    background: #fff;
}
.insurance-tab__content img
{
    display: none; 

    vertical-align: top;
}
.insurance-tab__content img.active
{
    display: block;
}

.schedule-content
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 910px;
    margin: 0 auto 60px;
    padding: 40px 36px; 

    border: 4px solid #f0f0f0;
    border-radius: 10px;
}

.schedule-title
{
    font-size: 28px;
    font-weight: bold;

    margin-bottom: 30px; 

    text-align: center;

    color: #333;
}

.schedule-text
{
    font-size: 14px;
    line-height: 1.9;

    margin-bottom: 30px; 

    text-indent: 1em;
}

.schedule-image
{
    margin-bottom: 40px;
}
.schedule-image img
{
    width: 100%;
    max-width: 824px;
    margin-bottom: 10px;
}

.schedule-inner
{
    border-radius: 10px;
    background: #f0f0f0;
}
.schedule-inner h3
{
    font-size: 22px;
    font-weight: bold;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 64px;

    color: #333; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.schedule-inner h3 i
{
    position: absolute;
    top: 50%;
    right: 30px;

    display: block;

    width: 25px;
    height: 25px;

    -webkit-transition: all .3s;
            transition: all .3s; 
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url('/static/img/common/ic_toggle_01.png');
    background-size: 25px 25px;
}
.schedule-inner h3 i.active
{
    -webkit-transform: translateY(-50%) rotate(-180deg);
            transform: translateY(-50%) rotate(-180deg);
}
.schedule-inner__content
{
    display: none; 

    padding: 20px 20px 30px;

    border-top: 2px solid #fff;
}
.schedule-inner__content p
{
    font-size: 14px;
    line-height: 2;
}

.lineup .content-title
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.lineup .content-title span
{
    display: inline-block;

    margin-right: 10px;
}

.lineup-link,
.lineup-link_3column
{
    max-width: 910px;
    margin: 0 auto;
}
.lineup-link a,
.lineup-link_3column a
{
    display: block; 

    width: 100%;
    padding: 0 20px 36px;

    cursor: pointer;
    text-decoration: none;

    border-radius: 10px;
    background: #9b0303;
}
.lineup-link__header,
.lineup-link_3column__header
{
    font-size: 42px;
    font-weight: bold; 
    line-height: 1.1;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 24px;
    padding: 15px 64px 15px 0;

    color: #fff;
    border-bottom: 2px solid #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.lineup-link__header span,
.lineup-link_3column__header span
{
    font-size: 22px;
    line-height: 1;

    display: block;

    margin-right: 10px; 

    color: #fff;
}
.lineup-link__header::before,
.lineup-link_3column__header::before
{
    position: absolute;
    top: 50%;
    right: 20px;
    bottom: 0;

    display: block;

    width: 36px;
    height: 36px;
    margin: auto; 

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background: url('/static/img/common/ic_link_box.png');
    background-size: 36px 36px;
}
.lineup-link__text,
.lineup-link_3column__text
{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5; 

    color: #fff;
}

.lineup-link_3column .lineup-link__header
{
    padding-right: 0;
}
.lineup-link_3column .lineup-link__header::after
{
    content: none;
}
.lineup-link_3column .lineup-link__header .icon
{
    width: 95px;
}
.lineup-link_3column .lineup-link__header .icon img
{
    width: 85px;
}
.lineup-link_3column .lineup-link__header .text
{
    font-size: 28px; 

    width: calc(100% - 85px);
}

.faq-box
{
    overflow: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 910px;
    margin: 0 auto 20px;

    border-radius: 10px;
    background: #f0f0f0;
}
.faq-box:nth-of-type(n+5)
{
    display: none;
}

.faq-header
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 24px 118px 24px 40px;

    cursor: pointer; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.faq-header::before
{
    position: absolute;
    top: 50%;
    right: 40px;

    display: block;

    width: 36px;
    height: 36px;

    content: '';
    -webkit-transition: all .3s;
            transition: all .3s;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); 

    background: url('/static/img/common/ic_toggle_01.png');
    background-size: 36px 36px;
}
.faq-header.active::before
{
    -webkit-transform: translateY(-50%) rotate(-180deg);
            transform: translateY(-50%) rotate(-180deg);
}

.faq-icon
{
    width: 32px;
    margin-right: 18px; 

    -ms-flex-item-align: start;
    align-self: flex-start;
}

.faq-title
{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.6; 

    color: #333;

    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
    -ms-flex-item-align: center;
    align-self: center;
}

.faq-content
{
    display: none;

    padding: 24px 95px 24px 40px;

    border-top: 2px solid #fff;
}

.faq-text
{
    font-size: 16px;
    font-weight: bold;
    line-height: 1.75;

    color: #333;
}
.faq-text__indent
{
    text-indent: -.5em;
}
.faq-text a
{
    text-decoration: underline; 

    color: #a58342;
}

.faq-02 .faq-box
{
    background: #fff;
}

.faq-02 .faq-content
{
    border-top: 2px solid #e9e3c7;
}

.faq-list li
{
    font-size: 16px;
    font-weight: bold;
    line-height: 1.75; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.faq-list-01 .faq-list__num
{
    width: 1.2em;
}

.faq-list-03 .faq-list__num
{
    width: 3.2em;
}

.faq-list__text
{
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}

.faq-more
{
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 600px;
    margin: 40px auto 0;

    cursor: pointer;
    -webkit-transition: opacity .3s ease-out;
            transition: opacity .3s ease-out; 

    border-radius: 10px;
    background: #9b0303;
}
.faq-more:hover
{
    text-decoration: none;

    opacity: .8;
}
.faq-more::before
{
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;

    display: block;

    width: 36px;
    height: 36px;
    margin: auto; 

    content: '';

    background: url('/static/img/common/ic_toggle_02.png');
    background-size: 36px 36px;
}
.faq-more-text
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.2;

    display: block;

    padding: 17px 76px;

    text-align: center;
    text-decoration: none; 

    color: #fff;
}
#procedure .faq-more-text
{
    font-size: 21px; 

    padding: 17px 76px 18px;
}
.faq-more-link::before
{
    background: url('/static/img/common/ic_link_box.png');
    background-size: 36px 36px;
}

@media screen and (max-width: 767px)
{
    .visual
    {
        margin: 50px 0 0;
        padding: 20px 10px 25px; 

        background-size: 17px 17px;
    }
    .visual.procedure
    {
        margin-bottom: 0; 
        padding: 10px;
    }
    .visual.procedure + .content.procedure
    {
        padding-top: 40px;
    }
    .visual-content
    {
        position: relative; 

        width: 100%;
    }
    .visual-btn_01
    {
        display: none;
    }
    .visual-btn_02
    {
        position: absolute;
        top: 84.50704%;
        right: 0;
        left: 0;

        display: block;

        width: 92.11268%;
        margin: 0 auto;

        cursor: pointer;
    }
    .visual-btn_02 img
    {
        width: 100%;
        height: auto;
    }
    .visual-procedure,
    .visual-faq
    {
        padding: 25px 10px 15px 10px;
    }
    .visual-procedure__title,
    .visual-faq__title
    {
        font-size: 26px; 

        margin: 0 0 5px;
    }
    .visual-procedure__lead,
    .visual-faq__lead
    {
        font-size: 14px;

        padding-bottom: 20px;
    }
    .anchor_link
    {
        display: block;
    }
    .anchor_link li
    {
        width: 100%;
        margin: 0 0 10px;
    }
    .anchor_link li a
    {
        font-size: 14px; 

        padding: 10px 30px 10px 15px;

        border-radius: 4px;
    }
    .anchor_link li a::after
    {
        right: 10px;

        width: 10px;
        height: 6px;
        margin-top: -3px; 

        content: '';

        background-size: 10px 6px;
    }
    .content.features
    {
        padding: 40px 15px 50px;
    }
    .content.insurance
    {
        padding: 50px 15px 25px;
    }
    .content.schedule
    {
        padding: 45px 15px 25px;
    }
    .content.lineup
    {
        padding: 35px 15px 0;
    }
    .content.procedure
    {
        padding: 40px 15px 40px; 

        background: #e9e3c7;
    }
    .content.procedure:nth-child(even)
    {
        background: #fff;
    }
    .content.faq-01
    {
        padding: 35px 15px 40px;
    }
    .content.faq-02
    {
        padding: 35px 15px 40px;
    }
    .content.faq-other
    {
        padding: 45px 15px 40px;
    }
    .content-bottom_link
    {
        padding: 40px 15px 50px;
    }
    .content-title
    {
        font-size: 23px;

        margin-bottom: 24px;
        padding-bottom: 0;
    }
    .content-title span
    {
        font-size: 14px;

        display: block; 

        margin-bottom: 5px;
    }
    .content-title.fs42
    {
        font-size: 23px;
    }
    .bt_check
    {
        display: block;

        width: 100%;
        margin: 0 auto;
    }
    .bt_check img
    {
        width: 100%;
    }
    .features-box
    {
        margin: 0 auto 15px; 
        padding: 12px 18px;

        border-radius: 5px;
    }
    .features-box:nth-child(5)
    {
        margin-bottom: 26px;
    }
    .features-header
    {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .features-header::before
    {
        top: 22px; 

        width: 18px;
        height: 18px;
        margin-top: -9px;

        background-size: 18px 18px;
    }
    .features-num
    {
        width: 44px;
        margin-right: 5px;
    }
    .features-num img
    {
        position: relative;

        margin-left: 0;
    }
    .features-title
    {
        font-size: 16px;

        width: calc(100% - 18px - 44px - 10px); 
        padding-top: 5px;
    }
    .features-title span
    {
        font-size: 12px;

        margin-bottom: 2px;
    }
    .features-title span i
    {
        font-size: 16px;
    }
    .features-title span.fs18
    {
        font-size: 12px;
    }
    .features-title span.fs18 strong
    {
        font-size: 12px;

        display: inline-block;
    }
    .features-title span.fs18 strong.red
    {
        font-size: 12px;
    }
    .features-title span.fs18 strong.red span
    {
        font-size: 12px;
        font-weight: bold;

        display: inline-block;

        color: inherit;
    }
    .features-title__tips
    {
        display: block;

        padding-top: 3px;
    }
    .features-title__tips span
    {
        font-size: 12px;
        line-height: 22px;

        display: inline-block;

        height: 22px;
        margin-right: 0;
        margin-bottom: 5px; 

        border-radius: 11px;
    }
    .features-title__tips span i
    {
        font-size: 10px;
    }
    .features-sub_title
    {
        font-size: 17px;
    }
    .features-content
    {
        margin: 12px auto 0;
        padding-top: 15px;

        border-top: 2px solid #f0f0f0;
    }
    .features-lead
    {
        font-size: 14px;

        margin-bottom: 15px;
    }
    .features-lead span
    {
        font-size: 18px;
    }
    .features-text
    {
        font-size: 12px;

        margin-bottom: 20px;
    }
    .features-text span
    {
        font-size: 10px;
        font-weight: normal; 

        display: block;

        padding-top: 5px;

        text-align: center;
    }
    .features-btn
    {
        font-size: 16px;
        line-height: 46px; 

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        max-width: 320px;
        height: 50px;
        margin: 0 auto 13px;

        border: 2px solid #9b0303;
        border-radius: 5px;
    }
    .features-btn::after
    {
        right: 10px; 

        width: 6px;
        height: 10px;
        margin-top: -5px;

        background-size: 6px 10px;
    }
    .features-btn.fs15
    {
        font-size: 15px;
    }
    .features-btn.support
    {
        line-height: 1.4;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .features-btn.support span
    {
        display: block;

        width: 100%;
    }
    .features-01__inner
    {
        margin: 0 auto 20px;
        padding: 20px 20px 20px;

        border-radius: 5px;
    }
    .features-01__inner img
    {
        display: block;

        margin-bottom: 12px;
    }
    .features-01__inner p
    {
        font-size: 11px;
    }
    .features-01__inner .cancer-text
    {
        font-size: 11px;

        width: 100%; 

        text-align: left;

        color: #333;
    }
    .features-01__inner h3
    {
        font-size: 12px;

        margin-bottom: 15px;
    }
    .features-02__list
    {
        display: block;

        margin-bottom: 15px;
        padding-top: 0;
    }
    .features-02__list li
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
        padding: 16px 40px 16px;

        text-align: left;

        border-radius: 5px;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .features-02__list li::after
    {
        top: -5px;
        left: -3px; 

        width: 28px;
        height: 28px;

        background-size: 28px 28px;
    }
    .features-02__list li .image
    {
        display: block;

        width: 74px;
        margin: 0;
    }
    .features-02__list li .image img
    {
        width: 45px;
        height: auto;
    }
    .features-02__list li .text
    {
        display: inline-block;

        width: calc(100% - 74px);
        height: auto;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .features-02__list li .text p
    {
        font-size: 14px;

        width: 100%;

        text-align: left;
    }
    .features-02__list li:nth-last-child(1)
    {
        margin-right: 0;
    }
    .features-03 img
    {
        display: block;
    }
    .features-03__img01
    {
        margin-bottom: 20px;
    }
    .features-03__title
    {
        font-size: 14px;
        line-height: 30px; 

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .features-03__title img
    {
        width: 81px;
        height: auto;
    }
    .features-03__content
    {
        margin-bottom: 20px; 
        padding: 16px 12px 12px;

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .features-03__inner
    {
        margin-bottom: 20px; 

        border-radius: 5px;
    }
    .features-03__inner.pb
    {
        padding-bottom: 10px;
    }
    .features-03__inner.mb15
    {
        margin-bottom: 15px;
    }
    .features-03__text
    {
        font-size: 10px;
        line-height: 1.2;

        margin-bottom: 16px; 

        text-align: left;
    }
    .features-03__img03_2
    {
        margin-bottom: 16px;
    }
    .features-03__img03_3
    {
        margin-bottom: 20px;
    }
    .features-03__img03_4
    {
        margin-bottom: 0;
    }
    .features-03__img03_5
    {
        margin-bottom: 15px;
    }
    .features-03__img03_6
    {
        margin-bottom: 18px;
    }
    .features-04
    {
        padding-bottom: 0;
    }
    .features-04 .img_04_01
    {
        display: block; 

        max-width: 100% !important;
        margin: 0 auto 20px;
    }
    .features-04 .img_04_text
    {
        width: 95px;
        height: auto;
    }
    .features-04 .img_04_01_iryo
    {
        display: block;

        margin: 0 auto;
    }
    .features-04__inner
    {
        max-width: 830px;
        margin: 0 auto 25px;
        padding: 20px 9px 25px;

        border-radius: 5px; 
        background: #f0f0f0;
    }
    .features-04__inner img
    {
        display: block;

        margin-bottom: 8px;
    }
    .features-04__inner p
    {
        font-size: 10px;
        line-height: 1; 

        text-align: right;

        color: #787878;
    }
    .features-04__content
    {
        max-width: 100%;
        margin: 0 auto 15px;

        border-radius: 5px;
    }
    .features-04__header
    {
        font-size: 14px;
        line-height: 1.2;

        padding: 5px; 

        color: #fff;
    }
    .features-04__header span
    {
        font-size: 11px; 

        display: block;
    }
    .features-04__body
    {
        padding-top: 10px;
        padding-bottom: 12px; 

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .features-04__body p
    {
        font-size: 12px;
        line-height: 1.4; 

        margin-bottom: 15px;
    }
    .features-04__body img
    {
        display: block;

        margin: 0 auto;
    }
    .features-05-wrapper
    {
        margin-bottom: 35px !important;
    }
    .features-05__inner
    {
        margin: 0 auto;
    }
    .features-05__inner h3
    {
        font-size: 16px;
        font-size: 16px;

        height: 60px;
        padding: 5px 0 5px;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .features-05__list
    {
        margin-bottom: 10px; 
        padding: 0;
    }
    .features-05__list li
    {
        margin-bottom: 10px;
        padding: 15px; 

        border-radius: 5px;
    }
    .features-05__list li .num
    {
        width: 23px;
        margin-right: 10px;
    }
    .features-05__list li .num img
    {
        width: 100%;
        height: auto;
    }
    .features-05__list li .text
    {
        font-size: 14px; 

        width: calc(100% - 33px);
    }
    .features-05__list li .text span
    {
        font-size: 12px;
        line-height: 1.2;
    }
    .features-05__list li .text sup
    {
        font-size: 10px;
    }
    .features-05__list__notes
    {
        padding-left: 33px;
    }
    .features-05__list__notes li
    {
        font-size: 10px; 

        margin-bottom: 0;

        color: #333;
    }
    .features-05__notes
    {
        font-size: 10px; 

        color: #333;
    }
    .features-05 .features-text
    {
        margin-bottom: 10px;
    }
    .features-05__table th
    {
        font-size: 10px;
        font-weight: bold; 

        padding: 5px;
    }
    .features-05__table td
    {
        font-size: 10px; 

        padding: 5px;
    }
    .features-05__table__wrapper
    {
        border-radius: 5px;
    }
    .features-05__table__wrapper h3
    {
        font-size: 14px; 

        height: 68px;
    }
    .features-05__table__wrapper h3 i
    {
        right: 14px; 

        width: 18px;
        height: 18px;

        background-size: 18px 18px;
    }
    .features-05__table__content
    {
        display: none; 

        padding: 24px 8px;

        border-top: 2px solid #fff;
    }
    .features-05__table__notes
    {
        counter-reset: number 0;
    }
    .features-05__table__notes li
    {
        font-size: 10px; 

        color: #333;
    }
    .features-05__table__notes-kome li
    {
        font-size: 10px; 

        color: #333;
    }
    .insurance-content
    {
        margin: 0 auto 28px;
        padding: 12px 17px 20px;
    }
    .insurance-tab
    {
        position: relative;
        z-index: 5; 

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        height: 32px;

        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .insurance-tab__wrapper
    {
        padding: 0 0;
    }
    .insurance-tab li
    {
        font-size: 10px;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: calc(100% - 20px / 5);
        height: 100%; 
        margin-right: 5px;

        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .insurance-tab li:nth-last-child(1)
    {
        margin-right: 0;
    }
    .insurance-tab li div
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 100%;
        height: 25px;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px; 
        background: #00983f;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .insurance-tab li div p
    {
        font-weight: bold;

        width: 100%;

        text-align: center;
        white-space: nowrap; 

        color: #fff;
    }
    .insurance-tab li.active
    {
        position: relative;
    }
    .insurance-tab li.active div
    {
        height: 32px; 

        background: #004098;
    }
    .insurance-tab li span
    {
        font-size: 9px;
    }
    .insurance-tab.tab_item_3
    {
        height: auto;
    }
    .insurance-tab.tab_item_3 li
    {
        position: relative; 

        width: calc((100% - 8px) / 3);
    }
    .insurance-tab__content
    {
        margin-bottom: 16px;
        padding: 16px; 

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
        background: #fff;
    }
    .insurance-tab__content img
    {
        display: none;
    }
    .insurance-tab__content img.active
    {
        display: block;
    }
    .insurance-title
    {
        font-size: 14px;

        margin-bottom: 12px;
    }
    .insurance-title span
    {
        font-size: 10px; 

        display: inline-block;

        margin-left: 5px;
    }
    .insurance-text
    {
        font-size: 10px;

        margin-bottom: 10px;
    }
    .insurance-lead
    {
        font-size: 14px;

        margin-bottom: 25px;
    }
    .insurance-notes
    {
        font-size: 12px;

        display: block !important;

        margin: 0 !important; 

        color: #003d9a;
    }
    .insurance-column
    {
        display: block;

        margin-bottom: 10px;
    }
    .insurance-column__box
    {
        width: 100%;
        margin-bottom: 15px;
    }
    .insurance-column__box p
    {
        font-size: 11px;
    }
    .insurance-column__box dl
    {
        font-size: 10px;
    }
    .insurance-notes__header
    {
        font-size: 16px;

        padding: 5px 0 5px; 

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .insurance-notes__header span
    {
        font-size: 12px;

        display: block;

        margin-right: 0;
        margin-bottom: 5px;
    }
    .insurance-notes__body
    {
        padding: 20px 12px; 

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .insurance-notes__title
    {
        font-size: 16px;
        font-weight: bold;
        line-height: 1; 

        margin-bottom: 15px;

        text-align: center;

        color: #333;
    }
    .insurance-notes__list
    {
        padding: 0 15px;
    }
    .insurance-notes__list li
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 15px 0;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start;
    }
    .insurance-notes__list li .num
    {
        width: 23px;
        margin-right: 10px;
    }
    .insurance-notes__list li .num img
    {
        width: 100%;
        height: auto;
    }
    .insurance-notes__list li .text
    {
        font-size: 14px;

        width: calc(100% - 33px);
        padding-top: 0;
    }
    .insurance-notes__list li .text span
    {
        font-size: 12px;
        line-height: 1.2;
    }
    .insurance-notes__list__notes
    {
        padding-left: 33px;
    }
    .insurance-notes__list__notes li
    {
        font-size: 10px; 

        color: #333;
    }
    .insurance-link
    {
        display: block;

        margin: 0 auto;
    }
    .insurance-link.mb80
    {
        margin-bottom: 40px;
    }
    .insurance-link__box
    {
        display: block;

        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;

        border-radius: 5px;
    }
    .insurance-link__header
    {
        position: relative; 

        padding: 10px 13px;
    }
    .insurance-link__header::after
    {
        position: absolute;
        top: 50%;
        right: 15px;

        display: block;

        width: 26px;
        height: 26px;
        margin-top: -13px; 

        content: '';

        background: url('/static/img/common/ic_link_box.png');
        background-size: 26px 26px;
    }
    .insurance-link__header div
    {
        height: 36px; 
        margin-right: 8px;
    }
    .insurance-link__header div img
    {
        width: auto;
        height: 36px;
    }
    .insurance-link__header h2
    {
        font-size: 16px; 

        color: #fff;
    }
    .insurance-link__body
    {
        font-size: 12px; 
        line-height: 1.4;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        height: 100%;
        padding: 16px 18px;

        color: #000;
    }
    .schedule-content
    {
        margin: 0 auto 40px;
        padding: 20px;
    }
    .schedule-title
    {
        font-size: 14px;

        margin-bottom: 20px;
    }
    .schedule-text
    {
        font-size: 12px;
        line-height: 1.6;

        margin-bottom: 20px; 

        text-indent: 0;
    }
    .schedule-image
    {
        margin-bottom: 30px;
    }
    .schedule-image img
    {
        max-width: 100%;
        margin-bottom: 15px;
    }
    .schedule-inner
    {
        border-radius: 5px;
    }
    .schedule-inner h3
    {
        font-size: 14px;

        padding: 15px 0 13px; 

        border-bottom: 0;
    }
    .schedule-text02
    {
        padding: 0 10px 10px;
    }
    .schedule-text02 p
    {
        font-size: 12px; 

        text-indent: 1em;
    }
    .schedule-inner
    {
        border-radius: 10px;
        background: #f0f0f0;
    }
    .schedule-inner h3
    {
        font-size: 14px; 

        height: auto;
        padding: 15px 8px 8px;
    }
    .schedule-inner h3 i
    {
        display: none;
    }
    .schedule-inner__content
    {
        display: block; 

        padding: 0 8px 30px;

        border-top: none;
    }
    .schedule-inner__content p
    {
        font-size: 12px;
        line-height: 1.8;
    }
    .lineup .content-title
    {
        display: block;
    }
    .lineup .content-title span
    {
        font-size: 14px;

        display: block;

        margin-right: 0;
        padding: 0;
    }
    .lineup-link,
    .lineup-link_3column
    {
        display: block;
    }
    .lineup-link a,
    .lineup-link_3column a
    {
        display: block;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        margin: 0 0 15px; 
        margin-bottom: 15px;
        padding: 12px 18px 15px;

        border-radius: 5px;
    }
    .lineup-link__header,
    .lineup-link_3column__header
    {
        font-size: 22px; 

        min-height: 54px;
        margin-bottom: 8px;
        padding: 0 32px 0 0;

        border-bottom: 1px solid #fff;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .lineup-link__header::before,
    .lineup-link_3column__header::before
    {
        right: 0; 

        width: 26px;
        height: 26px;

        background: url('/static/img/common/ic_link_box.png');
        background-size: 26px 26px;
    }
    .lineup-link__header .icon,
    .lineup-link_3column__header .icon
    {
        width: 50px; 
        margin-right: 10px;
    }
    .lineup-link__header .icon img,
    .lineup-link_3column__header .icon img
    {
        width: 50px;
        height: auto;
    }
    .lineup-link__header span,
    .lineup-link_3column__header span
    {
        font-size: 12px; 

        margin-bottom: 0;
    }
    .lineup-link__text,
    .lineup-link_3column__text
    {
        font-size: 12px;
    }
    .lineup-link_3column a
    {
        margin: 0 0 15px;
    }
    .lineup-link_3column a:nth-last-child(1)
    {
        margin-bottom: 0;
    }
    .lineup-link_3column .lineup-link__header::after
    {
        position: absolute;
        top: 50%;
        right: 0;

        display: block;

        width: 26px;
        height: 26px;
        margin-top: -13px; 

        content: '';

        background: url('/static/img/common/ic_link_box.png');
        background-size: 26px 26px;
    }
    .lineup-link_3column .lineup-link__header .icon
    {
        width: 50px;
    }
    .lineup-link_3column .lineup-link__header .icon img
    {
        width: 50px;
    }
    .lineup-link_3column .lineup-link__header .text
    {
        font-size: 22px; 

        width: calc(100% - 60px);
    }
    .inquiry-inner
    {
        padding: 25px 15px; 

        border: 2px solid #003d9a;
        border-radius: 5px;
    }
    .inquiry-title
    {
        font-size: 16px;
        font-weight: bold;
        line-height: 1.2; 

        padding-bottom: 10px;

        text-align: center;

        color: #003d9a;
    }
    .inquiry .content-title
    {
        margin-bottom: 0;
        padding-bottom: 30px;
    }
    .inquiry .content-title span
    {
        margin-bottom: 0; 
        padding-bottom: 0;
    }
    .inquiry .conditions-icon
    {
        margin: 0 auto 20px;
        padding-bottom: 20px;

        border-bottom: 2px solid #003d9a;
    }
    .inquiry .conditions-icon li
    {
        font-size: 14px; 

        height: 24px;
        padding: 0 10px;

        border: 2px solid #003d9a;
        border-radius: 12px;
    }
    .inquiry .conditions-content
    {
        margin: 0 auto 20px; 
        padding: 20px 8px 20px;

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .inquiry .conditions-title
    {
        font-size: 14px;

        position: relative;

        padding: 8px 65px;
        padding: 8px 0;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .inquiry .conditions-title img
    {
        left: 7px; 

        width: 54px;
        height: auto;
    }
    .inquiry .conditions-title span
    {
        font-size: 11px;
    }
    .inquiry .conditions-lead
    {
        font-size: 14px;

        margin-bottom: 10px;

        vertical-align: text-top;
    }
    .inquiry .conditions-lead span
    {
        font-size: 10px;
    }
    .inquiry .conditions-lead sup
    {
        font-size: 7px;
        line-height: 1;
    }
    .inquiry .conditions-text,
    .inquiry .conditions-notes,
    .inquiry .conditions-notes_02
    {
        font-size: 11px;

        text-align: left;
    }
    .inquiry .conditions-notes_02
    {
        padding-top: 5px;
    }
    .inquiry .conditions-text
    {
        margin-bottom: 35px;
    }
    .inquiry .conditions-image_01
    {
        margin-bottom: 20px;
    }
    .inquiry .conditions-image_02
    {
        margin-bottom: 0;
    }
    .inquiry .schedule-text
    {
        font-size: 12px;

        margin-bottom: 10px;
    }
    .inquiry .schedule-image
    {
        display: block;

        margin-bottom: 10px;
    }
    .inquiry .schedule-notes
    {
        font-size: 9px;

        margin-bottom: 35px;
    }
    .inquiry .schedule-inner h3
    {
        border-bottom: 1px solid #fff;
    }
    .inquiry-step
    {
        padding: 20px 15px;

        border-radius: 5px;
    }
    .inquiry-step li
    {
        margin-bottom: 32px;

        border-radius: 5px;
    }
    .inquiry-step li:after
    {
        bottom: -20px; 

        width: 10px;
        height: 6px;

        background-size: 10px 6px;
    }
    .inquiry-step li:nth-last-child(1)
    {
        margin-bottom: 0;
    }
    .inquiry-step li:nth-last-child(1):after
    {
        content: none;
    }
    .inquiry-step li span
    {
        font-size: 12px;
        line-height: 1.2; 

        width: 50px;
        padding: 10px 8px;

        border-top-left-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .inquiry-step li p
    {
        font-size: 16px; 

        width: calc(100% - 50px);
        padding: 10px 15px;
    }
    .inquiry-step-btn
    {
        margin-top: 25px;
    }
    .inquiry .payment-logo
    {
        margin: 0 auto 20px;
    }
    .inquiry .payment-text
    {
        margin-bottom: 30px;
    }
    .inquiry .payment-text p
    {
        font-size: 14px;
        line-height: 1.9; 

        text-indent: 1em;
    }
    .inquiry .payment-lead
    {
        font-size: 16px;

        margin-bottom: 20px; 

        text-align: left;
    }
    .inquiry .payment-card
    {
        display: block; 

        padding: 20px;

        border-radius: 5px;
        background: #e0f1ff;
    }
    .inquiry .payment-card__image
    {
        width: 200px;
        margin: 0 auto 30px;
    }
    .inquiry .payment-card__image img
    {
        margin: 0;
    }
    .inquiry .payment-card__text
    {
        width: 100%;
    }
    .inquiry .payment-card__text p
    {
        font-size: 12px;
        line-height: 1.8;
    }
    .inquiry .benefits-title
    {
        font-size: 14px;

        padding: 8px 20px;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .inquiry .benefits-content
    {
        padding: 15px 12px;

        border-bottom-right-radius: 5px; 
        border-bottom-left-radius: 5px;
    }
    .inquiry .benefits-lead
    {
        font-size: 16px;
    }
    .inquiry .benefits-image
    {
        display: block;

        width: 100%;
        max-width: 773px; 
        margin: 0 auto 40px;
    }
    .inquiry .benefits-image:nth-last-child(1)
    {
        margin-bottom: 0;
    }
    .inquiry .system
    {
        display: block;
    }
    .inquiry .system dt
    {
        font-size: 16px;

        width: 100%;
        margin-bottom: 10px;
    }
    .inquiry .system dd
    {
        font-size: 12px; 

        width: 100%;
        margin-bottom: 20px;
    }
    .faq-box
    {
        margin: 0 auto 15px;

        border-radius: 5px;
    }
    .faq-header
    {
        padding: 15px 38px 15px 11px;

        cursor: inherit;
    }
    .faq-header::before
    {
        right: 12px; 

        width: 18px;
        height: 18px;

        background-size: 18px 18px;
    }
    .faq-icon
    {
        width: 25px;
        margin-right: 11px;
        padding: 4px 0;
    }
    .faq-title
    {
        font-size: 14px;
        line-height: 1.2;
    }
    .faq-content
    {
        padding: 18px 30px 18px 15px;
    }
    .faq-text
    {
        font-size: 12px;
        font-weight: normal;
        line-height: 1.6;
    }
    .faq-list li
    {
        font-size: 12px;
        font-weight: normal;
        line-height: 1.5;
    }
    .faq-more
    {
        max-width: 100%;
        margin: 30px auto 0;

        -webkit-transition: none;
                transition: none; 

        border-radius: 5px;
    }
    .faq-more:hover
    {
        opacity: 1;
    }
    .faq-more::before
    {
        position: absolute;
        top: 0;
        right: 12px; 

        width: 18px;
        height: 18px;

        background-size: 18px 18px;
    }
    .faq-more-text
    {
        font-size: 14px;
        line-height: 1.3; 

        padding: 17px 30px;
    }
    #procedure .faq-more-text
    {
        font-size: 14px; 

        padding: 17px 32px 18px 15px;
    }
    #inquiry .faq-more-text
    {
        font-size: 13px; 

        padding: 17px 30px 18px;
    }
}

.mb-0
{
    margin-bottom: 0 !important;
}

.mb-10
{
    margin-bottom: 10px !important;
}

.mb-20
{
    margin-bottom: 20px !important;
}

.mb-30
{
    margin-bottom: 30px !important;
}

.mb-40
{
    margin-bottom: 40px !important;
}

.mb-50
{
    margin-bottom: 50px !important;
}

.mb-60
{
    margin-bottom: 60px !important;
}

.mb-80
{
    margin-bottom: 80px !important;
}

.mt-0
{
    margin-top: 0 !important;
}

.mt-10
{
    margin-top: 10px !important;
}

.mt-20
{
    margin-top: 20px !important;
}

.mt-30
{
    margin-top: 30px !important;
}

.mt-40
{
    margin-top: 40px !important;
}

.mt-50
{
    margin-top: 50px !important;
}

.mt-60
{
    margin-top: 60px !important;
}

.mt-80
{
    margin-top: 80px !important;
}

.pt-10
{
    padding-top: 10px;
}

@media screen and (max-width: 767px)
{
    .mb-0
    {
        margin-bottom: 0 !important;
    }
    .mb-10
    {
        margin-bottom: 5px !important;
    }
    .mb-20
    {
        margin-bottom: 10px !important;
    }
    .mb-30
    {
        margin-bottom: 15px !important;
    }
    .mb-40
    {
        margin-bottom: 20px !important;
    }
    .mb-50
    {
        margin-bottom: 25px !important;
    }
    .mb-60
    {
        margin-bottom: 30px !important;
    }
    .mb-80
    {
        margin-bottom: 40px !important;
    }
    .mt-0
    {
        margin-top: 0 !important;
    }
    .mt-10
    {
        margin-top: 5px !important;
    }
    .mt-20
    {
        margin-top: 10px !important;
    }
    .mt-30
    {
        margin-top: 15px !important;
    }
    .mt-40
    {
        margin-top: 20px !important;
    }
    .mt-50
    {
        margin-top: 25px !important;
    }
    .mt-60
    {
        margin-top: 30px !important;
    }
    .mt-80
    {
        margin-top: 40px !important;
    }
}

.overlay
{
    position: absolute;
    z-index: 2000;
    top: 0;
    left: 0;

    display: none; 

    width: 100%;
    height: 100%;

    background: rgba(0, 0, 0, .5);
}
.overlay.active
{
    display: block;
}
.overlay-close
{
    position: absolute;
    top: 50%;
    right: 19px;

    display: block;

    width: 40px;
    height: 40px;
    margin-top: -20px;

    cursor: pointer; 

    background: url('/static/img/common/bt_overlay_close.png');
}
.overlay-wrapper
{
    overflow: hidden; 

    border-radius: 10px;
    background: #fff;
}
.overlay-content
{
    position: absolute;
    top: 50px;
    right: 0;
    left: 0;

    display: none; 

    width: calc(100% - 48px);
    max-width: 910px;
    margin: 0 auto 0;
    padding-top: 50px;
}
.overlay-content.active
{
    display: block;
}
.overlay-header
{
    font-size: 24px;
    font-weight: bold;

    position: relative; 

    padding: 24px 70px;

    text-align: center;

    color: #333;
    background: #f0f0f0;
}
.overlay-body
{
    padding: 40px 40px 30px 40px;

    background: #fff;
}
.overlay .ol-image_01
{
    display: block; 

    margin: 0 auto 30px;
}
.overlay .ol-inner_bg
{
    padding: 20px 32px; 

    border-radius: 10px;
    background: #f0f0f0;
}
.overlay .ol-inner_bg img
{
    display: block;

    margin: 0 auto;
}
.overlay .ol-title,
.overlay .ol-title_02
{
    font-size: 18px;
    font-weight: bold;

    margin-bottom: 20px;

    color: #333;
    color: #a58342;
}
.overlay .ol-title span,
.overlay .ol-title_02 span
{
    font-size: 12px;

    color: #333;
}
.overlay .ol-insurance__table
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.overlay .ol-insurance__table dt
{
    font-size: 14px;
    font-weight: bold; 

    display: block;

    width: calc(100% - 200px);

    text-align: center;

    color: #000;
}
.overlay .ol-insurance__table dt span
{
    display: inline-block;

    width: 100%;
    max-width: 380px;

    text-align: left;
}
.overlay .ol-insurance__table dd
{
    font-size: 18px;
    font-weight: bold;

    display: block;

    width: 200px;

    text-align: right;
    white-space: nowrap; 

    color: #ba1631;
}
.overlay .ol-insurance__table dd span
{
    font-size: 18px;
    font-weight: bold; 

    color: #000;
}
.overlay .ol-insurance__table dd strong
{
    font-size: 22px;
}
.overlay .ol-insurance__span
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin-top: 24px; 
    padding: 10px 0;

    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.overlay .ol-insurance__span dt
{
    font-size: 18px;
    font-weight: bold;

    width: calc(100% - 200px);

    color: #a58342;
}
.overlay .ol-insurance__span dd
{
    font-size: 18px;
    font-weight: bold;

    display: block;

    width: 200px;

    text-align: right;
    text-align: right;
    white-space: nowrap; 

    color: #ba1631;
}
.overlay .ol-insurance__span dd span
{
    font-size: 18px;
    font-weight: bold; 

    color: #000;
}
.overlay .ol-insurance__span dd strong
{
    font-size: 22px;
}
.overlay .ol-notes
{
    font-size: 12px;

    color: #787878;
}
.overlay .ol-notes_list
{
    font-size: 12px;

    display: table;

    color: #787878;
}
.overlay .ol-notes_list dt
{
    display: table-cell;
}
.overlay .ol-notes_list dd
{
    display: table-cell;
}
.overlay .ol-notes_right
{
    font-size: 12px;

    margin-top: 12px; 

    text-align: right;

    color: #787878;
}
.overlay .ol-lead
{
    font-size: 14px;
    font-weight: bold;

    margin-bottom: 24px; 

    text-align: center;

    color: #000;
}
.overlay .ol-lead02,
.overlay .ol-lead03,
.overlay .ol-lead04
{
    font-size: 24px;
    font-weight: bold;

    margin: 0 auto 20px; 
    margin-bottom: 20px;

    text-align: center;

    color: #333;
}
.overlay .ol-lead02 span,
.overlay .ol-lead03 span,
.overlay .ol-lead04 span
{
    font-size: 32px;
}
.overlay .ol-lead02.w460,
.overlay .ol-lead03.w460,
.overlay .ol-lead04.w460
{
    width: 460px;
}
.overlay .ol-lead02.w460 span,
.overlay .ol-lead03.w460 span,
.overlay .ol-lead04.w460 span
{
    color: #9b0303;
}
.overlay .ol-lead02.w460 span.notes,
.overlay .ol-lead03.w460 span.notes,
.overlay .ol-lead04.w460 span.notes
{
    font-size: 12px;
    font-weight: normal;
    line-height: 1.4;

    display: block;

    text-align: right;

    color: #787878;
    color: #333;
}
.overlay .ol-lead02 .notes,
.overlay .ol-lead03 .notes,
.overlay .ol-lead04 .notes
{
    font-size: 12px;
    font-weight: normal;
    line-height: 1.4;

    display: block;

    text-align: right;

    color: #787878;
    color: #333;
}
.overlay .ol-lead03
{
    width: auto; 
    margin-bottom: 40px;
}
.overlay .ol-lead03 span
{
    font-size: 28px;
}
.overlay .ol-lead03 span span
{
    font-size: 36px;
}
.overlay .ol-lead04
{
    text-align: left;
}
.overlay .ol-inner
{
    max-width: 703px;
    margin: 0 auto;
}
.overlay .ol-inner .text
{
    font-size: 14px;
    line-height: 1.5; 

    margin-bottom: 30px;
}
.overlay .ol-text_area
{
    margin-bottom: 30px;
}
.overlay .ol-box
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 700px;
    margin: 0 auto; 

    border: 4px solid #003d9a;
    border-radius: 10px;
    background: #003d9a;
}
.overlay .ol-box__header
{
    font-size: 22px;
    font-weight: bold; 

    padding: 10px 0 16px;

    text-align: center;

    color: #fff;
}
.overlay .ol-box__inner
{
    padding: 30px 15px; 

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #fff;
}
.overlay .ol-box__example
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 32px; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.overlay .ol-box__example .image
{
    margin-right: 18px;
}
.overlay .ol-box__example .text
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4; 

    color: #333;
}
.overlay .ol-box__support
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%; 
    margin-bottom: 32px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.overlay .ol-box__support__notes
{
    display: table;
}
.overlay .ol-box__support__notes:nth-last-child(1)
{
    margin-bottom: 14px;
}
.overlay .ol-box__support__notes dt,
.overlay .ol-box__support__notes dd
{
    font-size: 11px; 

    display: table-cell;

    color: #787878;
}
.overlay .ol-box__support .text
{
    font-size: 32px;
    font-weight: bold;

    margin: 0 40px;

    color: #333;
}
.overlay .ol-box__support .image
{
    text-align: right;
}

@media screen and (max-width: 767px)
{
    .overlay-close
    {
        top: 5px;
        right: 5px;

        width: 32px;
        height: 32px;
        margin-top: 0; 

        background-size: 32px 32px;
    }
    .overlay-content
    {
        position: absolute;
        top: 15px; 

        width: calc(100% - 30px);
        padding-top: 50px;
    }
    .overlay-header
    {
        font-size: 18px; 

        padding: 25px 45px;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .overlay-body
    {
        padding: 20px 15px 30px 15px;

        border-bottom-right-radius: 5px; 
        border-bottom-left-radius: 5px;
    }
    .overlay-body .insurance-notes__list
    {
        margin: 0 0 10px;
    }
    .overlay .ol-image_01
    {
        margin-bottom: 21px;
    }
    .overlay .ol-inner_bg
    {
        padding: 15px 10px; 

        border-radius: 5px;
        background: #f0f0f0;
    }
    .overlay .ol-title,
    .overlay .ol-title_02
    {
        font-size: 14px;

        margin-bottom: 15px;
    }
    .overlay .ol-title span,
    .overlay .ol-title_02 span
    {
        font-size: 11px;

        display: block;

        margin-bottom: 10px;
    }
    .overlay .ol-title_02
    {
        font-size: 16px;

        margin-bottom: 12px;
    }
    .overlay .ol-insurance__table
    {
        display: block;

        width: 100%;

        border-top: 2px solid #fff;
    }
    .overlay .ol-insurance__table dt
    {
        font-size: 14px;

        width: 100%;
        width: calc(100% - 75px);
        padding: 14px 0 10px; 

        text-align: left;
    }
    .overlay .ol-insurance__table dd
    {
        font-size: 14px;
        line-height: 1; 

        width: 100%;
        padding-bottom: 16px;
    }
    .overlay .ol-insurance__table dd span
    {
        font-size: 14px;
    }
    .overlay .ol-insurance__table dd strong
    {
        font-size: 18px;
    }
    .overlay .ol-insurance__span
    {
        padding: 14px 0;
    }
    .overlay .ol-insurance__span dt
    {
        font-size: 14px;

        width: calc(100% - 200px);
    }
    .overlay .ol-insurance__span dd
    {
        font-size: 14px;
    }
    .overlay .ol-insurance__span dd span
    {
        font-size: 14px;
    }
    .overlay .ol-insurance__span dd strong
    {
        font-size: 18px;
    }
    .overlay .ol-notes
    {
        font-size: 12px;

        color: #787878;
    }
    .overlay .ol-notes_list
    {
        font-size: 12px;

        display: table;

        color: #787878;
    }
    .overlay .ol-notes_list dt
    {
        display: table-cell;
    }
    .overlay .ol-notes_list dd
    {
        display: table-cell;
    }
    .overlay .ol-notes_right
    {
        font-size: 11px;

        margin-top: 15px;

        text-align: left;
    }
    .overlay .ol-lead
    {
        margin-bottom: 20px; 

        text-align: left;
    }
    .overlay .ol-lead02,
    .overlay .ol-lead04
    {
        font-size: 14px;
        font-weight: bold;

        margin-bottom: 20px; 

        text-align: center;

        color: #333;
    }
    .overlay .ol-lead02.w460,
    .overlay .ol-lead04.w460
    {
        width: auto;
    }
    .overlay .ol-lead02.w460 .notes,
    .overlay .ol-lead04.w460 .notes
    {
        font-size: 10px;
    }
    .overlay .ol-lead02 span,
    .overlay .ol-lead04 span
    {
        font-size: 18px;
    }
    .overlay .ol-lead02.mb,
    .overlay .ol-lead04.mb
    {
        margin-bottom: 0;
    }
    .overlay .ol-inner
    {
        max-width: 700px;
        margin: 0 auto;
    }
    .overlay .ol-inner .text
    {
        font-size: 11px;
        line-height: 1.5;

        margin-bottom: 30px;
        padding-left: 1em;

        text-indent: -1em;
    }
    .overlay .ol-text_area
    {
        margin-bottom: 30px;
    }
    .overlay .ol-box
    {
        max-width: none; 

        border: 2px solid #003d9a;
        border-radius: 5px;
    }
    .overlay .ol-box__header
    {
        font-size: 16px; 

        padding: 8px 0 8px;
    }
    .overlay .ol-box__inner
    {
        padding: 17px 10px; 

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
        background: #fff;
    }
    .overlay .ol-box__example
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 16px; 

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .overlay .ol-box__example .image
    {
        width: 121px; 
        margin-right: 14px;
    }
    .overlay .ol-box__example .text
    {
        font-size: 14px;
    }
    .overlay .ol-box__support
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 100%; 
        margin-bottom: 10px;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .overlay .ol-box__support__title
    {
        text-align: center; 

        color: #333;
    }
    .overlay .ol-box__support__notes
    {
        display: table;
    }
    .overlay .ol-box__support__notes:nth-last-child(1)
    {
        margin-bottom: 14px;
    }
    .overlay .ol-box__support__notes dt,
    .overlay .ol-box__support__notes dd
    {
        font-size: 11px; 

        display: table-cell;

        color: #787878;
    }
    .overlay .ol-box__support .text
    {
        font-size: 14px;
        font-weight: bold;

        margin: 0 30px;

        color: #333;
    }
    .overlay .ol-box__support .image
    {
        width: 121px; 

        text-align: right;
    }
    .overlay .ol-table_list span
    {
        font-size: 9px;
        font-weight: bold;
        line-height: 1;

        display: inline-block;

        margin-bottom: 6px; 
        padding: 5px 8px;

        color: #fff;
        background: #003d9a;
    }
    .overlay .ol-table_list p
    {
        font-size: 14px;
        font-weight: bold;
        line-height: 1.4; 

        margin-bottom: 10px;

        color: #000;
    }
    .overlay .ol-table_content
    {
        width: 100%;
        margin-bottom: 25px;
    }
    .overlay .ol-table_content thead th
    {
        font-size: 9px;

        padding: 5px;

        text-align: center;

        color: #fff;
        border-bottom: 1px solid #fff; 
        background: #003d9a;
    }
    .overlay .ol-table_content tbody th
    {
        font-size: 9px;

        width: calc(100% / 6);
        padding: 5px 3px;

        text-align: center;

        color: #fff;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff; 
        background: #3968ab;
    }
    .overlay .ol-table_content tbody td
    {
        font-size: 9px;
        font-size: 12px;
        font-weight: bold;

        padding: 5px 3px;

        text-align: center;

        color: #333;
        border-right: 1px solid #fff;
        background: #e0f1ff;
    }
}

.procedure-inner
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box; 
    max-width: 910px;
    margin: 0 auto;
    padding: 40px 36px;

    border: 4px solid #e8e7e7;
    border-radius: 10px;
    background: #fff;
}

.procedure-inner_02
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box; 
    max-width: 910px;
    margin: 0 auto;
    padding: 40px 36px;

    border-radius: 10px;
    background: #fff;
}

.procedure-title
{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2; 

    padding-bottom: 10px;

    text-align: center;

    color: #333;
}

.procedure-lead
{
    font-size: 28px;
    font-weight: bold;

    margin-bottom: 30px; 

    text-align: center;

    color: #333;
}

.procedure .conditions-icon
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto 48px;
    padding-bottom: 24px;

    border-bottom: 3px solid #f0f0f0; 

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.procedure .conditions-icon li
{
    font-size: 20px;
    font-weight: bold;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 36px;
    margin: 0 5px;
    padding: 0 24px;

    color: #a58342; 
    border: 3px solid #a58342;
    border-radius: 18px;
    background: #fff;
}

.procedure .conditions-content
{
    max-width: 830px; 
    margin: 0 auto 30px;
    padding: 40px 30px 30px;

    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #f0f0f0;
}

.procedure .conditions-title
{
    font-size: 24px;
    font-weight: bold;

    position: relative;
    position: relative;

    padding: 12px 144px;

    text-align: center;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; 
    background: #9b0303;
}
.procedure .conditions-title img
{
    position: absolute;
    top: 50%;
    left: 28px;

    display: block;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

.procedure .conditions-lead
{
    font-size: 28px;
    font-weight: bold;
    line-height: 1.4;

    margin-bottom: 10px; 

    text-align: center;

    color: #333;
}
.procedure .conditions-lead span
{
    font-size: 18px;
    font-weight: bold;
}
.procedure .conditions-lead sup
{
    font-size: 10px;

    vertical-align: text-top;
}
.procedure .conditions-lead.fc_red
{
    color: #9b0303;
}

.procedure .conditions-text,
.procedure .conditions-notes,
.procedure .conditions-notes_02
{
    font-size: 14px;

    text-align: center; 

    color: #333;
}

.procedure .conditions-notes_02
{
    max-width: 742px; 
    margin: 0 auto 10px;

    text-align: left;
}

.procedure .conditions-text
{
    margin-bottom: 50px;
}

.procedure .conditions-image_01
{
    display: block;

    margin: 0 auto 30px;
}

.procedure .conditions-image_02
{
    display: block;

    margin: 0 auto 10px;
}

.procedure .schedule-text
{
    font-size: 14px;

    margin-bottom: 20px;

    text-indent: 1em;
}

.procedure .schedule-image
{
    display: block;

    margin-bottom: 10px;
}
.procedure .schedule-image img
{
    max-width: 100%;
}

.procedure .schedule-notes
{
    font-size: 12px;
    line-height: 1.6;

    margin-bottom: 40px; 

    color: #787878;
}

.procedure-step
{
    padding: 30px;

    border-radius: 10px; 
    background: #f0f0f0;
}
.procedure-step li
{
    position: relative; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 30px;

    border-radius: 10px;
    background: #fff;

    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
.procedure-step li:after
{
    position: absolute;
    right: 0;
    bottom: -20px;
    left: 0;

    display: block;

    width: 20px;
    height: 12px;
    margin: 0 auto; 

    content: '';

    background: url('/static/img/procedure/ic_step.png') no-repeat center center;
}
.procedure-step li:nth-last-child(1)
{
    margin-bottom: 0;
}
.procedure-step li:nth-last-child(1):after
{
    content: none;
}
.procedure-step li span
{
    font-size: 16px;
    font-weight: bold;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100px;
    padding: 20px 10px;

    text-align: center;
    white-space: nowrap; 

    color: #fff;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #9b0303;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.procedure-step li p
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.4; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: calc(100% - 100px);
    padding: 10px 30px;

    color: #333;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.procedure-step-btn
{
    margin-top: 30px;
}

.procedure .payment-logo
{
    display: block;

    margin: 0 auto 40px;
}

.procedure .payment-text
{
    font-size: 14px;
    line-height: 1.9; 

    margin-bottom: 50px;
}

.procedure .payment-lead
{
    font-size: 20px;
    font-weight: bold;

    margin-bottom: 30px; 

    text-align: center;

    color: #9b0303;
}

.procedure .payment-card
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 20px;

    border-radius: 5px;
    background: #e0f1ff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.procedure .payment-card__image
{
    width: 250px;
}
.procedure .payment-card__image img
{
    margin: 0;
}
.procedure .payment-card__text
{
    width: calc(100% - 250px);
}
.procedure .payment-card__text p
{
    font-size: 14px;
    line-height: 1.9;
}

.procedure .benefits-title
{
    font-size: 24px;
    font-weight: bold;

    position: relative;
    position: relative;

    padding: 12px 144px;

    text-align: center;

    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; 
    background: #9b0303;
}

.procedure .benefits-content
{
    padding: 20px 28px 30px;

    border-bottom-right-radius: 10px; 
    border-bottom-left-radius: 10px;
    background: #f0f0f0;
}

.procedure .benefits-lead
{
    font-size: 24px;
    font-weight: bold;

    padding: 30px 0 50px;

    text-align: center; 

    color: #333;
}

.procedure .benefits-list li div
{
    font-size: 18px;
    font-weight: bold; 
    line-height: 2;

    position: relative;

    padding: 50px 24px 24px;

    color: #333;
    border-radius: 10px;
    border-radius: 10px;
    background: #fff;
}

.procedure .benefits-list li h4
{
    font-size: 22px;
    font-weight: bold;
    line-height: 1;

    position: relative;
    z-index: 2;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    max-width: 590px;
    height: 40px;
    margin: 0 auto;

    -webkit-transform: translateY(50%);
            transform: translateY(50%);

    color: #fff;
    border-radius: 9999px; 
    background: #5c5c5c;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.procedure .benefits-list li h4 span
{
    font-size: 18px;
}

.procedure .benefits-list li > span.red
{
    color: #9b0303;
}

.procedure .benefits-list li > span.fs_14
{
    font-size: 14px;
}

.procedure .benefits-list li p
{
    font-size: 18px;
    font-weight: bold;
    line-height: 2;

    margin-bottom: 10px; 
    padding-bottom: 10px;

    color: #333;
    border-bottom: 2px solid #f0f0f0;
}
.procedure .benefits-list li p:nth-last-child(1)
{
    margin-bottom: 0;
    padding-bottom: 0; 

    border-bottom: none;
}
.procedure .benefits-list li p span
{
    color: #9b0303;
}
.procedure .benefits-list li p span.notes
{
    font-size: 14px; 

    color: #333;
}
.procedure .benefits-list li p.small
{
    font-size: 12px;
    font-weight: normal; 
    line-height: 1.6;

    margin-bottom: 0;
    padding-bottom: 0;

    border-bottom: none;
}

.procedure .benefits-list li dl
{
    font-weight: bold;
}
.procedure .benefits-list li dl dt
{
    font-size: 20px;

    position: relative;

    padding-left: 1em;
}
.procedure .benefits-list li dl dt::before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 1em;
    height: 1em; 

    content: '・';
}
.procedure .benefits-list li dl dd
{
    font-size: 18px;

    margin-bottom: 10px;
    padding-bottom: 10px;
    padding-left: 1.2em; 

    border-bottom: 2px solid #f0f0f0;
}
.procedure .benefits-list li dl dd:nth-last-child(1)
{
    margin-bottom: 0;
    padding-bottom: 0;

    border-bottom: none;
}

.procedure .benefits-notes
{
    counter-reset: number 0;
}
.procedure .benefits-notes li
{
    font-size: 12px;
    line-height: 1.6;

    position: relative; 

    margin-bottom: 5px;
    padding: 0 0 0 3.8em;
}
.procedure .benefits-notes li:last-of-type
{
    margin-bottom: 0;
}
.procedure .benefits-notes li:before
{
    position: absolute;
    left: 0; 

    content: '（注' counter(number) '）';
    counter-increment: number 1;
}

.procedure .system
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.procedure .system dt
{
    font-size: 20px;
    font-weight: bold;

    width: 240px;
    margin-bottom: 30px; 

    white-space: nowrap;

    color: #9b0303;
}
.procedure .system dd
{
    font-size: 14px; 
    line-height: 1.8;

    width: calc(100% - 240px);
    margin-bottom: 30px;
}

@media screen and (max-width: 767px)
{
    .procedure-inner
    {
        padding: 25px 15px; 

        border: 4px solid #e8e7e7;
        border-radius: 5px;
    }
    .procedure-inner_02
    {
        padding: 25px 15px; 

        border-radius: 5px;
    }
    .procedure-title
    {
        font-size: 16px;
        font-weight: bold;
        line-height: 1.2; 

        padding-bottom: 10px;

        text-align: center;
    }
    .procedure-lead
    {
        font-size: 14px;
        font-weight: bold;

        margin-bottom: 20px; 

        text-align: center;

        color: #333;
    }
    .procedure .content-title
    {
        margin-bottom: 0;
        padding-bottom: 30px;
    }
    .procedure .content-title span
    {
        margin-bottom: 0; 
        padding-bottom: 0;
    }
    .procedure .conditions-icon
    {
        margin: 0 auto 20px;
        padding-bottom: 20px;

        border-bottom: 2px solid #f0f0f0;
    }
    .procedure .conditions-icon li
    {
        font-size: 14px; 

        height: 24px;
        padding: 0 10px;

        border: 2px solid #a58342;
        border-radius: 12px;
    }
    .procedure .conditions-content
    {
        margin: 0 auto 20px; 
        padding: 20px 8px 20px;

        border-bottom-right-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .procedure .conditions-title
    {
        font-size: 14px;

        position: relative;

        padding: 8px 65px;
        padding: 8px 0;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .procedure .conditions-title img
    {
        left: 7px; 

        width: 54px;
        height: auto;
    }
    .procedure .conditions-title span
    {
        font-size: 11px;
    }
    .procedure .conditions-lead
    {
        font-size: 14px;

        margin-bottom: 10px;

        vertical-align: text-top;
    }
    .procedure .conditions-lead span
    {
        font-size: 10px;
    }
    .procedure .conditions-lead sup
    {
        font-size: 7px;
        line-height: 1;
    }
    .procedure .conditions-text,
    .procedure .conditions-notes,
    .procedure .conditions-notes_02
    {
        font-size: 11px;

        text-align: center;
    }
    .procedure .conditions-notes_02
    {
        padding-top: 5px;
    }
    .procedure .conditions-text
    {
        margin-bottom: 35px;
    }
    .procedure .conditions-image_01
    {
        width: calc(100% - 20px); 
        margin-bottom: 20px;
    }
    .procedure .conditions-image_02
    {
        width: calc(100% - 20px); 
        margin-bottom: 0;
    }
    .procedure .schedule-text
    {
        font-size: 12px;

        margin-bottom: 10px;
    }
    .procedure .schedule-image
    {
        display: block;

        margin-bottom: 10px;
    }
    .procedure .schedule-notes
    {
        font-size: 9px;

        margin-bottom: 35px;
    }
    .procedure-step
    {
        padding: 20px 15px;

        border-radius: 5px;
    }
    .procedure-step li
    {
        margin-bottom: 32px;

        border-radius: 5px;
    }
    .procedure-step li:after
    {
        bottom: -20px; 

        width: 10px;
        height: 6px;

        background-size: 10px 6px;
    }
    .procedure-step li:nth-last-child(1)
    {
        margin-bottom: 0;
    }
    .procedure-step li:nth-last-child(1):after
    {
        content: none;
    }
    .procedure-step li span
    {
        font-size: 12px;
        line-height: 1.2; 

        width: 50px;
        padding: 10px 8px;

        border-top-left-radius: 5px;
        border-bottom-left-radius: 5px;
    }
    .procedure-step li p
    {
        font-size: 16px; 

        width: calc(100% - 50px);
        padding: 10px 15px;
    }
    .procedure-step-btn
    {
        margin-top: 25px;
    }
    .procedure .payment-logo
    {
        margin: 0 auto 20px;
    }
    .procedure .payment-text
    {
        margin-bottom: 30px;
    }
    .procedure .payment-text p
    {
        font-size: 14px;
        line-height: 1.9; 

        text-indent: 1em;
    }
    .procedure .payment-lead
    {
        font-size: 16px;

        margin-bottom: 20px; 

        text-align: left;
    }
    .procedure .payment-card
    {
        display: block; 

        padding: 20px;

        border-radius: 5px;
        background: #e0f1ff;
    }
    .procedure .payment-card__image
    {
        width: 200px;
        margin: 0 auto 30px;
    }
    .procedure .payment-card__image img
    {
        margin: 0;
    }
    .procedure .payment-card__text
    {
        width: 100%;
    }
    .procedure .payment-card__text p
    {
        font-size: 12px;
        line-height: 1.8;
    }
    .procedure .benefits-title
    {
        font-size: 14px;

        padding: 8px 20px;

        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
    .procedure .benefits-content
    {
        padding: 20px 12px 10px;

        border-bottom-right-radius: 10px; 
        border-bottom-left-radius: 10px;
        background: #f0f0f0;
    }
    .procedure .benefits-lead
    {
        font-size: 14px;

        padding: 30px 0;

        text-align: left;
    }
    .procedure .benefits-list li div
    {
        font-size: 12px;
        line-height: 1.6; 

        margin-bottom: 15px;
        padding: 10px;

        border-radius: 5px;
        border-radius: 10px;
    }
    .procedure .benefits-list li div > span.red
    {
        color: #9b0303;
    }
    .procedure .benefits-list li div > span.fs_14
    {
        font-size: 10px;
    }
    .procedure .benefits-list li h4
    {
        font-size: 14px;
        line-height: 1.4;

        display: block;

        width: 100%;
        height: auto;
        min-height: 30px;
        margin-bottom: 5px;
        padding: 6px 15px 5px;

        -webkit-transform: translateY(0);
                transform: translateY(0);
        text-align: center;

        border-radius: 15px;
        border-radius: 9999px;
    }
    .procedure .benefits-list li h4 span
    {
        font-size: 14px;
    }
    .procedure .benefits-list li p
    {
        font-size: 12px;
        line-height: 1.8;

        color: #333;
        border-bottom: 1px solid #f0f0f0;
    }
    .procedure .benefits-list li p:nth-last-child(1)
    {
        border-bottom: none;
    }
    .procedure .benefits-list li p span.notes
    {
        font-size: 10px; 

        display: block;
    }
    .procedure .benefits-list li p.small
    {
        font-size: 9px;
    }
    .procedure .benefits-list li dl
    {
        font-weight: bold;
        line-height: 1.6;
    }
    .procedure .benefits-list li dl dt
    {
        font-size: 14px;
    }
    .procedure .benefits-list li dl dd
    {
        font-size: 12px;

        border-bottom: 1px solid #f0f0f0;
    }
    .procedure .benefits-list li dl dd:nth-last-child(1)
    {
        border-bottom: none;
    }
    .procedure .benefits-notes li
    {
        font-size: 9px;
    }
    .procedure .system
    {
        display: block;
    }
    .procedure .system dt
    {
        font-size: 16px;

        width: 100%;
        margin-bottom: 10px;
    }
    .procedure .system dd
    {
        font-size: 12px; 

        width: 100%;
        margin-bottom: 20px;
    }
}
