@charset "UTF-8";

/*-------------------------------
中ページ用のスタイル
-------------------------------*/
/*--- ページヘッダー ---*/
.o-page-title--single {
  color: var(--color-main);
  font-size: 20px;
  line-height: 1.5em;
  font-weight: bold;
  margin-bottom: 1.25rem;
}

@media (min-width: 40em) {
  .o-page-title--single {
    font-size: 30px;
  }
}

.o-page__mv {
  width: 100%;
}

.o-page__mv img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 110/36;
}


/* 学ぶ・知る */
.o-learn_know__explanatory {
  margin-bottom: 30px;
}

@media (min-width: 40em) {
  .o-learn_know__explanatory {
    margin-bottom: 50px;
  }
}

.o-learn_know__links {
  margin-bottom: 40px;
}

@media (min-width: 40em) {
  .o-learn_know__links {
    margin-bottom: 70px;
  }
}

.o-lk__links__explanatory {
  margin: 20px 0;
}

@media (min-width: 40em) {
  .o-lk__links__explanatory {
    margin: 30px 0;
  }
}

.o-prefectural-efforts {
  margin-bottom: 40px;
}

@media (min-width: 40em) {
  .o-prefectural-efforts {
    margin-bottom: 80px;
  }
}

.o-pre_efforts__explanatory {
  margin: 20px 0;
}

@media (min-width: 40em) {
  .o-pre_efforts__explanatory {
    margin: 30px 0 40px;
  }
}

.o-pre_efforts__content {
  background-color: #F1F1F1;
  padding: 40px 0 60px;
}

.o-pre_efforts__title {
  font-size: 20px;
  font-weight: bold;
  line-height: 68px;
  border-top: 1px solid #B3B3B3;
  border-bottom: 1px solid #B3B3B3;
  display: flex;
}

@media (min-width: 40em) {
  .o-pre_efforts__title {
    font-size: 28px;
  }
}

.o-pre_efforts__title .c-btn {
  line-height: 1em;
  padding: 1rem 70px;
  margin-bottom: 1.5rem;
}

@media (min-width: 40em) {
  .o-pre_efforts__title .c-btn {
    margin: auto;
    margin-right: 0;
  }
}

.o-pre_efforts__item {
  margin-top: 38px;
}

.o-pre_efforts__naem {
  font-size: 18px;
  font-weight: bold;
  color: var(--color-main);
  margin-top: 1.0rem;
}

@media (min-width: 40em) {
  .o-pre_efforts__naem {
    font-size: 22px;
  }
}

.o-pre_efforts__comment {
  color: #333333;
}

.o-pre_efforts__img {
  width: 100%;
  aspect-ratio: 350 / 210;
}

.o-pre_efforts__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}

.o-search-efforts {
  margin-top: 40px;
}

@media (min-width: 40em) {
  .o-search-efforts {
    margin-top: 80px;
  }
}

.o-search-efforts__head {
  margin: 20px 0;
}

@media (min-width: 40em) {
  .o-search-efforts__head {
    margin: 30px 0;
  }
}

.o-search-efforts__main {
  border: 5px solid var(--color-main);
  padding: 20px 20px 25px;
}

@media (min-width: 40em) {
  .o-search-efforts__main {
    padding: 30px 36px 40px;
  }
}

.o-search-efforts__main label {
  cursor: pointer;
}

/* つながる・分かち合う */
.o-event-info {
  margin-bottom: 60px;
}

.o-connect-share__explanatory {
  margin-bottom: 40px;
}

@media (min-width: 40em) {
  .o-event-info {
    margin-bottom: 100px;
  }

  .o-connect-share__explanatory {
    margin-bottom: 60px;
  }
}

.o-event_items {
  padding-top: 30px;
}

.o-event_item {
  margin-bottom: 20px;
  padding: 16px;
  border: 5px solid #F0F0F0;
}

.o-event_item:last-of-type {
  margin-bottom: 0;
}

.o-event_content {
  margin-top: 25px;
}

.o-event_content--text {
  font-size: 15px;
  margin: 15px 0 25px;
}

@media (min-width: 40em) {
  .o-event_items {
    padding-top: 44px;
  }

  .o-event_item {
    margin-bottom: 20px;
    padding: 30px 34px;
  }

  .o-event_content {
    margin-top: 30px;
  }

  .o-event_content--text {
    font-size: 16px;
    margin: 20px 0 30px;
  }
}

.o-event_flyer {
  width: 60%;
  height: auto;
  margin: 0 auto;
}

.o-event_flyer img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
  aspect-ratio: 139/195;
}

@media (min-width: 40em) {
  .o-event_flyer {
    width: 172px;
    margin: 0;
    margin-right: 50px;
  }
}

.o-event-tag--prefecture {
  display: inline-block;
  padding: 0 20px;
  line-height: 2;
  font-size: 14px;
  color: white;
  background-color: var(--color-main);
  border-radius: 9999px;
  font-weight: bold;
  text-align: center;
  margin-top: 1.5rem;
}


@media (min-width: 40em) {
  .o-event-tag--prefecture {
    margin-top: 0;
    font-size: 12px;
  }
}

.o-event_title {
  font-size: 20px;
  font-weight: bold;
  color: var(--color-main);
  vertical-align: top;
  margin-top: 0.3rem;
}

@media (min-width: 40em) {
  .o-event_title {
    font-size: 24px;
    margin-top: -0.5em;
  }
}

body .o-event_item__table {
  table-layout: auto;
  word-break: break-all;
}

body .o-event_item__table th,
body .o-event_item__table td {
  border: none;
  background-color: #ffffff;
  display: block;
  width: 100%;
  text-align: left;
  padding: 0;
}

body .o-event_item__table th {
  font-weight: bold;
}

@media (min-width: 40em) {

  body .o-event_item__table th,
  body .o-event_item__table td {
    width: auto;
    display: table-cell;
    vertical-align: top;
  }

  body .o-event_item__table th {
    width: 140px;
    font-size: 18px;
  }
}


.o-searchform--cp_group .o-search-head {
  width: 100%;
}

@media (min-width: 40em) {
  .o-searchform--cp_group .o-search-head {
    width: 160px;
  }
}

.o-select--location,
.o-select--school {
  width: 530px;
  font-size: 18px;
}

/* 探究学習連携協力団体紹介 */

.o-group {
  margin-bottom: 60px;
}
.o-group__explanatory {
  margin: 16px 0;
}
@media (min-width: 40em) {
  .o-group {
    margin-bottom: 100px;
  }
  .o-group__explanatory {
    margin: 30px 0;
  }
}

.o-group__explanatory__scroll {
  height: 250px;
}
.o-group__search {
  border: 5px solid var(--color-main);
  padding: 20px;
  margin-bottom: 50px;
}

@media (min-width: 40em) {
  .o-group__explanatory__scroll {
    height: auto;
  }
  .o-group__search {
    border: 5px solid var(--color-main);
    padding: 32px;
    margin-bottom: 70px;
  }
}

.o-group__search label {
  cursor: pointer;
}

.o-group__heading {
  font-size: 20px;
  font-weight: bold;
  color: #3D65AC;
}
@media (min-width: 40em) {
  .o-group__heading {
    font-size: 22px;
  }
}

.o-group__num {
  margin-top: 15px;
  margin-bottom: 20px;
}
.o-group-tabs {
  margin: 16px 0 10px;
  border-bottom: 2px solid #E0E0E0;
}
@media (min-width: 40em) {
  .o-group-tabs {
    margin: 10px 0 20px;
  }
}
.o-group-tab {
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
  padding: 12px calc(10vw - 30px);
  text-align: center;
  border: 1px solid #E0E0E0;
  border-bottom: none;
  background-color: #fff;
  color: var(--color-main);
  cursor: pointer;
}
@media (min-width: 40em) {
  .o-group-tab {
    width: 200px;
    font-size: 18px;
    padding: 20px 0;
  }
}
.o-group-tab.select {
  border-bottom: 1px solid var(--color-main);
  background-color: var(--color-main);
  color: #ffffff;
  margin-bottom: -1px;
  cursor: auto;
}
@media (min-width: 40em) {
  .o-group-list .o-group-tab {
    font-size: 16px;
    line-height: 1em;
    padding: 10px 17px;
  }
}

.o-group__table_area {
  overflow-x: scroll;
}
.o-group__table_area .o-group-school-legend {
  font-size: 14px;
}
@media (min-width: 40em) {
  .o-group__table_area {
    overflow-x: initial;
  }
  .o-group__table_area .o-group-school-legend {
    font-size: 16px;
  }
}

.o-group__table {
  width: 1100px !important;
}
@media (min-width: 40em) {
  .o-group__table {
    white-space: wrap;
    width: 100% !important;
  }
}
body table.o-group__table th,
body table.o-group__table td {
  border: 1px solid #DDDDDD;
  padding: 12px 10px;
  font-size: 14px;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
}
body table.o-group__table th {
  background-color: #F1F1F1;
  padding: 5px 5px;
  text-align: center;
}

.o-group__table i {
  font-size: 16px;
  background-color: var(--color-main);
  color: #ffffff;
  padding: 10px;
  border-radius: 50%;
}

.o-group__table__name{
  width: 240px;
  text-align: justify;
}
.o-group__table__support {
  width: auto;
  text-align: justify;
}
.o-group__table__location {
  white-space: nowrap;
  width: 90px;
}
.o-group__table__school_type {
  width: 160px;
}
.o-group__table__school {
  width: 120px;
}
.o-group__table__mail,
.o-group__table__url {
  width: 60px;
  text-align: center;
}
.o-group__table__tel {
  width: 113px;
}

.o-group__table i {
  font-size: 18px;
  padding: 10px;
}

.o-group__table .c-icon--elementary,
.o-group__table .c-icon--junior,
.o-group__table .c-icon--high,
.o-group__table .c-icon--university {
  width: 2.2em;
  height: 2.2em;
}

/* 探究学習連携協力団体紹介詳細ページ */

.o-group__single .o-group__table {
  width: auto !important;
}
.o-group__single .o-group__table,
.o-group__single .o-group__table tr,
.o-group__single .o-group__table th,
.o-group__single .o-group__table td {
  display: block;
}
@media (min-width: 40em) {
  .o-group__single .o-group__table {
    width: 1100px !important;
  }
  .o-group__single .o-group__table,
  .o-group__single .o-group__table tr,
  .o-group__single .o-group__table th,
  .o-group__single .o-group__table td {
    display: revert;
  }
  .o-group__single .o-group__table th{
    vertical-align: middle;
  }
}
.o-group__single td {
  width: 100% !important;
}
@media (min-width: 40em) {
  .o-group__single td {
    width: auto !important;
    padding: 12px 20px !important;
  }
}
.o-group__single .o-group__table th {
  width: 100%;
  font-weight: bold;
}
@media (min-width: 40em) {
  .o-group__single .o-group__table th {
    width: 120px !important;
  }
}
.o-group__single .o-group__table .o-group__table__mail,
.o-group__single .o-group__table .o-group__table__url {
  text-align: center;
}
@media (min-width: 40em) {
  .o-group__single .o-group__table .o-group__table__location,
  .o-group__single .o-group__table .o-group__table__mail,
  .o-group__single .o-group__table .o-group__table__url {
    text-align: left;
  }
}
.o-group__single .o-group__table .c-icon--elementary,
.o-group__single .o-group__table .c-icon--junior,
.o-group__single .o-group__table .c-icon--high,
.o-group__single .o-group__table .c-icon--university,
.o-group__single .o-group__table .c-icon--unspecified {
  width: 2em;
  height: 2em;
}

.o-group__single .o-group__table .o-group__table__mail .c-btn,
.o-group__single .o-group__table .o-group__table__url .c-btn {
  width: 230px;
  padding: 1rem 50px;
  font-size: 14px;
  line-height: 0.25em;
}

.o-group__single .o-group__table .c-btn::before {
  top: 30%;
  width: 20px;
  right: 18px;
}

.o-related_links {
  margin-bottom: 40px;
}

@media (min-width: 40em) {
  .o-related_links {
    margin-bottom: 60px;
  }
}

.o-related_links__item {
  display: block;
}

.o-related_links__item:hover {
  opacity: 0.8;
}

.o-related_links__item img {
  object-fit: cover;
  aspect-ratio: 345/100;
}

.o-staff_only__explanatory {
  margin: 35px 0 50px;
}

body .o-staff_only--btn {
  background-color: #01418E;
  border-color: #01418E;
}

body .o-staff_only--btn:hover {
  background-color: #ffffff;
  color: #01418E;
  border-color: #01418E;
}

body .o-staff_only--btn:hover::after,
body .o-staff_only--btn:hover::before {
  /* background-color: #01418E; */
}

.o-staff_only--btn i {
  margin-left: -24px;
  margin-right: 24px;
}

/* 教員専用ページ */
.o-staff_only__container {
  margin-top: 4rem;
}

.o-staff_news__head {
  font-weight: bold;
  font-size: 14px;
}

.o-staff_news__head span {
  font-size: 36px;
  font-weight: 600;
  color: var(--color-main);
  margin-right: 16px;
}

@media (min-width: 40em) {
  .o-staff_news__head span {
    font-size: 44px;
    margin-right: 35px;
  }
}

.o-staff-mvunder {
  /* text-align: center; */
  font-weight: bold;
}

.o-staff-mvunder--ex {
  /* text-align: center; */
  font-size: 1rem;
  margin-top: 10px;
  margin-bottom: 2rem;
}

@media (min-width: 40em) {
  .o-staff-mvunder--ex {
    /* text-align: center; */
    font-size: 1rem;
    margin-top: 15px;
    margin-bottom: 3rem;
  }
}

.o-staff_only .o-staff_news {
  margin-bottom: 40px;
}

.o-staff_news__item {
  background-color: #F6F6F6;
  padding: 18px 34px;
  margin-bottom: 10px;
}

.o-staff_news--l {
  width: 100%;
}

.o-staff_news--r {
  width: auto;
}

.o-staff_news__title {
  font-weight: bold;
  margin-bottom: 0.75rem;
}

.o-staff_news__date {
  color: #8C8C8C;
  font-size: 13px;
  width: auto;
  margin-right: 1rem;
}

.o-staff_news__cat {
  color: var(--color-main);
  border: 1px solid var(--color-main);
  font-size: 10px;
  padding: 6px 14px 2px;
  text-align: center;
  font-weight: bold;
  border-radius: 15px;
  line-height: 1em;
  display: block;
}

.o-staff_news__notes {
  margin: 1rem 0 1.5rem;
}

@media (min-width: 40em) {
  .o-staff_only .o-staff_news {
    margin-bottom: 70px;
  }

  .o-staff_news--l {
    width: auto;
    display: inline-block;
    margin-right: 22px;
  }

  .o-staff_news__date {
    font-size: 14px;
    width: 100%;
    margin-right: 0;
    margin-bottom: 6px;
  }

  .o-staff_news__cat {
    padding: 0 14px;
    line-height: 2em;
  }
}

.o-staff_event__notes {
  margin-top: 1rem;
  margin-bottom: -1rem;
}

.o-staff_event--bg {
  width: 100%;
  padding: 52px 0 40px;
  margin-top: 50px;
  background-color: #F7F4ED;
}

.o-staff_event__img {
  width: 100%;
  aspect-ratio: 16/9;
  position: relative;
}

.o-staff_event__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
  margin: 0;
}

.o-staff_event__right {
  margin-top: 1rem;
}

.o-staff_event___tag {
  width: 111px;
  height: 23px;
  line-height: 23px;
  text-align: center;
  font-size: 12px;
  color: #00A3D9;
  border: 1px solid #00A3D9;
  border-radius: 12px;
  margin-bottom: 10px;
}

.o-staff_event__date {
  /* color: #ffffff; */
  font-size: 18px;
}

.o-staff_event__explanation {
  /* color: #ffffff; */
}

.o-staff_event__attachment a {
  /* color: #ffffff; */
}

.o-staff_event--bg .swiper-pagination--efforts .swiper-pagination-bullet-active {
  background-color: #ffffff;
}

@media screen and (min-width: 40em) {
  .o-staff_event__img {
    width: 320px;
  }

  .o-staff_event__right {
    margin-top: 0;
    margin-left: 44px;
  }

  .swiper-button-prev--efforts,
  .swiper-button-next--efforts {
    display: none;
  }

  .o-staff_event--bg .swiper-slide {
    margin-bottom: 40px;
  }

  .o-staff_event--bg .swiper-slide:last-of-type {
    margin-bottom: 0;
  }

  .o-staff_event--bg .swiper-wrapper {
    display: block;
  }
}

.o-btnarea--staff_event {
  background-color: #F6F6F6;
  margin-top: 40px;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  padding: 40px 0 25px;
}

@media (min-width: 40em) {
  .o-btnarea--staff_event {
    margin-top: 63px;
    margin-right: 0;
    margin-left: 0;
    padding: 45px 0 30px;
  }
}

a.c-btn--staff_event {
  background-color: #ffffff;
  color: #29B0BF;
  border: 4px solid #E6E6E6;
  text-align: center;
  min-width: 351px;
}

a.c-btn--staff_event:hover {
  background-color: #E6E6E6;
  color: #29B0BF;
}

a.c-btn--staff_event::after,
a.c-btn--staff_event::before {
  content: none;
}

@media (min-width: 40em) {
  a.c-btn--staff_event {
    font-size: 18px;
  }
}

.o-staff_db_exp {
  font-size: 1rem;
  margin: 2rem 0;
}

.o-terms_of_use {
  height: 15em;
  overflow-y: scroll;
  font-size: 14px;
  padding: 1rem;
  border: 1px solid #E6E6E6;
}

@media (min-width: 40em) {
  .o-terms_of_use {
    font-size: 16px;
  }
}

.o-staff_event_btn_area .c-btn {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

/* 検索フォーム 学ぶ・知る */
.o-search-head {
  font-size: 20px;
  font-weight: bold;
  color: var(--color-main);
}

@media (min-width: 40em) {
  .o-search-head {
    font-size: 22px;
  }
}

.o-search-head i {
  color: #CCCCCC;
  margin-right: 10px;
}

input[type="checkbox"] {
  transform: scale(1.5);
  /* margin: 0 6px 0 0;
  border-bottom: #B3B3B3; */
}

.o-search-area--item,
.o-search-cat--item {
  font-size: 15px;
  display: inline-block;
  margin-right: 1em;
}

@media (min-width: 40em) {

  .o-search-area--item,
  .o-search-cat--item {
    font-size: 16px;
    display: block;
    margin-right: 0;
  }
}

.o-search-cat {
  margin-top: 30px;
}

.o-search-cat__head {
  width: 100%;
  font-weight: bold;
}

@media (min-width: 40em) {
  .o-search-cat__head {
    width: 150px;
    font-size: 18px;
  }
}

.o-search-keyword {
  margin-top: 30px;
}

form input.c-btn {
  padding: 0;
  text-align: center;
  width: 290px;
  max-width: 100%;
  line-height: 50px;
  position: relative;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
}

form .c-arrow:hover input.c-btn {
  background-color: #ffffff;
  color: #505050;
}

form input.c-btn::before {
  content: none;
}

form input.c-btn-webkit-search-cancel-button {
  -webkit-appearance: none;
  /* デフォルトのサーチキャンセルボタンを非表示にする場合 */
}

.c-arrow:hover::before,
.c-arrow:hover:after {
  /* background-color: #505050; */
}

.o-search-glass {
  position: relative;
  width: auto;
  flex-grow: 1;
}

.o-search-glass::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f002";
  color: #98A6B5;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  /* background-color: #ffffff; */
}

.o-search-glass input[type="search"]:-webkit-autofill {
  box-shadow: 0 0 0px 1000px #ffffff inset;
}

body a.c-btn.o-btn--mini {
  max-height: 100%;
  padding: 10px 45px 10px 32px;
  font-size: inherit;
  line-height: 10px;
  vertical-align: middle
}

body a.c-btn.o-btn--mini::before {
  right: 10px;
  width: 25px;
}

body a.c-btn.o-btn--mini::after {
  top: 35%;
  right: 7px;
  width: 16px;
}

/* ご挨拶 */
@media (max-width: 39.9375rem) {
  .u-greeting-photo {
    width: 60%;
    margin: auto;
  }
}


@media (min-width: 40em) {
  .o-news-tab--news {
    margin: 0 0 0 10px !important;
  }
}

/* 教員専用　イベント詳細 */
.o-staff_detail__img {
  margin-top: 30px;
}

@media (min-width: 40em) {
  .o-staff_detail__img {
    margin-top: 57px;
    padding: 0 20%;
  }
}

.o-staff_event__attachment--detaiil-area {
  margin-top: 1.5rem;
}

@media (min-width: 40em) {
  .o-staff_event__attachment--detaiil-area {
    margin-top: 2rem;
  }
}

.o-staff_detail__main_text {
  margin-top: 2rem;
}

@media (min-width: 40em) {
  .o-staff_detail__main_text {
    margin-top: 3.5rem;
  }
}

.o-staff-detail__btnarea {
  margin-top: 4rem;
}

@media (min-width: 40em) {
  .o-staff-detail__btnarea {
    margin-top: 6rem;
  }
}

.o-page-h2--staff-event {
  margin-top: 3.5rem;
}

@media (min-width: 40em) {
  .o-page-h2--staff-event {
    margin-top: 5.5rem;
  }
}

/* イベント案内詳細 */
.o-event-detail-item {
  margin-top: 30px;
}

@media (min-width: 40em) {
  .o-event-detail-item {
    margin-top: 44px;
  }
}

@media (min-width: 40em) {
  .o-event-detail-item .o-event_flyer {
    width: 325px;
  }
}

.o-event-detail-item .o-event_item__table tr {
  border-top: 1px solid #B3B3B3;
  padding: 1rem 0;
  display: block;
}

.o-event-detail-item .o-event_item__table tr:last-child {
  border-bottom: 1px solid #B3B3B3;
}

.o-event-detail-item .o-event_item__table th {
  color: var(--color-main);
}

@media (min-width: 40em) {
  .o-event-detail-item .o-event_item__table th {
    text-align: center;
    width: 170px;
  }

  .o-event-detail-item .o-event_item__table td {
    padding-left: 2rem;
  }
}

.o-event-detail__free {
  margin-top: 2rem;
}

@media (min-width: 40em) {
  .o-flex--md-important {
    display: flex !important;
  }
}

.o-event-detail-btn {
  /* display: none !important; */
  margin-top: 1rem !important;
}

@media (min-width: 40em) {
  .o-event-detail-btn {
    margin-left: auto !important;
    margin-top: 0 !important;
  }
}

.o-img-waku {
  border: 1px solid #8C8C8C;
}

/* イベントタブ */
.o-event-tabs {
  border-bottom: 2px solid #F0F0F0;
}

.o-event-tab {
  display: inline-block;
  text-align: center;
  font-size: 15px;
  line-height: 3.5;
  font-weight: bold;
  color: var(--color-main);
  background-color: #fff;
  border: 2px solid #F0F0F0;
  border-bottom: none;
  transition: background-color 0.3s, color 0.3s;
  cursor: pointer;
  width: 49%;
}

.o-event-tab.active {
  color: #ffffff;
  background-color: var(--color-main);
  border-bottom: 2px solid var(--color-main);
}

.o-event-items {
  display: none;
}

.o-event-items.active {
  display: block;
}

@media (min-width: 40em) {
  .o-event-tab {
    padding: 0 18px;
    font-size: 16px;
    width: 49.5%;
  }

  .o-event-tab:hover {
    color: var(--color-main);
    background-color: #d9eaff;
  }
}