.table02 tbody tr td {position:relative;}
.hospital-category-wrap span {
  position:relative;
  z-index:1;
}
.hospital-category-wrap .tippy-box {

}
#ocare_header.nav_open .btn_alarm{
  display:none !important;
}
.btn_user.active,
.btn_alarm.active {
  background-color:#a1bbd9;
}
/* .box_myinfo, .box_notice {z-index:99;} */
.hospital-category-wrap {top:15rem; left:15rem;}
.nav_footer li a {font-weight:500;}
.info_footer .info>*,
.info_footer .info a {font-weight:350;}
.popup {}
.hospital-category-pink {background-color:#ff6969;}
.hospital-category-default {
    color: #2461ab;
    border: 1rem solid #2461ab;
    background-color: #fff;
}
.table02 tbody td {font-weight:400;}
input[type=checkbox]:checked+label:before {
    background: url(../images/renew/checkbox_checked_renew.svg) no-repeat 50% 50%;
}
.table_month td .day {line-height:1;}
.term_title:first-child {padding-top:30rem;}
.table02 label {
  font-weight: 700;
  color: #000;
}
.list_dot01>li .pointText {
  display:inline-block;
}
.btn_back.btn_back {
  display:none;
}
input[type=text], input[type=password], input[type=number], input[type=rang], input[type=email], input[type=url], input[type=date], input[type=datetime], input[type=tel], input[type=search], input[type=color], select {
  height:40rem;
}
.textRight {
  width:100%;
  text-align:right !important;
}
.mt0 {
  margin-top:0 !important;
}
.mb5 {
  margin-bottom:5rem !important;
}
.mb50 {
  margin-bottom:50rem;
}
.inp_email,
.form_cont .btn04_lg {
  height:40rem;
}
.inp_email input {
  height:38rem;
}
.box_textarea {
  padding:10rem 15rem;
}
.form_cont+.form_cont {
    margin-top: 20rem !important;
}
.required::after {
  top:0;
}
[class^='btn01_'] {
    background-color: #2461ab !important;
}
.btnGreen_xl:hover,
[class^='btn06_']:hover,
[class^='btn01_']:hover, [class^='btn01_']:active, [class^='btn01_'].active,
.btnGrey_xl:hover {
  background-color:#174f87 !important;
  color:#fff;
}
[class^='btnRenew_'] {
    width:100%;
    color: #2461ab;
    border: 1rem solid #2461ab;
    background-color: #fff;
}
[class^='btnRenew02_'] {
    width:100%;
    color: #fff;
    border: 1rem solid transparent;
    background-color:#2461ab;
}
[class^='btnRenew_']:hover,
[class^='btnRenew02_']:hover {
  border:1rem solid transparent;
  background-color:#174f87;
  color:#fff;
}
[class^='btnRenew02_']:hover {
  background-color:#174f87;
}
.gap10 {gap:10rem;}
.btnGrey_xl {
  background-color:#e3e3e3;
}
.title_my_result strong:nth-child(2) {
  position:relative;
  margin-left:30rem;
}
.title_my_result strong:nth-child(2)::before {
    display: block;
    content: '';
    position: absolute;
    top:5rem;
    left: -15rem;
    width: 1rem;
    height:20rem;
    background: #dddeea;
}
.wd100 {width:100%;}
.mb0 {margin-bottom:0 !important;}
.pb0 {padding-bottom:0 !important;}
.gap30 {gap:30rem;}
.mb15 {margin-bottom:15rem;}
.mb60 {margin-bottom:60rem;}
.flexWrap {display:flex; flex-direction:row; align-items:center;}
.columnBox {flex-direction:column !important; gap:0 !important;}
.flexBetween {
  display: flex;
  flex-direction:row;
  align-items: center;
  justify-content: space-between;
}
.texType01 {
  font-size:14rem;
  font-weight:300;
  color:#747d97;
  line-height:1;
}
.popup .pop_cont {
  padding:30rem 30rem 50rem 30rem;
}
#CheckupPackage .table02 tbody tr td:nth-child(1),
#CheckupPackage .table02 tbody tr td:nth-child(1) span {
  font-weight:350;
}
#CheckupPackage .table02 thead tr th, 
#CheckupPackage .table02 tbody tr td {
  font-weight:300;
}
/* s:2025 renew 헤더 css 추가 */
#ocare_header {background-color:#2461ab; position:relative; z-index:1038;}
#ocare_header .inner_header {align-items:center;}
.logo_corp, .logo_my_corp {font-size:20rem; font-weight:400; color:#fff; line-height:1.1; word-break:keep-all;}
#ocare_header .logo_corp {width:auto; flex:1;}
#ocare_intro .logo_corp,
#ocare_intro .logo_my_corp {color:#000; justify-content:end; font-size:25rem;}
.logo_ocare {width:180rem; height:34rem; background:url('../images/renew/logo_renew02.png') no-repeat center; margin-right:10rem; background-size:cover;}
#ocare_gnb .nav_gnb>li>button {color:#fff;}
#ocare_gnb .nav_gnb>li>button:after,
#ocare_gnb .nav_gnb>li.current>button:after {display:none;content:'';position:absolute;bottom:0;left:0;width:100%;height:4rem;border-radius:4rem 4rem 0 0;background:#fff;}
#ocare_gnb .nav_gnb>li>button:hover:after {display:block;}
#ocare_header.nav_open .nav_gnb>li>button {color:#333;}
.btn_alarm {width:24rem; height:24rem; background-size:cover;}
.btn_alarm {
    position: relative;
    width: 60rem;
    height: 60rem;
    background: url(../images/renew/ico_notice.svg) no-repeat 50% 50%;
    background-size: 23rem 23rem;
}
.btn_alarm .new {left:57%; top:20rem;}
.btn_user:after {background: url(../images/renew/arr_drop_renew.svg) no-repeat 0 0; height:7rem;}
.btn_nav {background-size:cover; width:24rem; height:24rem;}
@media (max-width: 680px) {
  .logo_ocare {width:120rem; height:22rem; margin-right:5rem;}
  .logo_corp, .logo_my_corp {font-size:13rem; word-break:keep-all; line-height:1.2;}
  .logo_corp {max-width:calc(100% - 250rem);}
	.btn_nav {width:18rem; height:18rem;}
}

/* 로그인 화면 */
.bodyBg01 {width:100%; min-height:100vh; background-color:#fafafc;}
.loginRenew {width:460rem; margin:0 auto; }
.loginRenew02 {width:540rem;}
.loginRenew_header {display:flex;justify-content:space-between;align-items:center; width:100%; padding-top:65rem;}
.loginRenew_header .lfLogo {width:140rem;height:27rem;background:url('../images/logo_MYONECARE.png') no-repeat 0 0;background-size:100% auto;}
.loginRenew_header .rtCorp {
  display:flex; flex-direction:column; align-items: flex-end;
  font-size:20rem;
}
.loginRenew_header .rtCorp img{
  max-width:150rem; 
}
.loginRenew_header .rtCorp img { max-width:100%; max-height:50rem;}
.loginInner .title{
    font-size:24rem;
    line-height: 1.3;
    font-weight: 300;
    color:#000000;
    text-align:center;
    padding:40rem 0 45rem 0;
}
.loginInner .title span {display:block; color:#2461ab; line-height:1;}
.loginInner .title b { color:#000000; font-weight:600; }
.loginRenew .custom-checkbox {
    margin:15rem 0 30rem 0;
    width:fit-content;
} 
.btn-login {
  border-radius: 4rem;
  background-color: rgb(36, 97, 171);
  width: 460rem;
  height: 50rem;
  line-height:50rem;
  text-align:center;
  font-size: 16rem;
  color: rgb(255, 255, 255);
  text-align: center;
  margin-bottom:20rem;
}
.btn-login:disabled {
  background-color:#ccc;
  color:#333;
  pointer-events: none;
  cursor: not-allowed;
  cursor: not-allowed;
}
.btn-login:hover {
    background-color: #174f87;
}
.login_utils {
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    font-size: 14rem;
    color: rgb(17, 17, 17);
    line-height: 1.571;
}
.login_utils li {
    position:relative;
}
.login_utils li:not(:last-child) {
    margin-right:35rem;
}
.login_utils li:not(:last-child)::after {
    content: '';
    position: absolute;
    right:-17.5rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1rem;
    height: 12rem;
    background-color: #dcdcdc;
}
.login_utils li a {
  font-size: 14rem;
  font-weight:300;
  color: rgb(17, 17, 17);
}
.login_utils li a:hover {
    color:#174f87;
}
.intro_contents .intro_info .btns,
.intro_contents .intro_info .box_period {width: 100%;}
.loginRenew_sns {
    margin-bottom:45rem;
}
.loginRenew_sns .loginRenew_sns_title {
  display: block;
  position: relative;
  font-size: 18rem;
  font-weight: 400;
  margin-top: 40rem;
  margin-bottom: 20rem;
  overflow: hidden;
  text-align: center;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:15rem;
}
.loginRenew_sns .loginRenew_sns_title span {
  display:block;
  height: 1rem; background-color: #dcdcdc;
  width: 120rem;
}

.loginRenew_sns .loginRenew_sns_title::before {
  left: 0;
}
.loginRenew_sns .loginRenew_sns_title::after {
  right: 0;
}

.loginRenew_sns .loginRenew_sns_list {
  display: flex;
  gap: 10rem;
  justify-content: center;
}

.loginRenew_sns .loginRenew_sns_list .sns-icon {
  width: 46rem; height: 46rem;
}
.loginTypeBox01 {
  display:flex;
  flex-direction:row;
  align-items:stretch;
  justify-content:center;
  width:100%;
  border:1rem solid #ececec;
  box-sizing:border-box;
  border-radius:10rem;
  overflow:hidden;
  margin:35rem 0 30rem 0;
  background-color:#fff;
}
.loginTypeBox01 li {
  width:50%;
}
.loginTypeBox01 li a {
  background-color:#fff;
  width:100%;
  display:block;
  text-align:center;
  padding:45rem 0 20rem 0;
}
.loginTypeBox01 li:hover {
  background-color:#174f87;
}
.loginTypeBox01 li:hover a {
  background-color:transparent;
}
.loginTypeBox01 li a:hover h3,
.loginTypeBox01 li a:hover p {
  color:#fff;
}
.loginTypeBox01 li:nth-child(1) {
    border-right:1rem solid #ececec;
}
.loginTypeBox01 li h3 {
  font-size: 22rem;
  font-weight:400;
  color: rgb(0, 0, 0);
  line-height: 1;
  text-align: center;
  margin-bottom:25rem;
}
.loginTypeBox01 li p {
  font-size: 13rem;
  font-weight:300;
  color: rgb(153, 153, 153);
  line-height: 1.385;
  text-align: center;
}
.loginTypeBox01 li .icon {
  width:120rem;
  height:120rem;
  border-radius:50%;
  background-color:#f4f4f8;
  margin:0 auto 25rem auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.loginTypeBox01 li .icon img {
  margin-top:5%;
}
.loginTypeBox01 li .icon01 img {
  width:60%;
}
.loginTypeBox01 li .icon02 img {
  width:80%;
  margin-left:10%;
}
.loginTypeBox02 {
  margin-bottom:55rem;
}
.loginTypeBox02 li {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:15rem;
}
.loginTypeBox02 li:not(:last-child) {
  margin-bottom:15rem;
}
.loginTypeBox02 li p {
  font-size: 14rem;
  font-weight:300;
  color: rgb(17, 17, 17);
  line-height:1;
}
.loginTypeBox02 li a {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:7rem;
}
.loginTypeBox02 li a span {
  display:block;
  font-size: 14rem;
  font-weight:400;
  color: #2461ab;
  text-align: left;
  line-height:1;  
}
.loginTypeBox02 li a img {
  max-width:7rem;
  position:relative;
  top:-0.5px;
}
.loginTypeBox02 li:hover a span {
  color:#174f87;
}
.loginTypeBox02 li a .on {
  display:none;
}
.loginTypeBox02 li:hover a .on {
  display:block;
}
.loginTypeBox02 li:hover a .off {
  display:none;
}
.ocare_intro_renew .intro_inner{
  max-width:700rem;
}
.ocare_intro_renew .intro_inner .intro_contents {
  width:100%;
}
.ocare_intro_renew .intro_inner .intro_contents02 .login_info {
    padding:45rem 70rem;
}
.ocare_intro_renew .intro_header {
  justify-content:space-between !important;
}
.ocare_intro_renew .logo_corp:before {
  display:none;
}
@media screen and (max-width: 880px) {
  .ocare_intro_renew .intro_inner .intro_contents02 .login_info {
      padding: 30rem 20rem;
  }
  .ocare_intro_renew .intro_contents .title_intro {
      font-size: 26rem;
      margin-bottom:15rem;
  }
  .ocare_intro_renew .comment_intro {
    margin-bottom:40rem;
  }
  #ocare_intro .logo_corp, #ocare_intro .logo_my_corp {font-size:22rem;}
}
@media screen and (max-width: 480px) {
  .ocare_intro_renew input[type=checkbox]+label span {
    word-break:keep-all;
    max-width:180px;
  }
}
.footerRenew {
    text-align:center;
}
.footerRenew .footInfo p {
  font-size: 14rem;
  font-weight:300;
  color: rgb(153, 153, 153);
  line-height: 1.643;
}
.footerRenew .company-links {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:5rem;
  margin:20rem 0 35rem 0;
}
.footerRenew .company-links li {

}
.footerRenew .company-links li a:hover {
    border:1rem solid transparent;
    background-color:#174f87;
    color:#fff;
}
.footerRenew .company-links li a {
  display:block;
  border: 1rem solid rgb(234, 234, 234);
  background-color:#fff;
  width: 139rem;
  height: 40rem;
  line-height:40rem;
  font-size: 13rem;
  font-weight:400;
  color: rgb(0, 0, 0);
  text-align: center;
  border-radius:18rem;
}
.footerRenew .copyright {
  font-size: 14rem;
  font-weight:300;
  color: rgb(153, 153, 153);
  line-height: 1.2;
  text-align: center;
  padding-bottom:40rem;
}
/* input 스타일 */
.inputStyle, .inputStyle li, .inputStyle li > div {position:relative; width:100%;}
.inputStyle li:not(:last-child) {margin-bottom:20rem;}
.inputStyle li > div {height:50rem;}
.inputStyle input {width:100% !important; height:100% !important; border:none; background-color:transparent !important; border-bottom:1rem solid #cccccc; box-sizing:border-box; border-radius:0 !important; font-size:14rem; font-weight:300; color:#000; text-indent:40rem;}
.inputStyle input:focus {border-bottom:1rem solid #2461ab; outline:none !important; color:#2461ab;}
.inputStyle input:-webkit-autofill,
.inputStyle input:-webkit-autofill:hover,
.inputStyle input:-webkit-autofill:focus,
.inputStyle input:-webkit-autofill:active {
    /* 1. 폰트 색상을 검정색(#000)으로 강제 변경 */
    -webkit-text-fill-color: #000000 !important;

    /* 2. 배경색 제거 (내부 그림자를 이용해 흰색으로 덮어버림) */
    -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
    box-shadow: 0 0 0px 1000px #ffffff inset !important;

    background-color:transparent !important;
}
.inputStyle .icon {position:absolute; left:10rem; width:17rem; top:43%; transform:translateY(-50%);}
.inputStyle .pwOnOff {position:absolute; top:50%; transform:translateY(-50%); right:15rem; cursor:pointer;}
/* 체크박스 */
.custom-checkbox {
    display: flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    font-size: 14rem;
    font-weight:300;
    color:#000000;
}
.custom-checkbox input[type="checkbox"] {
    display: none;
}
.custom-checkbox span {
    content: '';
    display: inline-block;
    width: 25rem;
    height: 25rem;
    border: 1rem solid #cccccc;
    box-sizing:border-box;
    border-radius: 4rem;
    margin-right:10rem;
    vertical-align: middle;
    transition: all 0.2s ease;
    position: relative;
}
.custom-checkbox input[type="checkbox"]:checked + span::after {
    content: '';
    position: absolute;
    left: 7rem;
    top: 2rem;
    width: 6rem;
    height: 12rem;
    border: solid #333;
    border-width: 0 2rem 2rem 0;
    transform: rotate(45deg);
    transition: all 0.2s ease;
}
/* 선택 애니메이션 */
.custom-checkbox input,
.custom-checkbox input span {
    position: relative;
}
.custom-checkbox input[type="checkbox"]:checked + span::before {
    background-color: #fff;
    border-color: #333;
}


@media screen and (max-width:500px) {
    /* 로그인 공통 */
    .loginRenew {width:calc(100% - 40rem);}
    .btn-login {width:100% !important;}
    .loginRenew_header .lfLogo {width:100rem;}
    .loginRenew_header .rtCorp {font-size:17rem;}
    .loginRenew_header .rtCorp img {max-width:110rem;}
    .loginInner .title {font-size:22rem; padding:30rem 0 35rem 0;}
    .footerRenew .footInfo p {font-size:13rem;}
}


/* 대시보드 */
/* s:대시보드 */

/* 대시보드_탑비주얼 */
.subTopArea {
    position:relative;
    background-color: #fff;
    width: 100%;
    border-bottom: 1rem solid #dddeea;
    box-sizing:border-box;
    overflow: hidden;
}
.subTopArea {
    height:160rem;
}
.subTopArea .textBox {
  width:1660rem;
  height:100%;
  margin:0 auto;
  padding:0 20px;
  display:flex;
  flex-direction:column;
  position:relative;
  z-index:2;  
}
.subTopArea03 .textBox {
  width:960rem;
}
.subTopArea .textBox {
  justify-content:center;
}
.subTopArea .textBox .txt_title {
  display:flex;
  flex-direction:row;
  align-items:center;
  flex-wrap:wrap;
}

.subTopArea02 {
    padding:50rem 150rem;
}
.subTopArea02 .textBox {
    padding:0;
    margin-bottom:0 !important;
}
.subTopArea .textBox h3 {
    font-size:40rem;
    font-weight:400;
    color:#000000;
    line-height:1;
}
.subTopArea .textBox .txt_title {
    font-size:36rem;
    font-weight:400;
    color:#000000;
    line-height:1.3;
    position:relative;
}
.subTopArea .textBox .txt_title .name {
    display:inline-block;
    font-weight:bold;
    color:#2461ab;
    font-size:1em;
}
.greeting {
    display: inline; 
}
.subTopArea .textBox .txt_title .info {
    display:block;
    font-weight:bold;
    font-size:1em;
}
.subTopArea .textBox .border {
    width:1rem;
    height:40rem;
    background-color:#c4c4c4;
    display:block !important;
    margin:0 50rem;
}
.subTopArea03 {
  height:190rem;
  border-bottom:none;
  box-shadow:none;
}
.subTopArea .textBox .txt_title strong {
    display:block;
    font-size:1em;
    font-weight:bold;
}
.subTopArea .textBox .txt_title02 {
    font-size:34rem;
    display:flex;
    flex-direction:column;
    align-items:baseline;    
}
.subTopArea::before {
    content: '';
    position: absolute;  
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center right;
    top:0;
    bottom:0;    
    background-image: url(../images/renew/mypage_gate_deco01.png);
    right:50rem;
    width:1144rem;
    height:191rem;    
}
.subTopArea03::before {
  background-image:url('../images/renew/mypage_gate_img01..png');
  width:286rem;
  height:150rem;
  bottom:0;
  top:auto;
  right:27%;
}
.subTopArea .txt_type01 {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:45rem;  
}
.subTopArea .txt_type01,
.registrationBtn01 {
  margin-top:15rem;
}
.registrationBtn01{
  width:fit-content;
  background-color:#2461ab;
  padding:11rem 17rem 10rem 17rem;
  line-height:1;
  font-size: 16rem;
  font-weight:400;
  color: #fff;
  text-align:center;
  border-radius:20rem;
}
.registrationBtn01:hover {
  background-color:#174f87;
}
.subTopArea .txt_type01 .flexWrap {
  display:flex;
  flex-direction:row;
  align-items:center;
}
.subTopArea .txt_type01 a {
  background-color: rgb(68, 68, 68);
  width: 95rem;
  height:25rem;
  line-height:27rem;
  font-size: 16rem;
  font-weight:300;
  color: rgb(255, 255, 255);
  text-align:center;
  border-radius:15rem;
  margin-right:8rem;
}
.subTopArea .txt_type01 p {
  font-size: 16rem;
  font-weight:300;
  color: rgb(0, 0, 0);
  text-align: left;
}
.dashboardLinkBox {
  width:100%;
  margin:0 auto;
  max-width:1400rem;
}
.dashboardLinkBox ul {
  width:100%;
  justify-content:space-between;
}
.dashboardLinkBox ul li {
  text-align:center;
}
.dashboardLinkBox ul li a {
  display:block;
  width:100%;
}
.dashboardLinkBox ul li:hover span {
  color:#174f87;
}
.dashboardLinkBox ul li a .icon{
  /* max-width:125rem; */
  /* height:109rem; */
  display:flex;
  flex-direction:column;
  justify-content:end;
}
.dashboardLinkBox ul li .icon img {
  max-width:100%;
}
.dashboardLinkBox ul li span {
  display:block;
  font-size: 18rem;
  font-weight:300;
  color:#000;
  line-height: 1;
  text-align: center;
  margin-top:10rem;
}
.dashboardLinkBox_50 ul,
.dashboardLinkBox_70 ul,
.dashboardLinkBox_80 ul {

}
.dashboardLinkBox_50 ul {
  gap:50rem;
}
.dashboardLinkBox ul {
  gap:70rem;
}
.dashboardLinkBox_80 ul {
  gap:60rem;
}
.dashboardLinkBox_50 ul li a .icon {
  max-width:60rem;
  height:60rem;
  margin:0 auto;
}
.dashboardLinkBox_50 ul li span {
  font-size:14rem;
}
.dashboardLinkBox ul li a .icon {
  max-width:84rem;
  height:90rem;
  margin:0 auto;  
}
.dashboardLinkBox ul li span {
  font-size:16rem;
}
.dashboardLinkBox_80 ul li a .icon {
  max-width:96rem;
  margin:0 auto;  
}
.dashboardLinkBox_80 ul li span {
  font-size:17rem;
}
.boardRenew {
    width:100%;
    border: 1rem solid #dddeea;
    box-sizing:border-box;
    border-radius: 10rem;
    overflow: hidden;
}
.boardRenew .notice-status li a .subject .ico_notice_new {
  position:relative;
  top:-1px;
}
.board-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 60rem;
    padding: 0 30rem;
    border-bottom: 1rem solid #dddeea;
}
.board-title {
    /* font-size: 16rem; */
    font-size: 19rem;
    font-weight: bold;
    display: inline-flex;
    height: 22rem;
    align-items: center;
}
.board-title::after {
    display: inline-block;
    content: "";
    width: 8rem;
    height: 14rem;
    margin-left: 4rem;
    background: url(../images/ico_arr_blue_m.svg) no-repeat 50% 50%;
}
.notice-status .subject-title {font-size:14rem;}
.boardRenew .menu {
    height: 100%;
    font-size: 0;
    white-space: nowrap;
}
.boardRenew .menu li {
    display: inline-block;
    height: 100%;
    margin-left: 20rem;
}
.boardRenew .menu li.active button {
    font-weight: bold;
    color: #2461ab;
}
.boardRenew .menu li button {
    position: relative;
    height: 100%;
    font-size: 15rem;
    color: #747d97;
}
.boardRenew .menu li.active button::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4rem;
    border-radius: 4rem 4rem 0 0;
    background: #2461ab;
}
.notice-status {
    font-size: 16rem;
}
.board-body {
    padding: 25rem 30rem;
    height: 100%;
}
.label-main-oncare {
    color: #9548da;
    background-color: #f2e3ff;
}
.label-main-enterprise {
    color: #0085c2;
    background-color: #d5f1ff;
}
.label-main-hospital {
    color: #00843d;
    background-color: #d3f5d4;
}
[class^=label-main-] {
    width: 42px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 1;
    border-radius: 3px;
}
.bannerArea {
  flex-direction:row;
  justify-content:space-between;
  align-items:stretch;
  /* margin:30rem 0 15rem 0;   */
  margin:60rem 0 40rem 0;
}
.bannerArea >div {
  width:530rem;
  border-radius:10rem;
  background-color:#fafafc;
  border:1rem solid #dddeea;
  box-sizing: content-box;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  position:relative;
  background-size:cover; background-repeat:no-repeat; background-position:center;
}
.bannerArea >div a {
  width:100%;
}
.bannerArea >div img {
  width:100% !important;
  object-fit: cover;
}
.bannerArea >div .moImg {
  display:none;
}
.bannerArea .swiper {width: 100%;}
.bannerArea .swiper a {width:100%; height:100%; display:block; }
.bannerArea .swiper[data-component='swiper'] .swiper-wrapper .swiper-slide {width: 100%;}
.bannerArea .swiper[data-component='swiper'] .swiper-wrapper .swiper-slide .link img{  object-fit: cover; width:100%;}
.bannerArea button[type="button"] {position:absolute; z-index:2; top:10rem; overflow: hidden;display: inline-block;width: 20rem;height: 20rem;border: 1rem solid #dddeea;border-radius: 50%;background: url('../images/arr_drop.svg') no-repeat 50% 50%; }
.bannerArea button[type="button"].swiper--btn-prev {transform: rotate(90deg); left:10rem;}
.bannerArea button[type="button"].swiper--btn-next {transform: rotate(-90deg); right:10rem;}
.board-title::after {margin-left:7rem; position:relative; top:-1px;}

/* 약관동의팝업 */
.popup {}
.popup540 .pop_inner {width:540rem;}
.popup .checkList {width:100%;}
.popup .checkList li {display:flex; flex-direction:row; align-items:center; justify-content:space-between;}
.popup .checkList li:not(:last-child) {margin-bottom:10rem;}
.popup .checkList li label span {display:inline-block; font-size:14rem; font-weight:400; letter-spacing: -0.3px; color:#000000;}
.popup .checkList li label span.blue {margin-left:5rem; color:#2461ab;}
.popup .checkList li label span.blue02 {margin-left:5rem; color:#747d97;}
.popup .checkList li button {color:#747d97; border:1px solid #747d97; font-weight:500; font-size:14rem; padding:0 8rem; box-sizing:border-box;}
.popup .checkList li button:hover {border:1rem solid transparent; background-color:#375fcf; color:#fff;}
.popup .topTitle01 {
  font-size: 18rem;
  font-weight:300;
  color: rgb(0, 0, 0);
  line-height: 1.556;
  text-align: center;
  margin-bottom:25rem;
}
.popup .topTitle01 .name {display:inline; font-weight:700; color:#2461ab;} 
.popup .popTypeBox {width:100%; display:flex; flex-direction:row; align-items:center; padding:20rem 0; border-top:1rem solid #dddeea;}
.popup .popTypeBox02 {border-bottom:1rem solid #dddeea;}
.popup .popTypeBox .titArea {width:100rem; height:100%;}
.popup .popTypeBox .titArea h4 {font-size: 16rem; font-weight:400; color: rgb(0, 0, 0); line-height:1; text-align:center;}
.popup .popTypeBox .conArea {width:calc(100% - 100rem);}
.popup .popTypeBox .userInfo,
.popup .popTypeBox .userInfo li,
.popup .popTypeBox .userInfo li dl {width:100%;}
.popup .popTypeBox .userInfo li dl {display:flex; flex-direction:row; align-items:center; justify-content:space-between;}
.popup .popTypeBox .userInfo dt {font-size:14rem; font-weight:400; color:#747d97;}
.popup .popTypeBox .userInfo dd {font-size:15rem; font-weight:300; color:#000000;}
.popup .popTypeBox .userInfo li:not(:last-child) {margin-bottom:5rem;}
.popup .text-base {font-size:16px; font-weight:500; color:#000;}
.popup .btns {font-weight:700;}
.popup [class^='btn07_'] {border:1px solid #2461ab; box-sizing:border-box; color:#2461ab; }

.popupBtnBox {width:100%; margin-top:40rem;}
.confirmBtnRenew {
  border-radius: 6rem;
  background-color: rgb(36, 97, 171);
  width: 175rem;
  height: 40rem;
  font-size: 14rem;
  font-weight:400;
  color: rgb(255, 255, 255);
  display:block;
  margin:0 auto;
}
.confirmBtnRenew[disabled],
[class^='btn01_']:disabled, 
[class^='btn01_'].disabled{
    background-color:#ccc !important;
    color:#333 !important;
    pointer-events: none;
    cursor: not-allowed;
    cursor: not-allowed;
}
.confirmBtnRenew:hover {
  background-color:#2461ab;
}
.popup540 .pop_cont {padding:40rem;}
.privacyPolicy {z-index:10001;}
.popup .conArea .grp_radio label {margin-right:35rem;}
.popup .conArea .selectType01 {width:100%; height:40rem; font-size:15rem; font-weight:300; color:#000; margin-top:12rem;}
.popup .conArea input[type=radio]+label {font-size:14rem; color:#000; font-weight:400;}
.popup .conArea input[type=radio]+label:before {width:20rem; height:20rem;}

#CheckupPackage .table02 thead tr th:nth-child(2),
#CheckupPackage .table02 tbody tr td:nth-child(2) {width:80rem; padding:0;}
/* 예약대상선택 */
.visualTop {
  width:100%;
  background-color:#fff;
  padding-bottom:35rem;
}
.visualTop.active {
  position:sticky;
  top:0;
  left:0;
  z-index:102;
}
.visualTop .inner {
  width:100%;
  max-width: 1620rem;
  margin: 0 auto;
}
.visualTop.active {
  box-shadow:3px 3px 10px rgba(0,0,0,0.2);
}
.innerRenew {
  width:100%;
  box-sizing:border-box;
  margin-top:30rem;
  padding-bottom:80rem;
}
.visualTop .tit {
  font-size: 44rem;
  font-weight:400;
  color: rgb(0, 0, 0);
  line-height: 1.2;
  text-align: left;
  padding:55rem 0 25rem 0;
}
.visualTop.active {
  padding-bottom:0;
}
.visualTop.active .tit {
  display:none;
}
.visualTop ul {
  display: flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  width:100%;
  overflow:hidden;
}
.visualTop.active ul {
  padding:24rem 0;
}
.visualTop ul li {
  position:relative;
  z-index: auto;
}
.visualTop ul li::after {
  content:'';
  width:194rem;
  height:3rem;
  background-image:url('../images/renew/visualTop_deco.png');
  background-repeat:no-repeat;
  background-size:cover;
  position:absolute;
  left:-194rem; top:50%;
  z-index:0;
}
.visualTop ul li.active02::after {
  background-image:url('../images/renew/visualTop_deco02.png');
}
.visualTop ul li p {
  width:222rem;
  padding:12rem 0;
  line-height:1;
  text-align:center;
  background: linear-gradient(to bottom, #ababab 0%, #676767 100%);
  border-radius:22rem;
  font-size: 18rem;
  font-weight:300;
  color: rgba(255, 255, 255, 0.702);   
  position:relative;
  overflow:hidden;
  z-index:3;
}
.visualTop ul li p img {
  display:none;
  width:23rem;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:13rem;
}
.visualTop ul li.active p {
  background: linear-gradient(to bottom, #4dbbef 0%, #0f8fdf 100%);
  color:#fff;
}
.visualTop ul li.active02 p img {
  display:block;
}
.titleType01 {
  font-size: 24rem;
  font-weight:300;
  color: rgb(0, 0, 0);
  line-height: 1.2;
  padding-bottom:25rem;
  margin-bottom:30rem;
  border-bottom:2rem solid #2461ab;
  box-sizing:border-box;
  width:100%;
  text-align:left;
}
.grp_list_renew {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  gap:20rem;
}
.grp_list_renew > .box {
  width:calc(50% - 10rem);
  min-height:120px;
  border-radius:10rem;
  background-color:#fff;
  border:1rem solid #dddeea;
  box-sizing:border-box;
  position:relative;
  padding:10rem 0 10rem 20rem;
  overflow:hidden;
  display: flex;
  flex-direction: row;
  align-items: center;  
  outline:none;
}
.grp_list_renew .info_renew .name {
  width:100rem;
  height:100rem;
  border-radius:50%;
  overflow: hidden;
  border:3rem solid #ffffff;
  box-sizing:border-box;
  /* box-shadow:3px 3px 10px rgba(0,0,0,0.2); */
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  line-height:1.2;
  font-size: 20rem;
  color: rgb(254, 254, 254);
  font-weight: 500;
  /* background: linear-gradient(to left, #98a1bb 0%, #b3bace 100%); */
  background: linear-gradient(to left, #4f95e2 0%, #75bada 100%);
  margin-right:25rem;
  word-break:keep-all;
  padding:0 2rem;
  box-sizing:border-box;
}
.grp_list_renew .box.select .info_renew .name {
  background: linear-gradient(to left, #4f95e2 0%, #75bada 100%);
}
.grp_list_renew .position {
  display:block;
  font-size: 19rem;
  color: rgb(0, 0, 0);
  font-weight: 700;
  text-align: left;
  margin-bottom:8rem;
  word-break: break-all;
}
.grp_list_mypage01 .info_renew {
  width:100%;
  max-width:calc(100% - 120rem);
}
.grp_list_mypage01 .patient{
  width:100% !important;
  max-width:calc(100% - 155rem);
}
@media screen and (max-width:480px) {
  .grp_list_mypage01 .box .condition, 
  .grp_list_mypage01 .box .conditionRenew {
    width:100rem !important;
    font-size:12rem;
  }
  .grp_list_mypage01 .box .condition button {
    height:40rem !important;
  }
  .grp_list_mypage01 .box .condition .reserve,
  .grp_list_mypage01 > .box .condition .completed {
    font-size:16rem !important;
  }
  .grp_list_mypage01 .patient {
    max-width:calc(100% - 85rem);
  }
  .grp_list_mypage01 .patient >div {

  }  
}
.grp_list_renew04 .position {
  font-weight:400;
}
.grp_list_renew .target {
  font-size: 18rem;
  color:#b3b3b3;
  font-weight: 500;
  line-height: 1;
  text-align: left;
  word-break:keep-all;
}
.grp_list_renew > .box.select .target {
  color:#2461ab;
}
.grp_list_renew .birthday {
  font-size: 16rem;
  color: rgb(116, 125, 151);
  line-height: 1;
  text-align: left;
}
.grp_list_renew .birthday:before {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 12rem;
    margin: 0 10rem;
    background: #dddeea;
    position:relative;
    top:-1rem;
}
.grp_list_renew > .box .condition,
.box .conditionRenew {
  position:absolute;
  top:0;
  right:0;
  width: 140rem;  
  height:100%;
  display:flex;
  flex-direction:column;
}
.grp_list_renew04 .info_renew {
  width:calc(100% - 100rem);
}
.grp_list_renew04 .box .hospitalInfo .infoName{
  word-break:keep-all;
}
.grp_list_renew04 .box .hospitalInfo {
  width:calc(100% - 360rem);
  box-sizing:border-box;
  display:flex;
}
.upper_calendar .btn_type_search{
  margin-right:5rem !important;
}
.grp_list_renew > .box .condition button,
.box .conditionRenew button {
  background: linear-gradient(to top, #5692e3 0%, #4078c3 100%);
  width: 100%;
  height: 50rem;
  border-bottom-left-radius:40rem;
  font-size: 16rem;
  font-weight:400;
  color: rgb(255, 255, 255);
  text-align: center;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
}
.box .conditionRenew button:disabled,
.box .conditionRenew button:disabled:hover {
    color: #7f7f7f;
    background: #fafafc;
    border:1rem solid #b5b9c3;
}
.box .conditionRenew button:disabled img {
  display:none;
}
.grp_list_renew > .box .condition button:hover,
.box .conditionRenew button:hover {
  background:linear-gradient(to top, #1a538c 0%, #3878b8 100%);
}
.grp_list_renew > .box .condition button img,
.conditionRenew button img {
  width:6rem;
  margin-left:10rem;
  position:relative;
  top:-0.5rem;
}
.grp_list_renew > .box .condition .reserve,
.box .conditionRenew .reserve {
  width:100%;
  height:calc(100% - 50rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  font-size: 18rem;
  font-weight:400;
  color: rgb(0, 0, 0);  
}
.grp_list_renew > .box .condition .completed,
.box .conditionRenew .completed {
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  font-size: 18rem;
  font-weight:400;
  color: rgb(142, 148, 165);
}
.grp_list_renew > .box.addSelect {
  background-color:#fcfcfd;
  border:1rem dashed #dddeea;
  cursor:pointer;
}
.grp_list_renew > .box.addSelect:hover {
  background-color:#174f87;
}
.grp_list_renew > .box.addSelect p {
  width:100%;
  height:100%;
  font-size: 20rem;
  font-weight:500;
  color: rgb(153, 163, 189);
  text-align: center;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
}
.grp_list_renew > .box.addSelect:hover p {
  color:#fff;
}
.grp_list_renew > .box.addSelect img {
  width:35rem;
  margin-right:20rem;
}
.grp_list_renew > .box.addSelect .on {
  display:none;
}
.grp_list_renew > .box.addSelect:hover .off {
  display:none;
}
.grp_list_renew > .box.addSelect:hover .on {
  display:block;
}
.grp_list_renew > .box .condition02 {
  width:auto !important;
  height:auto !important;
  top:10rem;
  right:10rem;
}
.grp_list_renew > .box .condition02 .completed {
  height:25rem;
  font-size:15rem;
  border-bottom:1rem solid #8e94a5;
  box-sizing:border-box;
  color:#8e94a5;
}
.grp_list_renew > .box.select .condition02 .completed {
  color:#000;
  border-bottom:1rem solid #000;
}
.grp_list_renew .listInfo span {
  font-size: 14rem;
  color: #b3b3b3;
  line-height: 1;
  text-align: left;
}
.grp_list_renew04 .listInfo span {
  font-size:16rem;
}
/* .grp_list_renew > .box.select span {
  color: #747d97;
} */
.grp_list_renew .listInfo .center:before {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 20rem;
    margin: 0 15rem;
    background: #dddeea;
}
.grp_list_renew .listInfo .center::after {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 20rem;
    margin: 0 15rem;
    background: #dddeea;
}
.grp_list_renew .listInfo span.year {
  color:#000;
}
.grp_list_renew > .box.disable span.year {
  color:#b3b3b3;
}
.grp_list_renew .infoText {
  margin-top:8rem;
  font-size:16rem;
  font-weight:350;
  color:#000;
}
.grp_list_renew02 > .box {
  min-height:150rem;
}
.mypageGateBtn {
  margin-top:20rem;
  border-radius: 6rem;
  height: 61rem;
  flex-direction:row;
}
.mypageGateBtn:hover {
  border:1rem solid transparent;
  background-color: rgb(23, 79, 135);
  color:#fff;
}
.mypageGateBtn,
.pageBtnType01 {
  background-color:#fcfcfd;
  border:1rem dashed #dddeea;
  box-sizing:border-box;
  width: 100%;
  display:flex;
  justify-content:center;
  align-items:center;  
}
.mypageGateBtn,
.pageBtnType01,
.pageBtnType01 p {
  font-size: 18rem;
  font-weight:400;  
  color:#99a3bd;  
  overflow: hidden;
} 
.mypageGateBtn img {
  width:26rem;
  margin-right:8rem;
  position:relative;
  top:-1rem;
}
.mypageGateBtn img.on {
  display:none;
}
.mypageGateBtn:hover img.off {
  display:none;
}
.mypageGateBtn:hover img.on {
  display:block;
}
.pageTit {
  font-size: 24rem;
  font-weight:400;
  color: rgb(0, 0, 0);
  margin-bottom:20rem;
  line-height:1;
}
.pageBtnType01 {
  padding:35rem 0;
  border-radius:10rem;
  flex-direction:column;
}
.pageBtnType01 img {
  display:block;
  width:40rem;
  margin-bottom:15rem;
}
.visualTop .tit .moText {display:none;}
@media screen and (max-width:1700px) {
  .visualTop .inner {padding:0 20rem;}
  .visualTop ul li p {width:180rem;}
}
@media (max-width:1280px) {
  .innerRenew >.titleType01 {display:none;}
  .visualTop .inner {border-bottom:2rem solid #2461ab; box-sizing:border-box; padding:0 20rem 30rem 20rem;}
  .visualTop.active .inner {padding: 0 20rem 0 20rem;}
}
@media (max-width:1200px) {
  .visualTop ul li p {width:150rem; font-size:16rem;}
  .visualTop ul li.active p img {display:none;}
  .visualTop {padding-bottom:0;}

  .visualTop .tit {font-size:28rem; padding:40rem 0 25rem 0;}  
  .visualTop .tit .moText {display:inline-block; position:relative; color:#2461ab; font-size:1em;}
  .visualTop .tit .moText::before {content:''; margin:0 10rem; display:inline-block; background-image:url('../images/renew/arrow_black.svg'); width:10rem; height:20rem; background-repeat:no-repeat; background-size:cover; background-position:center;}
  .visualTop .tit .moNone {display:none;}
  #ocare_header.nav_open .logo_corp {color:#000;}
}
.moBlock980 {display:none;}
@media screen and (max-width:980px) {
  .visualTop ul li p {width:120rem;}  
  .moBlock980 {display:block; width:100%;}
  .moBlock980 .detailWrap > ul > li.groupBox {margin-bottom:5rem; padding-bottom:0;}
  .moNone980 {display:none;}
  .mypageGateBox02 .totalTopBox.wdAuto {width:auto;}
}
@media screen and (max-width:810px) {
  .visualTop ul li p {width:110rem;}
}
@media (max-width:800px) {
  input[type=text], input[type=password], input[type=number], input[type=rang], input[type=email], input[type=url], input[type=date], input[type=datetime], input[type=tel], input[type=search], input[type=color], select {font-size:14rem; text-indent:10rem;}   
  .inputLogin input {text-indent:30rem !important;}
  .popup .pop_cont {max-height:calc(100dvh - 100rem);}
  .popup.full .pop_head {background-color:#f4f4f8;}
  .popup.full .pop_head {justify-content:flex-start;}
  .btns button {height:45rem; font-size:14rem;}
  .popup .pop_inner>.btns button {height:45rem; font-size:14rem;}
  textarea {font-size:14rem;}
  .box_textarea textarea {height:28vh;}
}
@media screen and (max-width:720px) {
  .visualTop .tit {font-size:22rem; padding:35rem 0 25rem 0;}
  .visualTop .tit .moText::before {width:9rem; height:17rem; margin:0 7rem 0 5rem;}  
  .visualTop ul {overflow:hidden;}
  .visualTop ul li::after {width:200%; left:40rem;}
  .visualTop ul li:last-child::after {display:none;}
  .visualTop ul li.active02::after {background-image: url(../images/renew/visualTop_deco.png); background-repeat: no-repeat; background-size: cover;}
  .visualTop ul li p {width:40rem; height:40rem;}
  .visualTop ul li p::before {
    font-size:19rem;
    font-weight:400;
    color:rgba(255, 255, 255, 0.7);
    line-height:1;
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    padding:0;    
  }
  .visualTop ul li.active p::before {
    color:#fff;
  }
  .visualTop ul li p {font-size:0;}
  .visualTop ul li:nth-child(1) p::before {content: "1";}  
  .visualTop ul li:nth-child(2) p::before {content: "2";}  
  .visualTop ul li:nth-child(3) p::before {content: "3";}  
  .visualTop ul li:nth-child(4) p::before {content: "4";}  
  .visualTop ul li:nth-child(5) p::before {content: "5";}  
  .visualTop ul li:nth-child(6) p::before {content: "6";}  


  .grp_list_mypage > .box .condition .reserve {display:none;}
  .grp_list_mypage > .box .condition {height:auto; width:110rem;}
  .grp_list_mypage > .box .condition .completed {position:absolute; top:13rem; right:13rem; width:auto; height:auto; font-size:15rem;} 
  .grp_list_mypage > .box .condition {width:90rem;}
  .grp_list_mypage > .box .condition button {font-size:15rem; height:35rem; border-bottom-left-radius:20rem;}
  .grp_list_mypage .info_renew {width:100%;}
  .grp_list_renew > .box.addSelect img {margin-right:15rem;}
  .grp_list_renew > .box .condition button img {margin-left:5rem;}
}
@media screen and (max-width:580px) {
  .visualTop ul li::after {width:100%;}
  .visualTop .tit {padding:25rem 0 20rem 0;}

}
/* 병원선택 */
.medicalBox {
  position:relative;
  width:100%;
  padding-bottom:20rem;
  display:flex;
  flex-direction:row;
  align-items:flex-start;
}
.medicalList,
.mapWrap {
  width:calc(100% - 215rem);
  margin-left:25rem;
}
.medicalList .list_03 {
  gap:40rem;
  flex-wrap:wrap;
}
.medicalList li {
  width:calc(25% - 30rem);
  box-sizing:border-box;
  padding:0;
}
.medicalList li .cont {
  width:100%;
}
.medicalList li .cont .hospital-category-wrap {
  width:calc(100% - 30rem);
  flex-wrap:wrap;
}
.medicalList li .contBottom02 .topBox {
  margin-bottom:20rem;
}
.medicalList li .contBottom02 .cont .hospital-category-wrap {
  position:relative; top:0; left:0; margin-bottom:20rem;
}
.medicalList li:hover {
  border: 1rem solid #dddeea;
}
.medicalList li .pic {
  width:100%;
  height:auto;
  border-bottom-left-radius:0;
  border-bottom-right-radius:0;
  max-height:210rem;
  overflow:hidden;  
}
.medicalList li .pic .imgBox {
  width:100%;
  height:23vh;
  overflow: hidden !important;
}
.medicalList01 li {
  padding-bottom:45px;
  position:relative;
}
.medicalList01 li .btns {
  position:absolute;
  bottom:20px;
  left:20px;
  width:calc(100% - 40px);
}
@media screen and (max-width:1480px) {
  .medicalList li .pic,
  .medicalList li .pic .imgBox,
  .medicalList li .pic .noimg {
    max-height:20vh;
  }
  .medicalList li .contBottom02 .topBox {
    margin-bottom:40rem;
  }   
}
@media screen and (max-width:980px) {

  .medicalList li .pic,
  .medicalList li .pic .imgBox,
  .medicalList li .pic .noimg {
    max-height:110rem;
  }
  .medicalList01 li {
    padding-bottom:80rem;
  }
  .medicalList01 li .contBottom02 .cont .hospital-category-wrap {
    margin-bottom:0;
  }
}
.medicalList li .pic .noimg {
  min-height:23vh;
  border-radius:0;
}
.medicalList li .pic img {
  overflow:hidden;
  vertical-align:top;
  object-fit:cover;
}
.medicalList li .btns {
  border-top:none;
  padding:0rem;
}
.medicalList li .title,
.medicalList li .location,
.medicalList li .btns {
  margin:0;
}
.medicalList .contBottom {
  padding:25rem 25rem 20rem 25rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.medicalList .topBox {
  margin-bottom:30rem;
}
.medicalList li .title {
  padding-bottom:25rem;
}
.medicalList li .location:before {
  background: url(../images/renew/ico_location_renew.svg) no-repeat 0 0;
}
.medicalList li .btn_compare {
  position:absolute;
  bottom:20rem;
  right:20rem;
  border-radius:50%;
}
.region-card {
    width:190rem;
    position:relative;
    border:1px solid var(--border);
    border-radius:var(--radius);
    overflow:hidden; /* 경계 밖 요소 숨김 */
    box-shadow: 0 1px 0 rgba(0,0,0,0.02);
}
.region-card_mo {display:none;}
.region-card.active {position:fixed;}
.region-card ul {border-radius:10rem; border:1rem solid #dddeea; background-color:#fff; box-sizing:border-box; overflow: hidden;}
.region-card li {
  height:60rem;
  line-height:60rem;
  padding:0 30rem;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  border-bottom:1rem solid #dddeea;
  cursor:pointer;
}
.region-card li.active {
  background-color:#fffbf5;
}
.region-card li.active .label {
  color:#000000;
}
.region-card li:hover {
  background-color:#fffbf5;
}
.region-card li .label{font-size:16rem; color:#747d97;}
.region-card li .count{font-size:14rem; color:#444444;}

.region-card li:last-child{border-bottom:none;}
.mediaBtnBox {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:end;
  gap:5rem;
  margin-bottom:20rem;
}
.mediaBtnBox button {
  font-size:14rem;
}
.mediaBtnBox button {
  height:40rem;
  padding:0 20rem;
  font-size:14rem;
  font-weight:300;
  color:#2461ab;
  border:1rem solid #2461ab;
  border-radius:6rem;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;  
  gap:3rem;
}
.mediaBtnBox button:disabled,
.mediaBtnBox button:disabled:hover {
  background-color:#e1e1e1;
  border:1rem solid transparent;
  color:#333;
  cursor: not-allowed;
}
.mediaBtnBox button:disabled img {
  display:none;
}
.mediaBtnBox button .on {
  display:none;
}
.mediaBtnBox .mediaBtn01:hover {
  background-color:#2461ab;
}
.mediaBtnBox .mediaBtn01:hover img {
  filter: brightness(0) invert(1); 
}
.mediaBtnBox .mediaBtn01 img {
  width:16rem;
}
.mediaBtnBox .mediaBtn02:hover {
  background-color:#444444;
}
.mediaBtnBox .mediaBtn02 img {
  width:22rem;
}
.mediaBtnBox .mediaBtn01:hover,
.mediaBtnBox .mediaBtn02:hover {
  background-color:#174f87;
  color:#fff;
}

/* 마이페이지 게이트 */
.mypageGate {max-width:1000rem; margin:0 auto;}
.gateList {width:100%; max-width:1000rem; margin:0 auto; background-color:#fafafc; border-radius:10rem; padding:25rem 30rem; margin-bottom:40rem;}
.gateList ul {width:100%; display:flex; flex-direction:row; align-items:center; justify-content:space-between;}
.gateList li a {display:flex; flex-direction:row; align-items:center; gap:20rem;}
.gateList li .icon {
  width:68rem;
  height:68rem;
  border-radius:50%;
  background-color:#e7e7f0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.gateList li:hover .icon {
  background-color:#2461ab;
}
.gateList li .icon img {
  max-width:90%;
  position:relative;
}
.gateList li .icon img.on {
  display:none;
}
.gateList li:hover .icon img.off {
  display:none;
}
.gateList li:hover .icon img.on {
  display:block;
}
.gateList li .icon img.mo {
  display:none;
}
.gateList li dt {
  font-size: 19rem;
  font-weight:700;
  color: rgb(0, 0, 0);
  line-height: 1;
  margin-bottom:10rem;
}
.gateList li dd {
  font-size: 14rem;
  font-weight:300;
  color: rgb(116, 125, 151);
  line-height: 1.333;
  text-align: left;
}
.gateList li:hover dt,
.gateList li:hover dd {color:#174f87;}

.mypageGateCard {
  border:1rem solid #ddddea;
  border-radius: 10rem;
  background: #fff;
  width: 350rem;
  padding:30rem 35rem 40rem 35rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mypageGateCard .logo-wrap {
  display: flex;
  justify-content: center;
  margin-bottom:20rem;
}
.mypageGateCard .logo-circle {
  width:120rem;
  height:120rem;
  border-radius:50%;
  background: #fff;
  border: 1rem solid #eee;
  box-shadow: 0 0 15px rgba(49,49,49,0.14);
  display: flex;
  align-items: center;
  justify-content: center;
}
.mypageGateCard .logo-circle img {
  max-width:80%;
}
.mypageGateCard .companyTit {
  font-size: 24rem;
  font-weight:500;
  margin-bottom:20rem;
  color: #000;
}
.m_section-title {
  display:none;
}
.mypageGateCard .section-title,
.m_section-title {
  font-size: 24rem;
  font-weight:400;
  color: #000;
  margin: 0;
  align-self: flex-start;
  margin-bottom:20rem;
}
.mypageGateCard .section-title .desc,
.m_section-title .desc {
  font-size:14rem;
  font-weight:400;
  color:#747d97;
}
.mypageGateBox {
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  justify-content:space-between;
}
.mypageGateCard .info-list {
  width: 100%;
}
.mypageGateCard .info-list .label,
.mypageGateCard .medicalTxt  {
  font-size: 14rem;
  font-weight:400;
  color: #747d97;
  margin-bottom:8rem;
  line-height:1;
}
.mypageGateCard .info-list .label {
  font-size:16rem;
}
.mypageGateCard .info-list .value,
.mypageGateCard .info-list .valueBetween span {
  font-size: 15rem;
  font-weight:300;
  color: #000;
  line-height:1;
  display:block;
}
.mypageGateCard .info-list .valueBetween {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
}
.mypageGateCard .info-list .year {
  color: #4170f4;
}
.mypageGateCard ul li:not(:last-child) {
  padding-bottom:20rem;
  margin-bottom:20rem;
  border-bottom:1rem solid #dddeea;
  box-sizing:border-box;
}
.mypageGateTarget {
  width:calc(100% - 400rem);
}
.mypageGateTarget .pageTopTitBox{
  padding-top:20rem;
}
.pageTopTitBox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20rem;
}
.pageTopTitBox02 {
  justify-content:flex-end;
  margin-bottom:0;
  margin:60rem 0 20rem 0;
}
.pageTopTitBox .lfTit {
  font-size:24rem; 
  font-weight:400;
  color: #000;
  margin: 0;
}
.list_dot01>li.blue {
  color:#4170f4;
}
.list_dot01>li.blackText {
  font-weight:400;
  color:#000;
  font-size:16rem;
}
.list_dot01>li.blackText strong {
  display:inline;
  color:#ff6600;;
}
.list_dot01_2>li {
  font-size:14rem;
}
.pageTopTitBox .lfTit02 {
  font-size:36rem; 
  line-height:1.3;
}
.pageTopTitBox .lfTit02 .blue,
.pageTopTitBox .lfTit02 .status {
  display:inline;
}
.pageTopTitBox .lfTit02 .blue {
  color:#2461ab;
  font-weight:500;
}
.pageTopTitBox .lfTit02 .status {
  color:#ff6600;
  font-weight:bold;
}
.section-action {
  font-size: 18rem; 
  font-weight: 700;
  color: #4170f4;
  text-decoration: none;
}
.section-action:hover {
  color:#174f87;
}
.candidate-list {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin-bottom:20rem;
}
.candidate-list li {
  display: flex;
  flex-direction:row;
  align-items: center;
  background: #fafafc;
  border-radius:10rem;
  padding:20rem; 
  vertical-align:middle;
}
.candidate-list li:not(:last-child) {
  margin-bottom:10rem;
}
.candidate-list li p,
.candidate-list li .name {
  font-size:15rem;
  font-weight:350;
  color:#000;
  line-height:1;
}
.candidate-list li .name {
  font-size:16rem;
}
.candidate-list li .name strong {
  display:inline-block;
  font-weight:700;
  line-height:1;
}
.candidate-list li p {
  margin-right:20rem;
  position:relative;
}
.candidate-list li p::after {
    content:'';
    display: inline-block;
    content: '';
    width: 1rem;
    height: 15rem;
    background: #dddeea;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    right:-10rem;
}
.candidate-list li p:last-child:after {
  display:none;
}
.arrowBtnType01 {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:end;
  gap:30rem;
}
.arrowBtnType01 .moText {
  display:none;
}
.arrowBtnType01 a {
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  gap:7rem;
}
.arrowBtnType01 a span {
  display:block;
  font-size: 16rem;
  font-weight:400;
  color: #2461ab;
  text-align: left;
  line-height:1;  
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
}
.arrowBtnType01 a:hover span {
  color:#174f87;
}
.arrowBtnType01 a .on {
  display:none;
}
.arrowBtnType01:hover a .on {
  display:block;
}
.arrowBtnType01:hover a .off {
  display:none;
}
.gateInfoList {margin-bottom:20rem;}
.gateInfoList li {
  width:100%;
  border-radius:10rem;
  overflow:hidden;
  min-height: 60rem;
  display:flex;
  flex-direction:row;
  align-items:center;
  border:1rem solid #dddeea;
  box-sizing:border-box;
  margin-bottom:10rem;
}
.gateInfoList li .status {
  width: 110rem;
  height:100%;
  font-size: 16rem;
  font-weight:300;
  color: rgb(255, 255, 255);
  text-align: center;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.gateInfoList li .status01 {
  background-color: #2461ab;
}
.gateInfoList li .status02 {
  background-color:#5bc4f1;
}
.gateInfoList li .gateInfoBox {
  width:calc(100% - 110rem);
  height:100%;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  padding:0 20rem 0 30rem;
}
.gateInfoList li .gateInfoTit {
  font-size: 16rem;
  font-weight:700;
  color: rgb(0, 0, 0);
  line-height:1.2;
  word-break:keep-all;
}
.gateInfoList li .statusInfo,
.gateInfoList li .gateInfoBox dl {
  display:flex;
  flex-direction:row;
  align-items:center;
}
.gateInfoList li .gateInfoBox dd,
.gateInfoList li .gateInfoBox dd {
  font-weight:300;
  color:#444444;
  line-height:1;
}
.gateInfoList li .gateInfoBox dt {
  font-size:15rem;
  font-weight:300;
  color:#444444;
  margin-right:10rem;
}
.gateInfoList li .gateInfoBox dd {
  font-size:15rem;
  font-weight:300;
  color:#000000;
}
.gateInfoList li .gateInfoBox .mr40 {
  margin-right:40rem;
}
.gateInfoList li .gateInfoBox .arrowBtnType02 {
  margin-left:20rem;
}
.arrowBtnType02 {
  display:block;
  width:20rem;
  position:relative;
  top:1rem;
}
.arrowBtnType02 .on {
  display:none;
}
.arrowBtnType02:hover .on {
  display:block;
}
.arrowBtnType02:hover .off {
  display:none;
}

/* 검진패키지선택 */
.grp_list_renew03 {

}
#mapData {
  height:initial !important;
}
.bottomFixed {
  width:100%;
  background-color:#fff;
  box-shadow:1px -7px 15px 4px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease-in-out; /* 부드럽게 사라짐 */  
  position:fixed;
  left:0;
  bottom:0;
  z-index:999;
  box-sizing:border-box;
  z-index:102;  
}
.bottomFixed.active {
  position:relative;
  z-index:1;
}
.bottomFixed >div {
  width:1640rem;
  height:90rem;
  margin:0 auto;
  position:relative;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  z-index:5;
}
.bottomFixed button {
  border-radius: 6rem;
  width:180rem;
  height:55rem;
  position:relative;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10rem;
}
.bottomFixed button span {
  line-height:1;
  font-size: 18px;
  color: rgb(179, 186, 206);
  font-weight: bold;
}
.bottomFixed button.active,
.bottomFixed button:hover {
  background-color: rgb(36, 97, 171);
}
.bottomFixed button.active span,
.bottomFixed button:hover span {
  color:#fff !important;
}
.bottomFixed button.active .off,
.bottomFixed button.active .on{
  display:none !important;
}
.bottomFixed button.prev:hover .off {
  display:none !important;
}
.bottomFixed button.prev:hover .on {
  display:block !important;
}
.bottomFixed button.active .active,
.bottomFixed button:hover .active {
  display:block !important;
}
.bottomFixed button.active:hover {
  background-color:#174f87;
}
.bottomFixed button.active p {
  display:block;
}
.bottomFixed button p {
  display:none;
  position:absolute;
  bottom:62rem;
  left:50%; transform:translateX(-50%);
  width: 145rem;
  height:28rem;
  line-height:28rem;
  font-size: 13rem;
  background-color:#444444;
  font-weight:300;
  border-radius:5rem;
  color: rgba(255, 255, 255, 0.702);
}
.bottomFixed button p::after {
  content: "";
  position: absolute;
  bottom: -6px; /* 삼각형 위치 */
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 6px 4px 0 4px; /* 세로 8px, 가로 10px */
  border-color: #4a4a4a transparent transparent transparent;
}
.bottomFixed .prev:hover span {
  color:#174f87;
}
.bottomFixed .prev:hover .on {
  display:block;
}
.bottomFixed .prev:hover .off {
  display:none;
}
.bottomFixed button img {
  display:block;
  position:relative;
  top:-2rem;
}
.bottomFixed button .on {
  display:none;
}
.bottomFixed button:hover img.off {
  display:none;
}
.grp_list_renew03 .box.active {
  background-color:#fff;
  border:1rem solid #2461ab;
}
.grp_list_renew03 .box > .flexWrap {
  width:100%;
  justify-content:space-between;
}
.grp_list_renew03 > .box {
  padding:20rem 20rem 20rem 40rem;
  background-color:transparent !important;
}
.packageText dt,
.packageText dd {
  font-weight:400;
  line-height:1;
}
.packageText dt {
  font-size: 24rem;
  font-weight: 700;
  color: rgb(0, 0, 0);
  margin-bottom:15rem;
}
.packageText dd {
  font-size: 14rem;
  color: rgb(116, 125, 151);
}
.packageBtn button {
  border-radius: 6rem;
  width: 138rem;
  height: 38rem;
  font-size:14rem;
  font-weight:400;
}
.packageBtn {
  display:flex;
  flex-direction:column;
  gap:3rem;
}
.packageBtn .packageSelect {
  background-color:#2461ab;
  color:#fff;
}
.grp_list_renew03 {
  padding-bottom:90px;
}
.grp_list_renew03 .box.active .packageSelect {
  background-color:#174f87;
}
.packageBtn .packagePop {
  border:1rem solid #2461ab;
  box-sizing:border-box;
  color:#2461ab;
  font-weight:500;
}
.packageBtn .packageSelect:hover,
.packageBtn .packagePop:hover {
  border:1rem solid transparent;
  background-color:#033669;
  color:#fff;
}

/* 검진예약_선택검사 */
.selectMedicalExam {
  max-width:1400rem;
  margin:0 auto;
  padding-top:20rem;
}
.selectMedicalExam .boxWrap {
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  justify-content:space-between; 
  border:none;
  border-radius:none; 
}
.selectMedicalExam .titBox {
  border-radius: 50%;
  background: linear-gradient(135deg, #8BCFD6 0%, #5197E1 100%);
  width: 185rem;
  height: 185rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center
}
.selectMedicalExam .titBox p {
  font-size:30rem;
  font-weight:bold;
  color:#fff;
  line-height:1.2;
}
.selectMedicalExam .boxBlind .titBox {
  background-color:#e7e7f0;
}
.selectMedicalExam .boxBlind .titBox p,
.selectMedicalExam .boxBlind .titBox p span {
  color:#747d97;
}
.selectMedicalExam .titBox p span {
  display:block;
  font-size:24rem;
  color:#fff;
}
.selectMedicalExam .contentWrap {
  width:calc(100% - 205rem);
  padding:30rem 35rem;
  background-color:#fff;
  border-radius:16rem;
  border:2rem solid #227caf;
  box-sizing:border-box;
}
.selectMedicalExam .noDataBoxWrap {
  border: 1rem dashed #dddeea;  
  background-color:#fafafc;
  padding:0;  
  overflow:hidden;
  background-color: #fcfcfd;  
}
.selectMedicalExam .noDataBoxWrap input[type=checkbox]+label span {
  font-weight:400;
  color:#747d97;
}
.noDataBoxWrap .noDataBox {
    box-sizing: border-box;   
    cursor:pointer;  
    width:100%;
    height:185rem;   
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;       
    text-align:center;
}
.noDataBoxWrap:hover {
  border:1rem solid transparent;
}
.noDataBoxWrap .noDataBox:hover {
  border:1rem solid transparent;
  background-color:#2461ab;
}
.noDataBoxWrap .noDataBox:hover .noDataBox p {
  color:#fff;
}
.noDataBoxWrap .noDataBox .on {
  display:none;
}
.noDataBoxWrap .noDataBox:hover .on {
  display:block;
}
.noDataBoxWrap .noDataBox:hover .off {
  display:none;
}
.noDataBoxWrap .noDataBox img {
  width:41rem;
  margin-bottom:10rem;
}
.noDataBoxWrap .noDataBox p {
    font-size: 18rem;
    font-weight: 500;
    color: #99a3bd;
}
.noDataBoxWrap .noDataBox:hover p {
  color:#fff;
}
.noDataBoxWrap.active {
  padding:25rem 35rem;
}
.selectMedicalExam .box .noDataBoxWrap .info_ex02 {
  display:none;
}
.selectMedicalExam .box .noDataBoxWrap.active .info_ex02 {
  display:block;
}
.noDataBoxWrap.active .noDataBox {
  display:none;
}
.noDataBoxWrap.active,
.noDataBoxWrap.active:hover {
  border:1rem solid #ebebec;
}
.noDataBoxWrap .icon-question-mark-blue {
    background: url(../images/renew/icon-question-mark-renew_grey.svg) no-repeat center; background-size: contain;
}
.noDataBoxWrap .table02 tbody tr td {
  color:#747d97 !important;
}
.selectMedicalExam .boxWrap {
  margin-bottom:30rem;
}
.selectMedicalExam .box .info_ex02 {
  display:block;
  padding:0; border:none;
}
.selectMedicalExam .box .info_ex02 .title {
  margin-top:20rem;
}
.selectMedicalExam .box .info_ex02 .title:nth-child(1) {
  margin-top:0;
}
.table02 tbody tr td.active {
  background-color:#fffdf7;
}
.selectMedicalExam .addLayout.active {
  border-collapse: separate;  
  border-spacing:5rem 0 0 0;
  position:relative;
  margin-bottom:-5em;
}
.selectMedicalExam .addLayout tbody {
  position:relative;
}
.selectMedicalExam .addLayout.active tbody::after {
  content:'';
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  outline: 1rem solid #dddeea;
  box-sizing:border-box;
  border-radius:6rem;
  overflow: hidden;
  background-color:#fffdf7;
  z-index:-1;
}
.selectMedicalExam .table02 tr td {
  position:relative;
}
.selectMedicalExam .table02 tr td.active {
  border: 1rem solid #dddeea;
  border-left:none;
  border-right:none;
  box-sizing:border-box;
}
.selectMedicalExam .table02 tr td:nth-child(1).active {
    border-left: 1rem solid #dddeea;
}
.selectMedicalExam .table02 tr td:last-child.active  {
    border-right: 1rem solid #dddeea;
}
.selectMedicalExam .addLayout tr td.active {
  border:none !important;
}
.selectMedicalExam .addLayout.active tr td {
  background-color:#fffdf7;
}
.selectMedicalExam .addLayout.active tr td input,
.selectMedicalExam .addLayout.active tr td label {
  position:relative;
  z-index:2;
}
.selectMedicalExam .addLayout.active tbody tr:nth-child(1) td {
  padding:15rem;
}
.selectMedicalExam .addLayout.active tbody tr td {
  padding-top:0;
  padding-bottom:10rem;
}
.color03 {
  color:#ff6600 !important;
}
.list-style::before {
  width:3rem; height:3rem;
}
.selectMedicalExam .table02 thead tr th:nth-child(1),
.selectMedicalExam .table02 tbody tr td:nth-child(1) {
  width:380rem;
}
.selectMedicalExam .table02 thead tr th:nth-child(2),
.selectMedicalExam .table02 tbody tr td:nth-child(2) {
  width:58rem;
  padding:0;
}
.selectMedicalExam .table02 thead tr th:nth-child(3),
.selectMedicalExam .table02 tbody tr td:nth-child(3) {
  width:197rem;
  padding:0;
}
.selectMedicalExam .table02 thead tr th:nth-child(4),
.selectMedicalExam .table02 tbody tr td:nth-child(4) {
  padding-left:50rem;
}
/* 체크되면 그 input이 들어있는 td 활성화 */
.table02 td.active {
  background-color:#fffdf7;
}
.examination-table-desc {
  display:flex;
  flex-direction:row;
  align-items:center;
  flex-wrap:wrap;
}
.examination-table-desc input[type=checkbox]+label {
  display:flex; flex-direction:row; align-items:center;
}
.examination-table-desc label span {
    display:flex !important; flex-direction:row; align-items:flex-start; gap:5rem; flex-wrap:wrap;
}
.examination-table-desc label .list-style {font-weight:400 !important;}
/* 팝업_세부항목보기; */
.popup .pop_head .pop_title .datailName {display:inline; color:#2461ab;}
.popup.detailPop .pop_inner {max-width:800rem;}
/* ===== detailWrap: 기본 레이아웃 ===== */
.detailWrap {margin-top:16px;}

/* 그룹 박스 */
.detailWrap > ul > li.groupBox {
  border:1rem solid #d7dbe6;
  outline:1rem solid transparent;
  box-sizing:border-box;
  border-radius:16rem;
  background:#fff;
  margin-bottom:12rem;    
  transition: height .3s ease;  
}
.detailWrap > ul > li.groupBox.open {
  height: auto;
  border:1rem solid #2461ab;
  outline:1rem solid #2461ab;    
}
.detailWrap .groupBody {
  display: none; /* 기본은 숨김 */
}
.detailWrap .groupBox.open .groupBody {
  display: block; /* open 클래스가 있을 때만 보이기 */
}
.groupHeader{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20rem;
  cursor:pointer;
}
.detailWrap > ul > li.groupBox.open .groupHeader{
  padding:20rem 20rem 10rem 20rem;
}
.groupHeader .title,
.checkupDetail .title,
.checkupDetail .tableTitBox p {
  font-size:18rem;
  font-weight:700;
  color:#000;
  line-height:1.3;
}
.checkupDetail .tableTitBox .moText {
  display:none;
}
.checkupDetail .title {display:block; margin-bottom:10rem;}
.groupHeader .caret {
  width: 26rem;
  height: 26rem;
  background-color:#2461ab;
  border-radius: 50%;
  position: relative;
}
.detailWrap > ul > li.groupBox.open .caret {  
  background-color:#2461ab;  
}
.detailWrap .fw-bold {display:inline;}
.groupHeader .caret::before {
  content: "";
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #fff; /* 흰색 삼각형 */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%) rotate(180deg);
  transition: transform 0.2s ease;
}
.groupBox.oepn .groupHeader{ background:#fff; }
.groupBox:not(.open) .caret::before {
  transform: translate(-50%, -40%); /* 중앙정렬 보정 */
}
tr,
.detailWrap .groupBody tr {
  position:relative;
}
.detailWrap .groupBody {
  padding:0 20rem 20rem 20rem;       
}
.groupBody  *{        
  overflow:initial !important;
}
.detailPop .pop_cont {
  max-height:calc(100vh - 100rem);
  padding:30rem;
  overflow-y:auto;
}
.icon-question-mark-blue {
    width: 16rem;
    height: 16rem;
    background: url(../images/renew/icon-question-mark-renew.svg) no-repeat center;
    background-size: contain;
    display: inline-block;
    cursor: pointer;
    margin-top:-2.5rem;
    margin-left:2rem;
}
/* ====== Tippy 커스텀 테마 ====== */
.tippy-box {
    display:none;
    z-index:3;
    visibility: visible;
    position: absolute;
    inset: 0px auto auto 0px;
    margin: 0px;
    top:38rem; left:20rem;
    border: 1rem solid #007aff;
    background-color: #fff;
    color: #000;
    border-radius: 8rem;
    box-shadow: 0 6rem 18rem rgba(0, 0, 0, 0.15);
    width:calc(100% - 40px);    
}
.tippy-close {
    width: 10rem !important;
    height: 10rem !important;
    top: 17rem !important;
    right: 20rem !important;
    font-size:0rem !important;
    background: url(../images/ico_allmenu_close.svg) no-repeat 50% 50% !important;
    background-size: 100% 100% !important;     
}
.tippy-content {
  padding: 0;
}
/* ====== drop-info 기본 레이아웃 ====== */
.drop-info {
  position: relative;
  padding: 5rem 9rem;
  border-radius: 8rem;
  background-color: #fff;
}

.drop-inner {
  margin: 10rem 0;
}

.drop-header {
  margin-bottom: 10rem;
}

.drop-title {
  cursor: default;
  border-radius: 20rem;
  font-size: 15rem;
  font-weight: 600;
  padding: 8rem 16rem;
  background: #007aff;
  color: #fff;
  border: none;
  height:initial !important;
  max-width:calc(100% - 40rem);
}

/* ====== 내용 ====== */
.drop-desc {
  padding: 10rem 15rem;
  font-size: 14rem;
  line-height: 1.6;
  white-space: pre-line;
  color: #333;
}

/* ====== 닫기 버튼 ====== */
.btn_close {
  position: absolute;
  right: 15rem;
  top: 15rem;
  font-size: 14rem;
  background: none;
  border: none;
  color: #007aff;
  cursor: pointer;
  padding: 4rem 8rem;
  transition: color 0.2s ease;
}
.box_map {
  overflow:initial;
}
.box_map .map_hospital_info {
  border-radius: 10rem;
}
.btn_close:hover {
  color: #0056b3;
}
.box_map .map_hospital_info {
  width:100% !important;
  margin-left:0 !important;
  z-index:8 !important;
}
.box_map .map_hospital_info div {
  z-index:8 !important;
}
.box_map .map_hospital_info .drop-info {
  z-index:13 !important;
}
.box_map .map_hospital_info .btns {
  z-index:7 !important;
}
.box_map .map_hospital_info .cont {

}
.hospital-category-wrap span {
  z-index:initial;
  white-space: nowrap;
}
.hospital-category-wrap .tippy-box,
.box_map .map_hospital_info .tippy-box,
.tippy-box {
  z-index:12 !important;
  width: max-content !important; 
  max-width: 300rem; /* 텍스트가 너무 길면 화면 밖으로 나갈 수 있으므로 최대치 설정 */
  min-width: 260rem; /* 최소 너비 설정 */
  top:100%;
  left:0;
}
.medicalDetailBox .title_medical .textWrap .flexWrap {padding-right:30px;}
.medicalDetailBox .tippy-box {
  left: 60%;
  transform: translateX(-50%);
}
.box_map .map_hospital_info .medicalList {
  display:block !important;
  width:100% !important;
  margin-left:0 !important;
}
.box_map .map_hospital_info .medicalList li {
  width:100% !important;
  max-width:320rem !important;
}
@media screen and (min-width:1024px) {
  .box_map .map_hospital_info .medicalList li {
    min-width:280rem !important;
  }
}
.box_map .map_hospital_info .btn_close{
  position: absolute;
  right: 15rem;
  top: 15rem;
  width: 20rem;
  height: 20rem;
  background: url(../images/ico_close.svg) no-repeat 0 0;
  background-size: 100% 100%;
  cursor: pointer;
  z-index:10 !important;
}
.box_map .map_hospital_info .hospital-category-wrap {
  width:100%;
  position:relative !important;
  top:0 !important; left:0 !important;
  margin-bottom:20rem;
}
.box_map .map_hospital_info .topBox {
  margin-bottom:20rem;
}
/* ====== 드롭 래퍼 구조 재사용용 ====== */
.drop-wrap {
  position: relative;
  display: inline-block;
}

.drop-wrap.active .drop-info {
  display: block;
}

.drop-wrap .drop-info {
  display: none;
  padding: 20rem;
  border: 1rem solid #3f4450;
  border-radius: 6rem;
  background: #fff;
  z-index: 2;
  position: absolute;
  right: 0;
  top: 110%;
  min-width: 300rem;
  width: 100%;
}

.drop-wrap .drop-info.left {
  right: auto;
  left: 0;
}

.drop-wrap ul {
  max-height: 250rem;
  overflow-y: auto;
  width: 100%;
}
/* 예약조회 */
.grp_list_renew .patient {}
.grp_list_renew .statusText {
  width:75rem;
  height:22rem;
  line-height:20rem;
  border-radius:11rem;
  box-sizing:border-box;
  font-size:14rem;
  font-weight:400;
  text-align:center;
}
.grp_list_renew .statusText01 {
  border:1rem solid transparent;
  background-color:#f4f4f8;
  color:#747d97;  
}
.grp_list_renew .statusText02 {
  border:1rem solid #c8c8c8;
  color:#a6a6a6;
  background-color:#fff;
}
.grp_list_renew .statusText03 {
  border:1rem solid #2461ab;
  color:#2461ab;
  background-color:#fff;
}
.grp_list_re.resultRenew .statusText {
  width:75rem;
  height:22rem;
  line-height:20rem;
  border-radius:11rem;
  box-sizing:border-box;
  font-size:14rem;
  font-weight:400;
  text-align:center;
  margin-bottom:10rem;
  display:none;
}
.grp_list_re.resultRenew .statusText01 {
  border:1rem solid transparent;
  background-color:#f4f4f8;
  color:#747d97;  
}
.grp_list_re.resultRenew .statusText02 {
  border:1rem solid #c8c8c8;
  color:#a6a6a6;
  background-color:#fff;
}
.grp_list_re.resultRenew .statusText03{
  border:1rem solid #2461ab;
  color:#2461ab;
  background-color:#fff;
}
.grp_list_renew .box .hospitalInfo {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    padding-left: 25rem;
    margin-left:25rem;
}
.grp_list_renew .box .hospitalInfo:before {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    width: 1rem;
    height: 70rem;
    background: #dddeea;
}
.grp_list_renew .box .hospitalInfo .infoStatus {
  border-radius: 4rem;
  background-color: rgb(255, 105, 105);
  width: 151rem;
  height: 22rem;
  line-height:22rem;
  text-align:center;
  font-size: 13rem;
  font-weight:400;
  color: rgb(255, 255, 255);
  margin-bottom:10rem;
}
.grp_list_renew .box .hospitalInfo .infoName {
  font-size: 20rem;
  font-weight:400;
  color: rgb(0, 0, 0);
  line-height: 1.2;
}
.grp_list_renew .box .hospitalInfo .date {
  font-size: 16rem;
  font-weight:400;
  color: #747d97;
  line-height: 1;
  margin-top:10rem;
}
.grp_list_renew .positionType01 {
  margin:10rem 0;
}
.grp_list_renew .positionType01_2 {
  margin:0 0 15rem 0;
}
.grp_list_renew .positionType01 .position {
  margin-bottom:0rem;
}
.grp_list_renew .box .lineRight {
  display:flex;
  flex-direction:row;
  align-items:center;
  word-break: break-all;
}
.grp_list_renew .box .lineRight,
.grp_list_renew .positionType01 .position {
  max-width:140rem;
}
@media (max-width:1280px) {
  .selectMedicalExam .table02 thead tr th:nth-child(4), .selectMedicalExam .table02 tbody tr td:nth-child(4) {padding-left:10rem;}
}
@media (max-width:1024px) {
  .grp_list_renew .box .lineRight,
  .grp_list_renew .positionType01 .position {max-width:calc(100% - 77rem); letter-spacing:-0.7px; line-height:1.3;}
  .grp_list_renew .positionType01 .position {}
  .grp_list_renew04 .patient {width:100%;}
}
.grp_list_renew .box .lineRight::after {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 20rem;
    margin: 0 10rem;
    background: #dddeea;
}
.grp_list_renew .box .lineRight02::after {
    display: inline-block !important;
    content: '';
    width: 1rem;
    height: 12rem;
    margin: 0 7rem;
    background: #dddeea;
}
.grp_list_renew .box .target01 {
  color:#2461ab;
}
.grp_list_renew .box .target02 {
  color:#747d97;
}
.grp_list_renew04 .box .target01,
.grp_list_renew04 .box .target02  {
  font-weight:700;
}
.grp_list_renew04 .listInfo .target {display:none;}
/* .grp_list_renew.current .box .info_renew .name {
    background: linear-gradient(to left, #4f95e2 0%, #75bada 100%);
}
.grp_list_renew.current .box.disable .info_renew .name  {
    color: rgb(254, 254, 254);
    background: linear-gradient(to left, #98a1bb 0%, #b3bace 100%);
} */
 .grp_list_renew .box .info_renew .name {
    background: linear-gradient(to left, #4f95e2 0%, #75bada 100%);
}
.grp_list_renew .box .info_renew .name  {
    color: rgb(254, 254, 254);
    background: linear-gradient(to left, #98a1bb 0%, #b3bace 100%);
}
.grp_list_renew .box.available .info_renew .name  {
    background: linear-gradient(to left, #4f95e2 0%, #75bada 100%);
}
.grp_list_renew .box.NotSupported {
  background-color:#f9f9f9;
}
.grp_list_renew04 .box,
.grp_list_blind .box {
  padding: 20rem 40rem;
}
/* .grp_list_renew04 .box.disable {
  background-color:#f9f9f9;
} */
.grp_list_renew .box {
  background-color:#f9f9f9;
}
.grp_list_renew .box.available {
  background-color:transparent;
}
.grp_list_renew04 .box.disable .hospitalInfo .infoName,
.grp_list_renew04 .box.disable .hospitalInfo .date {
  color: #b5b9c3;
}
.btnBlue02_xl {
    color: #2461ab;
    border: 1rem solid #2461ab;
    background-color: #fff;
}
.btnBlue02_xl:hover {
  background-color:#174f87;
  border:1rem solid transparent;
  color:#fff;
}
.grp_list_blind .box.disable .target01,
.grp_list_blind .box.disable .hospitalInfo .infoName {
  color:#b3b3b3;
}
.title_contents_renew {
  max-width: 1660rem;
  padding:60rem 20rem 0 20rem;
  margin:60rem 0;
  margin: 0 auto;
}
.grp_list_renew05 .box {
  width:100%;
  padding:10rem 20rem;
}
.grp_list_renew05 .info_renew {
  width:calc(100% - 280px);
}
.grp_list_renew05 .box .hospitalInfo {
  width:calc(100% - 380px);
}
.grp_list_renew05 .box .hospitalInfo .infoName{
  max-width:100%;
}
/* 예약조회변경 */
.moBlock980 {
  display:none;
}
.mypageGateBox02 .mypageGateCard {
  width:460rem;
}
.mypageGateCard .detailWrap {
  margin-top:0 !important;
}
.mypageGateCard .detailWrap,
.mypageGateCard .detailWrap ul {width:100%;}
.mypageGateCard .detailWrap > ul > li.groupBox {
  padding-bottom:0 !important;
  margin-bottom:3rem !important;
}
.mypageGateBox02 .mypageGateTarget {
  width:calc(100% - 510rem);
}
.mypageGateBox02 .mypageGateCard .logo-circle {
  width:160rem;
  height:160rem;
  overflow:hidden;
}
.mypageGateBox02 .mypageGateCard .logo-circle img {
  max-width:100%;
}
.mypageGateBox02 .mypageGateCard .info-list li:last-child {
    padding-bottom: 20rem;
    margin-bottom: 20rem;
    border-bottom: 1rem solid #dddeea;
    box-sizing: border-box;
}
.mypageGateBox02 .logo-circle img {
  max-width:auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.detailWrap02 .groupHeader {background-color:#fafafc; cursor:pointer; padding:17rem 25rem;}
.detailWrap02_1 .groupHeader {cursor:initial;}
.detailWrap02 > ul > li.groupBox.open  .groupHeader {
  background-color:#fff;
}
.detailWrap02 > ul > li.groupBox {
  border:2rem solid transparent;
}
.detailWrap02 > ul > li.groupBox.open {
  border: 2rem solid #2461ab;
  outline:none;
}
.detailWrap02 .groupHeader {
  overflow:hidden;
}
.detailWrap02 .groupHeader .title {
  width:165rem;
  font-size:15rem;
  font-weight:400;
  color:#747d97;
}
.detailWrap .titBox .text {
  font-size:15rem;
  font-weight:300;
  color:#000;
}
.detailWrap .titBox .text02 {
  font-weight:400;
  color:#2461ab;
}
.detailWrap02 .groupHeader .titBox {
  width:auto;
  flex:1;
}
.detailWrap02 .table02 thead tr th,
.detailWrap02 .table02 tbody tr td {
  text-align:left;
}
.detailWrap02 > ul > li.groupBox{
  overflow: hidden;
}
.detailWrap02 > ul > li.groupBox.open {
  overflow:initial;
}
.detailWrap02 > ul > li.groupBox.open .groupHeader {
  border-top-left-radius:15rem;
  border-top-right-radius:15rem;
  overflow:hidden;
}
.detailWrap02 .arrowText {
  font-size:18rem;
  font-weight:400;
  color:#000;
  margin-right:10rem;
}
.totalPriceBox {
  width:100%;
  padding:17rem 25rem;
  background-color:#ececf4;
  border-radius:10rem;
  overflow:hidden;
  justify-content:space-between;
}
.totalPriceBox .tit {
  font-size: 14rem;
  font-weight:400;
  color: rgb(116, 125, 151);
  line-height: 1.2;
  text-align: left;
}
.totalPriceBox .price {
  font-size: 22rem;
  color: rgb(0, 0, 0);
  line-height: 1.182;
  text-align: right;
}
.receiptTxt {
  border:1rem solid #2461ab;
  border-style: solid;
  border-radius: 6px;
  background-color: rgb(255, 255, 255);
  width:100%;
  height: 40rem;
  line-height:40rem;
  font-weight:500;
  text-align:center;
  color:#2461ab;
}
.totalPriceText {
  text-align:right;
  font-size:24rem;
  font-weight:300;
  color:#000000;
  line-height:1;
  margin-bottom:10rem;
}
.totalPriceText .price {
  font-weight:500;
  display:inline-block;
  color:#2461ab;
  margin-right:5rem;
}
.table02 tbody tr td.priceRight {text-align:right; font-weight:300; font-size:16rem;}
.table02 tbody tr td.priceRight span {font-weight:400; display:inline-block;}
.descText {font-size:12rem; font-weight:300; color:#747d97; text-align:left; width:100%;}

/* 병원상세 팝업 */
.medicalDetailWrap {
  align-items:flex-start;
}
.medicalGalleryBox {width:500rem; height:500rem; position:relative;}
.medicalGalleryBox .gallery_medical {
  width:100%;
  height:100%;
}
.medicalGalleryBox .gallery_pagination {
  position:absolute !important;
  bottom:20rem !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  margin:0 auto !important;
  z-index:2;
}
.medicalGalleryBox .gallery_pagination .swiper-pagination-bullet {
  opacity:0.4;
}
.medicalGalleryBox .gallery_pagination .swiper-pagination-bullet-active {
  opacity:1;
}
.medicalGalleryBox .gallery_pagination .swiper-pagination-bullet,
.medicalGalleryBox .gallery_pagination .swiper-pagination-bullet-active {
  height:5rem;
  border-radius:0 !important;
  width:40rem !important;
  background-color:#fff;
  margin:0 2rem;
}
.medicalGalleryBox .swiper-button-prev {
  left:-1rem;
}
.medicalGalleryBox .swiper-button-next {
  right:-1rem;
}
.medicalGalleryBox .swiper-button-next, 
.medicalGalleryBox .swiper-button-prev {
  width:60rem;
  height:60rem;
  background-color:rgb(0, 0, 0, 0.5);
  z-index:2;
  border:1rem solid rgb(255, 255, 255, 0.5);
  box-sizing:border-box;
}
.medicalGalleryBox .swiper-button-next:hover, 
.medicalGalleryBox .swiper-button-prev:hover {
  background-color:rgb(0, 0, 0, 1);
  border:1rem solid rgb(255, 255, 255, 1);
}
.medicalGalleryBox .swiper-button-next:after, 
.medicalGalleryBox .swiper-button-prev:after {
  font-size:20rem;
  color:#fff;
}
.medicalGalleryBox .gallery_medical .swiper-slide {
  border-radius:0;
}
.medicalDetailBox {
  width:calc(100% - 540rem);
  margin-left:40rem;
}
.medicalDetailBox .title_medical:before{
  border-radius:50%;
}
.medicalDetailWrap .title_medical {
  align-items:flex-start;
}
.medicalDetailWrap .title_medical .title {
  line-height:1;
  margin-top:10rem;
  margin-bottom:10rem;
}
.medicalDetailBox .title_medical .textWrap .flexWrap {
  flex-wrap:wrap;
  gap:2rem;
}
.medicalDetailBox .title_medical .textWrap {
  max-width:calc(100% - 50rem);
}
.verticalSwiperBox {
  width:100%;
  height:60rem;
  line-height:60rem;
  background-color:#2561aa;
  overflow:hidden;
  border-radius:6rem;
  vertical-align:middle;
}
.verticalSwiperBox:hover {
  background-color:#174f87;
}
.verticalSwiperBox .swiper-slide {
  height:auto !important;
}
.verticalSwiperBox .swiper-slide a {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  width:100%;
  height:100%;
  padding:0 15rem 0 25rem;  
}
.verticalSwiperBox .swiper-slide .flexWrap {
  height:100%;
}
.verticalSwiperBox .swiper-slide .arrow {
  height:100%;
  vertical-align:middle;
}
.verticalSwiperBox .swiper-slide .arrow img {
  vertical-align:middle;
  position:relative;
  top:-2rem;
}
.verticalSwiperBox .swiper-slide .subject {
  width:calc(100% - 135rem);
  font-size:15rem;
  font-weight:300;
  color:#fff;
  opacity:0.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;  
  line-height:1;
}
.verticalSwiperBox .swiper-slide .date {
  font-size:16rem;
  font-weight:300;
  color:#fff;
  opacity:0.5;
  margin-right:15rem;
  line-height:1;
}
.verticalSwiperBox .swiper-slide .arrow img {
  width:25rem;
}
.verticalSwiperBox .swiper-slide:hover .subject,
.verticalSwiperBox .swiper-slide:hover .date {
  opacity:1;
}
.medicalInfoWrap {
  margin-top:25rem;
}
.medicalDetailBox li:not(:last-child) {
  margin-bottom:15rem;
}
.medicalDetailBox .infoBox {
  display: flex;
  flex-direction:row;
  align-items: flex-start;
  gap: 10px;
}
.medicalDetailBox .lfBox {
  width:145rem;
}
.medicalDetailBox .rtBox {
  width:calc(100% - 145rem);
}
.medicalDetailBox .icon {
  display:block;
  width:28rem;
  position:relative;
  top:-2rem;
}
.medicalDetailBox .infoBox .title {
  font-weight:400;
  font-size: 16rem;
  color: #000;
}
.medicalDetailBox .infoBox .text {
  color: #747d97;
  line-height: 1.4;
  font-size: 14rem;
  font-weight:300;
  letter-spacing:0;
}
/* .medicalDetailBox li:nth-child(1) .infoBox .text {
  font-size:16rem;
} */
.medicalDetailBox .infoBox .text02 {
  color:#2461ab;
}
.medicalDetailBox .line {
  width:100%;
  margin-top:25rem;
  border-bottom:1rem solid #e5e7eb;
}
.medicalDetailBox .tell {
  display:block;
  font-size: 24rem;
  font-weight:700;
  color: rgb(0, 0, 0);
  line-height:1;
  width:fit-content;
}

.popup .popTit {
  font-size:18rem;
  font-weight:300;
  color:#000000;
  text-align:center;
  margin-bottom:20rem;
  word-break:keep-all;
}
.popup .popTit .blue {
  display:inline-block;
  font-weight:bold;
  color:#2461ab;
}
.table02 .rtTit {
  text-align:right !important;
  font-size:20rem;
  font-weight:400;
  color:#000;
}
.table02Renew {
  border-spacing: 0 0;
  border:1rem solid #dddeea;
  box-sizing:border-box;
  overflow:hidden;
  border-radius:6rem;
}
.table02Renew th, 
.table02Renew td{
  padding:15rem 30rem 15rem 15rem;
}
.table02Renew th:nth-child(1), 
.table02Renew td:nth-child(1){
  width:140rem;
  padding:15rem 15rem 15rem 40rem;
}
.table02Renew tr th {
  border-bottom-left-radius:0 !important;
  border-bottom-right-radius:0 !important;
  border-bottom:1rem solid #dddeea;
  box-sizing:border-box;
}
.table02Renew tr td {
  font-size:14rem;
  font-weight:300;
  color:#000;
  background-color:#fff;
  border-bottom:1rem solid #dddeea;  
}
.table02Renew tr:last-child td {
  border-bottom:none;
}
.table02Renew tr td:nth-child(1) {
  font-size:14rem;
  font-weight: 700;
  color: #000;
}
.totalPriceBox02 {
  margin-top:20rem;
  width:100%;
  padding:17rem 25rem;
  background-color:#edf9ff;
  border-radius:6rem;
  overflow:hidden;
  align-items:center;
  justify-content:space-between;
}
.totalPriceBox02_2 {
  padding:17rem 40rem;
}
.totalPriceBox02 .tit {
  font-size: 16rem;
  font-weight:400;
  color: #000;
  line-height: 1.2;
  text-align: left;
}
.totalPriceBox02 .price {
  font-size: 22rem;
  color: rgb(0, 0, 0);
  line-height: 1.182;
  text-align: right;
}
.totalPriceBox02 .price .blue {
  display:inline;
  font-size:1em;
  color:#2461ab;
  padding-right:5rem;
}
.popup.detailPop02 .pop_inner {
    max-width: 800rem;
}
.popup.detailPop02 .pop_cont {
    height: 100%;
    max-height:70vh;
    padding: 50rem 35rem 20rem 35rem;
}
.popup.detailPop02 .pop_btns {
  padding:25rem 0 40rem 0;
}
/* 캘린더 */
.calendarWrap {
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:flex-start;  
  justify-content:space-between;
  margin-top:50px;
}
.calendarTopBox {
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  margin-bottom:20rem;  
}
.calendarTopBox02 {
  justify-content:end;
}
.calendarTopBox .upper_calendar {
  margin-bottom:0 !important;
}
.calendarText {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:15rem;
}
.calendarText .year{
  font-size:20rem;
  font-weight:300;
  color:#000;
}
.calendarText .month {
  font-size:24rem;
  font-weight:500;
  color:#000000;
}
.calendarWrap >.boxWrap {
  width:calc(50% - 20rem);
}
.btnToday_lg {
  border:1rem solid #2461ab;
  background-color:transparent;
  color:#2461ab;
}
.calendarWrap .upper_calendar .btnToday_lg {
  margin-right:5rem !important;
}
.btnToday_lg:hover {
  background-color:#2461ab;;
  color:#fff;
}
.btnToday_lg:disabled,
.btnToday_lg:disabled:hover {
  border:1rem solid #aeaeae;  
  background-color:#aeaeae;
  color:#fff;
}
.calendarWrap .upper_calendar .btn_prev_month {
  margin-right:5rem !important;
}
.calendarWrap .upper_calendar .btn_next_month {
  margin-left:0 !important;
  margin-right:5rem !important;
}
.calendarWrap .upper_calendar .btn_prev_month:hover,
.calendarWrap .upper_calendar .btn_next_month:hover {
  background-color:#174f87;
  color:#fff;
}
.calendarWrap .upper_calendar .btn_prev_month:hover, 
.calendarWrap .upper_calendar .btn_next_month:hover {
    background-color:#174f87;  
    background-image: url(../images/renew/arr_b_r_hover.svg);
    background-repeat:no-repeat;
    background-position:50% 50%;
    background-size: 18rem 18rem !important;
}
.calendarWrap .table_month td.disable:not(.day-disabled):not(.holiday)::before {
  content:'예약\A불가';
  white-space: pre;
  font-size:14rem;
  font-weight:300;
  color:#777777;
  position:absolute;
  top:57%;
  left:50%;
  transform:translate(-50%,-50%);
}
.calendarWrap .table_month td .disableText {
  font-size:14rem;
  font-weight:300;
  color:#777777;
  text-align:center;
  padding-top:10rem;
}
.calendarWrap .table_month td {
  height:100rem;
  position:relative;
}
.calendarWrap .table_month td.active::after {
  content:'';
  width:calc(100% - 4rem);
  height:calc(100% - 4rem);
  border:2rem solid #ff6600;
  position:absolute;
  top:0;
  left:0;
  z-index:2;
}
.calendarWrap .table_month td>a, 
.calendarWrap .table_month td>div {
  padding:10rem;
  position:relative;
}
.calendarWrap .table_month td.today .day {
  border:none;
}
.calendarWrap .table_month td.today .day:after {
    position: absolute;
    top: 5rem;    
    right: 5rem;
    border: 1rem solid #dddeea;
    box-sizing: border-box;
    padding: 0 9rem;
    height: 20rem;
    line-height: 20rem;
    z-index: 2;
    margin:0;
    border-radius:12rem;
    font-size:12rem;
    font-weight:500;
    color:#000000;
}
.calendarWrap .table_month td .condition {
  margin-top:10rem;
}
.calendarWrap .table_month td .statusItem:not(:last-child) {
  margin-bottom:3rem;
}
.calendarWrap .box_info_calendar {
  width:100%;
  display:block;
}
.statusWrap {
  display: flex;
  flex-direction:row;  
  align-items: center;
  gap: 20px;
}
.statusWrap.moBlock {
  display:none;
}
.statusItem {
  display: flex;
  flex-direction:row;
  align-items: flex-start;
  font-size: 14rem;
  font-weight:300;
  color: #333;
}
.statusItem .dot {
  display: inline-block;
  width: 16rem;
  height: 16rem;
  border-radius: 50%;
  margin-right:7rem;
  position:relative;
}
.statusItem.available .dot {
  background-color: #5bc4f1; /* 하늘색 */
}
.statusItem.limited .dot {
  background-color: #ff8328; /* 초록색 */
}
.statusItem.unavailable .dot {
  background-color: #aeaeae; /* 회색 */
}
.box_info_calendar.disable,
.box_info_calendar {
  border:2rem solid #2461ab;
}
.box_info_calendar .infoText {
  margin-top:20rem;
}
.box_info_calendar .infoText,
.box_info_calendar .infoText li,
.box_info_calendar .infoText dl {
  width:100%;
}
.box_info_calendar .infoText dl {
  display:flex;
  flex-direction:row;
  align-items:flex-start;
}
.box_info_calendar .infoText dl dt {
  font-size:15rem;
  font-weight:300;
  color:#000000;
  padding-right:2rem;
  position:relative;
  top:1rem;
}
.box_info_calendar .infoText dl dd {
  font-size:15rem;
  font-weight:300;
  color:#747d97;
  max-width:calc(100% - 30rem);
  position:relative;
  top:-0.8rem;
}
.box_info_calendar .infoText dl dd .moNone {
  display:inline;
}
.box_info_calendar .infoText dl dd button {display:none;}
.box_info_calendar .red,
.box_info_calendar .blue {
  display:inline;
}
.box_info_calendar .red {
  font-weight:400;
  color:#ff0000;
}
.box_info_calendar .blue {
  font-weight:400;
  color:#2461ab;
}
.box_info_calendar .comment {
  font-weight:400;
  color:#000;
}
.btnGreen_xl {
  border:none;  
  background-color:#0ecd68;
  color:#fff;
}
.btnBlue_xl {
  border:none;
  background-color:#2461ab;
  color:#fff;
}
.btnBlue_xl[disabled] {
  background-color:#aeaeae;
  color:rgba(255,255,255,0.6);
}
.btnCal_xl {
  border:1rem solid #2461ab;
  color:#2461ab;
}
.btnCal_xl:hover,
.btnCal_xl.active {
  border:1rem solid transparent;
  background-color:#2461ab;
  color:#fff;
}
.btnCal_xl[disabled] {
  border:1rem solid transparent;
  background-color:#aeaeae;
  color:rgba(255,255,255,0.6);
}


/* 20251125 fetch */
.dashboard_Personal .logo_corp,
.dashboardNotCompany .logo_corp {display:none;}
/* 컬러변경요청 */
.info_footer .info a,
.mypageGateCard .info-list .year,
.arrowBtnType01 a span {color:#2461ab; font-weight:700;}
.arrowBtnType01 a span {font-weight:400;}

.gateInfoList li .status {background-color:transparent !important; color:#333333; position:relative;}
.gateInfoList li .status::after {
  content:'';
  width:1px;
  height:20px;
  background-color:#dddeea;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:0;
}
/* 마이페이지_기프트 */
.gateInfoList01 li .gateInfoTit {max-width:calc(100% - 455px);}
.medicalList li.active .btns button {
  background-color:#2461ab;
  border:1px solid transparent;
  color:#fff;
}
.list_03 li {box-sizing:border-box;}
.list_03 li .location {font-size:13rem; letter-spacing:-0.6px;}
.medicalDetailNtBox {
    position: relative;
    font-size: 14rem;
}
.medicalDetailNtBox.is-open {
  box-shadow:2px 1px 20px rgba(0, 0, 0, 0.1);
}
.medicalDetailNtBox .nt-head {
    width:100%;
    gap: 12rem;
    padding:20rem;
    border: 1rem solid #dddeea;
    border-radius:6rem;
    background: #fff;
    cursor: pointer;
}
.medicalDetailNtBox .nt-head a {
    width:100%;  
    display: flex;
    flex-direction:row;
    align-items: center;
}
.medicalDetailNtBox .nt-head a:hover p,
.medicalDetailNtBox .nt-head a:hover span {
  color:#000;
}
.medicalDetailNtBox .nt-head-title,
.medicalDetailNtBox .nt-title {
    flex: 1;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size:16rem;
    font-weight:300;
    line-height:1;
    color:#555555;
    width:calc(100% - 130px);
}
.medicalDetailNtBox .nt-head-date,
.medicalDetailNtBox .nt-date {
  width:110px;
  margin-left:20px;
  font-size:16rem;
  font-weight:400;
  color: #999999;
  line-height:1; 
}
/* 토글 버튼 영역: 15 x 9 */
.medicalDetailNtBox .nt-toggle {
    cursor: pointer;
    position: absolute;
    top:-1px;
    display: inline-block;
    right:20px;
    top:50%;
    margin-top:-4.5px;
    z-index:2;
}
.medicalDetailNtBox .nt-toggle .on {
  display:none;
}
.medicalDetailNtBox .nt-toggle:hover .on {
  display:block;
}
.medicalDetailNtBox .nt-toggle:hover .off {
  display:none;
}
.medicalDetailNtBox.is-open .nt-toggle{
    transform: rotate(-180deg);
}
.medicalDetailNtBox.is-open .nt-head{
    width:100%;
    border: 1rem solid #dddeea;
    border-bottom:none;
    border-top-left-radius:6px;
    border-top-right-radius:6px;
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
    position:relative;
    z-index:3;
}
.medicalDetailNtBox .nt-list {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    border-bottom-left-radius:6px;
    border-bottom-right-radius:6px;
    border:1rem solid #dddeea;;
    box-sizing:border-box;
    border-top:none;
    background: #fff;
    list-style: none;
    overflow-y: auto;
    display: none;
    z-index: 30;
    width:100%;
    padding:20px;
}
.medicalDetailNtBox .nt-list::before {
  content:'';
  width:calc(100% - 40px);
  height:1px;
  background-color:#dddeea;
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
}
/* 열렸을 때만 보이게 */
.medicalDetailNtBox.is-open .nt-list {
    display: block;
    box-shadow:4px 14px 20px rgba(0, 0, 0, 0.1);
}

.medicalDetailNtBox .nt-list li a {
    display: flex;
    align-items: center;
    cursor: pointer;
}
.medicalDetailNtBox .nt-list li:hover span {
    color:#000;
}
.medicalDetailNtBox .nt-list li,
.medicalDetailNtBox .nt-list li a {
  width:100%;
}
.checkupDetail .detailWrap li {
  margin-bottom:35px;
}
.checkupDetail .pop_cont {
    min-height: 40vh;
    max-height: calc(100vh - 100px); /* rem 절대 쓰지 마라, px로 해야 정확 */
    overflow: visible; /* hidden 절대 금지 */
    padding: 20px 25px 0 25px;
}
.checkupDetail .pop_cont {
  overflow:hidden;
}
.checkupDetail .detailWrap {
  margin-top: 0 !important;
  height: calc(100% - 75px);
  overflow-y: scroll;
}
.checkupDetail .detailWrap {
  padding-bottom:450rem;
}
.topDetailBtn {
  display:flex;
  flex-direction:row;
  align-items:stretch;
  gap:7rem;
  margin-bottom:40rem;
  flex-wrap:wrap;
}
.topDetailBtn li {
  font-size:14rem;
  font-weight:400;
  color:#2461ab;
  border:1rem solid #2461ab;
  box-sizing:border-box;
  padding:10rem 15rem;
  border-radius:6rem;
  overflow:hidden;
  cursor:pointer;
}
.topDetailBtn li.on,
.topDetailBtn li:hover {
  background-color:#174f87;
  color:#fff;
  border:1rem solid transparent;
}
body.no-scroll {
  overflow:hidden;
}
.selectMedicalExam .titLeft {
  display:flex;
  flex-direction:row;
  align-items:center;
}
.selectMedicalExam .titLeft label {
    display: flex;
    align-items: center; 
}
.selectMedicalExam .titLeft label .text {
    flex: 1;
    min-width: 0;
    word-break: keep-all;
    overflow-wrap: anywhere;
}
.selectMedicalExam .titLeft .icon-question-mark-blue {
    flex-shrink: 0;        
    position: relative;    
    z-index: 10;          
}
.selectMedicalExam .titLeft label .drop-dialog, 
.selectMedicalExam .titLeft label .tippy-box {
    pointer-events: auto;   /* 팝업 내부의 클릭(닫기 버튼 등)은 정상 작동 */
}
.selectMedicalExam .tippy-box {
  max-width:100%;
}
.selectMedicalExam .icon-question-mark-blue {
  margin-left:10rem;
}
.selectMedicalExam .boxType01 {
    border:2rem solid #227caf; /* 파란색 */
    border-radius:16px;
    padding:22px 30px;
    margin-bottom: 18px;
    cursor: pointer;
    transition: background 0.2s ease;
}
.selectMedicalExam .boxType01 .box-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}
.selectMedicalExam .boxType01 .title {
    font-size:30rem;
    font-weight:500;
    color: #2461ab;
}
.selectMedicalExam .boxType01 .desc {
    font-size: 14rem;
    font-weight:300;
    color: #666666;
    margin-left:40rem;
}
.selectMedicalExam .boxType01 .desc b {
  display: inline;
  font-weight:400;
  color:#000;
}
.selectMedicalExam .boxType01 .box-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
}
.selectMedicalExam .boxType01.active .box-content {

}
.selectMedicalExam .boxType01.active .arrow {
    transform: rotate(180deg);
}
.selectMedicalExam .boxType01.active .contentWrap {
  display:block;
}
.selectMedicalExam .boxType01 .contentWrap {
  display:none;
  border:none;
  padding:0;
  width:100%;
  margin-top:10px;
}
.detailPop03 .pop_inner {
  max-width:640px;
}
.detailPop03 .pop_btns {
  padding:40rem 0 0 0;
}
.detailPop03 .table02 thead tr th:last-child{
  font-size:14rem;
  font-weight:500;
  color:#111111;
}
.detailPop03 .table02 tbody tr td {
  background-color:#fff;
}
.totalPriceBox03 {
  background-color: #fff;              /* 흰 배경 */
  border:1rem solid #dddeea;          /* 옅은 회색 테두리 */
  border-radius:6rem;
  padding:25rem 40rem;
  flex-direction: column;              /* 위/아래 배치 */
  align-items: stretch;
  overflow:initial;
}

/* 헤더 영역 (결제 정보 / 총 금액) */
.totalPriceBox03 .totalPriceHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom:15rem;
}

.totalPriceBox03 .tit {
  font-size:16rem;
  font-weight:700;
  color: #000;
}

/* 오른쪽 총금액 */
.totalPriceBox03 .price {
  font-size:14rem;
  font-weight:300;
  text-align: right;
  color: #000;
  display:flex;
  flex-direction:row;
  align-items:center;
}

.totalPriceBox03 .price .label {
  font-size: 14rem;
  font-weight:400;
  color: #747d97;
  margin-right:15rem;
}

.totalPriceBox03 .price .blue {
  font-size:24rem;
  font-weight:700;
  color: #2461ab;
  padding-right: 4rem;
}

/* 하단 리스트 영역 */
.totalPriceBox03 .totalPriceList {
  margin-top: 4rem;
}

.totalPriceBox03 .totalPriceList li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14rem;
  position:relative;
}
.totalPriceBox03 .totalPriceList li:not(:last-child) {
  margin-bottom:10rem;
}
.totalPriceBox03 .totalPriceList li + li {
  border-top: 1rem dashed #e3e6ec;   /* 중간 점선 구분 */
  padding-top:10rem;
}

/* 왼쪽 텍스트 + ? 아이콘 */
.totalPriceBox03 .totalPriceList .left {
  display: flex;
  align-items: center;
  gap: 4rem;
}
.totalPriceBox03 .totalPriceList .left >span:nth-child(1) {
  font-weight:700;
}
.totalPriceBox03 .totalPriceList .right .num {
  font-weight:400;
}
.totalPriceBox03 .totalPriceList .right {
  font-size:14rem;
  font-weight:300;
  color:#000;
}
/* 주황색 ? 아이콘 (간단 버전) */
.totalPriceBox03 .icon-q {
  cursor:pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18rem;
  height: 18rem;
  border-radius: 50%;
  background-color: #ffa943;   /* 주황색 */
  color: #fff;
  font-size: 11rem;
  line-height: 1;
}
.detailPop03 .pop_btns button {
  font-size:15rem;
  font-weight:400;
}
.tippy-close {
  position: absolute;
  right: 30rem;
  top: 20rem;
}
.blind {
  width:0;
  height:0;
  font-size:0;
  position:absolute;
  z-index:-1;
  top:0;
  left:0;
  opacity:0;
}
.totalTopBox {
  width:100%;
  justify-content:space-between;
  margin-bottom:10rem;
}
.totalTopBox .section-title,
.totalTopBox .totalPriceText {
  margin-bottom:0;
}
.totalTopBox .priceTit {
  font-size:14rem;
  font-weight:400;
  color:#747d97;
}
.totalTopBox .totalPriceText {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:12rem;
}
.priceTableWrap {margin-bottom:20rem;}
.priceTableWrap tr td:first-child,
.priceTableWrap tbody tr td.priceRight{
  padding:5rem 0 10rem 0;
  background-color:#fff;
}
.priceTableWrap tr td:first-child {font-size:15rem;}
.priceTableWrap tr td {
  padding-bottom:20rem;
}
.priceTableWrap tr:not(:last-child) td {
  border-bottom:1rem dashed #dddeea;
}
.priceTableWrap tr:last-child td {
  border-bottom:1rem solid #dddeea;
}
/* ✅ 하단 고정 탭바 */
.bottom-nav{
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height:100rem;
  background: #fff;
  border-top: 1px solid #dddeea;
  z-index:102;
  display:none;
  align-items: center;
  justify-content: space-around;
  display:none !important;
}
.bottom-nav__item{
  flex: 1;
  text-decoration: none;
  color: #8d8d8d;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 100%;
  -webkit-tap-highlight-color: transparent;
}
.bottom-nav .icon{
  width:30rem;
  height:35rem;
}
.bottom-nav .icon img {
  width:100%;
}
.bottom-nav .icon img.on {
  display:none;
}
.bottom-nav__item.is-active .icon img.on{
  display:block;
}
.bottom-nav__item.is-active .icon img.off{
  display:none;
}
.bottom-nav__label{
  font-size:17rem;
  font-weight:200;
  line-height: 1;
  color:#747d97;
}
.bottom-nav__item.is-active .bottom-nav__label{
  color: #1e5bd7;
  font-weight: 600;
}

/* 반응형 */
@media screen and (max-width:1680px) {
  .subTopArea .textBox {
    width:calc(100% - 40rem);
  }
  .subTopArea .txt_type01 {flex-direction:column; align-items:flex-start; gap:10rem;}

  .bannerArea {width:100%;}
  .bannerArea >div {width:32%;}

  .bottomFixed >div {width:calc(100% - 40rem); box-sizing:border-box;}

  .medicalList .list_03 {gap:20rem;}
  .medicalList li {width:calc(25% - 15rem);}
}
@media screen and (max-width:1480px) {
  .dashboardLinkBox {width:100%; margin:0 auto;}
  .dashboardLinkBox ul {gap:5rem;}

  .medicalDetailBox .lfBox {width:120rem;}
  .medicalDetailBox .rtBox {width:calc(100% - 120rem);}
  .subTopArea03::before {right:5%;}  
  .calendarWrap >.boxWrap {width:calc(50% - 10px);}
  .calendarWrap .table_month td>a, .calendarWrap .table_month td>div {padding:10rem 5rem;}
  .calendarWrap .table_month td.disable::before {word-break:keep-all; text-align:center;}
  .statusItem {align-items:center;}
  .statusItem .dot {width:13rem; height:13rem;}
  .statusItem .moNoneText {display:none;}  

  .grp_list_renew04 {flex-direction:column;}
  .grp_list_renew04 > .box {width:100%;}
}
@media (max-width:1200px) {
  .calendarWrap >.boxWrap {width:calc(50% - 5px);}
  .box_map .map_hospital_info .map_dim .list_03 {
    left:0 !important;
    right:0 !important;
    align-items:center !important;
    justify-content:center !important;
  }  
  .box_map .map_hospital_info .medicalList li {max-width:480rem !important;}
  .box_map .map_hospital_info .btn_close {top:10rem !important;}  
  .mypageGateTarget .pageTopTitBox{
    padding-top:0;
  }  
  .calendarWrap {margin-top:0;}
  .candidate-list li p, .candidate-list li .name {font-weight:300;}
  .medicalBox {flex-direction:column;}
  .visualTop02 .inner {border-bottom:1rem solid transparent;}
  .region-card {display:none;}
  .region-card_mo {display:block; width:100%;}
  .region-card_mo ul {border-radius:0; display:flex; flex-direction:row; flex-wrap:wrap;}
  .region-card_mo ul li {width:25%;}
  .region-card_mo ul li:not(:nth-child(4n)) {border-right: 1rem solid #dddeea;}
  .region-card_mo ul li:nth-child(5),
  .region-card_mo ul li:nth-child(6),
  .region-card_mo ul li:nth-child(7),
  .region-card_mo ul li:nth-child(8) {border-bottom:1rem solid transparent;}
  /* .region-card li.active {background-color:#2461ab;}
  .region-card li.active .label {color:#fff;}
  .region-card li.active .count,
  .region-card li.active:hover .count {color:#fdd17a !important;} */

  .medicalList,
  .mapWrap {width:100% !important; padding:0; margin:0 !important;}
  .mapWrap .box_map {margin:0 !important; width:100%;}
  .medicalList .contBottom {height:auto;}
  .mediaBtnBox button {border-radius:20rem;}
  #ocare_main {box-sizing:border-box;}
  .medicalList .contBottom {min-height:auto; padding:20rem 15rem 10rem 15rem;}
  .medicalList .list_03 {width:100%; display:flex; flex-direction:row; align-items:stretch; gap:10rem;}
  /* .medicalList01 .list_03 {align-items:baseline;} */
  .medicalList01 li .contBottom02 .topBox {margin-bottom:55rem;}
  .medicalList li {width:calc(50% - 5rem);}  
  .medicalList li .cont {padding:10rem 20rem 0 20rem; float:none !important; margin-bottom:0 !important;}
  .medicalList01 li .cont {padding:10rem 10rem 0 0;}
  .medicalList li .title {padding-top:0 !important;}
  .medicalList li .hospital-category-wrap {position:relative; margin-bottom:10rem; width:100%; left:0; top:0; flex-wrap:wrap; margin-bottom:0;}
  .medicalList li .pic {overflow:initial; position:absolute; top:10rem; right:15rem; width:150rem; border-radius:0;}
  .medicalList li .pic .imgBox {max-height:100rem !important; border-radius:10rem;}
  .medicalList li .pic >img {border-radius:10rem; overflow: hidden;}
  .medicalList li .pic .noimg {min-height:100rem;}
  .medicalList .list_03 li .location {overflow:initial !important; word-break:keep-all; width:100%; line-height: 1.2; white-space: initial; display:flex; flex-direction:row; align-items:flex-start;}

  .medicalList li .topBox {width:calc(100% - 170rem);}
  .medicalList li .btn_compare {width:35rem; height:35rem; left:-15rem; bottom:-15rem; background-size:55%;}
  .medicalList li .title {padding-bottom:7rem;}
  .medicalList li .title {word-break:keep-all;}
  .box_map .map_hospital_info .cont {position:relative; padding:0; max-width:calc(100% - 130rem);}

  .grp_list_renew .position {font-size:18rem;}
  .grp_list_renew .target {font-size:16rem;}
  .grp_list_renew .birthday {font-size:14rem;}  
  .medicalList li .cont .hospital-category-wrap {width:100%;}
}
@media screen and (min-width:1440px) {
  #ocare_gnb .nav_gnb>li.current>button{color:#fff;}


}
@media (min-width:1024px) {
    .detailPop .table02 th, 
    .detailPop .table02 td {
        padding: 10rem 13rem;
    }  
}
@media (min-width: 1224px) and (max-width: 1440px) {
  .btn_nav {
      display: inline-block;
      width: 24rem;
      height: 24rem;
      background:transparent;
      background-image:url(../images/renew/all_btn_menu.svg);
      background-repeat:no-repeat;
      background-size: cover;
  }
  .medicalList .list_03 {gap:20rem;}
  .medicalList li {width:calc(25% - 15rem);}
}
.moBtnBlock {display:none;}
@media screen and (max-width:1080px) {
  .calendarWrap >.boxWrap {width:100%;}
  .calendarWrap >.boxWrap:nth-child(2) {display:none;}
  .statusWrap.moBlock {display:flex;}
  .calendarText .month {display:none;}
  .calendarWrap .table_month td.disable::before {width:110%;}
  .moBtnNone {display:none !important;}
  .moBtnBlock {display:block;}
  .calendarStatusWrap {flex-direction:column; align-items:flex-start; gap:10rem;}
  .list_dot01>li.blackText {word-break:keep-all;}
  .list_dot01>li.blackText {font-size:13rem;}
}
@media (max-width: 1024px) {
  .subTopArea .textBox {padding:0;}
  .box_map .map_hospital_info .btn_close {top:25rem;}
  .box_map .map_hospital_info .list_03 li .title {padding:0 0 10rem 0 !important;}
  .checkSimpleMemberRenew .confirmBtnRenew {width:100%;}
  .selectMedicalExam {padding-top:0;}
  .checkupDetail .detailWrap.pb50 {padding-bottom:50rem;}
  .topDetailBtn {margin-bottom:30rem; justify-content:flex-start; flex-wrap:wrap;}
  .topDetailBtn li {padding:10rem; display: inline-flex; justify-content:center; align-items:center; flex-basis: auto; text-align:center;}   
  .checkupDetail .table02 tbody tr {flex-direction:row;}
  .checkupDetail .table02 tbody tr td:first-child {width:fit-content;}
  .checkupDetail .table02 tbody tr td:last-child {width:fit-content;}
    #ocare_main {
      width:calc(100% - 40rem);
      margin: 0 auto;
      padding: 0 0 65rem;
    }
    .medicalDetailWrap {flex-direction:column;}
    .medicalDetailBox {order:1; width:100%; margin-left:0;}
    .medicalGalleryBox {order:2; width:100%; max-width:500rem; height:auto; margin:0 auto;}
    .medicalGalleryBox .gallery_medical {margin-top:35rem;}
    .pop_cont .title_medical {margin-top:25rem;}
    .medicalDetailBox .infoBox {flex-direction:column;}
    .medicalDetailBox .medicalInfoWrap li:not(:last-child) {border-bottom:1rem solid #e5e7eb; margin-bottom:15rem; padding-bottom:15rem;}
    .medicalDetailBox .medicalInfoWrap li:last-child .infoBox {flex-direction:row; justify-content:space-between;}
    .medicalDetailBox .lfBox,
    .medicalDetailBox .rtBox {
      width:fit-content;
    }
    .medicalDetailBox .line {margin-top:15rem;}
    .medicalDetailBox .line {display:none;}
    .popup.full .pop_inner {border-top-left-radius:20rem; border-top-right-radius:20rem;}
    .popup.full .pop_head .pop_title {font-weight:700;}
    .medicalDetailBox .infoBox .text.mb15 {margin-bottom:5rem;}
    .pop_cont .title_medical:before {width:35rem; height:35rem; background-size:55%;}
    .medicalDetailBox .infoBox .text {word-break:keep-all;}
    .medicalDetailBox .infoBox .text br {display:none;}

    .selectMedicalExam .boxWrap {flex-direction:column;}
    .selectMedicalExam .titBox {width:100%; height:auto; border-top-left-radius:15rem; border-top-right-radius:15rem; border-bottom-left-radius:0; border-bottom-right-radius:0;}
    .selectMedicalExam .titBox p {width:100%; padding:20rem; font-size:22rem; display:flex; flex-direction:row; align-items:center; justify-content:space-between;}
    .selectMedicalExam .titBox p span {font-size:17rem;}
    .selectMedicalExam .contentWrap {width:100%; padding:0; border:1rem solid #227caf; border-top-left-radius:0; border-top-right-radius:0; border-bottom-left-radius:15rem; border-bottom-right-radius:15rem;}
    .selectMedicalExam .box .info_ex02 .title {padding:20rem 10rem 10rem 10rem; margin:0;}
    .selectMedicalExam .table02 {border-collapse: separate; border-spacing: 0 5rem;}
    .selectMedicalExam .addLayout.active {
      border-collapse: separate;
      border-spacing:5rem 0 0 0;
    }
    .selectMedicalExam .addLayout tbody tr td {padding:0 !important;}
    .selectMedicalExam .table02 tbody {gap:0;}
    .selectMedicalExam .table02 tbody tr {border:none; gap:0; padding:0; flex-direction:column; /*position:relative; z-index:2;*/}    
    /* html/E05_03_04.html 툴팁때문에 z-index지움 */
    .selectMedicalExam .table02 thead tr th:nth-child(4), .selectMedicalExam .table02 tbody tr td:nth-child(4) {padding:0;}
    .selectMedicalExam .table02 thead tr th:nth-child(1), .selectMedicalExam .table02 tbody tr td:nth-child(1) {
      /* z-index:2; */
    }
    .selectMedicalExam .table02 thead tr th:nth-child(1), .selectMedicalExam .table02 tbody tr td:nth-child(1) {
      width:100%;
    }
    .selectMedicalExam .addLayout.active tbody tr td {
      background-color:#fffaec;
    }    
    .selectMedicalExam .table02 .ml20 {
      margin-left:10rem !important;
    }
    .selectMedicalExam .table02 tbody tr {
      background-color:transparent;
    }     
    .selectMedicalExam .table02 tbody tr td {background-color:#fafafc;}
    .selectMedicalExam .table02 tbody tr td:nth-child(1) {padding-top: 10rem !important; padding-bottom:5rem !important; padding-left:10rem !important;}
    .selectMedicalExam .table02 tbody tr td:last-child {padding-bottom: 10rem;}
    .selectMedicalExam .table02 tr td.active {
      border:none !important;
      background-color:#fffaec;
    }
    .selectMedicalExam .table02 thead tr th:nth-child(2), .selectMedicalExam .table02 tbody tr td:nth-child(2),
    .selectMedicalExam .table02 thead tr th:nth-child(3), .selectMedicalExam .table02 tbody tr td:nth-child(3),
    .selectMedicalExam .table02 thead tr th:nth-child(4), .selectMedicalExam .table02 tbody tr td:nth-child(4) {
      width:100%;
      padding-left:40rem !important;
    }    
    .selectMedicalExam .table02 tbody tr td.price {
      padding-left:0 !important;
    }
    .selectMedicalExam .titLeft {
      max-width:calc(100% - 100rem);
    }
    .selectMedicalExam .table02 .price {position:absolute; right:15rem; top:15rem; z-index:1; width:fit-content !important; padding:0 !important; }
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:550rem;}
    .selectMedicalExam .contentWrap {padding-bottom:10rem;}
    .selectMedicalExam .boxType01 .box-header {width:100%;}
    .selectMedicalExam .boxType01 .box-header .flexWrap {flex-direction:column; justify-content:flex-start; align-items:flex-start; width:calc(100% - 40px); gap:5rem;}
    .selectMedicalExam .boxType01 .desc {margin-left:0; word-break:keep-all;}
    .selectMedicalExam .boxType01 .desc b {font-weight:700;}

    .selectMedicalExam02 .box .info_ex02 .title {display:none;}
    .selectMedicalExam .contentWrap {padding:5rem 0;}

    .detailPop03 .table02 thead {display:flex;}
    .detailPop03 .table02 tbody tr {padding:0; gap:0;}
    .detailPop03 .table02Renew th:nth-child(1), 
    .detailPop03 .table02Renew td:nth-child(1) {
      padding:0;
      font-size: 14rem;
      font-weight: 400;
      color: #747d97;      
      text-align:left;
    }
    .detailPop03 .table02Renew th, 
    .detailPop03 .table02Renew td {
      padding:0;
    }
    .detailPop03 .table02Renew tr th,
    .detailPop03 .table02Renew tr td {
      border:none;
    }
    .detailPop03 .table02 tbody {gap:0;}
    .detailPop03 .table02 tbody tr {
      background-color:transparent;
    }
    .detailPop03 .table02Renew thead tr {
      border-top:1rem solid #dddeea;            
    }
    .detailPop03 .table02Renew tr {
      width:100%;
      display:flex;
      flex-direction:row;
      align-items:center;
      padding:10rem 0;      
      border-bottom:1rem solid #dddeea;      
    }
    .detailPop03 .table02Renew th:nth-child(1), 
    .detailPop03 .table02Renew td:nth-child(1) {
      width:100rem;
    }
    .detailPop03 .table02Renew th:nth-child(2), 
    .detailPop03 .table02Renew td:nth-child(2) {
      width:calc(100% - 100rem);
      text-align:left;
    }    
    .detailPop03 .table02Renew td {padding:10rem 0;}
    .totalPriceBox03 {padding:20rem 25rem; border:2rem solid #dddeea;}
    .detailPop03 .table02 thead th { } 

    .grp_list_renew05 .info_renew {width:100%;}
    .grp_list_renew05 .info_renew {flex-wrap:wrap; align-items:flex-start;}
    .grp_list_renew05 .positionType01_2 {margin:15rem 0; flex-direction:column; align-items:flex-start; gap:10rem;}
    .grp_list_renew05 .box .hospitalInfo {width:100%; padding-left:0; margin-left:0; margin-left:0; margin-top:15rem;}
    .grp_list_renew05 .patient {width:calc(100% - 130rem);}
    .grp_list_renew05 .box .hospitalInfo:before {display:none;}
    .grp_list_renew05 .box {flex-direction:column;}
    .grp_list_renew05 .btnsBottom {width:100%; margin-top:25rem;}
    .grp_list_renew05 .btnsBottom button {flex:1;}

    #CheckupPackage .table02 thead {
      display:block;
      background: #f4f4f8;
      margin-bottom:5rem;      
    }    
    #CheckupPackage .table02 thead,
    .checkupDetail .table02 tbody tr {
      padding: 10rem 13rem;
      box-sizing:border-box;
    }
    .PersonalTestPop .table02 tbody tr {
      padding:0;
    }
    .table02 thead tr th {
      font-size: 14rem;
      font-weight: 400;
      color: #747d97;
    }    
    .groupHeader .title, .checkupDetail .title, .checkupDetail .tableTitBox p {font-size:16rem;}
    #CheckupPackage .table02 thead tr,
    #CheckupPackage .table02 tbody tr {gap:5rem;}
    #CheckupPackage .table02 thead tr {display:flex; flex-direction:row; align-items:center;}
    #CheckupPackage .table02 thead th {width:100%; box-sizing:border-box;}
    #CheckupPackage .table02 thead tr th:nth-child(3) {
      display:none;
    }
    #CheckupPackage .table02 thead tr th:nth-child(1),
    #CheckupPackage .table02 tbody tr td:nth-child(1) {
      width:calc(100% - 80rem);
      text-align:left;
    }
    #CheckupPackage .table02 tbody tr td:nth-child(3) {
      width:100%;
      text-align:left;
      padding-left:0;
      color:#2461ab;
    }
    #CheckupPackage .table02 thead tr th:nth-child(2),
    #CheckupPackage .table02 tbody tr td:nth-child(2) {
      width:70rem;
      text-align:center;
      margin:0;
      padding:0;
    }
    .box .conditionRenew {
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:space-between;
      flex-direction: row-reverse;
    }
    .box .conditionRenew button {
        width: 115rem;
        width: 100rem;
        height: 34rem;
        padding: 0 10rem;
        border-bottom-left-radius: 0;
        border-radius: 6rem;
        font-size: 14rem;
    }
    .box .conditionRenew .reserve {font-size: 16rem; font-weight:700; width:auto;}
}
@media screen and (max-width:740px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:450rem; position:relative; z-index:2;}
}
@media screen and (max-width:650px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:380rem;}
}
@media screen and (max-width:580px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:320rem;}
}
@media screen and (max-width:520px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:280rem;}
}
@media screen and (max-width:480px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:270rem;}
}
@media screen and (max-width:470px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:250rem;}
}
@media screen and (max-width:450px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:220rem;}
}
@media screen and (max-width:420px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:210rem;}
}
@media screen and (max-width:380px) {
    .selectMedicalExam .table02 tbody tr td:nth-child(1) label .text {max-width:190rem;}
}
@media (max-width: 1024px) {
  button[class*='_xl'] {
      height: 45rem;
      padding: 0 5rem;
      font-size: 14rem;
  }  
  /* footer */
  #ocare_footer {padding-bottom:0 !important; background-color:#fafafc;}
  .inner_footer {padding:30rem 20rem 50rem 20rem;}
  .info_footer .info .moBr {display:block;}
  .nav_footer {margin-bottom:25rem;}
  .info_footer .info {color:#747d97; font-weight:300;}
  .info_footer .info_02 {line-height:1.35; margin-top:0;}
  .info_footer .info_03 {margin-top:20rem;}
  .info_footer .info_04 {margin-top:2rem;}
  .info_footer .info .copyright {margin-top:20rem; color:#999999; font-weight:100;}
  .info_footer .info .moBr:before {display:none;}  
  .bottom-nav {display:flex;}
  /* .bottomFixed.active {position:fixed; bottom:100rem; left:0;} */
  /* 헤더 */
  .logo_ocare {width: 165rem; height: 33rem; background:url('../images/logo_MYONECARE.png') no-repeat center; background-size: 100% 100%;}
  .btn_alarm .new {background:#fdd17a !important;}
  #ocare_header {
      height: 65rem;
      padding: 0 20rem;
      background: #2461ab;
  }    
  .btn_nav {
      display: inline-block;
      width: 22rem;
      height: 22rem;
      background-size:cover;
      background:transparent;
      background-image:url(../images/renew/all_btn_menu.svg);
      background-repeat:no-repeat;
      background-size: cover;
  }
  .grp_util {
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:10rem;
  }
  .grp_logo {
      display: flex;
      flex-direction:row;
      align-items:center;
      max-width:calc(100% - 100rem);
  }
  .grp_alarm {
      display: block;
  }      
  /* 03_대시보드 */
  .subTopArea {height:150rem;}
  .subTopArea::before {right:-100rem; width:900rem; height:150rem;}
  .dashboardLinkBox {padding-top:30rem;}
  .dashboardLinkBox ul {flex-wrap:wrap; justify-content:center; gap:0;}
  .dashboardLinkBox ul li {width:33.3333333333333%; }
  .dashboardLinkBox ul li.moNone {display:none;}
  .dashboardLinkBox ul li a {display:flex; flex-direction:column; justify-content:center;}
  .dashboardLinkBox ul li a .icon {margin:0 auto;}
  .dashboardLinkBox ul li:nth-child(1),
  .dashboardLinkBox ul li:nth-child(2),
  .dashboardLinkBox ul li:nth-child(3) {margin-bottom:25rem;}
  .dashboardLinkBox ul li a .icon {max-width:100rem; height:auto;}
  .bannerArea {flex-wrap:wrap;}
  .bannerArea >div {width:49.2%; margin-bottom:10rem;}  
  /* 03_마이페이지 */
  .gateList {width:100%;}
  .mypageGate {max-width:100%;}
  .subTopArea03 {display:none;}
  .gateList {padding:25rem 20rem;}
  .gateList li .icon {width:65rem; height:65rem;}
  .gateList li .icon img {max-width:70%;}
  .gateList li a {gap:10rem;}
  .mypageGateCard {width:280rem; padding:25rem 20rem;}
  .mypageGateTarget {width:calc(100% - 300rem);}
  .arrowBtnType01 {gap:15rem;}
  .arrowBtnType01 a {align-items:center;}
  .arrowBtnType01 a span {font-size:15rem;}
  .arrowBtnType01 a img {max-width:7rem;}

  .medicalList li .pic {width:150rem; }
  .medicalList li .topBox {width:calc(100% - 170rem);}  
  .medicalList li [class*='_lg'] {height:40rem;}

  .mypageGateBox02 .priceTableWrap tr {padding:10rem 0; background-color:transparent; border-bottom:1rem dashed #dddeea; flex-direction:row; justify-content:space-between !important; flex-wrap: nowrap;}
  .mypageGateBox02 .priceTableWrap tbody tr td {display:flex; flex-direction:row; justify-content:center; align-items:center; width:fit-content; border:none; padding:0;}
  .mypageGateBox02 .priceTableWrap tr:last-child {
      border-bottom: 1rem solid #dddeea;
  }
  .mypageGateBox02 .priceTableWrap tbody tr td.priceRight { display:flex; flex-direction:row; align-items:center; align-items:center; margin-right:initial;}
  .mypageGateBox02 .table02 tbody tr td.priceRight span {line-height:1.2; padding-right:3rem;}

  .title_contents {background-color:#073a78; width:100%; position:relative; transform:initial; height:auto; line-height:initial; left:initial; margin:0; text-align:left; align-items:flex-start; justify-content:flex-start; padding:15rem 20rem; color:#fff; z-index:2;}
  .title_my_result strong {font-size:19rem; font-weight:400;}

  .grp_list_renew04 > .box {flex-direction:column; position:relative; padding:20rem;}  
  .grp_list_renew04 .box .hospitalInfo {margin-left:0; padding-left:0; align-items:flex-start; justify-content:flex-start;}
  .grp_list_renew04 .box .hospitalInfo:before {display:none;}
  .grp_list_renew04 button[class*='_xl'] {width:100%; margin-top:25rem;}
  .grp_list_renew04 .box .info_renew .name {position:absolute; top:10rem; left:10rem; margin-right:0;}
  .grp_list_renew04 .info_renew {width:100%; flex-direction:column; align-items:flex-start; justify-content:flex-start; padding-left:110rem;}
  .grp_list_renew04 .statusText {position:absolute; right:20rem; top:20rem;}
  .grp_list_renew04 .positionType01 .position {max-width: calc(100% - 110rem); margin-bottom:5rem;}
  .grp_list_renew04 .positionType01 .position::after {display:none;}
  .grp_list_renew04 .positionType01 {margin-top:5rem;}
  .grp_list_renew04 .positionType01 .target {display:none;}
  .grp_list_renew04 .listInfo .target {display:block;}
  .grp_list_renew04 .listInfo {flex-wrap:wrap;}
  .grp_list_renew04 .positionType01 span {width:100%;}
  .grp_list_renew04 .listInfo span.target::after {
      display: inline-block;
      content: '';
      width: 1rem;
      height: 12rem;
      margin: 0 10rem;
      background: #dddeea;
  }  
  .grp_list_renew .positionType01_2 {margin-bottom:10rem;}
  .grp_list_renew04 .positionType01_2 .position {max-width:calc(100% - 100rem);}
  .grp_list_renew05 .positionType01_2 .position {max-width:100%;}
  .grp_list_renew04 .box .lineRight02::after {display:none;}
  .grp_list_renew04_1 .box .lineRight02::after {display:none !important;} 
  .grp_list_renew04 .listInfo > :nth-child(3){
    margin-top:5rem;
    flex: 0 0 100%;   /* = flex-basis:100% + shrink/grow 0 */
  }  
  .grp_list_renew04 .box .hospitalInfo {margin-top:15rem;}
  .grp_list_renew04 .box .hospitalInfo .infoName {font-size:16rem;}
  .grp_list_renew04 .box .hospitalInfo {width:100%;}
  .box_info_calendar .infoText li:not(:last-child) {margin-bottom:10rem;}
  .box_info_calendar .infoText dl {flex-direction:column;}
  .box_info_calendar .infoText dl dt {}
  .box_info_calendar .infoText dl dd .moNone {display:none;}
}
.moLayoutNone {
  display:block;
  width:100%;
}  
.pcLayoutNone {
  display:none;
}
@media screen and (max-width:980px) {
  .moLayoutNone {
    display:none;
  }  
  .pcLayoutNone {
    display:block;
  }  
  /* 03_마이페이지 */
  .grp_list_renew {flex-direction:column; justify-content:center;}
  .grp_list_renew > .box {width:100%; padding:13rem 0 12rem 13rem; min-height:initial;}
  .grp_list_renew > .box .info_renew {align-items:flex-start;}
  .grp_list_renew02 > .box {min-height:initial;}
  .grp_list_mypage {gap:10rem;}
  .grp_list_renew > .box {padding:12rem;}
  .grp_list_mypage > .box .info_renew  {align-items:center;}
  .grp_list_renew > .box.addSelect {height:80rem;}
  .grp_list_renew > .box.addSelect img {margin-right:10rem; width:28rem;}
  .grp_list_renew > .box.addSelect p {font-size:16rem;}
  .grp_list_renew05.mb60 {margin-bottom:15rem;}
  .mypageGateBox02 .mypageGateCard {margin-bottom:15rem;}
  .mypageGateBox {flex-direction: column;}
  .mypageGateCard {width:100%; margin-bottom:40rem;}
  .mypageGateTarget {width:100%;}
  .mypageGateCard .section-title, .m_section-title, .pageTopTitBox .lfTit {font-size:20rem;}
  .mypageGateCard .section-title {display:none;}  
  .mypageGateBox02 .mypageGateCard .section-title {display:block; margin-bottom:10rem;}
  .mypageGateBox02 .mypageGateCard .info-list .label {margin-bottom:10rem;}
  .mypageGateBox02 .totalTopBox.mb30 {margin-bottom:20rem !important;}
  .mypageGateBox02 .totalTopBox {margin-bottom:5rem;}
  .mypageGateBox02 .totalTopBox .section-title {margin-bottom:0;}
  .mypageGateBox02 .descText.textRight {text-align:left !important; word-break:keep-all;}
  .mypageGateBox02 .receiptTxt {height:50rem; line-height:50rem;}
  .m_section-title {display:block;}
  .pageTopTitBox {display:block;}
  .arrowBtnType01 {margin-top:15rem;}
  .arrowBtnType01 a { max-width:200rem; background-color:#2461ab; display:flex; flex-direction:row; align-items:center; justify-content:center; padding:15rem 17rem; border-radius:10rem;}
  .arrowBtnType01 a span,
  .arrowBtnType01 a:hover span {color:#fff;}
  .arrowBtnType01 a span::after {content:''; position:relative; top:-1rem; margin-left:8rem; display:inline-block; vertical-align:middle; width:8rem; height:13rem; background-image:url('../images/renew/arrow_white.svg'); background-size:cover; background-repeat:no-repeat; background-position:center;}
  .arrowBtnType01 a img {display:none !important;}
  .arrowBtnType01 .moText {
    display:block;
  }
  .arrowBtnType01 .pcText {
    display:none;
  }  
  .candidate-list01 .moNone {display:none;}
  .candidate-list01 li {justify-content:space-between;}
  .candidate-list01 .rtBox .age {margin-right:0;}
  .candidate-list01 .rtBox .age::after {display:none;}
  .candidate-list01 li .name::after {display:none;}

  .detailWrap02 .groupHeader {padding:17rem 15rem;}
  .detailWrap02 .groupHeader .title {width:100rem;}
  .detailWrap02 .groupHeader .titBox .text {width:calc(100% - 100rem);;}
  
  .gateInfoList01 li {position:relative; background-color:#fafafc; border:none; min-height:auto; padding:25rem 20rem;}
  .gateInfoList01 li .status {position:absolute; right:0; top:22rem; width:89rem; height:auto; text-align:center; align-items:flex-start; font-size:15rem; }
  .gateInfoList01 li .status::after {right:auto; left:-10rem;}
  .gateInfoList01 li .gateInfoBox {
    width:100%;
    flex-direction:column; align-items:flex-start;
    padding:0;
  }
  .gateInfoList01 li .gateInfoTit {max-width:calc(100% - 100rem); overflow: hidden; white-space: nowrap;  text-overflow: ellipsis;}
  .gateInfoList01 li .gateInfoBox .arrowBtnType02 {display:none;}
  .gateInfoList01 li .statusInfo {margin-top:20rem; justify-content:space-between; width:100%;}
  .gateInfoList01 li .gateInfoBox .mr40 {margin-right:20rem;}
  .gateInfoList01 li .gateInfoBox dl {flex-direction:column; align-items:flex-start;}
  .gateInfoList01 li .gateInfoBox dt {font-size:15rem; font-weight:300; color:#9d9d9e; padding-bottom:2rem;}
  .gateInfoList01 li .gateInfoBox dd {font-size:15rem; font-weight:300;}

  .medicalList li .pic {width:120rem;}
  .medicalList01 li .pic .noimg {min-height:100rem;}
  .medicalList li .cont,
  .medicalList li .topBox {width:calc(100% - 130rem);}

  .medicalList01 li .cont .hospital-category-wrap {width:100%;}
  .moBlock980 {
    display:block;
  }
  .mypageGateBox02 .pageTopTitBox .lfTit02,
  .mypageGateBox02 .mypageGateTarget .list_dot01 {display:none;}
  .moBlock980 .pageTopTitBox .lfTit02,
  .moBlock980 .mypageGateTarget .list_dot01 {display:block;}
  .moBlock980 .list_dot01.mb50 {margin-bottom:25rem;}
  .moBlock980 .pageTopTitBox {margin-bottom:15rem;}
  .moBlock980 .list_dot01>li {margin-top:5rem;}
  .mypageGateBox02 .mypageGateCard {width:100%;}
  .mypageGateBox02 .mypageGateTarget {width:100%;}

  .detailWrap02 .arrowText {font-size:16rem; margin-right:7rem;}
  .groupHeader .caret {width:23rem; height:23rem;}
  .grp_list_renew05 .box {padding:10rem;}
  .groupHeader .caret::before {
      border: none;
      width: auto;
      height: auto;
      transform: none;
  }
  .groupHeader .caret::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 9rem; 
      height: 2rem; 
      background-color: #fff; 
      transform: translate(-50%, -50%);
  }
  .groupHeader .caret::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 2rem; 
      height: 9rem;
      background-color: #fff; 
      transform: translate(-50%, -50%);
      transition: transform 0.2s ease; 
  }
  .grp_list_renew .box .hospitalInfo .infoName {font-size:18rem;}

  .detailPop03 .pop_btns button {font-size:14rem; height:45rem;}

  .mypageGateCard .moFlex dl {display:flex; flex-direction:row; align-items:center; justify-content:space-between; width:100%;}
  .mypageGateCard .moFlex .label, 
  .mypageGateCard .moFlex .medicalTxt {
    margin-bottom:0;
  }
  .mypageGateCard .moFlex li:not(:last-child) {padding-bottom:10rem; margin-bottom:10rem;}

    .medicalList01 li .contBottom02 .topBox {margin-bottom:20rem;}
}
@media screen and (max-width:720px) {
  .box_map .map_hospital_info .medicalList li {max-width:320rem !important;}
  .list_dot01>li .pointText {color:#747d97; font-weight:500;}
  #ocare_header {height:55rem;}
  .logo_ocare {width: 143rem; height: 28.6rem; background:url('../images/logo_MYONECARE.png') no-repeat center; background-size: 100% 100%;}
  /* 로그인 */
  .loginRenew_header {padding-top:30rem;}
  .login_utils li:not(:last-child) {margin-right:12%;}
  .login_utils li:not(:last-child)::after {right:-41%;}  
  .loginRenew_sns .loginRenew_sns_title span {width:calc(50% - 58px);}
  /* 02_회원타입선택 */
  .loginRenew02 .footInfo {display:none;}
  .loginRenew02 .footerRenew .company-links {display:none;}
  .footerRenew .copyright {padding-bottom:30rem;}
  /* 03_대시보드 */
  .subTopArea {height:auto;}
  .subTopArea .textBox .txt_title {font-size:28rem; padding:30rem 0 0 0;}
  .subTopArea01 .textBox .txt_title { padding:40rem 0 100rem 0;}
  .registrationBtn01 {margin-bottom:90rem; font-size:14rem;}
  .subTopArea .txt_type01, .registrationBtn01 { margin-top:7rem;}
  .subTopArea .txt_type01 {padding:0 0 100rem 0;}
  .subTopArea::before {width:100%; height:100%; background:url('../images/renew/m_mypage_gate_deco01.png'); top:0; right: 0; background-size: cover; background-repeat: no-repeat; background-position: bottom right;}
  .bannerArea {max-width:640px; margin:40rem auto 0 auto; gap:0;}
  .bannerArea >div {width:100%; margin-bottom:15rem;}
  .bannerArea >div .pcImg {
    display:none;
  }  
  .bannerArea >div .moImg {
    display:block;
  }  
  .bannerArea button[type="button"] {width:30rem; height:30rem;}
  .board-header {border-bottom:none;}
  .notice-status li a, 
  .notice-status li a>div:first-child {display:flex; flex-direction:row; align-items:center;}
  .notice-status .name {display:none;}
  .notice-status span + span::before {display:none;}
  .notice-status li a>div.subject {width:calc(100% - 75rem);}
  .notice-status .subject-title {max-width:calc(100% - 90rem); margin-left:5rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
  .board-header {height:auto; padding:15rem 20rem 10rem 20rem;}
  .board-header .menu {padding-top:10rem;}
  .board-header .menu li button {padding-bottom:10rem;}
  .board-title {font-size:18rem;}
  .board-body {padding:22rem 20rem;}
  /* 03_마이페이지 */
  .gateList {background-color:#e7e7f0; border-radius:0; padding:10rem 20rem 20rem 20rem;}
  .gateList ul {justify-content:center;}
  .gateList li a {flex-direction:column; justify-content:center;}
  .gateList li dt {text-align:center; color:rgba(255, 255, 255, 0.8); font-size:17rem; margin-bottom:0;}
  .gateList li:hover dt {color:rgba(255, 255, 255, 0.8);}
  .gateList li dd {display:none;}
  /* .gateList li .icon {
    width:70rem;
    height:70rem;
    border-radius:10rem;
    background:
    linear-gradient(135deg, rgba(0,0,0,.22) 0%, rgba(0,0,0,0) 45%),
    linear-gradient(to bottom left, #919ADE 0%, #7EB1E5 45%, #67C7EA 100%);
    box-shadow: 0 10px 18px rgba(0,0,0,.18);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
  } 
  .gateList li .icon01 img {width:70%;}
  .gateList li .icon02 img {width:63%;}
  .gateList li .icon03 img {width:62%;}
  .gateList li .icon04 img {width:62%;}*/
  .gateList li {width:25%;}
  .gateList li a {width:85%;}
  .gateList li .icon {width:100%; height:auto; border-radius:0;}
  .gateList li:hover .icon {background-color:transparent;}
  .gateList li .icon img {max-width:80rem; width:100%; top:0; left:0;}
  .gateList li a {gap:0;}
  .gateList li dt,
  .gateList li:hover dt {color:#747d97;}
  .gateList li dt .moTextNone {display:none;}
  .grp_list_renew01 > .box .info_renew.flexWrap {align-items:flex-start;}
  .pageBtnType01 {padding:18vh 0; margin-bottom:8vh;}
  .arrowBtnType01 {gap:5rem;}
  .arrowBtnType01 a span {font-size:14rem;}
  .arrowBtnType01 a span::after {width:7rem; height:12rem; margin-left:7rem; }

  .gateInfoList01 li .gateInfoTit {font-size:16rem;}
  .gateInfoList01 li .gateInfoBox dt {font-size:14rem; }
  .gateInfoList01 li .gateInfoBox dd {font-size:14rem; }  
  .arrowBtnType01 a {padding:12rem 17rem;}
  .region-card li {padding:0 20rem;}

  .medicalList .list_03 {flex-direction:column;}
  .medicalList li {width:100%;}  
  .medicalList .contBottom {padding:15rem 15rem;}
  .medicalList li .title {font-size:16rem;}
  .medicalList li .btn_compare {width:30rem; height:30rem; bottom:-10rem; left:-10rem;}
  .region-card li {height:50rem; line-height:50rem; }
  .region-card li .label {font-size:14rem;}
  .medicalList li .cont {padding:10rem 0 0 10rem;}
  .medicalList li .cont {padding:10rem 0 0 0;}
  .medicalList li .pic {width:110rem;}
  .medicalList li .pic .imgBox {max-height:95rem !important;}
  .medicalList li .pic .noimg {min-height:95rem;}
  .medicalList01 li .btns {bottom:10px; width:calc(100% - 30px); left:15px; right:15px;}
  /* .bottomFixed.active  {position:fixed; bottom:0; left:0; width:100%;} */
  .bottomFixed >div {height:70rem;}
  .bottomFixed button {width:90rem; height:35rem;}
  .bottomFixed button p {width:115rem; font-size:11rem; left:50%; transform:translateX(-50%); bottom:40rem; height:20rem; line-height:20rem;}
  .bottomFixed button img {top:-1rem; width:6rem;}
  .bottomFixed button p::after {bottom:-3px; border-width:3px 2px 0 2px;}
  .list_caution {margin-top:30rem;}
  .innerRenew {padding-bottom:40rem;}
  input[type=radio]+label:before {width:22rem; height:22rem;}
  .selectMedicalExam .boxType01 {padding:18rem 15rem;}
  .selectMedicalExam .boxType01 .title {font-size:22rem;}
  .selectMedicalExam .boxType01 .desc {font-size:15rem;}
  .selectMedicalExam .boxType01 .arrow img {width:20rem;}
  .selectMedicalExam .list-style {word-break:keep-all;}
  .examination-table-list {flex-wrap:wrap; gap:2rem;}
  .examination-table-list label {width:100%;}
  .examination-table-desc {width:100%; margin-left:30rem;}
  .examination-table-list input[type=checkbox]+label span {font-size:0;}
  .examination-table-list .list-style::before {display:none;}
  .selectMedicalExam .list-style {line-height:1.2; margin-left:0;}

  .totalPriceBox03 .totalPriceHeader {margin-bottom:10rem;}
  .popup .popTit {font-size:16rem;}
  .totalPriceBox03,
  .totalPriceBox02_2 {padding:15rem 20rem;}
  .totalPriceBox03 .tit {font-size:17rem;}
  .totalPriceBox03 .price .label {font-size:14rem; margin-right:5rem;}
  .totalPriceBox03 .price,
  .totalPriceBox03 .price .blue {font-size:17rem;}
  .totalPriceBox03 .totalPriceList li:not(:last-child) {margin-bottom:7rem;}
  .totalPriceBox03 .totalPriceList li + li {padding-top:7rem;}
  .table02Renew tr td {font-size:14rem;}

  .totalTopBox .totalPriceText {gap:8rem;}
  .totalPriceText .price,
  .totalPriceText {font-size:19rem;}
  .totalPriceText .price {margin-right:2rem;}

  .calendarWrap .table_month td>a, .calendarWrap .table_month td>div {padding:5rem;}
  .calendarWrap .table_month td {height:90rem;}
  .box_info_calendar .comment {word-break:keep-all;}
  .box_info_calendar .infoText dl {top:0;}
  .box_info_calendar .infoText dl dd {
    max-width:100%;
    width:100%;
    position: relative;    
    top:0;
  }
  .box_info_calendar .infoText dl dd.open {
        white-space: normal;     
        overflow: visible;       
        text-overflow: clip;  
        word-break: keep-all;    
        padding-right:0;
    }  
  .box_info_calendar .infoText dl dd button {
    position:absolute;
    top:2px;
    right:0;
    background: transparent; 
    border: none;
    padding: 0;
    font-size: 1em;
    color: #000000;
    cursor: pointer;
  }
  .box_info_calendar .infoText dl dd.overText {
    padding-right: 65px;    
    white-space: nowrap;     
    overflow: hidden;        
    text-overflow: ellipsis; 
  }
  .box_info_calendar .infoText dl dd.overText button {
    display: flex;
    flex-direction:row;
    align-items: center;
  }
  .box_info_calendar .infoText dl dd button img {
    width:15rem;
    margin-left:5rem;
  }
  /* [버튼 활성화] 화살표 이미지 회전 */
  .box_info_calendar .infoText dl dd button img {
      transition: transform 0.3s; /* 부드럽게 회전 */
  }
  .box_info_calendar .infoText dl dd button.active {position:relative; margin-top:5rem;}
  .box_info_calendar .infoText dl dd button.active img {
      transform: rotate(180deg); /* 180도 회전 (위쪽 보기) */
  }  
  .bottomFixed button span {font-size:15rem;}

  .calendarWrap .table_month td.active::after {width:100%; height:100%; border:1rem solid #ff6600; left:-2rem; top:-1rem;}
  .calendarWrap .table_month td.today .day:after {font-size:10rem; top:2rem; right:2rem; padding:0 3rem; height:20rem; line-height:18rem;}
  .calendarWrap .table_month td.disable::before,
  .calendarWrap .table_month td.disable:not(.day-disabled):not(.holiday)::before, .calendarWrap .table_month td .disableText {font-size:11rem;}
  .calendarWrap .table_month td .disableText {padding-top:5rem;}

  .calendarWrap .table_month td.today::before {top:65%;}
  .calendarWrap .statusItem .dot {width:8rem; height:8rem;}
  .statusItem {font-size:14rem;}
  .table_month .statusItem {font-size:11rem;}
  .grp_list_renew .target {font-size:15rem;}
  .grp_list_renew .birthday {font-size:15rem;}
  .grp_list_renew .birthday:before {height:13rem; margin:0 10rem;}

  .medicalList li .pic {width:100rem;}
}
@media screen and (max-width:580px) {

  .box_map .map_hospital_info .medicalList li {max-width:calc(100% - 40rem) !important;}
  #ocare_footer {padding-bottom:0 !important;}
  .bottom-nav {height:80rem;}
  .bottom-nav .icon {width:23rem; height:28rem;}
  .bottom-nav__label {font-size:15rem;}
  /* .bottomFixed.active {position:fixed; bottom:80rem; left:0;} */
  .bottomFixed >div {height:50rem;}
  /* 03_마이페이지 */
  .gateList li dt {font-size:16rem;}
  .grp_list_renew .info_renew .name {margin-right:15rem;}
  .grp_list_renew .listInfo .center::after {display:none;}
  .grp_list_renew .listInfo {flex-wrap:wrap;}
  .grp_list_renew .listInfo span:nth-child(3) {width:100%; margin-top:5rem;}
  .grp_list_renew .info_renew .name {width:80rem; height:80rem; margin-right:10rem; font-size:16rem; padding:0;}

  .grp_list_renew > .box .condition02 {top:5rem; right:7rem;}
  .grp_list_renew > .box .condition02 .completed {font-size:15rem; height:27rem; letter-spacing:-0.8px;}
  .grp_list_renew > .box .patient {max-width:calc(100% - 100rem);}
  .grp_list_mypage > .box .patient {}
  .grp_list_renew .infoText {font-size:15rem; word-break:keep-all; margin-top:5rem;}
  .grp_list_renew .position {font-size:18rem;}
  .pageTit {font-size:19rem; margin-bottom:15rem;}

  .grp_list_renew04 > .box {padding:15rem 10rem;}
  .grp_list_renew04 .info_renew {padding-left:95rem;}
  .grp_list_renew04.current .box .info_renew .name {top:15rem; left:10rem;}
  .grp_list_renew04 .statusText {top:10rem; right:10rem;}  
  .grp_list_renew04 > .box .patient {max-width:100%;}  

  /* .grp_list_renew > .box .patient {width:100%;} */
  .grp_list_renew05 .box .hospitalInfo {margin-left:90rem; position:relative; margin-top:10rem;}
  .grp_list_renew05 .positionType01_2 {margin:5rem 0 10rem 0;}
  .grp_list_renew05 .listInfo {flex-wrap:initial; margin-bottom:10rem;}  
  .grp_list_renew05 .listInfo span:last-child {width:fit-content; margin-top:0;}



  .title_my_result strong:nth-child(2) {display:none;}

  .calendarWrap .table_month td {height:70rem;}
  .calendarWrap .table_month td .condition {margin-top:5rem;}
  .calendarWrap .statusItem {line-height:1;}
  .calendarWrap .statusItem .dot {width:7rem; height:7rem; margin-right:3rem;}
  .calendarWrap .table_month td .statusItem:not(:last-child) {margin-bottom:3rem;}
  .box_info_calendar {padding:15rem 20rem;}
  .box_info_calendar .comment {font-size:17rem; line-height:1.3;}
  .box_info_calendar .infoText dl dt,
  .box_info_calendar .infoText dl dd {font-size:14rem;}

  .box_info_calendar .btns button {height:45rem; font-size:14rem;}


  .grp_list_renew .target {font-size:14rem;}
  .grp_list_renew .birthday {font-size:14rem;}
  .grp_list_renew .birthday:before {height:10rem; margin:0 6rem;}  
}
@media screen and (max-width:480px) {
  /* 마이페이지 */
  .gateList li dt {font-size:14rem; letter-spacing:-1px;}
  /* 03_대시보드 */
  .dashboardLinkBox ul li:nth-child(1), .dashboardLinkBox ul li:nth-child(2), .dashboardLinkBox ul li:nth-child(3) {margin-bottom:18rem;}
  .dashboardLinkBox ul li a .icon {max-width:65%; height:auto;}
  .dashboardLinkBox ul li span {font-size:14rem; margin-top:15rem;}
  .subTopArea .txt_type01 {gap:5rem;}
  .subTopArea .textBox .txt_title {font-size:22rem;}
  .subTopArea .txt_type01 a {font-size:12rem; width:60rem;}
  .subTopArea .txt_type01 p {font-size:13rem; letter-spacing:-0.6px;}

  .region-card_mo ul li {padding:0 10rem;}
  .region-card li .label,
  .region-card li .count {font-size:13rem;}

  .calendarWrap .table_month td {height:65rem;}
  .calendarWrap .table_month td.disable::before,
  .calendarWrap .statusItem,
  .calendarWrap .table_month td.disable:not(.day-disabled):not(.holiday)::before {font-size:11rem;}
  .calendarWrap .statusItem .dot {width:8rem; height:8rem;}
  .calendarWrap .table_month td.today .day:after {top:3rem; right:3rem; height:11rem; line-height:9rem;}
  .list_dot01>li.blackText {font-size:13rem;}
  .box_info_calendar .comment {font-size:16rem;}
  .table_month th {height:30rem; line-height:30rem;}

  .selectMedicalExam .titBox p {padding:17rem 15rem; font-size:19rem; line-height:1;}
  .selectMedicalExam .titBox p span {font-size:15rem;}

  .selectMedicalExam .boxType01 .title {font-size:18rem;}
  .selectMedicalExam .boxType01 .desc {font-size:14rem; line-height:1.2;}

  .grp_list_mypage01 .info_renew {max-width:calc(100% - 90rem);}
  .grp_list_renew > .box .condition button, .box .conditionRenew button {
    font-size:14rem;
    border-bottom-left-radius:25rem;
    letter-spacing:-0.6px;
  }
  .grp_list_renew .birthday:before {margin:0 5rem;}

  .grp_list_renew .target,
  .grp_list_renew .birthday {font-size:13rem;}
  .grp_list_renew .birthday {letter-spacing:-0.8px;}
  .medicalList li .contBottom02 .topBox {margin-bottom:10px;}

  .grp_list_renew04 .positionType01 .position {max-width:calc(100% - 85rem);}
}
@media screen and (max-width:420px) {
  .calendarTopBox .btn_type_search {min-width:130rem !important; font-size:14rem; padding:0;}
  .calendarTopBox .btn_type_search option {text-align:left; align-items:flex-start;}
  .calendarTopBox .upper_calendar {display:flex; flex-direction:row; align-items:center;}
  .calendarTopBox .btn_type_search,
  .calendarTopBox .upper_calendar .btn_prev_month, 
  .calendarTopBox .upper_calendar .btn_next_month,
  .calendarTopBox [class*='_lg'] {
    height:35rem;
  }
  .upper_calendar .btn_prev_month, 
  .upper_calendar .btn_next_month {
    width:35rem;
    background-size:15rem 15rem !important;
  }
  .calendarWrap .table_month td>a, .calendarWrap .table_month td>div {padding:2rem;}
  .table_month th {height:25rem; line-height:25rem;}  
  .calendarWrap .table_month td {height:58rem;}
  .calendarWrap .table_month td .condition {margin-top:2rem;}
  .calendarWrap .statusItem .dot {width:7rem; height:7rem;}
  .table_month td .day {font-size:11rem; display:block; padding-top:5rem;}

  .detailWrap02 .groupHeader {padding:12rem 10rem;}
  .detailWrap02 .groupHeader .title {font-size:13rem; width:100rem;}
  .detailWrap02 .groupHeader .titBox .text {width:auto; flex:1; font-size:13rem;}
  .detailWrap02 .arrowText {font-size:13rem;}
  .groupHeader .caret {width:20rem; height:20rem;}
  .detailWrap > ul > li.groupBox {border-radius:10rem;}
  .grp_list_renew .info_renew .name {width:62rem; height:62rem; font-size:13rem; margin-right:8rem;}
  .grp_list_renew .info_renew .name span {height:75%; letter-spacing:-0.8rem;}
  .grp_list_renew04 .info_renew {padding-left:75rem;}
  .grp_list_renew .position{font-size:16rem; line-height:1.2;}
  .grp_list_renew .listInfo span {font-size:15rem;}
  .grp_list_renew .box .hospitalInfo .infoStatus {font-size:12rem;}
  .grp_list_renew .box .hospitalInfo .infoName {font-size:17rem;}
  .grp_list_renew .box .hospitalInfo .date {font-size:15rem;}  
  .grp_list_renew .listInfo .center:before {height:15rem;}
  .grp_list_renew04 .position {font-size:18rem;}

  .grp_list_individual .box .hospitalInfo {margin-top:0; margin-left:70rem;}
  .grp_list_individual > .box .patient {width:calc(100% - 75rem);}

  .grp_list_mypage01 .box .condition .reserve, .grp_list_mypage01 > .box .condition .completed {font-size:14rem !important;}

  .grp_list_renew04 .positionType01_2 .position {max-width:calc(100% - 75rem);}
}
@media screen and (max-width:380px) {
  .gateList li dt {font-size:14rem; letter-spacing:-1px;}

  .calendarWrap .table_month td {height:50rem;}

  .calendarWrap .table_month td.disable::before{font-size:8rem;}
  .statusItem {font-size:13rem;}
  .statusItem .dot {position:relative; top:-1rem;}
  .calendarWrap .table_month td.disable::before, .statusItem, .calendarWrap .table_month td.disable:not(.day-disabled):not(.holiday)::before,
  .table_month .statusItem,  .calendarWrap .table_month td .disableText {font-size:10rem;}
  .list_dot01>li.blackText {font-size:12rem;}

  .calendarWrap .table_month td .day,
  .calendarWrap .table_month td.today .day:after {font-size:8rem;}
  .table_month td .day {line-height:1;}
  .visualTop .inner {padding:0 20rem 20rem 20rem;}
  .visualTop .tit {font-size:19rem;}
  .visualTop .tit {padding:20rem 0 15rem 0;}
  .visualTop ul li p::before {font-size:16rem;}
  .visualTop ul li p {width:35rem; height:35rem;}

  .mypageGateCard .section-title, .m_section-title, .pageTopTitBox .lfTit {font-size:17rem;}
  .list_dot01>li {font-size:13rem;}
  .list_dot01>li:before {margin:4rem 3rem 0 0;}
  .mypageGateCard .info-list .value, .mypageGateCard .info-list .valueBetween span {font-size:14rem; }
  .totalPriceText .price, .totalPriceText {font-size:17rem;}
  .table02 tbody tr td.priceRight {font-size:15rem;}
  .mypageGateBox02 .priceTableWrap tr {padding:7rem 0;}
  .mypageGateCard {padding:15rem;}

  .hospital-category-wrap .tippy-box, .box_map .map_hospital_info .tippy-box {max-width:280rem; left:-20rem;}

  .box_map .map_hospital_info .cont {padding:0;}
  .box_map .map_hospital_info .hospital-category-wrap {}

  .grp_list_mypage01 .info_renew {max-width: calc(100% - 75rem);}
}

/* 로그인 반응형 */
@media screen and (max-width:590px) {
  .loginRenew02 {width:calc(100% - 40rem);}
  .loginTypeBox01 {flex-direction:column; margin:20rem 0;}
  .loginTypeBox01 li:nth-child(1) {border-right:none; border-bottom:1rem solid #ececec;}
  .loginTypeBox01 li {width:100%;}
  .loginTypeBox01 li p {font-size:14rem;}
  .loginTypeBox01 li p br {display:none;}
  .loginTypeBox01 li p .br {display:block;}
  .loginTypeBox01 li a {padding:30rem 0;}
}
@media screen and (max-width:430px) {

  .loginRenew_header .lfLogo {width:120rem;}
  .loginInner .title {font-size:20rem; letter-spacing:-1px; line-height:1.6;}
  .loginRenew_sns .loginRenew_sns_title {margin-top:20rem; margin-bottom:15rem;}
}
@media screen and (max-width:410px) {
  #ocare_header {height:50rem;}
  .logo_ocare {width:130rem; height: 24.4rem;  background:url('../images/logo_MYONECARE.png') no-repeat center; background-size: 100% 100%;}
  .logo_corp {flex:1;}

  .footerRenew .company-links {gap:10rem;}
  .login_utils li:not(:last-child) {margin-right:30px;}
  .login_utils li:not(:last-child)::after {right:-15px;}
  .footerRenew .footInfo p {letter-spacing:-1px;}
  .loginRenew_sns .loginRenew_sns_title {font-size:16rem;}

  .loginTypeBox01 li a {padding:20rem 0;}
  .loginTypeBox01 li h3 {font-size:19rem; margin-bottom:12rem;}
  .loginTypeBox01 li .icon {width:80rem; height:80rem; margin:0 auto 15rem auto;}
  .loginTypeBox02 li:not(:last-child) {margin-bottom:12rem;}
  
}
@media screen and (max-width:380px) {
  .loginInner .title {font-size:18rem; line-height:1.5;}
  .inputStyle li > div {height:40rem;}
  .inputStyle input {font-size:15rem; text-indent:30rem;}
  .inputStyle .icon {left:5rem; width:15rem;}
  .custom-checkbox span {width:22rem; height:22rem; margin-right:7rem;}
  .custom-checkbox input[type="checkbox"]:checked + span::after {left:6rem; top:1.5rem;}
  .btn-login {font-size:15rem; height:43rem; line-height:43rem;}
  .login_utils li a {font-size:12rem;}
  .loginRenew_sns .loginRenew_sns_title {font-size:15rem; margin-bottom:18rem;}

  .grp_list_renew04 .info_renew {
      padding-left: 68rem;
  }  
  .box_map .map_hospital_info .medicalList .list_03 li .location {
    min-height:55rem;
  }
}
@media screen and (max-width:330px) {
  .login_utils li:not(:last-child) {margin-right:15px;}
  .login_utils li:not(:last-child)::after {right:-7.5px;}
}


.popup .topTitle01 .moBr {display:none;}

@media screen and (max-width:1024px) {
  .popup.detailPop02 .pop_cont {padding:35rem 20rem 20rem 20rem;}
  .candidate-list li .name strong {font-weight:500;}
    .PersonalTestPop .table02 thead th:first-child {
    border-top-left-radius:6rem;
    border-bottom-left-radius:6rem;
  }
  .PersonalTestPop .table02 thead th:last-child {
    border-top-right-radius:6rem;
    border-bottom-right-radius:6rem;    
  }  
  .PersonalTestPop .table02 thead th:nth-child(3) {
    display:none;
  }
  .PersonalTestPop .table02 tr th:first-child, 
  .PersonalTestPop .table02 tr td:first-child {
      text-align: left;
      border-radius: 6rem 0 0 6rem;
  }  
  .PersonalTestPop .table02 thead tr th {
      font-weight: 400;
      color: #747d97;
      background: #f4f4f8;
  }
  .PersonalTestPop .table02 th, 
  .PersonalTestPop .table02 td {
      padding: 10rem;
      font-size: 14rem;
      box-sizing:border-box;
  }  
  .PersonalTestPop .table02 tr {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    padding:0;
    gap:0;
    width:100%;
    border-radius:6px;
    margin:2px 0;
  }
  .PersonalTestPop .table02 tr td {
    font-size: 14rem;
    font-weight:300;
    width:100%;
  }
  .PersonalTestPop .table02 tr th:nth-child(1),
  .PersonalTestPop .table02 tr td:nth-child(1) {
    width:calc(100% - 50rem) !important;
    padding:10rem;
    font-weight:400;
  }  
  .PersonalTestPop .table02 th:nth-child(2),
  .PersonalTestPop .table02 tr td:nth-child(2){
    width:50rem !important;
    margin:0 !important;
    text-align:center;
  }
  .PersonalTestPop .table02 tbody tr td:last-child {
    width:100% !important;
    text-align:left;
    padding-top:0;
  }
  .PersonalTestPop .table02 tbody tr .blue {
    font-weight:400;
    color:#2461ab;
  }
  .grp_list_re.resultRenew .statusText {display:block;}
  .grp_list_re.resultRenew .box .conditionRenew .reserve {display:none;}
  .grp_list_re.resultRenew .box .condition {border-bottom:none; height:auto; padding:0;} 
  .grp_list_re.resultRenew .box .condition button {border-top-left-radius:0; border-bottom-left-radius:0; border-bottom-right-radius:0; width:110rem; letter-spacing:-1rem;}    
  .grp_list_re.resultRenew .box .info_re01 {padding:20rem;}
  .grp_list_re.resultRenew .box .medical .d-flex {flex-direction:column; align-items:flex-start !important; gap:5rem;}
  .grp_list_re.resultRenew .box .medical .d-flex .hospital-name {order:2;}
  .grp_list_re.resultRenew .box .medical .d-flex div {margin-left:0 !important;}
  .grp_list_re.resultRenew .box .patient br {display:none;}
  .info_link_year select {margin-top:0;}
  .grp_list_re.resultRenew .social:before {
        display: inline-block;
        content: '';
        width: 1rem;
        height: 20rem;
        margin: 0 10rem;
        vertical-align: middle;
        background: #dddeea;
    }  
    .detailPop02 .table02 tbody tr,
    .checkupDetail02 .table02 tbody tr {
      justify-content:space-between;
    }
    .detailPop02 .table02 tbody tr td:first-child {
      width:calc(100% - 50rem);
    }
    .detailPop02 .table02 tbody tr td:nth-child(2),
    .checkupDetail02 .table02 tbody tr td:nth-child(2) {
      text-align:right;
      margin-right:0;
      padding-left:0;
    }
    .checkupDetail .tableTitBox {
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:space-between;
    }
    .checkupDetail .tableTitBox .moText {
      display:block;
    } 
    .tableTitBox01 {
      margin-bottom:10rem;
      padding-right:10rem;
    }
    .tableTitBox01 .title {
      margin-bottom:0;
    }
    .detailPop02 .table02 tbody tr td:last-child,
    .checkupDetail02 .table02 tbody tr td:last-child {
      width:100%;
      text-align:left;
      padding-left:0;
    }
}
/* s:팝업 반응형 */
@media (max-width: 800px) {
  .popup .pop_inner {
      height:auto;
  }  
  .popup .pop_head {
      padding: 0 30rem;
  }
  .popup.basic {padding:0;}
  .popup {justify-content:end;}
  .popup .pop_inner,
  .popup.basic .pop_inner {border-bottom-left-radius:0; border-bottom-right-radius:0; max-height:calc(100vh - 55rem);}

  .popup.basic .pop_cont {padding:25rem 20rem 0 20rem;}
  .popup.basic .form_cont dt::before {content:'ㆍ';}
  .popup .pop_cont {max-height:initial; overflow-y:auto;}
  .PersonalTestPop .table02 thead {
      display: flex;
      overflow:hidden;
  }  

}

@media screen and (max-width:720px) {
  .popup .topTitle01 {font-size:16rem; line-height:1.4; margin-bottom:15rem;}
  .popup .topTitle01 .moBr {display:block;}
  .popupBtnBox {margin-top:20rem;}

  .grp_list_renew03 {gap:10rem;}
  .grp_list_renew03 > .box {padding:5rem 5rem 5rem 20rem; min-height:auto;}
  .packageText dt {font-size:20rem; margin-bottom:8rem; font-weight:700;}
  .packageText dd {font-size:15rem;}
  .packageBtn button {width:100rem;}

  .quick_wrap.only-mobile {bottom:100rem;}
}
@media screen and (max-width:680px) {
  .popup .pop_cont {padding:25rem 20rem;}
  .popup540 .pop_inner  {width:100%; height:auto; border-bottom-left-radius:0; border-bottom-right-radius:0;}
  .checkupDetail .pop_cont {padding:25rem 20rem 0 20rem;}
}
@media screen and (max-width:480px) {  

  .popup .checkList li input[type=checkbox]+label:before {width:20rem; height:20rem;}
  .popup .conArea input[type=radio]+label:before {width:18rem; height:18rem;}
  .popup input[type=radio]+label span {margin-left:5rem;}
  .popup .popTypeBox .titArea {width:80rem;}
  .popup .popTypeBox .titArea h4 {font-size:15rem;}
  .popup .popTypeBox .conArea {width:calc(100% - 80rem);}
  .popup .checkList li label span {font-size:13rem; margin-left:5rem;min-width:40rem;}
  .popup .checkList li label span.blue {font-size:12rem; margin-left:2rem;}
  .popup .checkList li button {font-size:12rem; padding:0 5rem; height:22rem;min-width:33rem;}
  .popup .conArea .grp_radio label {margin-right:15rem;} 
  .popup .popTypeBox {padding:15rem 0;}
  .popup .topTitle01 {font-size:15rem; margin-bottom:10rem;} 
  .popup .popTypeBox .userInfo dt {font-size:13rem;}
  .popup .popTypeBox .userInfo dd {font-size:14rem;}
  .popup .conArea input[type=radio]+label {font-size:13rem;}
  .popup .conArea .selectType01 {font-size:13rem; height:35rem;}
  .popup .checkList li:not(:last-child) {margin-bottom:7rem;}
}
@media screen and (max-width:380px) {
  .popup .checkList li:not(:last-child) {margin-bottom:5rem;}
  .popup .popTypeBox .userInfo li:not(:last-child) {margin-bottom:3rem;}
  .popupBtnBox {margin-top:15rem;}
  .popup .pop_head .pop_title {font-size:18rem;}
  .popup .popTypeBox {padding:10rem 0;}
  .popupBtnBox {margin-top:10rem;}
  .popup .popTypeBox .titArea {width:72rem;}
  .popup .popTypeBox .titArea h4 {font-size:14rem; letter-spacing:-0.6px;}
  .popup .popTypeBox .conArea {width:calc(100% - 72rem);}
  .popup .checkList li input[type=checkbox]+label:before {width:18rem; height:18rem;}
}
/* e:팝업 반응형 */

.dashboard {
  /* 표준 속성 */
  user-select: none;
  
  /* 구형 브라우저 및 특정 엔진 대응 */
  -webkit-user-select: none; /* Safari, Chrome, Opera */
  -moz-user-select: none;    /* Firefox */
  -ms-user-select: none;     /* Internet Explorer/Edge */
}
.noResult {
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:500rem;
  font-size:17rem;
}

@media (max-width: 1200px) {
  .noResult {min-height:initial; padding:50rem 0 20rem 0;}
}
.compareBtn {
  position:relative;
}
.compareBtn p {
  display:block;
  position:absolute;
  bottom:47rem;
  left:50%; transform:translateX(-50%);
  width: 175rem;
  height:28rem;
  line-height:28rem;
  font-size: 13rem;
  background-color:#444444;
  font-weight:300;
  border-radius:5rem;
  color: rgba(255, 255, 255, 0.702);
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:3.5rem;
}
.compareBtn .ico {
  width:20rem;
  height:20rem;
  border-radius:50%;
  background-color:#fff;
  position:relative;
}
.compareBtn .ico img {
  max-width:70%;
  position:absolute;
  top:52%;
  left:50%;
  transform:translate(-50%,-50%);
}
.compareBtn p img {
  width:15rem !important;
}
.compareBtn p::after {
  content: "";
  position: absolute;
  bottom: -6px; /* 삼각형 위치 */
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 6px 4px 0 4px; /* 세로 8px, 가로 10px */
  border-color: #4a4a4a transparent transparent transparent;
}
.compareText02 {
    display: none;
}
.compareHospital .moText {display:none;}
.compareHospital .table01 th .pcText,
.compareHospital .table01 th .moText {font-size:12rem;}
.compareHospital .table01 .thTit {padding:0 !important;}
.compareHospital .table01 .thTit p {font-size:1em;}

.compareTable tr:first-child th {
  text-align:left !important;
  border-top:none;
}
.compareTable {border-top:none !important;}
.compareTable tr td:nth-child(1){
  background: #fafafc;
  font-weight: normal;
  text-align: left;
  padding: 12rem;
  font-size: 12rem;
  border-left:none;
  position:relative;
}

@media screen and (min-width:1200px) {
  .compareHospital table {table-layout:initial;}
  .compareHospital .table01 th,
  .compareHospital .table01.compareTable td:nth-child(1) {width:auto;}
  .compareHospital .table01 td,
  .compareHospital .table01.compareTable td:nth-child(2),
  .compareHospital .table01.compareTable td:nth-child(3),
  .compareHospital .table01.compareTable td:nth-child(4) {
    width:285px;
  }   
}
@media screen and (min-width:1024px) {
  .compareHospital table {table-layout:initial;}
  .compareHospital .table01 th,
  .compareHospital .table01.compareTable td:nth-child(1) {width:auto;}
  .compareHospital .table01 td,
  .compareHospital .table01.compareTable td:nth-child(2),
  .compareHospital .table01.compareTable td:nth-child(3),
  .compareHospital .table01.compareTable td:nth-child(4) {
    width:250px;
  }   
}
.compareTable tr td:nth-child(1) {
  width:150rem !important;
}
.compareTable th {width:150rem;}
.compareTable tr td:nth-child(1) label {
  font-size:1em;
}
@media (max-width: 1200px) {
  .compareHospital .pcText {display:none;}
  .compareHospital .moText {display:block; text-align:center;}
  .compareHospital .pop_cont {padding:0 !important;}
  .compareHospital .pop_comment02 {
    padding:0 20rem;
  }
  .compareHospital .table01 {
    width: 100%;
    /* table-layout: fixed;  */
    overflow-x:hidden;
    margin:0 !important;
  }  
    .compareHospital table {
      table-layout:initial;
    }
}
@media (max-width: 1024px) {
  .compareHospital tr:first-child td {padding:20rem 0;}
  .compareHospital .table01 tr,
  .compareHospital .table01 th,
  .compareHospital .table01 td {height:initial !important;}
  .compareHospital .table01 .thTit {display:none;}
  .compareHospital .col-2,
  .compareHospital .col-3,
  .compareHospital .col-4 {width:8px;}  
}
@media (max-width:480px) {
    .compareBtn p {line-height:29rem;}
}