@charset "UTF-8";
/*—————————————————————————————————————————————————————
　横幅／高さ／余白設定
—————————————————————————————————————————————————————*/
:root {
    /* 横幅【PC幅のみ】 */
    --width-side: 26rem;
    --width-contents_max: 111.2rem;
    --width-form_max: 80rem;
    --width-modal_max: 90rem;
    --width-table_dt: 36%;
    --width-table_dd: 64%;
    /* 高さ【ヘッダのみ】 */
    --height-header_lg: 7.6rem;
    --height-header_mdsm: 6rem;
    /* グリッドシステムの余白 */
    --padding-grid_lgmd: 1.5rem;
    --padding-grid_sm: 0.8rem;
    --padding-grid-inner_lgmd: 3rem;
    --padding-grid-inner_sm: 1.6rem;
    /* コンテンツの左右余白 */
    --padding-contents-lr_lg: 3rem;
    --padding-contents-lr_mdsm: 1.6rem;
}

/*—————————————————————————————————————————————————————
　カラー設定
—————————————————————————————————————————————————————*/
:root {
    --color-key: #2A3944;
    --color-body_bg: #F2F3F5;
    /* テキスト */
    --color-txt: #2A3944;
    --color-txt_rgb: 42, 57, 68;
    --color-txt_contrast: #FFFFFF;
    --color-txt_contrast_rgb: 255, 255, 255;
    --color-txt_l: #797E81;
    /* リンク */
    --color-link: #0084E8;
    --color-link_contrast: #FFFFFF;
    --color-link_hover: #0067b5;
    --color-link_hover_bg: rgba(0, 132, 232, 0.08);
    /* 罫線 */
    --color-border: #C5CBD6;
    --color-border_l: rgba(197, 203, 214, 0.5);
    /* ボタンやアラートなどエレメントカラー */
    --color-default: #F2F3F5;
    --color-primary: #0084E8;
    --color-primary_rgb: 0, 132, 232;
    --color-secondary: #826AC5;
    --color-secondary_rgb: 130, 106, 197;
    --color-success: #00aa6e;
    --color-success_rgb: 0, 170, 110;
    --color-info: #00aff0;
    --color-info_rgb: 0, 175, 240;
    --color-danger: #dd4b39;
    --color-danger_rgb: 221, 75, 57;
    --color-warning: #f39c12;
    --color-warning_rgb: 243, 156, 18;
    --color-disable: rgba(42, 57, 68, 0.1);
    --color-disable_txt: rgba(42, 57, 68, 0.5);
    /* ヘッダ */
    --color-header_txt: #2A3944;
    --color-header_bg: #FFFFFF;
    --color-body_icon: #797E81;
    --color-body_dropdown_bg: #2A3944;
    --color-body_dropdown_hover: #202c34;
    /* サイド */
    --color-side_txt: rgba(255, 255, 255, 0.8);
    --color-side_icon: rgba(255, 255, 255, 0.4);
    --color-side_bg: #2A3944;
    --color-side_hover: #202c34;
    --color-side_open_bg: #24313b;
    --color-side_active: #1a242b;
    --color-side_active_txt: white;
    /* コンテンツボックス */
    --color-content-bg: #FFFFFF;
    --color-content-bg_dark: #2A3944;
    --color-content-border: rgba(197, 203, 214, 0.8);
    --color-content-shadow: #dbdee3;
    /* タイトル */
    --color-ttl_bg: #dbdee3;
    /* テーブル */
    --color-table_thead_bg: rgba(242, 242, 242, 0.8);
    --color-table_th_bg: rgba(42, 57, 68, 0.08);
    --color-table_td_bg1: #FFFFFF;
    --color-table_td_bg2: #F8F8F8;
    --color-table_hover: rgba(0, 132, 232, 0.03);
    --color-table_active: rgba(0, 132, 232, 0.1);
    --color-progressbar_bg: #e4eaef;
    /* オーバーレイ（モーダルやドロワーの背景） */
    --color-overlay-bg: rgba(0, 0, 0, 0.8);
    /* モーダルウィンドウのコンテンツ背景 */
    --color-modal-bg: #FFFFFF;
    /* チャート */
    --color-chart01: #00AAF6;
    --color-chart02: #2EC193;
    --color-chart03: #767CDC;
    --color-chart04: #E97DB3;
    --color-chart05: #E59C23;
    --color-chart06: #00C8E1;
    --color-chart07: #00E0B5;
    /* その他ベーシックな色 */
    --color_black: #000000;
    --color_white: #FFFFFF;
    --color_darkgray: #333333;
    --color_gray: #ACACAC;
    --color_red: #EB2D2D;
    --color_blue: #0059ff;
    --color_green: #005D5E;
}

input::-webkit-calendar-picker-indicator {
    opacity: 0;
}

.bl_headerNav_badge:before {
    font-family: "Roboto", sans-serif;
}

.md_close:before, .bl_sideNavi summary:before, .bl_headerNav__dropDown > a:after, .bl_breadcrumb li:nth-child(n+2):before, .el_pagination_prev span:before, .el_pagination_prev span:after,
.el_pagination_next span:before,
.el_pagination_next span:after, .el_form_select:before, .el_form_check input:checked::before, .el_link_txt__newWindow:after, .el_alert_close {
    font-family: "Material Icons", sans-serif;
}

.bl_headerNav a, .bl_backLink a {
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
}

    .bl_headerNav a:hover, .bl_backLink a:hover {
        color: var(--color-link);
    }

        .bl_headerNav a:hover > i, .bl_backLink a:hover > i {
            color: var(--color-link);
        }

.bl_sideNavi_child > li a, .bl_sideNavi_child > li summary, .bl_breadcrumb a, .bl_navBox li a {
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
}

    .bl_sideNavi_child > li a:hover, .bl_sideNavi_child > li summary:hover, .bl_breadcrumb a:hover, .bl_navBox li a:hover {
        opacity: 0.6;
    }

/*=================================================================================

　要素セレクタに直接指定

=================================================================================*/
html {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-size: 62.5%;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.1em;
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-variant-caps: normal;
    -webkit-font-variant-ligatures: normal;
    font-variant-ligatures: normal;
    font-variant-numeric: normal;
    font-variant-east-asian: normal;
    font-variant-alternates: normal;
    -webkit-font-kerning: auto;
    font-kerning: auto;
    font-optical-sizing: auto;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-variant-position: normal;
    font-weight: normal;
    font-stretch: normal;
    letter-spacing: 0px;
}

@media screen and (max-width: 360px) {
    html {
        font-size: 56%;
    }
}

@media screen and (max-width: 1023px) {
    html body * {
        display: none !important;
    }

    html body {
        display: block !important;
        height: 100vh;
        background-size: 50%;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url(../images/attention_warning_2x.png);
        background-color: rgba(0, 0, 0, 0.7);
    }
}

@media screen and (orientation: portrait) {
    html body * {
        display: none !important;
    }

    html body {
        display: block !important;
        height: 100vh;
        background-size: 70%;
        background-position: center;
        background-repeat: no-repeat;
        background-image: url(../images/attention_warning_2x.png);
        background-color: rgba(0, 0, 0, 0.7);
    }
}

body {
    background: var(--color-body_bg);
    color: var(--color-txt);
}

main {
    display: block;
}

.ly_cont_training main {
    height: calc(100vh - var(--height-header_lg));
    min-height: 69.2rem;
}

.ly_cont_mode main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}

.ly_cont_question main {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    height: 100%;
}

.ly_cont_measure main {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
}

.ly_main__common .ly_cont_measure main {
    padding: 6.4rem 0 6.9rem;
    background: #E5F3F3 0% 0% no-repeat padding-box;
}

.ly_main__training .ly_cont_measure main {
    background: #E3F3FF 0% 0% no-repeat padding-box;
}

.ly_cont_prologue main, .ly_cont_home main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
}

.ly_cont_history main {
    min-height: calc(100vh - (var(--height-header_lg) + 7rem));
    height: 100%;
}

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

/*=================================================================================

　レイヤー	接頭辞：ly_*

=================================================================================*/
/*—————————————————————————————————————————————————————
　ヘッダ
—————————————————————————————————————————————————————*/
.ly_header {
    position: relative;
    z-index: 10;
    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;
    width: 100%;
    min-height: var(--height-header_mdsm);
    margin-right: auto;
    margin-left: auto;
    padding: 0 var(--padding-contents-lr_mdsm);
    -webkit-box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.0784313725);
    box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.0784313725);
}

.ly_main__common .ly_header {
    background: #008B8D 0% 0% no-repeat padding-box;
}

    .ly_main__common .ly_header .bl_headerNav__icon li {
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#008B8D), to(#004f51)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #008B8D 0%, #004f51 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #008B8D;
    }

.ly_main__training .ly_header {
    background: #1478C3 0% 0% no-repeat padding-box;
}

    .ly_main__training .ly_header .bl_headerNav__icon li {
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#00345B)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #1478C3 0%, #00345B 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #1478C3;
    }

/*—————————————————————————————————————————————————————
　コンテンツ
—————————————————————————————————————————————————————*/
/* レイアウト　メイン */
.ly_main__home {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

    .ly_main__home .bg {
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1;
    }

.ly_main__common {
    width: 100%;
    height: 100vh;
}

    .ly_main__common.mode {
        position: relative;
        overflow: hidden;
    }

    .ly_main__common.question {
        position: relative;
        overflow: hidden;
    }

    .ly_main__common.history {
        height: 100%;
        background: #EBF6F6 0% 0% no-repeat padding-box;
    }

    .ly_main__common .bg {
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1;
    }

.ly_main__training {
    width: 100%;
    height: 100vh;
    position: relative;
}

    .ly_main__training.mode {
        overflow: hidden;
    }

    .ly_main__training.question {
        overflow: hidden;
    }

    .ly_main__training .bg {
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1;
    }

/* コンテンツ */
.ly_cont_mode {
    padding: 3.2rem 3.2rem 0;
    height: calc(100% - var(--height-header_lg));
}

.ly_cont_question {
    height: calc(100% - var(--height-header_lg));
    max-width: 111.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
}

.ly_cont_measure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: calc(100% - var(--height-header_lg));
    position: relative;
    width: 100%;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
}

.ly_main__common .ly_cont_measure {
    padding: 6.4rem 0 6.9rem;
    background: #E5F3F3 0% 0% no-repeat padding-box;
}

.ly_cont_home {
    height: calc(100% - 1rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.ly_cont_prologue {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ly_cont_training {
    height: calc(100% - var(--height-header_lg));
    min-height: 69.2rem;
}

/*—————————————————————————————————————————————————————
　メイン
—————————————————————————————————————————————————————*/
.ly_cont_main {
    padding: calc(var(--padding-contents-lr_mdsm) * 2) var(--padding-contents-lr_mdsm) calc(var(--padding-contents-lr_mdsm) * 4);
}

@media screen and (min-width: 960px) {
    .ly_cont_main {
        width: 100%;
    }
}

@media screen and (min-width: 1112px) {
    .ly_cont_main {
        width: calc(100% - var(--width-side));
        padding: calc(var(--padding-grid_lgmd) * 2) calc(var(--padding-grid_lgmd) * 2) calc(var(--padding-grid_lgmd) * 4);
    }
}

/* ————————————— モディファイア ————————————— */
/* 余白なし */
.ly_cont_main__noPadding {
    padding: 0 !important;
}

/*—————————————————————————————————————————————————————
　メイン　コンテンツ上下左右中央 配置（ログインなどに利用）
—————————————————————————————————————————————————————*/
.ly_cont_center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: var(--padding-contents-lr_mdsm);
    padding-right: var(--padding-contents-lr_mdsm);
    background-color: #ffffff;
    height: 100vh;
}

/*—————————————————————————————————————————————————————
　サイドバー
—————————————————————————————————————————————————————*/
.ly_cont_side {
    width: var(--width-side);
    height: 100vh;
    padding: var(--padding-contents-lr_mdsm) 0;
    color: var(--color-side_txt);
    background-color: var(--color-side_bg);
}

@media screen and (min-width: 1112px) {
    .ly_cont_side {
        height: auto;
        min-height: calc(100vh - var(--height-header_lg));
    }
}

/*—————————————————————————————————————————————————————
　フッタ
—————————————————————————————————————————————————————*/
.ly_footer {
    width: calc(100% + var(--padding-contents-lr_mdsm) * 2);
    margin: calc(var(--padding-contents-lr_mdsm) * 2) calc(-1 * var(--padding-contents-lr_mdsm)) calc(-1 * var(--padding-contents-lr_mdsm) * 4);
    padding: var(--padding-contents-lr_mdsm) var(--padding-contents-lr_mdsm) calc(var(--padding-contents-lr_mdsm) * 1.5);
}

@media screen and (min-width: 1112px) {
    .ly_footer {
        width: calc(100% + var(--padding-grid_lgmd) * 4);
        margin: calc(var(--padding-grid_lgmd) * 2) calc(-1 * var(--padding-grid_lgmd) * 2) calc(-1 * var(--padding-grid_lgmd) * 4);
        padding: var(--padding-grid_lgmd) calc(var(--padding-grid_lgmd) * 2) calc(var(--padding-grid_lgmd) * 1.5);
    }
}

/*=================================================================================

　エレメント（汎用性あるスタイル）	接頭辞：el_*

=================================================================================*/
/*—————————————————————————————————————————————————————
　基本タイトル
—————————————————————————————————————————————————————*/
h1 {
    font-size: 2.2rem;
}

@media screen and (min-width: 960px) {
    h1 {
        font-size: 3.6rem;
    }
}

h2 {
    font-size: 2rem;
}

@media screen and (min-width: 960px) {
    h2 {
        font-size: 3rem;
    }
}

h3 {
    font-size: 1.8rem;
}

@media screen and (min-width: 960px) {
    h3 {
        font-size: 2.6rem;
    }
}

h4 {
    font-size: 1.7rem;
}

@media screen and (min-width: 960px) {
    h4 {
        font-size: 2rem;
    }
}

h5 {
    font-size: 1.6rem;
}

@media screen and (min-width: 960px) {
    h5 {
        font-size: 1.8rem;
    }
}

h6 {
    font-size: 1.5rem;
}

@media screen and (min-width: 960px) {
    h6 {
        font-size: 1.6rem;
    }
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 500;
}

    h1 i, h2 i, h3 i, h4 i, h5 i, h6 i {
        margin-right: 0.2em;
    }

    /* サブタイトル */
    h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
        color: var(--color-txt_l);
        margin-left: 0.6em;
        font-weight: normal;
    }

    h1 small, h2 small, h3 small {
        font-size: 0.5em;
    }

    h4 small, h5 small, h6 small {
        font-size: 0.7em;
    }

/*—————————————————————————————————————————————————————
　ダークスタイル
—————————————————————————————————————————————————————*/
.el_ttl_dark, .el_ttl_box__dark, .el_ttl_bg__dark, .el_ttl_leftLine__dark, .el_ttl_underLine__dark {
    color: var(--color-txt_contrast);
}

    .el_ttl_dark small, .el_ttl_box__dark small, .el_ttl_bg__dark small, .el_ttl_leftLine__dark small, .el_ttl_underLine__dark small {
        color: rgba(var(--color-txt_contrast_rgb), 60%);
    }

/*—————————————————————————————————————————————————————
　下線タイトル
—————————————————————————————————————————————————————*/
.el_ttl_underLine {
    padding-bottom: 0.8em;
    border-bottom: 1px solid var(--color-border);
}

h1.el_ttl_underLine,
h2.el_ttl_underLine,
h3.el_ttl_underLine {
    padding-bottom: 0.5em;
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_ttl_underLine__dark {
    border-bottom: 1px solid var(--color-border_l);
}

/*—————————————————————————————————————————————————————
　左線タイトル
—————————————————————————————————————————————————————*/
.el_ttl_leftLine {
    border-left: 4px solid var(--color-key);
    padding: 0.1em 0.5em;
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_ttl_leftLine__dark {
    border-left: 4px solid var(--color-txt_contrast);
}

/*—————————————————————————————————————————————————————
　背景付タイトル
—————————————————————————————————————————————————————*/
.el_ttl_bg {
    padding: 0.8em;
    background-color: var(--color-ttl_bg);
}

h1.el_ttl_bg,
h2.el_ttl_bg,
h3.el_ttl_bg {
    padding: 0.5em !important;
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_ttl_bg__dark {
    background-color: var(--color-txt) !important;
}

/*—————————————————————————————————————————————————————
　ボックス内のヘッダタイトル
—————————————————————————————————————————————————————*/
.el_ttl_box {
    margin-top: calc(-1 * var(--padding-grid-inner_sm) * 1.2);
    margin-left: calc(-1 * var(--padding-grid-inner_sm));
    margin-right: calc(-1 * var(--padding-grid-inner_sm));
    margin-bottom: calc(var(--padding-grid-inner_sm) * 1.2);
    padding: 0.8em;
    background-color: var(--color-ttl_bg);
}

@media screen and (min-width: 960px) {
    .el_ttl_box {
        margin-top: calc(-1 * var(--padding-grid-inner_lgmd));
        margin-left: calc(-1 * var(--padding-grid-inner_lgmd));
        margin-right: calc(-1 * var(--padding-grid-inner_lgmd));
        margin-bottom: var(--padding-grid-inner_lgmd);
    }
}

.bl_box__rounded .el_ttl_box {
    border-radius: 0.4rem 0.4rem 0 0;
}

.bl_box__minPadding .el_ttl_box {
    margin-top: calc(-1 * var(--padding-grid-inner_sm) / 1.5);
    margin-left: calc(-1 * var(--padding-grid-inner_sm) / 1.5);
    margin-right: calc(-1 * var(--padding-grid-inner_sm) / 1.5);
    margin-bottom: calc(var(--padding-grid-inner_sm) / 1.5);
}

@media screen and (min-width: 960px) {
    .bl_box__minPadding .el_ttl_box {
        margin-top: calc(-1 * var(--padding-grid-inner_lgmd) / 1.75);
        margin-left: calc(-1 * var(--padding-grid-inner_lgmd) / 1.75);
        margin-right: calc(-1 * var(--padding-grid-inner_lgmd) / 1.75);
        margin-bottom: calc(var(--padding-grid-inner_lgmd) / 1.75);
    }
}

.bl_box__noPadding .el_ttl_box {
    margin: 0;
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_ttl_box__dark {
    background-color: var(--color-txt) !important;
}

/*—————————————————————————————————————————————————————
　ボディテキスト
—————————————————————————————————————————————————————*/
.el_txt_body {
    font-size: 1.4rem;
    line-height: 1.8;
}

@media screen and (min-width: 960px) {
    .el_txt_body {
        font-size: 1.6rem;
    }
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_txt_body__dark {
    color: var(--color-txt_contrast);
}

/*—————————————————————————————————————————————————————
　サブテキスト
—————————————————————————————————————————————————————*/
.el_txt_sub {
    font-size: 1.2rem;
    line-height: 1.8;
    color: var(--color-txt_l);
}

@media screen and (min-width: 960px) {
    .el_txt_sub {
        font-size: 1.5rem;
    }
}

/* ————————————— モディファイア ————————————— */
/* 暗め */
.el_txt_sub__dark {
    color: rgba(var(--color-txt_contrast_rgb), 60%);
}

/*—————————————————————————————————————————————————————
　注釈
—————————————————————————————————————————————————————*/
.el_txt_notes {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-txt_l);
}

@media screen and (min-width: 960px) {
    .el_txt_notes {
        font-size: 1.2rem;
    }
}

/* ————————————— モディファイア ————————————— */
/* テキストインデント */
.el_txt_notes__indent {
    padding-left: 1em;
    text-indent: -1em;
}

/* 暗め */
.el_txt_notes__dark {
    color: rgba(var(--color-txt_contrast_rgb), 60%);
}

/*—————————————————————————————————————————————————————
　テキストリンク
—————————————————————————————————————————————————————*/
.el_link_txt {
    color: var(--color-link);
    border-bottom: 1px solid var(--color-link);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    word-break: break-all;
}

    .el_link_txt:hover {
        border-bottom: none;
        color: var(--color-link_hover);
    }

/* ————————————— モディファイア ————————————— */
/* 新規ウィンドウアイコン */
.el_link_txt__newWindow {
    position: relative;
    margin-right: 1.4em;
}

    .el_link_txt__newWindow:after {
        content: "\e89e";
        position: absolute;
        margin-left: 0.2em;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }

    .el_link_txt__newWindow:hover:after {
        color: var(--color-link_hover);
    }

/*—————————————————————————————————————————————————————
　罫線
—————————————————————————————————————————————————————*/
.el_border {
    height: 1px;
    margin: 3rem 0;
    background-color: var(--color-border);
    border: none;
}

@media screen and (min-width: 960px) {
    .el_border {
        margin: 4rem 0;
    }
}

.bl_col + .el_border {
    margin: calc(3rem - var(--padding-grid_sm) * 2) 0 3rem;
}

@media screen and (min-width: 960px) {
    .bl_col + .el_border {
        margin: calc(4rem - var(--padding-grid_lgmd) / 2) 0 4rem;
    }
}

/* ————————————— モディファイア ————————————— */
/* 線色 明 */
.el_border__light {
    background-color: var(--color-border_l);
}

/*—————————————————————————————————————————————————————
　画像
—————————————————————————————————————————————————————*/
/* トリミング */
.el_img_ratio img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.el_img_ratio__1x1 {
    aspect-ratio: 1/1;
}

.el_img_ratio__3x2 {
    aspect-ratio: 3/2;
}

.el_img_ratio__4x3 {
    aspect-ratio: 4/3;
}

.el_img_ratio__16x9 {
    aspect-ratio: 16/9;
}

.el_img_ratio__gold {
    aspect-ratio: 8/5;
}

/*—————————————————————————————————————————————————————
　アラート
—————————————————————————————————————————————————————*/
.el_alert {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1.8rem 1.8rem 1.7rem;
    font-size: 1.4rem;
    line-height: 1.5;
    background-color: rgba(var(--color-txt_rgb), 8%);
    border-radius: 0.4rem;
    margin-top: 2.4rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .el_alert strong {
        display: inline-block;
        margin-bottom: 0.2em;
        font-size: 1.4rem;
    }

@media screen and (min-width: 960px) {
    .el_alert strong {
        font-size: 1.6rem;
    }
}

.el_alert > i {
    font-size: 1.8rem;
    margin-top: 0.1em;
    margin-right: 0.3em;
}

@media screen and (min-width: 960px) {
    .el_alert > i {
        margin-top: 0;
        font-size: 2.4rem;
    }
}

/* 閉じるボタン */
.el_alert_close {
    position: absolute;
    content: "\e5cd";
    right: 1.2rem;
    top: 1.2rem;
    opacity: 0.5;
}

    .el_alert_close > i {
        font-size: 2rem;
    }

/* ————————————— モディファイア ————————————— */
/* 危険（エラー） */
.el_alert__danger {
    background-color: rgba(var(--color-danger_rgb), 8%);
    border-radius: 8px;
}

    .el_alert__danger strong,
    .el_alert__danger > i {
        color: var(--color-danger);
    }

/* ログイン */
.el_alert__login {
    background: #E5F3F3 0% 0% no-repeat padding-box;
    border-radius: 8px;
    text-align: center;
}

    .el_alert__login strong {
        font-weight: bold;
        font-size: 2rem;
        line-height: 2.9rem;
        color: #2A2A2A;
    }

/*—————————————————————————————————————————————————————
　ボタン
—————————————————————————————————————————————————————*/
.el_btn {
    display: inline-block;
    padding: 0.6em 1.2em 0.58em;
    font-size: 1.4rem;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
    border-radius: 0.25rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: var(--color-txt);
    background-color: var(--color-default);
}

    .el_btn + .el_btn {
        margin-left: 1rem;
    }

@media (hover: hover) {
    .el_btn:hover {
        opacity: 0.5;
    }
}

@media (hover: none) {
    .el_btn:active {
        opacity: 0.5;
    }
}

/* ————————————— モディファイア ————————————— */
/* 塗りボタン */
.el_btn__yellow {
    color: #2a2a2a;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFF7AA), to(#FFE600)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FFF7AA 0%, #FFE600 100%) 0% 0% no-repeat padding-box;
}

.el_btn__red {
    color: #FFFFFF;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FF8E97), to(#E50012)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FF8E97 0%, #E50012 100%) 0% 0% no-repeat padding-box;
}

.el_btn__black {
    color: #FFFFFF;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#5A5A5A), to(#282F32)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #5A5A5A 0%, #282F32 100%) 0% 0% no-repeat padding-box;
}

.el_btn__green {
    color: #FFFFFF;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#009E78), to(#007879)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #009E78 0%, #007879 100%) 0% 0% no-repeat padding-box;
}

.el_btn__blue {
    color: #FFFFFF;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
}

.el_btn__white {
    color: #2a2a2a;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
}

.el_btn__login {
    color: #ffffff;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#008B8D), to(#00787A)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #008B8D 0%, #00787A 100%) 0% 0% no-repeat padding-box;
}

/* 枠線ボタン */
.el_btn__outline {
    border: 1px solid var(--color-border);
    background-color: var(--color-content-bg);
}

.el_btn__outline__primary {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
}

.el_btn__outline__secondary {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-secondary);
    color: var(--color-secondary);
}

.el_btn__outline__success {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-success);
    color: var(--color-success);
}

.el_btn__outline__info {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-info);
    color: var(--color-info);
}

.el_btn__outline__danger {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-danger);
    color: var(--color-danger);
}

.el_btn__outline__warning {
    background-color: var(--color-content-bg);
    border: 1px solid var(--color-warning);
    color: var(--color-warning);
}

/* 丸ボタン */
.el_btn__rounded {
    border-radius: 50rem !important;
}

/* ボタンサイズ */
.el_btn__size__modal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.1rem;
    line-height: 3.2rem;
    font-size: 2.2rem;
    padding: 2.2rem 0 2.4rem;
    font-weight: bold;
    width: 44.8rem;
}

    .el_btn__size__modal img {
        width: 2.9rem;
    }

.el_btn__size__side_sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    line-height: 2.6rem;
    font-size: 1.8rem;
    padding: 1.6rem 0 2rem;
    font-weight: bold;
    width: 100%;
}

    .el_btn__size__side_sub img {
        width: 2rem;
    }

.el_btn__size__side_main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    line-height: 3.2rem;
    font-size: 2.2rem;
    padding: 2.2rem 0 2.4rem;
    font-weight: bold;
    width: 100%;
}

    .el_btn__size__side_main img {
        width: 2.9rem;
    }

.el_btn__size__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
    line-height: 4.6rem;
    font-size: 3.2rem;
    font-weight: bold;
    width: 40rem;
}

@media screen and (min-width: 1112px) {
    .el_btn__size__main {
        padding: 2.3rem 0 2.7rem;
        min-width: 52rem;
    }
}

/* アイコン付きボタン（初期：アイコンは文字前）*/
.el_btn__icon > i {
    margin-left: 0 !important;
    margin-right: 0.2em !important;
}

/* アイコンを文字後 アイコン付きボタン */
.el_btn__icon__after > i {
    margin-left: 0.2em !important;
    margin-right: 0 !important;
}

/* ————————————————— 状態 ————————————————— */
/* 無効化 */
.el_btn.is_disable {
    background: #B4B4B4 !important;
    color: #ffffff !important;
    opacity: 0.5;
    border: none !important;
}

/* 待機 */
.el_btn.is_progress {
    pointer-events: none !important;
    position: relative;
    color: transparent !important;
    background-color: var(--color-default) !important;
    border: none !important;
}

    .el_btn.is_progress:after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 2rem;
        height: 2rem;
        margin: auto;
        border-radius: 50%;
        border: 0.25rem solid rgba(var(--color-txt_rgb), 0.4);
        border-top-color: rgba(var(--color-txt_rgb), 0.6);
        -webkit-animation: spin 1s infinite linear;
        animation: spin 1s infinite linear;
    }

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
/*—————————————————————————————————————————————————————
　フォーム項目の説明文
—————————————————————————————————————————————————————*/
.el_form_info {
    margin-bottom: 1.2rem;
    font-size: 1.3rem;
    font-weight: normal;
    line-height: 1.7;
}

    .el_form_info + .el_form_info {
        margin-top: -0.5rem;
    }

@media screen and (min-width: 960px) {
    .el_form_info {
        font-size: 1.4rem;
    }
}

/*—————————————————————————————————————————————————————
　ヒントテキスト
—————————————————————————————————————————————————————*/
.el_form_tips {
    margin-top: 0.8rem;
    color: var(--color-txt_l);
    font-size: 1.2rem;
    line-height: 1.6;
}

    .el_form_tips + .el_form_tips {
        margin-top: 0.5rem;
    }

/*—————————————————————————————————————————————————————
　フォーム内メッセージ
—————————————————————————————————————————————————————*/
.el_form_message {
    margin-top: 0.8rem;
    color: var(--color-txt_l);
    font-size: 1.4rem;
    line-height: 1.6;
}

    .el_form_message + .el_form_message {
        margin-top: 0.5rem;
    }

.el_form_message__success {
    color: var(--color-success);
}

.el_form_message__warning {
    color: var(--color-warning);
}

.el_form_message__danger {
    color: var(--color-danger);
}

/*—————————————————————————————————————————————————————
　必須・任意のラベル項目
—————————————————————————————————————————————————————*/
.el_form_label__required label:after, .el_form_label__optional label:after {
    display: inline-block;
    margin-left: 0.8em;
    padding: 0.4em 0.4em 0.38em;
    vertical-align: 0.2em;
    border-radius: 0.4rem;
    font-size: 1.1rem;
    line-height: 1;
}

.el_form_label__required label:after {
    content: "必須";
    color: #FFFFFF;
    background-color: var(--color_red);
}

.el_form_label__optional label:after {
    content: "任意";
    color: rgba(var(--color-txt_rgb), 70%);
    background-color: rgba(var(--color-txt_rgb), 15%);
}

/*—————————————————————————————————————————————————————
　入力欄 共通スタイル
—————————————————————————————————————————————————————*/
.el_form_select select, .el_form_textarea, .el_form_input {
    width: 100%;
    padding: 1.4rem 1rem;
    font-size: 1.6rem;
    line-height: 1.3;
    border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: solid 1px var(--color-border);
    -webkit-transition: -webkit-box-shadow 0.2s ease;
    transition: -webkit-box-shadow 0.2s ease;
    transition: box-shadow 0.2s ease;
    transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}

    .el_form_select select:hover, .el_form_textarea:hover, .el_form_input:hover {
        outline: solid 1px rgba(var(--color-primary_rgb), 50%);
    }

    .el_form_select select:focus, .el_form_textarea:focus, .el_form_input:focus, .el_form_select select:active, .el_form_textarea:active, .el_form_input:active {
        outline: solid 2px rgba(var(--color-primary_rgb), 80%);
        -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-primary_rgb), 12%);
        box-shadow: 0px 0px 1px 6px rgba(var(--color-primary_rgb), 12%);
    }

    .el_form_select select::-webkit-input-placeholder, .el_form_textarea::-webkit-input-placeholder, .el_form_input::-webkit-input-placeholder {
        color: rgba(var(--color-txt_rgb), 50%);
    }

    .el_form_select select::-moz-placeholder, .el_form_textarea::-moz-placeholder, .el_form_input::-moz-placeholder {
        color: rgba(var(--color-txt_rgb), 50%);
    }

    .el_form_select select:-ms-input-placeholder, .el_form_textarea:-ms-input-placeholder, .el_form_input:-ms-input-placeholder {
        color: rgba(var(--color-txt_rgb), 50%);
    }

    .el_form_select select::-ms-input-placeholder, .el_form_textarea::-ms-input-placeholder, .el_form_input::-ms-input-placeholder {
        color: rgba(var(--color-txt_rgb), 50%);
    }

    .el_form_select select::placeholder, .el_form_textarea::placeholder, .el_form_input::placeholder {
        color: rgba(var(--color-txt_rgb), 50%);
    }

    /*—————————————————————————————————————————————————————
　1行テキスト・テキストエリア
—————————————————————————————————————————————————————*/
    /* 1行テキスト */
    .el_form_input + .el_form_input {
        margin-top: 1.2rem;
    }

/* テキストエリア */
.el_form_textarea {
    resize: vertical;
}

    /* ————————————————— 状態 ————————————————— */
    .el_form_input.is_success,
    .el_form_textarea.is_success {
        position: relative;
        outline: solid 2px var(--color-success);
    }

        .el_form_input.is_success:hover,
        .el_form_textarea.is_success:hover {
            outline: solid 2px rgba(var(--color-success_rgb), 50%);
        }

        .el_form_input.is_success:focus, .el_form_input.is_success:active,
        .el_form_textarea.is_success:focus,
        .el_form_textarea.is_success:active {
            outline: solid 2px rgba(var(--color-success_rgb), 80%) !important;
            -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-success_rgb), 25%) !important;
            box-shadow: 0px 0px 1px 6px rgba(var(--color-success_rgb), 25%) !important;
        }

    .el_form_input.is_warning,
    .el_form_textarea.is_warning {
        outline: solid 2px var(--color-warning);
    }

        .el_form_input.is_warning:hover,
        .el_form_textarea.is_warning:hover {
            outline: solid 2px rgba(var(--color-warning_rgb), 50%);
        }

        .el_form_input.is_warning:focus, .el_form_input.is_warning:active,
        .el_form_textarea.is_warning:focus,
        .el_form_textarea.is_warning:active {
            outline: solid 2px rgba(var(--color-warning_rgb), 80%) !important;
            -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-warning_rgb), 25%) !important;
            box-shadow: 0px 0px 1px 6px rgba(var(--color-warning_rgb), 25%) !important;
        }

    .el_form_input.is_danger,
    .el_form_textarea.is_danger {
        outline: solid 2px var(--color-danger);
    }

        .el_form_input.is_danger:hover,
        .el_form_textarea.is_danger:hover {
            outline: solid 2px rgba(var(--color-danger_rgb), 50%);
        }

        .el_form_input.is_danger:focus, .el_form_input.is_danger:active,
        .el_form_textarea.is_danger:focus,
        .el_form_textarea.is_danger:active {
            outline: solid 2px rgba(var(--color-danger_rgb), 80%) !important;
            -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-danger_rgb), 20%) !important;
            box-shadow: 0px 0px 1px 6px rgba(var(--color-danger_rgb), 20%) !important;
        }

    .el_form_input:disabled,
    .el_form_textarea:disabled {
        color: var(--color-disable_txt);
        background-color: var(--color-disable);
    }

        .el_form_input:disabled:focus, .el_form_input:disabled:hover,
        .el_form_textarea:disabled:focus,
        .el_form_textarea:disabled:hover {
            outline: solid 1px var(--color-border_l);
            -webkit-box-shadow: none;
            box-shadow: none;
        }

    .el_form_input:-moz-read-only:focus, .el_form_input:-moz-read-only:hover, .el_form_textarea:-moz-read-only:focus, .el_form_textarea:-moz-read-only:hover {
        outline: solid 1px var(--color-border_l);
        box-shadow: none;
    }

    .el_form_input:read-only:focus, .el_form_input:read-only:hover,
    .el_form_textarea:read-only:focus,
    .el_form_textarea:read-only:hover {
        outline: solid 1px var(--color-border_l);
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    .el_form_input.is_plainTxt,
    .el_form_textarea.is_plainTxt {
        padding: 1rem 0 0 !important;
        outline: transparent;
        color: var(--color-txt) !important;
    }

        .el_form_input.is_plainTxt:focus, .el_form_input.is_plainTxt:hover,
        .el_form_textarea.is_plainTxt:focus,
        .el_form_textarea.is_plainTxt:hover {
            outline: 0;
            -webkit-box-shadow: none;
            box-shadow: none;
        }

/*—————————————————————————————————————————————————————
　セレクトボックス
—————————————————————————————————————————————————————*/
.el_form_select {
    position: relative;
}

    .el_form_select select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        cursor: pointer;
    }

        .el_form_select select:focus, .el_form_select select:active {
            outline: solid 2px rgba(var(--color-primary_rgb), 80%);
            -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-primary_rgb), 0.1);
            box-shadow: 0px 0px 1px 6px rgba(var(--color-primary_rgb), 0.1);
        }

    .el_form_select:before {
        pointer-events: none;
        content: "\025bc";
        display: block;
        position: absolute;
        right: 0.5rem;
        top: 50%;
        -webkit-transform: translateY(-47%);
        transform: translateY(-47%);
        font-size: 2.4rem;
        color: var(--color-primary);
    }

/* ————————————— モディファイア ————————————— */
/* マルチセレクトボックス */
.el_form_select__multi option {
    padding: 0.4em;
}

    .el_form_select__multi option:checked {
        border-radius: 0.4rem;
        color: #FFFFFF;
        background-color: var(--color-primary);
        background: -webkit-gradient(linear, left top, left bottom, from(var(--color-primary)), to(var(--color-primary)));
        background: linear-gradient(var(--color-primary), var(--color-primary));
    }

.el_form_select__multi:before {
    display: none !important;
}

/* ————————————————— 状態 ————————————————— */
.el_form_select.is_success select {
    position: relative;
    outline: solid 2px var(--color-success);
}

    .el_form_select.is_success select:hover {
        outline: solid 2px rgba(var(--color-success_rgb), 50%);
    }

    .el_form_select.is_success select:focus, .el_form_select.is_success select:active {
        outline: solid 2px rgba(var(--color-success_rgb), 80%) !important;
        -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-success_rgb), 25%) !important;
        box-shadow: 0px 0px 1px 6px rgba(var(--color-success_rgb), 25%) !important;
    }

.el_form_select.is_warning select {
    outline: solid 2px var(--color-warning);
}

    .el_form_select.is_warning select:hover {
        outline: solid 2px rgba(var(--color-warning_rgb), 50%);
    }

    .el_form_select.is_warning select:focus, .el_form_select.is_warning select:active {
        outline: solid 2px rgba(var(--color-warning_rgb), 80%) !important;
        -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-warning_rgb), 25%) !important;
        box-shadow: 0px 0px 1px 6px rgba(var(--color-warning_rgb), 25%) !important;
    }

.el_form_select.is_danger select {
    outline: solid 2px var(--color-danger);
}

    .el_form_select.is_danger select:hover {
        outline: solid 2px rgba(var(--color-danger_rgb), 50%);
    }

    .el_form_select.is_danger select:focus, .el_form_select.is_danger select:active {
        outline: solid 2px rgba(var(--color-danger_rgb), 80%) !important;
        -webkit-box-shadow: 0px 0px 1px 6px rgba(var(--color-danger_rgb), 20%) !important;
        box-shadow: 0px 0px 1px 6px rgba(var(--color-danger_rgb), 20%) !important;
    }

.el_form_select select:disabled {
    color: var(--color-disable_txt);
    background-color: var(--color-disable);
}

    .el_form_select select:disabled:focus, .el_form_select select:disabled:hover {
        outline: solid 1px var(--color-border_l);
        -webkit-box-shadow: none;
        box-shadow: none;
    }

.el_form_select option:disabled {
    color: var(--color-disable_txt);
    background-color: var(--color-disable);
    border-radius: 0.4rem;
}

/*—————————————————————————————————————————————————————
　ラジオボタン・チェックボタン
—————————————————————————————————————————————————————*/
.el_form_radio,
.el_form_check {
    display: inline-block;
    margin-left: 3rem;
    font-size: 1.4rem;
    line-height: 1.2;
    font-weight: normal !important;
    cursor: pointer;
}

@media screen and (min-width: 960px) {
    .el_form_radio,
    .el_form_check {
        font-size: 1.5rem;
    }
}

.el_form_radio input,
.el_form_check input {
    position: relative;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
    border: 1px solid var(--color-border);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    margin-left: -3rem;
    margin-right: 0.8rem;
}

    .el_form_radio input:hover,
    .el_form_check input:hover {
        border: 1px solid rgba(var(--color-primary_rgb), 50%);
    }

    .el_form_radio input:focus, .el_form_radio input:active,
    .el_form_check input:focus,
    .el_form_check input:active {
        outline: solid 2px rgba(var(--color-primary_rgb), 20%) !important;
    }

    .el_form_radio input:checked::before,
    .el_form_check input:checked::before {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border-radius: 50%;
        -webkit-animation: anim_form_select 0.3s linear;
        animation: anim_form_select 0.3s linear;
    }

@-webkit-keyframes anim_form_select {
    0% {
        -webkit-box-shadow: 0 0 0 1px transparent;
        box-shadow: 0 0 0 1px transparent;
    }

    50% {
        -webkit-box-shadow: 0 0 0 10px rgba(var(--color-primary_rgb), 20%);
        box-shadow: 0 0 0 10px rgba(var(--color-primary_rgb), 20%);
    }

    100% {
        -webkit-box-shadow: 0 0 0 10px transparent;
        box-shadow: 0 0 0 10px transparent;
    }
}

@keyframes anim_form_select {
    0% {
        -webkit-box-shadow: 0 0 0 1px transparent;
        box-shadow: 0 0 0 1px transparent;
    }

    50% {
        -webkit-box-shadow: 0 0 0 10px rgba(var(--color-primary_rgb), 20%);
        box-shadow: 0 0 0 10px rgba(var(--color-primary_rgb), 20%);
    }

    100% {
        -webkit-box-shadow: 0 0 0 10px transparent;
        box-shadow: 0 0 0 10px transparent;
    }
}
/* ラジオボタン */
.el_form_radio input {
    border-radius: 50%;
}

    .el_form_radio input:checked::before {
        content: "";
        width: 14px;
        height: 14px;
        background-color: var(--color-primary);
    }

/* チェックボックス */
.el_form_check input {
    border-radius: 0.4rem;
}

    .el_form_check input:checked {
        border: none;
        background-color: var(--color-primary);
    }

        .el_form_check input:checked::before {
            content: "\e5ca";
            -webkit-transform: translate(-50%, -49%);
            transform: translate(-50%, -49%);
            font-size: 1.6rem;
            font-weight: bold;
            color: #FFFFFF;
        }

.radio-inline__input {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    width: 0;
}

    .radio-inline__input:checked + .radio-inline__label {
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFF7AA), to(#FFE600)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #FFF7AA 0%, #FFE600 100%) 0% 0% no-repeat padding-box;
        -webkit-box-shadow: inset -1px 1px 2px #FFFFFF;
        box-shadow: inset -1px 1px 2px #FFFFFF;
        border: 1px solid #FFE600;
        border-radius: 4px;
    }

.is_disable .radio-inline__input:checked + .radio-inline__label {
    opacity: 0.3;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
    -webkit-box-shadow: inset -1px 1px 2px #FFFFFF;
    box-shadow: inset -1px 1px 2px #FFFFFF;
    border: 1px solid #D8D8D8;
    cursor: not-allowed;
}

.radio-inline__label {
    display: inline-block;
    padding: 1.8rem 1rem;
    margin-right: 1.6rem !important;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
    -webkit-box-shadow: inset -1px 1px 2px #FFFFFF;
    box-shadow: inset -1px 1px 2px #FFFFFF;
    border: 1px solid #D8D8D8;
    border-radius: 4px;
    width: 14rem;
    height: 6rem;
    text-align: center;
    color: #2A2A2A;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.9rem;
}

.is_disable .radio-inline__label {
    opacity: 0.3;
    cursor: not-allowed;
}

/* ————————————————— 状態 ————————————————— */
/* ラジオボタン・チェックボタン共通 */
.el_form_radio input.is_warning,
.el_form_check input.is_warning {
    border: 2px solid var(--color-warning);
}

    .el_form_radio input.is_warning:hover,
    .el_form_check input.is_warning:hover {
        border: 2px solid rgba(var(--color-warning_rgb), 50%);
    }

.el_form_radio input.is_danger,
.el_form_check input.is_danger {
    border: 2px solid var(--color-danger);
}

    .el_form_radio input.is_danger:hover,
    .el_form_check input.is_danger:hover {
        border: 2px solid rgba(var(--color-danger_rgb), 50%);
    }

.el_form_radio input:disabled,
.el_form_check input:disabled {
    pointer-events: none;
    background-color: var(--color-disable);
    border: none;
}

    .el_form_radio input:disabled:hover,
    .el_form_check input:disabled:hover {
        border: none;
    }

    .el_form_radio input:disabled:focus, .el_form_radio input:disabled:active,
    .el_form_check input:disabled:focus,
    .el_form_check input:disabled:active {
        outline: none;
    }

/* ラジオボタン */
.el_form_radio input.is_warning:checked::before {
    background-color: var(--color-warning);
}

.el_form_radio input.is_danger:checked::before {
    background-color: var(--color-danger);
}

/* チェックボックス */
.el_form_check input.is_warning:checked {
    background-color: var(--color-warning);
}

.el_form_check input.is_danger:checked {
    background-color: var(--color-danger);
}

/*—————————————————————————————————————————————————————
　範囲スライダー
—————————————————————————————————————————————————————*/
.el_form_range {
    width: 100%;
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
}

/*—————————————————————————————————————————————————————
　入力欄　サイズ・レイアウト変更用
—————————————————————————————————————————————————————*/
/* サイズ指定・横幅 */
.el_form_style_width__s {
    max-width: 6em !important;
    min-width: 3em !important;
}

.el_form_style_width__m {
    max-width: 12em !important;
    min-width: 6em !important;
}

.el_form_style_width__l {
    max-width: 24em !important;
    min-width: 12em !important;
}

/* サイズ指定・高さ */
.el_form_style_height__s {
    height: 3.05em;
}

.el_form_style_height__m {
    min-height: 10rem;
}

.el_form_style_height__l {
    min-height: 20rem;
}

/*=================================================================================

　ブロック	接頭辞：bl_*

=================================================================================*/
/*—————————————————————————————————————————————————————
　カラム
—————————————————————————————————————————————————————*/
.bl_col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-top: calc(-1 * var(--padding-grid_sm));
    margin-left: calc(-1 * var(--padding-grid_sm));
    margin-right: calc(-1 * var(--padding-grid_sm));
}

@media screen and (min-width: 960px) {
    .bl_col {
        margin-top: calc(-1 * var(--padding-grid_lgmd) / 2);
        margin-left: calc(-1 * var(--padding-grid_lgmd));
        margin-right: calc(-1 * var(--padding-grid_lgmd));
    }
}

.bl_col > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding: var(--padding-grid_sm);
}

@media screen and (min-width: 960px) {
    .bl_col > * {
        padding: calc(var(--padding-grid_lgmd) / 2) var(--padding-grid_lgmd);
    }
}

/* ————————————— モディファイア ————————————— */
/* 横幅 - 全幅 */
.bl_col__1 {
    width: 8.3333333333%;
}

.bl_col__2 {
    width: 16.6666666667%;
}

.bl_col__3 {
    width: 25%;
}

.bl_col__4 {
    width: 33.3333333333%;
}

.bl_col__5 {
    width: 41.6666666667%;
}

.bl_col__6 {
    width: 50%;
}

.bl_col__7 {
    width: 58.3333334792%;
}

.bl_col__8 {
    width: 66.6666666667%;
}

.bl_col__9 {
    width: 75.0000001875%;
}

.bl_col__10 {
    width: 83.3333333333%;
}

.bl_col__11 {
    width: 91.6666667431%;
}

.bl_col__12 {
    width: 100%;
}

/* 横幅 - スマホ幅 */
@media screen and (max-width: 959px) {
    .bl_col_sm__1 {
        width: 8.3333333333%;
    }

    .bl_col_sm__2 {
        width: 16.6666666667%;
    }

    .bl_col_sm__3 {
        width: 25%;
    }

    .bl_col_sm__4 {
        width: 33.3333333333%;
    }

    .bl_col_sm__5 {
        width: 41.6666666667%;
    }

    .bl_col_sm__6 {
        width: 50%;
    }

    .bl_col_sm__7 {
        width: 58.3333334792%;
    }

    .bl_col_sm__8 {
        width: 66.6666666667%;
    }

    .bl_col_sm__9 {
        width: 75.0000001875%;
    }

    .bl_col_sm__10 {
        width: 83.3333333333%;
    }

    .bl_col_sm__11 {
        width: 91.6666667431%;
    }

    .bl_col_sm__12 {
        width: 100%;
    }
}

/* カラム間の左右余白 - 少 */
.bl_col__paddingLR__Min {
    margin-left: calc(-1 * var(--padding-grid_sm) / 2);
    margin-right: calc(-1 * var(--padding-grid_sm) / 2);
}

@media screen and (min-width: 960px) {
    .bl_col__paddingLR__Min {
        margin-left: calc(-1 * var(--padding-grid_lgmd) / 2);
        margin-right: calc(-1 * var(--padding-grid_lgmd) / 2);
    }
}

.bl_col__paddingLR__Min > * {
    padding: calc(var(--padding-grid_sm) / 2);
}

@media screen and (min-width: 960px) {
    .bl_col__paddingLR__Min > * {
        padding: calc(var(--padding-grid_lgmd) / 2);
    }
}

/* カラム間の上余白 - 大 */
.bl_col__paddingTop__Max {
    margin-top: calc(-1 * var(--padding-grid_sm));
}

@media screen and (min-width: 960px) {
    .bl_col__paddingTop__Max {
        margin-top: calc(-1 * var(--padding-grid_lgmd));
    }
}

.bl_col__paddingTop__Max > * {
    padding: calc(var(--padding-grid_sm) * 2) var(--padding-grid_sm);
}

@media screen and (min-width: 960px) {
    .bl_col__paddingTop__Max > * {
        padding: var(--padding-grid_lgmd);
    }
}

/* 両端配置 */
@media screen and (min-width: 960px) {
    .bl_col__justifyContents {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

/* スマホ版 両端配置 */
@media screen and (max-width: 959px) {
    .bl_col__justifyContents_sm {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

/*—————————————————————————————————————————————————————
　基本ボックス
—————————————————————————————————————————————————————*/
.bl_box {
    background-color: var(--color-content-bg);
    padding: calc(1.2 * var(--padding-grid-inner_sm)) var(--padding-grid-inner_sm);
}

@media screen and (min-width: 960px) {
    .bl_box {
        padding: var(--padding-grid-inner_lgmd) var(--padding-grid-inner_lgmd) calc(1.1 * var(--padding-grid-inner_lgmd));
    }
}

/* ————————————— モディファイア ————————————— */
/* 角丸 */
.bl_box__rounded {
    border-radius: 0.4rem;
}

/* 枠線 */
.bl_box__border {
    border: 1px solid var(--color-content-border);
}

/* ドロップシャドウ */
.bl_box__shadow {
    -webkit-box-shadow: 0px 1px 2px var(--color-content-shadow);
    box-shadow: 0px 1px 2px var(--color-content-shadow);
}

/* ボックス内の余白小 */
.bl_box__minPadding {
    padding: calc(var(--padding-grid-inner_sm) / 1.5) !important;
}

@media screen and (min-width: 960px) {
    .bl_box__minPadding {
        padding: calc(var(--padding-grid-inner_lgmd) / 1.75) !important;
    }
}

/* ボックス内の余白なし */
.bl_box__noPadding {
    padding: 0 !important;
}

/* 背景色あり */
.bl_box__bg {
    background-color: #e4e6ea;
}

.bl_box__bg__dark {
    background-color: var(--color-content-bg_dark);
}

.bl_box__bg__primary_l {
    background-color: rgba(var(--color-primary_rgb), 8%);
}

.bl_box__bg__secondary_l {
    background-color: rgba(var(--color-secondary_rgb), 8%);
}

.bl_box__bg__success_l {
    background-color: rgba(var(--color-success_rgb), 8%);
}

.bl_box__bg__info_l {
    background-color: rgba(var(--color-info_rgb), 8%);
}

.bl_box__bg__danger_l {
    background-color: rgba(var(--color-danger_rgb), 8%);
}

.bl_box__bg__warning_l {
    background-color: rgba(var(--color-warning_rgb), 8%);
}

.bl_box__bg__primary {
    background-color: var(--color-primary);
}

.bl_box__bg__secondary {
    background-color: var(--color-secondary);
}

.bl_box__bg__success {
    background-color: var(--color-success);
}

.bl_box__bg__info {
    background-color: var(--color-info);
}

.bl_box__bg__danger {
    background-color: var(--color-danger);
}

.bl_box__bg__warning {
    background-color: var(--color-warning);
}

/*—————————————————————————————————————————————————————
　横幅の最大値固定化
—————————————————————————————————————————————————————*/
.bl_contBoxed {
    max-width: var(--width-contents_max);
    margin-left: auto;
    margin-right: auto;
}

/*—————————————————————————————————————————————————————
　モード選択
—————————————————————————————————————————————————————*/
.bl_mode__select {
    background-color: var(--color-content-bg);
    padding: 4.7rem 4.6rem 6.4rem;
}

    .bl_mode__select .radio-inline__input {
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #D8D8D8;
        border-radius: 12px;
        text-align: center;
        font-weight: bold;
    }

        .bl_mode__select .radio-inline__input:checked + .radio-inline__label {
            color: #FFFFFF;
            border-radius: 12px;
            -webkit-box-shadow: none;
            box-shadow: none;
        }

.ly_main__common .bl_mode__select .radio-inline__input:checked + .radio-inline__label {
    border: 1px solid #008B8D;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#009E78), to(#007879)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #009E78 0%, #007879 100%) 0% 0% no-repeat padding-box;
}

.ly_main__training .bl_mode__select .radio-inline__input:checked + .radio-inline__label {
    border: 1px solid #1478C3;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
}

.bl_mode__select .radio-inline__input:disabled + .radio-inline__label {
    opacity: 0.3;
    background: #E5E5E5 0% 0% no-repeat padding-box;
    -webkit-box-shadow: inset -1px 1px 2px #FFFFFF;
    box-shadow: inset -1px 1px 2px #FFFFFF;
    border: 1px solid #D8D8D8;
    cursor: not-allowed;
}

.bl_mode__method {
    background-color: var(--color-content-bg);
    padding: 2.4rem 0 0 0;
}

.ly_main__common .bl_mode__method {
    background: #B2DCDC 0% 0% no-repeat padding-box;
}

.ly_main__training .bl_mode__method, .help .bl_mode__method {
    background: #B8D6ED 0% 0% no-repeat padding-box;
}

.bl_mode__method .bl_box {
    padding: 4.7rem 4.6rem 6.4rem;
}

    .bl_mode__method .bl_box .bl_col {
        display: none;
        margin: 0;
    }

        .bl_mode__method .bl_box .bl_col > * {
            padding: 0;
        }

        .bl_mode__method .bl_box .bl_col.is_active {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
        }

/*—————————————————————————————————————————————————————
　リスト
—————————————————————————————————————————————————————*/
.bl_list {
    padding-left: 2rem;
}

    .bl_list li {
        padding-top: 0.45em;
        font-size: 1.4rem;
        line-height: 1.5;
        text-align: justify;
        list-style: disc;
    }

@media screen and (min-width: 960px) {
    .bl_list li {
        font-size: 1.6rem;
    }
}

.bl_list ul {
    padding-left: 1em;
}

    .bl_list ul li {
        list-style: circle;
    }

/* ————————————— モディファイア ————————————— */
/* 番号付き */
.bl_list__order li {
    list-style: decimal !important;
}

.bl_list__order ul li {
    list-style: decimal !important;
}

    .bl_list__order ul li::marker {
        color: var(--color-txt_l);
    }

/* アイコン付き */
.bl_list__icon {
    padding-left: 2.4rem;
}

    .bl_list__icon li {
        position: relative;
        list-style: none !important;
    }

    .bl_list__icon i {
        position: absolute;
        display: inline-block;
        left: -2.4rem;
        font-size: 2rem;
        line-height: 1.1;
    }

    .bl_list__icon ul li i {
        color: var(--color-txt_l);
    }

/* スタイルなし */
.bl_list__noStyle {
    padding-left: 0rem;
}

    .bl_list__noStyle li {
        list-style: none !important;
    }

    .bl_list__noStyle ul {
        padding-left: 2rem;
    }

/*—————————————————————————————————————————————————————
　定義リスト（dl dt dd）
—————————————————————————————————————————————————————*/
.bl_dateList, .bl_dateList_mode__point, .bl_dateList_mode__method {
    position: relative;
    border-top: 1px solid var(--color-border_l);
}

    .bl_dateList dt, .bl_dateList_mode__point dt, .bl_dateList_mode__method dt,
    .bl_dateList dd,
    .bl_dateList_mode__point dd,
    .bl_dateList_mode__method dd {
        font-size: 1.3rem;
        line-height: 1.6;
    }

@media screen and (min-width: 960px) {
    .bl_dateList dt, .bl_dateList_mode__point dt, .bl_dateList_mode__method dt,
    .bl_dateList dd,
    .bl_dateList_mode__point dd,
    .bl_dateList_mode__method dd {
        font-size: 1.5rem;
    }
}

.bl_dateList dt, .bl_dateList_mode__point dt, .bl_dateList_mode__method dt {
    font-weight: normal;
    padding: 2rem 0 0 0;
}

@media screen and (min-width: 960px) {
    .bl_dateList dt, .bl_dateList_mode__point dt, .bl_dateList_mode__method dt {
        position: absolute;
        left: 0;
        width: 12em;
        padding: 2rem 0 1.8rem 0;
    }
}

.bl_dateList dd, .bl_dateList_mode__point dd, .bl_dateList_mode__method dd {
    border-bottom: 1px solid var(--color-border_l);
    padding: 0.4rem 0 2rem 0;
}

@media screen and (min-width: 960px) {
    .bl_dateList dd, .bl_dateList_mode__point dd, .bl_dateList_mode__method dd {
        padding: 2rem 0 1.8rem 0;
    }
}

@media screen and (min-width: 960px) {
    .bl_dateList dd, .bl_dateList_mode__point dd, .bl_dateList_mode__method dd {
        padding-left: 12em;
    }
}

.bl_dateList a, .bl_dateList_mode__point a, .bl_dateList_mode__method a {
    color: var(--color-link);
    word-break: break-all;
}

    .bl_dateList a:hover, .bl_dateList_mode__point a:hover, .bl_dateList_mode__method a:hover {
        color: var(--color-link_hover);
    }

.bl_dateList_mode__method {
    margin-left: 4.6rem;
    border-top: none;
}

    .bl_dateList_mode__method dt {
        border-radius: 5px;
        width: 4rem;
        height: 4rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        color: #FFFFFF;
        font-weight: bold;
    }

.ly_main__common .bl_dateList_mode__method dt {
    background-color: #008B8D;
}

.ly_main__training .bl_dateList_mode__method dt, .help .bl_dateList_mode__method dt {
    background-color: #1478C3;
}

.bl_dateList_mode__method dd {
    border-bottom: none;
    padding: 0 0 3rem 6rem;
}

    .bl_dateList_mode__method dd h4 {
        font-weight: bold;
        line-height: 4rem;
    }

.ly_main__common .bl_dateList_mode__method dd h4 {
    color: #008B8D;
}

.ly_main__training .bl_dateList_mode__method dd h4, .help .bl_dateList_mode__method dd h4 {
    color: #023995;
}

.bl_dateList_mode__method dd p {
    margin-top: 1rem;
}

.bl_dateList_mode__point {
    border-top: none;
}

    .bl_dateList_mode__point dd {
        border-bottom: none;
        padding: 0 0 3rem 0;
    }

        .bl_dateList_mode__point dd h4 {
            font-weight: bold;
            line-height: 4rem;
        }

.ly_main__common .bl_dateList_mode__point dd h4 {
    color: #008B8D;
}

.ly_main__training .bl_dateList_mode__point dd h4, .help .bl_dateList_mode__point dd h4 {
    color: #023995;
}

.bl_dateList_mode__point dd p {
    margin-top: 1rem;
}

.bl_dateList__label dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (min-width: 960px) {
    .bl_dateList__label dt {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 17.5em;
    }
}

.bl_dateList__label dt:after {
    content: attr(data-label);
    padding: 0.4em 1em;
    margin-left: 1rem;
    font-size: 1rem;
    line-height: 1.2;
    text-align: center;
    background-color: var(--color-default);
    border-radius: 50rem;
}

@media screen and (min-width: 960px) {
    .bl_dateList__label dt:after {
        width: 10em;
        padding: 0.4em 0.3em;
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 959px) {
    .bl_dateList__label dd {
        padding: 0.6rem 0 2rem 0;
    }
}

@media screen and (min-width: 960px) {
    .bl_dateList__label dd {
        padding-left: 19em;
    }
}

/* ————————————— ラベルカラー ————————————— */
.bl_dateList_label__primary:after {
    color: var(--color-primary) !important;
    background-color: rgba(var(--color-primary_rgb), 14%) !important;
}

.bl_dateList_label__secondary:after {
    color: var(--color-secondary) !important;
    background-color: rgba(var(--color-secondary_rgb), 14%) !important;
}

.bl_dateList_label__success:after {
    color: var(--color-success) !important;
    background-color: rgba(var(--color-success_rgb), 14%) !important;
}

.bl_dateList_label__info:after {
    color: var(--color-info) !important;
    background-color: rgba(var(--color-info_rgb), 14%) !important;
}

.bl_dateList_label__danger:after {
    color: var(--color-danger) !important;
    background-color: rgba(var(--color-danger_rgb), 14%) !important;
}

.bl_dateList_label__warning:after {
    color: var(--color-warning) !important;
    background-color: rgba(var(--color-warning_rgb), 14%) !important;
}

/*—————————————————————————————————————————————————————
　ボタン群
—————————————————————————————————————————————————————*/
.bl_buttons {
    margin-bottom: -1rem;
}

    .bl_buttons > * {
        margin: 0 0.8rem 1rem 0 !important;
    }

/* ————————————— モディファイア ————————————— */
/* 縦並び */
.bl_buttons__column {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

/* 均等配置 */
.bl_buttons__spaceBetween {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

    .bl_buttons__spaceBetween > * {
        margin: 0 0rem 1rem 0 !important;
    }

/* 中央配置 */
.bl_buttons__center {
    width: 100%;
    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;
}

/*—————————————————————————————————————————————————————
　バッジ群
—————————————————————————————————————————————————————*/
.bl_badges {
    margin-bottom: -1rem;
}

    .bl_badges > * {
        display: inline-block;
        margin: 0 0.5rem 1rem 0 !important;
    }

/*—————————————————————————————————————————————————————
　ステップバー
—————————————————————————————————————————————————————*/
.bl_progressBar {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-animation-name: fade;
    animation-name: fade;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
}

    .bl_progressBar div {
        -webkit-animation-name: fade;
        animation-name: fade;
        -webkit-animation-duration: 1s;
        animation-duration: 1s;
        width: 4rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -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;
    }

        .bl_progressBar div img {
            width: 3.4rem;
            opacity: 0.5;
        }

            .bl_progressBar div img.is_active {
                opacity: 1;
            }

        .bl_progressBar div p {
            position: relative;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            letter-spacing: -1px;
            font-size: 1.2rem;
            color: #819CCA;
            width: 2rem;
            height: 2rem;
            line-height: 1.4rem;
            text-align: center;
            border-radius: 50%;
            background: #023995 0% 0% no-repeat padding-box;
            padding-left: 4px;
            font-family: "Arial", sans-serif;
        }

            .bl_progressBar div p.none {
                padding-left: 0;
            }

                .bl_progressBar div p.none span {
                    width: 8px;
                    height: 8px;
                    border-radius: 50%;
                    background: #819CCA 0% 0% no-repeat padding-box;
                }

                .bl_progressBar div p.none.is_active span {
                    background: #FFFFFF 0% 0% no-repeat padding-box;
                }

            .bl_progressBar div p small {
                font-family: "Noto Sans JP", sans-serif;
                font-size: 1rem;
                -webkit-transform: scale(0.5);
                transform: scale(0.5);
            }

            .bl_progressBar div p.is_active:after, .bl_progressBar div p.is_complete:after {
                background-color: #023995;
            }

            .bl_progressBar div p.is_complete {
                width: 1.4rem;
                height: 1.4rem;
                margin: auto 0;
                padding-left: 0;
                color: #ffffff;
            }

                .bl_progressBar div p.is_complete:after {
                    width: 183%;
                    left: -183%;
                    top: 0.6rem;
                }

            .bl_progressBar div p.is_active {
                color: #ffffff;
                background-color: #E50012;
            }

                .bl_progressBar div p.is_active:after {
                    width: 114%;
                    left: -114%;
                    z-index: -1;
                }

@media screen and (max-width: 959px) {
    .bl_progressBar div p.is_active {
        font-size: 1.2rem;
    }
}

.bl_progressBar div p:after {
    content: "";
}

.bl_progressBar div p:after {
    position: absolute;
    z-index: 1;
    top: 1.3rem;
    left: -100%;
    width: 100%;
    height: 2px;
    background-color: #023995;
}

@media screen and (min-width: 960px) {
    .bl_progressBar div p:after {
        top: 0.9rem;
    }
}

.bl_progressBar div:first-child p::after {
    content: none;
}

@-webkit-keyframes fade {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fade {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}
/* ====================================================

　　ナビゲーション

==================================================== */
/*—————————————————————————————————————————————————————
　ページ先頭（前のページに戻る・パンくず）
—————————————————————————————————————————————————————*/
.bl_navPageHead {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: calc(-1 * var(--padding-contents-lr_mdsm));
    margin-bottom: 3rem;
}

@media screen and (min-width: 960px) {
    .bl_navPageHead {
        margin-top: -1rem;
    }
}

/* 前のページに戻る */
.bl_backLink {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .bl_backLink a {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 1.3rem;
        line-height: 1.4;
        color: var(--color-txt_l);
    }

    .bl_backLink i {
        font-size: inherit;
        line-height: 1.4;
    }

/* パンくず */
.bl_breadcrumb {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: auto;
    margin-left: auto;
    font-size: 1.3rem;
    color: var(--color-txt_l);
}

    .bl_breadcrumb li {
        text-align: right;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }

        .bl_breadcrumb li:nth-child(n+2):before {
            content: "\e5cc";
            padding: 0 0.6rem;
        }

    .bl_breadcrumb a {
        color: var(--color-link);
    }

/*—————————————————————————————————————————————————————
　ページネーション
—————————————————————————————————————————————————————*/
.el_pagination {
    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 screen and (min-width: 960px) {
    .el_pagination {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}

.el_pagination li {
    margin-right: 0.5rem;
    font-size: 1.4rem;
    line-height: 1;
    display: none;
    text-align: center;
}

@media screen and (min-width: 960px) {
    .el_pagination li {
        display: block;
        font-size: 1.6rem;
    }
}

.el_pagination li a {
    display: block;
    padding: 1rem 1.3rem;
    border: 1px solid var(--color-border);
    border-radius: 0.3rem;
    background-color: #FFFFFF;
}

.el_pagination li:hover a {
    background-color: var(--color-txt);
    border-color: var(--color-txt);
    color: #FFFFFF;
}

.el_pagination li:hover:before, .el_pagination li:hover:after {
    color: #FFFFFF;
}

.el_pagination li.is_active a {
    pointer-events: none;
    background-color: var(--color-link);
    color: var(--color-link_contrast);
    border-color: var(--color-link);
}

.el_pagination_prev,
.el_pagination_next {
    position: relative;
    display: block !important;
}

@media screen and (max-width: 959px) {
    .el_pagination_prev a,
    .el_pagination_next a {
        min-width: 10rem;
        padding-top: 1.6rem !important;
        padding-bottom: 1.6rem !important;
    }
}

.el_pagination_prev span:before, .el_pagination_prev span:after,
.el_pagination_next span:before,
.el_pagination_next span:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.el_pagination_prev a {
    padding-left: 2em !important;
}

.el_pagination_prev span:before {
    content: "\e314";
    left: 0.5em;
}

.el_pagination_next {
    margin-right: 0rem;
}

    .el_pagination_next a {
        padding-right: 2em !important;
    }

    .el_pagination_next span:before {
        content: "\e315";
        right: 0.5em;
    }

/*—————————————————————————————————————————————————————
　カプセル型
—————————————————————————————————————————————————————*/
.bl_navPills {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.5rem;
    border-radius: 0.4rem;
    background-color: #FFF;
}

@media screen and (min-width: 960px) {
    .bl_navPills {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }
}

.bl_navPills li {
    font-size: 1.3rem;
    line-height: 1.2;
    letter-spacing: 0.05em;
}

@media screen and (min-width: 960px) {
    .bl_navPills li {
        width: auto;
        font-size: 1.6rem;
    }
}

.bl_navPills li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 4rem;
    padding: 0.5rem 1rem;
    border-radius: 0.4rem;
    color: var(--color-link);
}

@media screen and (min-width: 960px) {
    .bl_navPills li a {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        min-width: 11rem;
        min-height: 5rem;
        padding: 1rem;
    }
}

.bl_navPills li a:hover {
    background-color: var(--color-link_hover_bg);
}

.bl_navPills li i {
    font-size: 2.4rem;
    padding-right: 0.16em;
}

.bl_navPills li.is_active a {
    pointer-events: none;
    font-weight: bold;
    background-color: var(--color-link);
    color: var(--color-link_contrast);
}

.bl_navPills li.is_disable {
    pointer-events: none;
    opacity: 0.5;
}

    .bl_navPills li.is_disable a {
        color: var(--color-txt);
    }

/* ————————————— モディファイア ————————————— */
/* 背景色なし */
.bl_navPills__backgroundNone {
    padding: 0;
    background-color: inherit;
}

    .bl_navPills__backgroundNone li a {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        min-width: auto;
        min-height: 4rem;
        padding: 1rem 1.5rem;
    }

/* 横幅100% */
.bl_navPills__width100 {
    width: 100%;
}

/* リスト型（縦配置） */
.bl_navPills__column li {
    width: 100%;
}

    .bl_navPills__column li a {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

@media screen and (min-width: 960px) {
    .bl_navPills__column li a {
        min-width: auto;
    }
}

/* 中央揃え */
.bl_navPills__alignCenter {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* 均等配置 */
.bl_navPills__evenly {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

/* 枠線あり */
.bl_navPills__border {
    border: 1px solid var(--color-border);
}

/* スマホ時 横スクロール */
.bl_navPills__scrollX {
    width: 100%;
    overflow-x: scroll;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

@media screen and (max-width: 959px) {
    .bl_navPills__scrollX {
        width: calc(100% + var(--padding-contents-lr_mdsm));
        border-right: none !important;
        border-radius: 0.4rem 0 0 0.4rem;
    }
}

@media screen and (max-width: 959px) {
    .bl_navPills__scrollX li a {
        white-space: nowrap;
    }
}

.bl_navPills__dark {
    background-color: var(--color-txt);
    border: none;
}

    .bl_navPills__dark li a {
        color: #FFFFFF;
    }

        .bl_navPills__dark li a:hover {
            background-color: rgba(255, 255, 255, 0.1);
        }

    .bl_navPills__dark li.is_active a {
        background-color: #FFFFFF;
        color: var(--color-link);
    }

    .bl_navPills__dark li.is_disable a {
        color: #FFFFFF;
    }

/* ————————————— 子要素に指定するスタイル ————————————— */
.bl_navPills_iconAfter i {
    padding-right: 0 !important;
    padding-left: 0.16em;
}

/*—————————————————————————————————————————————————————
　タブ
—————————————————————————————————————————————————————*/
.bl_navTab, .bl_navTab__history, .bl_navTab__method {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 959px) {
    .bl_navTab, .bl_navTab__history, .bl_navTab__method {
        overflow-x: auto;
    }
}

@media screen and (min-width: 960px) {
    .bl_navTab, .bl_navTab__history, .bl_navTab__method {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.bl_navTab:before, .bl_navTab__history:before, .bl_navTab__method:before {
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 1px;
    background-color: var(--color-border_l);
}

.bl_navTab li, .bl_navTab__history li, .bl_navTab__method li {
    z-index: 1;
    font-size: 1.3rem;
    line-height: 1.2;
    border-bottom: 1px solid var(--color-border_l);
}

@media screen and (min-width: 960px) {
    .bl_navTab li, .bl_navTab__history li, .bl_navTab__method li {
        font-size: 1.5rem;
    }
}

.bl_navTab li a, .bl_navTab__history li a, .bl_navTab__method li a {
    display: block;
    padding: 1.2rem 1.4rem;
}

@media screen and (max-width: 959px) {
    .bl_navTab li a, .bl_navTab__history li a, .bl_navTab__method li a {
        white-space: nowrap;
    }
}

@media screen and (min-width: 960px) {
    .bl_navTab li a, .bl_navTab__history li a, .bl_navTab__method li a {
        padding: 1.5rem 2rem;
    }
}

.bl_navTab li:hover, .bl_navTab__history li:hover, .bl_navTab__method li:hover {
    color: var(--color-primary);
}

.bl_navTab li.is_active, .bl_navTab__history li.is_active, .bl_navTab__method li.is_active {
    pointer-events: none;
    font-weight: bold;
    border-bottom: 3px solid var(--color-primary);
}

.bl_navTab li.is_disable, .bl_navTab__history li.is_disable, .bl_navTab__method li.is_disable {
    pointer-events: none;
    color: rgba(var(--color-txt_rgb), 40%);
}

.bl_navTab__method {
    padding-left: 4.6rem;
}

    .bl_navTab__method li {
        margin-right: 4px;
        width: 23.4rem;
        height: 6.4rem;
        text-align: center;
        font-size: 1.8rem;
        line-height: 3.2rem;
        background: rgba(255, 255, 255, 0.4) 0% 0% no-repeat padding-box;
        border-right: none;
        border-bottom: none;
    }

.ly_main__common .bl_navTab__method li {
    color: #008B8D;
}

.ly_main__training .bl_navTab__method li, .help .bl_navTab__method li {
    color: #1478C3;
}

.bl_navTab__method li.is_active {
    border-right: none;
    font-weight: bold;
    opacity: 1;
}

.ly_main__common .bl_navTab__method li.is_active {
    color: #005D5E;
}

.ly_main__training .bl_navTab__method li.is_active, .help .bl_navTab__method li.is_active {
    color: #023995;
}

.bl_navTab__history {
    width: clamp(102.4rem, 100%, 111.2rem);
    margin: 0 auto;
    height: 100%;
}

    .bl_navTab__history:before {
        content: unset;
    }

    .bl_navTab__history li {
        margin-left: 2.4rem;
        height: 5.6rem;
        text-align: center;
        letter-spacing: 0px;
        font-size: 1.6rem;
        line-height: 1.9rem;
        background: rgba(255, 255, 255, 0.4) 0% 0% no-repeat padding-box;
        border-right: none;
        border-bottom: none;
        opacity: 1;
        color: #2A2A2A;
    }

        .bl_navTab__history li:hover {
            color: #2A2A2A;
        }

        .bl_navTab__history li.is_active {
            border-right: none;
            font-weight: bold;
            color: #008B8D;
        }

        .bl_navTab__history li a {
            height: 5.6rem;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            padding: 1.2rem 0;
            -webkit-transition: all 0.1s ease;
            transition: all 0.1s ease;
        }

@media screen and (max-width: 959px) {
    .bl_navTab__history li a {
        white-space: nowrap;
    }
}

@media screen and (min-width: 960px) {
    .bl_navTab__history li a {
        padding: 1.5rem 0 1.7rem;
    }
}

.bl_navTab__history li a:hover {
    opacity: 0.6;
}

/* ————————————— モディファイア ————————————— */
/* ボックス要素とセットのタブ */
.bl_navTab__boxSet li:first-child.is_active, .bl_navTab__boxSet__history li:first-child.is_active, .bl_navTab__boxSet__method li:first-child.is_active {
    border-left: 1px solid var(--color-content-bg);
    border-right: 1px solid var(--color-content-bg);
}

.bl_navTab__boxSet li.is_active, .bl_navTab__boxSet__history li.is_active, .bl_navTab__boxSet__method li.is_active {
    border-top: 2px solid var(--color-primary);
    border-right: 1px solid var(--color-border_l);
    border-left: 1px solid var(--color-border_l);
    border-bottom: none;
    background-color: var(--color-content-bg);
}

.ly_main__common .bl_navTab__boxSet__method li.is_active {
    border-top: 3px solid #008B8D;
}

.ly_main__training .bl_navTab__boxSet__method li.is_active, .help .bl_navTab__boxSet__method li.is_active {
    border-top: 3px solid #1478C3;
}

.bl_navTab__boxSet__history li.is_active {
    border-top: unset;
    border-left: 1px solid var(--color-content-bg);
    border-right: 1px solid var(--color-content-bg);
    border-bottom: 3px solid #008B8D;
}

/* ボックス要素の中に入れるタブ */
.bl_navTab__boxInner {
    width: calc(100% + var(--padding-grid-inner_sm) * 2);
    margin-top: calc(-1 * var(--padding-grid-inner_sm));
    margin-left: calc(-1 * var(--padding-grid-inner_sm));
    margin-bottom: var(--padding-grid-inner_sm);
}

@media screen and (min-width: 960px) {
    .bl_navTab__boxInner {
        width: calc(100% + var(--padding-grid-inner_lgmd));
        margin-top: calc(-1 * var(--padding-grid-inner_lgmd));
        margin-left: calc(-1 * var(--padding-grid-inner_lgmd));
        margin-bottom: var(--padding-grid-inner_lgmd);
    }
}

@media screen and (min-width: 960px) {
    .bl_navTab__boxInner:before {
        width: calc(100% + var(--padding-grid-inner_lgmd));
    }
}

/*—————————————————————————————————————————————————————
　ボックス型
—————————————————————————————————————————————————————*/
.bl_navBox li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    font-weight: bold;
    border-radius: 0.8rem;
    -webkit-box-shadow: 0px 1px 2px var(--color-content-shadow);
    box-shadow: 0px 1px 2px var(--color-content-shadow);
    color: var(--color-primary);
    background-color: var(--color-content-bg);
}

    .bl_navBox li a:hover {
        opacity: 0.6;
    }

.bl_navBox li i, .bl_navBox li img {
    display: block;
    color: rgba(var(--color-primary_rgb), 0.3);
    font-weight: normal;
}

.bl_navBox li p small {
    display: block;
    font-size: 1rem;
    line-height: 1.6;
    font-weight: normal;
    color: var(--color-txt_l);
}

@media screen and (min-width: 960px) {
    .bl_navBox li p small {
        font-size: 1.2rem;
    }
}

/* ————————————— モディファイア ————————————— */
/* アイコン横並び */
.bl_navBox__row li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 1.2rem 1.4rem;
    font-size: 1.4rem;
}

@media screen and (min-width: 960px) {
    .bl_navBox__row li a {
        padding: 2.8rem 2rem;
        font-size: 1.8rem;
    }
}

.bl_navBox__row li i, .bl_navBox__row li img {
    margin-right: 0.4em;
    font-size: 2.8rem;
}

@media screen and (min-width: 960px) {
    .bl_navBox__row li i, .bl_navBox__row li img {
        font-size: 6rem;
        margin-right: 1.4rem;
    }
}

.bl_navBox__row li p small {
    margin-top: 0.3em;
}

/* アイコン縦並び */
.bl_navBox__column a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 2rem 1rem;
    font-size: 1.2rem;
}

@media screen and (min-width: 960px) {
    .bl_navBox__column a {
        padding: 4rem 2rem;
        font-size: 1.8rem;
    }
}

.bl_navBox__column i, .bl_navBox__column img {
    margin-bottom: 1rem;
    font-size: 2.8rem;
}

@media screen and (min-width: 960px) {
    .bl_navBox__column i, .bl_navBox__column img {
        font-size: 8rem;
    }
}

/* ====================================================

　　フォーム

==================================================== */
/*—————————————————————————————————————————————————————
　フォームブロック
—————————————————————————————————————————————————————*/
.bl_form {
    max-width: var(--width-form_max);
}

    .bl_form dt {
        margin-top: 4rem;
    }

        .bl_form dt:first-child {
            margin-top: 0;
        }

    .bl_form dd {
        margin-top: 1.2rem;
    }

    .bl_form label {
        margin-bottom: 1rem;
        font-size: 1.4rem;
        line-height: 1.2;
        font-weight: bold;
    }

@media screen and (min-width: 960px) {
    .bl_form label {
        font-size: 1.5rem;
    }
}

.bl_form label small {
    font-size: 80%;
    font-weight: 500;
    margin-left: 0.5em;
    color: var(--color-txt_l);
}

/* ————————————— モディファイア ————————————— */
/* テーブル風レイアウト */
@media screen and (min-width: 960px) {
    .bl_form.bl_form__table {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }
}

@media screen and (min-width: 960px) {
    .bl_form.bl_form__table dt,
    .bl_form.bl_form__table dd {
        margin-top: 2rem;
        padding: 1rem 0;
    }

        .bl_form.bl_form__table dt:first-of-type,
        .bl_form.bl_form__table dd:first-of-type {
            margin-top: 0rem;
        }
}

.bl_form.bl_form__table dt {
    margin-top: 3rem;
    padding: 1em;
    border-radius: 0.4rem;
    background-color: var(--color-table_th_bg);
}

    .bl_form.bl_form__table dt:first-of-type {
        margin-top: 0rem;
    }

@media screen and (min-width: 960px) {
    .bl_form.bl_form__table dt {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: var(--width-table_dt);
        margin-top: 2rem;
        padding: 0 0 0 2rem;
    }
}

@media screen and (min-width: 960px) {
    .bl_form.bl_form__table dt label {
        margin-bottom: 0;
    }
}

@media screen and (min-width: 960px) {
    .bl_form.bl_form__table dd {
        width: var(--width-table_dd);
        padding-left: 2rem;
    }
}

@media screen and (min-width: 960px) {
    .bl_form.bl_form__table dd .bl_form_group {
        margin-top: 1rem;
    }
}

/*—————————————————————————————————————————————————————
　フォームのグループ化（ラジオ・チェックボックス）
—————————————————————————————————————————————————————*/
.bl_form_group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.3em 3em;
    margin-top: 1.5rem;
}

/* ————————————— モディファイア ————————————— */
/* レイアウト変更：縦 */
.bl_form_group__column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    gap: 0.5em 0 !important;
}

/*　入力フォーム分割時に利用
　　（郵便番号等・電話番号など間に文字が入る場合）
—————————————————————————————————*/
.bl_form_groupInTxt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .bl_form_groupInTxt > span {
        display: block;
        padding: 0 0.8em;
        font-size: 1.6rem;
        white-space: nowrap;
        border: 1px solid 1px var(--color-border_l);
    }

        .bl_form_groupInTxt > span:first-child {
            padding-left: 0;
        }

/* ====================================================

　　テーブル

==================================================== */
/*—————————————————————————————————————————————————————
　シンプルテーブル
—————————————————————————————————————————————————————*/
.bl_table {
    width: 100%;
}

    .bl_table th,
    .bl_table td {
        width: auto;
        padding: 1.3em 1.6rem 1.2em;
        vertical-align: middle;
        font-size: 1.3rem;
        line-height: 1.4;
    }

@media screen and (min-width: 960px) {
    .bl_table th,
    .bl_table td {
        font-size: 1.5rem;
    }
}

.bl_table thead th {
    padding: 0.8em 1.6rem 0.8em 1.6rem;
    font-size: 1.3rem;
    line-height: 1.2;
}

.bl_table tbody tr.is_active {
    background-color: var(--color-table_active) !important;
}

.bl_table__radius {
    font-family: "Noto Sans JP";
    letter-spacing: 0px;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 8px;
    color: #2A2A2A;
}

    .bl_table__radius thead th {
        font-size: 1.2rem;
    }

        .bl_table__radius thead th:first-child {
            border-radius: 8px 0 0 0;
        }

        .bl_table__radius thead th:last-child {
            border-radius: 0 8px 0 0;
        }

    .bl_table__radius td span {
        font-size: 1rem;
        margin-left: 3px;
    }

/* ————————————— モディファイア ————————————— */
/* データ表示用テーブル */
.bl_table__data {
    width: 100%;
}

    .bl_table__data thead tr {
        background-color: var(--color-table_thead_bg);
        color: #8A8A8A;
    }

    .bl_table__data thead th {
        font-weight: normal;
    }

    .bl_table__data th,
    .bl_table__data td {
        padding: 1.3em 1.6rem;
    }

    .bl_table__data tbody tr {
        background-color: var(--color-table_td_bg1);
    }

    .bl_table__data tbody img {
        width: 100%;
        height: 100%;
        display: inline-block;
        max-height: 15rem;
    }

/* アイコン */
.bl_table_icon {
    font-size: 2rem;
    line-height: 1.2;
    vertical-align: middle;
    margin: 0 0.2em;
}

/* ————————————— モディファイア（レイアウト変更） ————————————— */
/* ミニマルなテーブル */
.bl_table__min th,
.bl_table__min td {
    letter-spacing: 0px;
    padding: 0.8em 3rem;
}

.bl_table__min tbody th {
    font-weight: normal;
    background-color: var(--color-table_th_bg);
}

/* スマホ時 縦レイアウトに変更 */
@media screen and (max-width: 959px) {
    .bl_table__row thead {
        display: none;
    }
}

@media screen and (max-width: 959px) {
    .bl_table__row tbody td {
        display: block;
        text-align: left;
        width: 100%;
        margin: 0;
        padding: 0.6rem 0;
    }

        .bl_table__row tbody td:first-child {
            padding-top: 2rem;
        }

        .bl_table__row tbody td:last-child {
            padding-bottom: 2rem;
        }

        .bl_table__row tbody td:before {
            display: block;
            content: attr(data-label);
            font-weight: bold;
            padding-bottom: 0.2rem;
        }
}

/* ホバースタイルあり */
.bl_table_style__hover tbody tr:hover {
    background-color: var(--color-table_hover) !important;
}

/* 罫線あり */
.bl_table_style__border th,
.bl_table_style__border td {
    border: 1px solid var(--color-border_l);
}

/* 交互に背景色を変える */
.bl_table_style__stripe tbody tr {
    background-color: var(--color-table_td_bg1);
}

    .bl_table_style__stripe tbody tr:nth-child(even) {
        background-color: var(--color-table_td_bg2);
    }

/* 均等配置 */
.bl_table_style__layoutFixed {
    table-layout: fixed;
}

/* 【スマホ時】横スクロール
————————————————————————————————*/
@media screen and (max-width: 959px) {
    .bl_table_scrollX {
        overflow-x: scroll;
        width: calc(100% + var(--padding-contents-lr_mdsm));
    }
}

.bl_table_scrollX table {
    width: 100%;
    border-collapse: collapse;
}

@media screen and (max-width: 959px) {
    .bl_table_scrollX table {
        min-width: 1000px;
    }
}

/* ====================================================

　　特定ページ利用

==================================================== */
/*—————————————————————————————————————————————————————
　ログイン
—————————————————————————————————————————————————————*/
.bl_login_inner {
    max-width: 60rem;
    padding: 0;
    background-color: var(--color-content-bg);
}

    .bl_login_inner form {
        padding: 0 9rem;
        margin-top: 4rem;
    }

        .bl_login_inner form .el_form_input {
            margin: 0;
            background: #F6F6F6 0% 0% no-repeat padding-box;
            border: 1px solid #CCCCCC;
            border-radius: 0;
        }

            .bl_login_inner form .el_form_input:active, .bl_login_inner form .el_form_input:focus {
                position: relative;
                z-index: 1;
            }

            .bl_login_inner form .el_form_input:first-child {
                border-radius: 4px 4px 0px 0px;
            }

            .bl_login_inner form .el_form_input:last-child {
                border-radius: 0px 0px 4px 4px;
            }

    .bl_login_inner .el_btn__login {
        width: 38.4rem;
        padding: 2.3rem 0;
        font-weight: bold;
        font-size: 2.2rem;
        line-height: 3.2rem;
        margin-top: 3.2rem;
        border: 1px solid #008B8D;
        border-radius: 4.8rem;
    }

/* ログインフォームの微調整 */
.bl_login_form dt {
    margin-top: 3rem;
}

/* ログインフォームのロゴ */
.bl_login_logo {
    min-width: 20rem;
    max-width: 34rem;
    width: 70%;
}

@media screen and (min-width: 960px) {
    .bl_login_logo {
        max-width: 34rem;
    }
}

/*—————————————————————————————————————————————————————
　HTMLのステータスコードエラー
—————————————————————————————————————————————————————*/
.bl_htmlStatusError {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: var(--padding-contents-lr_mdsm);
    padding-right: var(--padding-contents-lr_mdsm);
    height: calc(100vh - var(--height-header_mdsm));
}

@media screen and (min-width: 1112px) {
    .bl_htmlStatusError {
        height: calc(100vh - var(--height-header_lg));
    }
}

/* 英語タイトル */
.bl_htmlStatusError_ttlEng {
    font-size: 2.8rem;
    text-align: center;
    font-weight: bold;
    color: rgba(var(--color-txt_rgb), 30%);
}

@media screen and (min-width: 960px) {
    .bl_htmlStatusError_ttlEng {
        font-size: 8rem;
    }
}

.bl_htmlStatusError_ttlEng i {
    display: block;
    margin-bottom: 0.2em;
    font-size: 8rem;
    color: var(--color-danger);
}

@media screen and (min-width: 960px) {
    .bl_htmlStatusError_ttlEng i {
        font-size: 10rem;
        margin-bottom: 0.1em;
    }
}

/* 日本語タイトル */
.bl_htmlStatusError_ttl {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 1.8rem;
}

@media screen and (min-width: 960px) {
    .bl_htmlStatusError_ttl {
        font-size: 2.4rem;
    }
}

/*—————————————————————————————————————————————————————
　完了ページ用
—————————————————————————————————————————————————————*/
.bl_status {
    text-align: center;
}

/* アイコン表示エリア */
.bl_status_head {
    padding: 4rem 0;
    background-color: rgba(var(--color-primary_rgb), 8%);
    color: var(--color-primary);
}

    .bl_status_head i {
        margin-bottom: 2rem;
        font-size: 10rem;
    }

/* タイトル */
.bl_status_head_ttl {
    font-weight: bold;
}

/* ————————————— モディファイア ————————————— */
/* 完了 */
.bl_status__complete .bl_status_head {
    background-color: rgba(var(--color-success_rgb), 10%) !important;
    color: var(--color-success) !important;
}

/* エラー */
.bl_status__error .bl_status_head {
    background-color: rgba(var(--color-danger_rgb), 10%) !important;
    color: var(--color-danger) !important;
}

/* ====================================================

　　ヘッダ

==================================================== */
/*—————————————————————————————————————————————————————
　ロゴ
—————————————————————————————————————————————————————*/
.bl_headerLogo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
    padding: 1rem 0 1.1rem 3.2rem;
}

    .bl_headerLogo:hover {
        opacity: 0.6;
    }

    .bl_headerLogo:before {
        content: "";
        background: url(../images/icon_back_white.png);
        background-repeat: no-repeat;
        width: 1rem;
        height: 1.7rem;
        position: absolute;
        top: 50%;
        left: 2rem;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        display: block;
    }

    .bl_headerLogo small {
        display: block;
        width: 100%;
        font-size: 1rem;
        font-weight: normal;
        line-height: 1.5rem;
        color: #FFFFFF;
    }

    .bl_headerLogo h2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 2.4rem;
        line-height: 3.5rem;
        font-weight: bold;
        color: #FFFFFF;
    }

        .bl_headerLogo h2 span {
            font-size: 1.2rem;
            font-weight: normal;
            line-height: 1.7rem;
            background: #FFFFFF 0% 0% no-repeat padding-box;
            border-radius: 2px;
            padding: 1px 6px 3px;
            margin-left: 8px;
            margin-top: 5px;
        }

.ly_main__common .bl_headerLogo h2 span {
    color: #008B8D;
}

.ly_main__training .bl_headerLogo h2 span {
    color: #1478C3;
}

/*—————————————————————————————————————————————————————
　ナビゲーション
—————————————————————————————————————————————————————*/
/*　wrapper
————————————————————————————————*/
.bl_headerNav_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: var(--height-header_lg);
}

    .bl_headerNav_wrap > * {
        margin-left: 1.6rem;
    }

@media screen and (min-width: 960px) {
    .bl_headerNav_wrap > * {
        margin-left: 2.4rem;
    }
}

@media screen and (min-width: 1112px) {
    .bl_headerNav_wrap > * {
        margin-left: 4rem;
    }
}

/* 左側配置 */
.bl_headerNav_wrap__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .bl_headerNav_wrap__left > * {
        margin-right: 1.4rem;
        margin-left: 0;
    }

@media screen and (min-width: 960px) {
    .bl_headerNav_wrap__left > * {
        margin-right: 2.4rem;
        margin-left: 0;
    }
}

@media screen and (min-width: 1112px) {
    .bl_headerNav_wrap__left > * {
        margin-right: 4rem;
        margin-left: 0;
    }
}

/*　ナビゲーション
————————————————————————————————*/
.bl_headerNav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .bl_headerNav > li:nth-child(n+2) {
        margin-left: 1.6rem;
    }

@media screen and (min-width: 960px) {
    .bl_headerNav > li:nth-child(n+2) {
        margin-left: 3rem;
    }
}

.bl_headerNav a {
    font-size: 1.1rem;
    line-height: 1.2;
    color: var(--color-header_txt);
}

    .bl_headerNav a strong {
        font-weight: bold;
    }

    .bl_headerNav a > i {
        font-size: 2.8rem;
        line-height: 1.1;
    }

@media screen and (min-width: 1112px) {
    .bl_headerNav a > i {
        font-size: 3.2rem;
    }
}

.bl_headerNav.is_active a {
    color: var(--color-link) !important;
}

    .bl_headerNav.is_active a > i {
        color: var(--color-link) !important;
    }

/* ————————————— モディファイア ————————————— */
/* テキストナビ */
.bl_headerNav.bl_headerNav__txt {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .bl_headerNav.bl_headerNav__txt a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

@media screen and (min-width: 960px) {
    .bl_headerNav.bl_headerNav__txt a {
        font-size: 1.3rem;
    }
}

@media screen and (min-width: 1112px) {
    .bl_headerNav.bl_headerNav__txt a {
        font-size: 1.5rem;
    }
}

.bl_headerNav.bl_headerNav__txt a > i {
    margin-right: 0.8rem;
    color: var(--color-body_icon);
}

/* アイコン大ナビ */
.bl_headerNav.bl_headerNav__icon {
    min-height: var(--height-header_lg);
    -webkit-box-align: normal;
    -ms-flex-align: normal;
    align-items: normal;
}

    .bl_headerNav.bl_headerNav__icon li {
        -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1607843137);
        box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1607843137);
        border-radius: 5px;
        width: 6.5rem;
        height: 6.5rem;
    }

        .bl_headerNav.bl_headerNav__icon li a {
            cursor: pointer;
            color: #FFFFFF;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            height: 100%;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
        }

            .bl_headerNav.bl_headerNav__icon li a:hover {
                opacity: 0.6;
            }

                .bl_headerNav.bl_headerNav__icon li a:hover > i {
                    color: #FFFFFF;
                }

            .bl_headerNav.bl_headerNav__icon li a span {
                font-size: 1rem;
                -webkit-transform: scale(0.8);
                transform: scale(0.8);
                line-height: 1.1rem;
                letter-spacing: 0.8px;
            }

            .bl_headerNav.bl_headerNav__icon li a.none {
                cursor: not-allowed;
                opacity: 0.3;
            }

    .bl_headerNav.bl_headerNav__icon > li:nth-child(n+2) {
        margin-left: 0.8rem;
    }

@media screen and (min-width: 960px) {
    .bl_headerNav.bl_headerNav__icon > li:nth-child(n+2) {
        margin-left: 0.8rem;
    }
}

/* ドロップダウン展開メニュー */
.bl_headerNav__dropDown {
    position: relative;
}

    .bl_headerNav__dropDown > a {
        position: relative;
        cursor: pointer;
    }

        .bl_headerNav__dropDown > a:after {
            content: "\e5cf";
            display: block;
            margin-left: 0.4rem;
            color: var(--color-body_icon);
            font-size: 2.4rem;
            line-height: 1;
            -webkit-transition: all 0.2s ease;
            transition: all 0.2s ease;
        }

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > a:after {
        font-size: 2.8rem;
    }
}

.bl_headerNav__dropDown > a.is_active:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    color: var(--color-link) !important;
}

.bl_headerNav__dropDown > a:hover {
    color: var(--color-header_txt) !important;
}

    .bl_headerNav__dropDown > a:hover:after {
        color: var(--color-link) !important;
    }

.bl_headerNav__dropDown.bl_headerNav_txtNone__sm > a:after {
    margin-left: 0rem;
}

@media screen and (min-width: 960px) {
    .bl_headerNav__dropDown.bl_headerNav_txtNone__sm > a:after {
        margin-left: 0.4rem;
    }
}

.bl_headerNav__dropDown.bl_headerNav_txtNone__sm > a > i {
    margin-right: 0rem;
}

@media screen and (min-width: 960px) {
    .bl_headerNav__dropDown.bl_headerNav_txtNone__sm > a > i {
        margin-right: 0.8rem;
    }
}

.bl_headerNav__dropDown > ul {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    position: absolute;
    top: 6rem;
    right: 0;
    width: 30rem;
    background: var(--color-body_dropdown_bg);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > ul {
        top: 7rem;
    }
}

.bl_headerNav__dropDown > ul.is_show {
    visibility: visible;
    opacity: 1;
    top: 5rem;
}

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > ul.is_show {
        top: 5.8rem;
    }
}

.bl_headerNav__dropDown > ul li a {
    display: block;
    padding: 1.4rem 1.6rem;
    font-size: 1.3rem;
    line-height: 1.2;
    color: #FFF !important;
}

    .bl_headerNav__dropDown > ul li a:hover {
        background-color: var(--color-body_dropdown_hover);
    }

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > ul li a {
        padding: 1.8rem 2rem;
        font-size: 1.4rem;
    }
}

.bl_headerNav__dropDown > ul li i {
    font-size: 1.5rem !important;
    vertical-align: middle;
}

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > ul li i {
        font-size: 2rem !important;
    }
}

.bl_headerNav__dropDown > ul > ul li {
    color: #FFF;
}

    .bl_headerNav__dropDown > ul > ul li a {
        padding: 1.4rem 2rem;
    }

@media screen and (min-width: 1112px) {
    .bl_headerNav__dropDown > ul > ul li a {
        padding: 1.4rem 3rem;
    }
}

.bl_headerNav__dropDown_secTtl {
    padding: 2rem 2rem 1rem;
    font-size: 1.2rem;
    color: rgba(255, 255, 255, 0.7);
}

.bl_headerNav__dropDown_line {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/*　通知バッジ
————————————————————————————————*/
.bl_headerNav_badge {
    position: relative;
}

    .bl_headerNav_badge:before {
        content: attr(data-badge);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        position: absolute;
        right: -0.2rem;
        min-width: 1.4rem;
        height: 1.4rem;
        padding: 0.3rem;
        font-size: 1rem;
        line-height: 1;
        border-radius: 1rem;
        color: #FFF;
        background-color: var(--color_red);
    }

@media screen and (min-width: 960px) {
    .bl_headerNav_badge:before {
        right: -0.4rem;
    }
}

@media screen and (min-width: 1112px) {
    .bl_headerNav_badge:before {
        min-width: 1.6rem;
        height: 1.6rem;
    }
}

/* ====================================================

　　サイド

==================================================== */
/*—————————————————————————————————————————————————————
　サイドナビゲーション（親・子・孫階層まで）
—————————————————————————————————————————————————————*/
/* 全階層共通 */
.bl_sideNavi li {
    margin: 0rem 1.4rem;
}

@media screen and (min-width: 1112px) {
    .bl_sideNavi li {
        margin: 0.4rem 1.4rem;
    }
}

.bl_sideNavi li a, .bl_sideNavi li summary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 5rem;
    padding: 0.6rem 0rem 0.2rem;
    font-size: 1.4rem;
    line-height: 1.2;
    cursor: pointer;
    -webkit-transition: padding 0.2s ease;
    transition: padding 0.2s ease;
}

@media screen and (min-width: 1112px) {
    .bl_sideNavi li a, .bl_sideNavi li summary {
        min-height: 6rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
        font-size: 1.6rem;
    }
}

.bl_sideNavi li a:hover, .bl_sideNavi li summary:hover {
    border-radius: 0.8rem;
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    background-color: var(--color-side_hover);
}

@media screen and (min-width: 1112px) {
    .bl_sideNavi li a:hover, .bl_sideNavi li summary:hover {
        padding-left: 1.4rem;
        padding-right: 1.4rem;
    }
}

.bl_sideNavi li i {
    margin-right: 1.2rem;
    margin-bottom: 0.2em;
    vertical-align: middle;
    font-size: 1.8rem;
    line-height: 1;
    color: var(--color-side_icon);
}

@media screen and (min-width: 1112px) {
    .bl_sideNavi li i {
        margin-bottom: 0.1em;
        font-size: 2.4rem;
    }
}

/*　アコーディオン：全階層共通
————————————————————————————————*/
.bl_sideNavi summary {
    position: relative;
    list-style: none;
    cursor: pointer;
}

    .bl_sideNavi summary:before {
        content: "\e5cc";
        position: absolute;
        right: 0rem;
        top: calc(50% - 14px);
        font-size: 2.4rem;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }

    .bl_sideNavi summary::-webkit-details-marker {
        display: none !important;
    }

.bl_sideNavi details[open] {
    width: calc(100% + 1.4rem + 1.4rem);
    margin-left: -1.4rem;
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    background-color: var(--color-side_open_bg);
}

    .bl_sideNavi details[open] > summary:before {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }

    .bl_sideNavi details[open] > summary:hover {
        background-color: inherit;
    }

/* 子階層 */
.bl_sideNavi_child > li a, .bl_sideNavi_child > li summary {
    min-height: 4rem !important;
    padding-left: 1.8rem !important;
}

    .bl_sideNavi_child > li a:hover, .bl_sideNavi_child > li summary:hover {
        background-color: inherit;
    }

/* 孫階層 */
.bl_sideNavi_grandchild > li > a, .bl_sideNavi_grandchild > li summary {
    min-height: 4rem !important;
    padding-left: 1.8rem !important;
}

    .bl_sideNavi_grandchild > li > a:hover, .bl_sideNavi_grandchild > li summary:hover {
        background-color: inherit;
    }

/* ————————————————— 状態 ————————————————— */
/* 選択中：全階層共通 */
.bl_sideNavi .is_active {
    pointer-events: none;
    padding: 0 1.4rem;
    border-radius: 0.8rem;
    color: var(--color-side_active_txt);
    background-color: var(--color-side_active);
}

/*　セクションタイトル
————————————————————————————————*/
.bl_sideNavi_secTtl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 2rem;
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    min-height: 3rem;
    font-size: 1.2rem;
}

/* ====================================================

　　フッタ

==================================================== */
/*—————————————————————————————————————————————————————
　フッタのコピーライト
—————————————————————————————————————————————————————*/
.bl_footer_copy {
    font-size: 1rem;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    line-height: 1.2;
    text-align: center;
    color: var(--color-txt_l);
}

@media screen and (min-width: 1112px) {
    .bl_footer_copy {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/*=================================================================================

　ヘルパー	接頭辞：hp_*

=================================================================================*/
/*—————————————————————————————————————————————————————
　上余白
—————————————————————————————————————————————————————*/
.hp_marginTop {
    display: block;
}

.hp_marginTop__xl {
    margin-top: 8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__xl {
        margin-top: 12rem !important;
    }
}

.hp_marginTop__l {
    margin-top: 4rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__l {
        margin-top: 6.4rem !important;
    }
}

.hp_marginTop__m {
    margin-top: 2.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__m {
        margin-top: 4.8rem !important;
    }
}

.hp_marginTop__s {
    margin-top: 1.6rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__s {
        margin-top: 2.8rem !important;
    }
}

.hp_marginTop__xs {
    margin-top: 0.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__xs {
        margin-top: 1.6rem !important;
    }
}

.hp_marginTop__xxs {
    margin-top: 0.4rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginTop__xxs {
        margin-top: 0.8rem !important;
    }
}

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

/* スマホ用 */
@media screen and (max-width: 959px) {
    .hp_marginTop_sm {
        display: block;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__xl {
        margin-top: 8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__l {
        margin-top: 4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__m {
        margin-top: 2.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__s {
        margin-top: 1.6rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__xs {
        margin-top: 0.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__xxs {
        margin-top: 0.4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginTop_sm__none {
        margin-top: 0 !important;
    }
}

/*—————————————————————————————————————————————————————
　下余白
—————————————————————————————————————————————————————*/
.hp_marginBottom {
    display: block;
}

.hp_marginBottom__xl {
    margin-bottom: 8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__xl {
        margin-bottom: 12rem !important;
    }
}

.hp_marginBottom__l {
    margin-bottom: 4rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__l {
        margin-bottom: 4.8rem !important;
    }
}

.hp_marginBottom__m {
    margin-bottom: 2.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__m {
        margin-bottom: 4rem !important;
    }
}

.hp_marginBottom__s {
    margin-bottom: 1.6rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__s {
        margin-bottom: 2.2rem !important;
    }
}

.hp_marginBottom__xs {
    margin-bottom: 0.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__xs {
        margin-bottom: 1.6rem !important;
    }
}

.hp_marginBottom__xxs {
    margin-bottom: 0.4rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginBottom__xxs {
        margin-bottom: 0.8rem !important;
    }
}

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

/* スマホ用 */
@media screen and (max-width: 959px) {
    .hp_marginBottom_sm {
        display: block;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__xl {
        margin-bottom: 8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__l {
        margin-bottom: 4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__m {
        margin-bottom: 2.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__s {
        margin-bottom: 1.6rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__xs {
        margin-bottom: 0.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__xxs {
        margin-bottom: 0.4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginBottom_sm__none {
        margin-bottom: 0 !important;
    }
}

/*—————————————————————————————————————————————————————
　右余白
—————————————————————————————————————————————————————*/
.hp_marginRight {
    display: block;
}

.hp_marginRight__l {
    margin-right: 1.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginRight__l {
        margin-right: 2.4rem !important;
    }
}

.hp_marginRight__m {
    margin-right: 0.9rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginRight__m {
        margin-right: 1.8rem !important;
    }
}

.hp_marginRight__s {
    margin-right: 0.7rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginRight__s {
        margin-right: 1.4rem !important;
    }
}

.hp_marginRight__none {
    margin-right: 0 !important;
}

/* スマホ用 */
@media screen and (max-width: 959px) {
    .hp_marginRight_sm {
        display: block;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginRight_sm__l {
        margin-right: 1.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginRight_sm__m {
        margin-right: 0.9rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginRight_sm__s {
        margin-right: 0.7rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginRight_sm__none {
        margin-right: 0 !important;
    }
}

/* auto */
.hp_marginRight_auto {
    margin-right: auto;
}

@media screen and (min-width: 960px) {
    .hp_marginRight_auto__lgmd {
        margin-right: auto !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_marginRight_auto__lgmd {
        margin-right: auto !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginRight_auto__sm {
        margin-right: auto !important;
    }
}

/*—————————————————————————————————————————————————————
　左余白
—————————————————————————————————————————————————————*/
.hp_marginLeft__l {
    margin-left: 1.8rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginLeft__l {
        margin-left: 2.4rem !important;
    }
}

.hp_marginLeft__m {
    margin-left: 0.9rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginLeft__m {
        margin-left: 1.8rem !important;
    }
}

.hp_marginLeft__s {
    margin-left: 0.7rem !important;
}

@media screen and (min-width: 960px) {
    .hp_marginLeft__s {
        margin-left: 1.4rem !important;
    }
}

.hp_marginLeft__none {
    margin-left: 0 !important;
}

/* スマホ用 */
@media screen and (max-width: 959px) {
    .hp_marginLeft_sm {
        display: block;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginLeft_sm__l {
        margin-left: 1.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginLeft_sm__m {
        margin-left: 0.9rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginLeft_sm__s {
        margin-left: 0.7rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginLeft_sm__none {
        margin-left: 0 !important;
    }
}

/* auto */
.hp_marginLeft_auto {
    margin-left: auto;
}

@media screen and (min-width: 960px) {
    .hp_marginLeft_auto__lgmd {
        margin-left: auto !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_marginLeft_auto__lgmd {
        margin-left: auto !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_marginLeft_auto__sm {
        margin-left: auto !important;
    }
}

/*—————————————————————————————————————————————————————
　デバイス別 表示・非表示
—————————————————————————————————————————————————————*/
.hp_hide {
    display: none !important;
}

@media screen and (max-width: 959px) {
    .hp_hide__lg {
        display: block !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_hide__lg {
        display: block !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_hide__lg {
        display: none !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_hide__lgmd {
        display: block !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_hide__lgmd {
        display: none !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_hide__lgmd {
        display: none !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_hide__md {
        display: block !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_hide__md {
        display: none !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_hide__md {
        display: block !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_hide__mdsm {
        display: none !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_hide__mdsm {
        display: none !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_hide__mdsm {
        display: block !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_hide__sm {
        display: none !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_hide__sm {
        display: block !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_hide__sm {
        display: block !important;
    }
}

/*—————————————————————————————————————————————————————
　行揃え
—————————————————————————————————————————————————————*/
/* 中央揃え */
.hp_textAlign_center {
    text-align: center !important;
}

@media screen and (max-width: 959px) {
    .hp_textAlign_center__lgmd {
        text-align: left !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_textAlign_center__lgmd {
        text-align: center !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_textAlign_center__lgmd {
        text-align: center !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_textAlign_center__sm {
        text-align: center !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_textAlign_center__sm {
        text-align: left !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_textAlign_center__sm {
        text-align: left !important;
    }
}

/* 右揃え */
.hp_textAlign_right {
    text-align: right !important;
}

@media screen and (max-width: 959px) {
    .hp_textAlign_right__lgmd {
        text-align: left !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_textAlign_right__lgmd {
        text-align: right !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_textAlign_right__lgmd {
        text-align: right !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_textAlign_right__sm {
        text-align: right !important;
    }
}

@media screen and (min-width: 960px) {
    .hp_textAlign_right__sm {
        text-align: left !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_textAlign_right__sm {
        text-align: left !important;
    }
}

/* 左揃え */
.hp_textAlign_left {
    text-align: left !important;
}

@media screen and (min-width: 960px) {
    .hp_textAlign_left__lgmd {
        text-align: left !important;
    }
}

@media screen and (min-width: 1112px) {
    .hp_textAlign_left__lgmd {
        text-align: left !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_textAlign_left__sm {
        text-align: left !important;
    }
}

/*—————————————————————————————————————————————————————
　折り返し
—————————————————————————————————————————————————————*/
.hp_whiteSpace__normal {
    white-space: normal !important;
}

.hp_whiteSpace__nowrap {
    white-space: nowrap !important;
}

/*—————————————————————————————————————————————————————
　カラー
—————————————————————————————————————————————————————*/
.hp_color__primary {
    color: var(--color-primary) !important;
}

.hp_color__secondary {
    color: var(--color-secondary) !important;
}

.hp_color__success {
    color: var(--color-success) !important;
}

.hp_color__info {
    color: var(--color-info) !important;
}

.hp_color__danger {
    color: var(--color-danger) !important;
}

.hp_color__warning {
    color: var(--color-warning) !important;
}

.hp_color__disable {
    color: var(--color-disable) !important;
}

.hp_color__black {
    color: var(--color_black) !important;
}

.hp_color__white {
    color: var(--color_white) !important;
}

.hp_color__darkgray {
    color: var(--color_darkgray) !important;
}

.hp_color__gray {
    color: var(--color_gray) !important;
}

.hp_color__red {
    color: var(--color_red) !important;
}

.hp_color__blue {
    color: var(--color_blue) !important;
}

.hp_color__green {
    color: var(--color_green) !important;
}

/*—————————————————————————————————————————————————————
　横幅
—————————————————————————————————————————————————————*/
.hp_width__100 {
    width: 100% !important;
}

.hp_width__90 {
    width: 90% !important;
}

.hp_width__80 {
    width: 80% !important;
}

.hp_width__70 {
    width: 70% !important;
}

.hp_width__60 {
    width: 60% !important;
}

.hp_width__50 {
    width: 50% !important;
}

.hp_width__40 {
    width: 40% !important;
}

.hp_width__30 {
    width: 30% !important;
}

.hp_width__20 {
    width: 20% !important;
}

.hp_width__10 {
    width: 10% !important;
}

@media screen and (max-width: 959px) {
    .hp_width_sm__100 {
        width: 100% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__90 {
        width: 90% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__80 {
        width: 80% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__70 {
        width: 70% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__60 {
        width: 60% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__50 {
        width: 50% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__40 {
        width: 40% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__30 {
        width: 30% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__20 {
        width: 20% !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_width_sm__10 {
        width: 10% !important;
    }
}

/*—————————————————————————————————————————————————————
　フォントサイズ
—————————————————————————————————————————————————————*/
/* 全幅 */
.hp_fontSize__7 {
    font-size: 1rem !important;
    -webkit-transform: scale(0.7) !important;
    transform: scale(0.7) !important;
}

.hp_fontSize__8 {
    font-size: 1rem !important;
    -webkit-transform: scale(0.8) !important;
    transform: scale(0.8) !important;
}

.hp_fontSize__9 {
    font-size: 1rem !important;
    -webkit-transform: scale(0.9) !important;
    transform: scale(0.9) !important;
}

.hp_fontSize__10 {
    font-size: 1rem !important;
}

.hp_fontSize__11 {
    font-size: 1.1rem !important;
}

.hp_fontSize__12 {
    font-size: 1.2rem !important;
}

.hp_fontSize__13 {
    font-size: 1.3rem !important;
}

.hp_fontSize__14 {
    font-size: 1.4rem !important;
}

.hp_fontSize__15 {
    font-size: 1.5rem !important;
}

.hp_fontSize__16 {
    font-size: 1.6rem !important;
}

.hp_fontSize__17 {
    font-size: 1.7rem !important;
}

.hp_fontSize__18 {
    font-size: 1.8rem !important;
}

.hp_fontSize__19 {
    font-size: 1.9rem !important;
}

.hp_fontSize__20 {
    font-size: 2rem !important;
}

.hp_fontSize__21 {
    font-size: 2.1rem !important;
}

.hp_fontSize__22 {
    font-size: 2.2rem !important;
}

.hp_fontSize__23 {
    font-size: 2.3rem !important;
}

.hp_fontSize__24 {
    font-size: 2.4rem !important;
}

.hp_fontSize__25 {
    font-size: 2.5rem !important;
}

.hp_fontSize__26 {
    font-size: 2.6rem !important;
}

.hp_fontSize__27 {
    font-size: 2.7rem !important;
}

.hp_fontSize__28 {
    font-size: 2.8rem !important;
}

.hp_fontSize__29 {
    font-size: 2.9rem !important;
}

.hp_fontSize__30 {
    font-size: 3rem !important;
}

.hp_fontSize__31 {
    font-size: 3.1rem !important;
}

.hp_fontSize__32 {
    font-size: 3.2rem !important;
}

.hp_fontSize__33 {
    font-size: 3.3rem !important;
}

.hp_fontSize__34 {
    font-size: 3.4rem !important;
}

.hp_fontSize__35 {
    font-size: 3.5rem !important;
}

.hp_fontSize__36 {
    font-size: 3.6rem !important;
}

.hp_fontSize__37 {
    font-size: 3.7rem !important;
}

.hp_fontSize__38 {
    font-size: 3.8rem !important;
}

.hp_fontSize__39 {
    font-size: 3.9rem !important;
}

.hp_fontSize__40 {
    font-size: 4rem !important;
}

.hp_fontSize__41 {
    font-size: 4.1rem !important;
}

.hp_fontSize__42 {
    font-size: 4.2rem !important;
}

.hp_fontSize__43 {
    font-size: 4.3rem !important;
}

.hp_fontSize__44 {
    font-size: 4.4rem !important;
}

.hp_fontSize__45 {
    font-size: 4.5rem !important;
}

.hp_fontSize__46 {
    font-size: 4.6rem !important;
}

.hp_fontSize__47 {
    font-size: 4.7rem !important;
}

.hp_fontSize__48 {
    font-size: 4.8rem !important;
}

.hp_fontSize__49 {
    font-size: 4.9rem !important;
}

.hp_fontSize__50 {
    font-size: 5rem !important;
}

.hp_fontSize__51 {
    font-size: 5.1rem !important;
}

.hp_fontSize__52 {
    font-size: 5.2rem !important;
}

.hp_fontSize__53 {
    font-size: 5.3rem !important;
}

.hp_fontSize__54 {
    font-size: 5.4rem !important;
}

.hp_fontSize__55 {
    font-size: 5.5rem !important;
}

.hp_fontSize__56 {
    font-size: 5.6rem !important;
}

.hp_fontSize__57 {
    font-size: 5.7rem !important;
}

.hp_fontSize__58 {
    font-size: 5.8rem !important;
}

.hp_fontSize__59 {
    font-size: 5.9rem !important;
}

.hp_fontSize__60 {
    font-size: 6rem !important;
}

.hp_fontSize__61 {
    font-size: 6.1rem !important;
}

.hp_fontSize__62 {
    font-size: 6.2rem !important;
}

.hp_fontSize__63 {
    font-size: 6.3rem !important;
}

.hp_fontSize__64 {
    font-size: 6.4rem !important;
}

.hp_fontSize__65 {
    font-size: 6.5rem !important;
}

.hp_fontSize__66 {
    font-size: 6.6rem !important;
}

.hp_fontSize__67 {
    font-size: 6.7rem !important;
}

.hp_fontSize__68 {
    font-size: 6.8rem !important;
}

.hp_fontSize__69 {
    font-size: 6.9rem !important;
}

.hp_fontSize__70 {
    font-size: 7rem !important;
}

.hp_fontSize__71 {
    font-size: 7.1rem !important;
}

.hp_fontSize__72 {
    font-size: 7.2rem !important;
}

.hp_fontSize__73 {
    font-size: 7.3rem !important;
}

.hp_fontSize__74 {
    font-size: 7.4rem !important;
}

.hp_fontSize__75 {
    font-size: 7.5rem !important;
}

.hp_fontSize__76 {
    font-size: 7.6rem !important;
}

.hp_fontSize__77 {
    font-size: 7.7rem !important;
}

.hp_fontSize__78 {
    font-size: 7.8rem !important;
}

.hp_fontSize__79 {
    font-size: 7.9rem !important;
}

.hp_fontSize__80 {
    font-size: 8rem !important;
}

/* スマホ用 */
@media screen and (max-width: 959px) {
    .hp_fontSize_sm__6 {
        font-size: 1rem !important;
        -webkit-transform: scale(0.6) !important;
        transform: scale(0.6) !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__7 {
        font-size: 1rem !important;
        -webkit-transform: scale(0.7) !important;
        transform: scale(0.7) !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__8 {
        font-size: 1rem !important;
        -webkit-transform: scale(0.8) !important;
        transform: scale(0.8) !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__9 {
        font-size: 1rem !important;
        -webkit-transform: scale(0.9) !important;
        transform: scale(0.9) !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__10 {
        font-size: 1rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__11 {
        font-size: 1.1rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__12 {
        font-size: 1.2rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__13 {
        font-size: 1.3rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__14 {
        font-size: 1.4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__15 {
        font-size: 1.5rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__16 {
        font-size: 1.6rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__17 {
        font-size: 1.7rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__18 {
        font-size: 1.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__19 {
        font-size: 1.9rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__20 {
        font-size: 2rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__21 {
        font-size: 2.1rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__22 {
        font-size: 2.2rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__23 {
        font-size: 2.3rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__24 {
        font-size: 2.4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__25 {
        font-size: 2.5rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__26 {
        font-size: 2.6rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__27 {
        font-size: 2.7rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__28 {
        font-size: 2.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__29 {
        font-size: 2.9rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__30 {
        font-size: 3rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__31 {
        font-size: 3.1rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__32 {
        font-size: 3.2rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__33 {
        font-size: 3.3rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__34 {
        font-size: 3.4rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__35 {
        font-size: 3.5rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__36 {
        font-size: 3.6rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__37 {
        font-size: 3.7rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__38 {
        font-size: 3.8rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__39 {
        font-size: 3.9rem !important;
    }
}

@media screen and (max-width: 959px) {
    .hp_fontSize_sm__40 {
        font-size: 4rem !important;
    }
}

/*—————————————————————————————————————————————————————
　フォントのウェイト
—————————————————————————————————————————————————————*/
.hp_fontWeight__bold {
    font-weight: 500 !important;
}

.hp_fontWeight__normal {
    font-weight: normal !important;
}

.hp_font__arial {
    font-family: "Arial", sans-serif;
}

/*—————————————————————————————————————————————————————
　オーバーレイ背景（モーダルやドロワーに利用） bodyに指定
—————————————————————————————————————————————————————*/
.js_overlay {
    display: block;
    position: fixed;
    z-index: 20;
    cursor: pointer;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background-color: var(--color-overlay-bg);
    visibility: hidden;
}

/*—————————————————————————————————————————————————————
　サイドナビゲーション展開時
—————————————————————————————————————————————————————*/
.js_sideNav {
    pointer-events: none;
    position: fixed;
    top: 0;
    left: calc(-1 * var(--width-side));
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

@media screen and (min-width: 1112px) {
    .js_sideNav {
        position: relative;
        pointer-events: all;
        left: 0;
    }
}

.js_sideNav_btnClose {
    display: block;
    padding-left: var(--padding-contents-lr_mdsm);
}

.is_sideNav_open {
    height: 100%;
    overflow: hidden;
}

    .is_sideNav_open .js_overlay {
        opacity: 1;
        visibility: visible;
    }

    .is_sideNav_open .ly_cont_side {
        pointer-events: all;
        z-index: 21;
        left: 0;
        overflow-y: scroll;
    }

/*-————————————————————————————————————————————————————
　モーダルウィンドウ（Micromodal.js）
　接頭辞　md_
-————————————————————————————————————————————————————*/
.md_overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    background-color: var(--color-overlay-bg);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.md_wrapper, .md_wrapper__setting {
    position: relative;
    z-index: 1001;
    overflow-y: auto;
    max-width: var(--width-modal_max);
    max-height: 90vh;
    margin: var(--padding-contents-lr_mdsm);
    padding: 3rem;
    border-radius: 0.4rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: var(--color-modal-bg);
}

@media screen and (min-width: 960px) {
    .md_wrapper, .md_wrapper__setting {
        width: var(--width-modal_max);
        margin: var(--padding-contents-lr_lg);
        padding: 4rem 3rem;
    }
}

.md_close {
    right: 1rem;
    top: 1rem;
    position: absolute;
}

    .md_close:before {
        font-size: 2.6rem;
        color: var(--color-txt_l);
        content: "\e5cd";
    }

/* アニメーション */
@-webkit-keyframes mmfadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes mmfadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes mmfadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@keyframes mmfadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@-webkit-keyframes mmslideIn {
    from {
        -webkit-transform: translateY(15%);
        transform: translateY(15%);
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes mmslideIn {
    from {
        -webkit-transform: translateY(15%);
        transform: translateY(15%);
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes mmslideOut {
    from {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        -webkit-transform: translateY(-10%);
        transform: translateY(-10%);
    }
}

@keyframes mmslideOut {
    from {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        -webkit-transform: translateY(-10%);
        transform: translateY(-10%);
    }
}

.micromodal-slide {
    display: none;
}

    .micromodal-slide.is-open {
        display: block;
    }

    .micromodal-slide[aria-hidden=false] .md_overlay {
        -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
        animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

    .micromodal-slide[aria-hidden=false] .md_wrapper, .micromodal-slide[aria-hidden=false] .md_wrapper__setting {
        -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
        animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

    .micromodal-slide[aria-hidden=true] .md_overlay {
        -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
        animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

    .micromodal-slide[aria-hidden=true] .md_wrapper, .micromodal-slide[aria-hidden=true] .md_wrapper__setting {
        -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
        animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
    }

/*—————————————————————————————————————————————————————
　説明・モード選択用パーツ
—————————————————————————————————————————————————————*/
h5.blue {
    color: #1478C3;
}

    h5.blue.el_ttl_leftLine {
        letter-spacing: 0px;
        border-left: 5px solid #1478C3;
        padding: 0.1em 1em;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 2.6rem;
        padding: 0;
        padding-left: 1.8rem;
    }

h5.green {
    color: #008B8D;
}

    h5.green.el_ttl_leftLine {
        letter-spacing: 0px;
        border-left: 5px solid #008B8D;
        padding: 0.1em 1em;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 2.6rem;
        padding: 0;
        padding-left: 1.8rem;
    }

/*—————————————————————————————————————————————————————
　出題・測定フォーマット共通
—————————————————————————————————————————————————————*/
/* 数値入力用 */
.el_enter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
}

    .el_enter.is_disable .el_enter__up {
        background: #EEEEEE;
        cursor: unset;
    }

        .el_enter.is_disable .el_enter__up::before {
            background-color: #B8B8B8 !important;
        }

        .el_enter.is_disable .el_enter__up:active {
            opacity: 1;
        }

    .el_enter.is_disable .el_enter__down {
        background: #EEEEEE;
        cursor: unset;
    }

        .el_enter.is_disable .el_enter__down::before {
            background-color: #B8B8B8 !important;
        }

        .el_enter.is_disable .el_enter__down:active {
            opacity: 1;
        }

    .el_enter .el_enter__box {
        width: 4.2rem;
    }

        .el_enter .el_enter__box .el_enter__up {
            height: 2.2rem;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            border: 1px solid #E2E2E2;
            border-radius: 2px 2px 0px 0px;
            cursor: pointer;
        }

            .el_enter .el_enter__box .el_enter__up::before {
                content: "";
                -webkit-clip-path: polygon(0 100%, 50% 0, 100% 100%);
                clip-path: polygon(0 100%, 50% 0, 100% 100%);
                width: 1.4rem;
                display: block;
                height: 0.8rem;
                margin: 0.6rem auto 0.8rem;
            }

            .el_enter .el_enter__box .el_enter__up:active {
                opacity: 0.5;
            }

        .el_enter .el_enter__box .el_enter__number {
            height: 6rem;
            border: 1px solid #E2E2E2;
            color: #2a2a2a;
            font-size: 5.2rem;
            font-weight: bold;
            text-align: center;
        }

        .el_enter .el_enter__box .el_enter__down {
            height: 2.2rem;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            border: 1px solid #E2E2E2;
            border-radius: 0px 0px 2px 2px;
            cursor: pointer;
        }

            .el_enter .el_enter__box .el_enter__down::before {
                content: "";
                -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
                clip-path: polygon(0 0, 50% 100%, 100% 0);
                width: 1.4rem;
                display: block;
                height: 0.8rem;
                margin: 0.8rem auto 0.6rem;
            }

            .el_enter .el_enter__box .el_enter__down:active {
                opacity: 0.5;
            }

/* トレーニング時間 出題フォーマット用 */
.el_time, .el_time__long {
    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;
    background-color: #F5F5F5;
    width: 81.2rem;
    height: 4.2rem;
    padding: 0 0.7rem 0 1.6rem;
}

    .el_time .el_time__meter, .el_time__long .el_time__meter {
        width: 60.6rem;
        height: 1.4rem;
        background-color: #E4E4E4;
        border-radius: 10px;
    }

        .el_time .el_time__meter div, .el_time__long .el_time__meter div {
            height: 1.4rem;
            background-color: #1478C3;
            border-radius: 10px 0px 0px 10px;
        }

    .el_time .el_time__limit, .el_time__long .el_time__limit {
        font-size: 1.4rem;
        color: #888888;
    }

        .el_time .el_time__limit small, .el_time__long .el_time__limit small {
            font-size: 1rem;
        }

    .el_time .el_time__stop, .el_time__long .el_time__stop {
        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;
        width: 10rem;
        height: 2.8rem;
        background-color: #FFFFFF;
        border: 1px solid #D8D8D8;
        border-radius: 4px;
        font-size: 1.1rem;
        line-height: 1.8rem;
        color: #888888;
        cursor: pointer;
    }

        .el_time .el_time__stop img, .el_time__long .el_time__stop img {
            margin-right: 0.8rem;
        }

        .el_time .el_time__stop.is_disable, .el_time__long .el_time__stop.is_disable {
            opacity: 0.3;
            cursor: unset;
        }

/* トレーニング時間 測定フォーマット用 */
.el_time__long {
    max-width: 111.2rem;
    width: 100%;
}

    .el_time__long .el_time__meter {
        max-width: 90.6rem;
        width: 100%;
    }

    .el_time__long .el_time__limit {
        min-width: 6.1rem;
        margin: 0 1rem;
    }

    .el_time.is_disable .el_time__stop,
    .el_time__long.is_disable .el_time__stop {
        opacity: 0.3;
        cursor: unset;
    }

/* タイマー */
.el_timer {
    width: clamp(19.2rem, 100%, 26rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 2.6rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 4px;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

@media screen and (min-width: 1112px) {
    .el_timer {
        padding: 2.6rem 2.3rem;
        gap: 1.5rem;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.el_timer .el_timer__time {
    color: #2a2a2a;
    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;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (min-width: 1112px) {
    .el_timer .el_timer__time {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
}

.el_timer .el_timer__time small {
    font-size: 1.1rem;
    font-weight: normal;
    color: #5E5E5E;
    vertical-align: middle;
    letter-spacing: 0;
}

.el_timer .el_timer__time span {
    width: 10.4rem;
    font-size: 3.8rem;
    font-weight: bold;
    text-align: end;
}

.el_timer .el_timer__stop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #FFFFFF;
    border: 1px solid #D8D8D8;
    border-radius: 19px;
    width: 3.8rem;
    height: 3.8rem;
    font-size: 1.6rem;
    cursor: pointer;
}

    .el_timer .el_timer__stop.is_disable {
        opacity: 0.3;
        cursor: unset;
    }

/* 測定用-カウントの速さ */
.el_count, .el_count__side {
    width: 100%;
    background-color: #FFFFFF;
    border-radius: 4px;
    border: 1px solid #D8D8D8;
}

    .el_count .el_count__ttl, .el_count__side .el_count__ttl {
        padding: 0.9rem 0;
        background-color: #1478C3;
        height: 3.8rem;
        color: #ffffff;
        text-align: center;
        border-radius: 4px 4px 0px 0px;
        font-size: 1.4rem;
        line-height: 2rem;
        font-weight: normal;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

        .el_count .el_count__ttl span, .el_count__side .el_count__ttl span {
            font-weight: bold;
            font-size: 0.9rem;
            line-height: 1rem;
            color: #1478C3;
            background: #FFFFFF 0% 0% no-repeat padding-box;
            border-radius: 8px;
            width: 4rem;
            padding: 3px 0;
            margin-right: 1rem;
            margin-top: 2px;
        }

    .el_count .el_count__body, .el_count__side .el_count__body {
        height: 42rem;
        padding: 4rem 2.8rem 4.6rem;
    }

    .el_count .el_count__body__no_mode, .el_count__side .el_count__body__no_mode {
        height: 42rem;
        padding: 4rem 2.8rem 4.6rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .el_count .el_count__body__no_mode .el_count__count, .el_count__side .el_count__body__no_mode .el_count__count {
            margin-top: 0;
        }

    .el_count .el_count__mode, .el_count__side .el_count__mode {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 8.8rem;
    }

        .el_count .el_count__mode .el_count__mode__select, .el_count__side .el_count__mode .el_count__mode__select {
            width: 50%;
            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;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            border: 1px solid #D8D8D8;
            font-size: 2rem;
            font-weight: bold;
            cursor: pointer;
        }

            .el_count .el_count__mode .el_count__mode__select:first-child, .el_count__side .el_count__mode .el_count__mode__select:first-child {
                border-radius: 4px 0px 0px 4px;
            }

            .el_count .el_count__mode .el_count__mode__select:last-child, .el_count__side .el_count__mode .el_count__mode__select:last-child {
                border-radius: 0px 4px 4px 0px;
            }

            .el_count .el_count__mode .el_count__mode__select.is_active, .el_count__side .el_count__mode .el_count__mode__select.is_active {
                background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFF7AA), to(#FFE600)) 0% 0% no-repeat padding-box;
                background: transparent linear-gradient(180deg, #FFF7AA 0%, #FFE600 100%) 0% 0% no-repeat padding-box;
            }

            .el_count .el_count__mode .el_count__mode__select.is_disable, .el_count__side .el_count__mode .el_count__mode__select.is_disable {
                cursor: unset;
                background: #E5E5E5 0% 0% no-repeat padding-box;
                color: rgba(42, 42, 42, 0.2);
            }

        .el_count .el_count__mode.is_disable, .el_count__side .el_count__mode.is_disable {
            display: none;
        }

    .el_count .el_count__count, .el_count__side .el_count__count {
        font-size: 1.1rem;
        color: #2a2a2a;
        margin-top: 2.7rem;
    }

        .el_count .el_count__count span, .el_count__side .el_count__count span {
            margin-right: 0.9rem;
            display: inline-block;
            width: 21.2rem;
            text-align: center;
            font-size: 4.6rem;
            line-height: 4.6rem;
            font-weight: bold;
            border-bottom: 2px solid rgba(20, 120, 195, 0.2);
            padding-bottom: 10px;
        }

    .el_count .el_count__box.is_disable, .el_count__side .el_count__box.is_disable {
        display: none;
    }

    .el_count .el_count__check, .el_count__side .el_count__check {
        width: 100%;
        height: 13.6rem;
        margin-top: 2.5rem;
        background: #E9E9E9 0% 0% no-repeat padding-box;
        border-radius: 4px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

        .el_count .el_count__check p, .el_count__side .el_count__check p {
            font-size: 1.2rem;
            color: #2a2a2a;
            opacity: 0.5;
        }

        .el_count .el_count__check.is_disable, .el_count__side .el_count__check.is_disable {
            display: none;
        }

    .el_count .el_count__check__no_btn, .el_count__side .el_count__check__no_btn {
        width: 100%;
        height: 5.1rem;
        margin-top: 2.5rem;
        background: #E9E9E9 0% 0% no-repeat padding-box;
        border-radius: 4px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

        .el_count .el_count__check__no_btn p, .el_count__side .el_count__check__no_btn p {
            font-size: 1.2rem;
            color: #2a2a2a;
            opacity: 0.5;
        }

        .el_count .el_count__check__no_btn.is_disable, .el_count__side .el_count__check__no_btn.is_disable {
            display: none;
        }

    .el_count .el_count__edit, .el_count__side .el_count__edit {
        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: end;
        width: 100%;
        height: 5.1rem;
        margin-top: 2.5rem;
    }

        .el_count .el_count__edit .el_count__edit__up, .el_count__side .el_count__edit .el_count__edit__up {
            min-width: 9.8rem;
            width: 48%;
            height: 5.1rem;
            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;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            border: 1px solid #E2E2E2;
            font-size: 1.2rem;
            font-weight: bold;
            border-radius: 4px;
            cursor: pointer;
        }

            .el_count .el_count__edit .el_count__edit__up img, .el_count__side .el_count__edit .el_count__edit__up img {
                padding-right: 5px;
            }

        .el_count .el_count__edit .el_count__edit__down, .el_count__side .el_count__edit .el_count__edit__down {
            min-width: 9.8rem;
            width: 48%;
            height: 5.1rem;
            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;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            border: 1px solid #E2E2E2;
            font-size: 1.2rem;
            font-weight: bold;
            border-radius: 4px;
            cursor: pointer;
        }

            .el_count .el_count__edit .el_count__edit__down img, .el_count__side .el_count__edit .el_count__edit__down img {
                padding-left: 5px;
            }

        .el_count .el_count__edit .el_count__edit__reset, .el_count__side .el_count__edit .el_count__edit__reset {
            width: 4.2rem;
            height: 4.2rem;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            background-color: #E9E9E9;
            border-radius: 21px;
            font-size: 1.4rem;
            margin-left: 1rem;
            cursor: pointer;
        }

            .el_count .el_count__edit .el_count__edit__reset small, .el_count__side .el_count__edit .el_count__edit__reset small {
                display: block;
                font-size: 1rem;
                -webkit-transform: scale(0.6);
                transform: scale(0.6);
                color: #888888;
                padding-top: 0.5rem;
                line-height: 0.6rem;
            }

    .el_count .el_btn__size__count, .el_count__side .el_btn__size__count {
        width: 100%;
        height: 5.2rem;
        font-size: 1.5rem;
        line-height: 1.5rem;
        padding: 1rem;
        margin-top: 3.2rem;
    }

/*—————————————————————————————————————————————————————
　サイド
—————————————————————————————————————————————————————*/
/* 読書スピード */
.el_speed {
    max-width: 26rem;
    width: 100%;
    padding: 2rem;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
    border-radius: 4px;
    color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
}

    .el_speed p {
        font-size: 1.4rem;
        line-height: 2rem;
    }

        .el_speed p small {
            font-size: 1rem;
        }

    .el_speed h4 {
        font-weight: bold;
        font-size: 5rem;
        line-height: 5.6rem;
        margin: 0.7rem 0 0;
    }

    .el_speed .measuring {
        position: relative;
        margin: 1.6rem auto 0.6rem;
    }

        .el_speed .measuring.is_disable {
            display: none;
        }

        .el_speed .measuring div {
            background-color: rgba(5, 95, 188, 0.38);
            mix-blend-mode: multiply;
            border-radius: 24px;
            width: 12.8rem;
            height: 2.8rem;
            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;
        }

        .el_speed .measuring p {
            position: absolute;
            top: 0;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            width: 100%;
            height: 100%;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            font-size: 1.2rem;
            line-height: 1.2rem;
            color: rgba(255, 255, 255, 0.6);
        }

    .el_speed .el_btn__size__main {
        gap: 1rem;
        width: 100%;
        min-width: unset;
        height: 4rem;
        font-size: 1.4rem;
        line-height: 1.6rem;
        padding: 1rem;
        margin-top: 1rem;
    }

        .el_speed .el_btn__size__main img {
            width: 1.6rem;
        }

    .el_speed #saveText {
        display: none;
        position: absolute;
        top: 0;
        background-color: rgba(0, 0, 0, 0.7);
        color: white;
        width: 100%;
        height: 100%;
        border-radius: 4px;
    }

        .el_speed #saveText p {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            font-size: 1.6rem;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            height: 100%;
        }

/* サイド-カウントの速さ */
.el_count__side {
    max-width: 26rem;
    width: 100%;
    background-color: #E3F3FF;
    border: none;
}

    .el_count__side .el_count__body {
        padding: 1rem;
        height: auto;
    }

@media screen and (min-width: 1112px) {
    .el_count__side .el_count__body {
        padding: 2rem;
    }
}

.el_count__side .el_count__mode {
    height: 7.2rem;
}

.el_count__side .el_count__edit .el_count__edit__up, .el_count__side .el_count__edit .el_count__edit__down {
    min-width: 8.2rem;
    width: 48%;
}

.el_count__side .el_count__count {
    margin-top: 1.6rem;
}

    .el_count__side .el_count__count span {
        font-size: 4rem;
        line-height: 4.4rem;
        width: 70%;
        padding-bottom: 2px;
    }

@media screen and (min-width: 1112px) {
    .el_count__side .el_count__count span {
        width: 18rem;
    }
}

.el_count__side .el_count__edit {
    margin-top: 2rem;
}

.el_count__side .el_btn__size__count {
    margin-top: 2rem;
    width: 100%;
}

.el_count__side .el_count__check__no_btn {
    height: 5.1rem;
    margin-top: 2rem;
    background: #CAE7FF 0% 0% no-repeat padding-box;
}

.el_count__side .el_count__check {
    height: 12.3rem;
    margin-top: 2rem;
    background: #CAE7FF 0% 0% no-repeat padding-box;
}

/*—————————————————————————————————————————————————————
　フッター
—————————————————————————————————————————————————————*/
/* 累計時間 */
.ly_cont_time {
    position: fixed;
    bottom: 0;
    -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.1490196078));
    filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.1490196078));
}

    .ly_cont_time .ly_cont_time__box {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 22.4rem;
        height: 5.2rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        background-color: #FFFFFF;
        -webkit-clip-path: polygon(0% 0%, 17.2rem 0%, 100% 100%, 0 100%);
        clip-path: polygon(0% 0%, 17.2rem 0%, 100% 100%, 0 100%);
        padding-right: 5.2rem;
    }

        .ly_cont_time .ly_cont_time__box .icon {
            width: 2rem;
            height: 2rem;
            font-size: 2rem;
        }

        .ly_cont_time .ly_cont_time__box .timer {
            font-size: 2.1rem;
            line-height: 2.1rem;
            font-weight: bold;
            color: #5E5E5E;
        }

            .ly_cont_time .ly_cont_time__box .timer small {
                display: inline-block;
                font-size: 1rem;
                line-height: 1.2rem;
                font-weight: normal;
            }

/* モード選択 */
.ly_cont_mode section {
    width: 100%;
    max-width: 104.8rem;
    height: 100%;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border-radius: 4px;
    margin: 0 auto;
    overflow-y: scroll;
    /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
    -ms-overflow-style: none;
    /*Firefoxへの対応*/
    scrollbar-width: none;
    /*Google Chrome、Safariへの対応*/
}

    .ly_cont_mode section::-webkit-scrollbar {
        display: none;
    }

.ly_main__common .ly_cont_mode section {
    border: 4px solid rgba(0, 139, 141, 0.3019607843);
}

.ly_main__training .ly_cont_mode section {
    border: 4px solid rgba(20, 120, 195, 0.3019607843);
}

.ly_cont_mode .bl_buttons__middle {
    margin: 3.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .ly_cont_mode .bl_buttons__middle.resize > * {
        min-width: unset;
        padding: 1rem 0 1.4rem;
    }

.select__level1 {
    margin-top: 4.1rem;
}

    .select__level1 .radio-inline__label {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 14.8rem;
        font-size: 2.8rem;
        line-height: 3.4rem;
        letter-spacing: 1.4px;
        margin-right: 0 !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        border-radius: 12px;
    }

.ly_main__common .select__level1 .radio-inline__label {
    color: #008B8D;
    width: 46.4%;
}

.ly_main__training .select__level1 .radio-inline__label {
    color: #1478C3;
    width: 32%;
}

@media screen and (min-width: 1112px) {
    .ly_main__training .select__level1 .radio-inline__label {
        width: 30rem;
    }
}

.select__level2 {
    margin-top: 3.2rem;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
}

    .select__level2 .radio-inline__label {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 30%;
        height: 10rem;
        font-size: 2.4rem;
        line-height: 2.9rem;
        letter-spacing: 0;
        margin-right: 0 !important;
        margin-left: 2rem !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        border-radius: 12px;
    }

.ly_main__common .select__level2 .radio-inline__label {
    color: #008B8D;
}

.ly_main__training .select__level2 .radio-inline__label {
    color: #1478C3;
}

.select__level2.is_disable,
.select__contents.is_disable {
    display: none;
}

.select__contents {
    margin-top: 3.2rem;
    margin-left: 3.8rem;
    margin-right: 1rem;
    padding-left: 1rem;
    padding-top: 2.4rem;
    padding-bottom: 2.4rem;
    width: calc(100% - 3.8rem);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    border-style: solid;
    border-width: 1px 0px 1px 0px;
    border-color: var(--color-border);
    align-items: center;
}

.select__contents .el_form_select {
    min-width: 80%;
    margin-left: 5.6rem !important;
}

.select__contents .el_form_select::before {
    right: 1.4rem;
    top: 2rem;
}

.select__contents .el_form_select select {
    font-size: 2rem;
}

.select__contents h5 {
    font-weight: bold;
    font-size: 2rem;
}

/* 出題 */
.ly_cont_question section {
    min-width: 81.2rem;
    height: 100%;
    -webkit-box-shadow: 3px 0px 6px rgba(0, 0, 0, 0.1607843137);
    box-shadow: 3px 0px 6px rgba(0, 0, 0, 0.1607843137);
}

    .ly_cont_question section.bg_base {
        background: #FFFFFF 0% 0% no-repeat padding-box;
    }

    .ly_cont_question section.bg_common {
        background: #E5F3F3 0% 0% no-repeat padding-box;
    }

        .ly_cont_question section.bg_common.start {
            background: #FFFFFF 0% 0% no-repeat padding-box;
        }

            .ly_cont_question section.bg_common.start .content_box {
                text-align: start;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                width: 100%;
                z-index: 1;
            }

                .ly_cont_question section.bg_common.start .content_box.vertical {
                    -webkit-writing-mode: vertical-rl;
                    -ms-writing-mode: tb-rl;
                    writing-mode: vertical-rl;
                    -webkit-font-feature-settings: "pkna";
                    font-feature-settings: "pkna";
                    -webkit-box-align: start;
                    -ms-flex-align: start;
                    align-items: start;
                    position: relative;
                    -webkit-box-align: center;
                    -ms-flex-align: center;
                    align-items: center;
                    top: 4.2rem;
                }

                    .ly_cont_question section.bg_common.start .content_box.vertical .el_txt_body {
                        width: 72rem;
                        font-family: Yu Mincho, serif;
                        height: 49rem;
                        text-align: start;
                        -webkit-box-orient: vertical;
                        -webkit-box-direction: normal;
                        -ms-flex-direction: column;
                        flex-direction: column;
                        -webkit-box-align: start;
                        -ms-flex-align: start;
                        align-items: start;
                    }

                        .ly_cont_question section.bg_common.start .content_box.vertical .el_txt_body p {
                            width: 6.6rem;
                            white-space: nowrap;
                            display: -webkit-box;
                            display: -ms-flexbox;
                            display: flex;
                            -webkit-box-align: center;
                            -ms-flex-align: center;
                            align-items: center;
                        }

                    .ly_cont_question section.bg_common.start .content_box.vertical .maker_box {
                        width: 100%;
                        height: 49rem;
                        grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
                    }

        .ly_cont_question section.bg_common.count1 {
            background-position: center;
            background-repeat: no-repeat;
            background-image: url(../images/icon_count1_green.svg);
        }

        .ly_cont_question section.bg_common.count2 {
            background-position: center;
            background-repeat: no-repeat;
            background-image: url(../images/icon_count2_green.svg);
        }

        .ly_cont_question section.bg_common .content_box {
            position: relative;
            text-align: center;
            font-size: 2rem;
            line-height: 3.6rem;
            font-family: Noto Sans JP;
            color: #888888;
            font-weight: normal;
            opacity: 0.4;
            display: none;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            height: calc(100% - 4.2rem);
            top: 4.2rem;
        }

            .ly_cont_question section.bg_common .content_box.count {
                opacity: 1;
            }

            .ly_cont_question section.bg_common .content_box small {
                position: absolute;
                bottom: 0;
                -webkit-writing-mode: horizontal-tb;
                -ms-writing-mode: lr-tb;
                writing-mode: horizontal-tb;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-pack: center;
                -ms-flex-pack: center;
                justify-content: center;
                width: 100%;
            }

                .ly_cont_question section.bg_common .content_box small.is_disable {
                    display: none;
                }

    .ly_cont_question section.bg_training {
        background: #F6FAFD 0% 0% no-repeat padding-box;
        position: relative;
    }

        .ly_cont_question section.bg_training.start {
            background: #FFFFFF 0% 0% no-repeat padding-box;
        }

            .ly_cont_question section.bg_training.start .content_box {
                text-align: start;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                width: 100%;
                z-index: 1;
            }

                .ly_cont_question section.bg_training.start .content_box small {
                    -webkit-writing-mode: horizontal-tb;
                    -ms-writing-mode: lr-tb;
                    writing-mode: horizontal-tb;
                    display: -webkit-box;
                    display: -ms-flexbox;
                    display: flex;
                    -webkit-box-pack: center;
                    -ms-flex-pack: center;
                    justify-content: center;
                    width: 100%;
                }

                .ly_cont_question section.bg_training.start .content_box.vertical {
                    -webkit-writing-mode: vertical-rl;
                    -ms-writing-mode: tb-rl;
                    writing-mode: vertical-rl;
                    -webkit-font-feature-settings: "pkna";
                    font-feature-settings: "pkna";
                    -webkit-box-align: start;
                    -ms-flex-align: start;
                    align-items: start;
                    position: relative;
                }

                    .ly_cont_question section.bg_training.start .content_box.vertical .el_txt_body {
                        width: 72.6rem;
                        font-family: Yu Mincho, serif;
                        padding: 1.5rem 0;
                        height: 47rem;
                        text-align: start;
                        -webkit-box-orient: vertical;
                        -webkit-box-direction: normal;
                        -ms-flex-direction: column;
                        flex-direction: column;
                        -webkit-box-align: start;
                        -ms-flex-align: start;
                        align-items: start;
                    }

                        .ly_cont_question section.bg_training.start .content_box.vertical .el_txt_body p {
                            width: 6.6rem;
                            white-space: nowrap;
                            display: -webkit-box;
                            display: -ms-flexbox;
                            display: flex;
                            -webkit-box-align: center;
                            -ms-flex-align: center;
                            align-items: center;
                        }

                    .ly_cont_question section.bg_training.start .content_box.vertical .maker_box {
                        width: 72.6rem;
                        height: 47rem;
                        grid-template-rows: 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem 6.6rem;
                        padding: 0;
                    }

        .ly_cont_question section.bg_training.count1 {
            background-position: center;
            background-repeat: no-repeat;
            background-image: url(../images/icon_count1_blue.svg);
        }

        .ly_cont_question section.bg_training.count2 {
            background-position: center;
            background-repeat: no-repeat;
            background-image: url(../images/icon_count2_blue.svg);
        }

        .ly_cont_question section.bg_training .content_box {
            position: relative;
            text-align: center;
            font-size: 2rem;
            line-height: 3.6rem;
            font-family: Noto Sans JP;
            color: #888888;
            font-weight: normal;
            opacity: 0.4;
            display: none;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            height: calc(100% - 4.2rem);
        }

            .ly_cont_question section.bg_training .content_box.count {
                opacity: 1;
            }

            .ly_cont_question section.bg_training .content_box small {
                position: absolute;
                bottom: 5rem;
                -webkit-writing-mode: horizontal-tb;
                -ms-writing-mode: lr-tb;
                writing-mode: horizontal-tb;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-pack: center;
                -ms-flex-pack: center;
                justify-content: center;
                width: 100%;
            }

                .ly_cont_question section.bg_training .content_box small.is_disable {
                    display: none;
                }

        .ly_cont_question section.bg_training .maker_box {
            width: 68rem;
            height: calc(100% - 42px);
            position: absolute;
            padding: 0 4.6rem;
            display: grid;
            grid-template-rows: 7.2vh 7.2vh 7.2vh 7.2vh 7.2vh 7.2vh 7.2vh 7.2vh 7.2vh;
            z-index: -1;
        }

    .ly_cont_question section .el_txt_body {
        height: calc(100% - 42px);
        text-align: center;
        font-size: 1.9rem;
        line-height: 7.2vh;
        font-family: Noto Sans JP;
        color: #2A2A2A;
        font-weight: 600;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

        .ly_cont_question section .el_txt_body.horizon {
            min-width: 55rem;
            font-family: Yu Mincho, serif;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-align: start;
            -ms-flex-align: start;
            align-items: start;
            width: 68rem;
            padding: 0 5.6rem;
        }

            .ly_cont_question section .el_txt_body.horizon p {
                height: 7.2vh;
                white-space: nowrap;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-align: center;
                -ms-flex-align: center;
                align-items: center;
            }

        .ly_cont_question section .el_txt_body div {
            position: absolute;
            top: 3.2rem;
            left: 5.3rem;
            width: 70.8rem;
            text-align: left;
            padding: 1.5rem 2.2rem 1.5rem 12.5rem;
            border: 3px solid var(--unnamed-color-e50012);
            border: 3px solid #E50012;
            border-radius: 4px;
            font-weight: bold;
            font-size: 2.4rem;
            line-height: 2rem;
            color: #E50012;
        }

            .ly_cont_question section .el_txt_body div:before {
                content: "解答";
                position: absolute;
                top: 0;
                left: 0;
                background-color: #E50012;
                width: 10.3rem;
                height: 100%;
                font-weight: bold;
                font-size: 2rem;
                line-height: 2rem;
                color: #FFFFFF;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-pack: center;
                -ms-flex-pack: center;
                justify-content: center;
                -webkit-box-align: center;
                -ms-flex-align: center;
                align-items: center;
            }

        .ly_cont_question section .el_txt_body span {
            font-weight: bold;
            font-size: 7.8vh;
            line-height: 7.2rem;
            color: #000000;
        }

.ly_main__common .ly_cont_question section .el_time .el_time__meter div {
    border-radius: 10px;
    background-color: #008B8D;
    width: 0;
}

.ly_main__training .ly_cont_question section .el_time .el_time__meter div {
    border-radius: 10px;
    background-color: #1478C3;
    width: 0;
}

.ly_cont_question section .el_speed_check {
    position: absolute;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #E50012;
    width: 81.2rem;
    height: 4.2rem;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2rem;
    color: #ffffff;
    letter-spacing: 0.32px;
}

    .ly_cont_question section .el_speed_check.is_disable {
        display: none;
    }

.ly_cont_question .side {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -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;
    width: clamp(19.2rem, 100%, 26rem);
    margin: auto 1rem 4rem;
}

    .ly_cont_question .side.training {
        margin: 4rem 1rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: clamp(19.2rem, 100%, 26rem);
    }

        .ly_cont_question .side.training .bl_buttons {
            margin-top: auto;
        }

    .ly_cont_question .side .el_count__mode {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 8.8rem;
    }

        .ly_cont_question .side .el_count__mode .radio-inline__label {
            width: 50%;
            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;
            border: 1px solid #D8D8D8;
            font-size: 2rem;
            font-weight: bold;
            padding: 0;
            margin: 0 !important;
            height: 100%;
            cursor: pointer;
        }

            .ly_cont_question .side .el_count__mode .radio-inline__label.is_disable {
                cursor: unset;
                background: #E5E5E5 0% 0% no-repeat padding-box;
                color: rgba(42, 42, 42, 0.2);
            }

            .ly_cont_question .side .el_count__mode .radio-inline__label:nth-child(2) {
                border-radius: 4px 0px 0px 4px;
            }

            .ly_cont_question .side .el_count__mode .radio-inline__label:nth-child(4) {
                border-radius: 0px 4px 4px 0px;
            }

        .ly_cont_question .side .el_count__mode.is_disable {
            display: none;
        }

    .ly_cont_question .side .el_count__side {
        margin-top: 2rem;
    }

    .ly_cont_question .side .el_timer {
        margin-top: 2.4rem;
    }

    .ly_cont_question .side .bl_buttons {
        width: clamp(19.2rem, 100%, 26rem);
        margin-top: 2.4rem;
        margin-bottom: 0;
    }

        .ly_cont_question .side .bl_buttons > * {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            margin: 2rem 0 0 0 !important;
        }

.ly_cont_question .bl_buttons > * {
    margin: 0 !important;
}

/* 測定 */
.ly_cont_measure section {
    max-width: 111.2rem;
    height: 100%;
    margin: 0 auto;
}

    .ly_cont_measure section.bg_training .content_box {
        position: relative;
        height: calc(100% - 4.2rem);
        width: 96.8rem;
        margin: 0 auto;
        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;
        -webkit-animation-name: fade;
        animation-name: fade;
        -webkit-animation-duration: 2s;
        animation-duration: 2s;
    }

        .ly_cont_measure section.bg_training .content_box #step2 {
            width: 31.2rem;
        }

            .ly_cont_measure section.bg_training .content_box #step2.is_disable {
                display: none;
            }

.ly_main__common .ly_cont_measure section.bg_training .el_time__long .el_time__meter div {
    border-radius: 10px;
    background-color: #008B8D;
    width: 0;
}

.ly_main__training .ly_cont_measure section.bg_training .el_time__long .el_time__meter div {
    border-radius: 10px;
    background-color: #1478C3;
    width: 0;
}

.ly_cont_measure section.bg_training .el_speed_check {
    position: absolute;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #E50012;
    max-width: 111.2rem;
    width: 100%;
    height: 4.2rem;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2rem;
    color: #ffffff;
    letter-spacing: 0.32px;
}

    .ly_cont_measure section.bg_training .el_speed_check.is_disable {
        display: none;
    }

.ly_cont_measure section.bg_training .el_timer {
    gap: 1.5rem;
}

.ly_cont_measure section.bg_training .el_timer__time {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.ly_cont_measure .el_count__mode {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 8.8rem;
}

    .ly_cont_measure .el_count__mode .radio-inline__label {
        width: 50%;
        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;
        border: 1px solid #D8D8D8;
        font-size: 2rem;
        font-weight: bold;
        padding: 0;
        margin: 0 !important;
        height: 100%;
        cursor: pointer;
    }

        .ly_cont_measure .el_count__mode .radio-inline__label.is_disable {
            cursor: unset;
            background: #E5E5E5 0% 0% no-repeat padding-box;
            color: rgba(42, 42, 42, 0.2);
        }

        .ly_cont_measure .el_count__mode .radio-inline__label:nth-child(2) {
            border-radius: 4px 0px 0px 4px;
        }

        .ly_cont_measure .el_count__mode .radio-inline__label:nth-child(4) {
            border-radius: 0px 4px 4px 0px;
        }

    .ly_cont_measure .el_count__mode.is_disable {
        display: none;
    }

.ly_cont_measure .bl_buttons__middle {
    margin: 3.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .ly_cont_measure .bl_buttons__middle #finish {
        display: none;
    }

    .ly_cont_measure .bl_buttons__middle.resize > * {
        min-width: unset;
        padding: 1rem 0 1.4rem;
    }

.ly_main__common .bl_setting_box .el_count__ttl {
    background-color: #008B8D;
}

    .ly_main__common .bl_setting_box .el_count__ttl span {
        color: #008B8D;
    }

.ly_main__training .bl_setting_box .el_count__ttl {
    background-color: #1478C3;
}

    .ly_main__training .bl_setting_box .el_count__ttl span {
        color: #1478C3;
    }

.bl_setting_box .el_count__body {
    padding: 0 2.4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ly_main__common .bl_setting_box .el_count__body {
    width: 65rem;
}

.ly_main__training .bl_setting_box .el_count__body {
    width: 65rem;
}

    .ly_main__training .bl_setting_box .el_count__body .el_count {
        width: 65rem;
    }

    .ly_main__training .bl_setting_box .el_count__body.book {
        width: 31.2rem;
    }

        .ly_main__training .bl_setting_box .el_count__body.book .el_count {
            width: 31.2rem;
        }

        .ly_main__training .bl_setting_box .el_count__body.book .bl_setting_box__item {
            min-width: auto;
            width: 26.2rem;
        }

        .ly_main__training .bl_setting_box .el_count__body.book .setting {
            width: 10.4rem;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
        }

            .ly_main__training .bl_setting_box .el_count__body.book .setting p {
                text-align: center;
                margin-left: 0;
                margin-right: 0;
            }

.bl_setting_box .el_count__body ul {
    width: 100%;
}

    .bl_setting_box .el_count__body ul li {
        padding: 1.8rem 0;
        width: 100%;
        border-bottom: 1px solid #D8D8D8;
    }

        .bl_setting_box .el_count__body ul li:last-child {
            border-bottom: unset;
        }

.ly_main__common .bl_setting_box .el_count__body ul li .el_enter .el_enter__up::before, .ly_main__common .bl_setting_box .el_count__body ul li .el_enter .el_enter__up::after, .ly_main__common .bl_setting_box .el_count__body ul li .el_enter .el_enter__down::before, .ly_main__common .bl_setting_box .el_count__body ul li .el_enter .el_enter__down::after {
    background-color: #008B8D;
}

.ly_main__training .bl_setting_box .el_count__body ul li .el_enter .el_enter__up::before, .ly_main__training .bl_setting_box .el_count__body ul li .el_enter .el_enter__up::after, .ly_main__training .bl_setting_box .el_count__body ul li .el_enter .el_enter__down::before, .ly_main__training .bl_setting_box .el_count__body ul li .el_enter .el_enter__down::after {
    background-color: #1478C3;
}

.bl_setting_box__item {
    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;
    margin: 0 auto;
}

.ly_main__common .bl_setting_box__item {
    min-width: 30.4rem;
    width: 40rem;
}

.ly_main__training .bl_setting_box__item {
    min-width: 30.4rem;
    width: 40rem;
}

.bl_setting_box__item .setting {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ly_main__common .bl_setting_box__item .setting {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.ly_main__training .bl_setting_box__item .setting {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.bl_setting_box__item .setting p {
    margin: 0 auto 0 1.6rem;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: #2A2A2A;
}

.ly_main__common .bl_setting_box__item .setting p {
    text-align: left;
}

.ly_main__training .bl_setting_box__item .setting p {
    text-align: left;
}

.bl_setting_box__item .setting p small {
    display: block;
    font-weight: normal;
    font-size: 1.1rem;
    line-height: 1.8rem;
}

.bl_arrow_box {
    -webkit-transform: scale(-1, 1);
    transform: scale(-1, 1);
}

    .bl_arrow_box i::before {
        font-size: 28px;
    }

.ly_main__common .bl_arrow_box i::before {
    color: #005D5E;
}

.ly_main__training .bl_arrow_box i::before {
    color: #023995;
}

.bl_measure_box {
    width: 25rem;
    height: 46rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

    .bl_measure_box .el_speed {
        min-height: 34rem;
        height: 100%;
    }

.ly_main__common .bl_measure_box .el_speed {
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#009E78), to(#007879)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #009E78 0%, #007879 100%) 0% 0% no-repeat padding-box;
}

.bl_measure_box .el_timer {
    margin-top: 2.4rem;
}

/* プロローグ */
.ly_cont_prologue section {
    width: 95.2rem;
    height: 67.4rem;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 4px solid #008B8D;
    border-radius: 8px;
    margin: auto;
    padding: 8rem;
}

    .ly_cont_prologue section img {
        width: 31.2rem;
    }

    .ly_cont_prologue section h1 {
        margin-top: 2.4rem;
        text-align: center;
        font-weight: bold;
        font-size: 4rem;
        line-height: 5.8rem;
        color: #008B8D;
    }

    .ly_cont_prologue section p {
        margin-top: 3.2rem;
        text-align: center;
        font-size: 2.2rem;
        line-height: 4.8rem;
        color: #2A2A2A;
    }

        .ly_cont_prologue section p .school {
            font-weight: bold;
        }

        .ly_cont_prologue section p .user {
            font-weight: bold;
            color: #008B8D;
        }

    .ly_cont_prologue section .el_btn__prologue {
        margin-top: 5rem !important;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#008B8D), to(#00787A)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #008B8D 0%, #00787A 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #008B8D;
        border-radius: 4.8rem;
        font-weight: bold;
        font-size: 2.2rem;
        line-height: 3.2rem;
        color: #ffffff;
        width: 38.4rem;
        padding: 2.3rem 0;
    }

/* ホーム */
.ly_cont_home section {
    width: 95.2rem;
    height: 67.4rem;
    margin: auto;
}

    .ly_cont_home section .bl_home {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 0 auto;
        position: relative;
        height: 30rem;
        position: relative;
    }

        .ly_cont_home section .bl_home p {
            background: #FFFFFF 0% 0% no-repeat padding-box;
            -webkit-box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.1607843137);
            box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.1607843137);
            border-radius: 8px;
            width: 60rem;
            height: 8rem;
            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;
            font-size: 2.2rem;
            line-height: 4.8rem;
            color: #2A2A2A;
        }

            .ly_cont_home section .bl_home p .school {
                font-weight: bold;
            }

            .ly_cont_home section .bl_home p .user {
                font-weight: bold;
                color: #008B8D;
            }

        .ly_cont_home section .bl_home img {
            top: 0;
            position: absolute;
        }

    .ly_cont_home section .el_btn__start {
        margin-top: 4rem !important;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #1478C3;
        border-radius: 86px;
        font-weight: bold;
        font-size: 4rem;
        line-height: 4rem;
        color: #ffffff;
        width: 73rem;
        height: 17.2rem;
        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;
        margin: 0 auto;
        padding: 5.5rem 0 5.9rem;
    }

    .ly_cont_home section .bl_buttons {
        margin-top: 5.6rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

        .ly_cont_home section .bl_buttons .el_btn__home {
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
            -webkit-box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
            box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
            border: 1px solid #D8D8D8;
            border-radius: 35px;
            width: 26.7rem;
            height: 7rem;
            font-weight: bold;
            font-size: 2rem;
            color: #5E5E5E;
            text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.1607843137);
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            gap: 0.8rem;
        }

.ly_footer__home {
    height: 1rem;
    width: 100%;
    background: #008B8D 0% 0% no-repeat padding-box;
}

/* コーストレーニングホーム */
.ly_cont_training section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: clamp(102.4rem, 100%, 124.6rem);
    margin: 0 auto;
    padding-top: 2.9rem;
    height: 100%;
}

.ly_cont_training .bl_buttons__middle {
    position: relative;
    margin: auto 0 3.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .ly_cont_training .bl_buttons__middle .el_btn__result {
        position: absolute;
        right: 0;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
        -webkit-box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
        box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
        border: 1px solid #D8D8D8;
        border-radius: 35px 0px 0px 35px;
        width: 26.7rem;
        height: 7rem;
        font-weight: bold;
        font-size: 2rem;
        color: #5E5E5E;
        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.1607843137);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 0.8rem;
    }

    .ly_cont_training .bl_buttons__middle.resize .el_btn__size__main {
        min-width: unset;
        width: 40rem;
    }

    .ly_cont_training .bl_buttons__middle.resize > * {
        padding: 1rem 0 1.4rem;
    }

.ly_cont_training p {
    margin-top: 2.4rem;
    text-align: center;
    color: #2A2A2A;
    font-size: 1.8rem;
    line-height: 3.2rem;
}

.bl_select__course {
    width: 100%;
}

    .bl_select__course .el_select_box {
        position: relative;
    }

    .bl_select__course .el_select_box__ttl {
        position: absolute;
        width: 14.5rem;
        height: 11rem;
        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;
        font-size: 1.8rem;
        line-height: 2.5rem;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
        -webkit-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1607843137);
        box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1607843137);
        border-radius: 0px 100px 100px 0px;
        z-index: 10;
    }

    .bl_select__course .el_select_box__body {
        width: 100%;
        height: 10.4rem;
        overflow-x: auto;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

        .bl_select__course .el_select_box__body ul {
            padding-left: 16.4rem;
        }

            .bl_select__course .el_select_box__body ul li .radio-inline__label {
                margin-right: 1rem;
                width: 20rem;
                height: 5.4rem;
            }

.bl_select__training {
    margin: 0 4rem;
}

    .bl_select__training .el_select_box {
        margin-top: 2.4rem;
        height: 16.4rem;
    }

    .bl_select__training .el_select_box__ttl {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-width: 5rem;
        height: 100%;
        font-size: 1.4rem;
        line-height: 1.6rem;
        background: #1478C3 0% 0% no-repeat padding-box;
        border-radius: 8px 0px 0px 8px;
    }

    .bl_select__training .el_select_box__body {
        width: 111.6rem;
        height: 100%;
        padding: 0 1.5rem;
        border-radius: 0px 8px 8px 0px;
        overflow-x: auto;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
        -ms-overflow-style: none;
        /*Firefoxへの対応*/
        scrollbar-width: none;
        /*Google Chrome、Safariへの対応*/
    }

        .bl_select__training .el_select_box__body::-webkit-scrollbar {
            display: none;
        }

        .bl_select__training .el_select_box__body ul :last-child .el_select_box__item {
            margin-right: 1.5rem;
        }

.el_select_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.el_select_box__ttl {
    color: #FFFFFF;
}

.el_select_box__body {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #FFFFFF;
    border-radius: 4px;
}

    .el_select_box__body ul {
        -webkit-animation-name: fade;
        animation-name: fade;
        -webkit-animation-duration: 2s;
        animation-duration: 2s;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

.el_select_box__item {
    margin-right: 0.8rem;
    width: 19.2rem;
    height: 12.4rem;
    background: #F1F1F1 0% 0% no-repeat padding-box;
    border-radius: 8px;
    padding: 1.4rem 1.6rem 1.6rem;
}

    .el_select_box__item.is_active {
        background: #DEF4FF 0% 0% no-repeat padding-box;
        border: 1px solid #1478C3;
    }

    .el_select_box__item .training_ttl {
        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;
        height: 5.1rem;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 2.5rem;
        color: #2A2A2A;
    }

        .el_select_box__item .training_ttl img {
            width: auto;
            height: 4.8rem;
        }

    .el_select_box__item .bl_buttons__spaceBetween > * {
        margin: 1.1rem 0 0 0 !important;
    }

    .el_select_box__item .radio-inline__label {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 4.8rem;
        height: 3.2rem;
        padding: 0;
        margin-right: 0 !important;
        font-weight: bold;
        font-size: 2rem;
        line-height: 2.3rem;
        color: #2A2A2A;
    }

        .el_select_box__item .radio-inline__label::after {
            content: "分";
            width: 1rem;
            height: 1rem;
            position: relative;
            right: -3px;
            bottom: -3px;
            font-weight: normal;
            font-size: 1rem;
            -webkit-transform: scale(0.8);
            transform: scale(0.8);
            line-height: 1.1rem;
        }

        .el_select_box__item .radio-inline__label.none {
            font-size: 1.6rem;
            width: 100%;
        }

            .el_select_box__item .radio-inline__label.none::after {
                content: none;
            }

/* トレーニング履歴 */
.ly_cont_history .history_header {
    height: 5.6rem;
    width: 100%;
    background-color: #ffffff;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
    position: relative;
    z-index: 10;
}

.ly_cont_history section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: clamp(102.4rem, 100%, 111.2rem);
    margin: 0 auto;
    min-height: calc(100vh - (var(--height-header_lg) + 7rem));
    height: 100%;
}

    .ly_cont_history section .side {
        width: 28.2rem;
        height: 100%;
        padding: 3rem 0 0 1rem;
    }

        .ly_cont_history section .side .training_list li {
            font-size: 1.2rem;
            line-height: 2.2rem;
            font-weight: bold;
            letter-spacing: 0px;
            color: #005D5E;
            font-weight: bold;
            margin-bottom: 3rem;
        }

        .ly_cont_history section .side .practice_list {
            padding-top: 1.2rem;
        }

            .ly_cont_history section .side .practice_list li {
                color: #2A2A2A;
                margin-bottom: 0.4rem;
                font-size: 1.6rem;
                line-height: 2.2rem;
                font-weight: normal;
                letter-spacing: 0px;
                height: 5.6rem;
                padding: 1.5rem 0 1.7rem;
            }

                .ly_cont_history section .side .practice_list li.is_active {
                    background-color: #ffffff;
                    border-radius: 100px 0px 0px 100px;
                    color: #008B8D;
                    font-size: 1.6rem;
                    line-height: 2.2rem;
                    font-weight: bold;
                }

                    .ly_cont_history section .side .practice_list li.is_active img {
                        width: 3.8rem;
                    }

                    .ly_cont_history section .side .practice_list li.is_active a {
                        padding-left: 2rem;
                    }

                .ly_cont_history section .side .practice_list li a {
                    height: 100%;
                    display: -webkit-box;
                    display: -ms-flexbox;
                    display: flex;
                    -webkit-box-align: center;
                    -ms-flex-align: center;
                    align-items: center;
                    padding-left: 3rem;
                    -webkit-transition: all 0.1s ease;
                    transition: all 0.1s ease;
                }

                    .ly_cont_history section .side .practice_list li a:hover {
                        opacity: 0.6;
                    }

    .ly_cont_history section .main {
        width: calc(100% - 28.2rem);
        min-height: calc(100vh - (var(--height-header_lg) + 7rem));
        height: 100%;
        background-color: #ffffff;
    }

        .ly_cont_history section .main .bl_box {
            padding: 3rem 4rem 6.4rem;
        }

        .ly_cont_history section .main #viewContent h2 {
            font-size: 2.2rem;
            line-height: 3.2rem;
            font-weight: bold;
            letter-spacing: 0px;
            color: #005D5E;
            opacity: 1;
        }

.ly_cont_history .bl_buttons__middle {
    position: relative;
    margin: auto 0 3.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .ly_cont_history .bl_buttons__middle .el_btn__result {
        position: absolute;
        right: 0;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
        -webkit-box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
        box-shadow: inset -1px 1px 2px #FFFFFF, 0px 1px 0px #BCBCBC;
        border: 1px solid #D8D8D8;
        border-radius: 35px 0px 0px 35px;
        width: 26.7rem;
        height: 7rem;
        font-weight: bold;
        font-size: 2rem;
        color: #5E5E5E;
        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.1607843137);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 0.8rem;
    }

    .ly_cont_history .bl_buttons__middle.resize .el_btn__size__main {
        min-width: unset;
        width: 40rem;
    }

    .ly_cont_history .bl_buttons__middle.resize > * {
        padding: 0;
        height: 7rem;
    }

.ly_cont_history p {
    margin-top: 2.4rem;
    text-align: center;
    color: #2A2A2A;
    font-size: 1.8rem;
    line-height: 3.2rem;
}

.ly_cont_history .history_level_btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

    .ly_cont_history .history_level_btn li {
        cursor: pointer;
        margin-right: 6px;
        padding: 0.8rem 0;
        width: 16rem;
        height: 4.7rem;
        text-align: center;
        font-size: 1.4rem;
        line-height: 2.9rem;
        font-weight: bold;
        letter-spacing: 0px;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(100%, #D2D2D2), to(#808080)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #FFFFFF 0%, #D2D2D2 100%, #808080 100%) 0% 0% no-repeat padding-box;
        border: 1px solid #D8D8D8;
        border-radius: 4px;
        color: #008B8D;
    }

        .ly_cont_history .history_level_btn li.is_active {
            text-align: center;
            color: #FFFFFF;
            opacity: 1;
            border-right: none;
            opacity: 1;
            color: #FFFFFF;
            -webkit-box-shadow: none;
            box-shadow: none;
            border: 1px solid #008B8D;
            background: transparent -webkit-gradient(linear, left top, left bottom, from(#009E78), to(#007879)) 0% 0% no-repeat padding-box;
            background: transparent linear-gradient(180deg, #009E78 0%, #007879 100%) 0% 0% no-repeat padding-box;
        }

.ly_cont_history .el_btn__home {
    margin-top: 3.3rem;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #D8D8D8;
    color: #2A2A2A;
    border-radius: 36px;
    width: 26rem;
    height: 4.8rem;
    padding: 1.4rem 0;
    font-size: 1.4rem;
    line-height: 1.8rem;
    font-weight: bold;
    letter-spacing: 0px;
}

.bl_select__course {
    width: 100%;
}

    .bl_select__course .el_select_box {
        position: relative;
    }

    .bl_select__course .el_select_box__ttl {
        position: absolute;
        width: 14.5rem;
        height: 11rem;
        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;
        font-size: 1.8rem;
        line-height: 2.5rem;
        background: transparent -webkit-gradient(linear, left top, left bottom, from(#1478C3), to(#0057B9)) 0% 0% no-repeat padding-box;
        background: transparent linear-gradient(180deg, #1478C3 0%, #0057B9 100%) 0% 0% no-repeat padding-box;
        -webkit-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1607843137);
        box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1607843137);
        border-radius: 0px 100px 100px 0px;
        z-index: 10;
    }

    .bl_select__course .el_select_box__body {
        width: 100%;
        height: 10.4rem;
        overflow-x: auto;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

        .bl_select__course .el_select_box__body ul {
            padding-left: 16.4rem;
        }

            .bl_select__course .el_select_box__body ul li .radio-inline__label {
                margin-right: 1rem;
                width: 20rem;
                height: 5.4rem;
            }

.bl_select__training {
    margin: 0 4rem;
}

    .bl_select__training .el_select_box {
        margin-top: 2.4rem;
        height: 16.4rem;
    }

    .bl_select__training .el_select_box__ttl {
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-width: 5rem;
        height: 100%;
        font-size: 1.4rem;
        line-height: 1.6rem;
        background: #1478C3 0% 0% no-repeat padding-box;
        border-radius: 8px 0px 0px 8px;
    }

    .bl_select__training .el_select_box__body {
        width: 111.6rem;
        height: 100%;
        padding: 0 1.5rem;
        border-radius: 0px 8px 8px 0px;
        overflow-x: auto;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
        -ms-overflow-style: none;
        /*Firefoxへの対応*/
        scrollbar-width: none;
        /*Google Chrome、Safariへの対応*/
    }

        .bl_select__training .el_select_box__body::-webkit-scrollbar {
            display: none;
        }

        .bl_select__training .el_select_box__body ul :last-child .el_select_box__item {
            margin-right: 1.5rem;
        }

.el_select_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.el_select_box__ttl {
    color: #FFFFFF;
}

.el_select_box__body {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #FFFFFF;
    border-radius: 4px;
}

    .el_select_box__body ul {
        -webkit-animation-name: fade;
        animation-name: fade;
        -webkit-animation-duration: 2s;
        animation-duration: 2s;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

.el_select_box__item {
    margin-right: 0.8rem;
    width: 19.2rem;
    height: 12.4rem;
    background: #F1F1F1 0% 0% no-repeat padding-box;
    border-radius: 8px;
    padding: 1.4rem 1.6rem 1.6rem;
}

    .el_select_box__item.is_active {
        background: #DEF4FF 0% 0% no-repeat padding-box;
        border: 1px solid #1478C3;
    }

    .el_select_box__item .training_ttl {
        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;
        height: 5.1rem;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 2.5rem;
        letter-spacing: 0px;
        color: #2A2A2A;
    }

        .el_select_box__item .training_ttl img {
            width: auto;
            height: 4.8rem;
        }

    .el_select_box__item .bl_buttons__spaceBetween > * {
        margin: 1.1rem 0 0 0 !important;
    }

    .el_select_box__item .radio-inline__label {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 4.8rem;
        height: 3.2rem;
        padding: 0;
        margin-right: 0 !important;
        font-family: "Arial", sans-serif;
        font-weight: bold;
        font-size: 2rem;
        line-height: 2.3rem;
        color: #2A2A2A;
    }

        .el_select_box__item .radio-inline__label::after {
            content: "分";
            width: 1rem;
            height: 1rem;
            position: relative;
            right: -3px;
            bottom: -3px;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: normal;
            font-size: 1rem;
            -webkit-transform: scale(0.8);
            transform: scale(0.8);
            line-height: 1.1rem;
        }

        .el_select_box__item .radio-inline__label.none {
            font-family: "Noto Sans JP", sans-serif;
            font-size: 1.6rem;
            width: 100%;
            font-weight: 500;
        }

            .el_select_box__item .radio-inline__label.none::after {
                content: none;
            }

/*—————————————————————————————————————————————————————
モーダル
—————————————————————————————————————————————————————*/
.md_overlay {
    background-color: rgba(0, 0, 0, 0.6);
}

.md_wrapper__setting {
    position: relative;
    z-index: 1001;
    padding: 0;
    border-radius: 8px;
    overflow-y: unset;
}

    .md_wrapper__setting:before {
        content: "✕";
        width: 4.4rem;
        height: 4.2rem;
        position: absolute;
        top: -2.2rem;
        right: -2.2rem;
        cursor: pointer;
        background-color: #2a2a2a;
        border-radius: 50%;
        color: #ffffff;
        font-size: 2.6rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .md_wrapper__setting .md_content {
        margin-top: 0;
        overflow-y: auto;
        max-height: 90vh;
        border-radius: 8px;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
        -ms-overflow-style: none;
        /*Firefoxへの対応*/
        scrollbar-width: none;
        /*Google Chrome、Safariへの対応*/
    }

        .md_wrapper__setting .md_content::-webkit-scrollbar {
            display: none;
        }

        .md_wrapper__setting .md_content .el_ttl_underLine {
            height: 6.8rem;
            padding: 1.6rem;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            font-size: 2.4rem;
            line-height: 2.9rem;
            font-weight: bold;
            color: #ffffff;
            background: #1478C3 0% 0% no-repeat padding-box;
            border: none;
        }

            .md_wrapper__setting .md_content .el_ttl_underLine img {
                margin-right: 1.4rem;
            }

        .md_wrapper__setting .md_content .setting, .md_wrapper__setting .md_content .movie {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            margin: 8rem 4rem;
        }

            .md_wrapper__setting .md_content .setting .setting_item, .md_wrapper__setting .md_content .movie .setting_item {
                display: grid;
                grid-template-columns: 1fr 1fr;
                grid-template-rows: 1fr 1fr;
                gap: 3.6rem 8rem;
            }

                .md_wrapper__setting .md_content .setting .setting_item .bl_buttons, .md_wrapper__setting .md_content .movie .setting_item .bl_buttons {
                    margin-top: 1.6rem;
                }

                .md_wrapper__setting .md_content .setting .setting_item small, .md_wrapper__setting .md_content .movie .setting_item small {
                    text-align: left;
                    font-size: 1.1rem;
                    line-height: 2.1rem;
                    color: #888888;
                }

.md_content.result__common .bl_box, .md_content.result__training .bl_box {
    padding: 0;
}

.md_content.result__common .complete_text .complete, .md_content.result__training .complete_text .complete {
    font-size: 11rem !important;
}

.md_content.result__common h4, .md_content.result__training h4 {
    margin-top: 2.4rem;
    font-weight: bold;
    font-size: 2.6rem;
    line-height: 4.2rem;
    color: #2a2a2a;
}

.md_content.result__common .el_txt_body, .md_content.result__training .el_txt_body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #F2F2F2 0% 0% no-repeat padding-box;
    border-radius: 8px;
    width: 60rem;
    height: 11.5rem;
    margin: 0 auto;
    color: #2A2A2A;
    margin-top: 3rem;
}

    .md_content.result__common .el_txt_body p, .md_content.result__training .el_txt_body p {
        text-align: right;
        font-size: 1.8rem;
        line-height: 2.2rem;
        padding-right: 1.6rem;
    }

    .md_content.result__common .el_txt_body strong, .md_content.result__training .el_txt_body strong {
        text-align: center;
        font-weight: bold;
        font-size: 5.2rem;
        line-height: 5rem;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        -webkit-box-shadow: inset 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
        box-shadow: inset 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
        border-radius: 4px;
        width: 26.3rem;
        height: 7.9rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .md_content.result__common .el_txt_body small, .md_content.result__training .el_txt_body small {
        text-align: left;
        font-size: 1.6rem;
        line-height: 2.2rem;
        padding-left: 1.6rem;
        margin: auto 0 1.8rem;
    }

.md_content.result__common .mt-3, .md_content.result__training .mt-3 {
    margin: 3rem auto 0;
}

.md_content.result__common .el_btn__size__modal, .md_content.result__training .el_btn__size__modal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 2rem auto 0;
    font-weight: bold;
}

.md_content.result__common .el_txt_body strong {
    color: #008B8D;
}

.md_content.result__training .el_txt_body strong {
    color: #1478C3;
}
/*# sourceMappingURL=style.css.map */
