/* 회원가입 */
.join-box {
  width: 800px;
  margin: 0 auto;
}
.join-box input[type="radio"] {
  display: inline-block;
  width: 24px !important;
  height: 24px;
  margin: -2px 10px 0 0;
  vertical-align: middle;
  cursor: pointer;
  -moz-border-radius: 50%;
  border-radius: 50%;
  border: 3px solid #ffffff;
  accent-color: #ffba08;
}

.find-table tr {
  border-top: #a3a5aa 1px solid;
  border-bottom: #a3a5aa 1px solid;
}
.find-table .thead {
  background-color: #eaedf4;
}
/* 로그인페이지 */
.login-container {
  padding: 20px 20px;
  background-image: url("../img/bg.png");
}

.login h2 {
  font-size: 30px;
  color: #fff;
  font-family: "ONEMobilePOPOTF";
  font-weight: 100;
}

.login-box {
  width: 712px;
  /* height: 560px; */
  margin: 0 auto;
}

.login-form {
  background-color: #fff;
  padding: 60px 45px;
  border-radius: 20px;
}

.login-form .title {
  font-family: "ONEMobileOTF-Bold";
  font-size: 24px;
  width: 230px;
}
.login-form .help {
  margin-left: 170px;
}
.login-form input[type="text"],
.login-form input[type="password"] {
  border: 3px solid #ffd56b;
  border-radius: 10px;
  padding: 22px 19px;
  width: 100%;
  font-size: 24px;
}
.login-form input:focus {
  outline: 3px solid #ffba0a;
  border: 0 !important; /* 클릭 시 테두리 색상 변경 */
}
.login-form .search-wrap input[type="text"],
.login-form .search-wrap select {
  border: 3px solid #ffd56b;
  border-radius: 10px;
  padding: 22px 19px;
  width: 100%;
  font-size: 24px;
}
.login-form .search-wrap button {
  top: 24px;
  right: 2rem;
}
.login-btn {
  position: relative;
}

.login-btn p {
  position: absolute;
  top: 42%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: "ONEMobilePOPOTF";
  font-size: 36px;
}

/* ------------------------학생 --------------------- */
/* 헤더 */
.notice {
  position: relative;
  cursor: pointer;
}
.notice p {
  position: absolute;
  top: 3px;
  right: 6px;
  color: #fff;
  font-weight: bold;
}

.header article {
  background-color: #f8f9fb;
  border-radius: 10px;
  padding: 22px 19px;
  width: 100%;
  font-size: 24px;
}
/* 레이아웃 */
.side {
  width: 42rem;
}

.main-wrap {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 50px 40px;
}

.main-wrap {
  width: 134rem;
  height: 70rem;
  background-color: #fff;
  border-radius: 10px;
  position: absolute;
  right: 60px;
  top: 179px;
  z-index: 1;
}

.main-wrap-mypage {
  width: 134rem;
  height: 70rem;
  border-radius: 10px;
  position: absolute;
  right: 60px;
  top: 179px;
  z-index: 1;
  background-image: url("../img/new_img/mypage/background.png");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 6rem 8rem;
}

.main-wrap-plan {
  width: 134rem;
  height: 70rem;
  border-radius: 10px;
  position: absolute;
  right: 60px;
  top: 179px;
  z-index: 1;
  background-image: url("../img/new_img/plan/background.png");
}
.header img {
  margin-left: 20px;
  object-fit: contain;
}

/* 사이드 */
.side button p {
  font-size: 24px;
}

.side .profile {
  /* height: 24rem; */
  /* background-color: #fff; */
  border-radius: 10px;
  padding: 30px 20px 0px;
  font-size: 16px;
  font-family: "ONEMobileOTF-Regular";
  /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); */
}

.side .name {
  font-family: "ONEMobilePOPOTF";
  font-size: 24px;
}

.name {
  font-family: "ONEMobilePOPOTF";
  font-size: 24px;
}
.side .profile img {
  object-fit: contain;
}

.side .profile span {
  font-family: "Pretendard";
  font-weight: bold;
  font-size: 14px;
}

.side .profile span.brown {
  color: #331600;
}

.side .ask {
  height: 32rem;
  background-color: #fff;
  border-radius: 10px;
  padding: 25px 48px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.side .ask .memo {
  background-image: url("../img/img10_s.png");
  background-repeat: no-repeat;
  width: 324px;
  height: 174px;
  position: relative;
  padding: 25px 30px;
}

.side .ask .memo textarea {
  background-color: #ddf0ff;
  width: -webkit-fill-available;
  height: 117px;
}

.side .ask button {
  padding: 10px 30px;
  border: #ffd56b 3px solid;
  border-radius: 30px;
  font-family: "ONEMobilePOPOTF";
  font-size: 18px;
  color: #331600;
}

/* 메뉴 */
.menu {
  /* margin-top: 63px;
  width: 1324px;
  position: absolute;
  left: 579px; */
}

.menu a:first-child button {
  /* background-image: url('../../resources/img/btn04_s.png'); */
  width: 186px;
}

.menu a:nth-child(2) button {
  /* background-image: url('../../resources/img/btn06_s.png'); */
  width: 225px;
}

.menu a:last-child button {
  /* background-image: url('../../resources/img/btn05_s.png'); */
  width: 207px;
}

.menu a:first-child button.active {
  /* background-image: url('../../resources/img/btn04_1_s.png'); */
  /* width: 252px; */
  /* 마이페이지 활성화 이미지 */
}

.menu a:nth-child(2) button.active {
  /* background-image: url('../../resources/img/btn06_1_s.png'); */
  /* width: 297px; */
  /* 대시보드 활성화 이미지 */
}

.menu a:last-child button.active {
  /* background-image: url('../../resources/img/btn05_1_s.png'); */
  /* width: 259px; */
  /* 학습일정계획 활성화 이미지 */
}

.menu button p {
  font-size: 32px;
  color: #8c8c8c;
  height: 50px;
}

.menu button {
  background-repeat: no-repeat;
  height: 72px;
  text-align: -webkit-center;
}

.menu button.active {
  /* height: 118px; */
  /* margin-top: -18px; */
}

.menu button p.active {
  /* display: none; */
  /* 원하는 색상으로 변경 */
  color: #6327b9;
}

/* 마이페이지 */
.look-btn {
  cursor: pointer;
}
.mypage .class {
  background-image: url("../img/btn46_12s_normal.png");
  width: 286px;
  height: 114px;
  padding: 11px 25px 40px 25px;
  cursor: pointer;
}

.mypage .class img {
  width: 35px;
  height: 100%;
}
.mypage .class .box {
  background-color: transparent;
  padding: 0;
}
.mypage .class .box > div {
  height: 35px;
}
.mypage .photobook {
  background-image: url("../img/img199_12p.png");
  width: 367px;
  height: 182px;
  padding: 20px 50px 20px 40px;
  color: #fff;
}
.mypage .textbook {
  font-family: "ONEMobilePOPOTF";
}
.mypage .photobook .title1 {
  font-family: "ONEMobilePOPOTF";
  font-weight: 100;
}
.mypage .textbook .text {
  border-radius: 12px 12px 0px 0px;
  height: 68px;
}
.mypage .textbook .box {
  height: fit-content;
  text-align: center;
  padding: 10px;
}
.mypage .book-red .text {
  background-color: #db2b39;
}
/* .mypage .textbook:nth-child(2) .text */
.mypage .book-blue .text {
  background-color: #2d7dd2;
}
.mypage .book-navy .text {
  background-color: #3066be;
}
.mypage .book-gray > .text {
  background-color: #f7f8f9;
}

.mypage .book-purple > .text {
  background-color: #9528b7;
}

.mypage .book-green > .text {
  background-color: #38a867;
}

.purple-scroll::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background-color: #9628b7a2;
}

.green-scroll::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background-color: #38a867ad;
}
.mypage .book-green {
  border: #38a867 solid 6px;
}
.mypage .textbook .box {
  text-align: center;
  padding: 10px;
}
.mypage .book-red {
  border: #db2b39 solid 6px;
}
/* .mypage .textbook:nth-child(2) .text */
.mypage .book-blue {
  border: #2d7dd2 solid 6px;
}
.mypage .book-navy {
  border: #3066be solid 6px;
}
.mypage .book-gray {
  border: #8c8e92 solid 1px;
}
.mypage .book-purple {
  border: #9528b7 solid 6px;
}

.mypage em.orange {
  color: #ffba08;
}

.mypage em.navy {
  color: #3066be;
}

.mypage em.blue {
  color: #2d7dd2;
}

.mypage em.red {
  color: #db2b39;
}

.mypage em.purple {
  color: #9528b7;
}

.myphoto > div {
  background-image: url("../img/new_img/photobook/background.png");
  width: 127rem;
  height: 56rem;
  padding: 30px 60px;
  margin: 0 auto;
  background-size: 100% 100%;
}
.tab-btn {
  position: relative;
  color: #fff;
}
.tab-btn p.custom-style {
  color: #fff;
}

.tab-btn p {
  position: absolute;
  top: 46%;
  right: 7%;
  transform: translate(-50%, -50%);
  font-family: "ONEMobilePOPOTF";
  font-size: 27px;
}
.myphoto .btnGroup {
  width: max-content;
  position: absolute;
  top: 134px;
  right: 14px;
  z-index: 10000;
}
.myphoto .class {
  border-radius: 0px;
  padding: 10px;
}
.myphoto .class .box {
  background-color: transparent;
  border-radius: 0px;
  padding: 0;
}
.myphoto .class .member::before {
  content: "";
  background-image: url("../img/btn47_15s_normal.png");
  width: 16px;
  height: 14px;
  position: absolute;
  left: -28px;
  top: 4px;
}
.myphoto .photo {
  cursor: pointer;
}
.myphoto .photo .title2 {
  color: #8c8e92;
}
.myphoto .tab-box {
  margin: 40px 0px 20px 50px;
}
.myphoto .photo:hover .class {
  transform: rotate(2deg);
}
.myphoto .popup-wrap .date {
  position: relative;
}
.myphoto .popup-wrap .date::before {
  content: "";
  background-image: url("../img/img183_91t.png");
  width: 20px;
  height: 22px;
  position: absolute;
  left: -28px;
}
/* 학습일정계획 */
.myplan .popup-wrap article {
  max-height: 400px;
  overflow-x: auto;
}
.myplan {
  padding-right: 10px;
}
.myplan .yellow-box {
  background-color: #fff8e9;
  border: 1px solid #ffba08;
  padding: 4rem;
  position: relative;
  border-radius: 10px;
}
.yellow-btn {
  background-image: url("../img/btn08_s.png");
  width: 181px;
  height: 60px;
  padding: 5px 20px;
  font-size: 28px;
  font-family: "ONEMobilePOP";
}
.myplan .table-wrap .title2 {
  color: #464749;
}
.myplan input[type="checkbox"] {
  width: 30px;
  height: 30px;
}
.myplan .ui-checkbox::before {
  width: 11px;
  height: 14px;
}
.myplan table tr {
  border-top: #c6c6c6 1px solid;
  border-bottom: #c6c6c6 1px solid;
}
.myplan .imgGroup img {
  width: 349px;
  height: 312px;
}

/* 대시보드 */
.main {
  max-height: 600px;
  overflow: auto;
}

.main .race-wrap {
  background-image: url("../img/new_img/board/background.png");
  background-repeat: no-repeat;
  width: 1249px;
  height: 653px;
  position: relative;
}

.main .race-wrap-ai {
  background-image: url("../img/new_img/ai_board/background.png");
  background-repeat: no-repeat;
  width: 1249px;
  height: 653px;
  position: relative;
}

.complete-wrap {
  width: 1244px;
  height: 617px;
}

button p {
  font-family: "ONEMobilePOPOTF";
  width: max-content;
}

.race-wrap .title-box {
  position: absolute;
  top: -3px;
  left: 50px;
  text-align: center;
  background-image: url("../img/img15_s.png");
  width: 336px;
  height: 145px;
}

.race-wrap .title-box .title {
  font-size: 32px;
  font-family: "ONEMobilePOPOTF";
}

.race-wrap .title-box .subtitle {
  font-size: 16px;
  background-color: #441e03;
  color: #fff;
  padding: 5px 15px;
  width: fit-content;
  border-radius: 20px;
  display: inline-block;
  font-family: "ONEMobileOTF-Bold";
}
.race-wrap .title-box .subtitle2 {
}
.race-box {
  width: 1063px;
  height: 516px;
  position: absolute;
  left: 114px;
  top: 60px;
}

.race-box .rcon,
.race-box .lcon {
  gap: 128px;
  width: 1125px;
}

.rabbit-start {
  position: absolute;
  top: -30px;
  left: 556px;
}
.rabbit-end {
  position: absolute;
  bottom: 24px;
  right: 40px;
}

.rabbit img {
  transform: scaleX(-1);
}

.race-btn {
  position: relative;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.race-btn p,
.race-btn .popTxt p {
  position: absolute;
  text-align: center;
  width: fit-content;
  /* top: 16px; */
  /* right: 9px; */
  font-family: "ONEMobilePOPOTF";
  font-size: 28px;
  color: #3a241d;
  white-space: nowrap;
}

.race-btn p.long {
  width: fit-content;
}
/* .popup-yellow{
  background-image: url('../img/img139_72s.png');
  min-width: 439px !important;
  min-height: 244px !important;
  background-color: transparent !important;
  border: 0 !important;
} */
/* 사진촬영 */
.camera {
  background-color: #000;
}
.camera .header {
  height: 110px;
  background-color: #eaedf4;
  padding: 0 60px;
}
.camera .body {
  width: 1435px;
  height: 810px;
  margin: 0 auto;
}
.stickers button {
  margin: 5px;
  text-align: center;
}
.frame {
  background-image: url("../img/img142_76s.png");
  width: 993px;
  height: 634px;
  padding: 55px;
  text-align: center;
}
.frame .photo {
  width: 845px;
  height: 476px;
  margin: 0 auto;
}
.frame .photo img {
  width: inherit;
}
/* 학습을 마친 친구들 */
.complete-wrap h2 {
  font-size: 32px;
  color: #331600;
  font-family: "ONEMobilePOPOTF";
  font-weight: 100;
}
.complete-wrap img {
  width: inherit;
}
.complete-wrap .photo {
  cursor: pointer;
  width: 200px;
  height: 130px;
}
/* 챕터 */
.time-hint {
  position: absolute;
  top: 50px;
  right: 50px;
  text-align: center;
}
.hint-btn {
  background-image: url("../img/btn01.png");
  width: 110px;
  height: 45px;
  padding: 5px 20px;
  font-size: 28px;
  font-family: "ONEMobilePOP";
}
.content-wrap {
  margin: 10px 60px 0 60px;
}

.content-wrap::before {
  /* background-image: url('../img/logo2.png'); */
  background-size: 155px 58px;
  width: 155px;
  height: 58px;
  content: "";
  display: block;
  position: absolute;
  top: -72px;
}

.content-wrap > .title-box {
  margin-left: 75px;
}

.content p.title-bg {
  width: max-content;
  height: max-content;
  background: linear-gradient(to right, #eaedf4, rgba(255, 255, 255, 0));
  padding: 20px 60px;
  margin-bottom: 30px;
}

.content {
  position: relative;
  box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1);
  width: 93%;
  height: 710px;
  background-color: #fff;
  border-radius: 20px;
}

/* step1 */
.videoCon {
  position: relative;
  text-align: center;
  width: 100%;
  display: inline-block;
}

.videoCon .videoStart {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.look-text {
  position: absolute;
  right: 60px;
  bottom: 0;
}

.look-text button {
  position: relative;
}

.look-text p {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 28px;
}

/* step1-1 */
.imgGroup,
.textareaGroup {
  width: 100%;
  text-align: center;
}

.textareaGroup {
  margin-top: 40px;
}

.textareaGroup textarea {
  width: 1460px;
  height: 200px;
  background-color: #eff2f7;
  border-radius: 10px;
  padding: 30px 40px;
  line-height: 30px;
  font-size: 24px;
  font-family: "Pretendard-Regular";
}

/* step1-1-팝업 */
.popup {
  /* display: none; */
  position: absolute;
  width: 355px;
  height: 327px;
  background-color: white;
  border: 3px solid #ffbd14;
  border-radius: 10px;
  padding: 20px 40px;
}

.popup h3 {
  font-size: 42px;
}

.popup .yellow-box {
  width: 33px;
  height: 33px;
  color: #ffba08;
  background-color: #fff3d7;
  padding: 7px;
  border-radius: 5px;
  margin-right: 10px;
}

/* step1-2 */
.readGroup h4 {
  font-size: 20px;
  margin-bottom: 10px;
}
.readGroup > div {
  background-image: url("../img/img38_1_s.png");
  width: 1282px;
  height: 492px;
  padding: 10px;
}
.readGroup .textbox {
  height: calc(100% - 51px);
  overflow-y: auto;
  padding: 20px;
}
.readGroup .icon {
  text-align: center;
}

.readGroup p.read {
  width: max-content;
  border-radius: 10px;
  font-size: 24px;
  font-family: "Pretendard-Regular";
  background-color: #eaedf4;
  padding: 10px 20px;
}

/* step1-3 */
.listenGroup .title-bg {
  position: absolute;
  z-index: 1;
}

.listenGroup img.bg {
  position: absolute;
  top: 0;
  width: 100%;
  height: 710px;
}

.listenGroup .listen-btn {
  position: absolute;
  top: 77%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.listenGroup .textbox {
  position: absolute;
  top: 45%;
  left: 31%;
  transform: translate(-50%, -50%);
  /* width: 900px; */
}
.dropGroup .textbox {
  position: absolute;
  top: 45%;
  left: 53%;
  transform: translate(-50%, -50%);
  /* width: 900px; */
}

.listenGroup .textbox p {
  font-size: 28px;
  line-height: 45px;
  width: 100%;
}
p.textbox {
  width: 100%;
}
.listenGroup p.title {
  font-size: 42px;
  text-shadow: 0px 0px 0 #fff, 0px 0px 0 #fff, 0px 0px 0 #fff, 0px 0px 0 #fff;
  -webkit-text-stroke-width: 0px;
  -webkit-text-stroke-color: #fff;
  font-family: "ONEMobilePOP";
  margin-bottom: 25px;
}

/* step2 */
.vocaGroup {
  width: 1380px;
}
.vocaGroup h3 {
  font-size: 42px;
}

.vocaGroup .yellow-box {
  width: 33px;
  height: 33px;
  color: #ffba08;
  background-color: #fff3d7;
  padding: 7px;
  border-radius: 5px;
  margin-right: 10px;
}

.vocaGroup .imgGroup {
  width: max-content;
}

/* step2_1 */
.mic-btn {
  position: relative;
  background-image: url("../img/img44_s.png");
  width: 315px;
  height: 315px;
}
.mic-btn img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.readGroup section p,
.readGroup section input {
  width: 780px;
  height: 65px;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
  font-size: 28px;
}

/* step2_2 */
.popTxt {
  position: relative;
}

h4 {
  font-size: 20px;
}

input.speak {
  background-color: #fff8e9;
  border: 0;
}
p.read-ai {
  border: 3px solid #ffba08;
}

/* step2_3 */
.yellow-box-big {
  width: 60px;
  height: 60px;
  color: #ffba08;
  background-color: #fff3d7;
  padding: 13px;
  border-radius: 10px;
  margin-right: 10px;
  font-size: 32px;
}
.btnGroup {
  width: 560px;
}
.time-bg {
  text-align: center;
  font-family: "neodgm";
  background-image: url("../img/img55_s.png");
  width: 110px;
  height: 128px;
}
.time-bg > div {
  position: relative;
}
.time {
  position: absolute;
  top: 70px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.second {
  font-size: 51px;
  font-family: "neodgm";
  color: #752aff;
}
.time .text {
  font-size: 21px;
  color: #752aff;
}

/* step2_5 */
.dropGroup .popTxt {
  position: relative;
  width: fit-content;
}
.dropGroup .popTxt img:last-child {
  position: relative;
}
.dropGroup span {
  font-size: 36px;
  font-family: "Pretendard-Bold";
}
.dropGroup button {
  position: absolute;
}
.dropGroup button p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.dragGroup article {
  position: absolute;
}
.dragGroup button {
  position: relative;
}
.dragGroup button p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* step2_11 */
.inputGroup {
  position: relative;
  background-color: #fff3d7;
  border: #ffba08 2px solid;
  border-radius: 10px;
  padding: 15px 20px;
  min-height: 100px;
  min-width: 300px;
  font-size: 28px;
}
.inputGroup::before {
  background-image: url("../img/img89_43s.png");
  background-size: 58px 20px;
  width: 58px;
  height: 20px;
  content: "";
  display: block;
  position: absolute;
  top: 93px;
}
.inputGroup input {
  border: #cae5ff 1px solid;
  border-radius: 5px;
  padding: 10px 20px;
  width: min-content;
  font-size: 28px;
}

/* step3_2 */
.inputbox {
  border: #ffe029 solid 5px;
  border-radius: 10px;
  padding: 20px;
  background-color: #fff3d7;
  width: min-content;
}

.next-btn,
.pre-btn {
  cursor: pointer;
}

.listen-btn {
  cursor: pointer;
}

/* 퀴즈 결과 */
.result-box {
  max-height: 400px;
  overflow: auto;
  padding-right: 10px;
}

/* ------------------------학생 --------------------- */

/* ------------------------선생님 --------------------- */
.side_t {
  background-color: #fff;
  width: 360px;
  /* height: 100%; */
  padding: 25px 40px;
}

details {
  margin: 5px 0 10px;
}
details a {
  display: block;
}
details > summary {
  font-size: 24px;
  font-family: "ONEMobilePOP";
  padding: 10px;
  outline: 0;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.5s;
  text-align: left;
}
details > summary::-webkit-details-marker {
  background: #444;
  color: #fff;
  background-size: contain;
  transform: rotate3d(0, 0, 1, 90deg);
  transition: transform 0.25s;
}
details[open] > summary::-webkit-details-marker {
  transform: rotate3d(0, 0, 1, 180deg);
}
details[open] > summary ~ * {
  animation: reveal 0.5s;
}
.tpt {
  font-family: "Pretendard-SemiBold";
  font-size: 20px;
  padding: 5px;
  line-height: 25px;
  cursor: pointer;
}
.side_t .tpt {
  margin: 5px 0 10px 30px;
}
.side_t .tpt:hover {
  background-color: #fff;
  border: 1px solid #ffba08;
  border-radius: 5px;
  text-decoration: underline;
  text-decoration-color: #ffba08;
  text-decoration-thickness: 3px;
}
@keyframes reveal {
  from {
    opacity: 0;
    transform: translate3d(0, -30px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

select {
  min-width: 128px;
  border-radius: 5px;
  padding: 10px 20px;
  font-size: 18px;
}
select option {
  font-size: 20px;
  font-weight: bold;
}

.class {
  /* background-color: #f8f9fb; */
  background-image: url("../img/new_img/photobook/photo.png");
  border-radius: 10px;
  padding: 25px;
  font-size: 19px;
  width: max-content;
}
.class .title1,
.textbook .title1 {
  font-family: "ONEMobilePOP";
  font-weight: 100;
}
.class .box {
  background-color: #eaedf4;
  border-radius: 10px;
  padding: 10px;
}
.class .member {
  font-size: 20px;
  color: #75767a;
  position: relative;
}
.class .member::before {
  content: "";
  background-image: url("../img/img171_82t.png");
  width: 20px;
  height: 22px;
  position: absolute;
  left: -28px;
}
.class .btnGroup,
.textbook .text .btnGroup {
  width: initial;
}
.class button,
.textbook button {
  font-size: 19px;
  font-family: "Pretendard-Regular";
}
.textbook {
  width: 100%;
  border: #ffba08 solid 6px;
  border-radius: 20px;
  font-size: 19px;
}
.textbook-add {
  width: 300px;
  height: 354px;
  background-color: #f8f9fb;
  border: #75767a solid 2px;
  border-radius: 20px;
  font-size: 19px;
}
.textbook .box {
  height: 250px;
}
.textbook .text {
  height: 97px;
  background-color: #ffba08;
  border-radius: 0px 0px 12px 12px;
  padding: 20px;
}
.textbook-add {
  position: relative;
}
.textbook-add button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.search-wrap {
  position: relative;
}
.search-wrap select {
  font-size: 20px;
  width: 13rem;
  background-color: #fff;
  border: 0;
  border-bottom: 1px solid #a4a4a4;
  border-radius: 0;
}
.search-wrap input {
  font-size: 20px;
  width: 40rem;
  border: 0;
  border-bottom: 1px solid #c8c8c8;
}
.search-wrap button {
  position: absolute;
  right: 1rem;
  top: 9px;
}
.input-icon {
  display: block;
  width: 30px;
  height: 30px;
  font-size: 1.9rem;
  color: #000;
  cursor: pointer;
}
/* 테이블 */
.table-pagination button,
.table-pagination button,
.table-pagination button {
  font-size: 2rem;
  font-family: "Pretendard-Regular";
  height: 40px;
  width: 40px;
  border-radius: 0.5rem;
}

.table-pagination .selected-btn,
.table-pagination .selected-btn,
.table-pagination .selected-btn {
  background-color: #ffba08;
  color: #fff;
  font-family: "Pretendard-Bold";
}
.new-btn {
  padding: 10px 30px;
  font-size: 20px;
  font-family: "Pretendard-Bold";
  border-radius: 5px;
  background-color: #fff3d7;
}
.new-btn:hover {
  background-color: #ffba08;
  color: #fff;
}

/* 팝업 */
.popup-wrap {
  position: fixed;
  background-color: rgba(0, 0, 0, 0.283);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.popup-box {
  position: fixed;
  min-width: 670px;
  /* min-height: 219px; */
  background-color: var(--color-white);
  top: 50%;
  left: 5%;
  right: 5%;
  transform: translateY(-50%);
  border: 1px solid var(--color-gray);
  border-radius: 1rem;
  padding: 3rem;
  z-index: 11111;
}

.popup-title {
  font-family: "ONEMobilePOPOTF";
  font-size: 32px;
}
.popup-wrap .search-wrap input,
.popup-wrap .search-wrap select {
  position: relative;
  font-size: 20px;
  width: 100%;
  border-radius: 10px;
  border: 1px solid #ffdf9a;
  height: 50px;
}
.popup-wrap .search-wrap button {
  position: absolute;
  right: 1rem;
  top: 9px;
}

/* 공지등록 */
.board-wrap {
  border-top: 1px #606060 solid;
  border-bottom: 1px #606060 solid;
  padding: 20px 0;
}
.board-wrap label {
  width: 13rem;
}
.board-wrap textarea {
  min-height: 25rem;
  font-size: 20px;
  width: 100%;
}
input.data-wrap,
textarea.data-wrap {
  width: -webkit-fill-available;
  padding: 1.2rem;
  border-radius: 0.8rem;
  border: 1px solid #8c8e92;
}
.wrap {
  border: 1px solid var(--color-lightGray);
  padding: 2rem;
  position: relative;
  border-radius: 10px;
  background-color: #fff;
}
.mypage .wrap {
  overflow-x: auto;
}
.wrap section {
  width: max-content;
}
.wrap .wrap-bg {
  background-color: #f7f8fa;
  padding: 20px;
  border-radius: 10px;
  height: 20rem;
  width: -webkit-fill-available;
}
.wrap .wrap-bg > div {
  text-align: center;
}
.wrap .progress-bar {
  height: 40px;
}
.wrap .progress-bar-fill {
  height: 40px;
}
.wrap details .title2 {
  width: 160px;
}
.wrap details span {
  width: 110px;
  text-align: end;
}

.bookmanage-btn {
  padding: 20px 30px;
  font-size: 20px;
  font-family: "Pretendard-Bold";
  border-radius: 5px;
  border: #ffba08 solid 2px;
  cursor: pointer;
}

.hidden-tr {
  display: none;
}
.show-tr {
  background-color: #fff3d7;
}
.show-tr div {
  margin: 10px;
}
.show-tr table {
  background-color: #fff;
}

/* 로드맵 */
.mypage .big {
  width: 48%;
  height: 100%;
}
.mypage .big > .text {
  border-radius: 19px 19px 0px 0px;
  border-bottom: 1px solid #8c8e92;
}
.mypage .big > .box {
  overflow-x: auto;
  margin: 4rem 3rem;
  height: 100%;
  max-height: calc(100% - 16rem);
}
.dropbox {
  color: #8c8e92;
  border: #8c8e92 dotted 1px;
  background-color: #eaedf4;
  border-radius: 20px;
  min-height: 20rem;
}
.dropbox p {
  line-height: 20rem;
}

/* 단원 버튼 */
.unit-pagination button {
  font-size: 2rem;
  font-family: "Pretendard-Regular";
  padding: 5px 30px;
  border: #c6c6c6 3px solid;
  border-radius: 5px;
  color: #331600;
  background-color: #eaedf4;
}

.unit-pagination .selected-btn {
  background-color: #c6c6c6;
  /* color: #fff; */
  font-family: "Pretendard-ExtraBold";
}
/* ------------------------선생님 --------------------- */
