body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}

img {
	max-width: 100%;
}

a {
	transition: 0.6s;
}

a:hover {
	transition: 0.6s;
	text-decoration: none;
}
p {
	word-break: break-all;
}

div:focus {
	outline: none;
}

.wow {
	animation-duration: 1.8s;
}

.l-logo {
	opacity: 1.0;
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	margin: 5px 0;
	transition: opacity 0.6s;
}
.l-logo img {
	height: 60px;
}

.large-header .l-logo {
	opacity: 0.0;
}

.f-logo {
	opacity: 0.0;
	position: absolute;
	top: 0;
	left: 50%;
	display: inline-block;
	transition: opacity 0.6s;
	transform: translate(-50%,0);
	z-index: -1000;
}

.large-header .f-logo {
	opacity: 1.0;
}
.large-header .f-logo img {
	width: 100%;
}

header {
	transition: 0.6s;
	padding: 0px 15px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #fff;
	z-index: 100;
}

header.large-header {
	padding: 30px 15px;
	background-color: #f5f8f5;
}

.header-container {
	transition: 0.6s;
	display: flex;
	justify-content: flex-start;
	max-width: 1440px;
	margin: auto;
	position: relative;
	flex-wrap: wrap;
}

.control-box {
	position: absolute;
	top: 0;
	right: 10px;
	height: 55px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 10px;
	transition: 0.6s;
}
.large-header .control-box {
	margin-top: 20px;
}
.control-box .control {
	width: 110px;
	height: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 700;
	transition-duration: 0.3s;
}
.control-box .control-left {
	background-color: #00a873;
}

.control-box .control-right {
	background-color: #194418;
}
.control-box .control:hover {
	opacity: 0.6;
}

.control-box .control a {
	color: #fff;
}

.main-menu {
	flex: 1 0 auto;
	margin-right: 240px;
	padding: 25px 0 25px 0;
	transition: 0.6s;
}
.logged-in .main-menu {
	margin-right: 350px;
}

.large-header .main-menu {
	order: 3;
	width: 100%;
	margin-top: 120px;
	padding: 0 0 0 0;
}

.main-menu ul {
	padding: 0;
	margin: 0;
	text-align: right;
	list-style-type: none;
}

.large-header .main-menu ul {
	display: block;
	text-align: center;
	transition: 0.6s;
}

.main-menu ul li {
	display: inline-block;
	border-right: 2px solid #1c1c1c;
}

.main-menu ul li:last-child {
	border: none;
}

.main-menu ul li a {
	color: #1c1c1c;
	display: block;
	padding: 3px 15px;
	transition: 0.6s;
}
.large-header .main-menu ul li a {
	padding: 0 30px;
}

.main-menu ul li a:hover {
	color: #00a873;
}

.login-name-box {
	margin: 5px;
}
.login-name-box .login-name-header {
	width: 110px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.top-title-box {
	text-align: center;
	color: #fff;
}

.top-space {
	background-color: #f5f8f5;
}

.section-top {
	padding: 30px;
	padding-top: 0;
	margin-top: 80px;
	background-color: #f5f8f5;
	transition: 0.6s;
}
.section-top.large-header {
	margin-top: 204px;
}

.top-bg {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 80px 0;
}

.top-title-box h2 {
	font-weight: 700;
}

.top-title-box h3 {
	font-weight: 700;
}

.red-tag {
	background-color: #e14141;
	padding: 5px 0;
	max-width: 480px;
	margin:auto;
	margin-top: 10px;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 2px;
}

.top-title-box h1 {
	font-size: 48px;
	font-weight: 700;
}

.top-title-box h1 .big-number {
	font-size: 1.6em;
}

.top-link {
	border:3px solid #fff;
	border-radius: 25px;
	font-size: 18px;
	margin-top: 20px;
	color:#fff;
	display: inline-block;
	padding: 10px 30px;
}

.top-link:hover {
	text-decoration: none;
	background-color: #00a873;
	color:#fff;
}

.section-pickup {
	padding: 100px 0;
	background-color: #fff;
}

.main-title {
	margin: auto;
	text-align: center;
	margin-bottom: 30px;
}

.main-title h2 {
	font-weight: 300;
	display: inline-block;
	padding: 0 45px;
	text-align: center;
	border-bottom: 1px solid #000;
	line-height: 0.1em;
	margin: 10px 0 20px;
}
.main-title.two-lines h2 {
	line-height: inherit;
	padding-bottom: 10px;
}
.main-title.two-lines h2 span {
	padding: 0;
}

.main-title h2 span {
    background:#fff;
    padding:0 10px;
}

.main-title h3 {
	margin-top: 10px;
	font-size: 18px;
	color:#00a873;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
}

.custom-swiper-cover {
	position: relative;
}

.c-swiper-button-prev {
	width: 60px;
	height: 60px;
	line-height: 60px;
	border-radius: 100%;
	background-color: #194418;
	color:#fff;
	text-align: center;
	position: absolute;
	left: 0;
	top:28%;
	z-index: 10;
	left: -30px;
	font-size: 20px;
}

.c-swiper-button-next {
	width: 60px;
	height: 60px;
	line-height: 60px;
	border-radius: 100%;
	background-color: #194418;
	color:#fff;
	text-align: center;
	position: absolute;
	top:28%;
	z-index: 10;
	right: -30px;
	font-size: 20px;
}

.pick-img {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 15px;
	transition-duration: 0.3s;
}
.pick-img:hover {
	opacity: 0.6;
	transition-duration: 0.3s;
}

.pick-img:after {
	content: "";
	display: block;
	padding-bottom: 56%;
}

.pick-box {
	display: block;
	color:#111;
}

.pick-box:hover {
	color:#111;
}

.pick-box p {
	text-align: center;
	margin-top: 5px;
	font-weight: 300;
	color:111;
}

.more-btn {
	text-align: center;
	margin-top: 60px;
}

.more-btn a,
.more-btn button {
	transition: 0.6s;
	display: inline-block;
	padding: 10px 45px;
	border:4px solid #000;
	color:#000;
	border-radius: 25px;
	position: relative;
	font-weight: 300;
	letter-spacing: 2px;
	outline: none;
}

.more-btn button,
.more-btn a.back-btn {
	background-color: #fff;
	font-weight: 700;
	font-size: 18px;
	padding: 10px 100px;
}
.more-btn a#back_method_btn{
	padding: 10px 45px;
	font-size: 10px;
	color:rgba(0,0,0,0.3);
	border: 3px solid rgba(0,0,0,0.3);
}

.more-btn a.back-btn {
	margin-right: 10px;
}

.more-btn button i {
	position: absolute;
	right: 7px;
	top: 50%;
	transform: translateY(-50%);
}

.more-btn a i {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}
.more-btn a.back-btn i {
	position: absolute;
	left: 15px;
	right: auto;
	transform: translateY(-50%);
}

.more-btn a:hover,
.more-btn button:hover {
	transition: 0.6s;
	background-color: #00a873;
	color:#000;
}
.margin-top-20 {
	margin-top: 20px;
}
.section-service {
	padding: 100px 0;
	background-color: #f5f8f5;
}

.section-service .main-title h2 span {
	background-color: #f5f8f5;
}

.preparation-button a {
	background-color: #999;
}

.preparation-button a:hover {
	background-color: #999;
}

.short-des {
	text-align: center;
	margin-bottom: 30px;
}

.short-des p {
	font-weight: 400;
	padding: 0;
	margin: 0;
}

.service-cover {
	margin-top: 60px;
}

.service-box {
	padding: 5px;
	background-color: #000;
	position: relative;
}

.service-img {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.service-img:after {
	content: "";
	display: block;
	padding-bottom: 78%;
}

.service-text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	padding: 15px;
	color:#fff;
	text-align: center;
	padding-bottom: 45px;
}

.service-text p {
	margin: 0;
	padding: 0;
	font-weight: 300;
}

.section-white {
	padding: 100px 0;
	background-color: #fff;
}

.news-cover-box {
	padding: 10px;
	background-color: #fff;
	border:3px solid #000;
	position: relative;
	z-index: 5;
}

.news-group {
	position: relative;
	z-index: 2;
}

.news-cover-box-shadow {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: #194418;
	top: 15px;
	right: -15px;
	z-index: 1;
}

.each-news {
	display: flex;
	padding: 15px;
	border-bottom: 2px dotted #ccc;
	align-items: flex-start;
	justify-content: flex-start;
}

.news-date {
	letter-spacing: 3px;
}

.news-cate {
	display: block;
	width: 120px;
	text-align: center;
	padding: 2px;
	margin: 0 15px;
	color:#fff;
	font-weight: 300;
	background-color: #aaa;
}
.news-cate.new-release {
	background-color: #f46700;
}
.news-cate.new-course {
	background-color: #e43d3d;
}
.news-cate.news {
	background-color: #188daf;
}

.news-content {
	display: block;
	color:#000;
	font-size: 18px;
	font-weight: 300;
	width: 75%;
	line-height: 1.4em;
}

.section-bottom {
	padding: 100px 0;
	padding-top: 30px;
	background-color: #fff;
}

.tik-box {
	max-width: 680px;
	margin: auto;
	border: 10px solid transparent;
	padding: 25px;
	border-image: url('../img/border.png') 12 round;
}

.tik-box p {
	margin: 0;
	padding: 0;
}

.small {
	font-size: 0.6em;
}

.cont-box-link {
	display: block;
	color:#fff;
	position: relative;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.cont-box-link:after {
	content: "";
	display: block;
	padding-bottom: 57%;
}
.cont-box-link:hover {
	opacity: 0.6;
}

.cont-text {
	padding: 60px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}

.cont-text h3 {
	color:#fff;
}

.cont-text h4 {
	color:#00a873;
	font-family: 'Montserrat';
	font-size: 16px;
}

footer {
	padding: 100px 0;
	background-color: #f5f8f5;
}

ul.social-icon {
	list-style-type: none;
	padding: 0;
	margin: 0;
	text-align: center;
	margin-bottom: 5px;
	margin-top: 15px;
}

ul.social-icon li {
	display: inline-block;
}

ul.social-icon li a {
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 100%;
	text-align: center;
	color:#fff;
	line-height: 30px;
}

.icon-insta {
	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション①*/
}

.icon-twitter {
	background-color: #15a3f3;
}

.icon-facebook {
	background-color: #3f67b3;
}

.footer-box p {
	padding-top: 15px;
	padding-bottom: 10px;
	margin: 0;
	font-weight: 400;
	font-size: 14px;
}

.copyright {
	font-size: 14px;
	margin-top: 10px;
}

.footer-menu {
	border-top: 1px solid #111;
}

.footer-menu-right {
	border-top: 1px dotted #111;
}
.footer-menu-right.logged-in .login-hide {
	display: none;
}
.footer-menu-right .logout-menu {
	display: none;
}
.footer-menu-right.logged-in .logout-menu {
	display: block;
}

.footer-title {
	font-size: 18px;
	padding-bottom: 10px;
}

.footer-menu {
	padding-top: 10px;
}

.footer-menu ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.footer-menu ul li.menu-item-has-children {
	margin-bottom: 10px;
}

.footer-menu ul li.menu-item-has-children > a {
	display: block;
	color:#00a873;
	padding: 5px 0;
}

.footer-menu ul li.menu-item-has-children > a:before {
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	width: 20px;
	height: 20px;
	line-height: 17px;
	font-size: 13px;
	text-align: center;
	display: inline-block;
	border:2px solid #00a873;
	margin-right: 10px;
}

.footer-menu ul li ul.sub-menu {
	padding-left: 45px;
}

.footer-menu ul li ul.sub-menu li a {
	color:#333;
	display: block;
	font-size: 14px;
}
.footer-menu ul li ul.sub-menu li a:hover {
	color:#00a873;
}

.footer-menu ul li ul.sub-menu li.unactive a {
	color:#ccc;
	pointer-events: none;
	cursor: default;
}

.footer-menu-right ul li a {
	color:#333;
	font-size: 14px;
}
.footer-menu-right ul li a:hover {
	color:#00a873;
}

.section-cover {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	text-align: center;
	margin-top: 80px;
	padding: 100px 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.cover-with-border {
	margin-top: 80px;
}

.cover-text-box h1 {
	font-weight: 700;
	margin-bottom: 15px;
	font-size: 48px;
}

.cover-text-box p {
	margin: 0;
	padding: 0;
	font-weight: 300;
	line-height: 1.6em;
}

.cover-text-box p .small {
	font-size: 0.8em;
}

.section-top-service {
	padding: 60px 0;
	background-color: #00a873;
}

.service-link-box {
	display: block;
	padding: 7px;
	background-color: #111;
	border-radius: 25px;
	position: relative;
	z-index: 1;
}

.service-box-inner {
	text-align: center;
	color:#fff;
	position: absolute;
	width: 100%;
	bottom: 30px;
	left: 0;
}

.service-box-inner h3 {
	font-size: 30px;
	letter-spacing: 2px;
}

.service-box-inner p {
	margin: 0;
	padding-bottom: 10px;
	font-weight: 300;
	font-size: 14px;
}

.service-box-inner i {
	font-size: 20px;
}

.service-link-box .service-img {
	border-radius: 20px;
}

.service-link-box .service-img:after {
	padding-bottom: 55%;
}

.content-ss {
	padding: 0 15px;
}

.content-ss h2 {
	font-size: 72px;
	margin-bottom: 30px;
}

.content-ss p {
	font-weight: 300;
	font-size: 18px;
}

.content-ss .more-btn {
	margin-top: 45px;
}

.content-ss .more-btn a {
	font-weight: 500;
	padding: 5px 45px;
}

.content-ss	.more-btn.a-expand a {
	line-height: 1em;
}

.section-service-content {
	padding: 60px 0;
	background-color: #fff;
}

.section-service-content.left-cont {
	background-color: #f5f8f5;
}
.section-service-content.enki-cont {
	background-color: #f5f8f5;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.container-footer {
	max-width: 1440px;
	margin:auto;
	padding: 0 15px;
}

.cover-know {
	padding-top: 200px;
}
.each-course {
	margin-bottom: 30px;
}
.section-know-gray {
	padding: 60px 0;
	background-color: #edf1ed;
}

.bb-box {
	max-width: 770px;
	margin:auto;
	position: relative;
	margin-bottom: 60px;
}

.bb-white {
	text-align: center;
	font-weight: 700;
	background-image: url('../img/white-bb.png');
	background-size: cover;
	background-position: center;
	height: 124px;
	padding-top: 18px;
}

.bb-green {
	text-align: center;
	font-weight: 700;
	background-image: url('../img/green-bb-1.png');
	background-size: cover;
	background-position: center;
	width: 630px;
	padding-top: 18px;
	height: 74px;
	position: absolute;
	right: 0;
	bottom: -30px;
}

.bb-green-2 {
	background-image: url('../img/green-bb-2.png')
}

.section-know-gray h3 {
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4em;
	margin: 0;
	margin-top: 45px;
}

.main-title.green-title h2 span {
	background-color: #008a50;
	color:#fff;
}

.main-title.green-title h2 {
	border-bottom: 1px solid #fff;
}

.main-title.green-title h2,
.main-title.green-title h3 {
	color:#fff;
}

.section-know-green {
	padding: 100px 0;
	background-color: #008a50;
}

.div-custom-select {
	padding: 8px 20px;
	border:4px solid #000;
	border-radius: 25px;
	text-align: center;
	background-color: #fff;
	position: relative;
	font-size: 20px;
	font-weight: 700;
	cursor: pointer;
	display: block;
	color:#111;
	margin-bottom: 15px;
}

.div-custom-select i {
	position: absolute;
	top:15px;
	right: 8px;
}

.div-custom-select:hover {
	color:#111;
	background-color: #00a873;
}

.custom-ss-cover {
	margin-top: 60px;
}

.sectino-know-news {
	padding: 100px 0;
}

.know-title {
	font-size: 30px;
	color:#111;
	font-size: 40px;
	margin-bottom: 30px;
}

.know-title .green {
	color:#008a50;
}

.know-n-img {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 15px;
}

.know-n-img:after {
	content: "";
	display: block;
	padding-bottom: 63%;
}
.radius-2vw {
	border-radius: 20px;
}

.k-code {
	font-size: 12px;
	font-weight: 300;
	margin-top: 5px;
}

.know-box {
	/* margin-bottom: 30px; */
	display: block;
	color:#111;
}

.know-box:hover {
	color:#111;
}

.know-box p {
	font-size: 13px;
	font-weight: 300;
	margin: 0;
	padding: 0;
	margin: 5px 0;
}

.author {
	font-size: 14px;
	font-weight: bold;
}

.little-space {
	height: 100px;
}

.section-short-cover {
	color: #008a50;
	padding: 30px 0;
	margin-top: 80px;
	background-color: #f5f8f5;
}

.section-short-cover h1 span {
	color:#000;
}

.section-course {
	padding: 60px 0;
}

.c-title {
	font-size: 20px;
	letter-spacing: 2px;
	font-weight: 700;
}

.course-info {
	border-bottom: 2px solid #111;
	padding-bottom: 25px;
}

.course-info h3 {
	color:#00a873;
	margin-bottom: 10px;
	margin-top: 5px;
}

.course-body {
	padding-top: 15px;
}
.course-body ul,
.course-body li {
	font-weight: 300;
}
.course-body h4 {
	font-size: 16px;
	font-weight: 700;
	line-height: 25px;
}

.course-body p {
	font-weight: 300;
}

.section-schedule {
	padding: 60px 0;
}

.sc-title {
	padding: 15px;
	background-color: #00a873;
	color:#fff;
	text-align: center;
	font-size: 30px;
	border-radius: 40px;
	margin-bottom: 30px;
}

.sc-table {
	padding: 30px 0;
}

.sc-table h3 {
	font-size: 24px;
	margin-bottom: 15px;
	font-weight: 700;
}

.sc-table table {
	width: 100%;
}

.sc-table table tr th{
	text-align: center;
	padding: 8px 5px;
	background-color: #e5f6f1;
	border:1px solid #111;
	border-bottom: 2px solid #111;
	border-top: none;
	font-size: 14px;
}

.sc-table table tr th:first-child {
	border-left: none;
}

.sc-table table tr th:last-child {
	border-right: none;
	width: 120px;
}

.sc-tb-button {
	border:none;
	border:3px solid #111;
	color:#111;
	background-color: #fff;
	border-radius: 25px;
	display: block;
	width: 100%;
	text-align: center;
	padding: 5px;
	font-weight: 700;
	outline: none;
}
.sc-disabled-button {
	border:none;
	border:3px solid red;
	color:red;
	background-color: #fff;
	border-radius: 25px;
	display: block;
	width: 100%;
	text-align: center;
	padding: 5px;
	font-weight: 700;
	outline: none;
}

.sc-tb-button:hover {
	color: #000;
	background-color: #00a873;
}

.sc-table table tr td {
	font-size: 14px;
	font-weight: 300;
	padding: 10px 5px;
	text-align: center;
	border-bottom: 1px dotted #111;
	border-left: 1px solid #111;
	border-right: 1px solid #111;
}

.sc-table table tr td.td-2 {
	width: 220px;
	text-align: left;
}

.sc-table table tbody tr:first-child td.td-1,
.sc-table table tbody tr:first-child td.td-2 {
	border-bottom: 1px solid #111;
}

.sc-table table tbody tr td:first-child {
	border-left: none;
}

.sc-table table tbody tr td:last-child {
	border-right: none;
}

.sc-table table tbody tr:last-child td {
	border-bottom: 1px solid #111;
}

.sc-table table tbody:nth-child(even) tr {
	background-color: #f5f8f5;
}

.sc-table p {
	font-size: 14px;
	padding: 15px 0;
}

.cover-container {
	padding: 160px 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	max-width: 1280px;
	margin:auto;
	display: flex;
	align-items: center;
	justify-content: center;
	color:#fff;
}

.section-company {
	padding: 60px 0;
}

.company-table table {
	width: 100%;
}

.company-table table tr td:first-child {
	width: 20%;
}

.company-table table tr td {
	padding: 15px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	vertical-align: top;
	font-weight: 300;
}

.company-table table tr td img {
	display: block;
	margin-top: 10px;
}

.company-table table tr td a {
	color:#111;
}

.company-table table tr:nth-child(even) {
	background-color: #f5f8f5;
}

.map-block {
	margin-top: 60px;
	margin-bottom: 60px;
}

.map-block iframe {
	width: 100%;
	height: 460px;
}

.company-table h2 {
	margin-bottom: 30px;
}

.register-form table {
	width: 100%;
}

.register-form table tr td {
	padding: 15px;
	vertical-align: middle;
}
.register-form table tr td.forget,
.register-form table tr td.forget-label {
	padding: 0 15px;
}

.register-form table tr td:first-child {
	width: 30%;
	position: relative;
	z-index: 1;
	font-size: 18px;
	font-weight: 300;
}

.req {
	background-color: #cc0000;
	color:#fff;
	font-size: 12px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	padding: 0 5px;
}

.section-register {
	padding: 60px 0;
}

.register-form {
	max-width: 800px;
	margin:auto;
}

.register-form form input,
.register-form form textarea {
	width: 100%;
	padding: 15px;
	background-color: #f7fafc;
	border:none;
	border:1px solid #ccc;
	border-radius: 5px;
}

.register-form form textarea {
	height: 180px;
}

.register-form form input.half {
	display: inline-block;
	width: 45%;
	margin-right: 15px;
}

.register-form form input.medium {
	width: 80%;
}

.register-form form input[type="checkbox"] {
	width: auto;
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 20px;
}

.register-form form label {
	font-weight: 300;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
}

.register-form form label a {
	color:#0091ed;
	padding-bottom: 2px;
	border-bottom: 1px solid #0091ed;
}

.register-form table tr:last-child td {
	vertical-align: top;
}

.register-form table tr:last-child td .req{
	top: 20px;
	transform: none;
}

.register-form table tr:last-child td.ver-mid {
	vertical-align: middle;
	padding: 0;
}

.register-form table tr td.sp-td {
	vertical-align: top;
}

.register-form table tr td.sp-td .req {
	top: 20px;
	transform: none;
}

.forget-status {
    padding: 5px 10px;
    background-color: #fff8f8;
	border-top: 1px solid #cc0000;
    border-bottom: 1px solid #cc0000;
}
.forget-status p {
    color: #aa0000;
	font-size: 12pt;
	font-weight: 500;
	margin: 0;
}

.form-confirm form input {
	display: inline-block;
	width: 100%;
	border:none;
	padding: 0;
	margin-right: 10px;
	background-color: #fff;
}

.form-confirm table tr td {
	border-bottom: 1px solid #ccc;
}

.form-confirm p {
	margin-bottom: 60px;
}

.thanks-btn a {
	font-weight: 700;
	font-size: 20px;
	border-radius: 30px;
}

.thanks-box {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	color:#fff;
	text-align: center;
	padding-bottom: 30px;
	padding-top: 140px;
	margin-bottom: 60px;
}

.thanks-box h2 {
	font-size: 48px;
	font-weight: 700;
	letter-spacing: 2px;
	text-shadow: 1px 1px 4px rgba(0, 0, 0, 1);
}

.section-privacy-content {
	padding: 60px 0;
}

.section-privacy-content p {
	margin: 0;
	margin-bottom: 30px;
	font-weight: 300;
}

.section-privacy-content h2 {
	padding: 10px;
	background-color: #00a873;
	color:#fff;
	margin-bottom: 15px;
	font-size: 26px;
}

.section-privacy-content h3 {
	padding: 10px 0;
	border-bottom: 2px solid #00a873;
	margin-bottom: 15px;
	font-size: 20px;
}

.section-privacy-content ul li {
	font-weight: 300;
}

.forget-pass {
	margin-top: 10px;
	display: block;
	font-size: 16px;
}

.register-form table tr:last-child td.pass-td {
	padding-top: 30px;
}

.register-form table tr:last-child td.pass-td .req {
	top: 35px;
}

.register-form form label.f-text {
	font-size: 14px;
	margin-top: 15px;
}

.section-my-page {
	padding: 60px 0;
}

.m-title {
	font-size: 30px;
	font-weight: 700;
	padding-bottom: 15px;
	border-bottom: 2px solid #000;
	margin-bottom: 30px;
}

.no-courses {
	margin-bottom: 40px;
}

.m-side-bar .m-title {
	margin-bottom: 0;
}

.m-side-bar h3 {
	font-size: 22px;
	margin: 10px 0;
}

.m-side-bar > ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.m-side-bar > ul li a {
	display: block;
	padding: 15px 0;
	color:#000;
	border-bottom: 1px dotted #ccc;
	font-weight: 300;
}

.m-side-bar ul li ul.sub-menu li a {
	display: block;
	padding: 10px 0;
	border-bottom: 0;
}

.m-side-bar ul li ul.sub-menu li.no-courses {
	list-style: none;
	padding: 15px 0;
	font-weight: 300;
}

.m-side-bar > ul li.m-logout {
	background-color: #f5f8f5;
	padding: 15px 0;
	margin-top: 20px;
	text-align: center;
}

.m-side-bar > ul li.m-logout a {
	border: none;
	padding: 0;
}
.m-side-bar > ul li.m-logout a.member-details{
	margin-top: 10px;
}
.m-side-bar > ul li.m-logout button {
	padding: 10px 30px;
	border: 2px solid #000;
	text-align: center;
	position: relative;
	display: inline-block;
	background-color: #fff;
	border-radius: 25px;
	outline: none;
	transition-duration: 0.3s;
}

.m-side-bar > ul li.m-logout a button:hover {
	background-color: #00a873;
	color:#000;
	transition-duration: 0.3s;
}

.m-title .title-name {
	border-bottom: 2px solid #00a873;
	padding-bottom: 11px;
}
.m-title .top {
	float: right;
	display: inline-block;
	padding: 0;
	border: none;
	color: #00a873;
	font-size: 16pt;
	margin: 16px 5px 0 0;
}

.my-page-body h3 {
	position: relative;
	font-size: 20px;
	padding-left: 30px;
}
.my-page-body h3 .sq-icon {
	display: inline-block;
	position: absolute;
	top: -2px;
	left: 0;
	vertical-align: baseline;
}

.vdo-image {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #00a873;
	height: 155px;
}

.play-btn {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
}

.vdo-cover-body {
	margin-top: 30px;
	margin-bottom: 30px;
}

.my-page-body p {
	font-weight: 300;
	line-height: 1.8em;
}

.vdo-box p {
	color:#111;
	font-weight: 300;
	padding: 10px;
	font-size: 14px;
}

.vdo-box iframe {
	width: 100%;
	height: 150px;
	background-color: #000;
}

.lock-box {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
	display: flex;
	align-items: flex-end;
	justify-content: center;
	color:#fff;
	flex-wrap: wrap;
}

.lock-box h4 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 20px;
	font-weight: 300;
}

.buy-it {
	display: inline-block;
	padding: 5px 15px;
	background-color: #c73838;
	color:#fff;
	border:2px solid #af2b2b;
	border-radius: 5px;
	outline: none;
}

.buy-it i {
	margin-left: 10px;
}

.group-bvdo {
	padding-bottom: 15px;
}

.buy-it:hover {
	background-color: #af2b2b;
	color:#fff;
}

.my-page-btn {
	background-color: #f5f8f5;
	padding: 15px 0;
}

.my-page-btn a {
	background-color: #fff;
	font-weight: 500;
}

.my-page-body h2.remove-margin {
	margin-bottom: 0;
}

.my-page-body .display-details {
	position: relative;
}
.my-page-body .display-details .member-details-msg {
	display: none;
	font-size: 10pt;
	font-weight: 300;
	line-height: 1em;
	padding: 7px 7px;
	margin: 0 0 10px 0;
}
.my-page-body .display-details .member-details-msg.show-it {
	display: block;
}
.my-page-body .display-details .member-details-msg.success {
	color: #1f981f;
	background-color: #f4fff4;
	border-bottom: 1px solid #1f981f;
}
.my-page-body .display-details .member-details-msg.fail {
	color: #aa0000;
	background-color: #fff8f8;
	border-bottom: 1px solid #aa0000;
}
.my-page-body .display-details .edit-btn {
	display: inline-block;
	position: absolute;
	right: 5px;
	bottom: 5px;
}
.my-page-body .display-details .edit-btn a {
	color: #000;
	position: relative;
	font-size: 12pt;
	font-weight: 500;
	padding: 7px 45px;
	letter-spacing: 2px;
	outline: none;
	transition: 0.3s;
	border-radius: 25px;
	border: 4px solid #000;
}
.my-page-body .display-details .edit-btn a .arrow {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0,-50%);
}
.my-page-body .display-details .edit-btn a:hover {
    color: #000;
	background-color: #00a873;
}
.my-page-body .edit-details {
	display: none;
}
.my-page-body .edit-details .field-group {
	margin-bottom: 10px;
}
.my-page-body .edit-details .field-group-50 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 10px;
}
.my-page-body .edit-details .field-subgroup {
	display: inline-block;
}
.my-page-body .edit-details .field-group-50 .field-subgroup {
	flex: 0 0 50%;
	padding-right: 5px;
}
.my-page-body .edit-details .field-group-50 .field-subgroup:last-child {
	flex: 0 0 50%;
	padding-left: 5px;
	padding-right: 0;
}
.my-page-body .edit-details .field-group label,
.my-page-body .edit-details .field-group-50 label {
	display: block;
	margin: 0;
	font-size: 9pt;
	font-weight: 300;
}
.my-page-body .edit-details .field-group input,
.my-page-body .edit-details .field-group-50 input {
	width: 100%;
	font-size: 12pt;
	font-weight: 500;
}
.my-page-body .edit-details .control-group {
	margin-top: 20px;
}
.my-page-body .edit-details .control-group .cancel {
	margin-left: 10px;
}
.my-page-body .edit-details .control-group input {
	display: inline-block;
	color: #000;
	position: relative;
	font-size: 12pt;
	font-weight: 500;
	padding: 7px 45px;
	letter-spacing: 2px;
	outline: none;
	transition: 0.3s;
	border-radius: 25px;
	border: 4px solid #000;
}
.my-page-body .edit-details .control-group input:hover {
    color: #000;
	background-color: #00a873;
}
.my-page-body .unsubscribe-link {
	margin-top: 7px;
	text-align: right;
}
.my-page-body .unsubscribe-link a {
	color: #282828;
	font-size: 10pt;
	text-decoration: none;
}
.my-page-body .unsubscribe-link a:hover {
	text-decoration: underline;
}
.mypage-status {
    padding: 5px 10px;
}
.mypage-status p {
	font-size: 12pt;
	font-weight: 500;
	margin: 0;
}
.mypage-status.success {
    background-color: #f8fff8;
	border-top: 1px solid #48aa48;
    border-bottom: 1px solid #48aa48;
}
.mypage-status.success p {
    color: #33cc33;
}
.mypage-status.failure {
    background-color: #fff8f8;
	border-top: 1px solid #cc0000;
    border-bottom: 1px solid #cc0000;
}
.mypage-status.failure p {
    color: #aa0000;
}

.news-table ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.news-table ul li {
	display: block;
}

.news-table ul li a {
	display: block;
	padding: 15px;
	font-weight: 300;
	color:#000;
	background-color: #fcfcfc;
	border-bottom: 2px solid #ccc;
}

.news-table ul li:nth-child(even) a {
	background-color: #fff;
}

.news-content p {
	font-size: 14px;
}

.detail-wrapper-button {
	padding: 15px;
	background-color: #f5f8f5;
	display: flex;
	align-self: center;
	justify-content: space-between;
	margin-top: 60px;
}

.detail-wrapper-button a {
	padding: 5px 15px;
	background-color: #fff;
	color:#000;
	border:2px solid #000;
	border-radius: 25px;
	outline: none;
}

.detail-wrapper-button a:hover {
	background-color: #00a873;
	color:#000;
}

.burger-icon {
	position: absolute;
	right: 5px;
	top: 3px;
	font-size: 30px;
	color:#00a873;
	cursor: pointer;
	display: none;
}

.burger-menu {
	position: fixed;
	width: 100%;
	background-color: #00a873;
	padding: 15px;
	z-index: 10;
	top: 0;
	left: 0;
	display: none;
	top:61px;
}

.burger-menu ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.burger-menu ul li {
	display: block;
}

.burger-menu ul li a {
	display: block;
	padding: 10px 0;
	color:#fff;
	border-bottom: 1px solid #fff;
	font-size: 4v
}

.control-mobile {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	margin-top: 10px;
}

.control-mobile a {
	display: inline-block;
	padding: 15px;
	background-color: #fff;
	color:#00a873;
	border-radius: 5px;
	width: 45%;
	text-align: center;
}

.control-mobile a.login-m-btn {
	background-color: #194418;
	color:#fff;
}

.company-table table tr td span {
	padding-left: 15px;
	display: block;
}

.g-recaptcha {
	width: 304px;
	margin:auto;
	margin-top: 30px;
}

.control-mobile a.login-m-btn.wide-btn {
	width: 100%;
}

p.submit {
	text-align: center;
}

p.submit input {
	transition: 0.6s;
	display: inline-block;
	background-color: #fff;
	border: 2px solid #000;
	padding: 10px 30px;
	border-radius: 5px;
	width: auto;
	outline: none;
}

p.submit input:hover {
	transition: 0.6s;
	background-color: #00a873;
}

.course-block {
	margin-bottom: 60px;
}

.disabled {
	pointer-events: none;
	cursor: default;
	opacity: 0.3;
}

.section-password-reset {
	padding: 60px 0;
}
.reset-password-heading {
	font-size: 18pt;
}

.register-confirmation-form {
	max-width: 500px;
	margin: 40px auto 0 auto;
}
.register-confirmation-form p.submit input:disabled {
	background-color: #e8e8e8;
	border: 2px solid #ccc;
	cursor: not-allowed;
}
.register-confirmation-form p.submit input:disabled:hover {
	background-color: #e8e8e8;
}

.register-confirmation-form .password-input {
	color: #282828;
	font-size: 18pt;
	font-weight: 500;
	padding: 5px 9px;
	margin-bottom: 20px;
	border-radius: 3px;
	border: 1px solid #ccc;
}
.register-confirmation-form .pass-strength-result {
	display: block;
	font-size: 14pt;
	margin: 10px 0 20px 0;
	padding: 5px 10px;
	border: none;
	text-align: center;
}
.register-confirmation-form .pass-strength-result.empty {
	color: #282828;
    background-color: #e8e8e8;
}
.register-confirmation-form .pass-strength-result.bad {
	color: #aa0000;
    background-color: #ffe8e8;
}
.register-confirmation-form .pass-strength-result.good {
	color: #d88018;
	background-color: #f8ff10;
}
.register-confirmation-form .pass-strength-result.strong {
	color: #088f1f;
	background-color: #bfffc4;
}
.register-confirmation-form .pass-strength-result.short {
	color: #282828;
    background-color: #e8e8e8;
}
.register-confirmation-form .indicator-hint {
	font-size: 10pt;
	font-weight: 200;
	margin-bottom: 20px;
}

.section-password-error .reason {
	color: #282828;
	font-size: 12pt;
	margin-top: 30px;
	text-align: center;
}

.status-msg {
	display: none;
}
.content-none {
	text-align: center;
	font-size: 20px;
	padding: 80px 10px;
}
.content-none span {
	font-size: 70px;
}
.content-none-btn {
	margin:20px auto;
	text-align: center;
}
.right-content {
	text-align: right;
}

.step-bar {
	background-color: #f5f8f5;
	border:1px solid #00a873;
	max-width: 800px;
	margin:auto;
}

.step-bar ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.step-bar ul li {
	width: 33%;
	padding: 15px;
	text-align: center;
	position: relative;
	z-index: 1;
	display: block;
	margin: 0;
}

.step-bar ul li a {
	display: block;
	width: 100%;
	height: 100%;
	color:#000;
}

.step-bar ul li.active {
	background-color: #00a873;
	color:#fff;
}

.l-arrow {
	width: 39px;
	height: 39px;
	transform: rotate(-45deg);
	border:1px solid #00a873;
	background-color: #f5f8f5;
	border-left: none;
	border-top: none;
	position: absolute;
	top: 8px;
	left: -19px;
	z-index: 10;
}

.s-arrow {
	width: 39px;
	height: 39px;
	transform: rotate(-45deg);
	border:1px solid #00a873;
	border-left: none;
	border-top: none;
	position: absolute;
	top: 8px;
	right: -20px;
	z-index: 10;
}

.step-bar ul li.active .s-arrow {
	background-color: #00a873;
}

.section-payment {
	padding: 60px 0;
}

.section-payment .purchase-description {
	max-width: 600px;
	margin: 30px auto;
}
.section-payment .purchase-description .description {
	font-size: 14pt;
	font-weight: 500;
}
.section-payment .purchase-amount {
	max-width: 600px;
	margin: 30px auto 50px auto;
}
.section-payment .purchase-amount .amount{
	width: 50%;
	font-size: 18pt;
	font-weight: 700;
	text-align: center;
	margin: 0 auto;
	padding: 20px 0;
	border: 1px solid #00a873;
	background-color: #f5f8f5;
}

.payment-p {
	display: block;
	text-align: center;
	margin: 60px 0;
	color:#111111;
	font-weight: 300;
}

.payment-cover {
	max-width: 640px;
	margin:auto;
}

.payment-box {
	padding: 25px;
	background-color: #f7fafc;
	border:2px solid #ccc;
	margin-bottom: 30px;
	cursor: pointer;
	display: block;
	color:#000;
}
.payment-box-vandle {
	padding: 25px;
	background-color: #f7fafc;
	border:2px solid #ccc;
	margin-bottom: 30px;
	cursor: pointer;
	display: block;
	color:#000;
}

.payment-box h3 {
	display: block;
	font-size: 20px;
	margin-bottom: 25px;
}
.payment-box h3.short-margin {
	margin-bottom: 15px;
}

.payment-box h3 small {
	font-size: 0.6em;
}

.payment-box .bank-logos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}
.payment-box .bank-logos .bank-logo {
	flex: 0 0 30%;
	margin: 10px 3% 0 0;
}
.payment-box .bank-logos .bank-logo img {
	display: block;
	max-width: 100%;
	max-height: 46px;
	margin: 0 auto;
}

.payment-box:hover {
	border: solid 2px rgb(60 72 214);
}

.pay-t {
	font-size: 18px;
}

.warn-text {
	color:red;
	font-weight: 300;
	font-size: 14px;
}

.payment-form table tr td {
	vertical-align: top;
}

.payment-form table tr td .req {
	top: 30px;
}

.payment-select-banks {
	display: flex;
	align-items: top;
	justify-content: space-between;
	flex-wrap: wrap;
}

.small-bank {
	width: 49%;
	padding: 10px 25px;
	background-color: #f7fafc;
	text-align: center;
	border:2px solid #ccc;
	margin-bottom: 10px;
	cursor: pointer;
}
.small-bank .bank-name {
	font-size: 10pt;
	margin: 0;
}

.small-bank:hover {
	border: solid 2px rgb(60 72 214);
}
.small-bank.active {
	background-color: #f2f4f8;
	border: solid 2px rgb(60 72 214);
}

.result-box {
	background-color: #f7fafc;
	padding: 25px;
	border:1px solid #ccc;
	max-width: 640px;
	margin:auto;
}

.result-box h3 {
	font-weight: 500;
	font-size: 18px;
}

.result-box p {
	font-weight: 300;
	padding: 0;
	margin: 0;
}

.result-box h2 {
	font-size: 36px;
}

.result-box h2 small {
	display: block;
	font-size: .5em;
}

.b-right {
	border-right: 1px solid #ccc;
}

.total-price {
	padding-left: 25px;
}

.stripe-form {
	max-width: 600px;
    margin: 0 auto;
}
.stripe-form fieldset {
	margin: 0 0 20px 0;
}
.stripe-form fieldset label {
	display: block;
	color: #686868;
	font-size: 12px;
	font-weight: 300;
    padding: 0;
    margin: 0 0 2px 3px;
}
.stripe-form fieldset input[type="email"],
.stripe-form fieldset input[type="text"],
.stripe-form fieldset input[type="tel"] {
	width: 100%;
	color: #282828;
	font-size: 18px;
	font-weight: 300;
	padding: 7px 11px;
	border-radius: 5px;
	background-color: #fff;
	border: 1px solid #00a873;
}
.stripe-form .card-input {
	padding: 20px 10px;
	border-radius: 5px;
	background-color: white;
	border: 1px solid #00a873;
}

.stripe-submit {
	margin: 60px 0;
}
.stripe-submit button {
	position: relative;
	/* display: block; */
	color: #000;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 2px;
	padding: 10px 100px;
	margin: 0 auto;
	outline: none;
	transition: 0.4s;
	border-radius: 25px;
	border: 4px solid #000;
	background-color: #fff;
}
.stripe-submit button:hover {
	color: #000;
	background-color: #00a873;
}
.stripe-submit button:disabled {
	color: #686868;
	border-color: #ccc;
	background-color: #f4f4f4;
}
.stripe-submit button i {
	position: absolute;
	right: 7px;
	top: 50%;
	transform: translateY(-50%);
}
.stripe-processing {
	display: none;
	position: relative;
	margin: 0;
	padding: 10px;
	border-radius: 9px;
	border: 1px solid #00a873;
}
.stripe-processing.is-processing {
	display: block;
}
.stripe-processing .message {
	font-size: 12pt;
	font-weight: 300;
	text-align: center;
	margin-bottom: 10px;
}
.stripe-processing .spinner {
    display: block;
	margin: 0 auto;
}
.stripe-error {
	display: none;
	position: relative;
	margin: 0;
	padding: 20px 20px;
	border-radius: 9px;
	border: 1px solid #ffcccc;
	background-color: #fff4f4;
	box-shadow: 0 0 15px -5px rgba(255,0,0,0.3);
}
.stripe-error.have-error {
	display: block;
}
.stripe-error .message {
	margin: 0;
	color: #aa0000;
	font-size: 12pt;
	font-weight: 300;
}

.payment-error {
    padding: 5px 10px;
    background-color: #fff8f8;
	border-top: 1px solid #cc0000;
    border-bottom: 1px solid #cc0000;
}
.payment-error p {
    color: #aa0000;
	font-size: 12pt;
	font-weight: 500;
	margin: 0;
}
.hurikomimeigi {
	color: #fff;
	font-size: 12px;
}

.margin-top-20 {
	margin-top: 20px;
}

.my-page-service-title {
	font-size: 18px;
	color:#008a50;
}
.frame-wrapper__video {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 50px;
}

.frame-wrapper__video iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.grow-box {
	padding: 10px;
	box-shadow: 0px 3px 6px #00000029;
}
.grow-title-mypage {
	font-weight: bold;
	font-size: 16px;
}
.vdo-box {
	box-shadow: 0px 3px 6px #00000029;
}
p.tyusyaku {
	padding: 7px;
    border: dashed 2px;
    margin: 7px;
}
.movie-origin {
	text-align: center;
}
.news-content-detail img {
	width: 100%;
    height: auto;
}
.sns-box {
	margin-bottom:50px;
}
h4.comment-movie {
	text-align: center;
	margin-top: 30px;
}
.exam-title h2 {
	text-align: center;
	margin-bottom: 20px;
}
.exam-title h5 {
	text-align: center;
}
.exam-title {
	margin-top: 30px;
	margin-bottom: 30px;
}
.time-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px;
    margin-bottom: 10px;
}
.each-exam .frame-wrapper__video {
	margin-bottom: 20px;
}
.each-exam {
	margin-bottom: 50px;
}
/*zzzxxx*/

@media only screen and (max-width: 991px) {

	header {
		background-color: #fff;
	}

	.home .f-logo {
		display: none;
	}

	.home .l-logo {
		display: block;
	}

	.home header {
		padding: 0 15px;
	}

	.l-logo {
		position: relative;
		width: 110px;
		margin: 5px 0;
	}

	.main-menu {
		display: none;
	}

	.control-box {
		display: none;
	}

	.f-logo {
		position: relative;
		text-align: center;
		transform: none;
		left: 0;
		display: none;
	}

	header.scroll-header {
		background-color: #fff;
	}

	header.scroll-header .l-logo {
		position: relative;
		transform: none;
		left: 0;
		width: 120px;
		margin: 5px 0;
		display: block;
	}

	.header-container {
		display: block;
	}

	.burger-icon {
		display: block;
	}

	.bb-white {
		height: 111px;
		padding-top: 10px;
	}

	.course-info h3 {
		font-size: 18px;
	}
	.service-text h3 {
		font-size: 1.25rem;
	}
	.service-box-inner {
		bottom: 5px;
	}
	.service-box-inner p {
		font-size: 10px;
	}
	.service-box-inner h3 {
		font-size: 16px;
	}
	.movie-origin h2 {
		font-size: calc(1.1rem + 2vw);
	}
	.movie-origin h3 {
		font-size: calc(1rem + 1vw);
	}

}

@media only screen and (max-width: 767px) {

	.my-page-body {
		margin-bottom: 30px;
	}

	.top-title-box h2 {
		font-size: 6vw;
	}

	.top-title-box h3 {
		font-size: 5vw;
	}

	.red-tag {
		font-size: 6vw;
		padding: 1vw;
	}

	.top-title-box h1 {
		font-size: 9vw;
	}

	.top-link {
		font-size: 16px;
	}

	.c-swiper-button-prev {
		left: 0;
		width: 40px;
		height: 40px;
		line-height: 40px;
	}

	.c-swiper-button-next {
		width: 40px;
		height: 40px;
		line-height: 40px;
		right: 0;
	}

	.pick-box p {
		font-size: 14px;
	}

	.short-des p {
		font-size: 14px;
	}

	.service-box {
		margin-bottom: 15px;
	}

	.news-content {
		width: 100%;
		padding: 15px 0;
	}

	.each-news {
		flex-wrap: wrap;
	}

	.tik-box {
		padding: 15px;
	}

	.tik-box h3 {
		margin: 10px 0;
	}

	.tik-box p {
		font-size: 12px;
	}

	footer {
		padding: 60px 0;
	}

	.section-bottom {
		padding-bottom: 30px;
	}

	.section-top {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 15px;
	}

	.section-pickup {
		padding: 60px 0;
	}

	.main-title h2 {
		font-size: 24px;
	}

	.main-title h3 {
		font-size: 4.5vw;
	}

	.section-course img {
		width: 100%;
	}

	.course-info h3 {
		font-size: 12px;
		margin-bottom: 0px;
		margin-top: 0;
	}

	.course-info {
		padding: 5px 0;
	}

	.c-title {
		font-size: 16px;
	}

	.mdb-table table tr,
	.mdb-table table td {
		display: block;
		width: 100%;
	}

	.mdb-table table tr td:first-child {
		width: 100%;
		padding: 0;
		margin-bottom: 5px;
	}

	.mdb-table table tr td {
		padding: 0;
	}

	.mdb-table table tr td .req {
		position: relative;
		display: inline-block;
		transform: none;
		top: 0;
		left: 0;
		margin: 0;
		margin-left: 10px;
	}

	.mdb-table table tr:last-child td.pass-td .req {
		top: 0;
	}

	.mdb-table p {
		font-size: 3vw;
	}

	.bb-white {
		font-size: 14px;
		background: none;
		padding: 10px;
		border:6px solid #000;
		background-color: #fff;
		border-radius: 15px;
		height: auto;
		width: 100%;
		outline: none;
	}

	.bb-box {
		max-width: 100%;
		margin-bottom: 30px;
	}

	.bb-green {
		font-size: 14px;
		background: none;
		padding: 10px;
		border:6px solid #000;
		background-color: #a5d4a3;
		width: 100%;
		position: relative;
		border-radius: 15px;
		height: auto;
		top: -6px;
		z-index: 1;
		outline: none;
	}

	.bb-green-2 {
		background-color: #7ed6ba;
	}

	.div-custom-select {
		margin-bottom: 10px;
		font-size: 16px;
	}

	.m-side-bar {
		margin-bottom: 30px;
	}

	.section-privacy-content h2 {
		font-size: 4vw;
	}

	.section-privacy-content h3 {
		font-size: 3.4vw;
	}

	.section-privacy-content p,
	.section-privacy-content li {
		font-size: 2.8vw;
	}

	.form-confirm p {
		font-size: 20px;
	}

	.register-form table tr td:first-child {
		font-size: 3.6vw;
		width: 50%;
	}

	.more-btn a.back-btn {
		width: 60%;
		padding: 5px;
		margin-bottom: 15px;
	}


	.more-btn button {
		width: 60%;
		padding: 5px;
	}

	.thanks-box h2 {
		font-size: 7vw;
	}

	.register-form form input.half {
		width: 42%;
	}

	.register-form form input[type="checkbox"] {
		width: 15px;
		height: 15px;
	}

	.register-form form label {
		font-size: 3vw;
	}

	.register-form form input {
		padding: 5px;
	}


	.register-form table tr:last-child td .req,
	.register-form table tr td .req {
		top: 0;
		left: 0;
		right: auto;
	}

	.sc-cover-inner-tab {
		overflow: auto;
	}

	.sc-cover-inner-tab table {
		width: 800px;
	}

	.sc-cover-inner-tab table tr td {
		padding: 5px;
		font-size: 14px;
	}

	.section-short-cover h1 {
		font-size: 30px;
	}

	.sc-title {
		font-size: 20px;
		padding: 8px;
	}

	.service-link-box {
		margin-bottom: 15px;
	}

	.content-ss h2 {
		margin-top: 15px;
	}

	.m-order-1 {
		order:1;
	}

	.m-order-2 {
		order:2;
	}

	.content-ss h2 {
		font-size: 42px;
		margin-top: 30px;
	}

	.sc-table table tr th:last-child {
		position: sticky;
		right: 0;
	}

	.sc-table table tbody:nth-child(even) tr td:last-child {
		background-color: #f5f8f5;
	}

	.sc-table table tr td:last-child {
		position: sticky;
		right: 0;
		background-color: #fff;
	}

	.register-form table tr {
		display: block;
	}

	.register-form table tr td {
		display: block;
		padding: 10px 0;
	}
	.register-form table tr td.forget {
		padding: 5px 0 0 0;
	}
	.register-form table tr td.forget-label {
		display: none;
	}
	.register-form table tr td.forget label a {
		font-size: 9pt;
	}

	.register-form table td:last-child {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.register-form table td:last-child input {
		width: 100%;
		margin-right: 15px;
	}

	.register-form table tr td .req {
		position: relative;
		display: inline-block;
		left: auto;
		top: auto;
		transform: none;
		margin-left: 10px;
	}

	.register-form table tr td.sp-td .req {
		top: auto;
	}

	.register-form table tr td .check-b-group input {
		width: auto;
	}

	.service-text h3 {
		font-size: 1.75rem;
	}

	.service-box-inner {
		bottom: 30px;
	}

	.service-box-inner h3 {
		font-size: 30px;
	}

	.service-box-inner p {
		font-size: 14px;
	}

	.step-bar ul li {
		padding: 5px;
		font-size: 12px;
	}

	.s-arrow {
		width: 21px;
		height: 21px;
		top: 4px;
		right: -10px;
	}

	.l-arrow {
		width: 21px;
		height: 21px;
		top: 5px;
		left: -10px;
	}

	.payment-box img {
		max-width: 45%;
		display: inline-block;
		vertical-align: bottom;
		margin-right: 5px;
		margin-bottom: 5px;
	}

	.payment-form table td:last-child {
		flex-wrap: wrap;
	}

	.warn-text {
		margin-top: 10px;
		font-size: 11px;
	}

	.small-pay {
		display: inline-flex;
		align-items: center;
	}

	.total-price {
		padding-left: 0px;
		margin-top: 20px;
	}

	.result-box p {
		font-size: 14px;
	}
	.m-title {
		font-size: 24px;
	}
	.vdo-box iframe {
		width: 100%;
		height: 33vw;
	}

}
@media only screen and (max-width: 575px) {
	.news-cover-box-shadow {
		display: none;
	}
	.m-title {
		font-size: 16px;
	}
	.grow-contents-mypage h4 {
		font-size: 18px;
	}
	.vdo-box iframe {
		width: 100%;
		height: 53vw;
	}
}

@media only screen and (max-width: 320px) {

	.c-swiper-button-next,
	.c-swiper-button-prev {
		display: none;
	}

	.more-btn {
		margin-top: 30px;
	}

	.service-text p {
		font-size: 4vw;
	}

	.register-form form input {
		font-size: 14px;
	}

	.register-form form input.half {
		margin-right: 2px;
	}

	.req {
		font-size: 3vw;
		top: 0;
		transform: none;
		right: 0;
	}

	.register-form table tr td:first-child {
		font-size: 3.5vw;
	}

	.register-form form input[type="checkbox"] {
		margin-right: 2px;
		width: 10px;
		height: 10px;
	}

	.register-form table tr td {
		padding: 15px 5px;
	}

	.sc-cover-inner-tab table {
		width: 600px;
	}

	.sc-cover-inner-tab table tr td {
		font-size: 12px;
	}
}
