/* ==========================
COMMON
========================== */
:root {
	--key-color: #007203;
}
.event-wrap{ color:#333;}
*[class^="cont0"] {padding-bottom:clamp(80px, calc(80px + (160 - 80) * ((100vw - 360px) / 840)), 160px);}
.inner {max-width:1200px; margin:0 auto; text-align:center;}
.r-txt {
	margin:0 auto;  
	margin-top:clamp(12px, calc(12px + (12 - 12) * ((100vw - 360px) / 840)), 12px); 
	font-size:clamp(13px, calc(13px + (14 - 13) * ((100vw - 360px) / 840)), 14px); 
	color:#777; line-height:1.5; font-weight:400; letter-spacing: -0.14px; text-align:right;
}
/* TA */
@media (max-width:1199px) and (min-width:768px){
	.inner{ padding:0 24px;} 
}

/* ==========================
VISUAL
========================== */
.visual-wrap .visual {
	max-width:1200px; margin:0 auto;text-align:center;
	padding:clamp(90px, calc(90px + (160 - 90) * ((100vw - 360px) / 840)), 160px) 0; 
} 
.visual-wrap .visual h3 {
	font-size:clamp(18px, calc(18px + (26 - 18) * ((100vw - 360px) / 840)), 26px); 
	color:#101010; line-height:100%; font-weight:500;
}
.visual-wrap .visual p { 
	font-size:clamp(47px, calc(47px + (58 - 47) * ((100vw - 360px) / 840)), 58px); 
	margin-top:clamp(30px, calc(30px + (50 - 30) * ((100vw - 360px) / 840)), 50px);
	font-style: normal;
	font-weight: 900;
	line-height: 118%;
	background: linear-gradient(93deg, #A64F02 22.8%, #644E02 51.77%, #004602 77.72%);
	background-clip: text; 
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.exam-paper {
	text-align:center;max-width:420px;margin:0 auto;
	margin-top:clamp(40px, calc(40px + (80 - 40) * ((100vw - 360px) / 840)), 80px);
}
.exam-paper .exam-img img {width:100%; }
.exam-paper .exam-info {
	margin:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px) auto 0; text-align:left;
}
.exam-paper .exam-info dl {display:flex; color:#777; line-height:150%; letter-spacing:-0.13px; font-size:clamp(14px, calc(14px + (14 - 13) * ((100vw - 360px) / 840)), 14px);}
.exam-paper .exam-info dl dd { margin-left:5px;}

h4{
	font-size:clamp(22px, calc(22px + (28 - 22) * ((100vw - 360px) / 840)), 28px);
	font-weight: 400;
}
h4 strong{
	font-size:clamp(28px, calc(28px + (40 - 28) * ((100vw - 360px) / 840)), 40px);
	font-weight: 800;
}
.content-box{
	max-width: 784px;
	margin:0 auto;
}
.list-box {
	margin:0 auto;
	margin-top:clamp(30px, calc(30px + (50 - 30) * ((100vw - 360px) / 840)), 50px);
	padding:0 clamp(20px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px); 
	border-radius:clamp(10px, calc(10px + (20 - 10) * ((100vw - 360px) / 840)), 20px); 
	background-color:#fff; box-sizing:border-box; border:1px solid #E5E5E5;
	max-width:784px;
}
.list-box dl {padding:clamp(20px, calc(20px + (20 - 20) * ((100vw - 360px) / 840)), 20px) 0; border-top:1px solid #E5E5E5;}
.list-box dl:first-child {border-top:none;}
.list-box dl dt { font-size:clamp(18px, calc(18px + (24 - 18) * ((100vw - 360px) / 840)), 24px); font-weight:700; line-height:1.4; letter-spacing:-0.18px; word-break:keep-all;}
.l-txt{ max-width: 784px; }

/* ==========================
CONT02
========================== */
.cont02 p{
	margin-top:clamp(30px, calc(30px + (50 - 30) * ((100vw - 360px) / 840)), 50px);
}
.cont02 .list-box dl dt { font-size:clamp(17px, calc(17px + (20 - 17) * ((100vw - 360px) / 840)), 20px); font-weight:700; line-height:1.4; letter-spacing:-0.17px; word-break:keep-all;}
.cont02 .list-box dl dd { font-size:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px); font-weight:400; line-height:1.4; letter-spacing:-0.14px; word-break:keep-all;}
/* MO */
@media (max-width:767px){
	.exam-paper {
		width:76.666%;
	}
	.cont02 p img{
		width:52.777%;
	}
}

/* ==========================
CONT03 (ACADEMY TAB)
========================== */
.cont03 .inner{
	max-width: 1024px;
}
.cont03 h4{
	font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px);
	font-weight: 400;
}
.cont03 h4 strong{
	display: block;
	margin-bottom:clamp(6px, calc(6px + (12 - 6) * ((100vw - 360px) / 840)), 12px);
}

/* base */
.cont03 .tab-box {
	display:flex; gap:0; 
	padding:0; list-style:none; border:1px solid #E5E5E5;
	overflow:hidden; background:#fff;
	margin-top:clamp(30px, calc(30px + (50 - 30) * ((100vw - 360px) / 840)), 50px);
	margin-bottom:clamp(30px, calc(30px + (30 - 30) * ((100vw - 360px) / 840)), 30px);

}
.cont03 .tab-box li {
	flex:1 1 50%; display:flex; align-items:center; justify-content:center; 
	font-weight:600; letter-spacing:-0.2px; color:#777; background:#EDEDED; cursor:pointer; user-select:none;
	font-size:clamp(18px, calc(18px + (24 - 18) * ((100vw - 360px) / 840)), 24px);
	height:clamp(64px, calc(64px + (80 - 64) * ((100vw - 360px) / 840)), 80px);
}
.cont03 .tab-box li + li {border-left:1px solid #E5E5E5;}
.cont03 .tab-box li.on {background:var(--key-color); color:#fff;}
.cont03 .tab-cont {display:none;}
.cont03 .tab-cont.on {display:block;}
.cont03 .academy-list {display:grid; grid-template-columns:repeat(4, 1fr); gap:12px; margin-top:0; padding:0; list-style:none;}
@media (max-width:767px){
	.cont03 .academy-list {grid-template-columns:repeat(2, 1fr); gap:10px;}
}
.cont03 .academy-item {
	display:flex; align-items:center; justify-content:space-between; gap:10px; 
	padding:10px 8px 10px 12px; border:1px solid #E5E5E5; 
	border-radius:6px; 
	background:#fff; box-sizing:border-box; 
	height:clamp(52px, calc(52px + (52 - 52) * ((100vw - 360px) / 840)), 52px);
}
.cont03 .academy-item .name {
	font-size:clamp(13px, calc(13px + (16 - 13) * ((100vw - 360px) / 840)), 16px);
	font-weight:500; letter-spacing:-0.2px; text-align: left;
	line-height:1.2; 
	min-width:0; 
	/* overflow:hidden; */
	/* text-overflow:ellipsis; */
	/* white-space:nowrap; */
}
.cont03 .academy-item .name small{
	color:#777;
	font-size:clamp(12px, calc(12px + (12 - 12) * ((100vw - 360px) / 840)), 12px);
}
.cont03 .academy-item .actions {display:flex; gap:6px; flex:0 0 auto;}
.cont03 .academy-item .btn-ico {
	display:inline-flex; align-items:center; justify-content:center; 
	width:32px; height:32px; border:1px solid #DADADA; border-radius:999px; background:#fff; box-sizing:border-box; text-decoration:none;
}
.cont03 .academy-item .btn-ico:active {transform:translateY(1px);}
.cont03 .academy-item .ico {display:block; width:18px; height:18px; background-repeat:no-repeat; background-position:center; background-size:contain;}
.cont03 .academy-item .ico.home {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 0 18 16' fill='none'%3E%3Cpath d='M8.68571 0L0 6.51429H2.17143V15.2H6.51429V10.8571H10.8571V15.2H15.2V6.44914L17.3714 6.51429L8.68571 0V0Z' fill='%23999999'/%3E%3C/svg%3E");}
.cont03 .academy-item .ico.tel {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M11.6806 15.1999C8.58397 15.1958 5.61529 13.9615 3.42561 11.7674C1.23594 9.57343 0.00401383 6.59885 0 3.49604C0 2.56885 0.367592 1.67964 1.02191 1.02403C1.67623 0.368409 2.56368 8.68628e-05 3.48902 8.68628e-05C3.68497 -0.00140864 3.88059 0.0164102 4.07305 0.053286C4.25912 0.080874 4.44203 0.126693 4.61916 0.190084C4.74374 0.233882 4.85475 0.309504 4.94122 0.409472C5.02769 0.50944 5.08661 0.630291 5.11217 0.760076L6.1513 5.32001C6.1793 5.44378 6.17593 5.57261 6.14148 5.69475C6.10704 5.81688 6.04261 5.92842 5.95409 6.0192C5.85549 6.1256 5.8479 6.1332 4.91497 6.61959C5.66207 8.26182 6.97288 9.58063 8.60878 10.3359C9.1018 9.39355 9.10938 9.38595 9.21557 9.28715C9.30616 9.19845 9.41749 9.1339 9.53938 9.09938C9.66127 9.06487 9.78984 9.06149 9.91337 9.08955L14.4643 10.1307C14.5896 10.1599 14.7056 10.2205 14.8011 10.3069C14.8966 10.3934 14.9687 10.5027 15.0104 10.6247C15.0744 10.8051 15.1226 10.9908 15.1545 11.1795C15.185 11.3705 15.2002 11.5637 15.2 11.7571C15.186 12.6803 14.8081 13.5605 14.1487 14.2055C13.4894 14.8505 12.6021 15.208 11.6806 15.1999Z' fill='%23999999'/%3E%3C/svg%3E");}
.cont03 .academy-item .btn-tel {display:none;}
@media (max-width:767px){
	.cont03 .inner{
		max-width:100%;
		padding-left:0;
		padding-right:0;
		box-sizing: border-box;
	}
	.cont03 .inner .tab-contents{
		padding:0 16px;
	}
	.cont03 .academy-item .btn-tel {display:inline-flex;}
}
