@charset "UTF-8";
/* lower.css */

/*========= 下層共通予定 ===============*/
header {
    margin-top: -62px;
}
#bread_list {
    position: relative;
    z-index: 2;
}
.blossom {
    pointer-events: none;
}

/* bannerのとこのPC余白消す */
.seed_bnrs_features p.marM_B:last-of-type {
    margin-bottom: 0 !important;
}


/* 下層メインビジュアル */
#lower_mv {
	width: 100%;
	height: 202px; /* 140(basic-height) + 62(header) */
	display:  table;
	position: relative;
	margin-top:  62px;
	padding-top: 62px;
	background: no-repeat center bottom;
	background-size: cover;
	z-index: 2;
}
/* 下層h1 */
#lower_mv h1 {
	font-size: 22px;
	display: table-cell;
	vertical-align: middle;
	color: #fff;
	transform: translateY(-20%);
}

/* heading  */
/* h2 */
h2.h2_bgBorder {
	font-size: 20px;
	text-align: left;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	padding: 15px;
	color: #4d4d4d;
	border-top: 4px solid #2196c9;
}

.h2_bgBorder::before {
	content: "";
	width: 100%;
	display: inline-block;
	/* pc・sp共通? */
	margin-right: 10px;
	background: no-repeat center;
	background-size: contain;
}

/* h3 */
h3.h3_underLine {
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	margin-bottom:  20px;
	padding-bottom: 15px;
	color: #4d4d4d;
	border-bottom: 1px solid #2196c9;
}


/* content */
ol.number {
	list-style: inside auto;
}

li,
p  {
	font-size: 14px;
	font-weight: normal;
	text-align: justify;
}

span.small {
  font-size: 85%;
  line-height: 1;
}

p.heading_read {
    font-weight: bold !important;
}


/* decoration */
/* 背景色を白に(見出し部分に使用) */
.ttl_bg_w {
    background-color: #fff;
}


/* テキスト下の区切りのボーダー(上下「SP余白L」分のアキ) */
.cont_borderB {
	margin-bottom:  20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #2196c9;
}

/* ----- text_color:#4d4d4d ----- */
.course_contents_box,
.group_box {
    color: #4d4d4d;
}

/*========= 追加した共通 ===============*/

h2.h2_bgBorder_g {
  font-size: 20px;
  text-align: left;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  padding: 15px;
  color: #4d4d4d;
  border-top: 4px solid #86c03f;
}

.bg_border_g {
  background: repeating-linear-gradient(
    -45deg, #eeffe6, #eeffe6 2px, #fff 2px, #fff 5px);
  }

  .h2_bgBorder_g::before {
    content: "";
    width: 100%;
    display: inline-block;
    /* pc・sp共通? */
    margin-right: 10px;
    background: no-repeat center;
    background-size: contain;
  }
  /* heading */
  .h2_bgBorder_g::before {
    height: 28px;
    max-width: 25px;
    /* あとで画像入れる */
    background-image: url(/img/individual_guidance/icon_human_g.svg);
    background-size: contain;
  }



/*========= お知らせ ===============*/
/* news_box */
.news_wrap > dl:last-of-type {
	margin-bottom: 0 !important;
}

.news_box {
	font-size: 14px;
	align-items: center;
}

.news_box dd,
.news_box dt {
	font-weight: normal;
	text-align: justify;
}

.news_box dt    { line-height:1.7; }
.news_box .date { margin-right:10px; }

.news_box .tag {
	font-weight: bold;
	padding: 5px;
	color: #fff;
	background-color: #ea5e9b;
}
.news_cont { margin-top:10px; }


/* ===== ぱんくずリスト ===== */
/* SP下余白XL */
#bread_list {
	margin:0 auto 30px;
	padding:20px 0;
	background: #2196c9;
}
#bread_list * {
	box-sizing:border-box;
}
#bread_list li,
#bread_list a,
#bread_list a:hover,
#bread_list a:active {
    color: #fff;
    text-decoration: none !important;
}
#bread_list ol {
    width: 92%;
    margin: 0 auto;
    padding:0;
}
#bread_list ol li {
    font-weight: bold;
	margin-right: 15px;
	padding:0 0 0 25px;
	display: inline-block;
	color: #fff;
	position: relative;
	text-decoration:underline;
}
#bread_list ol li:first-child {
	padding-left:0;
}
#bread_list ol li:last-child {
	text-decoration:none;
}
#bread_list ol li:not(:first-child):before {
	content:">";
	position: absolute;
	left:0;
	color: #fff;
}
/* add */
#bread_list ol {
    max-width: 550px;
    margin: 0 auto;
}


/* ===== 下層メインビジュアル ===== */
#lower_mv {
    background-position: center bottom;
}
#lower_mv h1 {
	color:#fff !important;
}





/*========= media screen ===============*/
@media screen and (max-width:768px) {
	#bread_list ol { display:flex; }
}


@media screen and (min-width: 769px) {
	/*==== 下層共通になる予定 ====*/
	/* heading */
    /* 下層h1 */
    #lower_mv h1 {
		font-size: 40px;
	}
	
	/* h2 */
	h2.h2_bgBorder  {
		font-size: 30px;
		padding:20px;
	}
	/* h3 */
	h3.h3_underLine {
		font-size: 16px;
		margin-bottom:  20px !important;
		padding-bottom: 20px;
	}
    /* bannerのとこのPC余白消す */
    .seed_bnrs_features p.marM_B {
        margin-bottom: 0 !important;
    }
	/* 下層メインビジュアル */
	#lower_mv { height:300px; }
	/* content */
	li,
	p  { font-size:16px; }
	/* decoration */
	/* テキスト下の区切りのボーダー(上下「PC余白M」分のアキ) */
	.cont_borderB {
		margin-bottom:  40px;
		padding-bottom: 40px;
	}
	/*==== お知らせ ====*/
	/* news_box */
	.news_box        { font-size:16px; }
	.news_box.marL_B { margin-bottom:10px !important; }

	.news_box .news_cont {
		width: auto;
		width: 100%;
		max-width: 875px;
	}
	.news_box .date,
	.news_box .tag,
	.news_cont       { margin-bottom:10px; }
	.news_box .date  { margin-right:20px; }
    .news_box .tag   { margin-right:10px; }
	.news_box .tag   { padding:5px;  }
	.news_cont       { margin-top:0; }
	
    /* section */
    .flex_box.seed_bnrs_features {
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    .seed_bnrs_features {
    	padding: 0;
    }
    .seed_bnrs_features > p {
    	width: 31.5%;
    }
	/* SP下余白L */
	#bread_list {
		margin-bottom: 60px;
		padding: 30px 20px;
	}
	#bread_list ol {
		max-width: 1100px;
	}
	#bread_list ol li {
		margin-right: 20px;
		padding: 0 0 0 30px;
	}

	/* ===== 下層メインビジュアル ===== */
	#lower_mv {
		background-position: center bottom;
	}
	#lower_mv h1         { color:#fff    !important; }
	#lower_mv h1.-w-blue { color:#2196c9 !important; }
	#lower_mv h1.glow {
		text-shadow: #fff 0 0 3px,
		#fff 0 0 10px !important;
	}
	
}





@media screen and (min-width: 960px) {
  .pc_br2 {
    display: none;
  }
}





@media screen and (min-width: 995px) {
	/*==== 下層共通になる予定 ====*/
    header {
        margin-top: -89px;
    }
	#lower_mv {
		height: 389px; /* 300(basic-height) + 89(header) */
		margin-top: 89px;
		padding-top:89px;
	}
    /* 下層h1 */
    #lower_mv h1 {
    	transform: translateY(-10%);
    }
}