/*============== DUMMY CSS ==================*/

#top_info {
	height: 320px;
	background: url("../images/under_main_bg.jpg") no-repeat center center/cover;
	display: flex;
	align-items: center;
	text-align: center;
}

#top_info h2 {
	font-size: 70px;
	font-weight: 500;
	line-height: 1.5em;
	color: #000;
}

/*============= END DUMMY CSS ===============*/
#topic_path {
	padding: 12px 0;
	background: #ffc900;
}

#topic_path ul {
	display: flex;
	flex-wrap: wrap;
}

#topic_path ul li {
	font-size: 14px;
	font-weight: 500;
}

#topic_path li a {
	color: #000;
	text-decoration: none;
}

#topic_path li:not(:last-child):after {
	content: "＞";
	position: relative;
	display: inline-block;
	font-size: 80%;
	margin: 0 10px;
}

.under #content {
	padding-bottom: 120px;
}

.under #content .inner {
	width: 100%;
	max-width: 1560px;
}

.intro-page {
	position: relative;
	z-index: 2;
	text-align: center;
	width: 100%;
	max-width: 950px;
	margin: 0 auto;
	padding: 19px 0 71px;
}

.intro-page:after {
	content: "";
	position: absolute;
	width: 100vw;
	min-width: 2000px;
	height: 100%;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -5;
	background: #ffc900;
	pointer-events: none;
}

.intro-page .consept_h2{
		font-size: 38px;
		margin-bottom: 20px;
	}

.under h3 {
	font-size: 54px;
	font-weight: 600;
	line-height: 1.5em;
	margin-bottom: 36px;
	text-align: center;
}

.under h3:last-child {
	margin-bottom: 0;
}

.intro-page p {
	font-size: 20px;
}

.under_box {
	display: flex;
	align-items: center;
	padding: 80px 0;
	position: relative;
	z-index: 2;
	min-height: 760px;
	margin-bottom: 0;
}

.under_box:before {
	content: "";
	position: absolute;
	width: 100vw;
	min-width: 2000px;
	background: #fbf9f4;
	height: 100%;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -5;
	pointer-events: none;
}

.under_box_main {
	background: #fff;
	flex-shrink: 0;
	width: 50%;
	padding: 80px 100px;
	-webkit-box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
	box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
}

.under h4 {
	font-size: 34px;
	color: #3572b7;
	font-weight: 500;
	line-height: 1.5em;
	margin-bottom: 20px;
}

.under_box_img {
	top: 80px;
	left: 170px;
	z-index: -1;
	width: 1572px;
	position: absolute;
}

.under_box_img:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 601px 565px 0 0;
	border-color: #fbf9f4 transparent transparent transparent;
	left: 0;
	top: 0;
}

.under_box.img_l {
	justify-content: flex-end;
}

.under_box.img_l:before {
	display: none;
}

.under_box.img_l .under_box_img {
	left: auto;
	right: 170px;
}

.under_box.img_l .under_box_img:before {
	border-width: 0 565px 601px 0;
	border-color: transparent #fff transparent transparent;
	left: auto;
	right: 0;
}

.under_box_img img {
	width: 100%;
}

.under_row {
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
	padding: 120px 0 122px;
	margin-top: 30px;
}

.under_row:before,
.under_row:after {
	content: "";
	position: absolute;
	z-index: -5;
	pointer-events: none;
	background: #ffc900;
}

.under_row:before {
	width: 100vw;
	min-width: 2000px;
	height: 65%;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.under_row:after {
	width: 100%;
	height: 35%;
	top: 0;
	left: 71%;
	transform: skewX(-43deg);
}

.under_row_item {
	width: calc(50% - 20px);
	background: #fff;
	-webkit-box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
	box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.15);
}

.under_row_itm_img {
	margin: 0;
}

.under_row_itm_main {
	padding: 45px 90px 50px;
}

.under h5,
.under .style-h5 {
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5em;
	margin-bottom: 20px;
	text-align: center;
}

.under .style-h5 {
	text-align: left;
	color: #000;
}

.under .page-title-01 {
	background-color: #3572b7;
	color: #fff;
	font-size: 20px !important;
	padding: 10px 20px;
	margin-bottom: 1em;
}

.under_box_main p,
.under_box_main p,
.under .section p {
	font-size: 16px;
}

.under_inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 80px;
}

.under_list li {
	font-size: 18px;
	position: relative;
	padding-left: 25px;
	font-weight: 500;
	margin-bottom: 17px;
}

.under_list li:before {
	content: "";
	position: absolute;
	width: 11px;
	height: 11px;
	background: #3572b7;
	border-radius: 50%;
	left: 0;
	top: 9px;
}

.under_list li:last-child {
	margin-bottom: 0;
}

.under_tbl {
	border-collapse: separate;
	border-spacing: 14px;
	margin: 0 -14px;
}

.under_tbl th,
.under_tbl td {
	padding: 1em;
	font-size: 16px;
	border: none;
	position: relative;
	font-weight: 500;
	color: #000;
	line-height: 2em;
}

.under_tbl th {
	font-size: 20px;
	color: #fff;
	background: #3572b7;
	font-weight: 700;
}

.under_tbl .tbl_thbg01,
.tbl_thbg01 th {
	background: #ffc900;
	color: #000;
}

.under_tbl tr:not(:last-child) th + td:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background: #cccccc;
	bottom: -7px;
	left: 0;
}

.tbl_fixed {
	table-layout: fixed;
}

.vtop td,
td.vtop {
	vertical-align: top;
}

.under #content img {
	max-width: 100%;
}

.under_tbl:not(:last-child),
.under_list:not(:last-child) {
	margin-bottom: 30px;
}

.under h6,
.under .title_h6 {
	font-size: 24px;
	line-height: 1.5em;
	margin-bottom: 20px;
	border-left: 3px solid #3572b7;
	padding-left: 10px;
	font-weight: 500;
	padding-bottom: 2px;
	text-align: left;
}

.image_l {
	float: left;
	margin: 0 40px 0 0;
}

.image_r {
	float: right;
	margin: 0 0 0 40px;
}

.under_box_full {
	min-height: auto;
	margin-top: 120px;
}

.under_box_full .under_box_main {
	width: 100%;
}

.under_bnr a {
	display: block;
	text-decoration: none;
	color: #000;
	text-align: center;
	transition: all 0.3s;
	background: #ffc900;
}

.under_brn_txt {
	padding: 20px 20px 0 200px;
	margin-bottom: 0;
	position: relative;
	overflow: hidden;
	z-index: 2;
}

.under_bnr dl {
	display: flex;
	width: 100%;
	padding: 30px;
	justify-content: space-between;
}

.under_bnr dt,
.under_bnr dd {
	width: calc(50% - 10px);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
	background: #3572b7;
	border-radius: 10px;
	color: #fff;
	line-height: 1.5em;
}

.under_bnr dd {
	font-size: 24px;
	font-weight: 700;
}

.under_brn_txt:after {
	content: "";
	position: absolute;
	width: 150%;
	height: 100%;
	top: 0;
	right: calc(50% + 300px);
	background: #fff;
	z-index: -3;
	transform: skewX(-40deg);
}

.pc {
	display: block;
}

.under_mbot {
	margin-bottom: 120px;
}

.under_mtop {
	margin-top: 120px;
	margin-bottom: 0;
}

.mt0 {
	margin-top: 0 !important;
}

.pb0 {
	padding-bottom: 0 !important;
}

.under_anc {
	display: flex;
	justify-content: center;
}

.under_anc li {
	width: calc(33.33% - 20px);
	margin: 15px 20px 0 0;
}

.under_anc li:nth-child(3n),
.under_anc li:last-child {
	margin-right: 0;
}

.under_anc a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	background: url("../images/under_arr.svg") no-repeat right 15px center/17px
		auto #3572b7;
	text-decoration: none;
	height: 100%;
	border-radius: 10px;
	transition: all 0.3s;
	font-weight: 500;
	padding: 13px 32px 15px;
	border: 2px solid #3572b7;
}

.under_qa dl {
	-webkit-box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.15);
	box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.15);
	margin-bottom: 40px;
}

.under_qa dt {
	position: relative;
	background: #ffc900;
	font-weight: 500;
	padding: 20px 20px 20px 90px;
	overflow: hidden;
	z-index: 2;
}

.under_qa dt:before,
.under_qa dd:before {
	content: "";
	position: absolute;
	width: 200px;
	height: 46px;
	background: #fff;
	left: -130px;
	top: calc(50% - 23px);
	transform: skewX(-30deg);
	z-index: -1;
}

.under_qa dt:after {
	content: "Q";
	position: absolute;
	left: 16px;
	top: 3px;
	font-size: 200%;
	font-weight: 700;
}

.under_qa dd:after {
	content: "A";
	position: absolute;
	left: 21px;
	top: 19px;
	font-size: 200%;
	font-weight: 700;
	color: #fff;
}

.under_qa dd {
	position: relative;
	padding: 20px 20px 20px 90px;
	overflow: hidden;
}

.under_qa dd:before {
	background: #3572b7;
	top: 11px;
}

.under_bnr01 a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	color: #000;
	background: #f3ebc5;
	height: 120px;
	font-size: 180%;
	font-weight: 700;
	padding: 20px;
	border: 5px solid #dccf8f;
	transition: all 0.3s;
	text-align: center;
	line-height: 1.5em;
}

.under_bnr01.small_bnr a {
	font-size: 130%;
	height: 80px;
	padding: 10px 10px 12px;
	border-width: 3px;
}

.contact_row {
	display: flex;
	margin-bottom: 14px;
}

.contact_row dt {
	width: 300px;
	padding: 1em;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #ffc900;
	color: #000;
	font-weight: 700;
}

.require {
	background: #e8232c;
	color: #fff;
	font-size: 80%;
	padding: 1px 7px 3px;
	border-radius: 3px;
	flex-shrink: 0;
}

.contact_row dd {
	width: calc(100% - 300px);
	padding: 1em;
	position: relative;
}

.contact_row:not(:last-child) dd:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background: #ccc;
	left: 0;
	bottom: -7px;
}

.contact_row input[type="text"],
.contact_row textarea,
.contact_row select {
	width: 100%;
	border: 1px solid #ccc;
	padding: 6px 15px 8px;
	line-height: 1.5em;
	border-radius: 5px;
}

.contact_row textarea {
	height: 150px;
}

.contact_row.full dd {
	width: 100%;
	text-align: center;
}

.contact_btn {
	text-align: center;
	color: #fff;
	background: url(../images/under_arr.svg) no-repeat right 15px center/17px
		auto #3572b7;
	border-radius: 10px;
	transition: all 0.3s;
	font-weight: 500;
	padding: 13px 32px 15px;
	border: 2px solid #3572b7;
	width: 300px;
	cursor: pointer;
}

.contact_row input:not(:last-child) {
	margin-bottom: 15px;
}

.postal-code {
	width: 150px !important;
}

[name="prefectures"] {
	width: 253px !important;
}

.render-zipcode {
	display: inline-block;
	padding: 5px 10px 6px;
	min-width: 100px;
	text-align: center;
	font-size: 16px;
	cursor: pointer;
}

.contact_note {
	display: block;
	font-size: 85%;
	color: green;
	margin-bottom: 5px;
}

.contact_ul {
	display: flex;
	flex-wrap: wrap;
}

.contact_ul li {
	margin: 2px;
}

.contact_ul li label {
	border: 1px dashed #ccc;
	border-radius: 5px;
	padding: 5px 10px;
	display: block;
	transition: all 0.3s;
}

.under_clr01 {
	color: #f00;
}

.contact_row input.contact_date {
	width: 100px;
	margin: 0 10px 0 0;
}

.contact_row input.contact_date:last-child {
	margin-right: 0;
}

.news_list {
	display: flex;
	flex-wrap: wrap;
}

.news_item {
	width: calc(33.33% - 20px);
	margin: 0 30px 30px 0;
}

.news_item:nth-child(3n) {
	margin-right: 0;
}

.news_item a {
	text-decoration: none;
	display: block;
	color: #000;
	background: #f5f3eb;
	padding: 10px 10px 20px;
	transition: all 0.3s;
}

.under .news_item .news_itm_ttl {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5em;
	margin-bottom: 10px;
	padding: 0 10px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.news_itm_img {
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #eee;
	margin: 0 0 15px;
}

.news_itm_img img {
	max-height: 100%;
}

.news_itm_txt {
	padding: 0 10px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.news_btn {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.news_btn_view {
	width: 49%;
}

.news_btn li.prev {
	margin: 0 auto 0 0;
}

.news_btn li.next {
	margin: 0 0 0 auto;
}

.news_btn_back {
	width: 100%;
	max-width: 300px;
	margin-top: 20px;
}

.news_btn_back a {
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	background: #3572b7;
	border-radius: 10px;
	transition: all 0.3s;
	font-weight: 500;
	padding: 13px 32px 15px;
	border: 2px solid #3572b7;
	width: 250px;
	cursor: pointer;
}

.news_btn_view a {
	display: flex;
	text-decoration: none;
	border: 1px solid #ccc;
	transition: all 0.3s;
	align-items: center;
	color: #000;
	padding: 5px;
}

.new_btn_img {
	flex-shrink: 0;
	width: 120px;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #eee;
	margin-right: 10px;
}

.new_btn_img img {
	max-height: 100%;
}

.news_btn li.next .new_btn_img {
	margin: 0 0 0 10px;
}

.new_btn_ttl {
	display: flex;
	width: calc(100% - 130px);
	font-size: 90%;
	line-height: 1.5em;
	align-items: center;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.news_btn_view.next span:last-child {
	margin: 0 0 0 auto;
}

.news_btn_view.next a {
	flex-direction: row-reverse;
	text-align: right;
}

.course_item {
	margin-bottom: 40px;
}

.course_item a {
	display: flex;
	text-decoration: none;
	color: #000;
	transition: all 0.3s;
}

.course_itm_img {
	flex-shrink: 0;
	width: 300px;
	position: relative;
	background: #eeeeee;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 200px;
	margin: 0 20px 0 0;
	background-position: center;
	background-size: cover;
}

.course_itm_img img {
	max-height: 100%;
	opacity: 0;
}

.course_itm_time {
	position: absolute;
	background: rgba(54, 54, 54, 0.8);
	bottom: 0;
	right: 0;
	color: #fff;
	padding: 0 10px;
}

.course_cate02 a,
.course_itm_cate span.cate2 {
	background-color: #fec900;
	border-color: #fec900;
}

.course_cate03 a,
.course_itm_cate span.cate3 {
	background-color: #5abf5f;
	border-color: #5abf5f;
}

.course_cate {
	margin-bottom: 60px;
}

.course_itm_cate span {
	background: #8c8c8c;
	color: #fff;
	font-size: 83%;
	width: 200px;
	display: inline-block;
	text-align: center;
	margin-right: 10px;
}

.course_itm_cate span.cate1 {
	background: #3672b8;
}

.course_itm_cate span:not([class]) {
	width: 100px;
	margin-right: 0;
}

.course_itm_cate {
	margin: 0 0 10px;
	display: flex;
}

.course_itm_cate > span {
	order: 1;
}

.course_itm_cate > span[class] {
	order: 0;
}

.under .course_item .course_itm_ttl {
	font-size: 20px;
	line-height: 1.5em;
	margin-bottom: 10px;
	font-weight: 700;
}

.course_itm_txt {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.course_btn a,
.course_btn span {
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	background: #333;
	border-radius: 10px;
	transition: all 0.3s;
	font-weight: 500;
	padding: 10px 32px 12px;
	border: 2px solid #333;
	width: 250px;
	cursor: pointer;
}

.course_itm_cate span.course_time {
	margin: 0 0 0 auto;
	width: auto;
	background: transparent;
	color: #a5a5a5;
	white-space: nowrap;
	flex-shrink: 0;
}

.course_itm_cate span.course_time:before {
	content: "";
	position: relative;
	display: inline-block;
	background: url("../images/course_time.png") no-repeat center center/100%
		auto;
	margin-right: 5px;
	width: 16px;
	height: 16px;
	top: 3px;
}

.flex-center {
	justify-content: center;
	align-items: center;
}

.submit-form input {
	margin: 10px !important;
}

.mwform-radio-field label,
.mwform-checkbox-field label {
	display: inline-block;
}

.mw_wp_form .horizontal-item {
	margin-right: 30px;
}

.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0;
}

.mw_wp_form_confirm .hide-on-confirm {
	display: none;
}

.contact_btn.back-btn {
	background-color: #333;
	border-color: #333;
}

.post-detail img {
	height: auto !important;
}

.wp-pagenavi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 43px;
}

.wp-pagenavi span,
.wp-pagenavi a {
	display: inline-flex;
	min-width: 40px;
	height: 40px;
	justify-content: center;
	align-items: center;
	border-radius: 5px;
	font-size: 16px;
	color: #fff;
	line-height: 1em;
	padding: 3px 5px 5px;
	background: #b5b5b5;
	text-decoration: none;
	margin: 5px;
	position: relative;
	z-index: 1;
	overflow: hidden;
	border: none;
}

.wp-pagenavi span.current {
	background: #ffc900;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	font-size: 26px;
	color: #fff;
	padding-bottom: 10px;
}

.wp-pagenavi a.nextpostslink {
	padding-right: 4px;
}

.hidden {
	opacity: 0;
	visibility: hidden;
}

#wpmem_login .div_text,
#wpmem_reg .div_checkbox,
#wpmem_reg .div_date,
#wpmem_reg .div_file,
#wpmem_reg .div_image,
#wpmem_reg .div_multicheckbox,
#wpmem_reg .div_multiselect,
#wpmem_reg .div_number,
#wpmem_reg .div_radio,
#wpmem_reg .div_select,
#wpmem_reg .div_text,
#wpmem_reg .div_textarea,
#wpmem_reg .div_url {
	width: 100% !important;
}

#wpmem_login .button_div,
#wpmem_reg .button_div {
	width: 100% !important;
}

#wpmem_login input,
#wpmem_profile_form input {
	cursor: pointer;
	padding: 7px 20px 7px;
	border: none;
	background: #3572b7;
	color: #fff;
}

#wpmem_login .form,
#wpmem_reg .form {
	padding: 0 30px !important;
	background: #f1f2f3;
	border: solid 1px #ddd;
}

#wpmem_login legend,
#wpmem_reg legend {
	margin-bottom: 20px !important;
}

#wpmem_login .link-text {
	width: 100% !important;
}

#wpmem_login .link-text a {
	display: inline-block;
}

.txt-small {
	font-size: 80%;
}

.wrap-form-login > p > a {
	display: none;
}

.mb50 {
	margin-bottom: 50px !important;
}

#login h3 {
	font-size: 44px;
}

.wrap-archive {
	padding-top: 100px;
}

.list_tab.under_anc li {
	width: calc(25% - 1px);
	margin: 0 1px 0 0;
}

.list_tab.under_anc li a {
	border-radius: 0;
	background-image: none;
	line-height: 1.3em;
	height: 65px;
	border: none;
	position: relative;
	padding-bottom: 20px;
	position: relative;
	z-index: 1;
	color: #000;
	overflow: hidden;
	transition: all 0.2s;
}

.list_tab.under_anc li a:before {
	content: "";
	width: 100%;
	height: calc(100% - 7px);
	background: #ddd;
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	transition: all 0.2s;
}

.list_tab.under_anc li a.active {
	color: #fff;
	pointer-events: none;
}

.list_tab.under_anc li a.active:before {
	display: none;
}

.list_tab.under_anc li.course_all a {
	background-color: #333;
}

.tab-content {
	display: none;
}

.tab-content.active {
	display: block;
}

#user-profile .wrap-form-login > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#user-profile .wrap-form-login > ul li {
	margin: 10px;
}

#user-profile .wrap-form-login > ul li a,
.profile-buttons li a,
.under-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 250px;
	height: 60px;
	text-decoration: none;
	border: solid 3px #3572b7;
	background: #e7f2ff !important;
	background-image: none !important;
	color: #3572b7;
	position: relative;
	box-sizing: border-box;
	padding: 5px 10px 8px;
	font-size: 19px;
	border-radius: 10px;
}
.under-btn {
	position: relative;
	text-align: center;
	margin-top: 10px;
	display: flex;
	justify-content: center;
}
.profile-buttons li {
	flex-grow: 1;
}

.profile-buttons li a {
	width: 100%;
}

.frame_h6 {
	padding: 25px;
	background-size: cover;
	background-position: center;
}

.frame_h6 .frame_inner {
	padding: 40px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	max-width: 60%;
}

.curriculum-item-wrapper {
	margin: -10px;
	flex-wrap: wrap;
}

.curriculum-item {
	width: calc((100% / 2) - 20px);
	margin: 10px;
	padding: 20px;
	background: #f4f3f1;
	border-radius: 12px;
}

.curriculum-item .frame-title {
	display: flex;
	margin-bottom: 10px;
}

.curriculum-item .frame-title dt {
	display: flex;
	width: 40px;
	height: 40px;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background: #ffc900;
	color: #000;
	text-align: center;
	flex-shrink: 0;
	margin-right: 15px;
	font-weight: bold;
	font-size: 15px;
}

.curriculum-item .frame-title .ttl {
	font-weight: 700;
	padding-top: 6px;
	margin-right: 10px;
}

.curriculum-item .frame-title .tag {
	margin-left: auto;
	flex-shrink: 0;
	padding-top: 4px;
}

.curriculum-item .frame-title .tag span {
	display: inline-block;
	line-height: 1em;
	padding: 6px 15px 8px;
	background: #333;
	color: #fff;
	font-size: 14px;
	min-width: 120px;
	text-align: center;
}

.curriculum-item .frame-title .tag span.orange {
	background: #f19148;
}

.curriculum-item .frame-title .tag span.green {
	background: #59c060;
}

.curriculum-item .frame-title .tag span.blue {
	background: #3572b7;
}

.curriculum-item .frame-content p {
	font-size: 15px;
	line-height: 1.8em;
	color: #666;
}

.frame_content_01 {
	display: flex;
	position: relative;
	z-index: 1;
	align-items: flex-start;
}

.frame_content_01 .image_l:before,
.frame_content_01 .image_r:before {
	content: "";
	width: 200vw;
	min-width: 3000px;
	height: 100%;
	background: #fbf9f4;
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
}

.frame_content_01 .image_r,
.frame_content_01 .image_l {
	float: none;
	margin: 0;
	flex-shrink: 0;
	padding-top: 50px;
	padding-bottom: 50px;
	position: relative;
}

.frame_content_01 .frame_content {
	flex-grow: 1;
	padding: 40px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	margin: 100px 0 0 -30px;
	position: relative;
	z-index: 2;
	/*min-height: 320px;*/
	order: 1;
}

.frame_content_01 .image_l {
	order: 0;
}

.frame_content_01 .image_r {
	order: 2;
}

.frame_content_01 .image_r + .frame_content {
	margin-left: 0;
	margin-right: -30px;
}

.accordion:not(:last-child) {
	margin-bottom: 20px;
}

.accordion dt {
	cursor: pointer;
	background: #3572b7;
	color: #fff;
	font-size: 20px;
	padding: 20px 20px 20px 60px;
	position: relative;
}

.accordion dt:before {
	content: "";
	width: 14px;
	height: 14px;
	border-left: solid 3px #fff;
	border-bottom: solid 3px #fff;
	transform: rotate(-45deg);
	position: absolute;
	left: 23px;
	top: 24px;
}

.accordion dt.open:before {
	transform: rotate(-225deg);
	top: 30px;
}

.accordion dd {
	padding: 10px 0 30px;
	display: none;
}

.accordion:last-child dd {
	padding-bottom: 10px;
}

.accordion dd p:not(:last-child) {
	margin-bottom: 1em;
}

.accordion dd .under_bnr01 a {
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
}

.teacher-name {
	display: inline-block;
	padding-top: 5px;
	font-size: 20px;
}

.license_item {
	width: 100%;
}

.compare_tbl {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	table-layout: fixed;
	width: 100%;
}

.compare_tbl tr,
.compare_tbl th,
.compare_tbl td {
	border: 2px solid #eee !important;
}

.compare_tbl tr {
	background-color: #fff;
	padding: 0.35em;
	border: 2px solid #eee;
}

.compare_tbl tr:last-child {
	border: none;
}

.compare_tbl th {
	padding: 2em;
}

.compare_tbl td {
	padding: 2em 0.5em;
	text-align: center;
}

.compare_tbl thead tr {
	background-color: #50535d;
	color: #fff;
}

th.non {
	border-right: none;
}

.price-com {
	font-weight: bold;
}

.red_bk {
	background: #ffc900;
	color: #333;
}

.red-txt {
	color: #333;
}

.grn-scrl {
	color: #48aa06;
}

.tbl-lft {
	text-align: left !important;
}

.cntr {
	text-align: center;
	padding: 30px 0px;
}

.wpmem_msg {
	width: 100% !important;
	max-width: 740px;
	margin: 0 auto 40px;
	padding: 20px !important;
}

.under_inner .section:not(:last-child) {
	margin-bottom: 60px;
}

.primary-list:not(:last-child) {
	margin-bottom: 30px;
}

.primary-list li {
	padding-left: 20px;
	position: relative;
}

.primary-list li:before {
	content: "";
	width: 10px;
	height: 10px;
	background: #3572b7;
	position: absolute;
	left: 0;
	top: 0.6em;
	border-radius: 50%;
}

.primary-list li:not(:last-child) {
	margin-bottom: 10px;
}
.under-link {
	position: relative;
	text-align: center;
	font-weight: 500;
	font-size: 18px;
}
.under-ytb {
	position: relative;
	width: 100%;
}
.under-ytb video {
	width: 100%;
	max-height: 100%;
}
.bscr {
	overflow: hidden;
}
.popup-wrap {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(51, 51, 51, 0.5);
	z-index: 1001;
	display: flex;
	align-items: center;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transform: scale(0);
	transition: all 0.4s ease-in-out;
}
.popup-inner {
	position: relative;
	padding: 0 10px;
}
.popup-close {
	position: relative;
	padding: 6px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #3672b8;
	font-weight: bold;
	color: #fff;
	font-size: 30px;
	cursor: pointer;
}
.popup-wrap.active {
	visibility: visible;
	opacity: 1;
	pointer-events: all;
	transform: scale(1);
}
.popup-video {
	position: relative;
	max-width: 900px;
	z-index: 1002;
}
.popup-video video {
	width: 100%;
	max-width: 100%;
	max-height: 100%;
}
@media screen and (max-width: 600px) {
	.wrap-compare {
		overflow-x: scroll;
	}

	.compare_tbl {
		width: 500px;
		font-size: 70%;
	}
}

/*=============================HACK CSS=============================*/

/* IE */
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
}

/* EGDE */
@supports (-ms-ime-align: auto) {
}

/* FIREFOX */
@-moz-document url-prefix() {
}

/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {
	@media {
	}
}

/* 240129 */
.under_bnr01.small_bnr a{
background: #ffc900;
border:none;
height:auto;
}
/* 240129 */


/* 20241113 add tane start */
.news-list-v2__item{
	border-bottom: solid 1px #b5b5b5;
}
.news-list-v2__item:first-child .news-list-v2__link{
	padding-top: 0;
}
.news-list-v2__link{
	padding: 20px 0;
	display: block;
	text-decoration: none;
	transition: opacity 0.3s;
	color: #000;
}
@media only screen and (min-width:768px){
	.news-list-v2__link:hover .news-list-v2__detail p,
	.news-list-v2__link:hover .news-list-v2__title{
		/* opacity: 0.6; */
		color: #3572b7;
	}
}
.news-list-v2__item-inner{
	display: flex;
}

.news-list-v2__date{
	min-width: 150px;
	max-width: 150px;
	line-height: 2;
}
.news-list-v2__summary {
	margin-left: 20px;
}
.news-list-v2__summary p{
	margin: 0;
}

.news-list-v2__detail p,
.news-list-v2__title{
	transition: color 0.2s;
}

.news-list-v2__title{
	font-weight: bold;
	text-decoration: underline;
}
.news-list-v2__detail{
	margin-top: 5px;
}
@media only screen and (max-width:767px){
	.news-list-v2__date{
		min-width: 100px;
		max-width: 100px;
		line-height: 2;
	}
}
@media only screen and (max-width:480px){
	.news-list-v2__item-inner{
		flex-direction: column;
	}
	.news-list-v2__summary {
		margin-left: 0;
		margin-top: 5px;
	}
}
/* 20241113 add tane end */