/*---------- 見出し -----------*/
.col_danraku_midashi.article {
  text-align: left;
  font-size: clamp(1.125rem, 0.852rem + 1.36vw, 1.875rem);
  display: flex;
  align-items: center;
}
.col_danraku_midashi.article::before {
  content: attr(data-number);
  display: inline-block;
  margin-right: .5em;
  padding-right: .5em;
  color: #ED9A79;
  border-right: 1px solid #ED9A79;
}
section {
  margin-bottom: 3em;
}
.col_marker_yellow {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FFF6DA));
  background: -o-linear-gradient(transparent 60%, #FFF6DA 60%);
  background: linear-gradient(transparent 60%, #FFF6DA 60%);
}
/*----------------------*/
.l_article_img img {
  width: 100%;
  border-radius: 10px;
}
/*----------------------------------
      リード文
-------------------------------------*/
section.l_test_lead p {
  margin: 3em auto;
  text-align: center;
  line-height: 2.5;
}
/*----------------------------------
      学校生活
-------------------------------------*/
section.l_test_school {}
section.l_test_school ul {
  width: 100%;
  display: grid;
  grid-gap: 10px;
  margin: 0 auto;
  grid-template-columns: 1fr 1fr 1fr;
  margin: 2.3em auto;
  text-align: center;
  justify-items: center;
  justify-content: center;
}
section.l_test_school ul li {
  display: flex;
  flex-direction: column;
  background: #FFF6DA;
  border-radius: 100%;
  height: 200px;
  width: 200px;
  justify-content: center;
  align-content: center;
  align-items: center;
}
section.l_test_school ul li span {
  display: block;
  text-align: center;
  line-height: 1.4;
  font-size: .9em;
  margin-bottom: .5em;
}
section.l_test_school ul img {
  width: 100%;
  height: 100px;
  object-fit: contain;
}
@media screen and (max-width: 650px) {
  section.l_test_school ul {
    display: flex;
    flex-wrap: wrap;
  }
}
/*----------------------------------
     インタビュー
-------------------------------------*/
section.l_test_interview div.l_interview_wrap {
  border-radius: 20px;
  padding: 1em 2em;
  position: relative;
  background:
    repeating-linear-gradient(45deg, rgba(0, 0, 0, 0.02) 0, rgba(0, 0, 0, 0.02) 1px, transparent 1px, transparent 3px), #FFF6DA;
}
section.l_test_interview div.l_interview_wrap h4 {
  text-align: center;
  margin-bottom: 1em;
  font-size: 1.2em;
}
section.l_test_interview div.l_interview_wrap h4 span {
  font-size: .7em;
  background: #D7B15F;
  border-radius: 100px;
  color: #fff;
  font-weight: normal;
  letter-spacing: .02em;
  padding: 0 .5em;
  margin-right: 1em;
}
section.l_test_interview div.l_interview_wrap div {
  background: #FCECB9;
  max-width: 450px;
  position: relative;
  margin: 1em auto 2em auto;
  border-radius: 20px;
  padding: 1em 2em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  align-items: center;
}
section.l_test_interview div.l_interview_wrap div img {
  position: absolute;
  right: 20px;
  bottom: -20px;
}
section.l_test_interview div.l_interview_wrap div h5 {
  font-size: 1em;
  border-bottom: 2px dotted #fff;
  max-width: 260px;
  text-align: center;
  margin-bottom: .5em;
}
section.l_test_interview div.l_interview_wrap div ul li {
  display: flex;
  align-items: center;
  margin-bottom: .5em;
}
section.l_test_interview div.l_interview_wrap div ul li span:first-child {
  color: #fff;
  background: #5684C3;
  height: 25px;
  width: 25px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  border-radius: 100px;
  margin-right: .5em;
  flex-shrink: 0;
}
section.l_test_interview div.l_interview_wrap div ul li span em {
  font-weight: bold;
  color: #5684C3;
}
.sc_center {
  text-align: center;
}
@media screen and (max-width: 768px) {
  section.l_test_interview div.l_interview_wrap h4 {
    margin-bottom: .5em;
  }
  section.l_test_interview div.l_interview_wrap h4 span {
    display: block;
    margin-bottom: .5em;
  }
  section.l_test_interview div.l_interview_wrap div img {
    position: absolute;
    right: -20px;
    bottom: -20px;
  }
  .sc_center {
    text-align: left;
  }
}
@media screen and (max-width: 500px) {
  section.l_test_interview div.l_interview_wrap div ul li > span {
    margin-bottom: 1em;
  }
  section.l_test_interview div.l_interview_wrap div {
    padding: 1em;
  }
}
/*----------------------------------
     01できること
-------------------------------------*/
section.l_test_cando .col_table_responsive {
  font-size: .9em;
  margin-bottom: 3em;
}
section.l_test_cando .col_table_responsive tbody td:first-child {
  width: 9em;
  font-weight: bold;
  vertical-align: middle;
}
section.l_test_cando .col_tablearea02 .col_table_responsive tr td {
  width: 10em;
}
@media screen and (max-width: 768px) {
  section.l_test_cando .col_tablearea01 th {
    display: block;
  }
  section.l_test_cando .col_table_responsive tbody td:nth-of-type(2):before {
    content: none;
  }
}
/*緑色のボックス*/
section.l_test_cando .l_green_box {
  max-width: 900px;
  width: 90%;
  margin: 0 auto;
  border-radius: 3px;
  background: #eaf4d8;
  border-radius: 20px;
  position: relative;
  background:
    repeating-linear-gradient(45deg, rgba(0, 0, 0, 0.02) 0, rgba(0, 0, 0, 0.02) 1px, transparent 1px, transparent 3px), #eaf4d8;
}
section.l_test_cando .l_green_box > div {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-around;
  align-content: flex-start;
  align-items: center;
}
section.l_test_cando .l_green_box div img {
  height: 86px;
  object-fit: contain;
}
section.l_test_cando .l_green_box span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: .5em 0;
  background-color: #51a67c;
  color: #fff;
  font-weight: 600;
  border-radius: 20px 20px 0 0;
}
section.l_test_cando .l_green_box ul {
  padding: 2em 2em 0 2em;
}
section.l_test_cando .l_green_box ul li {
  background: url("../image/icon-check.png")no-repeat;
  padding-left: 1.6em;
  background-position: left center;
  font-size: 1.1em;
  font-weight: 500;
  margin-bottom: .4em;
}
section.l_test_cando .l_green_box p {
  padding: 0 2em 2em 2em;
}
@media screen and (max-width: 768px) {
  section.l_test_cando .l_green_box > div {
    display: block;
    text-align: center;
  }
  section.l_test_cando .l_green_box ul li {
    text-align: left;
    font-size: 1em;
    line-height: 1.3;
    margin-bottom: 1em;
  }
  section.l_test_cando .l_green_box div img {
    margin-top: 1em;
    margin-bottom: -1em;
  }
}
/*----------------------------------
  02一人ひとりにあった支援
-------------------------------------*/
section.l_test_shien h4, .l_test_gakkoshien h4 {
  position: relative;
  display: inline-block;
  padding: .2rem 3rem .2rem 2rem;
  color: #fff;
  background: #5684C3;
  font-weight: normal;
  font-size: 1.1em;
  margin: 2em 0 .5em 0;
}
section.l_test_shien h4:after, .l_test_gakkoshien h4:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -30px;
  content: '';
  border-width: 1.1em 0 1.1em 30px;
  border-style: solid;
  border-color: transparent transparent transparent #5684C3;
}
section.l_test_shien .timeline_box {
  border: 10px solid #FFE493;
  border-radius: 20px;
  margin: 2em 0;
}
section.l_test_shien .timeline {
  max-width: 800px;
  width: 90%;
  margin: 50px auto;
  padding: 0 20px;
}
section.l_test_shien .timeline li {
  position: relative;
  list-style: none;
  padding: 0 0 60px 0;
}
section.l_test_shien .border-line {
  position: absolute;
  left: .5em;
  top: 0;
  width: 2px;
  height: 0;
  background: #F0D98B;
}
section.l_test_shien .timeline li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: #F0D98B;
  border-radius: 50%;
}
section.l_test_shien .timeline li:last-child .border-line {
  display: none;
}
section.l_test_shien .timeline li:last-child {
  padding: 0;
}
section.l_test_shien .timeline dl {
  display: flex;
  margin-left: 3em;
  align-items: flex-start;
  justify-content: flex-start;
  align-content: flex-start;
  gap: 2em;
}
section.l_test_shien .timeline dl dt {
  font-weight: 600;
  font-size: 1em;
  width: 38%;
}
section.l_test_shien .timeline dl dd {
  width: 62%;
  font-size: .85em;
}
section.l_test_shien .timeline dl dd div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  align-content: center;
  gap: 1em;
}
section.l_test_shien .timeline dl dd a.nopdf:after{
	content: none;
	display: inline;
}
@media screen and (max-width: 768px) {
  section.l_test_shien .timeline dl {
    display: block;
  }
  section.l_test_shien .timeline dl dt, section.l_test_shien .timeline dl dd {
    width: 100%;
  }
  section.l_test_shien .timeline dl dd a {
    display: block;
  }
  section.l_test_shien .timeline dl dd a img {
    margin: .5em;
    vertical-align: middle;
    float: left;
  }
}
/*テーブル*/
.unit_table_department {
  border: 1px solid #C8C8C8;
  font-size: .85em;
  margin-bottom: 1em;
}
.unit_table_department th {
  width: auto;
}
.unit_table_department tbody td {
  border-left: 1px #C8C8C8 solid;
  border-bottom: 1px #C8C8C8 solid;
}
/* 曜日の部分 */
.unit_table_department th {
  border: 1px solid #BC8069;
}
.unit_table_department tr td.name {
  background: #F3F3F3;
}
.unit_table_department .txt_left {
  text-align: left !important;
  padding-left: 1em !important;
}
@media only screen and (max-width: 240px) {
  .unit_table_department {
    width: auto;
    margin: 0;
  }
  .unit_table_department thead {
    display: initial;
    float: left;
  }
  .unit_table_department tbody {
    display: block;
    width: auto;
    overflow-x: scroll;
    white-space: nowrap;
    padding: 5px;
  }
  .unit_table_department th {
    display: block;
    width: auto;
  }
  .unit_table_department tbody tr {
    display: inline-block;
    margin: 0 -3px;
  }
  .unit_table_department td {
    display: block;
    width: 100%;
    padding: 5px 10px;
    padding-left: -10px;
  }
}
@media (max-width:960px) {
  section.l_test_shien .unit_table_department {
    font-size: 0.8em;
  }
}
/*----------------------------------
      03　学校で支援を進めるために
-------------------------------------*/
section.l_test_gakkoshien .col_table_responsive {
  font-size: .9em;
  margin-bottom: 3em;
}
section.l_test_gakkoshien .col_table_responsive tbody td:first-child {
  width: 9em;
  font-weight: bold;
  vertical-align: middle;
}
section.l_test_gakkoshien .col_tablearea02 .col_table_responsive tr td {
  width: 10em;
}
@media screen and (max-width: 768px) {
  section.l_test_gakkoshien .col_table_responsive tbody td:first-child {
    width: 100%;
    color: #E89373;
  }
  section.l_test_gakkoshien .col_table_responsive tbody td:first-child:before {
    content: "名称:";
  }
  section.l_test_gakkoshien .col_table_responsive tbody td:nth-of-type(2):before {
    content: "目的:";
  }
  section.l_test_gakkoshien .col_table_responsive tbody td:nth-of-type(3):before {
    content: "内容:";
  }
}
/*----------------------------------
     学校と話す３つのポイント
-------------------------------------*/
section.l_point p {
  margin-bottom: 0 !important;
}
section.l_point .l_point_wrap {
  border: 10px solid #5684C3;
  border-radius: 20px;
  padding: 0 2em 2em 2em;
  position: relative;
}
section.l_point .l_houganshi {
  max-width: 400px;
  padding: .6em 1.5em 1em 1.5em;
  background-color: #5684C3;
  text-align: center;
  font-weight: bold;
  font-size: 1.3em;
  margin: 0 auto 2em auto;
  color: #fff;
  border-radius: 0 0 20px 20px;
}
section.l_point .l_houganshi em {
  font-size: 1.4em;
  font-weight: bold;
}
section.l_point .l_houganshi img {
  vertical-align: middle;
  margin-right: .5em;
  width: 40px;
  height: 40px;
}
/*　ポイント　*/
section.l_point ul li .point_1block {
  display: flex;
  gap: 2em;
  margin: 2em auto;
  border-bottom: 1px dashed #96A7B3;
  padding-bottom: 2em;
}
section.l_point ul li:first-child .point_1block {
  margin: 1em auto 2em auto;
}
section.l_point ul li:last-child .point_1block {
  border-bottom: none;
  padding-bottom: 0;
}
/*ひだり側 -------*/
section.l_point ul li .point_1block .p_left_box {
  font-size: 1.5em;
  max-width: 173px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  align-items: center;
}
section.l_point ul li .point_1block .p_left_box span {
  background: #F0D98B;
  width: 60px;
  height: 60px;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: bold;
  margin-bottom: .5em;
}
/*みぎ側 -------*/
section.l_point ul li .point_1block .p_right_box {
  font-size: .95em;
}
section.l_point ul li .p_r_comment {
  display: flex;
  justify-content: center;
  position: relative;
  max-width: 300px;
  padding: .4em 1.2em;
  border-radius: 100px;
  background-color: #989898;
  color: #fff;
  margin: 1.4em auto -1em auto;
  font-size: .95em;
}
section.l_point ul li .p_r_comment::before {
  position: absolute;
  bottom: -13px;
  width: 30px;
  height: 15px;
  background-color: #989898;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: '';
}
section.l_point ul li .p_r_bottom {
  background: #F7F7F7;
  padding: 2em 1em;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  section.l_point .l_houganshi {
    font-size: 1em;
    text-align: center;
    line-height: 1.2;
  }
  section.l_point .l_houganshi img {
    width: 20px;
    height: 20px;
    display: block;
    margin: 0 auto .5em auto;
  }
  section.l_point ul li .point_1block {
    display: block;
  }
  /*ひだり側 -------*/
  section.l_point ul li .point_1block .p_left_box {
    font-size: 1.3em;
    margin: 0 auto 1em auto;
  }
  section.l_point ul li .point_1block .p_left_box span {
    width: 40px;
    height: 40px;
  }
}
/*----------------------------------
    	　　	おわりに
-------------------------------------*/
section.l_owari {
  margin-top: 5em;
}
section.l_owari p {
  text-align: center;
}
section.l_owari h3 {
  text-align: center;
  margin-bottom: .5em;
  font-size: 1.5em;
}
@media screen and (max-width: 768px) {
  section.l_owari p {
    text-align: left;
  }
}
/*-----------------------------------*/
section.l_gentei {
  margin-top: 5em;
}
.l_gentei_btn {
  background: #FFF4F0;
  padding: 3em 2em;
  text-align: center;
}
.l_gentei_btn a {
  text-decoration: none;
  padding: 1.3em 3em;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  font-weight: 500;
  background-color: #fff;
  border: none;
  border-radius: 45px;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease 0s;
  cursor: pointer;
  outline: none;
  display: block;
}
.l_gentei_btn a:hover {
  background-color: #F1AF8E;
  box-shadow: 0px 15px 20px rgba(226, 129, 107, 0.4);
  color: #fff !important;
  transform: translateY(-27px);
  text-decoration: none;
}
.l_gentei_btn a:active {
  transform: translateY(-14px);
}
.l_gentei_btn img {
  display: inline-block;
  height: 20px;
  width: 20px;
  vertical-align: middle;
  margin-right: .5em;
}
/*======================================================
                心理士向け　限定コンテンツ
======================================================*/
section.l_seminar .unit_descriptionbox {
  padding: 2em 0;
}
section.l_seminar h3 {
  font-size: 1.4em;
  margin: 0 1.5em;
}
section.l_seminar h3 span {
  background: #F3BAB6;
  border-radius: 100px;
  font-size: .8em;
  padding: .2em .6em;
  margin-right: .6em;
}
section.l_seminar h4 {
  color: #DF948E;
  margin: .5em 2.5em 1em 2.5em;
}
section.l_seminar .unit_table_side {
  margin: 0 auto;
  font-size: .9em;
  width: 90%;
  margin: 0 auto;
}
section.l_seminar .unit_table_side table tr:last-child th, section.l_seminar .unit_table_side table tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  section.l_seminar h3 {
    font-size: 1.2em;
  }
  section.l_seminar h3 span {
    display: block;
    width: 60px;
    text-align: center;
  }
  section.l_seminar .unit_table_side table tr:last-child th {
    border-bottom: 1px solid #DCDCDC;
  }
}
/*-------------------------------------
			アコーディオン
-------------------------------------*/
.l_accordion_wrap .accordion_one {
  max-width: 100%;
  margin: 0 auto 1.5em auto;
}
.l_accordion_wrap .accordion_one .acc_title {
  background-color: #F0A78B;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  padding: 20px 11%;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
  border-radius: 10px;
}
/* 開いているとき */
.l_accordion_wrap .accordion_one .acc_title.open {
  border-radius: 10px 10px 0 0;
}
.l_accordion_wrap .accordion_one .acc_title > div {
  display: flex;
  justify-content: flex-start;
  gap: 1em;
  line-height: 1.3;
}
.l_accordion_wrap .accordion_one .acc_title > div div span {
  font-size: .8em;
}
.l_accordion_wrap .accordion_one .acc_title:hover {
  opacity: .8;
}
/* アイコンボックス */
.l_accordion_wrap .accordion_one .acc_title .acc_icon_box {
  position: absolute;
  top: 50%;
  right: 5%;
  width: 24px;
  height: 16px;
  transform: translateY(-50%);
}
/* V字の線を2本作る */
.l_accordion_wrap .accordion_one .acc_title .acc_icon {
  position: relative;
  width: 100%;
  height: 100%;
}
.l_accordion_wrap .accordion_one .acc_title .acc_icon::before, .l_accordion_wrap .accordion_one .acc_title .acc_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 14px;
  height: 2px;
  background: #fff;
  transition: 0.3s;
}
/* 左の線 */
.l_accordion_wrap .accordion_one .acc_title .acc_icon::before {
  left: 0;
  transform: rotate(45deg);
}
/* 右の線 */
.l_accordion_wrap .accordion_one .acc_title .acc_icon::after {
  right: 0;
  transform: rotate(-45deg);
}
/* 開いているとき（逆Vにする） */
.l_accordion_wrap .accordion_one .acc_title.open .acc_icon::before {
  transform: rotate(-45deg);
}
.l_accordion_wrap .accordion_one .acc_title.open .acc_icon::after {
  transform: rotate(45deg);
}
.l_accordion_wrap .accordion_one .acc_content {
  display: none;
  padding: 30px 30px;
  border-left: 2px solid #F0A78B;
  border-right: 2px solid #F0A78B;
  border-bottom: 2px solid #F0A78B;
  box-sizing: border-box;
}
.l_accordion_wrap .accordion_one .acc_content.stay {
  display: block;
}
@media screen and (max-width: 1024px) {
  .l_accordion_wrap .accordion_one .acc_title {
    font-size: 18px;
  }
  .l_accordion_wrap .accordion_one .acc_title .acc_icon_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
}
@media screen and (max-width: 767px) {
  .l_accordion_wrap .accordion_one .acc_title {
    font-size: 16px;
    text-align: left;
    padding: 15px 60px 15px 15px;
  }
}
.l_accordion_wrap .unit_table_side {
  font-size: .85em;
  background: #F5F5F5;
  padding: 1em;
  border-radius: 10px;
  margin: 0;
}
.l_accordion_wrap .unit_table_side table {
  border-top: none;
}
.l_accordion_wrap .unit_table_side table tr:last-child th, .l_accordion_wrap .unit_table_side table tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .l_accordion_wrap .accordion_one .acc_title > div {
    display: block;
  }
  .l_accordion_wrap .unit_table_side table tr:last-child th {
    border-bottom: 1px solid #DCDCDC;
  }
}
/* youtube */
/* 横並び */
.youtube_wrap {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
/* 1つの動画 */
.youtube_box {
  flex: 1 1 48%;
  position: relative;
  aspect-ratio: 16 / 9;
}
/* iframeを親いっぱいに */
.youtube_box iframe {
  width: 100%;
  height: 100%;
  border-radius: 10px;
}
/* スマホで縦並び */
@media (max-width: 768px) {
  .youtube_wrap {
    display: block;
  }
  .youtube_box {
    flex: 1 1 100%;
    margin-bottom: 2em;
  }
}
/*---------------------*/
.shiryo_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(6, auto);
  grid-auto-flow: column;
  margin: 0 auto;
  counter-reset: item;
  font-size: .85em;
}
.shiryo_grid li {
  counter-increment: item;
  list-style: none;
  display: flex;
  align-items: flex-start;
}
.shiryo_grid li::before {
  content: counter(item);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.1em;
  height: 1.1em;
  border-radius: 50%;
  background: #FBE9E1;
  color: #F0A78B;
  font-weight: bold;
  margin-right: 0.6em;
  flex-shrink: 0;
  margin-top: .4em;
}
@media screen and (max-width:768px) {
  .shiryo_grid {
    display: block;
  }
  .unit_table_department .sp_font_size {
    font-size: 1em !important;
  }
  .col_table_responsive tbody .table_title.sp_title {
    display: block;
    padding-left: 0;
    margin-left: 0;
    background: none;
    color: #5A5151;
    text-align: left;
  }
	.col_table_responsive tbody tr:nth-child(2){
		background: #F3F3F3;
	}
section.l_test_cando .col_table_responsive tbody td:first-child {
    width: 9em;
    font-weight: bold;
    vertical-align: middle;
    margin-bottom: 0;
    padding-bottom: 0;
}
}