/*==========================================================
                        C U S T O M
==========================================================*/
.under main{padding-top: 120px}
.under main .image_l{float:left;margin:0 50px 0 0}
.under main .image_r{float:right;margin:0 0 0 50px}
.under main .img_border img{border: 1px solid #ccc}
.under main .c_green{color:var(--scolor);font-weight: bold;margin-bottom: 0}
.under main .c_green_dark{color:#082117;font-weight: bold;margin-bottom: 0}
.under main .c_green_light{color:#217252;font-weight: bold;margin-bottom: 0}

/* 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}
.under main .mb100{margin-bottom:100px}
.under main .mb120{margin-bottom:120px}
.under main .mb150{margin-bottom:150px}

/* 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}

/*==========================================================
                        H E A D I N G
==========================================================*/
.under main h2,
.under main h3,
.under main h4,
.under main h5,
.under main h6,
.under main .ovn_content h3,
.under main .ovn_content h4,
.under main .ovn_content h5,
.under main .ovn_content h6{font-weight: bold;margin-bottom: 25px;letter-spacing: 0.055em;}

.under main h2{font-size: 74px;text-align: left;margin-bottom: 0;color:var(--color-h2);line-height: 1.4em;}

.under main h3,
.under main .ovn_content h3{font-size: 58px;text-align: center;color: var(--color-h3);letter-spacing: 0;display: flex;flex-direction: column;justify-content: center;align-items: center;}
.under main h3 .en{font-size: 190%;color:#a4ccc1;display: inline-block;font-family: var(--font-en);font-weight: 400;position: relative;line-height: 1em;letter-spacing: 0.05em;width: max-content;margin-bottom: 44px;}
.under main h3 .tt-en{display: block;margin-bottom: 44px;}
.under main h3 .en::before{position: absolute;content:'';bottom: 0;left: 0;right: 0;width: 100%;height: 1px;background: #a4ccc1}
.under main .txt_h3{text-align: center}

.under main h4,
.under main .ovn_content h4{font-size: 44px;position: relative;color:var(--color-h3);display: flex;flex-direction: column;letter-spacing: 0em;margin-bottom: 30px;}
.under main h4 .en{text-transform: capitalize;font-size: 45.5%;display: inline-block;font-family: var(--font-jost);position: relative;line-height: 1em;width: max-content;letter-spacing: 0.035em;font-weight: 700;text-decoration: underline;text-underline-offset: 13px;margin-bottom: 46px;}

.under main h5,
.under main .ovn_content h5{font-size: 24px;color: var(--color-h3);line-height: 1.66em;margin-bottom: 14px;letter-spacing: 0em;}

.under main h6,
.under main .ovn_content h6{font-size: 20px;position: relative;color: var(--color-h3);}

/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main #content{padding: 0 0 120px}
.under main section{padding:0 0 110px;margin-bottom:0}
.under main section:last-child{padding:0}
.under main .u_content{position: relative}
.under main .u_content::before,.under main .u_content::after{position: absolute;content:'';height: auto;top: 0}
.under main .u_content::before{background: url(../images/u_bg1.png) center /cover no-repeat;width: 174px;aspect-ratio: 87 / 124;left: 94px;}
.under main .u_content::after{background: url(../images/u_bg2.png) center /cover no-repeat;width: 126px;aspect-ratio: 21 / 44;right: 80px;top: -64px;}


/* LINK + BUTTON TOP */
.under main .link{text-decoration: underline;color: var(--mcolor);}

/*============ TOP INFO ============ */
.under main #top_info{height:520px;width:100%;max-width:1920px;margin:0 auto;position: relative;}
.under main #top_info::before{position: absolute;content:'';right: 0;top: 0;width: 1384px;height: 520px;background:url('../images/top_info_bg.jpg') no-repeat center /cover;}
.under main #top_info .inner{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;padding-left: 143px;}

.under#contact main #top_info::before{background:url('../images/top_info_contact.jpg') no-repeat center /cover;}
.under#interview main #top_info::before{background:url('../images/top_info_interview.jpg') no-repeat center /cover;}
.under#environment main #top_info::before{background:url('../images/top_info_environment.jpg') no-repeat center /cover;}
.under#company main #top_info::before{background:url('../images/top_info_company.jpg') no-repeat center /cover;}
.under#message main #top_info::before{background:url('../images/top_info_message.jpg') no-repeat center /cover;}

/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path{margin: 30px 0 52px;}
.under main #topic_path ul{display:block;padding:10px 0}
.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 5px 0 10px;top: -1px;pointer-events: none;}
.under main #topic_path li{color: var(--color-h2);}


/*============ LIST ANCHOR LINK ============ */
.under main .list_anchor{display: flex; align-items: center; flex-wrap: wrap; justify-content: center;width:100%;margin-bottom: 30px;}
.under main .list_anchor .btn{margin: 0 10px 15px}
.under main .list_anchor:last-child{margin-bottom: -15px;}


/*==========================================================
                        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{background:var(--mcolor);color:#fff;font-weight:700;font-size:20px;}
.under main table.mailform th span{color:#fff}
.under main table.mailform td .info{color:var(--mcolor)}

.under main table td{border-color: var(--mcolor);background:#fff;}
.under main table th,
.under main table td{padding:15px;}
.under main table img{display:block;margin:auto;}

.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,
.under main .ovn_content ul{margin-bottom: 30px;}
.under main .list01 li,
.under main .ovn_content ul li{display:block;padding-left: 20px;margin-bottom:5px;position:relative;font-size: 20px;font-weight: 500;letter-spacing: -0.04em;color: #1a1a1a;}
.under main .list01 li::before,
.under main .ovn_content ul li::before{background: var(--scolor);width: 10px;height: 10px;position:absolute;top:14px;left:0;content:'';border-radius: 50%;}

/* LIST 02 */
.under main .list02,
.under main .ovn_content ol{margin-bottom: 30px;}
.under main .list02 li,
.under main .ovn_content ol li{counter-increment: li;padding-left: 35px;position: relative;margin-bottom: 10px;font-size: 20px;font-weight: 500;letter-spacing: -0.04em;color: #1a1a1a;}
.under main .list02 li::before,
.under main .ovn_content ol li::before{content: counter(li);position: absolute;width: 25px;height: 25px;display: flex;justify-content: center;align-items: center;border-radius: 50%;left: 0;top: 6px;background-color: var(--scolor);font-size: 15px;font-weight: bold;color: #FFF;line-height: 22px;padding: 1px 0px 0px 0;font-family: var(--font-jost);}
.under main .list02 .ic_2



/* LIST CHECK */
.under main .list_check{margin-bottom: 30px;}
.under main .list_check li{display:block;padding-left: 30px;margin-bottom:5px;position:relative;font-size: 20px;font-weight: 500;color: #1a1a1a;letter-spacing: -0.04em;}
.under main .list_check li::before{content: '';display: block;position: absolute;top: 13px;left: 5px;width: 16px;height: auto;background: url(../images/ic_check.png) center /cover no-repeat;aspect-ratio: 4 / 3;}

.under main .list_faq .name_faq{background: #edf4f2;}

/* LIST STEP */
.under main .list_step .item-step{margin-bottom: 65px;position: relative;border: 14px solid #edf4f2;padding: 40px 76px;}
.under main .list_step .item-step:not(:last-child)::before{position: absolute;bottom: -58px;left: calc(50% - 40px);content: ''; width: 0;height: 0;border-style: solid; border-width: 24px 31.5px 0px 31.5px;border-color: var(--scolor) transparent transparent transparent;}
.under main .list_step .item-step:last-child{margin-bottom: 0}
.under main .list_step .item-step .name-step{font-weight: bold;font-size: 32px;color: var(--mcolor);letter-spacing:-0.02em;margin-bottom: 19px;}
.under main .list_step .item-step .img-step{width: 208px;height: 208px;border-radius: 50%}
.under main .list_step .item-step .img-step{margin-bottom: 0}
.under main .list_step .item-step .img-step img{width: 100%;height: 100%;object-fit: cover;border-radius: 50%;}

/*============ FRAME ============ */
/* FRAME 01 */
.under main .frame01{border:3px solid var(--mcolor);padding:30px;border-radius:10px;margin-bottom: 50px;}

/* FRAME PICKUP */
.under main .frame_pick{border: 1px solid #000;padding: 25px;background: var(--scolor);margin-bottom: 50px;}
.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;}

/*BOX H4*/

.under main .box-under{position: relative;padding: 120px 0 66px 0}
.under main .box-under::before{position: absolute;content:'';left: 50%;top: 50%;background: #edf4f2;height: 100%;width: 100vw;transform: translate(-50%, -50%);min-width: 1260px;z-index: -1}

.under main .item-h4{margin-bottom: 80px}
.under main .item-h4:last-child{margin-bottom: 0}

.under main .item-h5{margin-bottom: 60px}
.under main .item-h5:last-child{margin-bottom: 0}


.under main .item-h5 .info{background: #fff;padding: 57px 76px;position: relative;}

.under main .list-h5{display: flex;flex-wrap: wrap;}
.under main .list-h5 li{width: calc((100% - 96px) / 3);margin: 0 48px 48px 0}
.under main .list-h5 li .img{margin-bottom: 24px}
.under main .list-h5 li h5{text-align: center}
.under main .mt-top{margin: 93px 0 0 0;}




.under main .item-h4.flex-start{align-items: flex-start;}
.under main .item_full{flex-direction: column;}
.under main .item_full .images.pc{display: none}
.under main .item_full .images.sp{display: block;margin: 0 0 30px 0}
.under main .item-h4.item_full .info{width: 100%}

/* RESET */
.under main table:last-child,
.under main .list_faq:last-child,
.under main .list_faq .item_faq: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 .frame_pick:last-child{margin-bottom: 0}