/*==========================================================
C U S T O M
==========================================================*/
.under main .image_l {float: left;margin: 0 50px 0 0}
.under main .image_r {float: right;margin: 0 0 0 50px}

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

.under main {z-index: 2;padding-top: 172px;}
.under main::before {display: none;}
.under main::after {display: none;}
.under main p {line-height: 1.75;font-weight: 500;letter-spacing: 0.05em;}

/*==========================================================
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;margin-bottom: 30px;}

.under main .un_ttl3{position: relative;padding-bottom: 27px;letter-spacing: 0.1em;font-size: 32px;line-height: 1.5625;width: 895px;max-width: 100%;margin-bottom: 42px;}
.under main .un_ttl3::before{width: 110px;background: var(--mcolor);z-index: 2;position: absolute;content: "";left: 0;bottom: 0;height: 2px;}
.under main .un_ttl3::after{width: 100%;background: #ccc;z-index: 1;position: absolute;content: "";left: 0;bottom: 0;height: 2px;}
.under main h3 .txt{color:var(--mcolor);}
.under main .un_ttl4,.under main h4{position: relative;font-size: 30px;letter-spacing: 0.1em;}
.under main .un_ttl4.let0 {

    letter-spacing: 0em;
}
.under main .un_ttl5{position: relative;font-size: 24px;letter-spacing: 0.1em;line-height: 1.75;margin-bottom: 18px;}

.under main .un_ttl6{font-size: 20px;font-weight: bold;margin-bottom: 15px;color: var(--mcolor);}
.under main .ls0{letter-spacing:-0.05em}
.under main .ls02{letter-spacing:-0.02em}
.under main .ls03{letter-spacing:-0.03em}
.under main .num{color: var(--mcolor);}
/*==========================================================
MAIN - CONTENT
==========================================================*/
.under main #content {padding: 0 0 80px;}
.under main section {padding: 0 0 135px;margin-bottom: 0}
.under main section.pd0 {padding-bottom: 0;}
.under main section:last-child {padding: 0}

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

/*============ TOP INFO ============ */
.under main #top_info {height: 220px;width: 100%;margin: 0 auto 20px;position: relative;z-index: 3;background: #f4f4e9;}
.under main #top_info .inner {display: flex;flex-direction: column;justify-content: center;width: 100%;height: 100%;z-index: 3;padding-bottom: 20px;}

.under main .page_ttl{font-size: 48px;text-align: center;margin-bottom: 0;letter-spacing: 0.23em;color: var(--mcolor);}

/*==========================================================
T O P I C   P A T H
==========================================================*/
.under main #topic_path {margin-bottom: 12px;padding-left: 410px;}
.under main #topic_path ul {display: block;padding: 10px 0}
.under main #topic_path li {display: inline;position: relative;margin-right: 35px;font-size: 14px;}
.under main #topic_path li:not(:last-child)::after {content: "";position: absolute;display: inline-block;margin: 0 5px 0 10px;top: 4px;pointer-events: none;width: 1px;height: 14px;background: var(--mcolor);transform: rotate(25deg);right: -25px;opacity: 0.3;}
.under main #topic_path li {font-weight: 400;}
.under main #topic_path li a {color: var(--mcolor);font-weight: 600;}

/*============ 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: #e8f3f9;color: var(--txt);font-weight: 500;}
.under main table.mailform td .info {color: var(--mcolor)}

.under main table th,
.under main table td{padding: 13px;border: 1px solid #b3b3b3;line-height: 1.75em;font-weight: 500;font-size: 20px;}
.under main table td{padding: 13px 15px;}
.under main table img {display: block;margin: auto;}

.under main table th.bg2{background: #e8f7df;}


/*============ LIST ============ */
/* LIST 01 */
.under main .list01{margin-bottom: 30px;}
.under main .list01 li{display: block;padding-left: 29px;margin-bottom: 14px;position: relative;font-weight: bold;letter-spacing: 0;font-size: 20px;}
.under main .list01 li::before{position: absolute;content: "";width: 18px;height: 18px;background: url('../images/ic_check.png') center /cover no-repeat;left: 0;top: 9px;}

/* LIST 02 */
.under main .list02{margin-bottom: 30px;}
.under main .list02 li{counter-increment: li;padding-left: 35px;position: relative;margin-bottom: 10px;font-weight: bold;}
.under main .list02 li::before{content: ""counter(li, decimal-leading-zero) "";position: absolute;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%;left: 0;top: 4px;color: var(--mcolor);line-height: 22px;font-weight: bold;font-size: 20px;l}

/* 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: bold;}
.under main .list_check li::before{position: absolute;content: "";width: 18px;height: 18px;background: url('../images/ic_check2.png') center /cover no-repeat;left: 0;top: 7px;}

/* LIST STEP */
.under main .list_step{padding: 120px 0;position: relative;z-index: 1;}
.under main .list_step::before{background: #f4f4e9;width: 100vw;height: 100%;position: absolute;top: 0;left: 50%;transform: translateX(-50%);content: '';z-index: -1;min-width: 1920px;}
.under main .list_step dl{margin-bottom: 67px;position: relative;background: #fff;border-radius: 20px;padding: 49px 72px 57px;}
.under main .list_step dl:not(:last-child)::before {content: "";display: inline-block;width: 0;height: 0;border-style: solid;border-width: 20px 28px 0px 28px;border-color: var(--mcolor) transparent transparent transparent;position: absolute;bottom: -42px;left: calc(50% - 28px);}
.under main .list_step dl::after {background: none;border:3px solid #f4f4e9;width: calc(100% - 26px);height: calc(100% - 26px);content: '';position: absolute;top: 13px;left: 13px;border-radius: 20px;}
.under main .list_step dl:last-child {margin-bottom: 0}
.under main .list_step dt {font-size: 28px;font-weight: 500;color: var(--scolor);letter-spacing: 0.1em;margin-bottom: 9px;}
.under main .list_step dd,
.under main .list_step dd p{font-weight: 500;letter-spacing: 0.1em;overflow: hidden}
.under main .list_step dd p.image_l,
.under main .list_step dd p.image_r{overflow: initial;margin-bottom: 10px;}

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

/* FRAME PICKUP */
.under main .frame_pick{padding: 100px 50px;position: relative;z-index: 1;}
.under main .frame_pick::before{background: url('../images/frame_pick_bg.jpg') center /cover no-repeat;width: 100vw;left: 50%;transform: translateX(-50%);min-width: 1920px;content: '';position: absolute;top: 0;z-index: -1;height: 100%;}
.under main .frame_pick .pick_ttl{font-size: 24px;margin-bottom: 40px;text-align: center;}
.under main .frame_pick .en{text-align: center;font-size: 32px;text-transform: uppercase;margin-bottom: 0;color:var(--mcolor);}


.under main .frame_pick_ct{background: #fff;border-radius: 30px;box-shadow: 10px 10px 0 var(--yl);padding: 50px;}

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

/* RESET */
.under main table: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}

/*============ UNDER ANCHOR ============ */
.under main .under_content {width: 100%;background: #fff;padding: 75px 15px 115px 120px;}
.under main .content_inner {max-width: 1100px;}

.under main .under_anc {position: absolute;left: calc(50% - 874px);top: -127px;z-index: 10;width: 262px;border: 1px solid var(--mcolor);padding: 4px 10px 42px 20px;border-radius: 20px;background: rgba(255,255,255,0.85);}
.under main .under_anc .wrap {padding: 0px 0px 25px 0px;width: 100%;top: 25px;position: relative;}
.under main .under_anc.active {position: fixed;top: 157px;}
.under main .under_anc_tt {font-weight:500;font-size: 20px;letter-spacing: 0.05em;color: var(--mcolor);margin-bottom: 13px;text-transform: uppercase;}

.under main .under_anc ul {
    padding-right: 22px;
    padding-left: 10px;
}
.under main .under_anc li:not(:last-child) {margin-bottom: 10px;}
.under main .under_anc li a{position: relative;display: flex;line-height: 2em;font-size: 16px;font-weight: 500;color: var(--txt);background: url(../images/arrow-right.svg) no-repeat 0 6px;background-size: 14px 14px;padding-left: 20px;line-height: 1.6;}
.under main .under_anc li.active a {cursor: default;pointer-events: none;color: var(--mcolor);}

.under main .under_main {max-width: 1920px;margin: 0px auto 0;position: relative;z-index: 4;}
.under main .under_main .inner {width: 100%;padding-left: 290px;padding-right: 0;}

.under main .sech3{padding-bottom: 100px;}

.under main .sec_flex_con{position: relative;z-index: 1;padding-right: 660px;min-height: 350px;}
.under main .sec_flex_con::before{background: #f4f4e9;width: 1600px;border-radius: 20px 0 0 20px;height: calc(100% - 73px);position: absolute;top: 118px;left: -90px;content: '';z-index: -1;}
.under main .sec_flex_con .des{background: #fff;border-radius: 20px;padding: 24px 28px 37px;width: 438px;max-width: 100%;}

.under main .sec_flex_con .img img,
.under main .image_l img,
.under main .image_r img{border-radius: 30px;box-shadow: 6px 8px 0 var(--yl);}

.under main .list_img {display: flex;justify-content: center;}
.under main .list_img li img {width: 100%;}
.under main .list_img li:not(:last-child) {margin-right: 50px;}

.contact_box,
.contact_box .cta_tel{margin-right: 0;}
.contact_box .cta_tel a{text-align: center;justify-content: center;align-items: center;}
.contact_box .cta_tel a .number{line-height: 1em;}
.contact_box .cta_tel a .number::before{top: 5px;}

.contactForm__policy {
    overflow-y: auto;
    height: 300px;
    margin: 50px 0;
    padding: 37px 41px;
    background-color: #FAF9F8;
}
.contactForm__policy .tt{font-weight: bold;margin-bottom: 15px}
.contactForm__policy .sub_ver{margin-bottom: 50px}
.contactForm__policy .sub_ver:last-child{margin-bottom: 0}
.contactForm__policy p,.contactForm__policy .tt{color: var(--txt);}