@charset "utf-8";

#subVisual .wrapper{
	background:url(/img/subVisual/sub_03_bg.png) no-repeat;
	background-position:right bottom;
	background-size:auto 76%;
}

#banner{
	display:block;
}

/***********************

admitssion

***********************/

.medi_timetable ul{
	display:flex;
	justify-content:space-between;
}

.medi_timetable ul li{
	width:48%;
}

.caution{
	font-size:1.25rem;
	color:var(--blue01);
	font-weight:600;
	margin-bottom:20px;
	display: flex;
    gap: 10px;
    align-items: center;
}

.caution span{
	display:flex;
	width:20px;
	height:20px;
	background-color:var(--blue01);
	border-radius:50%;
	align-items:center;
	justify-content:center;
	color:var(--white);
	font-size:0.875rem;
	font-weight:600;
}

.mini_caution{
	font-size:1.125rem;
}

.mini_caution span{
	font-size:0.75rem;
}

.medi_timetable .table_box{
	width:100%;
	padding:40px 45px;
	border-radius:20px;
	border:1px solid var(--blue05);
}

.medi_timetable table{
	width:100%;
}

.medi_timetable table thead tr th{
	font-size:1.25rem;
	font-weight:700;
	color:var(--white);
	padding:15px 0;
	width:calc(100% / 3);
	text-align:center;
}

.medi_timetable table thead tr{
	background-color:var(--blue04);
}

.medi_timetable table thead tr th:first-child{
	border-radius:10px 0 0 10px;
}

.medi_timetable table thead tr th:last-child{
	border-radius:0 10px 10px 0;
}

.medi_timetable table tbody tr td{
	width:calc(100% / 3);
	padding:15px 0;
	font-size:1.125rem;
	text-align:center;
	border-right:1px solid var(--gray02);
}

.medi_timetable table tbody tr{
	border-bottom:1px solid var(--gray02);
}

.medi_timetable table tbody tr td:last-child{
	border-right:0;
}


.medi_timetable ul>li:nth-child(2) table thead tr th{
	width:calc(100% / 4);
}

.medi_timetable ul>li:nth-child(2) table tbody tr td{
	width:calc(100% / 4);
}

.admit_box .admit{
	display:flex;
	justify-content:space-between;
	flex-flow:wrap;
	gap:20px;
}

.admit>li{
	width:48%;
	display:flex;
	flex-direction:column;
	height:auto;
}

.admit .admit_txt{
	background-color:var(--white);
	border-radius:20px;
	padding:20px;
	display: flex;
    flex-direction: column;
    height: 100%;
	justify-content: center;
}

.admit_box .admit .admit_txt li{
	font-size: 1rem;
	color:var(--gray01);
	line-height:1.5;
	word-break:keep-all;
}

.red{
	color:#df0202 !important;
}

@media screen and (max-width:1300px){
	#subVisual .wrapper{
		background-size:50% auto;
	}
}

@media screen and (max-width:1064px){
	.medi_timetable table thead tr th{
		font-size:1.125rem;
	}

	.medi_timetable table tbody tr td{
		font-size:1rem;
	}

	.medi_timetable .table_box{
		padding:25px 30px;
	}
}

@media screen and (max-width:969px){
	.medi_timetable table thead tr th{
		font-size:1rem;
	}

	.medi_timetable table tbody tr td{
		font-size:0.85rem;
	}

	.admit_box .admit{
		flex-direction:column;
	}

	.admit>li{
		width:100%;
	}

	.medi_timetable ul{
		flex-direction:column;
		gap:60px;
	}

	.medi_timetable ul li{
		width:100%;
	}

	.admit_box .admit .admit_txt li br{
		display:none;
	}

	.medi_timetable .table_box{
		border-radius:10px;
	}

	.admit .admit_txt{
		border-radius:10px;
		padding: 15px 10px;
	}

}

@media screen and (max-width:640px){
	#subVisual .wrapper{
		background-size:63% auto;
	}

	.caution{
		font-size:1.125rem;
	}

	.caution span{
		width:18px;
		height:18px;
		font-size:0.7rem;
	}

	.admit_box .admit .admit_txt li{
		font-size:0.93rem;
	}
}

@media screen and (max-width:460px){
	#subVisual .wrapper{
		background-size:90% auto;
	}

}

@media screen and (max-width:320px){
	.admit_box .admit .admit_txt li{
		font-size:0.8rem;
	}
}

/***********************

certificate

***********************/

.down_step{
	display:flex;
	 justify-content: space-between;
}

.down_step .left{
	width:37%;
}

.down_step .right{
	width:56%;
}

.down_step .file{
	gap: 40px;
    display: flex;
    flex-direction: column;
}

.down_step .file .caution{
	padding-bottom:20px;
	margin-bottom:10px;
	position:relative;
}

.down_step .file .caution:before{
	display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: var(--gray01);
    bottom: 0;
    left: 0;
    content: '';
}

.down_step .down_btn{
	display: flex;
	justify-content:space-between;
}

.down_step .down_btn li{
	width:48%;
}

.down_step .down_btn li a{
	width:100%;
	display:flex;
	justify-content:space-between;
	padding:13px 20px;
	border-radius:10px;
	background-color:var(--blue03);
}

.down_step .down_btn li a p{
	font-size:1.125rem;
	font-weight:600;
}

.down_step .down_btn li a .down_icn{
	width:25px;
	height:25px;
	background:url(/img/icn_down.png) no-repeat;
}

.down_step .right{
	position:relative;
}

.down_step .right .step_box{
	gap:20px;
	display:flex;
	flex-direction:column;
}

.down_step .right .step_box li{
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.down_step .right .step_box li .circle{
	width:20px;
	height:20px;
	background-color:var(--white);
	border:1px solid var(--blue01);
	border-radius:50%;
    display: flex;
    justify-content: center;
    align-items: center;
	animation-name:circle_color;
	animation-duration:2s;
	animation-iteration-count:1;
	animation-fill-mode:forwards;
}

.down_step .right .step_box li:nth-child(1) .circle{
	animation-delay:0s;
}

.down_step .right .step_box li:nth-child(2) .circle{
	animation-delay:1s;
}

.down_step .right .step_box li:nth-child(3) .circle{
	animation-delay:2s;
}

@keyframes circle_color{
	100%{
		background-color:var(--blue01);
	}
}

.down_step .right .step_box li .circle i{
	color:var(--blue01);
	animation-name:circle_i_color;
	animation-duration:2s;
	animation-iteration-count:1;
	animation-fill-mode:forwards;
}

.down_step .right .step_box li:nth-child(1) .circle i{
	animation-delay:0s;
}

.down_step .right .step_box li:nth-child(2) .circle i{
	animation-delay:1s;
}

.down_step .right .step_box li:nth-child(3) .circle i{
	animation-delay:2s;
}

@keyframes circle_i_color{
	100%{
		color:var(--white);
	}
}

.down_step .right .step_box .step_icn{
	width:80px;
	height:80px;
	background-color:var(--blue03);
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:50%;
	margin: 0 20px 0 40px;
}

.down_step .right .step_box .step_txt{
	width:70%;
}

.down_step .right .step_box .step_txt h5{
	display:flex;
	gap:30px;
	border-bottom:1px solid var(--blue01);
	padding-bottom:20px;
	margin-bottom:10px;
	color:var(--gray01);
	font-size:1.25rem;
	font-weight:600;
	align-items:flex-end;
	animation-name:txt_color01;
	animation-duration:2s;
	animation-iteration-count:1;
	animation-fill-mode:forwards;
}

.down_step .right .step_box li:nth-child(1) .step_txt h5{
	/* animation-name:txt_color01;
	animation-duration:2s;
	animation-iteration-count:1;
	animation-fill-mode:forwards; */
	animation-delay:0s;
}

.down_step .right .step_box li:nth-child(2) .step_txt h5{
	/* animation-name:txt_color02;
	animation-duration:4s;
	animation-iteration-count:1;
	animation-fill-mode:forwards; */
	animation-delay:1s;
}

.down_step .right .step_box li:nth-child(3) .step_txt h5{
	/* animation-name:txt_color03;
	animation-duration:6s;
	animation-iteration-count:1;
	animation-fill-mode:forwards; */
	animation-delay:2s;
}

@keyframes txt_color01{
	100%{
		color:var(--black);
	}
}

.down_step .right .step_box .step_txt h5 span{
	font-size:0.75rem;
	font-weight:700;
	color:var(--blue01);
}

.down_step .right .line{
	width: 2px;
    height: 76%;
    background-color: var(--gray02);
    position: absolute;
    top: 50%;
    left: calc(19px / 2);
    transform: translateY(-50%);
    z-index: -1;
}

.down_step .right .line .in_line{
	width: 100%;
    height: 0;
    background-color: var(--blue01);
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.4s;
	animation-name:accent-color;
	animation-duration:2s;
	animation-iteration-count:1;
	animation-fill-mode:forwards;
}

@keyframes accent-color {
	0%{
		height:0%;
	}

	50%{
		height:50%;
	}

	100%{
		height:100%;
	}
}
.scroll_txt{
	display:none;
}

.agree_table {
	width:100%;
	padding:40px 100px;
	border-radius:30px;
	background-color:var(--white);
}

.agree_table table{
	width:100%;
}

.agree_table table thead tr{
	background-color:var(--blue04);
	border-radius:10px;
}

.agree_table table thead tr th{
	font-size:1.25rem;
	font-weight:700;
	color:var(--white);
	padding:15px 0;
	text-align:center;
	word-break: keep-all;
}

.agree_table table thead tr th:first-child{
	border-radius:10px 0 0 10px;
	width:24%;
}

.agree_table table thead tr th:last-child{
	border-radius:0 10px 10px 0;
	width:76%;
}

.agree_table.no_agree table thead tr th:first-child{
	border-radius:10px 0 0 10px;
	width:23%;
}

.agree_table.no_agree table thead tr th:nth-child(2){
	width:26%;
}

.agree_table table tbody tr td{
	padding:20px 0;
	font-size:1rem;
	text-align:center;
	border-right:1px solid var(--gray02);
	word-break: keep-all;
}

.agree_table table tbody tr{
	border-bottom:1px solid var(--gray02);
}


.agree_table table tbody tr td:last-child{
	border-right:0;
	text-align:left;
	padding-left:20px;
}

.agree_table.no_agree table tbody tr td:nth-child(2){
	text-align:left;
	padding-left:20px;
}

.agree_table table tbody tr td ul li.red,
.agree_table table tbody tr td .red
{
	font-size:0.875rem;
	word-break:keep-all;
}

.agree_table table tbody tr td ul li{
	line-height:1.5;
	font-size:1rem;
}

.agree_caution{
	display:flex;
	flex-direction:column;
	margin-top:20px;
}

.agree_caution li{
	font-size:1rem;
	color:var(--gray01);
	line-height:1.5;
	    word-break: keep-all;
}

.agree_table.no_agree{
	border:1px solid var(--blue05);
}




@media screen and (max-width:1300px){
	.down_step .down_btn li a p{
		font-size:1rem;
	}

	.down_step .down_btn li a .down_icn{
		width:22px;
		height:22px;
		background-size:100%;
	}
}

@media screen and (max-width:1064px){
	.down_step .right .step_box .step_icn{
		width:70px;
		height:70px;
	}

	.agree_table table thead tr th{
		font-size:1.125rem;
	}

	.agree_table table tbody tr td{
		padding:15px 0;
	}

	.agree_table{
		padding:30px 60px;
	}

	.down_step{
		gap:60px;
		display: flex;
        justify-content: space-between;
        flex-direction: column;
	}
	
	.down_step .file{
		display:flex;
		flex-direction:row;
		justify-content:space-between;
	}

	.down_step .left{
		width:100%;
	}

	.down_step .right{
		width:100%;
	}

	.down_step .file li{
		width:48%;
	}
}

@media screen and (max-width:969px){
	.agree_table{
		padding:20px 30px;
		border-radius:10px;
	}

	.agree_table table thead tr th{
		font-size:1rem;
	}

	.agree_table table tbody tr td{
		font-size:0.875rem;
	}

	.agree_table table tbody tr td ul li{
		font-size:0.875rem;
	}

	.down_step .down_btn{
		flex-direction: column;
		gap: 20px;
	}

	.down_step .file li{
		width:100%;
	}

	.agree_caution li{
		font-size:0.875rem;
	}

	.down_step .right .step_box .step_txt h5{
		gap:20px;
	}
}

@media screen and (max-width:640px){
	.scroll_txt {
        display: block;
        margin-bottom: 20px;
        text-align: center;
        font-size: 1rem;
    }

	.agree_table_box .table_wrap{
		overflow-x:scroll;
	}

	#no_certificate_agree .agree_table_box{
		overflow-x:scroll;
	}

	.agree_table_box table{
		width:800px;
	}

	.down_step .right .step_box .step_txt h5{
		font-size:1.125rem;
	}
}

@media screen and (max-width:460px){
	.agree_table_box table{
		width:600px;
	}

	.down_step .file{
		flex-direction:column;
	}

	.down_step .right .step_box .step_icn{
		margin:0 20px;
	}

	.down_step .right .step_box .step_txt{
		width:65%;
	}

	.down_step .right .step_box .step_txt h5{
		gap:10px;
		flex-direction: column;
        align-items: flex-start;
		padding-bottom:10px;
		margin-bottom:10px;
	}

	.down_step .right .step_box .step_icn{
		width:60px;
		height:60px;
	}

	.down_step .right .step_box li:nth-child(1) .step_icn img{
		width:50%;
	}

	.down_step .right .step_box li:nth-child(2) .step_icn img{
		width:35%;
	}

	.down_step .right .step_box li:nth-child(3) .step_icn img{
		width:30%;
	}
}

@media screen and (max-width:320px){
	.down_step .right .step_box .step_icn{
		width:50px;
		height:50px;
		margin:0;
	}

	.down_step .right .step_box .step_icn img{
		height:35%;
	}

	.down_step .right .step_box li .circle{
		width:18px;
		height:18px;
	}

	.down_step .right .line{
		left:calc(17px / 2);
	}
}