@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/




.grecaptcha-badge {
	visibility: hidden;
}
* {
  -webkit-tap-highlight-color: transparent;
}
body.open {
	overflow-y: hidden;
}
input:focus,
select:focus,
textarea:focus {
	outline: none;
}
#content,
#footer,
#top_title_area, 
#breadcrumb {
	opacity: 0;
	animation: loaded 1s forwards;
}
.c-pageTitle__subTitle {
	display: none;
}
.center {
	text-align: center;
}
@keyframes loaded {
	20% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%;
}
.faq_accordion .faq_q {
	cursor: pointer;
}
.faq_accordion .faq_a {
	display: none;
}
.l-content {
	margin-bottom: 4em;
}
#breadcrumb {
	position: relative;
	padding-top: 20px;
}
#breadcrumb::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 15px;
	background: linear-gradient(180deg, #FF7C00 0%, transparent 100%) !important;
}
.is-opened>.p-searchModal__inner {
	top: 30%;
	background: transparent;
}

@media (max-width: 599px) {
	.l-content {
		margin-bottom: 2em;
	}
	.is-style-stitch {
		padding: 30px 0;
		font-size: 16px !important;
	}
}

@media (max-width: 599px) {
	.has-large-font-size {
		font-size: 16px !important;
	}
}




/* POPUP */
.overlay {
	position: fixed;
	z-index: 1000;
	display: none;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);
}
.btn_area {
	width: 420px;
	position: absolute;
	top: calc(50% - 210px);
	left: calc(50% - 210px);
	background: #fff0dd;
	padding: 10px;
	border: 4px solid #ff8c00;
	border-radius: 5px;
	box-shadow: 0 0 10px 5px #00000055;
	transition: .3s;
}
.btn_area a,
.btn_area img {
	display: block;
}
.btn_area img:nth-child(2) {
	position: absolute;
	bottom: 6%;
	left: 7%;
	width: 86%;
	transition: .3s;
}
.btn_area a:hover img:nth-child(2) {
	transform: scale(1.05);
}
.btn_area i {
	position: absolute;
	top: -27px;
	right: -27px;
	display: block;
	width: 50px;
	line-height: 50px;
	text-align: center;
	font-size: 35px;
	border-radius: 25px;
	background: white;
	box-shadow: 0 0 5px 3px #00000055;
	cursor: pointer;
	transition: .3s;
}
.btn_area i:hover {
	transform: scale(1.1);
}

@media (max-width: 440px) {
	.btn_area {
		width: 360px;
		top: calc(50% - 220px);
		left: calc(50% - 180px);
	}
}

@media (max-width: 400px) {
	.btn_area {
		width: 320px;
		top: calc(50% - 200px);
		left: calc(50% - 160px);
	}
}




/* CV */
.lp .cv {
	margin: 80px 0;
}
.lp .cv p {
	margin: 0;
}
.cv-btn {
	display: table;
	width: auto;
	margin: 20px auto 0 !important;
}
.cv-btn .wp-block-button {
	width: 100%;
}
.cv-btn a,
.post-coaching a,
form input[type="submit"] {
	position: relative;
	display: table;
	width: auto;
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	color: white;
	font-size: 1.4rem;
	font-weight: bold;
	margin: auto;
	padding: 18px 80px;
	line-height: 40px;
	border: none;
	border-radius: 5px;
	transition: .3s;
}
.cv-btn a.cta_open {
	background: linear-gradient(180deg, #ff5a5d 0%, #be1a1d 100%);
	box-shadow: none;
}
form input[type="submit"] {
	margin-top: 50px;
}
.cv-btn a,
.post-coaching a {
	padding-right: 105px;
}
.cv-btn a::after,
.post-coaching a::after {
	content: "\f105";
	position: absolute;
	display: inline;
	margin-left: 10px;
	font-size: 24px;
	font-family: "Font Awesome 6 Free";
	color: white;
	transition: .3s;
}
.cv-btn a:hover,
.post-coaching a:hover,
form input[type="submit"]:hover {
	opacity: .8;
	text-decoration: none;
}
.cv-btn a:hover:after,
.post-coaching a:hover:after {
	margin-left: 20px;
}
.lp .tablebox {
	display: table;
	max-width: calc(100% - 20px);
	margin: auto;
}

@media (max-width: 599px) {
	.lp .cv {
		margin: 30px 0;
	}
	.cv-btn {
		width: calc(100% - 40px);
		margin: 20px auto 40px;
	}
	.cv-btn a,
	.post-coaching a {
		padding: 10px 50px 10px 30px;
		font-size: 3.5vw;
	}
	.cv-btn a::after,
	.post-coaching a::after {
		font-size: 3.5vw;
	}
	.cv-btn a:hover:after,
	.post-coaching a:hover:after {
		margin-left: 15px;
	}
	.lp .tablebox {
		text-align: left;
	}
}




/* MV */
.lp .mv {
	margin: 0;
	padding: 60px 0 60px;
	background: url(https://manabiright.com/wp-content/uploads/2017/09/direct_line2-1.jpg) no-repeat right center;
	background-size: auto 100%;
}
.lp .mv p {
	margin: 0;
}
.lp .mv p.mv_text {
	margin: 0;
	padding-left: 20px;
	font-size: 3rem;
	text-shadow: 0 0 5px white;
	line-height: 1.6;
}

.lp .mv p.mv_text strong {
	font-size: 5.0rem;
	font-family: inherit;
	color: #FF8C00;
	background: transparent;
}

@media (max-width: 1000px) {
	.lp .mv p.mv_text {
		font-size: 4.5vw;
	}
	.lp .mv p.mv_text strong {
		font-size: 8vw;
	}
}

@media (max-width: 599px) {
	.lp .mv {
		height: 70vw;
		padding: 8vw 0 0;
		background-size: 130% auto;
		background-position: top left;
	}
	.lp .mv p.mv_text {
		font-size: 4.5vw;
		padding-left: 10px;
		line-height: 1.6;
	}
	.lp .mv p.mv_text:nth-child(2) {
		font-size: 6vw;
	}
	.lp .mv p.mv_text strong {
		display: block;
		font-size: 12vw;
		line-height: 1;
	}
	.lp .mv .wp-block-spacer {
		margin-bottom: 0;
	}
}




/* OLBコーチ予定追加 */
#coach_schedule {
	margin-bottom: 100px !important;
}
#coach_schedule #edit_schedule {
	margin: 0;
}
#coach_schedule .edit_schedule {
	margin: 20px auto 30px;
}
#coach_schedule p:first-child {
	padding: 20px;
	border-radius: 8px;
	box-shadow: var(--swl-img_shadow);
}
#coach_schedule .list_pagenavi:nth-child(3),
#coach_schedule #edit_schedule input[type="submit"]:nth-child(5) {
	display: none;
}
#coach_schedule th,
#coach_schedule td {
	cursor: pointer;
}
#coach_schedule tr:first-child th:first-child {
	cursor: default;
}
#coach_schedule td {
	color: #555555;
	background: transparent;
}
#coach_schedule td.open {
	background: #ff8c0011;
}
#coach_schedule td.closed {
	color: #eeeeee;
}
#coach_schedule td.past {
	color: #888888;
	background: #dddddd;
	cursor: default;
}
#coach_schedule td.past.closed {
	color: #cccccc;
}
#coach_schedule td:not(.past):hover {
	color: #ff8c00;
}
#coach_schedule input[type="submit"] {
	width: 100%;
	margin: 0 0 10px;
	padding: 0 20px 0 30px;
	font-size: 14px;
	letter-spacing: 10px;
	box-shadow: none;
}
#coach_schedule form[name="userlist"],
form[name="usersearch"] {
	margin: 10px 0 40px;
}
#coach_schedule form[name="userlist"] select,
#coach_schedule form[name="usersearch"] input[type="text"] {
	padding: 10px 15px !important;
	border-radius: 4px !important;
}
#coach_schedule form[name="usersearch"] input[type="submit"] {
	width: auto;
	margin: 20px 0 0;
	padding: 0 20px 0 30px;
	font-size: 16px;
	box-shadow: none;
}


/* ボタン */
.post_content .wp-block-buttons .btn_cta {
	margin-top: 10px !important;
}
.btn_cta a {
	box-shadow: var(--swl-img_shadow);
	padding-right: 40px;
	transition: .3s;
}
.btn_cta a::after {
	content: "\f105";
	position: absolute;
	display: inline;
	margin-left: 10px;
	font-size: 1em;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	color: white;
}
.btn_cta a:hover {
	opacity: .8;
}
.btn_line a {
	background: linear-gradient(180deg, #5CD774 0%, #3CB754 100%);
}

@media(max-width: 599px) {
	.btn_cta {
		margin: auto !important;
	}
}


/* ウィジェット */
#sidebar .-type-list .p-postList__thumb {
	flex-basis: 80px;
	border-radius: 4px;
}


/* 勉強と進路の相談集 */
#posts_summary {
	display: flex;
	margin: auto;
	flex-wrap: wrap;
	justify-content: space-between;
}
#posts_summary > ul {
	flex-basis: 30%;
}
#posts_summary a {
	display: block;
	color: #555555;
}
#posts_summary .parent > li a {
	position: relative;
	padding: 5px 5px 5px 38px;
	font-size: 18px;
	font-weight: bold;
	color: #ff8c00;
	transition: .3s;
}
#posts_summary .parent > li a:hover {
	opacity: .8;
}
#posts_summary .parent > li a::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 5px;
    display: block;
    width: 30px;
    height: 30px;
    background: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png) no-repeat center;
    background-size: contain;
}
#posts_summary .child {
	max-width: 400px;
	margin: 10px 10px 40px 10px;
	border-radius: 10px;
}
#posts_summary .child > li span,
#posts_summary .child > li a {
	position: relative;
	display: block;
	width: 100%;
	padding: 0 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #dddddd;
	font-weight: bold;
	cursor: pointer;
	line-height: 2;
	transition: .3s;
}
#posts_summary .gchild {
	display: none;
	font-size: 0.9em;
	padding-left: 1em;
	margin-bottom: 1em;
}
#posts_summary .gchild a {
	position: relative;
	padding: 0 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #dddddd;
	font-weight: bold;
	line-height: 2;
	transition: .3s;
}
#posts_summary .child > li a:hover,
#posts_summary .child > li.open span,
#posts_summary .gchild a:hover {
	color: #ff8c00;
}
#posts_summary .child > li span::before,
#posts_summary .child > li a::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 50px;
	height: 1px;
	background: #ff8c00;
}
#posts_summary .child > li span::after,
#posts_summary .child > li a::after,
#posts_summary .gchild a::after {
	content: "\f105";
	position: absolute;
	right: 5px;
	top: 0;
	margin-left: 10px;
	font-size: 1em;
	font-family: "Font Awesome 6 Free";
	transition: .3s;
}
#posts_summary .child > li a:hover:after,
#posts_summary .gchild a:hover:after {
	right: 2px;
}
#posts_summary .child > li span::after {
	transform: rotate(90deg);
}
#posts_summary .child > li.open span::after {
	transform: rotate(-90deg);
}
#posts_summary .child > li span:hover:after {
	top: 2px;
}

@media (max-width: 959px) {
	#posts_summary {
		max-width: 700px;
	}
	#posts_summary > ul {
		flex-basis: 47%;
	}
}

@media (max-width: 599px) {
	#posts_summary {
		display: block;
		max-width: 400px;
	}
	#posts_summary .child {
		margin: 10px 0 20px;
	}
	#posts_summary .child > li span, #posts_summary .child > li a {
		font-size: 16px;
	}
	#posts_summary .gchild a {
		font-size: 14px;
	}
	#posts_summary .parent > li a {
		padding-left: 28px;
		line-height: 22px;
	}
	#posts_summary .parent > li a::before {
		left: 0;
		width: 25px;
    height: 25px;
	}
}



/* 記事リスト */
.-type-list {
	max-width: 780px;
	margin: auto;
}
.-type-list .p-postList__meta {
	display: none;
}
.-type-list li {
	margin-bottom: 0 !important;
}
.-type-list a {
	align-items: center !important;
	padding: 10px;
	border-bottom: 1px solid #eeeeee;
}
.-type-list li:first-child a {
	border-top: 1px solid #eeeeee;
}
.-type-list .p-postList__thumb {
	flex-basis: 150px;
	border-radius: 6px;
}
.-type-list .p-postList__body {
	flex: 1;
	padding-left: 20px;
}

@media (max-width: 899px) {
	.-type-list .p-postList__excerpt {
		font-size: 12px;
	}
}

@media (max-width: 599px) {
	.is-style-balloon {
		margin-bottom: 20px;
	}
	.-type-list {
		width: 100vw;
		margin-left: calc(50% - 50vw);
	}
	.-type-list a {
		padding: 8px;
	}
	.-type-list .p-postList__thumb {
		flex-basis: 90px;
		border-radius: 4px;
	}
	.-type-list .p-postList__body {
		padding-left: 10px;
	}
	.-type-list .p-postList__title {
		font-size: 14px;
	}
	.-type-list .p-postList__excerpt {
		margin-top: 0;
	}
	.-type-list .c-postThumb__cat {
		font-size: 9px;
		line-height: 1.8;
	}
	.-type-list .icon-folder::before {
		content: none;
	}
}



/* 関連記事 */
.p-relatedPosts {
	max-width: none;
}



/* 関連記事の挿入用 */
.p-blogCard__inner {
	border-radius: 7px !important;
	box-shadow: var(--swl-img_shadow) !important;
	padding: 20px;
	transition: .3s;
}
.p-blogCard__inner:hover {
	background: #ff8c0011;
}
.p-blogCard__inner .p-blogCard__thumb {
	border: 1px solid #00000011;
	border-radius: 4px;
}
.p-blogCard__title {
	position: relative;
	font-size: 15px;
	font-weight: bold;
}
.p-blogCard__title::before {
	content: "こんな記事も見られています";
	display: block;
	color: var(--color_htag);
	font-weight: bold;
	padding-left: 22px;
	margin-bottom: 5px;
}
.p-blogCard__title::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png) no-repeat center;
	background-size: contain;
}
.p-blogCard__caption {
	display: none;
}

@media (max-width: 599px) {
	.p-blogCard__inner {
		padding: 15px;
	}
	.p-blogCard__title {
		font-size: 14px;
	}
	.p-blogCard__title::before {
		padding-left: 20px;
	}
	.p-blogCard__title::after {
		width: 18px;
		height: 18px;
	}
}





/* ヘッダー */
.header_top {
	max-width: 1200px;
	margin-right: auto;
	justify-content: space-between;
}
.header_top .l-header__logo {
	width: auto;
	order: 0;
}
.l-header__inner {
	padding: 0 !important;
}
.-img .c-headLogo__link {
	padding: 0;
}
.header_cta {
	position: relative;
	display: block;
	height: 56px;
	color: white;
	background: #de2a2d;
	/*background: #0ea827;（緑）*/
	border-radius: 50px;
	/*border-radius: 8px;*/
	font-size: 15px;
	font-weight: bold;
	margin-top: 11px;
	padding: 10px 40px 10px 25px;
	text-align: center;
	line-height: 18px;
	cursor: pointer;
	transition: .3s;
}
.header_cta b {
	color: #f4e702;
}
.header_cta span {
	display: block;
	font-size: 0.8em;
}
.header_cta:hover {
	opacity: .85;
}
.header_cta::after {
	content: "\f101";
	position: absolute;
	top: calc(50% - 11px);
	right: 10px;
	font-size: 22px;
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
	line-height: 1;
}
.header_cta_coach {
	min-width: 160px;
	background: #001a43;
	line-height: 1.2;
}

.header_top .l-header__logo {
	width: 240px;
	padding: 12px 0;
}
.header_top .l-header__logo a {
	display: block;
}

@media (min-width: 960px) {
	.header_top {
		width: auto;
		margin-left: 0;
	}
	.header_cta {
		margin-left: 10px;
	}
	.l-fixHeader__logo a {
		width: 210px;
	}
	.c-gnavWrap {
		display: flex;
	}
	.l-header__inner {
		padding: 0 10px !important;
	}
	.l-fixHeader__inner {
		padding: 0 10px;
		justify-content: space-between;
	}
}

@media (max-width: 959px) {
	.c-gnavWrap {
		display: block;
	}
	.c-gnav {
		display: none;
	}
	.l-header__inner {
		padding: 0 15px 0 5px !important;
	}
	.p-spMenu__inner {
		padding: 50px 0;
	}
	.-right .p-spMenu__closeBtn {
		top: 20px;
		right: 20px;
	}

	.header_cta {
		height: 44px;
		font-size: 12px;
		margin: 0;
		margin-right: 10px;
		padding: 5px 30px 5px 20px;
		line-height: 16px;
	}
	.header_cta::after {
		top: calc(50% - 8px);
		font-size: 16px;
	}
	.header_top .l-header__logo {
		width: 175px;
		padding: 10px 0;
	}
}

@media (max-width: 599px) {
	.header_cta {
		height: 38px;
		font-size: 11px;
		margin-right: 5px;
		padding: 5px 20px 5px 15px;
		line-height: 14px;
	}
	.header_cta::after {
		top: calc(50% - 6px);
		right: 6px;
		font-size: 12px;
	}
	.header_top .l-header__logo {
		width: 130px;
		padding: 10px 0;
	}
	.header_cta_coach {
		background: #001a43;
	}
}


/* gnav */
/*
.l-header__customBtn,
.l-header__menuBtn {
	display: none !important;
}
#gnav {
	background: #ff8c00;
}
#gnav.fixed {
	position: fixed;
	top: 0px;
}
.c-gnav {
	width: 95%;
	max-width: 1200px;
	color: white;
	margin: auto;
}
.c-gnav li {
	position: relative;
	flex: 1;
}
.c-gnav li:first-child:before {
	content: "";
	position: absolute;
	top: 25%;
	left: 0;
	display: block;
	width: 1px;
	height: 50%;
	background: white;
}
.c-gnav li::after {
	content: "";
	position: absolute;
	top: 25%;
	right: 0;
	display: block;
	width: 1px;
	height: 50%;
	background: white;
}
.c-gnav > .menu-item {
	height: auto;
}
.c-gnav > li > a {
	padding: 12px 0 !important;
}
.c-gnav > li > a .ttl {
	font-size: 12px !important;
	font-weight: bold !important;
	line-height: 1.3 !important;	
}
@media (max-width: 959px) {
	.c-gnav > li > a .ttl br {
		display: none;
	}
	.l-header__gnav {
		display: block;
		width: 100%;
	}
	.l-header__inner {
		flex-wrap: wrap;
	}
	.c-gnav {
		width: 100%;
		flex-wrap: wrap;
	}
	.c-gnav > li {
		flex-basis: calc(100% / 3);
	}
	.c-gnav > li > a {
		padding: 15px 10px;
		white-space: wrap;
		border-right: 1px solid #ffffff;
	}
	.c-gnav > li:nth-child(3n) a {
		border-right: none;
	}
	.c-gnav > li:nth-child(1) a,
	.c-gnav > li:nth-child(2) a,
	.c-gnav > li:nth-child(3) a {
		border-bottom: 1px solid #ffffff;
	}
	.c-gnav li::before,
	.c-gnav li::after {
		content: none !important;
	}
}
@media (max-width: 599px) {
	.c-gnav > li > a .ttl {
		font-size: 3vw !important;
	}
	.c-gnav > li > a .ttl br {
		display: block;
	}
	.c-gnav > li > a {
		padding: 13px 0 !important;
	}
}
*/



/* コーチ検索・詳細画面のヘッダー */
#coach_header {
	position: relative;
	display: flex;
	width: 100vw;
	min-height: 11em;
	margin-left: calc(50% - 50vw);
	margin-bottom: 50px;
	background: url(https://manabiright.com/wp-content/uploads/2023/03/3549025_m-1024x684-1.jpg) center;
	background-size: cover;
	align-items: center;
}
#coach_header::before {
	content: "";
	position: absolute;
	display: block;
  z-index: 2;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.5);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAGUExURUdwTAAAAJ8qhFEAAAABdFJOUwBA5thmAAAAEklEQVQI12MwYDBgYGBoYGAAAASKAOH8MS30AAAAAElFTkSuQmCC);
	background-size: 2px;
	content: "";
	opacity: .5;
}
#coach_header::after {
	content: "";
	position: absolute;
	bottom: -15px;
	left: 0;
	display: block;
	width: 100%;
	height: 15px;
	background: linear-gradient(180deg, #FF7C00 0%, transparent 100%) !important;
}
.coach_header-inner {
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)*2);
	margin: auto;
	padding-left: var(--swl-pad_container,0);
	padding-right: var(--swl-pad_container,0);
	color: white;
}
.coach_header-inner p {
	font-weight: bold;
}
.coach_header-inner p:nth-child(2) {
	font-size: 1.5em;
}
.coach_header-inner p.mini {
	font-size: 1.3em;
}

@media (min-width: 600px) {
	#coach_header {
		min-height: 240px;
	}
}
@media (max-width: 599px) {
	#coach_header {
		margin-bottom: 30px;
	}
	.coach_header-inner p {
		font-size: 12px;
		line-height: 1.5;
	}
	.coach_header-inner p:nth-child(2) {
		font-size: 15px;
	}
	.coach_header-inner p.mini {
		font-size: 15px;
	}
}



/* CTAモーダル */
.cta_open {
	cursor: pointer;
}
.cta_overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	display: none;
	align-items: center;
	width: 100%;
	height: 100%;
	background: #00000088;
}
.cta_overlay_wrap {
	position: relative;
	width: calc(100% - 20px);
	max-width: 750px;
	height: calc(100% - 60px);
	margin: 30px auto;
	background: #ffffff;
	border-radius: 14px;
	box-shadow: 0 0 10px 5px #00000033;
	overflow: hidden;
}
.cta_overlay_inner {
	height: 100%;
	padding: 60px 40px 1px;
	overflow: auto;
}
.cta_overlay_inner::-webkit-scrollbar {
  display:none;
}
.cta_overlay_inner p span {
	display: block;
	margin-top: 8px;
	font-size: 14px;
}
.cta_overlay_inner p span:nth-of-type(2) {
	display: table;
	font-size: 12px;
	margin: 15px auto;
	padding: 3px 15px;
	background: #eeeeee;
	border-radius: 20px;
}
.cta_overlay_inner p span:nth-of-type(2):before {
	content: "";
	position: relative;
	top: 1px;
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #66bb99;
	border-radius: 12px;
	margin-right: 3px;
}
.cta_overlay_inner .document_p:nth-child(1) {
	margin: 0 0 20px!important;
	font-weight: bold;
	color: #cc0000;
}
.cta_overlay_inner th {
	text-align: left;
}
.cta_overlay_inner form {
	margin: 40px 0 0;
}
.cta_overlay_inner #cf7form input[type="submit"] {
	margin-top: 20px;
}
.cta_overlay_top-red {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	display: block;
	width: 100%;
	margin: 0;
	padding: 30px 10px;
	background: linear-gradient(#ffffffdd 80%,transparent 100%);
	border-radius: 15px;
	font-weight: bold;
	font-size: 25px;
	color: #cc0000;
	text-align: center;
}
.cta_overlay_top {
	display: table;
	font-size: 16px;
	font-weight: bold;
	margin: 30px auto;
	text-align: left;
}
.cta_overlay_topbox {
	padding: 20px 30px;
	border-radius: 20px;
	box-shadow: 0 2px 5px 2px #00000033;
}
.cta_overlay_topbox p,
#cta-operator_overlay .cta_overlay_inner {
	font-weight: bold;
	text-align: center;
}
#cta-operator_overlay .cta_overlay_wrap {
	height: auto;
	padding-bottom: 50px;
}
.cta_overlay_col {
	display: flex;
	width: 100%;
	margin: 20px auto 0;
	justify-content: space-between;
}
.cta_overlay_col a {
	display: block;
	width: calc(50% - 15px);
	padding: 15px 10px;
	border-radius: 12px;
	font-weight: bold;
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	color: white;
	text-align: center;
	transition: .3s;
}
.cta_overlay_col a:nth-child(2) {
	background: linear-gradient(180deg, #5CD774 0%, #3CB754 100%) !important;
	padding-top: 25px;
}
.cta_overlay_col a:hover {
	opacity: .8;
}
.cta_overlay_inner i {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 101;
	width: 30px;
	font-size: 20px;
	border-radius: 20px;
	cursor: pointer;
	text-align: center;
	line-height: 30px;
	transition: .3s;
}
.cta_overlay_inner i:hover {
	color: #ff8c00;
}

@media (min-width: 600px) {
	.cta_overlay_top-red br {
		display: none;
	}
	.cta_overlay_inner p span {
		margin-top: 3px;
	}
}

@media (max-width: 599px) {
	.cta_overlay_wrap {
    height: calc(100% - 30px);
		margin: 15px auto;
	}
	.cta_overlay_inner {
		margin: 10px auto;
		padding: 60px 20px 30px;
	}
	.cta_overlay_top-red {
		font-size: 20px;
		padding: 20px 0;
	}
	.cta_overlay_top {
		font-size: 14px;
		margin: 20px auto;
	}
	.cta_overlay_top br:first-child {
		display: none;
	}
	.cta_overlay_topbox {
		border-radius: 10px;
	}
	.cta_overlay_col {
		margin-top: 20px;
	}
	.cta_overlay_inner p span {
		margin-top: 5px;
		font-size: 11px;
	}
	.cta_overlay_col a {
		width: calc(50% - 10px);
		padding: 15px 5px;
		border-radius: 8px;
	}
	.cta_overlay_col a:nth-child(2) {
		padding-top: 28px;
	}
}

@media (max-width: 499px) {
	.cta_overlay_top-red {
		font-size: 18px;
	}
	.cta_overlay_top {
		font-size: 13px;
		margin: 20px auto;
	}
	.cta_overlay_topbox {
		padding: 20px 10px;
		border-radius:10px;
	}
	.cta_overlay_col a {
		width: calc(50% - 5px);
		padding: 10px 5px;
		border-radius: 5px;
	}
	.cta_overlay_col a:nth-child(2) {
		padding-top: 22px;
	}
}





/* マナビライトとは */
.lp .h2_sup {
	font-weight: bold;
	margin-bottom: 0;
}
.lp .h2_sup + h2 {
	margin-top: 0 !important;
}
.lp .lp3col {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: auto;
}
.lp .lp3col .wp-block-column {
	padding: 40px;
	border-radius: 10px;
	box-shadow: var(--swl-img_shadow);
}
.lp .tonext {
	position: relative;
	width: 100%;
	height: 80px;
	margin: 50px auto;
	padding-top: 20px;
	background: transparent !important;
	color: #ff8c00;
	font-weight: bold;
}
.lp .tonext::before {
	content: "";
	position: absolute;
	top: 0;
	left: calc(50% - 100px);
	display: block;
	width: 200px;
	height: 30px;
	background: #ff8c0022;
}
.lp .tonext::after {
	content: "";
	position: absolute;
	top: 30px;
	left: calc(50% - 180px);
	z-index: -1;
	border-top: solid 50px #ff8c0022;
	border-left: solid 180px transparent;
	border-right: solid 180px transparent;
}
.lp .fukidashi-area {
	width: calc(100% - 40px);
	max-width: 900px;
	margin: auto;
}
.lp .icon_box {
	width: calc(100% - 40px);
	max-width: 800px;
	margin: 50px auto;
	border-width: 4px;
	border-radius: 8px;
	font-weight: bold;
}
.lp .rikai-tensuu {
	width: calc(100% - 40px);
	max-width: 1100px;
	margin: auto;
	padding: 50px 0;
	border-radius: 15px;
	box-shadow: var(--swl-img_shadow);
}
.lp .soudan-shidurai {
	width: calc(100% - 30px);
	max-width: 1000px;
	margin: auto;
	padding: 50px 60px;
	border-width: 3px;
	border-radius: 15px;
}
.lp .free-reason {
	display: table;
	margin: 70px auto;
}
.lp .about_warning {
	padding: 30px 0;
}
.lp .about_warning p {
	display: table;
	width: auto;
	margin: auto;
	padding-left: 7rem;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}
.lp .about_warning2 p {
	font-size: 1.6rem;
}
.lp .about_warning p::before {
	content: "";
	position: absolute;
	top: calc(50% - 2.5rem);
	left: 0;
	display: inline-block;
	width: 5rem;
	height: 5rem;
	border-radius: 50px;
	background: url(https://manabiright.com/wp-content/uploads/2023/03/caution.png) no-repeat center 40% white;
	background-size: 60%;
}
.lp .about_warning p strong {
	position: relative;
}
.lp .about_tonext {
	height: 120px;
	padding-top: 30px;
	font-size: 1.5rem;
	line-height: 1.5;
}
.lp .about_tonext::before {
	width: 400px;
	height: 80px;
	left: calc(50% - 200px)
}
.lp .about_tonext::after {
	top: 80px;
	left: calc(50% - 300px);
	z-index: -1;
	border-top: solid 60px #ff8c0022;
	border-left: solid 300px transparent;
	border-right: solid 300px transparent;
}
.lp .about_toptext {
	font-size: 2rem;
	margin-bottom: 60px;
}
.lp .about_konoyouni {
	font-size: 1.5rem;
}
.lp .about_box {
	width: calc(100% - 20px);
	max-width: 1000px;
	padding: 30px 20px;
	margin: auto;
	border-radius: 10px;
  box-shadow: var(--swl-img_shadow);
	font-weight: bold;
}
.lp .about_box p {
	position: relative;
	display: table;
	margin: auto;
	padding-left: 4rem;
}
.lp .about_box p::before {
	content: "";
	position: absolute;
	top: calc(50% - 1.8rem);
	left: 0;
	width: 3rem;
	height: 3rem;
	background: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-cropped-logo_single.png) no-repeat center;
	background-size: contain;
}
.lp .about_seikatext {
	font-size: 1.8rem;
}

@media (max-width: 959px) {
	.lp .about_warning p {
		font-size: 3vw;
		padding-left: 10vw;
	}
	.lp .about_warning p::before {
		top: calc(50% - 4vw);
    width: 8vw;
    height: 8vw;
	}
	.lp .about_toptext {
		font-size: 3.5vw;
	}
	.lp .lp3col .wp-block-column {
		padding: 30px;
	}
	.lp .soudan-shidurai {
		padding: 30px;
		border-width: 2px;
		border-radius: 10px;
	}
	.lp .about_box p {
		font-size: 24px;
	}
	.lp .about_box3 p br:not(:nth-child(2)) {
		display: none;
	}
}

@media (max-width: 781px) {
	.lp .lp3col {
		max-width: 500px;
	}
	.lp .lp3col-point {
		max-width: none;
	}
	.lp .lp3col-point .wp-block-column {
		padding: 15px 15px 20px;
	}
	.lp .lp3col-point p {
		font-size: 14px;
	}
	.lp .lp3col-what {
		max-width: 400px;
	}
	.lp .tonext {
		margin: 30px auto;
	}
	.lp .about_tonext {
		padding-top: 20px;
		height: 100px;
		font-size: 16px;
	}
	.lp .about_tonext::before {
			width: 250px;
			height: 60px;
			left: calc(50% - 125px);
	}
	.lp .about_tonext::after {
			top: 60px;
			left: calc(50% - 200px);
			border-top: solid 50px #ff8c0022;
			border-left: solid 200px transparent;
			border-right: solid 200px transparent;
	}
	.lp .about_toptext {
		margin-bottom: 30px;
	}
	.lp .rikai-tensuu {
		max-width: 600px;
	}
	.lp .icon_box {
		max-width: 350px;
		padding: 25px;
		font-size: 15px;
	}
	.lp .soudan-shidurai {
		max-width: 700px;
	}
	.lp .about_warning_mini p {
		font-size: 14px !important;
	}
	.lp .about_box .about_konoyouni,
	.lp .about_box .about_taikentext {
		font-size: 14px;
	}
	.about_kaiketsu-box .wp-block-columns {
		padding-top: 0 !important;
	}
	.about_kaiketsu-box .wp-block-column {
		display: block !important;
	}
	.about_kaiketsu-box .wp-block-column .wp-block-image {
		display: block;
		width: 300px;
		margin: auto !important;
	}
}


@media (min-width: 600px) {
	.lp .about_seikatext br {
		display: none;
	}
	.lp .about_warning_top br:first-child {
		display: none;
	}
	.lp .icon_box br:not(:nth-child(3)) {
		display: none;
	}
	.lp .lp3col-point p br:first-child {
		display: none;
	}
}

@media (max-width: 599px) {
	.lp .lp3col {
		max-width: 350px;
	}
	.lp .lp3col-point {
		max-width: none;
		gap: 10px !important;
	}
	.lp .lp3col-point .wp-block-column {
		padding: 20px 5px;
	}
	.lp .lp3col-point .wp-block-column p {
		font-size: 12px;
	}
	.lp .lp3col-what {
		max-width: 250px;
	}
	.lp .about_warning {
		padding: 20px 10px;
	}
	.lp .about_warning p {
		font-size: 18px;
		padding-left: 60px;
	}
	.lp .about_warning2 p {
		font-size: 15px;
	}
	.lp .about_warning p::before {
		top: calc(50% - 25px);
    width: 50px;
    height: 50px;
	}
	.lp .about_toptext strong {
		font-size: 18px;
	}
	.lp .tonext {
		padding-top: 10px;
		height: 50px;
		font-size: 13px;
	}
	.lp .tonext::before {
		width: 120px;
		height: 30px;
		left: calc(50% - 60px);
	}
	.lp .tonext::after {
		top: 30px;
		left: calc(50% - 120px);
		border-top: solid 20px #ff8c0022;
		border-left: solid 120px transparent;
		border-right: solid 120px transparent;
	}
	.lp .about_box {
		padding: 20px;
	}
	.lp .about_box p {
		font-size: 18px;
		line-height: 1.5;
	}
	.lp .about_box .about_konoyouni,
	.lp .about_box .about_taikentext {
		padding-left: 3.5rem;
	}
	.lp .about_tonext {
		padding: 10px;
		height: 60px;
		font-size: 13px;
	}
	.lp .about_tonext::before {
		width: 200px;
		height: 40px;
		left: calc(50% - 100px);
	}
	.lp .about_tonext::after {
		top: 40px;
		left: calc(50% - 150px);
		border-top: solid 30px #ff8c0022;
		border-left: solid 150px transparent;
		border-right: solid 150px transparent;
	}
	.lp .rikai-tensuu {
		width: calc(100% - 20px);
		padding: 20px 0 20px;
	}
	.lp .icon_box {
		padding: 20px 10px;
		font-size: 15px;
	}
	.lp .soudan-shidurai {
		width: calc(100% - 20px);
		padding: 20px;
	}
	.lp .soudan-shidurai h4 {
		font-size: 15px;
	}
	.lp .soudan-shidurai p,
	.lp .soudan-shidurai li {
		font-size: 13px;
		text-align: left;
	}
}


/* 料金案内 */
@media (max-width: 599px) {
	.fee-table,
	.fee-table_bottom {
		font-size: 12px !important;
	}
	.c-scrollHint:has(+ .fee-table) {
		margin-top: 20px;
	}
}



/* 予約関連機能 */
#members_schedule.future_list th,
#members_schedule.future_list td {
	padding: 20px !important;
}
#reservation {
	max-width: 600px;
	margin: auto;
}
#reservation dl > *:nth-child(1),
#reservation dl > *:nth-child(2) {
	display: none;
}
#reservation dt,
#reservation dd {
	padding: 20px;
	border: none;
	border-top: 1px solid #eeeeee;
	margin: 0;
}
#reservesubmit {
	display: block;
	width: 100%;
	padding: 10px;
	margin-bottom: 30px;
	font-family: inherit;
	text-shadow: none;
	box-shadow: none;
}
#reservesubmit:hover {
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
}
#reservesubmit:active {
	position: static;
}
#reservation .alert {
	border: none;
	background: transparent;
	padding: 30px;
	margin-bottom: 10px !important;
	border-radius: 10px;
	box-shadow: var(--swl-img_shadow);
	font-weight: bold;
	text-align: center;
	color: #555555;
}

@media (max-width: 599px) {
	#reservation {
		margin-top: 30px !important;
	}
	#reservation dt,
	#reservation dd {
		font-size: 13px;
		padding: 20px 5px;
	}
	#reservation dt {
		width: 110px;
	}
	#reservation dd {
		width: calc(100% - 110px);
	}
}


/* ログインページ */
.login-form {
	max-width: 600px;
	margin: auto;
}
.login-form legend {
	display: none;
}
.login-form label {
	display: block !important;
	font-size: 14px;
	margin-bottom: 5px;
}
#wpmem_login,
#wpmem_msg,
#wpmem_reg,
.wpmem_msg {
	width: 100%;
}
.login-form .div_text input {
	padding: 15px !important;
	border-radius: 5px !important;
}
.login-form .button_div input:first-child {
	position: relative;
	display: none;
}
.login-form .button_div label {
	position: relative;
	top: -10px;
	display: inline-block !important;
	width: auto !important;
}
.login-form .button_div input:last-child {
	width: 100% !important;
	margin-top: 20px !important;
	padding: 5px 0 !important;
	letter-spacing: 1px;
}
.login-form .link-text .link-text-forgot {
	display: block;
	margin-top: 20px !important;
	font-size: 14px;
}
.login-form .link-text .link-text-forgot a::after {
	content: "\f105";
	position: relative;
	top: 2px;
	display: inline;
	margin-left: 10px;
	font-size: 18px;
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
}
.login_status {
	text-align: center;
}

@media(min-width: 600px) {
	.login_status br {
		display: none;
	}
}


/* チェックボックス */
input[type="checkbox"] {
	display: none;
}
input[type="checkbox"] + label {
	position: relative;
	display: block !important;
	width: 100%;
	border-radius: 5px;
	padding-left: 28px;
	margin-bottom: 8px;
	font-weight: bold;
	line-height: 20px;
	cursor: pointer;
}
input[type="checkbox"]:checked + label {
	color: var(--color_htag);
}
input[type="checkbox"] + label::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #eeeeee;
	border-radius: 3px;
	font-size: 14px;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	line-height: 18px;
	text-align: center;
}
input[type="checkbox"]:checked + label::before {
	content: "\f00c";
	background: #e7001215;
}

/* フッターの固定ボタン */
.l-footer__foot {
	padding-bottom: 140px;
}
.footer-fixed {
	position: fixed;
	bottom: 0;
	right: calc(50% - 600px);
	z-index: 10;
	display: flex;
	width: 1200px;
	padding: 20px 120px;
	justify-content: space-between;
	background: #ffffffee;
	border-radius: 20px 20px 0 0;
	box-shadow: var(--swl-img_shadow);
}
.footer-fixed_btn {
	position: relative;
	display: block;
	background: linear-gradient(180deg, #ff5a5d 0%, #be1a1d 100%);
	color: white;
	padding: 10px 0;
	padding-right: 20px;
	border-radius: 8px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	box-shadow: var(--swl-img_shadow);
	cursor: pointer;
	transition: .3s;
}
.footer-fixed_btn:nth-child(1) {
	flex-basis: calc(50% - 40px);
	background: linear-gradient(180deg, #30D582 0%, #009542 100%);
}
.footer-fixed_btn:nth-child(2) {
	position: relative;
	flex-basis: calc(50% - 40px);
	/* box-shadow: 0 0 15px 0 #de2a2d; */
}
.footer-fixed_btn span {
	display: block;
	font-size: 14px;
}
.footer-fixed_btn:nth-child(2)#ff_search {
	padding-left: 30px;
}
.footer-fixed_btn:nth-child(2)#ff_search:before {
	content: "\f002";
	position: absolute;
	top: calc(50% - 15px);
	left: 30px;
	display: block;
	width: 40px;
	height: 40px;
	font-size: 30px;
    font-family: "Font Awesome 6 Free";
    font-weight: bold;
    line-height: 1;
}
.footer-fixed_btn:hover {
	opacity: .8;
}
.footer-fixed_btn::after {
	content: "\f105";
	position: absolute;
	display: block;
	top: calc(50% - 15px);
	right: 30px;
	font-size: 24px;
	font-family: "Font Awesome 6 Free";
	color: white;
	line-height: 24px;
}
#ff_line {
	background: linear-gradient(180deg, #5CD774 0%, #3CB754 100%);
}
#ff_search {
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	/* box-shadow: 0 0 15px 0 #ff8c00; */
}
#ff_coach {
	max-width: 500px;
	flex-basis: 100%;
	margin: auto;
	padding: 18px 80px;
	background: linear-gradient(180deg, #506A93 0%, #001A43 100%);
	line-height: 32px;
}
#ff_single {
	max-width: 500px;
	flex-basis: 100%;
	margin: auto;
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	line-height: 32px;
}
.footer-fixed.form .wpcf7-spinner {
	display: none !important;
}

@media (max-width: 1200px) {
	.footer-fixed {
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 20px 50px;
		border-radius: 0;
	}
	.footer-fixed_btn:nth-child(2)#ff_search:before {
		left: 20px;
	}
}

@media (max-width: 781px) {
	.footer-fixed {
		padding: 15px;
	}
	.footer-fixed_btn:nth-child(1) {
		flex-basis: calc(50% - 10px);
	}
	.footer-fixed_btn:nth-child(2) {
		flex-basis: calc(50% - 10px);
	}
	.footer-fixed_btn::after {
		right: 15px;
	}
}

@media (max-width: 599px) {
	.l-footer__foot {
		padding-bottom: 30px;
	}
	.l-footer__nav {
		display: block;
	}
	.l-footer__nav a {
		font-size: 12px;
		text-align: center;
	}
	.footer-fixed {
		background: #ffffff;
		padding: 10px;
	}
	.footer-fixed_btn {
		position: relative;
		font-size: 13px;
		padding: 10px 0;
		border-radius: 6px;
		line-height: 1.2;
	}
	.footer-fixed_btn:nth-child(1) {
		flex-basis: calc(46% - 5px);
	}
	.footer-fixed_btn:nth-child(2) {
		flex-basis: calc(54% - 5px);
	}
	.footer-fixed_btn:nth-child(2)#ff_search {
		padding-left: 22px;
	}
	.footer-fixed_btn:nth-child(2)#ff_search:before {
		top: calc(50% - 10px);
		left: 0;
		font-size: 20px;
	}
	.footer-fixed_btn span {
		font-size: 9px;
		margin-bottom: 2px;
	}
	.footer-fixed_btn::after {
		content: none;
	}
	#ff_coach,
	#ff_single {
		font-size: 14px;
		padding: 8px 0;
		line-height: 1.3;
	}
}


/* 見出しタグ */
@media (max-width: 599px) {
	.post_content h2 {
		width: 100vw;
		margin-left: calc(50% - 50vw) !important;
		padding-left: 20px !important;
	}
}


/* フォント */
@font-face {
	font-family: 'corporate-logo';
	src: url("https://manabiright.com/fonts/Corporate-Logo-Medium-ver3.woff");
}

.logo-font {
font-family: 'corporate-logo', sans-serif;
	font-weight: normal;
}

.otoiawase {
	display: table;
	margin: auto;
	font-size: 0.8rem;
}







/***** 記事 *****/
.l-mainContent__inner > .post_content {
	margin-bottom: 30px;
}
.postTitle_container {
	margin-bottom: 20px;
	border-radius: 7px;
	padding: 18px 20px;
	box-shadow: var(--swl-img_shadow);
}
.c-postTitle {
	display: block;
	margin-bottom: 5px;
}
.manabipost_content p a {
	font-weight: bold;
}
.manabipost_content p a:hover {
	text-decoration: underline;
}
.manabipost_content h2 {
	position: relative;
	font-size: 1.2em;
	margin-bottom: 30px;
	padding-left: 40px !important;
	animation: answer-flash1 0.5s 3;
}
.manabipost_content h2::before {
	content: "";
	position: absolute;
	top: calc(50% - 18px);
	left: 0;
	display: block;
	width: 35px;
	height: 35px;
	background: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png) no-repeat center;
  	background-size: contain;
	animation: answer-flash2 0.5s 3;
}
.manabipost_content ul li {
	margin-bottom: 15px;
}
.manabipost_content ul:nth-of-type(1) {
	position: relative;
	border: 2px solid #ff8c00;
	border-radius: 12px;
	margin: 40px 0 60px;
	padding: 25px 30px;
}
.manabipost_content ul:nth-of-type(1) li {
	margin-bottom: 0;	
}
.manabipost_content ul:nth-of-type(1):before {
	content: "こんな人に読んでほしい！";
	position: absolute;
	top: -16px;
	left: 18px;
	display: block;
	color: #ff8c00;
	background: white;
	padding: 0 10px;
	font-size: 1.2em;
	font-weight: bold;
}
.manabipost_content ul:nth-of-type(1) li {
	display: block;
}
.manabipost_content h3 {
	margin: 15px 0;
	padding-left: 15px;
	font-size: 18px;
}
.manabipost_content p strong {
	margin: 0 2px;
	padding: 0 3px 2px;
	background: linear-gradient(transparent 70%, #7ebead88 70%,#7ebead88 100%);
}

.manabipost_content .swell-block-faq {
	position: relative;
	border: 2px solid #ff8c00;
	border-radius: 12px;
	margin: 40px 0 60px;
	padding: 30px 30px 25px;
}
.manabipost_content .swell-block-faq::before {
	content: "よくある質問";
	position: absolute;
	top: -16px;
	left: 18px;
	display: block;
	color: #ff8c00;
	background: white;
	padding: 0 12px;
	font-size: 1.2em;
	font-weight: bold;
}
.manabipost_content .swell-block-faq .faq_q,
.manabipost_content .swell-block-faq .faq_a {
	padding: 0 0 10px 35px;
}
.manabipost_content .swell-block-faq .faq_q::before,
.manabipost_content .swell-block-faq .faq_a::before {
	top: 1px;
	left: 1px;
	width: 1.5em;
	line-height: 1.5em;
}

@keyframes answer-flash1 {
	50% {
		color: inherit;
		border-color: var(--color_htag);
	}
	100% {
		color: #cccccc;
		border-color: #cccccc;
	}
}

@keyframes answer-flash2 {
	50% {
		background-image: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png);
	}
	100% {
		background-image: url(https://manabiright.com/wp-content/uploads/2023/03/cropped_logo_single_gray.png);
	}
}

.postTitle_flex {
	display: flex;
}
.postTitle_L {
	height: 65px;
	flex-basis: 100px;
}
.postTitle_L img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 6px;
	box-shadow: var(--swl-img_shadow);
}
.postTitle_R {
	display: flex;
	align-items: center;
	flex: 1;
	padding-left: 20px;
}
.postText {
	border-top: 1px solid #dddddd;
	margin-top: 15px;
	padding-top: 10px;
}
.postPerson {
	margin: 5px 0 10px;
}
.postPerson::before {
	content: "";
	position: relative;
	top: 2px;
	display: inline-block;
	width: 1em;
	height: 1em;
	background: url(https://manabiright.com/icon/person.png) no-repeat center;
	background-size: contain;
}
.post-coaching {
	border-radius: 10px;
	padding: 40px 20px;
	box-shadow: var(--swl-img_shadow);
}
.post-coaching p {
	font-size: 15px;
	text-align: center;
	margin-bottom: 10px;
}
.post-coaching a {
	margin-top: 20px !important;
}

@media (max-width: 959px) {
	.postTitle_L {
		display: none;
	}
	.postTitle_R {
		padding-left: 0;
	}
	.post-coaching p {
		font-size: 14px;
	}
	.post-coaching a {
		font-size: 14px !important;
		padding: 10px 60px;
	}
	.manabipost_content h2 {
		padding-left: 55px !important;
	}
	.manabipost_content h2::before {
		left: 15px;
	}
}

@media (min-width: 600px) {
	.post-coaching p br {
		display: none;
	}
}

@media (max-width: 599px) {
	.single-post .l-container {
		padding-left: 10px;
		padding-right: 10px;
	}
	.postTitle_container {
		margin: 0;
	}
	.manabipost_content {
		margin-top: 40px !important;
		margin-bottom: 30px !important;
	}
	.manabipost_content h2 {
		margin: 20px 0;
		padding: 10px 5px;
		font-size: 14px;
		padding-left: 38px !important;
	}
	.manabipost_content h2::before {
		top: calc(50% - 12px);
		left: 8px;
		width: 25px;
		height: 25px;
	}
	.manabipost_content h3 {
		margin: 30px 0 10px;
		padding-left: 10px;
		font-size: 14px;
	}
	.manabipost_content h4 {
		font-size: 16px;
		margin: 30px 0 10px;
		padding-left: 10px;
	}
	.manabipost_content h5 {
		margin-bottom: 5px;
	}
	.manabipost_content p {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 12px;
	}
	.postTitle_container {
		padding: 15px;
	}
	.c-postTitle__ttl {
		font-size: 20px;
	}
	.postText {
		font-weight: bold;
		margin-top: 5px;
		padding-top: 10px;
	}
	.postPerson,
	.postText {
		font-size: 13px;
	}
	h2.answer_title {
		padding-left: 35px !important;
	}
	h2.answer_title::before {
		top: calc(50% - 13px);
		left: 6px;
		width: 25px;
		height: 25px;
	}
	.manabipost_content p {
		font-size: 13px;
	}
	.manabipost_content ul {
		padding: 0;
	}
	.manabipost_content li {
		font-size: 13px;
	}
	.manabipost_content ul:nth-of-type(1) {
		padding: 15px;
		margin: 30px 0 40px;
		border-radius: 10px;
		font-size: 13px;
	}
	.manabipost_content ul:nth-of-type(1) li::before {
		margin-right: 5px;
	}
	.manabipost_content .swell-block-faq {
		padding: 25px 15px;
		margin: 30px 0 40px;
		border-radius: 10px;
		font-size: 13px;
	}
	.manabipost_content .swell-block-faq::before {
		top: -12px;
		padding: 0 8px;
	}
	.manabipost_content .swell-block-faq .faq_q,
	.manabipost_content .swell-block-faq .faq_a {
		padding-left: 30px;
	}
	.post-coaching {
		padding: 20px 20px;
	}
	.post-coaching p {
		font-size: 13px;
		margin-bottom: 8px;
	}
	.post-coaching a {
		width: 100%;
		margin-top: 20px !important;
		padding: 5px 10px;
		text-align: center;
	}
}


/* 理解度テスト */
.manabipost_content .post_quiz {
	border: none;
	padding: 0;
	margin-top: 0;
}
.manabipost_content .post_quiz p {
	margin-bottom: 5px;
}
.manabipost_content .post_quiz::before {
	content: none !important;
}
.post_quiz_btn i {
	width: 50px;
	margin-top: 5px;
	margin-right: 8px;
	font-size: 13px;
	color: #ee1111;
	border: 2px solid #ee1111aa;
	border-radius: 4px;
	text-align: center;
	line-height: 25px;
	cursor: pointer;
	box-shadow: 1px 1px 2px 0 #00000022;
	transition: .3s;
}
.post_quiz_btn i:nth-child(2) {
	color: #1111ee;
	border: 2px solid #2222ddaa;
}
.post_quiz_btn i:hover {
	background: #ee111111;
}
.post_quiz_btn i:nth-child(2):hover {
	background: #2222dd11;
}
.post_quiz_btn.active i {
	background: #f5f5f5;
	color: #cccccc;
	border: 2px solid #dddddd;
	pointer-events: none;
}
.post_quiz_btn i.active {
	color: #ee1111;
	background: #ee111111;
	border: 2px solid #ee1111aa;
}
.post_quiz_btn i:nth-child(2).active {
	color: #1111ee;
	background: #2222dd11;
	border: 2px solid #2222ddaa;
}
.post_quiz_judge {
	font-size: 13px;
}
.post_quiz_true {
	display: block;
	color: #dd3333;
	margin-left: 2px;
}
.post_quiz_false {
	display: block;
	color: #4477cc;
	margin-left: 2px;
}


/***** コーチ一覧ページ *****/
.p-termContent {
	margin-top: 40px;
}
.clist_none > p {
	max-width: 900px;
	margin: 20px auto 40px !important;
}
.clist_none_cta.cv-btn {
	margin-top: 100px !important;	
}
.clist_other {
	font-size: 25px;
	font-weight: bold;
	color: var(--color_main);
	padding-top: 30px;
	text-align: center;
}
.coach_tax .c-pageTitle,
.clist_title {
	font-size: 1.5rem;
	padding: 10px 20px;
	box-shadow: var(--swl-img_shadow);
	border: none;
	border-radius: 8px;
	line-height: 1.5;
}
.coach_tax .c-pageTitle .c-pageTitle__inner {
	padding: 0;
	border: none;
	float: none;
}
.coach_tax .c-pageTitle::after {
	content: none;
}
.p-searchContent,
.p-searchContent:first-child {
	margin-top: 40px !important;
}
#coach_research-float {
	position: fixed;
	bottom: 30px;
	right: 20px;
	z-index: 1000;
	padding: 5px 15px 10px;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: var(--swl-img_shadow);
	transition: .3s;
}
.coach_back,
.coach_fav,
.coach_link {
	display: block;
	padding: 3px 10px;
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	color: white;
	border: 1px solid #FFAC22;
	border-radius: 5px;
	cursor: pointer;
	text-align: center;
	transition: .3s;
}
.coach_link {
	width: 300px;
	padding-right: 25px;
	margin: 20px auto 0;
	color: white !important;
	font-weight: bold;
	line-height: 50px;
}
.coach_link::after {
	content: "\f105";
	position: absolute;
	display: inline;
	margin-left: 10px;
	font-size: 20px;
	font-family: "Font Awesome 6 Free";
	color: white;
	transition: .3s;
}
.coach_link:hover {
	opacity: .8;
	text-decoration: none;
}
.coach_link:hover:after {
	margin-left: 15px;
}
.coach_topbtnarea {
	position: relative;
	display: flex;
	justify-content: flex-start;
	margin-top: 30px !important;
}
.l-mainContent__inner>:first-child.coach_topbtnarea {
	margin-top: 30px !important;
}
.coach_back,
.coach_fav {
	position: relative;
	display: table;
	padding-right: 20px;
	padding-left: 40px;
	line-height: 35px;
}
.coach_back {
	margin-right: 10px;
}
.coach_fav {
	background: linear-gradient(180deg, #f06b83 0%, #d04b63 100%);
	border: 1px solid #d04b63;
}
.coach_back::before,
.coach_fav::before {
	content: "\f002";
	position: absolute;
	top: calc(50% - 7px);
	left: 15px;
	font-size: 14px;
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
	line-height: 1;
}
.coach_fav::before {
	content: "\f005";
}
.coach_back:hover,
.coach_fav:hover,
.coach_link:hover {
	opacity: .8;
}
.coach_resultnum {
	font-size: 0.9rem;
	margin-bottom: 3px;
	text-align: center;
}
.coach_resultnum strong {
	font-size: 1.4em;
}

#coach_flow {
	max-width: 1000px;
	margin: 50px auto 50px !important;
}
#coach_flow img {
	display: block;
	width: 100%;
}
#coach_flow p {
	margin: 10px auto;
	font-size: 24px;
	font-weight: bold;
	color: #ff8c00;
	text-align: center;
}
#coach_flow p span {
	margin-left: 0.5em;
}
@media(max-width: 959px) {
	#coach_flow p {
		font-size: 18px;
	}
}

@media (max-width: 959px) {
	#coach_research-float {
		bottom: 0;
		left: 0;
		right: 0;
		display: flex;
		justify-content: space-between;
		border-radius: 0;
		padding: 15px 10px;
	}
	.coach_resultnum {
		font-size: 16px;
		margin: 0;
		padding-top: 5px;
		padding-left: 5px;
		letter-spacing: 0;
		transition: .3s;
	}
}

@media (max-width: 599px) {
	.coach_tax .c-pageTitle,
	.clist_title {
		width: calc(100% - 30px);
		margin: auto;
	}
	.clist_other {
		font-size: 18px;
		padding-top: 0;
		margin-bottom: 20px;
	}
	.clist_none {
		max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)*2);
    padding-left: var(--swl-pad_container,0);
    padding-right: var(--swl-pad_container,0);
	}
	.clist_none > p {
		font-size: 14px;
		margin: 20px auto 40px;
	}
	.clist_none_cta.cv-btn {
		margin-top: 40px !important;	
	}
	.coach_link {
		width: 100%;
		font-size: 13px;
		margin-top: 0;
		line-height: 30px;
	}
	.coach_link::after {
		font-size: 14px;
	}
	#coach_flow {
		margin: 30px auto 30px !important;
	}
	#coach_flow p {
		font-size: 16px;
	}
	#coach_flow p span {
		display: block;
		font-size: 20px;
		margin-left: 0;
	}
}


/* コーチ検索条件の変更 */
#coach_research {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	display: none;
	width: 100%;
	height: 100%;
	padding: 40px 0;
	background: #000000cc;
}
#coach_research_inner {
	position: relative;
	display: block;
	width: calc(100% - 40px);
	max-width: 900px;
	height: 100%;
	margin: auto;
	background: #ffffff;
	padding: 30px;
	border-radius: 10px;
	overflow: hidden;
}
#coach_research_inner form {
	height: calc(100% - 90px);
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
#coach_research_inner form::-webkit-scrollbar{
  display: none;
}
#coach_research_inner h2 {
	font-size: 1.5rem;
	text-align: center;
	margin-bottom: 10px;
}
#coach_research .searchandfilter {
	background: white;
}
#coach_research .close {
	position: absolute;
	top: 15px;
	right: 25px;
	display: block;
	font-size: 30px;
	font-family: "Font Awesome 6 Free";
	cursor: pointer;
	transition: .3s;
}
#coach_research .close:hover {
	color: var(--color_htag);
}
#coach_research .c_obj-notice {
	margin: 30px 5px 0;
	padding: 40px 0;
}


@media (max-width: 959px) {
	#coach_research_inner {
		padding: 30px;
	}
	#coach_research .c_obj-notice {
		margin-top: 0;
	}
	#coach_research .sfh4_ex {
    	margin-bottom: 10px;
	}
}

@media (max-width: 599px) {
	#coach_research {
		background: white;
		padding: 0;
	}
	#coach_research_inner {
		width: 100%;
		padding: 10px 10px 50px;
	}
	#coach_research_inner h2 {
		font-size: 20px;
		text-align: center;
		margin: 10px auto;
	}
	#coach_research_inner form {
		height: calc(100% - 140px);
	}
	#coach_research .c_date_scroll {
		width: 95%;
	}
	#coach_research .sf-field-submit {
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 10;
		width: 100%;
		margin: 0;
		background: #ffffff;
		box-shadow: var(--swl-img_shadow);
	}
	#coach_research .sf-field-submit input {
		max-width: 400px;
	}
}




/***** コーチ詳細ページ *****/
.single-coach .p-breadcrumb__item:nth-child(2)::after {
	content: none;
}
.single-coach .p-breadcrumb__item:nth-child(3),
.single-coach .p-breadcrumb__item:nth-child(4) {
	display: none;
}

.coach_container {
	position: relative;
	display: block;
	padding: 25px;
	margin-top: 40px;
	margin-bottom: 40px;
	border-radius: 10px;
	box-shadow: var(--swl-img_shadow);
	color: inherit;
	transition: .3s;
}
.coach_container a:not(.coach_wrap) {
	position: relative;
	z-index: 1;
	color: inherit;
}
.coach_wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.coach_table table {
	width: 100%;
}
.coach_table table * {
	text-align: left;
}
.coach_table table th,
.coach_table table td {
	font-size: 14px;
	padding: 8px;
	border-bottom: 1px solid #f5f5f5;
}
.coach_table table th {
	width: 130px;
	padding-left: 10px;
	font-size: 0.9rem;
	background: #eeeeee;
	border-bottom: 1px solid #e1e1e1;
}
.coach_table table th span {
	font-size: 0.7em;
}
.coach_table table tr:first-child th {
	border-top: 1px solid #e1e1e1;
}
.coach_table table tr:first-child td {
	border-top: 1px solid #f5f5f5;
}
.coach_container h4 {
	position: relative;
	margin: 24px 0 5px;
	padding-left: 25px;
	border-left: none;
	font-size: 1em;
	color: var(--color_htag);
}
.coach_container h4::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png) no-repeat center;
	background-size: contain;
}
.coach_top {
	display: flex;
	justify-content: space-between;
}
.coach_top a {
	transition: .3s;
}
.coach_top a:hover {
	color: #7ebead;
}
.coach_name {
	display: flex;
	margin-bottom: 20px;
	line-height: 35px;
}
.coach_name a {
	display: block;
	width: 70px;
	background: var(--color_main);
	color: white !important;
	font-weight: bold;
	border-radius: 5px;
	text-align: center;
}
.coach_name a:hover {
	opacity: .8;
	color: white;
}
.coach_name a.pro-coach,
.relatedc_name .pro-coach,
.coach-slider_name .pro-coach {
	background: linear-gradient(
		70deg,
		#8e1828 44%, /* font color */
		#ffffff 50%,
		#8e1828 56% /* font color */
	);
	background-size: 500% 100%;
	animation: shine 2s infinite;
}
.coach_name a.soc-coach,
.relatedc_name .soc-coach,
.coach-slider_name .soc-coach {
	background: #001763;
}
.coach_name a.univ-coach,
.relatedc_name .univ-coach,
.coach-slider_name .univ-coach {
	background: var(--color_main);
}

@keyframes shine {
	0% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}
.coach_name p {
	font-size: 1.5rem;
	font-weight: bold;
}
.coach_name a {
	margin-right: 12px;
}
.coach_head {
	flex-basis: 30%;
}
.coach_img {
	position: relative;
	display: block;
	height: 0;
	padding-top: 75%;
	border-radius: 6px;
	overflow: hidden;
}
.coach_img img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	object-fit: cover;
	width: 100%;
	height: 100%;
	transition: .5s;
}
.coach_info {
	flex-basis: 30%;
}
.coach_info table {
	width: 100%;
}
.coach_bottom {
	margin-top: 20px;
}
#coach_calender p,
.coach_bottom p {
	font-size: 14px;
}
.coach_bottom a,
.coach_bottom span {
	display: inline-block;
	padding: 4px 10px;
	margin: 3px;
	background: #f7f7f7;
	color: #333;
	border-radius: 10px;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 0;
	transition: box-shadow .25s;
}
.coach_bottom a:hover,
.coach_bottom span:hover {
	animation: flash 1s;
  box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.coach_bottom table th {
	width: 160px;
}
.coach_fee span {
	font-size: 0.9em;
}

.coach_topbtnarea {
	display: block;
}
.coach_back {
	display: block;
	/* background: linear-gradient(180deg, #30D582 0%, #009542 100%); */
	 background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	border: none;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 20px 0;
	padding-right: 20px;
	margin-right: 0;
}
.coach_back::before {
	position: static;
	margin-right: 10px;
	font-size: 20px;
}
.coach_fav {
	margin-top: 30px;
	margin-left: auto;
	margin-right: 0;
}

@media (max-width: 959px) {
	.coach_container h4 {
		font-size: 14px;
		padding-left: 25px;
	}
	.coach_container h4::before {
		width: 20px;
		height: 20px;
	}
	.coach_top h4 {
		margin-top: 0;
	}
	.coach_info {
		flex-basis: 33%;
		margin-top: 55px;
	}
	.coach_head {
		flex-basis: 25%;
		padding-top: 55px;
	}
	.coach_name {
		position: absolute;
		top: 25px;
		left: 25px;
	}
	.coach_name p {
		font-size: 18px;
	}
	.coach_name a {
		font-size: 15px;
	}
	.coach_img {
		max-width: 300px;
		padding-top: 100%;
		border-radius: 8px;
	}
	.coach_table table th {
		padding: 0.5vw 1vw;
		font-size: 1.5vw;
		width: 12vw;
	}
	.coach_table table td {
		padding: 0.5vw 1vw;
		font-size: 1.5vw;
	}
	.coach_bottom a,
	.coach_bottom span {
		font-size: 13px;
	}
	.coach_bottom table th,
	.coach_bottom table td {
		display: block;
		width: 100%;
		max-width: none;
		background: none;
		border: none !important;
		padding: 0;
	}
	.coach_bottom table th {
		padding-left: 5px;
	}
	.coach_bottom table th::before {
		content: "";
		position: relative;
		top: calc(50% - 0.5em);
		left: -3px;
		display: inline-block;
		width: 1em;
		height: 1em;
		background: radial-gradient(white 40%,#ff8c00 50%);
		border-radius: 1em;
	}
	.coach_bottom table td {
		margin-bottom: 10px;
	}
}


@media (max-width: 599px) {
	.coach_container {
		margin: 0;
		padding: 10px 10px 15px;
		border-radius: 0;
		border-top: 1px solid #dddddd;
		box-shadow: none;
	}
	.coach_container:last-child {
		border-bottom: 1px solid #dddddd;
	}
	.coach_topbtnarea {
		padding: 0 10px;
	}
	.coach_back,
	.coach_fav {
		padding-right: 12px;
    	padding-left: 30px;
		font-size: 12px;
		line-height: 25px;
	}
	.coach_back {
		font-size: 14px;
		padding: 10px 0;
	}
	.coach_back::before {
		top: calc(50% - 8px);
		left: 10px;
		font-size: 16px;
	}
	.coach_fav {
		margin-top: 20px;
	}
	.coach_fav::before {
		top: calc(50% - 6px);
		left: 12px;
		font-size: 12px;
	}
	.coach_container h4 {
		font-size: 13px;
		padding-left: 20px;
	}
	.coach_container h4::before {
		width: 18px;
   	 	height: 18px;
	}
	.coach_head {
		padding-top: 35px;
	}
	.coach_img {
		border-radius: 5px;
	}
	.coach_name {
		top: 10px;
		left: 10px;
		line-height: 28px;
	}
	.coach_name a {
		width: 50px;
		font-size: 12px;
	}
	.coach_name p {
		font-size: 14px;
	}
	.coach_info {
		flex-basis: 35%;
		margin-top: 35px;
	}
	.coach_info table th,
	.coach_info table td {
		font-size: 2vw;
	}
	.coach_bottom p,
	#coach_calender p {
		font-size: 12px;
	}
	.coach_info table th {
		width: 14vw;
	}
	.coach_bottom table th {
		font-size: 10px;
	}
	.coach_bottom h4,
	#coach_calender h4 {
		margin-top: 15px;
	}
	.coach_bottom {
		margin-top: 5px;
	}
	.coach_bottom a,
	.coach_bottom span {
		margin: 2px;
		padding: 4px 5px;
		font-size: 1.8vw;
	}
}

@media (max-width: 499px) {
	.coach_container h4 {
		font-size: 3vw;
	}
}





/*** コーチ絞り込みフォーム ***/
.sf-fukidashi {
	margin-top: 80px;
	padding: 20px 40px;
	font-size: 1.2em;
	border-radius: 8px;
}
@media (max-width: 599px) {
	.sf-fukidashi {
		margin-top: 20px;
		margin-bottom: 25px !important;
		padding: 15px 30px;
		font-size: 15px;
	}
}

.searchandfilter {
	max-width: 900px;
	margin: auto;
}
.searchandfilter .c_obj-notice,
.clist_none > p {
	display: block;
	margin: 30px 0 10px;
	padding: 30px;
	border-radius: 10px;
	box-shadow: var(--swl-img_shadow);
	font-weight: bold;
	text-align: center;
}
.searchandfilter h4 {
	padding: 0 10px;
	margin-bottom: 10px;
}
.sfh4_and,
.sfh4_or {
	display: block;
	width: 65px;
	margin-top: 5px;
	padding: 2px;
	border: 1px solid #aaaaaa;
	border-radius: 4px;
	background: #aaaaaa;
	color: white;
	font-size: 12px;
	text-align: center;
}
.sfh4_or {
	background: transparent;
	color: #aaaaaa;
}
.sfh4_ex {
	display: block;
	max-width: 900px;
	margin: 0 auto 10px;
	font-size: 0.9em;
}
.sfh4_ex p {
	display: inline-block;
	margin-right: 30px;
}
.sfh4_ex span {
	display: inline-block;
	margin-right: 10px;
	font-weight: bold;
}

.searchandfilter ul {
	padding: 0;
}
.searchandfilter ul.children {
	display: none;
	margin-top: 0;
}
.searchandfilter .check-all {
	display: block;
	width: 85px;
	background: var(--color_htag);
	color: white;
	font-size: 12px;
	margin-bottom: 5px;
	padding: 0;
	text-align: center;
	border: 1px solid  var(--color_htag);
	border-radius: 5px;
	cursor: pointer;
	line-height: 2.2;
	user-select: none;
}
.searchandfilter .check-all.remove-all {
	background: transparent;
	color: var(--color_htag);
}
.searchandfilter .check-all::after {
	content: "選択";
}
.searchandfilter .check-all.remove-all::after {
	content: "解除";
}

.searchandfilter li.has-children {
	position: relative;
	border-bottom: 1px solid #eeeeee;
	padding: 0 5px;
	line-height: 2.5;
}
.searchandfilter li.has-children:last-child {
	border-bottom: none;
}
.searchandfilter li.has-children label {
	cursor: pointer;
}
.searchandfilter li.has-children > label {
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 0;
	font-weight: bold;
}
.searchandfilter li.has-children::before {
	content: "\2b";
	position: absolute;
	top: 0;
	right: 2px;
	font-size: 1em;
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
}
.searchandfilter li.has-children.open::before {
	content: "\f068";
}

.searchandfilter > ul > li {
	position: relative;
	display: flex;
	padding: 0;
}
.searchandfilter h4 {
	border: none;
	flex-basis: 200px;
	margin: 0;
	padding: 20px;
	background: #eeeeee;
	border-bottom: 1px solid #e1e1e1;
	font-size: 0.9rem;
}
.searchandfilter > ul > li:first-child h4 {
	border-top: 1px solid #e1e1e1;
}
.searchandfilter > ul > li > ul {
	flex: 1;
	padding: 15px 30px;
	border-bottom: 1px solid #eeeeee;
}
.searchandfilter > ul > li:first-child > ul {
	border-top: 1px solid #eeeeee;
}
.searchandfilter ul li ul li {
	padding: 3px 0;
}
.searchandfilter ul li ul li ul {
	padding-left: 0;
	margin: 10px 0;
}
.searchandfilter li.sf-field-submit.fixed {
	position: fixed;
	bottom: 0;
	left: calc(50% - 300px);
	z-index: 100;
	width: 600px;
	padding: 20px 120px;
	justify-content: space-between;
	background: #ffffffee;
	border-radius: 20px 20px 0 0;
	box-shadow: var(--swl-img_shadow);
}
.searchandfilter li.sf-field-submit:not(.fixed) {
	display: table;
	margin: 30px auto;
}
.searchandfilter input[type="submit"] {
	width: 400px;
	margin: 0;
	padding: 10px 45px 10px 50px;
	font-size: 18px;
	letter-spacing: 5px;
}
.searchandfilter input[type="checkbox"] + label {
	padding-left: 28px !important;
}
.searchandfilter .level-detail {
	display: block;
	padding: 20px;
	margin: 5px auto 20px;
	border-radius: 8px;
	box-shadow: var(--swl-img_shadow);
	font-size: 14px;
}
.searchandfilter .level-detail b {
	display: block;
	margin-bottom: 8px;
}
.sf-field-taxonomy-c_clevel li span {
	display: inline-block;
	font-size: 0.8em;
	padding-left: 1em;
}
.sf-field-taxonomy-c_fee p {
	font-weight: bold;
	margin-bottom: 5px !important;
}

	
@media (max-width: 959px) {
	.searchandfilter * {
		font-size: 14px;
	}
	.searchandfilter .c_obj-notice,
	.clist_none > p {
		margin-top: 0;
		padding: 20px;
	}
	.searchandfilter h4 {
		position: relative;
		font-size: 16px;
		margin-bottom: 5px;
		padding: 6px 10px;
		background: transparent;
		border: none !important;
		border-bottom: solid 2px #dddddd !important;
	}
	.searchandfilter h4::before {
		content: "";
		position: absolute;
		bottom: -2px;
		left: 0;
		display:block;
		width: 100px;
		height: 2px;
		background: #ff9922;
	}
	.searchandfilter h4 br {
		display: none !important;
	}
	.sfh4_ex {
		margin-bottom: 20px;
	}
	.sfh4_ex p {
		font-size: 12px;
		margin-bottom: 5px;
	}
	.sfh4_ex span {
		position: static;
	}
	.sfh4_and, .sfh4_or {
		position: relative;
		top: -3px;
		left: 10px;
		display: inline-block;
		font-size: 10px;
		width: 55px;
	}
	.searchandfilter > ul > li {
		display: block;

		padding: 10px 0 20px;
	}
	.searchandfilter > ul > li > ul {
		border: none;
		padding: 10px 0;
	}
	.searchandfilter > ul > li:first-child > ul {
		border: none;
	}
	.searchandfilter > ul > li:last-child {
		border: none;
	}
	.searchandfilter > ul > li:last-child::before {
		content: none;
	}
	#coach_research .searchandfilter li.sf-field-submit.fixed {
		display: block;
		padding-right: 190px;
	}
	.searchandfilter input[type="submit"] {
		margin-top: 0;
		padding: 8px 35px 8px 40px;
		font-size: 16px;
	}
	.searchandfilter li.sf-field-submit.fixed {
		left: 0;
		width: 100%;
		padding: 15px 10px;
		background: white;
		box-shadow: 0 0 5px 5px #00000011;
		border-radius: 0;
	}
	.searchandfilter input[type="submit"] {
		width: 100% !important;
		max-width: 300px;
		margin: auto;
		padding: 5px 0;
		padding-left: 5px;
		font-size: 15px;
		line-height: 37px;
	}
	.searchandfilter li.sf-field-submit:not(.fixed) {
		display: block;
	}
}

@media (min-width: 600px) {
	.sf-field-taxonomy-c_obj br {
		display: none;
	}
	.sf-field-taxonomy-c_obj h4 br {
		display: block;
	}
}

@media (max-width: 599px) {
	.searchandfilter h4 {
		font-size: 14px;
		padding: 5px 5px;
		margin-bottom: 0;
	}
	.searchandfilter > ul > li {
		padding-bottom: 10px;
	}
	.searchandfilter > ul > li > ul {
		padding: 10px 0;
	}
	.searchandfilter .level-detail {
		padding: 15px;
	}
	.sf-field-taxonomy-c_clevel li span {
		display: block;
		margin-top: -5px;
		padding-left: 0;
	}
}

@media (min-width: 499px) {
	.searchandfilter .c_obj-notice br {
		display: none;
	}
}



/* ラジオボタンの設定 */
.searchandfilter li[data-sf-field-input-type="radio"] ul,
#ccal_login-area .div_radio {
	display: flex;
	width: 100%;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li,
#ccal_login-area .div_radio label {
	flex: 1;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul input,
#ccal_login-area .div_radio input {
	display: none;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li label,
#ccal_login-area .div_radio label {
	width: 100%;
	padding: 10px 5px !important;
	background: linear-gradient(transparent 80%,#eaeaea 100%);
	border: 1px solid #dddddd;
	border-left: none;
	text-align: center;
	font-weight: bold;
	font-size: 0.9rem;
	cursor: pointer;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li label:hover,
#ccal_login-area .div_radio label:hover {
	background: linear-gradient(#f5f5f5 80%,#eaeaea 100%);
	color: inherit;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li:first-child label,
#ccal_login-area .div_radio label:nth-child(2) {
	border-left: 1px solid #dddddd;
	border-radius: 6px 0 0 6px;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li:last-child label,
#ccal_login-area .div_radio label:nth-child(5) {
	border-radius: 0 6px 6px 0;
}
.searchandfilter li[data-sf-field-input-type="radio"] ul li input:checked + label,
#ccal_login-area .div_radio input:checked + label {
	color: var(--color_htag);
	background: linear-gradient(#ff8c0022 80%,#ff8c0022 100%);
}

@media (max-width: 959px) {
	.searchandfilter li[data-sf-field-input-type="radio"] ul li label, #ccal_login-area .div_radio label {
		font-size: 13px;
	}
}

@media (max-width: 599px) {
	.searchandfilter li[data-sf-field-input-type="radio"] ul li label, #ccal_login-area .div_radio label {
		font-size: 12px;
		line-height: 1.3;
	}
}


/* 日付カレンダーの設定 */
table.weekly_schedule td, table.weekly_schedule th.times {
	border-color: #ddd #ccc;
}
.list_pagenavi .list_datenavi {
	width: 100% !important;
}
.list_pagenavi .prev_page,
.list_pagenavi .next_page {
	display: none;
}
.sf-field-taxonomy-c_date div {
	flex: 1;
	padding: 30px;
	border-bottom: 1px solid #eeeeee;
}
.sf-field-taxonomy-c_date li label {
	display: none !important;
}
.sf-field-taxonomy-c_date ul {
	display: flex;
	height: 248px;
	flex-direction: column;
	align-items: stretch;
  flex-wrap: wrap;
}
.sf-field-taxonomy-c_date ul li {
	flex-basis: 65px;
	border-bottom: 1px solid #aaaaaa;
	border-right: 1px solid #aaaaaa;
	text-align: center;
	padding: 0 !important;
	overflow: hidden;
}
.sf-field-taxonomy-c_date ul li.date-all {
	flex-basis: 50px;
}

.sf-field-taxonomy-c_date ul li label,
.sf-field-taxonomy-c_date ul li input {
	display: none;
}
.sf-field-taxonomy-c_date li.date-all div,
.sf-field-taxonomy-c_date li.time-all div {
	display: table;
	width: 90%;
	margin: 8px auto 0;
	padding: 7px 8px;
	border: 1px solid #dddddd;
	background: linear-gradient(transparent 80%,#eaeaea 100%);
	border-radius: 5px;
	font-size: 13px;
	line-height: 1.3;
	cursor: pointer;
}
.sf-field-taxonomy-c_date li.date-all div {
	width: 60%;
}
.sf-field-taxonomy-c_date li.date-all div.remove,
.sf-field-taxonomy-c_date li.time-all div.remove {
	background: linear-gradient(#f5f5f5 80%,transparent 100%);
}
.sf-field-taxonomy-c_date li.time-all div span {
	display: block;
	font-size: 0.9em;
}
.sf-field-taxonomy-c_date ul li {
	position: relative;
	cursor: pointer;
}
.sf-field-taxonomy-c_date ul li::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: url(https://manabiright.com/wp-content/uploads/2023/03/cropped_logo_single_gray.png) no-repeat center;
	background-size: auto 60%;
}
.sf-field-taxonomy-c_date ul li.checked::before {
	background-image: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png);
}
.sf-field-taxonomy-c_date li.date-all,
.sf-field-taxonomy-c_date li.time-all {
	cursor: normal;
}
.sf-field-taxonomy-c_date li.date-all::before,
.sf-field-taxonomy-c_date li.time-all::before {
	content: none;
}

@media (max-width: 959px) {
	.sf-field-taxonomy-c_date div {
		padding: 20px 0 5px;
		margin-bottom: 10px;
		border: none;
		overflow-x: auto;
	}
	.sf-field-taxonomy-c_date ul {
		min-width: 500px;
	}
}

@media (min-width: 560px) {
	.c_date_scroll,
	.lp_scroll {
		display: none !important;
	}	
}

@media (max-width: 599px) {
	.sf-field-taxonomy-c_date li.date-all div, .sf-field-taxonomy-c_date li.time-all div {
		font-size: 12px;
	}
	.sf-field-taxonomy-c_date ul li {
		flex-basis: 63px;
	}
	.sf-field-taxonomy-c_date ul li::before {
		background-size: auto 50%;
	}
	.c_date_scroll,
	.lp_scroll {
		position: relative;
		display: block !important;
		text-align: center;
		margin: 20px auto !important;
		padding-top: 8px;
		border-top: 2px solid #ff9922;
		color: #555555;
	}
	.lp_scroll {
		width: calc(100% - 20px);
		margin: auto;
	}
	.c_date_scroll::before,
	.c_date_scroll::after,
	.lp_scroll::before,
	.lp_scroll::after {
		content: "";
		position: absolute;
		top: -7px;
		display: block;
		border: 8px solid #ff9922;
		border-top: 6px solid transparent;
		border-bottom: 6px solid transparent;
	}
	.c_date_scroll::before,
	.lp_scroll::before {
		left: -5px;
		border-left: none;
	}
	.c_date_scroll::after,
	.lp_scroll::after {
		right: -5px;
		border-right: none;
	}
}




/* 予約カレンダー */
#coach_calender .coach_calender-inner {
	width: 100%;
	overflow: auto;
	margin: 10px auto 15px;
}
#coach_calender table {
	width: 100%;
	min-width: 810px;
	table-layout: fixed;
}
#coach_calender .col-1 {
	width: 70px;
}
#coach_calender th,
#coach_calender td {
	font-size: 12px;
	padding: 8px;
	font-weight: bold;
	border-width: 1px 1px 0;
	border-style: solid;
	text-align: center;
	line-height: 1.3em;
}
#coach_calender th {
	color: #555555;
	background: #f9f9f9;
	border-color: #cccccc;
}
#coach_calender td.col-1 {
	background: #f9f9f9;
}
#coach_calender td {
	border-color: #eeeeee #cccccc;
}
#coach_calender tr:nth-child(1) td {
	border-top-color: #cccccc;
}
#coach_calender tr:last-child td {
	border-bottom: solid 1px #cccccc;
}
#coach_calender table td.open {
	background: #ff8c0022;
	padding: 0 !important;
	transition: .3s;
}
#coach_calender table td.open:hover {
	background: #ff8c0011
}
#coach_calender table td.you {
	background: #ff8c00;
	color: white;
}
#coach_calender table a {
	display: block;
	padding: 8px !important;
	color: #ff8c00 !important;
	font-weight: bold;
	text-align: center;
}
#coach_calender thead .sat {
	background: #e0ecf5;
}
#coach_calender thead .sun {
	background: #f9e5e5;
}
#coach_calender .coach_calender-btn {
	position: relative;
	display: table;
	width: auto;
	background: linear-gradient(180deg, #FFAC22 0%, #FF6C00 100%);
	color: white;
	font-size: 16px;
	font-weight: bold;
	margin: 20px auto 5px;
	padding: 0 50px;
	line-height: 50px;
	border: none;
	border-radius: 5px;
	transition: .3s;
	cursor: pointer;
}
#coach_calender .coach_calender-hover {
	position: fixed;
	bottom: 20%;
	left: calc(50% - 200px);
	z-index: 100;
	display: none;
	width: 440px;
	padding: 30px 0;
	background: #000000aa;
	color: white;
	font-size: 15px;
	text-align: center;
	border-radius: 10px;
	transition: .3s;
}
#coach_calender .coach_calender-inner.active {
	animation: calender-flash 0.5s 3 forwards;
}
#coach_calender .col-1 {
	position: sticky;
	left: 0;
	z-index: 10;
	border-left: none;
	border-right: none;
}
#coach_calender .col-1:before {
	content: "" !important;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 1px;
	background: #cccccc;
}
#coach_calender .col-1:after {
	content: "" !important;
	position: absolute;
	top: 0;
	right: -1px;
	bottom: 0;
	width: 1px;
	background: #cccccc;
}

@keyframes calender-flash {
	30% {
		box-shadow: 0 0 10px 2px transparent;
	}
	100% {
		box-shadow: 0 0 10px 2px #ff8c00;
	}
}


@media (max-width: 959px) {
	#coach_calender tr *,
#coach_schedule tr * {
		padding: 7px !important;
	}
	#coach_calender table th.times,
#coach_schedule th.times {
		min-width: 60px;
	}
}

@media (min-width: 600px) {
	#coach_calender t:first-child td::first-child br {
		display: none;
	}
}

@media (max-width: 599px) {
	#coach_calender table {
		min-width: 600px;
		table-layout: fixed;
	}
	#coach_calender .col-1 {
		width: 50px;
	}
	#coach_calender th,
	#coach_calender td {
		font-size: 10px;
		padding: 6px 0 !important
	}
}

@media (max-width: 499px) {
	#coach_calender .coach_calender-btn {
		width: 100%;
		padding: 0;
		text-align: center;
	}
	#coach_calender .coach_calender-hover {
		left: calc(50% - 170px);
		width: 340px;
		padding: 20px 0;
		font-size: 12px;
	}
}

@media (max-width: 399px) {
	#coach_calender .coach_calender-hover {
		left: 10px;
		width: calc(100% - 20px);
		padding: 20px 10px;
	}
}




/* この記事を書いたライター */
.winfo_box {
	margin-top: 15px;
	padding: 20px;
}
.winfo_box .coach_name {
	margin-bottom: 12px;
}
.winfo_col {
	display: flex;
}
.winfo_col a.coach_img {
	flex-basis: 180px;
	padding-top: 180px;
}
.winfo-title {
	font-weight: bold;
	margin-bottom: 5px;
}
.winfo_info {
	flex: 1;
	padding-left: 15px;
}
.winfo_info .relatedc_info {
	padding-left: 0;
	padding-right: 260px;
}
.winfo_info .relatedc_info p {
	font-size: 13px;
}
.winfo_info .relatedc_career::before {
	font-size: 12px;
}
.winfo_box a.coach_link {
	position: absolute;
	bottom: 20px;
	right: 20px;
	margin-right: 0;
}

@media(max-width: 1199px) {
	.winfo_info .relatedc_info {
		padding-right: 0;
	}
	.winfo_box a.coach_link {
		position: static;
	}
}

@media(max-width: 959px) {
	.winfo_box .coach_name {
		position: static;
	}
	.winfo_box a.coach_link {
		position: absolute;
	}
}

@media(max-width: 859px) {
	.winfo_info .relatedc_info {
		padding-right: 0;
	}
	.winfo_box a.coach_link {
		position: static;
		margin-right: auto;
	}
}

@media(max-width: 599px) {
	.winfo_box {
		width: 100vw;
		padding: 15px 10px;
		margin-bottom: 20px;
		margin-left: calc(50% - 50vw);
		border-bottom: 1px solid #dddddd;
	}
	.winfo_box a.coach_link {
		width: 100%;
		margin-top: 10px;
	}
	.winfo_col a.coach_img {
		flex-basis: 100px;
    padding-top: 100px;
	}
	.winfo-title {
		font-size: 14px;
		margin-bottom: 2px;
	}
	.winfo_box .coach_name {
		margin-bottom: 8px;
	}
}





/* 体験までの流れ */
.nagare-box {
	margin: 0 auto 50px;
}
.nagare-title {
	position: relative;
	font-weight: bold;
	margin-bottom: 0 !important;
	margin-left: 9px;
	padding-left: 20px;
	line-height: 20px !important;
}
.nagare-title::before {
	content: "";
	position: absolute;
	left: -9px;
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 15px;
	background: #FF8C00;
}
.nagare-title.done::before {
	content: "\f058";
	color: #aaaaaa;
	background: none;
	font-size: 20px;
	font-family: "Font Awesome 6 Free";
}
.nagare-text {
	display: block;
	margin: 15px 0;
	margin-left: 9px;
	padding: 0 0 25px 22px;
	border-left: solid 2px #FF8C00;
}
.nagare-text:last-child {
	border-left: solid 2px transparent !important;
}
.nagare-text.done {
	border-left-color: #aaaaaa !important;
}

@media (max-width: 700px) {
	.nagare-title {
		font-size: 1.0em;
		margin-left: 10px;
		padding-left: 18px;
		line-height: 1.3 !important;
	}
	.nagare-text {
		margin-left: 10px;
		padding: 8px 0 20px 20px;
	}
}
@media (max-width: 599px) {
	.nagare-title::before {
		left: -9px;
		width: 18px;
		height: 18px;
	}
	.nagare-title.done::before {
		font-size: 18px;
	}
	.nagare-text {
		margin: 8px 0 8px 9px !important;
		padding: 0 0 15px 15px;
		border-left: solid 2px #FF8C00;
	}
}
@media (max-width: 499px) {
	.nagare-box {
		margin-bottom: 20px;
	}
}



/*** トップページ ***/
.lp p {
	position: relative;
	z-index: 2;
	display: block;
	font-size: 1.0rem;
	line-height: 2;
}
.lp .lp-block {
	width: 100vw;
	padding: 80px 0;
	margin-left: calc(50% - 50vw);
	margin-bottom: 0;
}
.lp .lp-block .wp-block-group__inner-container {
	max-width: 1200px;
	margin: auto;
}
.lp .lp-block1000 .wp-block-group__inner-container {
	max-width: 1000px;
	margin: auto;
}
.lp .lp-block.is-style-bg_stripe {
	background-image: linear-gradient(-45deg,transparent 25%,#fff6ee 25%,#fff6ee 50%,transparent 50%,transparent 75%,#fff6ee 75%,#fff6ee);
}
.lp .thin .wp-block-group__inner-container {
	max-width: 700px;
}

.lp h2 {
	position: relative;
	display: table;
	width: auto;
	max-width: calc(100% - 20px);
	padding: 10px 40px;
	margin: 50px auto 50px !important;
	border: none;
	border-bottom: 5px solid;
	border-radius: 25px;
	font-size: 2rem;
	text-align: center;
}
.lp h2::before,
.lp h2::after {
	position: absolute;
	top: 100%;
	left: 70%;
	content: "";
	height: 0;
	width: 0;
}
.lp .lp-block.has-background h2::after {
	border-top-color: #f9f9f9;
}
.lp h2::before {
	border: 16px solid;
	border-color: transparent;
	border-top-color: #ff8c00;
}

.lp h2::after {
	border: 10px solid;
	border-color: transparent;
	border-top-color: white;
	margin-left: 6px;
}

.lp h3 {
	position: relative;
	border: none;
	font-size: 2.0em;
	padding-left: 0;
}
.lp h3::before {
	content: "";
	bottom: -10px;
	left: calc(50% - 50px);
	display: block;
	width: 100px;
	height: 2px;
	background: #ff8c00;
}

.lp h5 {
	display: table;
	width: auto;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 3px 20px;
	margin: 0;
	background: white;
	border: 3px solid #FF8C00;
	border-radius: 10px;
	text-align: center;
}

@media (max-width: 959px) {
	.lp h2 {
		font-size: 3.3vw;
		margin: 40px auto !important;
		padding: 10px 40px;
		border-radius: 20px;	
	}
	.lp h3 {
		font-size: 3vw !important;	
	}
	.lp h5 {
		font-size: 2.2vw;
		border: 0.4vw solid #FF8C00;
		border-radius: 1vw;
		line-height: 1.8;
	}
	.lp .lp-block {
		padding: 60px 0;
	}
	lp p {
		font-size: 15px;
	}
}


@media(max-width: 599px) {
	.lp p {
		font-size: 14px;
	}
	.lp .lp-block {
		padding: 30px 12px;
	}
	.lp h2 {
		font-size: 4.5vw;
		margin: 30px auto !important;
		padding: 8px 15px;
		border-bottom: 3px solid;
		border-radius: 15px;
	}
	.lp h2:before {
		border: 12px solid;
		border-color: transparent;
		border-top-color: #ff8c00;
	}
	.lp h2:after {
		border: 8px solid;
		border-color: transparent;
		border-top-color: white;
		margin-left: 4px;
	}
	.lp h3 {
		font-size: 4vw !important;
	}
	.lp h3.slider-lead {
		margin-top: 0;
	}
	.lp h5 {
		font-size: 13px !important;
		padding: 0 10px;
		border-width: 2px !important;
		border-radius: 5px;
	}
}



/* 最先端のオンライン個別指導です */
.lp .saisentan1 {
	margin: 50px 0 0 !important;
	font-family: 'corporate-logo', sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
}
.lp .saisentan1 strong {
	font-family: inherit;
}
.lp .saisentan2 {
	margin: 0 0 50px !important;
	font-family: 'corporate-logo', sans-serif;
	font-size: 2.4rem;
	line-height: 1.5;
}
.lp .saisentan2 strong {
	color: #ff8c00;
	font-size: 1.5em;
	font-family: inherit;
	background: none;
}
.lp .saisentan-kaiketsu {
	position: relative;
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: 80px auto 80px !important;
	padding: 80px 0 40px;
	background: white;
	border-radius: 12px;
}
.lp .saisentan-kaiketsu .wp-block-image {
	position: absolute;
	top: -60px;
	left: calc(50% - 60px);
	width: 120px;
	padding: 30px;
	background: white;
	border-radius: 90px;
}
.lp .saisentan-kaiketsu .wp-block-image img {
	display: block;
	width: 80px;
	margin: -5px auto 0;
}
.lp .saisentan-list {
	display: table;
	width: auto;
	margin: auto;
}
.lp .saisentan-nayami {
	position: relative;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 1.5;
}
.lp .saisentan-nayami::before,
.lp .saisentan-nayami::after {
	content: "";
	position: absolute;
	top: 15px;
	width: 80px;
	height: 2px;
	background: #ff8c00;
}
.lp .saisentan-nayami::before {
	left: -100px;
}
.lp .saisentan-nayami::after {
	right: -100px;
}
.lp .saisentan-check {
	position: relative;
	margin: 0 0 10px;
	padding-left: 1.5em;
}
.lp .saisentan-check::before {
	content: "\f058";
	position: absolute;
	top: 0;
	left: 0;
	font-family: "Font Awesome 6 Free";
	margin-right: 5px;
}
.lp .saisentan-bottom {
	font-size: 1.3rem;
	margin: 40px 0 20px;
	font-weight: bold;
	line-height: 1.8;
}
.lp .saisentan-bottom strong {
	color: #ff8c00;
	font-size: 1.8rem;
	font-weight: bold !important;
	background: none;
}
.lp .saisentan-bottom strong::before {
	content: none;
}

@media (max-width: 959px) {
	.lp .saisentan-kaiketsu {
		padding: 60px 20px 40px;
	}
	.lp .saisentan-nayami::before,
	.lp .saisentan-nayami::after {
		content: none;
	}
}

@media (min-width: 600px) {
	.lp .saisentan-nayami br {
		display: none;
	}
	.lp .saisentan1 br {
		display: none;
	}
}

@media (max-width: 599px) {
	.lp .saisentan1 {
		margin-top: 40px !important;
		font-size: 4vw;
	}
	.lp .saisentan2 {
		font-size: 4.5vw;
	}
	.lp .saisentan2 strong {
		font-size: 1.4em;
	}
	.lp .saisentan-kaiketsu .wp-block-image {
		top: -50px;
		left: calc(50% - 50px);
		width: 100px;
	}
	.lp .saisentan-kaiketsu {
		margin-bottom: 50px;
		padding: 40px 20px 30px;
	}
	.lp .saisentan-nayami {
		font-size: 5vw;
		margin-bottom: 30px;
	}
	.lp .saisentan-check {
		font-size: 15px;
	}
	.lp .saisentan-bottom {
		font-size: 16px;
		margin: 20px auto;
	}
	.lp .saisentan-bottom strong {
		font-size: 20px;
	}
}


/* コーチングが最適 */
.lp .saiteki {
	width: calc(100% - 40px);
	max-width: 800px;
	margin: auto;
	flex-direction: row-reverse;
}
.lp .saiteki img {
	display: block;
	width: 100%;
}

@media(max-width: 781px) {
	.lp .saiteki img {
		width: 50%;
		max-width: 300px;
		margin: auto;
	}
}

@media (max-width: 599px) {
	.lp .saiteki p {
		text-align: center;
	}
}

/* どうして必要なの */
.lp .whyneed {
	width: calc(100% - 40px);
	max-width: 900px;
	margin: 0 auto 30px;
}
.lp .whyneed2 {
	flex-direction: row-reverse;
	margin-bottom: 80px;
}
	.lp .whyneed .wp-block-column {
	padding: 10px;
}
.lp .whyneed img {
	width: 100%;
}

@media (max-width: 959px) {
	.lp .whyneed p {
		font-size: 1.8vw;
		margin: 20px auto 0;
	}
}

@media (max-width: 781px) {
	.lp .whyneed {
		width: calc(100% - 20px);
		gap: 10px !important;
	}
	.lp .whyneed figure {
		margin-bottom: 0;
	}
	.lp .whyneed div:first-child img {
		display: block;
		width: 50%;
		max-width: 400px;
		margin: auto;
	}
	.lp .whyneed div:nth-child(2) img {
		display: block;
		max-width: 500px;
		margin: auto;
	}
	.lp .whyneed p {
		font-size: 14px;
		text-align: center;
	}
	.lp .whyneed3 p {
		display: table;
		text-align: left;
	}
}

@media (max-width: 599px) {
	.lp .whyneed div:first-child img {
		max-width: 250px;
	}
	.lp .whyneed div:nth-child(2) img {
		max-width: 400px;
	}
	.lp .whyneed p {
		display: block;
		text-align: left;
	}
	.lp .whyneed2 {
		margin-bottom: 20px;
	}
	.lp .whyneed3 {
		gap: 0 !important;
	}
}


/* 具体的に何をする？ */
.lp .cap_box {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto 50px;
	border-radius: 20px !important;
	box-shadow: 0 0 10px 0 #00000033;
}
.lp .cap_box.is-style-onborder_ttl {
	box-shadow: none;
}
.lp .cap_box_ttl {
	font-size: 1.4rem;
	font-weight: bold;
  border: none;
  margin: 0;
  padding: 20px 20px;
}
.lp .cap_box.is-style-onborder_ttl .cap_box_ttl {
	padding: 0 10px 0 25px;
	background: linear-gradient(transparent 50%,white 50%) !important
}
.lp .cap_box_content {
	padding: 40px;
	background: white;
	border-radius: 5px !important;
}
.lp .cap_box h5 {
	position: relative;
	top: -15px;
}

@media (max-width: 959px) {
	.lp .cap_box .wp-block-columns {
		display: block;
		padding: 20px 0 0;
	}
	.lp .cap_box .wp-block-column {
		display: table;
		width: auto;
		margin: auto !important;
	}
	.lp .cap_box .wp-block-column .wp-block-image {
		max-width: 400px;
		margin: auto;
		margin-bottom: 20px !important;
	}
	.lp .cap_box {
		max-width: 600px;
		margin-bottom: 30px;
		border-radius: 15px !important;
	}
}

@media (max-width: 781px) {
	.lp .cap_box .wp-block-columns {
		padding: 0;
	}
}

@media (min-width: 600px) {
	.lp .about_kaiketsu-box .cap_box_ttl span br {
		display: none;
	}
}

@media (max-width: 599px) {
	.lp .cap_box {
		width: 100%;
		margin: 0 auto 20px;
		border-radius: 10px !important;
	}
	.lp .cap_box_ttl {
		font-size: 16px;
		padding: 15px 15px;
	}
	.lp .cap_box_content {
		padding: 30px 20px 25px;
	}
	.lp .cap_box_content p {
		font-size: 14px;
	}
	.lp .cap_box h5 {
		position: relative;
		top: -10px;
	}
	.lp .cap_box .wp-block-column .wp-block-image {
		max-width: 250px;
	}
	.lp .about_kaiketsu-box .cap_box_content .wp-block-image {
		width: 200px;
	}
	.lp .about_kaiketsu-box .cap_box_content p {
		font-size: 12px;
	}
	.lp .about_kaiketsu-box {
		max-width: 400px;
	}
	.lp .about_kaiketsu-box .cap_box_ttl {
		top: 22px;
		padding-left: 15px !important;
	}
	.lp .about_kaiketsu-box .cap_box_ttl span {
		display: table;
		text-align: left;
		line-height: 1.5;
	}
}

/* マッチング */
.lp .match {
	width: calc(100% - 40px);
	max-width: 900px;
	margin: 0 auto 20px;
}
.lp .match2 {
	flex-direction: row-reverse;
	margin-bottom: 100px;
}
.lp .match01,
.lp .match02 {
	display: table;
	width: auto;
	font-size: 1.5rem;
	font-weight: bold;
	padding: 0 20px;
	margin-bottom: 10px !important;
	border: 3px solid #777777;
	border-radius: 10px;
	text-align: center;
}
.lp .match02 {
	border: 3px solid #ff8c00;
}
.lp .match-h5 {
	border: 3px solid #999999;
}
.lp .match p {
	font-size: 1.3rem;
	margin: 20px 0 10px;
}
.lp .match .wp-block-column:nth-child(2) img {
	display: block;
	width: 80%;
	margin: auto;
}

@media (min-width: 782px) {
.lp .match .wp-block-column:first-child h5 {
	display: none;
}
}

@media (max-width: 781px) {
.lp .match {
	display: block;
	max-width: 500px;
}
.lp .match2 {
	margin: 80px auto 50px;
}
.lp .match .wp-block-column:last-child h5 {
	display: none;
}
.lp .match h5 {
	margin-bottom: 20px;
}
.lp .match .wp-block-column:first-child .wp-block-image {
	display: block;
	width: 50%;
	max-width: 250px;
	margin: 0 auto 20px;
}
}

@media (max-width: 550px) {
.lp .match p {
	font-size: 4.5vw;
	margin-top: 10px;
}
.lp .match2 {
	margin-top: 50px;
}
}


/* 体験までの流れ */
.lp .nagare-box {
	width: calc(100% - 10px);
	max-width: 800px;
}



/* よくあるQ&A */
.lp .faq-box {
	width: 100%;
	max-width: 800px;
	margin: 0 auto 80px;
}
.lp .faq-box h5 {
	margin: 50px 0 20px;
}
.lp .faq-box h5:first-child {
	margin-top: 0;
}
.lp .faq_q {
	position: relative;
	border-bottom: 1px solid #00000011;
	padding-right: 25px;
}
.lp .faq_q::before {
	left: 1px;
	box-shadow: 0 0 0 1px #ff8c00;
}
.lp .faq_a::before {
	left: 1px;
}
.lp .faq_q::after {
	content: "\f105";
	position: absolute;
	top: 6px;
	left: auto;
	right: 5px;
	display: block;
	color: #666666;
	font-size: 1.5rem;
	font-family: "Font Awesome 6 Free";
	transform: rotate(90deg);
	transition: .2s;
}
.lp .faq_q.open::after {
	transform: rotate(-90deg);
}

@media (max-width: 700px) {
	.lp .faq-box h5 {
		margin: 30px 0 10px;
	}
}

@media (max-width: 599px) {
	.lp .faq-box {
		margin-bottom: 40px;
	}
	.lp .faq-box h5 {
		margin: 30px 0 10px;
	}
	.lp .swell-block-faq__item {
		margin-top: 10px !important;
	}
	.lp .faq_q,
	.lp .faq_a {
		font-size: 14px;
	}
	.lp .faq_a p {
		font-size: 13px;
		line-height: 1.7;
	}
	.lp .faq_q::after {
		top: 10px;
		font-size: 18px;
	}
}


/* 受講料の比較 */
.fee-img {
	display: block;
	max-width: calc(100% - 20px);
	margin: 0 auto 80px;
}

@media (max-width: 781px) {
	.fee-img {
		margin-bottom: 40px;
	}
}

/* 受講生の体験談 */
.taikendan_box {
	width: 100%;
	overflow-x: auto;
}
.taikendan {
	width: calc(100% - 20px);
	min-width: 1160px;
	margin: 0 auto 80px;
	flex-wrap: wrap !important;
	justify-content: center;
}
.taikendan h5 {
	font-size: 14px;
	padding: 5px 15px;
	margin: 0 auto 20px;
	border-width: 2px;
	border-radius: 8px;
}
.taikendan.wp-block-columns .wp-block-column {
	position: relative;
	flex: 0 !important;
	flex-basis: 350px !important;
	margin-top: 100px !important;
	background: white;
	border-radius: 10px;
	padding: 100px 40px 40px;
}
.taikendan .wp-block-image {
	position: absolute;
	top: -70px;
	left: calc(50% - 70px);
	width: 140px;
	height: 140px;
	border-radius: 100px;
	overflow: hidden;
}
.taikendan .wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.taikendan p {
	margin: 0 0 10px;
	line-height: 1.8;
}
.taikendan p:nth-child(2) {
	font-size: 0.8rem;
	color: #888888;
	margin-bottom: 15px;
}
.taikendan p:nth-child(2) strong {
	font-size: 1.0rem;
	background: transparent;
	margin-right: 1rem;
}
.taikendan p:nth-child(3) {
	display: table;
	margin: 0 auto 20px;
	font-size: 1.2rem;
	font-weight: bold;
	border: 2px solid #FF8C00;
	border-radius: 6px;
	padding: 10px 20px;
}
.taikendan p:nth-child(4) {
	font-size: 0.9rem;
}

@media (max-width: 781px) {
	.taikendan .wp-block-image {
		top: -50px;
		left: calc(50% - 50px);
		width: 100px;
		height: 100px;
		border-radius: 25px;
	}
	.taikendan.wp-block-columns .wp-block-column {
		max-width: 350px;
		padding: 60px 30px 20px;
		border-radius: 60px 60px 5px 5px;
		margin: 70px auto 0 !important;
	}
	.taikendan p:nth-child(2) {
		margin-bottom: 10px;
	}
	.taikendan h5 {
		font-size: 0.9em;
		margin-bottom: 15px;
	}
	.taikendan p {
		font-size: 0.9rem !important;
	}
}

@media (max-width: 599px) {
	.taikendan h5 {
		width: 100%;
		font-size: 13px !important;
		padding: 8px 2px;
	}
	.taikendan_box {
		width: calc(100% - 40px);
		padding-bottom: 20px;
		margin: auto;
	}
	.taikendan {
		width: 240vw;
		min-width: 0;
		margin-bottom: 50px;
	}
	.taikendan .wp-block-column {
		max-width: 350px;
		padding: 70px 20px 20px !important;
	}
	.taikendan p {
		font-size: 13px !important;
	}
}


/* オンライン個別指導の特徴 */
.kobetsu-img {
	display: block;
	width: 80%;
	margin: auto;
}
.kobetsu-inner .wp-block-columns {
	padding-top: 0 !important;
}

@media (max-width: 700px) {
.kobetsu-img {
	width: 50%;
	margin-bottom: 20px;
}
}


/* LP */
.width500 {
	max-width: 500px;
	margin: auto;
}
.width600 {
	max-width: 600px;
	margin: auto;
}
.width700 {
	max-width: 700px;
	margin: auto;
}
.width800 {
	max-width: 800px;
	margin: auto;
}
.width900 {
	max-width: 900px;
	margin: auto;
}
.width1000 {
	max-width: 1000px;
	margin: auto;
}

.lp .point_3kan {
	width: calc(100% - 20px);
	margin: 20px auto 0;
}
.lp .point_3kan-ue {
	font-size: 28px !important;
	font-weight: bold;
	margin-bottom: 0 !important;
	line-height: 1.6 !important;
}
.lp .point_3kan-ue strong {
	font-size: 1.5em;
	background: transparent !important;
}
.lp .reason-col {
	margin: 30px auto;
}
.lp .cap_box .cap_box {
	width: 100%;
	box-shadow: none;
}
.lp .karte-kanri .cap_box_ttl span:first-child {
	position: relative;
	top: -10px;
	background: white;
	padding: 0 10px;
}
.lp .karte-kanri-icon .wp-block-column p:first-child {
	position: relative;
	font-weight: bold;
	padding-left: 35px;
}
.lp .karte-kanri-icon .wp-block-column p:first-child:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	display: block;
	width: 25px;
	height: 25px;
	background-size: contain;
	background-position: center;
}
.lp .karte-kanri-icon .wp-block-column:nth-child(1) p:first-child:before {
	background-image: url(https://manabiright.com/wp-content/uploads/2023/05/icon1.png);
}
.lp .karte-kanri-icon .wp-block-column:nth-child(2) p:first-child:before {
	background-image: url(https://manabiright.com/wp-content/uploads/2023/05/icon2.png);
}
.lp .karte-kanri-icon .wp-block-column:nth-child(3) p:first-child:before {
	background-image: url(https://manabiright.com/wp-content/uploads/2023/05/icon3.png);
}
.lp .caption-2col {
	gap: 0 !important;
	margin-bottom: 30px;
}

@media(max-width: 959px) {
	.lp .resolve-arrow {
		max-width: 150px !important;
		margin-top: 20px !important;
	}
	.lp .karte-kanri span {
		top: -5px;
		left: -20px;
	}
	.lp .karte-kanri-icon .wp-block-column:not(:first-child) p:first-child {
		margin-top: 20px !important;
	}
}

@media (max-width: 781px) {
	.lp .caption-2col {
		margin-bottom: 0;
	}
	.lp .caption-2col .wp-block-column {
		margin-bottom: 20px !important;
	}
}

@media (max-width: 699px) {
	.lp .point_3kan-ue {
		font-size: 3.5vw !important;
	}
}



/* LPチェックリスト */
.lp-checklist {
	position: relative;
	width: calc(100% - 40px);
	background: white;
	padding: 100px;
	margin: 0 auto 50px;
	border-radius: 20px;
}
#main_content .post_content .lp-checklist {
	margin-top: 60px !important;
}
.lp-checklist::before {
	content: "";
	position: absolute;
	top: -60px;
	left: calc(50% - 60px);
	display: block;
	width: 120px;
	height: 120px;
	border-radius: 60px;
	background: url(https://manabiright.com/wp-content/uploads/2017/08/logo_single.png) white center no-repeat;
	background-size: 50%;
}
.lp-checklist h5 {
	margin-bottom: 15px;
}

@media (max-width: 959px) {
	.lp-checklist {
		position: relative;
		width: calc(100% - 40px);
		background: white;
		padding: 80px 40px 50px;
		margin: auto;
		border-radius: 20px;
	}
}

@media (max-width: 599px) {
	.lp-checklist {
		position: relative;
		width: calc(100% - 10px);
		background: white;
		padding: 50px 30px 40px;
		margin: auto;
		border-radius: 20px;
	}
	#main_content .post_content .lp-checklist {
		margin-top: 40px !important;
	}
	.lp-checklist::before {
		top: -40px;
		left: calc(50% - 40px);
		width: 80px;
		height: 80px;
	}
}

@media(min-width: 600px) {
	.lp-checklist .pc-center {
		display: table;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}

@media(max-width: 599px) {
	.lp-checklist .sp-center {
		display: table;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}





/* フォーム */
form {
margin: 60px 0;
}
form p {
	font-size: 0.9rem;
	margin: 0 auto 20px !important;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="date"],
.wpcf7 textarea {
	width: 100%;
}
.wpcf7 select {
	display: block;
	width: 100%;
	padding: 7px;
	border: 1px solid rgb(204,204,204);
	border-radius: 3px;
}
.wpcf7-response-output {
	display: block;
	width: calc(100% - 40px);
	max-width: 600px;
	font-size: 0.9rem;
	border-radius: 5px;
	padding: 6px 12px !important;
	margin: 0 auto 20px !important;
}
.wpcf7-list-item {
	margin-left: 0;
	margin-right: 20px;
}
.wpcf7 form.sent .wpcf7-response-output {
	display: none;
}
form.submitting .wpcf7-spinner {
	display: block;
	margin: 30px auto 0;
}
.wpcf7 .wpcf7-submit.disabled {
	opacity: .5 !important;
}
.document_p {
	margin: 100px auto 50px !important;
	text-align: center;
}
.document_p b {
	display: block !important;
	color: #cc0000;
	font-size: 20px;
	font-weight: bold !important;
	text-align: center !important;
}

#cf7form .dasame .wpcf7-radio,
#cf7form .dasame .wpcf7-checkbox > span input {
	display: inline;
}
#cf7form .dasame .wpcf7-radio label,
#cf7form .dasame .wpcf7-radio label input,
#cf7form .dasame .wpcf7-radio label > span,
#cf7form .dasame .wpcf7-checkbox label span {
	display: inline;
	width: auto;
	background: none !important;
	border: none;
}
#cf7form .dasame .wpcf7-radio > span {
	border: none !important;
	border-radius: 0;
	margin-bottom: 0;
	text-align: left;
	line-height: 1.5;
}
#cf7form .dasame .wpcf7-radio label > span,
#cf7form .dasame .wpcf7-checkbox label span {
	padding-left: 5px !important;
}
#cf7form .dasame .wpcf7-radio label input,
#cf7form .dasame .wpcf7-checkbox > span input {
	position: relative;
	top: 1px;
}
#cf7form .dasame .wpcf7-checkbox label {
	font-size: 14px !important;
	font-weight: bold;
	line-height: 1.5;
}
#cf7form .dasame .wpcf7-checkbox label span {
	font-size: 14px;
	margin-bottom: 8px;
}
#cf7form .dasame .wpcf7-list-item-label::before,
#cf7form .dasame .wpcf7-checkbox label span::before {
	content: none;
}
#cf7form .dasame input:checked + span {
	color: inherit !important;
}
#cf7form .wpcf7-radio {
	display: flex;
}
#cf7form td {
	padding-bottom: 15px;
}
#cf7form td p > br {
	display: none;
}
#cf7form b {
	display: inline-block;
	margin: 15px 0 5px;
}
#cf7form b:first-child {
	margin-top: 0;
}
#cf7form div b:first-child {
	margin: 15px 0 5px !important;
}
#cf7form input {
	padding: 6px 8px;
	margin-bottom: 0 !important;
}
#cf7form textarea {
	padding: 12px;
}
#cf7form select {
	border: 1px solid hsla(0,0%,78%,.5);
}
#cf7form input:focus,
#cf7form select:focus,
#cf7form textarea:focus {
	outline: none;
}
#cf7form .wpcf7-radio > span {
	width: 100%;
	margin: 0;
	border: 1px solid #dddddd;
	border-left: none;
	text-align: center;
	font-weight: bold;
	font-size: 0.9rem;
	cursor: pointer;
	overflow: hidden;
}
#cf7form .wpcf7-radio > span:first-child {
	border-left: 1px solid #dddddd;
	border-radius: 6px 0 0 6px;
}
#cf7form .wpcf7-radio > span:last-child {
	border-radius: 0 6px 6px 0;
}
#cf7form .wpcf7-radio label {
	display: block;
	width: 100%;
}
#cf7form .wpcf7-radio label input {
	display: none;
}
#cf7form .wpcf7-radio label > span {
	display: block;
	width: 100%;
	padding: 10px 5px !important;
	background: linear-gradient(transparent 80%,#eaeaea 100%);
	cursor: pointer;
}
#cf7form.s_form .wpcf7-radio label input:checked + span {
  color: var(--color_htag);
  background: linear-gradient(#ff8c0022 80%,#ff8c0022 100%);
}
#cf7form.c_form .wpcf7-radio label input:checked + span {
  color: #001a43;
  background: linear-gradient(#001a4322 80%,#001a4322 100%);
}
#cf7form .wpcf7-checkbox > span {
	display: block;
	width: 100%;
}
#cf7form .wpcf7-checkbox > span input {
	display: none;
}
#cf7form .wpcf7-checkbox label {
	display: block;
	width: 100%;
	padding: 3px 0;
	line-height: 1.8;
	cursor: pointer;
}
#cf7form .wpcf7-checkbox label span {
	position: relative;
	display: block;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 8px;
	padding-left: 28px;
	line-height: 20px;
}
#cf7form .wpcf7-checkbox label span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #eeeeee;
	border-radius: 3px;
	font-size: 14px;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	line-height: 18px;
	text-align: center;
}
#cf7form .wpcf7-checkbox input:checked + span {
	color: var(--color_htag);
}
#cf7form .wpcf7-checkbox input:checked + span::before {
	content: "\f00c";
	background: #e7001222;
}
#cf7form.c_form .wpcf7-checkbox input:checked + span {
	color: #001a43;
}
#cf7form.c_form .wpcf7-checkbox input:checked + span::before {
	background: #001a4315;
}
#cf7form .has-children {
	position: relative;
	display: block;
	border-top: 1px solid #eeeeee;
	padding: 2px 0;
	font-size: 15px;
	line-height: 2.5;
}
#cf7form .has-children label span {
	position: relative;
	display: block;
	width: 100%;
	margin: 3px 0;
}
#cf7form .has-children label span::before {
	content: "\2b";
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	background: none;
	font-size: 1em;
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
	border: none;
}
#cf7form .has-children label span {
	padding-left: 5px;
}
#cf7form .has-children input:checked + span {
	color: inherit;
}
#cf7form .has-children input:checked + span::before {
	content: "\f068" !important;
}
#cf7form .form-child {
	display: block;
	padding-left: 5px;
	padding-bottom: 10px;
}
#cf7form input[type="submit"] {
	padding: 15px 80px;
}
#cf7form .cd-rewerd_fee {
	position: relative;
	display: none;
	width: 100%;
	max-width: 200px;
	background: #eeeeee;
	margin: 20px auto 0;
	border-radius: 5px;
	font-size: 13px;
	text-align: center;
	line-height: 3;
}
#cf7form .cd-rewerd_fee::before {
	content: "";
	position: absolute;
	top: -12px;
	left: calc(50% - 5px);
	display: block;
	border-bottom: 13px solid #eeeeee;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
}
#cf7form .other {
	width: calc(100% - 30px);
	margin-left: 30px;
	margin-bottom: 15px !important;
}
#cf7form .other2 {
	margin-top: 10px;
	margin-bottom: 0 !important;
}
#cf7form .check-all {
	display: block;
	width: 85px;
	color: white;
	font-size: 12px;
	margin-bottom: 5px;
	padding: 0;
	text-align: center;
	border-radius: 5px;
	cursor: pointer;
	line-height: 2.2;
	user-select: none;
}
#cf7form.s_form .check-all {
    background: var(--color_htag);
	border: 1px solid var(--color_htag);
}
#cf7form.c_form .check-all {
	background: #001a43;
	border: 1px solid #001a43;
}
#cf7form .check-all::after {
  content: "選択";
}
#cf7form .check-all.remove-all {
	background: transparent;
	color: #001a43;
}
#cf7form .check-all.remove-all::after {
	content: "解除";
}
#cf7form .required,
#cf7form .optional {
	display: block;
	width: 45px;
	font-size: 12px;
	margin-top: 5px;
	padding: 4px 0;
	background: #ff8c00;
	color: white;
	line-height: 1;
	text-align: center;
	border-radius: 4px;
}
#cf7form .optional {
	background: #cccccc;
}
#cf7form .percentage {
	position: relative;
	top: 8px;
	left: 0;
	z-index: -1;
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	border: 2px solid #555555;
	border-radius: 6px;
	margin-bottom: 10px;
	padding: 5px 10px;
	text-align: center;
	line-height: 1.3;
}
#cf7form .percentage span {
	color: var(--color_htag);
	font-size: 1.3em;
}
#cf7form .percentage::before {
	content: "";
	position: absolute;
	top: -13px;
	left: 26px;
	display: block;
	width: 0;
	height: 0;
	border-bottom: 12px solid #555555;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
}

#cf7form .exp {
	display: block;
	padding: 20px;
	margin: 5px auto 20px;
	border-radius: 8px;
	box-shadow: var(--swl-img_shadow);
	font-size: 14px;
}
#cf7form .exp b {
	display: inline;
	margin: 0;
}
.required2 {
	position: relative;
	display: inline-block;
	border: 2px solid #ff8c00;
	color: #ff8c00;
	font-weight: bold;
	margin: 5px 0 12px !important;
	padding: 5px 15px 5px 40px;
	border-radius: 6px;
}
.required2::before {
	content: "\f071";
	position: absolute;
	top: 0;
	left: 10px;
	font-size: 1.5em;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
}
#cf7form .cal {
	display: flex;
	width: 100%;
	flex-direction: column;
	flex-wrap: wrap;
	height: 450px;
}
#cf7form .cal > span {
	width: calc((100% - 100px) / 7);
	flex-basis: 40px;
	margin: 0;
	border-bottom: 1px solid #eeeeee;
}
#cf7form .cal label {
	padding: 0;
}
#cf7form .cal label > span {
	display: block;
	font-size: 0;
}
#cf7form .cal > span:first-child,
#cf7form .cal > span.time-all {
	width: 100px;
	font-size: 13px;
	line-height: 39px;
	text-align: center;
}
#cf7form .cal > span.date-all {
	font-size: 13px;
	line-height: 39px;
	text-align: center;
}
#cf7form .cal > span span {
	height: 39px;
	font-size: 0 !important;
	margin-bottom: 0;
}
#cf7form .cal > span span::before {
	top: calc(50% - 10px);
	left: calc(50% - 10px);
}
.form_head {
	display: block;
	font-weight: bold;
	text-align: center;
	padding-bottom: 20px;
}
.form_area {
	max-width: 800px !important;
	margin: auto;
	background: transparent;
}
.form_area th {
	width: 200px;
	padding: 20px;
	background: #eeeeee;
	border-bottom: 1px solid #e1e1e1;
	font-size: 0.9rem;
}
.form_area th::before {
	content: none !important;
}
.form_area td {
	padding: 15px 20px 5px;
	border-right: none !important;
	border-bottom: 1px solid #eeeeee;
}
.form_area tr:first-child th {
	border-top: 1px solid #e1e1e1;
}
.form_area tr:first-child td {
	border-top: 1px solid #eeeeee;
}
.form_area input {
	border-radius: 4px;
	margin-bottom: 10px;
}
.form_area input[type="checkbox"] {
	display: inline-block;
}
.form-half > div {
	display: flex;
}
.form-half input {
	max-width: 200px !important;
}
.wpcf7-not-valid-tip {
	display: block;
	margin-bottom: 5px;
	padding: 5px 0;
	border-radius: 5px;
	color: #aa0000;
	font-size: 12px;
	font-weight: bold;
}
.wpcf7-not-valid-tip::before {
	position: relative;
	top: 0.1em;
	content: "\f06a";
	font-size: 1.2em;
	font-family: "Font Awesome 6 Free";
    font-weight: bold;
	margin-right: 2px;
}

@media(max-width: 900px) {
	#cf7form .exp {
		padding: 15px;
		margin: 5px auto 20px;
	}
	.required2 {
		padding: 5px 12px 5px 35px;
	}
}

@media (min-width: 600px) {
	#cf7form p:first-child .has-children {
		border-top: 0;
	}
}

@media (max-width: 699px) {
	#cf7form .percentage {
		font-size: 12px;
	}
}

@media (max-width: 599px) {
	form {
		margin: 20px 0;
	}
	.document_p {
		font-size: 13px;
		margin: 30px auto 20px !important;
		text-align: left;
	}
	#cf7form .dasame .wpcf7-checkbox label span {
		font-size: 13px;
	}
	#cf7form .wpcf7-checkbox label span {
		font-size: 13px;
	}
	#cf7form input,
	#cf7form select,
	#cf7form textarea {
		font-size: 13px;
	}
	#cf7form textarea {
		padding: 10px;
	}
	#cf7form .wpcf7-radio span {
		font-size: 13px;
	}
	#cf7form td {
		padding-bottom: 25px;
	}
	#cf7form th::after {
		background: #ff8c00;
	}
	#cf7form.c_form th::after {
		background: #001a43;
	}
	#cf7form b {
		font-size: 13px;
		font-weight: normal;
	}
	#cf7form .coachinfo_bottom b {
		font-weight: bold;
	}
	#cf7form input[type="submit"] {
		margin-top: 20px;
		padding: 5px;
	}
	#cf7form .required,
	#cf7form .optional {
		position: absolute;
		left: 0;
		display: inline-block;
		width: 35px;
		font-size: 10px;
		margin-top: 0;
	}
	#cf7form tr th {
		position: relative;
		padding-left: 42px;
	}
	#cf7form .exp {
		box-shadow: none;
		padding: 0;
	}
	.form_area th,
	.form_area td {
		display: block !important;
		border: none;
		padding: 0;
	}
	.form_area th {
		width: 100%;
		background: none;
		padding: 10px 0 5px;
		margin-bottom: 15px;
		border-bottom: solid 2px #dddddd;
		font-size: 12px;
	}
	.form_area tr:first-child th {
		border-top: none;
	}
	.form_area th::after {
		content: "";
		position: absolute;
		bottom: -2px;
		left: 0;
		display: block;
		width: 100px;
		height: 2px;
		background: #ff9922;
	}
	.form_area td {
		padding-bottom: 20px;
		border-bottom: none !important;
	}
	.form_area tr:first-child td {
		border: none;
	}
	.form_area input[type="submit"] {
		width: 100% !important;
		margin: 0;
		padding: 0px;
		font-size: 16px;
	}
}

.wpcf7-submit:disabled {
	opacity: .3;
}


/* プライバシーポリシーへの同意（フォーム） */
.form-privacy-text {
	margin: 50px 0 10px;
}
.form-privacy {
	display: flex;
	background: #f7f7f7;
	padding: 15px;
	border: 1px solid #dddddd;
	border-radius: 3px;
	cursor: pointer;
	line-height: 1.5;
}
.form-privacy .wpcf7-list-item {
	margin-right: 12px;
}
.form-privacy input {
	display: none !important;
}
.form-privacy > span {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	flex-basis: 20px;
	color: var(--color_htag);
}
.form-privacy > span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #eeeeee;
	border-radius: 3px;
	font-size: 14px;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	line-height: 18px;
	text-align: center;
}
.form-privacy.active > span::before {
	content: "\f00c";
	background: #e7001215;
}
.form-privacy > p {
	display: block;
	flex: 1;
	font-size: 0.9em;
	padding-left: 8px;
}
.form-privacy-accept {
	margin-top: 30px;
	font-size: 0.9em;
	text-align: center;
	transition: .3s;
}
.form-privacy-accept.active {
	opacity: 0;
}
#cf7form.form_privacy .wpcf7-submit {
	margin: 8px auto 50px !important;
	transition: .3s;
}
@media (max-width: 599px) {
	.form-privacy > p {
		font-size: 0.8em;
	}
}



/* アンケート */
.cf7_g-padding {
	padding-top: 15px;
}
.cf7_g-padding textarea {
	margin-top: 15px;
}
#cf7form .cf7-star {
  position: relative;
	width: 205px;
	height: 50px;
	margin-bottom: 10px;
	border-radius: 8px;
  box-shadow: var(--swl-img_shadow);
}
#cf7form .cf7-star .wpcf7-list-item {
  position: absolute;
  top: 10px;
  left: 15px;
	width: auto;
	border: none !important;
}
#cf7form .cf7-star input[type='radio'] {
  position: absolute;
  opacity: 0;
}
#cf7form .cf7-star .wpcf7-list-item-label {
  background: none !important;
	color: #ccc;
  font-size: 25px;
  letter-spacing: .5em;
  cursor: pointer;
	padding: 0 !important;
	line-height: 30px;
}
#cf7form .cf7-star .wpcf7-list-item:hover .wpcf7-list-item-label,
#cf7form .cf7-star .wpcf7-list-item:hover ~ .wpcf7-list-item .wpcf7-list-item-label,
#cf7form .cf7-star .wpcf7-list-item.checked .wpcf7-list-item-label,
#cf7form .cf7-star .wpcf7-list-item.checked ~ .wpcf7-list-item .wpcf7-list-item-label {
  color: #fc0;
	background: none;
}



/* コーチングのフォーム */
.form-coarching h4 {
	margin: 100px auto 30px;
	font-size: 1.5em;
	font-weight: bold;
	padding: 0;
	text-align: center;
	border: none;
}
.form-coarching h5 {
	display: block;
	width: calc(100% - 40px);
	max-width: 600px;
	margin: 30px auto 10px;
	font-weight: normal;
	padding: 0;
}
.form-coarching h5::before {
	content: "任意";
	display: inline-block;
	background: #ddd;
	color: #888;
	font-size: 0.9rem;
	padding: 3px 10px;
	margin-right: 10px;
	border-radius: 2px;
}
.form-coarching h5.required::before {
	content: "必須";
	background: #ff9922;
	color: white;
}
.form-coarching p {
	margin-bottom: 0 !important;
}
.form-coarching .form-child {
	display: block;
	padding-left: 20px;
}
.form-coarching .form-tel {
	display: block;
	margin-top: 10px;
}
.form-coarching .form-name p {
	display: flex;
	justify-content: space-between;
}
.form-coarching .form-name p label {
	flex-basis: calc(50% - 10px);
}
.form-coarching .form-ruby {
	margin-top: 10px;
}
.form-coarching h4.hogosha {
	margin-bottom: 0;
}
.form-coarching span.hogosha {
	display: block;
	text-align: center;
}
.form-coarching .wpcf7-list-item {
	margin-right: 5px;
}
.form-coarching input[type="radio"] {
	display: none;
}
.form-coarching input[type="radio"] + span {
	display: inline-block;
	min-width: 60px;
	padding: 0 10px;
	color: #999;
	text-align: center;
	margin-right: 0;
	border-bottom: solid 3px transparent;
	cursor: pointer;
	transition: .3s;
}
.form-coarching input[type="radio"] + span:hover {
	border-bottom: solid 3px #ddd;
	color: #333;
}
.form-coarching input[type="radio"]:checked + span {
	border-bottom: solid 3px #ff9922;
	color: #333;
}

/* コーチ募集 */
.lp.recruit .lp-block.is-style-bg_stripe {
	background-image: linear-gradient(-45deg,transparent 25%,#f2f2f5 25%,#f2f2f5 50%,transparent 50%,transparent 75%,#f2f2f5 75%,#f2f2f5);
}
.recruit .cv-btn a {
	background: linear-gradient(180deg, #506A93 0%, #001A43 100%);
	box-shadow: 0 0 10px 0 #001a43;
}
.recruit .mv {
	padding: 50px 0;
	background: url(https://manabiright.com/wp-content/uploads/2023/03/25818774_m.jpg) no-repeat right center;
	background-size: 60% auto;
}
.recruit .mv p.mv_text strong:last-child {
	display: inline-block;
	background: #001a43;
	background: linear-gradient(180deg, #506A93 0%, #001A43 100%);
	background: linear-gradient(90deg, #001A43 0%, #506A93 50%, #001A43 100%);
	background: radial-gradient(#708A93, #001A43);
	color: white;
	font-size: 3.5rem;
	margin-top: 20px;
	padding: 0.3em 0.5em 0.3em 1.0em;
	letter-spacing: 0.5em;
	text-shadow: none;
	border-radius: 20px;
}
.recruit h3::before {
	background: #001a43;
}
.recruit h2 {
	color: #001a43;
	border-color: #001a43;
}
.recruit h2::before {
	border-top-color: #001a43;
}

.recruit .saisentan-nayami {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.recruit .saisentan-nayami::before, .recruit .saisentan-nayami::after {
	background: #001a43;
}
.recruit .saisentan-list {
	margin-bottom: 20px;
}
.recruit .teach-coach {
	display: table;
	margin: auto;
}
.recruit .saidai {
	width: calc(100% - 40px);
	max-width: 800px;
	margin: auto;
}
.recruit .nagare-title::before {
	background: #001a43;
}
.recruit .saidai h5 {
	margin-bottom: 20px;
}
.recruit .saidai .wp-block-column:last-child h5 {
	border-color: #ff8c00;
}
.recruit h5,
.recruit .nagare-text {
	border-color: #001a43;
}
.recruit .faq-q::before {
	color: #001a43;
}
.recruit .teaching-coaching {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto 50px;
}
.recruit .teaching-coaching p:last-child {
	margin: 0;
}
.lp .faq_recruit .faq_q::before {
	background: #001a43;;
	box-shadow: 0 0 0 1px #001a43;
}
.lp .faq_recruit .faq_a::before {
	color: #001a43;
	box-shadow: 0 0 0 1px #001a43;
}

@media (max-width: 1000px) {
.recruit .mv p.mv_text strong:last-child {
	font-size: 5.5vw;
	border-radius: 2vw;
}
}

@media (max-width: 599px) {
	.recruit .mv {
		height: 90vw;
		padding: 12vw 0 0;
		background-size: cover;
		background-position: top left;
	}
	.recruit .mv p.mv_text strong {
		font-size: 10vw;
	}
	.recruit .mv p.mv_text strong:last-child {
		margin-top: 0;
		font-size: 6vw;
		line-height: 1.5;
		letter-spacing: 0.3em;
	}
}

@media (max-width: 781px) {
	.recruit .saidai {
		gap: 0 !important;
	}
	.recruit .saidai .saidai-plus {
		max-width: 40px;
		padding: 20px 0;
		margin: auto !important;
	}
	.recruit .saidai .wp-block-column:last-child h5 {
		margin-bottom: 0;
	}
	.recruit .how-to .wp-block-image {
		width: 90%;
	}
}





/* コーチ募集LP */
.recruit-coach_sitelogo {
	width: 185px;
	padding: 15px 0;
	margin: auto;
}
.coachlp .mv p.mv_text {
	font-size: 2.5rem;
}
.coachlp .mv p.mv_text strong {
	font-size: 4.0rem;
	margin-right: 5px;
}
.coachlp .inner-white {
	border-radius: 15px;
	padding: 40px;
}
.post_content .coachlp .inner-white {
	margin-bottom: 70px !important;
}
.coachlp h4 {
	border-left-color: #001a43;
}
.coachlp .fee-system {
	padding: 40px 0;
}
.coachlp .fee-system_title {
	padding: 50px 0 0 ;
	font-size: 1.5rem;
	font-weight: bold;
}
.coachlp .fee-system table {
	max-width: 600px;
	margin: auto;
}
.coachlp .fee-list {
	margin-top: 50px;
}
.coachlp .point-L {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: auto;
	padding: 60px 20px;
	border-radius: 12px;
	background: white;
}
.coachlp .point-L em {
	position: relative;
	top: -4px;
	display: inline-block;
	width: 32px;
	line-height: 32px;
	margin-right: 10px;
	background: #001A43;
	color: white;
	font-size: 1.2rem;
	font-style: normal;
	border-radius: 50px;
	text-align: center;
	letter-spacing: 0;
}
.coachlp .point-L p {
	display: table;
	margin: auto;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 3px;
	line-height: 2.4;
}
.coachlp .point-S {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: auto;
	padding: 0 20px 40px;
	border-radius: 12px;
	background: white;
}
.coachlp .point-S em {
	position: absolute;
	top: 5px;
	left: 0;
	display: inline-block;
	width: 25px;
	line-height: 25px;
	margin-right: 10px;
	background: #001A43;
	color: white;
	font-size: 1rem;
	font-style: normal;
	border-radius: 50px;
	text-align: center;
	letter-spacing: 0;
}
.coachlp .point-S p {
	position: relative;
	display: block;
	padding-left: 35px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 2;
}
.coachlp .inner {
	width: calc(100% - 20px);
	max-width: 900px;
	margin: auto;
}
.coachlp .wofwork {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 40px auto;
}
.coachlp .wofwork .wp-block-image {
	background: white;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: var(--swl-img_shadow);
}
.coachlp .match-up {
	width: calc(100% - 20px);
	margin: 0 auto 60px;
	border-radius: 5px;
	box-shadow: var(--swl-img_shadow);
}

@media (min-width: 600px) {
	.coachlp .mv p:first-child br {
		display: none;
	}
	.coachlp .fee-self br:first-child {
		display: none;
	}
}

@media (max-width: 599px) {
	.recruit-coach_sitelogo {
		width: 130px;
		padding: 5px 0 15px;
	}
	.post_content .coachlp .inner-white {
		margin-bottom: 40px !important;
	}
	.coachlp .whyneed .wp-block-column {
		padding: 0;
	}
	.coachlp .best-match {
		max-width: 300px;
		margin: auto;
	}
	.coachlp .mv p.mv_text {
		font-size: 20px;
		margin-bottom: 10px;
	}
	.coachlp .mv p.mv_text strong {
		display: inline-block;
		font-size: 8vw;
		line-height: 1.3;
	}
	.recruit .mv p.mv_text strong:last-child {
		margin-top: 10px;
	}
	.coachlp .mv p.mv_text:nth-child(2) {
		font-size: 20px;
	}
	.coachlp .point-L {
		padding: 40px 0;
	}
	.coachlp .point-L p {
		font-size: 14px;
		letter-spacing: 1px;
	}
	.coachlp .point-L em {
		top: 0;
		font-size: 12px;
		width: 20px;
		line-height: 20px;
	}
	.coachlp .point-S p {
		font-size: 14px;
		padding-left: 28px;
		line-height: 1.8;
	}
	.coachlp .point-S em {
		top: 2px;
		width: 20px;
		line-height: 20px;
	}
	.coachlp .fee-list {
		margin-top: 20px;
	}
	.coachlp .inner {
		padding: 0;
	}
	.coachlp .inner-white {
		border-radius: 10px;
		padding: 20px;
	}
	.coachlp .fee-system table {
		font-size: 12px;
	}
	.coachlp .fee-system_title {
		font-size: 16px;
	}
	.coachlp .wofwork {
		gap: 10px !important;
	}
	.coachlp .wofwork .wp-block-image {
		border-radius: 8px;
	}
}


/* コーチお気に入り機能 */
@media (min-width: 600px) {
	.coach_container.favorite {
		box-shadow: 0 0 6px 4px #d04b63aa;
	}
}

@media (max-width: 599px) {
	.coach_container.favorite .coach_img {
		box-shadow: 0 0 4px 3px #d04b63aa;
	}
}
.simplefavorite-button {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 10;
	background: linear-gradient(#ffffff 80%,#eaeaea 100%);
	color: #d04b63;
	border: 1px solid #d04b63;
	padding: 10px 15px 8px 35px;
	font-weight: bold;
	border-radius: 5px;
	line-height: 16px !important;
}
.simplefavorite-button::before {
	content: "\f005";
	position: absolute;
	top: calc(50% - 7px);
	left: 15px;
    margin-right: 5px;
    font-size: 14px;
	font-family: "Font Awesome 6 Free";
    font-weight: bold;
    line-height: 1;
}
.simplefavorite-button.active {
	background: linear-gradient(180deg, #f06b83 0%, #d04b63 100%);
	color: #ffffff;
}
.simplefavorite-button.active::before {
	background-image: url(https://manabiright.com/wp-content/uploads/2017/08/cropped-logo_single.png);
}

@media(max-width: 599px) {
	.simplefavorite-button {
		top: 10px;
		right: 10px;
		font-size: 10px;
		padding: 4.7px 7px 4.7px 22px;
	}
	.simplefavorite-button::before {
		left: 7px;
		font-size: 12px;
	}
}






/* 条件が似ているコーチ */
.relatedc_container {
	padding-bottom: 5px;
}
.relatedc_container ul {
	display: flex;
	flex-wrap: wrap;
	max-width: none;
	margin: 0 !important;
	gap: 20px;
	justify-content: flex-start;
}
.relatedc_container ul .p-postList__item {
	margin: 0;
}
.relatedc {
	position: relative;
	display: block;
	flex-basis: calc(100% / 4 - 15px);
	box-shadow: var(--swl-img_shadow);
	padding: 0 !important;
	border-radius: 5px;
	transition: .3s;
}
.relatedc:hover {
	box-shadow: 0 2px 4px rgba(0,0,0,.1),0 4px 4px -4px rgba(0,0,0,.2);
}
.relatedc .p-postList__link {
	display: block;
}
.relatedc a {
	display: block;
	padding: 15px;
	min-height: 145px;
	border: none;
}
.relatedc_col {
	position: relative;
	padding-left: 80px;
}
.relatedc_img {
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
	height: 80px;
	border-radius: 6px;
	overflow: hidden;
}
.relatedc_img img {
	display: block;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.relatedc_bunri {
	position: absolute;
	top: 15px;
	right: 15px;
	display: flex;
	width: 55px;
	justify-content: space-between;
}
.coach-slider_bunri div,
.relatedc_bunri div {
	flex-basis: 25px;
	background: #f2f2f2;
	color: #cccccc;
	border-radius: 5px;
	text-align: center;
	line-height: 25px;
}
.coach-slider_bun.active,
.relatedc_bun.active {
	background: #8e182822;
	color: #8e1828;
}
.coach-slider_ri.active,
.relatedc_ri.active {
	background: #00176322;
	color: #001763;
}
.coach-slider_name,
.relatedc_name {
	margin-bottom: 10px;
	line-height: 20px;
}
.coach-slider_name span,
.relatedc_name span {
	position: relative;
	display: inline-block;
	width: 55px;
	margin-right: 5px;
	color: white;
	font-size: 0.8em;
	font-weight: bold;
	border-radius: 5px;
	text-align: center;
	line-height: 25px;
}
.coach-slider_name p,
.relatedc_name p {
	display: inline-block;
	font-size: 0.9em;
	font-weight: bold;
	line-height: 25px;
}
.relatedc_info {
	flex: 1;
	padding-left: 12px;
}
.coach-slider_info p,
.relatedc_info p {
	position: relative;
	margin-bottom: 6px;
	font-size: 12px;
	padding-left: 25px;
	line-height: 1.5;
}
.coach-slider_info p::before,
.relatedc_info p::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 18px;
	height: 18px;
	background-size: contain;
	background-position: center;
	filter: brightness(1.2);
}
.relatedc_univ::before {
	background-image: url(https://manabiright.com/icon/graduate.png);
}
.relatedc_faculty::before {
	background-image: url(https://manabiright.com/icon/book.png);
}
.relatedc_course::before {
	background-image: url(https://manabiright.com/icon/document.png);
}
.relatedc_fee::before {
	background-image: url(https://manabiright.com/icon/yen.png);
}
.relatedc_career::before {
	background-image: url(https://manabiright.com/icon/reki.png);
	border: 1px solid #999999;
	border-radius: 3px;
	color: #555555;
	text-align: center;
}

@media (max-width: 1200px) {
	.relatedc {
		flex-basis: calc(100% / 3 - 40px / 3);
	}
	.relatedc a {
   		min-height: 170px;
	}
	.relatedc_bunri {
		display: flex;
		width: 55px;
	}
	.relatedc_ri {
		margin-top: 0;
	}
	.relatedc_name p {
		display: block;
		margin-top: 5px;
	}
	.relatedc_info {
		padding-left:12px;
	}
	.relatedc_name {
		margin-bottom: 5px;
	}
}


#coach_calender .prepare {
	display: table;
	margin: 20px auto;
	padding: 10px 20px;
	border-radius: 10px;
	text-align: center;
	box-shadow: var(--swl-img_shadow);
}

@media (max-width: 959px) {
	.relatedc {
		flex-basis: calc(100% / 2 - 10px);
	}
}

@media (max-width: 599px) {
	.relatedc_container {
		width: calc(100% - 20px);
		margin: auto;
	}
	.relatedc_container h2 {
		font-size: 16px;
		margin: 30px auto 15px;
	}
	.relatedc_container ul {
		width: 100%;
		gap: 10px;
	}
	.relatedc {
		flex-basis: calc(100% / 2 - 5px);
	}
	.relatedc a {
		padding: 10px;
		min-height: 0;
	}
	.relatedc_bunri {
		top: 10px;
		right: 10px;
	}
	.relatedc_img {
		width: 52px;
		height: 52px;
		border-radius: 4px;
	}
	.relatedc_col {
		padding-left: 52px;
	}
	.relatedc_container ul {
		display: flex !important;
	}
	.relatedc_info {
		padding-left: 8px;
	}
	.relatedc_info p {
		font-size: 10px;
		padding-left: 18px;
		margin-bottom: 3px;
	}
	.relatedc_info p::before {
		top: 2px;
		width: 14px;
		height: 14px;
	}
	.relatedc_name span {
		font-size: 11px;
		width: 45px;
		line-height: 22px;
		border-radius: 3px;
	}
	.relatedc_bunri {
		width: 41px;
	}
	.relatedc_bunri div {
		font-size: 11px;
	}
	.coach-slider_bunri {
		width: 22px !important;
	}
	.coach-slider_bunri div,
	.relatedc_bunri div {
		flex-basis: 18px;
		font-size: 12px;
		border-radius: 3px;
		line-height: 22px;
	}
	.relatedc_name p {
		font-size: 13px;
		line-height: 20px;
	}
}

/* 記事内の似ているコーチ */
.single_related-coach .l-articleBottom__section {
	margin-top: 0;
}
.single_related-coach .relatedc {
	flex-basis: calc(100% / 2 - 10px);
}

@media (max-width: 599px) {
	.single_related-coach .relatedc {
		flex-basis: calc(100% / 2 - 5px);
	}
	.single_related-coach {
		width: 100vw;
		padding: 5px;
		margin-left: calc(50% - 50vw);
	}
}



/* 関連コーチスライダー（一部似ているコーチのcssを利用） */
.coach-slider {
	width: 100vw;
	margin: 20px auto;
	margin-left: calc(50% - 50vw);
}
.coach-slider .swiper-wrapper {
	transition-timing-function: linear;
}
.coach-slider .swiper-slide {
	width: 220px;
	height: auto;
	margin: 10px;
	padding: 20px;
	background: white;
	box-shadow: var(--swl-img_shadow);
	border-radius: 6px;
}
.coach-slider_img {
	position: relative;
	width: calc(100% - 40px);
	padding-top: calc(80% - 40px);
	border-radius: 6px;
	overflow: hidden;
}
.coach-slider_img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.coach-slider_bunri {
	position: absolute;
	top: 35px;
	right: 0;
	display: block;
	width: 25px;
}
.coach-slider_bun {
	margin-bottom: 5px;
}
.coach-slider_info {
	padding: 10px 0 5px;
}

@media (max-width: 599px) {
	.coach-slider .swiper-slide {
		width: 170px;
		padding: 12px;
	}
	.coach-slider_name {
		margin-bottom: 5px;
	}
	.coach-slider_name p {
		display: block;
		margin-top: 2px;
	}
	.coach-slider_img {
		width: calc(100% - 32px);
		padding-top: calc(80% - 35px);
	}
	.coach-slider_bunri {
		top: 57px;
	}
}





/* マッチング */
.lp .fee-realization {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto 20px;
	padding-bottom: 40px;
}
.lp .fee-realization-h5 {
	border: 3px solid #999999;
}
.lp .fee-realization p {
	font-size: 1.3rem;
	margin: 20px 0 10px;
}
.lp .fee-realization .wp-block-column:nth-child(2) img {
	display: block;
	width: 80%;
	margin: auto;
}

@media (min-width: 782px) {
	.lp .fee-realization .wp-block-column:first-child h5 {
		display: none;
	}
}

@media (max-width: 781px) {
	.lp .fee-realization {
		display: block;
		max-width: 500px;
		padding-bottom: 40px;
	}
	.lp .fee-realization .wp-block-column:last-child h5 {
		display: none;
	}
	.lp .fee-realization h5 {
		margin-bottom: 20px;
	}
	.lp .fee-realization .wp-block-column:first-child .wp-block-image {
		display: block;
		width: 100%;
		max-width: 500px;
		margin: 0 auto 30px !important;
	}
}

@media (max-width: 550px) {
	.lp .fee-realization p {
		font-size: 4.5vw;
		margin-top: 10px;
	}
}