@import url("https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,600;1,600&display=swap");
@-webkit-keyframes floatUp_6 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-6px);
		        transform: translateY(-6px);
	}
}
@keyframes floatUp_6 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-6px);
		        transform: translateY(-6px);
	}
}
@-webkit-keyframes floatUp_10 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
}
@keyframes floatUp_10 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
}
@-webkit-keyframes floatUp_15 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
}
@keyframes floatUp_15 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
}
@-webkit-keyframes floatUp_20 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
}
@keyframes floatUp_20 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
}
.is-fade > *:not(.is-not) {
	opacity: 0;
	-webkit-transform: translateY(30px);
	        transform: translateY(30px);
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade > .is-not {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade.fadeIn > * {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

.box-fade {
	opacity: 0;
	-webkit-transform: translateY(30px);
	        transform: translateY(30px);
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.box-fade.fadeIn {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

.p_hover a:hover, .btn_fix a:hover {
	opacity: 0.7;
}

.svg.c_white svg {
	fill: #fff;
}
.svg.c_black svg {
	fill: #000;
}

.img-fit img {
	width: 100%;
	height: 100%;
	-o-object-position: 50% 50%;
	   object-position: 50% 50%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.replace_img {
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
}

.l_tel {
	pointer-events: none;
}

@media screen and (max-width: 800px) {
	.l_tel {
		pointer-events: auto;
	}
}
.btn_01 {
	width: 350px;
	height: 65px;
	margin: 0 auto;
}
.btn_01._inv a {
	color: var(--c_key1);
	background-color: #fff;
	border-color: #fff;
}
@media screen and (min-width: 801px) {
	.btn_01._inv a:hover {
		border-color: var(--c_key1);
	}
}
.btn_01 a {
	color: var(--c_key1);
	font-size: 17px;
	font-weight: 500;
	width: 100%;
	height: 100%;
	border: 1px solid var(--c_key1);
	border-radius: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.btn_01 a:hover {
		color: #fff;
		background-color: var(--c_key1);
	}
}

.btn_fix {
	width: 218px;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 100;
}

@media screen and (max-width: 800px) {
	.btn_01 {
		width: 85.3334%;
	}
	.btn_01 a {
		color: #fff;
		background-color: var(--c_key1);
	}
	.btn_fix {
		width: 164px;
	}
}
.page_title {
	margin-bottom: 116px;
}
.page_title::before {
	content: "";
	display: block;
	position: absolute;
	top: 396px;
	right: 0;
	z-index: 1;
}
.page_title_inner {
	width: 1286px;
	position: relative;
	margin: 0 auto;
	background-image: url(../img/common/page_title_bg.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 611px;
}
.page_title_top {
	padding-top: 105px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.page_title_top h1 {
	color: #fff;
	font-size: 35px;
	font-weight: 600;
	line-height: 1.4286;
	width: 432px;
	aspect-ratio: 1/1;
	padding-top: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-ms-flex-line-pack: center;
	    align-content: center;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.page_title_top h1 small {
	font-size: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.page_title_top h1 small span {
	font-size: 16px;
	font-weight: 500;
}
.page_title_top_cont {
	color: var(--c_key1);
	width: 570px;
	margin-right: 45px;
	padding-top: 62px;
	position: relative;
	z-index: 2;
}
.page_title_top_cont .sub {
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 24px;
}
.page_title_top_cont .desc {
	font-size: 18px;
	font-weight: 500;
	line-height: 2.2223;
	letter-spacing: 0.03em;
}

@media screen and (max-width: 800px) {
	.page_title {
		margin-bottom: 45px;
	}
	.page_title::before {
		top: 183px;
		-webkit-transform-origin: 100% 0%;
		        transform-origin: 100% 0%;
		scale: 0.5;
	}
	.page_title_inner {
		width: 100%;
		background-image: url(../img/common/page_title_bg_sp.png);
		background-size: 370px auto;
	}
	.page_title_top {
		padding-top: 0;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.page_title_top h1 {
		font-size: 24px;
		line-height: 1.4584;
		width: 220px;
		margin-right: auto;
	}
	.page_title_top_cont {
		width: 90%;
		margin: 0 auto;
		padding-top: 88px;
	}
	.page_title_top_cont .sub {
		font-size: 20px;
		text-align: center;
		margin-bottom: 38px;
	}
	.page_title_top_cont .desc {
		font-size: 18px;
		line-height: 2;
	}
}
.hl01 {
	color: var(--c_key1);
	font-size: 30px;
	font-weight: 600;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.hl01 h1, .hl01 h2, .hl01 h3 {
	text-align: center;
	position: relative;
	padding: 5px 33px;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.hl01 h1::before, .hl01 h1::after, .hl01 h2::before, .hl01 h2::after, .hl01 h3::before, .hl01 h3::after {
	width: 5px;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	background-color: var(--c_key1);
	translate: 0 -50%;
}
.hl01 h1::before, .hl01 h2::before, .hl01 h3::before {
	left: 0;
}
.hl01 h1::after, .hl01 h2::after, .hl01 h3::after {
	right: 0;
}
.hl01 h1 small, .hl01 h2 small, .hl01 h3 small {
	font-size: 20px;
	display: block;
	margin-bottom: 5px;
}

@media screen and (max-width: 800px) {
	.hl01 {
		font-size: 24px;
	}
	.hl01 h1::before, .hl01 h1::after, .hl01 h2::before, .hl01 h2::after, .hl01 h3::before, .hl01 h3::after {
		width: 4px;
	}
	.hl01 h1 small, .hl01 h2 small, .hl01 h3 small {
		font-size: 16px;
	}
}
.event:not(._column) {
	width: 1364px;
	margin-left: auto;
	margin-right: auto;
}
.event_inner {
	width: 1380px;
	margin: 0 auto;
}
.event._column {
	padding: 0 0 100px;
	background-color: #6350CA;
}
.event._column h2 {
	color: #6350CA;
	font-size: 30px;
	font-weight: 600;
	width: 301px;
	aspect-ratio: 301/239;
	margin-left: 30px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	translate: 0 -36px;
}
.event._column h2 span {
	position: relative;
	z-index: 2;
}
.event._column h2::before {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #BFE3E0;
	-webkit-mask-image: url(../img/common/parts_oval.svg);
	        mask-image: url(../img/common/parts_oval.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	        mask-position: 0 0;
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	z-index: 1;
}
.event_list {
	margin: 0 auto 57px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: start;
}
.event_list_wrap {
	margin-bottom: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.event_list_wrap .event_list {
	width: 654px;
	margin: -100px 0 0;
}
.event_list_wrap .event_list li {
	color: #fff;
}
.event_list._large {
	width: 590px;
	margin-left: 30px;
}
.event_list._large li {
	width: 100%;
}
.event_list._large li .date {
	font-size: 22px;
}
.event_list._large li h3 {
	font-size: 24px;
	line-height: 1.4584;
}
.event_list li {
	width: 312px;
	margin-bottom: 32px;
}
.event_list li a {
	display: block;
}
@media screen and (min-width: 801px) {
	.event_list li a:hover .img img {
		scale: 1.1;
	}
}
.event_list li .img {
	aspect-ratio: 312/247;
	overflow: hidden;
	margin-bottom: 28px;
	-webkit-mask-image: url(../img/common/parts_oval.svg);
	        mask-image: url(../img/common/parts_oval.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
}
.event_list li .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}
.event_list li .date {
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 5px;
}
.event_list li h3 {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.5295;
}

@media screen and (max-width: 800px) {
	.event:not(._column) {
		width: 100%;
	}
	.event_inner {
		width: 100%;
	}
	.event._column {
		padding-bottom: 60px;
	}
	.event._column h2 {
		font-size: 21.4px;
		width: 165px;
		position: relative;
		margin-left: -15px;
		translate: 0 -15px;
		z-index: 2;
	}
	.event_list {
		width: 88.5334%;
		margin: 0 auto 33px;
	}
	.event_list_wrap {
		display: block;
		margin-top: -70px;
		margin-bottom: 30px;
	}
	.event_list_wrap .event_list {
		width: 88.5334%;
		margin: 0 auto;
	}
	.event_list._large {
		width: 90.6667%;
		margin: 0 auto 15px;
	}
	.event_list._large li .date {
		font-size: 18.7px;
	}
	.event_list._large li h3 {
		font-size: 20.4px;
		line-height: 1.4706;
	}
	.event_list li {
		width: 47.5904%;
		margin-bottom: 20px;
	}
	.event_list li .img {
		margin-bottom: 18px;
	}
	.event_list li .date {
		font-size: 11.7px;
		margin-bottom: 3px;
	}
	.event_list li h3 {
		font-size: 13.7px;
		line-height: 1.4234;
	}
}
.page_title::before {
	content: url('data:image/svg+xml;utf-8,<svg width="374" height="182" viewBox="0 0 374 182" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M372.962 117.76V101.8H300.602V117.76H326.521V181H347.161V117.76H372.962ZM373.962 118.76H348.161V182H325.521V118.76H299.602V100.8H373.962V118.76Z" fill="white"/><path d="M232.057 141.04L231.576 126.4H231.696L237.696 138.16L262.296 181H285.216V101.8H266.977V141.76L267.456 156.4H267.336L261.336 144.64L236.736 101.8H213.816V181H232.057V141.04ZM286.216 182H261.718L261.429 181.498L236.829 138.658L236.816 138.637L236.806 138.614L232.714 130.596L233.056 141.007L233.057 141.023V182H212.816V100.8H237.315L262.203 144.142L262.216 144.163L262.227 144.186L266.317 152.205L265.977 141.793V100.8H286.216V182Z" fill="white"/><path d="M192.653 101.8H172.013V181H192.653V101.8ZM193.653 182H171.013V100.8H193.653V182Z" fill="white"/><path d="M153.358 126.16C153.358 119.03 150.881 113.289 145.926 108.937L145.438 108.52C140.401 104.18 133.374 101.942 124.357 101.807L123.479 101.8V100.8C133.061 100.8 140.64 103.073 146.079 107.752L146.589 108.188C151.774 112.744 154.358 118.766 154.358 126.16C154.358 134.473 151.671 140.946 146.19 145.415C144.087 147.13 141.663 148.502 138.929 149.541L159.874 182H134.665L117.754 153.08H106.959V182H84.6787V100.8H123.479V101.8H85.6787V181H105.959V152.08H118.327L135.238 181H158.039L137.405 149.023C140.317 148.051 142.871 146.721 145.065 145.031L145.559 144.64C150.596 140.532 153.194 134.623 153.352 126.912L153.358 126.16ZM131.599 127.36C131.599 124.316 130.775 122.208 129.281 120.844L128.974 120.581C127.226 119.183 124.492 118.4 120.599 118.4H106.959V136.44H120.599V137.44H105.959V117.4H120.599C124.599 117.4 127.599 118.2 129.599 119.8C131.599 121.4 132.599 123.92 132.599 127.36L132.587 128.009C132.47 131.196 131.474 133.54 129.599 135.04L129.212 135.331C127.22 136.737 124.348 137.44 120.599 137.44V136.44C124.492 136.44 127.226 135.657 128.974 134.259L129.281 133.996C130.771 132.631 131.599 130.488 131.599 127.36Z" fill="white"/><path d="M68.8828 128.2C68.8828 122.775 67.7562 118.138 65.5039 114.29L65.2822 113.92C62.9572 110.123 59.6187 107.189 55.2666 105.118L54.8428 104.92C50.5678 102.97 45.4488 101.934 39.4863 101.812L38.2822 101.8V100.8C44.8651 100.8 50.5353 101.856 55.2578 104.01L55.6973 104.215C60.2081 106.361 63.7008 109.42 66.1357 113.397L66.3672 113.785C68.7264 117.816 69.8828 122.636 69.8828 128.2C69.8828 133.765 68.7262 138.583 66.3672 142.614L66.1357 143.002C63.7008 146.979 60.2081 150.038 55.6973 152.185L55.2578 152.39C50.5353 154.544 44.8651 155.6 38.2822 155.6H23.5625V182H0.922852V100.8H38.2822V101.8H1.92285V181H22.5625V154.6H38.2822L39.4863 154.588C45.25 154.47 50.2253 153.498 54.4121 151.672L54.8428 151.48C59.2603 149.465 62.6643 146.587 65.0547 142.845L65.2822 142.48C67.5322 138.805 68.7275 134.392 68.8682 129.24L68.8828 128.2ZM47.1221 128.2C47.1221 124.73 46.0758 122.344 44.1445 120.826L44.1289 120.814L44.1143 120.801C42.209 119.178 39.2442 118.28 35.043 118.28H23.5625V138.12H35.043V139.12H22.5625V117.28H35.043C39.3627 117.28 42.6028 118.2 44.7627 120.04C47.0026 121.8 48.1221 124.52 48.1221 128.2L48.1094 128.879C47.9782 132.221 46.8628 134.755 44.7627 136.48L44.5566 136.643C42.3988 138.294 39.2276 139.12 35.043 139.12V138.12C39.2505 138.12 42.2213 137.259 44.1279 135.707C46.0764 134.106 47.122 131.668 47.1221 128.2Z" fill="white"/><path d="M372.297 65.04H329.697V48.8398H362.337V33.8398H329.697V17.7598H370.737V1.7998H309.057V81H372.297V65.04ZM371.737 18.7598H330.697V32.8398H363.337V49.8398H330.697V64.04H373.297V82H308.057V0.799805H371.737V18.7598Z" fill="white"/><path d="M239.462 49.0801V1.7998H218.701V48.7197L218.71 49.7617C218.892 60.4421 221.889 68.4949 227.701 73.9199C233.514 79.2675 241.954 82.0253 253.022 82.1924L254.102 82.2002C265.417 82.2002 274.029 79.6101 279.938 74.4297L280.502 73.9199C286.314 68.4949 289.312 60.4421 289.493 49.7617L289.502 48.7197V1.7998H268.861V49.0801L268.847 50.1279C268.701 55.2842 267.467 59.1748 265.142 61.7998L264.913 62.0586C262.511 64.6863 258.907 66 254.102 66V65C258.876 65 262.232 63.6578 264.382 61.1494L264.388 61.1426L264.393 61.1367C266.645 58.5942 267.861 54.6381 267.861 49.0801V0.799805H290.502V48.7197C290.502 59.7368 287.639 68.2534 281.762 74.0938L281.184 74.6514C275.011 80.4073 265.923 83.2002 254.102 83.2002C242.356 83.2002 233.274 80.4061 227.024 74.6562L227.02 74.6514C220.751 68.801 217.701 60.0922 217.701 48.7197V0.799805H240.462V49.0801C240.462 54.6357 241.637 58.5932 243.811 61.1367L244.023 61.3701C246.259 63.7441 249.562 65 254.102 65V66L253.647 65.9961C248.993 65.9113 245.464 64.5123 243.062 61.7998C240.812 59.1748 239.616 55.2842 239.476 50.1279L239.462 49.0801Z" fill="white"/><path d="M205.537 65.04H165.817V1.7998H145.177V81H205.537V65.04ZM166.817 64.04H206.537V82H144.177V0.799805H166.817V64.04Z" fill="white"/><path d="M58.5459 0.799805H98.0742L98.9902 0.8125C108.388 1.00055 115.544 2.89473 120.287 6.65625H120.286C125.209 10.4793 127.626 16.0345 127.626 23.1602C127.626 27.8523 126.238 31.9573 123.445 35.4268L123.438 35.4365C121.369 37.9433 118.529 39.7485 114.976 40.8955C119.139 42.0255 122.452 43.9539 124.848 46.7295L125.145 47.0645C128.163 50.5552 129.666 54.7652 129.666 59.6396C129.666 66.7066 127.155 72.2944 122.083 76.2676L122.074 76.2734C117.024 80.1455 109.566 82 99.8662 82H58.5459V0.799805ZM106.546 57.5996C106.546 55.0393 105.719 53.2394 104.17 52.0273L104.159 52.0195L104.149 52.0107C102.566 50.703 100.039 49.96 96.3857 49.96H80.4658V65.4805H96.3857V66.4805H79.4658V48.96H96.3857C100.146 48.96 102.946 49.7202 104.786 51.2402C106.626 52.6802 107.546 54.7999 107.546 57.5996L107.535 58.1318C107.427 60.7522 106.511 62.7752 104.786 64.2002L104.43 64.4766C102.592 65.8124 99.9106 66.4805 96.3857 66.4805V65.4805C100.039 65.4805 102.566 64.7364 104.149 63.4287L104.434 63.1797C105.812 61.8991 106.546 60.0836 106.546 57.5996ZM104.506 25.5596C104.506 22.9082 103.671 21.0737 102.13 19.8672C100.542 18.6242 98.0427 17.9199 94.4658 17.9199H80.4658V33.2002H94.4658V34.2002H79.4658V16.9199H94.4658C101.826 16.9199 105.506 19.7999 105.506 25.5596L105.495 26.0918C105.272 31.4973 101.596 34.2002 94.4658 34.2002V33.2002C98.0427 33.2002 100.542 32.4959 102.13 31.2529C103.672 30.0464 104.506 28.2111 104.506 25.5596ZM59.5459 81H99.8662L100.759 80.9941C109.618 80.8863 116.368 79.1616 121.009 75.8193L121.466 75.4805C126.116 71.838 128.514 66.7687 128.659 60.2734L128.666 59.6396C128.666 54.8398 127.145 50.7603 124.105 47.4004C121.145 43.9604 116.626 41.84 110.546 41.04V40.9199C115.816 40.0674 119.772 38.1263 122.414 35.0967L122.666 34.7998C125.223 31.6223 126.542 27.8818 126.622 23.5781L126.626 23.1602C126.626 16.2803 124.306 11.0404 119.666 7.44043C115.026 3.76049 107.826 1.87986 98.0664 1.7998H59.5459V81Z" fill="white"/></svg>');
}
.page_title h1 {
	font-size: 44px;
}
.page_title h1 small {
	margin-bottom: -10px;
}

@media screen and (max-width: 800px) {
	.page_title {
		margin-bottom: 65px;
	}
}
/* ========================================

merit

======================================== */
.merit {
	margin-bottom: 124px;
}
.merit .hl01 {
	margin-bottom: 85px;
}
.merit_list {
	width: 1352px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.merit_list_item {
	color: var(--c_key1);
	width: 436px;
	height: 346px;
	position: relative;
	margin-bottom: 24px;
	padding-top: 44px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.merit_list_item:not(:nth-child(3n)) {
	margin-right: 22px;
}
.merit_list_item::before {
	width: 496px;
	aspect-ratio: 992/812;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: -15px;
	background-image: url(../img/school/merit_item_bg.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
	z-index: 0;
}
.merit_list_item .num {
	color: #F393C6;
	position: relative;
	margin-bottom: 10px;
	z-index: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.merit_list_item .num small {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 2px;
}
.merit_list_item .num em {
	font-family: "Work Sans", sans-serif;
	font-weight: 700;
	font-weight: 600;
	font-size: 50px;
}
.merit_list_item h3 {
	font-size: 24px;
	font-weight: 600;
	position: relative;
	margin-bottom: 18px;
	z-index: 1;
}
.merit_list_item .txt {
	font-size: 14px;
	font-weight: 500;
	line-height: 2;
	width: 270px;
	position: relative;
	margin: 0 auto;
	z-index: 1;
}

@media screen and (max-width: 800px) {
	.merit {
		overflow: hidden;
		margin-bottom: calc(65px - 5vw);
	}
	.merit .hl01 {
		font-size: 20px;
		margin-bottom: 40px;
	}
	.merit_list {
		width: 100%;
		padding-bottom: 5vw;
	}
	.merit_list_item {
		width: min(95%, 356px);
		height: auto;
		aspect-ratio: 992/812;
		margin: 0 auto 15px;
		padding-top: 28px;
	}
	.merit_list_item:not(:nth-child(3n)) {
		margin-right: auto;
	}
	.merit_list_item::before {
		width: 114%;
		left: 0;
		margin-left: -3.4666%;
	}
	.merit_list_item .num {
		margin-bottom: 10px;
	}
	.merit_list_item .num small {
		font-size: 13.3px;
		margin-bottom: 2px;
	}
	.merit_list_item .num em {
		font-size: 33.26px;
	}
	.merit_list_item h3 {
		font-size: 20px;
	}
	.merit_list_item .txt {
		font-size: 13px;
		width: 71%;
		line-height: 1.8462;
	}
}
/* ========================================

schedule

======================================== */
.schedule {
	width: 1200px;
	margin: 0 auto 170px;
	padding: 76px 0;
	background-color: #fff;
	border: 2px solid var(--c_key1);
	border-radius: 50px;
}
.schedule h2 {
	color: var(--c_key1);
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	width: 1000px;
	margin: 0 auto 70px;
	padding-bottom: 56px;
	border-bottom: 1px solid rgba(29, 32, 136, 0.35);
}
.schedule_list {
	color: var(--c_key1);
	width: 1000px;
	margin: 0 auto;
}
.schedule_list_item {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.schedule_list_item:not(:last-child) {
	margin-bottom: 30px;
}
.schedule_list_item .img {
	width: 356px;
	margin-top: 50px;
}
.schedule_list_item .img img {
	position: relative;
	z-index: 1;
}
.schedule_list_item .img span {
	width: 150px;
	display: block;
	position: absolute;
	top: -6px;
	right: -60px;
	z-index: 2;
}
.schedule_list_item_cont {
	width: 480px;
}
.schedule_list_item_cont .day {
	font-family: "Work Sans", sans-serif;
	font-weight: 700;
	font-weight: 600;
	color: #fff;
	font-size: 20px;
	width: 88px;
	height: 35px;
	margin-bottom: 32px;
	border-radius: 18px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.schedule_list_item_cont .day._or {
	background-color: #FD9E22;
}
.schedule_list_item_cont .day._gr {
	background-color: #39B54A;
}
.schedule_list_item_cont h3 {
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 26px;
}
.schedule_list_item_cont .txt {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
}
.schedule_list_item_cont .link {
	font-size: 13px;
	font-weight: 600;
	text-align: right;
	margin-top: 10px;
}
.schedule_list_item_cont .link a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.schedule_list_item_cont .link a:hover ._text {
		border-color: var(--c_key1);
	}
	.schedule_list_item_cont .link a:hover ._arrow {
		background-color: var(--c_key1);
	}
	.schedule_list_item_cont .link a:hover ._arrow::before {
		border-color: #fff;
	}
}
.schedule_list_item_cont .link ._text {
	padding-bottom: 3px;
	border-bottom: 1px solid #fff;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}
.schedule_list_item_cont .link ._arrow {
	width: 36px;
	aspect-ratio: 1/1;
	display: block;
	margin-left: 10px;
	border: 1px solid var(--c_key1);
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}
.schedule_list_item_cont .link ._arrow::before {
	width: 9px;
	height: 9px;
	content: "";
	display: block;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: translateX(-2px) scaleX(0.8) rotate(45deg);
	        transform: translateX(-2px) scaleX(0.8) rotate(45deg);
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

@media screen and (max-width: 800px) {
	.schedule {
		width: 89.3334%;
		margin-bottom: 60px;
		padding: 38px 0 48px;
		border-radius: 30px;
	}
	.schedule h2 {
		font-size: 20px;
		width: 84.5922%;
		margin-bottom: 25px;
		padding-bottom: 22px;
	}
	.schedule_list {
		width: 83.988%;
	}
	.schedule_list_item .img {
		width: 100%;
		position: absolute;
		margin: 0;
		top: 80px;
	}
	.schedule_list_item .img span {
		width: 110px;
		top: -77px;
		right: -11px;
	}
	.schedule_list_item_cont {
		width: 100%;
		margin: 0 auto;
	}
	.schedule_list_item_cont .day {
		font-size: 15.5px;
		width: 70px;
		height: 28px;
		margin-bottom: 17px;
	}
	.schedule_list_item_cont h3 {
		font-size: 18px;
		margin-bottom: 17px;
		margin-bottom: 0;
	}
	.schedule_list_item_cont .txt {
		margin-top: calc(51vw + 38px);
	}
}
/* ========================================

recommend

======================================== */
.recommend {
	width: 1200px;
	margin: 105px auto 75px;
	padding: 74px 0 66px;
	background-color: #fff;
	border: 2px solid var(--c_key1);
	border-radius: 50px;
}
.recommend h2 {
	color: var(--c_key1);
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	width: 1000px;
	margin: 0 auto 55px;
	padding-bottom: 50px;
	border-bottom: 1px solid rgba(29, 32, 136, 0.35);
}
.recommend_list {
	width: 1000px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.recommend_list li {
	color: #fff;
	width: 192px;
	height: 90px;
	margin-bottom: 12px;
	background-color: #6350CA;
	border-radius: 8px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.recommend_list li .img {
	width: 59px;
}
.recommend_list li .txt {
	font-size: 11.67px;
	font-weight: 500;
	line-height: 1.5767;
	width: 98px;
	margin-left: 8px;
}

@media screen and (max-width: 800px) {
	.recommend {
		width: 89.3334%;
		margin-top: 56px;
		margin-bottom: 40px;
		padding: 38px 0 40px;
		border-radius: 30px;
	}
	.recommend h2 {
		font-size: 20px;
		width: 84.5922%;
		margin-bottom: 26px;
		padding-bottom: 22px;
	}
	.recommend_list {
		width: 84.5922%;
	}
	.recommend_list li {
		width: 48.5715%;
		height: auto;
		min-height: 65px;
		margin-bottom: 2.1149%;
		padding: 6px 0;
	}
	.recommend_list li .img {
		width: 30.8824%;
	}
	.recommend_list li .txt {
		width: 55.8824%;
		font-size: 10.11px;
		font-weight: 500;
		line-height: 1.2859;
	}
}
/* ========================================

outline

======================================== */
.outline {
	color: var(--c_key1);
	width: 1200px;
	margin: 105px auto 140px;
	padding: 74px 0 66px;
	background-color: #fff;
	border: 2px solid var(--c_key1);
	border-radius: 50px;
}
.outline_inner {
	width: 1000px;
	margin: 0 auto;
}
.outline_top {
	margin-bottom: 18px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.outline_item h2 {
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 38px;
	padding: 0 0 4px 22px;
	border-left: 5px solid var(--c_key1);
}
.outline_item._fee {
	width: 480px;
}
.outline_item._fee .fee01 {
	color: rgba(0, 0, 0, 0.5);
	font-size: 27.6px;
	font-weight: 600;
	margin-bottom: 27px;
}
.outline_item._fee .fee01 em {
	font-size: 33px;
}
.outline_item._fee .fee02 .limit {
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	width: 304px;
	height: 39px;
	margin-bottom: 5px;
	background-color: #FD9E22;
	border-radius: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.outline_item._fee .fee02 .price {
	font-size: 50.5px;
	font-weight: 600;
}
.outline_item._fee .fee02 .price em {
	font-family: "Work Sans", sans-serif;
	font-weight: 700;
	font-size: 87px;
	margin-right: 10px;
}
.outline_item._fee .inquiry {
	margin-top: -20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.outline_item._fee .inquiry h2 {
	margin-bottom: 32px;
}
.outline_item._fee .inquiry .txt {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 30px;
}
.outline_item._fee .inquiry .img {
	width: 172px;
}
.outline_item._place {
	width: 470px;
}
.outline_item._place dl {
	margin-bottom: 36px;
	padding-left: 26px;
}
.outline_item._place dl dt {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}
.outline_item._place dl dd {
	font-size: 18px;
	font-weight: 500;
}
.outline_item._place .map {
	width: 100%;
	height: 296px;
}
.outline_item._place .map iframe {
	width: 100%;
	height: 100%;
}
.outline_item._teacher ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.outline_item._teacher ul li {
	width: 218px;
	text-align: center;
}
.outline_item._teacher ul li .img {
	margin-bottom: 20px;
}
.outline_item._teacher ul li .name {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 20px;
}
.outline_item._teacher ul li .name small {
	font-size: 16.5px;
	font-weight: 500;
	display: block;
	margin-bottom: 6px;
}
.outline_item._teacher ul li .course {
	font-size: 16px;
	font-weight: 500;
}
.outline_item._teacher ul li .course span {
	font-size: 14px;
	width: 90px;
	height: 27px;
	display: block;
	margin: 0 auto 12px;
	background-color: #C0E3F4;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

@media screen and (max-width: 800px) {
	.outline {
		width: 89.3334%;
		margin: 0 auto 60px;
		padding: 38px 0 15px;
		border-radius: 30px;
	}
	.outline_inner {
		width: 80.9668%;
	}
	.outline_top {
		display: block;
	}
	.outline_item h2 {
		font-size: 18px;
		margin-bottom: 24px;
		padding-left: 10px;
		border-width: 3px;
	}
	.outline_item._fee {
		width: 100%;
	}
	.outline_item._fee .fee01 {
		font-size: 18px;
		text-align: center;
		margin-bottom: 14px;
	}
	.outline_item._fee .fee01 em {
		font-size: 20px;
	}
	.outline_item._fee .fee02 {
		margin-bottom: 10px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.outline_item._fee .fee02 .limit {
		font-size: 15.6px;
		width: 88.806%;
		height: 28px;
	}
	.outline_item._fee .fee02 .price {
		font-size: 38.8px;
	}
	.outline_item._fee .fee02 .price em {
		font-size: 67px;
	}
	.outline_item._fee .inquiry {
		margin-top: 0;
		margin-bottom: 38px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.outline_item._fee .inquiry h2 {
		margin-bottom: 20px;
	}
	.outline_item._fee .inquiry .img {
		width: 87.6866%;
		margin-bottom: 11px;
	}
	.outline_item._fee .inquiry_cont {
		width: 100%;
	}
	.outline_item._fee .inquiry_cont .txt {
		font-size: 17.5px;
		line-height: 1.5029;
		padding-left: 13px;
	}
	.outline_item._place {
		width: 100%;
		margin-bottom: 38px;
	}
	.outline_item._place h2 {
		margin-bottom: 20px;
	}
	.outline_item._place dl {
		margin-bottom: 20px;
		padding-left: 13px;
	}
	.outline_item._place dl dt {
		font-size: 17.5px;
		margin-bottom: 10px;
	}
	.outline_item._place dl dd {
		font-size: 15.7px;
	}
	.outline_item._place .map {
		width: 94.0299%;
		height: 42.6667vw;
		margin-left: auto;
	}
	.outline_item._teacher h2 {
		margin-bottom: 20px;
	}
	.outline_item._teacher ul {
		width: calc(100% - 10px);
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		margin-left: 10px;
	}
	.outline_item._teacher ul li {
		width: 46.875%;
		margin-bottom: 30px;
	}
	.outline_item._teacher ul li .img {
		margin-bottom: 10px;
	}
	.outline_item._teacher ul li .name {
		font-size: 14px;
		margin-bottom: 12px;
	}
	.outline_item._teacher ul li .name small {
		font-size: 10px;
		margin-bottom: 4px;
	}
	.outline_item._teacher ul li .course {
		font-size: 10px;
	}
	.outline_item._teacher ul li .course span {
		font-size: 10px;
		width: 56px;
		height: 17px;
		margin-bottom: 8px;
	}
}