.font50 {
	--fontsize: 5.0rem;
	font-size: var(--fontsize);
}

.font70 {
	--fontsize: 7.0rem;
	font-size: var(--fontsize);
}
@media (max-width: 1800px) {

	/* .checkup .step.side li {
    width: 100px;
    height: 60px;
  }
  .checkup .step.side li:hover button, .checkup .step.side li.on button {
    width: 120px;
  } */
	.checkup .step.side h6 {
		font-size: 1.6rem;
	}
}

@media (max-width: 1740px) {

	.w1720,
	.w1500,
	.w1300 {
		padding: 0 20px;
	}

	header .headerBox {
		padding: 0 0 0 20px;
	}

	.allMenu .menuBox {
		padding: 6% 0;
	}

	.allMenu .menuBox nav .reservation .signature {
		padding: 40px 30px;
	}

	.visual .visualSlide.swiper-container {
		max-width: 70%;
	}
	.visual .contents {
		max-width: 30%;
	}
}




@media (min-width: 1600px) {

	.personal .programBox .programList .conItem .ProgramHeader {
		display: flex;
/*		width: 100%;*/
		
	}
	.personal .programBox .programList .conItem .ProgramHeader .ProgramTitle {
/*		width:65%;*/
		flex-direction: row;
	}
	.personal .programBox .programList .conItem .ProgramHeader .detaile {
/*		width:35%;*/		 
		flex-direction: column;
		border-left: 1px solid rgba(217, 217, 217, 0.9);
	}
	.personal .programBox .programList .conItem .ProgramHeader .detaile .item {
		border-radius: 0;
		border-bottom: 1px solid rgba(217, 217, 217, 0.9);
	}
	.personal .programBox .programList .conItem .ProgramHeader .detaile .item:nth-child(3) {
		border-bottom: none;
	}
	.personal .programBox .programList .conItem .ProgramHeader {
		display: grid;
		grid-template-columns: 70% 30%;
	}
	.personal .programBox .programList .conItem .ProgramHeader > * {
		width: 100%;
	}
	.personal .programBox .programList .detaile .item {
		height: 100%;
		min-height: 84px;
	}

}

@media (max-width: 1600px) {
	header {
		height: 80px;
	}

	.openMenu {
		width: 80px;
		height: 80px;
		padding: 0 24px;
	}

	.allMenu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		padding: 20px;
	}

	.allMenu .top {
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}

	.allMenu h2 {
		width: 160px;
		height: 48px;
	}

	.allMenu .menuBox {
		max-width: 100%;
		height: 100%;
		padding: 0 0 40px;
		margin: 60px 0 0;
		position: relative;
		top: auto;
		left: auto;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}

	.allMenu .menuBox nav ul {
		padding: 0 20px;
	}

	.visual .contents .info {
		width: calc(100% - 80px);
		padding: 20px;
	}

	.visual .contents .side {
		width: 80px;
	}

	.visual .contents .side .social {
		height: calc(100% - 80px);
		padding: 0 0 20px;
	}

	.login .title {
		padding: 100px 0 0 40px;
	}

	.checkup .step.side {
		display: none;
	}

	.checkup form.padding {
		margin: 80px 0 0;
	}

	.personal .programBox .programList .ProgramTitle {
		margin-bottom: 20px;
	}

	.personal .programBox .programList .detaile {
		gap: 0 20px;
	}

	.questionnaire .formBox .q.space {
		-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: 10px 0;
	}

	.questionnaire .formBox .q>p {
		margin: 0 0 0 auto;
	}
}

@media (max-width: 1400px) {
	.font70 {
		font-size: calc(var(--fontsize) * 0.90);
	}

	.font50 {
		font-size: calc(var(--fontsize) * 0.92);
	}

	header {
		height: 80px;
	}

	.openMenu {
		margin: 0 0 0 auto;
		-webkit-transform: translateX(20px);
		transform: translateX(20px);
	}

	.visual .visualSlide.swiper-container .title h2 {
		font-size: 4.8rem;
	}

	.visual .contents .info {
		width: 100%;
		padding: 0 20px 20px;
	}

	.visual .contents .info .auth {
		height: 80px;
		-ms-flex-negative: 0;
		flex-shrink: 0;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 0 10px;
	}

	.visual .contents .info .auth a {
		width: 100px;
		height: 40px;
		font-size: 1.4rem;
	}

	.visual .contents .info .menu {
		margin: 0;
	}

	.visual .contents .info .menu ul li a span {
		font-size: 1.8rem;
	}

	.visual .contents .info .contact .phone h4 {
		font-size: 3.6rem;
	}

	.visual .contents .side {
		display: none;
	}

	.visual .contents .social {
		height: auto;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-pack: distribute;
		justify-content: space-around;
		padding: 0;
		margin: 20px 0 0;
	}

	.login .title h2 {
		font-size: 4.6rem;
	}

	.titleHeight {
		height: auto;
		padding: 40px 30px;
	}

	.titleHeight.space {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 15px 0;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.titleHeight.space>p {
		margin: 0 0 0 auto;
	}

	.checkup .topInfo {
		padding: 0;
	}

	.checkup .step.top {
		padding: 0 30px;
	}

	.checkup .checkupBottom {
		gap: 0 40px;
		-ms-grid-columns: 1fr 0.8fr;
		grid-template-columns: 1fr 0.8fr;
		padding: 0 20px;
	}

	.checkup .additional .itemBox {
		gap: 20px;
		margin: 30px 0 0;
	}

	.checkup .fee .detail .list em {
		width: 13%;
	}

	.checkup .faq button,
	.checkup .faq .a div {
		padding: 20px 30px;
	}

	.checkup .pickerBox .d_picker {
		left:220px;
	}

	.checkup .desiredBox .notification {
		margin: -20px 0 0 248px;
	}

	.checkup .desiredBox .notification {
		margin: -15px 0 0 220px;
	}

	.corporate .support {
		gap: 0 10px;
	}

	.personal .userHistory {
		display: flex;
		flex-wrap: wrap;
	}
	.personal .userHistory .flexBox:not(:radioBox) {
		justify-content: flex-start;
		flex-direction: column;
		align-items: flex-start;
		width:calc(50% - 10px);
	}
	.personal .userHistory .flexBox.alignCenter .flexBox {
		width: 100%;
	}


	.personal .customer,
	.personal .privacy {
		padding: 50px 30px;
	}

	.personal .programBox .programList .detaile .item {
		flex-wrap: wrap;
		gap: 15px 20px;
		padding: 20px;
	}
	.personal .programBox .programList .detaile .item .icon {
		margin-left: 0;
	}

	.personal .price_fold .total .optionprice {
		margin-right: 0;
	}
	.personal .price_fold .total h4 {
		color: #222222;
		font-size: 1.8rem;
		font-weight: 700;
	}
	.personal .price_fold .total em {
		font-size: 1.8rem;
		font-weight: 700;
	}

	.reservation .noList {
		height: auto;
		padding: 80px 20px;
	}
	/* .result.intro .overall .flexBox {
		padding: 20px;
	}
	.result.intro .overall .flexBox .flexBox.listBox {
		flex-direction: column;
	}
	.result.intro .overall .txtBox {
		height:300px;
	} */

	.result.intro .overall {
		gap: 0 40px;
		padding: 30px;
	}
	.result.intro .overall .scroll_box {
		padding: 30px;
	}

	.result .my_results {
		padding: 40px;
	}
	.result .my_results .table_c table th {
		padding: 10px;
	}

	footer .footerBox .info ul.contact {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 10px 40px;
	}

	footer .footerBox .info ul.contact li:first-child {
		width: 100%;
	}

	footer .footerBox .link {
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}
}

@media (max-width: 1200px) {
	html,
	body {
		font-size: 56.25%;
	}

	header {
		width: 100%;
	}

	header .openMenu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	.visual {
		height: inherit;
	}

	.visual .box {
		height: inherit;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}

	.visual .visualSlide.swiper-container {
		height: 100%;
		max-width: 100%;
		position: relative;
		height: 100vh;
	}

	.visual .visualSlide.swiper-container .bg {
		max-width: 100%;
		height: 100%;
	}

	/* .visual .visualSlide.swiper-container  .title,
	.visual .optionBox {
		left: 20px;
	} */

	.visual .visualSlide.swiper-container  .title {
		bottom: auto;
		left: 0;
		padding: 0 20px 100px;
	}

	.visual .optionBox {
		height: 100%;
		padding: 100px 0 0;
		top: 0;
	}

	.visual .contents {
		max-width: 100%;
	}

	.visual .contents .openMenu {
		display: none;
	}

	.visual .contents .info .auth {
		display: none;
	}

	.visual .contents .info .menu,
	.visual .contents .info .contact {
		margin: 40px 0 0;
	}

	.visual .contents .info .menu {
		border-top: 1px solid #eeeeee;
	}

	.visual .contents .info .menu ul li a {
		padding: 20px;
	}
	.visual .contents .info .menu ul li.checkup a {
		padding: 30px 20px;
	}

	.visual .contents .info .contact {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
		gap: 0 40px;
	}

	.visual .contents .info .contact>div {
		padding: 40px;
	}

	.login .contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.login .title,
	.login .itemBox {
		width: 100%;
		text-align: center;
		padding: 100px 40px;
	}

	.login .logo {
		margin: -60px auto;
	}

	.login h4 {
		margin: 0 0 20px;
	}

	.subPage {
		padding: 80px 0 100px;
	}

	.marginTop150 {
		margin-top: 100px;
	}

	.authBox .formBox .max {
		max-width: calc(100% - 140px);
	}

	.authBox .formBox .gap30,
	.authBox .formBox .gap40 {
		gap: 0 10px;
	}

	.authBottom .title {
		-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;
	}
	.authBox .formBox .authentication.width50 {
		gap: 10px;
		flex-direction: column;
	}

	.formBox .q,
	.formBox .a {
		padding: 20px;
	}

	.formBox .q {
		height: auto;
	}

	.program .itemBox {
		gap: 20px;
		padding: 0 20px;
	}

	.program .item {
		height: auto;

		/* 23.04.13 */
		width: calc((100% - 40px) / 3);
	}

	.program .item a {
		padding: 0 0 30px;
	}

	.program .icon {
		width: 150px;
		height: 150px;
	}

	.personal .userHistory {
		gap:10px;
	}
	.personal .userHistory .flexBox {
		display: flex;
	}
	.personal .userHistory > .flexBox {
		flex-direction: column;
		gap: 10px 0;
		align-items: flex-start;
	}
	.personal .userHistory .flexBox p {
		text-align: left;
	}

	.checkup .inner>div {
		padding: 20px;
	}

	.personal:not(.program_new) .programBox .tableBox.typeBorder,
	.checkup .tableBox {
		overflow-x: scroll;
	}

	.checkup:not(.program_new) .tableBox table {
		width: 1158px;
	}
	.checkup .tableBox table td {
		padding: 15px 20px;
	}

	.checkup .additional .itemBox {
		-ms-grid-columns: (1fr)[3];
		grid-template-columns: repeat(3, 1fr);
	}

	.checkup .information {
		gap: 30px 0;
	}

	.checkup .information .info>div {
		gap: 0 20px;
	}

	.checkup .fee .detail {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 30px 0;
		padding: 20px 10px;
	}

	.checkup .fee .detail h6,
	.checkup .fee .detail .list>div {
		height: auto;
	}

	.checkup .fee .detail .list {
		gap: 20px 0;
	}

	.checkup .fee .total {
		padding: 30px 10px 20px;
	}

	.checkup .fee .total>* {
		font-size: 2.3rem;
	}

	.checkup .checkupBottom {
		gap: 0 20px;
	}

	.checkup .checkupBottom>div {
		height: auto;
		padding: 30px 10px;
	}

	.personal .topInfo .flexBox {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 20px 0;
	}

	.personal .topInfo .column ul {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}

	.personal .customer,
	.personal .privacy {
		padding: 30px;
	}

	.personal .customer ul {
		padding: 0;
	}

	.personal .privacy .text {
		margin: 30px 0;
	}

	.personal .TabBox_program ul li {
		height: 65px;
	}

	.personal .programBox .programList .ProgramTitle {
		padding: 40px;
	}

	/* program_new */
	/* 23.10.10 */
	.program_new .programBox .tableBox th,
	.program_new .programBox .tableBox td {
		height: auto;
		padding: 20px;
	}

	.tableBox.basic table .left {
		padding: 10px 20px;
	}

	.result.intro .overall {
		flex-direction: column;
		gap: 40px 0;
	}
	.result.intro .overall .scroll_box {
		height: 420px;
	}
	
	.result.intro .itemBox {
		gap: 10px;
	}

	.result.intro .item a {
		height: auto;
		padding: 30px 0;
	}

	.result .my_results .chart_c .amount {
		max-width: 120px;
	}
	.result .my_results .chart_c .con:not(.bottom) {
		height: 100px;
	}
}

@media (max-width: 960px) {
	
	main .visual .visualSlide.swiper-container .itemBox .item .bg {
		width:200px;
	}
	.font70 {
		font-size: calc(var(--fontsize) * 0.76);
	}

	.font50 {
		font-size: calc(var(--fontsize) * 0.78);
	}

	.allMenu .menuBox nav .depth2Box .title h4 {
		font-size: 2.4rem;
	}

	.allMenu .menuBox nav .reservation {
		gap: 10px;
	}

	.allMenu .menuBox nav .reservation .link {
		width: calc((100% - 30px) / 4);
	}

	.allMenu .menuBox nav .reservation .link a {
		gap: 10px 0;
	}

	.allMenu .menuBox nav .reservation .link a .icon {
		width: 38px;
		height: 42px;
	}

	.allMenu .menuBox nav .reservation .link a span {
		font-size: 1.6rem;
	}

	.allMenu .menuBox nav .reservation .signature {
		padding: 30px 20px;
	}

	.allMenu .menuBox nav .reservation .signature>a {
		gap: 20px 0;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox {
		gap: 10px;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item {
		padding: 15px;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item h6 {
		margin: 0 0 10px;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item dl {
		-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;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dt,
	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dd {
		font-size: 1.8rem;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dd b {
		font-size: 2.2rem;
	}
	.visual .visualSlide.swiper-container .title h2 {
		font-size: 3.4rem;
	}

	.visual .optionBox .progressBar {
		width: 120px;
	}

	.login .title p {
		font-size: 1.8rem;
	}

	.login h4 {
		font-size: 2.6rem;
	}

	.marginTop60 {
		margin-top: 50px;
	}

	.signup form>.column,
	.find form>.column,
	.edit form>.column {
		gap: 60px 0;
	}

	.formBox .q {
		min-height: auto;
	}

	.formBox .gap40 {
		gap: 0 20px;
	}

	.tableBox.basic table col:first-child,
	.tableBox.basic table th:first-child,
	.tableBox.basic table td:first-child {
		display: none;
	}

	.program .icon img {
		-webkit-transform: scale(0.82);
		transform: scale(0.82);
	}

	.questionnaire .flexBox.wrap {
		gap: 20px 80px;
	}

	.questionnaire span.bgGray {
		width: 140px;
	}

	.result.intro .overall .flexBox {
		flex-direction: column;
		align-items: center;
		padding:0;
	}

	.result.intro .itemBox {
		-ms-grid-columns: (1fr)[3];
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	.result.intro .icon img {
		-webkit-transform: scale(0.82);
		transform: scale(0.82);
	}

	.result.view .tableBox {
		overflow-x: scroll;
	}

	.result.view table {
		width: 920px;
	}

	.checkup .titleHeight>.flexBox:not(.total) {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 20px 0;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.checkup .checkupBottom {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 30px 0;
	}

	.checkup .additional .itemBox {
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
	}

	.checkup .fee .detail h6,
	.checkup .fee .detail .list>div {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 10px 0;
	}

	.checkup .fee .detail p {
		width: 84%;
	}

	.checkup .fee .detail .top p span::before {
		bottom: -2px;
	}

	.checkup .inner > .information {
		padding: 40px 20px;
	}

	.checkup .information > .flexBox {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px 0;
	}

	.personal .customer ul li,
	.personal .customer ul li:not(.phone):not(.address) {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 20px 0;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.personal .customer ul li.phone h6,
	.personal .customer ul li.address h6 {
		height: auto;
	}

	.personal .TabBox_program ul {
		grid-template-columns: repeat(5, 1fr);
	}

	.personal .price_fold {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.checkup .titleHeight >.total {
		flex-direction: row;
		gap: 10px;
		display: flex;
	}

	.personal .price_fold .total {
		margin: 20px 0 0 35px;
	}

	.checkup .pickerBox .d_picker {
		left:30px;
	}
	.checkup .desiredBox .notification {
		margin: -15px 0 0 30px;
	}

	.personal .userHistory .flexBox {
		width: calc((100% - 20px) / 3);
		width: calc(50% - 10px);
	}
	.personal .userHistory .flexBox p {
		margin-top: 10px;
	}
	.personal .price_fold .total .price,
	.personal .price_fold .total .optionprice,
	.personal .price_fold .total .totalprice {
		flex-direction: column;
		gap:5px;
	}
	.personal .price_fold .total h4 {
		font-size: 1.6rem;
	}
	.personal .price_fold .total em {
		font-size: 1.6rem;
	}
	.result .my_results .scroll_c {
		width: 100%;
		overflow-x: scroll;
	}
	.result .my_results .chart_cont {
		width: 920px;
	}

	footer .footerBox .info ul.contact {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 10px 0;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	footer .footerBox .link {
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}
}

@media (max-width: 768px) {
	.font70 {
		font-size: calc(var(--fontsize) * 0.72);
	}

	.font50 {
		font-size: calc(var(--fontsize) * 0.74);
	}

	header {
		height: 62px;
	}

	header h1 {
		width: 120px;
		height: 36px;
	}

	header .openMenu {
		width: 62px;
		height: 62px;
		padding: 0 18px;
	}

	header .openMenu span {
		width: 26px;
	}

	header .openMenu span:last-child {
		width: 13px;
	}

	.visual .contents .info .menu,
	.visual .contents .info .contact {
		margin: 20px 0 0;
	}

	.visual .contents .info .contact {
		gap: 0 20px;
	}

	.visual .contents .info .contact>div {
		padding: 30px 20px;
	}

	#sv .text {
		padding: 20px 0 0;
	}

	.formWH {
		height: 60px;
	}

	.login .inputBox {
		gap: 10px 0;
	}

	.login .buttonBox>* {
		height: 50px;
	}

	.login .buttonBox button {
		width: 180px;
	}

	.subPage {
		padding: 60px 0 80px;
	}

	.pageTitle {
		margin: 0 0 40px;
	}

	.pageTitle h4 {
		font-size: 2.3rem;
	}

	.pageTitle .btnBox a {
		width: 260px;
		height: 45px;
		gap:0 10px;
		font-size: 1.5rem;
	}

	.defaultButton {
		width: 160px;
		height: 50px;
		font-size: 1.7rem;
	}

	.radioBox {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 15px 30px;
	}
	.radioBox .detail {
		gap: 5px 30px;
	}

	.agreeBox pre {
		padding: 20px;
	}

	.authBox .formBox .max {
		max-width: 100%;
	}

	.authBox .formBox .flexBox button {
		height: 60px;
	}

	.tableBox.basic table colgroup,
	.tableBox.basic table thead {
		display: none;
	}

	.tableBox.basic table tr {
		gap: 15px 20px;
		padding: 15px 10px;
		border-bottom: 1px solid rgba(217, 217, 217, 0.9);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.tableBox.basic table td {
		border-bottom: none;
		padding: 0 !important;
	}

	.tableBox.basic table td.subject {
		width: 100%;
	}

	.titleHeight {
		padding: 30px 20px;
	}

	.checkup .desiredBox .notification {
		margin: -5px 0 0 40px;
	}

	.checkup.complete .tableBox {
		overflow-x: scroll;
	}

	.checkup .tableBox table td {
		padding: 15px 20px;
	}


	.buttonBox.gap30 {
		gap: 0 20px;
	}

	.program .contents h4 {
		font-size: 2.3rem;
	}

	.program .itemBox {
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
	}

	/* 23.04.13 */
	.program .item {
		width: calc(50% - 10px);
	}

	.questionnaire .formWH,
	.questionnaire input[type=text]:not(.formWH).big {
		height: 50px;
	}

	.questionnaire input[type=text]:not(.formWH) {
		margin: 0 5px 0 10px;
	}

	.questionnaire .gap30 {
		gap: 0 20px;
	}

	.result.list tr {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	.result.intro .itemBox {
		-ms-grid-columns: (1fr)[3];
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	.result.view .basic .itemBox {
		gap: 30px 0;
		padding: 20px;
	}

	.result.view table th,
	.result.view table td {
		height: 60px;
		padding: 15px 20px;
	}

	.checkup .step.top {
		height: 60px;
		gap: 0 15px;
		padding: 20px;
	}

	.checkup .step.top li:not(:last-child) {
		gap: 0 15px;
	}

	.checkup .step.top li:not(:last-child)::after {
		width: 7px;
		height: 12px;
		background-size: cover;
	}

	.checkup .step.top li button {
		font-size: 1.8rem;
	}

	.checkup form.padding {
		margin: 60px 0 0;
	}

	.checkup .formWH {
		height: 50px;
	}

	.checkup .selectCustom.border ul li {
		height: 40px;
		padding: 0 20px;
	}

	.checkup .desired>*,
	.checkup .searchBox {
		padding: 0 20px;
	}

	.checkup .pickerBox .d_picker {
		margin-top: 20px;
		left: 20px;
	}
	.checkup .desiredBox .notification {
		margin: -15px 0 0 30px;
	}

	.checkup .type .text>button {
		width: 240px;
	}

	.checkup .type .text p {
		font-size: 1.7rem;
		margin: 30px 20px;
	}

	.checkup .information .info {
		gap: 0 30px;
	}

	.checkup .information .dot {
		gap: 0 10px;
	}

	.checkup .information .dot::before {
		margin: 0;
	}

	.checkup .information .infoText input[type=text],
	.checkup .information button {
		padding: 0 20px;
	}

	.checkup .fee .detail {
		padding: 20px 0;
	}

	.checkup .fee .detail .list em {
		width: 16%;
	}

	.checkup .fee .total {
		padding: 30px 0 20px;
	}

	.checkup .fee .total>* {
		font-size: 2.0rem;
	}

	.checkup .faq button,
	.checkup .faq .a div {
		padding: 20px;
	}

	.checkup .faq .text,
	.checkup .faq .a div {
		gap: 0 10px;
	}

	.checkup .checkupButton {
		height: 50px;
		font-size: 1.8rem;
	}

	.checkup .checkupButton.complete {
		width: 180px;
	}

	.corporate .topInfo>.flexBox {
		-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: 20px 0;
	}

	.corporate .topInfo em {
		font-size: 1.8rem;
	}

	.corporate .topInfo hr {
		height: 13px;
	}

	.corporate .company {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 30px 0;
	}

	.personal .topInfo .column .dlBox {
		-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: 10px 0;
	}

	.personal .customer,
	.personal .privacy {
		padding: 30px 20px;
	}

	.personal .customer ul .address {
		position: relative;
	}

	.personal .customer ul .address .wrap {
		gap: 10px 0;
	}

	.personal .customer ul .address .wrap .flexBox {
		gap: 0 10px;
	}

	.personal .customer ul .address p {
		position: absolute;
		top: 0;
		right: 0;
	}

	.personal .customer ul input[type=text].big {
		height: 80px;
	}

	.personal .privacy pre {
		padding: 20px;
	}

	.personal .checkupButton.complete {
		margin: -40px auto 0;
	}

	.personal .programBox .programList .ProgramTitle {
		padding: 30px 20px;
	}

	.personal .programBox .programList .detaile .item {
		flex-direction: column;
		align-items: flex-start;
	}
	/* program_new */
	/* 23.10.10 */
	.program_new .tableBox colgroup {
		display: none;
	}
	.program_new table {
		table-layout: inherit;
	}
	.program_new table th {
		white-space: nowrap;
	}
	.personal .reservation {
		gap:20px;
		justify-content: space-evenly;
		padding:60px 0;
	}

	.result .my_results {
		padding: 30px 20px;
	}
	.result .my_results .t ul {
		gap: 0 20px;
	}


	footer .footerBox .link {
		display: none;
	}
}

@media (max-width: 640px) {
	.font70 {
		font-size: calc(var(--fontsize) * 0.48);
	}

	.font50 {
		font-size: calc(var(--fontsize) * 0.52);
	}

	.allMenu {
		width: calc(100% - 20px);
		height: calc(100% - 20px);
		overflow-y: scroll;
	}

	.allMenu::before {
		width: calc(100% + 20px);
	}

	.allMenu h2 {
		width: 120px;
	}

	.allMenu .menuBox {
		padding: 0;
		margin: 40px 0 0;
	}

	.allMenu .menuBox::before {
		display: none;
	}

	.allMenu .menuBox nav ul {
		padding: 0;
	}

	.allMenu .menuBox nav .depth1 {
		width: 100%;
		gap: 40px 0;
	}

	.allMenu .menuBox nav .depth1>li>a {
		font-size: 2.0rem;
	}

	.allMenu .menuBox nav .depth2Box {
		width: 100%;
		margin: 20px 0 -20px;
		position: inherit;
		left: auto;
	}

	.allMenu .menuBox nav .depth2Box .title h4 {
		font-size: 2.0rem;
	}

	.allMenu .menuBox nav .depth2Box .title p {
		font-size: 1.4rem;
	}

	.allMenu .menuBox nav .depth2,
	.allMenu .menuBox nav .depth3 {
		gap: 30px 0;
	}

	.allMenu .menuBox nav .depth2 {
		width: 50%;
	}

	.allMenu .menuBox nav .reservation .link a .icon {
		width: 30px;
		height: 36px;
	}

	.allMenu .menuBox nav .reservation .link a span {
		font-size: 1.4rem;
	}

	.allMenu .menuBox nav .reservation .signature {
		padding: 20px 10px;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item h6 {
		margin: 0 0 6px;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dt,
	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dd {
		font-size: 1.7rem;
	}

	.allMenu .menuBox nav .reservation .signature .itemBox .item dl dd b {
		font-size: 1.9rem;
	}

	.allMenu .menuBox nav .mypage .promotion {
		gap: 10px 0;
	}

	.allMenu .closeMenu i {
		font-size: 2.0rem;
	}



	/* 모바일 메인 비주얼 */
	.visual.mobile .visualSlide.swiper-container .item .bg {
		height: 100%;
		top:50%;
	}
	.visual.mobile .visualSlide.swiper-container .item .w1720 {
		height:100%;
	}
	.visual.mobile .visualSlide.swiper-container .item .title {
		justify-content: flex-end;
		padding: 0 0 20px;
	}
	.visual.mobile .visualSlide.swiper-container .item .title {
		height: 100%;
	}	
	.visual.mobile .visualSlide.swiper-container {
		height: 38vh;
	}
	.visual.mobile .optionBox {
		align-items: flex-end;
		padding:0 0 120px;
	}

	.visual .visualSlide.swiper-container .title {
		padding: 0 20px 60px;
	}

	.visual .visualSlide.swiper-container .title h2 {
		font-size: 2.8rem;
	}

	.visual .optionBox {
		gap: 0 10px;
		padding: 0 0 40%;
	}

	.visual .optionBox .progressBar {
		width: 100px;
	}

	.visual .contents .info .contact {
		-ms-grid-columns: (1fr)[1];
		grid-template-columns: repeat(1, 1fr);
		gap: 20px 0;
	}

	.login .title h2 {
		font-size: 3.2rem;
	}

	.login .title p {
		font-size: 1.8rem;
	}

	.login .logo {
		width: 120px;
		height: 120px;
		padding: 15px;
	}

	.login h4 {
		font-size: 2.2rem;
	}

	.login .buttonBox {
		margin: 30px 0 0;
	}

	.login .buttonBox button {
		width: 140px;
	}

	.marginTop60 {
		margin-top: 40px;
	}

	.subPage h5,
	.subPage h6 {
		font-size: 1.8rem;
	}

	.subPage h4 {
		font-size: 2.0rem;
	}

	.radioBox label {
		gap: 0 5px;
	}

	.agreeBottom .radioBox {
		margin: 20px 0 40px;
	}

	.register.terms .note br {
		display: none;
	}

	.mobileColumn {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.terms h5,
	.questionnaire h5 {
		margin: 0 0 20px;
	}

	.authBox .formBox .mobileColumn {
		gap: 30px;
	}

	.authBox .formBox .authentication {
		gap: 20px 0;
	}

	.formBox .q,
	.formBox .a {
		padding: 15px;
	}

	.formBox .q,
	.formBox .a * {
		font-size: 1.6rem;
	}

	.formBox .textBox .width52 {
		width: 44px;
	}

	.agreeBox p {
		font-size: 1.6rem;
	}

	.complete dl {
		margin: 30px 0 50px;
	}

	.find .id .bgGray {
		padding: 30px 20px;
	}

	.find .id p {
		font-size: 1.7rem;
	}

	.program .contents h4 {
		font-size: 2.0rem;
		margin: 0 0 30px;
	}

	.program .itemBox {
		gap: 10px;
	}

	/* 23.04.13 */
	.program .item {
		width: calc(50% - 5px);
	}

	.program .icon {
		width: 120px;
		height: 120px;
	}

	.program .icon img {
		-webkit-transform: scale(0.72);
		transform: scale(0.72);
	}

	.program .item p {
		font-size: 1.7rem;
		margin: -0.5em 0 0;
	}

	.questionnaire .flexBox.wrap {
		gap: 10px 60px;
	}
	.questionnaire .flexBox.wrap.gap30{
		padding:15px 0;
	}

	.questionnaire .mobileColumn {
		gap: 10px 0;
	}

	.questionnaire span.bgGray {
		width: 120px;
		min-width:120px;
	}

	.questionnaire input[type=text]:not(.formWH) {
		width: 40px;
	}

	.questionnaire input[type=text]:not(.formWH).big {
		width: 80px;
		height: 32px;
	}

	.edit .editBottom p {
		-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: 10px 0;
	}

	.result.intro .overall {
		padding: 20px;
		gap: 30px 0;
		margin-bottom: 70px;
	}
	.result.intro .overall .scroll_box {
		padding: 30px 20px;
		height: 340px;
	}
	.result.intro .overall .person .list .line {
		display: none;
	}
	.result.intro .overall .person .list h6 {
		margin: 0 0 10px;
	}
	.result.intro .overall .person .list > div {
		width: 100%;
		max-width: 100px;
	}
	.result.intro .overall .person .list p {
		line-height: 1.3;
	}

	.result.intro .itemBox {
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
	}

	.result.intro .item a {
		gap: 15px 0;
		padding: 20px 0;
	}

	.result.intro .icon img {
		-webkit-transform: scale(0.72);
		transform: scale(0.72);
	}

	.result.view h5,
	.result.view h6 {
		margin: 0 0 20px;
	}

	.result.view .basic p {
		font-size: 1.6rem;
	}

	.result.view .noList {
		font-size: 1.8rem;
		padding: 40px 0;
	}

	.result.view table th,
	.result.view table td {
		height: 50px;
		font-size: 1.6rem;
	}

	.checkup .topInfo h4 {
		font-size: 2.2rem;
	}

	.checkup .topInfo .column * {
		font-size: 1.6rem;
	}

	.checkup .step.top {
		gap: 0 10px;
		padding: 15px 12px;
	}

	.checkup .step.top li:not(:last-child) {
		gap: 0 10px;
	}

	.checkup .step.top li button {
		font-size: 1.6rem;
	}

	.checkup .mobileColumn {
		gap: 10px 0;
	}

	.checkup .tableBox {
		margin: 30px 0 0;
	}

	.checkup .tableBox table td {
		padding: 10px;
	}

	.checkup:not(.program_new) .tableBox table {
		width: 100%;
	}
	.personal:not(.program_new) .programBox .tableBox.typeBorder, .checkup .tableBox {
		overflow-x: hidden;
	}
	.personal .programBox .programList .tableBox table colgroup {
		display:none;
	}
	.personal .programBox .programList .tableBox tr {
		display: flex;
		flex-direction: column;
		text-align: left;
		border-bottom: 1px rgba(217, 217, 217, 0.9);
	}
	.personal .programBox .programList .tableBox th {
		height: auto;
		padding: 15px 10px 10px;   
		background: #fff;
		border-bottom: 0px;
		text-align: left;
		font-weight: 700;
	}
	.personal .programBox .programList .tableBox td {
		height: auto;
		display: flex;
		flex-wrap: wrap;
		gap:10px;
		padding: 0 0 10px 10px;
	}

	.checkup .additional .itemBox {
		/* 23.04.13 */
		/* -ms-grid-columns: (1fr)[1];
		grid-template-columns: repeat(1, 1fr); */
		gap: 10px;
	}

	.checkup .additional .itemBox label {
		padding: 20px;

		/* 23.04.13 */
		flex-direction: column;
		padding: 20px 15px;
	}

	/* 23.04.13 */
	.checkup .additional .itemBox * {
		line-height: 1.2;
	}

	.checkup .additional .itemBox h5 span {
		display: inline-block;
	}

	.checkup .additional .itemBox p {
		margin: 20px 0 10px;
	}

	.checkup .additional .itemBox .checkMark,
	.checkup .additional .itemBox p {
		display: none;
	}

	.checkup .additional .itemBox em {
		margin: 20px 0 -30px;
	}

	.checkup .additional .itemBox .icon {
		margin: auto 0 0 auto;
		transform: scale(0.8);
		transform-origin: right bottom;
	}

	.checkup .information .infoSelect {
		width: 100%;
	}

	.checkup .information .dot {
		/* width: 84px; */
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}

	.checkup .information .info {
		gap: 10px 0;
	}

	.checkup .information .selectCustom {
		max-width: 100%;
	}

	.checkup .fee .detail .list h6,
	.checkup .fee .detail .list em {
		width: 100%;
	}

	.checkup .faq .text,
	.checkup .faq .a div {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 5px 0;
	}

	.checkup .desiredBox .notification {
		margin: -5px 20px 0;
	}

	.personal .TabBox_program ul {
		grid-template-columns: repeat(3, 1fr);
	}

	.personal .programBox .programList .ProgramTitle {
		/* flex-direction: column; */
		flex-direction: row;
		gap: 30px 20px;
		align-items: center;
		text-align: center;
	}
	.personal .programBox .programList .ProgramTitle .text {
		text-align:left;
	}
	.personal .programBox .programList .ProgramTitle h4 {
		font-size: 2.3rem;
		margin: 0 0 15px;
	}	


	/*
	.personal .programBox .programList .detaile {
		flex-direction: column;
		gap: 10px 0;
	}

	 .personal .programBox .programList .detaile .item {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
	} */
	.personal .userHistory {
		/* gap: 20px; */
	}
	.personal .userHistory.familly .familly,
	.personal .userHistory.company .company{
		width: calc(50% - 5px);
	}
	
	.personal .userHistory .flexBox,
	.personal .userHistory.w3 .flexBox {
		width: calc(50% - 5px);
	}
	.personal .programBox .programList .detaile .item {
		gap: 10px 20px;
		justify-content: flex-start;
	}

	.price_fold {
		gap:40px;
	}

	.checkup .titleHeight >.total {
		display: flex;
		gap: 0px;	
		column-gap: 10px;
		flex-wrap: wrap;
		margin: 20px 0 0;
	}
	.checkup .titleHeight>.total h4 {
		font-size: 1.8rem;
	}
	.checkup .fee .detail .list #view_add_item>div{
		flex-wrap: wrap;
	}
	.checkup .fee .detail h6, .checkup .fee .detail .list>div, .checkup .fee .detail .list #view_add_item>div {
		height: auto;
	}
	.checkup .fee .detail .list #view_add_item>div h6 {
		line-height: 2.8;
	}
	.corporate .topInfo .alignCenter {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 10px 15px;
	}

	.personal .customer ul .phone .column .flexBox {
		
	}
	.personal .customer ul .phone button {
		width:170px;
	}

	.personal .price_fold {
		gap: 0;
	}



	footer .footerBox .family {
		width: 200px;
	}

	footer .footerBox .family button {
		padding: 0 15px;
	}

	footer .footerBox .family ul {
		padding: 20px 15px;
	}
}

@media (max-width: 580px) {

	.personal .reservation {
		flex-direction: column;
		align-items: flex-start;
	}
	.personal .reservation a {
		width:100%;
	}
	.personal .reservation a br {
		display:none;
	}
	.personal .reservation .member,
	.personal .reservation .non-member {
		flex-direction: row;
		height: 80px;
		padding:30px 20px;
		text-align:left;
	}
	.personal .reservation.size .member {
		height: auto;
		text-align: center;
		padding: 10px 20px;
		flex-direction: column;
		padding: 20px;
		row-gap: 10px;
	}
/* 	.personal .reservation h4 {
		width:300px;
	} */
	.personal .reservation h4 img {
		width: 20px;
	}
	.personal .reservation p {
		width:100%;
	}

	.result .my_results .table_c table td {
		height: 60px;
	}
	.result .my_results .t {
		flex-wrap: wrap;
	}
	.result .my_results .t ul {
		width: 100%;
		margin: 20px 0 0;
		justify-content: flex-end;
	}
	.result .my_results .chart_c .con:not(.bottom) {
		height: 80px;
	}
	.result .my_results .chart_c .bar {
		width: 35px;
	}

}

@media (max-width: 420px) {

	html,
	body {
		font-size: 50%;
	}
	
	.personal .programBox .programList .detaile {
		flex-direction: column;
		gap: 10px 0;
	}
	
	.personal .programBox .programList .detaile .item {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
	}
	.personal .programBox .programList .detaile .item .icon {
		min-width:70px;
	}

	.personal .userHistory .flexBox {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.personal .userHistory .flexBox p {
		width: auto;
	}
	.personal .userHistory .flexBox.alignCenter .flexBox {
		width: 120px;
	}
	
}




/* 공단검진에 대한 별도의 css*/

@media (max-width: 1400px) {
	.gongdan .titleHeight {
		height: 150px;
	}
	.gongdan.checkup .desiredBox .notification {
		margin: -20px 0 0 0;
	}
}