.my_main .info_box {
    gap: 20px;
}
.my_main .info_box > div {
    flex: 1;
    gap: 20px;
}
.my_main .info_box .color_box {
    padding: 40px;
    border-radius: 20px;
    background: rgba(24, 38, 148, 0.30);
    gap: 20px;
    box-sizing: border-box;
}
.my_main .info_box > div p.tit {
    font-size: 20px;
    letter-spacing: -0.4px;
}
.my_main .info_box > div ul {
    gap: 20px;
}
.my_main .info_box > div ul li {
    position: relative;
    padding-left: 20px;
    font-size: 20px;
    letter-spacing: -0.4px;
    font-family: 'Pretendard', sans-serif;
    gap: 10px;
    text-transform: capitalize;
    box-sizing: border-box;
}
.my_main .info_box > div ul li:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 5px;
    display: block;
    width: 3px;
    height: 3px;
    background: var(--white);
    border-radius: 50%;
}
.my_main .info_box > div .btn_box {
    gap: 20px;
}
.my_main .info_box > div .btn_box button {
    flex: 1;
    height: 48px;
    border-radius: 10px;
    font-size: 16px;
}
.my_main .info_box > div .result_box {
    text-transform: capitalize;
    flex: 1;
    justify-content: center;
}
.my_main .info_box > div .result_box p {
    font-size: 20px;
    letter-spacing: -0.4px;
    line-height: 1.4;
}
.my_main .info_box > div .result_box div {
    font-size: 40px;
    line-height: 2;
    letter-spacing: -0.8px;
}
.my_main .item_box {
    gap: 20px;
    padding-top: 20px;
}
.my_main .item_box .tit {
    padding: 0 20px;
    font-size: 20px;
    font-weight: 500;
    font-family: 'Pretendard', sans-serif;
    text-transform: capitalize;
    box-sizing: border-box;
}



.mypage .login {
    max-width: 100%;
}



.attend {
    gap: 20px;
    padding: 20px 0;
    align-items: start;
}
.attend .calendar {
	position: relative;
    width: 900px;
}
.attend .calendar .date-month {
	justify-content: center;
	margin-bottom: 15px;
}
.attend .calendar .year-month {
	font-size: 20px;
    letter-spacing: -1px;
}
.attend .calendar .cal_wrap .today {
	color: var(--orange);
}
.attend .calendar .cal_wrap .today span {
    color: var(--white);
}
.attend .calendar .cal_wrap .days {
	gap: 5px;
    border-radius: 10px;
    background: rgba(24, 38, 148, 0.30);
}
.attend .calendar .cal_wrap .days .day {
	width: calc(14.2% - 4px);
	font-size: 16px;
	font-weight: 500;
	padding: 20px 0;
	text-align: center;
}
.attend .calendar .cal_wrap .dates {
	gap: 2px;
	margin-top: 5px;
}
.attend .calendar .cal_wrap .dates > div {
    position: relative;
	width: calc(14.3% - 2px);
	padding: 10px 10px 90px;
	font-size: 20px;
    font-weight: 500;
    background-color: #4B57B9;
    background-repeat: no-repeat;
    background-position: 50% 50%;
	background-image: url("../images/attend_bg_off.png");
    border-radius: 10px;
    overflow: hidden;
	box-sizing: border-box;
}
.attend .calendar .cal_wrap .dates > div span {
    position: absolute;
    top: 52%;
    left: 50%;
    width: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    transform: translate(-50%, -50%) rotate(-32deg);
    opacity: .16;
}
.attend .calendar .cal_wrap .dates > div.on {
	background-image: url("../images/attend_bg.png");
}
.attend .calendar .cal_wrap .dates > div.on span {
    opacity: 1;
}
.attend .calendar .cal_wrap .dates > div.prev,
.attend .calendar .cal_wrap .dates > div.next {
	background: #4B57B9;
    color: #76777A;
}
.attend .calendar .cal_wrap .dates > div.prev span,
.attend .calendar .cal_wrap .dates > div.next span {
    display: none;
}
.attend .attend_info {
    flex: 1;
    max-width: 700px;
    padding: 40px;
    border-radius: 20px;
    background: rgba(24, 38, 148, 0.30);
    margin-top: 40px;
    gap: 20px;
    font-size: 20px;
    letter-spacing: -0.4px;
    box-sizing: border-box;
}
.attend .attend_info .top {
    gap: 10px;
}
.attend .attend_info .help {
    font-family: 'Pretendard';
    gap: 20px;
}
.attend .attend_info .help li {
    line-height: 1.3;
}
.attend .attend_info .link a {
    display: inline-block;
    height: 48px;
    line-height: 48px;
    font-size: 16px;
    letter-spacing: 0;
    padding: 0 20px;
    border-radius: 10px;
    box-sizing: border-box;
}





@media screen and (max-width: 1280px) {
    .attend .calendar {
        position: relative;
        width: 665px;
    }
    .attend .calendar .cal_wrap .dates > div {
        background-size: 105px;
        background-position: 50% 8px;
        padding-bottom: 70px;
    }
    .attend .calendar .cal_wrap .dates > div span {
        top: 58%;
    }
    .attend .attend_info {
        padding: 25px;
    }
}
@media screen and (max-width: 1024px) {
    .my_main .info_box > div {
        flex: none;
        width: 100%;
    }
    .my_main .info_box .color_box {
        padding: 20px;
        border-radius: 10px;
    }
    .my_main .info_box > div p.tit {
        font-size: 16px;
    }
    .my_main .info_box > div ul li {
        font-size: 16px;
        padding-left: 15px;
    }
    .my_main .info_box > div ul li:before {
        top: 8px;
    }
    .my_main .info_box > div .btn_box button {
        height: 42px;
        font-size: 14px;
    }
    .my_main .info_box > div .result_box {
        gap: 0;
    }
    .my_main .info_box > div .result_box p {
        font-size: 16px;
    }
    .my_main .info_box > div .result_box div {
        font-size: 26px;
    }
    .my_main .item_box .tit {
        font-size: 18px;
        padding: 0 10px;
    }


    .attend .calendar {
        width: 100%;
    }
    .attend .calendar .cal_wrap .dates > div {
        padding-bottom: 90px;
        background-size: 100%;
        background-position: 50% 50%;
    }
    .attend .calendar .cal_wrap .dates > div span {
        top: 52%;
        font-size: 16px;
    }
    .attend .attend_info {
        flex: none;
        width: 100%;
        max-width: 100%;
        font-size: 16px;
        margin-top: 0;
    }
    .attend .attend_info .help {
        gap: 10px;
    }
    .attend .attend_info .link a {
        height: 42px;
        line-height: 42px;
        font-size: 14px;
        padding: 0 10px;
    }
}
@media screen and (max-width: 768px) {
    .depth_tab button {
        flex: none;
        width: calc(50% - 5px);
    }

    .attend .calendar .cal_wrap .days .day {
        font-size: 14px;
        padding: 15px 0;
    }
    .attend .calendar .cal_wrap .dates > div {
        background-size: 125%;
        background-position: 50% calc(100% - -4px);
        padding-bottom: 14%;
        font-size: 16px;
    }
    .attend .calendar .cal_wrap .dates > div span {
        top: calc(50% - -10px);
        font-size: 14px;
    }
}
@media screen and (max-width: 480px) {
    .attend .calendar .cal_wrap .dates > div span {
        top: calc(50% - -15px);
        font-size: 12px;
    }
}
@media screen and (max-width: 380px) {
    .attend .calendar .cal_wrap .days .day {
        width: calc(14.2% - 5px);
    }
    .attend .calendar .cal_wrap .dates > div {
        font-size: 14px;
    }
}