@charset "UTF-8";

:root {
  --color-main: #00215e;
  --color-main-opacity: #00215e11;
  --color-table-border: #dee2e6;
  --color-accent-01: #2f5699;
  --color-accent-02: #3fb8db;
  --color-accent-03: #ff8800;
  --color-accent-04: #76c317;
  --color-01: #f5f5f5;
  --color-02: #cccccc;
  --color-03: #000000;
  --color-04: #333;
  --white: #fff;
  --grad-01: linear-gradient(90deg, #3a3a3a 0%, #171717 100%);
  --grad-02: linear-gradient(270deg, #3a3a3a 0%, #171717 100%);
}

.c-marker {
  background: linear-gradient(transparent 60%, #ffff00 60%);
}

#articledetail h2:not([class]) {
  margin-top: 5rem;
}
#articledetail h3:not([class]) {
  margin-top: 4rem;
}
#articledetail h4:not([class]) {
  margin-top: 3rem;
}
#articledetail h5:not([class]) {
  margin-top: 2rem;
}
#articledetail h6:not([class]) {
  margin-top: 1rem;
}

:where(.p-media-parts + .p-media-parts) {
  margin-top: 50px;
}

@media screen and (max-width: 767.8px) {
  :where(.p-media-parts + .p-media-parts) {
    margin-top: 35px;
  }
}

@media screen and (max-width: 575.8px) {
  :where(.p-media-parts + .p-media-parts) {
    margin-top: 25px;
  }
}

.p-media-parts--margin-lg {
  margin-top: 80px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts--margin-lg {
    margin-top: 56px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts--margin-lg {
    margin-top: 40px;
  }
}

.p-media-parts a {
  -webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
  text-decoration: none;
}

.p-media-parts__img {
  width: 100%;
}

.p-media-parts__img img {
  width: 100%;
}

.p-media-parts__txt {
  font-weight: 500;
}

.media_table {
  background-color: var(--color-main-opacity);
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 30px;
  padding-right: 30px;
  margin-block: 5rem;
}

@media screen and (max-width: 767.8px) {
  .media_table {
    padding-top: 21px;
  }
}

@media screen and (max-width: 575.8px) {
  .media_table {
    padding-top: 15px;
  }
}

@media screen and (max-width: 767.8px) {
  .media_table {
    padding-bottom: 21px;
  }
}

@media screen and (max-width: 575.8px) {
  .media_table {
    padding-bottom: 15px;
  }
}

@media screen and (max-width: 767.8px) {
  .media_table {
    padding-left: 21px;
  }
}

@media screen and (max-width: 575.8px) {
  .media_table {
    padding-left: 15px;
  }
}

@media screen and (max-width: 767.8px) {
  .media_table {
    padding-right: 21px;
  }
}

@media screen and (max-width: 575.8px) {
  .media_table {
    padding-right: 15px;
  }
}

.media_table > ul {
  border-left: 5px solid var(--color-main);
  padding-left: 20px;
  margin-top: 1rem;
}

#tableindex {
  font-size: 1.25rem;
  font-weight: bold;
}

.media_table -list {
  margin-top: 15px;
  padding-left: 25px;
}

.media_table -list__item + .media_table -list__item {
  margin-top: 10px;
}

@media screen and (max-width: 767.8px) {
  .media_table -list__item + .media_table -list__item {
    margin-top: 7px;
  }
}

@media screen and (max-width: 575.8px) {
  .media_table -list__item + .media_table -list__item {
    margin-top: 5px;
  }
}

.media_table -list__item::marker {
  font-weight: 700;
}

.media_table -list__item a {
  color: inherit;
}

.media_table -list__item a:hover {
  opacity: 0.7;
}

/* #articledetail h2 {
  font-size: 1.75rem;
  font-weight: bold;
  position: relative;
  border-top: 4px solid #6c757d;
  border-bottom: 1px solid #ddd;
  padding-top: 10px;
  padding-bottom: 10px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
#articledetail h2::before {
  content: "";
  position: absolute;
  width: 60px;
  height: 4px;
  background-color: var(--color-main);
  left: 0;
  top: -4px;
} */
#articledetail h2:not([class]) {
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column-reverse;
  font-size: 1.125rem;
}
#articledetail h2:not([class])::before {
  content: "";
  display: block;
  width: 4rem;
  height: 2px;
  background-color: var(--color-main);
  position: static;
  margin-top: 0.5rem;
}

#articledetail h3:not([class]) {
  /* font-size: 1.5rem; */
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--color-main);
}

#articledetail h4:not([class]) {
  /* font-size: 1.25rem; */
  font-size: 1.125rem;
  font-weight: bold;
  padding-left: 20px;
  position: relative;
}
#articledetail h4:not([class])::before {
  content: "";
  height: calc(100% - 5px);
  width: 3px;
  background-color: var(--color-main);
  position: absolute;
  top: 0;
  left: 0;
}
#articledetail h4:not([class])::after {
  content: "";
  height: calc(100% - 5px);
  width: 3px;
  background-color: var(--color-main-opacity);
  position: absolute;
  bottom: 0;
  left: 3px;
}

#articledetail h5:not([class]) {
  /* font-size: 1.25rem; */
  font-size: 1.125rem;
  color: var(--color-main);
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}

.p-media-parts__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }
}

.p-media-parts__box--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box--reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }
}

.p-media-parts__box--reverse .p-media-parts__box-str {
  margin-right: 0;
  margin-left: 30px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box--reverse .p-media-parts__box-str {
    margin-left: 0;
  }
}

.p-media-parts__box-str {
  width: 60%;
  margin-right: 30px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box-str {
    width: 100%;
    margin-right: 0;
    margin-top: 10px;
  }
}

.p-media-parts__box-img {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box-img {
    width: 100%;
  }
}

.p-media-parts__box-img img {
  width: 100%;
}

.p-media-parts__box-txt {
  margin-top: 15px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__box-txt {
    margin-top: 10.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box-txt {
    margin-top: 7.5px;
  }
}

.p-media-parts__box-link {
  display: block;
  margin-top: 25px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__box-link {
    margin-top: 17.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__box-link {
    margin-top: 12.5px;
  }
}

.p-media-parts__box-link:hover {
  text-decoration: none;
  opacity: 0.7;
}

.p-media-parts__box-link::before {
  content: "＞";
  margin-right: 5px;
}

.p-media-parts__quote {
  padding-top: 10px;
  padding-bottom: 40px;
  padding-left: 40px;
  padding-right: 40px;
  background-color: rgba(93, 172, 220, 0.1);
  width: 100%;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__quote {
    padding-bottom: 28px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__quote {
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__quote {
    padding-left: 28px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__quote {
    padding-left: 20px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__quote {
    padding-right: 28px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__quote {
    padding-right: 20px;
  }
}

.p-media-parts__quote-icon {
  width: 38px;
  height: auto;
  display: block;
  margin-left: -20px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__quote-icon {
    margin-left: -14px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__quote-icon {
    margin-left: -10px;
  }
}

.p-media-parts__quote * {
  font-size: 0.875rem;
  margin-top: 10px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__quote * {
    margin-top: 7px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__quote * {
    margin-top: 5px;
  }
}

.p-media-parts__source {
  margin-bottom: 0;
}

.p-media-parts__source a {
  color: var(--color-main);
  text-decoration: underline;
}

.p-media-parts__source a:hover {
  opacity: 0.7;
}

.p-media-parts__list {
  padding-left: 20px;
  list-style-type: disc;
}

.p-media-parts__list-item + .p-media-parts__list-item {
  margin-top: 8px;
}

.p-media-parts__list--num {
  list-style-type: decimal;
}

.p-media-parts__table {
  width: 100%;
}

#articledetail th:not([class]),
#articledetail td:not([class]) {
  padding: 10px;
}

/* @media screen and (max-width: 575.8px) {
  #articledetail th,
  #articledetail td {
    width: 100%;
    display: block;
  }
} */

#articledetail th:not([class]) {
  background-color: var(--color-main);
  color: #fff;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  font-weight: 700;
}

#articledetail tr:nth-child(odd) td:not([class]) {
  background-color: var(--color-main-opacity);
}

#articledetail td:not([class]) {
  border-top: 1px solid var(--color-table-border);
  border-bottom: 1px solid var(--color-table-border);
  border-right: 1px solid var(--color-table-border);
}

#articledetail table:not([class]) {
  width: auto;
  min-width: 100%;
  /* white-space: nowrap; */
  border-left: 1px solid var(--color-table-border);
  margin-bottom: 1rem;
}

#articledetail th:not([class]),
#articledetail td:not([class]) {
  display: table-cell;
}

#articledetail th + th:not([class]) {
  border-left: 1px solid #fff;
}

.p-media-parts__scroll {
  overflow-x: auto;
}

.p-media-parts__btn {
  width: 100%;
  max-width: 360px;
  border-radius: 50vh;
  background: var(--color-main);
  border: 1px solid var(--color-main);
  color: #fff;
  font-weight: 700;
  padding: 10px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.p-media-parts__btn:hover {
  background: #fff;
  color: var(--color-main);
  text-decoration: none;
}

.p-media-parts__btn--left {
  margin-left: 0;
}

.p-media-parts__btn--right {
  margin-right: 0;
}

.p-media-parts__btn + .p-media-parts__btn {
  margin-top: 15px;
}

.p-media-parts__video {
  position: relative;
  padding-top: 56.25%;
  height: 0;
}

.p-media-parts__video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-media-parts__videos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__videos {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
}

.p-media-parts__video-wrap {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__video-wrap {
    width: 100%;
  }
}

.p-media-parts__video-wrap + .p-media-parts__video-wrap {
  margin-left: 25px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__video-wrap + .p-media-parts__video-wrap {
    margin-left: 0;
    margin-top: 15px;
  }
}

.p-media-parts__item {
  width: 100%;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__item + .p-media-parts__item {
    margin-top: 15px;
  }
}

.p-media-parts__item img {
  width: 100%;
}

.p-media-parts__item-txt {
  margin-top: 15px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__item-txt {
    margin-top: 10.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__item-txt {
    margin-top: 7.5px;
  }
}

.p-media-parts__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -25px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    margin-left: 0;
  }
}

.p-media-parts__items .p-media-parts__item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-left: 25px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__items .p-media-parts__item {
    margin-left: 0;
    width: 100%;
  }
}

.p-media-parts__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 45px;
  padding-bottom: 45px;
  padding-left: 45px;
  padding-right: 45px;
  background-color: var(--color-main-opacity);
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__card {
    padding-top: 31.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card {
    padding-top: 22.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__card {
    padding-bottom: 31.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card {
    padding-bottom: 22.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__card {
    padding-left: 31.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card {
    padding-left: 22.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__card {
    padding-right: 31.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card {
    padding-right: 22.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }
}

.p-media-parts__card-txt {
  margin-top: 15px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__card-txt {
    margin-top: 10.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card-txt {
    margin-top: 7.5px;
  }
}

.p-media-parts__card-str {
  width: 55%;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card-str {
    width: 100%;
    margin-top: 10px;
  }
}

.p-media-parts__card-img {
  margin-left: 40px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__card-img {
    width: 100%;
    margin-left: 0;
  }
}

.p-media-parts__card-img img {
  width: 100%;
  height: auto;
}

.p-media-parts__cv {
  background-color: var(--color-main-opacity);
  padding-top: 25px;
  padding-bottom: 25px;
  padding-left: 25px;
  padding-right: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv {
    padding-top: 17.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv {
    padding-top: 12.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv {
    padding-bottom: 17.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv {
    padding-bottom: 12.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv {
    padding-left: 17.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv {
    padding-left: 12.5px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv {
    padding-right: 17.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv {
    padding-right: 12.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
}

.p-media-parts__cv-img {
  width: 150px;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv-img {
    margin-left: auto;
    margin-right: auto;
  }
}

.p-media-parts__cv-img img {
  width: 100%;
  height: auto;
}

.p-media-parts__cv-str {
  margin-left: 40px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv-str {
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
  }
}

.p-media-parts__cv-head {
  font-size: 1.5rem;
  font-weight: 700;
}

.p-media-parts__cv-txt {
  margin-top: 15px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv-txt {
    margin-top: 10.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv-txt {
    margin-top: 7.5px;
  }
}

.p-media-parts__cv-btn {
  margin-top: 15px;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__cv-btn {
    margin-top: 10.5px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__cv-btn {
    margin-top: 7.5px;
  }
}

.p-media-parts__company {
  border: 8px solid var(--color-main);
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__company {
    padding-top: 14px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__company {
    padding-top: 10px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__company {
    padding-bottom: 14px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__company {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__company {
    padding-left: 14px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__company {
    padding-left: 10px;
  }
}

@media screen and (max-width: 767.8px) {
  .p-media-parts__company {
    padding-right: 14px;
  }
}

@media screen and (max-width: 575.8px) {
  .p-media-parts__company {
    padding-right: 10px;
  }
}

.p-media-parts__company-name {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0;
}

.p-media-parts__company-link {
  font-size: 0.9rem;
  display: block;
  margin-top: 10px;
}

.p-media-parts__company-link:hover {
  opacity: 0.7;
}

.p-media-parts__company-table {
  margin-top: 20px;
}

.p-media-parts__list {
  list-style: disc;
}

.p-media-parts__list-item {
  margin-top: 8px;
}
