@charset "UTF-8";
/*
# CSS style
---
全体
*/
/*----------------------------
* common
*----------------------------*/
html,
body {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	color: #333;
	font-size: 16px;
	line-height: 1.875;
}

@media (max-width: 767px) {
	html,
	body {
		font-size: 14px;
		line-height: 1.785;
	}
}

@media screen and (max-width: 767px) {
	body {
		min-width: initial;
	}
}

html,
body,
textarea,
input,
select,
button {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MSPゴシック",
		sans-serif;
}

a {
	transition: all 0.3s;
	color: #333;
	text-decoration: underline;
}

a.hover {
	-webkit-tap-highlight-color: transparent;
}

a.hover:hover {
	text-decoration: none;
}

@media screen and (min-width: 767px) {
	a:hover:hover {
		text-decoration: none;
	}
}

img {
	-ms-interpolation-mode: bicubic;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/*----------------------------
* header
*----------------------------*/
#lo_header {
	position: relative;
	width: 100%;
	height: 160px;
}

@media (max-width: 1350px) {
	#lo_header {
		height: 100px;
	}
}

@media (max-width: 767px) {
	#lo_header {
		height: 60px;
	}
}

#lo_header .menuPC {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding-top: 68px;
}

@media (max-width: 1350px) {
	#lo_header .menuPC {
		padding-top: 30px;
	}
}
/* 240520 追加 ここから */
#lo_header .menuPC {
	padding-top: 0;
}
/* 240520 追加 ここまで */
#lo_header .menuPC .sty_logo_box {
	display: block;
	width: 245px;
	padding-left: 60px;
	text-align: left;
}

@media (max-width: 1520px) {
	#lo_header .menuPC .sty_logo_box {
		padding-left: 30px;
	}
}

@media (max-width: 1350px) {
	#lo_header .menuPC .sty_logo_box {
		width: 180px;
	}
}
/* 240520 追加 ここから */
#lo_header .menuPC .sty_logo_box {
	padding-top: 12px;
}
/* 240520 追加 ここまで */
#lo_header .menuPC .sty_logo_box img {
	width: 100%;
}

#lo_header .menuPC .sty_logo_box:hover {
	opacity: 0.7;
}

#lo_header .menuPC .sty_nav_box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	width: calc(100% - 340px);
	margin-right: 60px;
	padding-top: 32px;
}

@media (max-width: 1520px) {
	#lo_header .menuPC .sty_nav_box {
		margin-right: 30px;
	}
}

@media (max-width: 1350px) {
	#lo_header .menuPC .sty_nav_box {
		width: calc(100% - 275px);
		padding-top: 30px;
	}
}
/* 240520 追加 ここから */
#lo_header .menuPC .sty_nav_box {
	width: unset;
	margin-right: 320px;
	padding-top: 0;

	@media (max-width: 1350px) {
		margin-right: 240px;
		margin-right: min(240px, calc(240 / 1350 * 100vw));
	}

	@media screen and (max-width: 991.98px) {
		margin-right: 20vw;
	}
}
/* 240520 追加 ここまで */
#lo_header .menuPC .sty_nav_box ul.sty_menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}

#lo_header .menuPC .sty_nav_box ul.sty_menu li a {
	position: relative;
	position: relative;
	margin-right: 3em;
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 1520px) {
	#lo_header .menuPC .sty_nav_box ul.sty_menu li a {
		margin-right: 1.8em;
		font-size: 15px;
	}
}

@media (max-width: 1350px) {
	#lo_header .menuPC .sty_nav_box ul.sty_menu li a {
		/* 240523 追加 ここから */
		display: block;
		height: 100%;
		margin-right: 1.5em;
		font-size: 14px;
		line-height: 1.2;
		/* 240523 追加 ここまで */
	}
}

/* 240520 変更 ここから */
/* #lo_header .menuPC .sty_nav_box ul.sty_menu li a:hover { */
#lo_header .menuPC .sty_nav_box ul.sty_menu > li a:hover {
	color: #333;
}
/* #lo_header .menuPC .sty_nav_box ul.sty_menu li a:hover:after { */
#lo_header .menuPC .sty_nav_box ul.sty_menu > li a:hover::after {
	transform: scale(1, 1);
}
/* 240520 変更 ここまで */
#lo_header .menuPC .sty_nav_box ul.sty_menu li a::after {
	content: "";
	position: absolute;
	bottom: -6px;
	left: 0;
	width: 100%;
	height: 2px;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform 0.3s;
	background: linear-gradient(to right, #029f4e, #1aa85f);
}

#lo_header .menuPC .sty_nav_box ul.sty_menu li:last-child a {
	margin-right: 0;
}

#lo_header .menuPC .sty_nav_box ul.sty_menu li.current a {
	color: #009e4d;
}
/* 240523 追加 ここから */
@media screen and (min-width: 992px) {
	#lo_header .menuPC .sty_nav_box ul.sty_menu li a br {
		display: none;
	}
}
/* 240523 追加 ここまで */
#lo_header .menuPC .btn_wrap {
	position: absolute;
	top: 0;
	right: 0;
}
/* 240520 追加 ここから */
#lo_header .menuPC .btn_wrap {
	position: fixed;
	z-index: 999;
	right: 30px;
	padding: 4px;
	border-radius: 8px;
}
/* 240520 追加 ここまで */
#lo_header .menuPC .btn_wrap ul {
	display: flex;
	flex-wrap: wrap;
}

#lo_header .menuPC .btn_wrap ul li.hp a {
	display: block;
	width: 280px;
	height: 60px;
	margin-right: 0;
	padding: 0 10px 0 0;
	background: #009e4d;
	color: #fff;
	font-size: 16px;
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 60px;
	text-decoration: none;
}

@media (max-width: 1350px) {
	#lo_header .menuPC .btn_wrap ul li.hp a {
		width: 200px;
		height: 50px;
		font-size: 15px;
		line-height: 50px;
	}
}

#lo_header .menuPC .btn_wrap ul li.hp a span {
	position: relative;
}

#lo_header .menuPC .btn_wrap ul li.hp a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -16px;
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#lo_header .menuPC .btn_wrap ul li.hp a:hover {
	opacity: 0.7;
}

#lo_header .menuPC .btn_wrap ul li.hp a:hover span::after {
	right: -19px;
}

#lo_header .menuPC .btn_wrap ul li.contact a {
	display: block;
	width: 280px;
	height: 60px;
	margin-right: 0;
	padding: 0 10px 0 0;
	/* 240520 追加 ここから */
	border-radius: 8px;
	background: #e5231f;
	color: #fff;
	font-size: 16px;
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 60px;
	text-align: center;
	text-decoration: none;
	/* 240520 追加 ここまで */
}

@media (max-width: 1350px) {
	#lo_header .menuPC .btn_wrap ul li.contact a {
		width: 200px;
		/* 240523 追加 ここから */
		width: min(200px, calc(200 / 1350 * 100vw));
		/* 240523 追加 ここまで */
		height: 50px;
		font-size: 15px;
		line-height: 50px;
	}
}

#lo_header .menuPC .btn_wrap ul li.contact a span {
	position: relative;
}

#lo_header .menuPC .btn_wrap ul li.contact a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -16px;
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#lo_header .menuPC .btn_wrap ul li.contact a:hover {
	opacity: 0.7;
}

#lo_header .menuPC .btn_wrap ul li.contact a:hover span::after {
	right: -19px;
}

.smp_menu {
	width: 100%;
}

.smp_menu .header_inner_smp {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 60px;
}

.smp_menu .header_inner_smp .header_logo {
	width: 160px;
	padding: 10px 0 7px 15px;
}

.smp_menu .header_inner_smp .menu_wrap_smp {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

/*ハンバーガー*/
#globalMenuSp {
	/*margin-left: -15px;*/
	display: none;
	z-index: 2500;
	width: 100vw;
	transition:
		opacity 0.6s ease,
		visibility 0.6s ease;
	background: #009e4d;
	color: #333;
	text-align: center;
	/*padding-top: 30px;*/
}

#globalMenuSp ul {
	width: 100vw;
	height: auto;
}

@media (max-width: 768px) {
	#globalMenuSp ul {
		padding: 10px 0 20px;
	}
}

#globalMenuSp ul li {
	width: 100%;
	padding: 0;
	list-style-type: none;
	transition: 0.4s all;
	font-size: 16px;
	font-weight: 700;
}

#globalMenuSp ul li:last-child {
	padding-bottom: 0;
}

#globalMenuSp ul li:hover {
	background: #cce5dd;
}

#globalMenuSp ul li a {
	display: block;
	padding: 0.6em 0 0.6em 30px;
	color: #fff;
	text-align: left;
	text-decoration: none;
}

#globalMenuSp.active {
	display: block;
}

#globalMenuSp .btn_wrap {
	width: calc(100% - 20px);
	margin: 0 auto;
}

#globalMenuSp .btn_wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	padding: 0 0 50px;
}

#globalMenuSp .btn_wrap ul li {
	width: 50%;
	/* 240520 追加 ここから */
	@media screen and (max-width: 767.98px) {
		width: 100%;
	}
	/* 240520 追加 ここまで */
}

#globalMenuSp .btn_wrap ul li a {
	height: 50px;
	font-size: 16px;
	line-height: 50px;
	text-align: center;
}

#globalMenuSp .btn_wrap ul li.hp a {
	display: block;
	margin-right: 0;
	padding: 0;
	background: #fff;
	color: #009e4d;
	font-style: normal;
	font-weight: 500;
	text-decoration: none;
}

#globalMenuSp .btn_wrap ul li.contact a {
	display: block;
	margin-right: 0;
	padding: 0 0 0 0;
	background: #e5231f;
	color: #fff;
	font-style: normal;
	font-weight: 500;
	text-decoration: none;
}

.navToggle {
	display: block;
	position: absolute;
	z-index: 52;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	background-color: #009e4d;
	text-align: center;
	cursor: pointer;
}

.navToggle span {
	display: block;
	position: absolute;
	left: 16px;
	width: 30px;
	height: 2px;
	transition: 0.3s ease-in-out;
	background: #fff;
}

.navToggle span:nth-child(1) {
	top: 20px;
}

.navToggle span:nth-child(2) {
	top: 28px;
}

.navToggle span:nth-child(3) {
	top: 38px;
}

.navToggle.active span:nth-child(1) {
	top: 30px;
	left: 16px;
	transform: rotate(-45deg);
	background: #fff;
}

.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
	top: 30px;
	transform: rotate(45deg);
	background: #fff;
}

@media (min-width: 768px) {
	.smp_menu {
		display: none !important;
	}
}
/* @media (max-width: 767px) { ※ 240523 変更 */
@media (max-width: 767.98px) {
	.menuPC {
		display: none !important;
	}
}

.smp_menu .nav-list {
	position: relative;
	padding: 0.8em 0;
	background-color: #009e4d;
	text-align: left;
	cursor: pointer;
}

.smp_menu .nav-list:hover {
	background-color: #cce5dd;
}

.smp_menu .nav-list > dt.btn_detail {
	display: inline-block;
	width: 100%;
	padding: 0;
	color: #fff;
	font-size: 18px;
}

.smp_menu .nav-list > dt.btn_detail span {
	position: relative;
	margin-left: 50px;
}

.smp_menu .nav-list > dt.btn_detail span::after {
	content: "";
	position: absolute;
	top: 10px;
	right: -40px;
	width: 17px;
	height: 10px;
	transform: scale(1, -1);
	background: url(../../e-learning/img/arrow03.svg) no-repeat;
	background-size: cover;
}

.smp_menu .nav-list > dt.btn_detail.active + dd {
	display: block;
}

.smp_menu .nav-list dd.close {
	display: none;
}

.smp_menu .nav-list dd > div {
	padding: 0;
	text-align: left;
}

.smp_menu .nav-list dd > div span {
	position: relative;
}

.smp_menu .nav-list > dt.btn_detail.active span::after {
	content: "";
	position: absolute;
	top: 10px;
	right: -40px;
	width: 17px;
	height: 10px;
	transform: scale(1, 1);
	background: url(../../e-learning/img/arrow03.svg) no-repeat;
	background-size: cover;
}

.smp_menu ul li ul.submenu {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	width: 100% !important;
	height: auto !important;
	margin-bottom: -0.8em;
	padding-bottom: 0 !important;
}

.smp_menu ul li ul.submenu li {
	width: 100%;
	font-size: 16px !important;
	text-align: left;
	text-indent: 1.5em;
}

.smp_menu ul li ul.submenu li a:hover {
	background-color: #009e4d;
}

.smp_menu ul li ul.submenu li:first-child {
	margin-top: 0.8em;
}

/*----------------------------
* footer
*----------------------------*/
#lo_footer {
	width: 100%;
	padding: 35px 0;
	background-color: #009e4d;
}

#lo_footer .footer_inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0 60px;
}

#lo_footer .footer_inner ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

#lo_footer .footer_inner ul li a {
	position: relative;
	margin-right: 32px;
	color: #fff;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	text-decoration: none;
}

#lo_footer .footer_inner ul li a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -15px;
	bottom: 0;
	width: 1px;
	height: 16px;
	margin: auto;
	background-color: #fff;
}

#lo_footer .footer_inner ul li a:hover {
	opacity: 0.7;
}

#lo_footer .footer_inner ul li:first-child a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15px;
	width: 1px;
	height: 16px;
	margin: auto;
	background-color: #fff;
}

#lo_footer .footer_inner ul li:last-child a {
	position: relative;
}

#lo_footer .footer_inner .copy {
	color: #fff;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
}

@media (max-width: 767px) {
	#lo_footer {
		padding: 7% 0;
	}

	#lo_footer .footer_inner {
		justify-content: center;
		padding: 0 3%;
	}

	#lo_footer .footer_inner section {
		padding: 100px 0;
	}
}

@media (max-width: 767px) and (max-width: 1350px) {
	#lo_footer .footer_inner section {
		padding: 70px 0;
	}
}

@media (max-width: 767px) and (max-width: 767px) {
	#lo_footer .footer_inner section {
		padding: 10% 0;
	}
}

@media (max-width: 767px) {
	#lo_footer .footer_inner ul {
		justify-content: center;
		width: 90%;
		margin: 0 auto;
	}
}

@media (max-width: 767px) and (max-width: 375px) {
	#lo_footer .footer_inner ul {
		width: 100%;
	}
}

@media (max-width: 767px) {
	#lo_footer .footer_inner ul li a {
		margin: 0 15px;
		font-size: 12px;
	}

	#lo_footer .footer_inner ul li:nth-child(3) a::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: -15px;
		width: 1px;
		height: 16px;
		margin: auto;
		background-color: #fff;
	}

	#lo_footer .footer_inner .copy {
		margin-bottom: 7px;
	}
}
/* 240520 追加 ここから */
.eltop ~ #lo_footer {
	background-color: #fff;
}

.eltop ~ #lo_footer .footer_inner .copy,
.eltop ~ #lo_footer .footer_inner ul li a {
	color: #333;
}

.eltop ~ #lo_footer .footer_inner ul li:first-child a::before,
.eltop ~ #lo_footer .footer_inner ul li a::after {
	background-color: #333;
}
/* 240520 追加 ここまで */

/*----------------------------
* contents
*----------------------------*/
.lo_section {
	padding: 50px 0 70px;
}

.lo_article + .lo_article {
	margin-top: 30px;
}

.lo_article .lo_article_title {
	display: flex;
	position: relative;
	align-items: center;
	max-width: 100%;
	padding: 0 0 15px;
}

.lo_white_wrap .lo_section_inner .lo_article {
	padding: 50px;
	border-radius: 10px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.lo_white_wrap {
		padding: 0 !important;
	}

	.lo_white_wrap .lo_section_inner {
		padding: 0 !important;
	}

	.lo_white_wrap .lo_section_inner .lo_article {
		padding: 50px 20px;
		border-radius: 0;
	}
}

.bg_green01 {
	background-color: #edf6f3;
}

.bg_green02 {
	background-color: #cce5dd;
}

.bg_white {
	background-color: #fff;
}

.bg_gray {
	background-color: #f9f9f9;
}

.txt_pink {
	color: #edf6f3;
}

.txt_blue {
	color: #e5231f;
}

.sty_triangle,
.sty_triangle02,
.sty_triangle_white {
	position: relative;
	padding-top: 150px !important;
}

.sty_triangle::before,
.sty_triangle02::before,
.sty_triangle_white::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 50%;
	width: 0;
	height: 0;
	transform: translateX(-50%);
	border-width: 80px 150px 0 150px;
	border-style: solid;
	border-color: #017f4a transparent transparent transparent;
}

@media (max-width: 767px) {
	.sty_triangle,
	.sty_triangle02,
	.sty_triangle_white {
		padding-top: 75px !important;
	}

	.sty_triangle::before,
	.sty_triangle02::before,
	.sty_triangle_white::before {
		border-width: 46px 75px 0 75px;
	}
}

.sty_triangle02::before {
	border-color: #02b958 transparent transparent transparent;
}

.sty_triangle_white::before {
	border-color: #fff transparent transparent transparent;
}

/* ---------------------------------------------------------------------------
 * アニメーション
--------------------------------------------------------------------------- */
.sa {
	transition: all 0.5s ease;
	opacity: 0;
}

.sa.show {
	transform: none;
	opacity: 1;
}

.sa--lr {
	transform: translate(-100px, 0);
}

.sa--rl {
	transform: translate(100px, 0);
}

.sa--up {
	transform: translate(0, 100px);
}

.sa--down {
	transform: translate(0, -100px);
}

.sa--scaleUp {
	transform: scale(0.5);
}

.sa--scaleDown {
	transform: scale(1.5);
}

.sa--rotateL {
	transform: rotate(180deg);
}

.sa--rotateR {
	transform: rotate(-180deg);
}

@keyframes fade {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.main_wrap {
	position: relative;
	width: calc(100% - 120px);
	/* 240523 追加 ここから */
	min-height: 340px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	/* 240523 追加 ここまで */
}

@media (max-width: 1520px) {
	.main_wrap {
		width: calc(100% - 60px);
	}
}

@media (max-width: 767px) {
	.main_wrap {
		width: calc(100% - 30px);
		margin: 15px auto 0;
		border-radius: 15px 15px 5px 5px;
	}
}

.main_wrap::before {
	content: "";
	display: block;
	padding-top: 32.5%;
}

@media (max-width: 767px) {
	.main_wrap::before {
		padding-top: 100%;
	}
}

.main_wrap .img_wrap {
	position: absolute;
	top: 11%;
	right: 2.7%;
	width: 60%;
}
/* 240523 追加 ここから */
@media screen and (max-width: 991.98px) {
	.main_wrap .img_wrap {
		top: 32%;
		width: 45%;
	}
}
/* 240523 追加 ここまで */
@media (max-width: 767px) {
	.main_wrap .img_wrap {
		top: 43%;
		left: 10%;
		width: 80%;
	}
}

.main_wrap .img_wrap img {
	width: 100%;
}

.main_wrap .text_wrap {
	position: absolute;
	top: 20%;
	left: 4%;
	width: 34%;
	/* 240523 追加 ここから */
	min-width: 354px;
	/* 240523 追加 ここまで */
}

@media (max-width: 767px) {
	.main_wrap .text_wrap {
		top: 7%;
		left: 7%;
		width: 86%;
		min-width: unset;
	}
}

.main_wrap .text_wrap p {
	color: #fff;
	font-style: normal;
	font-weight: 700;
	text-align: center;
}

.main_wrap .text_wrap p.txt01 {
	font-size: 1.4vw;
}

@media (max-width: 1180px) {
	.main_wrap .text_wrap p.txt01 {
		font-size: 17px;
	}
}

@media (max-width: 767px) {
	.main_wrap .text_wrap p.txt01 {
		font-size: 3.6vw;
	}
}

.main_wrap .text_wrap p.txt01 span {
	position: relative;
}

.main_wrap .text_wrap p.txt01 span::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: -20px;
	width: 2px;
	height: 100%;
	transform: rotate(-25deg);
	background-color: #fff;
}

@media (max-width: 767px) {
	.main_wrap .text_wrap p.txt01 span::before {
		left: -15px;
	}
}

.main_wrap .text_wrap p.txt01 span::after {
	content: "";
	display: block;
	position: absolute;
	right: -15px;
	bottom: 0;
	width: 2px;
	height: 100%;
	transform: rotate(25deg);
	background-color: #fff;
}

@media (max-width: 767px) {
	.main_wrap .text_wrap p.txt01 span::after {
		right: -15px;
	}
}

.main_wrap .text_wrap p.txt02 {
	font-size: 3.7vw;
	line-height: 1.4;
}

@media (max-width: 1180px) {
	.main_wrap .text_wrap p.txt02 {
		font-size: 44px;
	}
}

@media (max-width: 767px) {
	.main_wrap .text_wrap p.txt02 {
		margin-top: 2%;
		font-size: 8vw;
		line-height: 1.3;
	}
}

.main_wrap .apply_wrap {
	position: absolute;
	bottom: -10%;
	left: 5%;
	width: 30%;
	/* 240523 追加 ここから */
	min-width: 314px;
	padding: 1% 3% 2.5%;
	border-radius: 20px;
	background-color: #fff;
	box-shadow: 0 0 7px rgba(16, 165, 88, 0.35);
	/* 240523 追加 ここまで */
}

@media (max-width: 767px) {
	.main_wrap .apply_wrap {
		z-index: 10;
		top: 86%;
		bottom: inherit;
		left: 5%;
		width: 90%;
		border-radius: 15px;
	}
}

.main_wrap .apply_wrap .txt {
	margin-bottom: 2%;
	font-size: 1.3vw;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 1180px) {
	.main_wrap .apply_wrap .txt {
		font-size: 17px;
	}
}

@media (max-width: 767px) {
	.main_wrap .apply_wrap .txt {
		margin-bottom: 0;
	}
}

.main_wrap .apply_wrap .txt span {
	margin: 0 1% 0 5%;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 2.4vw;
	font-weight: 700;
}

@media (max-width: 1180px) {
	.main_wrap .apply_wrap .txt span {
		font-size: 27px;
	}
}

.main_wrap .apply_wrap .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	padding: 1.5% 10px 1.5% 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #e5231f;
	color: #fff;
	font-size: 1.8vw;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 1350px) {
	.main_wrap .apply_wrap .btn a {
		padding: 8px 10px 8px 0;
		font-size: 22px;
	}
}

@media (max-width: 767px) {
	.main_wrap .apply_wrap .btn a {
		font-size: 24px;
	}
}

.main_wrap .apply_wrap .btn a span {
	position: relative;
}

.main_wrap .apply_wrap .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: -20px;
	width: 13px;
	height: 13px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.main_wrap .apply_wrap .btn a:hover {
	opacity: 0.7;
}

.main_wrap .apply_wrap .btn a:hover span::after {
	right: -25px;
}

.index {
	margin: 120px 0 0;
}

@media (max-width: 1350px) {
	.index {
		margin: 80px 0 0;
	}
}

@media (max-width: 1350px) {
	.index {
		margin: 13vh 0 0;
	}
}

.index section {
	padding: 80px 0 100px;
}

@media (max-width: 1350px) {
	.index section {
		padding: 40px 0 80px;
	}
}

@media (max-width: 767px) {
	.index section {
		padding: 6% 0 10%;
	}
}

.index h2 {
	margin-bottom: 20px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 48px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.index h2 {
		margin-bottom: 5px;
		font-size: 30px;
	}
}

.index .cap {
	margin-bottom: 40px;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.index .cap {
		margin-bottom: 15px;
		font-size: 18px;
	}
}

.index .cap span {
	color: #009e4d;
}

.index .txt {
	text-align: center;
}

@media (max-width: 767px) {
	.index .txt {
		text-align: left;
	}
}

section {
	padding: 100px 0;
}

@media (max-width: 1350px) {
	section {
		padding: 70px 0;
	}
}

@media (max-width: 767px) {
	section {
		padding: 10% 0;
	}
}

section:first-of-type {
	padding: 85px 0 100px;
}

@media (max-width: 1350px) {
	section:first-of-type {
		padding: 55px 0;
	}
}

@media (max-width: 767px) {
	section:first-of-type {
		padding: 10% 0;
		padding-top: calc(10% - 10px);
	}
}

.pankuzu-area {
	position: relative;
	z-index: 50;
	padding: 15px 40px;
	font-style: normal;
	font-weight: 500;
}

@media (max-width: 767px) {
	.pankuzu-area {
		padding: 10px 15px;
	}
}

.pankuzu-area ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.pankuzu-area ul li {
	font-size: 12px;
	text-align: left;
}

.pankuzu-area ul li a {
	color: #009e4d;
	text-decoration: underline;
}

.pankuzu-area ul li::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 10px;
	transform: rotate(45deg);
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	line-height: 1;
}

.pankuzu-area ul li:last-child::after {
	content: none;
}

.under h3 {
	margin-bottom: 50px;
	color: #009e4d;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.under h3 {
		margin-bottom: 20px;
		font-size: 28px;
	}
}

/*----------------------------
* How to Study
*----------------------------*/
.sty_study {
	position: relative;
	width: 100%;
	max-width: calc(100% - 60px);
	margin: 0 60px 0 0;
	padding-left: 60px !important;
	border-radius: 0 20px 20px 0;
	background-color: #edf6f3;
}

@media (max-width: 1600px) {
	.sty_study {
		max-width: 100%;
		margin: 0;
		padding-left: 0 !important;
		border-radius: 0;
	}
}

.sty_study .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_study .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty_study .study_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin-top: 60px;
	padding: 50px;
	border-radius: 20px;
	background-color: #009e4d;
}

@media (max-width: 1180px) {
	.sty_study .study_wrap {
		margin-top: 40px;
	}
}

@media (max-width: 767px) {
	.sty_study .study_wrap {
		margin-top: 15px;
		padding: 20px;
		border-radius: 15px;
	}
}

.sty_study .study_wrap .box {
	width: 25%;
	max-width: 250px;
	margin: 0 4%;
	color: #fff;
	text-align: center;
}

@media (max-width: 767px) {
	.sty_study .study_wrap .box {
		width: 100%;
		max-width: 100;
		margin: 0 auto 25px;
	}

	.sty_study .study_wrap .box:last-child {
		margin: 0 auto;
	}
}

.sty_study .study_wrap .box img {
	width: 100%;
	margin-bottom: 8px;
}

@media (max-width: 767px) {
	.sty_study .study_wrap .box img {
		width: 60%;
		margin: 0 auto 5px;
	}
}

.sty_study .study_wrap .box .ttl {
	margin-bottom: 0;
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty_study .study_wrap .box .ttl {
		font-size: 20px;
	}
}

.sty_study .study_wrap .box .txt2 {
	font-size: 16px;
	line-height: 1.4;
}

.sty_study .btn_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin-top: 100px;
}

@media (max-width: 1350px) {
	.sty_study .btn_wrap {
		margin-top: 70px;
	}
}

@media (max-width: 767px) {
	.sty_study .btn_wrap {
		margin-top: 20px;
	}
}

.sty_study .btn_wrap .btn {
	width: 31%;
	height: 240px;
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.sty_study .btn_wrap .btn {
		width: 100%;
		height: 120px;
		margin-bottom: 15px;
		border-radius: 15px;
	}

	.sty_study .btn_wrap .btn:last-child {
		margin-bottom: 0;
	}
}

.sty_study .btn_wrap .btn a {
	display: inline-block;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.sty_study .btn_wrap .btn a:hover {
	background-color: rgba(3, 159, 79, 0.6);
}

.sty_study .btn_wrap .btn a:hover .inbtn span::after {
	right: -25px;
}

.sty_study .btn_wrap .btn a .inbtn {
	width: 85%;
	padding: 10px 10px 10px 0;
	border-radius: 15px;
	background-color: #fff;
	color: #009e4d;
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
}

.sty_study .btn_wrap .btn a .inbtn span {
	position: relative;
}

.sty_study .btn_wrap .btn a .inbtn span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -20px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #009e4d;
	border-right: 2px solid #009e4d;
}

.sty_study .btn_wrap .btn.btn01 {
	background: url(../../e-learning/img/top_studybg01.jpg) center center
		no-repeat;
	background-size: cover;
}

.sty_study .btn_wrap .btn.btn02 {
	background: url(../../e-learning/img/top_studybg02.jpg) center center
		no-repeat;
	background-size: cover;
}

.sty_study .btn_wrap .btn.btn03 {
	background: url(../../e-learning/img/top_studybg03.jpg) center center
		no-repeat;
	background-size: cover;
}

/*----------------------------
* About
*----------------------------*/
.sty_about {
	width: 100%;
}

.sty_about .lo_inner {
	width: calc(100% - 60px);
	max-width: 930px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_about .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty_about .lo_inner .about_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	height: 300px;
	margin-top: 60px;
	padding-right: 5%;
	border: 4px solid #009e4d;
	border-radius: 20px;
	background: url(../../e-learning/img/top_about.png) left 5% bottom no-repeat;
	background-size: 52% auto;
}
/* 240520 追加 ここから */
.sty_about {
	background: #eff6f3;
}

.sty_about .lo_inner {
	max-width: 1200px;
}

.sty_about .lo_inner .about_wrap {
	justify-content: flex-start;
	height: auto;
	padding: 64px 100px 59px;
	padding: 64px min(100px, calc(100 / 1200 * 100vw)) 59px;
	background:
		url(../../e-learning/img/top_about.png) right 5% bottom no-repeat,
		#fff;
	background-size: 50%;
}

.sty_about .lo_inner .about_wrap .btn {
	max-width: 264px;
	margin-top: 40px;

	@media (max-width: 767px) {
		margin-inline: auto;
	}
}
/* 240520 追加 ここまで */
@media (max-width: 1180px) {
	.sty_about .lo_inner .about_wrap {
		margin-top: 40px;
		border: 3px solid #009e4d;
		border-radius: 15px;
	}
}

@media (max-width: 767px) {
	.sty_about .lo_inner .about_wrap {
		align-items: flex-start;
		justify-content: center;
		margin-top: 15px;
		/* 240520 追加 ここから */
		padding: 20px 20px 180px;
		padding-right: 0;
		background: url(../../e-learning/img/top_about.png) left 50% bottom
			no-repeat;
		background-size: 270px auto;
		/* 240520 追加 ここまで */
	}
}

.sty_about .lo_inner .about_wrap .box {
	width: 42%;
	text-align: center;
}
/* 240520 追加 ここから */
.sty_about .lo_inner .about_wrap .box {
	width: 48%;
}
/* 240520 追加 ここまで */
@media (max-width: 767px) {
	.sty_about .lo_inner .about_wrap .box {
		width: 90%;
		margin: 20px auto 0;
	}
}

.sty_about .lo_inner .about_wrap .box .txt {
	margin-bottom: 20px;
	font-size: 25px;
	font-style: normal;
	font-weight: 700;
}
/* 240520 追加 ここから */
.sty_about .lo_inner .about_wrap .box .txt.txt--small {
	font-size: 16px;
	font-weight: 500;
	line-height: calc(28.8 / 16);
	text-align: left;
}

.sty_about .lo_inner .about_wrap .box .txt.txt--small span {
	color: #009e4d;
}
/* 240520 追加 ここまで */
@media (max-width: 767px) {
	.sty_about .lo_inner .about_wrap .box .txt {
		margin-bottom: 10px;
		font-size: 18px;
	}
}

.sty_about .lo_inner .about_wrap .box .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	padding: 15px 10px 15px 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #009e4d;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 767px) {
	.sty_about .lo_inner .about_wrap .box .btn a {
		font-size: 22px;
	}
}

.sty_about .lo_inner .about_wrap .box .btn a span {
	position: relative;
}

.sty_about .lo_inner .about_wrap .box .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -20px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.sty_about .lo_inner .about_wrap .box .btn a:hover {
	opacity: 0.7;
}

.sty_about .lo_inner .about_wrap .box .btn a:hover span::after {
	right: -25px;
}
/* 240520 追加 ここから */
/*----------------------------
* E-learing
*----------------------------*/
.sty_elearning .under h3 {
	font-size: 26px;

	@media screen and (max-width: 767.98px) {
		font-size: 16px;
	}
}

.sty_elearning .btn {
	display: block;
	max-width: 495px;
	margin-top: 63px;
	margin-inline: auto;
	padding: 18px;
	transition: opacity 0.3s;
	border-radius: 8px;
	background: #009e4d;
	text-align: center;
}

.sty_elearning .btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 12px;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
}

.sty_elearning .btn a::after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: transform 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.sty_elearning .btn a:hover::after {
	transform: rotate(45deg) translate(4px, -4px);
}

.sty_elearning .btn:hover {
	opacity: 0.8;
}

.sp-only {
	display: none;
}

@media screen and (max-width: 767.98px) {
	.sty_elearning .btn a {
		font-size: 18px;
	}

	.sp-only {
		display: block;
	}
}

/* 240520 追加 ここまで */

/*----------------------------
* Price
*----------------------------*/
.sty_price {
	position: relative;
	width: 100%;
	max-width: calc(100% - 60px);
	margin: 0 0 0 60px;
	padding-right: 60px !important;
	border-radius: 20px 0 0 20px;
	background-color: #edf6f3;
}

@media (max-width: 1600px) {
	.sty_price {
		max-width: 100%;
		margin: 0;
		padding-right: 0 !important;
		border-radius: 0;
	}
}

.sty_price .lo_inner {
	width: calc(100% - 60px);
	max-width: 930px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_price .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty_price .lo_inner .price_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	height: 250px;
	margin-top: 30px;
	overflow: hidden;
	border: 4px solid #009e4d;
	border-radius: 20px;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap {
		height: 280px;
		margin-top: 15px;
		border: 3px solid #009e4d;
		border-radius: 15px;
	}
}

.sty_price .lo_inner .price_wrap .left {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 38%;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .left {
		width: 100%;
	}
}

.sty_price .lo_inner .price_wrap .left .img {
	width: 100%;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .left .img {
		width: auto;
		margin: 0;
		text-align: right;
	}
}

.sty_price .lo_inner .price_wrap .left .img img {
	width: 115px;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .left .img img {
		width: 90px;
	}
}

.sty_price .lo_inner .price_wrap .left .txt {
	margin: -40px 0 0;
	color: #fff;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .left .txt {
		margin: 0 0 0 10px;
		font-size: 18px;
	}
}

.sty_price .lo_inner .price_wrap .left .txt span {
	color: #fff;
	font-size: 26px;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .left .txt span {
		font-size: 20px;
	}
}

.sty_price .lo_inner .price_wrap .right {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 62%;
	background-color: #fff;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right {
		width: 100%;
	}
}

.sty_price .lo_inner .price_wrap .right .box {
	width: 80%;
	text-align: center;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box {
		width: 100%;
	}
}

.sty_price .lo_inner .price_wrap .right .box .price_txt {
	margin-bottom: 10px;
	font-size: 26px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box .price_txt {
		margin-bottom: 0;
		font-size: 18px;
	}
}

.sty_price .lo_inner .price_wrap .right .box .price_txt span {
	margin: 0 3px 0 15px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 36px;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box .price_txt span {
		margin: 0 2px 0 10px;
		font-size: 30px;
	}
}

.sty_price .lo_inner .price_wrap .right .box .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	margin-bottom: 10px;
	padding: 15px 10px 15px 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #e5231f;
	color: #fff;
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box .btn a {
		width: 90%;
		margin: 0 auto 15px;
		font-size: 22px;
	}
}

.sty_price .lo_inner .price_wrap .right .box .btn a span {
	position: relative;
}

.sty_price .lo_inner .price_wrap .right .box .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 7px);
	right: -25px;
	width: 13px;
	height: 13px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box .btn a span::after {
		top: calc(50% - 4px);
		right: -20px;
		width: 11px;
		height: 11px;
	}
}

.sty_price .lo_inner .price_wrap .right .box .btn a:hover {
	opacity: 0.7;
}

.sty_price .lo_inner .price_wrap .right .box .btn a:hover span::after {
	right: -30px;
}

@media (max-width: 767px) {
	.sty_price .lo_inner .price_wrap .right .box .btn a:hover span::after {
		right: -25px;
	}
}
/* 240520 追加 ここから */
.sty_price {
	background-color: #fff;
}

/*----------------------------
* 資格取得までの流れ
*----------------------------*/
.sty_flow {
	background-color: #eff6f3;
}

.sty_flow > .lo_inner {
	width: calc(100% - 30px);
	max-width: 1200px;
	margin-inline: auto;
}

.sty_flow.flow .flow01 .lo_inner,
.sty_flow.flow .flow02 .lo_inner {
	width: 100%;
}

.sty_flow.flow .flow01 .lo_inner {
	border-radius: 20px;
	background-color: #fff;
}

.sty_flow.flow .flow02 {
	margin-top: 64px;
}

/*----------------------------
* よくある質問
*----------------------------*/
.sty_faq .lo_inner {
	width: calc(100% - 30px);
	max-width: 920px;
	margin-inline: auto;
}

.sty_faq .p-faq__inner {
	width: 100%;
	margin: auto;
}

.sty_faq .p-faq-list__item {
	overflow: hidden;
	border: 4px solid #7dc9a2;
	border-radius: 24px;
	background-color: #fff;
	box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.05);
	font-family: "Zen Kaku Gothic New", sans-serif;
}

.sty_faq .p-faq-list__item + .p-faq-list__item {
	margin-top: 20px;
}

.sty_faq .p-faq-list__item-question {
	position: relative;
	padding: 12px 60px 12px 80px;
	background-color: #edf6f3;
	font-size: 22px;
	font-weight: 700;
	text-align: left;
	text-indent: -20px;
	cursor: pointer;
}

.sty_faq .p-faq-list__item-question::before,
.sty_faq .p-faq-list__item-question::after {
	content: "";
	position: absolute;
	top: 45%;
	right: 30px;
	width: 18px;
	height: 3px;
	transition: 0.3s;
	background: #009e4d;
}

.sty_faq .p-faq-list__item-question::after {
	transform: rotate(90deg);
}

.sty_faq .p-faq-list__item-question.is-open::after {
	transform: rotate(0deg);
}

.sty_faq .p-faq-list__item-question span {
	display: inline-block;
	margin-right: 6px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
}

.sty_faq .p-faq-list__item-answer {
	display: none;
	position: relative;
	padding: 15px 30px 15px 70px;
	font-size: 16px;
	text-align: left;
}

/* .sty_faq .p-faq-list__item-answer span {
  margin-right: 6px;
  display: inline-block;
  color: #009e4d;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 24px;
  font-weight: 700;
} */
.sty_faq .p-faq-list__item-answer::before {
	content: "A";
	position: absolute;
	top: 3px;
	left: 40px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
}

.sty_faq__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 420px;
	margin-top: 48px;
	margin-inline: auto;
	padding: 18px;
	column-gap: 8px;
	transition: opacity 0.3s;
	border-radius: 8px;
	background-color: #009e4d;
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
}

.sty_faq__btn::after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: transform 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.sty_faq__btn:hover::after {
	transform: rotate(45deg) translate(4px, -4px);
}

.sty_faq__btn:hover {
	opacity: 0.8;
}

.sty_faq .p-faq-list__item-answer li {
	position: relative;
	padding-left: 1em;
}

.sty_faq .p-faq-list__item-answer li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -8px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

@media screen and (max-width: 767.98px) {
	.sty_faq .p-faq-list__item-question {
		padding: 12px 40px 12px 60px;
		font-size: 18px;
	}

	.sty_faq .p-faq-list__item-question::before,
	.sty_faq .p-faq-list__item-question::after {
		right: 15px;
	}

	.sty_faq .p-faq-list__item-question span,
	.sty_faq .p-faq-list__item-answer span {
		font-size: 22px;
	}

	.sty_faq .p-faq-list__item-answer {
		padding: 15px 30px 15px 48px;
	}

	.sty_faq .p-faq-list__item-answer::before {
		top: 8px;
		left: 20px;
		font-size: 22px;
	}

	.sty_faq__btn {
		width: 80%;
		margin-top: 24px;
		padding: 12px;
		font-size: 16px;
	}
}

/*----------------------------
* 合格者の声
*----------------------------*/
.sty_voice {
	background-color: #edf6f3;
}
/* 240520 追加 ここまで */

/*----------------------------
* 下層価格
*----------------------------*/
.sty_apply {
	width: 100%;
}

.sty_apply .lo_inner {
	width: calc(100% - 60px);
	max-width: 930px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty_apply .lo_inner .price_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	height: 250px;
	overflow: hidden;
	border: 4px solid #009e4d;
	border-radius: 20px;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap {
		height: 280px;
		border: 3px solid #009e4d;
		border-radius: 15px;
	}
}

.sty_apply .lo_inner .price_wrap .left {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 38%;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .left {
		width: 100%;
	}
}

.sty_apply .lo_inner .price_wrap .left .img {
	width: 100%;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .left .img {
		width: auto;
		margin: 0;
		text-align: right;
	}
}

.sty_apply .lo_inner .price_wrap .left .img img {
	width: 115px;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .left .img img {
		width: 90px;
	}
}

.sty_apply .lo_inner .price_wrap .left .txt {
	margin: -40px 0 0;
	color: #fff;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .left .txt {
		margin: 0 0 0 10px;
		font-size: 18px;
	}
}

.sty_apply .lo_inner .price_wrap .left .txt span {
	color: #fff;
	font-size: 26px;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .left .txt span {
		font-size: 20px;
	}
}

.sty_apply .lo_inner .price_wrap .right {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 62%;
	background-color: #fff;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right {
		width: 100%;
	}
}

.sty_apply .lo_inner .price_wrap .right .box {
	width: 80%;
	text-align: center;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box {
		width: 100%;
	}
}

.sty_apply .lo_inner .price_wrap .right .box .price_txt {
	margin-bottom: 10px;
	font-size: 26px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box .price_txt {
		margin-bottom: 0;
		font-size: 18px;
	}
}

.sty_apply .lo_inner .price_wrap .right .box .price_txt span {
	margin: 0 3px 0 15px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 36px;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box .price_txt span {
		margin: 0 2px 0 10px;
		font-size: 30px;
	}
}

.sty_apply .lo_inner .price_wrap .right .box .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	margin-bottom: 10px;
	padding: 15px 10px 15px 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #e5231f;
	color: #fff;
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box .btn a {
		width: 90%;
		margin: 0 auto 15px;
		font-size: 22px;
	}
}

.sty_apply .lo_inner .price_wrap .right .box .btn a span {
	position: relative;
}

.sty_apply .lo_inner .price_wrap .right .box .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 7px);
	right: -25px;
	width: 13px;
	height: 13px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box .btn a span::after {
		top: calc(50% - 4px);
		right: -20px;
		width: 11px;
		height: 11px;
	}
}

.sty_apply .lo_inner .price_wrap .right .box .btn a:hover {
	opacity: 0.7;
}

.sty_apply .lo_inner .price_wrap .right .box .btn a:hover span::after {
	right: -30px;
}

@media (max-width: 767px) {
	.sty_apply .lo_inner .price_wrap .right .box .btn a:hover span::after {
		right: -25px;
	}
}

/*----------------------------
* Column
*----------------------------*/
.sty_column {
	width: 100%;
}

.sty_column .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_column .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty_column .lo_inner .column__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin: 60px 0 -40px;
}

@media (max-width: 1180px) {
	.sty_column .lo_inner .column__list {
		margin: 40px 0 -40px;
	}
}

@media (max-width: 767px) {
	.sty_column .lo_inner .column__list {
		margin: 15px 0 -20px;
	}
}

.sty_column .lo_inner .column__list::after {
	content: "";
	display: block;
	width: 31%;
}

.sty_column .lo_inner .column__list .news__item {
	width: 31%;
	margin-bottom: 40px;
	overflow: hidden;
	border-radius: 20px;
	background-color: #fff;
	box-shadow: 0 0 7px rgba(16, 165, 88, 0.35);
}

@media (max-width: 767px) {
	.sty_column .lo_inner .column__list .news__item {
		width: 48%;
		margin-bottom: 20px;
		border-radius: 10px;
		box-shadow: 0 0 5px rgba(16, 165, 88, 0.35);
	}
}

.sty_column .lo_inner .column__list .news__item a {
	text-decoration: none;
}

.sty_column .lo_inner .column__list .news__item a:hover {
	opacity: 0.7;
}

.sty_column .lo_inner .column__list .news__item img {
	width: 100%;
	height: auto;
}

.sty_column .lo_inner .column__list .news__item .news__content {
	padding: 25px 30px;
	font-style: normal;
	font-weight: 700;
	text-align: left;
}

@media (max-width: 767px) {
	.sty_column .lo_inner .column__list .news__item .news__content {
		padding: 8px 10px;
	}
}

.sty_column .lo_inner .column__list .news__item .news__content .news__tag span {
	padding: 2px 10px;
	border-radius: 3px;
	background-color: #009e4d;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}

@media (max-width: 767px) {
	.sty_column
		.lo_inner
		.column__list
		.news__item
		.news__content
		.news__tag
		span {
		font-size: 12px;
	}
}

.sty_column .lo_inner .column__list .news__item .news__content .news__title {
	margin-top: 5px;
	font-size: 18px;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.sty_column
		.lo_inner
		.column__list
		.news__item
		.news__content
		.news__title {
		margin-top: 2px;
		font-size: 15px;
	}
}

/*----------------------------
* お問合わせエリア
*----------------------------*/
.sty_contact {
	width: 100%;
	margin: 0;
	background-color: #edf6f3;
}

.sty_contact .contact_wrap {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap {
		width: calc(100% - 30px);
	}
}

.sty_contact .contact_wrap .contact_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.sty_contact .contact_wrap .contact_list li {
	width: 48%;
	border-radius: 15px;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap .contact_list li {
		width: 100%;
		margin-bottom: 15px;
	}

	.sty_contact .contact_wrap .contact_list li:last-child {
		margin-bottom: 0;
	}
}

.sty_contact .contact_wrap .contact_list li a {
	display: block;
	position: relative;
	width: 100%;
	padding: 25px 40px 35px;
	overflow: hidden;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	text-decoration: none;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap .contact_list li a {
		padding: 10px 15px 15px;
		font-size: 18px;
	}
}

.sty_contact .contact_wrap .contact_list li a .en {
	margin-bottom: 15px;
	padding: 0 0 15px 25px;
	border-bottom: 1px solid #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 38px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap .contact_list li a .en {
		margin-bottom: 5px;
		padding: 0 0 0 20px;
		font-size: 26px;
	}
}

.sty_contact .contact_wrap .contact_list li a .en span {
	position: relative;
}

.sty_contact .contact_wrap .contact_list li a .en.faq span::before {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	left: -60px;
	width: 40px;
	height: 40px;
	margin: auto;
	background: url(../../e-learning/img/faq_icon.svg) no-repeat;
	background-size: contain;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap .contact_list li a .en.faq span::before {
		top: 5px;
		left: -40px;
		width: 25px;
		height: 25px;
	}
}

.sty_contact .contact_wrap .contact_list li a .en.contact span::before {
	content: "";
	display: block;
	position: absolute;
	top: 11px;
	left: -54px;
	width: 34px;
	height: 28px;
	margin: auto;
	background: url(../../e-learning/img/mail_icon.svg) no-repeat;
	background-size: contain;
}

@media (max-width: 767px) {
	.sty_contact .contact_wrap .contact_list li a .en.contact span::before {
		top: 6px;
		left: -37px;
		width: 26px;
		height: 21px;
		margin: auto;
	}
}

.sty_contact .contact_wrap .contact_list li a .ttl span {
	position: relative;
}

.sty_contact .contact_wrap .contact_list li a .ttl span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -20px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.sty_contact .contact_wrap .contact_list li a:hover {
	background-color: rgba(255, 255, 255, 0.15);
}

.sty_contact .contact_wrap .contact_list li a:hover .ttl span::after {
	right: -25px;
}
/* 240520 追加 ここから */
.lp-banner {
	display: block;
	padding: 48px 20px 66px;
	transition: opacity 0.3s;
	background: url(../../e-learning/img/lp-cta-bg.png) no-repeat;
	background-size: cover;
	text-decoration: none;
}

.lp-banner__title {
	color: #fff;
	font-size: 44px;
	font-weight: 700;
	line-height: 1.5;
}

.lp-banner__btn-wrap {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin-top: 18px;
	margin-inline: auto;
	padding: 0 20px 34px;
	border-radius: 41px;
	background-color: #fff;
}

.lp-banner__btn-wrap p {
	color: #333;
	font-size: 38px;
	font-weight: 700;
}

.lp-banner__btn-wrap p span {
	padding: 0 7px 0 14px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 80px;
}

.lp-banner__btn-wrap .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 320px;
	margin-inline: auto;
	padding: 16px;
	column-gap: 16px;
	border-radius: 15px;
	background-color: #e5231f;
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}

.lp-banner__btn-wrap .btn::after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: transform 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.lp-banner:hover {
	opacity: 0.8;
}

.lp-banner:hover .lp-banner__btn-wrap .btn::after {
	transform: rotate(45deg) translate(4px, -4px);
}

@media screen and (max-width: 767.98px) {
	.lp-banner {
		padding: 40px 20px 48px;
	}

	.lp-banner__title {
		font-size: 28px;
	}

	.lp-banner__btn-wrap {
		padding: 10px 20px 20px;
	}

	.lp-banner__btn-wrap p {
		font-size: 26px;
	}

	.lp-banner__btn-wrap p span {
		font-size: 48px;
		line-height: 1;
	}

	.lp-banner__btn-wrap .btn {
		margin-top: 8px;
	}
}
/*----------------------------
* Way to proceed
*----------------------------*/
.sty_waytoproceed {
	background-color: #eff6f3;
}

.sty_waytoproceed:not(#_) .lo_inner {
	max-width: 1200px;
}

.sty_waytoproceed:not(#_) .lo_inner ul.box3column li {
	border-color: #7dc9a2;
}

.sty_waytoproceed:not(#_) .sty_course01 {
	width: 100%;
	margin-inline: 0;
	padding-inline: min(200px, 16.5%);
	border: 1px solid #7dc9a2;
	background-color: #fff;
}

.sty_waytoproceed:not(#_) .sty_course01 .box01 {
	background-color: #009e4d;
	color: #fff;
}

.sty_waytoproceed:not(#_) .sty_course01 .box01 .txt_wrap .ttl {
	color: #fff;
}

.sty_waytoproceed:not(#_) .sty_course01 .box01 .txt_wrap ul {
	margin-left: 1em;
	list-style-type: disc;
}

.sty_waytoproceed:not(#_) .sty_course01 .box01 .txt_wrap ul li {
	padding-left: 2px;
}

@media screen and (max-width: 767.98px) {
	.sty_waytoproceed:not(#_) .lo_inner ul.box3column li .txt {
		text-align: center;
	}

	.sty_waytoproceed:not(#_) .sty_course01 {
		padding-inline: 20px;
	}

	.sty_waytoproceed:not(#_) .sty_course01 .box01 .txt_wrap ul {
		margin-top: 0;
	}

	.sty_waytoproceed:not(#_) .sty_course01 .box01 {
		padding: 20px;
	}
}

/* 240520 追加 ここまで */
/* 240527 追加 ここから */
/*----------------------------
* ポップアップバナー
*----------------------------*/
.modal-overlay {
	display: none;
	visibility: hidden;
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	transition: 0.3s;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.7);
}

.modal-overlay.active {
	display: block;
	visibility: visible;
	transition: 0.3s;
	opacity: 1;
}

.modal-window {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 284px;
	margin: 0;
	transform: translate(-50%, -50%);
}

#close-01 {
	position: absolute;
	top: -16px;
	right: -16px;
	width: 36px;
	height: 36px;
	border: none;
	border-radius: 50%;
	background-color: #fff;
	cursor: pointer;
}

#close-01:hover {
	opacity: 0.8;
}

#close-01::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 1px;
	transform: translate(-50%, -50%) rotate(45deg);
	background-color: #000;
}

#close-01::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 1px;
	transform: translate(-50%, -50%) rotate(-45deg);
	background-color: #000;
}
/* 240527 追加 ここまで */

/*----------------------------
* 下層共通
*----------------------------*/
.sty01 {
	width: 100%;
}

.sty01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty01 .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty01 .lo_inner .sty01_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.sty01 .lo_inner .sty01_box .img {
	width: 600px;
	height: 340px;
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.sty01 .lo_inner .sty01_box .img {
		width: 100%;
		height: 56%;
		margin-bottom: 15px;
		border-radius: 15px;
	}
}

.sty01 .lo_inner .sty01_box .img img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.sty01 .lo_inner .sty01_box .txt_wrap {
	width: calc(100% - 650px);
	font-size: 18px;
	line-height: 1.8;
	text-align: left;
}

@media (max-width: 767px) {
	.sty01 .lo_inner .sty01_box .txt_wrap {
		width: 100%;
		font-size: 14px;
		line-height: 1.785;
	}
}

.sty01 .lo_inner .sty01_box .txt_wrap.ft16 {
	font-size: 14px;
	line-height: 1.785;
}

.sty01 .lo_inner .sty01_box.reverse {
	flex-direction: row-reverse;
}

.sty02 {
	width: 100%;
}

.sty02 .lo_inner {
	width: calc(100% - 60px);
	max-width: 930px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.sty02 .lo_inner {
		width: calc(100% - 30px);
	}
}

.sty02 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto -30px;
}

@media (max-width: 767px) {
	.sty02 .lo_inner ul {
		margin: 0 auto -20px;
	}
}

.sty02 .lo_inner ul li {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin-bottom: 30px;
	padding: 30px;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.sty02 .lo_inner ul li {
		margin-bottom: 20px;
		padding: 15px;
	}
}

.sty02 .lo_inner ul li .img {
	width: 290px;
	height: 166px;
	margin-right: 30px;
	border-radius: 20px;
	background-color: #edf6f3;
}

@media (max-width: 767px) {
	.sty02 .lo_inner ul li .img {
		width: 50%;
		height: 100px;
		margin: 0 25% 15px;
		border-radius: 15px;
	}
}

.sty02 .lo_inner ul li .img img {
	width: auto;
	height: 100%;
}

.sty02 .lo_inner ul li p {
	width: calc(100% - 320px);
	text-align: left;
}

@media (max-width: 767px) {
	.sty02 .lo_inner ul li p {
		width: 100%;
	}
}

.sty02 .lo_inner ul li p .ttl {
	display: block;
	margin-bottom: 10px;
	color: #009e4d;
	font-weight: 700;
}

@media (max-width: 767px) {
	.sty02 .lo_inner ul li p .ttl {
		margin-bottom: 3px;
	}
}

/*----------------------------
* 下層eラーニング講座の特徴
*----------------------------*/
.e-learning .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.e-learning .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 25px;
	right: 30px;
	width: 307px;
	height: 155px;
	background: url(../../e-learning/img/e-learning/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.e-learning .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 119px;
		height: 60px;
	}
}

.e-learning .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 40px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	letter-spacing: -0.05em;
	line-height: 1;
}

@media (max-width: 767px) {
	.e-learning .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 60px;
	}
}

@media (max-width: 1180px) {
	.e-learning .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.e-learning .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}
}

.e-learning .e-learning01 {
	width: 100%;
}

.e-learning .e-learning01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner {
		width: calc(100% - 30px);
	}
}

.e-learning .e-learning01 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin-bottom: -60px;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner ul {
		margin-bottom: -20px;
	}
}

.e-learning .e-learning01 .lo_inner ul.box5column li {
	position: relative;
	position: relative;
	width: 31.5%;
	margin: 25px 2.75% 60px 0;
	padding: 50px 0 230px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner ul.box5column li {
		width: 100%;
		margin: 25px 0 20px;
		padding: 40px 0 0;
	}
}

.e-learning .e-learning01 .lo_inner ul.box5column li:nth-child(3),
.e-learning .e-learning01 .lo_inner ul.box5column li :nth-child(5) {
	margin: 25px 0 60px;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner ul.box5column li:nth-child(3),
	.e-learning .e-learning01 .lo_inner ul.box5column li :nth-child(5) {
		margin: 25px 0 20px;
	}
}

.e-learning .e-learning01 .lo_inner ul.box5column li .ttl {
	display: flex;
	position: absolute;
	top: -25px;
	left: 50%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 140px;
	height: 50px;
	margin-left: -70px;
	border-radius: 25px;
	background-color: #009e4d;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.e-learning .e-learning01 .lo_inner ul.box5column li .txt {
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner ul.box5column li .txt {
		font-size: 18px;
	}
}

.e-learning .e-learning01 .lo_inner ul.box5column li .img {
	position: absolute;
	bottom: 0;
	left: 0;
}

@media (max-width: 767px) {
	.e-learning .e-learning01 .lo_inner ul.box5column li .img {
		position: relative;
		bottom: inherit;
		left: inherit;
	}
}

.e-learning .e-learning01 .lo_inner ul.box5column li .img img {
	width: 100%;
}

.e-learning .e-learning02 {
	width: 100%;
}

.e-learning .e-learning02 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1600px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.e-learning .e-learning02 .lo_inner {
		width: calc(100% - 30px);
	}
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box {
	display: flex;
	flex-wrap: wrap;
	width: 48.5%;
}

@media (max-width: 767px) {
	.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box {
		width: 100%;
		margin-bottom: 50px;
	}

	.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box:last-child {
		margin-bottom: 0;
	}
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap {
	position: relative;
	width: 100%;
	height: 405px;
	margin-bottom: 90px;
	padding: 50px 50px 0;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 1500px) {
	.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap {
		height: 385px;
		padding: 30px 30px 0;
	}
}

@media (max-width: 767px) {
	.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap {
		height: auto;
		margin-bottom: 50px;
		padding: 15px 15px 0;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.nayami_wrap::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -74px;
	left: 50%;
	width: 32px;
	height: 57px;
	margin-left: -17px;
	background: url(../../e-learning/img/arrow.svg) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.nayami_wrap::after {
		bottom: -45px;
		width: 22px;
		height: 42px;
		margin-left: -11px;
	}
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap ul {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: space-between;
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap ul li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 30.5%;
	min-height: 110px;
	padding: 20px 0;
	border-radius: 20px;
	background-color: #009e4d;
	color: #fff;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}

@media (max-width: 1500px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.nayami_wrap
		ul
		li {
		font-size: 15px;
	}
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.nayami_wrap
		ul
		li {
		width: 32%;
		min-height: auto;
		padding: 10px 0;
		border-radius: 10px;
		font-size: 10px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.nayami_wrap
	ul::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -60px;
	left: 0;
	width: 100%;
	height: 60px;
	background: url(../../e-learning/img/dot.png) no-repeat;
	background-size: contain;
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .nayami_wrap .img {
	width: auto;
	height: 185px;
	margin-top: 60px;
	text-align: center;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.nayami_wrap
		.img {
		height: 120px;
		margin-top: 30px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.nayami_wrap
	.img
	img {
	width: auto;
	height: 185px;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.nayami_wrap
		.img
		img {
		height: 120px;
	}
}

.e-learning .e-learning02 .lo_inner .e-learning02_wrap .box .recommend_wrap {
	position: relative;
	height: 1060px;
	padding: 50px;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 1500px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap {
		height: 1020px;
		padding: 30px;
	}
}

@media (max-width: 1350px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap {
		height: 960px;
	}
}

@media (max-width: 1200px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap {
		height: 930px;
	}
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap {
		height: auto;
		padding: 20px 15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.ttl {
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.ttl {
		font-size: 22px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.ttl
	.ttl01 {
	position: relative;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.ttl
	.ttl01::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: -20px;
	width: 2px;
	height: 90%;
	transform: rotate(-25deg);
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.ttl
		.ttl01::before {
		left: -15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.ttl
	.ttl01::after {
	content: "";
	display: block;
	position: absolute;
	right: -15px;
	bottom: 0;
	width: 2px;
	height: 90%;
	transform: rotate(25deg);
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.ttl
		.ttl01::after {
		right: -15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.ttl
	.under {
	background: linear-gradient(transparent 75%, #fcd72b 25%);
	color: #009e4d;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.img {
	width: 100%;
	max-width: 790px;
	margin: 15px auto 30px;
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.img {
		margin: 10px 0 15px;
		border-radius: 15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.img
	img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin-bottom: 25px;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.list {
		margin-bottom: 15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.list
	li {
	position: relative;
	width: 100%;
	margin-bottom: 8px;
	padding-left: 15px;
	line-height: 1.4;
	text-align: left;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.list
	li:last-child {
	margin-bottom: 0;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.list
	li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -5px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.point_wrap {
	position: relative;
	width: 100%;
	margin-bottom: 35px;
	padding: 30px 70px 30px 30px;
	border-radius: 5px;
	background-color: #edf6f3;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: -0.05em;
	line-height: 1.6;
	text-align: left;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.point_wrap {
		margin-bottom: 20px;
		padding: 15px 40px 15px 15px;
		font-size: 16px;
		line-height: 1.6;
		text-align: left;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.point_wrap
	span {
	color: #009e4d;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.point_wrap::after {
	content: "";
	display: block;
	position: absolute;
	right: -35px;
	bottom: -25px;
	width: 87px;
	height: 125px;
	background: url(../../e-learning/img/e-learning/img08.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.point_wrap::after {
		right: -20px;
		bottom: -5px;
		width: 50px;
		height: 72px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.point_wrap.point2 {
	padding: 30px 100px 30px 30px;
	letter-spacing: 0;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.point_wrap.point2 {
		padding: 15px 25px 15px 15px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.point_wrap.point2::after {
	content: "";
	display: block;
	position: absolute;
	right: -17px;
	bottom: -30px;
	width: 108px;
	height: 148px;
	background: url(../../e-learning/img/e-learning/img09.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.point_wrap.point2::after {
		right: -20px;
		bottom: -20px;
		width: 55px;
		height: 76px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap {
	position: absolute;
	bottom: 30px;
	left: 50px;
	width: calc(100% - 100px);
}

@media (max-width: 1500px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap {
		left: 30px;
		width: calc(100% - 60px);
	}
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap {
		position: relative;
		bottom: inherit;
		left: inherit;
		width: 100%;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	.ttl {
	margin-bottom: 10px;
	color: #009e4d;
	font-size: 20px;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li {
	width: 48%;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li:nth-child(2) {
	margin-left: 4%;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap
		ul
		li:nth-child(2) {
		margin-left: 0;
	}
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap
		ul
		li {
		width: 100%;
		margin-bottom: 10px;
	}

	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap
		ul
		li:last-child {
		margin-bottom: 0;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li
	.btn
	a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	padding: 12px 10px 12px 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #009e4d;
	color: #fff;
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	letter-spacing: -0.05em;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 1500px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap
		ul
		li
		.btn
		a {
		font-size: 18px;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li
	.btn
	a
	span {
	position: relative;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li
	.btn
	a
	span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -15px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li
	.btn
	a:hover {
	opacity: 0.7;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul
	li
	.btn
	a:hover
	span::after {
	right: -20px;
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul.el
	li {
	width: 60%;
}

@media (max-width: 767px) {
	.e-learning
		.e-learning02
		.lo_inner
		.e-learning02_wrap
		.box
		.recommend_wrap
		.btn_wrap
		ul.el
		li {
		width: 100%;
	}
}

.e-learning
	.e-learning02
	.lo_inner
	.e-learning02_wrap
	.box
	.recommend_wrap
	.btn_wrap
	ul.el
	li
	.btn
	a {
	background-color: #e5231f;
}

.e-learning .e-learning03 {
	width: 100%;
}

.e-learning .e-learning03 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner {
		width: calc(100% - 30px);
	}
}

.e-learning .e-learning03 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.e-learning .e-learning03 .lo_inner ul li {
	width: 31%;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner ul li {
		width: 100%;
		margin-bottom: 50px;
	}

	.e-learning .e-learning03 .lo_inner ul li:last-child {
		margin-bottom: 0;
	}
}

.e-learning .e-learning03 .lo_inner ul li .img {
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner ul li .img {
		border-radius: 15px;
	}
}

.e-learning .e-learning03 .lo_inner ul li .img img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.e-learning .e-learning03 .lo_inner ul li .ttl {
	padding: 25px 0 20px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner ul li .ttl {
		padding: 10px 0 5px;
		font-size: 18px;
	}
}

.e-learning .e-learning03 .lo_inner ul li p {
	margin-bottom: 20px;
	letter-spacing: -0.05em;
	text-align: left;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner ul li p {
		margin-bottom: 10px;
	}
}

.e-learning .e-learning03 .lo_inner ul li .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 280px;
	padding: 9px 10px 9px 0;
	overflow: hidden;
	border-radius: 10px;
	background-color: #009e4d;
	color: #fff;
	font-size: 20px;
	font-style: normal;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 767px) {
	.e-learning .e-learning03 .lo_inner ul li .btn a {
		width: 100%;
		font-size: 22px;
	}
}

.e-learning .e-learning03 .lo_inner ul li .btn a span {
	position: relative;
}

.e-learning .e-learning03 .lo_inner ul li .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -20px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.e-learning .e-learning03 .lo_inner ul li .btn a:hover {
	opacity: 0.7;
}

.e-learning .e-learning03 .lo_inner ul li .btn a:hover span::after {
	right: -25px;
}

/*----------------------------
* 下層講座の進め方・教材
*----------------------------*/
.course .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.course .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 30px;
	right: 30px;
	width: 211px;
	height: 134px;
	background: url(../../e-learning/img/course/ttl.png) no-repeat;
	background-size: cover;
}

.course .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 1180px) {
	.course .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.course .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}

	.course .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 100px;
		height: 64px;
	}

	.course .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

.course .syy03 {
	width: 100%;
}

.course .syy03 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner {
		width: calc(100% - 30px);
	}
}

.course .syy03 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul {
		margin-top: -20px;
	}
}

.course .syy03 .lo_inner ul.box3column li {
	position: relative;
	width: 31.5%;
	margin-top: 30px;
	padding: 60px 0 24%;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box3column li {
		width: 100%;
		padding: 35px 0 45%;
	}
}

.course .syy03 .lo_inner ul.box3column li .no {
	display: flex;
	position: absolute;
	top: -30px;
	left: 50%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 70px;
	height: 70px;
	margin-left: -35px;
	border-radius: 35px;
	background-color: #009e4d;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.05em;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box3column li .no {
		top: -20px;
		width: 50px;
		height: 50px;
		margin-left: -25px;
		border-radius: 25px;
		font-size: 26px;
	}
}

.course .syy03 .lo_inner ul.box3column li .txt {
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
}

.course .syy03 .lo_inner ul.box3column li .img {
	position: absolute;
	bottom: 30px;
	left: 10%;
	width: 80%;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box3column li .img {
		bottom: 10px;
		left: 25%;
		width: 50%;
	}
}

.course .syy03 .lo_inner ul.box4column li {
	position: relative;
	width: 22.5%;
	margin-top: 30px;
	padding: 60px 0 13%;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box4column li {
		width: 100%;
		padding: 35px 0 40%;
	}
}

.course .syy03 .lo_inner ul.box4column li .no {
	display: flex;
	position: absolute;
	top: -30px;
	left: 50%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 70px;
	height: 70px;
	margin-left: -35px;
	border-radius: 35px;
	background-color: #009e4d;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.05em;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box4column li .no {
		top: -20px;
		width: 50px;
		height: 50px;
		margin-left: -25px;
		border-radius: 25px;
		font-size: 26px;
	}
}

.course .syy03 .lo_inner ul.box4column li .txt {
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box4column li .txt {
		font-size: 16px;
	}
}

.course .syy03 .lo_inner ul.box4column li .img {
	position: absolute;
}

.course .syy03 .lo_inner ul.box4column li .img.img01 {
	bottom: 15px;
	left: 16%;
	width: 68%;
}

.course .syy03 .lo_inner ul.box4column li .img.img02 {
	bottom: 0;
	left: 14%;
	width: 76%;
}

.course .syy03 .lo_inner ul.box4column li .img.img03 {
	bottom: 0;
	left: 13%;
	width: 76%;
}

.course .syy03 .lo_inner ul.box4column li .img.img04 {
	bottom: 32px;
	left: 21%;
	width: 58%;
}

@media (max-width: 767px) {
	.course .syy03 .lo_inner ul.box4column li .img.img01 {
		bottom: 10px;
		left: 25%;
		width: 50%;
	}

	.course .syy03 .lo_inner ul.box4column li .img.img02 {
		left: 25%;
		width: 60%;
	}

	.course .syy03 .lo_inner ul.box4column li .img.img03 {
		left: 25%;
		width: 60%;
	}

	.course .syy03 .lo_inner ul.box4column li .img.img04 {
		bottom: 20px;
		left: 27%;
		width: 46%;
	}
}

.course .syy03 .sty_course01 {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 50px auto 0;
	padding: 50px 14%;
	border-radius: 5px;
	background-color: #edf6f3;
	text-align: left;
}

@media (max-width: 767px) {
	.course .syy03 .sty_course01 {
		width: calc(100% - 30px);
		margin: 20px auto 0;
		padding: 15px;
	}
}

.course .syy03 .sty_course01 p span {
	margin-right: 8px;
	padding: 2px 20px;
	border-radius: 3px;
	background-color: #009e4d;
	color: #fff;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.course .syy03 .sty_course01 .box01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin-top: 20px;
	padding: 25px 30px;
	border-radius: 10px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.course .syy03 .sty_course01 .box01 {
		margin-top: 10px;
		padding: 15px;
	}
}

.course .syy03 .sty_course01 .box01 .img {
	width: 140px;
	margin-right: 30px;
}

@media (max-width: 767px) {
	.course .syy03 .sty_course01 .box01 .img {
		width: 50%;
		margin: 0 25% 10px;
	}
}

.course .syy03 .sty_course01 .box01 .img img {
	width: 100%;
}

.course .syy03 .sty_course01 .box01 .txt_wrap {
	width: calc(100% - 170px);
	text-align: left;
}

@media (max-width: 767px) {
	.course .syy03 .sty_course01 .box01 .txt_wrap {
		width: 100%;
	}
}

.course .syy03 .sty_course01 .box01 .txt_wrap .ttl {
	margin-bottom: 10px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.course .syy03 .sty_course01 .box01 .txt_wrap .ttl {
		margin-bottom: 5px;
		font-size: 18px;
	}
}

.course .syy03 .sty_course01 .box01 .txt_wrap ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.course .syy03 .sty_course01 .box01 .txt_wrap ul li {
	position: relative;
	width: 100%;
	margin-bottom: 10px;
	padding-left: 15px;
	line-height: 1.6;
}

.course .syy03 .sty_course01 .box01 .txt_wrap ul li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -5px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

/*----------------------------
* 下層CBT試験について
*----------------------------*/
.cbt .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.cbt .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 20px;
	right: 30px;
	width: 275px;
	height: 156px;
	background: url(../../e-learning/img/cbt/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.cbt .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 132px;
		height: 75px;
	}
}

.cbt .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.cbt .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.cbt .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.cbt .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}
}

.cbt .ctb01 {
	width: 100%;
}

.cbt .ctb01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.cbt .ctb01 .lo_inner {
		width: calc(100% - 30px);
	}
}

.cbt .ctb01 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.cbt .ctb01 .lo_inner ul li {
	width: 31.5%;
	overflow: hidden;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.cbt .ctb01 .lo_inner ul li {
		width: 100%;
		margin-bottom: 20px;
	}

	.cbt .ctb01 .lo_inner ul li:last-child {
		margin-bottom: 0;
	}
}

.cbt .ctb01 .lo_inner ul li .ttl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100px;
	background-color: #009e4d;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.cbt .ctb01 .lo_inner ul li .ttl {
		height: 80px;
		font-size: 18px;
	}
}

.cbt .ctb01 .lo_inner ul li .txt_wrap {
	padding: 0 20px 30px;
}

@media (max-width: 767px) {
	.cbt .ctb01 .lo_inner ul li .txt_wrap {
		padding: 0 20px 20px;
	}
}

.cbt .ctb01 .lo_inner ul li .txt_wrap .img {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 170px;
}

.cbt .ctb01 .lo_inner ul li .txt_wrap .img.img01 img {
	height: 80%;
}

.cbt .ctb01 .lo_inner ul li .txt_wrap .img.img02 img {
	height: 90%;
}

.cbt .ctb01 .lo_inner ul li .txt_wrap .img.img03 img {
	height: 85%;
}

.cbt .ctb01 .lo_inner ul li .txt_wrap p {
	text-align: left;
}

.cbt .ctb02 {
	width: 100%;
}

.cbt .ctb02 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner {
		width: calc(100% - 30px);
	}
}

.cbt .ctb02 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.cbt .ctb02 .lo_inner ul .step {
	position: relative;
	width: 100%;
	margin-bottom: 60px;
}

.cbt .ctb02 .lo_inner ul .step:last-child {
	margin-bottom: 0;
}

.cbt .ctb02 .lo_inner ul .step dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
}

.cbt .ctb02 .lo_inner ul .step dl dt {
	width: 124px;
	margin-right: 46px;
	text-align: center;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step dl dt {
		width: 100%;
		margin-right: 0;
	}
}

.cbt .ctb02 .lo_inner ul .step dl dt .step_txt {
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 24px;
	font-weight: 600;
}

.cbt .ctb02 .lo_inner ul .step dl dt .step_txt span {
	font-size: 30px;
	letter-spacing: 0.05em;
}

.cbt .ctb02 .lo_inner ul .step dl dt .img {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 124px;
	height: 124px;
	margin-top: -5px;
	border-radius: 124px;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step dl dt .img {
		margin: -5px auto 10px;
	}
}

.cbt .ctb02 .lo_inner ul .step dl dd {
	width: calc(100% - 170px);
	padding: 30px;
	border-radius: 5px;
	background-color: #edf6f3;
	text-align: left;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step dl dd {
		width: 100%;
		padding: 15px;
	}
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap {
	width: 100%;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap .ttl {
	margin-bottom: 5px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap .ttl {
		font-size: 18px;
		line-height: 1.3;
	}
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin: 10px 0 0;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap ul li {
	position: relative;
	width: 100%;
	margin-bottom: 8px;
	padding-left: 15px;
	line-height: 1.4;
	text-align: left;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap ul li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -5px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap ul li:last-child {
	margin-bottom: 0;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap .small {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.5;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap a {
	color: #009e4d;
	text-decoration: underline;
}

.cbt .ctb02 .lo_inner ul .step dl dd .txt_wrap a:hover {
	text-decoration: none;
}

.cbt .ctb02 .lo_inner ul .step:nth-child(1),
.cbt .ctb02 .lo_inner ul .step:nth-child(2) {
	position: relative;
}

.cbt .ctb02 .lo_inner ul .step:nth-child(1)::after,
.cbt .ctb02 .lo_inner ul .step:nth-child(2)::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -70px;
	left: 62px;
	width: 2px;
	height: 60px;
	background: url(../../e-learning/img/line.png) repeat-y;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step:nth-child(1)::after,
	.cbt .ctb02 .lo_inner ul .step:nth-child(2)::after {
		left: 50%;
	}
}

.cbt .ctb02 .lo_inner ul .step:nth-child(3),
.cbt .ctb02 .lo_inner ul .step:nth-child(4) {
	position: relative;
}

.cbt .ctb02 .lo_inner ul .step:nth-child(3)::after,
.cbt .ctb02 .lo_inner ul .step:nth-child(4)::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -70px;
	left: 62px;
	width: 2px;
	height: 120px;
	background: url(../../e-learning/img/line.png) repeat-y;
}

@media (max-width: 767px) {
	.cbt .ctb02 .lo_inner ul .step:nth-child(3)::after,
	.cbt .ctb02 .lo_inner ul .step:nth-child(4)::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -70px;
		left: 50%;
		width: 2px;
		height: 60px;
		background: url(../../e-learning/img/line.png) repeat-y;
	}
}

.cbt .ctb03 {
	width: 100%;
}

.cbt .ctb03 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1100px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.cbt .ctb03 .lo_inner {
		width: calc(100% - 30px);
	}
}

.cbt .ctb03 .lo_inner .ctb03_wrap {
	width: 100%;
	padding: 40px;
	border-radius: 20px;
	background-color: #fff;
	text-align: left;
}

@media (max-width: 767px) {
	.cbt .ctb03 .lo_inner .ctb03_wrap {
		padding: 15px;
		border-radius: 15px;
	}
}

.cbt .ctb03 .lo_inner .ctb03_wrap dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin-bottom: 10px;
}

@media (max-width: 767px) {
	.cbt .ctb03 .lo_inner .ctb03_wrap dl {
		padding: 8px;
		border: 1px solid #ccc;
	}
}

.cbt .ctb03 .lo_inner .ctb03_wrap dl dt {
	width: 100px;
}

@media (max-width: 767px) {
	.cbt .ctb03 .lo_inner .ctb03_wrap dl dt {
		width: 100%;
		font-weight: 700;
	}
}

.cbt .ctb03 .lo_inner .ctb03_wrap dl dd {
	width: calc(100% - 100px);
}

@media (max-width: 767px) {
	.cbt .ctb03 .lo_inner .ctb03_wrap dl dd {
		width: 100%;
		font-size: 13px;
	}
}

/*----------------------------
* 下層免許取得までの流れ
*----------------------------*/
.flow .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.flow .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 30px;
	right: 30px;
	width: 217px;
	height: 139px;
	background: url(../../e-learning/img/flow/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.flow .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 100px;
		height: 64px;
	}
}

.flow .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.flow .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.flow .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.flow .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}
}

.flow .flow01 {
	width: 100%;
}

.flow .flow01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
	padding: 45px 30px 50px;
	border-radius: 20px;
	background-color: #edf6f3;
	text-align: center;
}

@media (max-width: 767px) {
	.flow .flow01 .lo_inner {
		width: calc(100% - 30px);
		padding: 20px 15px;
	}
}

.flow .flow01 .lo_inner img {
	width: 100%;
	max-width: 1226px;
}

.flow .flow02 {
	width: 100%;
}

.flow .flow02 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1350px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner {
		width: calc(100% - 30px);
	}
}

.flow .flow02 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
}

.flow .flow02 .lo_inner ul li {
	width: 100%;
	margin-bottom: 80px;
	overflow: hidden;
	border-radius: 20px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul li {
		margin-bottom: 50px;
		border-radius: 15px;
	}
}

.flow .flow02 .lo_inner ul li:last-child {
	margin-bottom: 0;
}

.flow .flow02 .lo_inner ul li .ttl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	height: 65px;
	border-radius: 20px 20px 0 0;
	background-color: #009e4d;
	color: #fff;
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul li .ttl {
		height: 50px;
		border-radius: 15px 15px 0 0;
		font-size: 22px;
	}
}

.flow .flow02 .lo_inner ul li .txt_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	padding: 25px;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul li .txt_wrap {
		padding: 15px;
	}
}

.flow .flow02 .lo_inner ul li .txt_wrap .img {
	width: 380px;
	margin-right: 30px;
	overflow: hidden;
	border-radius: 15px;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul li .txt_wrap .img {
		width: 100%;
		height: 56%;
		margin: 0 0 15px 0;
	}
}

.flow .flow02 .lo_inner ul li .txt_wrap .img img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt {
	width: calc(100% - 410px);
	text-align: left;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul li .txt_wrap .txt {
		width: 100%;
	}
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt a {
	color: #009e4d;
	text-decoration: underline;
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt a:hover {
	text-decoration: none;
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt .list {
	margin-bottom: 10px;
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt .list li {
	position: relative;
	margin-bottom: 0;
	padding-left: 15px;
}

.flow .flow02 .lo_inner ul li .txt_wrap .txt .list li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -8px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.flow .flow02 .lo_inner ul .flowbox {
	position: relative;
	overflow: inherit !important;
}

.flow .flow02 .lo_inner ul .flowbox::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -68px;
	left: 50%;
	width: 32px;
	height: 57px;
	margin-left: -17px;
	background: url(../../e-learning/img/arrow.svg) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.flow .flow02 .lo_inner ul .flowbox::after {
		bottom: -45px;
		width: 22px;
		height: 42px;
		margin-left: -11px;
	}
}

.flow .flow02 .lo_inner ul .flowbox:last-child::after {
	display: none;
}

/*----------------------------
* 下層第三級陸上特殊無線技士とは
*----------------------------*/
.rikutoku .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.rikutoku .h2::after {
	content: "";
	display: block;
	position: absolute;
	right: 30px;
	bottom: 0;
	width: 268px;
	height: 160px;
	background: url(../../e-learning/img/3rikutoku/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.rikutoku .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 109px;
		height: 65px;
	}
}

.rikutoku .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.rikutoku .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.rikutoku .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.rikutoku .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 26px;
		letter-spacing: -0.05em;
	}
}

.rikutoku .sty_rikutoku01 {
	width: 100%;
}

.rikutoku .sty_rikutoku01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 930px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.rikutoku .sty_rikutoku01 .lo_inner {
		width: calc(100% - 30px);
	}
}

.rikutoku .sty_rikutoku01 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin: 0 auto -50px;
}

@media (max-width: 767px) {
	.rikutoku .sty_rikutoku01 .lo_inner ul {
		margin: 0 auto -30px;
	}
}

.rikutoku .sty_rikutoku01 .lo_inner ul li {
	width: 47%;
	margin-bottom: 50px;
	text-align: left;
}

@media (max-width: 767px) {
	.rikutoku .sty_rikutoku01 .lo_inner ul li {
		width: 100%;
		margin-bottom: 30px;
	}
}

.rikutoku .sty_rikutoku01 .lo_inner ul li .img {
	width: 100%;
	height: auto;
	margin-bottom: 15px;
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.rikutoku .sty_rikutoku01 .lo_inner ul li .img {
		border-radius: 15px;
	}
}

.rikutoku .sty_rikutoku01 .lo_inner ul li .img img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.rikutoku .sty_rikutoku01 .lo_inner ul li .ttl {
	margin-bottom: 10px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.rikutoku .sty_rikutoku01 .lo_inner ul li .ttl {
		font-size: 18px;
	}
}

/*----------------------------
* 下層コラム
*----------------------------*/
.column .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.column .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 35px;
	right: 30px;
	width: 187px;
	height: 145px;
	background: url(../../e-learning/img/column/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.column .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 97px;
		height: 75px;
	}
}

.column .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.column .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.column .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.column .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}
}

.contents.column .catch {
	margin: 70px 0 50px;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	text-align: center;
}

@media (max-width: 767px) {
	.contents.column .catch {
		margin: 7% 0 20px;
		font-size: 18px;
		line-height: 1.4;
	}
}

.contents.column .btn_wrap {
	width: calc(100% - 60px);
	margin: 0 auto 100px;
	padding: 45px;
	border-radius: 20px;
	background-color: #edf6f3;
}

@media (max-width: 767px) {
	.contents.column .btn_wrap {
		width: calc(100% - 30px);
		margin: 0 auto 20px;
		padding: 15px;
		border-radius: 10px;
	}
}

.contents.column .btn_wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin: 0 0 -20px;
}

@media (max-width: 767px) {
	.contents.column .btn_wrap ul {
		justify-content: flex-start;
		margin: 0 0 -10px;
	}
}

.contents.column .btn_wrap ul li {
	min-width: 300px;
	margin: 0 15px;
}

@media (max-width: 767px) {
	.contents.column .btn_wrap ul li {
		min-width: auto;
		margin: 0 5px;
	}
}

.contents.column .btn_wrap ul li a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	margin: 0 0 20px;
	padding: 13px 10px 13px 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #fff;
	box-shadow: 0 0 7px rgba(16, 165, 88, 0.35);
	color: #009e4d;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 767px) {
	.contents.column .btn_wrap ul li a {
		width: auto;
		margin: 0 0 10px;
		padding: 8px 35px 8px 25px;
		border-radius: 5px;
		font-size: 14px;
		letter-spacing: -0.05em;
	}
}

.contents.column .btn_wrap ul li a span {
	position: relative;
}

.contents.column .btn_wrap ul li a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 7px);
	right: -25px;
	width: 13px;
	height: 13px;
	transform: rotate(135deg);
	transition: all 0.3s;
	border-top: 2px solid #009e4d;
	border-right: 2px solid #009e4d;
}

@media (max-width: 767px) {
	.contents.column .btn_wrap ul li a span::after {
		top: calc(50% - 4px);
		right: -25px;
		right: -15px;
		width: 8px;
		height: 8px;
	}
}

.contents.column .btn_wrap ul li a:hover {
	background-color: #009e4d;
	color: #fff;
}

.contents.column .btn_wrap ul li a:hover span::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contents.column .sty_column {
	padding: 0 0 100px;
}

@media (max-width: 767px) {
	.contents.column .sty_column {
		padding: 0 0 10%;
	}
}

.contents.column .sty_column .lo_inner .column__list {
	margin: 0 0 -40px;
}

.contents.column #pagerArea {
	max-width: 1350px;
	margin: 0 auto;
}

.contents.column #pagerArea .pager {
	margin: 50px auto 0;
}

.contents.column .pager .pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	text-align: center;
}

.contents.column .pager .pagination li {
	display: inline;
	display: inline-block;
	position: relative;
	width: 35px;
	height: 35px;
	margin: 0 5px;
	padding: 0;
	border: 2px solid #009e4d;
	border-radius: 3px;
	background: #fff;
	color: #009e4d;
	font-style: normal;
	font-weight: 700;
	text-align: center;
}

.contents.column .pager .pagination li a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 31px;
	height: 31px;
	padding-bottom: 3px;
	transition: 0.3s;
	color: #009e4d;
	text-align: center;
	text-decoration: none;
}

.contents.column .pager .pagination li .current {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 31px;
	height: 31px;
	padding-bottom: 3px;
	background-color: #009e4d;
	color: #fff;
}

.contents.column .pager .pagination li .page-numbers.dots {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	background-color: #fff;
	color: #009e4d;
}

.contents.column .pager .pagination li a span {
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
}

.contents.column .pager .pagination li a:hover {
	background: #009e4d;
	color: #fff;
}

.contents.column .pager .pagination li a.active {
	border: 2px solid #009e4d;
	background: #009e4d;
	color: #fff;
}

.contents.column .pager .pagination li.pre,
.contents.column .pager .pagination li.next {
	position: relative;
	border: 2px solid #009e4d;
	background: #fff;
	text-indent: -9999px;
}

.contents.column .pager .pagination li.pre a::before {
	content: "";
	display: block;
	position: absolute;
	top: 11px;
	left: 14px;
	width: 8px;
	height: 8px;
	transform: rotate(225deg);
	border-top: 2px solid #009e4d;
	border-right: 2px solid #009e4d;
}

.contents.column .pager .pagination li.next a::before {
	content: "";
	display: block;
	position: absolute;
	top: 11px;
	left: 10px;
	width: 8px;
	height: 8px;
	transform: rotate(45deg);
	border-top: 2px solid #009e4d;
	border-right: 2px solid #009e4d;
}

.contents.column .pager .pagination li.pre a:hover,
.contents.column .pager .pagination li.next a:hover {
	background: #009e4d;
	color: #fff;
}

.contents.column .pager .pagination li.pre a:hover::before,
.contents.column .pager .pagination li.next a:hover::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.column_details {
	width: 100%;
	text-align: left;
}

.column_details .lo_inner {
	width: calc(100% - 60px);
	max-width: 920px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.column_details .lo_inner {
		width: calc(100% - 30px);
	}
}

.column_details .lo_inner .ttl_wrap {
	width: 100%;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 2px solid #009e4d;
}

@media (max-width: 767px) {
	.column_details .lo_inner .ttl_wrap {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
}

.column_details .lo_inner .ttl_wrap .news__tag {
	margin-bottom: 10px;
}

.column_details .lo_inner .ttl_wrap .news__tag span {
	padding: 2px 10px;
	border-radius: 3px;
	background-color: #009e4d;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}

.column_details .lo_inner .ttl_wrap h1 {
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
}

@media (max-width: 767px) {
	.column_details .lo_inner .ttl_wrap h1 {
		font-size: 22px;
	}
}

.column_details .lo_inner .date {
	margin-bottom: 30px;
	color: #999;
	font-size: 14px;
	font-weight: 700;
}

@media (max-width: 767px) {
	.column_details .lo_inner .date {
		margin-bottom: 15px;
	}
}

.column_details .lo_inner figure {
	width: 100%;
}

.column_details .lo_inner figure.main {
	margin-bottom: 35px;
	overflow: hidden;
	border-radius: 20px;
}

@media (max-width: 767px) {
	.column_details .lo_inner figure.main {
		margin-bottom: 25px;
		border-radius: 15px;
	}
}

.column_details .lo_inner figure img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.column_details .lo_inner .wrap {
	margin-bottom: 60px;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap {
		margin-bottom: 30px;
	}
}

.column_details .lo_inner .wrap h2 {
	position: relative;
	margin-bottom: 20px;
	padding: 15px 15px 15px 35px;
	overflow: hidden;
	border-radius: 5px;
	background-color: #009e4d;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap h2 {
		margin-bottom: 15px;
		padding: 10px 10px 10px 25px;
		font-size: 20px;
	}
}

.column_details .lo_inner .wrap h2::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 11px;
	height: 100%;
	background-color: #49af73;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap h2::before {
		width: 8px;
	}
}

.column_details .lo_inner .wrap h3 {
	position: relative;
	margin: 50px 0 20px;
	padding: 5px 0 5px 35px;
	color: #009e4d;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap h3 {
		margin: 25px 0 15px;
		padding: 5px 0 5px 20px;
		font-size: 20px;
	}
}

.column_details .lo_inner .wrap h3::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 11px;
	height: 100%;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap h3::before {
		width: 8px;
	}
}

.column_details .lo_inner .wrap h4 {
	margin: 20px 0 10px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap h4 {
		font-size: 18px;
	}
}

.column_details .lo_inner .wrap .details01 {
	width: 100%;
	margin-bottom: 20px;
	padding: 30px;
	border-radius: 5px;
	background-color: #edf6f3;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap .details01 {
		margin-bottom: 10px;
		padding: 15px;
	}
}

.column_details .lo_inner .wrap .block-border {
	width: 100%;
	margin-bottom: 20px;
	padding: 30px;
	border: none;
	border-radius: 5px;
	background-color: #edf6f3;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap .block-border {
		margin-bottom: 10px;
		padding: 15px;
	}
}

.column_details .lo_inner .wrap ul {
	width: 100%;
	margin: 15px 0;
	padding-left: 15px;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap ul {
		margin: 10px 0;
		padding-left: 10px;
	}
}

.column_details .lo_inner .wrap ul li {
	position: relative;
	width: 100%;
	margin-bottom: 8px;
	padding-left: 15px;
	line-height: 1.4;
	text-align: left;
}

.column_details .lo_inner .wrap ul li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -5px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.column_details .lo_inner .wrap ul li.dot_non {
	padding-left: 10px;
	text-indent: -1.5em;
}

.column_details .lo_inner .wrap ul li.dot_non::before {
	display: none;
}

.column_details .lo_inner .wrap ul li:last-child {
	margin-bottom: 0;
}

.column_details .lo_inner .wrap ol {
	width: 100%;
	margin: 15px 0;
	padding-left: 20px;
	list-style-type: none;
	counter-reset: item;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap ol {
		margin: 10px 0;
		padding-left: 10px;
	}
}

.column_details .lo_inner .wrap ol li {
	width: 100%;
	margin-bottom: 8px;
	padding-left: 1.3em;
	line-height: 1.4;
	text-align: left;
	text-indent: -1.3em;
}

.column_details .lo_inner .wrap ol li::before {
	content: counter(item);
	padding-right: 10px;
	color: #009e4d;
	counter-increment: item;
}

.column_details .lo_inner .wrap ol li:last-child {
	margin-bottom: 0;
}

.column_details .lo_inner .wrap p {
	margin-bottom: 8px;
}

.column_details .lo_inner .wrap a {
	color: #009e4d;
	text-decoration: underline;
}

.column_details .lo_inner .wrap a:hover {
	text-decoration: none;
}

.column_details .lo_inner .wrap .small {
	font-size: 14px;
	line-height: 1.3;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap .small {
		font-size: 12px;
	}
}

.column_details .lo_inner .wrap table {
	width: 100%;
	margin: 10px 0 0;
	margin-bottom: 10px;
	border-collapse: collapse;
}

.column_details .lo_inner .wrap table th {
	padding: 12px 15px;
	border: 1px solid #ccc;
	background: #edf6f3;
	color: #009e4d;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap table th {
		padding: 8px 5px;
		font-size: 14px;
		line-height: 1.4;
	}
}

.column_details .lo_inner .wrap table td {
	padding: 12px 15px;
	border: 1px solid #ccc;
	background: #fff;
	font-size: 16px;
	line-height: 1.5;
	text-align: left;
	vertical-align: middle;
}

@media (max-width: 767px) {
	.column_details .lo_inner .wrap table td {
		padding: 8px 5px;
		font-size: 14px;
		line-height: 1.4;
	}
}

.column_details .lo_inner .btn_wrap_under {
	width: 100%;
	margin-top: 20px;
	padding-top: 50px;
	border-top: 2px solid #009e4d;
	text-align: center;
}

@media (max-width: 767px) {
	.column_details .lo_inner .btn_wrap_under {
		padding-top: 30px;
	}
}

.column_details .lo_inner .btn_wrap_under .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 350px;
	margin: 0 auto;
	padding: 1.5% 10px 1.5% 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #009e4d;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	font-weight: 500;
	letter-spacing: -0.05em;
	text-decoration: none;
}

@media (max-width: 767px) {
	.column_details .lo_inner .btn_wrap_under .btn a {
		padding: 12px 10px 12px 0;
		font-size: 20px;
	}
}

.column_details .lo_inner .btn_wrap_under .btn a span {
	position: relative;
}

.column_details .lo_inner .btn_wrap_under .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: -20px;
	width: 13px;
	height: 13px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.column_details .lo_inner .btn_wrap_under .btn a:hover {
	opacity: 0.7;
}

.column_details .lo_inner .btn_wrap_under .btn a:hover span::after {
	right: -25px;
}
/* 240527 追加 ここから */
.column_details .lo_inner {
	display: flex;
	justify-content: space-between;
	max-width: 1080px;
}

.column_details .column_main {
	width: 70%;
}

.column_details .column_sidebar {
	position: sticky;
	top: 80px;
	width: 26%;
	max-width: 280px;
	height: 364px;
}

.column_details .column_sidebar a:hover {
	opacity: 0.8;
}

.text_link_wrap {
	text-align: center;
}

.text_link_wrap a {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 12px;
	color: #009f4f;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-weight: 700;
	text-decoration: none;
}

.text_link_wrap a::before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: transform 0.3s;
	border-bottom: 2px solid #0da254;
	border-left: 2px solid #0da254;
}

.text_link_wrap a:hover::before {
	transform: rotate(45deg) translate(-4px, 4px);
}

@media screen and (max-width: 767.98px) {
	.column_details .column_sidebar {
		display: none;
	}

	.column_details .column_main {
		width: 100%;
	}

	.text_link_wrap a {
		font-size: 18px;
	}
}
/* 240527 追加 ここまで */

/*----------------------------
* 下層FAQ
*----------------------------*/
.faq .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.faq .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 35px;
	right: 30px;
	width: 235px;
	height: 137px;
	background: url(../../e-learning/img/faq/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.faq .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 120px;
		height: 70px;
	}
}

.faq .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.faq .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.faq .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.faq .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 30px;
	}
}

.faq .c-faq-list {
	position: relative;
	font-style: normal;
	font-weight: 700;
}

.faq .c-faq-list .category {
	display: inline-block;
	position: relative;
	width: 100%;
	margin-bottom: 10px;
	color: #009e4d;
	font-size: 16px;
}

@media (max-width: 767px) {
	.faq .c-faq-list .category {
		margin-bottom: 5px;
		font-size: 14px;
	}
}

.faq .c-faq-list .category::before {
	content: "";
	display: block;
	position: absolute;
	top: 15px;
	left: -50px;
	width: 42px;
	height: 2px;
	background-color: #009e4d;
}

@media (max-width: 767px) {
	.faq .c-faq-list .category::before {
		top: 10px;
		left: -20px;
		width: 15px;
	}
}

.faq .c-faq-list .question {
	display: inline-block;
	position: relative;
	width: 100%;
	padding: 0 20px 0 30px;
	color: #333;
	font-size: 20px;
	line-height: 1.5;
}

@media (max-width: 767px) {
	.faq .c-faq-list .question {
		padding: 0 10px 0 15px;
		font-size: 16px;
	}
}

.faq .c-faq-list .question::before {
	content: "Q";
	position: absolute;
	top: -0.35em;
	left: 0;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.faq .c-faq-list .question::before {
		font-size: 20px;
	}
}

.faq .c-faq-list::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 35px;
	width: 21px;
	height: 12px;
	margin-top: -6px;
	transform: rotate(90deg);
	transition: all 0.3s;
	background: url(../../e-learning/img/arrow_g.svg) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.faq .c-faq-list::after {
		right: 10px;
		width: 16px;
		height: 9px;
	}
}

.faq a {
	transition: all 0.3s;
	text-decoration: none;
}

.faq a :hover {
	background-color: #cce5dd;
}

.faq_details {
	width: 100%;
	text-align: left;
}

.faq_details .lo_inner {
	width: calc(100% - 60px);
	max-width: 920px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.faq_details .lo_inner {
		width: calc(100% - 30px);
	}
}

.faq_details .lo_inner .ttl_wrap {
	width: 100%;
	margin-bottom: 25px;
	padding-bottom: 20px;
	border-bottom: 2px solid #009e4d;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .ttl_wrap {
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
}

.faq_details .lo_inner .ttl_wrap .faq__tag {
	margin-bottom: 10px;
}

.faq_details .lo_inner .ttl_wrap .faq__tag span {
	padding: 2px 10px;
	border-radius: 3px;
	background-color: #009e4d;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}

.faq_details .lo_inner .ttl_wrap h1 {
	position: relative;
	padding-left: 30px;
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .ttl_wrap h1 {
		padding-left: 25px;
		font-size: 22px;
	}
}

.faq_details .lo_inner .ttl_wrap h1::before {
	content: "Q";
	position: absolute;
	top: -0.1em;
	left: 0;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 36px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .ttl_wrap h1::before {
		top: -5px;
		font-size: 30px;
	}
}

.faq_details .lo_inner .detail {
	margin-bottom: 60px;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .detail {
		margin-bottom: 30px;
	}
}

.faq_details .lo_inner .detail .answer {
	position: relative;
	padding-left: 30px;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .detail .answer {
		padding-left: 25px;
	}
}

.faq_details .lo_inner .detail .answer::before {
	content: "A";
	position: absolute;
	top: -0.6em;
	left: 0;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .detail .answer::before {
		top: -13px;
		font-size: 30px;
	}
}

.faq_details .lo_inner .detail .answer .box {
	margin-top: 15px;
}

.faq_details .lo_inner .detail .answer .box .ttl {
	font-size: 17px;
	font-weight: 700;
}

.faq_details .lo_inner .detail .answer .box .subttl {
	margin-top: 10px;
	font-weight: 700;
}

.faq_details .lo_inner .detail table {
	width: 100%;
	margin: 10px 0 0;
	border-collapse: collapse;
}

.faq_details .lo_inner .detail table th {
	padding: 12px 0;
	border: 1px solid #ccc;
	background: #edf6f3;
	color: #009e4d;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	vertical-align: middle;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .detail table th {
		padding: 8px 0;
		font-size: 14px;
	}
}

.faq_details .lo_inner .detail table td {
	padding: 12px 15px;
	border: 1px solid #ccc;
	background: #fff;
	font-size: 16px;
	line-height: 1.4;
	text-align: left;
	vertical-align: middle;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .detail table td {
		padding: 8px 10px;
		font-size: 14px;
	}
}

.faq_details .lo_inner .detail a {
	color: #009e4d;
	text-decoration: underline;
}

.faq_details .lo_inner .detail a:hover {
	text-decoration: none;
}

.faq_details .lo_inner .detail li {
	position: relative;
	padding: 0 0 0 15px;
}

.faq_details .lo_inner .detail li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -8px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.faq_details .lo_inner .detail ul.kana li {
	padding: 0 0 0 2em;
	text-indent: -2em;
}

.faq_details .lo_inner .detail ul.kana li::before {
	display: none;
}

.faq_details .lo_inner .btn_wrap_under {
	width: 100%;
	margin-top: 20px;
	padding-top: 50px;
	border-top: 2px solid #009e4d;
	text-align: center;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .btn_wrap_under {
		padding-top: 30px;
	}
}

.faq_details .lo_inner .btn_wrap_under .btn a {
	display: block;
	position: relative;
	z-index: 1;
	width: 350px;
	margin: 0 auto;
	padding: 1.5% 10px 1.5% 0;
	overflow: hidden;
	border-radius: 15px;
	background-color: #009e4d;
	color: #fff;
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	font-weight: 500;
	letter-spacing: -0.05em;
	text-decoration: none;
}

@media (max-width: 767px) {
	.faq_details .lo_inner .btn_wrap_under .btn a {
		padding: 12px 10px 12px 0;
		font-size: 20px;
	}
}

.faq_details .lo_inner .btn_wrap_under .btn a span {
	position: relative;
}

.faq_details .lo_inner .btn_wrap_under .btn a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: -20px;
	width: 13px;
	height: 13px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.faq_details .lo_inner .btn_wrap_under .btn a:hover {
	opacity: 0.7;
}

.faq_details .lo_inner .btn_wrap_under .btn a:hover span::after {
	right: -25px;
}

/*----------------------------
* 下層お申込みページ
*----------------------------*/
.apply .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

.apply .h2::after {
	content: "";
	display: block;
	position: absolute;
	top: 30px;
	right: 30px;
	width: 235px;
	height: 143px;
	background: url(../../e-learning/img/apply/ttl.png) no-repeat;
	background-size: cover;
}

@media (max-width: 767px) {
	.apply .h2::after {
		top: inherit;
		right: 10px;
		bottom: -10px;
		width: 115px;
		height: 70px;
	}
}

.apply .h2 .en {
	position: absolute;
	bottom: -20px;
	left: 30px;
	opacity: 0.15;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 150px;
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.apply .h2 .en {
		bottom: -10px;
		left: 0;
		font-size: 80px;
	}
}

@media (max-width: 1180px) {
	.apply .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.apply .h2 {
		width: 100%;
		height: 150px;
		padding: 0 0 20px 0;
		border-radius: 0;
		font-size: 26px;
		letter-spacing: -0.05em;
	}
}

.apply .apply01 {
	width: 100%;
}

.apply .apply01 .lo_inner {
	width: calc(100% - 60px);
	max-width: 920px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner {
		width: calc(100% - 30px);
	}
}

.apply .apply01 .lo_inner .tbl01 {
	width: 100%;
	margin-bottom: 60px;
	table-layout: fixed;
	border-collapse: separate;
	font-style: normal;
	font-weight: 700;
	text-align: left;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 {
		margin-bottom: 30px;
	}
}

.apply .apply01 .lo_inner .tbl01 th {
	width: 245px;
	padding: 20px 30px;
	background-color: #edf6f3;
	font-size: 20px;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 th {
		display: block;
		width: 100%;
		padding: 10px 15px;
		font-size: 16px;
		text-align: center;
	}
}

.apply .apply01 .lo_inner .tbl01 th.ro01 {
	border-top: 4px solid #7dc9a2;
	border-bottom: 2px solid #7dc9a2;
	border-left: 4px solid #7dc9a2;
	border-radius: 20px 0 0 0;
	/* 240607 追加 */
	@media screen and (min-width: 767.98px) {
		width: calc(245 / 920 * 100%);
		max-width: 245px;
	}
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 th.ro01 {
		border-top: 2px solid #7dc9a2;
		border-right: 2px solid #7dc9a2;
		border-bottom: none;
		border-left: 2px solid #7dc9a2;
		border-radius: 15px 15px 0 0;
	}
}

.apply .apply01 .lo_inner .tbl01 th.ro03 {
	border-bottom: 4px solid #7dc9a2;
	border-left: 4px solid #7dc9a2;
	border-radius: 0 0 0 20px;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 th.ro03 {
		border-top: 1px solid #7dc9a2;
		border-right: 2px solid #7dc9a2;
		border-bottom: none;
		border-left: 2px solid #7dc9a2;
		border-radius: 0;
	}
}

.apply .apply01 .lo_inner .tbl01 td {
	width: 675px;
	padding: 20px 30px;
	font-size: 18px;
	letter-spacing: 0.05em;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 td {
		display: block;
		width: 100%;
		padding: 0 15px;
		font-size: 16px;
		text-align: center;
	}
}

.apply .apply01 .lo_inner .tbl01 td.ro02 {
	border-top: 4px solid #7dc9a2;
	border-right: 4px solid #7dc9a2;
	border-bottom: 2px solid #7dc9a2;
	border-radius: 0 20px 0 0;
	/* 240607 追加 */
	@media screen and (min-width: 767.98px) {
		width: calc(675 / 920 * 100%);
		max-width: 675px;
	}
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 td.ro02 {
		border-top: none;
		border-right: 2px solid #7dc9a2;
		border-bottom: none;
		border-left: 2px solid #7dc9a2;
		border-radius: 0;
	}
}

.apply .apply01 .lo_inner .tbl01 td.ro02 .txt01 {
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 36px;
	font-weight: 600;
}

.apply .apply01 .lo_inner .tbl01 td.ro02 .txt02 {
	font-size: 24px;
}

.apply .apply01 .lo_inner .tbl01 td.ro04 {
	border-right: 4px solid #7dc9a2;
	border-bottom: 4px solid #7dc9a2;
	border-radius: 0 0 20px 0;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl01 td.ro04 {
		border-right: 2px solid #7dc9a2;
		border-bottom: 2px solid #7dc9a2;
		border-left: 2px solid #7dc9a2;
		border-radius: 0 0 15px 15px;
	}
}

.apply .apply01 .lo_inner .tbl01 td.ro04 .txt03 {
	margin-left: 12px;
	color: #009e4d;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
}

.apply .apply01 .lo_inner .tbl02 {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	text-align: left;
}

.apply .apply01 .lo_inner .tbl02 th {
	width: 50%;
	padding: 20px 30px;
	background-color: #edf6f3;
	color: #009e4d;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	text-align: center;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 th {
		display: block;
		width: 100%;
		padding: 10px 15px;
		font-size: 18px;
	}
}

.apply .apply01 .lo_inner .tbl02 th.ro01 {
	border-top: 4px solid #7dc9a2;
	border-right: 2px solid #7dc9a2;
	border-left: 4px solid #7dc9a2;
	border-radius: 20px 0 0 0;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 th.ro01 {
		border-top: 2px solid #7dc9a2;
		border-right: 2px solid #7dc9a2;
		border-left: 2px solid #7dc9a2;
		border-radius: 15px 15px 0 0;
	}
}

.apply .apply01 .lo_inner .tbl02 th.ro02 {
	border-top: 4px solid #7dc9a2;
	border-right: 4px solid #7dc9a2;
	border-radius: 0 20px 0 0;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 th.ro02 {
		border-top: none;
		border-right: 2px solid #7dc9a2;
		border-left: 2px solid #7dc9a2;
		border-radius: 0;
	}
}

.apply .apply01 .lo_inner .tbl02 td {
	width: 50%;
	padding: 20px 30px;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.6;
	vertical-align: baseline;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 td {
		display: block;
		width: 100%;
		padding: 10px 15px;
		font-size: 14px;
	}
}

.apply .apply01 .lo_inner .tbl02 td.ro03 {
	border-right: 2px solid #7dc9a2;
	border-bottom: 4px solid #7dc9a2;
	border-left: 4px solid #7dc9a2;
	border-radius: 0 0 0 20px;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 td.ro03 {
		border-right: 2px solid #7dc9a2;
		border-bottom: none;
		border-left: 2px solid #7dc9a2;
		border-radius: 0;
	}
}

.apply .apply01 .lo_inner .tbl02 td.ro04 {
	border-right: 4px solid #7dc9a2;
	border-bottom: 4px solid #7dc9a2;
	border-radius: 0 0 20px 0;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 td.ro04 {
		border-right: 2px solid #7dc9a2;
		border-bottom: 2px solid #7dc9a2;
		border-left: 2px solid #7dc9a2;
		border-radius: 0 0 15px 15px;
	}
}

.apply .apply01 .lo_inner .tbl02 td ul {
	margin-top: 10px;
}

.apply .apply01 .lo_inner .tbl02 td ul li {
	position: relative;
	margin-bottom: 8px;
	padding-left: 15px;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 td ul li {
		margin-bottom: 5px;
	}
}

.apply .apply01 .lo_inner .tbl02 td ul li:last-child {
	margin-bottom: 0;
}

.apply .apply01 .lo_inner .tbl02 td ul li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -3px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.apply .apply01 .lo_inner .tbl02 td .small {
	font-size: 16px;
	letter-spacing: -0.05em;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.apply .apply01 .lo_inner .tbl02 td .small {
		font-size: 12px;
	}
}

.apply .apply02 {
	width: 100%;
}

.apply .apply02 .lo_inner {
	width: calc(100% - 60px);
	max-width: 920px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner {
		width: calc(100% - 30px);
	}
}

.apply .apply02 .lo_inner .form_wrap {
	padding: 40px;
	border-radius: 20px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap {
		padding: 10px 10px 20px 10px;
		border-radius: 10px;
	}
}

.apply .apply02 .lo_inner .form_wrap .txt {
	margin-bottom: 20px;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap .txt {
		margin-top: 10px;
		font-size: 15px;
		line-height: 1.4;
	}
}

.apply .apply02 .lo_inner .form_wrap .txt02 {
	margin-bottom: 20px;
	font-size: 16px;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap .txt02 {
		margin-bottom: 10px;
		font-size: 14px;
	}
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li {
	width: 24%;
	margin-right: 1%;
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li:last-child {
	margin-right: 0;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 10px;
	}

	.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li:nth-child(2) {
		margin-right: 0;
	}
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a {
	display: block;
	position: relative;
	z-index: 1;
	width: 100%;
	width: 100%;
	padding: 12px 10px 12px 0;
	overflow: hidden;
	border-radius: 10px;
	background-color: #009e4d;
	color: #fff;
	font-size: 17px;
	font-style: normal;
	font-weight: 700;
	font-weight: 500;
	letter-spacing: -0.05em;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a {
		margin-top: 0;
		font-size: 14px;
		letter-spacing: -0.05em;
	}

	.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a.kana {
		letter-spacing: -0.15em;
	}
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a span {
	position: relative;
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a span::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	right: -13px;
	width: 11px;
	height: 11px;
	transform: rotate(45deg);
	transition: all 0.3s;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a span::after {
		top: calc(50% - 2px);
		right: -12px;
		width: 8px;
		height: 8px;
	}
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a:hover {
	opacity: 0.7;
}

.apply .apply02 .lo_inner .form_wrap .thanks_btnwrap li a:hover span::after {
	right: -17px;
}

@media (max-width: 767px) {
	.apply
		.apply02
		.lo_inner
		.form_wrap
		.thanks_btnwrap
		li
		a:hover
		span::after {
		right: -12px;
	}
}

.apply .apply02 .lo_inner .under_wrap {
	margin-top: 30px;
	text-align: center;
}

@media (max-width: 767px) {
	.apply .apply02 .lo_inner .under_wrap {
		margin-top: 15px;
	}
}

.apply .apply02 .lo_inner .under_wrap a {
	margin-top: 30px;
	color: #009e4d;
	text-decoration: underline;
}

.apply .apply02 .lo_inner .under_wrap a:hover {
	text-decoration: none;
}

.apply .syy03 {
	width: 100%;
}

.apply .syy03 .lo_inner {
	width: calc(100% - 60px);
	max-width: 1210px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner {
		width: calc(100% - 30px);
	}
}

.apply .syy03 .lo_inner ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner ul {
		margin-top: -20px;
	}
}

.apply .syy03 .lo_inner ul.box3column li {
	position: relative;
	width: 31.5%;
	margin-top: 30px;
	padding: 60px 0 0;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner ul.box3column li {
		width: 100%;
		padding: 40px 0 0;
	}
}

.apply .syy03 .lo_inner ul.box3column li .no {
	display: flex;
	position: absolute;
	top: -30px;
	left: 50%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 70px;
	height: 70px;
	margin-left: -35px;
	border-radius: 35px;
	background-color: #009e4d;
	color: #fff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.05em;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner ul.box3column li .no {
		top: -20px;
		width: 50px;
		height: 50px;
		margin-left: -25px;
		border-radius: 25px;
		font-size: 26px;
	}
}

.apply .syy03 .lo_inner ul.box3column li .img {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	height: 180px;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner ul.box3column li .img {
		height: 140px;
	}
}

.apply .syy03 .lo_inner ul.box3column li .img img {
	width: auto;
	height: 100%;
}

.apply .syy03 .lo_inner ul.box3column li .txt {
	padding: 20px;
	font-size: 16px;
	text-align: left;
}

@media (max-width: 767px) {
	.apply .syy03 .lo_inner ul.box3column li .txt {
		padding: 15px;
		font-size: 14px;
	}
}
/* 240521 追加 ここから */
#lo_header:has(~ .contents.apply.submit-form),
#lo_header:has(~ .contents.apply.cf7-step-form) {
	display: none;
}

.submit-form section:first-of-type {
	padding-top: 27px;
}

.submit-form .under h3 {
	margin-bottom: 19px;
}

.submit-form .under h3 + p {
	font-weight: 700;
}

.submit-form .under h3 + p a {
	color: #009e4d;
}

.submit-form .apply02 .lo_inner .form_wrap {
	margin-top: 30px;
	padding: 24px 40px 30px;
}

.c-form-step__step-items {
	display: flex;
	align-items: center;
	padding-left: 35px;
	column-gap: 11px;
}

.c-form-step__step-items:not(#_) .txt {
	margin: 0 24px 0 0;
}

.c-form-step__step-items__item-box {
	display: block;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background-color: #f0f0f0;
}

.c-form-step__step-items__item-box {
	color: #888;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-weight: 700;
}

.c-form-step__step-items__item-box.current {
	background-color: #009e4d;
	color: #fff;
}

.wpcf7-form-control.wpcf7-radio {
	display: flex;
	column-gap: 10px;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
	width: unset;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item label {
	padding: 0.5em;
}

.wpcf7 #entryForm input[type="submit"] {
	max-width: 525px;
	margin: 0;
}

.wpcf7 #entryForm .btn_block {
	margin-top: 20px;
}

.wpcf7 #entryForm .btn__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 525px;
	margin: 0;
	margin-inline: auto;
	column-gap: 47px;
	transition: opacity 0.3s;
	border: unset;
	border-radius: 11px;
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}

.wpcf7 #entryForm .btn__link.submit-btn {
	background-color: #e4231f;
	color: #fff;
}

.wpcf7 #entryForm .btn__link.submit-btn:disabled {
	background-color: #ccc;
	cursor: not-allowed;
}

.wpcf7 #entryForm .txt_wrap.confirm-hidden {
	width: 100%;
	margin-top: 20px;
	padding: 30px 25px 30px 60px;
	border-radius: 5px;
	background-color: #f3f3f3;
	text-align: left;
}

.wpcf7 #entryForm .txt_wrap p {
	margin-bottom: 20px;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}

.wpcf7 #entryForm .txt_wrap ul li {
	position: relative;
	margin-bottom: 8px;
	padding-left: 15px;
}

.wpcf7 #entryForm .txt_wrap ul li::before {
	content: "・";
	display: block;
	position: absolute;
	top: -5px;
	left: -8px;
	color: #009e4d;
	font-size: 24px;
	font-weight: 700;
}

.wpcf7 #entryForm .confirm_wrap {
	max-height: 384px;
}

.submit-form #entryForm span.wpcf7-not-valid-tip {
	margin: 0;
	padding: 0.2em 0;
	font-size: 14px !important;
}

.wpcf7 #entryForm #buttonArea2 {
	display: none;
}

.cf7-step-form .wpcf7 #entryForm #buttonArea2 {
	display: flex;
}

.cf7-step-form .wpcf7 #entryForm .btn_block {
	display: flex;
	justify-content: center;
}

.cf7-step-form #entryForm .btn_block .btn_next-wrap {
	position: relative;
	width: 49%;
	transition: opacity 0.3s;
}

.cf7-step-form #entryForm .wpcf7-spinner {
	display: none;
}

.cf7-step-form #entryForm .btn_next-wrap:hover {
	opacity: 0.8;
}

.cf7-step-form #entryForm .btn_next-wrap::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	width: 12px;
	height: 12px;
	transform: rotate(45deg) translateY(-50%);
}

.cf7-step-form #entryForm .btn_next-wrap::after {
	right: 16%;
	transition: right 0.3s;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}

.cf7-step-form #entryForm .btn_next-wrap:hover::after {
	right: 14%;
}

.cf7-step-form #entryForm .confirm_wrap {
	margin-top: 20px;
	overflow: scroll;
	border-radius: 5px;
	/*スクロールバー非表示*/
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.cf7-step-form #entryForm .confirm_wrap::-webkit-scrollbar {
	display: none;
}

.cf7-step-form #entryForm .txt_wrap.confirm-hidden:first-child {
	margin-top: 0;
}

.cf7-step-form.confirm #buttonArea,
.cf7-step-form.confirm #buttonArea2 {
	margin: 0;
	padding: 0;
}

.cf7-step-form.confirm #buttonArea2 .btn_previous-wrap a {
	text-decoration: none;
}

.cf7-step-form #entryForm .tel-validation .wpcf7-not-valid-tip {
	display: none;
}

.cf7-step-form #entryForm .tel-validation .error-message {
	display: none;
	padding: 0.2em 0;
	color: #df171f !important;
	font-size: 14px !important;
	font-weight: 600 !important;
}

.cf7-step-form
	#entryForm
	.tel-validation:has(.wpcf7-not-valid-tip)
	.error-message {
	display: block;
}

@media screen and (max-width: 767.98px) {
	.submit-form .under h3 {
		font-size: 24px;
	}

	.submit-form .apply02 .lo_inner .form_wrap {
		padding-inline: 15px;
	}

	.submit-form input[type="text"].w_small {
		width: 30%;
	}

	.submit-form .wpcf7 #entryForm .btn__link,
	.cf7-step-form .wpcf7 #entryForm .btn__link {
		padding: 18px 24px;
		font-size: 16px;
	}

	.submit-form .wpcf7 #entryForm .txt_wrap.confirm-hidden {
		padding: 30px 20px;
	}

	.submit-form .wpcf7 #entryForm .txt_wrap p {
		margin-bottom: 8px;
		font-size: 16px;
	}

	.submit-form .wpcf7 #entryForm .txt_wrap ul li {
		margin: 0;
	}

	.submit-form .wpcf7 #entryForm input[type="submit"] {
		width: 100%;
	}

	.submit-form #buttonArea .button_wrap::after {
		right: 8px;
	}

	.cf7-step-form #entryForm .btn_block .btn_next-wrap {
		width: 100%;
		height: 60px;
	}

	.cf7-step-form .wpcf7 #entryForm .btn_block {
		display: block;
	}

	.cf7-step-form #entryForm .btn_block .btn_previous-wrap + .btn_next-wrap {
		margin-top: 16px;
	}

	.cf7-step-form #entryForm .btn_next-wrap::after {
		right: 6%;
	}

	.cf7-step-form #entryForm .btn_next-wrap:hover::after {
		right: 4%;
	}
}
/* 240521 追加 ここまで */
/* 240527 追加 ここから */
.apply.cf7-step-form h2 {
	display: none;
}

#lo_wrapper:has(.apply-complete-el) #lo_header {
	display: none;
}

.apply.apply-complete-el .form_wrap .syy03 .lo_inner {
	width: 100%;
}

.apply.apply-complete-el .apply02 .lo_inner .form_wrap {
	padding: 48px 29px;
}

.apply.apply-complete-el .form_wrap .syy03 .lo_inner ul.box3column li {
	padding: 60px 12px 0;
}

.apply.apply-complete-el .form_wrap .syy03 .lo_inner ul.box3column li .img {
	height: 133px;
}

.apply.apply-complete-el .form_wrap .syy03 .lo_inner ul.box3column li .txt {
	padding-inline: 0;
	color: #000;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}

.apply.apply-complete-el .apply02 .lo_inner .form_wrap a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 30px;
	column-gap: 14px;
	transition: opacity 0.3s;
	color: #009f4f;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-weight: 700;
	text-decoration: none;
}

.apply.apply-complete-el .apply02 .lo_inner .form_wrap a:hover {
	opacity: 0.8;
}

.apply.apply-complete-el .apply02 .lo_inner .form_wrap a::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: transform 0.3s;
	border-bottom: 3px solid #009f4f;
	border-left: 3px solid #009f4f;
}

.apply.apply-complete-el .apply02 .lo_inner .form_wrap a:hover::before {
	transform: rotate(45deg) translate(-4px, 4px);
}

.apply.apply-complete-el .form_wrap .thanks_btnwrap li a {
	margin: 0;
}

.apply.apply-complete-el .lo_inner .form_wrap .thanks_btnwrap a::before {
	display: none;
}

.apply.apply-complete-el .form_wrap + .form_wrap {
	margin-top: 80px;
}

@media screen and (max-width: 767.98px) {
	.contents.apply.apply-complete-el .under h3 {
		font-size: 24px;
	}

	.contents.apply.apply-complete-el .under .form_wrap h3,
	.contents.apply.apply-complete-el .under .form_wrap a {
		font-size: 22px;
	}

	.apply.apply-complete-el .apply02 .lo_inner .form_wrap:first-of-type {
		padding: 10px;
	}
}

.wpcf7-response-output {
	display: none;
}
/* 240527 追加 ここまで */

/*----------------------------
* 利用規約
*----------------------------*/
.specific .h2 {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: calc(100% - 60px);
	height: 200px;
	margin: 0 auto;
	border-radius: 20px;
	background: linear-gradient(to right, #029f4e, #1aa85f);
	color: #fff;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
}

@media (max-width: 1180px) {
	.specific .h2 {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.specific .h2 {
		width: 100%;
		height: 100px;
		padding: 0;
		border-radius: 0;
		font-size: 26px;
		letter-spacing: -0.05em;
	}
}

.specific .page {
	padding: 100px 0 0;
	text-align: left;
}

@media (max-width: 767px) {
	.specific .page {
		padding: 10% 0 0;
	}
}

.specific .page ul {
	width: 100%;
	padding: 30px 60px;
	border-radius: 10px;
	background-color: #edf6f3;
}

@media (max-width: 767px) {
	.specific .page ul {
		padding: 15px;
		border-radius: 5px;
	}
}

.specific .page ul li {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 700;
}

@media (max-width: 767px) {
	.specific .page ul li {
		font-size: 14px;
	}
}

.specific .page ul li span {
	margin-right: 50px;
	color: #009e4d;
}

@media (max-width: 767px) {
	.specific .page ul li span {
		margin-right: 10px;
	}
}

.specific .page ul li a {
	text-decoration: none;
}

.specific .page ul li a:hover {
	color: #009e4d;
	text-decoration: underline;
}

.specific .page ul li:last-child {
	margin-bottom: 0;
}

.specific .lo_inner {
	width: calc(100% - 60px);
	max-width: 920px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.specific .lo_inner {
		width: calc(100% - 30px);
	}
}

.specific .lo_inner h2 {
	margin-bottom: 50px;
	color: #009e4d;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

@media (max-width: 767px) {
	.specific .lo_inner h2 {
		margin-bottom: 25px;
		font-size: 26px;
		line-height: 1.3;
	}
}

.specific .lo_inner h2 span {
	margin-right: 15px;
}

@media (max-width: 767px) {
	.specific .lo_inner h2 span {
		display: block;
		margin-right: 0;
		color: #333;
		font-size: 20px;
	}
}

.specific .lo_inner .box {
	margin-bottom: 50px;
	text-align: left;
}

@media (max-width: 767px) {
	.specific .lo_inner .box {
		margin-bottom: 30px;
	}
}

.specific .lo_inner .box:last-child {
	margin-bottom: 0;
}

.specific .lo_inner .box h3 {
	margin-bottom: 10px;
	color: #009e4d;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

@media (max-width: 767px) {
	.specific .lo_inner .box h3 {
		font-size: 18px;
	}
}

.specific .lo_inner .box p {
	margin-bottom: 20px;
	line-height: 1.6;
}

@media (max-width: 767px) {
	.specific .lo_inner .box p {
		margin-bottom: 15px;
		line-height: 1.785;
	}
}

.specific .lo_inner .box p:last-child {
	margin-bottom: 0;
}

.specific .lo_inner .box p span {
	margin-right: 15px;
	font-weight: 700;
}

.specific .lo_inner .box ol {
	width: 100%;
}

.specific .lo_inner .box ol li {
	margin-bottom: 8px;
	padding-left: 1.7em;
	list-style-type: none;
	line-height: 1.5;
	text-indent: -1.7em;
	counter-increment: cnt;
}

.specific .lo_inner .box ol li:last-child {
	margin-bottom: 0;
}

.specific .lo_inner .box ol li::before {
	content: "(" counter(cnt) ") ";
	width: 50px;
}

.specific .lo_inner .box a {
	color: #009e4d;
	text-decoration: underline;
}

.specific .lo_inner .box a:hover {
	text-decoration: none;
}

.specific dl.agree {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
}

.specific dl.agree dt {
	width: 26%;
	padding: 20px;
	border-bottom: solid 1px #ccc;
	font-weight: 700;
	text-align: left;
}

.specific dl.agree dt.top {
	border-top: solid 1px #ccc;
}

.specific dl.agree dd {
	width: 74%;
	padding: 20px;
	border-bottom: solid 1px #ccc;
	text-align: left;
}

.specific dl.agree dd a {
	color: #009e4d;
	text-decoration: underline;
}

.specific dl.agree dd a:hover {
	text-decoration: none;
}

.specific dl.agree dd.top {
	border-top: solid 1px #ccc;
}

@media (max-width: 767px) {
	.specific dl.agree dt {
		width: 100%;
		padding: 15px 15px 0;
		border-bottom: none;
		font-size: 16px;
	}

	.specific dl.agree dt.top {
		border-top: solid 1px #ccc;
	}

	.specific dl.agree dd {
		width: 100%;
		padding: 0 15px 15px;
	}

	.specific dl.agree dd.top {
		border-top: none;
	}
}

.bank_transfer_wrap p {
	text-align: left;
}

.bank_transfer_wrap ul.list {
	margin-top: 20px;
	padding: 25px 30px;
	border-radius: 10px;
	background-color: #009e4d;
	color: #fff;
	font-weight: 700;
	text-align: left;
}

.bank_transfer_wrap ul.list li {
	margin-left: 30px;
	padding-left: 5px;
	list-style: disc;
}

@media (max-width: 767px) {
	.bank_transfer_wrap ul.list {
		padding: 25px 20px;
	}
}
