@charset "utf-8";
html,
img {
    border-style: none;
}
a,
body {
    margin: 0;
}
a,
ins {
    text-decoration: none;
}
ins,
mark {
    background-color: #ff9;
    color: #000;
}
a,
hr,
html {
    padding: 0;
}
.cf:after, article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr,
menu,
nav,
section,
summary {
    display: block;
}
hr.hr-dotted-1,
hr.hr-eee {
    margin: 20px 0;
    box-sizing: border-box;
}
.left_center p,
.link_box,
.link_style_1 {
    display: inline-block;
}
.bs_bb,
hr.hr-dotted-1,
hr.hr-eee {
    box-sizing: border-box;
}
.btn_radio,
.btn_style {
    text-shadow: 1px 1px 2px #fff;
}
.tgl,
.ui_tags .ui_tag-btn {
    -webkit-user-select: none;
    -moz-user-select: none;
}
.select2-container :focus,
.select2-container:focus,
button,
select,
textarea {
    outline: 0;
}
.cf:after,
.hidden,
.nc-tagsinput {
    visibility: hidden;
}
dd,
dl,
dt,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
ul {
    margin: 0;
    padding: 0;
}
.ui_preset_textbook .ic_textbook img,
body,
html {
    width: 100%;
    height: 100%;
}
* html .cf,
hr {
    height: 1px;
}
html {
    font-size: 62.5%;
    margin: 0 auto;
    color: #555;
}
body.ov-hidden,
html.ov-hidden {
    overflow: hidden !important;
}
body,
dir,
div,
h1,
li,
menu,
nav,
p,
ul {
    list-style-type: none;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 0;
}
body {
    top: 0 !important;
    line-height: 1;
    font-family: "Noto Sans JP", sans-serif;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    background: #fff;
    min-width: 1260px;
}
body.bg--gray {
    min-width: 0;
    background: #f5f5f5;
}
img {
    -ms-interpolation-mode: bicubic;
}
em {
    font-style: normal;
}
button {
    font: inherit;
    cursor: pointer;
}
.t_1,
.t_2 {
    font-size: 1.8rem;
    line-height: 1.7;
}
.t_1,
.t_2,
mark {
    font-weight: 700;
}
blockquote,
q {
    quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none;
}
a {
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0;
}
mark {
    font-style: italic;
}
.strike,
del {
    text-decoration: line-through;
}
abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr {
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
}
.btn_fav_set .fav_disable,
.btn_fav_set .fav_enable,
.size_switch_area .size_switch_area_inner .btn_switch_size i,
.size_switch_area > ul > li,
.teacher_search_form .dl_style_2 dd,
input,
select {
    vertical-align: middle;
}
html:lang(ko) body {
    font-family: "Noto Sans KR", "SF Pro KR", "SF Pro Text", "SF Pro Icons", Arial, sans-serif;
}
html:lang(zh-tw) body {
    font-family: "微軟正黑體", PingHei, PMingLiU, STHeitiSC-Medium, sans-serif;
}
html:lang(vi) body {
    font-family: "Open Sans", sans-serif;
}
.cf:after {
    content: ".";
    clear: both;
    height: 0;
}
.cf {
    min-height: 1px;
}
.c_deepgray,
.c_default {
    color: #555 !important;
}
.c_green {
    color: #16a9b2 !important;
}
.c_light-green {
    color: #3cc0c3 !important;
}
.c_button_green {
    color: #03c9a9 !important;
}
.c_button_orange,
.c_nc_yellow,
.c_orange {
    color: #f1890e !important;
}
.c_blue {
    color: #00acee !important;
}
.c_light-blue {
    color: #44b8f1 !important;
}
.c_light-blue_2 {
    color: #29aae3 !important;
}
.c_yellow {
    color: #b2a516 !important;
}
.c_gray {
    color: #999 !important;
}
.c_white,
.footer .footer_menu .menu_child li .c_red,
.ui-widget-content,
.ui_msg_style_1 .t_link {
    color: #fff !important;
}
.c_indigo {
    color: #465e74 !important;
}
.c_gold {
    color: #dca441 !important;
}
.c_navy {
    color: #092846 !important;
}
.c_free_ticket {
    color: #f84f63 !important;
}
.c_spring {
    color: #ec60a2 !important;
}
.c_red {
    color: #f14444 !important;
}
.c_brown {
    color: #69311c !important;
}
.c_twitter {
    color: #50abf1 !important;
}
.c_facebook {
    color: #3b5998 !important;
}
.c_instagram {
    color: #da2f74 !important;
}
.c_pink {
    color: #ff374f !important;
}
.bg_white {
    background: #fff !important;
}
.bg_gray {
    background: #f5f5f5 !important;
}
.bg_aliceblue {
    background: #eef4fb !important;
}
.t_center {
    text-align: center !important;
}
.t_left {
    text-align: left !important;
}
.t_right {
    text-align: right !important;
}
.v_top {
    vertical-align: top !important;
}
.v_middle {
    vertical-align: middle !important;
}
.v_baseline {
    vertical-align: baseline !important;
}
.v_bottom {
    vertical-align: bottom !important;
}
.v_super {
    vertical-align: super !important;
}
.t_1 {
    margin-bottom: 0;
}
.t_2 {
    margin-bottom: 0.3em;
    border-bottom: 1px solid #ccc;
}
.t_3 {
    text-align: left !important;
    padding-left: 1em;
    text-indent: -1em;
}
.btn_center,
.btn_rating_wrap ul,
.error_wrap,
.error_wrap_2,
.header-v3 .header_inner .header_right_area,
.left_center,
.pager ul,
.rec-result-type-audio .btn-area .area-inner,
.smsAuthContainer .form-inline {
    text-align: center;
}
.cert_link,
.t_link {
    color: #00acee !important;
    text-decoration: underline;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.t_link.disabled {
    text-decoration: none !important;
    color: #ccc !important;
    pointer-events: none !important;
}
.cert_link:hover,
.t_link:hover {
    color: #3dc8ff !important;
}
.t_link-black {
    color: #333;
    text-decoration: underline;
    transition: 0.2s linear;
}
.t_link-black:hover {
    opacity: 0.6;
}
.t_link-disabled {
    color: #555;
    text-decoration: none;
    cursor: default;
}
.t_link-disabled-2,
.t_link-disabled-2:hover {
    color: #7fceed !important;
}
.b_link_tr,
.btn_radio label,
.btn_rating,
.btn_style,
.link_style_1,
.smsAuthContainer .btn-authCodeForm--notice,
input[type="radio"],
select {
    cursor: pointer;
}
.t_link-disabled-2 {
    text-decoration: underline;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.link_box,
.link_box a,
.link_style_1 {
    -webkit-transition: 0.2s linear;
}
.t_indent {
    text-indent: 100px;
}
.footer .footer_menu .menu_child li a:hover,
.t_underline {
    text-decoration: underline;
}
.hanging_indent,
.t_i_10,
.ui_notice[class*="listmark"],
.ui_notice_list[class*="listmark"] ul li {
    text-indent: -1em;
    padding-left: 1em;
}
.left_center p {
    text-align: left;
}
hr.hr-dotted-1 {
    display: block;
    background: 0 0;
    background-color: none;
    border: none;
    border-bottom: 1px dotted #ccc;
}
hr.hr-eee {
    display: block;
    background: #eee;
    border: none;
}
.link_box {
    border: 2px solid #00acee;
    border-radius: 4px;
}
.link_box:hover {
    border: 2px solid #3dc8ff;
}
.link_box a {
    display: block;
    padding: 10px;
    color: #00acee;
    transition: 0.2s linear;
}
.link_box a:hover,
.page_links_style_1 li a:hover,
.smsAuthContainer .notice_smsmail dl dd .link_external:hover {
    color: #3dc8ff;
}
.link_box a:before {
    margin-right: 5px;
}
.link_box a.order_history:before {
    content: "\f1da";
    font-family: FontAwesome;
    display: inline-block;
}
.page_wrap .page_inner .link_box {
    position: absolute;
    right: 30px;
    top: 12px;
    z-index: 10;
}
.link_style_1 {
    color: #00acee;
    transition: 0.2s linear;
    border: 2px solid #00acee;
    border-radius: 4px;
    background: #fff;
    padding: 8px 10px;
}
.p_t_0,
.zero_p_t,
.zero_p_t_b {
    padding-top: 0 !important;
}
.p_b_0,
.zero_p_b,
.zero_p_t_b {
    padding-bottom: 0 !important;
}
.link_style_1:hover {
    color: #3dc8ff;
    border: 2px solid #3dc8ff;
}
.btn_half li:first-child,
.fl,
.page_top_area_wrap > div,
.tb_selector_switch_wrap .tb_selector_switches .tb_selector_switch:first-child {
    float: left;
}
.fr {
    float: right;
}
.d_block,
body.is-mobile .switch_to_mobile_wrap {
    display: block !important;
}
.d_inline {
    display: inline !important;
}
.d_table,
.footer .footer_inner .col_wrap,
.global_menu_inner .simple_notice_list > ul > div > li .col_wrap,
.header-v3 .simple_notice_list > ul > div > li .col_wrap,
.ui_link_campaign .col_wrap,
.ui_preset_textbook .ui_preset_textbook_inner,
.ui_step_lesson .col_wrap {
    display: table;
    width: 100%;
}
.t_l_fixed {
    table-layout: fixed;
}
.d_cell,
.global_menu_inner .simple_notice_list > ul > div > li .col_left,
.global_menu_inner .simple_notice_list > ul > div > li .col_right,
.header-v3 .simple_notice_list > ul > div > li .col_left,
.header-v3 .simple_notice_list > ul > div > li .col_right,
.tb_custom_selector .item_inner > span,
.teacher_search_form .dl_style_1 dd,
.teacher_search_form .dl_style_1 dt,
.ui_link_campaign .col_wrap .col_left,
.ui_link_campaign .col_wrap .col_right,
.ui_step_lesson .col_wrap > .col_cell {
    display: table-cell;
    vertical-align: middle;
}
.d_i_block {
    display: inline-block !important;
}
.d_flex {
    display: flex !important;
    margin: 0 auto;
}
.m_t_0,
.zero_m_t,
.zero_m_t_b {
    margin-top: 0 !important;
}
.m_b_0,
.zero_m_b,
.zero_m_t_b {
    margin-bottom: 0 !important;
}
.a_i_start {
    align-items: flex-start;
}
.a_i_center,
.ui_preset_textbook .col_right .btn_wrap_flex {
    align-items: center;
}
.a_i_end {
    align-items: flex-end;
}
.j_c_between,
.nc-common-app-badge-list.space-between {
    justify-content: space-between;
}
.j_c_around {
    justify-content: space-around;
}
.j_c_evenly {
    justify-content: space-evenly;
}
* html .d_cell {
    display: inline;
    zoom: 1;
}
.header-v3 .header_menu a:hover,
a:hover img {
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    -ms-filter: "alpha( opacity=60 )";
    opacity: 0.6;
}
.btn_radio input[type="radio"],
.footer .footer_menu .menu_child li .cnt,
.footer .footer_menu .menu_child li .cnt:empty,
.global_menu .global_menu_inner .logo_wrap,
.global_menu.page-detail .global_menu_inner .gl_menu_right .user_name,
.global_menu.page-detail .menu_parent > ul > li .menu_parent_ttl .text,
.global_menu.scrolled .global_menu_inner .gl_menu_right .user_name,
.global_menu.scrolled .menu_parent > ul > li .menu_parent_ttl .text,
.global_menu_inner .simple_notice_list .btn_notice_more .fa-spin,
.header-v3 .simple_notice_list .btn_notice_more .fa-spin,
.header-v3.ninety_five_off .logo:lang(ja)::after,
.hide,
.page_breadcrumbs li:first-child:before,
.page_breadcrumbs_2 li:last-child:after,
.page_breadcrumbs_3 li:last-child:after,
.tb_custom_selector .child_item .item_inner,
.tb_custom_selector .item_inner .tb_rank_wrap.hide,
.tgl-2 input,
.tgl-checkbox,
.ui-draggable .ui-dialog-titlebar {
    display: none;
}
.t_truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.zero_m {
    margin: 0 !important;
}
.zero_m_a,
textarea {
    margin: 0 auto;
}
.m_t_-20 {
    margin-top: -20px !important;
}
.m_t_-10 {
    margin-top: -10px !important;
}
.m_t_5 {
    margin-top: 5px !important;
}
.m_t_10 {
    margin-top: 10px !important;
}
.m_t_15 {
    margin-top: 15px !important;
}
.m_t_20 {
    margin-top: 20px !important;
}
.m_t_24 {
    margin-top: 24px !important;
}
.m_t_25 {
    margin-top: 25px !important;
}
.m_t_30 {
    margin-top: 30px !important;
}
.m_t_35 {
    margin-top: 35px !important;
}
.m_t_40 {
    margin-top: 40px !important;
}
.m_t_45 {
    margin-top: 45px !important;
}
.m_t_50 {
    margin-top: 50px !important;
}
.m_t_60 {
    margin-top: 60px !important;
}
.m_t_70 {
    margin-top: 70px !important;
}
.m_t_80 {
    margin-top: 80px !important;
}
.m_t_90 {
    margin-top: 90px !important;
}
.m_t_100 {
    margin-top: 100px !important;
}
.m_b_-5 {
    margin-bottom: -5px !important;
}
.m_b_-10 {
    margin-bottom: -10px !important;
}
.m_b_5 {
    margin-bottom: 5px !important;
}
.m_b_10 {
    margin-bottom: 10px !important;
}
.m_b_15 {
    margin-bottom: 15px !important;
}
.m_b_16 {
    margin-bottom: 1.6rem;
}
.m_b_20 {
    margin-bottom: 20px !important;
}
.m_b_25 {
    margin-bottom: 25px !important;
}
.m_b_28 {
    margin-bottom: 28px !important;
}
.m_b_30 {
    margin-bottom: 30px !important;
}
.m_b_35 {
    margin-bottom: 35px !important;
}
.m_b_40 {
    margin-bottom: 40px !important;
}
.m_b_45 {
    margin-bottom: 45px !important;
}
.m_b_50 {
    margin-bottom: 50px !important;
}
.m_b_60 {
    margin-bottom: 60px !important;
}
.m_b_70 {
    margin-bottom: 70px !important;
}
.m_b_80 {
    margin-bottom: 80px !important;
}
.m_b_90 {
    margin-bottom: 90px !important;
}
.m_b_100 {
    margin-bottom: 100px !important;
}
.m_l_m40 {
    margin-left: -40px !important;
}
.amazon_gift.header-v3 .header_left_area > .logo,
.amazon_gift.header-v3 .header_left_area > h1,
.m_l_0 {
    margin-left: 0 !important;
}
.m_l_1 {
    margin-left: 1px !important;
}
.m_l_2 {
    margin-left: 2px !important;
}
.m_l_3 {
    margin-left: 3px !important;
}
.m_l_4 {
    margin-left: 4px !important;
}
.m_l_5 {
    margin-left: 5px !important;
}
.m_l_6 {
    margin-left: 6px !important;
}
.m_l_7 {
    margin-left: 7px !important;
}
.m_l_8 {
    margin-left: 8px !important;
}
.m_l_9 {
    margin-left: 9px !important;
}
.m_l_10 {
    margin-left: 10px !important;
}
.m_l_15 {
    margin-left: 15px !important;
}
.m_l_20 {
    margin-left: 20px !important;
}
.m_l_25 {
    margin-left: 25px !important;
}
.m_l_30 {
    margin-left: 30px !important;
}
.m_l_35 {
    margin-left: 35px !important;
}
.m_l_40 {
    margin-left: 40px !important;
}
.m_l_45 {
    margin-left: 45px !important;
}
.m_l_50 {
    margin-left: 50px !important;
}
.m_r_-5 {
    margin-right: -5px !important;
}
.m_r_0 {
    margin-right: 0 !important;
}
.m_r_1 {
    margin-right: 1px !important;
}
.m_r_2 {
    margin-right: 2px !important;
}
.m_r_3 {
    margin-right: 3px !important;
}
.m_r_4 {
    margin-right: 4px !important;
}
.m_r_5 {
    margin-right: 5px !important;
}
.m_r_6 {
    margin-right: 6px !important;
}
.m_r_7 {
    margin-right: 7px !important;
}
.m_r_8 {
    margin-right: 8px !important;
}
.m_r_9 {
    margin-right: 9px !important;
}
.m_r_10 {
    margin-right: 10px !important;
}
.m_r_15 {
    margin-right: 15px !important;
}
.m_r_20 {
    margin-right: 20px !important;
}
.m_r_25 {
    margin-right: 25px !important;
}
.m_r_30 {
    margin-right: 30px !important;
}
.m_r_35 {
    margin-right: 35px !important;
}
.m_r_40 {
    margin-right: 40px !important;
}
.m_r_45 {
    margin-right: 45px !important;
}
.m_r_50 {
    margin-right: 50px !important;
}
.zero_p {
    padding: 0 !important;
}
.p_t_5 {
    padding-top: 5px !important;
}
.p_t_10 {
    padding-top: 10px !important;
}
.p_t_15 {
    padding-top: 15px !important;
}
.p_t_20 {
    padding-top: 20px !important;
}
.p_t_25 {
    padding-top: 25px !important;
}
.p_t_30 {
    padding-top: 30px !important;
}
.p_t_35 {
    padding-top: 35px !important;
}
.p_t_40 {
    padding-top: 40px !important;
}
.p_t_45 {
    padding-top: 45px !important;
}
.p_t_50 {
    padding-top: 50px !important;
}
.p_b_5 {
    padding-bottom: 5px !important;
}
.p_b_10 {
    padding-bottom: 10px !important;
}
.p_b_15 {
    padding-bottom: 15px !important;
}
.p_b_20 {
    padding-bottom: 20px !important;
}
.p_b_25 {
    padding-bottom: 25px !important;
}
.p_b_30 {
    padding-bottom: 30px !important;
}
.p_b_35 {
    padding-bottom: 35px !important;
}
.p_b_40 {
    padding-bottom: 40px !important;
}
.p_b_45 {
    padding-bottom: 45px !important;
}
.p_b_50 {
    padding-bottom: 50px !important;
}
.p_b_100 {
    padding-bottom: 100px !important;
}
.p_l_0 {
    padding-left: 0 !important;
}
.p_l_1 {
    padding-left: 1px !important;
}
.p_l_2 {
    padding-left: 2px !important;
}
.p_l_3 {
    padding-left: 3px !important;
}
.p_l_4 {
    padding-left: 4px !important;
}
.p_l_5 {
    padding-left: 5px !important;
}
.p_l_6 {
    padding-left: 6px !important;
}
.p_l_7 {
    padding-left: 7px !important;
}
.p_l_8 {
    padding-left: 8px !important;
}
.p_l_9 {
    padding-left: 9px !important;
}
.p_l_10 {
    padding-left: 10px !important;
}
.p_l_15 {
    padding-left: 15px !important;
}
.p_l_20 {
    padding-left: 20px !important;
}
.p_l_25 {
    padding-left: 25px !important;
}
.p_l_30 {
    padding-left: 30px !important;
}
.p_l_35 {
    padding-left: 35px !important;
}
.p_l_40 {
    padding-left: 40px !important;
}
.p_l_45 {
    padding-left: 45px !important;
}
.p_l_50 {
    padding-left: 50px !important;
}
.p_l_80 {
    padding-left: 80px !important;
}
.p_r_0 {
    padding-right: 0 !important;
}
.p_r_1 {
    padding-right: 1px !important;
}
.p_r_2 {
    padding-right: 2px !important;
}
.p_r_3 {
    padding-right: 3px !important;
}
.p_r_4 {
    padding-right: 4px !important;
}
.p_r_5 {
    padding-right: 5px !important;
}
.p_r_6 {
    padding-right: 6px !important;
}
.p_r_7 {
    padding-right: 7px !important;
}
.p_r_8 {
    padding-right: 8px !important;
}
.p_r_9 {
    padding-right: 9px !important;
}
.p_r_10 {
    padding-right: 10px !important;
}
.p_r_15 {
    padding-right: 15px !important;
}
.p_r_20 {
    padding-right: 20px !important;
}
.p_r_25 {
    padding-right: 25px !important;
}
.p_r_30 {
    padding-right: 30px !important;
}
.p_r_35 {
    padding-right: 35px !important;
}
.p_r_40 {
    padding-right: 40px !important;
}
.p_r_45 {
    padding-right: 45px !important;
}
.p_r_50 {
    padding-right: 50px !important;
}
.p_r_60 {
    padding-right: 60px !important;
}
.p_r_70 {
    padding-right: 70px !important;
}
.b_t {
    border-top: 2px solid #f4f4f4 !important;
}
.b_b {
    border-bottom: 2px solid #f4f4f4 !important;
}
.b_t_0,
.no_b_t {
    border-top: none !important;
}
.b_b_0,
.no_b_b {
    border-bottom: none !important;
}
.b_a_1,
.ic_textbook.border,
.login_wrap .sec_wrap.sec_login .input.disabled {
    border: 1px solid #ccc;
}
.b_a_2 {
    border: 2px solid #ccc;
}
.b_a_3 {
    border: 3px solid #ccc;
}
.b_t_1 {
    border-top: 1px solid #ccc !important;
}
.b_t_2 {
    border-top: 2px solid #ccc !important;
}
.b_b_1 {
    border-bottom: 1px solid #ccc !important;
}
.b_b_2 {
    border-bottom: 2px solid #ccc !important;
}
.b_c_gray {
    border-color: #ccc !important;
}
.b_c_palegray {
    border-color: #ededed !important;
}
.b_c_blue {
    border-color: #00acee !important;
}
.b_c_light-blue {
    border-color: #44b8f1 !important;
}
.b_c_light-blue_2 {
    border-color: #29aae3 !important;
}
.bs_cb {
    box-sizing: content-box;
}
.fs_0 {
    font-size: 0 !important;
}
.fs_8 {
    font-size: 0.8rem !important;
}
.fs_9 {
    font-size: 0.9rem !important;
}
.fs_10 {
    font-size: 1rem !important;
}
.fs_11 {
    font-size: 1.1rem !important;
}
.fs_12 {
    font-size: 1.2rem !important;
}
.fs_13 {
    font-size: 1.3rem !important;
}
.fs_14 {
    font-size: 1.4rem !important;
}
.fs_15 {
    font-size: 1.5rem !important;
}
.fs_16,
.user_list_style_2.switch_large .user_list_item .name_area .kana {
    font-size: 1.6rem !important;
}
.fs_17 {
    font-size: 1.7rem !important;
}
.fs_18 {
    font-size: 1.8rem !important;
}
.fs_19 {
    font-size: 1.9rem !important;
}
.fs_20,
.user_list_style_2.switch_large .user_list_item .name_area .name {
    font-size: 2rem !important;
}
.fs_21 {
    font-size: 2.1rem !important;
}
.fs_22 {
    font-size: 2.2rem !important;
}
.fs_23 {
    font-size: 2.3rem !important;
}
.fs_24 {
    font-size: 2.4rem !important;
}
.fs_25 {
    font-size: 2.5rem !important;
}
.fs_26 {
    font-size: 2.6rem !important;
}
.fs_27 {
    font-size: 2.7rem !important;
}
.fs_28 {
    font-size: 2.8rem !important;
}
.fs_29 {
    font-size: 2.9rem !important;
}
.fs_30 {
    font-size: 3rem !important;
}
.fs_31 {
    font-size: 3.1rem !important;
}
.fs_32 {
    font-size: 3.2rem !important;
}
.fs_33 {
    font-size: 3.3rem !important;
}
.fs_34 {
    font-size: 3.4rem !important;
}
.fs_35 {
    font-size: 3.5rem !important;
}
.fs_36 {
    font-size: 3.6rem !important;
}
.fs_37 {
    font-size: 3.7rem !important;
}
.fs_38 {
    font-size: 3.8rem !important;
}
.fs_39 {
    font-size: 3.9rem !important;
}
.fs_40 {
    font-size: 4rem !important;
}
.fs_41 {
    font-size: 4.1rem !important;
}
.fs_42 {
    font-size: 4.2rem !important;
}
.fs_43 {
    font-size: 4.3rem !important;
}
.fs_44 {
    font-size: 4.4rem !important;
}
.fs_45 {
    font-size: 4.5rem !important;
}
.fs_46 {
    font-size: 4.6rem !important;
}
.fs_47 {
    font-size: 4.7rem !important;
}
.fs_48 {
    font-size: 4.8rem !important;
}
.fs_49 {
    font-size: 4.9rem !important;
}
.christmas_count .christmas_count_content p span,
.fs_50 {
    font-size: 5rem !important;
}
.fs_60 {
    font-size: 6rem !important;
}
.fs_80 {
    font-size: 8rem !important;
}
.fw_n {
    font-weight: 400 !important;
}
.fw_b {
    font-weight: 700 !important;
}
.error,
.error_wrap_2 .error,
.ui_notify_msg {
    font-weight: 400;
    line-height: 1.7;
    font-size: 1.5rem;
}
.lh_10 {
    line-height: 1 !important;
}
.lh_11 {
    line-height: 1.1 !important;
}
.lh_12 {
    line-height: 1.2 !important;
}
.lh_13 {
    line-height: 1.3 !important;
}
.lh_15 {
    line-height: 1.5 !important;
}
.lh_16 {
    line-height: 1.6 !important;
}
.lh_17 {
    line-height: 1.7 !important;
}
.lh_18 {
    line-height: 1.8 !important;
}
.lh_19 {
    line-height: 1.9 !important;
}
.lh_20 {
    line-height: 2 !important;
}
.lh_30 {
    line-height: 3 !important;
}
.t_i_20 {
    text-indent: -2em;
    padding-left: 2em;
}
.t_i_30 {
    text-indent: -3em;
    padding-left: 3em;
}
.ui_img,
.ui_new_review .review_content {
    display: inline-block;
    vertical-align: middle;
}
.ui_img.shape-circle,
.ui_step-circle {
    border-radius: 50%;
}
.ic_textbook.round_4 img,
.ui_img.shape-rounded,
.ui_step-round {
    border-radius: 4px;
}
.ui_img.shape-thumbnail {
    border: 1px solid #eee;
    border-radius: 2px;
    padding: 2px;
    background: #fff;
}
.ui_img.size-20 {
    width: 20px;
    height: 20px;
}
.ui_img.size-30 {
    width: 30px;
    height: 30px;
}
.ui_img.size-40 {
    width: 40px;
    height: 40px;
}
.ui_img.size-50 {
    width: 50px;
    height: 50px;
}
.ui_img.size-60 {
    width: 60px;
    height: 60px;
}
.ui_img.size-70 {
    width: 70px;
    height: 70px;
}
.ic_textbook.size_m_1,
.ic_textbook.size_m_1 img,
.ui_img.size-80 {
    width: 80px;
    height: 80px;
}
.ui_img.size-90 {
    width: 90px;
    height: 90px;
}
.ic_textbook.size_m_2,
.ic_textbook.size_m_2 img,
.ui_img.size-100 {
    width: 100px;
    height: 100px;
}
label {
    font-size: 1.4rem;
    vertical-align: middle;
}
.t_note {
    margin-top: 10px;
    font-size: 1.2rem;
    font-weight: 400;
    color: #999;
}
input[type="date"],
input[type="datetime-local"],
input[type="datetime"],
input[type="email"],
input[type="month"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="week"] {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
    box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.1) inset;
    font-size: 1.5rem;
    outline: 0;
    line-height: 23px;
}
.login_wrap .sec_wrap.sec_login .input.disabled dd,
.login_wrap .sec_wrap.sec_login .input.disabled dd input,
.login_wrap .sec_wrap.sec_login .input.disabled dt,
input.disable,
input.disabled,
input:disabled {
    background: #f5f5f5;
    pointer-events: none;
}
select {
    min-width: 100px;
    line-height: 24px;
    padding: 8px;
    border-radius: 4px;
    background: #fff;
    font: inherit;
    font-size: 1.5rem;
}
input[type="checkbox"] {
    color: #e50003;
    padding: 10px;
    cursor: pointer;
}
textarea {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
    box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.1) inset;
    font: inherit;
    font-size: 1.5rem;
    line-height: 1.3;
    min-height: 120px;
    resize: vertical;
}
input[type="button"] {
    color: #555;
    text-shadow: 1px 1px 1px #fff;
    border-radius: 5px;
    border: 1px solid #999;
    background: #ddd;
    background: -webkit-linear-gradient(#fcfcfc, #ddd);
    background: -moz-linear-gradient(#fcfcfc, #ddd);
    background: -o-linear-gradient(#fcfcfc, #ddd);
    background: linear-gradient(#fcfcfc, #ddd);
    margin: 10px auto;
    padding: 5px;
    font-size: 1.4rem;
}
.tab_contents input[type="date"],
.tab_contents input[type="datetime-local"],
.tab_contents input[type="datetime"],
.tab_contents input[type="email"],
.tab_contents input[type="month"],
.tab_contents input[type="password"],
.tab_contents input[type="search"],
.tab_contents input[type="tel"],
.tab_contents input[type="text"],
.tab_contents input[type="time"],
.tab_contents input[type="week"],
.tab_contents select,
.tab_contents textarea,
.teacher_search_form input[type="text"],
.teacher_search_form select.select_style_2.selected option,
input[type="checkbox"] + label.custom_check.check_color_white::before {
    background: #fff;
}
input.size_max,
select.size_max,
textarea.size_max {
    display: block;
    width: 100%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
input.size_1,
select.size_1 {
    display: block;
    width: 630px;
}
input.size_2,
select.size_2 {
    display: block;
    width: 200px;
}
input.size_3,
select.size_3 {
    display: block;
    width: 174px;
}
input.size_4,
select.size_4 {
    display: block;
    width: 360px;
}
.dl_form_style dd {
    padding: 0 0 10px;
}
.dl_form_style_2 dt {
    padding: 15px 0 10px;
    border-top: 2px solid #f5f5f5;
    font-weight: 700;
    color: #999;
}
.dl_form_style_2 dd {
    padding: 0 2em 10px;
    line-height: 1.5;
}
.table_style_1 td,
.table_style_1 th,
.table_style_2 td,
.table_style_2 th {
    padding: 10px;
    border: 1px solid #ccc;
}
.dl_form_style_2 dd:last-child,
.sec_wrap:last-child {
    padding-bottom: 0;
}
.dl_form_style_2 dt:first-child,
.sec_wrap.first,
.sec_wrap:first-child,
.tab_contents .sec_wrap:first-child {
    border-top: none;
    padding-top: 0;
}
.dl_form_style_3 dt,
.footer .footer_menu .menu_parent,
.smsAuthContainer .sms_fail_wrap .ttl {
    margin-bottom: 10px;
}
.dl_form_style_3 dd,
.footer .social_links {
    margin-bottom: 15px;
}
.error_wrap {
    background: #fff;
    padding: 15px 0;
    border: 2px dotted #eb8103;
    border-radius: 6px;
    margin: 20px auto;
}
.error_wrap.b_w-2 {
    border-width: 2px;
}
.error,
.ui_notify_msg {
    color: #555;
}
.error_wrap_2 {
    margin: 15px auto;
}
.error_wrap_2 .error {
    color: #ff0046;
}
.error_account_exist {
    background: #fff;
    padding: 15px 20px;
    text-align: left;
    border: 5px solid #ff0046;
    border-radius: 6px;
}
.error_account_exist > p {
    margin-top: 5px;
    line-height: 1.5;
}
.btn_center li:first-child,
.error_account_exist li:first-child,
.error_account_exist > p:first-child,
.notice_style ul li:first-child,
.smsAuthContainer .notice_smsmail dl dt:first-child,
.ui_notice_list ul li:first-child {
    margin-top: 0;
}
.error_account_exist ul,
.tb-copyright-area .tb-copyright-list li + li,
.ui_notice_list[class*="listmark"] ul li + li,
.ui_preset_textbook .col_center .cur_textbook_inner .cur_textbook_cell .chapter-name,
.ui_preset_textbook .col_center .cur_textbook_inner .cur_textbook_cell .sub-cat-name {
    margin-top: 5px;
}
.error_account_exist li {
    font-size: 1.5rem;
    margin-top: 5px;
    line-height: 1.5;
}
.error_account_exist li:before,
.ui_msg_style_1 .msg:before {
    content: "・";
}
.complete_msg_style_1 {
    border: 3px solid #16a9b2;
    padding: 15px 15px 8px;
    background: #fff;
    color: #16a9b2;
    margin-bottom: 15px;
}
.complete_msg_style_1 h4 {
    font-weight: 700;
    margin-bottom: 7px;
}
#message-board-sort,
.complete_msg_style_1 p,
.page_top_area_wrap {
    margin-bottom: 5px;
}
.complete_msg_style_2 {
    border: 2px solid #ccc;
    padding: 15px 15px 8px;
    background: #fff;
    border-radius: 4px;
    margin-bottom: 15px;
    color: #ed1515;
}
.complete_msg_style_2 h4 {
    font-size: 1.7rem;
    font-weight: 700;
    margin-bottom: 7px;
}
.complete_msg_style_2 p {
    margin-bottom: 2px;
}
.require:before {
    display: inline;
    content: "＊";
    color: #f14444;
    font-size: 1.3rem;
    padding-right: 0.1em;
    margin-left: -1em;
}
.notice_require {
    display: block;
    color: #999;
    font-size: 1.3rem;
    margin-bottom: 10px;
}
.notice_require .c_red {
    color: #f14444;
}
.ui_msg_style_1 {
    background: #999;
    color: #fff;
    border-radius: 5px;
    padding: 10px 20px;
    box-sizing: border-box;
}
.ui_msg_style_1 .msg {
    line-height: 1.5;
    font-size: 1.4rem !important;
    padding-left: 1em;
    text-indent: -1em;
}
.ui_msg_style_1 .msg.no_list_style {
    text-indent: 0;
    padding-left: 0;
}
.amazon_gift.header-v3 .logo::before,
.ui_msg_style_1 .msg.no_list_style:before,
.ui_preset_textbook .col_right .link_style_1:after {
    content: none;
}
.ui_msg_style_1 .msg > div {
    display: inline;
}
.footer .corporate_links ul li + li,
.ui_msg_style_1 .msg + .msg {
    margin-top: 10px;
}
.error-bg-red,
.ui_msg_style_1.bg-red {
    background: #f05444;
    color: #fff;
    padding: 15px 20px;
}
.ui_msg_style_1.bg-green {
    background: #16a9b1;
    color: #fff;
    padding: 15px 20px;
}
.ui_msg_style_1.bg-blue {
    background: #092846;
    color: #fff;
    padding: 15px 20px;
}
.ui_msg_style_1.bg-white {
    background: #fff;
    color: #f05444;
    padding: 15px 20px;
    border: 2px solid #f05444;
}
.ui_notify {
    background: #fff;
    padding: 15px 0;
    text-align: center;
    border: 5px solid #16a9b2;
    border-radius: 6px;
    margin: 20px auto;
}
.ui_notify--slide_down {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 68px;
    margin: auto;
    background: rgba(22, 169, 178, 0.95);
    box-shadow: 5px 0 5px 0 rgba(0, 0, 0, 0.4), 1px 0 1px 0 rgba(0, 0, 0, 0.2) inset;
    z-index: 1000;
}
.ui_notify--slide_down.orange {
    background: rgba(255, 134, 38, 0.95);
}
.ui_notify--slide_down .ui_notify_msg {
    text-align: center;
    line-height: 68px;
    font-size: 1.8rem;
    color: #fff;
    text-shadow: 1px 1px 1px #8c8c8c;
}
.header-v3 .header_inner .header_center_area .header_menu,
.tgl-inner:after,
.ui-rating_area .rating_table td:last-child {
    text-align: right;
}
.table_style_1,
.table_style_2 {
    width: 100%;
    border: 5px solid #eee;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.4);
}
.table_style_1 th {
    background: #555;
    color: #fff;
}
.table_style_1.column_2 th {
    width: 50%;
}
.table_style_1 td.price1 {
    background: #e8e8e8;
}
.table_style_1 td.price2 {
    background: #fffdcf;
}
.table_style_1 td.price2 img {
    vertical-align: middle;
    position: absolute;
    margin-left: -37px;
    margin-top: -5px;
    width: 30px;
}
.table_style_1 td.price2 em {
    color: #f80004;
    font-weight: 700;
    padding-left: 10px;
    font-size: 2rem;
    vertical-align: middle;
}
.table_style_2 th {
    background: #555;
    color: #fff;
    width: 150px;
}
.btn_style,
.btn_style a {
    color: #fff !important;
    text-decoration: none !important;
}
.btn_style {
    display: inline-block;
    min-width: 300px;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
    text-align: center;
    background: #eaeaea;
    background: -webkit-linear-gradient(#fefefe, #d7d7d7);
    background: -o-linear-gradient(#fefefe, #d7d7d7);
    background: -moz-linear-gradient(#fefefe, #d7d7d7);
    background: linear-gradient(#fefefe, #d7d7d7);
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);
    font-weight: 700;
    font-size: 2rem;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    position: relative;
}
.btn_style--radius {
    border-radius: 25px;
}
.btn_style:active {
    background: #f4f4f4;
    box-shadow: none;
    -webkit-transition-duration: 0;
    transition-duration: 0;
}
.btn_style a {
    display: block;
}
.btn_style img {
    display: inline;
    vertical-align: middle;
}
.btn_style.gray {
    color: #999 !important;
}
.btn_style.gray2,
.btn_style.gray:hover {
    color: #777 !important;
}
.btn_style.gray2:hover {
    color: #555 !important;
}
.btn_style.green {
    color: #16a9b2 !important;
}
.btn_style.green:hover {
    color: #18c3cc !important;
}
.btn_style.orange {
    color: #ff8626 !important;
}
.btn_style.orange:hover {
    color: #fe9643 !important;
}
.btn_style.yellow {
    color: #b2a516 !important;
}
.btn_style.yellow:hover {
    color: #ccbd18 !important;
}
.btn_style.red {
    color: #ed1543 !important;
}
.btn_style.red:hover {
    color: #ff0037 !important;
}
.btn_style.btn_blue_2,
.btn_style.btn_blue_3,
.btn_style.btn_free_ticket,
.btn_style.btn_green,
.btn_style.btn_green-2 {
    border: none !important;
    color: #fff !important;
    text-shadow: none;
}
.btn_style.btn_free_ticket {
    background: #f84f63;
}
.btn_style.btn_free_ticket:hover {
    background: #fb6879;
}
.btn_style.btn_border_onry:hover,
.btn_style.btn_callan:hover,
.footer .footer_logo a:hover img,
.footer .social_links .btn_footer:hover,
.header-v3 .header_menu .t_link a:hover,
.header-v3 .logo a:hover img,
.ui_article_list_wrap .ui_article_list .list_item a:hover {
    opacity: 0.8;
}
.btn_style.btn_green {
    background: #03c9a9;
}
.btn_style.btn_green:hover {
    background: #22d6b8;
}
.btn_style.btn_green-2 {
    background: #16a9b2;
}
.btn_style.btn_green-2:hover {
    background: #18c3cc;
}
.btn_style.btn_blue,
.btn_style.btn_color_live,
.enable_lesson > .btn_live_reserved.btn_lesson_status-live {
    background: #0bcafa;
    border: none !important;
    color: #fff !important;
    text-shadow: none;
}
.btn_style.btn_blue:hover,
.btn_style.btn_color_live:hover,
.enable_lesson > .btn_live_reserved.btn_lesson_status-live:hover {
    background: #63d9f7;
}
.btn_style.btn_blue_2 {
    background: #00acee;
}
.btn_style.btn_blue_2:hover {
    background: #2ac4ff;
}
.btn_style.btn_blue_3 {
    background: #00f;
}
.btn_style.btn_blue_3:hover {
    background: #6a6afa;
}
.btn_style.btn_black {
    background: #000 !important;
    border-radius: 4px;
}
.btn_style.btn_gray,
.btn_style.btn_orange,
.btn_style.btn_pink,
.btn_style.btn_red {
    border: none !important;
    color: #fff !important;
    text-shadow: none;
}
.btn_style.btn_black:hover {
    background: #fff !important;
    color: #000 !important;
}
.btn_style.btn_orange {
    background: #f1890e;
}
.btn_style.btn_orange:hover {
    background: #ffa436;
}
.btn_style.btn_pink {
    background: #ff3850;
}
.btn_style.btn_pink:hover {
    background: #ff4d61;
}
.btn_style.btn_red {
    background: #f05444;
}
.btn_style.btn_red:hover {
    background: #f77669;
}
.btn_style.btn_gray {
    background: #999;
}
.btn_style.btn_t_gray,
.btn_style.btn_t_gray_cancel {
    background: #fff;
    border: 1px solid #999;
    color: #999 !important;
}
.btn_style.btn_gray:hover {
    background: #b3b3b3;
}
.btn_style.btn_t_gray {
    text-shadow: none;
    pointer-events: none;
}
.btn_style.btn_t_gray_cancel {
    text-shadow: none;
}
.btn_style.btn_bright_green,
.btn_style.btn_darkblue,
.btn_style.btn_yellow {
    color: #fff !important;
    text-shadow: none;
}
.btn_style.border_white,
.btn_style.border_white:hover {
    border: 1px solid #fff !important;
}
.btn_style.btn_yellow {
    background: #b2a516;
    border: none !important;
}
.btn_style.btn_yellow:hover {
    background: #b2a516;
    opacity: 0.9;
}
.btn_style.btn_darkblue {
    background: #092846;
    border: none !important;
}
.btn_style.btn_darkblue:hover {
    background: #092846;
    opacity: 0.9;
}
.btn_style.btn_bright_green {
    background: #7fba00;
    border: none !important;
}
.btn_style.btn_bright_green:hover {
    background: #7fba00;
    opacity: 0.9;
}
.btn_style.btn_border {
    background: #fff !important;
    border: none !important;
    box-shadow: none !important;
    box-shadow: 0 0 0 3px #ccc inset !important;
    color: #ccc !important;
}
.btn_style.btn_border_blue {
    box-shadow: 0 0 0 3px #0bcafa inset !important;
    color: #0bcafa !important;
}
.btn_style.btn_border_green {
    box-shadow: 0 0 0 3px #03c9a9 inset !important;
    color: #03c9a9 !important;
}
.btn_style.btn_border_red {
    box-shadow: 0 0 0 3px #f0295d inset !important;
    color: #f0295d !important;
}
.btn_style.btn_border_orange {
    border: none;
    box-shadow: 0 0 0 2px #f1890e inset !important;
    color: #f1890e !important;
    background: #fff;
}
.btn_style.btn_border_orange:hover {
    box-shadow: 0 0 0 2px #ffa436 inset !important;
    color: #ffa436 !important;
}
.btn_style.btn_border_onry {
    background: inherit !important;
    box-sizing: border-box;
    box-shadow: none;
    text-shadow: none;
}
.btn_rating.on,
.btn_style.no_shadow,
.status_rating {
    box-shadow: none !important;
}
.btn_radio,
.purchase_item_style_1 table {
    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.2);
}
.btn_style.btn_clear {
    border: 1px solid #3a7ff3;
    color: #3a7ff3 !important;
    background: #fff;
    box-shadow: none;
    min-width: 200px;
}
.btn_style.btn_facebook,
.btn_style.btn_instagram,
.btn_style.btn_twitter {
    border: none !important;
    color: #fff !important;
    text-shadow: none;
}
.btn_style.btn_clear:hover {
    border: 1px solid #79a4ed;
    color: #79a4ed !important;
}
.btn_blue.preset_tb:hover {
    background: #2ac4ff !important;
}
.btn_style.btn_instagram {
    background: #da2f74;
}
.btn_style.btn_instagram:hover {
    background: #ff486f;
}
.btn_style.btn_twitter {
    background: #50abf1;
}
.btn_style.btn_twitter:hover {
    background: #50abf1ba;
}
.btn_style.btn_facebook {
    background: #3b5998;
}
.btn_style.btn_facebook:hover {
    background: #5877c3;
}
.btn.disable,
.btn.disabled,
.btn_style.disable,
.btn_style.disabled,
.btn_style:disabled {
    color: #ccc !important;
    background: #f4f4f4 !important;
    box-shadow: none !important;
    cursor: default;
    pointer-events: none;
}
.btn_style.pointer_ev_none {
    pointer-events: none;
}
.btn_style.disable:active,
.btn_style.disable:hover,
.btn_style.disabled:active,
.btn_style.disabled:hover,
.btn_style.submitting:active,
.btn_style.submitting:hover,
.btn_style:disabled:active,
.btn_style:disabled:hover {
    color: #ccc !important;
}
.btn_style.submitting {
    color: #ccc !important;
    background: #f4f4f4 !important;
    box-shadow: none;
    cursor: default;
}
.btn_style.submitting i {
    margin-right: 0.2em;
}
.btn_style.btn_trial {
    padding: 0 80px;
    box-sizing: border-box;
    white-space: nowrap;
    min-width: 610px;
    font-size: 3rem;
    border-radius: 40px;
    height: 80px;
    line-height: 85px;
    box-shadow: 0 6px 0 0 #c16e0b;
    font-weight: 700;
}
.btn_radio.on,
.btn_style.bxsh_n {
    box-shadow: none;
}
.btn_style.btn_trial.btn_pink {
    box-shadow: 0 6px 0 0 #d9162c;
}
.btn_trial_area .balloon_wrap:before {
    display: inline-block;
    vertical-align: middle;
    margin-right: 30px;
    content: url(../images/index/ver_3/balloon_l.png);
    transform: scale(0.8);
}
.btn_trial_area .balloon_wrap:after {
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    content: url(../images/index/ver_3/balloon_r.png);
    transform: scale(0.8);
}
.btn_trial_area .balloon_wrap.white:before {
    content: url(../images/index/ver_3/balloon_l_white.png);
}
.btn_trial_area .balloon_wrap.white:after {
    content: url(../images/index/ver_3/balloon_r_white.png);
}
.btn_style.btn_trial.trial_size_2 {
    min-width: 0;
    height: 70px;
    line-height: 70px;
    font-size: 2.5rem;
}
.btn_style.btn_trial.trial_size_3 {
    min-width: 300px;
    height: 50px;
    line-height: 50px;
    font-size: 1.8rem;
    padding: 0 20px;
}
.btn_half.size_2 .btn_style,
.btn_radio {
    min-width: 200px;
}
.btn_style.btn_trial.trial_size_3:after {
    font-size: 3rem;
    height: 55px;
    line-height: 50px;
    padding-left: 10px;
}
.btn_shine_sa,
.btn_style.btn_shine {
    position: relative;
    overflow: hidden;
}
.btn_shine_sa::after,
.btn_style.btn_shine::before {
    position: absolute;
    content: "";
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: 3s ease-in-out infinite btn_shine;
}
.btn_shine_ba{
    position: relative;
    overflow: hidden;
}
.btn_shine_ba::before{
    position: absolute;
    content: "";
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: 3s ease-in-out infinite btn_shine;
}
.btn_style.size_2,
.btn_style.size_3,
.btn_style.size_4 {
    height: 38px;
    line-height: 38px;
    font-size: 1.6rem;
    font-weight: 400;
}
@-webkit-keyframes btn_shine {
    0% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0.5;
    }
    81% {
        -webkit-transform: scale(4) rotate(45deg);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(50) rotate(45deg);
        opacity: 0;
    }
}
.btn_style.arrow_r:after {
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    color: #fff;
    font-size: 28px;
    top: 50%;
    margin-top: -26px;
    right: 10px;
}
.btn_style.size_2 {
    min-width: 330px;
}
.btn_style.size_3 {
    min-width: 120px;
}
.btn_style.size_4 {
    min-width: inherit;
}
.btn_style.size_5 {
    min-width: 100px;
    height: 32px;
    line-height: 32px;
    font-weight: 400;
    font-size: 1.5rem;
}
.btn_style.size_6 {
    min-width: 500px;
    height: 80px;
    line-height: 80px;
    font-size: 2.6rem;
}
.btn_style.size_7 {
    height: 32px;
    line-height: 32px;
    font-weight: 400;
    font-size: 1.4rem;
    width: 80px;
    min-width: auto;
    padding: 0;
}
.btn_style.size_8 {
    font-size: 2.5rem;
    line-height: 1;
    border-radius: 8px;
    box-sizing: border-box;
    height: auto;
    padding: 28px 30px;
}
.btn_style.size_block {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: auto;
    line-height: 1.6;
    white-space: normal;
    padding: 1rem;
}
.btn_style.btn_green.btn_bottom_shadow.size_8 {
    box-shadow: 0 6px 0 0 #03a98e;
}
.btn_style.btn_light_pink {
    background: #dea49c;
    border: none !important;
    color: #fff !important;
    text-shadow: none;
}
.btn_style.br_30 {
    border-radius: 30px;
}
.ui-corner-all {
    border-radius: 12px !important;
}
.ui-dialog {
    left: 50%;
    top: 50%;
    display: block;
    transform: translate(-50%, -50%);
    background: #232323;
    color: #fff;
}
.btn_radio,
.btn_radios li,
.nc_ui_checkbox_switch,
.tgl,
label.custom_radio {
    display: inline-block;
}
.local_nav li a.on,
.ui_step-green,
input[type="radio"]:checked + label.custom_radio.green:after {
    background: #16a9b2;
}
.ui-dialog .ui-dialog-content {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    border-bottom: 1px solid #535353;
    color: #fff;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: unset;
    margin: auto;
    width: 100%;
    display: flex;
    justify-content: center;
}
.ui-dialog .ui-dialog-buttonpane button {
    margin: 1rem;
    background: 0 0;
    border: none;
    color: #3778f1;
    font-size: 18px;
    text-align: center;
}
label.custom_radio {
    position: relative;
    cursor: pointer;
    margin: 0;
    padding: 0 0 0 22px;
    border-radius: 2px;
    text-align: center;
    line-height: 1;
}
label.custom_radio:before {
    position: absolute;
    content: "";
    top: 50%;
    left: -1px;
    width: 16px;
    height: 16px;
    margin-top: -11px;
    background: #eee;
    border-radius: 50%;
    border: 1px solid #ccc;
}
input[type="radio"]:checked + label.custom_radio:after {
    position: absolute;
    content: "";
    top: 50%;
    left: 3px;
    width: 10px;
    height: 10px;
    margin-top: -7px;
    border-radius: 50%;
    background: #999;
}
input[type="checkbox"]:disabled + label.custom_check,
input[type="radio"]:disabled + label.custom_radio {
    opacity: 0.5 !important;
    cursor: default !important;
}
input[type="checkbox"]:disabled + label.custom_check:before,
input[type="radio"]:disabled + label.custom_radio:before {
    cursor: default !important;
}
input[type="checkbox"]:disabled + label.custom_check:after,
input[type="radio"]:disabled + label.custom_radio:after {
    background: 0 0 !important;
}
input[type="checkbox"] + label.custom_check {
    position: relative;
    display: inline-block;
    font-size: 1.4rem;
    cursor: pointer;
    padding: 0 0 0 24px;
}
input[type="checkbox"] + label.custom_check::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background-color: #eee;
    border: 1px solid #ccc;
}
input[type="checkbox"]:checked + label.custom_check::after {
    content: "";
    position: absolute;
    top: 50%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    left: 3px;
    width: 16px;
    height: 8px;
    margin-top: -8px;
    border-left: 3px solid #16a9b2;
    border-bottom: 3px solid #16a9b2;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.nc_ui_checkbox_switch {
    position: relative;
    width: 50px;
    height: 26px;
}
.nc_ui_checkbox_switch input {
    opacity: 0;
    width: 0;
    height: 0;
}
.nc_ui_checkbox_switch .nc_ui_checkbox_switch_slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 13px;
    background-color: #ccc;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
.nc_ui_checkbox_switch .nc_ui_checkbox_switch_slider:before {
    position: absolute;
    content: "";
    height: 22px;
    width: 22px;
    border-radius: 50%;
    left: 2px;
    bottom: 2px;
    background-color: #fff;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}
.btn_min.back:before,
.btn_min.reply:before {
    width: 14px;
    height: 14px;
    margin-right: 0.3em;
    content: "";
}
.btn_radio,
.btn_style--flat {
    padding: 0 15px;
    -webkit-transition: 0.2s linear;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
}
.nc_ui_checkbox_switch input:checked + .nc_ui_checkbox_switch_slider {
    background-color: #4cd964;
}
.nc_ui_checkbox_switch input:checked + .nc_ui_checkbox_switch_slider:before {
    -webkit-transform: translateX(24px);
    -ms-transform: translateX(24px);
    transform: translateX(24px);
}
.btn_radios li {
    float: left;
    margin: 0 4px;
}
.btn_radio {
    height: 30px;
    line-height: 30px;
    background: #eaeaea;
    background: -webkit-linear-gradient(#fefefe, #d7d7d7);
    background: -o-linear-gradient(#fefefe, #d7d7d7);
    background: -moz-linear-gradient(#fefefe, #d7d7d7);
    background: linear-gradient(#fefefe, #d7d7d7);
    border: 1px solid #ccc;
    border-radius: 2px;
    font-weight: 400;
    font-size: 1.4rem;
    transition: 0.2s linear;
    color: #333;
}
.btn_radio.on {
    color: #ccc;
    background: #f4f4f4;
    cursor: default;
}
.tgl {
    position: relative;
    width: 60px;
    vertical-align: middle;
    -ms-user-select: none;
}
.tgl-label {
    display: block;
    overflow: hidden;
    cursor: pointer;
    border-radius: 20px;
}
.tgl-inner {
    display: block;
    width: 200%;
    margin-left: -100%;
    transition: margin 0.3s linear;
}
.tgl-inner:after,
.tgl-inner:before {
    display: block;
    float: left;
    width: 50%;
    height: 24px;
    padding: 0;
    line-height: 24px;
    font-size: 13px;
    font-weight: 700;
    box-sizing: border-box;
}
.tgl-inner:before {
    content: attr(data-on);
    padding-left: 10px;
    background-color: #16a9b2;
    color: #fff;
}
.tgl-2.color-gray input[type="radio"]:checked + .switch,
.tgl-inner:after,
.tgl.color-off-gray .tgl-inner:after,
.tgl.color-on-gray .tgl-inner:before {
    background-color: #888;
}
.tgl-inner:after {
    content: attr(data-off);
    padding-right: 10px;
    background-color: attr(data-off-color);
    color: #fff;
}
.tgl-switch {
    display: block;
    width: 16px;
    margin: 4px;
    background: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%;
    transition: 0.3s linear;
}
.btn_center .btn_style,
.btn_half {
    margin: 0 auto;
}
.pager li:first-child,
.pager span:first-child,
.tgl-checkbox:checked + .tgl-label .tgl-inner {
    margin-left: 0;
}
.tgl-checkbox:checked + .tgl-label .tgl-switch {
    left: 55%;
    left: calc(50% + 4px);
    left: -webkit-calc(50% + 4px);
}
.tgl-2.color-green input[type="radio"]:checked + .switch,
.tgl.color-off-green .tgl-inner:after,
.tgl.color-on-green .tgl-inner:before {
    background-color: #16a9b2;
}
.nc_common_level_color_dl dd.on,
.tgl-2.color-orange input[type="radio"]:checked + .switch,
.tgl.color-off-orange .tgl-inner:after,
.tgl.color-on-orange .tgl-inner:before {
    background-color: #f1890e;
}
.tgl-2.color-red input[type="radio"]:checked + .switch,
.tgl.color-off-red .tgl-inner:after,
.tgl.color-on-red .tgl-inner:before {
    background-color: #f84f63;
}
.tgl-2 {
    display: flex;
    align-items: stretch;
    justify-content: center;
}
.btn_min,
.btn_min.back:before,
.btn_s,
.btn_style--flat,
.nc-icon.icon-review {
    display: inline-block;
}
.tgl-2 label {
    display: flex;
    align-items: center;
    justify-content: center;
    float: left;
    cursor: pointer;
    width: 60px;
    margin: 0;
    padding: 10px;
    background-color: #f5f5f5;
    color: #555;
    font-size: 16px;
    text-align: center;
    line-height: 1;
    transition: 0.2s;
}
.tgl-2 label:first-of-type {
    border-radius: 3px 0 0 3px;
}
.tgl-2 label:last-of-type {
    border-radius: 0 3px 3px 0;
}
.tgl-2 input[type="radio"]:checked + .switch {
    background-color: #16a9b2;
    color: #fff;
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.1) inset;
}
.tgl-2.color-blue input[type="radio"]:checked + .switch {
    background-color: #0bcafa;
}
.btn_style--flat {
    min-width: 288px;
    background: #e0e0e0;
    border-radius: 8px;
    border: none;
    height: 56px;
    line-height: 58px;
    font-weight: 700;
    font-size: 2rem;
    color: #888;
    transition: 0.2s linear;
    text-shadow: none;
    box-shadow: 0 4px 0 #aaa;
}
.btn_min,
.page_breadcrumbs li a:hover {
    color: #999;
}
.btn_style--flat:hover {
    background: #ececec;
}
.btn_style--flat.btn_green {
    color: #fff;
    background: #16a9b1;
    box-shadow: 0 4px 0 #0f7a80;
}
.btn_style--flat.btn_green:hover {
    background: #16b7bf;
}
.btn_style--flat.desable {
    background: #ededed !important;
    color: #b8b8b8 !important;
    box-shadow: none !important;
    cursor: default !important;
}
.btn_center li,
.desc_lesson_status_circle > ul > li + li {
    margin-top: 15px;
}
.btn_half {
    width: 660px;
}
#rank_filter,
.btn_half li,
.need_download .need_download_inner .right_box,
.page_top_area_wrap > div.fr,
.sec_verisign figure,
.tb_selector_switch_wrap .tb_selector_switches .tb_selector_switch:last-child,
.ui_link_campaign .col_wrap .col_right .btn_style {
    float: right;
}
.btn_half .btn_style,
.teacher_search_form .dl_style_2.dl_course select {
    min-width: 288px;
}
.btn_half.size_2 {
    width: 490px;
    margin: 0 auto;
}
.btn_style.btn_white {
    background: #fff;
    color: #000 !important;
}
.btn_style.btn_white:hover {
    color: #000 !important;
    background: #fdfdfd;
}
.btn_min {
    min-width: 83px;
    height: 27px;
    line-height: 27px;
    padding: 0 8px;
    box-sizing: border-box;
    background: #f4f4f4;
    border: 1px solid #ccc;
    border-radius: 2px;
    text-align: center;
    font-size: 1.6rem;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.btn_min:hover,
.tab_menu ul li a:hover {
    -ms-filter: "alpha( opacity=60 )";
    opacity: 0.6;
}
.btn_min.tl {
    position: absolute;
    top: 20px;
    left: 20px;
}
.btn_min.tr {
    position: absolute;
    top: 20px;
    right: 20px;
}
.btn_min.bl {
    position: absolute;
    bottom: 20px;
    left: 20px;
}
.btn_min.br {
    position: absolute;
    bottom: 20px;
    right: 20px;
}
.btn_min.back:before {
    background: url(../images/icon/back.png) center center no-repeat;
    margin-left: -0.1em;
}
.btn_min.reply:before {
    display: inline-block;
    background: url(../images/icon/reply.png) center 1px no-repeat;
    margin-left: -0.3em;
}
.nc-icon.icon-review {
    vertical-align: middle;
    line-height: 1;
    width: 1em;
    height: 1em;
    background-image: url(../images/icon/review-link.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.disable > .nc-icon.icon-review,
.disabled > .nc-icon.icon-review,
[disabled="disabled"] > .nc-icon.icon-review {
    background-image: url(../images/icon/review-disabled.png);
}
.btn_s {
    padding: 9px 11px;
    color: #555;
    background: #d7d7d7;
    background: -webkit-linear-gradient(#fefefe, #d7d7d7);
    background: -o-linear-gradient(#fefefe, #d7d7d7);
    background: -moz-linear-gradient(#fefefe, #d7d7d7);
    background: linear-gradient(#fefefe, #d7d7d7);
    border: 1px solid #b4b4b4;
    border-radius: 4px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.7);
    font-size: 1.4rem;
    font-weight: 400;
    transition: 0.2s linear 0;
}
.btn_s:hover {
    -ms-filter: "alpha( opacity=70 )";
    opacity: 0.7;
}
.btn_s.disable {
    color: #aaa !important;
    background: #f4f4f4 !important;
    box-shadow: none;
    cursor: default;
}
.btn_s.disable:active,
.btn_s.disable:hover {
    -ms-filter: "alpha( opacity=100 )";
    opacity: 1;
    color: #aaa !important;
}
.page_wrap {
    width: 100%;
    margin: 0;
    padding: 10px 0 0;
    background: #fff;
    clear: both;
    font-size: 1.5rem;
    overflow: hidden;
}
.common_inner,
.footer_breadcrumb > .footer_breadcrumb_inner,
.page_inner {
    width: 960px;
    margin: 0 auto;
}
.page_inner {
    clear: both;
}
.container {
    position: relative;
    margin: 10px auto;
    padding: 30px 10px;
    width: 100%;
    box-sizing: border-box;
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
    clear: both;
}
.container_2 {
    position: relative;
    width: 870px;
    margin: 0 auto;
    background: #f4f4f4;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    padding: 20px;
    border: 1px solid #fff;
}
.container-v2,
.header_wrap {
    background-color: #fff;
}
.sec_wrap,
.sub_sec {
    border-top: 2px solid #f5f5f5;
}
.container_complete {
    padding: 80px;
    width: 800px;
}
.container_complete .msg_complete {
    margin-bottom: 50px;
}
.container-v2 {
    position: relative;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
    border-radius: 5px;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
    margin: 0 auto;
    clear: both;
}
.sec_wrap {
    width: 920px;
    margin: 0 auto;
    padding: 25px 0;
    box-sizing: border-box;
}
#selected-files,
.sec_wrap .btn_wrap,
.sub_sec {
    padding: 10px 0;
}
.sec_wrap .sec_inner {
    width: 660px;
    margin: 0 auto;
    padding: 10px 0;
}
.sub_sec {
    width: 660px;
    margin: 0 auto;
}
.sub_sec.first,
.sub_sec:first-child,
.sub_sec:first-of-type,
.tab_contents .sub_sec:first-child,
.tb_custom_selector .options .item:first-child {
    border-top: none;
}
.dropdown_btn_wrap .dropdown_btn_list > li:not(:first-child),
.global_menu_corporate .menu_dropdown_list > .menu_item:not(:first-child),
.tab_contents .sec_wrap,
.tab_contents .sub_sec {
    border-top: 1px solid #ccc;
}
.sec_wrap:first-child .sub_sec:first-child {
    padding-top: 0;
}
.global_menu_inner .simple_notice_list > ul > div > li p,
.header-v3 .simple_notice_list > ul > div > li p,
.sec_wrap p,
.smsAuthContainer .desc,
.ui_article_list_wrap .ui_article_list .list_item dl dd {
    line-height: 1.5;
}
.tab_contents .sec_wrap {
    width: 880px;
}
.page_top_area_wrap > .back_link,
.teacher_search_form .dl_style_2 dt.width_2 {
    width: 100px;
}
.page_breadcrumbs li {
    float: left;
    height: 30px;
    line-height: 30px;
    margin-right: 10px;
}
.page_breadcrumbs li:before {
    content: "＞";
    display: inline;
    margin-right: 10px;
    font-size: 1.5rem;
}
.page_breadcrumbs li.current {
    font-weight: 700;
    font-size: 1.7rem;
}
.page_breadcrumbs li a {
    color: #555;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.nmg_top {
    margin-top: -34px;
}
.header-v3 {
    position: relative;
    width: 100%;
    z-index: 2000;
    margin: 0 auto;
    clear: both;
}
.header-v3.scrolled {
    margin-bottom: 79px;
}
.header-v3 .header_inner {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
.header-v3 .header_inner .header_contents {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 1032px;
    padding: 14px 0 8px;
}
.header-v3 .header_inner .header_left_area {
    max-width: 400px;
    margin-right: auto;
}
.header-v3 .header_inner .header_left_area .header_h1 {
    font-size: 1.4rem;
    font-weight: 700;
    color: #555;
    line-height: 1.5;
    margin-top: 5px;
}
.header-v3 .header_inner .header_contents-logout .header_left_area {
    width: 600px;
    margin-right: auto;
}
.campaign_lesson_count .campaign_lesson_count_back img,
.christmas_count .christmas_count_back img,
.fp_episode .fp_episode_item .fp_episode_content .fp_episode_img img,
.global_menu.page-detail .global_menu_inner .logo_wrap .logo_img,
.global_menu.scrolled .global_menu_inner .logo_wrap .logo_img,
.header-v3 .header_inner .header_center_area,
.loader_overlay_circle img,
.tb_custom_selector .item_inner .tb_rank_wrap.rank-new > img,
.teacher_search_form dl.dl_feature,
.ui_article_list_wrap .ui_article_list .list_item figure img {
    width: 100%;
}
.footer .footer_logo,
.header-v3 .header_inner .header_center_area .header_menu > ul.t_link_wrap {
    margin-bottom: 12px;
}
.header-v3 .logo img {
    display: block;
    width: 226px;
    height: auto;
    opacity: 1;
    transition: 0.2s linear;
}
.header-v3 h1 {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.header-v3 .header_h1 {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.header-v3 .header_menu {
    font-size: 1.3rem;
    color: #fff;
}
.header-v3 .header_menu a {
    position: relative;
    color: #1f1f1f;
    font-size: 1.6rem;
    z-index: 101;
    display: block;
    line-height: 130%;
    font-weight: 700;
}
.header-v3 .header_menu a.btn_style {
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    box-sizing: border-box;
    width: auto;
    min-width: 80px;
}
.header-v3 .header_menu > ul {
    font-size: 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 70px;
}
.header-v3 .header_menu > ul > li {
    position: relative;
    vertical-align: middle;
    font-size: 1.6rem;
    text-decoration: none;
    color: #717171;
}
.header-v3 .simple_notice_area,
.header-v3 .simple_notice_area > ul > li {
    font-size: 1.4rem;
    display: inline-block;
}
.header-v3 .header_menu .t_link a,
.header-v3 .header_menu .trigger_translation,
.header-v3 .header_menu .trigger_translation p {
    transition: 0.2s linear;
}
.header-v3 .header_inner .header_center_area .header_menu > ul.t_link_wrap .t_link + .t_link {
    padding-left: 15px;
    margin-left: 15px;
}
.header-v3 .header_menu .t_link + .t_link:before,
.header-v3 .header_menu-login > ul > li + li:before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    display: block;
    content: "";
    width: 1px;
    height: 15px;
    background: rgba(255, 255, 255, 0.5);
}
.footer .social_links li + li,
.header-v3 .header_inner .header_center_area .header_menu > ul.btn_wrap li + li {
    margin-left: 10px;
}
.header-v3 .header_menu .trigger_translation:hover,
.header-v3 .header_menu .trigger_translation:hover p {
    transition: 0.2s linear;
    opacity: 0.6;
}
.header-v3 .header_menu .googletranslate_wrap {
    display: none;
    position: absolute;
    z-index: 1100;
    right: -2px;
    top: calc(100% + -15px);
    padding-top: 15px;
}
.header-v3 .header_menu .goog-logo-link,
.header-v3 .header_menu .goog-logo-link:active,
.header-v3 .header_menu .goog-logo-link:hover,
.header-v3 .header_menu .goog-logo-link:link,
.header-v3 .header_menu .goog-logo-link:visited {
    color: #444;
}
.header-v3 .header_menu .googletranslate_wrap .translate_element {
    background: #fff;
    padding: 1rem 1.5rem;
    box-shadow: 0 0 1px 0 #000;
}
.header-v3 .header_menu > ul > li .header_account {
    display: flex;
    gap: 7px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
}
.header-v3 .header_menu > ul > li .header_menu_icon {
    padding-left: 27px;
}
.header-v3 .header_menu > ul > li .header_menu_icon.icon_menu_heart {
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/icon_heart_black.svg) left center no-repeat;
    padding-top: 4px;
    padding-bottom: 5px;
}
.header-v3 .header_menu > ul > li .header_menu_icon.icon_menu_line {
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/icon_line_black_v2.svg) left center no-repeat;
    padding-top: 4px;
    padding-bottom: 5px;
}
.header-v3 .header_menu > ul > li .header_menu_icon.icon_menu_thumb {
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/icon_user_black.svg) left center no-repeat;
    padding-top: 4px;
    padding-bottom: 5px;
}
.header-v3 .header_menu > ul > li .header_account .thumb {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border-radius: 50%;
    width: 21px;
    height: 21px;
    opacity: 1;
    object-fit: cover;
}
.header-v3 .header_menu > ul > li .user_menu_wrap .user_name {
    background-repeat: no-repeat;
    background-size: contain;
    font-size: 1.6rem;
    letter-spacing: normal;
    display: block;
    line-height: 130%;
    height: 24px;
    border-radius: 12px;
    overflow: hidden;
    width: 24px;
}
.global_menu.page-detail .global_menu_inner .header_menu .ic_home,
.global_menu.scrolled .global_menu_inner .header_menu .ic_home,
.header-v3 .header_menu .ic_home {
    font-size: 18px;
}
.header-v3 .header_menu > ul > li .menu_wrap {
    padding-bottom: 1rem;
    margin-bottom: -1rem;
}
.header-v3 .header_menu > ul > li .user_menu_wrap {
    padding-bottom: 1rem;
    margin-bottom: -1rem;
    display: flex;
    align-items: center;
}
.header-v3 .header_menu > ul > li .user_panel_wrap {
    display: none;
    background: #fff;
    color: #092846;
    position: absolute;
    width: 214px;
    z-index: 100;
    border: 1px solid #eee;
    top: calc(100% + 10px);
    padding: 5px 0;
    left: 50%;
    transform: translate(-50%, 0);
}
.global_menu.page-detail .global_menu_inner .user_panel_wrap:after,
.global_menu.page-detail .global_menu_inner .user_panel_wrap:before,
.global_menu.scrolled .global_menu_inner .user_panel_wrap:after,
.global_menu.scrolled .global_menu_inner .user_panel_wrap:before,
.header-v3 .header_menu > ul > li .user_panel_wrap:after,
.header-v3 .header_menu > ul > li .user_panel_wrap:before {
    content: "";
    width: 0;
    height: 6px;
    display: block;
    border: 13px solid transparent;
    border-bottom-color: #fff;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    margin: auto;
}
.header-v3 .header_menu > ul > li .user_panel_wrap:after {
    bottom: calc(100% + 1px);
    border-bottom-color: #eee;
    z-index: -1;
}
.header-v3 .user_panel_wrap .user_panel_link {
    display: block;
    text-align: center;
    padding: 15px 0;
    color: #092846;
    transition: 0.2s linear;
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li .account:hover,
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links > li a:hover,
.header-v3 .header_menu > ul > li .account:hover,
.header-v3 .user_panel_wrap .user_panel_link:hover,
.sns_btn_wrap .btn_style_sns:hover,
.ui_new_review .link_review_all a:hover {
    opacity: 0.6;
}
.footer_select_lang_wrap,
.func_dropdown_wrap,
.global_menu.page-detail .global_menu_inner .user_panel_wrap > ul > li,
.global_menu.scrolled .global_menu_inner .user_panel_wrap > ul > li,
.global_menu_corporate .menu_list > .menu_item.dropdown,
.header-v3 .header_menu > ul > li .user_panel_wrap > ul > li,
.tb-copyright-area .tb-copyright-list li,
.tb_recommend_links .trigger_tooltip--tb_recommend,
.tb_selector_switch_wrap,
.teacher_search_form,
.teacher_search_form .dl_style_1 .ic_calendar,
.teacher_search_form .dl_style_1 .ic_clock,
.teacher_search_form .dl_style_2.dl_age dd .cd_age,
.teacher_search_form .dl_style_2.dl_conditions dd .cd_country {
    position: relative;
}
.global_menu.page-detail .global_menu_inner .user_panel_wrap > ul > li + li:before,
.global_menu.scrolled .global_menu_inner .user_panel_wrap > ul > li + li:before,
.header-v3 .header_menu > ul > li .user_panel_wrap > ul > li + li:before {
    content: "";
    width: 78%;
    height: 1px;
    position: absolute;
    top: -2px;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #eee;
}
.global_menu_inner .simple_notice_panel_wrap .panel_layer,
.header-v3 .header_menu > ul > li .user_panel_wrap .panel_layer,
.header-v3 .simple_notice_panel_wrap .panel_layer,
.select_age_layer,
.select_country_layer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li.family_list,
.header-v3 .header_menu > ul > li .user_panel_wrap > ul > li.family_list {
    padding-top: 15px;
    max-height: calc(100vh - 300px);
    overflow-y: scroll;
}
.user_panel_wrap > ul > li.family_list::-webkit-scrollbar-track {
    background-color: transparent;
}
.user_panel_wrap > ul > li.family_list::-webkit-scrollbar {
    width: 6px;
}
.user_panel_wrap > ul > li.family_list::-webkit-scrollbar-thumb {
    border-radius: 3px;
    background-color: rgba(255, 255, 255, 0.5);
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li .account,
.header-v3 .header_menu > ul > li .account {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 12px;
    transition: 0.2s linear;
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li .account + .account,
.header-v3 .header_menu > ul > li .account + .account {
    margin-top: 13px;
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li .account .thumb,
.header-v3 .header_menu > ul > li .account .thumb {
    width: 23px;
    height: 23px;
    border-radius: 50%;
}
.global_menu .global_menu_inner .user_panel_wrap > ul > li .account .name,
.header-v3 .header_menu > ul > li .account .name {
    font-size: 1.2rem;
    margin-left: 7px;
    color: #092846;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.header-v3 .header_menu .ic_camp {
    width: 20px;
    height: 15px;
    margin-right: 5px;
    vertical-align: bottom;
    background: url(../images/icon/icon_camp.png) center center no-repeat;
}
.header-v3 .header_menu .ic_coin {
    font-size: 16px;
    position: relative;
    top: -2px;
}
.header-v3 .header_menu .ic_coin .header_notif_coin {
    position: absolute;
    top: -3px;
    right: -2px;
    background: #f84f63;
    padding: 2px 5px;
    border-radius: 2px;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
}
.header-v3 .header_menu .check_header_notif_coin {
    padding-right: 10px;
}
.header-v3 .header_menu .header_cnt_coin {
    font-size: 16px;
}
.header-v3 .header_menu .free_ticket .free_ticket_name {
    font-size: 1.3rem;
    text-decoration: underline;
    line-height: 1.5;
}
.header-v3 .header_menu .free_ticket .free_ticket_name + .badge {
    top: -6px;
}
.header-v3 .header_menu-logout {
    margin-top: -4px;
}
.header-v3 .header_menu-logout > ul > li + li {
    border-left: none;
    padding-left: 0;
}
.header-v3 .simple_notice_area {
    vertical-align: middle;
    margin-left: 20px;
}
.footer .social_links ul,
.header-v3 .simple_notice_area > ul,
.switch_btn.switch_btn-3 {
    font-size: 0;
}
.header-v3 .simple_notice_area > ul > li + li {
    margin-left: 15px;
}
.global_menu.page-detail .global_menu_inner .user_menu_wrap,
.global_menu.scrolled .global_menu_inner .user_menu_wrap,
.header-v3 .simple_notice_wrap {
    position: relative;
    cursor: pointer;
}
.header-v3 .simple_notice_wrap .btn_simple_notice {
    position: relative;
    z-index: 101;
}
.header-v3 .simple_notice_wrap .btn_simple_notice i {
    font-size: 22px;
    color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
}
.header-v3 .simple_notice_wrap .btn_simple_notice .badge {
    position: absolute;
    top: -10px;
    right: -10px;
    background: #f84f63;
    padding: 2px 5px;
    border-radius: 2px;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
}
.global_menu_inner .simple_notice_panel_wrap,
.header-v3 .simple_notice_panel_wrap {
    display: none;
    position: absolute;
    top: -14px;
    right: -10px;
    width: 340px;
    padding-top: 50px;
    z-index: 100;
}
.global_menu_inner .simple_notice_panel,
.header-v3 .simple_notice_panel {
    position: relative;
    background: #fff;
    color: #555;
    border: 1px solid #eee;
    text-align: left;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.2);
}
.global_menu_inner .simple_notice_panel:after,
.global_menu_inner .simple_notice_panel:before,
.header-v3 .simple_notice_panel:after,
.header-v3 .simple_notice_panel:before {
    bottom: 100%;
    right: 8px;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.global_menu_inner .simple_notice_panel:after,
.header-v3 .simple_notice_panel:after,
.ui_step_lesson .step_navi ul li .tooltip:after {
    border-color: rgba(255, 255, 255, 0);
    border-bottom-color: #fff;
    border-width: 10px;
    margin-left: -10px;
}
.global_menu_inner .simple_notice_panel:before,
.header-v3 .simple_notice_panel:before {
    border-color: rgba(238, 238, 238, 0);
    border-bottom-color: #eee;
    border-width: 11px;
    margin-left: -11px;
}
.global_menu_inner .simple_notice_panel .notice_panel_header,
.header-v3 .simple_notice_panel .notice_panel_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.4rem;
    font-weight: 400;
    padding: 11px;
    border-bottom: 1px solid #eee;
    line-height: 1.4;
}
.footer .footer_menu a,
.global_menu.page-detail .global_menu_inner .gl_menu_right > ul > li.user_coin_wrap a,
.global_menu.scrolled .global_menu_inner .gl_menu_right > ul > li.user_coin_wrap a,
.global_menu_inner .simple_notice_panel .notice_panel_ttl,
.header-v3 .simple_notice_panel .notice_panel_ttl {
    color: #092846;
}
.global_menu_inner .simple_notice_list,
.header-v3 .simple_notice_list {
    max-height: 413px;
    overflow: scroll;
    overflow-x: hidden;
    font-size: 1.4rem;
    background: #fff;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li a:hover,
.global_menu_inner .simple_notice_list > ul > div > li a:hover,
.global_menu_inner .simple_notice_list > ul > div > li.unread,
.header-v3 .simple_notice_list > ul > div > li a:hover,
.header-v3 .simple_notice_list > ul > div > li.unread {
    background: #fffcee;
}
.global_menu_inner .simple_notice_list > ul > div > li + li,
.header-v3 .simple_notice_list > ul > div > li + li {
    border-top: 1px solid #eee;
}
.global_menu_inner .simple_notice_list > ul > div > li a,
.header-v3 .simple_notice_list > ul > div > li a {
    display: block;
    color: inherit;
    transition: 0.2s linear;
}
.global_menu_inner .simple_notice_list > ul > div > li .col_left,
.header-v3 .simple_notice_list > ul > div > li .col_left {
    width: 50px;
    padding: 10px;
}
.global_menu_inner .simple_notice_list > ul > div > li .col_right,
.header-v3 .simple_notice_list > ul > div > li .col_right {
    width: 200px;
    padding: 0;
}
.global_menu_inner .simple_notice_list > ul > div > li .thumb img,
.header-v3 .simple_notice_list > ul > div > li .thumb img {
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    opacity: 1;
}
.global_menu_inner .simple_notice_list > ul > div > li .thumb_over img,
.header-v3 .simple_notice_list > ul > div > li .thumb_over img {
    position: relative;
    width: 18px;
    height: 18px;
    left: 30px;
    bottom: 10px;
}
.global_menu_inner .simple_notice_list > ul > div > li .contents_box,
.header-v3 .simple_notice_list > ul > div > li .contents_box {
    width: 250px;
    padding: 7px 0 5px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li em,
.global_menu_inner .simple_notice_list > ul > div > li .ttl,
.header-v3 .simple_notice_list > ul > div > li .ttl,
.ui_link_campaign em,
.ui_step_lesson em {
    font-weight: 700;
}
.global_menu_inner .simple_notice_list > ul > div > li .datetime,
.header-v3 .simple_notice_list > ul > div > li .datetime {
    font-size: 1.1rem;
    color: #aaa;
}
.global_menu_inner .simple_notice_list > ul > div > li .ic:before,
.header-v3 .simple_notice_list > ul > div > li .ic:before {
    display: inline-block;
    font-family: fontAwesome;
    font-weight: 400;
}
.global_menu_inner .simple_notice_list > ul > div > li .ic-alert:before,
.header-v3 .simple_notice_list > ul > div > li .ic-alert:before {
    content: "\f071";
}
.global_menu_inner .simple_notice_list > ul > div > li .ic-reply:before,
.header-v3 .simple_notice_list > ul > div > li .ic-reply:before {
    content: "\f112";
}
.global_menu_inner .simple_notice_list .btn_notice_more,
.header-v3 .simple_notice_list .btn_notice_more {
    display: block;
    width: 100%;
    text-align: center;
    padding: 15px;
    box-sizing: border-box;
    background: #bbb;
    color: #fff;
    transition: 0.2s linear;
    cursor: pointer;
}
.global_menu_inner .simple_notice_list .btn_notice_more:hover,
.header-v3 .simple_notice_list .btn_notice_more:hover {
    background: #ccc;
}
.header-v3.header_corp .header_inner {
    width: 1100px;
}
.header-v3 > .header_top_area {
    position: relative;
    z-index: 500;
    border-bottom: 2px solid rgba(219, 219, 219, 0.6);
}
@media only screen and (max-width: 1420px) {
    .header-v3 .header_inner {
        padding-left: 20px;
        padding-right: 35px;
    }
}
.global_menu {
    position: relative;
    background: #fff;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.5);
}
.global_menu .global_menu_inner {
    width: 1200px;
    margin: 0 auto;
    position: relative;
}
.global_menu .menu_parent {
    width: 960px;
    margin: auto;
}
@media only screen and (max-width: 1259px) {
    .header-v3 .header_inner.fixed {
        position: fixed;
        z-index: 100;
        left: 0;
        top: 0;
    }
    .header-v3 .header_inner {
        width: 100vw;
        min-width: 900px;
        margin: 0 auto;
        padding-left: 20px;
        padding-right: 35px;
    }
    .header-v3 .header_menu .googletranslate_wrap {
        right: 15px;
    }
    .header_img {
        width: 1260px;
        margin: 0 auto;
    }
    .global_menu .global_menu_inner {
        margin: 0;
    }
}
.global_menu .menu_parent > ul {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.global_menu .menu_parent > ul > li {
    display: table-cell;
    text-align: center;
}
.global_menu .menu_parent > ul > li .menu_parent_ttl {
    position: relative;
    display: block;
    height: 79px;
    font-size: 1.4rem;
    color: #092846;
    cursor: pointer;
    background-color: #fff;
    background-position: center 10px;
    background-size: auto;
    background-repeat: no-repeat;
    transition: 0.2s linear, height 0;
    z-index: 10;
    box-sizing: border-box;
    border-bottom: 4px solid #fff;
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl,
.global_menu .menu_parent > ul > li.active .menu_parent_ttl .text,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl .text,
.global_menu_corporate .menu_list > .menu_item.on > .menu_item_link {
    color: #f1890e;
}
.global_menu .menu_parent > ul > li .menu_parent_ttl .text {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    left: 0;
    right: 0;
    bottom: 4px;
    text-align: center;
    color: #092846;
}
.global_menu .menu_parent > ul > li .menu_parent_ttl-home {
    background-image: url(../images/gnavi/ic_home.svg);
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl-home,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl-home {
    background-image: url(../images/gnavi/ic_home-h.svg);
}
.global_menu .menu_parent > ul > li .menu_parent_ttl-guide {
    background-image: url(../images/gnavi/ic_guide.svg);
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl-guide,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl-guide {
    background-image: url(../images/gnavi/ic_guide-h.svg);
}
.global_menu .menu_parent > ul > li .menu_parent_ttl-study {
    background-image: url(../images/gnavi/ic_study.svg);
    background-position: center 14px;
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl-study,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl-study {
    background-image: url(../images/gnavi/ic_study-h.svg);
}
.global_menu .menu_parent > ul > li .menu_parent_ttl-teacher {
    background-image: url(../images/gnavi/ic_search.svg);
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl-teacher,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl-teacher {
    background-image: url(../images/gnavi/ic_search-h.svg);
}
.global_menu .menu_parent > ul > li .menu_parent_ttl-other {
    background-image: url(../images/gnavi/ic_etc.svg);
    background-position: center 22px;
}
.global_menu .menu_parent > ul > li.active .menu_parent_ttl-other,
.global_menu .menu_parent > ul > li:hover .menu_parent_ttl-other {
    background-image: url(../images/gnavi/ic_etc-h.svg);
}
.global_menu .menu_panel_wrap {
    display: none;
    position: absolute;
    margin: 0 auto;
    z-index: 100;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 1000px;
}
.global_menu .menu_panel_wrap-w1 {
    width: 960px;
    right: 0;
    margin: 0 auto;
}
.global_menu .menu_panel_wrap-w2 {
    margin: auto;
}
.global_menu .menu_parent > ul > li .menu_panel_wrap-left {
    right: auto;
    left: 0;
    transform: none;
}
.global_menu .menu_parent > ul > li .menu_panel_wrap-right {
    left: auto;
    right: 0;
    transform: none;
}
.global_menu .menu_panel {
    position: relative;
    text-align: left;
}
.global_menu .menu_panel:after,
.global_menu .menu_panel:before {
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.global_menu .menu_panel:after {
    border-bottom-color: #fff;
    border-width: 10px;
    margin-left: -10px;
}
.global_menu .menu_panel_wrap-w1 .menu_panel:after,
.global_menu .menu_panel_wrap-w1 .menu_panel:before {
    left: auto;
    right: 70px;
}
.global_menu .menu_parent > ul > li:first-child .menu_panel_wrap-w2 .menu_panel:after,
.global_menu .menu_parent > ul > li:first-child .menu_panel_wrap-w2 .menu_panel:before {
    left: 95px;
}
.global_menu .menu_parent > ul > li:last-child .menu_panel_wrap-w2 .menu_panel:after,
.global_menu .menu_parent > ul > li:last-child .menu_panel_wrap-w2 .menu_panel:before {
    left: 140px;
}
.global_menu .menu_panel .menu_panel_inner {
    padding: 0;
    border: 1px solid #ccc;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    max-width: 1000px;
    background: #fff;
}
.global_menu .menu_panel .menu_panel_inner .category_table_wrap {
    margin: 0 -15px;
}
.global_menu .menu_panel .menu_panel_inner .category_table {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-spacing: 15px 0;
}
.footer .footer_inner .col_left,
.footer .footer_inner .col_right,
.global_menu .menu_panel .menu_panel_inner .category_table_wrap .category_cell {
    display: table-cell;
}
.global_menu .menu_panel .menu_panel_inner .menu_category_ttl {
    font-size: 1.4rem;
    font-weight: 400;
    border-bottom: 2px solid #092846;
    padding: 10px 0;
    margin: 0 0 10px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li a {
    display: block;
    padding: 10px 10px 10px 15px;
    font-size: 1.3rem;
    color: #092846;
    line-height: 1.5;
    transition: 0.2s linear;
    box-sizing: border-box;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li:first-child a {
    border-radius: 4px 4px 0 0;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li:last-child a,
.local_nav li:last-child a {
    border-radius: 0 0 4px 4px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li .cnt {
    margin-left: 5px;
    color: #999;
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li .cnt:before {
    display: inline;
    content: "(";
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li .cnt:after {
    display: inline;
    content: ")";
}
.global_menu .menu_panel .menu_panel_inner .menu_child > ul > li .c_red {
    color: #f84f63;
}
.global_menu .global_menu_inner .menu_parent .slide_line_bottom {
    position: absolute;
    bottom: 0;
    height: 4px;
    background-color: #f1890e;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    z-index: 10;
    pointer-events: none;
}
.global_menu .menu_panel .menu_panel_inner .menu_child {
    margin: auto;
    display: flex;
    justify-content: space-evenly;
    color: #092846;
}
.global_menu .menu_panel .menu_panel_inner .menu_child.menu_links_3 {
    justify-content: space-evenly;
    width: 1000px;
    background: #fff;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap {
    width: 250px;
    padding: 30px 0 20px;
    box-sizing: border-box;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links_title {
    font-size: 1.8rem;
    font-weight: 700;
    border-left: 4px solid #f1890e;
    box-sizing: border-box;
    padding-left: 10px;
    margin-bottom: 10px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links {
    padding-top: 1rem;
    border-top: 1px solid #f1890e;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links > li {
    position: relative;
    font-size: 1.4rem;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links > li:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border: 4px solid transparent;
    border-left-color: #f1890e;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    box-sizing: border-box;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links > li + li,
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap.menu_links_wrap-2 .menu_links > li:nth-child(n + 3) {
    margin-top: 0.5rem;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links > li a {
    color: #092846;
    padding: 10px;
    display: block;
    line-height: 1.2;
    transition: 0.2s linear;
    white-space: nowrap;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links + .menu_links_title {
    margin-top: 50px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap.menu_links_wrap-2 {
    width: 530px;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap.menu_links_wrap-2 .menu_links > li {
    display: inline-block;
    width: 49%;
    margin-top: 0;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links .menu_links_dropdown.active:before {
    bottom: unset;
    top: 16px;
    border-top-color: #f1890e;
    border-left-color: #fff;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links .menu_links_dropdown .menu_links_dropdown_submenu {
    padding-left: 10px;
    display: none;
}
.footer_select_lang_wrap a,
.func_dropdown_wrap.on > .func_dropdown_list,
.func_dropdown_wrap.on > .func_dropdown_overlay,
.global_menu .global_menu_inner .logo_wrap_page-detail,
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links .menu_links_dropdown.active > .menu_links_dropdown_submenu,
.global_menu_corporate .menu_list > .menu_item,
.need_download .need_download_inner .right_box ul li a,
.select_country_form .table_country,
.select_country_form .table_country tbody,
.select_country_form .table_country td,
.select_country_form .table_country th,
.select_country_form .table_country tr,
.sns_btn_wrap .btn_style_sns-img,
.ui_article_list_wrap .ui_article_list .list_item dl dt img {
    display: block;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links .menu_links_dropdown .menu_links_dropdown_submenu li a {
    list-style-type: disc;
    list-style-position: inside;
    display: inherit;
}
.global_menu .menu_panel .menu_panel_inner .menu_child .menu_links_wrap .menu_links .menu_links_dropdown .menu_links_dropdown_submenu li a span {
    margin-left: -10px;
}
.global_menu.page-detail,
.global_menu.scrolled {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 200;
}
.global_menu.page-detail .menu_parent,
.global_menu.scrolled .menu_parent {
    position: static;
}
.global_menu.page-detail .menu_parent > ul > li .menu_parent_ttl,
.global_menu.scrolled .menu_parent > ul > li .menu_parent_ttl {
    height: 52px;
}
.global_menu.page-detail .menu_parent > ul,
.global_menu.scrolled .menu_parent > ul {
    width: 580px;
    position: static;
}
.global_menu.global_menu_ss .menu_panel_wrap,
.global_menu.page-detail .menu_parent > ul > li,
.global_menu.scrolled .menu_parent > ul > li,
.login_form.login_form-mail .sub_sec,
.teacher_search_form .table_form {
    width: auto;
}
.global_menu.page-detail .global_menu_inner .logo_wrap,
.global_menu.scrolled .global_menu_inner .logo_wrap {
    display: block;
    padding-right: 56px;
}
.global_menu.page-detail .global_menu_inner,
.global_menu.scrolled .global_menu_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.global_menu.page-detail .global_menu_inner .gl_menu_right,
.global_menu.scrolled .global_menu_inner .gl_menu_right {
    display: block;
    position: relative;
    width: 150px;
    padding-left: 30px;
    margin-left: auto;
}
.global_menu.page-detail .global_menu_inner .gl_menu_right.login_gl_menu_wrap,
.global_menu.scrolled .global_menu_inner .gl_menu_right.login_gl_menu_wrap {
    width: 173px;
    padding-left: 40px;
}
.global_menu.page-detail .global_menu_inner .gl_menu_right:before,
.global_menu.scrolled .global_menu_inner .gl_menu_right:before {
    content: "";
    display: block;
    width: 1px;
    height: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: #cfcfcf;
}
.global_menu.page-detail .global_menu_inner .gl_menu_right > ul,
.global_menu.scrolled .global_menu_inner .gl_menu_right > ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.global_menu.page-detail .global_menu_inner .header_account .thumb,
.global_menu.scrolled .global_menu_inner .header_account .thumb {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    opacity: 1;
}
.global_menu.page-detail .global_menu_inner .header_account .user_name,
.global_menu.scrolled .global_menu_inner .header_account .user_name {
    font-size: 1.4rem;
    letter-spacing: normal;
    vertical-align: middle;
}
.global_menu.page-detail .global_menu_inner .user_panel_wrap,
.global_menu.scrolled .global_menu_inner .user_panel_wrap {
    display: none;
    background: #fff;
    color: #092846;
    position: absolute;
    width: 214px;
    z-index: 100;
    border: 1px solid #ccc;
    top: calc(100% + 13px);
    padding: 5px 0;
    left: 50%;
    transform: translate(-50%, 0);
}
.global_menu.page-detail .global_menu_inner .user_panel_wrap:after,
.global_menu.scrolled .global_menu_inner .user_panel_wrap:after {
    bottom: calc(100% + 1px);
    border-bottom-color: #ccc;
    z-index: -1;
}
.global_menu.page-detail .global_menu_inner .user_panel_wrap .user_panel_link,
.global_menu.scrolled .global_menu_inner .user_panel_wrap .user_panel_link,
.smsAuthContainer {
    font-size: 1.4rem;
}
.header-v3 .user_menu_wrap:hover .user_panel_wrap {
    display: block;
    animation: 0.2s linear show-menu;
    opacity: 1;
}
@keyframes show-menu {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        display: block;
    }
}
.global_menu.global_menu_ss .menu_panel_wrap-left .menu_panel .menu_panel_inner,
.global_menu.global_menu_ss .menu_panel_wrap-right .menu_panel .menu_panel_inner {
    padding: 0 30px;
}
.global_menu.global_menu_ss .menu_panel_wrap-left .menu_panel .menu_panel_inner .menu_child .menu_links_wrap,
.global_menu.global_menu_ss .menu_panel_wrap-right .menu_panel .menu_panel_inner .menu_child .menu_links_wrap {
    width: 310px;
    padding: 30px 30px 20px;
}
.global_menu_corporate {
    background-color: #fff;
    border-bottom: 1px solid #ccc;
}
.global_menu_corporate .menu_inner {
    width: 1100px;
    margin: 0 auto;
}
.global_menu_corporate .menu_inner > .menu_list {
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: nowrap;
    height: 80px;
}
.global_menu_corporate .menu_dropdown_list > .menu_item > .menu_item_link,
.global_menu_corporate .menu_list > .menu_item > .menu_item_link {
    display: flex;
    height: 100%;
    align-items: center;
    font-size: 14px;
    line-height: 1.4;
    transition: 0.2s ease-in;
    color: #092846;
    text-align: center;
    box-sizing: border-box;
    text-decoration: none;
}
.global_menu_corporate .menu_list > .menu_item > .menu_item_link {
    min-width: 160px;
    justify-content: center;
    padding: 6px 30px 0;
    border-bottom: 6px solid transparent;
}
.global_menu_corporate .menu_list > .menu_item > .menu_item_link:hover {
    color: #f1890e;
    cursor: pointer;
}
.global_menu_corporate .menu_list > .menu_item.dropdown > .menu_item_link {
    position: relative;
    padding-right: 45px;
}
.global_menu_corporate .menu_list > .menu_item.dropdown > .menu_item_link:after {
    content: "";
    position: absolute;
    box-sizing: content-box;
    width: 0x;
    height: 0;
    top: 50%;
    right: 30px;
    border: solid transparent;
    border-width: 6px 4px;
    border-top-color: #092846;
    transition: 0.2s linear;
}
.global_menu_corporate .menu_list > .menu_item.dropdown > .menu_item_link:hover:after,
.global_menu_corporate .menu_list > .menu_item.on.dropdown > .menu_item_link:after {
    border-top-color: #f1890e;
}
.global_menu_corporate .menu_list > .menu_item.dropdown .menu_dropdown_list {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    width: 250px;
    transform: translateX(-50%);
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 2px 10px 10px 0 rgba(0, 0, 0, 0.08);
}
.global_menu_corporate .menu_dropdown_list > .menu_item > .menu_item_link {
    min-height: 60px;
    justify-content: center;
    padding: 5px 20px;
    min-width: 140px;
    white-space: nowrap;
}
.global_menu_corporate .menu_dropdown_list > .menu_item.on > .menu_item_link {
    font-weight: 700;
    color: #f1890e;
}
.global_menu_corporate .menu_dropdown_list > .menu_item:not(.on) > .menu_item_link:hover {
    cursor: pointer;
    color: #f18914;
}
.global_menu_corporate .menu_inner .slide_line_bottom {
    position: absolute;
    bottom: 1px;
    height: 5px;
    background-color: #f1890e;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    z-index: 10;
    pointer-events: none;
}
.local_nav {
    display: none;
    position: fixed;
    top: auto;
    left: auto;
    margin-left: -150px;
    border: 1px solid #ccc;
    border-radius: 6px;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
}
.local_nav li a {
    display: block;
    padding: 10px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset;
    background: #fff;
    color: #555;
    font-weight: 700;
    font-size: 1.4rem;
}
.local_nav li a.on {
    color: #fff;
}
.local_nav li:first-child a {
    border-top: none;
    box-shadow: none;
    border-radius: 4px 4px 0 0;
}
.ui_mark {
    display: inline-block;
    padding: 5px;
    border-radius: 5px;
    font-size: 1.2rem;
    vertical-align: middle;
    box-sizing: border-box;
}
.ui_mark.required {
    background: #f05444;
    color: #fff;
}
.ui_mark.optional {
    background: #aaa;
    color: #fff;
}
.page_breadcrumbs_2,
.page_breadcrumbs_3 {
    position: relative;
    max-width: 900px;
    padding: 0 0 10px;
    margin: 0 auto 20px;
    border-bottom: 2px solid #eee;
}
.page_breadcrumbs_2 a,
.page_breadcrumbs_3 a {
    color: inherit;
}
.page_breadcrumbs_2 a:hover,
.page_breadcrumbs_2 a:hover .page_ttl,
.page_breadcrumbs_3 a:hover,
.page_breadcrumbs_3 a:hover .page_ttl {
    color: #00acee;
    text-decoration: underline;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    cursor: pointer;
}
.page_breadcrumbs_2 ul,
.page_breadcrumbs_3 ul {
    letter-spacing: -0.4em;
    width: auto;
}
.page_breadcrumbs_2 li,
.page_breadcrumbs_3 li {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
}
.page_breadcrumbs_2 li:last-child,
.page_breadcrumbs_3 li:last-child {
    font-weight: 700;
    margin-right: 0;
    padding-right: 0;
}
.page_breadcrumbs_2 li:after,
.page_breadcrumbs_3 li:after {
    content: ">";
    display: inline-block;
    margin: 0 10px;
}
.page_breadcrumbs_2 .page_sub_txt,
.page_breadcrumbs_3 .page_sub_txt {
    font-size: 1.2rem;
    font-weight: 400;
    color: #999;
    margin-left: 10px;
}
.page_breadcrumbs_2 .page_ttl,
.page_breadcrumbs_3 .page_ttl {
    display: inline-block;
    max-width: 750px;
}
.footer {
    width: 100%;
    background: #fff;
    margin: 127px auto 0;
    color: #092846;
    font-size: 1.2rem;
    border-top: 1px solid #dbdbdb;
}
.footer .footer_inner,
.footer_teddy {
    position: relative;
    width: 120rem;
    margin: 0 auto;
}
.footer_teddy {
    top: 2px;
}
.footer .footer_inner {
    padding: 45px 0 80px;
}
.footer .footer_inner::before {
    content: "";
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/teddy-carry.webp) left top/contain no-repeat;
    width: 50px;
    height: 63px;
    position: absolute;
    top: -64px;
    left: 0;
}
.footer .footer_inner .col_left {
    vertical-align: top;
    width: calc(22.5rem + 7.9rem);
}
.footer .footer_logo .img-logo {
    width: 225px;
    height: 24px;
}
.btn_fav_set,
.dropdown_btn_wrap,
.faq-cat-pager li,
.footer .social_links li,
.footer_breadcrumb > .footer_breadcrumb_inner > ul > li,
.page_links li,
.tb_recommend_links ul li,
.teacher_list_ui_area ul li,
.ui_step_lesson_wrap .ui_step_lesson_top .ttl {
    display: inline-block;
}
.footer .social_links .btn_footer {
    position: relative;
    display: inline-block;
    width: 31px;
    height: 31px;
    border-radius: 50%;
    background: #fff;
    transition: 0.2s linear;
}
.footer .social_links .btn_footer:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 30px;
    text-align: center;
}
.footer .social_links .btn_footer-x:before {
    content: "";
    background: url(../images/icon/x.svg) center/contain no-repeat;
    display: inline-block;
}
.footer .social_links .btn_footer-googleplus:before {
    content: "\f0d5";
    left: -5px;
}
.footer .social_links .btn_footer-youtube:before {
    content: "";
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/youtube.svg) center no-repeat;
    display: inline-block;
}
.footer .social_links .btn_footer-instagram:before {
    content: "";
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/insta.svg) center no-repeat;
}
.footer .social_links .btn_footer-tiktok:before {
    content: "";
    background: url(https://assets2.nativecamps.com/user/webroot/images/study_abroad/common/tiktok.svg) center no-repeat;
}
.footer .copyright {
    font-size: 1.2rem;
    margin-bottom: 15px;
}
.footer .corporate_links {
    max-width: 185px;
}
.footer .corporate_links ul li {
    border: 1px solid #fff;
}
.tab_menu ul li a,
.tab_menu ul li.active {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}
.footer .corporate_links ul li a {
    position: relative;
    display: block;
    color: #fff;
    padding: 7px 10px;
}
.footer .corporate_links ul li:hover {
    opacity: 0.8;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.footer .corporate_links ul li a:after {
    content: ">";
    position: absolute;
    right: 25px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    line-height: 0;
}
.footer .footer_menu .footer_menu_item + .footer_menu_item,
.global_lesson_progress .lesson_progress + .lesson_progress,
.pager.pager_bottom {
    margin-top: 20px;
}
.footer .footer_menu .menu_parent_ttl {
    font-weight: 700;
    font-size: 1.4rem;
    line-height: 1.786;
}

.footer .footer_menu a.menu_parent_ttl:hover {
    text-decoration: underline;
}
.footer .footer_menu .menu_child li {
    font-size: 1.2rem;
    margin-top: 0.4rem;
    line-height: 1.75;
}
.footer .footer_menu .menu_child li .cnt:before {
    content: "(";
}
.footer .footer_menu .menu_child li .cnt:after {
    content: ")";
}
body.is-mobile .footer {
    padding-bottom: 20rem;
}
.switch_to_mobile_wrap {
    display: none;
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
}
.switch_to_mobile_wrap .switch_to_mobile {
    display: block;
    padding: 4rem 0 2rem;
    box-sizing: border-box;
    text-align: center;
    font-size: 6rem;
    vertical-align: middle;
    line-height: 1;
    color: #fff;
    background: rgba(0, 0, 0, 0.7);
}
.switch_to_mobile_wrap .switch_to_mobile .fa-mobile {
    position: relative;
    top: -1rem;
    font-size: 10rem;
    vertical-align: middle;
    line-height: 1;
}
@media only screen and (orientation: landscape) {
    .switch_to_mobile_wrap .switch_to_mobile {
        padding: 2rem 0 1rem;
        font-size: 3rem;
    }
    .switch_to_mobile_wrap .switch_to_mobile .fa-mobile {
        top: -0.5rem;
        font-size: 5rem;
    }
}
.tab_menu ul li {
    float: left;
    margin-right: 1px;
}
.tab_menu ul li a {
    position: relative;
    display: block;
    min-width: 85px;
    height: 50px;
    line-height: 50px;
    padding: 0 10px;
    background: #888;
    color: #fff;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    z-index: 0;
    -webkit-transition: color 0.2s linear, background 0.2s linear;
    transition: color 0.2s linear, background 0.2s linear;
}
.tab_menu ul li.active {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    margin-right: 2px;
}
.tab_menu ul li.active a {
    background: #f4f4f4;
    border: 1px solid #fff;
    border-bottom: 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    color: #16a9b2;
    height: 52px;
    z-index: 2;
    cursor: default;
}
.tab_menu ul li.active a:hover {
    -ms-filter: "alpha( opacity=100 )";
    opacity: 1;
}
.tab_contents {
    position: relative;
    z-index: 1;
    margin-top: -2px;
    padding: 20px;
    background: #f4f4f4;
    border-radius: 0 4px 4px;
    border: 1px solid #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
}
#scroll_top,
#scroll_top img {
    width: 30px;
    height: 30px;
    border-radius: 4px;
}
.flag {
    display: block;
    width: 21px;
    height: 13px;
}
.ic-camera-off,
.ic-camera-on {
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
}
.flag.usa {
    background: url(../images/icon/flag_usa.gif) no-repeat;
}
.flag.japan {
    background: url(../images/icon/flag_japan.gif) no-repeat;
}
.flag.philippines {
    background: url(../images/icon/flag_philippines.gif) no-repeat;
}
.ic-camera-on {
    background: url(../images/class/ic_webcam_on.png) center center no-repeat;
}
.ic-camera-off {
    background: url(../images/class/ic_webcam_off.png) center center no-repeat;
}
#scroll_top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 1;
    display: none;
    background: #fc0004;
}
.pager.pager_top {
    margin-bottom: 20px;
}
.pager li,
.pager span {
    display: inline-block;
    height: 36px;
    line-height: 36px;
    margin-left: 15px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    zoom: 1;
    vertical-align: middle;
}
.pager li.on,
.pager span.current {
    padding: 0 10px;
    background: #555;
    color: #fff;
}
.fav_enable i,
.pager li.on a,
.reload_area .btn_reload:hover:before,
.switch_btn.switch_btn-2 li.on a,
.switch_btn.switch_btn-3 li.on a {
    color: #fff;
}
.pager li a,
.pager span a {
    display: block;
    color: #999;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.pager li a:hover,
.pager span a:hover {
    color: #00acee;
}
.pager li.next,
.pager li.prev,
.pager span.next,
.pager span.prev,
.tb_custom_selector .item_inner.done .title {
    font-weight: 400;
}
.pager li.prev a:before,
.pager span.prev a:before {
    font-family: fontAwesome;
    content: "\f100";
    display: inline-block;
    vertical-align: baseline;
    padding-right: 0.2em;
}
.pager li.next a:after,
.pager span.next a:after {
    font-family: fontAwesome;
    content: "\f101";
    display: inline-block;
    vertical-align: baseline;
    padding-left: 0.2em;
}
.sec_verisign small {
    width: 520px;
    float: left;
    font-size: 1.3rem;
    line-height: 1.5;
}
.notice_style {
    padding: 15px 0 13px;
}
.notice_style > .ttl {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 15px;
}
.notice_style > .ttl:before {
    content: "■";
    display: inline;
}
.notice_style ul {
    margin-top: 5px;
    margin-left: 1em;
}
.notice_style ul li {
    line-height: 1.7;
    margin-top: 5px;
    font-size: 1.4rem;
    text-indent: -1em;
}
.notice_style ul li:before,
.notice_style.rice ul li.list_style_change:before,
.ui_notice.listmark_2:before,
.ui_notice_list.listmark_1 ul li.list_style_change:before,
.ui_notice_list.listmark_2 ul li:before {
    content: "・";
    display: inline;
}
.notice_style ul li.list_style_change:before,
.notice_style.rice ul li:before,
.ui_notice.listmark_1:before,
.ui_notice_list.listmark_1 ul li:before,
.ui_notice_list.listmark_2 ul li.list_style_change:before {
    content: "※";
    display: inline;
}
.notice_box {
    background: #fff8f9;
    border-radius: 5px;
    border: 2px solid #ffd6d6;
    padding: 20px;
}
.notice_box.notice_box-orange {
    background: #fffdf8;
    border-color: #f3d1aa;
}
.notice_box.box_style_1 {
    background: #eee;
    border-radius: 0;
    border: none;
}
.page_links_style_1 {
    width: 170px;
    padding: 6px 0;
}
.page_links_style_1 li {
    width: 85px;
    text-align: center;
}
.page_links_style_1 li.prev {
    float: left;
    border-right: 1px solid #cdcdcd;
    margin-right: -50px;
}
.page_links_style_1 li.prev a:before {
    content: "<";
    display: inline;
}
.page_links_style_1 li.next {
    float: right;
    border-left: 1px solid #a0a0a0;
    margin-left: -50px;
}
.page_links_style_1 li.next a:after {
    content: ">";
    display: inline;
}
.page_links_style_1 li a {
    color: #00acee;
    text-decoration: underline;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.page_links_style_1 li.disable a,
.page_links_style_1 li.disable a:hover {
    color: #ccc;
    text-decoration: none;
    cursor: default;
}
.all_read_link {
    position: absolute;
    top: 30px;
    right: 30px;
}
.purchase_item_style_1 table {
    width: 846px;
    height: 68px;
    border: 6px solid #62cdd4;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    margin: 0 auto;
}
.purchase_item_style_1 table td,
.purchase_item_style_1 table th {
    border: 1px solid #e8e8e8;
    padding: 10px;
    font-size: 1.8rem;
}
.purchase_item_style_1 table th {
    width: 220px;
    text-align: right;
    background: #f5f5f5;
}
.purchase_item_style_1 table td {
    font-weight: 700;
    border: 2px solid solid;
    color: #16a9b2;
}
.purchase_item_style_1 table td.price {
    color: #ed1515;
    font-size: 2rem;
}
.ic_lesson_cat {
    display: block;
    width: 114px;
    height: 34px;
    background: #fff;
    border: 1px solid #999;
    border-radius: 4px;
    margin: 0 auto;
}
.ic_lesson_cat.toeic {
    background: url(../images/category/toeic_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.toeic.on {
    background: url(../images/category/toeic_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.business {
    background: url(../images/category/business_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.business.on {
    background: url(../images/category/business_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.exam {
    background: url(../images/category/exam_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.exam.on {
    background: url(../images/category/exam_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.travel {
    background: url(../images/category/travel_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.travel.on {
    background: url(../images/category/travel_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.beginner {
    background: url(../images/category/beginner_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.beginner.on {
    background: url(../images/category/beginner_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.abroad {
    background: url(../images/category/abroad_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.abroad.on {
    background: url(../images/category/abroad_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.daily {
    background: url(../images/category/daily_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.daily.on {
    background: url(../images/category/daily_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.love {
    background: url(../images/category/love_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.love.on {
    background: url(../images/category/love_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.job {
    background: url(../images/category/job_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.job.on {
    background: url(../images/category/job_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.hobby {
    background: url(../images/category/hobby_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.hobby.on {
    background: url(../images/category/hobby_on.png) center center no-repeat, #fff;
}
.ic_lesson_cat.etc {
    background: url(../images/category/etc_off.png) center center no-repeat, #fff;
}
.ic_lesson_cat.etc.on {
    background: url(../images/category/etc_on.png) center center no-repeat, #fff;
}
.instructor_tag_area ul {
    margin-right: -10px;
}
.instructor_tag_area li {
    float: left;
    margin-right: 8.5px;
}
.instructor_tag {
    background: #ccc;
    border-radius: 4px;
    display: inline-block;
    width: 100px;
    height: 34px;
    line-height: 35px;
    padding: 0 5px;
    font-size: 1.5rem;
    color: #fff;
    text-align: center;
    box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.3);
}
.instructor_tag:before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin-right: 0.4em;
}
.instructor_tag.lang_ja {
    background: #34d66c;
}
.instructor_tag.lang_ja:before {
    background: url(../images/instructor_tag/lang_ja.png) center center no-repeat;
    width: 19px;
    height: 13px;
}
.instructor_tag.voice_lesson {
    background: #ffa620;
}
.instructor_tag.voice_lesson:before {
    background: url(../images/instructor_tag/voice_lesson.png) center center no-repeat;
    width: 8px;
    height: 19px;
}
.ic-course_badge {
    display: inline-block;
    width: 22px;
    height: 22px;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../images/icon/badge-22-gray.png);
}
.ic-course_badge.color-palegray {
    background-image: url(../images/icon/badge-22-palegray.png);
}
.ic-course_badge.color-gray {
    background-image: url(../images/icon/badge-22-gray.png);
}
.ic-course_badge.color-orange {
    background-image: url(../images/icon/badge-22-orange.png);
}
.ic-course_badge.color-orange.no-1 {
    background-image: url(../images/icon/badge-22-orange-1.png);
}
.ic-course_badge.color-orange.no-2 {
    background-image: url(../images/icon/badge-22-orange-2.png);
}
.ic-course_badge.color-orange.no-3 {
    background-image: url(../images/icon/badge-22-orange-3.png);
}
.lesson_status {
    display: inline-block;
    min-width: 160px;
    box-sizing: border-box;
    text-align: center;
    font-weight: 700;
    font-size: 1.5rem;
    background: #fff;
    border: 2px solid #555;
    padding: 10px;
    border-radius: 4px;
    color: #555;
}
.lesson_status--reserved {
    border-color: #f1890e;
    background: #f1890e;
    color: #fff;
}
.lesson_status--requested {
    border-color: #0bcafa;
    background: #fff;
    color: #00acee;
}
.lesson_status--reservable {
    border-color: #0bcafa;
    background: #0bcafa;
    color: #fff;
}
.lesson_status--canceled,
.lesson_status--done {
    border-color: #aaa;
    color: #aaa;
}
.btn_rating_wrap li {
    float: left;
    display: inline-block;
    letter-spacing: -0.4em;
    margin-right: 20px;
}
.btn_rating,
.status_rating {
    position: relative;
    display: inline-block;
    letter-spacing: normal;
    padding: 8px 12px;
    min-width: 100px;
    background: #ccc;
    font-size: 1.8rem;
    text-align: center;
    color: #fff;
    border-radius: 8px;
    box-shadow: 2px 2px 0 0 rgba(0, 0, 0, 0.2);
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.err-label,
.smsAuthContainer #requestErrMsg {
    color: red;
    line-height: 1.5;
}
.btn_rating:before,
.status_rating:before {
    margin: auto 0.3em auto auto;
    display: inline-block;
    font-family: FontAwesome;
    font-size: 1.8rem;
    color: #fff;
    line-height: 1;
}
.btn_rating--good,
.status_rating--good {
    background: #669bd7;
    box-shadow: 2px 2px 0 0 #5781b2;
}
.btn_rating--good:hover {
    background: #75b4fa;
}
.btn_rating--good:before,
.status_rating--good:before {
    content: "\f164";
}
.btn_rating--bad,
.status_rating--bad {
    background: #7dbd67;
    box-shadow: 2px 2px 0 0 #4d9060;
}
.btn_rating--bad:hover {
    background: #9ad076;
}
.btn_rating.disable,
.btn_rating.off,
.status_rating.off {
    background: #ccc !important;
}
.btn_rating.disable {
    box-shadow: none !important;
    cursor: default;
}
.btn_rating.off {
    box-shadow: 2px 2px 0 0 #999 !important;
}
.btn_rating .cnt,
.status_rating .cnt {
    background: #fff;
    color: #666;
    padding: 0 5px;
    border-radius: 4px;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.2) inset;
    font-size: 1.4rem;
    font-weight: 700;
    margin-left: 10px;
    position: relative;
    top: -1px;
}
.btn_rating .cnt:after,
.status_rating .cnt:after {
    left: -5px;
    top: 50%;
    border: 3px solid rgba(255, 255, 255, 0);
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-right-color: #fff;
    margin-top: -3px;
}
.smsAuthContainer .form-group {
    background: #f3f3f3;
    padding: 20px;
    border-radius: 4px;
    margin: 20px 0 15px;
}
.smsAuthContainer .form-group input[type="number"],
.smsAuthContainer .form-group input[type="tel"],
.smsAuthContainer .form-group input[type="text"] {
    width: 350px;
    background: #fff;
}
.smsAuthContainer .form-group input.telno {
    width: 230px !important;
}
.smsAuthContainer .form-group .btn_style.size_3 {
    font-weight: 700 !important;
    min-width: 165px !important;
    margin-left: 10px;
}
.smsAuthContainer .btn-back {
    display: inline-block;
    cursor: pointer;
    margin: 15px 0;
}
.err-label {
    display: block;
    font-weight: 700;
    margin: 0 0 10px;
}
.smsAuthContainer .sms_fail_wrap {
    background: #f9f6ee;
    padding: 20px;
    border-radius: 4px;
}
.smsAuthContainer .notice_smsmail {
    background: #f3f3f3;
    padding: 20px;
    border-radius: 4px;
}
.smsAuthContainer .notice_smsmail > .ttl {
    font-size: 1.5rem;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid #fff;
}
.smsAuthContainer .notice_smsmail dl dt {
    font-size: 1.4rem;
    font-weight: 700;
    margin-top: 20px;
}
.smsAuthContainer .notice_smsmail dl dd {
    font-size: 1.2rem;
    line-height: 1.5;
    margin-top: 10px;
}
.smsAuthContainer .notice_smsmail dl dd .link_external {
    float: right;
    color: #00acee;
    text-decoration: underline;
}
.smsAuthContainer .btn-authCodeForm--form {
    display: inline-block;
    cursor: pointer;
}
.lesson_status_circle {
    display: inline-block;
    width: 13px;
    height: 13px;
    border-radius: 13px;
    background: #ccc;
    vertical-align: middle;
}
.lesson_status_circle--offline {
    background: #ccc;
}
.lesson_status_circle--online,
.lesson_status_circle--wait,
.tb_custom_selector .options .option.on {
    background: #0bcafa;
}
.lesson_status_circle--reserved {
    background: #f9ce15;
}
.lesson_status_circle--lesson {
    background: #f0295d;
}
.lesson_status_circle--on-break {
    background: #fcc916;
}
.fav_enable,
.fav_enable:hover,
.lesson_status_circle--live {
    background: #f0295d;
}
.lesson_status_txt {
    font-size: 1.5rem;
    vertical-align: middle;
}
.lesson_status_txt--offline {
    color: #666;
}
.desc_lesson_status_circle > ul > li .meaning--wait,
.lesson_status_txt--online,
.lesson_status_txt--wait {
    color: #0bcafa;
}
.desc_lesson_status_circle > ul > li .meaning--reserved,
.lesson_status_txt--reserved {
    color: #f9ce15;
}
.lesson_status_txt--lesson {
    color: #f0295d;
}
.lesson_status_txt--on-break {
    color: #0f9;
}
.lesson_status_circle.large {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    vertical-align: middle;
    margin-top: -3px;
}
.lesson_status_txt.large {
    font-size: 1.8rem;
    vertical-align: middle;
}
.schedule-icon-list {
    margin-top: 2rem;
}
.schedule-icon-list > li {
    display: grid;
    align-items: center;
    grid-template-columns: 40px auto;
}
.login_form_item + .login_form_item,
.rec-result-type-audio .btn-area,
.schedule-icon-list > li + li,
.sns_btn_wrap > ul > li + li {
    margin-top: 1rem;
}
.schedule-icon-list .schedule-icon {
    display: inline-block;
    width: 40px;
    height: 20px;
    font-size: 0;
    background-color: #555;
    border-radius: 2.5px;
    position: relative;
}
.schedule-icon-list .schedule-icon:after {
    content: "";
    display: none;
    position: absolute;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.schedule-icon-list .schedule-icon[data-status="available-for-lesson"],
.schedule-icon-list .schedule-icon[data-status="available-request"],
.schedule-icon-list .schedule-icon[data-status="available"],
.schedule-icon-list .schedule-icon[data-status="currently-under-lesson"],
.schedule-icon-list .schedule-icon[data-status="request-off"],
.schedule-icon-list .schedule-icon[data-status="reserved-own"],
.schedule-icon-list .schedule-icon[data-status="unavailable"] {
    background-color: #03c9a9;
}
.schedule-icon-list .schedule-icon[data-status="available-campaign"],
.schedule-icon-list .schedule-icon[data-status="campaign-reserved-own"],
.schedule-icon-list .schedule-icon[data-status="unavailable-campaign"] {
    background-color: #f8495f;
}
.schedule-icon-list .schedule-icon[data-status="available-live"],
.schedule-icon-list .schedule-icon[data-status="live-reserved-own"],
.schedule-icon-list .schedule-icon[data-status="unavailable-live"] {
    background-color: #ee47c5;
}
.schedule-icon-list .schedule-icon[data-status="request-off"],
.schedule-icon-list .schedule-icon[data-status="requested"] {
    background-color: #b6e6de;
}
.schedule-icon-list .schedule-icon[data-status="available-campaign"]:after,
.schedule-icon-list .schedule-icon[data-status="available-live"]:after,
.schedule-icon-list .schedule-icon[data-status="available"]:after {
    display: block;
    background-image: url(../images/reserve/icon-available.svg);
}
.schedule-icon-list .schedule-icon[data-status="unavailable-campaign"]:after,
.schedule-icon-list .schedule-icon[data-status="unavailable-live"]:after,
.schedule-icon-list .schedule-icon[data-status="unavailable"]:after {
    display: block;
    background-image: url(../images/reserve/icon-unavailable.svg);
}
.schedule-icon-list .schedule-icon[data-status="campaign-reserved-own"]:after,
.schedule-icon-list .schedule-icon[data-status="live-reserved-own"]:after,
.schedule-icon-list .schedule-icon[data-status="reserved-own"]:after {
    display: block;
    background-image: url(../images/reserve/icon-own.svg);
}
.schedule-icon-list .schedule-icon[data-status="available-for-lesson"]:after {
    display: block;
    background-image: url(../images/reserve/icon-square.svg);
    background-size: 13px 13px;
}
.schedule-icon-list .schedule-icon[data-status="currently-under-lesson"]:after {
    display: block;
    background-image: url(../images/reserve/icon-square-check.svg);
    background-size: 13px 13px;
}
.schedule-icon-list .schedule-icon[data-status="available-request"]:after {
    display: block;
    background-image: url(../images/reserve/icon-request.svg);
    width: 15px;
    height: 15px;
}
.schedule-icon-list .schedule-icon[data-status="requested"]:after {
    display: block;
    background-image: url(../images/reserve/icon-requested.svg);
    width: 15px;
    height: 15px;
}
.schedule-icon-list .schedule-icon[data-status="request-off"]:after {
    display: block;
    background-image: url(../images/reserve/icon-request-off.svg);
    width: 15px;
    height: 15px;
}
.schedule-icon-list .icon-text {
    display: inline-block;
    padding-left: 5px;
    text-align: left;
    white-space: nowrap;
    font-size: 1.4rem;
    font-weight: 400;
    color: #555;
}
.desc_lesson_status_circle > ul > li .meaning {
    margin-left: 5px;
    font-size: 1.4rem;
}
.desc_lesson_status_circle > ul > li .meaning--lesson,
.fav-on {
    color: #f0295d;
}
.fav_disable,
.fav_enable {
    height: 34px;
    text-align: center;
    font-size: 15px;
    border-radius: 4px;
    color: #fff;
    overflow: hidden;
    line-height: 35px;
    min-width: 118px;
    cursor: pointer;
}
.desc_lesson_status_circle > ul > li .meaning--on-break {
    color: #d8ab0d;
}
.desc_lesson_status_circle > ul > li .meaning--warmup,
.size_switch_area > ul > li:first-child > select,
.size_switch_area > ul > li:nth-child(3),
.teacher_search_form .dl_textbook .radio_list li:first-child,
.ui-rating_area .rating_star:first-child {
    margin-left: 0;
}
.desc_lesson_status_circle > ul > li .meaning--live {
    color: #ee47c5;
}
.common_teacher_status_and_sort_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}
.page_links li .next,
.page_links li .prev {
    white-space: nowrap;
}
.page_links li .prev:before {
    content: "＜";
    vertical-align: middle;
    display: inline;
    margin-right: 0.2em;
    margin-left: -0.3em;
    white-space: nowrap;
}
.page_links li .next:after {
    content: "＞";
    vertical-align: middle;
    display: inline;
    margin-left: 0.2em;
    margin-right: -0.3em;
    white-space: nowrap;
}
.ic_favorite:before {
    display: inline-block;
    content: "\f005";
    font-family: fontAwesome;
    line-height: 1;
    text-align: center;
    color: #ccc;
}
.ic_favorite.on:before {
    display: inline-block;
    content: "\f004";
    font-family: fontAwesome;
    line-height: 1;
    text-align: center;
    color: #f0295d;
}
.ic_favorite.size-small:before {
    width: 12px;
    height: 12px;
    font-size: 12px;
}
.ic_down:after {
    display: block;
    content: "\f0d7";
    font-family: fontAwesome;
    text-align: center;
}
.ic_angle-down.style_1:after,
.ic_down.style_1:after {
    font-size: 60px;
    line-height: 20px;
    margin-top: 20px;
    margin-bottom: 15px;
    color: #999;
}
.ic_angle-down:after {
    display: block;
    content: "\f107";
    font-family: fontAwesome;
    text-align: center;
}
.fav_enable {
    display: inline-block;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.fav_disable {
    display: inline-block;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    background: #ccc;
}
.fav_disable:before,
.fav_enable:before {
    margin: auto 0.4em auto auto;
    display: inline-block;
    font-family: FontAwesome;
    content: "\f004";
    font-size: 1.6rem;
    line-height: 1;
}
.fav-remove {
    position: absolute;
    top: 2px;
    right: 5px;
    cursor: pointer;
}
.select_age_form,
.select_country_form {
    top: 50px;
    box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.container .back {
    margin-top: 7px;
}
.eval_breakdown td.on:last-child,
.eval_breakdown th.on,
.lh-pg-btn a {
    color: #555;
}
.btn_fav_set .cnt_fav {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin-left: 5px;
}
.btn_fav_set .cnt_fav:after,
.btn_fav_set .cnt_fav:before {
    right: 100%;
    top: 0;
    bottom: 0;
    margin: auto;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.ui-rating_area .rating_star .rating_star_value:before,
.ui-rating_area .rating_star:before {
    top: 0;
    font-family: fontAwesome;
    font-size: 16px;
    text-align: center;
    content: "\f005";
    font-weight: 400;
    left: 0;
}
.btn_fav_set .cnt_fav:after {
    border-color: rgba(255, 255, 255, 0);
    border-right-color: #fff;
    border-width: 4px;
}
.btn_fav_set .cnt_fav:before {
    border-color: rgba(204, 204, 204, 0);
    border-right-color: #ccc;
    border-width: 5px;
}
.lesson_memo_area .notice {
    color: #3c763d;
    margin-bottom: 5px;
}
.need_download {
    font-size: 1.6rem;
    background-color: #e8e8e8;
}
.need_download .need_download_inner {
    position: relative;
    width: 960px;
    margin: 0 auto;
    padding: 20px 0;
}
.need_download .need_download_inner .box_wrap {
    overflow: hidden;
}
.need_download .need_download_inner .left_box {
    float: left;
    line-height: 1.5;
    padding-top: 10px;
}
.need_download .need_download_inner .right_box ul li {
    display: inline-block;
    text-align: center;
}
.need_download .need_download_inner .right_box ul li:first-child,
.teacher_search_form .dl_style_2.dl_age,
.teacher_search_form .dl_style_2.dl_date,
.teacher_search_form .dl_style_2.dl_gender,
.teacher_search_form .radio_list.select_texbook li:nth-last-child(2) {
    margin-right: 30px;
}
.need_download .need_download_inner .right_box ul li img {
    width: 50px;
}
.ui-rating_area .rating_table {
    width: 100%;
    font-size: 1.4rem;
}
.ui-rating_area .rating_table th {
    width: 100px;
    font-weight: 400;
    text-align: left;
    padding: 5px 0;
}
.ui-rating_area .rating_table td {
    padding: 5px;
}
.ui-rating_area .rating_star_wrap {
    display: inline-block;
    width: 115px;
    white-space: nowrap;
}
.ui-rating_area .rating_star {
    position: relative;
    display: inline-block;
    width: 16px;
    height: 16px;
    overflow: hidden;
    margin-left: 5px;
}
.ui-rating_area .rating_star:before {
    position: absolute;
    width: 16px;
    height: 16px;
    color: #ccc;
}
.ui-rating_area .rating_star .rating_star_value {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.ui-rating_area .rating_star i {
    color: #fcc82a;
    width: 16px;
    height: 16px;
}
.ui-rating_area .rating_star .rating_star_value:before {
    position: absolute;
    width: 16px;
    height: 16px;
    color: #fcc82a;
}
.eval_breakdown th {
    color: #ddd;
    font-weight: 400;
    white-space: nowrap;
}
.eval_breakdown td:last-child {
    color: #ddd;
    text-align: right;
    white-space: nowrap;
}
.eval_breakdown .rating_bar {
    text-align: left;
    overflow: hidden;
    line-height: 0;
    display: inline-block;
    width: 150px;
    height: 16px;
    background: #eee;
    margin: 2px 8px;
}
.select_age_form .select_age_inner,
.select_country_form .select_country_inner {
    max-height: 420px;
    overflow-y: auto;
    overflow-x: hidden;
}
.eval_breakdown .rating_bar .rating_bar_value {
    display: inline-block;
    width: 0%;
    height: 16px;
    border-radius: 1px;
    background-color: #fcc82a;
}
.teacher_detail_ttl_2 {
    font-size: 1.5rem;
    margin-bottom: 10px;
    border-bottom: 1px solid #cbcbcb;
    display: table;
    width: 100%;
}
.teacher_detail_ttl_2 dt {
    display: table-cell;
    padding-bottom: 5px;
}
.teacher_detail_ttl_2 dd {
    display: table-cell;
    font-weight: 700;
    text-align: right;
    padding-bottom: 5px;
}
.ui_pagetop li {
    width: 200px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background: #0a2745;
    margin: 0 auto;
}
.ui_pagetop li a {
    color: #fff;
    display: block;
}
.ui_step_lesson_container {
    position: relative;
    padding: 20px 30px 15px !important;
    margin-bottom: 10px !important;
    z-index: 2;
}
.ui_step_lesson_wrap .ui_step_lesson_top {
    margin: 0;
    padding: 0 0 10px;
    display: inline-block;
}
.ui_step_lesson_wrap .ui_step_lesson_top .msg {
    display: inline-block;
    margin-left: 10px;
}
#selected-files i,
.ui_step_lesson_wrap .ui_step_lesson_top .msg-red {
    color: red;
}
.ui_step_lesson_wrap .ui_step_lesson_top .btn_style {
    position: absolute;
    top: 15px;
    right: 15px;
}
.ui_step_lesson .col_wrap .col_right {
    position: relative;
    text-align: center;
    width: 260px;
}
.ui_step_lesson .col_wrap .col_right .btn_style {
    width: 200px;
    font-size: 1.4rem;
    margin: -15px -20px 20px 0;
}
.ui_step_lesson .step_navi {
    position: relative;
    counter-reset: step;
}
.ui_step_lesson .step_navi .line {
    display: none;
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
    margin: auto;
    width: 470px;
    height: 5px;
    background: #eee;
}
.ui_step_lesson .step_navi ul {
    display: table;
    table-layout: fixed;
    width: 700px;
    margin: 0 auto;
}
.ui_step_lesson .step_navi ul li {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    padding: 15px 28px 15px 0;
    text-align: center;
    cursor: pointer;
}
.ui_step_lesson .step_navi ul li .step {
    position: relative;
    display: block;
    width: 38px;
    height: 38px;
    box-sizing: border-box;
    text-align: center;
    line-height: 2.2;
    font-size: 1.8rem;
    font-weight: 700;
    border-radius: 50%;
    background: #0bcafa;
    color: #fff;
    margin: 0 auto 10px;
    z-index: 1;
}
.ui_step_lesson .step_navi ul li .step:before {
    counter-increment: step;
    content: counter(step);
    vertical-align: middle;
    line-height: 2.2;
    position: relative;
}
.ui_step_lesson .step_navi ul li + li:before {
    position: absolute;
    top: -24px;
    bottom: 0;
    left: -55%;
    margin: auto;
    content: "";
    display: inline-block;
    width: 100%;
    height: 4px;
    background: #e9e9e9;
}
.ui_step_lesson .step_navi ul li .txt {
    text-align: center;
    font-weight: 700;
    color: #555;
}
.ui_step_lesson .step_navi ul li .tooltip {
    position: absolute;
    top: 140%;
    top: -webkit-calc(100% + 15px);
    top: calc(100% + 15px);
    left: -15px;
    width: 360px;
    padding: 15px;
    background: #fff;
    border: 5px solid #0bcafa;
    border-radius: 8px;
    line-height: 1.5;
    font-weight: 400;
    font-size: 1.5rem;
    text-align: left;
    color: #555;
    -ms-filter: "alpha(opacity=0)";
    opacity: 0;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
    z-index: 2;
    pointer-events: none;
}
.ui_step_lesson .step_navi ul li .tooltip:after,
.ui_step_lesson .step_navi ul li .tooltip:before {
    bottom: 100%;
    left: 30px;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.ui_step_lesson .step_navi ul li .tooltip:before {
    border-color: rgba(11, 202, 250, 0);
    border-bottom-color: #0bcafa;
    border-width: 16px;
    margin-left: -16px;
}
.ui_step_lesson .step_navi ul li .step:hover .tooltip {
    -ms-filter: "alpha(opacity=100)";
    opacity: 1;
}
.ui_step_lesson .btn_style {
    position: relative;
    top: -10px;
}
.ui_link_campaign_container {
    padding: 30px !important;
    margin-bottom: 15px !important;
}
.lesson_chapter_select_box {
    position: relative;
    width: auto;
}
.nc-common-app-badge-list {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -10px;
    margin-right: -10px;
}
.nc-common-app-badge-list > li {
    padding: 0 10px;
}
.nc-common-app-badge-list > li > a {
    display: block;
    height: 44px;
    width: auto;
}
.nc-common-app-badge-list > li > a > img {
    display: block;
    height: 100%;
    width: auto;
}
.amazon_gift_register_campaign_banner:hover > img,
.nc-common-app-badge-list > li > a:hover > img {
    opacity: 1;
}
.ui_tags {
    letter-spacing: -0.4em;
    margin-right: -10px;
    margin-bottom: -10px;
}
.ui_tags .ui_tag {
    display: inline-block;
    border: 1px solid #999;
    font-size: 1.4rem;
    color: #999;
    padding: 6px 9px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 0 10px 10px 0;
}
.ui_tags .ui_tag-gray {
    background: #f2f2f2;
}
.ui_tags .ui_tag-icon:before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center center;
    margin-top: -5px;
    margin-bottom: -5px;
    margin-right: 5px;
}
.ui_tags .ui_tag-new {
    color: #fcc82a;
}
.ui_tags .ui_tag-new:before {
    background-image: url(../images/tags/new.png);
    margin-left: -2px;
}
.ui_tags .ui_tag-beginner_mark:before {
    background-image: url(../images/tags/beginner_mark.png);
    margin-left: -2px;
}
.ui_tags .ui_tag-callan:before {
    background-image: url(../images/tags/callan.png);
    margin-left: -2px;
}
.ui_tags .ui_tag-native:before {
    background-image: url(../images/tags/native_blue.png);
    margin-left: -2px;
}
.ui_tags .ui_tag-grammar {
    color: #c49e68;
}
.ui_tags .ui_tag-grammar:before {
    background-image: url(../images/tags/grammar.png);
    margin-left: -2px;
}
.ui_tags .ui_tag-freetalk,
.ui_tags .ui_tag-textbook {
    color: #79ace5;
}
.ui_tags .ui_tag-freetalk:before {
    background-image: url(../images/tags/freetalk.png);
    margin-left: -1px;
}
.ui_tags .ui_tag-recommended:before {
    background-image: url(../images/tags/recommended.png);
    margin-left: -1px;
}
.ui_tags .ui_tag-textbook:before {
    background-image: url(../images/tags/textbook.png);
    margin-right: 7px;
}
.ui_tags .ui_tag-advanced,
.ui_tags .ui_tag-elementary {
    color: #a5c871;
}
.ui_tags .ui_tag-advanced:before {
    background-image: url(../images/tags/advanced.png);
    margin-left: 1px;
    margin-right: 7px;
}
.ui_tags .ui_tag-elementary:before {
    background-image: url(../images/tags/elementary.png);
    margin-left: -2px;
    margin-right: 2px;
}
.ui_tags .ui_tag-kids,
.ui_tags .ui_tag-senior {
    color: #e7981a;
}
.ui_tags .ui_tag-kids:before {
    background-image: url(../images/tags/kids.png);
    margin-left: -2px;
    margin-right: 2px;
}
.ui_tags .ui_tag-senior:before {
    background-image: url(../images/tags/senior.png);
    margin-left: -2px;
    margin-right: 2px;
}
.ui_tags .ui_tag-japanese {
    color: #fa8a8a;
}
.ui_tags .ui_tag-japanese:before {
    background-image: url(../images/tags/japanese.png);
}
.ui_tags .ui_tag-pronounce {
    color: #ad59d1;
}
.ui_tags .ui_tag-pronounce:before {
    background-image: url(../images/tags/pronounce.png);
    margin-left: -3px;
    margin-right: 2px;
}
.ui_tags .ui_tag-europe:before {
    background-image: url(../images/tags/europe.png);
    margin-bottom: -4px;
}
.ui_tags .ui_tag-europe {
    color: #03c9a9;
}
.ui_tags .ui_tag-free_reservation {
    color: #df6565;
}
.ui_tags .ui_tag-free_reservation:before {
    background-image: url(../images/tags/tag.png);
    margin-left: 2px;
    margin-top: -8px;
    margin-right: 8px;
}
.ui_tags .ui_tag-btn {
    border-color: #bbb;
    border-radius: 2px;
    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.1);
    cursor: pointer;
    user-select: none;
    color: #555 !important;
    min-width: 118px;
}
.ui_tags .ui_tag-btn.on,
.ui_tags input[type="checkbox"]:checked + label .ui_tag-btn,
.ui_tags input[type="radio"]:checked + label .ui_tag-btn {
    background: #fff1a5;
    border-color: #fed22f;
    box-shadow: none;
}
.ui_tags input[type="checkbox"]:disabled + label .ui_tag-btn {
    background: #eee;
    border-color: #eee;
    color: #bbb !important;
    box-shadow: none;
}
.ui_tags input[type="checkbox"].deselect + label .ui_tag-btn {
    opacity: 0.5;
}
.ui_tags-smaller .ui_tag {
    font-size: 1.2rem;
}
.switch_btn.switch_btn-2 {
    font-size: 0;
    padding: 0 15%;
}
.switch_btn.switch_btn-2 li {
    width: 50%;
    width: -webkit-calc(50% - 2px);
    width: calc(50% - 2px);
    font-size: 1.6rem;
    display: inline-block;
    text-align: center;
    background: #fff;
    border: 1px solid #fff;
    box-sizing: border-box;
}
.switch_btn.switch_btn-2 li.on,
.switch_btn.switch_btn-3 li.on {
    background: #092846;
    border: 1px solid #fff;
}
.switch_btn.switch_btn-2 li:first-child {
    border-radius: 5px 0 0 5px;
}
.switch_btn.switch_btn-2 li:last-child {
    border-radius: 0 5px 5px 0;
}
.switch_btn.switch_btn-2 li a,
.switch_btn.switch_btn-3 li a {
    display: block;
    padding: 10px 0;
    color: #092846;
}
.switch_btn.switch_btn-3 li {
    width: 33%;
    width: -webkit-calc(100% /3 - 2px);
    width: calc(100% / 3 - 2px);
    font-size: 1.6rem;
    display: inline-block;
    text-align: center;
    background: #fff;
    border: 1px solid #fff;
}
.switch_btn.switch_btn-3 li:first-child {
    border-radius: 5px 0 0 5px;
    border-right: 1px solid #092846;
}
.switch_btn.switch_btn-3 li:last-child {
    border-radius: 0 5px 5px 0;
    border-left: 1px solid #092846;
}
.ic_textbook {
    display: inline-block;
    width: 24px;
    height: 24px;
    vertical-align: middle;
}
.ic_textbook img {
    display: block;
    width: 24px;
    height: 24px;
    opacity: 1 !important;
}
.ui_preset_textbook .ic_textbook {
    width: 84px;
    height: 84px;
}
.ic_textbook.size_s,
.ic_textbook.size_s img {
    width: 24px;
    height: 24px;
}
.ic_textbook.circle img,
.ic_textbook.round_6 img {
    border-radius: 6px;
}
.ui_notice,
.ui_notice_list ul li {
    line-height: 1.7;
    margin-top: 5px;
    font-size: 1.4rem;
}
.ui_notice.listmark_none:before,
.ui_notice_list[class*="listmark"] ul li.listmark_none:before {
    content: "　";
    display: inline;
}
.ui_notice_list[class*="listbox"] {
    background: #f4f4f4;
    padding: 15px;
    border-radius: 5px;
    border: 1px solid #ccc;
}
.ui_notice_list[class*="listmark"] ul li > * {
    text-indent: 0;
}
.ui_notice_list.bg_gray {
    padding: 20px;
    background: #f5f5f5;
    border: 1px solid #ccc;
}
.teacher_search_form .table_form button,
.teacher_search_form .table_form select {
    position: relative;
    height: 40px;
    background: #fff;
    border: 1px solid #999;
}
.teacher_search_form select {
    -webkit-appearance: menulist-button;
    border: 1px solid #999;
}
.teacher_search_form button {
    line-height: 1;
    padding: 8px;
    border-radius: 4px;
}
.teacher_search_form button.select_style_2,
.teacher_search_form select.select_style_2 {
    min-width: 118px;
}
.teacher_search_form button.select_style_2.selected,
.teacher_search_form select.select_style_2.select_style_2.selected {
    background: #fff1a5;
    border-color: #fed22f;
}
.select_age_form,
.select_country_form {
    background: #fff;
    box-sizing: border-box;
}
.teacher_search_form .check_list li,
.teacher_search_form .radio_list li,
.teacher_search_form .selector_list li {
    float: left;
    margin: 0 15px;
}
.teacher_search_form .dl_status .radio_list li:first-child {
    margin-left: 4px;
}
.teacher_search_form .radio_list.select_texbook li:last-child {
    margin-left: 0;
    margin-right: 0;
}
.teacher_search_form .item_lesson_5min_wrap .item_lesson_5min,
.teacher_search_form .table_form tr td {
    padding: 7px 15px;
}
.teacher_search_form .dl_style_2 {
    display: table;
    min-height: 42px;
}
.teacher_search_form .dl_style_2 dt {
    font-size: 1.6rem;
    font-weight: 700;
    width: 52px;
    white-space: nowrap;
    padding: 10px 15px 0 0;
    vertical-align: top;
}
.teacher_search_form .dl_style_2 dd,
.teacher_search_form .dl_style_2 dt {
    display: table-cell;
    line-height: 1.5;
}
.teacher_search_form .dl_style_2.dl_age dd .ages,
.teacher_search_form .dl_style_2.dl_conditions dd .conditions {
    margin-right: 20px;
}
.teacher_search_form .dl_style_2 dd ul.checks li {
    display: inline-block;
    margin-right: 10px;
    line-height: 2.3;
}
.teacher_search_form .dl_style_2.dl_keyword {
    margin-left: 22px;
}
.teacher_search_form .dl_style_2.dl_keyword input[type="text"],
.teacher_search_form .dl_style_2.dl_teacher_name input[type="text"] {
    width: 240px;
    border-color: #999;
    line-height: 1;
}
.teacher_search_form .dl_style_2.dl_textbook .radio_list li.selected {
    position: relative;
    margin-right: -70px;
}
.teacher_search_form .dl_style_2.dl_selector .tb_custom_selector {
    min-width: 325px;
}
.teacher_search_form .tb_custom_selector .options {
    top: 100%;
    bottom: auto;
    max-height: -webkit-calc(100vh - 60vh);
    max-height: -moz-calc(100vh - 60vh);
    max-height: calc(100vh - 60vh);
    min-height: 258px;
    z-index: 9999;
}
.teacher_search_form .tb_custom_selector .options.under {
    top: 100%;
    bottom: inherit;
}
.teacher_search_form .tb_custom_selector .options ul li {
    margin: 0;
    float: inherit;
}
.teacher_search_form .table_form .item_lesson_5min_wrap {
    padding: 0;
    display: flex;
    align-items: center;
}
.teacher_search_form .tb_custom_selector.tb_custom_selector_ss .options {
    min-height: auto;
}
.teacher_search_form .btn_saved_search_conditions_wrap {
    position: absolute;
    top: 1rem;
    right: 1rem;
}
.teacher_search_form .btn_saved_search_conditions {
    min-width: 16rem;
    font-size: 1.6rem;
}
.tb_custom_selector .item_inner .tb_rank_wrap.rank-1,
.tb_custom_selector .item_inner .tb_rank_wrap.rank-2,
.tb_custom_selector .item_inner .tb_rank_wrap.rank-3,
.teacher_search_form .btn_saved_search_conditions .condition_num {
    font-size: 2.4rem;
}
.teacher_search_form .dl_style_1 .ic_calendar:after,
.teacher_search_form .dl_style_1 .ic_clock:after {
    width: 26px;
    height: 26px;
    font-size: 26px;
    line-height: 26px;
    color: #03c9a9;
    text-align: center;
    top: 0;
    font-family: fontAwesome;
}
.bootstrap-tagsinput,
.bootstrap-tagsinput *,
.dropdown_btn_wrap,
.dropdown_btn_wrap *,
.footer_select_lang_wrap,
.footer_select_lang_wrap *,
.footer_select_lang_wrap :after,
.footer_select_lang_wrap :before,
.rec-result-type-audio,
.rec-result-type-audio *,
.rec-result-type-audio :after,
.rec-result-type-audio :before,
.rec-result-type-audio:after,
.rec-result-type-audio:before,
.teacher_search_form .btn_style {
    box-sizing: border-box;
}
.select_country_form {
    display: none;
    position: absolute;
    z-index: 9999;
    left: 0;
    padding: 25px;
    width: 800px;
    border: 1px solid #ccc;
    border-radius: 5px;
}
.select_country_form:before {
    bottom: 100%;
    left: 3%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-bottom-color: #ccc;
    border-width: 11px 11px 15px;
    margin-left: -11px;
}
.select_country_form:after {
    bottom: 100%;
    left: 3%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-bottom-color: #fff;
    border-width: 10px 10px 14px;
    margin-left: -10px;
}
.select_age_form:after,
.select_age_form:before {
    bottom: 100%;
    left: 25px;
    content: " ";
    height: 0;
    width: 0;
    pointer-events: none;
}
.select_country_form .select_country_inner {
    border: 1px solid #eee;
}
.select_age_form .table_age .select_all_age,
.select_country_form .table_country .continent {
    display: block;
    background: #f5f5f5;
    width: 100%;
    padding: 10px 15px;
    line-height: 1;
    box-sizing: border-box;
    text-align: left;
}
.login_wrap .sec_wrap.sec_login.first .btn_style,
.select_country_form .table_country .continent label {
    font-size: 1.6rem;
}
.select_age_form .table_age .ages,
.select_country_form .table_country .countries {
    display: block;
    padding: 20px;
}
.select_age_form .table_age .ages .checks_age,
.select_country_form .table_country .countries .checks_country {
    margin-top: -10px;
    position: relative;
}
.select_country_form .table_country .countries .checks_country li {
    display: inline-block;
    width: 33%;
    margin-top: 10px;
}
.select_career_form .table_career .career-category-sub .checks_career {
    display: flex;
    flex-wrap: wrap;
}
.select_career_form .table_career .career-category-sub .checks_career input[type="checkbox"] + label.custom_check {
    padding: 0 8px 0 24px;
}
.select_career_form .table_career .career-category-sub .checks_career input[type="checkbox"] + label.custom_check::before {
    top: 8px;
}
.select_career_form .table_career .career-category-sub .checks_career input[type="checkbox"]:checked + label.custom_check::after {
    top: 9px;
}
.select_age_form {
    display: none;
    position: absolute;
    z-index: 9999;
    left: 0;
    padding: 20px;
    border: 1px solid #ccc;
    border-radius: 5px;
}
.select_age_form:before {
    border: solid transparent;
    position: absolute;
    border-bottom-color: #ccc;
    border-width: 11px 11px 15px;
    margin-left: -11px;
}
.select_age_form:after {
    border: solid transparent;
    position: absolute;
    border-bottom-color: #fff;
    border-width: 10px 10px 14px;
    margin-left: -10px;
}
.select_age_form .select_age_inner li {
    margin: 5px 0;
}
.select_age_form .btn_style_age {
    min-width: 180px !important;
}
.select_age_form .table_age .select_all_age label {
    display: inline-block;
    font-size: 1.6rem;
}
.teacher_search_form .timeslot_wrap {
    display: table;
    margin: 0 auto;
}
.teacher_search_form .timeslot_wrap .col_left,
.teacher_search_form .timeslot_wrap .col_right {
    display: table-cell;
    vertical-align: middle;
    padding: 0 10px;
}
.teacher_search_form .dl_style_1 {
    display: table;
    border-collapse: separate;
    margin: 0 auto;
    height: 42px;
}
.teacher_search_form .dl_style_1 dt {
    margin: 0 0 0 40px;
    padding: 0 20px;
    background: #092846;
    color: #fff;
    border-radius: 4px 0 0 4px;
}
.teacher_search_form .dl_style_1 dd {
    border: 1px solid #999;
    border-left: none;
    border-radius: 0 4px 4px 0;
}
.teacher_search_form .dl_style_1 input[type="date"],
.teacher_search_form .dl_style_1 input[type="datetime"],
.teacher_search_form .dl_style_1 input[type="text"] {
    padding: 12px;
    border: none;
}
.teacher_search_form .dl_style_1 .ic_calendar .datepicker {
    background: 0 0;
    cursor: pointer;
    padding: 6px 0 6px 12px;
    box-shadow: 1px 1px 0 0 transparent inset !important;
}
.teacher_search_form .dl_style_1 .ic_calendar:after {
    position: absolute;
    bottom: 0;
    right: 8px;
    content: "\f133";
    margin: auto;
    pointer-events: none;
}
.teacher_search_form .dl_style_1 .ic_clock:after {
    position: absolute;
    bottom: 0;
    right: 12px;
    content: "\f017";
    margin: auto;
    pointer-events: none;
}
.teacher_search_form .dl_style_1 select {
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
}
.login_wrap .sns_btn_wrap {
    margin: 2rem 0;
}
.sns_btn_wrap .btn_style_sns {
    display: block;
    height: 43px;
    line-height: 43px;
    max-width: 340px;
    color: #333;
    box-sizing: border-box;
    padding: 0 15px 0 38px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 700;
    border: 2px solid #999;
    border-radius: 6px;
    position: relative;
    transition: 0.2s linear;
    box-sizing: border-box;
}
.login_wrap .login_form_item,
.ticker {
    text-align: left;
}
.sns_btn_wrap .btn_style_sns.btn_apple .btn_icon {
    width: 1.4rem;
    padding: 0 0.3rem;
}
.sns_btn_wrap .btn_style_sns .btn_icon {
    position: absolute;
    left: 14px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 1.7rem;
    line-height: 4.3rem;
}
.sns_btn_wrap .btn_style_sns:hover img {
    -ms-filter: none;
    filter: none;
    opacity: 1;
}
.sns_btn_wrap .btn_style_sns-img img {
    width: 100%;
    max-width: 450px;
}
.login_wrap .sec_wrap.sec_login dl.input {
    display: flex;
    align-items: center;
    background: #fff;
    margin-bottom: 1rem;
    border: 1px solid #999;
    box-sizing: border-box;
    width: 340px;
}
.login_wrap .sec_wrap.sec_login dl.input dt {
    display: flex;
    padding: 0 1rem;
    width: 3rem;
    justify-content: center;
}
.login_wrap .sec_wrap.sec_login dl.input dd,
.ticker ul {
    width: 100%;
    position: relative;
}
.login_wrap .sec_wrap.sec_login dl.input dd:before {
    content: "";
    display: block;
    width: 1px;
    height: 80%;
    background: #c6c6c6;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.login_wrap .sec_wrap.sec_login dl.input dt i {
    width: 2rem;
}
.login_wrap .sec_wrap.sec_login dl.input dd input {
    border: none;
    border-radius: 0;
    box-shadow: none;
}
.login_wrap .ui_notice_list.bg_gray {
    border: none;
    text-align: left;
}
.login_wrap .sec_wrap.sec_login.first {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
}
.login_wrap .login_form-mail:after {
    content: "";
    height: 95%;
    width: 2px;
    position: absolute;
    background: #f5f5f5;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
.login_form-mail input.size_1 {
    width: 100%;
    box-sizing: border-box;
}
.login_wrap h2 {
    font-weight: 400;
    font-size: 3rem;
    margin: 45px 0;
}
.login_wrap h3 {
    font-size: 1.8rem;
}
.login_wrap .login_form {
    width: auto;
    margin: 0 auto;
    table-layout: fixed;
    box-sizing: border-box;
}
.login_wrap .login_form.login_form-mail {
    padding: 0 40px;
    position: relative;
    width: 50%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.login_wrap .login_form.login_form-sns {
    padding: 0 50px;
    width: 50%;
}
.login_wrap .sec_register {
    text-align: center;
    margin: 20px auto 10px;
    font-size: 1.6rem;
    border-top: 2px solid #f5f5f5;
    padding-top: 25px;
    width: 780px;
}
.ui-category {
    border-radius: 5px;
    background: #ccc;
    padding: 5px 10px;
    color: #fff;
    font-weight: 700;
    display: inline-block;
}
.ui-category.cate_all {
    background: red;
}
.ui-category.cate_appoint {
    background: #ff7200;
}
.ui-category.cate_lesson {
    background: #eeb901;
}
.ui-category.cate_teacher {
    background: #8dd82c;
}
.ui-category.cate_regist {
    background: #2cd891;
}
.ui-category.cate_service {
    background: #2cbed8;
}
.ui-category.cate_system {
    background: #4f70e8;
}
.ui-category.cate_price {
    background: #9b4fe8;
}
.ui-category.cate_trouble {
    background: #e84fe3;
}
.ui-category.cate_non-genre {
    background: #e93a7c;
}
.container.ui_new_review {
    height: 58px;
    padding: 5px 20px !important;
    box-sizing: border-box;
}
.ui_new_review h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 7px 0 5px;
}
.ui_new_review .review_thumbnail {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    overflow: hidden;
    display: inline-block;
    vertical-align: middle;
}
.ui_new_review .review_thumbnail img {
    width: 100%;
    vertical-align: middle;
}
.ui_new_review .review_comment {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 715px;
    line-height: 1.5;
}
.ui_new_review .link_review_all {
    position: absolute;
    height: 35px;
    line-height: 35px;
    text-align: center;
    top: 50%;
    right: 10px;
    margin-top: -20px;
}
.ui_new_review .link_review_all a {
    display: block;
    box-sizing: border-box;
    min-width: 150px;
    color: #00acee;
    padding: 0 5px;
    border: 2px solid #00acee;
    border-radius: 5px;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.ticker {
    width: 765px;
    position: relative;
    overflow: hidden;
    background-color: #fff;
}
.ticker ul li {
    width: 100%;
    display: none;
}
.ui-custom_spinner {
    position: relative;
    display: block;
    width: 100px;
    height: 100px;
    margin: 0 auto;
}
.ui-custom_spinner:after {
    display: block;
    content: "";
    width: 100px;
    height: 100px;
    position: absolute;
    left: -6px;
    top: -6px;
    border: 6px solid #fff;
    border-right-color: #fff;
    border-bottom-color: #0bcafa;
    border-radius: 50%;
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    -moz-animation: 1.6s infinite spinner;
    -webkit-animation: 1.6s infinite spinner;
    -o-animation: 1.6s infinite spinner;
    -ms-animation: spinner 1.6s ease infinite;
    animation: 1.6s infinite spinner;
}
@-moz-keyframes spinner {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    100%,
    50% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@-webkit-keyframes spinner {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    100%,
    50% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@-o-keyframes spinner {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    100%,
    50% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@-ms-keyframes spinner {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    100%,
    50% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
.lesson_settings_custom .item_ttl {
    font-size: 14px;
    font-weight: 700;
    margin: 15px 0 5px;
}
.lesson_settings_custom .item_ttl small {
    margin-left: 5px;
    font-weight: 400;
    font-size: 1.1rem;
    color: #999;
}
.lesson_settings_custom fieldset {
    border: none;
}
.lesson_settings_custom .inline_list {
    letter-spacing: -0.4em;
    padding: 5px 0 5px 5px;
    margin-right: -15px;
    white-space: nowrap;
}
.lesson_settings_custom .inline_list li {
    display: inline-block;
    letter-spacing: normal;
}
.lesson_settings_custom .inline_list li + li {
    margin-left: 18px;
}
.tb_selector_switch_wrap .item_ttl {
    font-size: 14px;
    font-weight: 700;
    margin: 10px 0 5px;
}
.tb_selector_switch_wrap .tb_selector table {
    width: 100%;
    table-layout: fixed;
}
.tb_selector_switch_wrap .tb_selector table tr td {
    padding-top: 6px;
}
.tb_selector_switch_wrap .tb_selector_switches {
    width: 100%;
    margin-bottom: 10px;
}
.tb_selector_switch_wrap .tb_selector_switches .tb_selector_switch {
    display: inline-block;
    width: 49%;
    box-sizing: border-box;
    font-weight: 700;
    font-size: 1.4rem;
    text-align: center;
    background: #eee;
    padding: 15px;
    border-radius: 4px;
    color: #555;
}
.tb_selector_switch_wrap .tb_selector_switches .tb_selector_switch.on {
    background: #0bcafa;
    color: #fff;
}
.tb_selector_switch_wrap .tb_selector_switches .tb_selector_switch.on:before {
    content: "\f00c";
    font-family: fontAwesome;
    font-weight: 400;
    margin-right: 0.2em;
}
.tb_custom_selector {
    position: relative;
    width: auto;
    font-size: 1.4rem;
}
.tb_custom_selector .layer {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.tb_custom_selector .options {
    display: none;
    position: absolute;
    top: 39px;
    left: 0;
    right: 0;
    width: 100%;
    width: -webkit-calc(100% - 2px);
    width: calc(100% - 2px);
    min-height: 240px;
    max-height: 240px;
    overflow: scroll;
    overflow-x: hidden;
    border: 1px solid #a9a9a9;
    background: #fff;
    z-index: 3;
}
.tb_custom_selector .options::-webkit-scrollbar {
    width: 12px;
}
.tb_custom_selector .options::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.3);
}
.tb_custom_selector .options::-webkit-scrollbar-thumb {
    background: rgba(188, 188, 188, 0.8);
    -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.5);
    -webkit-border-radius: 5px;
}
.tb_custom_selector .options::-webkit-scrollbar-thumb:window-inactive {
    background: rgba(241, 241, 241, 0.4);
}
.tb_custom_selector .options .item {
    position: relative;
    padding: 10px;
    border-top: 1px solid #ccc;
    box-sizing: border-box;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.tb_custom_selector .options .option:hover {
    background: #fffcee;
    cursor: pointer;
}
.tb_custom_selector .options .option.disabled,
.tb_custom_selector .selected_item.disable_selected {
    background: #eee !important;
    opacity: 0.5 !important;
    cursor: default !important;
}
.tb_custom_selector .item_inner {
    display: table;
    width: 100%;
    font-size: 1.5rem;
}
.tb_custom_selector .item_inner .index {
    display: none;
    font-size: 1.2rem;
    font-weight: 700;
    padding-right: 5px;
    width: 12px;
}
.tb_custom_selector .item_inner .title {
    line-height: 1.3;
    text-align: left;
    font-size: 1.4rem;
    font-weight: 700;
    display: flex;
    align-items: center;
}
.tb_custom_selector .item_inner .title > figure,
.tb_custom_selector .selected_item .item_inner .title > figure {
    flex-shrink: 0;
}
.tb_custom_selector .item_inner .title > .title-text,
.tb_custom_selector .selected_item .item_inner .title > .title-text {
    flex: 1;
}
.tb_custom_selector .item_inner .tb_rank_wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}
.tb_custom_selector .item_inner .tb_rank_wrap .rank {
    color: #e15151;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}
.tb_custom_selector .item_inner .tb_rank_wrap.rank-1:before,
.tb_custom_selector .item_inner .tb_rank_wrap.rank-2:before,
.tb_custom_selector .item_inner .tb_rank_wrap.rank-3:before {
    content: "";
    width: 2rem;
    height: 1.8rem;
    background-size: contain;
    background-image: url(../images/textbook/crown_gold.png);
    background-repeat: no-repeat;
}
.tb_custom_selector .item_inner .tb_rank_wrap.rank-2:before {
    background-image: url(../images/textbook/crown_silver.png);
}
.tb_custom_selector .item_inner .tb_rank_wrap.rank-3:before {
    background-image: url(../images/textbook/crown_bronze.png);
}
.tb_custom_selector .item_inner .tb_rank_wrap.rank-new {
    width: 20px;
}
.modal_window .btn_close_error {
    position: absolute;
    top: -18px;
    right: -18px;
    display: block;
    width: 46px;
    height: 46px;
    background: url(../images/icon/modal_close.png) no-repeat;
    cursor: pointer;
}
.tb_custom_selector .item_inner .datetime {
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    height: 13px;
    margin: auto;
    font-size: 1.2rem;
    font-weight: 400;
    color: #999;
    line-height: 1;
}
.tb_custom_selector .selected_item {
    position: relative;
    background: #fff;
    padding: 0 20px 0 10px;
    box-sizing: border-box;
    min-height: 42px;
    line-height: 1.5;
    border: 1px solid #a9a9a9;
    border-radius: 4px;
    cursor: pointer;
    z-index: 2;
}
.tb_custom_selector .selected_item:after {
    font-family: fontAwesome;
    content: "\f0d7";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 15px;
    height: 15px;
    margin: auto;
    font-size: 15px;
    line-height: 1;
}
.tb_custom_selector .selected_item .no_option:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 15px;
    height: 15px;
    margin: auto;
    font-size: 15px;
    line-height: 1;
}
.tb_custom_selector .selected_item .item_inner {
    box-sizing: border-box;
    display: flex;
    min-height: 40px;
    width: 100%;
    flex-direction: column;
    justify-content: center;
}
.tb_custom_selector .selected_item .item_inner .title,
.tb_custom_selector .selected_item .item_inner .title.t_truncate {
    text-overflow: unset;
    white-space: normal;
    padding: 5px 0;
    display: flex;
    align-items: center;
}
.tb_custom_selector .selected_item .item_inner .datetime {
    right: 25px;
    width: 106px;
    max-width: 100%;
}
.tb_custom_selector .ic_textbook,
.ui_preset_textbook .col_center .cur_textbook .ic_textbook {
    margin-right: 10px;
}
.tb_custom_selector.has_datetime .options .item,
.tb_custom_selector.has_datetime .selected_item {
    padding-right: 150px;
}
.tb_custom_selector .selected_item .item_inner .title.t_truncate,
.tb_custom_selector.has_datetime .selected_item .item_inner .title {
    width: 285px;
    max-width: 100%;
}
.tr_textbook_chapter .tb_custom_selector .selected_item,
.tr_textbook_curriculum .tb_custom_selector .selected_item {
    padding: 10px;
}
.tr_textbook_chapter .tb_custom_selector .selected_item .item_inner .title,
.tr_textbook_curriculum .tb_custom_selector .selected_item .item_inner .title {
    padding: 0;
}
.tb_custom_selector .parent_item {
    font-weight: 700;
    padding: 10px;
    background: #444;
    color: #fff;
}
.tb_custom_selector .child_list {
    margin: 10px -10px -10px;
}
.tb_custom_selector .child_item {
    padding: 10px;
    text-indent: 5px;
    font-weight: 700;
}
.tb_custom_selector .child_item:before {
    display: inline-block;
    font-family: fontAwesome;
    content: "\f0da";
    margin-right: 5px;
}
.ui_preset_textbook {
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.2);
}
.ui_preset_textbook .col_center,
.ui_preset_textbook .col_left,
.ui_preset_textbook .col_right {
    display: table-cell;
    vertical-align: middle;
    padding: 15px 20px;
}
.ui_preset_textbook .col_left {
    width: 150px;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.5;
    white-space: nowrap;
    color: #666;
    background: #eee;
}
.ui_preset_textbook-standby .col_left:before {
    font-family: fontAwesome;
    content: "\f02e";
    color: #fffc01;
    position: absolute;
    top: -12px;
    left: 15px;
    font-size: 3rem;
}
.ui_preset_textbook-standby .col_left {
    position: relative;
    background: #03c9a9;
    color: #fff;
}
.ui_preset_textbook .col_center {
    line-height: 1.5;
    padding: 10px 0 10px 15px;
}
.ui_preset_textbook .col_right {
    width: 120px;
    text-align: right;
}
.ui_preset_textbook .col_right .btn_wrap_flex .btn_style {
    box-sizing: border-box;
    min-width: 120px;
}
.ui_preset_textbook .col_right .btn_wrap_flex .btn_style + .btn_style {
    margin-top: 8px;
}
.ui_preset_textbook .col_center .cur_textbook {
    font-size: 1.4rem;
    font-weight: 700;
}
.ui_preset_textbook .col_center .cur_textbook_inner {
    display: flex;
    align-items: center;
}
.ui_preset_textbook .ui_notice_list ul li {
    line-height: 1.2;
    font-size: 1.3rem;
}
.ui_preset_textbook .col_right .link_style_1 {
    width: 151px;
    box-sizing: border-box;
    text-align: center;
}
.tab_nav_wrap .tab_nav_list {
    display: flex;
    justify-content: center;
}
.tab_nav_wrap .tab_nav_list .list_item {
    text-align: center;
    border: 2px solid #092846;
    overflow: hidden;
    background-color: #092846;
    box-sizing: border-box;
    width: calc(100% / 3);
}
.nc-payment-method-tab-menu-list > li:not(:first-child) > a,
.tab_nav_wrap .tab_nav_list .list_item:not(:first-child) {
    border-left: none;
}
.nc-payment-method-tab-menu-list > li:first-child > a,
.tab_nav_wrap .tab_nav_list .list_item:first-child {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
.nc-payment-method-tab-menu-list > li:last-child > a,
.tab_nav_wrap .tab_nav_list .list_item:last-child {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}
.tab_nav_wrap .tab_nav_list .list_item .tab_nav_btn {
    display: flex;
    height: 42px;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    font-size: 15px;
    font-weight: 700;
    color: #092846;
    box-sizing: border-box;
}
.tab_nav_wrap .tab_nav_list .list_item .tab_nav_btn.on {
    background-color: #092846;
    color: #fff;
}
.tb_custom_selector .tb_level {
    margin-top: 6px;
}
.tb_custom_selector .tb_level .level {
    display: flex;
    align-items: center;
    color: #fff;
    text-align: center;
    font-size: 1.2rem;
}
.tb_custom_selector .tb_level .level .lv-title {
    background: #333;
    width: 36px;
    height: 20px;
    line-height: 20px;
}
.tb_custom_selector .tb_level .level .lv-num {
    width: 20px;
    height: 20px;
    line-height: 20px;
    margin-left: 4px;
}
.nc_common_level_color_dl dd[data-level="1"].on,
.tb_custom_selector .tb_level .level .lv-1 {
    background-color: #9ccc65;
}
.nc_common_level_color_dl dd[data-level="2"].on,
.tb_custom_selector .tb_level .level .lv-2 {
    background-color: #c5db5a;
}
.nc_common_level_color_dl dd[data-level="3"].on,
.tb_custom_selector .tb_level .level .lv-3 {
    background-color: #e2e658;
}
.nc_common_level_color_dl dd[data-level="4"].on,
.tb_custom_selector .tb_level .level .lv-4 {
    background-color: #f8ee58;
}
.nc_common_level_color_dl dd[data-level="5"].on,
.tb_custom_selector .tb_level .level .lv-5 {
    background-color: #ffe144;
}
.nc_common_level_color_dl dd[data-level="6"].on,
.tb_custom_selector .tb_level .level .lv-6 {
    background-color: #ffcc29;
}
.nc_common_level_color_dl dd[data-level="7"].on,
.tb_custom_selector .tb_level .level .lv-7 {
    background-color: #ffba26;
}
.nc_common_level_color_dl dd[data-level="8"].on,
.tb_custom_selector .tb_level .level .lv-8 {
    background-color: #ffa726;
}
.nc_common_level_color_dl dd[data-level="9"].on,
.tb_custom_selector .tb_level .level .lv-9 {
    background-color: #ff9130;
}
.nc_common_level_color_dl dd[data-level="10"].on,
.tb_custom_selector .tb_level .level .lv-10 {
    background-color: #ff7043;
}
.btn_fixed_next,
.btn_fixed_prev {
    position: fixed;
    top: 50%;
    width: 60px;
    height: 60px;
    font-size: 60px;
    color: rgba(0, 0, 0, 0.2);
    z-index: 2;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.btn_fixed_next:hover,
.btn_fixed_prev:hover {
    color: rgba(0, 0, 0, 0.4);
}
.btn_fixed_next:before,
.btn_fixed_prev:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    font-family: fontAwesome;
    font-size: 60px;
    width: 60px;
    height: 60px;
    margin: auto;
}
.btn_fixed_prev {
    margin-top: -30px;
    margin-left: -70px;
}
.btn_fixed_prev:before {
    content: "\f104";
}
.btn_fixed_next {
    margin-top: -30px;
    margin-left: 965px;
}
.btn_fixed_next:before {
    content: "\f105";
}
#message-board-sort a,
.page_wrap .page_inner .link_box2 a:hover {
    text-decoration: none;
}
.break_word,
.users_mail {
    word-wrap: break-word;
}
.user_list_style_2.switch_large .user_list_item .thumb .pic {
    width: 130px;
    height: 130px;
}
.user_list_style_2.switch_large .spinner {
    width: 120px !important;
    height: 120px !important;
    top: -4px !important;
    left: -4px !important;
}
.user_list_style_2.switch_large .thumb .beginner {
    width: 21px;
}
.size_switch_area .size_switch_area_inner {
    background: #f5f5f5;
    padding: 3px 10px;
    border-radius: 4px;
}
.size_switch_area .size_switch_area_inner > li {
    vertical-align: baseline;
}
.size_switch_area .size_switch_area_inner .btn_switch_size {
    display: inline-block;
    cursor: pointer;
    font-size: 1.4rem;
    vertical-align: middle;
    padding: 5px;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    line-height: 1;
    background: #ccc;
    color: #fff;
    border-radius: 4px;
    height: 24px;
    width: 24px;
    box-sizing: border-box;
    text-align: center;
}
.size_switch_area .size_switch_area_inner .btn_switch_size.on,
.ui_step-orange {
    background: #f1890e;
}
.reload_area .btn_reload {
    display: inline-block;
    position: relative;
    color: #fff;
    background: #092846;
    border: 2px solid #092846;
    padding: 5px 10px 2px;
    border-radius: 4px;
    font-size: 1.5rem;
    line-height: 16px;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}
.reload_area .btn_reload:before {
    position: relative;
    display: inline-block;
    font-family: FontAwesome;
    font-weight: 400;
    color: #fff;
    content: "\f021";
    font-size: 20px;
    line-height: 1;
    vertical-align: middle;
    top: -1px;
    -webkit-transition: color 0.2s linear;
    transition: color 0.2s linear;
}
.reload_area .btn_reload:hover {
    border-color: #3e5c79;
    background-color: #3e5c79;
}
.reload_area .btn_reload.rotate:before {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    transition: transform 1s ease-out;
    -webkit-transition: -webkit-transform 1s ease-out;
    -moz-transition: -moz-transform 1s ease-out;
}
.size_switch_area > ul > li + li {
    margin-left: 5px;
}
.size_switch_area > ul > li:first-child {
    display: block;
    text-align: right;
    margin-bottom: 15px;
}
.teacher_list_ui_area.sort_area select {
    display: inline-block;
    position: relative;
    color: #555;
    background: #fff;
    border: 2px solid #bebebe;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 1.5rem;
    line-height: 16px;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    margin-left: 10px;
    height: 30px;
}
.ui_article_list_wrap .ui_article_list {
    display: table;
    border-spacing: 20px;
    margin: -20px;
}
.img-wrap,
.tag-lesson_type,
.tag-lesson_type:before,
.ui_step {
    display: inline-block;
}
.ui_article_list_wrap .ui_article_list .list_item {
    width: 250px;
    display: table-cell;
    overflow: hidden;
}
.ui_article_list_wrap .ui_article_list .list_item a {
    display: block;
    color: #555;
}
.ui_article_list_wrap .ui_article_list .list_item dl dd p {
    margin-top: 10px;
    text-align: right;
}
.ui_article_list_wrap .ui_article_list .list_item .title {
    margin-top: 10px;
    height: 44px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 1.5rem;
    font-weight: 700;
}
.ui_article_list_wrap .ui_article_list .list_item dl dd .txt_inner {
    height: 46px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    text-align: left;
    overflow: hidden;
}
.ui_article_list_wrap .ui_article_list .list_item dl .txt_area a {
    color: #111;
}
.ui_step {
    position: relative;
    background: #999;
    color: #fff;
    padding: 0.2em;
    min-width: 1em;
    height: 1em;
    text-align: center;
    vertical-align: middle;
    line-height: 1;
    font-family: Tahoma, Geneva, sans-serif;
}
.alert_wrap,
.ui_alert_wrap {
    padding: 15px;
    text-align: left;
}
.ui_step-blue {
    background: #00acee;
}
.ui_step-gray {
    background: #999;
}
.img-wrap {
    position: relative;
    border: 1px solid red;
    font-size: 0;
}
.img-wrap .close {
    position: absolute;
    top: 2px;
    left: 230%;
    z-index: 100;
    background-color: #000;
    padding: 4px 3px 3px;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
    text-align: center;
    font-size: 15px;
    line-height: 10px;
    border-radius: 50%;
}
.footer_breadcrumb {
    background: #ddd;
}
.footer_breadcrumb > .footer_breadcrumb_inner > ul {
    font-size: 1.4rem;
    line-height: 2.5;
}
.footer_breadcrumb > .footer_breadcrumb_inner > ul > li > a {
    color: #828da6;
}
.footer_breadcrumb > .footer_breadcrumb_inner > ul > li:last-child > a {
    color: #555;
    pointer-events: none;
}
.footer_breadcrumb > .footer_breadcrumb_inner > ul > li > a:hover {
    color: #555;
    text-decoration: underline;
}
.footer_breadcrumb > .footer_breadcrumb_inner > ul > li + li:before {
    font-family: fontAwesome;
    content: "\f105";
    padding: 0 15px;
}
.tb_recommend_links {
    position: absolute;
    right: 0;
    top: 0;
}
.tb_recommend_links ul li + li {
    margin-left: 20px;
}
.btn_style.btn_tb_recommend {
    position: relative;
    min-width: 170px;
    font-size: 1.6rem;
    height: 32px;
    line-height: 35px;
}
.alert_wrap,
.ui_alert_wrap {
    line-height: 1.5;
    background: #fff;
}
.btn_style.btn_tb_recommend img {
    vertical-align: top;
    padding-top: 2px;
}
.btn_style.btn_tb_recommend:hover {
    color: #000;
}
btn_style.btn_tb_recommend:after {
    position: absolute;
    content: url(../images/icon/magnifying_glass-white.png);
    display: block;
    width: 20px;
    height: 20px;
}
.tb_recommend_links .tooltip--tb_recommend {
    position: absolute;
    top: -18px;
    left: -314px;
    margin: auto;
    width: 270px;
    padding: 10px 15px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.2);
    line-height: 1.5;
}
.tb_recommend_links .tooltip:before {
    left: 100%;
    top: 50%;
    border: 9px solid rgba(204, 204, 204, 0);
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-left-color: #ccc;
    margin-top: -9px;
}
.tb_recommend_links .tooltip:after {
    left: 100%;
    top: 50%;
    border: 8px solid rgba(255, 255, 255, 0);
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-left-color: #fff;
    margin-top: -8px;
}
.users_mail.fixed_width {
    width: 550px;
    position: relative;
}
.alert_wrap {
    position: relative;
    border: 5px solid #fcc82a;
    border-radius: 15px;
    margin-bottom: 15px;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.2);
}
.ui_alert_wrap {
    position: relative;
    border: 5px solid #ccc;
    border-radius: 15px;
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.3);
}
.ui_alert_wrap-yellow {
    border-color: #fcc82a !important;
}
.ui_alert_wrap-red {
    border-color: #f84f63 !important;
}
.ui_alert_wrap.tip:after,
.ui_alert_wrap.tip:before {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.ui_alert_wrap.tip:after {
    border-top-color: #fff;
    border-width: 12px;
    margin-left: -12px;
    z-index: 2;
}
.ui_alert_wrap.tip:before {
    border-top-color: #ccc;
    border-width: 19px;
    margin-left: -19px;
    z-index: 1;
}
.ui_alert_wrap.tip.tip-left:after,
.ui_alert_wrap.tip.tip-left:before {
    left: 10%;
}
.ui_alert_wrap.tip.tip-right:after,
.ui_alert_wrap.tip.tip-right:before {
    left: 90%;
}
.ui_alert_wrap-yellow.tip:before {
    border-top-color: #fcc82a !important;
}
.ui_alert_wrap-red.tip:before {
    border-top-color: #f84f63 !important;
}
.tag-lesson_type {
    min-width: 70px;
    color: #fff;
}
.tag-lesson_type:before {
    content: "";
    position: relative;
    margin-right: -2px;
    vertical-align: middle;
    padding-right: 5px;
}
.tag-lesson_type.now:before {
    content: url(../images/lesson_history/now.png);
}
.tag-lesson_type.reserve:before {
    content: url(../images/lesson_history/reserve.png);
}
.tag-lesson_type.free:before {
    content: url(../images/lesson_history/free.png);
}
.tag-lesson_type.live-lesson:before {
    content: url(../images/lesson_history/live.png);
}
.tag-lesson_type.reserved-live-lesson:before {
    content: url(../images/lesson_history/reserved-live.png);
}
.trouble_shooting_window {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
}
.trouble_shooting_window * {
    margin: 0;
    padding: 0;
    text-align: left;
    font-size: 14px;
    line-height: inherit;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    -o-box-sizing: content-box;
    -ms-box-sizing: content-box;
    box-sizing: content-box;
}
.trouble_shooting_window .trouble_shooting_frame {
    position: fixed;
    background: #fff;
    width: 300px;
    right: 20px;
    bottom: 0;
    border-radius: 6px 6px 0 0;
}
.trouble_shooting_window .trouble_shooting_frame#trouble_shooting-waiting {
    display: none;
    cursor: pointer;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_titlebar {
    background: #7fba00;
    height: 30px;
    position: relative;
    border-radius: 6px 6px 0 0;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_titlebar .title {
    line-height: 30px;
    text-align: center;
    color: #fff;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_titlebar .btn_close {
    position: absolute;
    top: 5px;
    right: 10px;
    color: #fff;
    border: 1px solid #fff;
    box-sizing: border-box;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    font-size: 16px;
    cursor: pointer;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_inner {
    position: relative;
    padding: 15px;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
.trouble_shooting_window .trouble_shooting_frame#trouble_shooting-waiting .trouble_shooting_inner {
    border-radius: 0;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_inner .announcement {
    margin-left: 50px;
    line-height: 1.5;
    margin-bottom: 10px;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_inner .btn_style.btn_bright_green {
    display: block;
    min-width: 210px;
    width: 210px;
    height: 40px;
    line-height: 40px;
    margin: 0 auto;
    font-weight: 400;
    border-radius: 5px;
    box-shadow: 0 -3px 0 0 rgba(0, 0, 0, 0.2) inset;
}
.trouble_shooting_window .trouble_shooting_frame .trouble_shooting_inner .icon {
    position: absolute;
    left: 10px;
    top: -15px;
    width: 50px;
    height: 50px;
    border-radius: 3px;
}
.trouble_shooting_window .trouble_shooting_frame#trouble_shooting-waiting .trouble_shooting_inner .icon {
    top: -20px;
}
.trial_register .alert_to_plans {
    width: 960px;
    margin: 10px auto 15px;
    border: 4px solid #f0295d;
    border-radius: 5px;
    background: #fff;
    color: #f0295d;
    box-sizing: border-box;
    padding: 20px;
    font-weight: 700;
}
.loader_overlay_bg {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9999;
}
.loader_overlay_circle {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 10rem;
    height: 10rem;
    text-align: center;
    color: #fff;
    z-index: 20;
}
.global_lesson_progress {
    width: 460px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border: 5px solid #80d4f9;
    margin: 0 auto;
    padding: 30px 20px;
    box-sizing: border-box;
    background: url(../images/campaign/global_lesson/lesson_progress_bg.png) top 4rem center no-repeat;
}
.global_lesson_progress .lesson_progress_head {
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 30px;
    padding: 0 14px 6px;
    border-bottom: 2px solid #004986;
    display: inline-block;
}
.global_lesson_progress .lesson_progress_head strong {
    color: #004986;
    font-size: 50px;
    font-weight: 700;
}
.global_lesson_progress .lesson_progress {
    display: flex;
    position: relative;
}
.global_lesson_progress .lesson_progress:after {
    content: "";
    width: -webkit-calc(100% - 20px);
    width: calc(100% - 20px);
    height: 14px;
    background: #80d4f9;
    position: absolute;
    top: 50%;
    left: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.bootstrap-tagsinput .badge,
.bootstrap-tagsinput .badge.badge-info {
    background-color: #03c9a9;
    color: #fff;
}
.global_lesson_progress .lesson_progress li {
    margin: 0 1rem;
    position: relative;
    z-index: 10;
    width: 62px;
    height: 36px;
}
.global_lesson_progress .lesson_progress li > img {
    object-fit: contain;
    display: block;
    background: #fff;
}
.global_lesson_progress .lesson_progress li.progress_1 {
    background: url(../images/campaign/global_lesson/progress_1.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_2 {
    background: url(../images/campaign/global_lesson/progress_2.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_3 {
    background: url(../images/campaign/global_lesson/progress_3.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_4 {
    background: url(../images/campaign/global_lesson/progress_4.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_5 {
    background: url(../images/campaign/global_lesson/progress_5.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_6 {
    background: url(../images/campaign/global_lesson/progress_6.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_7 {
    background: url(../images/campaign/global_lesson/progress_7.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_8 {
    background: url(../images/campaign/global_lesson/progress_8.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_9 {
    background: url(../images/campaign/global_lesson/progress_9.jpg) no-repeat #fff;
}
.global_lesson_progress .lesson_progress li.progress_10 {
    background: url(../images/campaign/global_lesson/progress_10.jpg) no-repeat #fff;
}
.select2-container .select2-selection--single {
    height: 38px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 38px;
    font-size: 1.5rem;
}
.select2-container--default .select2-results__option {
    font-size: 1.5rem;
    line-height: 1.5;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 36px;
}
.select2-container.select2-container--open {
    z-index: 11001;
}
.wrap_newline {
    white-space: pre-wrap;
}
.tb-copyright-area {
    font-size: 1.2rem;
    line-height: 1.5;
}
.tb-copyright-area .tb-copyright-list {
    padding-left: 15px;
}
.tb-copyright-area .tb-copyright-list li:before {
    content: "・";
    position: absolute;
    font-size: 1.2rem;
    line-height: 1.5;
    top: 0;
    left: -15px;
}
.nc-tagsinput {
    position: absolute;
}
.bootstrap-tagsinput input {
    border: none;
    box-shadow: none;
    width: 100%;
}
.bootstrap-tagsinput .badge {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    line-height: 1.5;
    border-radius: 4px;
    font-weight: 700;
}
.bootstrap-tagsinput .badge [data-role="remove"]:after {
    padding: 0;
    width: 16px;
    height: 16px;
    font-size: 13px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.func_dropdown_wrap > .func_dropdown_list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 2;
}
.func_dropdown_wrap > .func_dropdown_overlay {
    display: none;
    position: fixed;
    box-sizing: border-box;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: transparent;
    z-index: 1;
}
.btn-lesson-resv.btn_style,
.dropdown_btn_wrap .dropdown_control,
.dropdown_btn_wrap .dropdown_control.btn_style {
    box-shadow: none;
    font-size: 13px;
    min-width: 150px;
    height: auto;
    line-height: 38px;
    padding: 0 20px;
}
.btn-lesson-confirmation.btn_style {
    display: inline-block;
    min-width: 160px;
    box-sizing: border-box;
    text-align: center;
    font-weight: 700;
    font-size: 1.5rem;
    border-radius: 2px;
    color: #555;
    margin-top: 8px;
    line-height: 38px;
    height: auto;
}
.dropdown_btn_wrap.on .dropdown_control {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.dropdown_btn_wrap .dropdown_btn_list {
    background-color: #fff;
    width: 100%;
    border: 1px solid #ccc;
    border-top: none;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}
.footer.halloween,
body.halloween {
    background: #3c1e6b;
}
.dropdown_btn_wrap .dropdown_btn_list .dropdown_btn {
    border: none;
    display: block;
    background-color: #fff;
    color: #555;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    padding: 13px 10px;
    transition: 0.2s ease-in-out;
}
.dropdown_btn_wrap .dropdown_btn_list .dropdown_btn:hover {
    background-color: #f1f1f1;
}
.dropdown_btn_wrap .dropdown_btn_list .dropdown_btn.disable {
    background-color: #999;
}
.header-v3.halloween {
    position: relative;
    width: 100%;
    z-index: 999;
    margin: 0 auto;
    background: #3c1e6b;
    clear: both;
    padding: 10px 0 0;
}
.footer.halloween {
    width: 100%;
    margin: 0 auto;
    color: #fff;
    font-size: 1.2rem;
}
.header-v3 .header_inner .logo_halloween_h {
    position: absolute;
    left: -15%;
    top: -10px;
}
.campaign_lesson_count,
.christmas_count {
    width: 55%;
    margin: 0 auto;
    position: relative;
}
.christmas_count .christmas_count_content {
    text-align: center;
    position: absolute;
    top: 55%;
    width: 100%;
    margin: 0 auto;
}
.campaign_lesson_count .campaign_lesson_count_content p,
.christmas_count .christmas_count_content p {
    font-size: 2rem !important;
    font-weight: 700;
    color: #555;
}
.nc_common_level_color_dl {
    display: flex;
    font-family: sans-serif;
}
.nc_common_level_color_dl dd,
.nc_common_level_color_dl dt {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    min-width: 2rem;
    height: 1.6rem;
    font-size: 1.2rem;
    line-height: 1;
    color: #fff;
    background-color: #cdcdcd;
    padding: 0 0.6rem;
}
.nc_common_level_color_dl dt {
    background-color: #333;
}
.nc_common_level_color_dl dd {
    font-weight: 700;
    margin-left: 0.4rem;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
}
.nc_common_level_color_dl dd + dd {
    margin-left: 0.4rem;
}
.nc-article-style-1 {
    font-size: 1.5rem;
    line-height: 1.6;
    color: #555;
}
.nc-article-style-1 > section + section {
    padding-top: 3rem;
    margin-top: 3rem;
    border-top: 1px solid #eee;
}
.nc-article-style-1 > section > h3 {
    font-size: 2.4rem;
    font-weight: 700;
    padding-left: 1rem;
    border-left: 0.5rem solid #0db9b1;
    margin-bottom: 2rem;
}
.nc-article-style-1 > section > p {
    margin: 1rem 0;
}
.nc-article-style-1 > section > ol {
    padding-left: 3rem;
}
.nc-article-style-1 > section > ol > li {
    list-style: decimal;
    margin: 1rem 0;
}
.fp_episode .fp_episode_item .fp_episode_content,
.nc-payment-method-tab-menu-list {
    display: flex;
}
.nc-payment-method-tab-menu-list.j-content-end {
    justify-content: flex-end;
}
.nc-payment-method-tab-menu-list.j-content-center {
    justify-content: center;
}
.nc-payment-method-tab-menu-list > li > a {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 130px;
    height: 30px;
    font-size: 14px;
    text-align: center;
    padding: 0 5px;
    color: #092846;
    background-color: #fff;
    border: 1px solid #092846;
}
.nc-payment-method-tab-menu-list > li > a.on {
    color: #fff;
    background-color: #092846;
}
.footer_select_lang_wrap,
.footer_select_lang_wrap a {
    color: #fff;
    font-size: 12px;
    line-height: 1.5;
}
.footer_select_lang_wrap .func_dropdown_overlay.footer_select_lang_overlay {
    width: 100vw;
    height: 100vh;
    position: fixed;
    background-color: transparent;
    z-index: 10000;
}
.footer_select_lang_wrap .lang_dropdown_control {
    display: inline-flex;
    padding: 0;
    width: 185px;
    align-items: stretch;
    justify-content: center;
    font-size: 12px;
    border: 1px solid #fff;
}
.footer_select_lang_wrap .lang_dropdown_control > .inner_icon {
    display: inline-flex;
    align-items: center;
    padding: 0 8px;
    border-right: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_select_lang_wrap .lang_dropdown_control > .inner_text {
    flex: 1;
    padding: 5px 10px;
    position: relative;
}
.footer_select_lang_wrap .lang_dropdown_control > .inner_text:after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    top: calc(50% - 6px);
    right: 10px;
    border: 1px solid transparent;
    border-bottom-color: #fff;
    border-right-color: #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: center;
}
.footer_select_lang_wrap .func_dropdown_list.lang_dropdown_list {
    width: 200px;
    height: 200px;
    overflow-y: auto;
    position: absolute;
    top: unset;
    bottom: 0;
    left: 0;
    background-color: #092846;
    border: 1px solid #fff;
    z-index: 10001;
}
.footer_select_lang_wrap .lang_dropdown_list > li.list_item:not(:first-child) {
    border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.footer_select_lang_wrap .lang_dropdown_list > li.list_item > a.lang_switch_link {
    padding: 5px 10px;
    background-color: transparent;
    transition: background-color 0.2s ease-in-out;
}
.footer_select_lang_wrap .lang_dropdown_list > li.list_item > a.lang_switch_link:not(.on):hover {
    background-color: rgba(255, 255, 255, 0.1);
}
.footer_select_lang_wrap .lang_dropdown_list > li.list_item > a.lang_switch_link.on {
    background-color: rgba(0, 0, 0, 0.3);
}
.footer.halloween .footer_select_lang_wrap .func_dropdown_list.lang_dropdown_list {
    background-color: #3c1e6b;
}
.scrollbar_style_1::-webkit-scrollbar-track {
    background-color: #f1f1f1;
}
.scrollbar_style_1::-webkit-scrollbar {
    width: 6px;
    background-color: #f1f1f1;
}
.scrollbar_style_1::-webkit-scrollbar-thumb {
    background-color: #c1c1c1;
}
.scroll_box {
    height: 10rem;
    background-color: #fff;
    padding: 2rem;
    border: 1px solid #ccc;
    margin: 0 auto;
    overflow-y: scroll;
}
.goog-te-banner-frame.skiptranslate {
    display: none !important;
}
.fp_episode .fp_episode_item + .fp_episode_item {
    margin-top: 5rem;
}
.fp_episode .fp_episode_item .fp_episode_title {
    margin-bottom: 2rem;
    font-size: 2rem;
    font-weight: 700;
    color: #004986;
}
.fp_episode .fp_episode_item .fp_episode_content .fp_episode_img {
    max-width: 25rem;
    width: 70%;
    margin: 0 auto;
}
.fp_episode .fp_episode_item .fp_episode_content .fp_episode_text {
    margin: auto 0 auto 3rem;
    width: 100%;
}
.fp_episode .fp_episode_item .fp_episode_content .fp_episode_text p {
    font-size: 1.5rem;
}
.campaign_lesson_count .campaign_lesson_count_content {
    text-align: center;
    position: absolute;
    top: 70%;
    width: 70%;
    margin: 0 auto;
}
.campaign_lesson_count .campaign_lesson_count_content p span {
    font-size: 7rem !important;
    color: #004986;
}
.w_fit-content {
    width: fit-content;
}
.related_tb_wrap {
    margin-top: 3rem;
}
.related_tb_wrap .title {
    font-size: 2.2rem;
    font-weight: 700;
    margin: 0 0 1.5rem;
    padding: 4px 0 4px 5px;
}
.related_tb_wrap .title::before {
    content: "\f1ea";
    font-family: FontAwesome;
    display: inline-block;
    position: relative;
    height: 1.7rem;
    width: 2.2rem;
    background-size: contain;
    background-position: left bottom;
    background-repeat: no-repeat;
    opacity: 0.67;
    margin-right: 1rem;
}
.related_tb_wrap .article_list {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.related_tb_wrap .article_list::after {
    content: "";
    display: block;
    width: calc(33% - 5px);
}
.related_tb_wrap .article_list > li {
    position: relative;
    width: calc(33% - 5px);
}
.related_tb_wrap .article_list > li:after {
    content: "";
    display: block;
    padding-bottom: 53%;
}
.related_tb_wrap .article_list > li > .news_link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 0.6rem rgb(0 0 0 / 16%);
    color: #fff;
    overflow: hidden;
}
.related_tb_wrap .article_list > li.fav > .news_link:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 3;
    width: 2.5rem;
    height: 2.5rem;
    right: 1.5rem;
    bottom: 1.5rem;
    background-image: url(../images/daily_news/icon-heart-pink.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.related_tb_wrap .article_list > li > .news_link:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.8);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 0, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 77%);
}
.related_tb_wrap .article_list > li.completed > .news_link:after {
    background: rgba(0, 0, 0, 0.8);
}
.related_tb_wrap .article_list .news_link > .news_cover {
    height: 100%;
    transition: transform 0.2s ease-in-out;
}
.related_tb_wrap .article_list .news_link:hover > .news_cover {
    transform: scale(1.08);
    transition: transform 0.8s ease-in-out;
}
.related_tb_wrap .article_list .news_link > .news_cover > img {
    display: block;
    height: 100%;
    width: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.related_tb_wrap .article_list .news_link > .text_area {
    position: absolute;
    z-index: 3;
    width: 100%;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
}
.related_tb_wrap .article_list > li.completed .news_link > .text_area {
    opacity: 0.4;
}
.related_tb_wrap .article_list .text_area {
    padding: 1.2rem;
}
.related_tb_wrap .article_list .text_area .new_badge_wrap,
.related_tb_wrap .article_list .text_area .news_title_wrap {
    margin-bottom: 1rem;
}
.related_tb_wrap .article_list .text_area .new_badge {
    font-family: sans-serif;
    font-weight: 300;
    color: #fff;
    font-size: 1.2rem;
    line-height: 2.4rem;
    text-align: center;
    display: inline-block;
    padding: 0 0.8rem;
    border: 1px solid #fff;
}
.related_tb_wrap .article_list .text_area .tag_wrap {
    margin-bottom: 0.5rem;
    margin-left: -1rem;
}
.related_tb_wrap .article_list .text_area .news_tag {
    display: inline-block;
    font-family: sans-serif;
    font-weight: 300;
    color: #ccc;
    font-size: 1.2rem;
    line-height: 1.6rem;
    margin-left: 1rem;
}
.related_tb_wrap .article_list .text_area .news_tag::before {
    content: "";
    display: inline-block;
    position: relative;
    bottom: -0.1rem;
    background-image: url(../images/daily_news/icon-tags-white.svg);
    height: 1.2rem;
    width: 1.6rem;
    background-size: contain;
    background-position: left bottom;
    background-repeat: no-repeat;
    opacity: 0.67;
}
.related_tb_wrap .article_list .text_area .news_title {
    position: relative;
    font-family: sans-serif;
    color: #fff;
    font-weight: 700;
    font-size: 1.6rem;
    --line-height: 2.8rem;
    --max-lines: 2;
    line-height: var(--line-height);
    max-height: calc(var(--line-height) * var(--max-lines));
    overflow: hidden;
}
.related_tb_wrap .article_list .news_link > .complete_date {
    position: absolute;
    z-index: 3;
    top: 0.8rem;
    right: 1rem;
    color: #fff;
    font-size: 1.4rem;
    line-height: 3rem;
    padding-left: 3.5rem;
    background-image: url(../images/daily_news/icon-check-white.svg);
    background-repeat: no-repeat;
    background-size: 2.4rem 2.4rem;
    background-position: 0 center;
}
.progress {
    overflow: hidden;
    height: 2.6rem;
    background-color: #f5f5f5;
    border-radius: 1.3rem;
    -webkit-box-shadow: inset 0 1px 2px rgb(0 0 0 / 10%);
    box-shadow: inset 0 1px 2px rgb(0 0 0 / 10%);
    margin-top: 1rem;
    width: 100%;
}
.progress .progress-bar {
    -webkit-animation: 2s linear infinite progress-bar-stripes;
    animation: 2s linear infinite progress-bar-stripes;
}
@-webkit-keyframes progress-bar-stripes {
    from {
        background-position: 40px 0;
    }
    to {
        background-position: 0 0;
    }
}
@keyframes progress-bar-stripes {
    from {
        background-position: 40px 0;
    }
    to {
        background-position: 0 0;
    }
}
.progress-striped .progress-bar {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: 40px 40px;
}
.progress-bar {
    float: left;
    width: 0;
    height: 100%;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.6rem;
    align-items: center;
    color: #fff;
    text-align: center;
    background-color: #428bca;
    -webkit-box-shadow: inset 0 -1px 0 rgb(0 0 0 / 15%);
    box-shadow: inset 0 -1px 0 rgb(0 0 0 / 15%);
    -webkit-transition: width 0.6s;
    transition: width 0.6s;
}
.loading-centered {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    width: 25px;
    top: 50%;
    z-index: 1;
}
.small-loader-container {
    width: 100% !important;
    text-align: center;
}
.small-loader-container img.small-loader {
    margin: 18px auto;
    width: 30px;
}
#selected-files li {
    background: #f5f5f5;
    padding: 5px;
    margin: 1px 0;
}
#selected-files p {
    margin: 0;
    font-weight: 800;
}
.wrap-loader {
    text-align: center;
    width: 87%;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 4px 0;
}
.wrap-loader img {
    width: 16px;
}
.email_validate_error {
    width: 100%;
    margin: 10px auto;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 5px 0;
    display: flex;
    justify-content: center;
    border: 1px dotted #f05444;
}
.enable_lesson > .btn_live_reserved.btn_lesson_status-live > .icon-podcast {
    display: inline-block !important;
    width: 2rem !important;
    height: 2rem !important;
    background-image: url(../images/icon/podcast.svg) !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: center !important;
    vertical-align: middle !important;
}
.comment_list .t_link {
    word-break: break-all;
}
.header-v3.ninety_five_off:lang(ja) {
    background: #c00500;
}
.header-v3.ninety_five_off .header_contents:lang(ja) {
    position: relative;
    margin-left: 136px;
}
.header-v3.ninety_five_off .logo:lang(ja)::before {
    content: "";
    width: 13.6rem;
    height: 7rem;
    position: absolute;
    top: -12px;
    left: -153px;
    background-image: url(../images/campaign/new_year/header_95.png);
}
.footer.ninety_five_off:lang(ja) {
    padding-top: 250px;
    background: url(../images/campaign/new_year/95off_footer.png) center top repeat-x, center top repeat-x #c00500;
}
.notice-unreceived-coins-count {
    display: inline-block;
    background: #f14444;
    width: 20px;
    height: 20px;
    line-height: 20px;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
    padding: 0;
    margin-left: 6px;
    margin-bottom: 6px;
}
.signup_wrap--coupon_code .c_pnk {
    color: #de76a9;
}
.signup_wrap--coupon_code .desc_wrap-coupon_code .desc_main {
    border: 2px solid #de76a9;
    border-radius: 1rem;
    padding: 2.5rem;
}
.signup_wrap--coupon_code .desc_wrap-coupon_code .desc_main .desc_main_ttl {
    background: #de76a9;
    color: #fff;
    padding: 0.6rem 1rem;
    display: inline-block;
}
.signup_wrap--coupon_code .desc_wrap-coupon_code .desc_main .check_mark {
    position: relative;
    text-align: left;
    padding-left: 2rem;
}
.signup_wrap--coupon_code .desc_wrap-coupon_code .desc_main .check_mark:before {
    content: url(../images/icon/checked-pnk.svg);
    width: 1.6rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.4rem;
}
.signup_wrap--coupon_code .desc_wrap-coupon_code .desc_main .icon {
    width: 20px;
    margin-right: 10px;
}
.signup_wrap--coupon_code .img_coin {
    width: 40px;
}
a.btn_emergency {
    min-width: 100px;
}
.rec-result-type-audio p {
    font-size: inherit;
    line-height: inherit;
}
.rec-result-type-audio {
    padding: 1rem;
}
.rec-result-type-audio .rec-result-type-audio-inner {
    padding: 2rem;
    background-color: #f4f5f8;
    border-radius: 0.5rem;
    max-width: 50rem;
    margin: 0 auto;
}
.rec-result-type-audio .basic-info {
    font-size: 1.5rem;
    line-height: 1.6;
}
.rec-result-type-audio .audio-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    background-color: #1ec568;
    padding: 0 2.5rem;
    width: 100%;
    max-width: 26rem;
    height: 5rem;
    border: none;
    border-radius: 100rem;
    transition: 0.2s ease-in-out;
}
.rec-result-type-audio .audio-btn:hover {
    background-color: #00bf56;
}
.rec-result-type-audio .audio-btn.disabled {
    pointer-events: none;
    background-color: #e4e4e4;
}
.amazon_gift_register_campaign_banner {
    margin: 0 auto;
    border-radius: 5px;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.amazon_gift_register_campaign_banner img {
    width: 100%;
    display: block;
}
.amazon_gift_register_campaign_banner > h2 {
    font-size: 1.25rem;
    font-weight: 400;
    color: #fff;
    line-height: 1.5;
    margin: unset;
    width: 66%;
}
.amazon_gift.footer .footer_inner,
.amazon_gift.header-v3 {
    background-color: #ed1c23;
}
.amazon_gift.header-v3 .logo::after {
    background-image: none !important;
}
.amazon_gift.header-v3 .logo img,
.amazon_gift > .footer_logo img {
    filter: brightness(0) invert(1);
}
.amazon_gift.header-v3 .header_left_area {
    position: relative;
    padding-left: 120px;
}
.amazon_gift.header-v3 .header_left_area::before {
    position: absolute;
    content: "";
    background-image: url(../images/campaign/amazongift/header_95.png);
    background-repeat: no-repeat;
    background-size: contain;
    inset: 0;
    transform: translateY(-3px);
}
.amazon_gift.footer {
    padding-top: 252px !important;
    background: url(../images/campaign/amazongift/95off_footer.png), #ed1c23;
    background-position: top center;
    background-repeat: no-repeat;
}
.page_wrap .page_inner .link_box2 {
    position: absolute;
    right: 119px;
    top: 34px;
    z-index: 10;
}
.page_wrap .page_inner .link_box2 a {
    color: #3778f1;
    text-decoration: underline;
}
.page_wrap .page_inner .store_cart {
    width: 30px;
    height: 30px;
    position: absolute;
    right: 0;
    top: -7px;
    z-index: 10;
}
.page_wrap .page_inner .store_cart span {
    background: #ea3323;
    width: 20px;
    display: block;
    text-align: center;
    border-radius: 50%;
    color: #fff;
    position: absolute;
    top: -8px;
    right: -11px;
    font-size: 12px;
    line-height: 20px;
    z-index: 11;
}
.page_store_order_cansel .btn_wrap .btn_style.btn_blue {
    max-width: 150px;
    width: 100%;
    background: #3778f1;
    min-width: unset;
    margin-right: 50px;
}
.custom_cht_msg_width {
    width: 640px !important;
}
.fav-off {
    color: #ccc;
}
.mypage_wrap_two_column .user_list_style-box.switch_middle .user_list_item .data_area .rate,
.reserve_search_wrap_two_column .user_list_style-box.switch_middle .user_list_item .data_area .rate,
.user_list_style-box.switch_tile .user_list_item .data_area .rate {
    padding: 0 0 0 20px;
}
.ui-rating_area__label {
    font-size: 1.2rem;
    color: #555;
    margin-bottom: 0.7rem;
}
.ui-rating_area .rating_star__light_red .rating_star .rating_star_value:before {
    color: #f8b4b5;
}
.mypage_wrap_two_column .user_list_style-box.switch_middle .user_list_item .clm_r .data_area .ui-rating_area__label,
.reserve_search_wrap_two_column .user_list_style-box.switch_middle .user_list_item .clm_r .data_area .ui-rating_area__label,
.user_list_style-box.switch_tile .user_list_item .clm_r .data_area .ui-rating_area__label {
    font-size: 1.1rem;
    margin-bottom: 0.7rem;
    text-align: left;
}
.mypage_wrap_two_column .user_list_style-box.switch_middle .user_list_item .clm_r .data_area .ui-rating_area__label p > span,
.reserve_search_wrap_two_column .user_list_style-box.switch_middle .user_list_item .clm_r .data_area .ui-rating_area__label p > span,
.user_list_style-box.switch_tile .user_list_item .clm_r .data_area .ui-rating_area__label p > span {
    display: none;
}
.mypage_wrap_two_column .user_list_style-box.switch_middle .user_list_item .data_area + .data_area,
.reserve_search_wrap_two_column .user_list_style-box.switch_middle .user_list_item .data_area + .data_area,
.user_list_style-box.switch_tile .user_list_item .data_area + .data_area {
    margin-top: 1.3rem;
}
.nationality_area {
    display: flex;
    align-items: center;
    gap: 10px;
}
.national_flag {
    width: auto !important;
    max-height: 15px;
}

.footer .footer_menu .footer_menu_item + .footer_menu_item {
    margin-top: 1.6rem;
}
.footer .footer_menu .menu_parent {
    margin-bottom: inherit;
}
.footer .col_right .footer_menu  {
    display: flex;
    gap: 2.4rem;
}