html, body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 62.5%;
	background: #fff;
	color: #333;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	border-color: #9E9E9F;
	width: 100%;
	font-size: 16px;
	padding: 6px;
}
select {
	border-color: #9E9E9F;
	font-size: 16px;
	padding: 6px;
}
label {
	font-size: 16px;
}
img {
	width: 100%;
	height: auto;
}
ul {
	padding: 0;
	margin: 0;
	list-style:none;
}
a {
	text-decoration: none;
}
a:link, a:visited,
a:hover, a:active {
	color: #333;
}
p {
	font-size: 14px;
	line-height: 1.7;
	padding: 0;
	margin: 0;
}
h2,h3,h4,h5,h6 {
	text-align: center;
	margin-left:5px;
}

#site-navigation {
	padding: 0;
	display: flex;
}
.main-navigation a {
	font-size: 20px;
	margin: 0;
	padding-top: 11px;
	padding-left: 23px;
}
.main-navigation > a {
	width: calc(100% - 60px);
}
.main-navigation a,
.main-navigation a:visited,
.main-navigation a:hover,
.main-navigation a:active {
	color: #3E3A39;
}
.main-navigation a img {
	width: 240px;
	height: 37.5px;
}
.navbar-light .navbar-brand {
	background: #F6F5F3;
	height: 60px;
}
.main-navigation ul {
	background: #fff;
}
.navbar-light .navbar-toggler {
	margin: 0;
	padding: 0;
	width: 60px;
	height: 60px;
}
.navbar-toggler-icon {
	width: 100%;
	height: 100%;
	background: 50%/100% 75% no-repeat;
}
.main-navigation.toggled ul {
}
.main-navigation li {
	height: 50px;
	padding-left: 36px;
	border-bottom: 1px solid #1A1A19;
}
footer .site-info {
	background: #3e3a39;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}
footer .site-info p {
	margin: 0;
	font-size: 10px;
	color: #fff;
}
.pc {
	display: none;
}
.sp {
	display: initial;
}
.gradient {
	background: linear-gradient(90deg, #53F453, #44C619);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.checked-icons li {
	list-style: none;
	background: url(../images/list-icon.png) no-repeat;
	background-size: auto 21px;
	background-position: left center;
	padding-left: 26px;
}
.bg-borders {
	background: url(../images/border-bg.png) no-repeat;
	background-size: contain;
	width: 356px;
	height: 360px;
	margin: 0 auto;
}
.link-btn {
	height: 60px;
	width: 300px;
	border-radius: 30px;
	border: 2px solid #44C619;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
}
.marquee {
	color: #44C619;
	font-size: 24px;
	background: linear-gradient(transparent 20%, #F8EA21 20%);
}

/**
 * TOP
 */

#description p {
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
	padding: 25px 0;
}
#introduction {
	padding-bottom: 30px;
}
#introduction h2 {
	margin-bottom: 25px;
}
#introduction h3 {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	padding: 10px 0;
	border-top: 1px solid #44C619;
	border-bottom: 1px solid #44C619;
	color: #44C619;
}
#introduction h4 {
	margin: 20px auto;
	color: #1A1A19;
	font-size: 21px;
	line-height: 1.3;
}
#introduction p {
	width: 92%;
	margin: 0 auto;
}
#introduction .link-btn {
	margin: 15px auto 0;
}
#introduction-list > div {
	margin-bottom: 30px;
}
#introduction-list > div:last-child {
	margin-bottom: 0;
}
#course {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #F8F7F0;
	padding: 30px 0 15px;
}
#course h2 {
	color: #44C619;
	border-bottom: 2px solid #44C619;
}
#course-list {
	width: 350px;
	height: 345px;
	margin: 0;
	padding: 75px 0 0 23px;
	background: url(../images/course_bg.png);
	background-size: cover;
	list-style: none;
	font-size: 21px;
	color: #44C619;
	line-height: 1.1;
}
#course-list li {
	background: #F8F7F0;
	padding: 0 2px;
	width: fit-content;
	margin-bottom: 10px;
}
#price-description .bg-borders {
	padding: 20px 0 0;
}
.bg-borders {
	font-size: 23px;
	color: #4d4d4d;
}
.bg-borders h3 {
	font-size: 24px;
}
#price {
	margin: 20px auto 25px;
}
#taikenki a.sp {
	display: block;
	width: 354px;
	margin: 0 auto;
}
#flow {
	background: #F8F7F0;
}
.join {
	background: #44C619;
	border-radius: 8px;
	border: 1px solid #44C619;
	color: #fff;
	width: 186px;
	height: 60px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 25px;
}
.join-button {
	width: 100%;
	display: flex;
	flex-direction: column;
}
.join-button:before {
	content: '';
	background: url(../images/double-arrow.png);
	background-size: contain;
	display: block;
	margin: 0 auto 6px;
	width: 20px;
	height: 24px;
}
.join:link, .join:visited, .join:hover, .join:active {
	color: #fff;
}
#soudan p {
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin: 20px auto 15px;
}
#soudan a {
	width: 330px;
	height: auto;
	display: block;
	margin: 0 auto;
}
#news {
	margin-bottom: 20px;
}
#news h2 {
	font-size: 27px;
	color: #53F453;
	border-bottom: 2px solid #44C619;
	width: fit-content;
	margin: 35px auto 30px;
}
.news {
	display: flex;
	justify-content: space-evenly;
	width: 360px;
	margin: 0 auto;
}
.news h3 {
	font-size: 10px;
	text-align: left;
	margin-bottom: 0;
	margin-top: 1em;
}
.news p {
	font-size: 7px;
}
.news li:nth-child(n+3) {
	display: none;
}
.news img {
	width: 163px;
	height: auto;
}

/**
 * FAQ
 */
.page-faq .entry-content {
	background: #F8F7F0;
	padding: 10px 0;
}
.page-faq h1, .page-nyukai h1, .page-normal h1 {
	font-size: 12px;
	font-weight: 700;
	margin: 20px 0 20px 27px;
}
.page-faq h1 span, .page-nyukai h1 span {
	font-size: 11px;
	margin-left: 5px;
}
.faq {
	background: #fff;
	border-radius: 10px;
	padding: 15px 15px 20px;
	margin: 10px 15px;
}
.faq h2 {
	font-size: 20px;
	border-bottom: 1px solid #44C619;
	text-align: left;
	font-weight: 700;
	padding-bottom: .25em;
}
.faq .faq-list div {
	position: relative;
	padding-left: 45px;
}
.faq .faq-list div:nth-child(2n+1) {
	font-size: 16px;
	font-weight: 700;
	color: #44C619;
	margin: 10px 0;
}
.faq .faq-list div:nth-child(2n) {
	font-size: 14px;
	color: #595757;
	border-bottom: 1px solid #B4B4B5;
	padding-bottom: 10px;
}
.faq .faq-list div:last-child {
	border:none;
}
.faq .faq-list div:before {
	display: inline-block;
	content: '';
	width: 38px;
	height: 38px;
	position: absolute;
	top: 5px;
	left: 0;
}
.faq .faq-list div:nth-child(2n+1):before {
	background: url(../images/faq-q.png) no-repeat;
	background-size: contain;
}
.faq .faq-list div:nth-child(2n):before {
	background: url(../images/faq-a.png) no-repeat;
	background-size: contain;

}
.faq dl dd:last-child {
	border:none;
}

/**
 * 入会
 */
.page-nyukai .entry-content .soudan-flow > div {
	margin: 0 15px;
}
.soudan-flow .step {
	border-top: 1px solid #9e9e9e;
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0;
	justify-content: space-between;
}
.soudan-flow .step > div:first-child {
	width: 160px;
}
.soudan-flow .step > div:nth-child(2) {
	width: 180px;
}
.soudan-flow .step:last-child {
	border-bottom: 1px solid #9e9e9e;
}
.soudan-flow .step > p {
	width: 100%;
	font-size: 11px;
	text-align: center;
	margin-top: .5em;
}
.soudan-flow h3 {
	font-size: 17px;
	color: #44C619;
	text-align: left;
	margin-top: 10px;
}
.soudan-flow p {
	font-size: 13px;
}
.soudan-flow + .description {
	margin: 20px 15px 25px;
}
#soudan-flow .sp.double-arrow {
	width: 21px;
	margin: 10px auto;
	display: block;
}
.nyukai-link a {
	width: 300px;
	height: 50px;
	margin: 0 auto 20px;
	background: #44C619;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 19px;
	border-radius: 10px;
}
.syokai-flow-title {
	width: fit-content;
	margin: 40px auto 30px;
	font-size: 27px;
	color: #44C619;
	padding-bottom: 5px;
	border-bottom: 1px solid #44C619;
}
.syokai-flow {
	height: 650px;
	background: url(../images/syokai_step_bar.png) no-repeat;
	background-size: contain;
	margin: 0 0 0 20px;
	padding: 0 0 0 40px;
}
.syokai-flow .step {
	padding: 10px 0 0 10px;
	width: 300px;
	border-top: 1px solid #b4b4b5;
}
.syokai-flow .step:nth-child(1) {
	height: 135px;
}
.syokai-flow .step:nth-child(2) {
	height: 183px;
}
.syokai-flow .step:nth-child(3) {
	height: 180px;
}
.syokai-flow .step:nth-child(4) {
	height: 154px;
	border-bottom: 1px solid #b4b4b5;
}

.syokai-flow .step h3 {
	font-size: 17px;
	font-weight: 700;
	color: #44C619;
	text-align: left;
}
.syokai-flow .step p {
	font-size: 13px;
}
.syokai-flow .step a {
	width: 220px;
	display: block;
	float: right;
	margin-top: 15px;
}
.nyukai-footer {
	margin: 30px 0 25px;
}
.nyukai-footer p {
	font-size: 18px;
	font-weight: 700;
	text-align: center;
}
.nyukai-footer a {
	width: 300px;
	display: block;
	margin: 10px auto 0;
}
/**
 * about us
 */
.about-page-header {
	background: url(../images/about/about-title.png) no-repeat;
	background-position: center right;
	background-size: contain;
	min-height: 176px;
	margin-left: 17px;
}
.about-page-header h1 {
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 10px;
}
.about-page-header h1 span {
	display: block;
	font-size: 10px;
	color: #1A1A19;
}
.about-page-header p {
	width: fit-content;
	font-size: 20px;
	font-weight: 700;
	color: #F6F5F3;
	background: #149914;
	margin-bottom: .5em;
	padding-left: .5em;
}
.about-description h2 {
	font-size: 20px;
	font-weight: 700;
	text-align:center;
	color: #44C619;
	margin: 20px auto;
}
.about-description p {
	font-size: 14px;
	font-weight: 550;
	margin: 0 15px;
}
.about-list-title {
	width: 300px;
	margin: 30px auto 20px;
}
.about-list h3 {
	font-size: 22px;
	color: #44C619;
	margin: 15px auto;
}
.about-list h4 {
	font-size: 21px;
	color: #1A1A19;
	margin: 20px auto;
}
.about-list p {
	width: 345px;
	margin: 0 auto;
	font-size: 14px;
}
.about-list p .caution {
	font-size: 12px;
}
.about-link-btn {
	width: 300px;
	margin: 20px auto;
}
/**
 * recruit
 */
.recruit-page-header {
	background: url(../images/recruit/recruit-header-bg.png) no-repeat;
	background-position: center right;
	background-size: contain;
	min-height: 176px;
	margin-left: 17px;
}
.recruit-page-header h1 {
	font-size: 12px;
	margin-bottom: 10px;
}
.recruit-page-header h1 span {
	display: block;
	font-size: 10px;
	color: #44C619;
}
.recruit-page-header p {
	width: fit-content;
	font-size: 20px;
	font-weight: 700;
	color: #F6F5F3;
	background: #149914;
	margin-bottom: .5em;
	padding-left: .5em;
}
.recruit-description h2 {
	font-size: 20px;
	font-weight: 700;
	text-align:center;
	color: #44C619;
	margin: 20px auto;
}
.recruit-description p {
	font-size: 14px;
	font-weight: 550;
	margin: 0 15px;
	text-align: center;
}
.recruit-title {
	width: 336px;
	margin: 20px auto;
}
.page-recruit #merit {
	width: 345px;
	margin: 0 auto;
}
#merit li {
	border: 1px solid #44C619;
	margin: 0 0 10px;
	padding: 25px 0 30px;
	text-align: center;
}
#merit li h3 {
	font-size: 33px;
	color: #44C619;
}
#merit + a.link-to-about {
	width: 300px;
	display: block;
	margin: 20px auto 25px;
}
.page-recruit table {
	width: 360px;
	margin: 0 auto;
	font-size: 12px;
}
.page-recruit table tr th {
	width: 60px;
	text-align: center;
}
.page-recruit table tr td {
	padding: 8px 12px;
}
.recruit-footer {
	font-size: 11px;
	margin: .5em .25em 0;
}
.page-recruit .link-to-register {
	width: 300px;
	display: block;
	margin: 30px auto 20px;
}

/**
 * teacher
 */
.post-type-archive-teacher h1 {
	font-size: 12px;
	font-weight: 700;
	margin: 20px 0 15px 25px;
}
.post-type-archive-teacher h1 span {
	margin-left: 10px;
	font-size: 11px;
}
.post-type-archive-teacher h2 {
	margin: 0;
}
.post-type-archive-teacher #content-wrapper {
	background: #F8F7F0;
	padding: 12px;
}
.teacher-list article {
	width: 355px;
	margin: 0 auto;
	padding: 15px;
	background: #fff;
	border-radius: 10px;
}
.teacher-list .teacher-info {
	display: flex;
	justify-content: space-between;
}
.teacher-list .teacher-info .teacher-photo {
	width: 115px;
}
.teacher-list .teacher-info .teacher-attr {
	width: 205px;
	text-align: left;
}
.teacher-attr h2 {
	text-align: left;
	font-weight: 700;
	font-size: 16px;
	height: 25px;
	display: flex;
	justify-content: start;
	align-items: center;
}
.teacher-attr p {
	border-top: 1px solid #e2e2e2;
	font-size: 12px;
	min-height: 24px;
	padding-top: 3px;

}
.teacher-attr p:last-child {
	border-bottom: 1px solid #e2e2e2;
}
.teacher-attr p > span:first-child {
	width: 93px;
	display: inline-block;
}
.teacher-message {
	font-size: 12px;
	background: #FFFCDB;
	margin-top: 10px;
	padding: 15px;
	border-radius: 15px;
}
.teacher-message .message-icon {
	width: 53px;
	height: auto;
	margin-top: -25px;
}
.teacher-list article:nth-child(2n) .teacher-message {
	background: #e8f5d0;
}
.teacher-footer p {
	font-size: 18px;
	font-weight: 700;
	width: 330px;
	margin: 30px auto 18px;
	text-align: center;
}
.teacher-footer a {
	display: block;
	width: 330px;
	margin: 0 auto 25px;
}
/**
 * course
 */
.page-course {
	background: #F8F7F0;
}
.course-teacher-description,
.course-price-header,
.price-list,
.link-to-course {
	background :#fff;
}
.course-page-header {
	background: url(../images/course/course-header-bg.png) no-repeat;
	background-position: center right;
	background-size: contain;
	min-height: 176px;
	margin-left: 17px;
}
.course-page-header h1 {
	font-size: 12px;
	margin-bottom: 10px;
}
.course-page-header h1 span {
	display: block;
	font-size: 10px;
	color: #44C619;
}
.course-page-header p {
	width: fit-content;
	font-size: 20px;
	font-weight: 700;
	color: #F6F5F3;
	background: #149914;
	margin-bottom: .5em;
	padding-left: .5em;
}
.course-description h2 {
	font-size: 20px;
	font-weight: 700;
	text-align:center;
	color: #44C619;
	margin: 20px auto;
}
.course-description p {
	font-size: 14px;
	font-weight: 550;
	margin: 0 10px;
	text-align: center;
}
.course-list-header {
	margin-top: 25px;
	margin-bottom: 25px;
}
.course-list-header h2 {
	font-size: 24px;
	padding-bottom: 5px;
	border-bottom: 1px solid #44C619;
	width: fit-content;
	color: #44C619;
	margin: 0 auto 20px;
}
.course-list-header ul {
	font-size: 12px;
	color: #fff;
	display: flex;
	justify-content: space-between;
}
.course-list-header ul li {
	background: #44C619;
	width: 74px;
	height: 75px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.course-list-header ul li a {
	font-weight: bold;
}
.course-list-item-header {
	width: 355px;
	height: 41px;
	margin: 0 auto;
	background: url(../images/course/course-list-item-h3.png) no-repeat;
	background-size: contain;
	background-position: bottom;
}
.course-list-item {
	margin-bottom: 15px;
}
.course-list-item h3 {
	height: 40px;
	background: #44C619;
	color: #fff;
	font-size: 15px;
	width: fit-content;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 .5em;
	box-shadow: 0 0 1px 1px rgba(35, 24, 21, .5);
}
.course-list-item:nth-child(2) h3 {
	margin-left: 78px;
}
.course-list-item:nth-child(3) h3 {
	margin-left: 110px;
}
.course-list-item:nth-child(4) h3 {
	margin-left: 180px;
}
.course-list-item:nth-child(5) h3 {
	float: right;
}
.course-list-item-body {
	width: 355px;
	margin: 0 auto;
	padding: 18px 20px;
	background: #fff;
	box-shadow: 0 0 1px 1px rgba(35, 24, 21, .5);
}
.course-list-item-body h4 {
	width: 176px;
	height: auto;
	display:block;
	margin: 0 auto;
}
.course-list-item-body .course-for {
	border: 1px solid #44C619;
	border-radius: 5px;
	margin: -5px auto 0;
	padding: 20px 0 20px 35px;
}
.course-list-item-body .course-for li {
	background: url(../images/course/list-style.png) no-repeat;
	background-size: 12px 12px;
	background-position: 0 .3em;
	padding-left: 15px;
	font-size: 14px;
}
.course-teacher-description a {
	display: block;
	margin: 0 auto;
	width: 300px;
}
.course-price-header h2 {
	font-size: 27px;
	padding-bottom: 10px;
	color: #44C619;
	border-bottom: 2px solid #44C619;
	width: fit-content;
	margin: 0 auto;
}
.course-price-header {
	padding-top: 15px;
	padding-bottom: 30px;
}
.course-price-header h3 {
	font-size: 18px;
	font-weight: 700;
	color: #44C619;
	margin-top: 1em;
}
.course-price-header p, .course-price-description p {
	text-align: center;
	margin: 0 15px;
}
.course-price-description p {
	font-size: 13px;
}
.course-price-description p span {
	font-size: 10px;
}
.course-price-description {
	background: url(../images/course/price-list-bg.png);
	background-size: cover;
	padding: 20px 0 10px;
}
.course-price-description h2 {
	width: 250px;
	margin: 0 auto 12px;
}
.course-price-description h3 {
	margin: 0 auto 15px;
}
.course-price-description .course-price-description-inner > div {
	width: 355px;
	border-radius: 15px;
	background: #fff;
	margin: 0 auto 15px;
	padding-bottom: 15px;
	box-shadow: 0 0 1px 1px rgba(35, 24, 21, .5);
}
.course-price-description .ticket h3 {
	width: 290px;
}
.course-price-description .change h3 {
	width: 293px;
}
.course-price-description .kyouzai h3 {
	width: 286px;
}
.price-list {
	padding-top: 15px;
}
.price-list table {
	width: 345px;
	margin: 0 auto;
	border-left: 1px solid #595757;
	border-right: 1px solid #595757;
	border-bottom: 1px solid #595757;
	text-align: center;
	font-feature-settings: "palt";
}
.price-list table th {
	background: #aaeb8c;
	color: #fff;
	font-size: 14px;
}
.price-list table tr th:first-child,
.price-list table tr td:first-child {
	border-right: 1px solid #595757;
}
.price-list table tr td:last-child {
	color: #44C619;
}
.price-list .table td, .price-list .table th {
	border-color: #595757;
}
.price-list table td {
	font-size: 15px;
	font-weight: 700;
	vertical-align: middle;
}
.price-list table td:first-child {
	text-align: left;
}
.price-list table td span {
	font-size: 11px;
}
.price-list table td span:last-child {
	color: #000;
}
.price-list .caution {
	font-size: 12px;
	margin: 10px 0 25px 15px;
}
.price-list  a.link-to-course {
	width: 300px;
	display: block;
	margin: 0 auto 25px;
}
/**
 * Blog
 */
.single-blog .blog-page-header.sp h2, .archive-blog-page-header h2 {
	font-size: 13px;
	font-weight: 700;
	margin: 20px 0 15px 27px;
	text-align: left;
}
.single-blog .blog-page-header.sp h2 span, .archive-blog-page-header h2 span {
	font-size: 10px;
	margin-left: 15px;
}
.single-blog article {
	width: 355px;
	margin: 0 auto;
}
.single-blog .entry-header {
	padding: 10px 0 0 0;
}
.single-blog .entry-header h1 {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.7;
	text-align:left;
	margin: 10px 0 20px;
}
.single-blog .blog-sp-border {
	display: block;
	width: 100%;
	height: auto;
}
.single-blog .entry-content {
	font-size: 13px;
	line-height: 1.8;
	margin: 20px 0;
}
.single-blog .entry-content p {
	font-size: 13px;
	line-height: 1.8;
	margin-bottom: 2em;
}
/*
 * 41行目のグローバル指定 ul { list-style: none; padding: 0; margin: 0 } は
 * ナビやウィジェット向けだが、記事本文の箇条書きまで潰してしまう。
 * 本文だけ通常のリスト表示に戻す。メディアクエリの外に置き、
 * スマホ・PC どちらでも効かせる。
 * ※ エディタ側は editor-content.css に同じ指定があるので、変更時は両方直すこと。
 */
.single-blog .entry-content ul,
.single-blog .entry-content ol {
	padding-left: 1.5em;
	margin: 0 0 1.5em;
}
.single-blog .entry-content ul {
	list-style: disc;
}
.single-blog .entry-content ul ul {
	list-style: circle;
}
.single-blog .entry-content ol {
	list-style: decimal;
}
.single-blog .entry-content li {
	margin-bottom: .5em;
}
/*
 * 記事本文の見出し（ベース＝スマホ）
 *
 * 色・枠線・背景といった装飾はここで一度だけ定義し、
 * PC では min-width:768px 側で font-size と padding だけを上書きする。
 * 本文が SP:13px / PC:18px と差があるため、見出しもサイズを揃えていない。
 * ※ ビジュアルエディタは PC 表示のプレビューとして editor-content.css
 *    に PC 側の値を持たせてある。変更時は両方直すこと。
 */
.single-blog .entry-content h1 {
	font-size: 22px;
	font-weight: bold;
	padding: 16px 14px;
	margin-bottom: 1em;
	border-top: 5px solid #2e8e56;
	background: #b2e6c8;
	text-align: left;
}
.single-blog .entry-content h2 {
	font-size: 18px;
	font-weight: bold;
	padding: 12px 10px;
	margin-bottom: 1em;
	border-bottom: 3px solid #2e8e56;
	background: #d9f2e3;
	text-align: left;
}
.single-blog .entry-content h3 {
	font-size: 15px;
	font-weight: bold;
	padding: 8px 10px;
	margin-bottom: 1em;
	border-radius: 10px;
	background: #d9f2e3;
	text-align: left;
}
.single-blog .entry-content h4 {
	font-size: 14px;
	font-weight: bold;
	padding: 8px 10px;
	margin-bottom: 1em;
	border-left: 5px solid #d9f2e3;
	text-align: left;
}
.single-blog .entry-content h5 {
	font-size: 12px;
	font-weight: bold;
	padding: 8px;
	margin-bottom: 1em;
	border-bottom: 3px solid #d9f2e3;
	text-align: left;
}
.archive-blog {
	width: 355px;
	margin: 0 auto;
}
.archive-blog article {
	display: flex;
	justify-content: space-between;
	padding: 25px 0;
}
.archive-blog article > div:first-child {
	width: 128px;
}
.archive-blog article > div:last-child {
	width: 210px;
}
.archive-blog article .article-excerpt {
	display: none;
}
.archive-blog article h2.entry-title {
	font-size: 14px;
	line-height: 1.6;
	text-align: left;
}
.archive-blog article .blog-link {
	width: 150px;
	display: block;
	float: right;
}
.archive-blog article.pickup {
	flex-direction: column;
}
.archive-blog article.pickup > div:first-child {
	width: 100%;
	text-align: left;
}
.archive-blog article.pickup > div:last-child {
	width: 100%;
}
.archive-blog article.pickup .article-excerpt {
	display: block;
}

.paginate {
	width: fit-content;
	margin: 20px auto;
}
.paginate span, .paginate a {
	font-size: 14px;
	border: 1px solid #808080;
	padding: .25em .5em;
}
.paginate .current {
	color: #fff;
	background: #808080;
}
aside > section.widget, aside > ul, aside > div {
	width: 340px;
	margin-left: 30px;
}
aside#sidebar-1 .widget-title {
	color: #44C619;
	text-align: left;
	margin-bottom: 18px;
}
aside#sidebar-1 .search-field {
	width: 270px;
	font-size: 20px;
	line-height: 2;
}
aside#sidebar-1 .search-submit {
	font-size: 16px;
	line-height: 2;
}
aside#sidebar-1:before, aside#sidebar-2:before {
	content: url(../images/pc/widget_border.png);
	display: block;
	width: 340px;
	margin: 30px 0 30px 30px;
}
aside#sidebar-2 > ul {
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #44C619;
}
aside#sidebar-2 > ul li {
	width: 33%;
}
aside#sidebar-2 .nav-link {
	background: #fff;
	color: #44C619;
	font-size: 14px;
}
aside#sidebar-2 .nav-link.active {
	color: #fff;
	background: #44C619;
}
aside#sidebar-2 .tab-content {

}

.navbar-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(153,25,20,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-light .navbar-toggler {
    border-color: rgba(0,0,0,0);
}
.navbar-light .navbar-nav .nav-link {
    color: #1A1A19;
}

aside#sidebar-2 .tab-content h2 {
	display: none;
}
#sp-float {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 140px;
	padding-bottom: 10px;
	display: flex;
	justify-content: space-evenly;
	align-items: end;
	background: url(../images/float/bg.png) no-repeat center;
	background-size: cover;
	box-shadow: 0 0 5px rgba(0, 0, 0, .6);
}
#sp-float > div {
	width: 172px;
}
#terms {
	height: 150px;
	overflow: scroll;
	font-size: 14px;
	width: fit-content;
	margin: 0 auto;
	border: 1px solid grey;
	padding: .5em;
}
#terms + p {
	display: block;
	width: fit-content;
	margin: 1em auto;
	border: 1px solid #000;
	border-radius: 1em;
	padding: 1em;
}
.mw_wp_form_confirm #terms,
.mw_wp_form_confirm #terms + p {
	display:none;
}

article.page-normal .entry-content {
	padding: 10px;
	background: #F8F7F0;
}
article.page-normal .entry-content > div {
	width: 100%;
	margin: 0 auto 10px;
	padding: 1.5em 2em;
	background: #fff;
}
form p {
	margin: 0 0 30px;
}
form input[type="submit"] {
	font-size: 18px;
	display: block;
	margin: 1em auto;
	background: #44C619;
	color: #fff;
	border: none;
	border-radius: 5em;
	padding: .8em 2em;
}
form .buttons {
	display: flex;
}
.hissu {
	display: inline-block;
	margin-right: .5em;
	padding: 0 .75em;
	background: #333;
	color: #fff;
	font-size: 14px;
	height: 20px;
}

@media screen and (max-width: 767px) {
	#flow-inner {
		padding: 30px 0;
	}
	#flow-inner > div {
		background: #fff;
	}
	#flow-inner > div.join-description {
		background: transparent;
	}
	#flow-inner h2.sp {
		display: block;
		margin: 0 auto 30px;
		padding: 0 0 10px;
		border-bottom: 2px solid #44C619;
		width: fit-content;
	}
	#flow-inner div p {
		font-size: 14px;
		line-height: 2;
		margin: 15px 10px 18px;
	}
	#flow-inner .join-description p {
		margin: 15px 8px 0;
	}
	#news h2.sp {
		display: block;
	}
	#page {
		margin-bottom: 140px;
	}
	.page-id-24 .nyukai-footer,
	.page-id-30 .nyukai-footer{
		display: none;
	}
	.single-blog .entry-header h1 {
		display: block;
	}
	.course-list-header h2.sp,
	.course-price-header h2.sp{
		display: block;
	}
	.course-list-header ul li a {
		color: #fff;
	}
}
@media screen and (min-width: 768px) {
	.pc {
		display: initial;
	}
	.sp {
		display: none;
	}
	#sp-float {
		display: none;
	}
	header {
		background: #F6F5F3;
		border-bottom: 3px solid #1A1A19;
	}
	#header-main {
		width: 1000px;
		height: 100px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	#header-main > a {
		width: 388px;
	}
	#header-main #header-main-right {
		width: 425px;
		height: 100px;
		display: flex;
		justify-content: space-between;
	}
	#header-main a,
	#header-main a:visited,
	#header-main a:hover,
	#header-main a:active {
		color: #fff;
		text-decoration: none;
	}
	aside > section.widget, aside > ul, aside > div {
		width: 300px;
	}
	aside#sidebar-1:before, aside#sidebar-2:before {
		width: 300px;
		overflow: hidden;
	}
	
	#link-to-tel a,
	#link-to-tel a:visited,
	#link-to-tel a:hover,
	#link-to-tela:active {
		color: #08CF08;
	}

	#link-to-tel {
		color: #1A1A19;
		font-size: 16px;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	#link-to-tel a {
		font-size: 36px;
		line-height: 1;
	}
	#link-to-soudankai {
		width: 170px;
		font-size: 20px;
		background: #44C619;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
	}
	.soudan-img-btn {
		width: 600px;
		margin: 0 auto;
		border-radius: 74px;
		box-shadow: 0 0 5px 0 rgba(0, 0, 0, .6);
	}
	#pc-menu {
		display: block;
		background: #fff;
	}
	header ul.menu {
		width: 1000px;
		height: 60px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #fff;
	}
	header ul.menu li {
		width: 200px;
		min-height: 40px;
		font-size: 20px;
		text-align:center;
		border-left: 1px solid #b4b4b5;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	header ul.menu li:last-child {
		font-size: 17px;
		line-height: 1.2;
		border-right: 1px solid #b4b4b5;
	}
	header ul.menu li a,
	header ul.menu li a:visited,
	header ul.menu li a:active {
		color: #1A1A19;
		font-weight: 700;
		text-decoration: none;
	}
	
	header ul.menu li a:hover{
		color: #149914;
	}
	
	#menu-footer > ul {
		width: fit-content;
		margin: 0 auto 2em;
		display: flex;
		justify-content: space-between;
		font-size: 12px;
	}
	#menu-footer > ul li {
		padding: 0 1em;
		border-left: 1px solid #000;
	}
	#menu-footer > ul li:last-child {
		border-right: 1px solid #000;
	}
	#content-wrapper {
		width: 1150px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: start;
	}
	#content-wrapper main {
		width: 805px;
	}
	#content-wrapper aside {
		width: 345px;
	}
	#top-main-image {
		width: 1280px;
		height: auto;
		margin: 0 auto;
	}
	#top-soudan-btn {
		width: 1060px;
		margin: -140px auto 0;
		border: none;
		box-shadow: none;
	}
	#top-soudan-btn.pc{
		display: block;
		margin: 0 auto;
	}
	#introduction {
		padding-bottom: 70px;
		box-shadow: 0 5px 5px rgba(0, 0, 0, .4);
		margin-bottom: 5px;
	}
	#description p {
		font-weight: 700;
		font-size: 30px;
		line-height: 1.5;
		margin: 45px auto;
	}
	#introduction h2 {
		margin-bottom: 60px;
	}
	#introduction h2 img.pc {
		width: 1280px;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	#introduction h3 {
		height: 160px;
		font-size: 26px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#introduction h4 {
		font-size: 22px;
		font-weight: 700;
		height: 100px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#introduction p {
		font-size: 17px;
		line-height: 1.6;
		height: 200px;
	}
	#introduction p span {
		font-size: 15px;
		line-height: 1.4;
	}
	#introduction-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: start;
		width: 940px;
		margin: 0 auto 50px;
	}
	#introduction-image {
		width: 1000px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	#introduction-image img {
		width: 480px;
	}
	#introduction-list > div {
		width: 290px;
	}
	#course h2.pc, #flow h2.pc, #news h2.pc,
	.course-price-header h2.pc, .course-list-header h2.pc,
	.course-price-description-header h2 {
		font-weight: 700;
		font-size: 34px;
		margin: 60px auto 40px;
		border-bottom-width: 4px;
		padding-bottom: 10px;
		color: #231815;
	}
	#course h2.pc span, #flow h2.pc span, #news h2.pc span,
	.course-price-header h2.pc span, .course-list-header h2.pc span,
	.course-price-description-header h2 span {
		font-size: 18px;
		font-weight: 500;
		display: block;
		margin-bottom: 20px;
		letter-spacing: 0.24em;
	}
	#course-list {
		width: 1000px;
		height: 566px;
		margin: 0 auto;
		padding: 150px 0 0 75px;
		background: url(../images/pc/course_bg.png);
		font-size: 34px;
	}
	#course-list li {
		padding: 0 4px;
		margin-bottom: 20px;
	}
	#course-list > a.pc {
		margin: 0 auto;
		width: 400px;
		height: 80px;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 26px;
		border-radius: 40px;
		box-shadow: 2.4px 2.4px 2.4px rgba(0, 0, 0, .5);
	}
	#price-description {
		margin-bottom: 60px;
	}
	#price-description h2 {
		width: fit-content;
		margin: 50px auto 36px;
		font-size: 34px;
		border-bottom: 4px solid #44C619;
		padding-bottom: 12px;
	}
	#price-description h3 {
		color: #44C619;
		font-size: 32px;
	}
	#price-description p {
		font-size: 30px;
		text-align: center;
		margin: 30px auto;
	}
	.bg-borders {
		width: 1010px;
		height: 318px;
		background: url(../images/pc/border_bg.png);
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.bg-borders h3 {
		width: 250px;
		border-right: 1px solid #4d4d4d;
		padding-right: 30px;
		margin: 0 40px 0 50px;
		font-size: 32px;
		line-height: 1.3;
		box-sizing: content-box;
		text-align: left;
	}
	.bg-borders h3 .marquee {
		font-size: 32px;
	}
	.bg-borders h3 span:not(.marquee) {
		font-size: 28px;
	}
	.checked-icons li {
		font-size: 29px;
	}
	#price {
		width: fit-content;
	}
	#price + a.pc {
		margin: 0 calc((100% - 401px) / 2) 35px;
		width: 401px;
		height: 80px;
		border-radius: 40px;
		border-color: transparent;
	}
	.join-description {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.join-description:before {
		content: '';
		display: block;
		margin: 0 auto 15px;
		background: url(../images/pc/double-arrow.png) no-repeat;
		background-position: center;
		width: 100%;
		height: 33px;
	}
	.join-button {
		width: 220px;
	}
	.join-button:before {
		display: none;
	}
	.join-description p {
		width: 658px;
		border-top: 1px solid #44C619;
		border-bottom: 1px solid #44C619;
		font-size: 20px;
		display: flex;
		align-items: center;
	}
	#taikenki h2 {
		border-top: 3px solid #1A1A19;
		border-bottom: 3px solid #1A1A19;
	 	display: block;
		margin-bottom: 48px;
	}
	#taikenki a.sp {
		display: none;
	}
	#taikenki h2 img {
		width: 883px;
		margin-top: -10px;
	}
	.taikenki-description {
		width: 1015px;
		margin: 0 auto;
		text-align: center;
	}
	.taikenki-description > p {
		font-size: 30px;
		margin-bottom: 40px;
	}
	.taikenki-list {
		font-size: 16px;
		display: flex;
		width: 1015px;
		margin: 0 auto;
		justify-content: space-between;
		align-items: center;
	}
	.taikenki-list > div {
		width: 235px;
		text-align: left;
	}
	.taikenki-list > div p {
		font-size: 18px;
		font-weight: 700;
		color: #44C619;
		margin: .5em 0 1em;
	}
	.taikenki-list > div p:last-child {
		font-size: 16px;
		font-weight: 400;
		color: #000;
	}
	#taikenki-soudan-btn {
		margin: 50px auto 60px;
	}
	#flow {
		padding: 50px 0;
	}
	#flow h2.pc {
		width: fit-content;
		margin: 0 auto 60px;
		border-bottom: 3px solid #44C619;
	}
	#flow-inner {
		width: 980px;
		margin: 0 auto;
		padding: 50px 0;
		border-radius: 50px;
		background: #fff;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	#flow-inner > div {
		display: flex;
		width: 906px;
		margin: 0 auto 30px;
		justify-content: space-between;
	}
	#flow-inner > div > img.pc {
		width: 260px;
	}
	#flow-inner > div > div {
		margin-left: 15px;
		width: 646px;
	}
	#flow-inner > div > div > h3 {
		font-size: 26px;
		font-weight: 700;
		color: #44C619;
	}
	#flow-inner > div > div > p {
		font-size: 20px;
		margin: .5em 0;
	}
	#flow-inner .join-description .join-button {
		width: 220px;
	}
	#flow-inner .join-description .join-button .join {
		height: 90px;
	}
	#news {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.home #news h2 {
		color: #231815;
	}
	.news {
		width: 1000px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	.news li {
		width: 230px;
	}
	.news img {
		width: 100%;
	}
	.news h3 {
		font-size: 14px;
		line-height: 1.6;
		display: block;
		text-align: left;
		margin-top: .25em;
	}
	.news p {
		display: block;
		font-size: 10px;
	}
	.news li:nth-child(n+3) {
		display: block;
	}
	/**
	 * FAQ
	 */
	article.type-page h1 {
		width: 997px;
		margin: 40px auto;
		font-size: 25px;
		line-height: 27px;
		font-weight: 700;
	}
	article.type-page h1 span {
		font-size: 21px;
		margin-left: 1em;
	}
	.page-faq .entry-content {
		padding: 40px 0;
	}
	.faq {
		width: 997px;
		margin: 0 auto 20px;
		padding: 30px 60px;
		border-radius: 20px;
	}
	.faq h2 {
		font-size: 26px;
		margin-bottom: 20px;
		border-bottom-width: 2px;
	}
	.faq .faq-list div:nth-child(2n+1) {
		font-size: 24px;
	}
	.faq .faq-list div:nth-child(2n+1) br {
		display: none;
	}
	.faq .faq-list div:before {
		top: 0;
	}
	.faq .faq-list div:nth-child(2n) {
		font-size: 20px;
		padding-bottom: 20px;
	}
	.page-about .entry-content {
		margin-top: 60px;
	}
	.about-page-upper {
		width: 1004px;
		background: url(../images/pc/about/about-title.png) no-repeat center right;
		overflow: visible;
		margin: 0 auto;
	}
	article .about-page-header h1 {
		width: 450px;
		margin: 0 0 25px;
	}
	article .about-page-header h1 span {
		margin-left: 0;
	}
	.about-page-header p {
		font-size: 33px;
		line-height: 1.2;
		margin-left: 17px;
	}
	.about-page-header {
		background: none;
		margin-left: 0;
	}
	.about-description {
		width: 450px;
	}
	.about-description h2, .about-description p {
		text-align: left;
	}
	.about-description p {
		margin-left: 0;
	}
	.about-list-title {
		width: 486px;
	}
	.about-list-flex {
		width: 1004px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	.about-list-flex > div:first-child {
		order: 2;
		width: 516px;
	}
	.about-list-flex > div:last-child {
		order: 1;
		width: 445px;
	}
	.about-link-btn {
		width: 400px;
	}
	.about-list h3 {
		font-size: 40px;
		font-weight: 700;
		margin: 30px auto;
	}
	.about-list h4 {
		font-size: 24px;
		font-weight: 700;
		text-align: left;
	}
	.about-list p {
		width: 100%;
		font-size: 17px;
	}
	.page-course {
		background: #fff;
	}
	.course-page-upper {
		width: 1000px;
		margin: 0 auto 60px;
		background: url(../images/pc/course/course-title.png) no-repeat right center;
	}
	.course-description {
		width: 400px;
	}
	.course-description h2,
	.course-description p {
		text-align: left;
		margin-left: 0;
	}
	.course-page-header {
		width: 1000px;
		margin: 0 auto;
		background: none;
	}
	.course-page-header p {
		font-size: 34px;
	}
	article .course-page-header h1 {
		margin-bottom: 25px;
	}
	article .course-page-header h1 span {
		margin-left: 0;
	}
	.course-list-header{
		width: 1000px;
		margin: 0 auto 30px;
	}
	.course-list-header h2.pc, .course-price-header h2.pc {
		display: block;
	}
	.course-price-description-header h2 {
		width: fit-content;
		border-bottom: 4px solid #44C619;
	}
	.course-price-description-header h3 {
		font-size: 24px;
		font-weight: 700;
		color: #44C619;
	}
	.course-price-description-header p {
		width: fit-content;
		margin: 0 auto;
	}

	.course-list-items-wrapper {
		background: #F8F7F0;
		padding: 40px 0 50px;
	}
	.course-list-items {
		width: 1080px;
		margin: 0 auto;
	}
	.course-list-header ul li {
		width: 192px;
		height: 60px;
		color: #44C619;
		border: 2px solid #44C619;
		background: #fff;
		font-size: 17px;
	}
	.course-list-header ul li br {
		display: none;
	}
	.course-list-header ul li:last-child br:first-child {
		display: initial;
	}
	.course-list-item-header {
		width: 1003px;
		height: 61px;
		background: url(../images/pc/course/course-list-item-h3.png) no-repeat;
	}
	.course-list-item h3 {
		width: 192px;
		height: 60px;
		border: none;
		box-shadow: none;
		color: #44C619;
		background: #fff;
		margin-bottom: 0;
		font-size: 18px;
	}
.course-list-item:nth-child(2) h3 {
		margin-left: 202px;
	}
	.course-list-item:nth-child(3) h3 {
		margin-left: 404px;
	}
	.course-list-item:nth-child(4) h3 {
		margin-left: 608px;
	}
	.course-list-item:nth-child(5) h3 {
		margin-left: 810px;
	}
	.course-list-item-body {
		width: 1080px;
		display: flex;
		justify-content: space-evenly;
		box-shadow: none;
		border: none;
		padding-bottom: 30px;
	}
	.course-list-item-body > p {
		width: 500px;
		font-size: 20px;
		padding-top: 20px;

	}
	.course-list-item-body > div {
		width: 440px;
	}
	.course-list-item-body h4 {
		width: 290px;
		margin: 0 0 0 8px;
	}
	.course-list-item-body .course-for {
		border-width: 3px;
	}
	.course-list-item-body .course-for li {
		font-size: 18px;
	}
	.course-teacher-description {
		padding: 60px 0 0;
	}
	.course-teacher-description h2 {
		font-size: 40px;
	}
	.course-teacher-description a {
		width: 600px;
	}
	.course-price-header {
		padding: 60px 0 40px;
	}
	.course-price-header h2.pc {
		margin-top: 0;
	}
	.course-price-header h3, .course-price-header p {
		font-size: 35px;
		font-weight: 400;
		color: #44C619;
	}
	.course-price-description {
		padding: 50px 0 40px;
		background-size: contain;
	}
	.course-price-description h2 {
		width: 484px;
		margin-bottom: 40px;
	}
	.course-price-description-inner {
		display: flex;
		width: 1000px;
		margin: 0 auto;
		justify-content: space-between;
	}
	.course-price-description .course-price-description-inner > div {
		width: 310px;
		padding: 25px 0 15px;
	}
	.course-price-description .ticket h3 {
		width: 221px;
	}
	.course-price-description .change h3 {
		width: 254px;
	}
	.course-price-description .kyouzai h3 {
		width: 254px;
	}
	.price-list table {
		width: 1000px;
	}
	.price-list table .pc {
		width: 278px;
		display: table-cell;
	}
	.price-list table .pc img {
		width: 227px;
		filter:grayscale(1);
	}
	.price-list table .pc a img {
		filter:grayscale(0);
	}
	.price-list .table td, .price-list table td:first-child {
		vertical-align: middle;
		text-align: center;
	}
	.price-list .table td:nth-child(2) {
		color: #44C619;
	}
	.price-list table td {
		font-size: 26px;
	}
	.price-list table td span {
		font-size: 18px;
	}
	.price-list .caution {
		width: 1000px;
		margin: 24px auto;
	}
	.price-list .caution br:last-child {
		display: none;
	}
	.price-list a.link-to-course {
		width: 600px;
	}

	#soudan-flow-wrapper {
		background: url(../images/pc/nyukai/flow-bg.png) no-repeat center;
		background-size: 1191px 1225px;
	}
	#soudan-flow {
		width: 1000px;
		height: 1225px;
		margin: 0 auto;
		background-size: contain;

	}
	.page-nyukai .entry-content .soudan-flow > div {
		width: 1000px;
		margin: 0 auto;
		justify-content: center;
		padding-bottom: 30px;
	}
	.soudan-flow .step > div:first-child {
		width: 227px;
		margin-right: 30px;
	}
	.soudan-flow .step > div:nth-child(2) {
		width: 640px;
	}
	.soudan-flow-title {
		font-size: 50px;
		font-weight: 700;
		color: #44C619;
		padding-top: 1em;
		margin: 0 auto 1.2em;
	}
	.soudan-flow-title img {
		display: none;
	}
	.syokai-flow {
		width: 970px;
		height: 961px;
		margin: 0 auto;
		background: url(../images/pc/nyukai/syokai-step-bar.png) no-repeat;
		padding-left: 160px
	}
	.soudan-flow .step:first-child {
		border-top: none;
	}
	.syokai-flow .step {
		width: 800px;
	}
	.syokai-flow .step:nth-child(1) {
		height: 200px;
	}
	.syokai-flow .step:nth-child(2) {
		height: 275px;
	}
	.syokai-flow .step:nth-child(3) {
		height: 281px;
	}
	.syokai-flow .step:nth-child(4) {
		height: 200px;
		border-bottom: 1px solid #b4b4b5;
	}
	.soudan-flow h3 {
		font-size: 32px;
	}
	.soudan-flow p {
		font-size: 20px;
	}
	.soudan-flow .step > p {
		font-size: 20px;
		margin: 0 0 0 310px;
		text-align: left;
	}

	.syokai-flow .step h3 {
		font-size: 30px;
	}
	.syokai-flow .step p {
		font-size: 20px;
	}
	.syokai-flow .step a {
		width: 400px;
	}
	.nyukai-link {
		width: 900px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	.nyukai-link a {
		width: 220px;
		height: 132px;
		margin-bottom: 0;
	}
	.nyukai-link .description {
		width: 658px;
		border-top: 2px solid #44C619;
		border-bottom: 2px solid #44C619;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.nyukai-link .description p {
		width: 647px;
		margin: 0 auto;
		font-size: 18px;
	}
	#soudan-flow .link-to-soudan {
		width: 600px;
		display: block;
		margin: 45px auto 0;
	}
	#soudan-flow .sp.double-arrow {
		display: none;
	}
	#soudan-flow .pc.double-arrow {
		width: 21px;
		margin: 25px auto;
		display: block;
	}
	.nyukai-footer p {
		display: none;
	}
	.nyukai-footer a {
		width: 600px;
	}
	/**
	 * Teacher
	 */
	.post-type-archive-teacher #page-header {
		width: 1000px;
		margin: 0 auto;
		overflow: visible;
	}
	.post-type-archive-teacher #page-header h1 {
		width: 1000px;
		margin: 0 auto;
		font-size: 25px;
		line-height: 4;
	}
	.post-type-archive-teacher #page-header h1 span {
		font-size: 21px;
		margin-left: 1em;
	}
	.post-type-archive-teacher #page-header h2 {
		width: 1000px;
		margin: 0 auto;
	}
	.post-type-archive-teacher #page-header h2 img {
		width: 100%;
	}
	#teacher-content-wrapper {
		background: #F8F7F0;
	}
	.teacher-list {
		width: 1000px;
		margin: 0 auto;
		padding: 30px 0 40px;
		display: flex;
		flex-wrap: wrap;
	}
	.teacher-list article {
		width: 485px;
		margin-bottom: 30px;
	}
	.teacher-attr h2 {
		font-size: 21px;
		font-weight: 700;
	}
	.teacher-attr p {
		font-size: 16px;
	}
	.teacher-list .teacher-info .teacher-photo {
		width: 157px;
	}
	.teacher-list .teacher-info .teacher-attr {
		width: 280px;
	}
	.teacher-attr p > span:first-child {
		width: 114px;
	}
	.teacher-message .message-icon {
		width: 73px;
	}
	.teacher-message {
		padding: 25px 20px;
	}
	/**
	 * Recruit
	 */
	.recruit-page-upper {
		width: 1000px;
		margin: 0 auto;
		background: url(../images/pc/recruit/recruit-title.png) no-repeat;
		background-position: top right;
	}
	.recruit-page-header {
		background: none;
	}
	.recruit-description {
		width: 400px;
	}
	.recruit-description h2, .recruit-description p {
		text-align: left;
	}
	.recruit-description p {
		margin-left: 0;
	}
	.page-recruit #merit {
		display: flex;
		width: 1000px;
		margin: 0 auto;
		justify-content: space-between;
	}
	.recruit-title {
		width: 706px;
		margin: 60px auto 40px;
	}
	#merit li {
		width: 310px;
		border-width: 3px;
	}
	#merit li h3 {
		height: 70px;
		font-size: 26px;
	}
	#merit li p {
		font-size: 18px;
	}
	#merit + a.link-to-about {
		width: 500px;
		martin: 40px auto 50px;
	}
	.page-recruit table {
		width: 1000px;
		margin: 0 auto;
		font-size: 18px;
	}
	.page-recruit .entry-content > p.pc,
	.recruit-footer
	{
		display: block;
		width: 1000px;
		margin: 0 auto;
		font-size: 20px;
	}
	.recruit-footer {
		font-size: 14px;
		margin-top: 20px;
	}
	.page-recruit table tr th {
		width: 200px;
	}
	.page-recruit table tr td {
		padding: 0 38px;
	}
	.page-recruit .link-to-register {
		width: 500px;
		margin: 60px auto 40px;
	}
	.recruit-description {
		width: 400px;
	}
	.recruit-description h2,
	.recruit-description p {
		text-align: left;
		margin-left: 0;
	}
	.recruit-page-header {
		width: 1000px;
		margin: 0 auto;
		background: none;
	}
	.recruit-page-header p {
		font-size: 34px;
	}
	article .recruit-page-header h1 {
		margin-bottom: 25px;
	}
	article .recruit-page-header h1 span {
		margin-left: 0;
	}
	.recruit-description h2 {
		font-size: 24px;
	}
	.recruit-description p {
		font-size: 17px;
	}
	.page-id-30 .nyukai-footer {
		display: none;
	}
	/**
	 * blog
	 */
	.single-blog #page-header,
	.post-type-archive-blog #page-header,
	.tax-blog_category #page-header {
		background-size: 1280px 200px;
		background: url(../images/pc/blog_main.png) no-repeat center;
		overflow: visible;
		width: 100%;
		height: 200px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.post-type-archive-blog #page-header h1,
	.single-blog #page-header h2,
	.tax-blog_category #page-header h1 {
		margin: 0 auto;
		font-size: 37px;
		font-weight: 700;
		color: #fff;
	}
	.post-type-archive-blog #page-header h1 span,
	.single-blog #page-header h2 span,
	.tax-blog_category #page-header h1 span {
		font-size: 20px;
		font-weight: 400;
		line-height: 2.3;
		display: block;
		color: #fff;
	}
	.archive-blog, .single-blog article {
		width: 750px;
	}
	.archive-blog article.pickup {
		flex-direction: column;
	}
	.archive-blog article.pickup > div:first-child {
		width: 100%;
	}
	.archive-blog article.pickup h2 {
		font-size: 23px;
		text-align:left;
	}
	.archive-blog article.pickup h2:before {
		content: url(../images/pc/pickup.png);
		display: inline-block;
		margin-right: .25em;
	}
	.archive-blog article.pickup > div:last-child {
		width: 100%;
	}
	.archive-blog article.pickup .article-excerpt p{
		font-size: 20px;
		line-height: 1.8;
	}
	.archive-blog article > div:first-child {
		width: 240px;
	}
	.archive-blog article > div:last-child {
		width: 460px;
	}
	.archive-blog article h2.entry-title {
		font-size: 18px;
		text-align: left;
	}
	.archive-blog article .article-excerpt {
		display: block;
	}
	.archive-blog article .article-excerpt p {
		font-size: 18px;
	}
	.archive-blog #content-wrapper, .single-blog #content-wrapper {
		background: #f7f7f7;
	}
	.archive-blog main, .single-blog main {
		background: #fff;
	}
	.single-blog #content-wrapper,
	.post-type-archive-blog #content-wrapper,
	.tax-blog_category #content-wrapper {
		background: #f7f7f7;
	}
	.single-blog main,
	.post-type-archive-blog main,
	.tax-blog_category main{
		background: #fff;
	}
	.single-blog article {
		padding-top: 40px;
	}
	.single-blog .archive-title {
		display: block;
		margin-bottom: 30px;
	}
	.single-blog .entry-header {
		background: #fff;
		border: none;
		font-size: 13px;
	}
	.single-blog .blog-sp-border {
		display: none;
	}
	.single-blog .entry-content {
		margin: 0;
	}
	.single article .entry-content p {
		font-size: 18px;
		margin-bottom: 50px;
	}
	/*
	 * li にはサイズ指定が無く .single-blog .entry-content の 13px を
	 * そのまま継承してしまうため、本文(p)より極端に小さくなる。p と揃える。
	 */
	.single article .entry-content li {
		font-size: 18px;
	}

	/*
	 * 記事本文の見出し（PC）
	 * 装飾はベース側（.single-blog .entry-content h1〜h5）で定義済みなので、
	 * ここではサイズと余白だけを上書きする。
	 */
	.single-blog .entry-content h1 {
		font-size: 32px;
		padding: 30px 40px;
	}
	.single-blog .entry-content h2 {
		font-size: 24px;
		padding: 20px 5px;
	}
	.single-blog .entry-content h3 {
		font-size: 18px;
		padding: 10px 5px;
	}
	.single-blog .entry-content h4 {
		font-size: 16px;
		padding: 10px 5px;
	}
	.single-blog .entry-content h5 {
		font-size: 12px;
		padding: 10px;
	}

	.post-type-archive-blog #page-title, .single-blog #page-title, .tax-blog_category #page-title {
		width: 1000px;
		margin: 0 auto;
		display: block;
	}
	.post-type-archive-blog #page-title h2, .single-blog #page-title h2, .tax-blog_category #page-title h2 {
		text-align: left;
		font-size: 25px;
		font-weight: 700;
		height: 100px;
		line-height: 4;
	}
	.post-type-archive-blog #page-title h2 span, .single-blog #page-title h2 span, .tax-blog_category #page-title h2 span {
		font-size: 20px;
		margin-left: 1em;
	}
	aside#sidebar-2 {
		font-size: 16px;
	}
	aside#sidebar-2 .tab-content ul li {
		padding: .5em;
		border-bottom: 1px solid #afafaf;
	}

	article.page-normal .entry-content {
		padding: 40px;
	}
	article.page-normal .entry-content > div {
		width: 1000px;
		padding: 3rem 4rem;
	}
	article.page-normal p {
		font-size: 20px;
	}
	form p {
		margin: 0 0 30px;
	}
	form input[type="submit"] {
		width: 300px;
		font-size: 30px;
		border: none;
		border-radius: 2em;
		padding: .8em 0;
	}
	form .buttons {
		display: flex;
	}
	.hissu {
		display: inline-block;
		margin-right: .5em;
		padding: 0 .75em;
		background: #333;
		color: #fff;
		font-size: 14px;
		height: 20px;
	}
}

	/**
	 * blog temp title
	 */

.tuku-blog-title-h1 {
position: relative;
padding: 0em 0.5em;
border-left: solid 2.4em #44C619;
font-size: 3rem;
font-weight: bold;
margin-bottom: 20px;
}

.tuku-blog-title-h1:before {
font-family: "Font Awesome 5 Free";
content: "\f303";
position: absolute;
padding: 0em;
color: white;
font-weight: 900;
left: -1.625em;
top: 50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.tuku-blog-title-h2 {
position: relative;
padding: 0.5em 0.5em 0.5em 1.5em;
line-height: 1.4;
color: #44C619;
border-top: solid 3px #44C619;
border-bottom: solid 3px #44C619;
background: ;
font-size: 2.8rem;
font-weight: bold;
margin-bottom: 10px;
}

.tuku-blog-title-h2:before {
font-family: "Font Awesome 5 Free";
content: "\f138";
font-weight: 900;
position: absolute;
font-size: 1em;
left: 0.25em;
top: 0.5em;
color: #44C619;
}
.tuku-blog-title-h3 {
position: relative;
padding-left: 1.2em;
line-height: 1.4;
text-align: left;
font-size: 2.4rem;
font-weight: bold;
margin: 10px 0;
border-bottom: 2px solid #999;
padding-bottom: 5px;
}

.tuku-blog-title-h3:before {
  font-family: "Font Awesome 5 Free";
  content: "\f075";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 2.4tem;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
}

.tuku-blog-title-cont {
  position: relative;/*相対位置*/
  line-height: 1.4;/*行高*/
  display: inline-block;
text-align:center;
font-size:20px;
font-weight:bold;
margin-bottom:15px;
}

.tuku-blog-title-cont:before, .tuku-blog-title-cont:after { 
  position: relative;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  font-size: 1.0em;
  color: #44C619;
}
.tuku-blog-title-cont:before {
  content:"\f053";/*アイコン種類*/
  padding-right: 0.5em
}
.tuku-blog-title-cont:after {
  content:"\f054";/*アイコン種類*/
  padding-left: 0.5em
}

table{
  border-collapse: collapse;
  width: 100%;
border-top: solid 1px #808080;
border-left: solid 1px #808080;

}
.tb01 th, .tb01 td{
	padding: 10px;
	border-bottom: solid 1px #808080;
	border-right: solid 1px #808080;
	text-align:center;
	box-sizing:border-box;
	font-size: 1.6rem;
}
.tb01 th {
  background: #BDBDBD;
  color: #fff;
border-right: solid 1px #808080;
 }
.head th:first-child{
background: #F2F2F2;
}

.tuku-blog-title-list {
	border:dotted 1px #999;
	padding: 0.5em 1em 0.5em 2.8em;
	position: relative;
	margin-bottom:15px;
}

.tuku-blog-title-list li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
font-size: 1.6rem;
}

.tuku-blog-title-list li:before {
	font-family: "Font Awesome 5 Free";
	content: "\f00c";
	position: absolute;
	left: 1em; /*左端からのアイコンまで*/
	color: #44C619; /*アイコン色*/
}
@media screen and (max-width: 767px) {
.tuku-blog-title-h1 {
font-size: 2.2rem;
}
.tuku-blog-title-h2 {
font-size: 2rem;
text-align: left;
}
.tuku-blog-title-h3 {
font-size: 1.6rem;
}

.tuku-blog-title-cont {
font-size:18px;
}
  .tb01 .head{
    display:none;
  }
  .tb01 {
    width: 100%;
  }
  .tb01 td,
  .tb01 th{
    display: block;
    width: 100%;
  }
.tb01 th{
font-weight:bold;
  }
.tb01 td{
    padding: 0px 12px 0 0;
    display: block;
    width: 100%;
    line-height: 2.5;
    text-align:left;
  }
.tb01 td:before{
    color: #fff;
    content: attr(data-label);
    font-weight: bold;
    padding: 0px 10px;
    display: inline;
    background-color: #44C619;
    margin-right: 10px;
    float: left;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
}

th, td {
    border: solid 1px;
    padding: 10px;
    text-align: center;
}

.pc .slick-slide img{
	max-width:1000px;
	margin:0 auto;
}
/* ===== ブランド再配色: ヘッダー (追記・上書き) ===== */
/* ヘッダーバーの背景を #1d7621 に */
#masthead,
.navbar-light .navbar-brand {
	background: #1d7621;
}
/* ヘッダーバー内のテキスト・リンク(電話番号など)を白に */
#link-to-tel,
#link-to-tel a,
#link-to-tel a:visited,
#link-to-tel a:hover,
#link-to-tel a:active {
	color: #fff;
}
/* ナビ(メニュー)は白背景・文字 #1d7621 */
.main-navigation ul,
#pc-menu,
header ul.menu {
	background: #fff;
}
.main-navigation a,
.main-navigation a:visited,
.main-navigation a:hover,
.main-navigation a:active,
header ul.menu li,
header ul.menu li a,
header ul.menu li a:visited,
header ul.menu li a:hover,
header ul.menu li a:active {
	color: #1d7621;
}
/* 「無料相談会ご予約はこちら」ボタンの背景を #f06428 に */
#link-to-soudankai {
	background: #f06428;
}
/* ===== メインビジュアル レスポンシブ / スライダー準備 ===== */
/* 固定幅1280pxを解除して100%幅に */
#top-main-image {
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}
/* スライダーラッパーと各スライドも幅100% */
#top-main-image .your-slider-class-name,
#top-main-image .your-slider-class-name > div {
	width: 100%;
}
/* 画像をコンテナに追従させる */
#top-main-image img.sp,
#top-main-image img.pc {
	width: 100%;
	height: auto;
	display: block;
}
/* ===== SP ヘッダー配色 ===== */
/* ハンバーガーボタン背景を白に */
.navbar-light .navbar-toggler,
.navbar-toggler {
	background: #fff;
}
/* ハンバーガー三本線を黒に */
.navbar-toggler .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,0,0,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
/* SPナビのリンク文字色 */
.navbar-light .navbar-nav .nav-link,
.main-navigation li a {
	color: rgba(0, 0, 0, .5);
}
/* SPナビのカレント(現在地)は黒 */
.navbar-light .navbar-nav .current-menu-item > .nav-link,
.navbar-light .navbar-nav .current_page_item > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
	color: rgba(0, 0, 0, 1);
}

/* ===== #course-list 文字色を黒に ===== */
#course-list,
#course-list li {
	color: #000;
}

/* ===== gaiyo-1 白背景 (追記) ===== */
article.page-gaiyo-1 .entry-content {
    background: #fff;
    padding: 1.5em 2em;
}
@media screen and (min-width: 768px) {
    article.page-gaiyo-1 .entry-content {
        padding: 3rem 4rem;
    }
}
