/*==========================================================
                        C U S T O M
==========================================================*/
/* MB */
.under main .mb10 {
    margin-bottom: 10px
}
.under main .mb15 {
    margin-bottom: 15px
}
.under main .mb20 {
    margin-bottom: 20px
}
.under main .mb25 {
    margin-bottom: 25px
}
.under main .mb30 {
    margin-bottom: 30px
}
.under main .mb40 {
    margin-bottom: 40px
}
.under main .mb50 {
    margin-bottom: 50px
}
.under main .mb60 {
    margin-bottom: 60px
}
.under main .mb70 {
    margin-bottom: 70px
}
.under main .mb80 {
    margin-bottom: 80px
}
.under main .mb90 {
    margin-bottom: 90px
}
/* MT */
.under main .mt10 {
    margin-top: 10px
}
.under main .mt15 {
    margin-top: 15px
}
.under main .mt20 {
    margin-top: 20px
}
.under main .mt25 {
    margin-top: 25px
}
.under main .mt30 {
    margin-top: 30px
}
.under main .mt40 {
    margin-top: 40px
}
.under main .mt50 {
    margin-top: 50px
}
.under main .mt60 {
    margin-top: 60px
}
.under main .mt70 {
    margin-top: 70px
}
.under main .mt80 {
    margin-top: 80px
}
.under main .mt90 {
    margin-top: 90px
}
/* MAX_W */
.under main .max_w200 {
    width: 100%;
    max-width: 200px
}
.under main .max_w250 {
    width: 100%;
    max-width: 250px
}
.under main .max_w300 {
    width: 100%;
    max-width: 300px
}
.under main .max_w350 {
    width: 100%;
    max-width: 350px
}
.under main .max_w500 {
    width: 100%;
    max-width: 500px
}
.under main .max_w600 {
    width: 100%;
    max-width: 600px
}
.under main .max_w700 {
    width: 100%;
    max-width: 700px
}
.under main .max_w800 {
    width: 100%;
    max-width: 800px
}
.under main .max_w900 {
    width: 100%;
    max-width: 900px
}
/* MIN-W */
.under main .min_w200 {
    min-width: 200px
}
.under main .min_w250 {
    min-width: 250px
}
.under main .min_w300 {
    min-width: 300px
}
.under main .min_w350 {
    min-width: 350px
}
.under main .min_w500 {
    min-width: 500px
}
.under main .clear_left {
    clear: left;
}
/*==========================================================
                        FONT FAMILY
==========================================================*/
.under main {
    /* background: #F7F7F7;*/
}
.under main h2, .under main h3, .under main h4, .under main h5, .under main h6, .under main table th, .under main .list_faq dt, .under main .list_step dt {
    font-family: var(--f-yumin)
}
/*==========================================================
                        H E A D I N G
==========================================================*/
.un_page_ttl {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    color: #fff;
}
.un_page_ttl .en {
    margin-bottom: 9px;
    font-family: var(--f-en2);
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    position: relative;
    padding-left: 25px;
}
.un_page_ttl .en:before {
    position: absolute;
    content: "";
    background: url(../images/icon_water_w.svg) no-repeat center top / 13px;
    width: 13px;
    height: 19px;
    left: 0;
    top: 3px;
}
.un_page_ttl .ja {
    font-weight: bold;
    font-size: 45px;
    letter-spacing: 0.05em;
}
.under main .un_ttl3, .under main .u_editor h3 {
    margin-bottom: 60px;
}
.under main .un_ttl4, .under main .u_editor h4 {
    max-width: 1100px;
    display: flex;
}
.under main .un_ttl4, .under main .u_editor h4, .under main .un_ttl_lg {
    position: relative;
    font-weight: bold;
    font-size: 26px;
    letter-spacing: 0.05em;
    line-height: 1.69;
    padding-bottom: 24px;
    margin-bottom: 38px;
}
.under main .un_ttl4.let0, .under main .un_ttl_lg {
    letter-spacing: 0em;
}
.under main .un_ttl_lg {
    width: calc(100% + 15px);
    padding-bottom: 0;
    margin-bottom: 20px;
}
.under main .un_ttl4:before, .under main .un_ttl4:after, .under main .u_editor h4:before, .under main .u_editor h4:after {
    position: absolute;
    content: "";
}
.under main .un_ttl4:before, .under main .u_editor h4:before {
    width: 4000px;
    height: 1px;
    background: #DDDDDD;
    bottom: 0;
    left: calc(50% - 1000px);
}
.under main .un_ttl4:after, .under main .u_editor h4:after {
    width: 150px;
    height: 3px;
    background: linear-gradient(#075bbc 0%, #00a496 100%);
    left: 0;
    bottom: -1px;
}
.under main .boxh3_txt {
    margin-bottom: 80px;
}
.under main .un_ttl5, .under main .u_editor h5 {
    position: relative;
    font-weight: bold;
    font-size: 25px;
    letter-spacing: 0.03em;
    line-height: 1.51;
    color: #075BBC;
    margin-bottom: 28px;
    padding-left: 25px;
    overflow: hidden;
}
.under main .un_ttl5:before, .under main .u_editor h5:before {
    position: absolute;
    content: "";
    width: 5px;
    background: transparent;
    background: #075BBC;
    height: 100%;
    left: 0;
    bottom: 0;
}
.under main .un_ttl6, .under main .u_editor h6 {
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 0.05em;
    padding-left: 23px;
    position: relative;
    line-height: 1.7;
}
.under main .un_ttl6:before, .under main .u_editor h6:before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    background: #075bbc;
    border-radius: 50%;
    left: 0;
    top: 14px;
}
/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main #content {
    padding: 0 0 180px;
    background: #fff;
    position: relative;
}
.under main #content:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 250px;
    bottom: 0;
    left: 0;
    background: #f7f7f7;
}
.under main #content.bg_none:before {
    background: #fff;
}
.under main.full #content {
    background: #fff;
}
.under main section {
    padding: 0 0 80px;
    margin-bottom: 0;
}
.under main section.sech4 {
    position: relative;
    padding: 0px 0 60px 0;
    /*  margin-bottom: 35px;*/
    pointer-events: none;
}
.under main section.sech4.pd0 {
    margin-bottom: 0;
}
.under main section.sech4:before {
    position: absolute;
    content: "";
    width: 4000px;
    height: 100%;
    left: calc(50% - 2000px);
    top: 0;
    background: #fff;
    pointer-events: none;
}
.under main section.sech4.sech4_gray {
    margin-bottom: 60px;
    padding-bottom: 60px !important;
}
.under main section.sech4.sech4_gray:before {
    left: auto;
    background: #f7f7f7;
    right: -105px;
    height: calc(100% - 60px);
    top: 60px;
}
.under main section.sech4.first {
    padding-top: 75px;
}
.under main section.sech3 {
    padding-bottom: 130px;
}
.under main section.sech4_txt:before {
    position: absolute;
    content: "";
    width: 4000px;
    right: -105px;
    top: 0;
    height: 100%;
    pointer-events: none;
    background: #f7f7f7;
    left: auto;
}
.under main section.sech4_txt * {
    position: relative;
    z-index: 1;
}
.under main section {
    padding: 0 0 80px;
    margin-bottom: 0
}
.under main section:last-child {
    padding: 0;
}
.under main ol li {
    list-style: decimal;
}
/* LINK + BUTTON TOP */
.under main .link {
    text-decoration: underline;
    color: var(--mcolor);
}
/*============ TOP INFO ============ */
.under main .box_top_info {
    background: url('../images/top_info_bg.png') no-repeat center /1920px;
    height: 722px;
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}
.under main .box_top_info:before {
    position: absolute;
    content: "";
    background: url("../images/cur_line_un.png") no-repeat center top/1920px;
    width: 1920px;
    height: 404px;
    left: 0;
    bottom: -210px;
}
.under main #top_info {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 110px;
    height: 338px;
}
.under main #top_info .inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    max-width: 1430px;
    height: 100%;
    padding-bottom: 1px;
}
.under main .inner {
    width: 1430px;
}
.under main p {
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.875;
}
/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path {
    margin-bottom: 35px;
    border-bottom: 1px rgba(255, 255, 255, 0.5) solid;
    position: relative;
    margin-top: -20px;
}
.under.ovn_page main #topic_path {
    margin-top: 0;
}
.under main #topic_path ul {
    display: flex;
    padding: 0px 0 0px;
    max-width: 1390px;
    margin: 0 auto -12px;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.under main #topic_path li {
    display: inline;
    position: relative;
    padding-bottom: 14px;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.025em;
    margin-bottom: 19px;
    word-break: break-word;
    line-height: 2;
}
.under main #topic_path li:not(:last-child)::after {
    content: "";
    position: relative;
    display: inline-block;
    margin: 0px 20px 0 20px;
    top: -1px;
    pointer-events: none;
    width: 5px;
    height: 9px;
    background: url("../images/icon_topic_path.svg") no-repeat center/5px;
}
.under main #topic_path li, .under main #topic_path li a {
    color: #fff;
}
.under main #topic_path li a {
    border-bottom: 2px #fff solid;
    text-decoration: none;
    padding: 0 6px 24px;
}
/*============ LIST ANCHOR TOP ============ */
.under main .list_anchor_top {
    display: flex;
    flex-wrap: wrap;
    max-width: 1400px;
    margin: 0 auto;
    width: 100%;
}
.under main .list_anchor_top li:not(:last-child) {
    margin-right: 30px;
}
.under main .list_anchor_top li a {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.03em;
    color: #fff;
    background: url("../images/icon_donw_list.svg") no-repeat left top 5px/27px;
    padding: 5px 0 5px 41px;
    display: inline-block;
}
/*============ LIST ANCHOR LINK ============ */
.under main .list_anchor {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin-bottom: 30px;
    gap: 15px;
}
.under main .list_anchor .btn {
    margin: 0 0px 15px;
}
.under main .list_anchor .btn.active a {
    pointer-events: none;
    background: #666 !important;
    color: #fff;
}
.under main .list_anchor .btn.active a:before, .under main .list_anchor .btn a:before {
    background: url(../images/arrow_right_hover.png) no-repeat center / 40px;
}
.under main .list_anchor .btn.active a:before {
    background: url(../images/arrow_right_hover.png) no-repeat center / 40px !important;
}
.under main .list_anchor:last-child {
    margin-bottom: -15px;
}
.under main .list_anchor .btn.cate1 a, .under main .list_anchor .btn.cate2 a {
    color: #fff;
}
/*.under main .list_anchor .btn.cate1 a {
    background-color: var(--mcolor);
}*/
.under main .list_anchor .btn a {
    background-color: var(--mcolor);
    color: #fff;
    letter-spacing: 0em;
    width: 390px;
	text-decoration: none !important;
}
/*.under main .list_anchor .btn.cate2 a, .under main .info_box .cate.cate2 {
    background-color: var(--scolor);
}
.under main .info_box .cate.cate3 {
    background-color: #f7f7f7;
    color: #121212
}*/
/*==========================================================
                        T A B L E
==========================================================*/
.under main table.td_top td {
    vertical-align: top
}
.under main table.tb_fix {
    table-layout: fixed;
}
.under main table {
    margin-bottom: 30px;
}
.under main table.mailform th, .under main table th {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #075bbc;
}
.under main table.mailform td .info {
    color: var(--mcolor)
}
.under main table td {
    font-weight: 500;
}
.under main table th, .under main table td {
    padding: 28px 20px;
    border: none;
    position: relative;
}
.under main .bg_td1 {
    background: #ccc;
}
.under main .bg_td2 {
    background: #eee;
}
.under main .bor_w {
    border-bottom: 1px #fff solid;
}
.under main table th:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background: #075BBC;
    left: 0;
    bottom: 0;
}
.under main table tr {
    position: relative;
}
.under main table tr:before {
    position: absolute;
    content: "";
    width: 4000px;
    height: 1px;
    background: #ddd;
    left: -2000px;
    bottom: 0;
    z-index: 9;
}
.under main table.tb_th_bor tr:before {
    z-index: -1;
}
.under main table img {
    display: block;
    margin: auto;
}
.under main table img.m_left {
    margin-left: 0;
}
.under main table th {
    border-color: var(--mcolor);
    border-right-color: #fff;
}
.under main table tr th:first-child {
    border-left-color: var(--mcolor);
}
.under main table tr th:last-child {
    border-right-color: var(--mcolor);
}
.under main table.mailform th, .under main table.tb_block th {
    border-color: var(--mcolor);
    border-bottom-color: #fff;
}
.under main table.mailform tr:first-child th, .under main table.tb_block tr:first-child th {
    border-top-color: var(--mcolor);
}
.under main table.mailform tr:last-child th, .under main table.tb_block tr:last-child th {
    border-bottom-color: var(--mcolor);
}
/*============ LIST ============ */
/* LIST 01 */
.under main .list01 {
    margin-bottom: 30px;
}
.under main .list01.hid {
    overflow: hidden;
}
.under main .list01.mb10 {
    margin-bottom: 10px;
}
.under main .list01 li {
    display: block;
    padding-left: 20px;
    margin-bottom: 11px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
}
.under main .list01 li::before {
    background: url("../images/icon_list_un.png") no-repeat left top/cover;
    width: 9px;
    height: 12px;
    position: absolute;
    top: 9px;
    left: 0;
    content: ''
}
.under main .list01 li a {
    position: relative;
    margin-left: -15px;
    padding-left: 15px;
}
/* LIST 02 */
.under main .list02 {
    margin-bottom: 30px;
}
.under main .list02 li {
    counter-increment: li;
    padding-left: 30px;
    position: relative;
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 16px;
    list-style: none;
}
.under main .list02 li::before {
    content: counter(li, decimal-leading-zero);
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    top: 2px;
    font-size: 12px;
    font-weight: 500;
    color: #075BBC;
    line-height: 22px;
    font-family: var(--f-en2);
    letter-spacing: 0.05em;
}
/* LIST CHECK */
.under main .list_check {
    margin-bottom: 30px;
}
.under main .list_check li {
    display: block;
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative;
    font-weight: 500;
}
.under main .list_check li::before {
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 7px;
    height: 15px;
    border: solid #075BBC;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
/* LIST FAQ */
.under main .list_faq {
    margin-bottom: 30px;
}
.under main .list_faq dl {
    background: #FFF;
    padding: 15px 15px 10px 15px;
    margin-bottom: 50px
}
.under main .list_faq dt {
    position: relative;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 10px;
    border-bottom: 1px dotted var(--mcolor);
    display: flex;
    align-items: center;
    padding-bottom: 15px;
}
.under main .list_faq dt span {
    width: 40px;
    height: 40px;
    font-weight: bold;
    text-align: center;
    line-height: 1em;
    background: #fff;
    border: 1px solid var(--mcolor);
    color: var(--mcolor);
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: var(--f-en2);
    font-size: 16px;
}
.under main .list_faq dd {
    position: relative;
    padding-left: 50px;
    min-height: 48px;
    display: flex;
}
.under main .list_faq dd .txt {
    align-self: center;
}
.under main .list_faq dd span {
    position: absolute;
    top: 5px;
    left: 0;
    width: 40px;
    height: 40px;
    font-weight: bold;
    text-align: center;
    line-height: 1em;
    color: #fff;
    background: var(--mcolor);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: var(--f-en2);
    font-size: 16px;
}
/* LIST STEP */
.under main .list_step dl {
    margin-bottom: 35px;
    padding-bottom: 50px;
    position: relative;
}
.under main .list_step dl:not(:last-child)::before {
    background: url('../images/ic-step.png') center /cover no-repeat;
    width: 80px;
    height: 30px;
    position: absolute;
    bottom: -10px;
    left: calc(50% - 40px);
    content: '';
}
.under main .list_step dl:last-child {
    padding-bottom: 0;
    margin-bottom: 0
}
.under main .list_step dt {
    background: var(--mcolor);
    color: #fff;
    font-weight: 500;
    padding: 10px;
}
.under main .list_step dd {
    padding: 15px;
    background: #fff;
    box-shadow: 0 5px 8px rgba(0, 0, 0, 0.15);
}
/*============ FRAME ============ */
/* FRAME 01 */
.under main .frame01 {
    padding: 50px 30px;
    background-color: #fff;
    border-radius: 10px;
    margin-bottom: 50px;
    border: 1px #ddd solid;
    width: 100%;
    display: inline-block;
}
.under main .frame01 .un_ttl4:before {
    width: 100%;
    left: 0;
}
/* FRAME 02 */
.under main .frame02 {
    border: 1px solid #e6e6e6;
    padding: 25px;
    margin-bottom: 50px;
}
/* FRAME PICKUP */
.under main .frame_pick {
    padding: 25px;
    background: #fff;
    margin-bottom: 50px;
    border-radius: 10px;
}
.under main .frame_pick .pick_ttl {
    font-size: 24px;
}
.under main .frame_pick .pick_ttl span {
    font-size: 36px;
    display: block;
}
/* IFRAME BOX */
.under main .box_map {
    width: 100%;
    height: 400px
}
.under main .box_ytb {
    width: 900px;
    height: auto;
    margin: 0 auto;
    aspect-ratio: 16/9;
    max-width: 100%;
}
.under main .box_map iframe, .under main .box_ytb iframe {
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
}
/* ===========  OVN ===========  */
.under main .ovn_list {
    margin-top: 50px;
}
.under main .ovn_list dl {
    display: flex;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px dashed #ccc
}
.under main .ovn_list dt {
    display: flex;
    align-items: center;
    width: 150px
}
.under main .ovn_list dt img {
    margin-right: 10px;
    position: relative;
    top: -2px;
}
.under main .ovn_list dd {
    width: calc(100% - 150px);
    display: flex;
    align-items: center;
}
.under main .ovn_list dd a {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.under main .ovn_detail_ct img {
    max-width: 800px;
    max-height: 600px;
}
/* ===========  PAGINATION ===========  */
.under main .pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    margin: 30px auto 0
}
.under main .pagination li {
    margin: 0 5px;
}
.under main .pagination li a {
    width: 40px;
    height: 40px;
    text-align: center;
    border: 1px solid var(--mcolor);
    background: #fff;
    display: flex;
    color: var(--mcolor);
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    font-family: var(--f-en2);
}
.under main .pagination li:hover a, .under main .pagination li.active a {
    background: var(--mcolor);
    color: #fff;
}
.under main .pagination li.active a {
    pointer-events: none;
}
.under main .pagination li.disabled {
    display: none
}
/* ===========  PAGINATION WP ===========  */
.under main .wp_pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 40px;
}
.under main .wp_pagination > span, .under main .wp_pagination a {
    min-width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: #fff;
    margin: 5px;
    text-align: center;
    font-weight: 500;
    line-height: 1em;
    transition: all 0.3s;
    padding: 5px;
    border: 1px #ccc solid;
    font-size: 14px;
    background: #ccc;
}
.under main .wp_pagination a {
    color: var(--txt)
}
.under main .wp_pagination > span {
    background: var(--mcolor);
    border: 1px var(--mcolor) solid;
    color: #fff;
}
/*==========================================================
                     EDITOR WORDPRESS + ovn
==========================================================*/
.u_editor::after {
    content: "";
    display: table;
    clear: both;
}
.u_editor div, .u_editor * {
    font-size: 16px;
}
.u_editor .clearfix:not(:last-child) {
    margin-bottom: 40px;
}
/* Blockquote */
.u_editor blockquote {
    border-left: 4px solid #ccc;
    padding-left: 1em;
    margin: 1em 0;
    color: var(--txt);
    font-style: italic;
}
.u_editor blockquote cite {
    display: block;
    font-style: normal;
    margin-top: 0.5em;
    color: #999;
}
/* Caption */
.u_editor .wp-caption {
    max-width: 100%;
    text-align: center;
    margin-bottom: 1.5em;
}
.u_editor .wp-caption:last-child {
    margin-bottom: 0;
}
.u_editor .wp-caption img {
    margin: 0 auto;
    border: 0;
}
.u_editor .wp-caption-text {
    font-size: 16px;
    color: var(--txt);
    margin-top: 0.5em;
    font-weight: 500;
}
/* Horizontal line */
.u_editor hr {
    border: none;
    border-top: 1px solid #ccc;
    margin: 2em 0;
}
/* Text align */
.u_editor .has-text-align-center {
    text-align: center;
}
.u_editor .has-text-align-right {
    text-align: right;
}
.u_editor .has-text-align-left {
    text-align: left;
}
/* Gutenberg-specific */
.u_editor .wp-block-image {
    margin: 1.5em 0;
}
.u_editor .wp-block-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    margin: 1.5em 0;
}
.u_editor .wp-block-quote {
    border-left: 4px solid #ccc;
    padding-left: 1em;
    color: #555;
    font-style: italic;
}
.u_editor .wp-block-quote cite {
    display: block;
    font-style: normal;
    margin-top: 0.5em;
    color: #999;
}
.u_editor .wp-block-table td, .u_editor .wp-block-table th {
    border: 1px solid #ccc;
    padding: 0.5em;
}
.under main .u_editor a {
	color: #3498db;
}
.alignright, .alignleft {
    margin-bottom: 30px;
    max-width: 300px !important
}
.aligncenter {
    display: block !important;
    margin: 0 auto
}
@media screen and (min-width: 751px) {
    .alignleft {
        float: left;
        margin-right: 30px;
    }
    .alignright {
        float: right;
        margin-left: 30px;
    }
}
@media screen and (max-width: 750px) {
    .alignleft, .alignright {
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
}
/* RESET */
.under main table:last-child, .under main .list_faq:last-child, .under main .list_faq dl:last-child, .under main .list01:last-child, .under main .list01 li:last-child, .under main .list02:last-child, .under main .list02 li:last-child, .under main .list_check:last-child, .under main .list_check li:last-child, .under main .list_step:last-child, .under main .list_step dl:last-child, .under main section p:last-child, .under main p:last-child, .under main .frame01:last-child, .under main .frame02:last-child, .under main .frame_pick:last-child {
    margin-bottom: 0
}
/*============ UNDER ANCHOR ============ */
.under main .under_anc {
    position: absolute;
    overflow: hidden;
    left: calc(50% - 858px);
    top: 25px;
    z-index: 10;
    width: 332px;
    border-radius: 20px;
    background: linear-gradient(to bottom, rgba(105, 196, 154, 1) 0%, rgba(17, 168, 150, 1) 46%, rgba(105, 196, 154, 1) 100%);
    padding-top: 39px;
    padding-bottom: 34px;
}
.under main .under_content {
    width: 100%;
    max-width: 1130px;
    /* padding-top: 25px;*/
}
.under main .under_anc .wrap {
    padding: 0px 2px 25px 15px;
    width: 100%;
    /* margin-bottom: 69px; */
    top: 25px;
    position: relative;
}
.under main .under_anc .wrap ul {
    padding-right: 30px;
}
.under main .under_anc.active {
    position: fixed;
    top: 116px;
}
.under main .under_anc_tt {
    display: flex;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 0.03em;
    color: #fff;
    align-items: center;
    margin-bottom: -4px;
    padding-left: 15px;
}
.under main .under_anc_tt span {
    font-family: var(--f-en2);
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.05em;
    position: relative;
    margin-left: 25px;
}
.under main .under_anc_tt span:before {
    position: absolute;
    content: "";
    width: 1px;
    height: 18px;
    background: #fff;
    transform: rotate(32deg);
    left: -13px;
    top: 5px;
    opacity: 0.5;
}
.under main .under_anc li:not(:last-child) {
    margin-bottom: 15px;
}
.under main .under_anc li a {
    position: relative;
    display: inline-block;
    line-height: 1.685;
    font-weight: 700;
    padding-left: 30px;
    font-size: 14px;
    letter-spacing: 0.03em;
    color: #fff;
}
.under main .under_anc li.active a {
    cursor: default;
    pointer-events: none;
    color: #FFCE3C;
}
.under main .under_anc li {
    position: relative;
}
.under main .under_anc li a {
    background: url("../images/icon_donw_list.svg") no-repeat left top/23px;
    padding-left: 34px;
    position: relative;
}
.under main .under_main {
    max-width: 1920px;
    margin: 0 auto 0;
}
.under main .content_full {
    padding-top: 75px;
}
.under main #top_info.full .inner {
    padding-left: 0;
    padding: 7px 30px 0;
}
.under main .full #topic_path {
    left: 35px;
}
.under main .under_main .inner {
    width: 100%;
    padding-left: 540px;
}
.under .sec_flex_con_txt {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
}
.under .box_conh4 {
    max-width: 560px;
    width: 100%;
    margin-left: 90px;
}
.under .sec_flex_con {
    display: flex;
    position: relative;
    align-items: flex-start;
    pointer-events: none;
}
.under .inner2.pd01 {
    padding-bottom: 0;
    margin-bottom: 0;
}
.under .sech4 .sec_flex_con {
    min-height: 550px;
}
.under .sech4 .sec_flex_con.first {
    margin-top: 80px;
}
.under .sech4 .sec_flex_con.flex_direc_r {
    padding-right: 450px;
}
.under .sec_flex_con.flex_direc {
    flex-direction: row-reverse;
    right: 0;
    padding-left: 575px;
    padding-right: 0px;
}
.under .sec_flex_con.flex_direc.db {
    padding-top: 120px;
}
.under .sec_flex_con .img {
    position: absolute;
    right: -235px;
    top: 0px;
    pointer-events: none;
}
/*.under .sec_flex_con.flex_direc .img {
    right: 0;
    left: -255px;
}*/
.under .sec_flex_con.flex_direc .img {
    right: 0;
    left: -80px;
}
.under .sech5_bg {
    position: relative;
    pointer-events: auto;
    margin-top: 60px;
}
.under .sec_flex_con.flex_direc.db .img {
    top: -60px;
}
.under .sec_flex_con .wrap {
    width: 100%;
    pointer-events: auto;
}
.mt_img1 {
    margin-top: 100px;
}
.under .inner2 {
    padding-bottom: 60px;
    margin: 0 auto;
    padding-top: 60px;
    position: relative;
    margin-bottom: 60px;
}
.under .inner2:before {
    position: absolute;
    content: "";
    width: calc(100% + 4000px);
    height: 100%;
    left: calc(50% - 2000px);
    top: 0;
    background: #F7F7F7;
}
.under .inner2 > * {
    max-width: 1100px;
    position: relative;
    z-index: 1;
}
.under .inner2.pd01 > * {
    max-width: inherit;
}
.under main .boxh3 {
    background: #fff;
    position: relative;
    z-index: 9;
}
.under main .sech3 {}
.under main .un_ttl3, .under main .u_editor h3 {
    flex-shrink: 0;
    font-weight: bold;
    font-size: 32px;
    letter-spacing: 0.05em;
    line-height: 1.625;
    background: url("../images/ic_h3.png") no-repeat left bottom/62px;
    padding-bottom: 39px;
    word-break: break-all;
}
.under main .un_ttl3.let0 {
    letter-spacing: 0em;
}
.under main .un_ttl3.full, .under main .u_editor h3 {
    width: 100%;
    margin-bottom: 100px;
}
.under main .u_editor h3 {
    padding-right: 0;
}
.under main .boxh6 {
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 40px 0px 40px 75px;
    position: relative;
}
.under main .boxh6 .list01 li {
    color: #767676;
}
.under main .boxh6:before {
    position: absolute;
    content: "";
    width: 1000px;
    height: 100%;
    right: -500px;
    background: #fff;
    top: 0;
}
.under main .boxh6 .item {
    position: relative;
}
.under main .boxh6 .item:not(:last-child) {
    margin-bottom: 30px;
    padding-bottom: 29px;
}
.under main .boxh6 .item:not(:last-child):before {
    border-bottom: 1px #ddd solid;
    width: 4000px;
    left: -75px;
    bottom: 0;
    position: absolute;
    content: "";
}
.under main .boxh6 p {
    color: #767676;
}
.under main .btn_lg a {
    width: 400px;
}
.under main .btn_lg2 a {
    width: 520px;
}
.under main .mv_box_list {
    margin-left: 0;
}
.under main .mv_box_list > div {
    height: auto;
    border: 1px #ddd solid;
}
.under main .mv_subtxt {
    padding: 5px 10px 15px;
    letter-spacing: 0em;
}
.under main .item2 .mv_ttl, .under main .item1 .mv_ttl, .under main .mv_box_list .mv_ttl {
    padding-left: 15px;
}
.under main .box_list_txt {
    display: flex;
    flex-wrap: wrap;
}
.under main .box_list_txt li {
    background: #075BBC;
    color: #fff;
    padding: 5px 15px;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.under main .box_list_txt li:not(:last-child) {
    margin-right: 5px;
}
.under main .un_bnr1 a {
    width: 100%;
    max-width: 700px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    text-align: center;
    margin: 0 auto;
    background: url("../images/arrow_w_round1.svg")var(--scolor) no-repeat right 20px center/20px;
    border-radius: 10px;
    height: 110px;
    font-weight: bold;
    text-decoration: none;
}
.under .sec_flex_con.pd01 .wrap {
    width: 100%;
}
.under .sec_flex_con.pd01 .img {
    top: 85px;
}
.under .sech4 .sec_flex_con.first {
    padding-top: 70px;
}
.under main .mt50 {
    margin-top: 50px;
}
.under main .management_box, .under main .management_box_sub .wrap {
    display: flex;
}
.under main .management_box {
    justify-content: space-between;
    max-width: 880px;
    margin: 0 auto;
}

.under main .management_box_sub .wrap {
    flex-direction: column;
}
.under main .management_box_sub .wrap .item {
    width: 100%;
    display: flex;
    align-items: center;
}
.under main .management_box_sub > .item {
    align-items: center;
}
.under main .management_box_sub {
    position: relative;
}
.under main .management_box_sub:not(:last-child):before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 30px;
    border-color: transparent transparent transparent #075bbc;
    right: -90px;
    top: calc(50% - 20px);
}
.under main .management_box_sub .img {
    margin-bottom: 0;
    margin-right: 20px;
    flex-shrink: 0;
}
.under main .management_box_sub:not:last-child {
    margin-right: 50px;
}
.under main .management_box_sub .item:not(:last-child) {
    margin-bottom: 40px;
}
.under main .management_box_sub > .item {}
.under main .management_list li {
    font-weight: 500;
    position: relative;
    padding-left: 15px;
}
.under main .management_list li:not(:last-child) {
    margin-bottom: 10px;
}
.under main .management_list li:before {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #9fb1c7;
    left: 0;
    top: 11px;
    position: absolute;
    content: "";
}
.under main .management_box .sub2 .management_list li:before {
    background: #01a89e;
}
.under main .management_tt {
    font-size: 20px;
    font-weight: 600;
}
.under main .management_list {
    flex-grow: 1;
}
.under main.full {
    background: #fff;
}
.under main .inner3 {
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    background: #fff;
    position: relative;
}
.under main .site_map_list ul:not(:last-child) {
    margin-bottom: 50px;
}
.under main .site_map_list ul {
    width: 30%;
}
.under main .site_map_list ul.site_map_link_full {
    width: 100%;
}
.under main .site_map_list ul li.big {
    margin-bottom: 10px;
}
.under main .site_map_list ul li.big, .under main .site_map_list ul li.big a {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 28px;
    color: #00a496;
}
.under main .site_map_list ul li > a {
    position: relative;
}
.under main .site_map_list ul li:not(.big) > a {
    padding-left: 15px;
}
.under main .site_map_list ul li:not(.big) > a:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border: 2px #00a496 solid;
    border-right: none;
    border-top: none;
    left: 0;
    top: 5px;
}
.under main .site_map_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.com_img {
    display: inline-block;
    margin: 5px 5px -8px;
}
.under main .td_img1 {
    margin: 0 5px;
    display: table;
}
.under main .privacy_txt {
    text-align: center;
    color: #1c1c1c;
}
.under main .list01_f {
    display: flex;
    flex-wrap: wrap;
    max-width: 570px;
}
.under main .list01_f li:not(:last-child) {
    margin-right: 20px;
}
/* OVERNOTE */
.under main .list_ovn {
    display: flex;
    flex-wrap: wrap;
}
.under main .list_ovn > li {
    width: calc((100% - 75px) / 4);
    margin: 0 25px 50px 0;
    position: relative;
    box-shadow: 9px 9px 13px 0px rgba(0, 0, 0, 0.07);
    padding-bottom: 15px;
    display: flex;
    flex-direction: column;
}
.under main .list_ovn > li .list_tag li {
    font-size: 13px;
}
/*.under main .list_ovn > li .list_tag {
    margin-top: auto;
}*/
.under main .box_area, .under main .list_ovn > li .cat {
    position: absolute;
    left: 0;
    top: 0;
    background: var(--mcolor);
    color: #fff;
    padding: 2px 10px 2px;
    z-index: 9;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    max-width: 85%;
}
.under main .box_area {
	pointer-events: none;
}
.under main .list_ovn > li .date {
    margin-bottom: 0px;
    color: #666;
    padding: 0 15px;
}
.under main .list_ovn > li a, .under main .list_column > li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}
.under main .list_ovn > li .img {
    position: relative;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 180px;
    background: #e6e6e6;
    margin-bottom: 15px;
}
.under main .list_ovn > li .img img {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    object-fit: cover;
}
.under main .list_ovn > li .big {
    font-size: 16px;
    font-weight: bold;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    color: #1c1c1c;
    padding: 0 10px;
    word-break: break-all;
    margin-bottom: 10px;
    line-height: 1.625;
    letter-spacing: 0.02em;
}
.under main .center_post {
    display: table;
    margin: 0 auto 30px;
}
.under main .center_post img {
    max-height: 500px;
    max-width: 100%;
    width: auto;
}
.under main .btn.is_prev a {
    padding-left: 0;
    padding-right: 27px;
    justify-content: flex-end;
}
.under main .btn.is_prev a:before {
    background: url(../images/arrow_left.png) no-repeat center / 40px;
    left: 15px;
    right: auto;
}
.under main .btn.is_none a {
    background: #f7f7f7;
    padding-left: 0;
    justify-content: center;
}
.under main .btn.is_none a:before {
    display: none;
    ;
}
.under main .box_toc p {
    font-size: 28px;
    text-align: center;
    font-weight: 500;
    background: #efd862;
    border-radius: 999px;
    padding: 10px;
    color: #595959;
}
.under main .info_box {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
}
.under main .info_box .date {
    margin-bottom: 10px;
    width: 100%;
    text-align: center;
}
.under main .info_box .cate {
    background: var(--mcolor);
    min-width: 120px;
    color: #fff;
    padding: 2px 10px 2px;
    font-size: 14px;
    text-align: center;
}
.under main .box_info_news {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    word-break: break-all;
}
.under main .list_ovn > li .cate {
    background: var(--mcolor);
    padding: 2px 15px;
    min-width: 120px;
    text-align: center;
    font-size: 16px;
    color: #fff;
    border-radius: 999px;
    margin-bottom: 10px;
}
.under main .list_tag {
    display: flex;
    flex-wrap: wrap;
}
.under main .list_tag li {
    margin: 5px;
    background: var(--mcolor);
    color: #fff;
    text-align: center;
    padding: 1px 10px 2px;
    font-size: 16px;
    border-radius: 5px;
}
.under main .u_editor img {
    height: auto !important;
    width: auto !important;
}
.under main .box_toc p {
    font-size: 28px;
    text-align: center;
    font-weight: 500;
    background: #efd862;
    border-radius: 999px;
    padding: 10px;
    color: #595959;
}
.under main .box_case {
    display: flex;
    /* margin-bottom: 30px;*/
}
.under main .case_img {
    width: 500px;
    height: 400px;
    border: 1px #ddd solid;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 50px;
    margin-bottom: 0;
    flex-shrink: 0;
}
.under main .case_img img {
    max-width: 100%;
    max-height: 100%;
    flex-shrink: 0;
}
.under main .case_wrap {
    align-self: center;
    flex-grow: 1;
}
.under main .case_wrap .un_ttl3 {
    margin-bottom: 40px;
}
.under main .un_case_h3_ttl {
    font-size: 24px;
    color: var(--mcolor);
    font-weight: bold;
    border-bottom: 2px var(--mcolor) solid;
    margin-bottom: 35px;
}
.under main .un_case_h3_ttl span {
    font-size: 70%;
    color: #333;
}
.under main .box_cate {}
.under main .box_case_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 30px;
}
.under main .case_link_all {
    flex-shrink: 0;
    margin-left: 50px;
    ;
}
.under main .case_link_all a {
    border-bottom: 1px #000 solid;
    color: #000;
    position: relative;
    display: block;
    background: url("../images/icon_list_case.png") no-repeat right center/14px;
    padding-right: 25px;
}
.under main .box_cate dl {
    display: flex;
}
.under main .box_cate dl .dis_none {
    display: none;
}
.under main .column_wrap {
    display: flex;
    justify-content: space-between;
}
.under main .box_cate dl:not(:last-child) {
    margin-bottom: 15px;
}
.under main .box_cate dl dt {
    font-size: 18px;
    font-weight: bold;
    margin-right: 20px;
    width: 120px;
    flex-shrink: 0;
}
.under main .box_cate dl dd ul li a.active {
    color: #fff;
    border-color: var(--mcolor);
    pointer-events: none;
    background: var(--mcolor);
}
.under main .box_cate dl dd ul {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.under main .box_cate dl dd ul li {}
.under main .box_cate dl dd ul li a {
    display: block;
    padding: 2px 10px;
    border-radius: 20px;
    border: 1px #ddd solid;
    font-size: 14px;
    font-weight: bold;
}
/*COLUMN*/
.under main .list_column {
    display: flex;
    flex-wrap: wrap;
}
.under main .list_column > li {
    width: 100%;
    position: relative;
    display: flex;
    padding: 25px;
    border: 2px #efefef solid;
}
.info_box {
    flex-shrink: 0;
    margin-right: 50px;
}
.under main .list_column > li .big {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    color: #1c1c1c;
    word-break: break-all;
    margin-bottom: 0px;
    flex-grow: 1;
    align-self: center;
}
.under main .list_column > li:not(:last-child) {
    margin-bottom: 30px;
}
.under main .list_img {
    display: flex;
    margin-bottom: 30px;
}
.under main .list_img li:not(:last-child) {
    margin-right: 40px;
}
.under main .bold2 {
    font-weight: 700;
}
.under main .lable_group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}
.under main .lable_group .lable {
    padding: 2px 10px;
    margin-right: 5px;
    border: 2px var(--mcolor) solid;
    border-radius: 5px;
}
.under .ft_form_ttl {
    text-align: center;
    font-size: 17px;
    margin-bottom: 15px;
    font-weight: bold;
    color: #f00;
}
.under .w_auto {
    width: fit-content;
}
#fmail .magic_box {
    position: relative;
    border: 1px solid #e5e5e5;
    width: 100%;
    display: flex;
    align-items: center;
    height: 40px;
    border-radius: 3px;
    padding: 3px 12px;
    letter-spacing: 0.05em;
    background: #fff;
}
#fmail .magic_box select {
    border: none !important;
    background: transparent;
    appearance: none;
    width: 65px !important;
    height: auto !important;
    padding: 3px 0 0 !important;
    pointer-events: none;
    flex-shrink: 0;
    font-size: 16px;
}
#fmail .magic_box input.fmail:not([type="checkbox"]) {
    width: auto !important;
    height: auto !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    background: none;
    flex-grow: 1;
    font-size: 16px;
}
.error #fmail .magic_box {
    margin-bottom: 30px;
}
.error #fmail .magic_box .fmail_error {
    position: absolute;
    bottom: -35px;
    left: 0;
}
.under main .u_editor table tr:before {
    display: none;
}
.under main .u_editor table td {
	background: #fff;
	border-bottom: 1px #ddd solid;
	border-top: 1px #ddd solid;
}

.under main .star_ic{font-size: 53%;
    display: inline-block;
    transform: translateY(-5px);
    margin-left: 3px;}
#fmail select.fmail.is_hide{visibility:hidden !important;opacity: 0 !important;width: 0 !important;height: 0 !important;}

html[lang="en"] .under main .management_box{
    max-width: 100%;
}
