/*==========================================================
                        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 .mb0{margin-bottom:0px!important}
.under main .mb10{margin-bottom:10px!important}
.under main .mb15{margin-bottom:15px!important}
.under main .mb20{margin-bottom:20px!important}
.under main .mb25{margin-bottom:25px!important}
.under main .mb30{margin-bottom:30px!important}
.under main .mb40{margin-bottom:40px!important}
.under main .mb50{margin-bottom:50px!important}
.under main .mb60{margin-bottom:60px!important}
.under main .mb70{margin-bottom:70px!important}
.under main .mb80{margin-bottom:80px!important}
.under main .mb90{margin-bottom:90px!important}
.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 .wp_content h3,
.under main .wp_content h4,
.under main .wp_content h5,
.under main .wp_content h6{margin-bottom: 24px;font-family: var(--f-mincho);}

.under main h2{font-size: 28px; text-align: center;margin-bottom: 0;line-height: 1.54em;letter-spacing: 0.15em;}

.under main h3,.under main .wp_content h3{font-size: 26px; text-align: center;letter-spacing: 0.05em;background: url("../images/under_ttl_ic1.png") no-repeat bottom center/138px auto;padding: 0 0 45px;}

.under main h4,.under main .wp_content h4{font-size: 24px;position: relative;letter-spacing: 0.05em;background: url("../images/under_ttl_ic2_line.svg") no-repeat bottom center/100% auto, url("../images/under_ttl_ic2_human.svg") no-repeat left calc(50% + 76px) bottom 2px;padding: 0 0 41px; margin: 0 0 24px;}

.under main h5, .under main .wp_content h5 { font-size: 22px; background: url(../images/under_ttl_ic3.svg) no-repeat left top 4px; padding-left: 40px; letter-spacing: 0.05em; }

.under main h6,.under main .wp_content h6{font-size: 20px;position: relative;padding-left: 20px;margin-bottom: 15px;}
.under main h6:before,.under main .wp_content h6:before{content: '';position: absolute;display: inline-block;background: #73C0DE;clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);width: 8px;height: 8px;left: 0;top: 10px;}

.under main h4.idx_ttl {text-align: center;background: none;padding: 0;margin-bottom: 40px;}
/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main #content{padding: 0 0 104px;background: #fff;border-top-left-radius: 10px;border-top-right-radius: 10px;word-break: break-word;}
.under main section{padding:0 0 63px;margin-bottom:0}
.under main section:last-child{padding:0}
.under main .under_main {padding: 0 20px;}
/* LINK + BUTTON TOP */
.under main .link, .wp_content a{text-decoration: underline;color: var(--mcolor);text-underline-offset: 3px;}

/*============ TOP INFO ============ */
.under main #top_info{height:236px;width:100%;position: relative;z-index: 2;display: flex;justify-content: center;align-items: center;text-align: center;color: #fff;padding: 28px 20px 0;border-top-left-radius: 10px;border-top-right-radius: 10px;background: #239CCA; background: linear-gradient(0deg, rgba(35, 156, 202, 1) 45%, rgba(216, 232, 235, 1) 76%, rgba(246, 240, 230, 1) 100%); clip-path: shape(from 0% 87.67%, vline by -1.77%, hline to 0%, vline to 0%, hline to 100%, vline to 95.94%, smooth by -31% -5.73% with -13.63% -6.68%, smooth by -38.48% 9.55% with -21.23% 7.29%, curve by -3.7% 0.24% with -1.26% 0.16% / -2.49% 0.24%, curve to 0% 87.67% with 11.4% 100% / 0% 87.67%, close);}
.under main #top_info:before{content: '';position: absolute;background: url("../images/top_info_icon.svg") no-repeat center center/100% auto;width: 112px;height: 112px;right: 20px;bottom: 37px;z-index: -2;pointer-events: none;mix-blend-mode: soft-light;}


/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path{margin-bottom:31px;padding: 0 20px;}
.under main #topic_path ul{display:block;padding:22px 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 0 0 3px;top: 0;pointer-events: none;}
.under main #topic_path li{font-weight: 500;line-height: 1.56em;}


/*============ LIST ANCHOR LINK ============ */
.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:#40A9D1;color:#fff;font-family: var(--f-mincho);text-align: left;line-height: 1.5em;padding: 14px 20px;}
.under main table.mailform th span{color:#fff}
.under main table.mailform td .info{color:var(--mcolor)}

.under main table td{background:#FAF5EC;padding:18px 20px;}
.under main table th,
.under main table td{border: none;}
.under main table img{display:block;margin:auto;}
.under main table.tb_small th, .under main table.tb_small td { padding: 5px; font-size: 14px; }
.under main table.center th {text-align: center;}
.under main table.tb_bd td, .under main table td.td_bd {border-bottom: 1px solid #fff;}
.under main table th.tb_thbg1 {background: var(--blue-sea);}
/*============ LIST ============ */
/* LIST 01 */
.under main .list01,
.under main .wp_content ul{margin-bottom: 30px;}
.under main .list01 li,
.under main .wp_content ul li{display:block;padding-left:15px;margin-bottom:5px;position:relative}
.under main .list01 li::before,
.under main .wp_content ul li::before{background:#AAC9BE;content: '';position: absolute;display: inline-block;clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);width: 8px;height: 8px;left: 0;top: 9px;}

/* LIST 02 */
.under main .list02,
.under main .wp_content ol{margin-bottom: 30px;}
.under main .list02 li,
.under main .wp_content ol li{counter-increment: li; padding-left: 30px;position: relative;margin-bottom: 10px;}
.under main .list02 li::before,
.under main .wp_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: 2px; background-color: var(--mcolor);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:2px;position:relative}
.under main .list_check li::before{content: ''; display: block; position: absolute; top: 5px; left: 5px; width: 7px; height: 15px; border: solid var(--mcolor); border-width: 0 2px 2px 0; transform: rotate(45deg);}

/* LIST FAQ */
.under main .list_faq{margin: 0 -20px 0;position: relative;background: url("../images/qa_wave_top.svg") no-repeat top center/100% auto, url("../images/qa_wave_bot.svg") no-repeat bottom center/100% auto;z-index: 2;padding: 78px 20px;}
.under main .list_faq:before {content: '';position: absolute;width: 100%;height: calc(100% - 100px);top: 50px;left: 0;background: #F3F0E8;z-index: -2;pointer-events: none;}
.under main .list_faq dl:first-of-type {margin-top: 54px;}
.under main .list_faq dl { background: #FFF; padding: 23px 23px 8px; margin-bottom: 66px; border-radius: 5px; }
.under main .list_faq dt { position: relative; font-size: 18px; line-height: 1.28em; margin-bottom: 13px; background: url("../images/qa_line.png") repeat-x bottom left/auto 2px; padding: 27px 0 17px; }
.under main .list_faq dt:before {content: '';position: absolute;background: url("../images/under_ttl_q.svg") no-repeat center center/100% auto;width: 70px;height: 68px;left: calc(50% - 35px);top: -57px;}
.under main .list_faq dd{display: flex;flex-direction: column;}
.faq_btn { margin: 3px 0 0; order: 2; text-align: center; font-size: 14px; font-weight: 700; color: #6E6254; position: relative; cursor: pointer; transition: all 0.3s;padding: 5px;border-radius: 5px;}
.faq_btn.active {margin-top: 17px;}
.faq_btn:after {content: '';position: relative;display: block;background: url("../images/qa_arr.svg") no-repeat center center/100% auto;width: 20px;height: 10px;margin: 0 auto;}
.faq_btn.active:before {content: '';position: relative;display: block;background: url("../images/qa_arr.svg") no-repeat center center/100% auto;width: 20px;height: 10px;margin: 0 auto;transform: rotate(180deg);}
.faq_btn.active:after {display: none;}
.under main .faq_txt { line-height: 1.5em; background: url(../images/under_ttl_a.svg) no-repeat top 7px left; padding: 0 0 0 33px; letter-spacing: 0.05em;display: none;}
.faq_btn span {position: relative;transition: all 0.3s;}
.faq_btn .close{opacity: 0;position: absolute;width: 100%;left: 0;bottom: 4px;visibility: hidden;}
.faq_btn.active .open {opacity: 0;visibility: hidden;}
.faq_btn.active .close {opacity: 1;visibility: visible;}

/* LIST STEP */
.under main .list_step dl{padding-bottom: 33px;position: relative;padding-left: 76px;}
.under main .list_step dl::before{background: url('../images/under_step1.svg')no-repeat center center/100% auto;width:62px;height: 62px;position: absolute;content: '';left: -10px;top: 2px;z-index: 2;}
.under main .list_step dl:after {content: '';position: absolute;width: 62px;height: calc(100% - 10px);top: 10px;left: -10px;background: url("../images/step_line.png") repeat-y top center/2px auto;}
.under main .list_step dl:last-child{padding-bottom: 0;margin-bottom: 0}
.under main .list_step dt { font-size: 22px; line-height: 1.5em;font-weight: 500;margin: 0 0 18px;min-height: 66px;display: flex;align-items: center;}
.under main .list_step dd p:not(:last-child){margin-bottom: 0.8em;}
.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{padding:21px 20px;background:#E4EEEB;border-radius:5px;margin-bottom: 30px;}

/* FRAME PICKUP */
.under main .frame_pick { padding: 76px 20px;background: url(../images/sec04_wave.svg) no-repeat top center / 100% auto, url(../images/under_wave1.svg) no-repeat bottom center / 100% auto; position: relative; z-index: 2; margin: 0 -20px 30px; }
.under main .frame_pick:after { content: ''; position: absolute; width: 100%; height: calc(100% - 150px); top: 80px; background: var(--blue-light); z-index: -2; pointer-events: none; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px;left: 0;}
.under main .frame_pick:before { content: ''; position: absolute; background: url(../images/ic_top.svg) no-repeat center center / 100% auto; width: 79px; height: 60px; top: -16px; right: 52px; }
.under main .frame_pick .pick_ttl { font-size: 28px; text-align: left; background: none; padding: 0; line-height: 1.6em; letter-spacing: 0.1em; margin-bottom: 16px; }
.under main .frame_pick .pick_ttl:before {content: '';position: relative;display: block;background: url("../images/under_pick_en.svg") no-repeat center center/100% auto;width: 166px;height: 73px;margin: 0 auto 25px;}

/* IFRAME BOX */
.under main .box_map{width:100%;height:300px}
.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;}

/* ===========  WORDPRESS ===========  */
.under main .wp_content img.aligncenter, .under main .wp_content img.alignleft, .under main .wp_content img.alignright {margin: 0 auto 20px;display: block;border-radius: 0;}
.under main .wp_content img {max-height: 400px;width: auto;}
.under main .wp_content del{text-decoration: line-through;}

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

.under main .under_anchor {background: #E4EEEB;border-radius: 5px;padding: 36px 20px 38px;margin: 0 0 62px;position: relative;z-index: 2;overflow: hidden;}
.under main .under_anchor:after {content: '';position:absolute;background: url("../images/under_anchor_ic.svg") no-repeat center center/100% auto;width: 168px;height: 231px;right: 11px;bottom: 20px;z-index: -2;mix-blend-mode: soft-light;cursor: pointer;}
.under_anchor_ttl { display: flex ; align-items: center; font-size: 18px; font-family: var(--f-mincho); letter-spacing: 0.1em;margin: 0 0 21px;}
.under_anchor_ttl .en { margin: -4px 26px 0 -1px; line-height: 0; }
.under_anchor_link li a { display: inline-block; position: relative; padding-left: 17px; text-decoration: underline; line-height: 1.5em; text-underline-offset: 2px; letter-spacing: 0.05em; font-weight: 500;}
.under_anchor_link li a:before { content: ''; position: absolute; display: inline-block; background: #9E8A6F; clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%); width: 8px; height: 8px; left: 0; top: 7px; }
.under_anchor_link li:not(:last-child) { margin: 0 0 11px; }

.under main .under_row_ttl {font-size: 20px;font-weight: 500;font-family: var(--font-main);background: url("../images/under_ttl_ic5.svg") no-repeat left top 5px;padding: 0 0 0 30px;margin: 0 0 14px;letter-spacing: 0;}
.under main .under_row:not(:last-child) { margin: 0 0 38px; }
.under main .under_row:nth-child(2n) .under_row_ttl{background-image: url("../images/under_ttl_ic6.svg");}

.under_bnr li a { display: flex ; height: 120px; background: #634B43; color: #fff; padding: 20px; align-items: center;position: relative;z-index: 2;line-height: 1.5em;}
.under_bnr li a:after {content: '';position: absolute;background: url("../images/under_bnr_ic.svg") no-repeat center center/100% auto;width: 134px;height: 110px;right: 0;top: 0;z-index: -2;pointer-events: none;}
.under_bnr li:not(:last-child) {margin-bottom: 24px;}
.under_bnr li:nth-child(2n) a, .under_bnr li a[target="_blank"] {background: #AAC9BE;}
.under_bnr li:nth-child(2n) a:after, .under_bnr li a[target="_blank"]:after {background-image: url("../images/under_bnr_ic2.svg");}
.under_bnr li .small {display: block;font-size: 93.75%;}
.under_bnr li .small:not(:last-child) {margin: -3px 0 12px;}
.under_bnr li .lager {display: block;font-size: 137.5%;font-weight: 500;}

.under_doctor { margin: 13px -20px 0; position: relative; z-index: 2;background: url("../images/sec04_wave.svg") no-repeat top center/100% auto, url("../images/under_wave1.svg") no-repeat bottom center/100% auto;padding: 83px 16px 75px 20px;}
.under_doctor:before {content: ''; position: absolute; background: url(../images/ic_top.svg) no-repeat center center / 100% auto; width: 79px; height: 60px; top: -16px; right: 52px;}
.under_doctor:after {content: ''; position: absolute; width: 100%; height: calc(100% - 100px); top: 50px; background: var(--blue-light); z-index: -2; pointer-events: none;left: 0;}
.under main .under_doctor h3 { background: none; font-size: 30px; letter-spacing: 0.1em; margin: 0 0 52px; padding: 0; }
.under main .under_doctor h3 .en { margin: 0 0 47px; }
.under main .under_doctor .sec04_img { margin-bottom: 34px; }
.under main .under_doctor .sec04_doctor { margin-bottom: 38px; }
.under_doctor_info dt { font-size: 22px; letter-spacing: 0.15em; font-family: var(--f-mincho); padding-left: 33px; position: relative; margin: 0 0 4px; }
.under_doctor_info dt:before {content: '';position: absolute;background: url("../images/under_ttl_ic4.svg") no-repeat center center/100% auto;width: 21px;height: 34px;left: -4px;top: 2px;}
.under_doctor_year li { display: flex ; letter-spacing: 0.05em; margin: 0 0 2px; }
.under_doctor_year li .year {flex-shrink: 0;width: 97px;}
.under_doctor_info dl:not(:last-child) { margin: 0 0 25px; }
.under main .under_doctor_info .list01 li:before {background: #634B43;top: 7px;}
.under main .under_doctor_info .list01 li { padding-left: 19px; margin: 0 0 5px; line-height: 1.5em; letter-spacing: 0.05em; }
.under_doctor_info:after {content: ''; position: absolute; background: url(../images/under_ic_flower.svg) no-repeat center center / 100% auto; width: 212px; height: 249px; bottom: 27px; right: 35px; z-index: -1; pointer-events: none;}

.under_img_list {display: flex;justify-content: space-between;}
.under_img_list .img {width: calc((100% - 10px)/2);}
.under_img_arr {text-align: center;}
.under_img_arr .img {display: block;position: relative;}
.under_img_arr .img:not(:last-child) {margin-bottom: 40px;}
.under_img_arr .img:not(:last-child):after {content: '';position: absolute;width: 30px;height: 20px;background: var(--brown-light);clip-path: polygon(0 0, 50% 100%, 100% 0);left: calc(50% - 15px);top: calc(100% + 10px);}

.ortho_list { display: flex ; flex-wrap: wrap; justify-content: space-between; max-width: 335px; margin: 0 auto; }
.ortho_list li { width: calc((100% - 5px) / 2); margin: 0 0 5px; }
.ortho_list li a .lager { display: block; font-weight: 700; margin: 0 0 10px; font-size: 130%;}
.ortho_list li a { display: flex ; justify-content: center; align-items: center; text-align: center; background: var(--blue-sea); color: #fff; line-height: 1.5em; padding: 15px 0 10px; height: 100%; font-size: 12px; }
.ortho_list li a img {width: 60%;}
.ortho_list li a .img {display: block;}

.info_item { background: var(--brown-wheat); margin: 0 0 30px; position: relative;transition: all 0.3s;}
.info_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 2;}
.info_item_img { height: auto; aspect-ratio: 3 / 2; background: var(--gray); display: flex ; justify-content: center; align-items: center;margin-bottom: 0;}
.info_item_img img {max-height: 100%;}
.info_item_main { padding: 20px; }
.info_item_ttl { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-weight: 700; font-size: 18px; line-height: 1.5em; margin: 0 0 10px; }
.info_item_info { display: flex ; justify-content: space-between; align-items: center; }
.info_item_info .cate { font-size: 14px; min-width: 80px; height: 30px; border: 1px solid #919191; display: flex ; justify-content: center; align-items: center;  font-weight: 500; letter-spacing: 0.05em; }

.under_img_arr .ttl {display: block;background: var(--brown);color: #fff;text-align: center;padding: 5px 10px;margin-bottom: 5px;}

.under main .btn.active a {background-color: var(--brown-light);cursor: default;}

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