/**********************************************************************************************
 * 파일명: style.css
 * 저작권:
 *     NOWC-2026-SWAYEDUNET-A7D4C9
 *     © 나우컴퍼니(NOWCOMPANY) | https://nowcompany.kr
 *     All rights reserved.
 **********************************************************************************************/

@charset "utf-8";
body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
button,
input {
	margin: 0;
	padding: 0;
}
ul,
li,
ol {
	list-style: none;
}
img {
	max-width: 100%;
	vertical-align: middle;
}
table {
	width: 100%;
	border-collapse: collapse;
}
a {
	text-decoration: none;
	color: #000;
}
/* header */
header {
	position: relative;
	height: 74px;
	border-bottom: 1px solid #e6e6e6;
	box-sizing: border-box;
}
.lnb-right {
	position: absolute;
	right: 0;
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	height: 100%;
}
.lnb-left {
    left: 0;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
}
.lnb-left>li,
.lnb-right>li {
    text-align: center;
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content: center;
	width: 74px;
	border-left: 1px solid #e6e6e6;
	box-sizing: border-box;
}

.lnb-left>li {
	border-left: 0;
    border-right: 1px solid #e6e6e6;
}
.lnb-left>li img,
.lnb-right>li img {
	display: block;
	width: 24px;
	margin: 0 auto;
}
.lnb-left>li>.inside,
.lnb-right>li>.inside {
	color: #616161;
	font-size: 13px;
}
.lnb-left>li.whole-menu .inside .whole-menu__img {
	display: block;
	width: 24px;
	height: 24px;
	margin: 0 auto;
      background-color: #6b6b6b;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    vertical-align: middle;
        -webkit-mask-image: url('../img/sub/mypage/menu-icon.svg'); /* 홈 */
    mask-image: url('../img/sub/mypage/menu-icon.svg');
}
.lnb-left>li.whole-menu.on .inside {
	color: #2678bb;
}
.lnb-left>li.whole-menu.on .inside .whole-menu__img {
	background-image: url('/img/home/menu_icon_on.png');
}


/* mypage menu */
.lnb-left.lnb-mypage li:nth-child(1){
    display:none;
}
.lnb-left.lnb-mypage li:nth-child(2){
   border-right: 0;
    width: 100%;        
    height: auto;        
    text-align: center;  
    padding: 10px; 
}
.lnb-left.lnb-mypage li:nth-child(2) img {
    display: block;
    min-width: 95px;
    height: 60px;
    margin: 0 auto;
    object-fit: contain;
    padding: 10px;
}

@media (max-width: 768px) {
    .lnb-left.lnb-mypage li:nth-child(2) img {
        min-width: 70px;
        padding: 0px;
    }
}

@media (max-width: 480px) {
    .lnb-left.lnb-mypage li:nth-child(2) img {
        min-width: 50px;
        padding: 0px;
    }
}
/* mypage menu logo */


/* study menu */
.lnb-left.lnb-study li:nth-child(2){
   border-right: 0;
    width: 100%;        
    height: auto;        
    text-align: center;  
    padding: 10px; 
}
.lnb-left.lnb-study li:nth-child(2) img {
    display: block;
    min-width: 95px;
    height: 60px;
    margin: 0 auto;
    object-fit: contain;
    padding: 10px;
}

@media (max-width: 768px) {
    .lnb-left.lnb-study li:nth-child(2) img {
        min-width: 70px;
        padding: 0px;
    }
}

@media (max-width: 480px) {
    .lnb-left.lnb-study li:nth-child(2) img {
        min-width: 50px;
        padding: 0px;
    }
}
/* study menu logo */

/* content */
.wrap {
	position: relative;
	overflow: visible;
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	background-color: #f3f3f3;
}
.wrap .sidebar {
	float: left;
	width: 200px;
	background-color: #fff;
	border-right: 1px solid #e6e6e6;
	box-sizing: border-box;
}
.wrap>.con {
	float: left;
	width: calc(100% - 200px);
}
.headline {
	border-bottom: 1px solid #e6e6e6;
	box-sizing: border-box;
	background-color: #fff;
}
.headline-top {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	height: 110px;
	padding: 0 20px;
	box-sizing: border-box;
}
.headline-top.on .course .move-home.simple::after,
.headline-middle.on .course .inside-skyblue.simple::after {
	background-image: url('/img/home/arrow_up_icon.png');
}
.headline-middle {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	gap: 0 10px;
	padding: 0 20px 20px 20px;
}
.headline-bottom {
	padding: 0 20px;
}
.headline-top__left {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-flex:0;
	-ms-flex: 0 0 calc(100% - 380px);
	flex: 0 0 calc(100% - 380px);
	gap: 0 20px;
}

.headline-top__left p {
	font-size: 16px;
}
.headline-top__left strong{
    font-size: 20px;
}

.headline-top .date-range-with-badge {
    display: flex;
    align-items: center;
    gap: 5px;
}

.headline-top .badge-remain {
    padding: 4px 12px;
    border-radius: 16px;
    background-color: #dae2ff;
    color: #3030f5;
    font-weight: 600;
    font-size: 13px;
}

.headline-top .badge-dday {
    background-color: #ffe2e0;
    color: #ee3f3f;
    font-weight: bold;
    animation: blink-fade 5s infinite;
}

.headline-top .badge-expired {
    background-color: #bfbfbf;
    color: #fff;
}

@keyframes blink-fade {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

.headline-middle .headline-middle__inner {
	position: relative;
	flex: 1 1 auto;
	padding: 12px 30px;
	background-color: #fafafa;
	border: 1px solid #e6e6e6;
	border-radius: 24px;
	box-sizing: border-box;
}
.headline-middle .confirmation-frame {
	flex: 0 0 auto;
}
.headline-middle .headline-middle__inner .course {
	position: absolute;
	right: 4px;
	top: 3px;
}
.headline-middle__inner .list-line {
	padding-top: 0;
}
.headline-bottom .list-tab {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	gap: 0 10px;
	height: 48px;
}
/*.headline-bottom .list-tab >li {
	flex: 0 0 100px;
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	text-align: center;
	border-bottom: 3px solid transparent;
}
.headline-bottom .list-tab >li:hover,
.headline-bottom .list-tab >li.on {
	border-bottom-color: #ff9100;
}
.headline-bottom .list-tab >li:hover .inside,
.headline-bottom .list-tab >li.on .inside {
	color: #ff9100;
}
.headline-bottom .list-tab >li .inside {
	display: block;
	width: 100%;
	color: #aaa;
	font-size: 15px;
}
*/

.headline-bottom .list-tab >li {width:100px}
.headline-bottom .list-tab >li .inside {display:flex;align-items:center;justify-content:center;height:calc(100% - 1px);padding:0 20px;font-size:16px;text-align:center;color:#757575;background-color:#fff;border:1px solid #E6E6E6;border-bottom:0;border-radius:10px 10px 0 0;transition:0.2s}
.headline-bottom .list-tab >li .inside .icon {margin-left:3px;font-size:17px;transform:translateY(2px)}
.headline-bottom .list-tab >li.home {margin-right:20px}
.headline-bottom .list-tab >li.home .inside {}
.headline-bottom .list-tab >li.home .inside .icon {margin-left:0;font-size:21px;transform:translateY(0)}
.headline-bottom .list-tab >li .assignment_tab .icon {font-size:19px}
.headline-bottom .list-tab >li:hover .inside {color:#212121} 
.headline-bottom .list-tab >li.on .inside, 
.headline-bottom .list-tab >li.on:hover .inside {height:100%;color:#2678bb;background-color:#f3f3f3;border-color:#E6E6E6}
.headline-bottom .list-tab >li .exam_tab {color:#F74632;border-color:#FDC8C2}
.headline-bottom .list-tab >li .exam_tab .icon {font-weight:bold}
.headline-bottom .list-tab >li:hover .exam_tab {border-color:#E6E6E6}

.course .move-home,
.course .inside-skyblue {
	display: inline-block;
	border-radius: 20px;
	box-sizing: border-box;
	height: 40px;
	padding: 9px 20px 10px;
	box-sizing: border-box;
	color: #fff;
}
.course .inside-skyblue {
	background-color: #78a3fe;
}
.course .move-home {
	background-color: #ffa200;
}
.course .inside-skyblue,
.course .move-home {
	position: relative;
	width: 100%;
}
.course .inside-skyblue::after,
.course .move-home::after {
	content: '';
	float: right;
	width: 20px;
	height: 20px;
	margin-left: 14px;
	background: url('/img/home/arrow_down_icon_white.png') no-repeat center / contain;
}
.course .inside-skyblue.on::after,
.course .move-home.on::after {
	background-image: url('/img/home/arrow_up_icon_white.png');
}
.course .inside-skyblue.simple,
.course .move-home.simple {
	padding: 0;
	background-color: transparent;
}
.course .inside-skyblue.simple::after,
.course .move-home.simple::after {
	margin-left: 0;
}
.course .inside-skyblue {
	background-color: #78a3fe;
}
.course-list {
	display: none;
	position: relative;
	z-index: 1;
	margin-top: 5px;
	padding: 10px 0;
	border-radius: 5px;
	border: 1px solid #e6e6e6;
	box-sizing: border-box;
	background-color: #fff;
}
.course-list>li {
	padding: 6px 20px;
	box-sizing: border-box;
	color: #616161;
	    font-family: "Pretendard", "Pretendard Variable", sans-serif;
	cursor: pointer;
}
.course-list>li:hover {
	background-color: #fafafa;
}
.confirmation-frame>span {
	display: none;
	color: #aaa;
	font-size: 12px;
}
.btn-round-white {
	display: inline-block;
	height: 40px;
	padding: 9px 20px 10px;
	box-sizing: border-box;
	background-color: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 20px;
}
.btn-round-white>img {
	display: inline-block;
	width: 16px;
}
.con-frame {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-ms-flex-direction:column;
	flex-direction:column;
	gap: 20px 0;
	padding: 20px;
	box-sizing: border-box;
	background-color: #f3f3f3;
}
.con-frame.increase {
	padding-bottom: 80px;
}
.con-frame .lp_detail input{
    width: 100%;
    height: 48px;
    border: 1px solid #e0e0e0;
    padding: 0 0 0 16px;
    font-size: 14px;
    color: #000;
    border-radius: 6px;
}
.con-frame textarea{
    border: 1px solid #e0e0e0;
    box-sizing: border-box;
    padding: 12px 16px;
    font-size: 14px;
    color: #000;
    border-radius: 6px;
    height:400px !important;
}
.con-section {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	gap: 0 20px;
}
.con-section__item {
	flex: 1 1 auto;
	width: 100%;
	background-color: #fff;
	box-sizing: border-box;
	border: 1px solid #ebebeb;
	border-radius: 5px;
}
.con-section__title {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	height: 56px;
	padding: 18px 20px;
	box-sizing: border-box;
}
.con-section__title .title {
	position: relative;
	padding-left: 13px;
	font-size: 20px;
}
.con-section__title .title::before {
	content: '';
	position: absolute;
	left: 0;
	top: 5px;
	width: 3px;
	height: 15px;
	background-color: #2678bb;
}
.con-section__title span.right {
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}
.con-section__title span.right .svg-icon.right{
    height:18px;
}

.btn-more {
	display: inline-block;
	vertical-align: middle;
	line-height: 27px;
}
.btn-more img {
	display: inline-block;
	vertical-align: -7px;
	width: 24px;
}
.status {
	position: relative;
	padding-left: 18px;
	color:#d32f2f !important;
}
.status::before {
	content: '';
	position: absolute;
	left: 0;
	top: 5.5px;
	width: 8px;
	height: 8px;
	background-color: #d32f2f;
}
.info-data-box {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	gap: 0 31px;
	padding: 11px 20px 14px;
	background-color: #f6f9ff;
	box-sizing: border-box;
	border-top: 1px solid #ebebeb;
}
.info-data-box .title {
	position: relative;
}
.info-data-box .title::after {
	content: '';
	position: absolute;
	right: -15px;
	top: 5px;
	width: 1px;
	height: 12px;
	background-color: #cadaff;
}
.info-data-box .con {
	color: #616161;
	    font-family: "Pretendard", "Pretendard Variable", sans-serif;
}
.subject-list {
	background-color: #fff;
	border-top: 1px solid #ebebeb;
}
.subject-list>li {
	box-sizing: border-box;
	border-top: 1px solid #ebebeb;
}
.subject-list>li:first-child {
	border-top: 0;
}
.subject-list_inner {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	gap: 0 20px;
	padding: 25px 30px;
}
/* 경비 */
.subject-list_banner {
	display:-webkit-box;
	display:-ms-flexbox;
	display: table;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	gap: 0 20px;
	padding: 25px 30px;
    margin: 0px auto;
}
.subject-list_inner>li.middle {
	width:100%;
}
.subject-list_inner>li.rate-frame>.rate-middle {  
      text-align: center;
    }

.subject-list_inner>li.rate-frame {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	gap: 0 100px;
        align-items: center;
}
.state-blue,
.state-green,
.state-orange,
.state-red,
.state-gray {
	display:block;
	width:100%;
	padding:12px 10px 14px 10px;
	line-height:1;
	font-size:13px;
	text-align:center;
	border:1px solid transparent;
	border-radius:5px
}
.state-blue {
	border-color: #1f5afc !important;
	color: #1f5afc !important;
}
.state-green {
	border-color: #4caf50 !important;
	background-color: rgba(76, 175, 80, 0.08) !important;
	color: #4caf50 !important;
}
.state-orange {
	border-color: #ff9100 !important;
	background-color: rgba(255, 197, 0, 0.08) !important;
	color: #ff9100 !important;
}
.state-red {
	border-color: #d32f2f !important;
	background-color:#d32f2f;
	color: #fff !important;
}
.state-gray {
	border-color: #bdbdbd !important;
	background-color: #f5f5f5 !important;
	color: #9e9e9e !important;
}
.square-green,
.square-primary,
.square-gray {
	display: inline-block;
	min-width: 40px;
	padding: 0 8px;
	border: 1px solid transparent;
	box-sizing: border-box;
	font-size: 12px;
	text-align: center;
}
.square-green {
	border-color: #4caf50 !important;
	color: #4caf50 !important;
	flex-basis:auto !important;
}
.square-primary {
	border-color: #1f5afc !important;
	color: #1f5afc !important;
}
.square-gray {
	border-color: #9e9e9e !important;
	color: #9e9e9e !important;
}
.subject-title {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	gap: 0 4px;
}
.subject-title .title {
	font-size: 16px;
	margin-left:5px
}
.subject-title [class^="square-"] {
	flex-basis: 41px;
}
.list-line {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	gap: 0 30px;
	padding-top: 10px;
}
.list-line>li {
	position: relative;
}
.list-line>li::before {
	content: '';
	position: absolute;
	left: -15px;
	top: 4px;
	width: 1px;
	height: 12px;
	background-color: #e6e6e6;
}
.list-line>li:first-child:before {
	content: none;
}
.list-line>li .color-gray {
	color: #373737 ;
}
.rate-box {
	width: 400px;
}
.rate-box .rate-text{
    line-height: 42px;
}
.list-rate>li {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
}
.bar-frame {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 10px;
	border-radius: 4px;
	background-color: #eee;
}
.bar-frame .bar-frame-line {
	height: 100%;
}
.bar-frame .pin {
	position: absolute;
	top: 0;
	right: 30px;
	width: 4px;
	height: 19px;
	background-color: #d32f2f;
}
.bar-frame .progressbar {
	margin: 0;
}
.bar-frame .proggress {
	position: absolute;
    left: 0;
    top: 0;
    height: 10px !important;
    background-color: rgb(255, 182, 0);
    height: 5px;
    border-radius: 0;
    width: 0%;
    transition: width 0.7s ease-in-out;
}
.btn-area {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	gap: 0 30px;
}
.btn-area [class^="btn-"] {
	flex: 1 1;
}
.btn-area.btn-reset{
    display: inline;
}
.btn-area.btn-reset p{
 padding-top: 10px;
}
.btn-primary,
.btn-gray,
.btn-icon {
	display: inline-block;
	min-width: 100px;
	padding: 9px 13px 10px;
	box-sizing: border-box;
	border-radius: 6px;
	color: #fff;
	text-align: center;
}
.btn-primary {
	background-color: #2678bb !important;
	color: #fff !important;
}
.btn-icon {
	background-color: #a8acb9 !important;
	color: #fff !important;
}
.btn-icon>img {
	display: inline-block;
	width: 14px;
}
.btn-gray {
	background-color: #bdbdbd !important;
	cursor: default;
}
.notice-box {
	border-top: 1px solid #ebebeb;
}
.notice-box .notice-con>li {
	border-top: 1px solid #ebebeb;
}
.notice-box .notice-con>li:first-child {
	border-top: 0;
}
.notice-box .notice-title,
.notice-box .notice-con__inner {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	height: 50px;
	box-sizing: border-box;
}
.notice-box .notice-title {
	border-bottom: 1px solid #ebebeb;
}
.notice-box .notice-title>li,
.notice-box .notice-con__inner>li {
	flex: 0 1 110px;
	position: relative;
	text-align: center;
}
.notice-box .notice-title>li.num,
.notice-box .notice-con__inner .num {
	flex: 0 0 66px;
}
.notice-box .notice-title>li.title,
.notice-box .notice-con__inner .title {
	flex: 2 1 auto;
}
.notice-box .notice-title>li::after {
	content: '';
	position: absolute;
	right: 0;
	top: 1px;
	width: 1px;
	height: 20px;
	background-color: #e6e6e6;
}
.notice-box .notice-title>li:last-child::after {
	content: none;
}
.color-primary--400 {
	color: #2678bb !important;
}
.color-secondary--900 {
	color: #ff9100 !important;
}
.color-blue--900 {
	color: #2577ba !important;
}
.color-gray {
	color: #373737  !important
}
.color-blue {
	color: #1c69ad !important;
    font-size: 18px;
}
.color-red--900 {
	color: #e66079 !important;
}
.color-red {
	color: #e66079 !important;
    font-size: 18px;
}
.notice-box .notice-con__inner a,
.notice-box .notice-con__inner span {
	color: #5d5d5d;
	    font-family: "Pretendard", "Pretendard Variable", sans-serif;
}
.notice-box .notice-con__inner span  {
	cursor: default;
}
.notice-box .notice-con__inner .date span {
	color: #aaa;
}
.list-state {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content: center;
    gap: 10px 0;
	/* gap: 40px 0; */
	height: calc(100% - 56px);
	padding: 0 30px;
	box-sizing: border-box;
	border-top: 1px solid #ebebeb;
}
.list-state .progress-notice{
    margin-top: 8px;
    background: #fff8e5;
    border-left: 4px solid #ffb700;
    padding: 8px 10px;
    font-size: 13px;
    color: #6b4c00;
}

.list-state>li {
	width: 100%;
}
.list-state>li .rate-box {
	width: 100%;
}
.list-state>li .list-rate__item,
.list-state>li .list-rate__item-num {
	font-size: 16px;
}
.list-state>li .list-rate__item-num {
	color: #ff9100;
}
.list-state .list-line {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	gap: 0 34px;
	padding-top: 0;
    align-items: center;
}
.list-state .list-line .bar-frame {
	flex: 1 1 auto;
	width: initial;
}
.con-section__item.percentage-item {
	width: 553px;
}
.con-section__item.situation-item {
	width: 1106px;
}
.grades-box {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:stretch;
	-ms-flex-align:stretch;
	align-items:stretch;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	width: 100%;
    min-height: 230px;
	border-top: 1px solid #ebebeb;
	box-sizing: border-box;
}
.grades-box .doughnut-frame {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-ms-flex-direction:column;
	flex-direction:column;
	width: 210px;
}
.grades-box .grades-box__item {
	flex: 1 1 auto;
	border-left: 1px solid #ebebeb;
}
.grades-box .grades-status {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	padding-top: 15px;
	width:100%;max-width:140px
}
.grades-box .grades-status>span {
	color: #aaa;
	font-size: 15px;
}
/* TODOJS 도넛 그래프 플러그인 스타일 */
.grades-box .doughnut-frame__item {
	width: 140px;
	height: 140px;
	background-color: #f5f5f5;
	border-radius: 50%;
}
.grades-box .grades-box__table>li {
	border-top: 1px solid #ebebeb;
}
.grades-box .grades-box__table>li:first-child {
	border-top: 0;
}
.grades-box .grades-box__table>li .list-definition {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:stretch;
	-ms-flex-align:stretch;
	align-items:stretch;
}

.grades-box .grades-box__table>li .list-definition>dt,
.grades-box .grades-box__table>li .list-definition>dd {
	flex: 1 1 calc(100%/7);
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content: center;
	padding: 13px 11px 11px;
	box-sizing: border-box;
	text-align: center;
}
.grades-box .grades-box__table>li .list-definition>dt {
	flex-grow: 0;
	flex-shrink: 0;
	background-color: #fafafa;
}
.grades-box .grades-box__table>li .list-definition>dd {
	border-left: 1px solid #ebebeb;
}
.grades-box .grades-box__table>li .list-definition>dd.list-definition-title {
    justify-content: left;
}
/* responsive */
/* pc */
@media all and (max-width: 1300px) {
	.subject-list_inner>li.rate-frame {
		gap: 0 50px;
	}
	
	.square-green, 
	.square-primary, 
	.square-gray {padding:0}
}
/* tablet */
@media all and (max-width: 1220px) {
	/* none */
	.lnb-right>li.lnb-remote {
		display: none;
	}
	.lnb-left {
		display:-webkit-box;
		display:-ms-flexbox;
		display: flex;
	}
	.sidebar {
		position: absolute;
		left: -200px;
		top: 0;
        z-index: 3;
		height: 100%;
	}
	.wrap>.con {
		width: 100%;
	}
	.headline-top {
		position: relative;
		height: 120px;
	}
    .headline-top span{
        font-size:12px;
	}
    .headline-top strong{
        font-size:14px;
	}
	.headline-top__left {
		flex: 1 1 auto;
        display: grid;
	}

	.course-list {
		position: absolute;
        width: 88%;
        left: 7%;
		top: 110%;
        z-index: 1;
		margin-top: 0;
	}
	.course .inside-skyblue.simple,
	.course .move-home.simple {
		height: auto;
	}
	.course .inside-skyblue.simple:after,
	.course .move-home.simple::after {
		width: 24px;
		height: 24px;
		background-image: url('/img/home/arrow_down_icon.png');
	}
	.course .inside-skyblue.simple.on:after,
	.course .move-home.simple.on::after {
		background-image: url('/img/home/arrow_up_icon.png');
	}
	.confirmation-frame {
		display: flex;
		-webkit-box-align:center;
		-ms-flex-align:center;
		align-items:center;
		gap: 0 20px;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 2;
		width: 100%;
		height: 60px;
		padding: 14px 20px;
		box-sizing: border-box;
		background-color: #fff;
	}
	.confirmation-frame.absolute {
		position: absolute;
	}
	.confirmation-frame>span {
		display: inline-block;
	}
	.confirmation-frame .btn-round-white {
		flex: 1 1 auto;
		height: 32px;
		padding: 5px 20px 10px;
		font-size: 12px;
		text-align: center;
	}
	.confirmation-frame .btn-round-white>img {
		width: 12px;
	}
	.subject-list.js-list {
		display: none;
	}
	.subject-list_inner {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		/*-ms-flex-direction:column;
		flex-direction:column;*/
		-webkit-box-align:start;
		-ms-flex-align:start;
		align-items:flex-start;
		gap: 15px 0;
		flex-wrap:wrap;
	}
	.subject-list_inner>li.middle {
		width: calc(100% - 80px);
		/*width:100%*/
	}
	.subject-list_inner>li.rate-frame {
		gap: 0 100px;
		width: 100%;
		padding-top: 10px;
	}
	.rate-box {
    flex: 1 1 auto;
		width: auto;
	}
	.con-section {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
		gap: 20px 0;
	}
	.info-data-box {
		position: relative;
		flex-wrap:wrap;
	}
	.info-data-box::before {
		content: '';
		position: absolute;
		top: 12px;
		right: 20px;
		width: 24px;
		height: 24px;
		background: url('/img/home/arrow_down_icon.png') no-repeat center / contain;
	}
	.info-data-box.on::before {
		background-image: url('/img/home/arrow_up_icon.png');
	}
	/* 과목 홈 */
	.con-section__item.percentage-item,
	.con-section__item.situation-item {
		width: 100%;
	}
	.list-state {
		gap: 25px 0;
		padding: 25px 30px;
	}
	.headline-middle {
		padding: 0;
	}
	.headline-middle .headline-middle__inner {
		display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
		border-radius: 0;
		border-right: 0;
		border-left: 0;
		padding: 7px 20px;
	}
	.headline-middle .headline-middle__inner .course {
		position: initial;
		right: auto;
		top: auto;
	}
	
	.headline-bottom .list-tab {margin-top:15px;height:42px}
	.headline-bottom .list-tab >li {width:86px}
	.headline-bottom .list-tab >li .inside {padding:0 10px;font-size:14px;border-radius:6px 6px 0 0}
	.headline-bottom .list-tab >li .inside .icon {margin-left:2px;font-size:15px;transform:translateY(1px)}
	.headline-bottom .list-tab >li.home {margin-right:0}
	.headline-bottom .list-tab >li.home .inside .icon {font-size:19px}
	.headline-bottom .list-tab >li .assignment_tab .icon {font-size:17px}
}
/* mobile */
@media all and (max-width: 767px) {
	/* none */
	.notice-box .notice-title {
		display: none;
	}
	header {
		height: 50px;
	}
	#logo {
		width: 110px;
		height: 20px;
	}
	.lnb-left>li,
	.lnb-right>li {
		width: 50px;
	}
	.lnb-left>li span,
	.lnb-right>li span {
		display: none;
	}
	.lnb-left>li span.whole-menu__img {
		display: block;
	}
	.info-data-box {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
		padding: 11px 50px 14px 20px;
	}
	.info-data-box::before {
		top: 50%;
		transform: translateY(-50%);
	}
	.info-data-box .title::after,
	.list-line>li::before {
		content: none;
	}
	.headline-top {
		height: auto;
		padding: 15px 20px;
	}
	.course-list {
		top: 84px;
	}
	.subject-list_inner>li.middle {
		width:100%
	}
	.subject-list_inner>li.rate-frame {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
		gap: 20px 0;
	}
	.list-line {
		gap: 5px 15px;
	}
	.notice-box .notice-con__inner {
		position: relative;
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
		-webkit-box-align:start;
		-ms-flex-align:start;
		align-items:flex-start;
		gap: 5px 0;
		height: auto;
		padding: 15px 20px;
	}
	.notice-box .notice-con__inner>li {
		flex-grow: initial;
		flex-shrink: initial;
		flex-basis: initial;
	}
	.notice-box .notice-con__inner .num {
		flex-grow: initial;
		flex-shrink: initial;
		flex-basis: initial;
	}
	.notice-box .notice-con__inner a {
		display: block;
		width: 95%;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis; 
	}
	.notice-box .notice-con__inner .title {
		flex: 1 1 auto;
    width: 100%;
    text-align: left;
	}
	.notice-box .notice-con__inner>li.state-area {
		position: absolute;
		right: 20px;
		bottom: 15px;
	}
	.headline-bottom .list-tab {
		gap:0 5px
	}
	.headline-bottom .list-tab >li {width:auto;flex:1}
	.headline-bottom .list-tab >li .inside {padding:0 5px}
	.grades-box {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
	}
	.grades-box .doughnut-frame {
		-webkit-box-orient:horizontal;
		-webkit-box-direction:normal;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		width: 100%;
		padding: 25px 30px;
		box-sizing: border-box;
		flex-wrap:wrap;
		row-gap:10px;
	}
	.grades-box .grades-status {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-ms-flex-direction:column;
		flex-direction:column;
		gap: 10px 0;
		padding-top: 0;
	}
	.grades-box .grades-status>span {padding:9px 0 10px 0;font-size:14px}
	.grades-box .grades-box__item {
		width: 100%;
	}
	.grades-box .grades-box__table>li:first-child {
		border-top: 1px solid #ebebeb;
	}
	.btn-area {
		gap: 0 10px;
	}
	.list-state>li .rate-box {
		position: relative;
	}
	.list-state>li .list-rate__item-num {
		position: absolute;
		right: 0;
		top: 0;
	}
}

@media all and (max-width: 540px) {
    .lnb-left>li,
	.lnb-right>li {
		width: 40px;
	}
	.subject-title {flex-wrap:wrap}
	.subject-title .title {width:100%;margin:5px auto 0 auto}
}
	
@media all and (max-width: 360px) {
	.subject-title [class^="square-"] {
		padding: 0;
	}
}

/* mypage card-button */
.card-button { display: flex; width: fit-content; min-width: 120px; padding: 10px 16px; background: #ffffff; color: #1f1f1f; border: 1px solid #ebebeb; border-radius: 4px; font-size: 14px; font-weight: 500; margin: 0px auto; text-align: center; align-items: center; justify-content: center; gap: 8px; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04); transition: all 0.2s ease-in-out; cursor: pointer; white-space: nowrap; line-height: 1; }
.card-button:hover { background: #f0f4ff; border-color: #d0e0ff; transform: translateY(-2px); box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08); }
.card-button:active { transform: scale(0.97); }
.card-button svg { width: 16px; height: 16px; flex-shrink: 0; }

@media (max-width: 768px){
    .card-button { font-size: 13px; padding: 8px 14px; border-radius: 10px; }
    .card-button svg { width: 14px; height: 14px; }
}

@media (max-width: 550px){
    .card-button {
        flex: 1 1 calc(33.33% - 8px); /* 3개 나란히, gap 고려 */
        min-width: 0; /* fit-content 최소값 제거 */
        max-width: 100%;
        font-size: 12px;
        padding: 6px 8px;
    }
    .card-button svg { width: 12px; height: 12px; }
}


@media (max-width: 350px){
    .card-button { font-size: 11px; padding: 5px 10px; min-width: auto; max-width: 100%; gap: 4px; }
    .card-button svg { width: 11px; height: 11px; }
}


/* view */
@media screen and (min-width: 1001px) {
    table.lp_detail {width: 100%;border-collapse: collapse;border-top: 1px solid #d3d6e2;text-align: left;font-size: 14px;background-color: #ffffff}
    table.lp_detail tr {border-bottom: 1px solid #d5d8dc}
    table.lp_detail tr td {height: 35px;line-height: 24px;padding: 15px 40px}
    table.lp_detail tr th {width: 100px;padding: 15px 0 15px 40px;}
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
    table.lp_detail {width: 100%;border-collapse: collapse;border-top: 1px solid #d3d6e2;text-align: left;font-size: 14px;background-color: #ffffff}
    table.lp_detail tr {border-bottom: 1px solid #d5d8dc}
    table.lp_detail tr td {height: 35px;line-height: 24px;padding: 15px 20px}
    table.lp_detail tr th {min-width: 60px;padding: 15px 0 15px 40px}
}

@media screen and (max-width: 767px) {
    .lp_contents { margin: 15px}
    .more {height: 53px;line-height: 53px;background-color: #f1f5f9;text-align: center;;border-bottom: 1px solid #ebebeb}
    table.lp_detail {width: 100%;border-collapse: collapse;border-top: 1px solid #d3d6e2;text-align: left;font-size: 14px;background-color: #ffffff}
    table.lp_detail tr {border-bottom: 1px solid #d5d8dc}
    table.lp_detail tr td {height: 35px;line-height: 24px;padding: 10px 15px}
    table.lp_detail tr th {min-width: 60px;padding: 15px 0 15px 20px}
    .ccheck {height: 27px !important}
    .st-join-s3.cinput {width: 60%}
}