/*==========================================================
                        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}

/*==========================================================
                        FONT FAMILY
==========================================================*/
.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
==========================================================*/
.under main h2,
.under main h3,
.under main h4,
.under main h5,
.under main h6{font-weight: 500;}

.under main h2{font-size: 7.4rem;text-align: center;margin-bottom: 0;color: #FFF;font-family: var(--f-nsr);text-shadow: rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.85) 0rem 0.3rem 7rem;letter-spacing: -.1rem;}
.under main h2 span{font-size: 5.4rem;}

.under main h3 > span{display: block;}
.under main h3{text-align: center;position: relative;z-index: 2;font-size: 5.5rem;font-family: var(--f-nsr);color: var(--mcolor);margin-bottom: 30px;z-index: 2;}
.under main h3 .en{font-size: 12.8rem;font-family: var(--f-gwd);color: #85cfee;letter-spacing: 0.4rem;line-height: 1;font-weight: 300;transform: rotate(-15deg) translateX(-1rem);;padding-top: 3rem;margin:0 auto -3.7rem;z-index: -1;position: relative;text-transform:capitalize;width: fit-content}
.under main h3::after{content: '';position: absolute;width: 12.3rem;height: 9.6rem;background: url('../images/ttl_h3_ic1.png') no-repeat center /contain;left: calc(50% - 6.1rem);top: 0;z-index: -2;}

.under main h4{font-size: 4.8rem;position: relative;font-family: var(--f-nsr);color: var(--mcolor);line-height: 1.35;letter-spacing: -.1rem;margin-bottom: 3rem;}
.under main h4 span{font-size: 3.6rem;}
.under main h4 .sys_l{display: inline-block;margin-left: -2rem;}
.under main h5{font-size: 2.8rem;color: var(--mcolor);margin-bottom: 1.5rem;}
.under main h6{font-size: 2rem;position: relative;}
.under main h6::before,
.under main h6::after{content: ""; position: absolute;height: 0.3rem;left: 0; bottom: -0.5rem;}
.under main h6::before{background-color: var(--mcolor);width: 5rem;left: 0;z-index: 2;}
.under main h6::after{background-color: #ccc;width: 100%;}

.under main .u_heading{position: relative;padding: 3.9rem 0 10.7rem;}
.under main .u_heading::after{content: '';position: absolute;background-color: #f4f5f7;width: 100%;height: 200%;min-width: 192rem;left: 50%;transform: translateX(-50%);bottom: 0;z-index: -1;}
.under main .u_heading p{text-align: center;color: var(--mcolor);font-size: 2rem;line-height: 2.2;}

.under main .u_heading h3{margin-bottom: 2px;}
.under main .u_box{margin-bottom: 7rem;}
/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main .inner{width:132rem}
.under main #content{padding: 0 0 12rem}
.under main section{padding: 0 0 12rem;margin-bottom:0}
.under main section:last-child{padding:0}
/* .under main ol li{list-style: decimal;} */
.under main ol li{list-style: none;}

/* LINK + BUTTON TOP */
.under main .link{color: var(--green);font-weight: bold;text-underline-offset: 0.2rem;}

/*============ TOP INFO ============ */
.under main #top_info{height:50.6rem;width:100%;max-width:192rem;margin:0 auto;background:url('../images/top_info_bg.jpg') no-repeat center /cover;z-index: 2;position: relative;padding-top: 10rem;}
.under main #top_info .inner{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}

/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path{margin-bottom:3rem;position: relative;z-index: 2;}
.under main #topic_path ul{display:block;padding:1rem 0;width:fit-content;margin-left: auto;}
.under main #topic_path li{display:inline;position: relative;}
.under main #topic_path li:not(:last-child)::after{content:">";position:relative;display: inline-block;margin: 0 0.5rem 0 1rem;top: -0.1rem;pointer-events: none;}
.under main #topic_path li a{color: var(--mcolor);}

/*============ LIST ANCHOR LINK ============ */
.under main .list_anchor{display: flex; align-items: center; flex-wrap: wrap; justify-content: center;width:100%;margin-bottom: 3rem;}
.under main .list_anchor .btn{margin: 0 1rem 1.5rem}
.under main .list_anchor:last-child{margin-bottom: -1.5rem;}


.under main .u_frame{position: relative;padding: 14rem 0 13.3rem;z-index: 1;}
.under main .u_frame::after{content: '';position: absolute;width: 192rem;min-width: 100vw;left: 50%;transform: translateX(-50%);z-index: -1;height: 100%;top: 0;background-color: var(--mcolor);}
.under main .u_frame *{color: #FFF;}
.under main .u_col3{display: flex;justify-content: center;align-items: center;flex-wrap: wrap;gap: 5rem;}
.under main .u_col3 dl{width: calc((100% - 10rem) / 3);}
.under main .u_col3 dl dt{margin-bottom: 2.4rem;}
.under main .u_col3 dl dd h5{text-align: center;margin-bottom: 1.3rem;}
.under main .u_col3 dl dd p{letter-spacing: -0.1rem;}
/*==========================================================
                        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 th{background:var(--mcolor);color:#fff;font-weight:bold}

.under main table td{background:#f4f5f7;}
.under main table th,
.under main table td{padding:1.5rem;border-color: #FFF;}
.under main table img{display:block;margin:auto;}

/*============ LIST ============ */
/* LIST 01 */
.under main .list01{margin-bottom: 3rem;}
.under main .list01 li{display:block;padding-left:2rem;margin-bottom: 0.4rem;position:relative;font-size: 2rem;font-weight: 500;letter-spacing: 0;}
.under main .list01 li::before{background:var(--scolor);width:1rem;height:1rem;position:absolute;top:1.3rem;left:0;content:'';border-radius: 50%;}

/* LIST 02 */
.under main .list02{margin-bottom: 3rem;}
.under main .list02 li{counter-increment: li; padding-left: 2.5rem;position: relative;margin-bottom: 1rem;font-weight: 500;font-size: 2rem;}
.under main .list02 li::before{ content: counter(li) '.';position: absolute;left: 0; top: 0; font-weight: bold;color: var(--mcolor);;}

/* LIST CHECK */
.under main .list_check{margin-bottom: 3rem;}
.under main .list_check li{display:block;padding-left: 2.9rem;margin-bottom: 0.4rem;position:relative;font-weight: 500;font-size: 2rem;letter-spacing: 0;}
.under main .list_check li::before{content: '';display: block;position: absolute;top: 1.1rem;left: 0;width: 1.5rem;height: 1.2rem;background: url('../images/ic_check.png') no-repeat center /contain;}

.under main .post_list{display: flex;flex-wrap:wrap;justify-content: center;gap: 4rem;}
.under main .post_list > dl{width: calc((100% - 8rem) / 3);}
.under main .post_list > dl > dt{margin-bottom: 2rem;display: flex;justify-content: center;align-items: center;overflow: hidden;aspect-ratio: 4/3;}
.under main .post_list > dl > dt a{width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;overflow: hidden;}
.under main .post_list > dl > dt img{transition: all 0.3s;max-height: 100%;}
.under main .post_list > dl > dd .ttl{font-weight: bold;position: relative; display: inline-block; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;text-align: center;border-bottom: 0.1rem solid var(--txt);padding-bottom: 2rem;margin-bottom: 1.5rem;}
.under main .post_list > dl > dd .date{font-weight: bold;font-family: var(--f-rbt);font-size: 1.6rem;}
.under main .post_list > dl:hover img{transform: scale(1.1);}
.under main .post_list > dl dd{text-align: center;}

/*============ FRAME ============ */
/* FRAME 01 */
.under main .frame01{border:0.3rem solid var(--mcolor);padding:5rem 3rem;background-color: #e6e6e6;border-radius:1rem;margin-bottom: 5rem;}
/* FRAME PICKUP */
.under main .frame_pick{padding: 2.5rem;background: #e6e6e6;margin-bottom: 5rem;}
.under main .frame_pick .pick_ttl{font-size: 2.4rem;}
.under main .frame_pick .pick_ttl span{font-size: 3.6rem;display: block;}

/* IFRAME BOX */
.under main .box_map{width:100%;height:40rem}
.under main .box_ytb{width: 90rem;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;}

/* ===========  PAGINATION ===========  */
.under main .pagination {display: flex;justify-content: center;flex-wrap: wrap;text-align: center;margin: 3rem auto 0}
.under main .pagination li{margin: 0 0.5rem}
.under main .pagination li a{height: 4rem;text-align: center;border:0.1rem solid  var(--mcolor);background: #fff;display: flex;color: var(--mcolor);justify-content: center;align-items: center;border-radius: 0.5rem;padding: 0 1.5rem;}
.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}

.under main .btn_ovn{display: flex;justify-content: center;gap: 2rem;}
.under main .btn_ovn .hidden{opacity: 0;}
.under main .btn_ovn > p{margin-bottom: 0;}
.under main .btn_ovn > p a{width: 30rem;}
.under main .u_editor img{max-height: 500px;}
.under main .nextPage a,.under main .prevPage a{position: relative;}
.under main .nextPage a::after,
.under main .prevPage a::after{content: '';position: absolute;content: '';width: 1.2rem;height: 1.2rem;top: calc(50% - 0.6rem);}
.under main .nextPage a::after{border-right: 0.2rem solid var(--scolor);border-top: 0.2rem solid var(--scolor);right: 2rem;transform: rotate(45deg);}
.under main .prevPage a::after{border-left: 0.2rem solid var(--scolor);border-top: 0.2rem solid var(--scolor);left: 2rem;transform: rotate(-45deg);}

/*==========================================================
                     EDITOR ovn
==========================================================*/
.u_editor::after { content: ""; display: table; clear: both; }
.u_editor div{font-size: 1.6rem;}
/* Blockquote */
.u_editor blockquote { border-left: 0.4rem 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 hr { border: none; border-top: 0.1rem 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; }

.alignright, .alignleft{margin-bottom:3rem;max-width:30rem!important}
.aligncenter{display:block!important;margin:0 auto}



/* 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}

@-moz-document url-prefix(){
    table div.fmail_must::before {top: 0px !important}
}