@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");
@font-face {
    font-family: "icon";
    src: url("../fonts/icon.eot");
    src: url("../fonts/icon.eot?#iefix") format("eot"), url("../fonts/icon.woff") format("woff"), url("../fonts/icon.ttf") format("truetype"), url("../fonts/icon.svg#icon") format("svg");
    font-weight: normal;
    font-style: normal; }

html:has(.st-Menu-expanded) {
    overflow: hidden;
}

:root {
    --desktop-header-height: 96px;
    --mobile-header-height: 80px;
    --footer-height: 64px;
}

[class^="ico-"]:before, [class*=" ico-"]:before {
    display: inline-block;
    font-family: "icon";
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

[class^="af-ico-"]:after, [class*=" af-ico-"]:after {
    display: inline-block;
    font-family: "icon";
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }


article, section, header, footer, nav, menu, aside, figure, figcaption, main {
    display: block;
    padding: 0;
    margin: 0; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0; }

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

fieldset, img {
    border: 0; }

img {
    vertical-align: top; }

address, caption, cite, code, dfn, em, th, var {
    font-style: normal;
    font-weight: normal;
    text-decoration: none; }

a {
    vertical-align: baseline; }

ol, ul {
    list-style: none; }

caption, th {
    text-align: left; }

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
    vertical-align: bottom; }

q:before, q:after {
    content: ''; }

abbr, acronym {
    border: 0; }

input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    border: none;
    cursor: pointer; }
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none; }
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px; }

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }

select:not(.custom-select):not(.show-icon) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent; }

/* -------------------------------------
	footer
-------------------------------------- */
.tp-Footer {
    width: 100%;
    position: relative;
    padding: 0;
    margin-top: 3rem; }
@media only screen and (max-width: 768px) {
    .tp-Footer {
        background-position: right center; } }
.tp-Footer_Inner {
    margin: 0 auto;
    width: 1040px;
    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; }
@media only screen and (max-width: 768px) {
    .tp-Footer_Inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; } }
.tp-Footer_Txt > .lead {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 1rem; }
@media only screen and (max-width: 768px) {
    .tp-Footer_Txt > .lead {
        text-align: center;
        max-width: 65%;
        margin: 0 auto; } }
.tp-Footer_Txt-CmpName {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
@media only screen and (max-width: 768px) {
    .tp-Footer_Txt-CmpName {
        padding: 0 20px; } }
.tp-Footer_Txt-Fig {
    margin-left: 1.5rem;
    max-width: 20%; }

/* -------------------------------------
	footer index以外M
-------------------------------------- */
.st-Footer {
    width: 100%;
    position: relative;
    /*height: 80px;*/
    background-color: white;
    display: flex;
    align-items: center;
}
@media only screen and (max-width: 768px) {
    .st-Footer {
        background-position: right center; } }
.st-Footer_Inner {
    margin: 0 auto;
    width: 100%;
    padding: 0; }
.st-Footer_Copy {
    margin: 24px 0 0;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px; }
@media only screen and (max-width: 768px) {
    .st-Footer_Copy {
        font-size: 14px;} }

/* -------------------------------------
	header
-------------------------------------- */
.st-Header {
    position: relative;
    z-index: 100;
}
@media only screen and (max-width: 768px) {
    .st-Header {
        min-height: 0; } }
@media only screen and (max-width: 481px) {
    .st-Header {
        display: block; } }
.st-Header_Inner {
    position: fixed;
    margin: 0 auto;
    height: var(--desktop-header-height);
    padding: 0;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: 9999;
    box-shadow: 0px 0px 16px 0px #00000040;}
.noTel .st-Header_Inner {
    height: 100px;
    }

    @media only screen and (min-width: 768px) and (max-width: 1023px) {
        .noTel .st-Header_Inner {
            height: var(--tablet-header-height) !important;
        }

        .st-Header_Inner {
            height: var(--tablet-header-height) !important;
        }
    }

    @media only screen and (max-width: 1023px) {
        .noTel .st-Header_Inner {
            height: var(--mobile-header-height);
        }
    }

    @media only screen and (max-width: 1023px) {
        .st-Header_Inner {
            height: var(--mobile-header-height);
        }
    }
.st-Header_Inner-cnt {
    max-width: 1360px;
    padding: 0 20px;
    margin: 0 auto;
    height: var(--desktop-header-height);
    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;
    position: relative;
    z-index: 9999;}
.noTel .st-Header_Inner-cnt {
    height: 100px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .st-Header_Inner-cnt {
        height: var(--tablet-header-height) !important;
    }
}
@media only screen and (max-width: 767px) {
    .noTel .st-Header_Inner-cnt {
        height: var(--mobile-header-height); } }
@media only screen and (max-width: 767px) {
    .st-Header_Inner-cnt {
        height: var(--mobile-header-height); } }
@media only screen and (max-width: 414px) {
    .st-Header_Inner-cnt {
        padding-left: 16px;} }
.st-Header_Logo {
    max-width: 370px; }
@media only screen and (max-width: 768px) {
    .st-Header_Logo {
        width: 70%;
    }

    .st-Header_Logo img {
        max-width: 100%;
    }
}
.st-Header_Assist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
@media only screen and (max-width: 1023px) {
    .st-Header_Assist {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .st-Menu {
        display: none;
        position: fixed;
        top: 70px;
        left: 0;
        height: calc(100vh - 70px);
        width: 100%;
        background-color: #FFFFFF;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
        z-index: 999;
    }

    .st-Menu-expanded {
        display: block;
        -webkit-animation: showNavigation .2s linear 0s;
        animation: showNavigation .2s linear 0s;
        overflow-y: scroll;
    }

    .st-Header_Assist {
        margin-top: 57px;
        flex-direction: column-reverse;
    }

    .st-Header_Assist>*:not(:first-child) {
        margin-bottom: 1.5rem;
    }

    .st-Header_Btns {
        flex-direction: column-reverse;
    }

    .st-Header_Btns>*:not(:first-child) {
        margin-bottom: 1.5rem;
    }

    .st-Header_Btns>p {
        margin: 0;
    }

    .st-Header_Btn {
        width: 194px;
    }

    .st-Header_Tel {
        width: 194px;
        height: 40px;
        border: 1.09px solid #4A5796;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50px;
    }

    .st-Header_TelNum-number {
        font-size: 20px !important;
    }
}
.st-Header_Tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.st-Header_Tel-icon {
    margin-right: 10px;
}

.st-Header_TelNum {
    font-size: 12px;
    font-weight: 500;
    color: #333333;
    text-align: center;
    line-height: 1.2;
    margin-right: 20px;
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.st-Header_TelNum div {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .461rem;
}

.st-Header_TelNum div a {
    text-decoration: none;
}

@media only screen and (max-width: 768px) {
    .st-Header_TelNum div {
        gap: 0 !important;
    }

    .st-Header_TelNum div>*:not(:first-child) {
        margin-left: .461rem;
    }

    .st-Header_TelNum {
        margin-right: 0;
    }
}

.st-Header_TelNum-number {
    font-size: 24px;
    font-weight: 700;
    color: #4A5796 !important;
}
.st-Header_Btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1rem; }
.st-Header_Btns-txt {
    color: #fff;
    margin-right: 1rem;
    margin-top: 0 !important; }
.st-Header_Btn {
    margin-right: 16px; }
.st-Header_Btn:last-child {
    margin-right: 0; }
.st-Header_Btn-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-width: 140px;
    min-height: 40px;
    color: #fff;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
    border-radius: 50px;
    -webkit-transition: background-color 0.5s;
    transition: background-color 0.5s;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;}

.st-Header_Btn-link.blue {
    background-color: #209ABA; }
.st-Header_Btn-link.primary {
    background-color: var(--indigo-700);
    color: var(--white);}
.st-Header_Btn-link.green {
    background-color: #73BA20; }
.st-Header_Btn-link.yellow {
    background-color: #F3C921;
    color: #333333; }
.st-Header_Btn-link.white {
    background-color: var(--white);
    color: var(--indigo-700);
    border: 1px solid var(--indigo-700);}

@media only screen and (min-width: 769px) {
    .st-Header_Btn-link:hover {
        color: #fff; }
    .st-Header_Btn-link.blue:hover {
        background-color: #42B1CE; }
    .st-Header_Btn-link.green:hover {
        background-color: #91C457; }
    .st-Header_Btn-link.yellow:hover {
        background-color: #F6E18D; }
    .st-Header_Btn-link.primary:hover {
        background-color: var(--indigo-500);
        color: var(--white);}
    .st-Header_Btn-link.white:hover {
        background-color: var(--white);
        color: var(--slate-blue);
        border: 1px solid var(--slate-blue);} }
.st-Header_Menu {
    display: none; }
@media only screen and (max-width: 1023px) {
    .st-Header_Menu {
        display: block; } }
.st-Header_Menu_Btn {
    position: absolute;
    top: 0;
    right: 0px;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-items: center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    width: 70px;
    height: 70px; }
.st-Header_Menu_Btn:focus {
    border: none; }
.st-Header_Menu_Btn dl {
    width: 30px;
    height: 30px;
    color: #fff;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
.st-Header_Menu_Btn dl dd {
    position: absolute;
    top: 2px;
    margin-top: 0;
    margin-bottom: 0; }
.st-Header_Menu_Btn dl dd span {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    display: inline-block;
    position: absolute;
    left: 0;
    width: 30px;
    height: 2px;
    background-color: #333; }
.st-Header_Menu_Btn dl dd span:nth-of-type(1) {
    top: 0px; }
.st-Header_Menu_Btn dl dd span:nth-of-type(2) {
    top: 10px; }
.st-Header_Menu_Btn dl dd span:nth-of-type(3) {
    top: 20px; }
.st-Header_Menu_Btn dl dd.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg); }
.st-Header_Menu_Btn dl dd.active span:nth-of-type(2) {
    opacity: 0; }
.st-Header_Menu_Btn dl dd.active span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(45deg);
    transform: translateY(-11px) rotate(45deg); }

.st-Menu {
    position: relative; }
@media only screen and (max-width: 1023px) {
    .st-Menu {
        display: none;
        position: fixed;
        top: calc(var(--mobile-header-height));
        left: 0;
        height: calc(100vh - ( calc(var(--mobile-header-height))));
        width: 100%;
        background-color: #fff;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
        z-index: 999;}
    .st-Menu-expanded {
        display: block;
        -webkit-animation: showNavigation .2s linear 0s;
        animation: showNavigation .2s linear 0s;
        overflow-y: scroll; } }

@-webkit-keyframes showNavigation {
    from {
        opacity: 0; }
    to {
        opacity: 1; } }

@keyframes showNavigation {
    from {
        opacity: 0; }
    to {
        opacity: 1; } }

@-webkit-keyframes showAnime {
    from {
        opacity: 0; }
    to {
        opacity: 1; } }

@keyframes showAnime {
    from {
        opacity: 0; }
    to {
        opacity: 1; } }
 
/* -------------------------------------
	a
-------------------------------------- */
a {
    color: #747FB8;
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
    position: relative; }
a.pdf:after, a.xls:after, a.doc:after, a.blank:after {
    display: inline-block;
    padding: 0 4px;
    vertical-align: middle; }
a.pdf:after {
    content: url("/img/common/ico-pdf.png");
    display: inline-block; }
a.xls:after {
    content: url("/img/common/ico-excel.png");
    display: inline-block; }
a.doc:after {
    content: url("/img/common/ico-word.png");
    display: inline-block; }
a.blank:after {
    content: url("/img/common/ico-blank.png");
    display: inline-block;
    margin-top: -5px;
    padding-right: 0.5em; }
@media only screen and (min-width: 769px) {
    a:hover {
        color: #615EA8;
        text-decoration: none; } }
a.tel-disable {
    color: #333333;
    cursor: default;
    text-decoration: none !important; }

@media only screen and (min-width: 769px) {
    a.tel-disable:hover {
        cursor: default;
        color: #333333;
        text-decoration: none; } }
a.noIcon:after {
    display: none !important; }

a[href^="tel:"] {
    text-decoration: none; }

a[target="_blank"]:not(.btn):after {
    /* content: url("/img/common/ico-blank.png"); */
    display: inline-block;
    margin-top: -5px;
    padding-left: .5rem;}

/* -------------------------------------
	table
-------------------------------------- */
table {
    width: 100%;
    margin: 2em auto;
    border-top: 1px solid #34308F;
    border-left: 1px solid #34308F; }
h2 + table,
h3 + table,
h4 + table,
h4 + .swipe table {
    margin-top: 1.2rem; }
@media only screen and (max-width: 768px) {
    table.block th, table.block td {
        display: block; } }
table.narrow th, table.narrow td {
    padding: 5px; }
table th, table td {
    line-height: 1.5; }
@media only screen and (max-width: 768px) {
    table th, table td {
        line-height: 1.3; } }
table thead tr th, table thead tr td {
    border-right: 1px solid #BFC8D1;
    border-bottom: 1px solid #BFC8D1;
    padding: 16px 10px;
    text-align: center;
    color: #fff; }
@media only screen and (max-width: 768px) {
    table thead tr th, table thead tr td {
        padding: 10px 5px; } }
table thead tr th {
    font-weight: bold; }
table tfoot {
    background: #d5e4ea; }
table tfoot tr th, table tfoot tr td {
    border-right: 1px solid #BFC8D1;
    border-bottom: 1px solid #BFC8D1;
    padding: 14px 10px;
    text-align: center;
    font-weight: bold; }
@media only screen and (max-width: 768px) {
    table tfoot tr th, table tfoot tr td {
        padding: 10px 5px; } }
table tbody {
    background: #fff; }
table tbody tr th {
    text-align: center;
    font-weight: bold; }
table tbody tr th, table tbody tr td {
    border-right: 1px solid #34308F;
    border-bottom: 1px solid #34308F;
    padding: 14px 10px;
    font-size: 15px;
    font-size: 0.9375rem; }
@media only screen and (max-width: 768px) {
    table tbody tr th, table tbody tr td {
        padding: 8px 5px; } }
table tbody tr th > *:first-child, table tbody tr td > *:first-child {
    margin-top: 0; }
table tbody tr th > *:last-child, table tbody tr td > *:last-child {
    margin-bottom: 0; }
table caption {
    font-weight: bold;
    font-size: 17px;
    font-size: 1.0625rem;
    margin-bottom: 0.7em; }
table + table, table + div.swipe {
    margin-top: 3em; }
table + p.note,
table + ul.notes {
    margin-top: -1.2em; }

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 0;
    min-height: auto; }

em {
    color: #34308F;
    font-weight: 500; }

body {
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    width: 100%;
    font-size: small;
    font: x-small;
    -webkit-text-size-adjust: 100%;
    line-height: 1.65;
    font-size: 16px;
    font-size: 100%;
    position: relative;
    color: #333333; }
@media only screen and (max-width: 768px) {
    body {
        min-width: 320px;
        padding-bottom: 0; } }

@media print {
    body {
        -webkit-print-color-adjust: exact;
        width: 1100px;
        transform: scale(1);
        -moz-transform: scale(1);
        -webkit-transform: scale(1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0; } }

@media all and (-ms-high-contrast: none) {
    body {
        font-family: "Noto Sans Japanese", "メイリオ", Meiryo, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; } }

ul,
ol {
    list-style-type: none; }

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

figure figcaption {
    margin-top: .5rem;
    font-size: 15px;
    font-size: 0.9375rem; }

strong,
.strong {
    font-weight: 700; }

em {
    font-weight: bold; }

.st-Contents {
    min-height: calc(100vh - var(--desktop-header-height) - var(--footer-height));
}
.st-Contents.myPage {
    background-color: #F6F9FB;
    padding-bottom: 1rem; }
.st-Contents.noTel {
    margin-top: var(--desktop-header-height); }
@media only screen and (max-width: 768px) {
    .st-Contents {
        min-height: calc(100vh - var(--mobile-header-height) - var(--footer-height));
    }
    .st-Contents.noTel {
        margin-top: var(--mobile-header-height); } }
@media only screen and (max-width: 768px) {
    .st-Contents {
        margin-top: var(--mobile-header-height);
        padding-top: 1.5rem; } }

.st-Main {
    width: 100%;
    max-width: 1132px;
    margin: 0rem auto;
    padding: 20px;
    position: relative; }
@media only screen and (max-width: 991px) {
    .st-Main {
        max-width: 95%;
        padding: 0;
        margin-top: 1rem;
        background-color: transparent;
        -webkit-box-shadow: none;
        box-shadow: none; } }
.st-Main > *:first-child {
    margin-top: 0; }
.st-Main > h1 {
    font-size: 32px;
    position: relative;
    padding: 20px 0;
    font-weight: 700;
    text-align: center; }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .st-Main > h1 {
        font-size: 32px;
        line-height: 1.2;
        padding: 0 5px 15px; } }
@media only screen and (max-width: 767px) {
    .st-Main > h1 {
        font-size: 26px;
        line-height: 1.2;
        padding: 0 5px 15px; } }
.st-Main > h1::before, .st-Main > h1::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    border-radius: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); }
.st-Main > h1::before {
    width: 293px;
    height: 4px;
    background-color: #CFCFCF; }
.st-Main > h1::after {
    width: 143px;
    height: 4px;
    background-color: var(--orange-600);
    border-radius: 2px;}
    .st-Main > h1::after {
      width: 143px;
      height: 4px;
      background-color: var(--orange-600); }
  .st-Main h2 {
    /* margin-top: 3rem; */
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 700;
    position: relative;
    padding: 0 .5rem 1rem; }
@media only screen and (max-width: 767px) {
    .st-Main h2 {
        font-size: 20px;
        font-size: 1.25rem; } }
.st-Main h2:before, .st-Main h2:after {
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 2px;}
.st-Main h2::before {
    background-color: var(--indigo-700);
    width: 100%; }
.st-Main h2::after {
    background-color: var(--indigo-700);
    width: 405px; }
.st-Main h3 {
    font-size: 30px;
    font-size: 1.875rem;
    border-left: 5px solid #34308F;
    position: relative;
    margin-top: 3rem;
    padding: 0 15px;
    font-weight: 500; }
.st-Main h4 {
    margin-top: 3rem;
    position: relative;
    font-weight: 700;
    color: #34308F;
    font-size: 20px;
    font-size: 1.25rem;
    padding-left: 1rem;
    border-bottom: 1px solid #34308F; }
@media only screen and (max-width: 768px) {
    .st-Main h2::after {
        background-color: var(--indigo-700);
        width: 200px; }
}
.st-Main h1 + h2,
.st-Main h2 + h3,
.st-Main h3 + h4,
.st-Main > section:first-of-type,
.st-Main > div:first-of-type:not(.breadcrumb) {
    margin-top: 2rem; }
.st-Main > section,
.st-Main > div {
    padding: 0 0px; }
.st-Main > section figure,
.st-Main > div figure {
    margin-top: 2rem; }
.st-Main > section,
.st-Main > div {
    margin-top: 4rem; }
.st-Main > section > *:first-child,
.st-Main > div > *:first-child {
    margin-top: 0; }
.st-Main p {
    margin-top: 1.5rem; }
.st-Main p.lead {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
    font-weight: 700; }

.st-Main dl {
    margin-top: 1rem;
    width: 100%;
    padding: 0 15px; }
.st-Main dl dt {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;
    margin-top: 1rem; }
.st-Main dl dt small {
    font-weight: 400; }
.st-Main dl dd {
    margin-top: .5rem; }
.st-Main ol:not([class]) {
    padding: 0 15px;
    margin-top: 1rem;
    counter-reset: num; }
.st-Main ol:not([class]) > li {
    position: relative;
    padding: 0 0 0 1.5em; }
.st-Main ol:not([class]) > li:before {
    font-family: 'Arial', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', ‘游ゴシック体’, ‘Yu Gothic’, ‘YuGothic’, Meiryo, メイリオ, sans-serif;
    counter-increment: num;
    content: counter(num) ".";
    position: absolute;
    top: 2px;
    left: 0px;
    font-weight: 700; }
.st-Main ol:not([class]) > li ol > li {
    padding: 0 0 0 27px; }
.st-Main ol:not([class]) > li ol > li:before {
    left: 2px;
    font-size: 13px;
    content: counters(num, "-") "."; }
.st-Main ol:not([class]) > li ol.with_Number > li {
    margin: 10px 0;
    padding: 0;
    text-indent: -1rem;
    padding-left: 1rem; }
.st-Main ol:not([class]) > li ol.with_Number > li:before {
    display: none; }
.st-Main ol:not([class]) > li > ul {
    counter-reset: num;
    margin: 5px auto; }
.st-Main ol:not([class]) > li > ul li:before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    position: absolute;
    left: 0;
    top: 10px;
    background: #c2cfe4;
    border-radius: 6px; }
.st-Main ul {
    margin: 1rem 0 2rem; }
.st-Main ul:not([class]) {
    padding: 0 15px; }
.st-Main ul:not([class]) li {
    position: relative;
    padding-left: .8rem;
    margin-bottom: .25rem; }
.st-Main ul:not([class]) li:before {
    background-color: #000;
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    position: absolute;
    top: 10px;
    left: 0;
    line-height: 1; }
.st-Main ul:not([class]) li ul {
    margin: 0; }

.st-formBack {
    background-color: #f4f4f9;
    padding: 1rem .5rem 1.5rem;
    margin-top: 1.5rem; }
.st-formBack > *:first-child {
    margin-top: 0; }

input[type="number"]:not(.custom-input-number) {
    outline: none;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #BFC8D1;
    padding: .5rem;
    min-height: 40px;
    min-width: 100%;
    font-size: 1rem;
    -webkit-transition: border-color 0.5s;
    transition: border-color 0.5s;
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.st-formArea input[type="text"],
.st-formBack input[type="text"] {
    width: 100%;
    outline: none;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #BFC8D1;
    padding: .5rem;
    min-height: 40px;
    min-width: 100%;
    font-size: 16px;
    font-size: 1rem;
    -webkit-transition: border-color 0.5s;
    transition: border-color 0.5s;
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.st-formArea input[type="password"],
.st-formBack input[type="password"] {
    width: 100%;
    outline: none;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #BFC8D1;
    padding: .5rem;
    min-height: 40px;
    min-width: 100%;
    font-size: 16px;
    font-size: 1rem;
    -webkit-transition: border-color 0.5s;
    transition: border-color 0.5s;
    font-family: Nunito;}
.st-formArea input[type="text"]:focus-visible,
.st-formArea input[type="password"]:focus-visible,
.st-formBack input[type="text"]:focus-visible,
.st-formBack input[type="password"]:focus-visible,
input[type="number"]:not(.custom-input-number):focus-visible {
    border-color: #F39F21;
    box-shadow: none;}

.st-formArea button,
.st-formBack button {
    min-width: 170px;
    text-align: center;
    color: #fff;
    background-color: #34308F;
    border-radius: 5px;
    min-height: 40px;
    -webkit-transition: background-color 0.5s;
    transition: background-color 0.5s; }
@media only screen and (max-width: 768px) {
    .st-formArea button,
    .st-formBack button {
        min-width: auto;
        padding: 0 .5rem;
        font-size: 16px;
        font-size: 1rem; } }

@media only screen and (min-width: 769px) {
    .st-formArea button:hover,
    .st-formBack button:hover {
        background-color: #209ABA; } }

.st-formArea select,
.st-formBack select {
    cursor: pointer;
    background-color: white;
    border-radius: 5px;
    display: inline-block;
    padding: .5rem;
    font-size: 16px;
    font-size: 1rem;
    border: 1px solid #BFC8D1 !important;
    line-height: 1.5em;
    padding: 0.5em 3.5em 0.5em 1em;
    background-image: url("/img/common/select-down-arrow.png") !important;
    background-position: calc(100%) calc(0em + 0px), calc(100%) calc(0em + 0px), 100% 0 !important;
    background-size: 40px !important;
    background-repeat: no-repeat !important; }

.st-formBack select:disabled {
    background-color: #F5F5F5;
    color: #444444;
    opacity: 1;
    cursor: not-allowed }

.st-formArea input[type="checkbox"],
.st-formBack input[type="checkbox"] {
    display: none; }
.st-formArea input[type="checkbox"]:hover + label::before,
.st-formBack input[type="checkbox"]:hover + label::before {
    border-color: #D7D6E9; }
.st-formArea input[type="checkbox"]:checked + label::after,
.st-formBack input[type="checkbox"]:checked + label::after {
    box-sizing: initial !important;
    opacity: 1; }
.st-formArea input[type="checkbox"]:checked + label::before,
.st-formBack input[type="checkbox"]:checked + label::before {
    background-color: #4A5796;
    border-color: #D7D6E9;
}

.st-formArea input[type="radio"],
.st-formBack input[type="radio"] {
    display: none; }
.st-formArea input[type="radio"] + label,
.st-formBack input[type="radio"] + label {
    position: relative; }
.st-formArea input[type="radio"] + label:before,
.st-formBack input[type="radio"] + label:before {
    width: 16px;
    height: 16px;
    border-radius: 8px;
    top: 3px; }
.st-formArea input[type="radio"] + label:after,
.st-formBack input[type="radio"] + label:after {
    position: absolute;
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #4A5796;
    opacity: 0;
    content: "";
    top: 10px;
    left: .19rem;
    border: none !important;
    -webkit-transition: opacity 0.4s;
    transition: opacity 0.4s; }
.st-formArea input[type="radio"]:checked + label::after,
.st-formBack input[type="radio"]:checked + label::after {
    opacity: 1; }

.st-formArea label,
.st-formBack label {
    position: relative;
    margin-bottom: 1rem;
    display: inline-block;
    text-indent: -32px;
    padding-left: 32px; }
.st-formArea label::before,
.st-formBack label::before {
    width: 24px;
    height: 24px;
    box-sizing: border-box;
    border-radius: 5px;
    display: inline-block;
    background-color: #fff;
    border: 1px solid #BFC8D1;
    content: "";
    position: relative;
    top: 6px;
    margin-right: .5rem; }
.st-formArea label::after,
.st-formBack label::after {
    height: 9px;
    width: 3px;
    border-bottom: 3px solid #FFFFFF;
    border-right: 3px solid #FFFFFF;
    transform: rotate(45deg);
    /*margin: 20px;*/
    font-family: "icon";
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    content: "";
    font-size: 30px;
    font-size: 1.875rem;
    position: absolute;
    text-decoration: none;
    top: 9.2px;
    left: 8.5px;
    line-height: 15px;
    color: #FFFFFF;
    padding: 1px;
    opacity: 0;
    -webkit-transition: opacity 0.1s;
    transition: opacity 0.1s; }

.st-formArea textarea,
.st-formBack textarea {
    border-radius: 5px;
    border-width: 1px;
    border-color: #BFC8D1;
    border-style: solid;
    width: 100%;
    height: 10rem;
    padding: .5rem;
    outline: none;
    font-size: 16px;
    font-size: 1rem;
    -webkit-transition: border-color 0.5s;
    transition: border-color 0.5s; }
.st-formArea textarea:focus-visible,
.st-formBack textarea:focus-visible {
    border-color: #F39F21;
    box-shadow: none}

.st-Btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 2rem;
    margin-bottom: 4rem; }
.st-Btns.right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
@media only screen and (max-width: 768px) {
    .st-Btns.right {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
    .st-Btns.right > * {
        margin-left: 1rem; }
    .st-Btns.right > *:first-child {
        margin-left: 0; } }
.st-Btns_Btn {
    min-width: 290px;
    min-height: 60px;
    background-color: #615EA8;
    border-radius: 10px;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    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;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    margin-left: 1rem;
    line-height: 28px;
    text-decoration: none;
    margin-top: 1rem; }
@media only screen and (max-width: 768px) {
    .st-Btns_Btn {
        font-size: 18px;
        min-height: 50px;
        margin-left: 0;
        margin-top: 1rem; } }
.st-Btns_Btn:first-child {
    margin-left: 0; }
.st-Btns_Btn.green {
    background-color: #5EA885; }
.st-Btns_Btn.blue {
    background-color: var(--cerulean-blue); }
@media only screen and (min-width: 769px) {
    .st-Btns_Btn.blue:hover {
        background-color: var(--sea-serpent);
        color: var(--white); }  }
.st-Btns_Btn.primary {
    background-color: var(--indigo-700);
    color: var(--white);}

@media only screen and (min-width: 769px) {
    .st-Btns_Btn.primary:hover {
        background-color: var(--indigo-500);
        color: var(--white);} }
.st-Btns_Btn.brown {
    background-color: #A8855E; }
.st-Btns_Btn.red {
    background-color: #A85E77; }
.st-Btns_Btn.login {
    background-color: #73BA20; }
.st-Btns_Btn.confirm {
    background-color: var(--mango-tango);
    color: var(--white);
}
@media only screen and (min-width: 769px) {
    .st-Btns_Btn.confirm:hover {
        background-color: var(--atomic-tangerine);
        color: var(--white);} }

.st-Btns_Btn.confirm-outline {
    border: 1px solid var(--mango-tango);
    background: var(--white);
    color: var(--mango-tango);
}
@media only screen and (min-width: 769px) {
    .st-Btns_Btn.confirm-outline:hover {
        border: 1px solid var(--atomic-tangerine);
        background: var(--white);
        color: var(--atomic-tangerine);} }
.st-Btns_Btn.white {
    background-color: var(--white);
    color: var(--cerulean-blue);
    border: 1px solid var(--cerulean-blue); }

@media only screen and (min-width: 769px) {
    .st-Btns_Btn.white:hover {
        color: var(--sea-serpent);
        border: 1px solid var(--sea-serpent); }
    [class="st-Btns_Btn"]:hover {
        opacity: .6;} }

.mc-Index {
    width: 100%;
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 10px; }

.mc-Index_Link {
    border: 5px solid #34308F;
    background-color: #fff;
    border-radius: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-decoration: none;
    height: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .5rem;
    -webkit-transition: background-color 0.5s;
    transition: background-color 0.5s; }

@media only screen and (max-width: 768px) {
    .mc-Index {
        display: block;
        margin-top: 0 !important; } }

@media only screen and (min-width: 769px) {
    .mc-Index_Link:hover {
        background-color: #EAE9FF; } }

div.swipe {
    margin-top: 1rem !important; }
@media only screen and (max-width: 768px) {
    div.swipe {
        overflow-x: scroll;
        width: 100%;
        position: relative; }
    div.swipe table {
        width: 900px; } }
div.swipe .swipe-icon {
    position: absolute;
    top: 120px;
    left: 50%;
    margin-left: -75px;
    margin-top: -75px;
    width: 150px;
    height: 150px;
    background: #333;
    text-align: center;
    opacity: 0.3;
    filter: alpha(opacity=30); }
div.swipe .swipe-icon img {
    width: 91px;
    padding-top: 16px; }

div.box {
    border: 1px dotted #34308F;
    padding: .5rem 1rem; }
div.box.blue {
    border: 1px solid #34308F;
    background-color: #eef1f6; }
div.box.blue *:last-child {
    margin-bottom: 0; }

.mc-Result_Txt {
    text-align: center;
    margin-top: 0 !important; }
@media only screen and (max-width: 768px) {
    .mc-Result_Pagenation {
        margin-top: .5rem; } }
.mc-Result_Pagenation-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
@media only screen and (max-width: 768px) {
    .mc-Result_Pagenation-list {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; } }
.mc-Result_Pagenation-list > li {
    margin-right: .5rem;
    font-size: 14px;
    font-size: 0.875rem; }
.mc-Result_Pagenation-list > li.first::before {
    content: "<<";
    display: inline-block;
    margin-right: .2rem; }
.mc-Result_Pagenation-list > li.prev::before {
    content: "<";
    display: inline-block;
    margin-right: .2rem; }
.mc-Result_Pagenation-list > li.next::after {
    content: ">";
    display: inline-block;
    margin-left: .2rem; }
.mc-Result_Pagenation-list > li.last::after {
    content: ">>";
    display: inline-block;
    margin-left: .2rem; }

.mc-error_List {
    padding: 1.5rem;
    border: 1px solid #bc1f21;
    background-color: #f7ecec; }
.mc-error_List li {
    position: relative;
    padding-left: .8rem;
    margin-bottom: .25rem;
    color: #bc1f21; }
.mc-error_List li:before {
    background-color: #bc1f21;
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    position: absolute;
    top: 10px;
    left: 0;
    line-height: 1; }

/*# sourceMappingURL=map/style.css.map */


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

.mt-1 {
    margin-top: 1rem !important;
}

.gap-2 {
    gap: 2rem;
}


.modal__container,
.preview-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 9999999999;
    top: 50%;
    right: 0;
    left: 0;
    bottom: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    padding: 0 1rem;
}

.preview-image {
    max-width: 440px;
    max-height: auto;
    position: relative;
    border-radius: 16px;
    border: 1px solid #DDE1E6;
    width: 100%;
    height: auto;
}
.preview-image .btn-modal-close{
    position: absolute;
    z-index: 1;
    right: 8px;
    top: 8px;
}

.modal {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.4rem;
    padding: 1.3rem;
    min-height: 250px;
    background-color: white;
    border-radius: 16px;
    border: 1px solid #DDE1E6;
    width: 100%;
}

.modal_login {
    background-color: white;
    width: 472px;
    border-radius: 16px;
    padding: 16px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.modal .modal__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 24px;
    padding: 0 1rem;
}

.modal .modal__footer > button,
.modal .modal__footer > a {
    font-size: 18px;
    font-weight: 700;
    line-height: 26px;
    min-width: 190px;
    min-height: 48px;
    border-radius: 8px;
    padding: 10px 24px;
    text-decoration: none;
    text-align: center;
}

.modal input {
    padding: 0.7rem 1rem;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 0.9em;
}

.modal p {
    text-align: center;
    font-weight: 500;
    font-size: 1rem;
    line-height: 24px;
    color: #333333;
}

.modal .modal__content > p:not(:nth-child(1)) {
    margin-bottom: 1rem !important;
}

.modal .modal__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    margin-bottom: 1rem !important;
}

.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #000000B2;
    z-index: 999999999;
}

.modal {
    z-index: 99999999999;
}

.hidden {
    display: none;
}

@media only screen and (min-width: 769px) {
    .modal {
        max-width: 472px;
    }
}
@media only screen and (max-width: 768px) {
    .modal_login {
        background-color: white;
        width: 326px;
        border-radius: 16px;
        padding: 16px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .modal .modal__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 1rem;
        padding: 0;
    }
    .modal .modal__footer > button {
        min-width: 144px;
        min-height: 40px;
        font-size: 16px;
        line-height: 22.4px;
        font-weight: 700;
    }
    .modal .modal__title {
        font-size: 18px;
        font-weight: 700;
        line-height: 26px;
    }

    .modal p {
        font-size: 14px;
        line-height: 20px;
        font-weight: 700;
    }
}

input[type="password"] {
    font-family: system-ui, sans-serif !important;
    -webkit-text-security: disc;
}

    /* 利用規約・プラポリテキスト用 */
.policyLinkText {
    color: #333333;
    font-size: 14px;
    font-weight: 700;
    line-height: 21px;
}

@media only screen and (min-width: 768px) {
    .policyLinkText:hover {
        color: #333333 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }
}

.news__item--read .news-date,
.news__item--read .notice-date,
.news__item--read .news__item-date {
    color: #999999;

}

.news__item--read .news__item-text,
.news__item--read .notice-description {
    color: #999999;
}

.blog-user-link {
    color: #003ACE !important;
}