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

/*==========================================================
                        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: 400;margin-bottom: 31px;font-family: var(--f-mincho);letter-spacing: 0.05em;}

.under main h2 { font-size: 26px; text-align: center; margin-bottom: 37px; position: relative; padding: 0 0 22px; }
.under main h2:after{content: '';position: absolute;width: 80px;height: 1px;background: #95886A;bottom: 0;left: calc(50% - 40px);}
.under main h2:before{content: '';position: absolute;background: url("../images/under_h2_bg.png") no-repeat center center/100% auto;width: 282px;height: 252px;top: 50%;left: 50%;transform: translate(-50%,-50%);z-index: -2;pointer-events: none;}

.under main h3,.under main .ovn_content h3{font-size: 24px;position: relative;background: url("../images/under_h3_line.png") repeat-x bottom left/auto 2px;padding: 0 0 12px;}
.under main h3:before,.under main .ovn_content h3:before, .under main h3:after,.under main .ovn_content h3:after {content: '';position: absolute;background: #95886A;width: 13px;height: 5px;bottom: -1px;}
.under main h3:before,.under main .ovn_content h3:before {left: 0;border-right: 8px solid #fff;}
.under main h3:after,.under main .ovn_content h3:after {right: 0;border-left: 8px solid #fff;}

.under main h4,.under main .ovn_content h4{font-size: 22px;position: relative;padding-left: 15px;border-left: 1px solid #95886A;margin: 0 0 28px;}
.under main h4::before{content: "";position: absolute; width:5px;height: 5px;background-color: #95886A;left: -3px;top: 0;}

.under main h5,.under main .ovn_content h5{font-size: 20px;position: relative;padding-left: 15px;}
.under main h5:before,.under main .ovn_content h5:before{content: '';position: absolute;width: 7px;height: 7px;background: #91BCE3;left: 0;top: 10px;}

.under main h6,.under main .ovn_content h6{font-size: 20px;position: relative;}

/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main {margin-top: 0;border-top-left-radius: 0;border-top-right-radius: 0;z-index: 2;word-break: break-word;}
.under main #content{padding: 0 0 75px}
.under main section{padding:0 0 68px;margin-bottom:0}
.under main section:last-child{padding:0}

/* LINK + BUTTON TOP */
.under main .link{text-decoration: underline;color: var(--mcolor);text-underline-offset: 3px;}
.under main .under_doctor .link{color: #fff;}

/*============ TOP INFO ============ */
.under main #top_info{height:278px;background:url('../images/top_info_bg.png') no-repeat bottom center /100% auto;padding: 32px 0 0;}
.under main #top_info .inner{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}
.under main #top_info .top_info_page {font-size: 28px;line-height: 1.5em;letter-spacing: 0.1em;font-weight: 400;font-family: var(--f-mincho);text-align: center;margin: 0;}

/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path{margin-bottom:21px}
.under main #topic_path ul{display:block;padding:18px 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 7px;top: 0;pointer-events: none;line-height: 1.56em;}
.under main #topic_path li a {text-underline-offset: 3px; }


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

.under_anchor { background: #F8F7F1; border-radius: 10px; padding: 44px 22px 40px; }
.under_anchor_en { margin: 0 0 10px 4px; }
.under_anchor_ttl { font-size: 18px; font-family: var(--f-mincho); font-weight: 400; letter-spacing: 0.15em; margin: 0 0 19px; }
.under_anchor_list li a { display: inline-block; position: relative; padding-left: 17px; text-decoration: underline; text-underline-offset: 2px; }
.under_anchor_list li a:before {content: '';position: absolute;width: 5px;height: 5px;background: #91BCE3;left: 0;top: 8px;}
.under_anchor_list li { line-height: 1.5em; margin: 0 0 16px; }
.under_anchor_list li:last-child {margin-bottom: 0;}

/*==========================================================
                        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:400;font-family: var(--f-mincho);padding: 11px 20px 9px;border: none;text-align: left;}
.under main table.center th{text-align: center;}
.under main table.mailform td .info{color:var(--mcolor)}
.under main table th ~ th {border-left: 1px solid #F8F7F1;}
.under main table th.tb_bb {border-bottom: 1px solid #F8F7F1;}

.under main table td{border:none;background:#F8F7F1;}
.under main table td{padding:17px 20px;}
.under main table img{display:block;margin:auto;}
.under main table tr:first-child >*:first-child {border-top-left-radius: 10px;}
.under main table tr:first-child >*:last-child {border-top-right-radius: 10px;}
.under main table tr:last-child >*:last-child {border-bottom-right-radius: 10px;}
.under main table tr:last-child >*:first-child {border-bottom-left-radius: 10px;}
.under main table tr:last-child td ~ td {border-bottom-left-radius: 0!important;border-left: 1px solid #fff;}
.under main table tr:last-child td.tb_br  {border-bottom-left-radius: 10px;}


/*============ 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: 17px; margin-bottom: 13px; position: relative;line-height: 1.5em; }
.under main .list01 li::before, .under main .ovn_content ul li::before{background:#91BCE3;width:5px;height:5px;position:absolute;top:9px;left:0;content:''}

/* 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: 30px;position: relative;margin-bottom: 13px;line-height: 1.5em;}
.under main .list02 li::before,
.under main .ovn_content ol li::before{ content: counter(li);position: absolute;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%;left: 0; top: 0; background-color: #91BCE3;font-size: 12px;font-weight: bold;color: #FFF;line-height: 22px;}

/* LIST CHECK */
.under main .list_check{margin-bottom: 30px;}
.under main .list_check li{display:block;padding-left:25px;margin-bottom:13px;position:relative;line-height: 1.5em;}
.under main .list_check li::before{content: ''; display: block; position: absolute; top: 3px; left: 5px; width: 7px; height: 15px; border: solid #91BCE3; 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;box-shadow: 0px 4px 13px rgba(0,0,0,0.2);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;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;text-align: center;padding-bottom: 5px;flex-shrink: 0;}
.under main .list_faq dd{position: relative;padding-left: 50px;min-height: 62px}
.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;text-align: center;padding-bottom: 5px;flex-shrink: 0;}

/* LIST STEP */
.under main .list_step {padding-top: 44px;}
.under main .list_step dl { margin-bottom: 92px; position: relative; background: #F8F7F1; border-radius: 20px; padding: 60px 20px 50px;}
.under main .list_step dl:before {content: '';position: absolute;width: 88px;height: 88px;background: url("../images/under_step1.svg") no-repeat center center #95886A;border-radius: 50%;left: calc(50% - 44px);top: -44px;}
.under main .list_step dl:not(:last-child)::after{background: url('../images/under_step_line.png') repeat-y top center /100% auto;width: 2px;height: 48px;position: absolute;top: 100%;left: calc(50% - 1px);content: '';}
.under main .list_step dl:last-child{ margin-bottom: 0}
.under main .list_step dt{font-size: 22px;font-family: var(--f-mincho);line-height: 1.57em;font-weight: 400;letter-spacing: 0;margin: 0 0 22px;}
.under main .list_step dl:nth-child(2):before {background-image: url("../images/under_step2.svg");}
.under main .list_step dl:nth-child(3):before {background-image: url("../images/under_step3.svg");}
.under main .list_step dl:nth-child(4):before {background-image: url("../images/under_step4.svg");}
.under main .list_step dl:nth-child(5):before {background-image: url("../images/under_step5.svg");}
.under main .list_step dl:nth-child(6):before {background-image: url("../images/under_step6.svg");}
.under main .list_step dl:nth-child(7):before {background-image: url("../images/under_step7.svg");}
.under main .list_step dl:nth-child(8):before {background-image: url("../images/under_step8.svg");}
/*============ FRAME ============ */
/* FRAME 01 */
.under main .frame01{background: #F8F7F1;border-radius: 10px;padding: 31px 22px;}
.under main .frame01:not(:last-child){margin-bottom: 30px;}

/* FRAME PICKUP */
.under main .frame_pick{margin: 0 -20px 30px;padding: 40px 0;position: relative;}
.under main .frame_pick:before{content: '';position: absolute;background: url("../images/pickup_en.svg") no-repeat center center/100% auto;width: 208px;height: 40px;left: calc(50% - 104px);top: -10px;}
.under main .frame_pick_main {position: relative;background: #ECF6FF;padding: 30px 20px 28px;}
.under main .frame_pick_main:before,.under main .frame_pick_main:after {position: absolute;content: '';width: 100%;height: 60px;background: url("../images/pickup_bg1.png") no-repeat top center/100% auto;left: 0;z-index: -2;pointer-events: none;}
.under main .frame_pick_main:before {top: -40px;}
.under main .frame_pick_main:after {bottom: -40px;background-image: url("../images/pickup_bg2.png");background-position: bottom center;}
.under main .frame_pick .pick_ttl{font-size: 22px;text-align: center;background: none;padding: 0;margin: 0 0 22px;}
.under main .frame_pick .pick_ttl:before, .under main .frame_pick .pick_ttl:after{display: none;}

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

/* ===========  OVERNOTE ===========  */
.under main .list_ovn {}
.under main .list_ovn li { position: relative; margin: 0 0 30px; background: #F8F7F1; border-radius: 10px; padding: 15px; }
.under main .list_ovn li .img_post {width: 100%;height: 200px;display: flex;align-items: center;justify-content: center;background: #efefef;border-radius: 10px;overflow: hidden;}
.under main .list_ovn li .twentytwenty-container {width: 100%;height: 200px;border-radius: 10px;overflow: hidden;}
.under main .list_ovn li .img img {max-width: 100%;max-height: 100%;flex-shrink: 0;object-fit: cover;width: 100%;height: 100%;max-height: 200px;}
.under main .list_ovn li p {margin-bottom: 0;}
.under main .list_ovn li a {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.under main .list_ovn .info_box {display: flex;justify-content: space-between;margin: 10px 0 15px;align-items: center;}
.under main .list_ovn .info_box .cate{padding: 2px 15px 0;background: var(--mcolor);color: #fff;border-radius: 5px;}
.under main .list_ovn .big {max-width: 100%;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;font-size: 18px;font-weight: 600;}

.under main .ovn_content p a {text-decoration: underline;color: var(--blue);}

.under main .btn_list .is_prev a {background: url('../images/ic_arr.svg') no-repeat left 20px center /6px var(--mcolor);}
.under main .btn_list .is_none a {background: var(--mcolor);}

/* ===========  PAGINATION OVN ===========  */
.under main .pagination {display: flex;justify-content: center;flex-wrap: wrap;text-align: center;margin: 30px auto 0}
.under main .pagination li {margin: 3px}
.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;}
.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_doctor { margin: 0 -20px; background: url("../images/under_doctor_mask.png") no-repeat top center/100% 100%;color: #fff;padding: 78px 0;}
.under main .under_doctor h2 {padding: 0;padding: 0 20px 20px;margin-bottom: 43px;}
.under main .under_doctor h2:before {display: none;}
.under main .under_doctor h2:after {background: #fff;}
.under main .under_doctor_main {padding: 0 10px;}
.under_item:not(:last-child) { margin: 0 0 45px; }

.under_bnr li:not(:last-child) {margin-bottom: 24px;}
.under_bnr li {font-size: 20px;font-family: var(--f-mincho);font-weight: 400;line-height: 1.46em;}
.under_bnr li a {display: flex;position: relative;height: 120px;background: #95886A;color: #fff;border-radius: 10px;padding: 15px 24px;align-items: center;}
.under_bnr li a .small {display: block;font-size: 75%;line-height: 1.46em;letter-spacing: 0.05em;margin: 3px 0 7px;}
.under_bnr li.under_bnr_web a {background-color: #4191D9;}
.under_bnr li.under_bnr_web:not(:last-child) {margin-bottom: 32px;}
.under_bnr li a:after {content: '';position: absolute;background: url("../images/under_bnr_arr.svg") no-repeat center center/100% auto;width: 35px;height: 9px;right: 24px;bottom: 29px;pointer-events: none;}
.under_bnr li .char {margin: 0 0 0 -8px;}

.under_doctor .under_doctor_full {width: 100%;}
.under_doctor .under_doctor_full .sec13_list_txt:not(:last-child) {height: auto!important;margin-bottom: 20px;}
.under_doctor .under_doctor_full .sec13_list_txt:last-child {margin-bottom: 0;}
.under_doctor .sec13_list dt.right .ttl { left: auto; right: 0; }
.under_doctor .sec13_list dt .ttl {white-space: nowrap;}
.under .twentytwenty-container {max-width: 315px;margin: 0 auto 24px;}
.under main .sec09_main_info:last-child {margin-bottom: 0;}
.btn.active a {background-color: var(--mcolor);color: #fff;background-image: url("../images/ic_arr_white.svg");cursor: default;}

.news_list_item { position: relative; }
.news_list_item:not(:last-child) {margin-bottom: 70px;}
.news_list_item:not(:last-child):after {content: '';position: absolute;width: 50px;height: 25px;background: #ccc;clip-path: polygon(0 0, 50% 100%, 100% 0);left: calc(50% - 25px);bottom: -45px;}
.news_list_ttl {background: var(--mcolor);text-align: center;color: #fff;margin: 0 0 20px;font-family: var(--f-mincho);font-weight: 400;padding: 5px;}
.news_list_img {height: 200px;background: #F8F7F1;display: flex;justify-content: center;align-items: center;overflow: hidden;}
.news_list_img img {max-height: 100%;object-fit: contain;}
.news_detail_img img {max-height: 350px;}
.news_detail_img {text-align: center;}
.news_detail_img .des {display: block;background: #f0f0f0;margin-top: 5px;padding: 5px 10px;font-size: 80%;line-height: 1.5em;}
.new_detail_more {padding: 0 20px;}


/* 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 .frame_pick:last-child{margin-bottom: 0}