@charset "utf-8";
/* CSS Document */
/*
------------------------------------------------------------*/
a.link {
  text-decoration: underline;
  word-break: break-all;
  color: #349dc6;
}
a.link:hover {
  color: #f28c38;
}
/*page_title
------------------------------------------------------------*/
/*.page_title_area {
  background: #c9beb3;
  z-index: 1;
  padding: 4em 0;
}*/
.page_title_area {
  /*padding: 40px 0;*/
  padding: 70px 0;
  background: url("../images/page_title.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}
.page_title {
  position: relative;
  font-size: 3.5rem;
  text-align: center;
  color: #0d3386;
  /*font-weight: 900;*/
}
@media screen and (max-width: 1200px) {
  .page_title_area {
    padding: 5vw 0;
  }
}
@media screen and (max-width: 960px) {
  .page_title_area {
    background: url("../images/page_title_sp.jpg") no-repeat;
    background-size: cover;
    background-position: center;
  }
  .page_title {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 680px) {
  .page_title_area {
    padding: 8vw 0;
  }
  .page_title {
    font-size: 2.1rem;
  }
}
/*見出し
============================================================================================================ */
.title_01 {
  padding: 0.5em; /*文字周りの余白*/
  background: #f1efec; /*背景色*/
  border-left: solid 7px #349dc6; /*左線（実線 太さ 色）*/
  font-size: 2.4rem;
  margin-bottom: 1em;
  font-weight: bold;
}
.title_02 {
  border-left: 5px solid #34C790;
  border-bottom: 1px solid #c7c7c7;
  padding: 0 0.5em;
  margin-bottom: 1em;
  font-size: 2.0rem;
}
.title_03 {
  border-left: 3px solid #9b9b9b;
  padding: 0 0.5em;
  margin-bottom: 0.5em;
  font-weight: bold;
  font-size: 1.7rem;
}
.title_04 {
  border-bottom: 1px solid #c7c7c7;
  padding: 0.25em 0 0.3em 0;
  margin-bottom: 1em;
  font-size: 1.8rem;
  font-weight: bold;
}
.title_05 {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 960px) {
  .title_01 {
    font-size: 1.8rem;
  }
  .title_02 {
    font-size: 1.7rem;
  }
  .title_03 {
    font-size: 1.6rem;
  }
  .title_04 {
    font-size: 1.5rem;
  }
  .title_05 {
    font-size: 1.5rem;
  }
  .pdf {
    font-size: 1.6rem;
  }
}
/*btn_nav_list
============================================================================================================ */
.btn_nav_list {
  border: 3px solid #0d3386;
  box-sizing: border-box;
  border-radius: 10px;
}
.btn_nav_list a {
  display: block;
  position: relative;
  padding: 1em 0.5em;
  margin-inline: auto;
  color: #0d3386;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
}
.btn_nav_list:hover {
  background: #f1fcfe;
}
/*.btn_nav_list a::before {
  border-right: 1px solid #212121;
  border-top: 1px solid #212121;
  bottom: 0;
  content: "";
  height: 7px;
  width: 7px;
  margin: auto;
  position: absolute;
  right: 1em;
  top: 0;
  transform: rotate(45deg);
  transition: right .3s;
}
.btn_nav_list a:hover::before {
  right: 0.5em;
}*/
@media screen and (max-width: 960px) {
  .btn_nav_list {
    font-size: 1.1rem;
  }
}
/*accordion 
============================================================================================================ */
.accordion-title {
  font-size: 2.0rem;
  cursor: pointer;
  padding: 0.5em;
  position: relative;
  /*background-color: #ebebeb;*/
  background-color: #f1fcfe;
  font-weight: bold;
}
.aco_2 .accordion-title {
  pointer-events: none;
}
.accordion-item {
  border-top: 1px solid #349dc6;
  border-bottom: 1px solid #349dc6;
}
.accordion-item + .accordion-item {
  margin-top: 2em;
}
.accordion-item ul.aco_list li:last-child {
  border-bottom: none;
}
.accordion-content {
  display: none;
}
/*　矢印　*/
.accordion-title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.7em;
  width: 22px;
  height: 22px;
  margin: auto;
  border-radius: 20px;
  background-color: #349dc6;
}
.accordion-title::after {
  content: "";
  border-right: solid 2px #fff;
  border-top: solid 2px #fff;
  display: block;
  height: 8px;
  position: absolute;
  right: 1em;
  top: 39%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
.accordion-title.open::after {
  top: 46%;
  transform: rotate(-45deg);
}
.aco_2 .accordion-title::before {
  display: none;
}
/*　ul　*/
.accordion-content ul.aco_list li {
  padding: 1em 0 1em 1em;
  border-top: 1px solid #349dc6;
  position: relative;
}
.accordion-content ul.aco_list li .download a {
  background: #fff5e6 url("../images/arrow_d_o.svg") no-repeat;
  background-size: 0.8em;
  background-position: top 50% right 0.3em;
  border: 1px solid #f28c38;
  border-radius: 5px;
  padding: 0 1.5em 0 0.5em;
  color: #222;
  display: inline-block;
}
.accordion-content ul.aco_list li .download a:hover {
  background: #f28c38 url("../images/arrow_d.svg") no-repeat;
  background-size: 0.8em;
  background-position: top 50% right 0.3em;
  color: #fff;
}
.aco_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: center;
}
@media screen and (max-width: 960px) {
  .accordion-title {
    padding: 0.5em 0.5em;
    font-size: 1.6rem;
  }
  .accordion-content ul.aco_list li {
    padding: 1em;
    font-size: 1.2rem;
  }
  .aco_flex {
    flex-flow: row nowrap;
  }
  .accordion-content ul.aco_list li .download {
    text-align: right;
    font-size: 1.0rem;
  }
  .download {
    order: 2;
    text-align: right;
  }
}
@media screen and (max-width: 780px) {
  .aco_flex {
    flex-flow: column nowrap; /* 縦並び */
    align-items: flex-start; /* 左寄せ基準 */
  }
  .download {
    margin-left: auto; /* スマホ時は右寄せ */
  }
}
/*check_list
-----------------------------------------------------------*/
.accordion-content ul.check_list li {
  padding: 1em 0 1em 1em;
  /*border-top: 1px solid #9b87a0;*/
  position: relative;
}
/*ボタン*/
.accordion-content ul.check_list li .download a {
  background: #fff5e6 url("../images/arrow_d_o.svg") no-repeat;
  background-size: 0.8em;
  background-position: top 50% right 0.3em;
  border: 1px solid #f28c38;
  border-radius: 5px;
  padding: 0 1.5em 0 0.5em;
  color: #222;
  display: inline-block;
}
.accordion-content ul.check_list li .download a:hover {
  background: #f28c38 url("../images/arrow_d.svg") no-repeat;
  background-size: 0.8em;
  background-position: top 50% right 0.3em;
  color: #fff;
}
/*2個目
-----------------------------------------------------------*/
.accordion-content ul.check_list li ul li {
  border: none;
  padding: 1em 0 0 0.5em;
}
.check_list_title {
  /*background: #efefef;*/
  border-bottom: 1px solid #c7c7c7;
  padding: 0.2em 0.2em 0.2em 0.4em;
  margin-top: 1.5em;
  font-weight: 500;
  background: #f7f7f7;
}
@media screen and (max-width: 960px) {
  .accordion-content ul.check_list li {
    padding: 1em 1em 1em 2.5em;
    font-size: 1.2rem;
  }
}
/*アコーディオンの中のアコーディオン
-------------------------------------------*/
.acco-title-inner {
  /*font-size: 2.0rem;*/
  cursor: pointer;
  padding: 1em 0.5em;
  position: relative;
  background-color: #f7f7f7;
}
.acco-item-inner {
  border-top: 1px solid #c7c7c7;
  border-bottom: 1px solid #c7c7c7;
  /*margin: 1.5em 0;*/
}
.acco-item-inner:first-child {
  border-bottom: none;
}
.acco-item-inner + .acco-item-inner {
  border-bottom: none;
}
.acco-item-inner:last-child {
  border-bottom: 1px solid #c7c7c7;
}
.acco-content-inner {
  display: none;
}
/*　矢印　*/
.acco-title-inner::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.7em;
  width: 22px;
  height: 22px;
  margin: auto;
  border-radius: 20px;
  background-color: #a1a1a1;
}
.acco-title-inner::after {
  content: "";
  border-right: solid 2px #fff;
  border-top: solid 2px #fff;
  display: block;
  height: 8px;
  position: absolute;
  right: 1.05em;
  top: 46%;
  transform: rotate(-45deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
.acco-title-inner.open::after {
  top: 40%;
  transform: rotate(135deg);
}
@media screen and (max-width: 960px) {
  .acco-title-inner {
    padding: 0.5em 0.5em;
    font-size: 1.3rem;
  }
}
/*check_list_inner
-----------------------------------------------------------*/
.accordion-content ul.check_list li ul.check_list_inner li {
  border: none;
  padding: 1em 0 0 1em;
}
.accordion-content ul.check_list li ul.check_list_inner li:last-child {
  border: none;
  padding: 1em 0 1em 1em;
}
@media screen and (max-width: 960px) {
  .accordion-content ul.check_list li {
    padding: 1em 0 1em 1em;
    font-size: 1.2rem;
  }
}
/*テーブル
============================================================================================================ */
/*.scroll-box
-------------------------------------*/
.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
}
/*scrollbar
-------------------------------------*/
/*スクロールバー全体の高さ*/
.scroll-box::-webkit-scrollbar {
  height: 6px;
}
/*スクロールバー全体の背景*/
.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}
/*スクロールバーの動く部分*/
.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}
/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}
/*table.table_01 
---------------------------------------*/
table.table_01 {
  border-collapse: collapse;
  width: 100%;
  table-layout: fixed;
}
table.table_01 th {
  width: 5em;
  background: #efefef;
  border-top: 2px solid #b8a795;
  font-weight: bold;
}
table.table_01 th:first-of-type {
  width: 13em;
}
table.table_01 th, table.table_01 td {
  text-align: center;
  border-bottom: 1px solid #b8a795;
  padding: 0.5em;
  font-size: 1.4rem;
}
table.table_01 td.tal {
  text-align: left;
}
table.table_01 td.tar {
  text-align: right;
}
/*
-----------------------------*/
table.table_01.clinical th {
  width: 7em;
  background: #efefef;
  border-top: 2px solid #b8a795;
  font-weight: bold;
}
table.table_01.clinical th:first-of-type {
  width: 9em;
}
table.table_01.clinical th, table.table_01.clinical td {
  text-align: center;
  border-bottom: 1px solid #b8a795;
  padding: 0.5em;
  font-size: 1.4rem;
}
/*table_02
-----------------------------------------------------------------*/
.table_02 {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.table_02 th, .table_02 td {
  border: 1px solid #b8a795;
  padding: 1em;
}
.table_02 thead th {
  background-color: #efefef;
  border: 1px solid #b8a795;
  border-right: 1px solid #b8a795;
  border-bottom: 1px solid #b8a795;
  text-align: center;
  font-weight: bold;
}
.table_02 thead th:last-of-type {
  border-right: 1px solid #b8a795;
}
.table_02 tbody th {
  text-align: center;
}
/*01*/
.table_02.v_01 thead th:nth-child(1) {
  width: 61%;
}
.table_02.v_01 thead th:nth-child(2) {
  width: 39%;
}
/*02*/
.table_02.v_02 thead th:nth-child(1) {
  width: 20%;
}
.table_02.v_02 thead th:nth-child(2) {
  width: 35%;
}
.table_02.v_02 thead th:nth-child(3) {
  width: 45%;
}
@media screen and (max-width: 680px) {
  .table_02 th, .table_02 td {
    padding: 0.5em;
  }
}
@media screen and (max-width: 480px) {
  .table_02.v_02 {
    width: 550px;
  }
}
/*table_03
--------------------------------------------------*/
table.table_03 {
  width: 100%;
  font-size: 1.4rem;
}
table.table_03 th, table.table_03 td {
  border-top: 1px solid #c7c7c7;
  border-bottom: 1px solid #c7c7c7;
  border-collapse: collapse;
  padding: 1em;
}
table.table_03 th {
  width: 30%;
  background: #efefef;
  font-weight: bold;
}
table.table_03 td {
  width: 70%;
}
@media screen and (max-width: 680px) {
  table.table_03 th, table.table_03 td {
    display: block;
    width: auto;
  }
  table.table_03 th {
    border-bottom: none;
  }
  table.table_03 td {
    border-bottom: none;
  }
  .last td:last-child {
    border-bottom: solid 1px #c7c7c7;
  }
}
@media screen and (max-width: 680px) {
  .last td:last-child {
    border-bottom: solid 1px #c7c7c7;
  }
}
/*table_04
--------------------------------------------------*/
.table_04 {
  border-collapse: collapse;
  width: 100%;
}
.table_04 th, .table_04 td {
  padding: 1.5em 1em;
}
.table_04 th {
  border-top: 2px solid #349dc6;
  width: 12rem;
  color: #000000;
  text-align: left;
}
.table_04 td {
  border-top: 2px solid #c7c7c7;
}
.table_04 tr:last-child th {
  border-bottom: 2px solid #349dc6;
}
.table_04 tr:last-child td {
  border-bottom: 2px solid #c7c7c7;
}
@media screen and (max-width: 680px) {
  .table_04 th, .table_04 td {
    display: block;
    width: auto;
    padding: 1em;
  }
  .table_04 th {
    background-color: #efefef;
    border-top: 2px solid #349dc6;
    border-bottom: none;
  }
  .table_04 td {
    border-top: 1px solid #c7c7c7;
    border-bottom: none;
  }
  .table_04 tr:last-child td:last-child {
    border-bottom: 2px solid #349dc6;
  }
  .table_04 tr:last-child th {
    border-bottom: none;
  }
}
/*table_05
--------------------------------------------------*/
table.table_05 {
  border-collapse: collapse;
  width: 100%;
}
table.table_05 th:nth-child(1) {
  width: 10%;
}
table.table_05 th:nth-child(2) {
  width: 50%;
}
table.table_05 th:nth-child(3) {
  width: 40%;
}
table.table_05.t_2 th:nth-child(1) {
  width: 50%;
}
table.table_05.t_2 th:nth-child(2) {
  width: 50%;
}
table.table_05 th, table.table_05 td {
  padding: 0.5em;
  border: 1px solid #fff;
}
table.table_05 th {
  background: #34c790;
  font-weight: bold;
  color: #fff;
}
table.table_05 tr:nth-child(odd) td {
  background: #f3fbf8;
}
table.table_05 tr:nth-child(even) td {
  background: #d8f5ea;
}
@media screen and (max-width: 680px) {
  table.table_05 {
    width: 700px;
  }
}
/*news
------------------------------------------------------------*/
.news_list {
  width: 100%;
  border-top: 2px solid #349dc6;
  border-bottom: 2px solid #349dc6;
}
.news_title {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  padding: 0.5em 0 1em 0;
}
.news_list li {
  border-bottom: 1px solid #c7c7c7;
  padding: 1.5em 1em;
  display: flex;
  align-items: center;
}
.news_list li:last-child {
  border-bottom: none;
}
.date {
  margin-right: 2em;
}
.category {
  display: inline-block;
  color: #fff;
  width: 7em;
  text-align: center;
  margin-right: 2em;
  padding: 4px 10px 0 10px;
  height: 2em;
}
/*研究者の方へ*/
.category.researcher {
  background-color: #a76eb4;
}
/*企業の方へ*/
.category.enterprise {
  background-color: #f28c38;
}
/*一般の方へ*/
.category.general {
  background-color: #75b46e;
}
.news_text {
  display: block;
}
@media screen and (max-width: 960px) {
  .news_list li {
    display: block;
  }
  .news_text {
    margin-top: 1em;
  }
}
/*サイトマップ
============================================================================================================ */
.sitemap_flex {
  display: flex;
  justify-content: space-around;
}
ul.sitemap_list {
  list-style: none;
}
ul.sitemap_list li {
  font-size: 1.8rem;
  padding-left: 1em;
  position: relative;
  padding-bottom: 1em;
  font-weight: bold;
}
ul.sitemap_list li::before {
  content: "・";
  position: absolute;
  left: 0;
  color: #349dc6;
}
ul.sitemap_list li a:hover {
  text-decoration: underline;
  color: #349dc6;
}
ul.sitemap_list li > ul li {
  font-size: 1.7rem;
  position: relative;
  padding-top: 0.5em;
  padding-left: 2.5em;
  padding-bottom: 0;
  font-weight: normal;
}
ul.sitemap_list li > ul li::before {
  content: "―";
  position: absolute;
  left: 1em;
  color: #349dc6;
}
ul.sitemap_list li > ul li > ul li {
  font-size: 1.6rem;
  position: relative;
  padding-left: 1em;
  padding-bottom: 0;
  font-weight: normal;
}
ul.sitemap_list li > ul li > ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  color: #349dc6;
}
@media screen and (max-width: 960px) {
  .sitemap_flex {
    display: block;
  }
  ul.sitemap_list li a {
    text-decoration: underline;
  }
}
@media screen and (max-width: 680px) {
  ul.sitemap_list li {
    font-size: 1.7rem;
  }
  ul.sitemap_list li > ul li {
    font-size: 1.6rem;
  }
  ul.sitemap_list li > ul li > ul li {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 480px) {
  ul.sitemap_list li {
    font-size: 1.5rem;
  }
  ul.sitemap_list li > ul li {
    font-size: 1.4rem;
  }
  ul.sitemap_list li > ul li > ul li {
    font-size: 1.3rem;
  }
}
/*links-list
--------------------------------------------------------*/
ul.links-list li {
  position: relative;
  padding-left: 1em;
  margin-top: 0.5em;
}
ul.links-list li:before {
  content: "●";
  position: absolute;
  left: 0;
  color: #349dc6;
}
/*カード
============================================================================================================ */
.lower_box {
  text-decoration: none;
  border: 1px solid #ddd;
}
.lower_box a {
  display: block;
}
.lower_box_flex {
  display: flex;
  flex-wrap: wrap;
}
.card_title {
  padding: 0.5em;
  font-size: 1.8rem;
  font-weight: bold;
  order: 1;
  margin-bottom: 0.6rem;
  text-decoration: none;
}
.card_img {
  width: 100%;
}
.card_text_box {
  padding: 0 1.5rem;
}
.card_text {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 1.5rem;
}
@media screen and (max-width: 960px) {
  .card_title {
    font-size: 1.8rem;
  }
}
/*page_link
-----------------------------------------------------------------------*/
ul.page_link {
  display: flex;
  gap: 2%;
  justify-content: center;
}
ul.page_link li a {
  position: relative;
  display: inline-block;
  padding: 1em 2em 1em 1em;
  background-color: #349dc6;
  border-radius: 8px;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  /*text-align: center;*/
}
ul.page_link li a::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.8em;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-2px) rotate(135deg);
  box-sizing: border-box;
}
ul.page_link li a:hover {
  background-color: #AA9B3B;
}
@media screen and (max-width: 960px) {
  ul.page_link {
    display: block;
  }
  ul.page_link li + li {
    margin-top: 1em;
  }
  ul.page_link li a {
    font-size: 1.4rem;
  }
}
/*
============================================================================================================ */
.fbox {
  display: flex;
}
.fbox_reverse {
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (max-width: 960px) {
  .fbox {
    display: block;
  }
  .fbox_reverse {
    display: block;
  }
}
.flow_fbox {
  display: flex;
  justify-content: center;
  align-items: center;
}
.flow_box {
  padding-left: 0;
}
.flow_box > li {
  list-style-type: none;
  position: relative;
  padding-left: 3em;
}
.flow_box > li:not(:last-child) {
  padding-bottom: 2em;
}
.flow_box > li .icon {
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  border-radius: 100vh;
  display: inline-block;
  background: #32c0c8;
  color: #fff;
  position: absolute;
  left: 0;
}
.flow_box > li:not(:last-child)::before {
  content: '';
  background: #c3c3c3;
  width: 3px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 1em;
}
.flow_box > li dl dt {
  font-weight: 600;
}
.flow_box > li dl dd {
  margin-left: 0;
}
/*fbox_col_3_wrap
----------------------------------------------*/
.fbox_col_3_wrap {
  flex-wrap: wrap;
}
.fbox_col_3_wrap.center {
  justify-content: center;
}
.fbox_col_3_wrap > * {
  width: 31%;
  margin-top: 5%;
  margin-right: 3%;
}
.fbox_col_3_wrap > *:nth-child(3n) {
  margin-right: 0;
}
.fbox_col_3_wrap > *:nth-child(-n+3) {
  margin-top: 0%;
}
@media screen and (max-width: 960px) {
  .fbox_col_3_wrap > * {
    display: block;
  }
  .fbox_col_3_wrap > * {
    width: auto;
    margin-top: auto;
    margin-right: auto;
  }
  .fbox_col_3_wrap > *:nth-child(3n) {
    margin-right: auto;
  }
  .fbox_col_3_wrap > *:nth-child(-n+3) {
    margin-top: auto;
  }
  .fbox_col_3_wrap > *:nth-child(2n) {
    margin-right: auto;
  }
  .fbox_col_3_wrap > *:nth-child(-n+2) {
    margin-top: auto;
  }
  .fbox_col_3_wrap > * + * {
    margin-top: 5% !important;
  }
}
.list_img {
  width: 100%;
}
.list_img img {
  width: 75%;
}
/*fbox_7_3
----------------------------------------------*/
.fbox_7_3 > *:nth-child(1) {
  width: 65%;
}
.fbox_7_3 > *:nth-child(2) {
  width: 30%;
}
.fbox_7_3 > * + * {
  margin-left: 5%;
}
@media screen and (max-width: 680px) {
  .fbox_7_3.f_pc > *:nth-child(1) {
    width: auto;
  }
  .fbox_7_3.f_pc > *:nth-child(2) {
    width: auto;
  }
  .fbox_7_3 > * + * {
    margin-left: auto;
    margin-top: 8%;
  }
}
/*3階層目のアンカーリンク
============================================================================================================ */
.link_list {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  background: #fff;
  list-style: none;
}
.link_list > li {
  box-sizing: border-box;
  width: calc((100% - 2em) / 3);
  border: 3px solid #d1f6ff;
  background: #d1f6ff;
  border-radius: 15px;
  overflow: hidden;
}
.link_list > li:hover {
  background: #fff;
  border: 3px solid #0d3386;
  color: #0d3386;
}
.link_list > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  padding: 1em;
  box-sizing: border-box;
  text-decoration: none;
  color: inherit;
  line-height: 1.4;
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (max-width:960px) {
  .link_list > li > a {
    font-size: 1.2rem;
  }
}
@media screen and (max-width:680px) {
  .link_list > li {
    width: calc((100% - 1em) / 2);
  }
}
/*4階層目のアンカーリンク
============================================================================================================ */
.link_list_4_box {
  background: #fff;
  /*padding: 2em 1em;*/
  border: 4px solid #cfcfcf;
}
.link_list_4_box > p {
  text-align: center;
  font-size: 3.0rem;
  font-weight: bold;
  background: #cfcfcf;
  padding: 1em;
}
.link_list_4_box > p > span {
  position: relative;
  display: inline-block;
}
.link_list_4_box > p > span::before {
  content: "";
  position: absolute;
  width: 4rem;
  height: 3px;
  background-color: #349dc6;
  left: 50%;
  bottom: -5px;
  transform: translate(-50%, -50%);
}
.link_list_4 {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  list-style: none;
  padding: 1em;
}
.link_list_4 > li {
  box-sizing: border-box;
  width: calc((100% - 2em) / 3);
  overflow: hidden;
}
.link_list_4 > li:hover {
  background: #d1f6ff;
}
.link_list_4 > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  padding: 1em;
  box-sizing: border-box;
  text-decoration: none;
  color: inherit;
  line-height: 1.4;
  font-size: 1.8rem;
  font-weight: bold;
}
.link_list_4 > li > a:hover {
  color: #0d3386;
}
@media screen and (max-width:960px) {
  .link_list_4_box {
    padding: 1em;
  }
  .link_list_4_box > p {
    font-size: 2.4rem;
  }
  .link_list_4 > li > a {
    font-size: 1.2rem;
  }
}
@media screen and (max-width:680px) {
  .link_list_4_box > p {
    font-size: 2rem;
  }
  .link_list_4 {
    padding: 0;
  }
  .link_list_4 > li {
    width: calc((100% - 1em) / 2);
  }
}
/*
============================================================================================================ */
p.img_svg {
  width: 100%;
}
p.img_svg img {
  width: 65%;
}
@media screen and (max-width:960px) {
  p.img_svg img {
    width: auto;
  }
}
/*.scroll-box
============================================================================================================ */
.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}
.scroll-box p img {
  max-width: 100%;
  min-width: 800px;
  vertical-align: top;
}
/*スクロールバー全体の高さ*/
.scroll-box::-webkit-scrollbar {
  height: 6px;
}
/*スクロールバー全体の背景*/
.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}
/*スクロールバーの動く部分*/
.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}
/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}