@charset "euc-jp";
/*-----
打ち消し
-----*/
.prose a:not(.h1,.h2,.h3,.h4,.h5,.h6,.button,.link-faded,.link-faded-reverse,:has(img)){
  color: #fff !important;
}
/* 自分の領域にクラスを付けて囲んでください */
.my-section a {
  color: inherit !important;
  background: none !important;
  text-decoration: underline !important;
  transition: none !important;
}

/* .prose特有のmargin調整を打ち消し */
.my-section :first-child,
.my-section .sr-only:first-child + * {
  margin-block-start: initial !important;
}

.my-section :last-child {
  margin-block-end: initial !important;
}

/* 念のため line-height 対応 */
.my-section a {
  line-height: normal !important;
  background-size: initial !important;
  background-position: initial !important;
  background-repeat: initial !important;
}

/* 見出しなどがaタグに含まれているケース対策 */
.my-section a.h1,
.my-section a.h2,
.my-section a.h3,
.my-section a.h4,
.my-section a.h5,
.my-section a.h6,
.my-section a.button,
.my-section a.link-faded,
.my-section a.link-faded-reverse,
.my-section a:has(img) {
  all: unset !important;
  display: inline !important;
  color: inherit !important;
  background: none !important;
}
.accordion a {
  background: none !important;
  text-decoration: none !important;
}
.accordion span {
  background: none !important;
}
.prose a:not(.h1,.h2,.h3,.h4,.h5,.h6,.button,.link-faded,.link-faded-reverse,:has(img)) {
  background: #3951b5 !important;
}
/*-----
デザイン（強化済み）
-----*/
.M_guideContent {
  margin: 48px auto 104px !important;
}

h2 {
  color: #3951b5 !important;
  font-size: 28px !important;
}

.M_guideContent p,
.guide-section p {
  color: #777 !important;
}

.M_txtTitle {
  position: relative !important;
  text-align: center !important;
  font-size: 21px !important;
  font-weight: normal !important;
  margin: 48px auto 64px !important;
}

.guide-section-title {
  position: relative !important;
  text-align: center !important;
  font-size: 21px !important;
  font-weight: normal !important;
  margin: 0 auto 64px !important;
  padding-top: 96px !important;
}

.guide-section-title:before,
.guide-section-title:after {
  content: '' !important;
  width: 52px !important;
  height: 1px !important;
  position: absolute !important;
  left: 50% !important;
  margin-left: -26px !important;
  background-color: #AAA !important;
}

.guide-section-title:before {
  top: 148px !important;
}

.guide-section-title:after {
  top: 142px !important;
}

.M_guideNav {
  display: block !important;
  width: 100% !important;
  margin: 96px auto 0 !important;
  font-size: 0 !important;
  text-align: center !important;
}

.M_guideNav li {
  display: inline-block !important;
  margin: 0 2px 16px 0 !important;
  width: fit-content;
}

.M_guideNav li:last-child {
  margin-right: 0 !important;
}

.M_guideNav li a {
  color: #FFF !important;
  background-color: #3951b5 !important;
  font-size: 15px !important;
  display: block !important;
  padding: 8px 16px !important;
  border-radius: 20px !important;
  transition: 0.3s ease-in-out !important;
  text-decoration: none !important;
}

.M_guideNav li a:hover {
  background: #666 !important;
  opacity: 0.8 !important;
}

.inner-contents {
  position: relative !important;
}

.side-title.side-category-title {
  color: #242325 !important;
  font-size: 16px !important;
}
.prose .content .contents-section .guide-section a{
  color: #3951b5 !important;
  background: transparent !important;
  text-decoration: underline;
}

/* モバイル対応（強化） */
@media screen and (max-width: 767px) {
  .M_guideNav {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-top: 43px !important;
  }
  .M_guideNav li {
    display: inline-block !important;
    margin: 0 6px 16px 0 !important;
  }
  .M_guideNav li a {
    font-size: 14px !important;
    padding: 6px 8px !important;
  }
  .guide-section {
    margin-bottom: 0px !important;
  }
  .guide-section-title {
    padding-top: 43px !important;
    margin-bottom: 20px !important;
  }
  .guide-section-title:before {
    top: 78px !important;
  }
  .guide-section-title:after {
    top: 82px !important;
  }
}
