/* 공통 CSS */

:root {
  --main-color: #077f83;

  /* weight */
  --weight_extra_bold: 800;
  --weight_bold: 700;
  --weight_semi_bold: 600;
  --weight_medium: 500;
  --weight_regular: 400;
  --weight_light: 300;
}

@media print {
  html,
  body {
    -webkit-print-color-adjust: exact;
    width: 210mm;
    height: 297mm;
  }
  table {
    page-break-inside: auto;
  }
  tr {
    page-break-inside: avoid;
    page-break-after: auto;
  }
  thead {
    display: table-header-group;
  }
  tfoot {
    display: table-footer-group;
  }
}

a {
  cursor: pointer;
}
#exitText {
  font-size: 16px;
  line-height: 20px;
  color: #808080;
}
#container {
  width: 1440px;
  margin: 0 auto;
}
.mb_0 {
  margin-bottom: 0 !important;
}
.text_center {
  text-align: center !important;
}
.text_left {
  text-align: left !important;
}
.hidden {
  overflow: hidden;
}
.mo_table {
  display: none;
}
.mo_table_2 {
  display: none;
}
.mo_table_3 {
  display: none;
}
.thumbnail_title {
  background-color: #e01793;
  color: white;
  height: 240px;
  font-size: 30px;
  line-height: 50px;
  padding: 42px 30px;
  text-align: right;
  box-sizing: border-box;
}
.thumbnail_title > div {
  font-size: 40px;
  line-height: 60px;
  font-weight: bold;
  word-break: keep-all;
}
.validation_font {
  font-size: 12px;
  color: red;
  margin-top: 5px;
  display: block;
}

/* 헤더 */

.top_banner {
  width: 100%;
  height: 130px;
  background: url(../img/top_banner_20250401.png) no-repeat center / cover;
  position: relative;
}
.top_banner a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  /* padding: 25px 0px; */
  height: 130px;
}
.top_banner .text_box {
  text-align: center;
}
.top_banner .text_box span {
  color: rgba(255, 255, 255, 0.6);
  font-family: "GmarketSans", sans-serif;
  font-weight: var(--weight_light);
  font-size: 16px;
  display: block;
  margin-bottom: 10px;
}
.top_banner .text_box h3 {
  color: #fff;
  font-family: "GmarketSans", sans-serif;
  font-weight: var(--weight_bold);
  font-size: 30px;
  margin-bottom: 15px;
}
.top_banner .text_box h3 br {
  display: none;
}
.top_banner .text_box p {
  color: rgba(255, 255, 255, 0.6);
  font-family: "GmarketSans", sans-serif;
  font-weight: bold;
  font-size: 20px;
}
.top_banner #tbClose {
  color: #fff;
  font-weight: var(--weight_semi_bold);
  font-size: 14px;
  position: absolute;
  right: 16px;
  bottom: 14px;
  display: flex;
  align-items: center;
}
.top_banner #tbClose img {
  margin-left: 5px;
}

.top_banner.active .text_box h3 {
  margin-bottom: 0;
}
.top_banner.active .text_box span,
.top_banner.active .text_box p {
  display: none;
}
.top_banner.active #tbClose img {
  transform: rotate(180deg);
}

#header {
  width: 100%;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  margin-bottom: 45px;
  position: sticky;
  top: 0;
  z-index: 10000;
  background: #fff;
}
#header.none_box_shadow {
  box-shadow: none !important;
  margin-bottom: 0 !important;
}
#header.fixed {
  position: unset;
}
#header #container {
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#header .logo {
  flex: 30% 0 0;
}
#header .logo img {
  height: 28px;
}
#header nav {
  flex: 55% 0 0;
}
#header nav > ul {
  display: flex;
  align-items: center;
}
#header nav > ul > li {
  margin-right: 50px;
}
#header nav > ul > li .sub_menu {
  display: none;
}
#header nav > ul > li:last-child {
  margin-right: 0;
}
#header nav > ul > li a {
  font-size: 22px;
  font-weight: var(--weight_bold);
  transition: all 0.3s;
}
#header nav > ul > li a:hover {
  color: var(--main-color);
}
#header .member {
  flex: 15% 0 0;
}
#header .member ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
#header .member ul li a {
  font-size: 16px;
  font-weight: var(--weight_bold);
  color: var(--main-color);
}
#header .member ul .login_btn a,
#header .member ul .logout_btn a {
  transition: all 0.3s;
  font-size: 16px;
  color: #fff;
  display: inline-block;
  padding: 15px 30px;
  border-radius: 15px;
  background: var(--main-color);
  margin-left: 15px;
}
#header .member ul .login_btn a:hover,
#header .member ul .logout_btn a:hover {
  background: #076669;
}
#header .mobile {
  display: none;
}
#header nav > ul > li.family {
  display: none;
}
#header.active #container nav > ul > li.family .sub_menu li {
  width: auto;
  margin-right: 28px;
}

/* 메인 컨텐츠 */

.main_visual {
  width: 100%;
  padding: 45px 0px 90px;
}
.main_visual .swiper {
  position: relative;
  border-radius: 50px;
  overflow: hidden;
}
.main_visual .swiper-slide a {
  display: block;
  width: 100%;
  border-radius: 50px;
  overflow: hidden;
}
.main_visual .swiper-slide img {
  width: 100%;
}
.main_visual .swiper-pagination {
  position: absolute;
  left: 154px;
  bottom: 63px;
  z-index: 10;
  display: flex;
}
.main_visual .swiper-pagination .swiper-pagination-bullet {
  cursor: pointer;
  transition: all 0.3s;
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, 0.5);
  opacity: 1;
  margin: 0 6px;
}
.main_visual
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #fff;
  width: 47px;
  border-radius: 6px;
}

.msc_1 {
  width: 100%;
  background: #f7f7fc;
  padding: 200px 0px;
}
.msc_1 #container {
  position: relative;
}
.msc_1 .msc_1_nav {
  width: 100%;
  background: #fff;
  position: absolute;
  top: -255px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  display: flex;
  justify-content: center;
}
.msc_1 .msc_1_nav ul {
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.msc_1 .msc_1_nav ul li {
  margin-right: 60px;
  padding-right: 60px;
  border-right: 1px solid #ddd;
}
.msc_1 .msc_1_nav ul li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}
.msc_1 .msc_1_nav ul li a {
  font-size: 22px;
  font-weight: var(--weight_bold);
}
.msc_1 .msc_1_nav ul li a:hover {
  color: var(--main-color);
}

.msc_1 .msc_1_1 {
  margin-bottom: 100px;
}
.msc_1 .msc_1_1 ul {
  display: flex;
  justify-content: center;
}
.msc_1 .msc_1_1 ul li {
  margin-right: 160px;
  text-align: center;
}
.msc_1 .msc_1_1 ul li:last-child {
  margin-right: 0;
}
.msc_1 .msc_1_1 ul li p {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin-bottom: 25px;
}
.msc_1 .msc_1_1 ul li p b {
  color: var(--main-color);
}
.msc_1 .msc_1_1 ul li span {
  font-size: 18px;
}

.msc_1 .msc_1_2 .text_box {
  text-align: center;
  margin-bottom: 70px;
}
.msc_1 .msc_1_2 .text_box h3 {
  font-size: 60px;
  font-weight: var(--weight_bold);
  margin-bottom: 25px;
}
.msc_1 .msc_1_2 .text_box h3 br {
  display: none;
}
.msc_1 .msc_1_2 .text_box p {
  font-size: 18px;
  line-height: 1.5;
}
.msc_1 .msc_1_2 ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.msc_1 .msc_1_2 ul li {
  width: calc(33.3% - 24px);
  position: relative;
}
.msc_1 .msc_1_2 ul li .img_box {
  border-radius: 24px;
  overflow: hidden;
}
.msc_1 .msc_1_2 ul li .img_box img {
  transition: all 0.3s;
  width: 100%;
}
.msc_1 .msc_1_2 ul li:hover .img_box img {
  transform: scale(1.1);
}
.msc_1 .msc_1_2 ul li p {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  font-size: 34px;
  font-weight: var(--weight_bold);
  line-height: 1.5;
}

.msc_2 {
  width: 100%;
  padding: 190px 0px 200px;
}
.msc_2 .single_item {
  margin-bottom: 27px;
}
.msc_2 .box {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
}
.msc_2 .img_box img {
  width: 100%;
}
.msc_2 .text_box {
  position: absolute;
  top: 80px;
  left: 60px;
}
.msc_2 .text_box p {
  font-size: 50px;
  font-weight: var(--weight_bold);
  line-height: 1.5;
  margin-bottom: 22px;
}
.msc_2 .text_box span {
  font-size: 20px;
  line-height: 1.5;
  opacity: 0;
  transition: all 0.2s;
}
.msc_2 a {
  display: inline-block;
  font-size: 20px;
  font-weight: var(--weight_bold);
  color: var(--main-color);
  background: #fff;
  padding: 15px 30px;
  border-radius: 19px;
  position: absolute;
  left: 60px;
  bottom: 80px;
  transition: all 0.3s;
}
.msc_2 a:hover {
  /* background: var(--main-color); */
  /* color: #fff; */
}
.msc_2 .logo {
  position: absolute;
  right: 60px;
  bottom: 80px;
}
.msc_2 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.msc_2 ul li {
  width: calc(50% - 13.5px);
  margin-bottom: 27px;
}
.msc_2 ul li:hover .img_box {
  background-color: var(--main-color);
}
.msc_2 ul li:hover .img_box img {
  opacity: 0;
}
.msc_2 ul li:hover .text_box p {
  color: #ffffff;
}
.msc_2 ul li:hover .text_box span {
  opacity: 1;
  color: #ffffff;
}

.msc_3 {
  width: 100%;
  padding: 190px 0px 200px;
  background: #f7f7fc;
}
.msc_3 h3 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin-bottom: 80px;
  text-align: center;
}
.msc_3 .swiper_2 {
  width: 100%;
  overflow: hidden;
  padding: 0px 20px 20px;
  box-sizing: border-box;
}
.msc_3 .swiper_2 .swiper-slide a {
  display: block;
  width: 100%;
  padding: 50px 40px;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 8px;
  background: #fff;
  box-sizing: border-box;
}
.msc_3 .swiper_2 .swiper-slide .ratings {
  display: flex;
  margin-bottom: 20px;
}
.msc_3 .swiper_2 .swiper-slide .ratings li {
  margin-right: 10px;
}
.msc_3 .swiper_2 .swiper-slide .ratings li img {
  height: 40px;
}
.msc_3 .swiper_2 .swiper-slide p {
  font-size: 24px;
  font-weight: var(--weight_bold);
  margin-bottom: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.msc_3 .swiper_2 .swiper-slide article {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 24px;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin-bottom: 30px;
}
.msc_3 .swiper_2 .swiper-slide span {
  font-size: 13px;
  color: #666;
}

.msc_3 .swiper-pagination {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
.msc_3 .swiper-pagination .swiper-pagination-bullet {
  cursor: pointer;
  transition: all 0.3s;
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 0;
  background: rgba(201, 201, 201, 0.5);
  opacity: 1;
  margin: 0 6px;
}
.msc_3
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #c9c9c9;
  width: 47px;
  border-radius: 6px;
}

.msc_4 {
  width: 100%;
  padding: 190px 0px 200px;
}
.msc_4 .msc_4_title {
  text-align: center;
}
.msc_4 .msc_4_title h3 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin-bottom: 30px;
}
.msc_4 .msc_4_title p {
  font-size: 20px;
  line-height: 1.5;
}
.msc_4 .notice_box {
  width: 100%;
  margin-bottom: 80px;
}
.msc_4 .notice_box table {
  width: 100%;
}
.msc_4 .notice_box table tr th,
.msc_4 .notice_box table tr td {
  border-bottom: 1px solid #d8d8d8;
  padding: 20px;
  text-align: left;
  font-size: 20px;
  vertical-align: middle;
}
.msc_4 .notice_box table .notice_head {
  display: flex;
  align-items: center;
}
.msc_4 .notice_box table .notice_head img {
  margin-right: 18px;
}
.msc_4 .notice_box table .notice_head span {
  font-size: 20px;
  color: #a4a4a4;
  font-weight: var(--weight_light);
}
.msc_4 .notice_box_2 {
  margin-bottom: 180px;
}
.msc_4 .notice_box_2 .swiper_3 {
  width: 100%;
  overflow: hidden;
  padding: 0px 20px 20px;
  box-sizing: border-box;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a {
  display: block;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 24px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 8px;
  height: 480px;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a:hover {
  border: 1px solid var(--main-color);
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a .img_box img {
  width: 100%;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box {
  padding: 30px 15px;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box p {
  font-size: 20px;
  font-weight: var(--weight_semi_bold);
  margin-bottom: 10px;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box span {
  font-size: 16px;
  display: block;
  margin-bottom: 25px;
  line-height: 1.5;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box i {
  font-size: 14px;
  color: #999;
}
.msc_4 .notice_box_2 .swiper_3 .btn_box {
  display: flex;
  margin-top: 50px;
  flex-direction: row-reverse;
  justify-content: center;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-button-next,
.msc_4 .notice_box_2 .swiper_3 .swiper-button-prev {
  width: 56px;
  height: 56px;
  display: block;
  cursor: pointer;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-button-next {
  background: url(../img/notice_next.png) no-repeat;
}
.msc_4 .notice_box_2 .swiper_3 .swiper-button-prev {
  background: url(../img/notice_prev.png) no-repeat;
  margin-right: 10px;
}

.msc_4 .schedule_box .box {
  display: flex;
  justify-content: space-between;
}
.msc_4 .schedule_box .item {
  width: calc(50% - 12px);
  border-radius: 24px;
  height: 600px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  padding: 70px 60px;
  box-sizing: border-box;
}
.msc_4 .schedule_box .item h3 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin-bottom: 35px;
}
.msc_4 .schedule_box .schedule .date {
  height: 330px;
  overflow-y: auto;
  width: 100%;
  margin-bottom: 30px;
}
.msc_4 .schedule_box .schedule .date::-webkit-scrollbar-track {
  border-radius: 10px;
  background-color: #fff;
}
.msc_4 .schedule_box .schedule .date::-webkit-scrollbar {
  width: 8px;
  background-color: #f5f5f5;
}
.msc_4 .schedule_box .schedule .date::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #6d6e72;
}
.msc_4 .schedule_box .schedule .date li {
  width: 100%;
  padding: 0px 50px;
  background: #fafafa;
  border-radius: 15px;
  height: 80px;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.msc_4 .schedule_box .schedule .date li:last-child {
  margin-bottom: 0;
}
.msc_4 .schedule_box .schedule .date li .dot {
  width: 10px;
  height: 10px;
  border-radius: 30px;
  background: var(--main-color);
  margin-right: 30px;
}
.msc_4 .schedule_box .schedule .date li b {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-right: 50px;
}
.msc_4 .schedule_box .schedule .date li span {
  font-size: 30px;
  font-weight: var(--weight_medium);
}
.msc_4 .schedule_box .schedule .month {
  display: flex;
  align-items: center;
  justify-content: center;
}
.msc_4 .schedule_box .schedule .month li img {
  height: 32px;
}
.msc_4 .schedule_box .schedule .month li a {
  font-size: 24px;
  font-weight: var(--weight_medium);
}
.msc_4 .schedule_box .schedule .month .current a {
  margin: 0px 20px;
}
.msc_4 .schedule_box .event ul {
  display: block;
  height: 100%;
}
.msc_4 .schedule_box .event ul li {
  margin-bottom: 20px;
}
.msc_4 .schedule_box .event ul li .img_wrap {
  height: 283px;
  overflow: hidden;
  position: relative;
}
.msc_4 .schedule_box .event ul li .img_wrap img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.msc_4 .schedule_box .event ul li .txt_wrap {
  margin-top: 24px;
}
.msc_4 .schedule_box .event ul li .txt_wrap .tit {
  display: block;
  font-size: 20px;
  font-weight: 600;
}
.msc_4 .schedule_box .event ul li .txt_wrap .date {
  display: block;
  font-size: 16px;
  margin-top: 12px;
}

.msc_5 {
  width: 100%;
  padding: 190px 0px 50px;
  background: url(../img/msc_5_bg.jpg) no-repeat center / cover;
}
.msc_5 #container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.msc_5 .text_box {
  text-align: center;
  margin-bottom: 130px;
}
.msc_5 .text_box h3 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  color: #fff;
  margin-bottom: 90px;
}
.msc_5 .text_box ul {
  display: flex;
  margin-bottom: 60px;
}
.msc_5 .text_box ul li:first-child {
  /* margin-right: 85px;
  padding-right: 85px; */
  /* border-right: 1px solid #fff; */
}
.msc_5 .text_box ul li {
  font-size: 30px;
  color: #fff;
}
.msc_5 .text_box ul li p {
  line-height: 1.5;
}
.msc_5 .text_box ul li a {
  font-weight: var(--weight_bold);
  color: #fff;
  line-height: 1.5;
}
.msc_5 .text_box span {
  font-size: 20px;
  font-weight: var(--weight_bold);
  color: #fff;
}
.msc_5 .blog_nav {
  width: 100%;
}
.msc_5 .blog_nav ul {
  display: flex;
  justify-content: space-between;
}
.msc_5 .blog_nav ul li {
  width: calc(25% - 12px);
}
.msc_5 .blog_nav ul li a {
  transition: all 0.3s;
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  background: #fff;
  padding: 25px 30px;
  box-sizing: border-box;
  border-radius: 24px;
}
.msc_5 .blog_nav ul li a:hover {
  background: #f0f0f0;
}
.msc_5 .blog_nav ul li a p {
  font-size: 20px;
  font-weight: var(--weight_semi_bold);
}

.bottom_banner_1 {
  width: 100%;
  padding: 50px 0px;
  text-align: center;
  background: url(../img/bottom_banner_1_bg.jpg) no-repeat center / cover;
}
.bottom_banner_1 p {
  font-size: 30px;
  color: #fff;
}

.bottom_banner_2 {
  width: 100%;
  padding: 15px 0px;
  background: #3d3d3d;
  text-align: center;
}
.bottom_banner_2 p {
  color: #fff;
  font-size: 30px;
}

/* 푸터 */

footer {
  width: 100%;
  background: #f1f1f1;
  padding: 50px 0px 80px;
}
footer #container {
  display: flex;
  justify-content: space-between;
}
footer .ft_content {
  width: 1150px;
}
footer .ft_content .ft_top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}
footer .ft_content .ft_top .ft_link {
  display: flex;
  align-items: center;
}
footer .ft_content .ft_top .ft_link li {
  margin-right: 15px;
  padding-right: 15px;
  border-right: 1px solid #444;
}
footer .ft_content .ft_top .ft_link li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}
footer .ft_content .ft_top .ft_link li a {
  font-size: 12px;
  font-weight: var(--weight_semi_bold);
  color: #333;
}
footer .ft_content .ft_middle {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
footer .ft_content .ft_middle .ft_fold {
  width: 280px;
}
footer .ft_content .ft_middle .ft_fold button {
  width: 100%;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
footer .ft_content .ft_middle .ft_fold button.active img {
  transform: rotate(180deg);
}
footer .ft_content .ft_middle .ft_fold .fold_box {
  padding: 20px 15px;
  box-sizing: border-box;
  background: #bfbfbf;
  width: 100%;
}
footer .ft_content .ft_middle .ft_fold .fold_box p {
  font-size: 12px;
  line-height: 1.5;
}
footer .ft_content .ft_middle ul {
  padding: 20px 0px 0px;
}
footer .ft_content .ft_middle ul li {
  display: flex;
  align-items: center;
  font-size: 12px;
  margin-bottom: 15px;
}
footer .ft_content .ft_middle ul li b {
  margin-right: 50px;
  font-weight: var(--weight_semi_bold);
}
footer .ft_content .ft_middle ul li p {
  line-height: 1.5;
}
footer .ft_content .ft_middle ul li p br {
  display: none;
}
footer .ft_bottom ul li {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 1.5;
}
footer .ft_bottom ul li .img_box {
  width: 175px;
}
footer .ft_sub_link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
}
footer .ft_sub_link .sns_link {
  display: flex;
  align-items: center;
}
footer .ft_sub_link .sns_link li {
  margin-left: 5px;
}

/* 서브 CSS */

/* 서브 공통 */

.btn {
  font-size: 16px;
  font-weight: var(--weight_bold);
  padding: 13px 32px;
  border-radius: 15px;
  display: inline-block;
  box-sizing: border-box;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  height: 48px;
  justify-content: center;
}
.normal_btn {
  border: 1px solid var(--main-color);
  background: #fff;
  color: var(--main-color);
}
.normal_btn:hover {
  background: var(--main-color);
  color: #fff;
}
.submit_btn {
  border: 1px solid var(--main-color);
  background: var(--main-color);
  color: #fff;
}
.submit_btn:hover {
  background: #076669;
}
.count {
  display: flex;
  align-items: center;
}
.count button {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f9f9;
  border: 1px solid #eee;
}

.count_value {
  height: 32px;
  width: 32px;
  border: 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  text-align: center;
  background-color: white;
  font-size: 20px;
  line-height: 32px;
  box-sizing: border-box;
}
.price_box {
  display: flex;
}
.price_box .discount {
  font-size: 16px;
  color: #ff1f1f;
  font-weight: var(--weight_medium);
}
.price_box .price {
  font-size: 16px;
  font-weight: var(--weight_bold);
  margin-left: 10px;
}
.price_box .price b {
  font-size: 16px;
  font-weight: var(--weight_regular);
}
.price_box .tag_price {
  font-size: 16px;
  font-weight: var(--weight_medium);
  color: #aaaaaa;
  text-decoration: line-through;
  margin-left: 10px;
}
.select_box {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.select_box select {
  padding: 15px 10px;
  border: 1px solid #eee;
  font-size: 16px;
  color: #999;
  width: calc(50% - 8px);
  appearance: none;
  background: url(../img/select_arrow.png) no-repeat right 10px center;
}
.pagination {
  margin-top: 30px;
}
.pagination ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination ul .active a {
  font-weight: var(--weight_bold);
  color: var(--main-color);
  text-decoration: underline;
}
.pagination ul li a {
  font-size: 16px;
  padding: 0px 5px;
  display: inline-block;
}
.pagination ul li a img {
  height: 24px;
}
#paymentModalContainer .modal {
  display: block;
  background-color: white;
}
.modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.modal a.close-modal {
  display: none;
}
#paymentModalContainer {
  display: block;
}
.modal {
  max-width: fit-content;
  border-radius: 30px;
  padding: 0;
}
.modal .box {
  padding: 50px;
  box-sizing: border-box;
}
.modal_background {
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
}
.modal_background a {
  cursor: pointer;
}
/* .top_banner.sub_top_banner {
  height: 80px;
}
.top_banner.sub_top_banner .text_box h3 {
  margin-bottom: 0;
} */

.sub_second_banner {
  width: 100%;
  height: 300px;
  background: #eeeeee;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sub_second_banner h3 {
  font-size: 50px;
  color: #fff;
  font-weight: var(--weight_bold);
}
.sub_second_banner.visit_test {
  background: url(../img/visit_test_sub_second_bg.jpg) no-repeat center / cover;
}
.sub_second_banner.test_center {
  background: url(../img/test_center_sub_second_bg.jpg) no-repeat center / cover;
}
.sub_second_banner.otpc {
  background: url(../img/otpc_sub_second_bg.jpg) no-repeat center / cover;
}

.sub_banner {
  width: 100%;
  padding: 0px 0px 45px;
}
.sub_banner .swiper_4 {
  position: relative;
  border-radius: 50px;
  overflow: hidden;
}
.sub_banner .swiper-slide a {
  display: block;
  width: 100%;
  border-radius: 50px;
  overflow: hidden;
}
.sub_banner .swiper-slide img {
  width: 100%;
}
.sub_banner .mobile_banner {
  display: none;
}
.sub_banner .swiper-pagination {
  position: absolute;
  left: 154px;
  bottom: 63px;
  z-index: 10;
  display: flex;
}
.sub_banner .swiper-pagination .swiper-pagination-bullet {
  cursor: pointer;
  transition: all 0.3s;
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, 0.5);
  opacity: 1;
  margin: 0 6px;
}
.sub_banner
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #fff;
  width: 47px;
  border-radius: 6px;
}

#sub_wrap {
  width: 100%;
}
.sub_nav {
  width: 100%;
  background: #fff;
  border-bottom: 1px solid #222222;
}
.sub_nav nav .btn_select {
  display: none;
}
.sub_nav nav ul {
  display: flex;
  justify-content: center;
  margin-bottom: -1px;
}
.sub_nav nav ul li {
  min-width: 206px;
  border: 1px solid #ddd;
  border-bottom-color: #222;
  border-radius: 20px 20px 0px 0px;
  text-align: center;
}
.sub_nav nav ul li a {
  font-size: 22px;
  font-weight: var(--weight_semi_bold);
  color: #aaaaaa;
  padding: 20px;
  display: block;
}
.sub_nav nav ul li.active {
  border-color: #222;
  border-bottom: 1px solid #ddd;
  background: #fff;
}
.sub_nav nav ul li.active a {
  color: #222;
  font-weight: var(--weight_bold);
}

.page_location {
  width: 100%;
  background: #f9f9f9;
  padding: 12px 0px;
}
.page_location ul {
  display: flex;
  align-items: center;
}
.page_location ul li {
  margin-right: 8px;
  color: #666666;
  font-size: 14px;
}

.course_card_wrap {
  padding: 80px 0px 150px;
}
.course_card_wrap #container {
  display: flex;
  justify-content: space-between;
}
.course_card_wrap .course_card_box {
  width: 1074px;
}
.course_card_wrap .course_card_box ul {
  display: flex;
  flex-wrap: wrap;
  row-gap: 32px;
  column-gap: 24px;
}
.course_card_wrap .course_card_box ul li {
  cursor: pointer;
  width: 342px;
  height: 400px;
  box-sizing: border-box;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  /* margin-bottom: 32px; */
}
.course_card_wrap .course_card_box ul li .thumbnail {
  overflow: hidden;
  border-radius: 30px 30px 0px 0px;
  position: relative;
}
.course_card_wrap .course_card_box ul li .thumbnail > img {
  width: 100%;
}
.course_card_wrap .course_card_box ul li .thumbnail .check_icon {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 26px;
  height: 26px;
  background: url(../img/check_default.png) no-repeat center / 26px;
}
.course_card_wrap .course_card_box ul li .thumbnail .detail_btn {
  display: none;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.course_card_wrap .course_card_box ul li .thumbnail .detail_btn a {
  background: #fff;
  font-weight: var(--weight_bold);
  font-size: 16px;
  color: var(--main-color);
  padding: 13px 18px;
  border-radius: 15px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 10px;
}
.course_card_wrap .course_card_box ul li .info {
  padding: 30px 20px;
  position: relative;
}
.course_card_wrap .course_card_box ul li .info .icon_box {
  position: absolute;
  top: -13px;
  display: flex;
}
.course_card_wrap .course_card_box ul li .info .icon_box .icon {
  margin-right: 5px;
}
.course_card_wrap .course_card_box ul li .info .icon_box .icon span {
  display: inline-block;
  font-size: 14px;
  padding: 4px 10px;
  border-radius: 2px;
  font-weight: var(--weight_medium);
}
.course_card_wrap .course_card_box ul li .info .icon_box .icon.sale span {
  color: #ff1f1f;
  background: #fce5e5;
  border: 1px solid #ff1f1f;
}
.course_card_wrap .course_card_box ul li .info .icon_box .icon.new span {
  color: #1f30ff;
  background: #eff0fc;
  border: 1px solid #1f30ff;
}
.course_card_wrap .course_card_box ul li .info .subject {
  margin-bottom: 30px;
}
.course_card_wrap .course_card_box ul li .info .subject p {
  font-size: 20px;
  font-weight: var(--weight_medium);
}
.course_card_wrap .course_card_box ul li .info .price_box {
  display: flex;
  align-items: flex-end;
}
.course_card_wrap .course_card_box ul li .info .price_box div {
  display: flex;
  align-items: center;
}
.course_card_wrap .course_card_box ul li .info .price_box .discount {
  font-size: 24px;
  margin-left: 0;
  margin-right: 10px;
}
.course_card_wrap .course_card_box ul li .info .price_box .discount span {
  font-size: 20px;
}
.course_card_wrap .course_card_box ul li .info .price_box .price {
  font-size: 24px;
  margin-left: 0;
  margin-right: 10px;
}
.course_card_wrap .course_card_box ul li .info .price_box .price b {
  font-size: 20px;
}
.course_card_wrap .course_card_box ul li .info .price_box .tag_price {
  font-size: 16px;
  margin-left: 0;
  margin-right: 10px;
}
.course_card_wrap .course_card_box ul .active {
  border: 2px solid var(--main-color);
}
.course_card_wrap .course_card_box ul .active .thumbnail {
  border-radius: 27px 27px 0px 0px;
}
.course_card_wrap .course_card_box ul .active .thumbnail .check_icon {
  background: url(../img/check_active.png) no-repeat center / 26px;
}
.course_card_wrap .course_card_box ul .active .thumbnail .detail_btn {
  display: block;
}
.course_card_wrap .course_card_box ul .active .thumbnail > h3 {
  filter: blur(4px);
}
.course_card_wrap .option_box .total_price.mobile {
  display: none;
}
.course_card_wrap .option_box {
  width: 342px;
  height: 732px;
  padding: 50px 40px;
  background: #fff;
  border-radius: 30px;
  box-sizing: border-box;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  border: 1px solid #ccc;
  margin-bottom: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: auto;
  position: sticky;
  top: 100px;
}
.course_card_wrap .option_box .option_list {
  height: 620px;
  overflow: auto;
  margin-bottom: 50px;
}
.course_card_wrap .option_box .option_list .item {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #eeeeee;
  position: relative;
}
.course_card_wrap .option_box .option_list .item:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.course_card_wrap .option_box .option_list .item .subject {
  margin-bottom: 10px;
}
.course_card_wrap .option_box .option_list .item .subject p {
  font-size: 24px;
  font-weight: var(--weight_medium);
}
.course_card_wrap .option_box .option_list .item .count {
  margin-bottom: 15px;
}
.course_card_wrap .option_box .option_list .item .remove_btn {
  position: absolute;
  right: 0;
  top: 0;
}
.course_card_wrap .option_box .total_price {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
}
.course_card_wrap .option_box .total_price span {
  font-size: 20px;
}
.course_card_wrap .option_box .total_price .total_price_number {
  font-size: 30px;
  font-weight: var(--weight_bold);
  color: #222;
}
.course_card_wrap .option_box .total_price p b {
  font-size: 24px;
  font-weight: var(--weight_regular);
}
.course_card_wrap .option_box .btn_box {
  display: flex;
  justify-content: space-between;
}

.course_detail {
  padding: 150px 0px 0px;
}
.course_detail #container {
  position: relative;
}
.course_detail .detail_title {
  width: 100%;
  height: 300px;
  position: absolute;
  top: -350px;
  box-sizing: border-box;
  padding: 70px 80px;
  background: #fff;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.course_detail .detail_title .subject_box {
  margin-bottom: 20px;
}
.course_detail .detail_title .subject_box h3 {
  font-size: 40px;
  font-weight: var(--weight_bold);
  margin-bottom: 15px;
}
.course_detail .detail_title .subject_box p {
  font-size: 20px;
}
.course_detail .detail_title .price_box {
  justify-content: flex-end;
  align-items: flex-end;
}
.course_detail .detail_title .price_box .discount {
  font-size: 40px;
  font-weight: var(--weight_bold);
}
.course_detail .detail_title .price_box .discount span {
  font-size: 30px;
  font-weight: var(--weight_bold);
}
.course_detail .detail_title .price_box .price {
  font-size: 40px;
  font-weight: var(--weight_bold);
  margin-left: 15px;
}
.course_detail .detail_title .price_box .price b {
  font-size: 30px;
  font-weight: var(--weight_bold);
}
.course_detail .detail_title .price_box .tag_price {
  font-size: 30px;
  font-weight: var(--weight_regular);
  margin-left: 15px;
}

.course_detail .detail_title.has_option {
  display: flex;
  justify-content: space-between;
}
.course_detail .detail_title.has_option .option_box {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.course_detail .detail_title.has_option .price_box {
  margin-bottom: 18px;
}
.course_detail .detail_title.has_option .count_box {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
}
.course_detail .detail_title.has_option .count_box span {
  margin-right: 15px;
}
.course_detail .detail_title.has_option .btn_box {
  display: flex;
}
.course_detail .detail_title.has_option .btn_box .normal_btn {
  margin-right: 10px;
}

.course_detail .detail_content {
  margin-bottom: 100px;
  width: 100%;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  overflow: hidden;
}
.course_detail .detail_content .detail_nav {
  width: 100%;
  background: #f9f9f9;
}
.course_detail .detail_content .detail_nav ul {
  display: flex;
  position: relative;
}
.course_detail .detail_content .detail_nav ul::after {
  display: block;
  content: "";
  width: 100%;
  margin: 0px 30px;
  height: 3px;
  position: absolute;
  top: 1px;
  background: #ddd;
}
.course_detail .detail_content .detail_nav ul li {
  width: 480px;
  text-align: center;
  position: relative;
}
.course_detail .detail_content .detail_nav ul .active {
  background: #fff;
}
.course_detail .detail_content .detail_nav ul .active::after {
  display: block;
  content: "";
  width: 100%;
  height: 3px;
  position: absolute;
  top: 1px;
  background: var(--main-color);
  z-index: 1;
}
.course_detail .detail_content .detail_nav ul .active a {
  color: var(--main-color);
}
.course_detail .detail_content .detail_nav ul li a {
  height: 60px;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: var(--weight_bold);
  color: #999;
  padding: 15px 0px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.course_detail .detail_content .info_box {
  padding: 50px 120px;
}
.course_detail .detail_content .info_box .detail_banner {
  width: 100%;
  height: 200px;
  margin-bottom: 30px;
  background: url(../img/test_index_bg.jpg) no-repeat center / cover;
  display: flex;
  align-items: center;
}
.course_detail .detail_content .info_box .detail_banner h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  color: #fff;
  margin-left: 50px;
}
.course_detail .detail_content .info_box .detail_banner.test_info {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.course_detail .detail_content .info_box .detail_banner.test_info h4 {
  line-height: 1.5;
  margin-bottom: 10px;
}
.course_detail .detail_content .info_box .detail_banner.test_info p {
  font-size: 20px;
  color: #fff;
  margin-left: 50px;
}

.course_detail .detail_content .text_box ul li {
  margin-bottom: 30px;
  padding-left: 20px;
  font-size: 20px;
}
.course_detail .detail_content .text_box ul li p {
  position: relative;
  font-weight: var(--weight_bold);
  margin-bottom: 10px;
}
.course_detail .detail_content .text_box ul li p::before {
  position: absolute;
  display: block;
  content: "";
  transform: translateY(-50%);
  left: -20px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 100%;
  background: var(--main-color);
}
.course_detail .detail_content .text_box ul li article {
  padding: 20px;
  background: #f9f9f9;
  font-size: 20px;
  line-height: 1.5;
  margin-left: -20px;
}
.course_detail .detail_content .text_box ul li article b {
  display: block;
  font-weight: var(--weight_bold);
}
.course_detail .detail_content .text_box ul li article span {
  position: relative;
  display: block;
  padding-left: 13px;
}
.course_detail .detail_content .text_box ul li article span::before {
  position: absolute;
  display: block;
  content: "-";
  left: 0px;
  top: 0px;
  font-size: 20px;
}

.course_detail .detail_content .info_box table {
  width: 100%;
  border-top: 1px solid #222;
}
.course_detail .detail_content .info_box table th {
  padding: 22px 0px;
  font-size: 16px;
  font-weight: var(--weight_medium);
  background: #f9f9f9;
}
.course_detail .detail_content .info_box table td {
  padding: 25px 30px;
  font-size: 20px;
  text-align: left;
  border-bottom: 1px solid #eee;
  vertical-align: middle;
}

.course_detail .detail_product {
  width: 100%;
  background: #fff;
  border-radius: 30px 30px 0px 0px;
  box-shadow: rgba(149, 157, 165, 0.2) 5px 8px 24px;
}
.course_detail .detail_product .main_product_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 25px 0px;
}
.course_detail .detail_product .main_product_box .option_price {
  display: flex;
  align-items: center;
}
.course_detail .detail_product .main_product_box .option_price p {
  font-size: 20px;
  margin-right: 25px;
}
.course_detail .detail_product .main_product_box .option_price .price_box {
  justify-content: flex-end;
  align-items: flex-end;
}
.course_detail
  .detail_product
  .main_product_box
  .option_price
  .price_box
  .discount {
  font-size: 24px;
  font-weight: var(--weight_bold);
}
.course_detail
  .detail_product
  .main_product_box
  .option_price
  .price_box
  .discount
  span {
  font-size: 24px;
  font-weight: var(--weight_bold);
}
.course_detail
  .detail_product
  .main_product_box
  .option_price
  .price_box
  .price {
  font-size: 24px;
  font-weight: var(--weight_bold);
  margin-left: 10px;
}
.course_detail
  .detail_product
  .main_product_box
  .option_price
  .price_box
  .price
  b {
  font-size: 24px;
  font-weight: var(--weight_bold);
}
.course_detail
  .detail_product
  .main_product_box
  .option_price
  .price_box
  .tag_price {
  font-size: 20px;
  font-weight: var(--weight_regular);
  margin-left: 10px;
}
.course_detail .detail_product .main_product_box .main_product {
  display: flex;
  align-items: center;
}
.course_detail .detail_product .main_product_box .main_product span {
  margin-right: 10px;
}
.course_detail .detail_product .main_product_box .main_product .count {
  margin-right: 30px;
}

.course_detail .detail_product .other_product_list {
  padding: 20px 0px;
  border-top: 1px solid #eee;
}
.course_detail .detail_product .other_product_list .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.course_detail .detail_product .other_product_list .item:last-child {
  margin-bottom: 0;
}
.course_detail .detail_product .other_product_list .item .subject {
  display: flex;
  align-items: center;
}
.course_detail .detail_product .other_product_list .item .subject p {
  font-size: 20px;
  font-weight: var(--weight_medium);
  margin-right: 30px;
}
.course_detail .detail_product .other_product_list .item .price_box {
  align-items: center;
}
.course_detail .detail_product .other_product_list .item .price_box .discount {
  font-size: 20px;
  font-weight: var(--weight_bold);
}
.course_detail
  .detail_product
  .other_product_list
  .item
  .price_box
  .discount
  span {
  font-size: 20px;
  font-weight: var(--weight_bold);
}
.course_detail .detail_product .other_product_list .item .price_box .price {
  font-size: 20px;
  font-weight: var(--weight_bold);
  margin-left: 20px;
}
.course_detail .detail_product .other_product_list .item .price_box .price b {
  font-size: 20px;
  font-weight: var(--weight_bold);
}

.course_detail .detail_product .total_price {
  padding-bottom: 50px;
}
.course_detail .detail_product .total_price .box {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f9f9;
  padding: 15px;
}
.course_detail .detail_product .total_price .box p {
  font-size: 20px;
}
.course_detail .detail_product .total_price .box p b {
  font-weight: var(--weight_medium);
}
.course_detail .detail_product .total_price .box span {
  margin: 0px 15px;
  font-size: 30px;
}
.course_detail .detail_product .total_price .box i {
  font-size: 24px;
  font-weight: var(--weight_bold);
  color: #222;
  margin-left: 10px;
}
.course_detail .detail_product .total_price .box button {
  margin-left: 20px;
}

.single_product {
  width: 100%;
  height: 410px;
  display: flex;
  justify-content: space-between;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  position: relative;
}
.single_product .thumb .thumb_mo {
  display: none;
}
.single_product .thumb .thumb_pc {
  display: block;
}
.single_product .prd_info {
  width: 586px;
  border-radius: 30px;
  box-sizing: border-box;
  position: absolute;
  right: 0;
  height: 450px;
  background: #fff;
  padding: 50px 40px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.single_product .prd_info .info p {
  font-size: 24px;
  font-weight: var(--weight_medium);
  margin-bottom: 20px;
}
.single_product .prd_info .info span {
  display: block;
  font-size: 16px;
  font-weight: var(--weight_bold);
  margin-bottom: 25px;
}
.single_product .prd_info .info .sub_info {
  font-size: 14px;
  color: #999;
  line-height: 1.5;
  margin-top: 10px;
  display: block;
}
.single_product .prd_info .price {
  text-align: right;
}
.single_product .prd_info .price .price_area {
  margin-bottom: 25px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.single_product .prd_info .price .price_area span {
  font-size: 20px;
  margin-right: 75px;
}
.single_product .prd_info .price .price_area p {
  font-size: 24px;
  font-weight: var(--weight_regular);
  display: flex;
  align-items: flex-end;
}
.single_product .prd_info .price .price_area p b {
  font-size: 30px;
  font-weight: var(--weight_bold);
}

.detail_banner_2 {
  width: 100%;
  height: 250px;
  border-radius: 30px;
  margin-bottom: 50px;
  display: flex;
  align-items: center;
}
.detail_banner_2.visit_test {
  background: url(../img/visit_test_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.explain {
  background: url(../img/explain_bg.jpg) no-repeat right bottom / cover;
}
.detail_banner_2.value_pack {
  background: url(../img/value_pack_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.test_guide_01 {
  background: url(../img/test_guide_01_bg.jpg) no-repeat center / cover;
  height: 300px;
}
.detail_banner_2.test_guide_02 {
  background: url(../img/test_guide_02_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.test_guide_03 {
  background: url(../img/test_guide_03_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.test_guide_04 {
  background: url(../img/test_guide_04_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.test_guide_05 {
  background: url(../img/test_guide_05_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.group_test {
  background: url(../img/group_test_bg.jpg) no-repeat center / cover;
}
.detail_banner_2.download {
  background: url(../img/download_bg.jpg) no-repeat center / cover;
}
.detail_banner_2 .text_box {
  padding-left: 80px;
}
.detail_banner_2 h3 {
  font-size: 40px;
  font-weight: var(--weight_bold);
}
.detail_banner_2 p {
  font-size: 16px;
  line-height: 1.5;
  margin-top: 25px;
}
.detail_banner_2 br.mo {
  display: none;
}
.detail_banner_2.test_guide_01 .text_box h3,
.detail_banner_2.test_guide_01 .text_box p {
  color: #fff;
}
.detail_banner_2.group_test h3,
.detail_banner_2.download h3 {
  margin-bottom: 0;
}

.payment_box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
.payment_box .payment,
.payment_box .price {
  width: calc(50% - 12px);
  height: 400px;
  border-radius: 20px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  padding: 50px;
  box-sizing: border-box;
}
.payment_box .title {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #eee;
}
.payment_box .title h4 {
  font-size: 20px;
  font-weight: var(--weight_medium);
}
.payment_box .payment .radio_box {
  margin-bottom: 40px;
}
.payment_box .payment .radio_box label {
  display: inline-block;
  cursor: pointer;
  padding: 18px 20px;
  width: 250px;
  box-sizing: border-box;
  background: #d8f1f2;
  border: 1px solid var(--main-color);
  border-radius: 30px;
  margin-right: 10px;
}
.payment_box .payment .radio_box label input {
  appearance: none;
}
.payment_box .payment .radio_box label input:checked + span::before {
  background: var(--main-color);
}
.payment_box .payment .radio_box label input:checked + span::after {
  display: block;
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 100%;
  border: 3px solid #d8f1f2;
  position: absolute;
  left: 3px;
  top: 50%;
  transform: translateY(-50%);
}
.payment_box .payment .radio_box label span::before {
  display: block;
  content: "";
  width: 24px;
  height: 24px;
  border-radius: 100%;
  border: 2px solid var(--main-color);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.payment_box .payment .radio_box label span {
  position: relative;
  font-size: 20px;
  font-weight: var(--weight_bold);
  color: var(--main-color);
  padding-left: 40px;
}
.payment_box .payment .code p {
  font-size: 16px;
  margin-bottom: 20px;
}
.payment_box .payment .code label {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.payment_box .payment .code label input {
  border-radius: 5px;
  background: #f9f9f9;
  border: 1px solid #ddd;
  padding: 15px 20px;
  width: 360px;
  margin-right: 10px;
}
.payment_box .payment .code .alert {
  font-size: 14px;
  color: #ff1f1f;
}
.payment_box .price .title {
  margin-bottom: 40px;
}
.payment_box .price .price_info ul {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #000;
}
.payment_box .price .price_info ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.payment_box .price .price_info ul li:last-child {
  margin-bottom: 0;
}
.payment_box .price .price_info ul li span {
  font-size: 16px;
}
.payment_box .price .price_info ul li p span {
  color: #999;
  font-size: 20px;
  font-weight: var(--weight_medium);
  margin-right: 5px;
}
.payment_box .price .price_info ul li p {
  font-size: 24px;
  font-weight: var(--weight_medium);
}
.payment_box .price .price_info .total_price {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.payment_box .price .price_info .total_price span {
  font-size: 16px;
  font-weight: var(--weight_bold);
}
.payment_box .price .price_info .total_price p {
  font-size: 30px;
  font-weight: var(--weight_bold);
}

.modal.text_only .box {
  text-align: center;
  padding: 70px 50px 40px;
  min-width: 400px;
}
.modal.text_only .box h4 {
  font-size: 16px;
  font-weight: var(--weight_medium);
  line-height: 1.5;
  margin-bottom: 50px;
}
.modal.text_only .box h4 b {
  font-weight: var(--weight_bold);
}
.modal.text_only .box .btn {
  width: 100%;
}
.modal.text_only .box .btn_box {
  display: flex;
}
.modal.text_only .box .btn_box .normal_btn {
  margin-right: 15px;
}

/* 회원가입 - 로그인 공통 */
.btn_box.flex {
  display: flex;
  align-items: center;
  gap: 0 12px;
}
.btn_box.flex > * {
  width: 100%;
  height: 48px;
  font-size: 16px !important;
  padding: 0 10px !important;
}
#sub_wrap_sign {
  padding: 100px 0px;
}
.sign_form_box {
  background: #fff;
  padding: 50px;
  box-sizing: border-box;
  width: 500px;
  margin: 0 auto;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  text-align: center;
}
.sign_form_box h1 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 32px;
}
.sign_form_box h2 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 32px;
  line-height: 1.4;
}
.sign_form_box img {
  margin-bottom: 30px;
  height: 36px;
}
.sign_form_box .copyright {
  font-size: 12px;
  color: #999999;
}
.sign_form_box .copyright b {
  color: #222222;
}
.sign_form_box form {
  margin-bottom: 30px;
  text-align: left;
}
.sign_form_box .join_agreement {
  margin-bottom: 20px;
}
.sign_form_box .join_agreement p {
  font-size: 20px;
  font-weight: var(--weight_bold);
  margin-bottom: 10px;
}
.sign_form_box .join_agreement label {
  cursor: pointer;
}
.sign_form_box .join_agreement > span {
  font-size: 14px;
  line-height: 1.5;
  position: relative;
  display: block;
  padding-left: 17px;
  margin-bottom: 10px;
}
.sign_form_box .join_agreement > span::before {
  content: "※";
  position: absolute;
  display: block;
  font-size: 14px;
  left: 0;
}
.sign_form_box .join_agreement .all_agree {
  margin-bottom: 5px;
  background: #f9f9f9;
}
.sign_form_box .join_agreement .all_agree label {
  margin-bottom: 0;
}
.sign_form_box .join_agreement ul li {
  margin-bottom: 7px;
}
.sign_form_box .join_agreement ul li .acc_subject {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sign_form_box .join_agreement ul li .acc_subject label {
  margin-bottom: 0;
}
.sign_form_box .join_agreement ul li .acc_subject a {
  display: flex;
  align-items: center;
}
.sign_form_box .join_agreement ul li .acc_subject a img {
  height: 4px;
  margin-bottom: 0;
  margin-left: 5px;
}
.sign_form_box .join_agreement ul li .acc_subject .active img {
  transform: rotate(180deg);
}
.sign_form_box .join_agreement ul li .acc_article {
  padding: 10px;
  background: #f9f9f9;
  border: 1px solid #eee;
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.5;
  max-height: 120px;
  overflow-y: auto;
  margin-bottom: 10px;
  display: none;
}
.sign_form_box .join_agreement ul li .acc_article::-webkit-scrollbar {
  width: 4px;
}
.sign_form_box .join_agreement ul li .acc_article::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #999;
}
.sign_form_box .join_agreement ul li .acc_article::-webkit-scrollbar-track {
  border-radius: 10px;
}

.sign_form_box .join_agreement ul li:last-child {
  margin-bottom: 0;
}
.sign_form_box .join_agreement ul li a {
  font-size: 12px;
  color: #666666;
}
.sign_form_box .base_info {
  margin-bottom: 30px;
}
.sign_form_box .form_element {
  padding: 16px 20px 10px;
  width: 100%;
  border-radius: 5px;
  border: 1px solid #eeeeee;
  box-sizing: border-box;
  margin-bottom: 10px;
}
.sign_form_box .form_element.disabled {
  background: #f8f8f8;
}
.sign_form_box .form_element.has_btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sign_form_box .form_element input[type="text"],
.sign_form_box .form_element input[type="password"],
.sign_form_box .form_element input[type="email"] {
  font-size: 14px;
  border: 0;
  width: 100%;
  font-weight: var(--weight_medium);
  padding: 5px 0px;
  background: transparent;
}
.sign_form_box .form_element select {
  width: 120px;
  font-size: 14px;
  border: 0;
  margin-left: 5px;
}
.sign_form_box .form_element input[type="text"]::placeholder,
.sign_form_box .form_element input[type="password"]::placeholder,
.sign_form_box .form_element input[type="email"]::placeholder {
  color: #aaaaaa;
}
.sign_form_box .form_element span {
  font-size: 14px;
  font-weight: var(--weight_medium);
  color: #aaa;
}
.sign_form_box .form_element input[type="checkbox"] {
  margin-right: 5px;
}
.sign_form_box .form_element label {
  display: flex;
  align-items: center;
  font-size: 14px;
  margin-bottom: 5px;
}
.sign_form_box .form_element label .essential {
  color: #ff1f1f;
}
.sign_form_box .form_element label span b {
  font-weight: var(--weight_bold);
}
.sign_form_box .form_element .name_input,
.sign_form_box .form_element .phone_input {
  flex: 70% 0 0;
}
.sign_form_box .form_element .split_radio {
  display: flex;
  align-items: center;
  border-radius: 5px;
  border: 1px solid #ddd;
  overflow: hidden;
}
.sign_form_box .form_element .split_radio label {
  cursor: pointer;
  margin-bottom: 0;
}
.sign_form_box .form_element .split_radio input {
  appearance: none;
}
.sign_form_box .form_element .split_radio span {
  padding: 5px 10px;
  font-size: 12px;
}
.sign_form_box .form_element .split_radio input:checked + span {
  background: var(--main-color);
  color: #fff;
}
.sign_form_box .form_element #identifyBtn {
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 5px;
  border: 1px solid #ddd;
}
.sign_form_box .form_element .btn_send {
  width: 80px;
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 5px;
  border: 1px solid #ddd;
}
.sign_form_box .form_element .email_box {
  display: flex;
  align-items: center;
}
.sign_form_box .btn_box {
  text-align: center;
}
.sign_form_box .btn_box button {
  font-size: 20px;
  color: #fff;
  font-weight: var(--weight_bold);
  background: var(--main-color);
  padding: 0px 30px;
  height: 48px;
  border-radius: 15px;
}
/* 비밀번호 재설정 팝업 */
#pw_set {
  width: 94%;
  max-width: 592px;
  padding: 30px 50px 40px;
  text-align: center;
  line-height: 1.5;
}
#pw_set .tit_wrap {
  font-size: 18px;
  font-weight: 700;
  position: relative;
}
#pw_set .tit_wrap .btn_close {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 3px;
  right: -14px;
}
#pw_set .cont {
  margin-top: 30px;
}
#pw_set .cont strong {
  font-size: 16px;
}
#pw_set .cont p {
  font-size: 12px;
  margin-top: 28px;
}
#pw_set .btn_box {
  display: flex;
  align-items: center;
  gap: 0 14px;
  margin-top: 28px;
}
#pw_set .btn_box > * {
  width: 100%;
}

/* 회원가입 - 01 */

.join_method p {
  font-size: 16px;
  margin-bottom: 30px;
}
.join_method .btn_box {
  margin-bottom: 35px;
}
.join_method .btn_box ul {
  margin-bottom: 30px;
}
.join_method .btn_box ul li {
  margin-bottom: 10px;
}
.join_method .btn_box ul li:last-child {
  margin-bottom: 0;
}
.join_method .btn_box ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 70px;
  border-radius: 36px;
  box-sizing: border-box;
  font-size: 20px;
  font-weight: var(--weight_medium);
  position: relative;
}
.join_method .btn_box ul li a::before {
  display: block;
  content: "";
  position: absolute;
  width: 56px;
  height: 56px;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.join_method .btn_box ul .normal_user a {
  background: #f9f9f9;
  border: 1px solid #eeeeee;
}
.join_method .btn_box ul .normal_user a::before {
  background: url(../img/join_user_icon.png) no-repeat center / 56px;
}
.join_method .btn_box ul .foreign_user a {
  background: #f9f9f9;
  border: 1px solid #eeeeee;
}
.join_method .btn_box ul .foreign_user a::before {
  background: url(../img/join_global_icon.png) no-repeat center / 56px;
}
.join_method .btn_box ul .naver_join a {
  background: #47a124;
  color: #fff;
}
.join_method .btn_box ul .naver_join a::before {
  background: url(../img/naver_icon.png) no-repeat center / 43px;
}
.join_method .btn_box ul .kakao_join a {
  background: #fae100;
  color: #222;
}
.join_method .btn_box ul .kakao_join a::before {
  background: url(../img/kakao_icon.png) no-repeat center / 43px;
}
.join_method .btn_box > a {
  font-size: 16px;
  font-weight: var(--weight_bold);
}

/* 회원가입 - 본인인증 */

.join_verification p {
  font-size: 16px;
  font-weight: var(--weight_bold);
  margin-bottom: 10px;
  text-align: left;
}
.join_verification .verification a {
  width: 100%;
  height: 200px;
  border-radius: 10px;
  background: #f9f9f9;
  border: 1px solid #eee;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 20px;
}
.join_verification .verification a img {
  height: 80px;
  margin-bottom: 20px;
}
.join_verification .verification a span {
  font-size: 14px;
  font-weight: var(--weight_medium);
}

/* 로그인 */

.sign_form_box.login h1 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
}
.sign_form_box.login p.explain {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 16px;
}
.sign_form_box.login img {
  margin-bottom: 50px;
}
.sign_form_box.login form {
  margin-bottom: 20px;
}
.sign_form_box.login .form_element {
  padding: 7px 20px;
}
.sign_form_box.login input[type="text"] {
  font-size: 16px;
  font-weight: var(--weight_regular);
}
.sign_form_box.login label {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.sign_form_box.login label input {
  margin-right: 5px;
}
.sign_form_box.login label span {
  font-size: 14px;
}
.sign_form_box.login form button {
  width: 100%;
  font-size: 18px;
  color: #fff;
  font-weight: var(--weight_bold);
  background: var(--main-color);
  border-radius: 30px;
  padding: 15px 0px;
}
.sign_form_box.login .btn_box {
  margin-bottom: 35px;
}
.sign_form_box.login .btn_box ul li {
  margin-bottom: 10px;
}
.sign_form_box.login .btn_box ul li:last-child {
  margin-bottom: 0;
}
.sign_form_box.login form button + button {
  margin-top: 12px;
}
.sign_form_box.login .btn_box ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 15px 0px;
  border-radius: 30px;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: var(--weight_medium);
  position: relative;
}
.sign_form_box.login .btn_box ul li a::before {
  display: block;
  content: "";
  position: absolute;
  width: 32px;
  height: 32px;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.sign_form_box.login .btn_box ul .naver_join a {
  background: #47a124;
  color: #fff;
}
.sign_form_box.login .btn_box ul .naver_join a::before {
  background: url(../img/naver_icon.png) no-repeat center / 32px;
}
.sign_form_box.login .btn_box ul .kakao_join a {
  background: #fae100;
  color: #222;
}
.sign_form_box.login .btn_box ul .kakao_join a::before {
  background: url(../img/kakao_icon.png) no-repeat center / 32px;
}
.sign_form_box.login .link_box ul {
  display: flex;
  justify-content: center;
}
.sign_form_box.login .link_box ul li {
  margin-right: 15px;
  padding-right: 15px;
  border-right: 1px solid #999999;
}
.sign_form_box.login .link_box ul li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}
.sign_form_box.login .link_box ul li a {
  font-size: 14px;
  color: #999999;
}
.sign_form_box.login .find_id {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f9f9;
  border: solid 1px #eeeeee;
  border-radius: 5px;
  padding: 30px 0;
  margin-bottom: 20px;
}
.sign_form_box.login .find_id p {
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

/* 휴면계정 */
.sleeper_account {
  padding: 0 40px;
}
.sleeper_account > .wrapper {
  width: 100%;
  max-width: 934px;
  background: #ffffff;
  border-radius: 30px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  margin: 180px auto 40px;
  padding: 60px 80px 35px;
  box-sizing: border-box;
}
.sleeper_account .tit_wrap {
  color: #3d3d3d;
  text-align: center;
  line-height: 1.4;
}
.sleeper_account .tit_wrap h1 {
  font-size: 24px;
  font-weight: 700;
}
.sleeper_account .tit_wrap h2 {
  font-size: 16px;
  font-weight: 700;
  margin-top: 7px;
}
.sleeper_account .tit_wrap p {
  font-size: 16px;
  font-weight: 700;
  margin-top: 20px;
}
.sleeper_account .tit_wrap p.explain {
  font-size: 14px;
  font-weight: 400;
  margin-top: 16px;
}
.sleeper_account .certi_box {
  background: #f9f9f9;
  border-top: solid 1px #707070;
  border-bottom: solid 1px #707070;
  margin-top: 36px;
  padding: 40px 20px 36px;
}
.sleeper_account .certi_box > img {
  display: block;
  width: 220px;
  margin: 0 auto;
}
.sleeper_account .certi_box .inner {
  display: flex;
  justify-content: center;
  gap: 0 10px;
  max-width: 350px;
  margin: 30px auto;
}
.sleeper_account .certi_box .inner > * {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 35px 0 50px;
  background: #ffffff;
  border: solid 1px #eeeeee;
  border-radius: 10px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.sleeper_account .certi_box .inner > * img {
  width: 80px;
  margin-bottom: 12px;
}

.sleeper_account .explain_box {
  display: flex;
  align-items: flex-start;
  margin-top: 32px;
}
.sleeper_account .explain_box > div {
  width: 100%;
  font-size: 14px;
  padding-right: 15%;
  box-sizing: border-box;
}
.sleeper_account .explain_box strong {
  font-weight: 700;
  line-height: 2;
}
.sleeper_account .explain_box p {
  line-height: 1.5;
  margin-top: 16px;
}
.sleeper_account .copyright {
  font-size: 12px;
  color: #999999;
  text-align: center;
  margin-top: 24px;
}
.sleeper_account .copyright em {
  color: #222222;
}

/* 방문시험 01 */

.visit_test_wrap {
  padding: 80px 0px 170px;
}
.visit_test_wrap .mo_sub_info {
  display: none;
}

/* 방문시험 02 */

.course_detail.visit_test .detail_title.has_option .option_box {
  min-width: 506px;
}
.course_detail.visit_test .detail_title.has_option .option_box .select_box {
  margin-bottom: 20px;
}
.info_box.visit_test .img_box {
  margin-bottom: 30px;
}
.info_box.visit_test .img_box img {
  width: 100%;
}
.info_box.visit_test .text_box p {
  font-size: 16px;
  line-height: 1.5;
}

/* 해설강의 02 */

.course_detail.explain .detail_content .info_box .text_box h4 {
  font-size: 24px;
  font-weight: var(--weight_medium);
  line-height: 1.5;
  margin-bottom: 35px;
}

/* 밸류팩등록 01 */

.value_pack_wrap {
  padding: 80px 0px 100px;
}
.value_pack_wrap .info_box {
  padding: 50px 120px;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.value_pack_wrap .info_box .code {
  padding: 30px 0px;
  background: #f9f9f9;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 50px;
}
.value_pack_wrap .info_box .code form {
  text-align: left;
}
.value_pack_wrap .info_box .code form legend {
  margin-bottom: 20px;
}
.value_pack_wrap .info_box .code form legend br {
  display: none;
}
.value_pack_wrap .info_box .code form label {
  display: flex;
  align-items: center;
}
.value_pack_wrap .info_box .code form label input {
  padding: 15px 20px;
  height: 50px;
  font-size: 16px;
  border: 1px solid #eee;
  background: #fff;
  margin-right: 10px;
  width: 330px;
}
.value_pack_wrap .info_box .code form label input::placeholder {
  color: #999;
}
.value_pack_wrap .info_box .text_box > ul > li {
  margin-bottom: 50px;
}
.value_pack_wrap .info_box .text_box > ul > li:last-child {
  margin-bottom: 0;
}
.value_pack_wrap .info_box .text_box > ul > li > p {
  position: relative;
  font-weight: var(--weight_bold);
  font-size: 20px;
  margin-bottom: 10px;
}
.value_pack_wrap .info_box .text_box > ul > li > p::before {
  position: absolute;
  display: block;
  content: "";
  transform: translateY(-50%);
  left: -20px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 100%;
  background: var(--main-color);
}
.value_pack_wrap .info_box .text_box > ul > li > span {
  font-size: 20px;
  line-height: 1.5;
}
.value_pack_wrap .info_box .text_box > ul > li .process {
  width: 100%;
  background: #f0f8f8;
  border-radius: 150px;
  margin-bottom: 20px;
}
.value_pack_wrap .info_box .text_box > ul > li .process ul {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 190px;
  position: relative;
  z-index: 1;
}
.value_pack_wrap .info_box .text_box > ul > li .process ul::after {
  content: "";
  display: block;
  width: 30%;
  height: 1px;
  background: var(--main-color);
  z-index: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.value_pack_wrap .info_box .text_box > ul > li .process ul li {
  width: 240px;
  height: 240px;
  display: flex;
  text-align: center;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background: #fff;
  margin-right: 50px;
  z-index: 1;
}
.value_pack_wrap .info_box .text_box > ul > li .process ul li:last-child {
  margin-right: 0;
}
.value_pack_wrap
  .info_box
  .text_box
  > ul
  > li
  .process.item_1
  ul
  li:last-child
  span::after {
  content: "위 빈칸에 ETS로부터 받은 authorization code를 입력한다.";
}
.value_pack_wrap .info_box .text_box > ul > li .process ul li p {
  font-size: 24px;
  font-weight: var(--weight_bold);
  color: var(--main-color);
  margin-bottom: 13px;
}
.value_pack_wrap .info_box .text_box > ul > li .process ul li span {
  font-size: 18px;
  line-height: 1.5;
}

/* 시험센터 01 */

.test_center_wrap {
  padding: 80px 0px 100px;
}
.test_center_wrap ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.test_center_wrap ul li {
  width: 464px;
  height: 464px;
  border-radius: 30px;
  overflow: hidden;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  margin-right: 24px;
  margin-bottom: 24px;
}
.test_center_wrap ul li:nth-child(-3n + 6) {
  margin-right: 0;
}
.test_center_wrap ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}
.test_center_wrap ul li a p {
  font-size: 40px;
  color: #fff;
  font-weight: var(--weight_medium);
  line-height: 1.5;
}
.test_center_wrap ul li a p b {
  font-weight: var(--weight_bold);
  display: block;
}

/* 시험센터 02 */

.course_detail .detail_content .info_box.test_center tr th {
  width: 240px;
  text-align: left;
  padding: 25px 50px;
  font-size: 20px;
  font-weight: var(--weight_medium);
  vertical-align: middle;
  border-bottom: 1px solid #eee;
  box-sizing: border-box;
}
.course_detail .detail_content .info_box.test_center tr td {
  text-align: left;
  padding: 25px 50px;
  line-height: 1.5;
}
.course_detail .detail_content .info_box.test_center tr td a {
  color: #1236ff;
  text-decoration: underline;
  word-break: break-all;
}
.course_detail .detail_content .info_box.test_center tr td .map {
  margin-top: 20px;
  /* display: none; */
}

/* 패키지 상품 04 */

.course_detail.package .info_box .guideline ul {
  width: 100%;
}
.course_detail.package .info_box .guideline ul li {
  display: flex;
  align-items: center;
}
.course_detail.package .info_box .guideline ul .speaking {
  margin-bottom: 50px;
}
.course_detail.package .info_box .guideline ul li .img_box {
  width: 400px;
  height: 240px;
  margin-right: 50px;
  border-radius: 30px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.course_detail.package .info_box .guideline ul li .img_box p {
  padding: 0px 50px;
  color: #fff;
  font-size: 30px;
  font-weight: var(--weight_bold);
  line-height: 1.5;
}
.course_detail.package .info_box .guideline ul .speaking .img_box {
  background: url(../img/speaking_bg.jpg) no-repeat center / cover;
}
.course_detail.package .info_box .guideline ul .writing .img_box {
  background: url(../img/writing_bg.jpg) no-repeat center / cover;
}
.course_detail.package .info_box .guideline ul li article {
  width: 735px;
}
.course_detail.package .info_box .guideline ul li article span {
  position: relative;
  display: block;
  padding-left: 15px;
  font-size: 20px;
  line-height: 1.5;
}
.course_detail.package .info_box .guideline ul li article span::before {
  position: absolute;
  display: block;
  content: "-";
  left: 0px;
  top: 0px;
  font-size: 20px;
}

/* OTPC 01 */

.course_detail.otpc .option_box {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.info_box.otpc .description {
  display: flex;
}
.info_box.otpc .description .img_box {
  margin-right: 50px;
  width: 350px;
}
.info_box.otpc .description .img_box img {
  width: 100%;
}
.info_box.otpc .description .text_box {
  padding-top: 20px;
  width: 780px;
}
.info_box.otpc .description .text_box h4 {
  font-size: 30px;
  margin-bottom: 25px;
  font-weight: var(--weight_bold);
}
.info_box.otpc .description .text_box p {
  font-size: 19px;
  line-height: 1.5;
}
.info_box.otpc table {
  margin-top: 30px;
}

/* OTPC 03 */

.otpc_wrap {
  padding: 80px 0px 100px;
}
.otpc_wrap .single_product {
  margin-bottom: 30px;
}
.otpc_wrap .btn_box {
  display: flex;
  justify-content: center;
}
.otpc_wrap .btn_box .normal_btn {
  margin-right: 15px;
}

/* 커뮤니티 - 시험 이용 방법 01 */

.test_guide_wrap_01 {
  padding: 80px 0px 100px;
}
.test_guide_wrap_01 .item_box {
  margin-bottom: 80px;
}
.test_guide_wrap_01 .item_box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.test_guide_wrap_01 .item_box ul li {
  width: calc(50% - 12px);
  display: flex;
  align-items: center;
  padding: 40px 50px;
  box-sizing: border-box;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  margin-bottom: 24px;
}
.test_guide_wrap_01 .item_box ul li:last-child {
  margin-bottom: 0;
}
.test_guide_wrap_01 .item_box ul li .img_box {
  margin-right: 34px;
}
.test_guide_wrap_01 .item_box ul li .text_box p {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 15px;
  line-height: 1.5;
}
.test_guide_wrap_01 .item_box ul li .text_box article {
  font-size: 16px;
  line-height: 1.5;
}
.test_guide_wrap_01 .scoring_box .title {
  margin-bottom: 50px;
}
.test_guide_wrap_01 .scoring_box .title h3 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 24px;
}
.test_guide_wrap_01 .scoring_box .title p {
  font-size: 20px;
}
.test_guide_wrap_01 .scoring_box .description {
  width: 100%;
  height: 350px;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description {
  background: #fff5e0;
  margin-bottom: 80px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description h4 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin-right: 25px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description h4 b {
  vertical-align: super;
  font-size: 30px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description img {
  margin-right: 35px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul {
  padding-left: 30px;
  position: relative;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul::before {
  display: block;
  position: absolute;
  content: "";
  width: 1px;
  height: 204px;
  background: #ffc850;
  left: 0;
  top: 124px;
  transform: translateY(-50%);
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul li {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  position: relative;
}
.test_guide_wrap_01
  .scoring_box.scoring_1
  .description
  ul
  li:nth-child(-4n + 5)::before {
  display: block;
  position: absolute;
  content: "";
  width: 30px;
  height: 1px;
  background: #ffc850;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul li:last-child {
  margin-bottom: 0px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul li p {
  display: inline-block;
  font-size: 20px;
  font-weight: var(--weight_medium);
  padding: 13px 0px;
  width: 140px;
  text-align: center;
  border-radius: 30px;
  background: #ffc850;
  margin-right: 20px;
}
.test_guide_wrap_01 .scoring_box.scoring_1 .description ul li span {
  font-size: 20px;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description {
  background: #e0f3ff;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description h4 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  margin: 0px 80px;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description h4 b {
  vertical-align: sub;
  font-size: 30px;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description ul li {
  margin-bottom: 5px;
  position: relative;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description ul li:last-child {
  margin-bottom: 0px;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description ul li p {
  display: inline-block;
  padding: 15px 30px;
  background: #bee6ff;
  border-radius: 30px;
  font-weight: var(--weight_medium);
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description .list_1 {
  padding-right: 30px;
  position: relative;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description .list_1::before {
  display: block;
  position: absolute;
  content: "";
  width: 1px;
  height: 154px;
  background: #80cbfa;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.test_guide_wrap_01
  .scoring_box.scoring_2
  .description
  .list_1
  li:nth-child(-3n + 4)::before {
  display: block;
  position: absolute;
  content: "";
  width: 30px;
  height: 1px;
  background: #80cbfa;
  right: -30px;
  top: 50%;
  transform: translateY(-50%);
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description .list_2 {
  padding-left: 30px;
  position: relative;
}
.test_guide_wrap_01 .scoring_box.scoring_2 .description .list_2::before {
  display: block;
  position: absolute;
  content: "";
  width: 1px;
  height: 154px;
  background: #80cbfa;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.test_guide_wrap_01
  .scoring_box.scoring_2
  .description
  .list_2
  li:nth-child(-3n + 4)::before {
  display: block;
  position: absolute;
  content: "";
  width: 30px;
  height: 1px;
  background: #80cbfa;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
}

/* 커뮤니티 - 시험 이용 방법 02 */

.test_guide_wrap_02 {
  padding: 80px 0px 100px;
}
.test_guide_wrap_02 .item_box {
  margin-bottom: 80px;
}
.test_guide_wrap_02 .item_box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.test_guide_wrap_02 .item_box ul li {
  width: calc(50% - 12px);
  display: flex;
  align-items: center;
  box-sizing: border-box;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  margin-bottom: 24px;
  height: 250px;
  overflow: hidden;
}
.test_guide_wrap_02 .item_box ul li:last-child {
  margin-bottom: 0;
}
.test_guide_wrap_02 .item_box ul li .text_box {
  padding: 80px 50px;
}
.test_guide_wrap_02 .item_box ul li .text_box p {
  font-size: 40px;
  font-weight: var(--weight_bold);
  margin-bottom: 10px;
}
.test_guide_wrap_02 .item_box ul li .text_box article {
  font-size: 22px;
  line-height: 1.5;
}

/* 커뮤니티 - 시험 이용 방법 03 */

.test_guide_wrap_03 {
  padding: 80px 0px 100px;
}
.test_guide_wrap_03 .item_box {
  margin-bottom: 50px;
}
.test_guide_wrap_03 .item_box ul {
  display: flex;
  justify-content: space-between;
}
.test_guide_wrap_03 .item_box ul li {
  width: calc(33.3% - 12px);
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  overflow: hidden;
}
.test_guide_wrap_03 .item_box ul li .img_box {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 55.8%;
}
.test_guide_wrap_03 .item_box ul li .img_box img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.test_guide_wrap_03 .item_box ul li .text_box {
  padding: 30px 50px;
}
.test_guide_wrap_03 .item_box ul li .text_box p {
  font-size: 30px;
  margin-bottom: 30px;
  font-weight: var(--weight_bold);
}
.test_guide_wrap_03 .item_box ul li .text_box article b {
  display: flex;
  font-size: 20px;
}
.test_guide_wrap_03 .item_box ul li .text_box article b span {
  margin-right: 7px;
  line-height: 1.5;
}
.test_guide_wrap_03 .item_box ul li .text_box article b i {
  line-height: 1.5;
}
.test_guide_wrap_03 .item_box ul li .text_box article .explain {
  display: block;
  padding-left: 25px;
  margin-bottom: 6px;
  font-size: 14px;
}
.test_guide_wrap_03 h4 {
  font-size: 24px;
  line-height: 1.5;
  background: #f9f9f9;
  text-align: center;
  padding: 65px 0px;
  font-weight: var(--weight_medium);
}

/* 커뮤니티 - 시험 이용 방법 04 */

.test_guide_wrap_04 {
  padding: 80px 0px 100px;
}
.test_guide_wrap_04 h4 {
  font-size: 24px;
  line-height: 1.5;
  background: #f9f9f9;
  text-align: center;
  padding: 65px 0px;
  font-weight: var(--weight_medium);
  margin-bottom: 50px;
}
.test_guide_wrap_04 .item_box ul {
  display: flex;
  justify-content: space-between;
}
.test_guide_wrap_04 .item_box ul li {
  width: calc(50% - 12px);
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  overflow: hidden;
}
.test_guide_wrap_04 .item_box ul li .img_box img {
  width: 100%;
}
.test_guide_wrap_04 .item_box ul li .text_box {
  padding: 50px 0px;
  text-align: center;
}
.test_guide_wrap_04 .item_box ul li .text_box p {
  font-size: 24px;
  margin-bottom: 15px;
  line-height: 1.5;
}
.test_guide_wrap_04 .item_box ul li .text_box span {
  font-size: 16px;
  color: #999;
}

/* 커뮤니티 - 시험 이용 방법 05 */

.test_guide_wrap_05 {
  padding: 80px 0px 140px;
}
.test_guide_wrap_05 .title {
  font-size: 40px;
  font-weight: var(--weight_bold);
  text-align: center;
  margin-bottom: 50px;
}
.test_guide_wrap_05 .item_box {
  margin-bottom: 50px;
}
.test_guide_wrap_05 .item_box ul li {
  width: 100%;
  display: flex;
  align-items: center;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  overflow: hidden;
  margin-bottom: 30px;
}
.test_guide_wrap_05 .item_box ul li:last-child {
  margin-bottom: 0;
}
.test_guide_wrap_05 .item_box ul li .text_box {
  padding: 100px 50px;
}
.test_guide_wrap_05 .item_box ul li .text_box p {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 25px;
}
.test_guide_wrap_05 .item_box ul li .text_box span {
  font-size: 22px;
  line-height: 1.5;
}
.test_guide_wrap_05 h4 {
  font-size: 24px;
  line-height: 1.5;
  background: #f9f9f9;
  text-align: left;
  padding: 50px;
  font-weight: var(--weight_medium);
  margin-bottom: 50px;
}
.test_guide_wrap_05 .btn_box {
  display: flex;
  justify-content: center;
}

#sampleModal.test_05_sample {
  max-width: 90%;
  height: 88vh;
  overflow: auto;
}
#sampleModal.test_05_sample .pc_sample_image {
  display: block;
}
#sampleModal.test_05_sample .mo_sample_image {
  display: none;
}
#sampleModal.test_05_sample::-webkit-scrollbar {
  width: 6px; /* 스크롤 바 너비 */
}
#sampleModal.test_05_sample::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.4); /* 스크롤 바 색상 */
  border-radius: 5px;
}

#sampleModal h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 30px;
}
#sampleModal .img_box {
  margin-bottom: 30px;
}
#sampleModal .img_box img {
  width: 100%;
}
#sampleModal .btn_box {
  text-align: center;
}

/* 커뮤니티 - 이벤트 01 */

.course_detail.event {
  padding: 80px 0px 100px;
}
.course_detail.event .info_box {
  padding: 30px 120px 80px;
}
.course_detail.event .info_box .search_box {
  margin-bottom: 27px;
}
.course_detail.event .info_box .search_box fieldset {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.course_detail.event .info_box .search_box fieldset input {
  width: 250px;
  height: 48px;
  border: 1px solid #ddd;
  margin-right: 10px;
  padding: 10px 15px;
  font-size: 14px;
}
.course_detail.event .info_box .search_box fieldset input::placeholder {
  color: #999;
}
.course_detail.event .info_box .search_box fieldset button {
  padding: 12px;
  height: 48px;
  background: var(--main-color);
}
.course_detail.event .info_box .search_box fieldset button img {
  height: 24px;
}
.course_detail.event .info_box .event_gallery .gallery_list {
  display: flex;
  /* justify-content: space-between; */
  flex-wrap: wrap;
}
.course_detail.event .info_box .event_gallery .gallery_list li {
  width: calc(33.3% - 12px);
  border-radius: 30px;
  margin-bottom: 24px;
  border: 1px solid #eee;
  overflow: hidden;
  margin-left:12px;
}
.course_detail.event .info_box .event_gallery .gallery_list li:nth-child(3n-2) {
 margin-left:0;
}
.course_detail.event .info_box .event_gallery .gallery_list li .thumbnail {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 62%;
  overflow: hidden;
}
.course_detail.event .info_box .event_gallery .gallery_list li .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.course_detail.event .info_box .event_gallery .gallery_list li .text_box {
  padding: 20px 30px;
  height: 160px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.course_detail.event .info_box .event_gallery .gallery_list li .text_box p {
  font-size: 24px;
  font-weight: var(--weight_medium);
  line-height: 1.5;
}
.course_detail.event .info_box .event_gallery .gallery_list li .text_box .date {
  display: flex;
  align-items: center;
}
.course_detail.event
  .info_box
  .event_gallery
  .gallery_list
  li
  .text_box
  .date
  img {
  margin-right: 5px;
  height: 20px;
}
.course_detail.event
  .info_box
  .event_gallery
  .gallery_list
  li
  .text_box
  .date
  span {
  font-size: 16px;
  color: #666;
}

/* 커뮤니티 - 이벤트 02 */

.course_detail.event .info_box .event_detail .subject {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}
.course_detail.event .info_box .event_detail .subject a {
  display: flex;
  align-items: center;
}
.course_detail.event .info_box .event_detail .subject a img {
  height: 40px;
  margin-right: 10px;
}
.course_detail.event .info_box .event_detail .subject a h3 {
  font-size: 30px;
  font-weight: var(--weight_bold);
}
.course_detail.event .info_box .event_detail .subject .date {
  display: flex;
  align-items: center;
}
.course_detail.event .info_box .event_detail .subject .date img {
  margin-right: 5px;
  height: 20px;
}
.course_detail.event .info_box .event_detail .subject .date span {
  font-size: 16px;
  color: #666;
}
.course_detail.event .info_box .event_detail .content {
  width: 100%;
}
.course_detail.event .info_box .event_detail .content img {
  width: 100%;
}

/* 커뮤니티 - 이벤트 03 */

.course_detail.event .info_box .event_gallery .gallery_list .expired {
  filter: grayscale(1);
}

/* 커뮤니티 - 리뷰후기 01 */

.best_review {
  width: 100%;
  padding: 80px 0px;
  background: #f7f7fc;
}
.best_review .title {
  margin-bottom: 30px;
  text-align: center;
  position: relative;
}
.best_review .title a {
  display: flex;
  align-items: center;
  position: absolute;
  height: 56px;
  padding: 0px 24px 0px 20px;
  border-radius: 30px;
  border: 1px solid #ddd;
  background: #fff;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.best_review .title a img {
  height: 32px;
}
.best_review .title h3 {
  font-size: 50px;
  font-weight: var(--weight_bold);
  color: #3d3d3d;
}

.best_review #container .best_slide {
  width: 100%;
  overflow: hidden;
  padding: 0px 20px 20px;
  box-sizing: border-box;
}
.best_review #container .best_slide .swiper-slide a {
  display: block;
  width: 100%;
  padding: 50px 40px;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 8px;
  background: #fff;
  box-sizing: border-box;
}
.best_review #container .best_slide .swiper-slide .ratings {
  display: flex;
  margin-bottom: 20px;
}
.best_review #container .best_slide .swiper-slide .ratings li {
  margin-right: 10px;
}
.best_review #container .best_slide .swiper-slide .ratings li img {
  height: 40px;
}
.best_review #container .best_slide .swiper-slide p {
  font-size: 24px;
  font-weight: var(--weight_bold);
  margin-bottom: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.best_review #container .best_slide .swiper-slide article {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 24px;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin-bottom: 30px;
}
.best_review #container .best_slide .swiper-slide span {
  font-size: 13px;
  color: #666;
}

.review {
  padding: 50px 0px 100px;
}
.review .check {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.review .check label {
  display: flex;
  align-items: center;
}
.review .check label input {
  margin-right: 5px;
}
.review .review_list > li {
  width: 100%;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  background: #fff;
  margin-bottom: 20px;
}
.review .review_list > li:last-child {
  margin-bottom: 0;
}
.review .review_list > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 50px;
  box-sizing: border-box;
}
.review .review_list > li a .img_box {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 120px;
}
.review .review_list > li a .img_box img {
  width: 100%;
}
.review .review_list > li a .text_box {
  width: 920px;
}
.review .review_list > li a .text_box p {
  font-size: 24px;
  font-weight: var(--weight_bold);
  margin-bottom: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 30px;
}
.review .review_list > li a .text_box article {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 24px;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin-bottom: 30px;
}
.review .review_list > li a .text_box .info span {
  font-size: 13px;
  color: #999;
  margin-right: 18px;
  padding-right: 18px;
  border-right: 1px solid #999;
}
.review .review_list > li a .text_box .info span:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}
.review .review_list > li a .text_box .ratings {
  display: flex;
  margin-bottom: 20px;
}
.review .review_list > li a .text_box .ratings li {
  margin-right: 5px;
}
.review .review_list > li a .text_box .ratings li img {
  height: 20px;
}
.review .pagination {
  margin-bottom: 50px;
}
.review .btn_box {
  display: flex;
  justify-content: center;
}

#reviewModal {
  min-width: 800px;
}
#reviewModal h4 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 20px;
}
#reviewModal form {
  margin-bottom: 30px;
}
#reviewModal form > label {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}
#reviewModal form > label legend {
  font-size: 16px;
  width: 100px;
}
#reviewModal form > label p {
  font-size: 16px;
}
#reviewModal form > label select {
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  border: 1px solid #ddd;
  font-size: 16px;
  padding: 10px 20px;
  appearance: none;
  background: url(../img/apply_select_arrow.png) no-repeat right 10px center /
    30px;
  color: #aaa;
}
#reviewModal form textarea {
  width: 100%;
  border: 1px solid #ddd;
  padding: 20px;
  box-sizing: border-box;
  min-height: 250px;
  margin-bottom: 10px;
  font-size: 16px;
}
#reviewModal form textarea::placeholder {
  color: #aaa;
}
#reviewModal .ratings {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 30px 0px;
  background: #f9f9f9;
  box-sizing: border-box;
}
#reviewModal .btn_box {
  display: flex;
  justify-content: center;
}
#reviewModal .btn_box .normal_btn {
  margin-right: 10px;
}

.rate {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}
.rate > input {
  display: none;
}
.rate > label {
  display: block;
  content: "";
  width: 33px;
  height: 33px;
  background: url(../img/star_rate_empty.png) no-repeat center / cover;
  cursor: pointer;
}
.rate input:checked ~ label,
.rate label:hover,
.rate label:hover ~ label {
  background: url(../img/star_rate.png) no-repeat center / cover;
}
.rate input:checked + .rate label:hover,
.rate input input:checked ~ label:hover,
.rate input:checked ~ .rate label:hover ~ label,
.rate label:hover ~ input:checked ~ label {
  background: url(../img/star_rate.png) no-repeat center / cover;
}

/* 커뮤니티 - 리뷰후기 02 */

.review_detail {
  padding: 80px 0px 100px;
}
.review_detail .detail_content {
  width: 100%;
  padding: 50px 120px 120px;
  box-sizing: border-box;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.review_detail .detail_content .subject {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ddd;
}
.review_detail .detail_content .subject a {
  display: flex;
  align-items: center;
}
.review_detail .only_mb {
  display: none;
}
.review_detail .detail_content .subject .favorite {
  margin-left: 20px;
}
.review_detail .detail_content .subject .normal_btn {
  margin-left: auto;
}
.review_detail .detail_content .subject a img {
  height: 40px;
  margin-right: 5px;
}
#term_back {
  height: 40px;
}
.review_detail .detail_content .subject a h3 {
  font-size: 30px;
  font-weight: var(--weight_bold);
}
.review_detail .detail_content .subject .favorite button {
  display: flex;
  align-items: center;
}
.review_detail .detail_content .subject .favorite button img {
  height: 40px;
  margin-right: 5px;
  content: url(../img/favorite_2.svg);
}
.review_detail .detail_content .subject .favorite .active img {
  content: url(../img/favorite.svg);
}
.review_detail .detail_content .subject .favorite button span {
  font-size: 20px;
  font-weight: var(--weight_bold);
  color: #f51c1c;
}
.review_detail .detail_content .info {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
.review_detail .detail_content .info span {
  font-size: 16px;
  color: #666;
  margin-right: 18px;
  padding-right: 18px;
  border-right: 1px solid #666;
}
.review_detail .detail_content .info span:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}
.review_detail .detail_content .content .review_img {
  width: 800px;
  margin: 0 auto 50px;
}
.review_detail .detail_content .content .review_img .img_box {
  margin-bottom: 20px;
}
.review_detail .detail_content .content .review_img .img_box img {
  width: 100%;
}
.review_detail .detail_content .content .review_img .ratings {
  display: flex;
  margin-bottom: 20px;
  padding: 30px 0px;
  width: 100%;
  background: #f9f9f9;
  justify-content: center;
}
.review_detail .detail_content .content .review_img .ratings li {
  margin-right: 5px;
}
.review_detail .detail_content .content .review_img .ratings li img {
  height: 40px;
}
.review_detail .detail_content .content article {
  font-size: 18px;
  line-height: 1.5;
}

/* 커뮤니티 - 단체응시문의 */

.group_test_wrap {
  padding: 80px 0px 100px;
}
.group_test_content > p {
  font-size: 30px;
  line-height: 1.5;
  margin-bottom: 80px;
}
.group_test_content > p b {
  font-weight: var(--weight_bold);
}
.group_test_content .benefit_circle {
  width: 660px;
  height: 660px;
  position: relative;
  margin: 0 auto 80px;
}
.group_test_content .benefit_circle .center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 530px;
  height: 530px;
  background: url(../img/benefit_circle_bg.png) no-repeat center center / cover;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: var(--weight_bold);
  color: var(--main-color);
}
.group_test_content .benefit_circle .left,
.group_test_content .benefit_circle .right,
.group_test_content .benefit_circle .top,
.group_test_content .benefit_circle .bottom {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: var(--main-color);
  color: #fff;
  line-height: 1.5;
  font-size: 24px;
  font-weight: var(--weight_bold);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: absolute;
}
.group_test_content .benefit_circle .left {
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.group_test_content .benefit_circle .right {
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.group_test_content .benefit_circle .top {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.group_test_content .benefit_circle .bottom {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.group_test_content .bottom_content {
  padding: 50px 120px;
  width: 100%;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  box-sizing: border-box;
}
.group_test_content .bottom_content article {
  background: #f9f9f9;
  font-size: 24px;
  padding: 65px 0px;
  line-height: 1.5;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}
.group_test_content .bottom_content .btn_box {
  display: flex;
  justify-content: center;
}
.group_test_content .bottom_content .btn_box .normal_btn {
  margin-right: 15px;
}

#applyModal .box {
  max-width: 700px;
}
#applyModal h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 25px;
}
#applyModal p {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 30px;
}
#applyModal .input_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
#applyModal .input_box label {
  width: calc(50% - 20px);
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
#applyModal .input_box label:last-child {
  margin-bottom: 0;
}
#applyModal .input_box label legend {
  font-size: 16px;
  width: 30%;
}
#applyModal .input_box label input,
#applyModal .input_box label select {
  padding: 10px 20px;
  height: 40px;
  font-size: 14px;
  border: 1px solid #ddd;
  width: 70%;
}
#applyModal .input_box label select {
  background: url(../img/apply_select_arrow.png) no-repeat right 10px center /
    30px;
  appearance: none;
}
#applyModal textarea {
  width: 100%;
  border: 1px solid #ddd;
  padding: 20px;
  box-sizing: border-box;
  min-height: 250px;
  margin-bottom: 10px;
  font-size: 16px;
}
#applyModal textarea::placeholder {
  color: #aaa;
}
#applyModal .privacy {
  padding: 15px;
  background: #f9f9f9;
  border: 1px solid #eee;
  margin-bottom: 30px;
}
#applyModal .privacy .acc_subject {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#applyModal .privacy .acc_subject label {
  display: flex;
  align-items: center;
  cursor: pointer;
}
#applyModal .privacy .acc_subject label input {
  margin-right: 5px;
}
#applyModal .privacy .acc_subject label span {
  font-size: 14px;
}
#applyModal .privacy .acc_subject .agree_fold_btn {
  font-size: 12px;
}
#applyModal .privacy .acc_subject .agree_fold_btn img {
  margin-left: 5px;
  height: 6.6px;
}
#applyModal .privacy .acc_subject .active img {
  transform: rotate(180deg);
}
#applyModal .privacy .acc_article {
  background: #fff;
  margin-top: 10px;
  min-height: 150px;
  overflow-y: auto;
  padding: 15px 10px;
  border: 1px solid #eeeeee;
  font-size: 8px;
  line-height: 1.5;
  box-sizing: border-box;
}
#applyModal .btn_box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}
#applyModal .btn_box .normal_btn {
  margin-right: 15px;
}
#applyModal span {
  font-size: 14px;
  display: flex;
  justify-content: center;
}

/* 커뮤니티 - 다운로드 센터 */

.download_wrap {
  padding: 80px 0px 100px;
}
.download_content > p {
  font-size: 30px;
  line-height: 1.5;
  margin-bottom: 80px;
}
.download_content > p b {
  font-weight: var(--weight_bold);
}
.download_content ul {
  display: flex;
  justify-content: space-between;
}
.download_content ul li {
  width: calc(50% - 12px);
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.download_content ul li .box {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 80px 50px;
  box-sizing: border-box;
}
.download_content ul li.item_1 {
  background: url(../img/download_item_1.png) no-repeat right 50px bottom 50px /
    30%;
}
.download_content ul li.item_2 {
  background: url(../img/download_item_2.png) no-repeat right 50px bottom 50px /
    30%;
}
.download_content ul li p {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 20px;
}
.download_content ul li span {
  display: block;
  font-size: 24px;
  line-height: 1.5;
  color: #666;
  margin-bottom: 10%;
}
.download_content ul li .btn_box {
  display: flex;
}
.download_content ul li .btn_box .submit_btn {
  margin-right: 15px;
}
.download_content ul li .opt_list > p {
  font-size: 18px;
  font-weight: normal;
}
.download_content ul li .opt_list h4 {
  font-size: 16px;
  margin-bottom: 20px;
}
.download_content ul li .opt_list > div + div {
  margin-top: 40px;
}

/* 마이페이지 */

.mypage {
  padding: 80px 0px 100px;
}

.mypage .mypage_nav {
  margin-bottom: 80px;
}
.mypage .mypage_nav ul {
  display: flex;
  justify-content: center;
}
.mypage .mypage_nav ul li {
  width: 342px;
  margin-right: 24px;
}
.mypage .mypage_nav ul li:last-child {
  margin-right: 0;
}
.mypage .mypage_nav ul li a {
  transition: all 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  background: #eeeeee;
  color: #aaa;
  font-size: 30px;
  font-weight: var(--weight_bold);
  padding: 23px 0px;
  width: 100%;
  text-align: center;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.mypage .mypage_nav ul li a img {
  height: 42px;
  margin-right: 15px;
}
.mypage .mypage_nav ul li.active a {
  background: var(--main-color);
  color: #fff;
}

.mypage h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 20px;
}
.mypage .title {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mypage .title h4 {
  margin-bottom: 0;
}
.mypage .title ul.order_process {
  display: flex;
  align-items: center;
}
.mypage .title ul.order_process li {
  display: flex;
  align-items: center;
  margin-left: 17px;
}
.mypage .title ul.order_process li span {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: var(--weight_bold);
  width: 50px;
  height: 50px;
  background: #eee;
  color: #fff;
  border-radius: 50%;
  margin-right: 10px;
}
.mypage .title ul.order_process li p {
  font-size: 24px;
  font-weight: var(--weight_bold);
  color: #aaa;
}
.mypage .title ul.order_process .active span {
  background-color: var(--main-color);
}
.mypage .title ul.order_process .active p {
  color: #222;
}
.mypage .title ul.order_process li img {
  height: 30px;
}

.mypage_table li {
  border-radius: 3px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mypage_table .table_header {
  background: #f9f9f9;
  height: 50px;
  border-top: 1px solid #dddddd;
  margin-bottom: 20px;
}
.mypage_table .table_header div {
  font-size: 16px;
  text-align: center;
}

.mypage_table .table_row {
  height: 100px;
  background-color: #ffffff;
  border-radius: 20px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  margin-bottom: 10px;
}
.mypage_table .table_row div {
  text-align: center;
}
.mypage_table .table_row div b {
  font-size: 20px;
  line-height: 1.4;
  font-weight: var(--weight_bold);
}
.mypage_table .table_row div p {
  font-size: 20px;
  color: #3d3d3d;
}
.mypage_table .table_row div .price {
  font-weight: var(--weight_medium);
}

.mypage_table .table_row div .process {
  width: 120px;
  height: 48px;
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: var(--weight_bold);
  margin: 0 auto;
}
.mypage_table .table_row div .process.start {
  color: #fff;
  background: var(--main-color);
}
.mypage_table .table_row div .process.continue {
  color: var(--main-color);
  border: 1px solid var(--main-color);
  background: #fff;
}
.mypage_table .table_row div .process.report {
  color: #de224e;
  border: 1px solid #de224e;
}
.mypage_table .table_row div .gray_btn {
  transition: all 0.3s;
  width: 100px;
  height: 48px;
  border-radius: 15px;
  background: #f9f9f9;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.mypage_table .table_row div .gray_btn:hover {
  background: #f1f1f1;
}
.mypage_table .table_row div .line_btn {
  font-size: 18px;
  text-decoration: underline;
}
.mypage_table .table_row div .line_btn.on {
  color: var(--main-color);
}
.mypage_table .table_row div label {
  cursor: pointer;
}
.mypage_table .table_row div label input {
  margin-right: 5px;
}

.mypage_table .table_row div .see_explain {
  transition: all 0.3s;
  width: 100px;
  height: 48px;
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: var(--weight_bold);
  margin: 0 auto;
  color: var(--main-color);
  border: 1px solid var(--main-color);
  background: #fff;
}
.mypage_table .table_row div .see_explain:hover {
  background: var(--main-color);
  color: #fff;
}

.mypage_table .table_row div .process_text {
  font-size: 20px;
}
.mypage_table .table_row div .process_text.before {
  color: #aaa;
}
.mypage_table .table_row div .process_text.on {
  color: #222;
}
.mypage_table .table_row div .process_text.waiting {
  color: #3d3d3d;
}
.mypage_table .table_row div .process_text.finish {
  color: #2446ff;
}

.mypage_table .table_row div .count {
  justify-content: center;
}

.mypage_table .btn_box {
  display: flex;
  justify-content: center;
}
.mypage_table .btn_box .normal_btn {
  margin-right: 15px;
  font-weight: var(--weight_medium);
}

/* 마이페이지 - 학습하기 */

.mypage_table.learning li .col_1 {
  flex-basis: 30%;
}
.mypage_table.learning li .col_2 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_3 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_4 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_5 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_6 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_7 {
  flex-basis: 10.8%;
}
.mypage_table.learning li .col_8 {
  flex-basis: 10.8%;
}

/* 마이페이지 - 결제관리 */

.mypage_table.cart ul {
  margin-bottom: 20px;
}
.mypage_table.cart .total_price {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: #f9f9f9;
  border-radius: 20px;
  margin-bottom: 25px;
  height: 100px;
}
.mypage_table.cart .total_price i {
  font-size: 20px;
  font-weight: var(--weight_medium);
  margin-right: 30px;
}
.mypage_table.cart .total_price .price_box {
  align-items: center;
}
.mypage_table.cart .total_price .discount {
  font-size: 24px;
  font-weight: var(--weight_bold);
}
.mypage_table.cart .total_price .price {
  font-size: 24px;
}
.mypage_table.cart .total_price .tag_price {
  font-size: 20px;
  font-weight: var(--weight_medium);
}
.mypage_table.cart .bottom {
  margin-bottom: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mypage_table.cart .bottom label {
  font-size: 16px;
  display: flex;
  align-items: center;
  color: #3d3d3d;
  margin-left: 62px;
}
.mypage_table.cart .bottom label input {
  margin-right: 5px;
}
.mypage_table.cart .bottom label span {
  margin-right: 15px;
}
.mypage_table.cart .bottom label button {
  font-size: 14px;
  padding: 8px 16px;
  border-radius: 10px;
  border: 1px solid #ddd;
}
.mypage_table.cart .bottom > span {
  font-size: 16px;
  color: #3d3d3d;
}

.mypage_table.cart li .col_1 {
  flex-basis: 10%;
}
.mypage_table.cart li .col_2 {
  flex-basis: 30%;
}
.mypage_table.cart li .col_3 {
  flex-basis: 30%;
}
.mypage_table.cart li .col_4 {
  flex-basis: 30%;
}
.basket_none_list {
  width: 100%;
  text-align: center;
  padding: 100px 0;
  font-size: 19px;
}

.mypage_table.confirm ul {
  border-bottom: 1px solid #ddd;
  margin-bottom: 50px;
}
.mypage_table.confirm .table_header {
  margin-bottom: 0;
}
.mypage_table.confirm .table_row {
  min-height: 60px;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 0;
  border-bottom: 1px solid #eee;
}
.mypage_table.confirm .table_header,
.mypage_table.confirm .table_row {
  padding: 0px 50px;
}

.mypage_table.confirm li:last-child {
  border-bottom: 0;
}
.mypage_table.confirm li .col_1 {
  flex-basis: 40%;
  /* white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; */
}

.mypage_table.confirm li .col_2 {
  flex-basis: 30%;
}
.mypage_table.confirm li .col_3 {
  flex-basis: 30%;
}
/* #paymentModal{
  display: none;
} */
#paymentModal .box {
  min-width: 400px;
  text-align: center;
}
#paymentModal .box img {
  height: 50px;
  margin-bottom: 20px;
}
#paymentModal .box h4 {
  font-size: 16px;
  font-weight: var(--weight_medium);
  margin-bottom: 40px;
}

.mypage_table.history .pagination {
  margin-bottom: 80px;
}
.mypage_table.history .pagination ul {
  border-bottom: 0;
}

.mypage_table.history ul {
  border-bottom: 1px solid #ddd;
  margin-bottom: 50px;
}
.mypage_table.history .table_header {
  margin-bottom: 0;
}
.mypage_table.history .table_row {
  min-height: 60px;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 0;
  border-bottom: 1px solid #eee;
}
.mypage_table.history .table_header,
.mypage_table.history .table_row {
  padding: 10px 50px;
}
.mypage_table.history li p span {
  font-size: 16px;
}

.mypage_table.history li:last-child {
  border-bottom: 0;
}
.mypage_table.history li .col_1 {
  flex-basis: 20%;
}
.mypage_table.history li .col_2 {
  flex-basis: 10%;
}
.mypage_table.history li .col_3 {
  flex-basis: 16.6%;
}
.mypage_table.history li .col_4 {
  flex-basis: 16.6%;
}
.mypage_table.history li .col_5 {
  flex-basis: 16.6%;
}
.mypage_table.history li .col_6 {
  flex-basis: 16.6%;
}

/* 마이페이지 - 1:1 문의하기 */

.mypage_table.qa li {
  padding: 0px 50px;
}
.mypage_table.qa li .col_1 {
  flex-basis: 5%;
}
.mypage_table.qa li .col_2 {
  flex-basis: 5%;
}
.mypage_table.qa li .col_3 {
  flex-basis: 5%;
}
.mypage_table.qa li .col_4 {
  flex-basis: 40%;
}
.mypage_table.qa li .col_5 {
  flex-basis: 10%;
}
.mypage_table.qa li .col_6 {
  flex-basis: 10%;
}
.mypage_table.qa li .col_7 {
  flex-basis: 10%;
}

.mypage_table.qa li .subject {
  text-align: left;
  padding-left: 30px;
}
.mypage_table.qa li .subject a {
  font-size: 20px;
}
.mypage_table.qa li .subject a img {
  margin-right: 10px;
  margin-bottom: 4px;
}

.mypage_table.qa .table_header .modify {
  width: 80px;
}
.mypage_table.qa .table_row .modify {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: var(--weight_bold);
  height: 48px;
  width: 80px;
  border: 1px solid #ddd;
  border-radius: 15px;
}

.mypage_table.qa .bottom {
  position: relative;
  margin-bottom: 80px;
}
.mypage_table.qa .bottom label {
  font-size: 16px;
  display: flex;
  align-items: center;
  color: #3d3d3d;
  position: absolute;
  left: 77px;
}
.mypage_table.qa .bottom label input {
  margin-right: 5px;
}
.mypage_table.qa .bottom label span {
  margin-right: 15px;
}
.mypage_table.qa .bottom label a {
  font-size: 14px;
  padding: 8px 16px;
  border-radius: 10px;
  border: 1px solid #ddd;
  background: #fff;
}
.mypage_table.qa .bottom > span {
  font-size: 16px;
  color: #3d3d3d;
}

.mypage_table.qa .pagination li {
  padding: 0;
}

#inquiryModal .box {
  min-width: 600px;
}
#inquiryModal_modal {
  display: none;
}
#inquiryModal .box h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 22px;
}
#inquiryModal .box form {
  margin-bottom: 30px;
}
#inquiryModal .box form label {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
#inquiryModal .box form label legend {
  width: 30%;
}
#inquiryModal .box form label select {
  background: url(../img/apply_select_arrow.png) no-repeat right 10px center /
    30px;
  appearance: none;
  width: 200px;
  height: 40px;
  font-size: 16px;
  padding: 0px 20px;
  color: #aaa;
  border: 1px solid #ddd;
}
#inquiryModal .box form input[type="text"] {
  width: 100%;
  height: 40px;
  border: 1px solid #dddddd;
  padding: 10px 20px;
  font-size: 16px;
  margin-bottom: 10px;
}
#inquiryModal .box form input[type="text"]::placeholder,
#inquiryModal .box form textarea::placeholder {
  color: #aaa;
}
#inquiryModal .box form textarea {
  padding: 20px;
  min-height: 250px;
  width: 100%;
  border: 1px solid #ddd;
  font-size: 16px;
}
#inquiryModal .box .btn_box {
  display: flex;
  align-items: center;
  justify-content: center;
}
#inquiryModal .box .btn_box .normal_btn {
  margin-right: 15px;
}

#modifyModal_2 .box {
  min-width: 600px;
}
#modifyModal_2 .box h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 22px;
}
#modifyModal_2 .box form {
  margin-bottom: 30px;
}
#modifyModal_2 .box form label {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
#modifyModal_2 .box form label legend {
  width: 30%;
}
#modifyModal_2 .box form label select {
  background: url(../img/apply_select_arrow.png) no-repeat right 10px center /
    30px;
  appearance: none;
  width: 200px;
  height: 40px;
  font-size: 16px;
  padding: 0px 20px;
  color: #aaa;
  border: 1px solid #ddd;
}
#modifyModal_2 .box form input[type="text"] {
  width: 100%;
  height: 40px;
  border: 1px solid #dddddd;
  padding: 10px 20px;
  font-size: 16px;
  margin-bottom: 10px;
}
#modifyModal_2 .box form input[type="text"]::placeholder,
#modifyModal_2 .box form textarea::placeholder {
  color: #aaa;
}
#modifyModal_2 .box form textarea {
  padding: 20px;
  min-height: 250px;
  width: 100%;
  border: 1px solid #ddd;
  font-size: 16px;
}
#modifyModal_2 .box .btn_box {
  display: flex;
  align-items: center;
  justify-content: center;
}
#modifyModal_2 .box .btn_box .normal_btn {
  margin-right: 15px;
}

#deleteModal .box .btn_box {
  display: flex;
  align-items: center;
  justify-content: center;
}
#deleteModal .box .btn_box .normal_btn {
  margin-right: 15px;
}

/* 마이페이지 - 회원정보 */

.mypage.member_info .info_box {
  width: 100%;
  box-sizing: border-box;
  padding: 50px 120px;
  border-radius: 30px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.mypage.member_info .info_box h4 {
  font-size: 30px;
  font-weight: var(--weight_bold);
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #222;
}
.mypage.member_info .info_box form {
  margin-bottom: 80px;
}
.mypage.member_info .info_box label {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  min-height: 45px;
}
.mypage.member_info .info_box label legend {
  width: 240px;
  font-size: 20px;
  font-weight: var(--weight_medium);
}
.mypage.member_info .info_box label p {
  font-size: 20px;
  display: flex;
  align-items: center;
}
.mypage.member_info .info_box label .verification {
  font-size: 14px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 10px;
  display: block;
  margin-left: 10px;
}
.mypage.member_info .info_box .explain {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 30px;
}
.mypage.member_info .info_box label input {
  border: 1px solid #dddddd;
  width: 250px;
  height: 48px;
  padding: 10px 20px;
  font-size: 20px;
}
.mypage.member_info .info_box label a {
  font-size: 16px;
  font-weight: var(--weight_bold);
}
.mypage.member_info .btn_box {
  display: flex;
  align-items: center;
  justify-content: center;
}
.mypage.member_info .btn_box .normal_btn {
  margin-right: 15px;
}

/* 약관 */
.term_wrap {
  background: #f9f9f9;
  padding: 35px 0 100px;
}
.term_wrap h1 {
  font-size: 30px;
  font-weight: 700;
  text-align: start;
}
.term_wrap .inner {
  width: 100%;
  max-width: 1480px;
  margin: 20px auto 0;
  padding: 0 20px;
  box-sizing: border-box;
}
.term_wrap .inner > div {
  height: 800px;
  background: #ffffff;
  border: solid 1px #dddddd;
  padding: 30px 50px;
  overflow-y: auto;
  font-size: 20px;
  line-height: 1.8;
}
.term_wrap h2 {
  font-weight: 700;
}
.term_wrap h2:not(:nth-of-type(1)) {
  margin-top: 40px;
}
.term_wrap .box {
  margin-top: 20px;
}
.term_wrap li ul {
  padding-left: 20px;
}

/* 성적분석 */
.report_analysis {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
  padding: 100px 20px;
}
.report_analysis .logo {
  width: 230px;
  display: block;
  margin: 0 auto;
}
.report_analysis .logo img {
  width: 100%;
}
.report_analysis .tit_box {
  width: 100%;
  background: #fbfbfb;
  padding: 32px 20px 40px;
  margin-top: 32px;
  text-align: center;
  box-sizing: border-box;
}
.report_analysis .tit_box h1 {
  font-size: 24px;
  font-weight: 700;
  color: var(--main-color);
}
.report_analysis .tit_box p {
  font-size: 20px;
  line-height: 1.4;
  margin-top: 12px;
}
.report_analysis .summary_box {
  display: flex;
  flex-direction: column;
  margin-top: 8px;
}
.report_analysis .summary_box .btn_print {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 82px;
  height: 32px;
  background: linear-gradient(#ffffff, #d6d5d5);
  border: solid 1px #d1d1d1;
  border-radius: 30px;
  color: #929292;
  font-size: 16px;
}
.report_analysis .summary_box > .cont {
  display: flex;
  align-items: flex-start;
  margin-top: 26px;
}
.report_analysis .summary_box .cont > div {
  width: 100%;
  font-size: 16px;
}
.report_analysis .summary_box .cont .head {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  background: var(--main-color);
  color: #ffffff;
  font-weight: bold;
}
.report_analysis .summary_box .cont .cont {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 68px;
}
.report_analysis .content {
  margin-top: 26px;
}
.report_analysis .content > div + div {
  margin-top: 80px;
}
.report_analysis .content .head h2 {
  font-size: 24px;
  font-weight: 700;
  color: var(--main-color);
}
.report_analysis .content .head p {
  font-size: 16px;
  line-height: 1.5;
  border: solid 1px #707070;
  margin-top: 20px;
  padding: 16px 20px;
}
.report_analysis .table_tit {
  display: block;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 700;
  color: var(--main-color);
  margin-top: 24px;
}
.report_analysis .table_tit + .summary_table {
  margin-top: 18px;
}
.report_analysis .summary_table {
  display: flex;
  margin-top: 26px;
}
.report_analysis .summary_table .tit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 242px;
  min-width: 242px;
  background: var(--main-color);
  color: #ffffff;
  font-weight: bold;
}
.report_analysis .summary_table .table_wrap {
  display: flex;
  width: 100%;
}
.report_analysis .summary_table table {
  width: 100%;
}
.report_analysis .summary_table table + table th:first-child {
  border-left: solid 1px #ffffff;
}
.report_analysis .summary_table table + table td:first-child {
  border-left: solid 1px #707070;
}
.report_analysis .summary_table table.w30 {
  width: 34%;
}
.report_analysis .summary_table th {
  height: 40px;
  background: #737373;
  color: #ffffff;
  vertical-align: middle;
  font-weight: bold;
}
.report_analysis .summary_table th.head {
  background: #535353;
}
.report_analysis .summary_table td {
  height: 66px;
  border-bottom: solid 1px #707070;
  vertical-align: middle;
  text-align: center;
}

.report_analysis .table_unit {
  margin-top: 30px;
}
.report_analysis .table_unit > div + div {
  margin-top: -1px;
}
.report_analysis .table_unit > div:not(:first-child) .tooltip_txt {
  display: none;
}
.report_analysis .table_unit > div:not(:first-child) .left > div {
  border-top: solid 1px #ffffff;
}
.report_analysis .table_unit .tooltip_txt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 46px;
  color: var(--main-color);
  font-size: 16px;
  font-weight: 700;
  border-top: solid 1px #707070;
  border-right: solid 1px #707070;
}
.report_analysis .table_unit > div {
  display: flex;
}
.report_analysis .table_unit .left {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 242px;
  min-width: 242px;
}
.report_analysis .table_unit .left .tooltip_txt {
  border-left: solid 1px #707070;
  font-weight: 900;
}
.report_analysis .table_unit .left > div {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: var(--main-color);
  color: #ffffff;
  text-align: center;
  line-height: 1.8;
  border-right: solid 1px var(--main-color);
  border-left: solid 1px var(--main-color);
  font-weight: bold;
}
.grid_table > .part > ul > li > div > span:first-child {
  font-weight: bold;
}
.grid_table > ul > li > div > span:first-child {
  font-weight: bold;
}
.part_tit {
  font-weight: bold;
}
.report_analysis .table_unit .right {
  flex: 1;
}
#write_sec_last {
  border-bottom: solid 1px #707070;
}
.report_analysis .table_unit .right > div > div > div {
  border-top: solid 1px #707070;
}
.report_analysis .table_unit .right .top {
  display: flex;
}
.report_analysis .table_unit .right .top > div {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.report_analysis .table_unit .right .top .percent {
  width: 283px;
  min-width: 283px;
}
.report_analysis .table_unit .right .top .percent div {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-right: solid 1px #707070;
}
.report_analysis .table_unit .right .bottom {
  background: #fbfbfb;
  border-left: solid 1px var(--main-color);
  border-top: solid 1px #707070;
  /* border-bottom: solid 1px #707070; */
  border-right: solid 1px #707070;
  padding: 24px;
  line-height: 1.8;
}
#reading10_comment {
  border-bottom: solid 1px #707070;
}
#listen08_comment {
  border-bottom: solid 1px #707070;
}
/* .report_analysis .table_unit .right .bottom:last-child {
  border-bottom: solid 1px #707070;
} */

.report_analysis .grid_table {
  display: flex;
  width: 100%;
}
.report_analysis .grid_table .part {
  display: flex;
  width: 100%;
}
.report_analysis .grid_table ul {
  display: flex;
  flex: 1;
}
.report_analysis .grid_table li {
  flex: 1;
  border-right: solid 1px #707070;
}
.report_analysis .grid_table li span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 58px;
}
.report_analysis .grid_table li span:last-child {
  border-top: solid 1px #707070;
}
.report_analysis .grid_table .part_tit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  border-right: solid 1px #707070;
}

.report_analysis .listen .table_unit .right .top .percent {
  width: 178px;
  min-width: 178px;
}

.report_analysis .table_unit .write_sec > div {
  display: flex;
}
.report_analysis .table_unit .write_sec > div > div {
  border-right: solid 1px #707070;
}
.report_analysis .table_unit .write_sec > div:not(:first-child) .tooltip_txt {
  display: none;
}
/* .report_analysis .table_unit .write_sec > div:last-child {
  border-bottom: solid 1px #707070;
} */
.report_analysis .table_unit .write_sec > div > div > div {
  display: flex;
  align-items: center;
  line-height: 1.5;
  min-height: 50px;
  padding: 12px 20px;
}
.report_analysis .table_unit .write_sec .col1 {
  width: 178px;
}
.report_analysis .table_unit .write_sec .col1 > div {
  justify-content: center;
  text-align: center;
}
.report_analysis .table_unit .write_sec .col2 {
  width: 70px;
}
.report_analysis .table_unit .write_sec .col2 > div {
  justify-content: center;
  text-align: center;
}
.report_analysis .table_unit .write_sec .col3 {
  flex: 1;
}

/* 반응형 미디어쿼리 */

@media (max-width: 1440px) {
  #container {
    width: 100%;
    padding: 0px 20px;
    box-sizing: border-box;
  }

  .msc_1 .msc_1_nav {
    width: calc(100% - 40px);
  }
  .msc_2 .text_box p {
    font-size: 40px;
  }
  .msc_5 .blog_nav ul li a p {
    font-size: 16px;
  }

  footer .ft_content {
    width: 990px;
  }

  .msc_4 .notice_box_2 {
    margin-bottom: 0;
  }

  .sub_banner {
    padding: 0px 0px 25px;
  }
  .sub_nav nav ul li {
    min-width: 170px;
  }
  .course_card_wrap .course_card_box ul li {
    width: calc(50% - 12px);
    height: auto;
  }
  .course_card_wrap .course_card_box {
    width: calc(70% - 24px);
  }
  .course_card_wrap .option_box {
    width: 30%;
  }

  .course_detail .detail_title.has_option {
    width: calc(100% - 40px);
  }

  .value_pack_wrap .info_box .text_box > ul > li .process ul {
    padding: 30px 100px;
  }

  .test_center_wrap ul li {
    width: 392px;
    height: 392px;
  }

  .msc_4 .schedule_box .item h3 {
    font-size: 38px;
  }
  .msc_4 .schedule_box .schedule .date li b {
    font-size: 24px;
  }
  .msc_4 .schedule_box .schedule .date li span {
    font-size: 24px;
  }
  .msc_4 .schedule_box .schedule .month .current a {
    font-size: 18px;
  }

  .review .review_list > li a .img_box {
    margin-right: 50px;
  }
  .review .review_list > li a .text_box {
    width: 880px;
  }
}

@media (max-width: 1280px) {
  .top_banner {
    width: 100%;
    height: 130px;
    position: relative;
  }
  #sampleModal.test_05_sample .pc_sample_image {
    display: none;
  }
  #sampleModal.test_05_sample .mo_sample_image {
    display: block;
  }
  .sleeper_account .wrapper {
    margin: 100px auto 60px;
  }
  .sticker_btn {
    display: none !important;
  }
  .family {
    display: block !important;
  }
  .pc_table {
    display: none;
  }
  .pc_table_2 {
    display: none;
  }
  .pc_table_3 {
    display: none;
  }
  .mo_table {
    display: block;
  }
  .mo_table_2 {
    display: block;
  }
  .mo_table_3 {
    display: block;
  }
  #header #container .only_pc {
    display: none;
  }
  #header #container {
    transition: all 0.3s;
    position: fixed;
    top: 60px;
    display: none;
    flex-direction: column;
    padding-top: 30px;
    width: 100vw;
    height: calc(100vh - 60px);
    background: #fff;
    align-items: flex-start;
    overflow-y: auto;
    padding-bottom: 40px;
  }
  #header .mobile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 60px;
    padding: 0px 20px;
  }
  #header.active .mobile {
    top: 0;
    position: fixed;
    background: #fff;
    width: 100%;
    box-sizing: border-box;
  }
  #header .mobile .logo img {
    height: 20px;
  }
  #header .mobile #headerBtn {
    display: block;
    width: 30px;
    height: 30px;
    background: url(../img/mobile_nav.png) no-repeat center / 30px;
  }
  #header.active .mobile #headerBtn {
    background: url(../img/mobile_cancel.png) no-repeat center / 30px;
  }
  #header.active #container {
    transition: all 0.3s;
    display: flex;
  }
  #header.active #container .logo {
    display: none;
  }
  #header.active #container nav {
    margin: 0 auto;
  }
  #header.active #container nav > ul {
    flex-direction: column;
    align-items: flex-start;
  }
  #header.active #container nav > ul > li {
    margin-right: 0;
    margin-bottom: 30px;
    width: 100%;
    max-width: 330px;
  }
  #header.active #container nav > ul > li:first-child {
    margin-bottom: 0;
  }
  #header.active #container nav > ul > li > a {
    font-size: 20px;
  }
  #header.active #container nav > ul > li .sub_menu {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    margin-bottom: 30px;
  }
  #header.active #container nav > ul > li .sub_menu li {
    width: 33.3%;
    margin-bottom: 20px;
  }
  #header.active #container nav > ul > li .sub_menu li:last-child {
    margin-bottom: 0;
  }
  #header.active #container nav > ul > li .sub_menu li a {
    font-size: 14px;
    color: #666;
    font-weight: var(--weight_regular);
  }
  #header.active #container .member {
    width: 100%;
    max-width: 330px;
    margin: 0 auto;
  }
  #header.active .member ul {
    justify-content: center;
  }

  .main_visual {
    padding: 0 0 90px;
  }
  .main_visual .swiper-pagination {
    left: 65px;
    bottom: 65px;
  }

  .msc_1 {
    padding: 200px 0px 100px;
  }
  .msc_1 .msc_1_nav ul {
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .msc_1 .msc_1_nav ul li {
    width: 33.3%;
    box-sizing: border-box;
    margin-right: 0;
    padding-right: 0;
    text-align: center;
  }
  .msc_1 .msc_1_nav ul li:nth-child(-3n + 6) {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
  }
  .msc_1 .msc_1_1 ul li {
    width: 33.3%;
    margin-right: 0;
  }
  .msc_1 .msc_1_2 .text_box h3 {
    font-size: 45px;
  }
  .msc_1 .msc_1_2 ul li {
    width: calc(33.3% - 12px);
  }
  .msc_1 .msc_1_2 ul li p {
    font-size: 18px;
  }

  .msc_2 {
    padding: 100px 0px;
  }
  .msc_2 .text_box {
    top: 30px;
    left: 30px;
  }
  .msc_2 a {
    left: 30px;
    bottom: 30px;
    font-size: 14px;
    border-radius: 15px;
  }
  .msc_2 .single_item .logo {
    bottom: 30px;
    right: 30px;
  }
  .msc_2 .single_item .logo img {
    height: 85px;
  }
  .msc_2 .text_box p {
    font-size: 24px;
  }
  .msc_2 .text_box span {
    font-size: 12px;
  }

  .msc_3 {
    padding: 100px 0px;
  }
  .msc_3 #container {
    padding: 0;
  }
  .msc_3 h3 {
    font-size: 45px;
  }
  .msc_3 .swiper_2 .swiper-slide {
    width: 400px;
  }
  .msc_3 .swiper_2 .swiper-slide .box {
    height: 350px;
  }

  .msc_4 {
    padding: 100px 0px;
  }
  .msc_4 #container {
    padding: 0;
  }
  .msc_4 .msc_4_title h3 {
    font-size: 45px;
  }
  .msc_4 .msc_4_title p {
    font-size: 16px;
  }
  .msc_4 .notice_box_2 {
    margin-bottom: 100px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide {
    width: 400px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide a {
    height: auto;
  }

  .msc_4 .schedule_box .box {
    flex-direction: column;
    padding: 0px 20px;
  }
  .msc_4 .schedule_box .item {
    width: 100%;
    height: auto;
    padding: 35px 30px;
    margin-bottom: 20px;
  }
  .msc_4 .schedule_box .event ul li a {
    display: flex;
    align-items: center;
    gap: 0 40px;
  }
  .msc_4 .schedule_box .event ul li a > div {
    width: 100%;
  }
  .msc_4 .schedule_box .event ul li .txt_wrap .tit {
    font-size: 24px;
  }
  .msc_4 .schedule_box .event ul li .txt_wrap .date {
    margin-top: 16px;
  }
  .msc_4 .schedule_box .event ul li .img_wrap {
    height: auto;
  }
  .msc_4 .schedule_box .event ul li .img_wrap img {
    position: initial;
    transform: translate(0);
  }

  .msc_5 .text_box h3 {
    margin-bottom: 40px;
  }
  .msc_5 .text_box ul {
    flex-direction: column;
    margin-bottom: 50px;
  }
  .msc_5 .text_box ul li:first-child {
    margin-right: 0;
    border-right: 0;
    padding-right: 0;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #fff;
  }
  .msc_5 .blog_nav ul {
    flex-wrap: wrap;
  }
  .msc_5 .blog_nav ul li {
    width: calc(50% - 12px);
    margin-bottom: 24px;
  }

  footer {
    padding: 50px 0px 150px;
  }
  footer #container {
    flex-direction: column;
    position: relative;
  }
  footer .ft_content .ft_top {
    margin-bottom: 100px;
  }
  footer .ft_content {
    width: 100%;
  }
  footer .ft_content .ft_middle {
    flex-direction: column;
  }
  footer .ft_content .ft_middle .ft_fold {
    margin-bottom: 40px;
  }
  footer .ft_content .ft_middle ul {
    padding: 0;
  }
  footer .ft_sub_link .sns_link {
    position: absolute;
    left: 15px;
    top: 55px;
  }
  footer .ft_sub_link .to_top {
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    bottom: -80px;
  }
  footer .ft_sub_link .to_top img {
    height: 48px;
  }
  footer .ft_bottom ul li {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 30px;
  }
  footer .ft_bottom ul li:last-child {
    margin-bottom: 0;
  }
  footer .ft_bottom ul li .img_box {
    margin-bottom: 20px;
  }
  footer .ft_bottom ul li p br {
    display: none;
  }

  .sub_banner .swiper-slide a {
    border-radius: 20px;
  }
  .sub_banner .swiper-pagination {
    left: 30px;
    bottom: 30px;
  }
  .sub_banner .swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0px 3px;
  }
  .sub_banner
    .swiper-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 23px;
  }

  .sub_nav {
    margin-top: 20px;
  }
  .sub_nav nav {
    position: relative;
    width: 100%;
  }
  .sub_nav nav .btn_select {
    width: 100%;
    font-size: 16px;
    font-weight: var(--weight_bold);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    border: 1px solid #222;
    border-radius: 20px 20px 0px 0px;
    border-bottom: 0;
    position: relative;
  }
  .sub_nav nav .btn_select::after {
    display: block;
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    background: url(../img/acc_subject_arrow.png) no-repeat center / cover;
    width: 15px;
    height: 9px;
  }
  .sub_nav nav .btn_select:hover {
    color: var(--main-color);
  }
  .sub_nav nav ul {
    display: none;
    position: absolute;
    top: 0;
    flex-direction: column;
    width: 100%;
    background: #fff;
    padding: 15px 0px;
    z-index: 100;
    border: 1px solid #222;
    border-radius: 20px;
  }
  .sub_nav nav ul li {
    position: relative;
    width: 100%;
    min-width: auto;
    border-radius: 0;
    border: 0;
    background: #fff;
  }
  .sub_nav nav ul li.active {
    border-bottom: 0;
  }
  .sub_nav nav ul li.active::after {
    display: block;
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../img/acc_subject_arrow.png) no-repeat center / cover;
    width: 15px;
    height: 9px;
  }
  .sub_nav nav ul li a {
    font-size: 16px;
    font-weight: var(--weight_bold);
    padding: 10px 0px;
    color: #222;
  }
  .sub_nav nav ul li a:hover {
    color: var(--main-color);
  }

  .course_card_wrap .course_card_box {
    width: 100%;
  }

  .course_card_wrap .option_box {
    padding: 20px;
    border-radius: 20px 20px 0 0;
    bottom: 0;
    height: auto;
    width: calc(100% - 40px);
    position: fixed;
    z-index: 1000;
    top: auto;
    margin-bottom: 0;
  }
  .course_card_wrap .option_box .total_price.mobile {
    display: flex;
    position: relative;
  }
  .course_card_wrap .option_box .total_price.mobile::after {
    display: block;
    content: "";
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    background: url(../img/acc_subject_arrow.png) no-repeat center / cover;
    width: 10px;
    height: 6px;
  }
  .course_card_wrap .option_box .total_price.active::after {
    transform: rotate(360deg);
  }

  .course_card_wrap .option_box .option_list {
    margin-bottom: 20px;
    display: none;
    height: auto;
  }
  .course_card_wrap .option_box .total_price span {
    font-size: 14px;
  }
  .course_card_wrap .option_box .total_price p {
    font-size: 20px;
    padding-right: 18px;
  }
  .course_card_wrap .option_box .total_price p b {
    font-size: 16px;
  }
  .course_card_wrap .option_box .option_bottom .total_price {
    display: none;
  }
  .course_card_wrap .option_box .option_list .item .subject p {
    font-size: 16px;
  }

  .course_card_wrap .option_box .option_bottom .btn {
    width: calc(50% - 5px);
  }

  .course_card_wrap #container {
    flex-direction: column;
  }

  .course_detail .detail_title.has_option {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 0px 50px;
  }
  .course_detail .detail_title.has_option .option_box {
    align-items: flex-start;
  }
  .course_detail .detail_title .subject_box h3 {
    font-size: 30px;
  }
  .course_detail .detail_title .subject_box p {
    font-size: 16px;
  }
  .course_detail .detail_title .price_box .discount {
    font-size: 24px;
  }
  .course_detail .detail_title .price_box .discount span {
    font-size: 16px;
  }
  .course_detail .detail_title .price_box .price {
    font-size: 24px;
  }
  .course_detail .detail_title .price_box .price b {
    font-size: 16px;
  }
  .course_detail .detail_title .price_box .tag_price {
    font-size: 16px;
  }
  .course_detail .detail_title.has_option .count_box span {
    font-size: 12px;
  }

  .course_detail .detail_content .info_box {
    padding: 30px 20px;
  }
  .course_detail .detail_content .info_box .detail_banner {
    border-radius: 10px;
  }
  .course_detail .detail_content .info_box table th {
    font-size: 14px;
    text-align: center;
    border: 1px solid #ddd;
  }
  .course_detail .detail_content .info_box table td {
    font-size: 16px;
    text-align: center;
    border: 1px solid #ddd;
  }

  .detail_banner_2 .text_box {
    padding-left: 40px;
  }
  .single_product .prd_info {
    width: 480px;
  }

  .visit_test .detail_title .price_box .price {
    margin-left: 0;
  }
  .explain .detail_title .price_box .price {
    margin-left: 0;
  }

  .course_detail.explain .detail_content .info_box .text_box h4 {
    font-size: 20px;
  }
  .course_detail.explain .detail_content .info_box .text_box h4 br {
    display: none;
  }
  .course_detail .detail_content .text_box ul li {
    font-size: 16px;
  }

  .value_pack_wrap .info_box {
    padding: 30px 20px;
  }
  .value_pack_wrap .info_box .text_box > ul > li > p {
    padding-left: 20px;
  }
  .value_pack_wrap .info_box .text_box > ul > li > p::before {
    left: 0;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul {
    padding: 10px 20px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li {
    width: 150px;
    height: 150px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li p {
    font-size: 14px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li span {
    font-size: 12px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul::after {
    width: 40%;
    max-width: 270px;
  }

  .test_center_wrap ul {
    justify-content: space-between;
  }
  .test_center_wrap ul li {
    width: calc(50% - 12px);
    height: 0;
    padding-bottom: 48.36%;
    position: relative;
    margin-right: 0;
  }
  .test_center_wrap ul li a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .test_center_wrap ul li a p {
    font-size: 30px;
  }

  .course_detail.package .info_box .guideline ul li {
    align-items: flex-start;
    flex-direction: column;
  }
  .course_detail.package .info_box .guideline ul li .img_box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
    border-radius: 20px;
    height: 150px;
  }
  .course_detail.package .info_box .guideline ul .speaking .img_box {
    background: url(../img/speaking_bg_m.jpg) no-repeat center / cover;
  }
  .course_detail.package .info_box .guideline ul .writing .img_box {
    background: url(../img/writing_bg_m.jpg) no-repeat center / cover;
  }

  .course_detail.package .info_box .guideline ul li article {
    width: 100%;
  }
  .course_detail.package .info_box .guideline ul li article span {
    font-size: 16px;
  }

  .payment_box {
    flex-direction: column;
  }
  .payment_box .payment,
  .payment_box .price {
    width: 100%;
  }

  .info_box.otpc .description .text_box h4 {
    font-size: 20px;
  }
  .info_box.otpc .description .text_box p {
    font-size: 16px;
  }

  .test_guide_wrap_01 .item_box ul {
    flex-direction: column;
  }
  .test_guide_wrap_01 .item_box ul li {
    width: 100%;
  }
  .test_guide_wrap_01 .scoring_box .title {
    margin-bottom: 30px;
  }
  .test_guide_wrap_01 .scoring_box .title h3 {
    font-size: 24px;
  }
  .test_guide_wrap_01 .scoring_box .title p {
    font-size: 16px;
    line-height: 1.5;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description h4 {
    font-size: 28px;
    margin-right: 15px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description h4 b {
    font-size: 16px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description img {
    margin-right: 15px;
    height: 50px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul li p {
    font-size: 14px;
    width: 120px;
    margin-right: 10px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul li span {
    font-size: 12px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul::before {
    top: 50%;
    height: 182px;
  }

  .test_guide_wrap_01 .scoring_box.scoring_2 .description h4 {
    font-size: 28px;
    margin: 0px 40px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description ul li p {
    font-size: 14px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_1::before {
    height: 147px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_2::before {
    height: 147px;
  }

  .detail_banner_2.test_guide_01 h3 {
    font-size: 28px;
  }
  .detail_banner_2.test_guide_01 p {
    width: 70%;
  }
  .detail_banner_2.test_guide_01 {
    height: 260px;
    background: url(../img/test_guide_01_bg_m.jpg) no-repeat bottom center /
      cover;
  }

  .test_guide_wrap_02 .item_box ul {
    flex-direction: column;
  }
  .test_guide_wrap_02 .item_box ul li {
    width: 100%;
  }

  .test_guide_wrap_03 .item_box ul li .text_box {
    padding: 30px 20px;
  }
  .test_guide_wrap_03 .item_box ul li .text_box p {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .test_guide_wrap_03 .item_box ul li .text_box article b {
    font-size: 14px;
  }

  .test_guide_wrap_03 .item_box ul li .text_box article .explain {
    padding-left: 18px;
    line-height: 1.4;
  }

  .test_guide_wrap_03 h4 {
    font-size: 20px;
  }

  .test_guide_wrap_04 h4 {
    font-size: 20px;
  }
  .test_guide_wrap_04 .item_box ul li .text_box p {
    font-size: 20px;
  }
  .test_guide_wrap_04 .item_box ul li .text_box span {
    font-size: 12px;
  }
  .test_guide_wrap_04 .item_box ul li .text_box {
    padding: 30px 20px;
  }

  .test_guide_wrap_05 .title {
    font-size: 30px;
  }
  .test_guide_wrap_05 .item_box ul {
    display: flex;
    justify-content: space-between;
  }
  .test_guide_wrap_05 .item_box ul li {
    flex-direction: column;
    width: calc(50% - 12px);
    margin-bottom: 0;
  }
  .test_guide_wrap_05 .item_box ul li .img_box {
    width: 100%;
  }
  .test_guide_wrap_05 .item_box ul li .img_box img {
    width: 100%;
  }
  .test_guide_wrap_05 .item_box ul li .text_box {
    padding: 30px 20px;
  }
  .test_guide_wrap_05 .item_box ul li .text_box p {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .test_guide_wrap_05 .item_box ul li .text_box span {
    font-size: 14px;
  }
  .test_guide_wrap_05 h4 {
    font-size: 16px;
  }

  .course_detail.event .info_box .event_gallery .gallery_list li .text_box p {
    font-size: 18px;
  }
  .course_detail.event
    .info_box
    .event_gallery
    .gallery_list
    li
    .text_box
    .date
    span {
    font-size: 12px;
  }

  .best_review .title {
    display: flex;
    flex-direction: column-reverse;
  }
  .best_review .title h3 {
    margin-bottom: 20px;
    font-size: 40px;
  }
  .best_review .title a {
    position: relative;
    transform: translateY(0%);
    justify-content: center;
  }
  .best_review .title a img {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
  }

  .best_review #container {
    padding: 0;
  }
  .best_review .title {
    padding: 0px 20px;
  }
  .best_review #container .best_slide .swiper-slide {
    width: 400px;
  }
  .review {
    padding: 50px 20px 100px;
  }

  .review .review_list > li a {
    flex-direction: column;
  }
  .review .review_list > li a .img_box {
    margin: 0 auto 20px;
  }
  .review .review_list > li a .text_box {
    width: auto;
  }
  #reviewModal {
    min-width: 600px;
  }

  .review_detail .detail_content .subject a h3 {
    font-size: 24px;
  }
  .review_detail .detail_content {
    padding: 50px;
  }
  .review_detail .detail_content .content .review_img {
    width: 100%;
  }
  .review_detail .detail_content .content article {
    font-size: 16px;
  }

  .group_test_content > p {
    font-size: 20px;
  }
  .group_test_content .benefit_circle .left,
  .group_test_content .benefit_circle .right,
  .group_test_content .benefit_circle .top,
  .group_test_content .benefit_circle .bottom {
    font-size: 20px;
  }
  .group_test_content .bottom_content article {
    font-size: 18px;
  }
  #applyModal p br {
    display: none;
  }

  .download_content ul {
    flex-direction: column;
  }
  .download_content ul li {
    width: 100%;
    margin-bottom: 20px;
  }
  .download_content ul li span {
    margin-bottom: 14%;
  }
  .download_content > p {
    font-size: 20px;
  }

  .mypage .mypage_nav ul li a {
    font-size: 18px;
  }
  .mypage h4 {
    font-size: 20px;
  }

  /* .mypage_table .mo_table_2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  } */
  /* .mypage_table .mo_table_3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  } */
  .mypage_table .mo_table > li {
    flex: 1;
    width: 100%;
    display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: rgba(149, 157, 165, 0.2) 5px 8px 24px;
    margin-bottom: 20px;
  }
  .mypage_table .mo_table_2 > li {
    flex: 1;
    width: 100%;
    display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: rgba(149, 157, 165, 0.2) 5px 8px 24px;
    margin-bottom: 20px;
  }
  .mypage_table .mo_table_3 > li {
    flex: 1;
    width: 100%;
    display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: rgba(149, 157, 165, 0.2) 5px 8px 24px;
    margin-bottom: 20px;
  }
  .mypage_table .mo_table li .box {
    padding: 20px;
  }
  .mypage_table .mo_table_2 li .box {
    padding: 20px;
  }
  .mypage_table .mo_table_3 li .box {
    padding: 20px;
  }
  .mypage_table .mo_table li .box h4 {
    font-size: 20px;
    font-weight: var(--weight_bold);
    margin-bottom: 10px;
  }
  .mypage_table .mo_table_2 li .box h4 {
    font-size: 20px;
    font-weight: var(--weight_bold);
    margin-bottom: 10px;
  }
  .mypage_table .mo_table_3 li .box h4 {
    font-size: 20px;
    font-weight: var(--weight_bold);
    margin-bottom: 10px;
  }
  .mypage_table .mo_table li .box .date ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .mypage_table .mo_table_2 li .box .date ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .mypage_table .mo_table_3 li .box .date ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .mypage_table .mo_table li .box .date ul li {
    display: block;
    border-radius: 0;
    margin-right: 30px;
  }
  .mypage_table .mo_table_2 li .box .date ul li {
    display: block;
    border-radius: 0;
    margin-right: 30px;
  }
  .mypage_table .mo_table_3 li .box .date ul li {
    display: block;
    border-radius: 0;
    margin-right: 30px;
  }
  .mypage_table .mo_table li .box .date li li:last-child {
    margin-right: 0;
  }
  .mypage_table .mo_table_2 li .box .date li li:last-child {
    margin-right: 0;
  }
  .mypage_table .mo_table_3 li .box .date li li:last-child {
    margin-right: 0;
  }
  .mypage_table .mo_table li .box .date li p {
    font-size: 12px;
  }
  .mypage_table .mo_table_2 li .box .date li p {
    font-size: 12px;
  }
  .mypage_table .mo_table_3 li .box .date li p {
    font-size: 12px;
  }
  .mypage_table .mo_table li .box .date li span {
    display: block;
    font-size: 14px;
    margin-top: 4px;
  }
  .mypage_table .mo_table_2 li .box .date li span {
    font-size: 14px;
  }
  .mypage_table .mo_table_3 li .box .date li span {
    font-size: 14px;
  }
  .mypage_table .mo_table li .box .process {
    margin: 20px 0px 0px;
  }
  .mypage_table .mo_table_2 li .box .process {
    margin: 20px 0px 0px;
  }
  .mypage_table .mo_table_3 li .box .process {
    margin: 20px 0px 0px;
  }
  .mypage_table .mo_table li .box .process span,
  .mypage_table .mo_table li .box .process a {
    display: flex;
    align-items: center;
    text-align: center;
    height: 40px;
    width: 100%;
    border-radius: 15px;
    font-size: 16px;
    font-weight: var(--weight_bold);
    justify-content: center;
  }
  .mypage_table .mo_table_2 li .box .process span,
  .mypage_table .mo_table_2 li .box .process a {
    display: flex;
    align-items: center;
    text-align: center;
    height: 40px;
    width: 100%;
    border-radius: 15px;
    font-size: 16px;
    font-weight: var(--weight_bold);
    justify-content: center;
  }
  .mypage_table .mo_table_3 li .box .process span,
  .mypage_table .mo_table_3 li .box .process a {
    display: flex;
    align-items: center;
    text-align: center;
    height: 40px;
    width: 100%;
    border-radius: 15px;
    font-size: 16px;
    font-weight: var(--weight_bold);
    justify-content: center;
  }
  .mypage_table .mo_table li .box .process .start {
    background: var(--main-color);
    color: #fff;
  }
  .mypage_table .mo_table_2 li .box .process .start {
    background: var(--main-color);
    color: #fff;
  }
  .mypage_table .mo_table_3 li .box .process .start {
    background: var(--main-color);
    color: #fff;
  }
  .mypage_table .mo_table li .box .process .continue {
    background: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color);
  }
  .mypage_table .mo_table_2 li .box .process .continue {
    background: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color);
  }
  .mypage_table .mo_table_3 li .box .process .continue {
    background: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color);
  }
  .mypage_table .mo_table li .box .process .report {
    color: #de224e;
    border: 1px solid #de224e;
    background: #fff;
  }
  .mypage_table .mo_table_2 li .box .process .report {
    color: #de224e;
    border: 1px solid #de224e;
    background: #fff;
  }
  .mypage_table .mo_table_3 li .box .process .report {
    color: #de224e;
    border: 1px solid #de224e;
    background: #fff;
  }
  .mypage_table .mo_table li .box .process .default {
    border: 1px solid #eee;
    color: #aaa;
  }
  .mypage_table .mo_table_2 li .box .process .default {
    border: 1px solid #eee;
    color: #aaa;
  }
  .mypage_table .mo_table_3 li .box .process .default {
    border: 1px solid #eee;
    color: #aaa;
  }
  .mypage_table .mo_table li .btn_box {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #eee;
  }
  .mypage_table .mo_table_2 li .btn_box {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #eee;
  }
  .mypage_table .mo_table_3 li .btn_box {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #eee;
  }
  .mypage_table .mo_table li .btn_box a {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    border-right: 1px solid #ddd;
  }
  .mypage_table .mo_table_2 li .btn_box a {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    border-right: 1px solid #ddd;
  }
  .mypage_table .mo_table_3 li .btn_box a {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    border-right: 1px solid #ddd;
  }
  .mypage_table .mo_table li .btn_box a:last-child {
    border-right: 0;
  }
  .mypage_table .mo_table_2 li .btn_box a:last-child {
    border-right: 0;
  }
  .mypage_table .mo_table_3 li .btn_box a:last-child {
    border-right: 0;
  }
  .mypage_table .mo_table li .btn_box label {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    cursor: pointer;
  }
  .mypage_table .mo_table_2 li .btn_box label {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    cursor: pointer;
  }
  .mypage_table .mo_table_3 li .btn_box label {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    height: 40px;
    cursor: pointer;
  }
  .mypage_table .mo_table li .btn_box label input {
    margin-right: 5px;
  }
  .mypage_table .mo_table_2 li .btn_box label input {
    margin-right: 5px;
  }
  .mypage_table .mo_table_3 li .btn_box label input {
    margin-right: 5px;
  }
  .mypage_table .mo_table li .btn_box .gray_btn {
    background: #f9f9f9;
  }
  .mypage_table .mo_table_2 li .btn_box .gray_btn {
    background: #f9f9f9;
  }
  .mypage_table .mo_table_3 li .btn_box .gray_btn {
    background: #f9f9f9;
  }
  .mypage_table .mo_table li .btn_box .line_btn {
    text-decoration: underline;
  }
  .mypage_table .mo_table_2 li .btn_box .line_btn {
    text-decoration: underline;
  }
  .mypage_table .mo_tabl_3 li .btn_box .line_btn {
    text-decoration: underline;
  }
  .mypage_table .mo_table li .btn_box .line_btn.on {
    color: var(--main-color);
  }
  .mypage_table .mo_table_2 li .btn_box .line_btn.on {
    color: var(--main-color);
  }
  .mypage_table .mo_table_3 li .btn_box .line_btn.on {
    color: var(--main-color);
  }
  .mypage_table .mo_table li .btn_box .default {
    color: #aaa;
  }
  .mypage_table .mo_table_2 li .btn_box .default {
    color: #aaa;
  }
  .mypage_table .mo_table_3 li .btn_box .default {
    color: #aaa;
  }
  .mypage_table .mo_table li .btn_box .before {
    color: #aaa;
  }
  .mypage_table .mo_table_2 li .btn_box .before {
    color: #aaa;
  }
  .mypage_table .mo_table_3 li .btn_box .before {
    color: #aaa;
  }
  .mypage_table .mo_table li .btn_box .processing {
    color: #ef7000;
  }
  .mypage_table .mo_table_2 li .btn_box .processing {
    color: #ef7000;
  }
  .mypage_table .mo_table_3 li .btn_box .processing {
    color: #ef7000;
  }
  .mypage_table .mo_table li .btn_box .waiting {
    color: #222;
  }
  .mypage_table .mo_table_2 li .btn_box .waiting {
    color: #222;
  }
  .mypage_table .mo_table_3 li .btn_box .waiting {
    color: #222;
  }
  .mypage_table .mo_table li .btn_box .finish {
    color: #2446ff;
  }
  .mypage_table .mo_table_2 li .btn_box .finish {
    color: #2446ff;
  }
  .mypage_table .mo_table_3 li .btn_box .finish {
    color: #2446ff;
  }

  .mypage .title ul.order_process li p {
    font-size: 18px;
  }
  .mypage .title ul.order_process li span {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }

  .cart .mo_table li {
    width: 100%;
    padding: 30px;
    height: 150px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
  }
  .cart .mo_table li .subject {
    display: flex;
    align-items: center;
  }
  .cart .mo_table li .subject input {
    margin-right: 10px;
  }
  .cart .mo_table li .subject h4 {
    font-size: 20px;
    font-weight: var(--weight_bold);
    margin-bottom: 0;
  }
  .cart .mo_table li .price_info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  .cart .mo_table li .price_info .price p {
    font-size: 18px;
    font-weight: var(--weight_medium);
  }
  .mypage_table.cart .bottom label {
    margin-left: 0;
  }

  .mypage_table.history .table_header,
  .mypage_table.history .table_row {
    padding: 0px 10px;
  }
  .mypage_table .table_row div b {
    font-size: 16px;
  }
  .mypage_table .table_row div p {
    font-size: 16px;
    line-height: 1.5;
  }

  .history .mo_table {
    border-top: 1px solid #222;
  }
  .history .mo_table > li {
    width: 100%;
    padding: 20px;
    display: block;
    height: auto;
    border-bottom: 1px solid #ddd;
    box-shadow: none;
    border-radius: 0;
    margin-bottom: 0;
  }
  .history .mo_table > li .top {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    justify-content: space-between;
  }
  .history .mo_table > li .top p {
    font-size: 18px;
  }
  .history .mo_table > li .top span {
    font-size: 16px;
    color: #ff2323;
    font-weight: var(--weight_medium);
  }
  .history .mo_table > li .middle {
    display: flex;
    border-bottom: 0;
    margin-bottom: 20px;
  }
  .history .mo_table > li .middle li {
    display: block;
    width: auto;
    font-size: 14px;
    margin-right: 10px;
    padding: 0 10px 0 0;
    border-right: 1px solid #ddd;
    height: auto;
  }
  .history .mo_table > li .middle li:last-child {
    margin-right: 0;
    padding: 0;
    border: 0;
  }
  .history .mo_table > li .middle li span {
    font-size: 12px;
  }
  .history .mo_table > li > span {
    font-size: 14px;
  }

  .mypage_table.qa li {
    padding: 0;
  }
  .mypage_table.qa li label {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    font-size: 16px;
  }
  .mypage_table.qa li label input {
    margin-right: 5px;
  }
  .mypage_table.qa li .subject {
    font-size: 16px;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin-bottom: 15px;
    padding-left: 0;
    overflow: hidden;
  }
  .mypage_table.qa li .subject img {
    margin-right: 10px;
    margin-bottom: 2px;
  }
  .mypage_table.qa li ul {
    display: flex;
  }
  .mypage_table.qa li ul li {
    display: flex;
    justify-content: flex-start;
    font-size: 12px;
    margin-right: 5px;
    padding-right: 5px;
    border-right: 1px solid #ddd;
  }
  .mypage_table.qa li ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
  }
  .mypage_table.qa .bottom label {
    left: 0;
  }

  .mypage.member_info .info_box {
    padding: 50px;
  }
}

@media (max-width: 1024px) {
  .msc_4 .schedule_box .event ul li .txt_wrap .tit {
    font-size: 20px;
  }
  .msc_4 .schedule_box .event ul li .txt_wrap .date {
    margin-top: 12px;
  }
  .sleeper_account .wrapper {
    margin-top: 50px;
    padding: 50px 20px 30px;
  }
  .sleeper_account .tit_wrap p {
    margin-top: 24px;
  }
  .sleeper_account .explain_box {
    flex-direction: column;
    gap: 55px 0;
  }

  .report_analysis {
    padding: 100px 0;
  }
  .report_analysis .tit_box h1 {
    font-size: 20px;
  }
  .report_analysis .tit_box p {
    font-size: 16px;
  }
  .report_analysis .summary_box .btn_print {
    display: none;
  }
  .report_analysis .summary_box > .cont {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .report_analysis .summary_box .cont > div:last-child {
    grid-column: 1 / span 2;
  }
  .report_analysis .content {
    margin-top: 40px;
  }
  .report_analysis .content .head {
    padding: 0 20px;
  }
  .report_analysis .content .head p {
    padding: 0;
    border: 0;
  }
  .report_analysis .summary_table {
    margin-top: 65px;
  }
  .report_analysis .summary_table .tit {
    width: 100px;
    min-width: 100px;
    text-align: center;
  }

  .report_analysis .table_unit {
    margin-top: 50px;
  }
  .report_analysis .table_unit > div {
    display: block;
  }
  .report_analysis .table_unit .left {
    width: 100%;
    min-width: initial;
  }
  .report_analysis .table_unit .tooltip_txt {
    border: 0 !important;
    height: 50px;
  }
  .report_analysis .table_unit > div:not(:first-child) .tooltip_txt {
    display: flex;
    border: 0;
  }
  .report_analysis .table_unit .left > div {
    padding: 24px 0;
  }
  .report_analysis .table_unit .right .top {
    flex-direction: column;
  }
  .report_analysis .table_unit .right .top .percent {
    width: 100% !important;
    min-width: initial !important;
  }
  .report_analysis .table_unit .right .top .percent .tooltip_txt {
    margin-top: 30px;
  }
  .report_analysis .table_unit .right .top .percent > div {
    border: 0;
    margin: 20px 0 30px;
  }
  .report_analysis .table_unit .right .bottom {
    border: 0;
    margin-top: 38px;
  }

  .report_analysis .grid_table {
    width: calc(100% - 90px);
    border-top: 0 !important;
    border-left: solid 1px #707070;
    border-bottom: solid 1px #707070;
  }
  .report_analysis .grid_table ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
  }
  .report_analysis .grid_table li span:first-child {
    background: #e9e9e9;
    border-top: solid 1px #707070;
  }
  .report_analysis .summary_table .table_wrap {
    flex-direction: column;
  }
  .report_analysis .summary_table table + table th:first-child,
  .report_analysis .summary_table table + table td:first-child {
    border: 0;
  }
  .report_analysis .summary_table table.w30 {
    width: 100%;
  }
  .report_analysis .summary_table table.w30 .head {
    display: none;
  }
  .report_analysis .summary_table td {
    border: 0;
  }

  .report_analysis .listen .grid_table {
    flex-direction: column;
  }
  .report_analysis .listen .grid_table ul {
    grid-template-columns: repeat(4, 1fr);
  }
  .report_analysis .grid_table .part_tit {
    border-top: solid 1px #707070;
  }

  .report_analysis .table_tit {
    margin-top: 40px;
    padding: 0 20px;
  }
  .report_analysis .table_unit > div:not(:first-child) .left .tooltip_txt {
    display: none;
  }
  .report_analysis .table_unit .write_sec > div {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .report_analysis .table_unit .write_sec > div:last-child {
    border: 0;
    margin-bottom: 60px;
  }
  .report_analysis .table_unit .write_sec > div > div {
    width: auto !important;
    border: 0;
    padding: 24px;
  }
  .report_analysis .table_unit .write_sec > div > div > div {
    min-height: initial;
    padding: 0;
    margin-top: 10px;
  }
  .report_analysis .table_unit .write_sec .col3 {
    grid-column: span 2;
    background: #e9e9e9;
  }
  .report_analysis .table_unit .write_sec .col3 .tooltip_txt {
    justify-content: flex-start;
  }
  .report_analysis .table_unit .write_sec > div > div > div {
    border: 0;
  }
  .report_analysis .table_unit .write_sec .tooltip_txt {
    display: flex !important;
    height: auto;
  }
}
@media (max-width: 900px) {
  .top_banner {
    height: 100px;
  }
}
@media (max-width: 768px) {
  .vol_select {
    font-size: 10px !important;
  }
  .date_select {
    font-size: 10px !important;
  }
  #exitText {
    font-size: 10px;
    line-height: 15px;
    color: #808080;
  }
  #sub_wrap_sign {
    padding: 60px 0;
  }
  .sleeper_account .explain_box > div {
    padding-right: 0;
  }
  .sleeper_account .copyright {
    font-size: 10px;
  }
  #pw_set {
    padding: 24px 28px 30px;
  }
  .btn_box.flex > * {
    height: 40px !important;
    font-size: 13px !important;
  }

  #map_th {
    display: none;
  }
  .review_detail .detail_content .subject .normal_btn {
    display: none;
  }
  .review_detail .only_mb {
    display: block;
    margin: 20px auto;
    padding: 0 20px;
  }
  #applyModal .privacy .acc_subject .agree_fold_btn {
    font-size: 10px;
  }
  .btn {
    font-size: 14px;
    height: 40px;
  }
  .select_box select {
    font-size: 14px;
    height: 40px;
    padding: 0px 10px;
  }
  .modal {
    border-radius: 20px;
  }
  .modal.text_only .box h4 {
    margin-bottom: 30px;
  }
  .top_banner {
    height: 70px;
  }
  .top_banner .text_box span {
    font-size: 14px;
    margin-bottom: 7px;
  }
  .top_banner .text_box h3 {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 7px;
  }
  .top_banner .text_box p {
    font-size: 16px;
  }
  .top_banner #tbClose {
    right: 10px;
    bottom: 10px;
  }

  #header {
    margin-bottom: 0;
  }

  .main_visual #container {
    padding: 0;
  }
  .main_visual .swiper-slide a {
    border-radius: 0;
  }
  .main_visual .swiper-pagination {
    left: 30px;
    bottom: 30px;
  }
  .main_visual .swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0px 3px;
  }
  .main_visual
    .swiper-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 23px;
  }

  .msc_1 {
    padding: 100px 0px 100px;
  }
  .msc_1 .msc_1_nav {
    top: -145px;
  }
  .msc_1 .msc_1_nav ul {
    border: 1px solid #dcdcdc;
    height: 90px;
  }
  .msc_1 .msc_1_nav ul li a {
    font-size: 16px;
    font-weight: var(--weight_semi_bold);
  }
  .msc_1 .msc_1_1 {
    margin-bottom: 50px;
  }
  .msc_1 .msc_1_1 ul {
    justify-content: space-between;
    max-width: 375px;
    margin: 0 auto;
  }
  .msc_1 .msc_1_1 ul li {
    width: auto;
  }
  .msc_1 .msc_1_1 ul li p {
    font-size: 22px;
    margin-bottom: 15px;
  }
  .msc_1 .msc_1_1 ul li span {
    font-size: 12px;
  }
  .msc_1 .msc_1_2 .text_box h3 {
    font-size: 30px;
    line-height: 1.5;
  }
  .msc_1 .msc_1_2 .text_box h3 br {
    display: block;
  }
  .msc_1 .msc_1_2 .text_box p {
    font-size: 14px;
  }
  .msc_1 .msc_1_2 .text_box p br {
    display: none;
  }
  .msc_1 .msc_1_2 ul {
    flex-direction: column;
    align-items: center;
  }
  .msc_1 .msc_1_2 ul li {
    width: 300px;
    margin-bottom: 20px;
  }
  .msc_1 .msc_1_2 ul li:last-child {
    margin-bottom: 0;
  }
  .msc_1 .msc_1_2 ul li p {
    font-size: 24px;
  }

  .msc_2 ul {
    justify-content: center;
  }
  .msc_2 ul li {
    width: 330px;
  }
  .msc_2 .box {
    border-radius: 20px;
    height: 300px;
  }
  .msc_2 a {
    padding: 15px 25px;
  }
  .msc_2 .single_item {
    width: 100%;
    max-width: 330px;
    margin: 0 auto 20px;
  }
  .msc_2 .single_item .img_box img {
    height: 100%;
  }
  .msc_2 .single_item .logo img {
    height: 65px;
  }
  .msc_2 .img_box img {
    transform: scale(1.5);
  }
  .msc_2 ul li.mb_0 {
    margin-bottom: 20px !important;
  }
  .msc_2 ul li:last-child {
    margin-bottom: 0 !important;
  }

  .msc_3 h3 {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .msc_3 .swiper_2 h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .msc_3 .swiper_2 .swiper-slide {
    width: 300px;
    height: 240px;
  }
  .msc_3 .swiper_2 .swiper-slide a {
    padding: 20px;
    border-radius: 20px;
  }
  .msc_3 .swiper_2 .swiper-slide .ratings li {
    margin-right: 5px;
  }
  .msc_3 .swiper_2 .swiper-slide .ratings li img {
    height: 30px;
  }
  .msc_3 .swiper_2 .swiper-slide p {
    font-size: 18px;
  }
  .msc_3 .swiper_2 .swiper-slide article {
    font-size: 14px;
  }
  .msc_3 .swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0px 3px;
  }
  .msc_3
    .swiper-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 23px;
  }

  .msc_4 .msc_4_title {
    margin-bottom: 50px;
    padding: 0px 20px;
  }
  .msc_4 .msc_4_title p br {
    display: none;
  }
  .msc_4 .msc_4_title h3 {
    font-size: 30px;
  }

  .msc_4 .notice_box {
    margin-bottom: 50px;
    padding: 0px 20px;
    box-sizing: border-box;
  }
  .msc_4 .notice_box table {
    display: block;
  }
  .msc_4 .notice_box table colgroup {
    display: none;
  }
  .msc_4 .notice_box table tr th {
    border-bottom: 0;
    padding-bottom: 0;
  }
  .msc_4 .notice_box table tr th,
  .msc_4 .notice_box table tr td {
    display: block;
    width: 100%;
    font-size: 16px;
    box-sizing: border-box;
  }
  .msc_4 .notice_box table .notice_head span {
    font-size: 16px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide {
    width: 300px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box p {
    font-size: 16px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box span {
    font-size: 14px;
  }
  .msc_4 .notice_box_2 .swiper_3 .swiper-slide a .text_box i {
    font-size: 12px;
  }

  .msc_4 .schedule_box .item h3 {
    font-size: 24px;
    margin-bottom: 15px;
  }
  .msc_4 .schedule_box .schedule .date {
    height: 140px;
    margin-bottom: 15px;
  }
  .msc_4 .schedule_box .schedule .date li .dot {
    margin-right: 15px;
  }
  .msc_4 .schedule_box .schedule .date li {
    height: 30px;
    border-radius: 5px;
    padding: 0px 20px;
  }
  .msc_4 .schedule_box .schedule .date li b {
    font-size: 16px;
    margin-right: 30px;
  }
  .msc_4 .schedule_box .schedule .date li span {
    font-size: 16px;
  }
  .msc_4 .schedule_box .schedule .month .current a {
    font-size: 16px;
  }
  .msc_4 .schedule_box .event ul li a {
    display: block;
  }
  .msc_4 .schedule_box .event ul li .txt_wrap .tit {
    font-size: 16px;
  }
  .msc_4 .schedule_box .event ul li .txt_wrap .date {
    font-size: 14px;
  }

  .msc_5 {
    padding: 70px 0px;
  }
  .msc_5 .text_box {
    margin-bottom: 50px;
  }
  .msc_5 .text_box h3 {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .msc_5 .text_box ul li {
    font-size: 20px;
  }
  .msc_5 .text_box span {
    font-size: 16px;
  }
  .msc_5 .blog_nav ul {
    flex-direction: column;
  }
  .msc_5 .blog_nav ul li {
    width: 100%;
  }
  .msc_5 .blog_nav ul li a {
    border-radius: 10px;
    padding: 15px 20px;
  }
  .msc_5 .blog_nav ul li a img {
    height: 7px;
  }

  .bottom_banner_2 p {
    font-size: 16px;
  }

  footer {
    padding: 30px 0px 100px;
  }
  footer .ft_content .ft_top {
    flex-direction: column;
    margin-bottom: 90px;
  }
  footer .ft_content .ft_top .logo {
    margin-bottom: 25px;
  }
  footer .ft_content .ft_middle .ft_fold {
    width: 100%;
    margin-bottom: 20px;
  }
  footer .ft_sub_link .sns_link {
    top: 90px;
  }
  footer .ft_content .ft_middle {
    margin-bottom: 20px;
  }
  footer .ft_content .ft_middle ul li {
    flex-direction: column;
    align-items: flex-start;
  }
  footer .ft_content .ft_middle ul li:last-child {
    margin-bottom: 0;
  }
  footer .ft_content .ft_middle ul li b {
    margin-right: 0;
    margin-bottom: 10px;
  }
  footer .ft_content .ft_middle ul li p br {
    display: block;
  }
  footer .ft_bottom ul li p {
    line-height: 1.5;
    font-size: 10px;
  }

  .sign_form_box.login h1 {
    font-size: 16px;
  }
  .sign_form_box.login .find_id p {
    font-size: 14px;
  }
  .sign_form_box {
    width: 295px;
    padding: 50px 20px 30px;
  }
  .sign_form_box img {
    height: 30px;
    margin-bottom: 20px;
  }

  .join_method p {
    font-size: 14px;
    margin-bottom: 20px;
  }
  .join_method .btn_box ul li a {
    height: 48px;
    font-size: 14px;
  }
  .join_method .btn_box ul li a::before {
    width: 40px;
    height: 40px;
    background-size: 36px !important;
  }
  .join_method .btn_box > a {
    font-size: 14px;
  }
  .sign_form_box .copyright {
    font-size: 10px;
    line-height: 1.5;
  }

  .sign_form_box h1 {
    font-size: 18px;
  }
  .sign_form_box .join_agreement p {
    font-size: 16px;
  }
  .sign_form_box .join_agreement > span {
    font-size: 11px;
  }
  .sign_form_box .form_element label {
    font-size: 10px;
  }
  .sign_form_box .join_agreement ul li .acc_subject a {
    font-size: 10px;
  }
  .sign_form_box .join_agreement ul li .acc_article {
    font-size: 10px;
  }
  .sign_form_box .form_element input[type="text"],
  .sign_form_box .form_element input[type="email"] {
    font-size: 12px;
  }
  .sign_form_box .form_element span {
    font-size: 12px;
  }
  .sign_form_box .form_element select {
    font-size: 12px;
  }
  .sign_form_box .form_element {
    padding: 16px 10px 10px;
  }
  .sign_form_box .btn_box button {
    padding: 0px 20px;
    font-size: 16px;
    min-width: 80px;
  }

  .sign_form_box.login img {
    margin-bottom: 30px;
  }
  .sign_form_box.login label span {
    font-size: 12px;
  }
  .sign_form_box.login form button {
    font-size: 14px;
  }
  .sign_form_box.login .btn_box ul .naver_join a {
    font-size: 14px;
  }
  .sign_form_box.login .btn_box ul .kakao_join a {
    font-size: 14px;
  }
  .sign_form_box.login .link_box ul li a {
    font-size: 12px;
  }

  .sub_banner {
    padding: 0 0 0px;
  }
  .sub_banner .pc_banner {
    display: none;
  }
  .sub_banner .mobile_banner {
    display: block;
  }
  .sub_banner #container {
    padding: 0;
  }
  .sub_banner .swiper-slide a {
    border-radius: 0;
  }
  .sub_banner .swiper-pagination {
    left: 20px;
    bottom: 20px;
  }

  .page_location {
    padding: 7px 0px;
  }
  .page_location ul li {
    font-size: 10px;
  }
  .page_location ul li:nth-child(7) {
    overflow: hidden;
    text-overflow: ellipsis;
    width: 110px;
    white-space: nowrap;
  }

  .course_card_wrap {
    padding: 30px 0px 0px;
  }
  .course_card_wrap #container {
    width: 100%;
    padding: 0;
  }
  .course_card_wrap .course_card_box {
    padding: 0px 20px;
    box-sizing: border-box;
  }
  .course_card_wrap .course_card_box ul {
    margin-bottom: 20px;
    justify-content: space-between;
  }
  .course_card_wrap .course_card_box ul li {
    border-radius: 20px;
    width: 46%;
  }

  .course_card_wrap .option_box {
    width: 100%;
  }

  .thumbnail_title {
    height: 150px;
    font-size: 18px;
    line-height: 15px;
    padding: 30px 20px;
  }
  .thumbnail_title > div {
    font-size: 20px;
    line-height: 1.5;
    margin-top: 15px;
  }
  .course_card_wrap .course_card_box ul li .info .subject p {
    font-size: 16px;
  }
  .course_card_wrap .course_card_box ul li .info {
    padding: 15px 10px 15px;
  }
  .course_card_wrap .course_card_box ul li .info .icon_box .icon span {
    font-size: 10px;
  }
  .course_card_wrap .course_card_box ul li .thumbnail .detail_btn a {
    font-size: 12px;
  }
  .course_card_wrap .course_card_box ul li .thumbnail .check_icon {
    width: 20px;
    height: 20px;
    left: 10px;
    top: 10px;
    background: url(../img/check_default.png) no-repeat center / 20px;
  }
  .course_card_wrap .course_card_box ul li .thumbnail {
    border-radius: 20px 20px 0 0;
  }
  .course_card_wrap .course_card_box ul li .info .subject {
    margin-bottom: 15px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box {
    flex-direction: column;
    align-items: flex-start;
  }
  .course_card_wrap .course_card_box ul li .info .price_box div {
    margin-bottom: 10px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box .discount {
    font-size: 20px;
    margin-right: 5px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box .discount span {
    font-size: 16px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box .price {
    font-size: 20px;
    margin-right: 5px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box .price b {
    font-size: 16px;
  }
  .course_card_wrap .course_card_box ul li .info .price_box .tag_price {
    font-size: 12px;
  }

  .count button {
    width: 24px;
    height: 24px;
  }
  .count_value {
    width: 24px;
    height: 24px;
    line-height: 24px;
    box-sizing: border-box;
    font-size: 14px;
    background-color: white;
  }
  .course_card_wrap .option_box .btn_box .btn {
    width: calc(50% - 6px);
  }

  .sub_second_banner {
    height: 185px;
  }

  .course_detail .detail_title {
    top: -315px;
  }
  .course_detail .detail_title.has_option {
    padding: 30px 20px;
  }
  .course_detail .detail_title .subject_box h3 {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .course_detail .detail_title .subject_box p {
    font-size: 14px;
  }
  .course_detail .detail_title.has_option .btn_box {
    width: 100%;
  }
  .course_detail .detail_title.has_option .btn_box .btn {
    width: calc(50% - 6px);
  }
  .course_detail .detail_content .detail_nav ul li a {
    font-size: 14px;
    height: 40px;
  }
  .course_detail .detail_content .info_box {
    padding: 20px;
  }
  .course_detail .detail_content .info_box .detail_banner {
    height: 80px;
    margin-bottom: 20px;
  }
  .course_detail .detail_content .info_box .detail_banner h4 {
    font-size: 16px;
    margin-left: 10px;
  }
  .course_detail .detail_content .info_box .detail_banner.test_info h4 {
    margin-bottom: 5px;
  }
  .course_detail .detail_content .info_box .detail_banner.test_info p {
    font-size: 10px;
    margin-left: 10px;
  }
  .course_detail .detail_content .detail_nav ul::after {
    margin: 0;
  }
  .course_detail .detail_content {
    border-radius: 20px;
  }
  .course_detail .detail_content .info_box .detail_banner.test_info h4 br {
    display: none;
  }
  .course_detail .detail_content .text_box ul li {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 20px;
    padding-left: 15px;
  }
  .course_detail .detail_content .text_box ul li p::before {
    left: -15px;
  }
  .course_detail .detail_content .text_box ul li p {
    margin-bottom: 5px;
  }
  .course_detail .detail_content .text_box ul li article {
    padding: 20px 10px;
    font-size: 14px;
  }
  .course_detail .detail_content .text_box ul li article span::before {
    font-size: 14px;
  }
  .course_detail .detail_content .info_box table th {
    font-size: 12px;
    padding: 10px 0px;
    border: 1px solid #eee;
    vertical-align: middle;
  }
  .course_detail .detail_content .info_box table td {
    font-size: 12px;
    padding: 12px 0px;
    text-align: center;
    border: 1px solid #eee;
  }

  .visit_test_wrap {
    padding: 30px 0px 50px;
  }

  .detail_banner_2 {
    height: 120px;
    border-radius: 20px;
    margin-bottom: 30px;
  }
  .detail_banner_2 h3 {
    font-size: 16px;
  }
  .detail_banner_2 p {
    font-size: 10px;
    margin-top: 10px;
  }
  .detail_banner_2 .text_box {
    padding-left: 20px;
  }
  .detail_banner_2 br.mo {
    display: block;
  }

  .single_product {
    height: 300px;
    border-radius: 20px;
  }
  .single_product .thumb {
    width: 100%;
    overflow: hidden;
  }
  .single_product .thumb img {
    width: 100%;
    height: 100%;
  }
  .single_product .thumb.visit_test {
    background: url(../img/visit_test_thumb.jpg) no-repeat center / cover;
  }
  .single_product .thumb .thumb_pc {
    display: none;
  }
  .single_product .thumb .thumb_mo {
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/otpc_info_pic.jpg) no-repeat left top / cover;
  }
  .single_product .prd_info {
    width: 80%;
    height: 220px;
    border-radius: 20px;
    padding: 20px;
  }
  .single_product .prd_info .info p {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
  .single_product .prd_info .info span {
    display: none;
  }
  .single_product .prd_info .info .sub_info {
    display: none;
  }
  .visit_test_wrap .mo_sub_info {
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
    display: block;
    margin-top: 18px;
    color: #707070;
  }
  .single_product .prd_info .select_box {
    flex-direction: column;
  }
  .single_product .prd_info .select_box select {
    width: 100%;
    margin-bottom: 5px;
    font-size: 12px;
    height: 24px;
  }
  .single_product .prd_info .price .price_area {
    justify-content: space-between;
    margin-bottom: 10px;
  }
  .single_product .prd_info .price .price_area span {
    font-size: 12px;
    margin-right: 0;
  }
  .single_product .prd_info .price .price_area p {
    font-size: 16px;
  }
  .single_product .prd_info .price .price_area p b {
    font-size: 20px;
  }
  .single_product .prd_info .price .btn_box button {
    width: 100%;
  }

  .course_detail.visit_test .detail_title.has_option .option_box {
    min-width: auto;
    width: 100%;
  }
  .course_detail.visit_test
    .detail_title.has_option
    .option_box
    .select_box
    select {
    width: calc(50% - 6px);
  }
  .course_detail.visit_test
    .detail_title.has_option
    .option_box
    .btn_box
    button {
    width: 100%;
  }

  .info_box.visit_test .img_box {
    margin-bottom: 20px;
  }
  .info_box.visit_test .text_box p {
    font-size: 14px;
  }

  .detail_banner_2.explain {
    background: url(../img/explain_bg_m.jpg) #d8f1f2 no-repeat right bottom;
  }

  .course_detail.explain .detail_content .info_box .text_box h4 {
    font-size: 16px;
  }

  .value_pack_wrap {
    padding: 30px 0px 100px;
  }
  .value_pack_wrap .info_box .code {
    padding: 20px;
  }
  .value_pack_wrap .info_box .code form legend {
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
  }
  .value_pack_wrap .info_box .code form legend br {
    display: block;
  }
  .value_pack_wrap .info_box .code form label {
    position: relative;
    min-width: 240px;
  }
  .value_pack_wrap .info_box .code form label input {
    height: 40px;
    font-size: 14px;
    width: 100%;
    margin-right: 0;
  }
  .value_pack_wrap .info_box .code form label button {
    position: absolute;
    right: 0;
  }
  .value_pack_wrap .info_box .text_box > ul > li {
    margin-bottom: 20px;
  }
  .value_pack_wrap .info_box .text_box > ul > li > p {
    font-size: 14px;
    padding-left: 15px;
  }
  .value_pack_wrap .info_box .text_box > ul > li > span {
    font-size: 14px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul {
    padding: 10px 20px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li {
    width: 80px;
    height: 80px;
    margin-right: 10px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li p {
    font-size: 12px;
    margin-bottom: 5px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul li span {
    font-size: 10px;
    width: 70px;
  }
  .value_pack_wrap .info_box .text_box > ul > li .process ul::after {
    width: 40%;
    max-width: 150px;
  }
  .value_pack_wrap
    .info_box
    .text_box
    > ul
    > li
    .process.item_1
    ul
    li:last-child
    span::after {
    content: "ETS로부터 받은 code를 입력한다.";
  }
  .value_pack_wrap
    .info_box
    .text_box
    > ul
    > li
    .process.item_2
    ul
    li:last-child
    span {
    font-size: 8px;
  }

  .test_center_wrap {
    padding: 30px 0px 100px;
  }
  .test_center_wrap ul li {
    width: 100%;
    border-radius: 20px;
    padding-bottom: 100%;
  }

  .sub_second_banner h3 {
    font-size: 24px;
    line-height: 1.5;
  }
  .course_detail.test_center {
    padding-top: 20px;
  }
  .course_detail .detail_content .info_box.test_center tr th {
    font-size: 12px;
    width: auto;
    padding: 18px 10px;
    text-align: center;
    line-height: 1.5;
  }
  .course_detail .detail_content .info_box.test_center tr td {
    font-size: 14px;
    padding: 18px 10px;
  }
  .course_detail .detail_content .info_box.test_center tr td .map > div {
    width: 100%;
  }

  .course_card_wrap .course_card_box ul .active .thumbnail {
    border-radius: 15px 15px 0px 0px;
  }

  .course_detail .detail_title.has_option .option_box {
    width: 100%;
  }
  .course_detail .detail_title.has_option .count_box {
    width: 100%;
    justify-content: space-between;
  }

  .course_detail.package {
    padding-top: 150px;
  }
  .course_detail.package .detail_title .price_box .price {
    margin-left: 0;
  }

  .course_detail.package .info_box .guideline ul .speaking {
    margin-bottom: 30px;
  }
  .course_detail.package .info_box .guideline ul li .img_box {
    height: 80px;
    border-radius: 10px;
  }
  .course_detail.package .info_box .guideline ul li .img_box p {
    padding: 0px 10px;
    font-size: 16px;
  }
  .course_detail.package .info_box .guideline ul li article span {
    font-size: 14px;
  }

  .otpc_wrap {
    padding: 30px 0px 100px;
  }
  .payment_box .payment {
    margin-bottom: 20px;
  }
  .payment_box .payment,
  .payment_box .price {
    height: auto;
  }
  .payment_box .payment,
  .payment_box .price {
    padding: 20px;
  }
  .payment_box .title {
    padding-bottom: 10px;
    margin-bottom: 20px;
  }
  .payment_box .title h4 {
    font-size: 16px;
  }
  .payment_box .payment .radio_box label {
    padding: 10px 20px;
  }
  .payment_box .payment .radio_box label span {
    font-size: 16px;
    padding-left: 25px;
  }
  .payment_box .payment .radio_box label span::before {
    width: 16px;
    height: 16px;
  }
  .payment_box .payment .radio_box label input:checked + span::after {
    width: 8px;
    height: 8px;
  }
  .payment_box .payment .radio_box {
    margin-bottom: 20px;
  }
  .payment_box .payment .code p {
    font-size: 14px;
  }
  .payment_box .payment .code label {
    position: relative;
  }
  .payment_box .payment .code label input {
    font-size: 14px;
    height: 40px;
    width: 100%;
  }
  .payment_box .payment .code label button {
    position: absolute;
    right: 0;
  }
  .payment_box .payment .code .alert {
    font-size: 12px;
  }
  .payment_box .price .price_info ul li span {
    font-size: 14px;
  }
  .payment_box .price .price_info ul li p {
    font-size: 16px;
  }
  .payment_box .price .title {
    margin-bottom: 20px;
  }
  .payment_box .price .price_info ul {
    padding-bottom: 20px;
    margin-bottom: 25px;
  }
  .payment_box .price .price_info .total_price span {
    font-size: 14px;
  }
  .payment_box .price .price_info .total_price p {
    font-size: 20px;
  }
  .payment_box {
    margin-bottom: 30px;
  }

  .course_detail.otpc {
    padding-top: 150px;
  }
  .course_detail.otpc .detail_title .price_box .price {
    margin-left: 0;
  }
  .info_box.otpc .description {
    flex-direction: column;
  }
  .info_box.otpc .description .img_box {
    width: 100%;
  }
  .info_box.otpc .description .img_box img {
    width: 100%;
  }
  .info_box.otpc .description .text_box {
    width: 100%;
  }
  .info_box.otpc .description .text_box h4 {
    margin-bottom: 10px;
  }
  .info_box.otpc .description .text_box p {
    font-size: 14px;
  }

  .test_guide_wrap_01,
  .test_guide_wrap_02,
  .test_guide_wrap_03,
  .test_guide_wrap_04,
  .test_guide_wrap_05 {
    padding: 30px 0px 100px;
  }

  .detail_banner_2.test_guide_01 {
    height: 150px;
  }
  .detail_banner_2.test_guide_01 h3 {
    font-size: 16px;
  }
  .detail_banner_2.test_guide_01 p {
    width: 70%;
    font-size: 10px;
  }
  .detail_banner_2.test_guide_01 p br {
    display: none;
  }

  .test_guide_wrap_01 .item_box {
    margin-bottom: 50px;
  }
  .test_guide_wrap_01 .item_box ul li {
    padding: 20px;
    border-radius: 20px;
  }
  .test_guide_wrap_01 .item_box ul li .text_box p {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .test_guide_wrap_01 .item_box ul li .text_box article {
    font-size: 14px;
  }
  .test_guide_wrap_01 .item_box ul li .img_box {
    display: none;
  }
  .test_guide_wrap_01 .scoring_box .title h3 {
    font-size: 20px;
  }
  .test_guide_wrap_01 .scoring_box .title p {
    font-size: 14px;
  }
  .test_guide_wrap_01 .scoring_box .description {
    flex-direction: column;
  }

  .test_guide_wrap_01 .scoring_box.scoring_1 .description {
    width: 330px;
    margin: 0 auto 30px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description h4 {
    margin-right: 0;
    margin-bottom: 18px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description img {
    height: 32px;
    margin-bottom: 18px;
    margin-right: 0;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul {
    padding-left: 20px;
    width: 90%;
    margin: 0 0 0 30px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul li p {
    width: 80px;
    font-size: 12px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul li span {
    line-height: 1.5;
  }
  .test_guide_wrap_01 .scoring_box.scoring_1 .description ul::before {
    height: 173px;
  }
  .test_guide_wrap_01
    .scoring_box.scoring_1
    .description
    ul
    li:nth-child(-4n + 5)::before {
    width: 30px;
    left: -20px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description {
    width: 330px;
    margin: 0 auto;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description ul {
    display: flex;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description h4 {
    margin: 50px 0px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description ul li {
    margin: 0px 3px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description ul li p {
    font-size: 12px;
    padding: 5px 10px;
    text-align: center;
    line-height: 1.5;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_1 {
    padding-right: 0;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_2 {
    padding-left: 0;
    width: 80%;
    margin: 0 auto;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_1::before {
    width: 148px;
    height: 1px;
    left: 50%;
    bottom: -20px;
    top: auto;
    transform: translateX(-50%);
  }
  .test_guide_wrap_01
    .scoring_box.scoring_2
    .description
    .list_1
    li:nth-child(-3n + 4)::before {
    width: 1px;
    height: 20px;
    left: 50%;
    transform: translateX(-50%);
    top: 27px;
  }
  .test_guide_wrap_01 .scoring_box.scoring_2 .description .list_2::before {
    width: 190px;
    height: 1px;
    left: 45%;
    top: -20px;
    transform: translateX(-50%);
  }
  .test_guide_wrap_01
    .scoring_box.scoring_2
    .description
    .list_2
    li:nth-child(-3n + 4)::before {
    width: 1px;
    height: 20px;
    left: 50%;
    transform: translateX(-50%);
    top: -20px;
  }

  .detail_banner_2.test_guide_02,
  .detail_banner_2.test_guide_03,
  .detail_banner_2.test_guide_04,
  .detail_banner_2.test_guide_05 {
    height: 80px;
  }
  .test_guide_wrap_02 .item_box ul li {
    height: 130px;
    border-radius: 20px;
  }
  .test_guide_wrap_02 .item_box ul li .img_box {
    width: 150px;
    overflow: hidden;
    text-align: center;
  }
  .test_guide_wrap_02 .item_box ul li .img_box img {
    width: 100%;
  }
  .test_guide_wrap_02 .item_box ul li .text_box {
    padding: 0px 20px;
    width: 40%;
  }
  .test_guide_wrap_02 .item_box ul li .text_box p {
    font-size: 20px;
    margin-bottom: 5px;
  }
  .test_guide_wrap_02 .item_box ul li .text_box article {
    font-size: 14px;
  }

  .test_guide_wrap_03 .item_box ul {
    flex-direction: column;
  }
  .test_guide_wrap_03 .item_box ul li {
    width: 100%;
    margin-bottom: 20px;
    border-radius: 20px;
  }
  .test_guide_wrap_03 h4 {
    font-size: 14px;
    padding: 40px 20px;
  }
  .test_guide_wrap_03 h4 br {
    display: none;
  }
  .test_guide_wrap_03 .item_box ul li .text_box {
    padding: 20px;
  }

  .test_guide_wrap_04 h4 {
    font-size: 14px;
    padding: 30px;
    margin-bottom: 30px;
  }
  .test_guide_wrap_04 h4 br {
    display: none;
  }
  .test_guide_wrap_04 .item_box ul {
    flex-direction: column;
  }
  .test_guide_wrap_04 .item_box ul li {
    width: 100%;
    margin-bottom: 20px;
  }
  .test_guide_wrap_04 .item_box ul li .text_box p {
    font-size: 16px;
  }

  .test_guide_wrap_05 .title {
    font-size: 20px;
    margin-bottom: 30px;
  }
  .test_guide_wrap_05 .item_box ul {
    flex-direction: column;
  }
  .test_guide_wrap_05 .item_box ul li {
    width: 100%;
    margin-bottom: 20px;
  }
  .test_guide_wrap_05 .item_box ul li .img_box {
    width: 100%;
  }
  .test_guide_wrap_05 .item_box ul li .img_box img {
    width: 100%;
  }
  .test_guide_wrap_05 .item_box ul li .text_box {
    padding: 30px 20px;
  }
  .test_guide_wrap_05 .item_box ul li .text_box p {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .test_guide_wrap_05 .item_box ul li .text_box span {
    font-size: 14px;
  }
  .test_guide_wrap_05 h4 {
    font-size: 14px;
    padding: 20px;
  }

  .modal .box {
    padding: 30px 20px;
  }
  .modal.text_only .box {
    padding: 30px 20px;
    min-width: 300px;
  }
  #sampleModal h4 {
    font-size: 20px;
  }

  .course_detail.event {
    padding: 30px 0px 100px;
  }
  .course_detail.event .info_box .search_box fieldset input {
    font-size: 14px;
    height: 30px;
    margin-right: 5px;
  }
  .course_detail.event .info_box .search_box fieldset button {
    height: 30px;
    width: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .course_detail.event .info_box .search_box fieldset button img {
    height: 20px;
  }
  .course_detail.event .info_box .event_gallery .gallery_list {
    flex-direction: column;
  }
  .course_detail.event .info_box .event_gallery .gallery_list li {
    width: 100%;
  }
  .course_detail.event .info_box .event_gallery .gallery_list li .text_box p {
    font-size: 16px;
  }
  .course_detail.event
    .info_box
    .event_gallery
    .gallery_list
    li
    .text_box
    .date
    span {
    font-size: 14px;
  }
  .course_detail.event .info_box .event_gallery .gallery_list li .text_box {
    height: 100px;
  }

  .course_detail.event .info_box .event_detail .subject {
    flex-direction: column;
    align-items: flex-start;
  }
  .course_detail.event .info_box .event_detail .subject a {
    margin-bottom: 15px;
  }
  .course_detail.event .info_box .event_detail .subject a img {
    height: 20px;
    margin-right: 5px;
  }
  .course_detail.event .info_box .event_detail .subject a h3 {
    font-size: 16px;
  }
  .course_detail.event .info_box .event_detail .subject .date span {
    font-size: 14px;
  }

  .best_review .title h3 {
    margin-bottom: 20px;
    font-size: 30px;
  }
  .best_review .title a {
    position: relative;
    transform: translateY(0%);
    justify-content: center;
    font-size: 14px;
    height: 40px;
  }
  .best_review #container .best_slide .swiper-slide {
    width: 300px;
    height: 240px;
  }
  .best_review #container .best_slide .swiper-slide a {
    padding: 20px;
    border-radius: 20px;
  }
  .best_review #container .best_slide .swiper-slide .ratings li {
    margin-right: 5px;
  }
  .best_review #container .best_slide .swiper-slide .ratings li img {
    height: 30px;
  }
  .best_review #container .best_slide .swiper-slide p {
    font-size: 18px;
  }
  .best_review #container .best_slide .swiper-slide article {
    font-size: 14px;
  }
  .review {
    padding: 50px 20px 100px;
  }

  .review .check label span {
    font-size: 14px;
  }
  .review .review_list > li a {
    padding: 30px 20px;
  }
  .review .review_list > li a .img_box {
    width: 150px;
    height: 150px;
  }
  .review .review_list > li a .text_box {
    width: 100%;
  }
  .review .review_list > li a .text_box p {
    font-size: 20px;
  }
  .review .review_list > li a .text_box article {
    font-size: 14px;
  }
  .review .review_list > li a .text_box .info span {
    font-size: 12px;
    margin-right: 10px;
    padding-right: 10px;
  }

  #reviewModal {
    min-width: 330px;
  }
  #reviewModal h4 {
    font-size: 20px;
  }
  #reviewModal form > label legend {
    width: 50px;
    font-size: 14px;
  }
  #reviewModal label p {
    font-size: 14px;
    margin-left: 10px;
  }
  #reviewModal form > label select {
    font-size: 14px;
    margin-left: 10px;
  }
  #reviewModal form textarea {
    font-size: 14px;
    min-height: 200px;
  }
  #reviewModal .ratings {
    padding: 20px;
  }

  .review_detail {
    padding: 30px 0px 100px;
  }
  .review_detail .detail_content {
    padding: 20px;
    border-radius: 20px;
  }
  .review_detail .detail_content .subject a {
    width: 60%;
  }
  .review_detail .detail_content .subject .favorite button img {
    height: 20px;
    margin-right: 0;
  }
  .review_detail .detail_content .subject .favorite button span {
    font-size: 16px;
  }
  .review_detail .detail_content .subject a img {
    width: 20px;
    height: 20px;
  }
  #term_back {
    width: 20px;
    height: 20px;
  }
  .review_detail .detail_content .subject a h3 {
    font-size: 16px;
    line-height: 1.5;
  }
  .review_detail .detail_content .subject .favorite button {
    flex-direction: column;
  }
  .review_detail .detail_content .info span {
    font-size: 12px;
  }
  .review_detail .detail_content .content .review_img .ratings {
    padding: 20px;
    box-sizing: border-box;
  }
  .review_detail .detail_content .content article {
    font-size: 14px;
  }
  .review_detail .detail_content .content .review_img {
    margin-bottom: 10px;
  }

  .group_test_wrap {
    padding: 30px 0px 100px;
  }
  .detail_banner_2.group_test {
    height: 80px;
  }
  .group_test_content > p {
    font-size: 16px;
    margin-bottom: 30px;
  }
  .group_test_content .benefit_circle {
    width: 330px;
    height: 330px;
    margin: 0 auto 30px;
  }
  .group_test_content .benefit_circle .left,
  .group_test_content .benefit_circle .right,
  .group_test_content .benefit_circle .top,
  .group_test_content .benefit_circle .bottom {
    width: 100px;
    height: 100px;
    font-size: 14px;
  }
  .group_test_content .benefit_circle .center {
    font-size: 14px;
    width: 230px;
    height: 230px;
  }

  .group_test_content .bottom_content {
    padding: 30px 20px;
  }
  .group_test_content .bottom_content article {
    font-size: 14px;
    padding: 30px 20px;
    margin-bottom: 20px;
  }
  .group_test_content .bottom_content article br {
    display: none;
  }
  .group_test_content .bottom_content .btn_box .normal_btn {
    margin-right: 10px;
  }
  .group_test_content .bottom_content .btn_box .btn {
    padding: 12px;
  }

  #applyModal h4 {
    font-size: 20px;
    margin-bottom: 10px;
  }
  #applyModal p {
    font-size: 14px;
    margin-bottom: 20px;
  }
  #applyModal .input_box label legend {
    font-size: 14px;
  }
  #applyModal .input_box label {
    width: 100%;
  }
  #applyModal .input_box label input,
  #applyModal .input_box label select {
    padding: 10px;
    font-size: 14px;
  }
  #applyModal textarea {
    padding: 10px;
    font-size: 14px;
    min-height: 200px;
  }
  #applyModal span {
    font-size: 10px !important;
    text-align: center;
    line-height: 1.5;
  }

  .download_wrap {
    padding: 30px 0px 100px;
  }
  .detail_banner_2.download {
    height: 80px;
  }
  .download_content > p {
    font-size: 15px;
    margin-bottom: 30px;
  }

  .download_content ul li.item_1 {
    background: url(../img/download_item_1.png) no-repeat right 20px bottom 30px /
      30%;
  }
  .download_content ul li.item_2 {
    background: url(../img/download_item_2.png) no-repeat right 20px bottom 30px /
      30%;
  }
  .download_content ul li .box {
    padding: 30px 20px;
  }
  .download_content ul li p {
    font-size: 20px;
  }
  .download_content ul li span {
    font-size: 14px;
    margin-bottom: 30%;
  }
  .download_content ul li .btn_box .submit_btn {
    margin-right: 10px;
  }
  .download_content ul li .btn_box .btn {
    padding: 12px;
  }
  .download_content ul li .opt_list > p {
    font-size: 16px;
  }

  .mypage {
    padding: 30px 0px 100px;
  }
  .mypage .mypage_nav {
    margin-bottom: 30px;
  }
  .mypage .mypage_nav ul {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .mypage .mypage_nav ul li {
    width: calc(50% - 5px);
    margin-right: 0px;
    margin-bottom: 10px;
  }
  .mypage .mypage_nav ul li a {
    padding: 15px 0px;
  }

  .mypage_table .mo_table > li {
    width: 100%;
  }
  .mypage_table .mo_table_2 > li {
    width: 100%;
  }
  .mypage_table .mo_table_3 > li {
    width: 100%;
  }

  .mypage .title {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
  .mypage .title ul.order_process li {
    margin-left: 0;
  }

  .mypage .mypage_nav ul li a img {
    height: 24px;
    margin-right: 10px;
  }
  .mypage .title ul.order_process {
    margin-bottom: 50px;
  }
  .mypage .title ul.order_process li p {
    font-size: 16px;
  }
  .mypage .title ul.order_process li span {
    width: 20px;
    height: 20px;
    font-size: 10px;
  }

  .cart .mo_table li {
    padding: 20px;
    height: 120px;
  }
  .cart .mo_table li .price_info .price p {
    font-size: 16px;
  }
  .mypage_table.cart .total_price {
    flex-direction: column;
    align-items: flex-start;
    padding: 30px 50px;
    box-sizing: border-box;
    justify-content: center;
  }
  .mypage_table.cart .total_price i {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .mypage_table.cart .total_price .discount {
    font-size: 20px;
  }
  .mypage_table.cart .total_price .price {
    font-size: 20px;
  }
  .mypage_table.cart .total_price .tag_price {
    font-size: 14px;
  }
  .mypage_table.cart .bottom {
    flex-direction: column;
    margin-bottom: 30px;
  }
  .mypage_table.cart .bottom label {
    margin-bottom: 30px;
    font-size: 14px;
    position: relative;
    width: 100%;
  }
  .mypage_table.cart .bottom label button {
    position: absolute;
    right: 0;
    padding: 5px 12px;
  }
  .mypage_table.cart .bottom > span {
    display: block;
    text-align: center;
    font-size: 14px;
  }
  .flex_box {
    display: flex;
  }

  .mypage_table.confirm .table_header,
  .mypage_table.confirm .table_row {
    padding: 0px 20px;
  }
  .mypage_table.confirm .table_header {
    height: 30px;
  }
  .mypage_table.confirm .table_header div {
    font-size: 12px;
  }
  .mypage_table.confirm .table_row {
    min-height: 40px;
  }
  .mypage_table.confirm .table_row div b {
    font-size: 14px;
  }
  .mypage_table.confirm .table_row div p {
    font-size: 14px;
  }

  .payment_box .price .price_info ul li p span {
    font-size: 14px;
  }

  #paymentModal .box {
    min-width: 300px;
  }

  .history .mo_table > li {
    padding: 15px 10px;
    height: auto;
  }
  .history .mo_table > li .top {
    margin-bottom: 10px;
  }
  .history .mo_table > li .top p {
    font-size: 14px;
  }
  .history .mo_table > li .top span {
    font-size: 14px;
  }
  .history .mo_table > li .middle {
    margin-bottom: 10px;
  }
  .history .mo_table > li .middle li {
    font-size: 12px;
    margin-right: 5px;
    padding: 0 5px 0 0;
  }
  .history .mo_table > li .middle li span {
    font-size: 12px;
  }
  .history .mo_table > li > span {
    font-size: 12px;
  }

  .mypage.qa .title {
    display: flex;
    flex-direction: column;
  }
  .mypage.qa .title h4 {
    margin-bottom: 10px;
  }
  .mypage.qa .title .btn {
    width: 100%;
  }
  .mypage_table.qa .bottom {
    margin-bottom: 30px;
  }
  .mypage_table.qa .bottom label {
    position: unset;
  }
  .mypage_table.qa .bottom label span {
    font-size: 14px;
  }
  .mypage_table.qa .bottom label a {
    position: absolute;
    right: 0;
    padding: 5px 12px;
  }

  #inquiryModal .box {
    min-width: 300px;
  }
  #inquiryModal .box h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  #inquiryModal .box form {
    margin-bottom: 20px;
  }
  #inquiryModal .box form label legend {
    width: 70px;
    font-size: 14px;
  }
  #inquiryModal .box form label input,
  #inquiryModal .box form label select {
    font-size: 14px;
    padding: 10px;
  }
  #inquiryModal .box form label select {
    background: url(../img/apply_select_arrow.png) no-repeat right 0px center /
      30px;
  }
  #inquiryModal .box form input[type="text"] {
    box-sizing: border-box;
    padding: 10px;
    font-size: 14px;
  }
  #inquiryModal .box form textarea {
    font-size: 14px;
    padding: 10px;
    min-height: 200px;
  }
  #inquiryModal .box form label p {
    font-size: 14px;
  }

  #modifyModal_2 .box {
    min-width: 300px;
  }
  #modifyModal_2 .box h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  #modifyModal_2 .box form {
    margin-bottom: 20px;
  }
  #modifyModal_2 .box form label legend {
    width: 70px;
    font-size: 14px;
  }
  #modifyModal_2 .box form label input,
  #modifyModal_2 .box form label select {
    font-size: 14px;
    padding: 10px;
  }
  #modifyModal_2 .box form label select {
    background: url(../img/apply_select_arrow.png) no-repeat right 0px center /
      30px;
  }
  #modifyModal_2 .box form input[type="text"] {
    box-sizing: border-box;
    padding: 10px;
    font-size: 14px;
  }
  #modifyModal_2 .box form textarea {
    font-size: 14px;
    padding: 10px;
    min-height: 200px;
  }
  #modifyModal_2 .box form label p {
    font-size: 14px;
  }

  .mypage.member_info .info_box form {
    margin-bottom: 30px;
  }
  .mypage.member_info .info_box {
    padding: 30px 20px;
  }
  .mypage.member_info .info_box h4 {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 30px;
  }
  .mypage.member_info .info_box .explain {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 20px;
  }
  .mypage.member_info .info_box label {
    margin-bottom: 20px;
  }
  .mypage.member_info .info_box label legend {
    font-size: 14px;
    width: 50%;
  }
  .mypage.member_info .info_box label p {
    font-size: 14px;
  }
  .mypage.member_info .info_box label p .verification {
    font-size: 12px;
  }
  .mypage.member_info .info_box label input {
    width: 50%;
    height: 40px;
    font-size: 14px;
  }

  .term_wrap {
    padding: 50px 0 80px;
  }
  .term_wrap h1 {
    font-size: 20px;
  }
  .term_wrap .inner > div {
    height: 500px;
    padding: 20px;
    font-size: 14px;
  }
  .term_wrap li ul {
    padding-left: 10px;
  }
}

/* 로딩 스피너 */
.layerPopup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 100000;
  justify-content: center;
  align-items: center;
}
.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  border: 8px solid #f3f3f3; /* Light grey */
  border-top: 8px solid #3498db; /* Blue */
  border-radius: 50%;
  width: 60px;
  height: 60px;
  animation: spinner 2s linear infinite;
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.sticker_btn {
  width: 100%;
  display: block;
}
.sticker_btn ul {
  display: flex;
  justify-content: flex-end;
  gap: 5px;
}
.sticker_btn ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 50px;
  border-radius: 0px 0px 20px 20px;
  color: #fff;
  font-size: 16px;
  font-weight: var(--weight_bold);
}
.sticker_btn ul li:nth-child(1n) a {
  background-color: rgba(192, 0, 0, 1);
}
.sticker_btn ul li:nth-child(2n) a {
  background-color: rgba(23, 55, 94, 1);
}
.sticker_btn ul li:nth-child(3n) a {
  background-color: rgba(247, 150, 70, 1);
}

@media (max-width: 500px) {
  .top_banner {
    height: 130px;
    background: url(../img/top_banner_m_20250401.png) no-repeat center / cover;
  }
  #pw_set .btn_box {
    flex-direction: column;
    gap: 10px 0;
  }
  .sleeper_account .certi_box .inner {
    flex-direction: column;
    gap: 10px 0;
  }
}

@media (max-width: 375px) {
  .sleeper_account .certi_box > img {
    width: 100%;
  }
}

.discount_price{font-size:20px;color:#666;margin-left:20px;text-decoration:line-through}
#header nav > ul > li a{position: relative;}
#header nav > ul > li a .flag_new{position: absolute;top:-10px;right:-30px;background:rgba(192, 0, 0, 1);width:40px;height:16px;line-height:16px;font-size:12px;text-align:center;color:#fff;border-radius:10px 8px}
@media (max-width: 768px) {
.discount_price{display: block;margin-left:0;margin-top:10px;font-size:16px}
}


/* mypage table */
.data_table table {
  width: 100%;
}
.data_table + .data_table{margin-top:80px;}
.data_table h3 {
    font-size: 30px;
    font-weight: var(--weight_bold);
    margin-bottom: 24px;
}
.data_table thead th {
    background: #f9f9f9;
    height: 50px;
    border-top: 1px solid #dddddd;
    margin-bottom: 20px;
}
.data_table table tr th,
.data_table table tr td {
  border-bottom: 1px solid #d8d8d8;
  padding: 20px;
  text-align: center;
  font-size: 20px;
}

@media (max-width: 768px) {
  .data_table h3{font-size:24px}
  .data_table{
    padding:0 20px
  }
  .data_table table tr th,
  .data_table table tr td {
    padding: 6px;
    font-size: 16px;
    vertical-align:middle;
  }
  .data_table table tr th span{display: block;line-height:20px}  
  .data_table table tr td a{display: block;line-height:40px}
  .report_analysis .bottom{
    padding:0 20px
  }  
}

