@charset "utf-8";
/*
Theme Name:株式会社能力開発2026
*/

/*============================
共通STYLE
============================*/
/* --------------------------------------------------- トップ画像・ページタイトル */
#main-visual {
    overflow: hidden;
}

#main-visual .wrap{
	position: relative;
}

#main-img {
    width: 23%;	
	padding: 12px;
}

#main-img img {
	border-radius: 10px;
    box-shadow: 0px 0px 10px 2px #dcdcde;
}

#page-title {
	text-align: center;
	width: 100%;	
    letter-spacing: .1em;
	position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

#main-img,
#page-title {
	display: inline-block;
	vertical-align: middle;
}

#page-title h1,
#page-title .en-title{
	display: inline-block;	
	vertical-align: middle;
	line-height: .8em;
}

#page-title h1 span {
	font-size: 1.875rem;
	letter-spacing: .1em;
	font-weight: 700;
}

#page-title .en-title,
#page-title h1.en-title span {
    font-family: "Barlow", sans-serif;
	font-size: 1.25rem;
	line-height: 1.2em !important;
    color: #dd5d27;
	font-weight: 400;
	margin: 0 0 10px;
}

#main-visual.bg-01 {
    overflow: visible;
    padding: 150px 0;
    position: relative;
	margin: 70px 0 0;
}

#main-visual.bg-01 #page-title {
    width: 100%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
}

.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;
	opacity:0;
    letter-spacing: .1em;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }
  to {
    opacity:1;  
}
}
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}
@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #052171;
}

@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

@media screen and (max-width: 1200px){
	#main-visual.bg-01 {
		margin: 70px 0 0;
	}
}

@media screen and (max-width: 767px){
	#main-visual {
		margin: 70px 0 -20px;
	}
	#main-img {
    	width: 100%;
	}
	#page-title {
    	width: 100%;
    	position: static;
		transform: translateY(-40px);
	}
	#page-title h1,
	#page-title .en-title {
    	line-height: 1.3em;
	}
	#page-title .en-title {
    	font-size: 1.5rem;
		margin: 0;
		text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
	}
	#main-visual.bg-01 {
    	padding: 80px 0;
	}
	#main-visual.bg-01 #page-title {
    	transform: none;
	}
	#page-title h1 span {
    	font-size: 1rem;
	}
}
/* --------------------------------------------------- トップ画像・ページタイトル */
#introduction {
	background: #FFEB00;
	color: #172850;
}
#introduction.interval {
	padding: 60px 0;	
}
#introduction h2 {
	text-align: center;
	font-size: 1.5rem;
	margin: 0 0 16px;
}
#introduction .desc {
	text-align: center;
	line-height: 1.8em;
	font-size: 1.0625rem;
}
@media screen and (max-width: 767px){
	#introduction.interval {
    	padding: 30px 0;
	}
	#introduction .desc {
    	text-align: left;
    	line-height: 1.6em;
    	font-size: 1rem;
    	padding: 0 6px;
	}
}
/* --------------------------------------------------- パンくず */
.pankuzu {
    margin: 28px 0 0;
}
.pankuzu li {
    float: left;
    margin-right: 1%;
    font-size: .875rem;
	transition: .3s;
}
.pankuzu li:hover,
.pankuzu li a:hover {
	color: #33b4d8;
}
#main-visual.bg-01 .pankuzu ul {
    text-align: center;
}
#main-visual.bg-01 .pankuzu ul li {
    float: none;
    margin-right: 1%;
    text-align: center;
    display: inline-block;
}
@media screen and (max-width: 767px){
	.pankuzu {
    	margin: 6px 0 0;
	}
	#main-visual.bg-01 .pankuzu {
    	margin: 12px 0 0;		
	}
}
/* ----- タイトル -----*/
.el_lv2Heading {
	text-align: center;
	margin: 0 0 50px;
}
.el_lv2Heading .hp_ja {
	display: block;
	font-size: 1.75rem;
	font-weight: 700;
}
.el_lv2Heading .hp_en {
    font-size: .9375rem;
    font-family: "Barlow", sans-serif;
    line-height: 1;
    letter-spacing: .07em;
    color: #025bac;
}
/* ----- font-size -----*/
.el_fs__14 {
	font-size: .875rem;
}
/* ----- color -----*/
.el_col__red {
	color: red;
}
/*============================
キャリアコンサルタント更新講習
============================*/
.bl_rc_about_desc {
	max-width: 900px;
	margin: 0 auto;
	line-height: 1.8;
}
.bl_rc_entry {
	max-width: 900px;
	margin: 50px auto 0;
	line-height: 1.8;
	padding: 40px;
    border: 1px solid #E0E0E0;
}
.bl_rc_entry_check {
	display: flex;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	height: 100%;
	margin: 30px 0 0;
}
.bl_rc_entry_check ul {
	margin: 0 0 15px;
}
.bl_rc_entryBtn {
	margin: 30px auto 0;
	max-width: 600px;
	text-align: center;
}
.bl_rc_entryBtn a {
	display: block;
    background: #025bac;
    border-radius: 30px;
    padding: 16px;
    font-weight: 500;
    transition: .1s;
    color: #fff;
    font-weight: bold;
    font-family: "Barlow", sans-serif;
    position: relative;
    letter-spacing: .1em;
}
.bl_rc_entryBtn a:hover {
    background: #1a73e8;	
}
.bl_rc_entry_note {
	color: red;
	text-align: center;
	margin: 15px 0 0;
}
.bl_rc_overview_cont {
	max-width: 1020px;
	margin: 0 auto;	
    border-left: 1px solid #E0E0E0;
    border-top: 1px solid #E0E0E0;
}
.bl_rc_overview_box {
	display: grid;
    grid-template-columns: 150px 1fr;
}
.bl_rc_overview_item {
	padding: 18px 24px;
    border-bottom: 1px solid #E0E0E0;
    border-right: 1px solid #E0E0E0;
}
.bl_rc_overview_item.hp_head {
	background: #fbfbff;
}
.bl_rc_overview_item.hp_head h3 {
	font-weight: 600;
}
.bl_rc_overview_box.hp_type ul li:not(:last-child),
.bl_rc_overview_box.hp_terms ul li:not(:last-child) {
	margin: 0 0 15px;
}
.bl_rc_overview_box.hp_type ul li h4 {
	color: #025bac;
	font-weight: 500;
	margin: 0 0 2px;
}
.bl_rc_overview_time {
	display: grid;
    grid-template-columns: 100px 1fr;	
} 
.bl_rc_overview_box.hp_terms h4 {
	font-weight: 600;
	margin: 0 0 5px;
}
.bl_rc_overview_box.hp_terms ul li p {
	font-size: .9375rem;
}
.bl_rc_overview_box.hp_notes ul li:not(:last-child) {
	margin: 0 0 8px;
}
.bl_rc_instructor {
	display: grid;
    grid-template-columns: 1fr 1fr;	
	gap: 20px;
}
.bl_rc_instructor_item {
	display: grid;
    grid-template-columns: 90px 1fr;	
	gap: 15px;	
}
.bl_rc_instructor_type {
	font-size: .875rem;
    line-height: 1;
    display: inline-block;
    background: #5f5f5f;
    color: #fff;
    padding: 3px 8px 4px 8px;
    border-radius: 20px;
    margin: 0 0 6px;
}
.bl_rc_instructor_txt h4 {
	font-weight: 600;
	margin: 0 0 3px;
	font-size: 1.0625rem;
}
.bl_rc_instructor_desc{
	font-size: .875rem;
}
/*============================
キャリアコンサルタント登録／パーソナルコーチ
============================*/
.bl_cf_message {
	text-align: center;
	font-size: 1.375rem;
	font-weight: 700;
	margin: 0 0 20px;
}
.bl_cf_desc {
	text-align: center;
	line-height: 2;
}
.bl_cf_merits_cont {
    position: relative;
    background: url(images/bg-corp.jpg) no-repeat;
    background-position: top left;
    -webkit-background-size: cover;
    background-size: cover;
}
.bl_cf_merits_cont ul {
	max-width: 1080px;
	margin: 0 auto;
	display: grid;
	 grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}
.bl_cf_merits_cont ul li {
	background: #fff;
	position: relative;
	padding: 40px;
	border-radius: 30px;
}
.bl_cf_merits_no {
	position: absolute;
	top: -25px;
	left: 40px;
	color: #025bac;
	font-size: 2rem;
	font-weight: 700;
	font-family: "Barlow", sans-serif;
}
.bl_cf_merits_cont ul li h3 {
	font-weight: 600;
	margin: 0 0 10px;
	font-size: 1.25rem;
}
.bl_cf_merits_cont ul li p {
	line-height: 1.9;
}
.bl_cf_flow_cont {
	display: grid;
	 grid-template-columns: repeat(5, 1fr);
	gap: 40px;	
}
.bl_cf_flow_cont.hp_coach {
	max-width: 1020px;
	margin: 0 auto;
	 grid-template-columns: repeat(4, 1fr);
}
.bl_cf_flow_item {
	position: relative;
	text-align: center;
	padding: 40px 20px;
	border: 1px solid #b5e6fd;
}
.bl_cf_flow_item h3 {
	font-weight: 600;
	margin: 0 0 15px;
	font-size: .9375rem;
}
.bl_cf_flow_item img {
	display: block;
	max-width: 90px;
	margin: 0 auto;
}
.bl_cf_flow_no {
    color: #025bac;
	font-family: "Barlow", sans-serif;
	margin: 0 0 5px;
}
.bl_cf_flow_cont .bl_cf_flow_item:not(:last-of-type):after {
    content: '';
    background: #b5e6fd;
    clip-path: polygon(50% 50%, 0 0, 0 100%);
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: -7%;
    transform: translate(20px, -50%);
}
@media screen and (max-width: 767px) {
	.el_lv2Heading .hp_ja {
    	font-size: 1.125rem;
	}
	.bl_cf_message {
    	font-size: 1.125rem;
	}
	.bl_cf_desc {
		text-align: left;
	}
	.bl_cf_merits_cont ul {
    	grid-template-columns: repeat(1, 1fr);
	}
	.bl_cf_merits_cont ul li {
    	padding: 30px 24px 24px;
	}
	.bl_cf_merits_cont ul li h3 {
    	font-size: 1.0625rem;
	    margin: 0 0 8px;
	}
	.bl_cf_merits_cont ul li p {
    	line-height: 1.8;
	}	
	.bl_cf_merits_no {
    	left: 25px;
	}
	.bl_cf_flow_cont {
    	grid-template-columns: repeat(1, 1fr);
	}
	.bl_cf_flow_item img {
    	max-width: 50px;
	}
	.bl_cf_flow_item {
    	padding: 26px 20px 20px;
		max-width: 200px;
   		margin: 0 auto;
    	width: 100%;
	}
	.bl_cf_flow_item h3 {
    	margin: 0 0 10px;
	}
	.bl_cf_flow_cont .bl_cf_flow_item:not(:last-of-type):after {
    	top: 100%;
    	right: 50%;
    	transform: translate(50%, 12px);
    	clip-path: polygon(50% 100%, 0 0, 100% 0);
	}
}
/*============================
お問合せフォーム
============================*/
input[type="button"],input[type="email"],input[type="text"],input[type="submit"],input[type="image"],input[type="tel"],textarea,select,input[type="number"] {
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	letter-spacing: .1em;
}
#contact-form .form-wrap {
    max-width: 1020px;
    background: #f5f5f5;
    margin: 0 auto;
    padding: 80px;
	letter-spacing: .1em;
}
#contact-form .form-wrap .box .sent {
	margin-bottom: 16px;
}
#contact-form img {
    width: 20%;
    margin: 0 auto 2%;
}
#contact-form p.contact_btn {
    background: #005bac;
    width: 20%;
    text-align: center;
    margin: 4% auto 0;
}
#contact-form p.contact_btn a {
    display: block;
    padding: 5% 0;
    color: #fff;
    font-weight: bold;
}
#contact-form .form-wrap .ratio,
#contact-form .form-wrap .box2{
	margin: 0 0 28px;
}
#contact-form .form-wrap .ratio li {
	width: 48%;
	margin-right: 4%;
	vertical-align: top;
}
#contact-form .form-wrap .ratio li:last-child {
	margin-right: 0;
}
#contact-form .form-wrap .ratio li.bd .left:not(:nth-of-type(1)) {
	margin-left: 10px;
}
#contact-form .form-wrap .ratio li.bd .gap {
	display: inline-block;
	margin-left: 5px;	
}
#contact-form .form-wrap .box2 .url {
	margin-bottom: 5px;		
}
#contact-form .form-wrap .box2 .pw {
	display: inline-block;
	margin-left: 16px;		
}
#contact-form .form-wrap .item-title {
    margin-bottom: 10px;
	letter-spacing: .1em;
	font-weight: bold;
}
#contact-form .wpcf7-form-control.textarea,
#contact-form .wpcf7-form-control.select{
    width: 100%;
    padding: 6px 8px;
    font-size: 16px;
    border: none !important;
}
#contact-form .wpcf7-form-control.select{
    padding: 9.5px 8px;
}
#contact-form .wpcf7-form-control.select-s{
    width: 80px;
    padding: 8px;
    font-size: 16px;
    border: none !important;
}
#contact-form .wpcf7-form-control.textarea-s {
    width: 150px;
    padding: 6px 8px;
    font-size: 16px;
    border: none !important;
}
#contact-form .wpcf7-form label {
    border: none !important;
    padding: 6px 10px 8px 4px;
    display: inline-block;
    cursor: pointer;
    background: #fff;
    margin: 0 6px 6px 0;
}
#contact-form .wpcf7-form-control.textarea,
#contact-form .wpcf7-form-control.textarea-s {
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	letter-spacing: .1em;
}
#contact-form span.his {
    background: #ff6347;
    padding: 0 2px;
    color: #fff;
    border-radius: 3px;
    margin: 0 0 0 10px;
    font-size: 0.85em;
}
#contact-form .transmission {
    text-align: center;
    margin: 72px auto 0;
}
#contact-form .transmission .button,
div.wpcf7cp-btns .wpcf7-form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    appearance: none;
    cursor: pointer;
    background: #025bac;
    display: inline-block;
    width: 30%;
    outline: none;
    border-radius: 5px;
    font-size: 1.125rem;
	font-weight: bold;
    border: none;
    padding: 12px 0;
    margin: 0 1%;
    letter-spacing: .2em;
    transition: .5s;
    color: #fff;
}
#contact-form .transmission .button:hover,
div.wpcf7cp-btns .wpcf7-form-control:hover {
    background: #00efd3;
    color: #fff;
}
#contact-form .ques-wrap .box {
	margin: 28px 0 0;
}
#contact-form .form-wrap .more {
	margin: 28px 0 20px;
}
#contact-form .form-wrap .more a {
	display: inline;
	padding: 15px 15px 15px 15px;
}
#contact-form .form-wrap table.common {
	border-left: 1px solid #eee;
}
#contact-form .form-wrap table.common:nth-of-type(2) {
	margin: 0 0 24px;
}
#contact-form .form-wrap table.common th {
	background: #eee;
}
#contact-form .form-wrap table.common th:nth-of-type(1),
#contact-form .form-wrap table.common tr td:nth-of-type(1){
	width: 30% !important;
	border-right: 1px solid #fff;
}
#contact-form .form-wrap table.common th:nth-of-type(2),
#contact-form .form-wrap table.common tr td:nth-of-type(2) {
	width: 70% !important;
}
#contact-form .form-wrap table.common th,
#contact-form .form-wrap table.common td {
	padding: 14px;
}
#contact-form .form-wrap table.common td {
	border-right: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

.wpcf7-spinner {
	display: block !important;
}
.wpcf7-list-item {
	margin: 0 !important;
}
#contact-form .note {
	letter-spacing: .1em;
	text-align: center;
	margin: 50px 0 0;
}
div#wpcf7cpcnf table {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	border: 1px solid #ccc;
	border-bottom: none;
}
div#wpcf7cpcnf table tr {
	border-bottom: 1px solid #ccc;
}
div#wpcf7cpcnf table th,
div#wpcf7cpcnf table td {
	padding: 12px;
}
div#wpcf7cpcnf table th {
	width: 50%;
	border-right: 1px solid #ccc;
	background: #f0f8ff;
}
div#wpcf7cpcnf table td {
	background: #fff;
}
div.wpcf7cp-btns {
	margin: 50px 0 0 !important;
	text-align: center;
}
.apply-title {
	margin: 0 0 30px;
}
.apply-title span {
	font-weight: bold;
}
.apply-title input[type="text"] {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    background: #fff;
    border: none;
	padding: 4px 10px;
    font-size: 1rem;
    width: 50%;
	margin: 0 0 0 10px;
}
input[type="date"] {
	padding: 6px 10px 8px 4px;
	font-size: 1rem;
}
#contact-form .unit {
	display: inline-block;
	margin-left: 5px;
}
@media screen and (max-width:1023px){
	#contact-form .form-wrap {
    	padding: 30px;
	}
	#contact-form .transmission .button {
		width: 50%;
	}
	#contact-form .transmission {
    	margin: 50px auto 0;
	}
#contact-form p.contact_btn {
    width: 60%;
}
}
@media screen and (max-width:767px){
	#contact-form .form-wrap {
    	padding: 20px 10px 6px;
	}
	#contact-form .form-wrap .ratio {
    	margin: 0 0 12px;
	}
	#contact-form .form-wrap .ratio li {
    	width: 100%;
    	margin: 0 0 12px;
	}
	#contact-form .form-wrap .ratio li:last-child {
    	margin: 0;
	}
	.wpcf7-list-item {
		margin: 0 !important;
	}
	#contact-form .transmission {
    	margin: 30px auto 0;
	}
	div.wpcf7cp-btns {
    	margin: 40px 0 0 !important;
	}
	#contact-form .transmission .button, div.wpcf7cp-btns .wpcf7-form-control {
		width: 43%;
		font-size: 1rem;
		letter-spacing: .1em;
	}
	.grecaptcha-badge {
		bottom: 0 !important;
		right: -160px !important;
		transform: scale(0.5, 0.5);
	}
	.apply-title {
    	margin: 0 0 18px;
	}
	.apply-title input[type="text"] {
    	width: 100%;
		margin: 0;
	}
	.apply-title span {
		display: block;
		letter-spacing: .1em;
		margin: 0 0 5px;
	}
}
/*============================
送信完了しました
============================*/
.kanryou {
	line-height: 1.9;
}

.completion aside {
	padding: 100px 0;
}
.kanryou {
	text-align: center;	
}

@media screen and (max-width: 767px){
	.completion aside {
		padding: 30px 0;
	}
	.kanryou {
		text-align: left;
	}
}

/*============================
お知らせ
============================*/
.bl_news {
	position: relative;
}

.bl_news_box {
	display: grid;
	 grid-template-columns: repeat(3, 1fr);
	gap: 50px;	
}

.bl_news_post img {
	border-radius: 20px;
}

.bl_news_post figure.zoom {
    overflow: hidden;
    border-radius: 20px;
}

.bl_news_ctgrdate {
	display: grid;
	 grid-template-columns: 100px 1fr;
	gap: 10px;
	margin: 12px 0 15px;
}

.bl_news_date {
	font-family: "Barlow", sans-serif;
	display: block;
	letter-spacing: .1em;
}

.bl_news_ctgr {
	text-align: right;
}

.bl_news_ctgr span {
	display: inline-block;
	font-size: .875rem;
	padding: 5px;
	line-height: 1;
	border: 1px solid #fff;
	border-radius: 20px;
	
}

.bl_news_ttl {
	letter-spacing: .1em;
	transition: .2s;
	font-weight: 600;
}

.bl_news_ttl:hover {
	color:#33b4d8;
}

@media screen and (max-width: 1023px) {
	.bl_news_box {
    	gap: 20px;
	}
}

@media screen and (max-width: 767px) {
	.bl_news_box {
    	display: block;
	}
	
	.bl_news_ctgrdate {
    	margin: 12px 0 5px;
	}
	
	.bl_news_post {
		margin: 0 0 30px;
	}
	
	.bl_news_ctgr {
    	text-align: left;
	}
}

/*============================
お知らせ一覧・個別投稿
============================*/
.information .wrap {
	max-width: 1020px;
}

.post-single .wrap {
	max-width: 900px;
}

.information,
.post-single{
	padding: 100px 0;	
}
.information .box {
	padding: 20px 0;
	border-bottom: dotted 0.5px #333;
}
.information .box:nth-of-type(1) {
	padding: 0 0 20px;
}
.information .box .date-category {
	margin-bottom: 10px;
}
.date-category .date {
	font-size: .9375rem;
	float: left;
	display: inline-block;
	margin-right: 10px;
	letter-spacing: .1em;
}
.date-category .ctgr {
	background: #33b4d8;	
	float: left;
	width: 100px;
	display: inline-block;
	line-height: 1;
    padding: 4px 4px 4px 5px;
	text-align: center;
	font-size: .875rem;
	color: #fff;
}
.date-category .ctgr.seminar {
	background: #483D8B;
}
.date-category .ctgr.madoguchi-news {
	background: #005bac;
}
.date-category .ctgr.legal-report {
	background: #20B2AA;
}
.information .box h2.title {
	transition: .3s;
	font-size: 1.125rem;
	padding: 0 0 5px;
}
.information .box h2.title a:hover {
	color:#204293;
}
.information .more-text a:hover {
	color: #005bac;
}
.post-single .info ul li h1.title {
	font-size: 1.5rem;
    padding: 6px 0 24px;
    font-weight: bold;
}
.post-single .info  .link_wrap {
	margin: 50px auto 0;
	max-width: 800px;
}
.post-single .info .link_wrap li {
	vertical-align: top;
	display: inline-block;
	text-align: center;
}
.post-single .info .link_wrap li  {
	width:30%;
	margin:0 5% 0 0;
}
.post-single .info .link_wrap li:last-child {
	margin: 0;
}
.post-single .info .link_wrap .el_more a {
    border: 4px solid #025BAC;
    border-radius: 30px;
    padding: 16px;
}

.post-single .info .link_wrap .el_more a:hover {
	background: #025bac;
}

.post-single .info .img_border img {
	border: solid 1px #d4d9d6;	
}

.post-single .info .text p.paragraph {
	margin-top: 24px;
}
.post-single .external-link {
	text-align: center;
	margin-top: 20px;
	font-size: 1.5rem;
}
.post-single .external-link a {
	color: #005bac;
}
.post-single .external-link a:hover {
	color: #192f60;
}
/*----- ● -----*/
.mark-circle {
	position: relative;
    padding-left: 15px;
	letter-spacing: .05em;
}
.mark-circle::before{
    position: absolute;
    z-index: 2;
    content: '';
	width: 6px;
    height: 6px;
    top: 12px;
    left: 0;
    background: #333;
	border-radius: 5px;	
}

.thumbnail_600 {
	max-width: 600px;
}
@media screen and (max-width: 1023px) {
	.information,
	.post-single{
		padding: 50px 0;	
	}
	.information .wrap,
	.post-single .wrap {
		max-width: 96%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 767px) {
	.information{
		padding: 20px 0;	
	}
	.post-single{
		padding: 30px 0;	
	}
	.information .box h2.title {
    	padding: 6px 0 5px;
    	line-height: 1.2em;
	}
	.post-single .info .link_wrap li a {
		width: 100%;
		padding: 8px 0;
		font-size: .75em;
	}
	.post-single .info .link_wrap {
    	margin: 30px auto 0;
	}
	.single-post .date-category .date,
	.single-post .date-category .ctgr {
		float: none;
	}
	.information .box .date-category {
    	margin-bottom: 5px;
	}
.post-single .info ul li h1.title, .topics ul li h2.title {
        font-size: 1.2rem;
        padding: 11px 0;
        line-height: 1.8em;
}
	.post-single .info .text p {
    	line-height: 1.6em;
	}
	.post-single .external-link {
    	font-size: 1rem;
	}
}

/*============================
ページネーション
============================*/
.pagenation {
    margin: 60px auto 0;
}

.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

.pagenation ul {
    margin: 0 auto;
    text-align: center;
}

.pagenation li {
    list-style: none outside none;
    margin-left: 3px;
    display: -moz-inline-box;
  display: inline-block;
  /*display: inline;*/

}

.pagenation li:first-child {
    margin-left: 0;
}

.pagenation li.active {
    background-color: #999999;
    border-radius: 3px;
    color: #FFFFFF;
    cursor: not-allowed;
    padding: 10px 15px;
}

.pagenation li a {
    background: none repeat scroll 0 0 #CCCCCC;
    border-radius: 3px;
    color: #FFFFFF;
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}

.pagenation li a:hover {
    background-color: #444444;
    color: #FFFFFF;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}

.single-post .indent {
	margin: 30px 0 0;
}

.bl_post_subTitle {
	font-weight: bold;
	margin: 0 0 5px;
}
@media screen and (max-width: 768px) {
	.pagenation {
		margin: 30px auto 0;
	}
}

.single-post p{
	line-height:2em;
}

.instrument-202405 {
	margin: 24px 0;
}

.instrument-202405 .about dt {
    width: 30%;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    margin-bottom: 10px;
}

.instrument-202405 .about dd {
    width: 70%;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    margin-bottom: 10px;
    line-height: 2em;
}

.instrument-202405 .about dl {
    display: flex;
    flex-wrap: wrap;
    font-size:15px;
}

@media screen and (max-width: 767px){
	.instrument-202405 .about dl {
    	display: flex;
    	flex-wrap: wrap;
    	flex-direction: column;
	}
	
	.instrument-202405 .about dt {
    	width: 100%;
    	background: #f5f5f5;
    	padding: 10px;
	}
	
	.instrument-202405 .about dd {
    	width: 100%;
	}
}

/*============================
セミナー・講習会一覧ページ 
============================*/
.allseminar_post-single {
	max-width: 600px;
	margin: 0 auto;
}

.allseminar_list ul {
    border-bottom: 1px solid #dadada;
    padding: 2% 0 2%;
    position: relative;
}

.allseminar_list ul li h2.column_title {
    padding: 2% 0;
    font-size: 22px;
    color: #1c7cb7;
}

.allseminar_list dl{
    display: flex;
}

.allseminar_list dl dt {
    padding: 2px 0;
    width: 90px;
    margin: 0 2% 1% 0;
    background: #1c7cb7;
    color: #fff;
    text-align: center;
    font-size: 14px;
}

.allseminar_list dl dd {
   font-weight:500;
}

.allseminar_list .s_morebtn {
    text-align: right;
    position: absolute;
    right: 0;
    top: 50%;
    font-size: 13px;
    border: 1px solid #0480cc;
    color: #0480cc;
    padding: 5px 10px;
    background: #e9f7ff;
}

.pagenation ul {
    border-bottom: none;
}

.post-single .bl_eye {
	max-width: 600px;
	margin: 0 auto;
}

@media screen and (max-width: 767px){
	 .allseminar_list ul li h2.column_title {
    	font-size: 18px;
    	padding: 5% 0;
	}
	
	.allseminar_list .s_morebtn {
    	text-align: center;
    	position: static;
		font-size: 13px;
		margin: 2% 0;
    	width: 60%;
    	margin: 3% auto;
    	padding: 7px 10px;
	}
	
	.date-category .ctgr {
    	font-size: 12px;
	}
	
	.allseminar_list dl dt {
    	margin: 0 2% 1% 0;
    	background: #f4f4f4;
    	color: #1c7cb7;
    	text-align: center;
    	font-size: 14px;
    	font-weight: bold;
    	width:20%;
	}
	
	.allseminar_list dl dd {
    	width: 80%;
	}
	
	.allseminar_list ul {
    	padding: 5% 3%;
	}
}
/*============================
セミナー・講習会詳細ページ 
============================*/
section.allseminar_post-single ul li dl dt{
    padding: 2px 0;
    width: 90px;
    margin: 0 2% 1% 0;
    background: #1c7cb7;
    color: #fff;
    text-align: center;
    font-size: 14px;
}

section.allseminar_post-single ul li dl dd {
   font-weight:500;
    width: calc(100% - 102px);
}

section.allseminar_post-single ul li dl dt,
section.allseminar_post-single ul li dl dd {
	display: inline-block;
	vertical-align: top;
}

section.allseminar_post-single ul li dl dd a{
   color:blue;
}

.date-category .ctgr.deta-science{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(51, 182, 121);
}

.date-category .ctgr.chem{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(230, 124, 115);
}

.date-category .ctgr.geka{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(97, 97, 97);
}

.date-category .ctgr.shokugyo{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(246, 191, 38);
}
.date-category .ctgr.hakenmoto{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(63, 81, 181);
}
.date-category .ctgr.hakensaki{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(213, 0, 0)
}
.date-category .ctgr.kunrenko{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(244, 81, 30);
}
.date-category .ctgr.osaka{
    width: auto;
    padding: 5px 5px 5px 5px;
    background: rgb(121, 134, 203);
}
.date-category .ctgr.ganyu{
    width: auto;
    padding: 5px 5px 5px 5px;
    background:rgb(230, 124, 115);
}
.date-category .ctgr.startup{
    width: auto;
    padding: 5px 5px 5px 5px;
    background:rgb(11, 128, 67);
}
.date-category .ctgr.hogogu{
    width: auto;
    padding: 5px 5px 5px 5px;
    background:rgb(142, 36, 170);
}
.date-category .ctgr.gaikoku{
    width: auto;
    padding: 5px 5px 5px 5px;
    background:rgb(3, 155, 229);
}
@media screen and (max-width: 767px){
section.allseminar_post-single ul li dl dt {
    background: #f4f4f4;
    font-weight: bold;
    color: #1c7cb7;
}
}

/*============================
セミナー・講習会一覧ページ 
============================*/
.bl_course_cont li:first-child .bl_course_item  {
	border-top: 1px solid #eee;	
}

.bl_course_item {
	display: grid;
	grid-template-columns: 120px 250px auto 100px 80px;
	gap: 0 15px;
	align-items: center;
	border-bottom: 1px solid #eee;
	padding: 20px 10px;
	transition: .3s;
}

.bl_course_item:hover {
	background: #f5f5f5;
}

.bl_course_date p {
	font-size: .9375rem;
	letter-spacing: .1em;
}

.bl_course_ttl h2 {
	color: #052171;	
	font-size: .9375rem;
}

.bl_course_txt {
	font-size: .875rem;
	padding: 0 15px;
}

.bl_course_method p {
	line-height: 1.45;
}

.bl_course_method span {
	display: inline-block;
	font-size: .875rem;
	line-height: .875rem;
	border: 1px solid #052171;
	border-radius: 10px;
	color: #052171;
    padding: 2px 6px 1px 7px;
}

.bl_course_status span {
	display: inline-block;
	font-size: .875rem;
	line-height: .875rem;
	background: #f58a46;
	border-radius: 10px;
	color: #fff;
    padding: 3px 8px 3px 9px;
}

@media screen and (max-width: 1023px) {
	.bl_course_item {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  		grid-template-rows   : 1fr 1fr;
		gap: 0 15px;
	}
	
	.bl_course_date {
		grid-column: 1 / 2;
        grid-row: 1 / 2;
	}
	
	.bl_course_ttl {
		grid-column: 2 / 5;
        grid-row: 1 / 2;
	}
	
	.bl_course_txt {
        grid-column: 1 / 5;
        grid-row: 2 / 3;
		padding: 0 15px 0 0;
	}
	
	.bl_course_method {
		grid-column: 5 / 6;
        grid-row: 2 / 3;			
	}
	
	.bl_course_status {
		grid-column: 5 / 6;
        grid-row: 1 / 2;		
	}
}

@media screen and (max-width: 767px) {
	.bl_course_item {
		grid-template-columns: 1fr 1fr 1fr 1fr;
  		grid-template-rows: max-content max-content max-content max-content;
		gap: 0;
	}
	
	.bl_course_date {
		grid-column: 1 / 3;
        grid-row: 1 / 2;
	}
	
	.bl_course_ttl {
		grid-column: 1 / 5;
        grid-row: 2 / 3;
	}
	
	.bl_course_txt {
        grid-column: 1 / 5;
        grid-row: 3/ 4;
		padding: 0 0 5px;
	}
	
	.bl_course_method {
		grid-column: 1 / 5;
        grid-row: 4 / 5;			
	}
	
	.bl_course_status {
		grid-column: 3/ 5;
        grid-row: 1 / 2;		
	}
	
	.bl_course_ttl h2 {
		padding: 12px 0 2px;
	}
}

/*============================
会社概要
============================*/
.bl_company table th,
.bl_company table td {
	padding: 26px;
	box-sizing:border-box;
	line-height: 1.7;
}

.bl_company table th {
	width: 22%;
	font-weight: normal;
	border-bottom: solid 2px #dd5d27;
}

.bl_company table td {
	width: 78%;
	border-bottom: solid 2px #eee;
}

.bl_company table tr:first-of-type th {
	border-top: solid 2px #dd5d27;
}

.bl_company table tr:first-of-type td {
    border-top: 2px solid #eee;
}

.bl_company table td.business p {
	font-size: .9375rem;
}
@media screen and (max-width: 767px) {
	.bl_company table th,
	.bl_company table td	 {
		display: block;
		width: 100%;
		padding: 20px 12px;
	}
	
	.bl_company table th {
        border-bottom: none;
        padding: 16px 0 6px;
		font-weight: bold;
    }
	
	.bl_company table td {
        border-bottom: 2px solid #052171;
        padding: 0 0 16px;
    }
	
	.bl_company table tr:first-of-type td {
    	border-top: none;
	}
}

/*============================
個人情報保護方針
============================*/
.bl_policyCont h2 {
    font-weight: bold;
    font-size: 1.25rem;
    letter-spacing: .1em;
    margin: 0 0 8px;
}

.bl_policyCont p {
    line-height: 1.6em;
}

.bl_policy_item {
    padding: 30px 0 0 20px;
}

.bl_policy_item > li {
    list-style-type: decimal;
    margin: 0 0 22px;
}

.bl_policy_seitei {
	margin: 40px 0 0;
}

.bl_policy_seitei p {
	text-align: right;
}

.bl_ppMado_info {
	display: inline-block;
	margin: 20px 0 0;
	padding: 40px;
	border: 1px solid #ddd;
}

@media screen and (max-width: 767px) {
	.bl_policyCont p {
    	font-size: .875rem;
	}
	
	.bl_ppMado_info {
    	padding: 20px;
    	font-size: .875rem;
	}
}
/*============================
エイジェックまなびからのお知らせPDF
============================*/
.bl_imgLink {
  display: flex;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
  justify-content: center;
}

.bl_imgLink_item {
  width: calc((100% - 48px) / 3);
  max-width: 320px;
}

.bl_imgLink_item img {
  display: block;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  .bl_imgLink {
    display: block;
    text-align: center;
  }

  .bl_imgLink_item {
    width: 100%;
    margin: 0 auto 24px auto;
  }

  .bl_imgLink_item img {
    margin: 0 auto;
  }
}
/*============================
まなびBPO
============================*/
.el_problemsSub .ja {
  position: relative;
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  padding: 0 0 0 1.5625rem; /* 25px */
}

.el_problemsSub .ja::before {
  font-family: "FontAwesome";
  content: '\f10c';
  color: #ea6686;
  position: absolute;
  top: 0.0625rem;
  left: 0.125rem;
  font-size: 0.875rem; /* 14px */
  z-index: 2;
}

.bl_problems {
  padding: 5rem 1.5rem 5rem 1.5rem;
  text-align: center;
}

.el_problemsSub {
  font-size: 0.875rem;
  margin: 0 0 0.5rem 0;
}

.el_problemsTitle {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 2rem 0;
}

.bl_arrow {
  font-size: 2rem;
  margin: 1.5rem 0 1.5rem 0;
  color: #ff6b81;
}

.el_problemsLead {
  font-size: 1rem;
  margin: 0 0 2rem 0;
	font-weight: 700;
}


.bl_tagList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  list-style: none;

  padding: 2rem 2rem 2rem 2rem;
  margin: 0 auto 0 auto;

  background: #EEF3F3;
  border-radius: 0.75rem;
	max-width: 55rem;

}

.bl_tagList li {
  padding: 0.5rem 1.5rem 0.5rem 1.5rem;
  font-size: 1rem;
	font-weight: 500;
  color: #fff;
  background: linear-gradient(90deg, #025BAC 0%, #00EFD3 100%);
  border-radius: 5px;
}
/* ===============================
  チェックボックス
================================ */
.bl_problemsList {
  list-style: none;
  padding: 0;
  margin: 0 auto 0 auto;
  max-width: 28rem;   /* 中央寄せ */
}

.bl_problemsList li {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin: 0 0 1.5rem 0;
  font-size: 1rem;
  text-align: left;
}

.bl_problemsList li::before {
  content: "✓";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.875rem;   /* 30px */
  height: 1.875rem;
  font-size: 1.25rem;
  color: #025BAC;
  border-radius: 0.3rem;
  border: 2px solid transparent;
  background-image: linear-gradient(#fff, #fff),
                    linear-gradient(90deg, #025BAC 0%, #00EFD3 100%);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  flex-shrink: 0;
}

/* ===============================
   グループエリア
================================ */
.bl_groupHead {
  position: relative;
  display: inline-block;
  background: #fff;
  padding: 32px 48px 24px 48px; 
  border-radius: 12px;
  margin: 0 0 6rem 0;
}

/* 真下に伸びる縦線 */
.bl_groupHead::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -32px;          /* 下にどれだけ出すか */
  width: 3px;
  height: 32px;           /* 線の長さ */
background: #cfd8dc;
  transform: translateX(-50%);
}


.el_groupHeadSub {
  font-size: 1rem;
  margin: 0 0 1rem 0;
  text-align: center;
	font-weight: 700;
}

.bl_group {
  padding: 5rem 1.5rem 5rem 1.5rem;
  background: #e9f0f4;
}

.bl_group_inner {
  max-width: 1100px;
  margin: 0 auto 0 auto;
  text-align: center;
}


.bl_groupLogo img {
  width: auto;
}

.bl_groupBoxes {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}

.bl_groupBox {
  background: #fff;
  border-radius: 0.75rem;
  padding: 2rem 1.5rem 2rem 1.5rem;
  width: 240px;
  box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.05);
  text-align: left;
}

.bl_groupBox h3 {
  font-size: 1rem;
  margin: 0 0 1rem 0;
  color: #025BAC;
	text-align: center;
	    font-weight: 700;
}

.bl_groupBox ul {
  list-style: none;
  padding: 0;
  margin: 0;
	    text-align: center;
}

.bl_groupBox li {
  font-size: .9rem;
  margin: 0 0 0.5rem 0;
	font-weight: 500;
}

.el_groupBottom {
    font-size: 1.6rem;
    margin: 0 0 3rem;
  font-weight: 700;
}
/* ===============================
   疑似要素の線（PCのみ）
================================ */

.bl_groupBoxes {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 auto 0 auto;
  max-width: 1100px;
}

.bl_groupBoxes::before {
  content: "";
  position: absolute;
  top: -4rem;
  left: 50%;
  width: 77%;                 /* ← ここを調整 */
  height: 2px;
  background: #cfd8dc;
  transform: translateX(-50%);
}

.bl_groupBox {
  position: relative;
  background: #fff;
  border-radius: 0.75rem;
  padding: 2rem 1rem 2rem 1rem;
  flex: 1;
  box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.05);
}

.bl_groupBox::before {
  content: "";
  position: absolute;
  top: -4rem;
  left: 50%;
  width: 2px;
  height: 4rem;
  background: #cfd8dc;
  transform: translateX(-50%);
}
.bl_logoArea {
  position: relative;
}

/* 上から中央の縦線 */
.bl_logoArea::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 2rem;        /* ロゴから横線まで */
  background: #333;
  transform: translateX(-50%);
}

/* 横線 */
.bl_logoArea::after {
  content: "";
  position: absolute;
  top: 2rem;
  left: 12.5%;         /* ボックス幅に合わせる */
  width: 75%;
  height: 1px;
  background: #333;
}

.bl_logoItem {
  position: relative;
}

/* 各ボックスの上に縦線 */
.bl_logoItem::before {
  content: "";
  position: absolute;
  top: -2rem;      /* 横線の位置に合わせる */
  left: 50%;
  width: 1px;
  height: 2rem;
  background: #333;
  transform: translateX(-50%);
}
/* ===================== */
/* CONTENTS */
/* ===================== */
.bl_contents .el_sectionSub .ja {
  color: #fff;
}

.bl_contents {
  background: #125EA7;
  padding: 100px 0;
  text-align: center;
}

.el_sectionSub {
  margin: 0 0 16px 0;
}

.el_sectionTitle {
  font-size: 40px;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin: 0 0 60px 0;
}

.bl_contents .el_sectionTitle {
  color: #fff;
}


/* グリッド */
.bl_contentsGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  list-style: none;
  padding: 0;
  margin: 0 auto 60px auto;
  max-width: 1300px;
}

.bl_contentsGrid img {
  width: 100%;
  height: auto;
  display: block;
}

/* ボタン */
.el_btn {
  display: inline-block;
  padding: 18px 60px;
  background: #fff;
  border-radius: 50px;
  font-weight: 700;
  color: #125EA7;
  text-decoration: none;
  transition: 0.3s;
}

.el_btn:hover {
  opacity: 0.8;
}


/* ===================== */
/* WORKS */
/* ===================== */
.bl_works .el_sectionTitle {
  color: #000;
}
.bl_works {
  padding: 100px 0;
  text-align: center;
  background: #fff;
}

.bl_worksLogo img {
  max-width: 300px;
  height: auto;
}

.bl_worksList {
  margin: 60px auto 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  max-width: 1100px;
}

.bl_workCard {
  background: #e9eff1;
  border-radius: 16px;
  padding: 32px;
  text-align: left;
}

.bl_workInner {
  display: flex;
  justify-content: space-between;
  gap: 24px;
}

.el_workNum {
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 12px;
	color: #025BAC;
}

.el_workNum span {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  margin-left: 8px;
}

.el_workLabel {
  display: inline-block;
  background: #0d5aa7;
  color: #fff;
  font-size: 14px;
  padding: 4px 10px;
  border-radius: 4px;
  margin-bottom: 12px;
}

.el_workPoints {
  padding-left: 18px;
  margin: 0;
}

.el_workPoints li {
  margin-bottom: 6px;
  font-size: 14px;
}

.bl_workImg img {
width: 160px;
height: 160px;
  border-radius: 12px;
}

.el_workResult {
  margin-top: 20px;
  background: #fff;
  padding: 14px;
  border-radius: 10px;
  font-weight: 600;
  text-align: center;
}

.el_workResult {
  position: relative;
  margin-top: 30px;
  background: #fff;
  padding: 14px;
  border-radius: 10px;
  font-weight: 600;
  text-align: center;
}

/* 黄色の▼ */
.el_workResult::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 12px solid #FFCC00
}
/* ===================== */
/* CONTENTS SECTION */
/* ===================== */

.bl_contentslist {
  background: #D2E9F0;
  padding: 100px 0;
  text-align: center;
}

.el_contentsNote {
  margin: 20px 0 50px;
  font-size: 15px;
  color: #333;
}

/* accordion */

.bl_accordion {
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
}

.bl_accordionItem {
  margin-bottom: 20px;
}

.bl_accordionHeader {
  width: 100%;
  background: #fff;
  border: none;
  padding: 18px 24px;
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  border-radius: 10px;
  cursor: pointer;
  position: relative;
	color: #025BAC;
}

/* ▼アイコン */
.bl_accordionHeader::after {
  content: "▼";
  position: absolute;
  right: 20px;
  font-size: 14px;
}

/* 開いたとき */
.bl_accordionItem.active .bl_accordionHeader::after {
  content: "▲";
}

.bl_accordionContent {
  display: none;
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  margin-top: 10px;
}

.bl_accordionItem.active .bl_accordionContent {
  display: block;
}
.bl_accordionList a {
  display: inline-block;
  color: #025BAC;          /* サイトの基調ブルー系 */
  text-decoration: none;
  font-weight: 500;
  transition: .2s;
}

.bl_accordionList a:hover {
  text-decoration: underline;
  color: #013f7a;
}


/* もし span.ja に個別指定している場合の保険 */
.bl_contents .el_sectionSub .ja {
  color: #fff;
}
/* ===================== */
/* FLOW SECTION */
/* ===================== */
.bl_flow .el_sectionTitle {
  color: #000000;
}
.el_flowNum {
  color: #65ADEC;
	font-size: 2rem;
}

.el_flowText {
  color: #005BAC;
	font-size: 1.5rem;
}


.bl_flow {
  background: #fff;
  padding: 100px 0;
  text-align: center;
}

.bl_flow .el_sectionTitle {
  color: #000;
}

.bl_flowSteps {
  display: flex;
  justify-content: center;
  margin: 60px auto;
  overflow: visible;
}

/* 共通 */
.bl_flowStep {
  position: relative;
  width: 254px;
  height: 180px;
  padding: 40px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color: #025BAC;
  font-weight: 600;

  clip-path: polygon(
    0% 0%,      /* 左上 */
    85% 0%,     /* 右上 */
    100% 50%,   /* 右とんがり */
    85% 100%,   /* 右下 */
    0% 100%,    /* 左下 */
    12% 50%     /* 左くぼみ（ここがポイント） */
  );
}


/* 左から色変える */
.bl_flowStep:nth-child(1) { background: #E1F5FF; }
.bl_flowStep:nth-child(2) { background: #CFEFFF; }
.bl_flowStep:nth-child(3) { background: #B8E6FF; }
.bl_flowStep:nth-child(4) { background: #9DDCFF; }
.bl_flowStep:nth-child(5) { background: #7FD1FF; }


/* SP */
@media (max-width: 767px) {
  .bl_flowSteps {
    flex-direction: column;
    align-items: center;
  }

  .bl_flowStep {
    clip-path: none;
    margin-left: 0;
    width: 80%;
    height: auto;
    margin-bottom: 20px;
    border-radius: 12px;
  }
}

/* 三角の色も順番で指定 */
.bl_flowStep:nth-child(1)::after { border-left: 40px solid #d2e9f0; }
.bl_flowStep:nth-child(2)::after { border-left: 40px solid #b8deec; }
.bl_flowStep:nth-child(3)::after { border-left: 40px solid #9fd2e6; }
.bl_flowStep:nth-child(4)::after { border-left: 40px solid #85c5df; }
.bl_flowStep:nth-child(5)::after { border-left: 40px solid #6bb8d8; }



/* 最後は三角消す */
.bl_flowStep:last-child::after {
  display: none;
}

/* SP */
@media (max-width: 767px) {
  .bl_flowSteps {
    flex-direction: column;
    align-items: center;
  }

  .bl_flowStep {
    margin-left: 0;
    width: 80%;
    margin-bottom: 20px;
  }

  .bl_flowStep::after {
    display: none;
  }
	  .bl_flowStep {
    flex-direction: row;      /* ← これで横並び */
    justify-content: center;
    align-items: center;
    gap: 15px;                /* 数字と文字の間 */
  }

.bl_flowStep {
    width: 100%;
    max-width: 650px;
    margin: 0 auto 30px;
	height:0px;

clip-path: polygon(
      0% 0%,        /* 左上 */
      50% 8%,       /* 上中央 少し下げる＝山 */
      100% 0%,      /* 右上 */

      100% 85%,     /* 右下手前 */
      50% 100%,     /* 下中央（既にOKの谷） */
      0% 85%        /* 左下手前 */
    );
  }
}


/* ===============================
   レスポンシブ
================================ */

@media screen and (max-width: 767px) {
.bl_problems {
    padding: 35px 20px;
	}
	.bl_tagList {
		background: #fff;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
        padding: 2rem 1rem 2rem 1rem;
        margin: 0 auto 0 auto;
	}
	.el_problemsLead {
margin: 0 auto;
		text-align: left;
}
  .bl_groupBoxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
  }

  .bl_groupBox {
    flex: 0 0 calc(50% - 5px);
    max-width: calc(50% - 5px);
	  padding: 10px
  }
  .bl_groupBoxes {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

.bl_groupHead
 {
    position: relative;
    display: block;
    background: none;
    padding: 0;
    border-radius: 12px;
    margin: 0 auto;
    margin-bottom: 10px;
}
  /* スマホでは線消す */
  .bl_groupHead::after,
  .bl_groupBoxes::before,
  .bl_groupBox::before {
    display: none;
  }

  .bl_worksList {
    grid-template-columns: 1fr;
  }

  .bl_workInner {
    flex-direction: column;
  }

  .bl_workImg img {
    width: 100%;
  }

  .bl_flowSteps {
    flex-direction: column;
    align-items: center;
  }

  .bl_flowStep {
    width: 80%;
    margin-bottom: 20px;
  }
	.el_btn {
    padding: 18px 35px;
}
	  .bl_contentsGrid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
	.bl_group {
    padding: 3rem 1.5rem 3rem 1.5rem;
	}
	.bl_contents,.bl_works,.bl_contentslist,.bl_flow {
    padding: 50px 0;
	}
	.el_flowNum {
    font-size: 1.2rem;
	}
	.el_flowText {
    font-size: 1.2rem;
	}
	}
/* ===============================
   こんなお悩みを解決しますページ
================================ */

.case__wrap {
  max-width: 1300px;
  margin: 0 auto;
}

.case__intro {
  text-align: center;
  margin: 6rem;
}

.case__intro p {
  font-size: 1.6rem;
  line-height: 1.8;
}

.case__block {
  margin-bottom: 8rem;
}


.case__header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 30px;
  padding-bottom: 16px;
  border-bottom: 1px solid #CCCCCC;
}
.case__box-title {
  color: #025BAC;
}
.case__title {
  font-size: 1.5rem;
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 1.6rem;
  flex-wrap: wrap;
}

.case__label {
  font-size: 1.2rem;
  background: #eaf2fb;
  color: #1e73be;
  padding: 0.6rem 1.2rem;
  border-radius: 2rem;
}

.case__content {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}

.case__block--reverse .case__content {
  flex-direction: row-reverse;
}

.case__text {
  flex: 1;
}

.case__text h3 {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  line-height: 1.6;
	font-weight: 700;
}

.case__text li {
  margin-bottom: 10px;
    font-size: 1rem;
  line-height: 1.8;
}

.case__box {
  background: #EEF3F3;
padding: 20px;
  border-radius: 8px;
  font-size: 1rem;
  line-height: 1.8;
}

.case__box-title {
  font-size: 1.1rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.case__box-title span {
  display: inline-block;
  background: #D9D9D9;
  padding: 4px 10px;
  border-radius: 5px;
	color: #000000;

}

.accent {
  color: #EA6686;
  font-weight: bold;
}

.case__image {
  flex: 1;
}

.case__image img {
  width: 100%;
  height: auto;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {

  .case {
    padding:0;
  }
.case__intro {
    text-align: center;
    margin: 30px 15px;
	}
  .case__content {
    flex-direction: column;
    gap: 0px;
  }

  /* reverseも強制的に縦並びに戻す */
  .case__block--reverse .case__content {
    flex-direction: column;
  }

  .case__image img {
    max-width: 100%;
  }

  .case__block {
    margin: 20px;
  }
.case__header {
    display: flex;
    flex-direction: column; /* ← 横並びやめる */
    align-items: flex-start;
    gap: 8px;
  }

  .case__title {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
  }
	.case__box {
    margin-bottom: 2rem;
		font-size: .8rem;
		padding:10px;
}
  .case__label {
    align-self: center;
font-size: 15px;
  }
.case__text h3 {
    font-size: 1.3rem;
	        margin: 10px 0;
  }
	.case__intro p {
    font-size: 1rem;
}
	  .case__image {
    order: -1;
  }
	}
/* ===============================
   タブレット
================================ */
@media screen and (max-width: 1023px) {


  .case__text h3 {
    font-size: 1.3rem;
  }

  .case__intro p {
font-size: .96rem;;
  }


  .case__image img {
    max-width: 90%;
	  margin: 0 auto;
  }
.case__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }	
.case__content {
    flex-direction: column;   /* 縦並びにする */
	        align-items: center;
  }
  /* reverseも強制的に縦並びに戻す */
  .case__block--reverse .case__content {
    flex-direction: column;
  }
  .case__image {
    order: -1;                /* 写真を一番上に */
  }
}

/* PCだけ改行 */
.pc-br {
  display: inline;
}
@media screen and (min-width: 767px) {
  .pc-br {
    display: block; 
  }
}
/* 通常は改行しない */
.sp-br {
    display: inline;
}

/* スマホ時のみ改行 */
@media screen and (max-width: 767px) {
    .sp-br {
        display: block;
    }
}
/* 相談事例カテゴリ別タブ */
.case__filter {
  margin: 0 0 2rem 0;
  text-align: center;
}

.case__filter button {
  margin: 0 0.5rem;
  padding: 0.5rem 1rem;
  border: 1px solid #1B499F;
  background: #fff;
  cursor: pointer;
}

.case__filter button.active {
  background: #1B499F;
  color: #fff;
}
.bl_bnr_bpo {
	max-width: 900px;
	margin: 50px auto 0;
}
.bl_bnr_bpo a:hover img {
	opacity: .9;
}
/* ===============================
講師・キャリコン一覧
================================ */
.bl_teachers_cont {
	display: grid;
	 grid-template-columns: repeat(6, 1fr);
	gap: 10px;
}
.bl_teachers_cont > li {
    background: #fff;
    box-shadow: 2px 2px 10px 2px #e6e6e6;
    padding: 10px;
}
.bl_teachers_cont > li a {
	display: block;
	height: 100%;
}
.instructor .profile .name {
    padding-top: 10px;
    font-size: 1rem;
    font-weight: bold;
    color: #000;
    letter-spacing: 0.1em;
}
.instructor .training_theme_ichiran .teature_youtube {
    display: block;
    width: 72%;
    bottom:0;
	position: absolute;
	bottom: 0;
}
.teature_youtube .overlap_low {
	margin: 8px 0;
}
.training_theme_ichiran .ichiran_comment {
    width: 100%;
}
.training_theme_ichiran .teature_youtube .overlap_up {
    position: absolute;
    left: 40px;
    top: 28px;
    bottom:0;
    width: 30% !important;
}
ul.teature {
    position: relative;
    max-width: 160px;
}
.instructor .ratio .i_catch-img img {
	display: block;
	width: 100%;
	min-width: 100%;
}
.training_theme_ichiran ul.teature > li,
.training_theme_ichiran,
.training_theme_ichiran h2,
.counseling_ichiran,
.counseling_ichiran h2 {
    font-size: .75rem;
}
.instructor .furigana {
    font-size: 8px;
	color: #ed5a03;
}
.instructor .profile .name {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1em;
    color: #000;
    letter-spacing: 0.1em;
}
.instructor .profile .furigana {
	font-size: .75rem;
    line-height: 1em;
    margin: 5px 0 8px;
    font-weight: bold;
    color: #ed5a03;
}
.instructor .instructor_list .profile .comment p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    line-height: 1.4em;
    margin-top: 1em;
}
.furigana.hp_cc {
	margin: 5px 0;
}
@media screen and (max-width: 1023px) {
	.bl_teachers_cont {
	 	grid-template-columns: repeat(4, 1fr);
	}
	.overlap_up {
		position: absolute;
    	left: 18px;
    	top: 12px;
    	width: 44% !important;
	}
	ul.teature {
        position: relative;
        max-width: 100%; 
	}
	.instructor .instructor_list .profile .furigana {
    	font-size: 8px;
		color: #ed5a03;
	}
	.overlap_low {
    	width: 100px;
	}
}
@media screen and (max-width: 767px) {
	.bl_teachers_cont {
	 	grid-template-columns: repeat(2, 1fr);
	}
	.instructor .profile .name {
		font-size: 1.0625rem;
	}
}
/* 検索窓 */
.search-content{
    max-width: 900px;
    margin: 50px auto 0;
}
.search-content .table {
	border: 1px solid #ed5a03;
	width: 100%;
    margin: 0 auto;
}
.searchform .title {
    font-size: 1.4em;
    color:#ed5a03;
	text-align:center
}
.search-content .top-3{margin-top: 3%;}
.search-content .btm-1{margin-bottom: 1%;}
.search-content .btm-2{margin-bottom: 2%;}
.search-content .wid-4 { width: 4%;}
.search-content .mar-r1 { margin-right: 1%;}

/*キーワード検索*/
.bl_search_box {
	display: grid;
	 grid-template-columns:	75% 1fr;
	gap: 30px;
}
#testSearchInput, .search-mix-m select.postform, .search-mix-l select.postform {
    font-size: 16px;
}
.search-normal,
.bl_search {
	padding: 20px;
}
.bl_search {
	border: 1px solid #ed5a03;	
}
.search-normal input {
    width: 100%;
	padding: 11px;
}
/*下の絞り込み検索ボックス*/
.bl_search_select {
	display: grid;
	 grid-template-columns:	75% 1fr;
	align-items: center;
	gap: 30px;
}
.bl_search_select_cont.hp_input{
	display: grid;
	 grid-template-columns:	1fr 1fr;
	gap: 15px;
}
.bl_search_ttl {
    font-size: 1.375rem;
    color: #ed5a03;
    text-align: center;
}
.search-mix-l dt, .search-mix-m dt{
    color:#ed5a03;
}
.bl_search_select select.postform {
    width: 100%;
	font-size: 15px;
}
.bl_search_select input {
    width: 100%;
}
.bl_search_desc {
	margin: 0 0 20px;
	font-size: 1.0625rem;
	text-align: center;
}
.bl_noHit {
	font-size: 1.0625rem;
	text-align: center;	
}
@media screen and (max-width: 767px){
	.search-normal,
	.bl_search {
		padding: 12px;
	}
	.bl_search_box,
	.bl_search_select {
    	gap: 12px;	
	    grid-template-columns: repeat(1, 1fr);
	}
	.bl_search_btn input,
	.bl_search_select_cont input {
		padding: 10px !important;
	}
}
/* ===============================
講師・キャリコン個別投稿
================================ */
.bl_teacher_s_cont {
	display: grid;
	grid-template-columns:	150px 1fr;
	gap: 40px;
	max-width: 1020px;
	margin: 0 auto;
}
.bl_teacher_s_prof h2 {
	font-weight: 600;
	font-size: 2.25rem;
}
.bl_teacher_s_furigana {
	font-family: "Barlow", sans-serif;
    font-size: 1.25rem;
    line-height: 1.2em !important;
    color: #dd5d27;
    font-weight: 400;
    margin: 0 0 10px;	
}
.bl_teacher_s_box {
	margin: 40px 0 0;
}
.bl_teacher_s_box h3 {
	padding: 0 0 10px;
    border-bottom: 1px solid #dd5d27;
    color: #dd5d27;
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 10px;
}
.bl_teacher_s .teature,
.bl_teacher_s_box p {
	line-height: 1.8;
}
.bl_teacher_s_box iframe {
	    width: 100%;
}
@media screen and (max-width: 767px){
	.bl_teacher_s_cont {
    	gap: 12px;	
	    grid-template-columns: repeat(1, 1fr);
	}
	.bl_teacher_s_img {
		max-width: 150px;
		margin: 0 auto;
	}
	.bl_teacher_s_prof h2 {
		text-align: center;
		font-size: 1.25rem;
	}
	.bl_teacher_s_furigana {
		text-align: center;
    	font-size: 1rem;
	}
	.bl_movie {
		 padding-bottom: 56.25%;
        height: 0;
		position: relative;
    	overflow: hidden;
	}
	.bl_movie iframe {
    	width: 100%;
    	height: 100%;
    	position: absolute;
    	top: 0;
    	left: 0;
	}
}
