/* 2024/01/11 */
.p-lp-entry em {
  transform: skewX(-10deg);
  display: inline-block;
  padding-right: 0.1em;
}
.p-lp-entry ul,
.p-lp-entry ol,
.p-lp-entry dl {
  margin: 0 10px;
}
/*
.p-lp-entry h2,
.p-lp-entry h3,
.p-lp-entry h4,
.p-lp-entry p {
  padding-right: 0;
  padding-left: 0;
}
*/
.p-lp-entry li,
.p-lp-entry dd {
  line-height: 1.8;
  margin-bottom: 0.5em;
  margin-left: 1.5em;
}
.p-lp-entry .p-lp-related-news__item {
  margin-left: 0;
  margin-right: 0;
}
.p-lp-entry .p-lp-related-news__item:first-child {
  border-top: 1px solid currentColor;
}
.acms-grid .p-lp-entry ul li {
  list-style: disc;
}
.p-lp-entry ul li {
  list-style: disc;
}
.p-lp-entry ol li {
  list-style: decimal;
}
.p-lp-summary-detail ul,
.p-lp-summary-detail ol,
.p-lp-summary-detail dl,
.p-lp-summary-detail li,
.c-list-bordered02__item {
  list-style: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
}
.acms-entry blockquote {
  border: 1px solid #111;
  padding: 1em;
  line-height: 1.8;
}
.p-lp .p-lp-page-nav__list {
  background-color: transparent;
}
.p-lp .p-lp-page-nav__item {
  list-style: none;
  margin: 0;
  line-height: 1.5;
}
.p-lp .p-lp-page-nav__item:hover {
  opacity: 0.8;
}
.acms-admin-benchmark-container {
  display: none;
}
.acms-entry .acms-grid {
  margin-right: 0;
  margin-left: 0;
}
.p-lp-entry h2,
.p-lp-entry h3,
.p-lp-entry h4 {
  text-align: left;
  margin-top: 1em;
  margin-bottom: 0.5em;
}
.p-books-media__main-info h2 {
  margin-top: 0;
}
.p-lp-heading {
  margin-top: 2em;
  margin-bottom: 1em;
  margin-right: 10px;
  margin-left: 10px;
}

.p-lp-entry .p-lp-heading h2,
.p-lp-entry .p-lp-heading h3,
.p-lp-entry .p-lp-heading h4 {
  text-align: center;
  margin: 0 auto;
  border: none;
  padding: 0;
}
.p-lp-entry h2,
.p-lp-entry h3,
.p-lp-entry h4,
.p-lp-entry p,
.p-lp-container {
  max-width: var(--w-pc);
}
.p-lp .p-lp-entry h2,
.p-lp .p-lp-entry h3,
.p-lp .p-lp-entry h4,
.p-lp .p-lp-entry p,
.p-lp .p-lp-container {
  max-width: 100%;
}
.p-lp-header {
  position: relative;
}
.p-lp-link-button {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}
.p-lp-link-button__link {
  width: 100%;
  max-width: 100%;
}
.p-lp-background {
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.p-lp-entry .p-lp-character-intro__col + hr.clearHidden {
  display: block;
}
.c-btn__icon {
  margin-left: auto;
}
.header_text {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  font-size: 24px;
  line-height: 1.5;
  font-weight: 900;
}
.header_text_shadow {
  text-shadow: 0.05em 0.05em 0.3em rgba(0, 0, 0, 1), 0.05em 0.05em 0.3em rgba(0, 0, 0, 1), 0.05em 0.05em 0.3em rgba(0, 0, 0, 1);
}
.p-entry-column .c-list-bordered02,
.c-list-bordered02 {
  border-top: none;
}

.p-entry-column .p-books-media,
.p-books-media {
  flex-wrap: wrap;
}

.p-entry-column .p-books-media__summary-img.-mobile,
.p-books-media__summary-img.-mobile {
  width: 100%;
  padding: 0;
}

.p-entry-column .p-books-media__summary-img.-mobile img,
.p-books-media__summary-img.-mobile img {
  max-width: 100%;
}

.p-entry-column .p-books-media__img-wrap,
.p-books-media__img-wrap {
  text-align: center;
}

.p-entry-column .c-list-bordered02__item,
.c-list-bordered02__item {
  border-bottom: none;
}

.swiper-slide {
  width: auto;
}

.swiper-slide p {
  margin: 0;
}

.slider_unit {
  position: relative;
  overflow: hidden;
  padding-bottom: 60px;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 30px;
}

.swiper-button-next,
.swiper-button-prev {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.3);
  width: 30px;
  height: 30px;
  border-radius: 50%;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-size: 20px;
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  height: 16px;
}

.swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  font-size: 12px;
  line-height: 16px;
  color: transparent;
}

.swiper-pagination-bullet-active {
  background-color: rgba(255, 255, 255, 1);
}
.p-lp-summary-detail {
  margin: 0 auto 30px auto;
  padding: 0;
}
.p-entry-column .p-books-media__summary-wrap,
.p-books-media__summary-wrap,
.p-books-media {
  flex-direction: column;
}
.p-lp-summary-detail > ul {
  border-top: 1px dashed #000;
}
.p-lp-summary-detail > ul > li {
  border-bottom: 1px dashed #000;
}
.booklist-container .list-box li {
  list-style: none;
}
@media (max-width: 768px) {
  .p-lp-summary-detail {
    max-width: 925px;
    padding: 0 10px;
  }
}
@media (min-width: 769px) {
  .pc {
    display: block;
  }

  .sp {
    display: none;
  }
  .p-lp-entry h2,
  .p-lp-entry h3,
  .p-lp-entry h4 {
    margin-top: 2em;
    margin-bottom: 1em;
  }

  .p-lp-entry h2 {
    font-size: 24px;
  }
  .p-books-media__main-info h2 {
    margin-top: 1em;
  }

  .p-lp-entry h3 {
    font-size: 22px;
  }
  .p-lp-entry h4 {
    font-size: 18px;
  }

  .p-entry-column .p-books-media__summary-wrap,
  .p-books-media__summary-wrap,
  .p-books-media {
    flex-direction: row;
  }

  .acms-admin-benchmark-container {
    display: block;
  }

  .acms-entry .acms-grid {
    margin-right: -10px;
    margin-left: -10px;
  }

  .header_text {
    max-width: var(--w-pc);
    font-size: 40px;
  }

  .p-lp-books-media {
    padding: 0 40px;
  }

  .p-lp-books-media__body {
    padding: 0 10px;
  }

  .p-lp-entry p {
    margin-bottom: 1em;
    padding: 0;
  }
  p.p-lp-link-button {
    margin-bottom: 2em;
  }
  p.p-books-media__lead {
    margin-bottom: 0;
  }
  .p-lp-summary-detail {
    padding: 0 10px;
  }

  .slider_full_width {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }

  .slider_contents {
    max-width: none;
  }

  .slider_img {
    max-height: none;
  }

  .swiper-button-next,
  .swiper-button-prev {
    width: 50px;
    height: 50px;
  }

  .swiper-button-next:after,
  .swiper-button-prev:after {
    font-size: 30px;
  }

  .slider_full_width .swiper-button-next,
  .slider_full_width .swiper-button-prev {
    height: 100%;
    max-height: calc(100% - 38px);
    border-radius: 0;
    top: 0%;
  }

  .slider_full_width .swiper-button-prev,
  .slider_full_width .swiper-rtl .swiper-button-next {
    left: 0%;
    right: auto;
  }

  .slider_full_width .swiper-button-next,
  .slider_full_width .swiper-rtl .swiper-button-prev {
    right: 0;
    left: auto;
  }

  .reverse .swiper-button-next:after,
  .reverse.swiper-rtl .swiper-button-prev:after {
    content: "prev";
  }

  .reverse .swiper-button-prev:after,
  .reverse.swiper-rtl .swiper-button-next:after {
    content: "next";
  }
}
.p-lp-entry h2,
.p-lp-entry h3,
.p-lp-entry h4,
.p-lp-entry h5 {
  margin: 2em 10px 1em;
  line-height: 1.5;
}
.p-lp-entry .p-books-media__main-info h2 {
  margin: 1em 0;
}
.p-lp-entry .p-books-media__main-info h2 a {
  position: relative;
  z-index: 1;
}

.p-lp-entry h2 {
  font-size: 2em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.6);
  border-top: 1px solid rgba(0, 0, 0, 0.6);
  padding: 0.4em 0 !important;
  position: relative;
}

.p-lp-entry h2::before {
  content: "";
  width: 100%;
  height: 100%;
  border-bottom: 2px solid rgba(0, 0, 0, 0.6);
  display: block;
  position: absolute;
  bottom: -6px;
}
.p-lp-entry .p-lp-heading h2::after,
.p-lp-entry .p-lp-heading h2::before {
  content: none;
}
.p-lp-entry h2::after {
  content: "";
  width: 100%;
  height: 100%;
  border-top: 2px solid rgba(0, 0, 0, 0.6);
  display: block;
  position: absolute;
  top: -6px;
}

.p-lp-entry h3 {
  font-size: 1.5em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.6);
  padding: 0.4em 0;
}

.p-lp-entry h4 {
  font-size: 1.3em;
  border-left: 3px solid rgba(0, 0, 0, 0.6);
  padding-left: 0.5em;
}

.p-lp-entry h5 {
  font-size: 1em;
}

.p-lp-entry .bq_1 {
  border: 1px solid #999;
  padding: 1em;
  margin: 1em;
}

.p-lp-entry .entry_list1::before,
.p-lp-entry .entry_list2::before,
.p-lp-entry .entry_list3::before {
  content: "●";
  position: absolute;
  display: block;
  top: 0.4em;
  left: -1.3em;
  width: 1em;
  font-size: 0.7em;
}

.p-lp-entry .entry_list2::before {
  content: "\f04b";
  font-family: var(--fa);
  font-weight: 900;
}

.p-lp-entry .entry_list3::before {
  content: "※";
}

.lite-editor-toolbox {
  border: 1px solid #ccc !important;
  padding: 5px;
  border-radius: 3px;
  margin-top: 5px;
}

.p-lp-entry table {
  border-top: 1px solid var(--gray-9);
  border-left: 1px solid var(--gray-9);
}

.p-lp-entry td,
.p-lp-entry th {
  border-bottom: 1px solid var(--gray-9);
  border-right: 1px solid var(--gray-9);
  padding: 0.5em;
}

.p-lp-entry th {
  font-weight: bold;
  background-color: rgba(0, 0, 0, 0.2);
}
.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*="column-media"] {
  padding: 0;
}
@media (max-width: 767px) {
  .pc {
    display: none;
  }

  .sp {
    display: inherit;
  }

  .p-lp-books-media {
    padding: 0 20px;
  }

  .p-lp-books-media__body {
    padding: 0;
  }

  .p-lp-entry p {
    margin-bottom: 0.5em;
    font-size: 1em;
  }

  .slider_img {
    height: auto !important;
    max-width: 100vw;
  }

  .slider_unit p {
    max-width: 75vw;
  }
  .p-lp-entry h2,
  .p-lp-entry h3,
  .p-lp-entry h4,
  .p-lp-entry h5 {
    margin: 2em 10px 1em;
  }
  .p-lp-entry h2 {
    font-size: 1.5em;
  }
  .p-lp-entry h3 {
    font-size: 1.25em;
  }
  .p-lp-entry h4 {
    font-size: 1em;
  }
  .p-lp-entry h5 {
    font-size: 1em;
  }
  .p-lp-entry .entry-container table {
    width: calc(100% + 20px);
    margin: 0 -10px;
  }
}

.wysiwyg abbr,
.wysiwyg address,
.wysiwyg article,
.wysiwyg aside,
.wysiwyg audio,
.wysiwyg b,
.wysiwyg blockquote,
.wysiwyg body,
.wysiwyg canvas,
.wysiwyg caption,
.wysiwyg cite,
.wysiwyg code,
.wysiwyg dd,
.wysiwyg del,
.wysiwyg details,
.wysiwyg dfn,
.wysiwyg div,
.wysiwyg dl,
.wysiwyg dt,
.wysiwyg em,
.wysiwyg fieldset,
.wysiwyg figcaption,
.wysiwyg figure,
.wysiwyg footer,
.wysiwyg form,
.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5,
.wysiwyg h6,
.wysiwyg header,
.wysiwyg hgroup,
.wysiwyg html,
.wysiwyg i,
.wysiwyg iframe,
.wysiwyg img,
.wysiwyg ins,
.wysiwyg kbd,
.wysiwyg label,
.wysiwyg legend,
.wysiwyg li,
.wysiwyg mark,
.wysiwyg menu,
.wysiwyg nav,
.wysiwyg object,
.wysiwyg ol,
.wysiwyg p,
.wysiwyg pre,
.wysiwyg q,
.wysiwyg samp,
.wysiwyg section,
.wysiwyg small,
.wysiwyg span,
.wysiwyg strong,
.wysiwyg sub,
.wysiwyg summary,
.wysiwyg sup,
.wysiwyg table,
.wysiwyg tbody,
.wysiwyg td,
.wysiwyg tfoot,
.wysiwyg th,
.wysiwyg thead,
.wysiwyg time,
.wysiwyg tr,
.wysiwyg ul,
.wysiwyg var,
.wysiwyg video {
  padding: revert-layer;
  border: revert-layer;
  outline: revert-layer;
  vertical-align: revert-layer;
  background: revert-layer;
  background-color: revert-layer;
  border-collapse: revert-layer;
}
.p-lp .entry-wrap {
  padding: 0;
}

/* 20250901萩原さん追加*/
.btn-box a::before,
.a-btn-box::before {
  content: "";
  position: absolute; /* 必要なら相対配置に合わせる */
  inset: 0;
  width: 100%;
  height: 50px;
  background: linear-gradient(0deg, rgb(119, 72, 6) 0%, rgb(225, 172, 37) 5%, rgb(230, 177, 20) 10%, rgb(238, 205, 106) 95%, rgb(255, 245, 106) 100%);
  transition: opacity 0.4s ease; /* ← フェード用 */
  z-index: 0;
}
.btn-box a,
.a-btn-box {
  position: relative; /* ::beforeを重ねるために必要 */
  font-size: 1.1em;
  font-weight: bold;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
/* hover用の別レイヤー */
.btn-box a::after,
.a-btn-box::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 50px;
  background: linear-gradient(0deg, rgb(225, 172, 37) 0%, rgb(225, 172, 37) 5%, rgb(225, 172, 37) 95%, rgb(119, 72, 6) 100%);
  opacity: 0; /* 初期は非表示 */
  transition: opacity 0.2s ease;
  z-index: 0;
}
.btn-box a:hover::after,
.a-btn-box:hover::after {
  opacity: 1; /* hover時にフェードイン */
}
.btn-box a:hover,
.a-btn-box:hover {
  transform: translateY(0px);
  opacity: 1;
}
.nav-container ul li:nth-child(1) a::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 142%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -30px;
}
.section-ttl {
  font-weight: bold;
}
a,
a:visited {
  font-family: initial !important;
  font-size: 1.1em;
  font-weight: bold;
  text-decoration: none;
}
p > a,
p > a:visited {
  font-weight: bold;
  color: var(--brown);
  text-decoration: none;
}
.entry-list a,
.entry-list a:visited {
  font-weight: bold;
  color: var(--brown) !important;
  text-decoration: none;
}
.clm2-wrap h3 {
  font-weight: bold;
  color: var(--brown);
  text-decoration: none;
}
.clm3-wrap a,
a:visited {
  font-weight: bold;
  color: var(--brown);
  text-decoration: none;
}
.list-box a,
a:visited {
  font-family: initial !important;
  font-size: 1.1em;
  font-weight: bold;
  color: #222;
  text-decoration: none;
}
/*20250901調整*/
.contents .clm3-wrap a,
.contents a:visited {
  font-weight: bold;
  color: #222;
  text-decoration: none;
}
.app-books-wrap > div:hover a img {
  opacity: 0.7;
}
.app-books-wrap > div:hover .btn-box a::after {
  background: linear-gradient(0deg, rgb(225, 172, 37) 0%, rgb(225, 172, 37) 5%, rgb(225, 172, 37) 95%, rgb(119, 72, 6) 100%);
  transition: opacity 0.2s ease;
  opacity: 1;
}
a.js-module_management {
  color: var(--white) !important;
}
#top h1 img {
  display: none;
  max-width: 1200px;
  margin: 20px auto;
}
.btn-box a,
.a-btn-box {
  display: flex;
}
@media (max-width: 768px) {
  #top h1 img {
    max-width: 80%;
  }
  .acms-table-scrollable th,
  .acms-table-scrollable td,
  .js-table-unit-scroll-hint th,
  .js-table-unit-scroll-hint td {
    white-space: pre-wrap;
  }
  .acms-entry [class*="acms-col-"] {
    padding: 0 10px;
  }
}
.js-lazy-load2 {
  transform: translateY(30px);
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.5, 0, 0, 1) 0.1s, transform 0.9s cubic-bezier(0.5, 0, 0, 1) 0.1s;
  background: url(/themes/system/images/marker/icon-lazy-load-image.svg) no-repeat center / 40px 40px;
}
.js-lazy-load2.loading {
  transform: translateY(0);
  opacity: 1;
}
img.js-lazy-load {
  background: url(/themes/system/images/marker/icon-lazy-load-image.svg) no-repeat center / 40px 40px;
}

img.js-lazy-load2 {
  background: #f9f9f9 url("/themes/system/images/marker/icon-lazy-load-image.svg") no-repeat center/40px 40px;
}
img.js-lazy-load2.loaded {
  background: none;
  opacity: 1;
  transform: translateY(0px);
}

.js-lazy-load2.is-movie {
  background: #f9f9f9 url("/themes/system/images/marker/icon-lazy-load-movie.svg") no-repeat center/40px 40px;
}
