@charset "utf-8";
/* CSS Document */

/*===================================
	.block01
=====================================*/

.block01{
	padding: 85px 0 57px;
}

.block01 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}

.block01 .block_inner::before{
	content: '';
	background: url("../images/current_students/parts01.webp")no-repeat;
	background-size: cover;
	width: 34.3809%;/*361*/
	height: auto;
	aspect-ratio: 361 / 350;
	position: absolute;
	top: -25px;
	right: -14.7619%;/*-155*/
	z-index: -1;
}

.block01 .block_inner p.txt01{
	margin-top: 35px;
	font-size: min(1.22vw, 1.8rem);
	line-height: 1.7222;
	color: #333333;
	text-align: center;
}

/*===================================
	.block02
=====================================*/

.block02{
	padding: 70px 0 120px;
	position: relative;
}

.block02::before{
	content: '';
	background: #61C1BE;
	background: linear-gradient(90deg, rgba(97, 193, 190, 0.36) 0%, rgba(242, 232, 206, 0.36) 100%);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
}

.block02 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}

.block02 .block_inner::before{
	content: '';
	background: url("../images/current_students/parts02.webp")no-repeat;
	background-size: cover;
	width: 163.8095%;/*1720*/
	height: auto;
	aspect-ratio: 1720 / 753;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block02 .block_inner p.txt01{
	margin-top: 40px;
	font-size: min(1.22vw, 1.8rem);
	line-height: 1.7222;
	color: #333333;
	text-align: center;
}

.block02 .block_inner .link_btn01{
	width: 52.0%;
	margin: 51px auto 0;
}

.block02 .block_inner .link_btn01 a{
	display: flex;
	align-items: center;
	width: 100%;
	height: 165px;
	border-radius: 20px;
	border: 3px solid #fff;
	box-shadow: 0 0 3px rgba(20, 168, 150, 0.55);
	background: url("../images/current_students/link_ico.svg")no-repeat #17aadd right 8.2692% center;/*43*/
	background-size: 2.3076% auto;/*12*/
	padding-left: 50.0%;/*260*/
	box-sizing: border-box;
	position: relative;
}

.block02 .block_inner .link_btn01 a::before{
	content: '';
	background: url("../images/current_students/online_ico.webp")no-repeat;
	background-size: cover;
	width: 35.7692%;/*186*/
	height: auto;
	aspect-ratio: 186 / 79;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 7.6923%;/*40*/
	z-index: 1;
}

.block02 .block_inner .link_btn01 a span{
	font-size: min(2.16vw, 3.2rem);
	line-height: 1.2812;
	color: #fff;
	text-align: center;
}

/*===================================
	.block03
=====================================*/

.block03{
	padding: 86px 0 112px;
}

.block03 .block_inner{
	width: 100%;
	max-width: 1050px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}

.block03 .block_inner p.txt01{
	margin-top: 40px;
	font-size: min(1.22vw, 1.8rem);
	line-height: 1.7222;
	color: #333333;
	text-align: center;
}

.block03 .block_inner .table_area{
	width: 100%;
	margin-top: 38px;
	position: relative;
}

.block03 .block_inner .table_area::before{
	content: '';
	background: url("../images/current_students/parts03.webp")no-repeat;
	background-size: cover;
	width: 25.8%;
	height: auto;
	aspect-ratio: 258 / 213;
	position: absolute;
	top: -97px;
	transform: translateY(-100%);
	left: 5.9%;
}

.block03 .block_inner .table_area table{
	width: 100%;
	border-collapse: collapse;
}

.block03 .block_inner .table_area table td,
.block03 .block_inner .table_area table th {
	width: calc(100% / 3);
	background: #fff;     /* ← セルの背景と同じにする */
	border: 1px solid #c6c6c6;
	padding: 10px 0;
	box-sizing: border-box;
	height: 52px;
}

.block03 .block_inner .table_area table th,
.block03 .block_inner .table_area table td.color01{
	background: #61c1be;
}

.block03 .block_inner .table_area table td p{
	font-size: min(1.22vw, 1.8rem);
	color: #000000;
	text-align: center;
}


.block03 .block_inner .table_area table th p,
.block03 .block_inner .table_area table td.color01 p{
	font-size: min(1.35vw, 2.0rem);
	color: #fff;
	text-align: center;
}

tbody + tbody::before {
  content: "";
  display: table-row; /* tr扱いにする */
  height: 3px;       /* tbody間の空白 */
}

.block03 .block_inner ul.caution_list{
	margin-top: 24px;
	list-style: none;
}

.block03 .block_inner ul.caution_list li{
	padding-left: 1em;
	box-sizing: border-box;
	font-size: min(1.15vw, 1.7rem);
	line-height: 1.8235;
	color: #333333;
	position: relative;
}

.block03 .block_inner ul.caution_list li::before{
	content: '※';
	font-size: min(1.15vw, 1.7rem);
	line-height: 1.8235;
	color: #333333;
	position: absolute;
	top: 0;
	left: 0;
}

.block03 .block_inner .c_wrap{
	margin-top: 70px;
}

.block03 .block_inner .c_wrap h3.h3-midashi{
	font-size: min(1.69vw, 2.5rem);
	line-height: 1;
	color: #35a59f;
	text-align: center;
	padding-bottom: 16px;
	position: relative;
}

.block03 .block_inner .c_wrap h3.h3-midashi::before{
	content: '';
	background: #61c1be;
	width: 4.95%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.block03 .block_inner .c_wrap .contact_area{
	margin-top: 23px;
	width: 100%;
	background: #fff;
	border: 3px solid #c6c6c6;
	border-radius: 20px;
	padding: 26px 0 32px;
}

.block03 .block_inner .c_wrap .contact_area p.txt_lv1{
	font-size: min(1.35vw, 2.0rem);
	line-height: 1;
	color: #000000;
	text-align: center;
}

.block03 .block_inner .c_wrap .contact_area p.tel_head{
	margin-top: 30px;
	font-size: min(1.35vw, 2.0rem);
	line-height: 1;
	color: #000000;
	text-align: center;
}

.block03 .block_inner .c_wrap .contact_area p.telnum{
	margin-top: 7px;
}

.block03 .block_inner .c_wrap .contact_area p.telnum a{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: min(3.46vw, 5.124rem);
	line-height: 1;
	color: #0071b6;
}

.block03 .block_inner .c_wrap .contact_area p.telnum a::before{
	content: '';
	background: url("../images/current_students/tel_ico.webp")no-repeat;
	background-size: cover;
	width: 4.6%;
	height: auto;
	aspect-ratio: 46 / 50;
	margin-right: 7px;
}

.block03 .block_inner .c_wrap .contact_area p.tel_foot{
	margin-top: 11px;
	font-size: min(1.01vw, 1.5rem);
	line-height: 1;
	color: #333333;
	text-align: center;
}

/*===================================
	.block04
=====================================*/

.block04{
	padding: 90px 0 132px;
	position: relative;
}

.block04::before{
	content: '';
	background: #f0f7f6;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -3;
}

.block04 .block_inner{
	width: 100%;
	max-width: 1150px;
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}

.block04 .block_inner::before{
	content: '';
	background: url("../images/current_students/parts04.webp")no-repeat;
	background-size: cover;
	width: 12.8571%;/*135*/
	height: auto;
	aspect-ratio: 135 / 203;
	position: absolute;
	top: 104px;
	transform: translateY(-100%);
	right: 3.3333%;/*35*/
	z-index: -1;
}

.block04 .block_inner::after{
	content: '';
	background: url("../images/current_students/parts01.webp")no-repeat;
	background-size: cover;
	width: 34.3809%;/*361*/
	height: auto;
	aspect-ratio: 361 / 350;
	position: absolute;
	top: 119px;
	transform: translateY(-100%);
	right: -14.9523%;/*-157*/
	z-index: -2;
}

.block04 .block_inner .txt_area{
	width: 90.9090%;/*1000*/
	margin: 40px auto 0;
}

.block04 .block_inner .txt_area p.txt01{
	margin-top: 21px;
	font-size: min(1.22vw, 1.8rem);
	line-height: 1;
	color: #333333;
	text-align: center;
}

.block04 .block_inner .tabs{
	width: 100%;
	display: flex;
	justify-content: center;
	margin-top: 46px;
	padding-bottom: 43px;
	position: relative;
}

.block04 .block_inner .tabs::before{
	content: '';
	background: #4a6d84;
	width: 100%;
	height: 51px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.block04 .block_inner .tabs::after{
	content: '';
	background: url("../images/current_students/parts02.webp")no-repeat;
	background-size: cover;
	width: 156.3636%;/*1720*/
	height: auto;
	aspect-ratio: 1720 / 753;
	position: absolute;
	top: -155px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.block04 .block_inner .tabs .tab{
	width: 16.6363%;/*183*/
}

.block04 .block_inner .tabs .tab p{
	display: flex;
	width: 100%;
	height: 85px;
	border: 1px solid #4a6d84;
	background: #fff;
	padding: 12px 15.3005% 0 8.1967%;/*28 15*/
	box-sizing: border-box;
	font-size: min(1.28vw, 1.9rem);
	line-height: 1.3684;
	color: #333333;
	cursor: pointer;
}

.block04 .block_inner .tabs .tab + .tab p{
	border-left: none;
}

.block04 .block_inner .tabs .tab.active p{
	background: #4a6d84;
	color: #fff;
}

.block04 .block_inner .tab-contents .tab-content:not(.active){
	display: none;
}

.block04 .block_inner .tab-contents .tab-content{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px 2em;
}

.block04 .block_inner .tab-contents .tab-content .custom_map{
	width: 100%;
	line-height: 0;
}

.block04 .block_inner .tab-contents .tab-content .custom_map iframe{
	width: 100%;
	height: auto;
	aspect-ratio: 1100 / 621;
	border: 0;
	display: block;
}

.block04 .block_inner .tab-contents .tab-content .link_btn02{
	width: 31.8181%;/*350*/
}

.block04 .block_inner .tab-contents .tab-content .link_btn02 a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 67px;
	border-radius: 33px;
	border: 4px solid #61c1be;
	background: url("../images/common/link_ico_ligr.webp")no-repeat #fff right 5.1428% center;/*18*/
	background-size: 8.5714% auto;/*30*/
	font-size: min(1.22vw, 1.8rem);
	line-height: 1;
	color: #333333;
	position: relative;
}

.block04 .block_inner .tab-contents .tab-content .link_btn02 a::before{
	content: '';
	background: url("../images/current_students/pdf_ico.webp")no-repeat;
	background-size: cover;
	width: 8.8571%;/*31*/
	height: auto;
	aspect-ratio: 31 / 38;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 8.5714%;/*30*/
	z-index: 1;
}

/**/

.block04 .block_inner .btn_area{
	width: 90.9090%;/*1000*/
	margin: 65px auto;
}

.block04 .block_inner .btn_area .reserv_btn{
	width: 41.0%;
	margin: 28px auto 0;
}

.block04 .block_inner .btn_area .reserv_btn a{
	display: flex;
	align-items: center;
	width: 100%;
	height: 80px;
	border-radius: 10px;
	background: url("../images/top/link_ico_wh_2.webp")no-repeat #ec5a24 right 6.0975% center;/*25*/
	background-size: 1.9512% auto;/*8*/
	padding-left: 21.9512%;/*90*/
	box-sizing: border-box;
	font-size: min(1.35vw, 2.0rem);
	line-height: 1.35;
	letter-spacing: 0.075em;
	color: #fff;
	font-feature-settings: 'palt';
	position: relative;
}

.block04 .block_inner .btn_area .reserv_btn a::before{
	content: '';
	background: url("../images/top/check_ico_1.webp")no-repeat;
	background-size: cover;
	width: 9.2682%;/*38*/
	height: auto;
	aspect-ratio: 38 / 28;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 7.5609%;/*31*/
}

/**/

.block04 .block_inner .present_wrap{
	width: 90.9090%;/*1000*/
	margin: 100px auto 0;
}

.block04 .block_inner .present_wrap h3.h3-midashi{
	font-size: min(1.69vw, 2.5rem);
	line-height: 1;
	color: #35a59f;
	text-align: center;
	padding-bottom: 16px;
	position: relative;
}

.block04 .block_inner .present_wrap h3.h3-midashi::before{
	content: '';
	background: #61c1be;
	width: 4.95%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.block04 .block_inner .present_wrap .present_area{
	width: 94.1%;
	margin: 25px auto;
	border: 2px solid #61c1be;
	border-radius: 20px;
	background: #fff;
	padding: 43px 0 52px;
}

.block04 .block_inner .present_wrap .present_area .flex_area{
	width: 89.0541%;/*838*/
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.block04 .block_inner .present_wrap .present_area .flex_area .photo{
	width: 45.3460%;/*380*/
	height: auto;
	aspect-ratio: 380 / 240;
	border-radius: 10px;
	overflow: hidden;
}

.block04 .block_inner .present_wrap .present_area .flex_area .photo img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.block04 .block_inner .present_wrap .present_area .flex_area .detail_area{
	width: 49.2840%;/*413*/
}

.block04 .block_inner .present_wrap .present_area .flex_area .detail_area p.txt_lv1{
	margin-top: 10px;
	font-size: min(1.69vw, 2.8rem);
	line-height: 1.4642;
	color: #e71c24;
}

.block04 .block_inner .present_wrap .present_area .flex_area .detail_area p.txt_lv2{
	margin-top: 14px;
	font-size: min(1.22vw, 1.8rem);
	line-height: 1.7222;
	color: #333333;
}

/*===================================
	.contact_wrap
=====================================*/

.contact_wrap{
	padding: 98px 0 145px;
}

.contact_wrap .wrap_inner .contact_area::after{
	content: '';
	background: #61C1BE;
	background: linear-gradient(90deg, rgba(97, 193, 190, 1) 0%, rgba(242, 232, 206, 1) 100%);
	width: 100vw;
	height: 62.5722%;/*346*/
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -2;
}
