@charset "UTF-8";
/********************************
* UIカスタム設定（ダッシュボードで編集可）
* ダッシュボードの値を参照する場合は
* 各変数をコメントアウトしてください
********************************/
:root {
  --logo-image-height: auto;
  --header-background: transparent;
  --subtitle-background: none;
  --query-input-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.28);
  --query-input-border: 1px solid var(--body-color);
  --page-container-width: 760px;
}

/* UIカスタム設定 */
:root {
  --primary-color: var(--primary9);
  --link-border-radius: var(--rounded-sm);
  --card-border-radius: var(--rounded-lg);
  --card-border-color: #dfe8ef;
  --card-border-width: 2px;
  --card-bg-color: #fff;
  --body-background-size: auto;
  --helper-color: var(--neutral11);
  --header-link-color: #777;
  --header-background-size: auto;
  --form-border-color: var(--neutral6);
  --subtitle-background-size: auto;
}

/* カラーパターン */
:root {
  --neutral1: #fcfcfd;
  --neutral2: #f9f9fb;
  --neutral3: #f0f0f3;
  --neutral4: #e8e8ec;
  --neutral5: #e0e1e6;
  --neutral6: #d9d9e0;
  --neutral7: #cdced6;
  --neutral8: #b9bbc6;
  --neutral9: #8b8d98;
  --neutral10: #80838d;
  --neutral11: #60646c;
  --neutral12: #1c2024;
  --indigo1: #fdfdfe;
  --indigo2: #f7f9ff;
  --indigo3: #edf2fe;
  --indigo4: #e1e9ff;
  --indigo5: #d2deff;
  --indigo6: #c1d0ff;
  --indigo7: #abbdf9;
  --indigo8: #8da4ef;
  --indigo9: #3e63dd;
  --indigo10: #3358d4;
  --indigo11: #3a5bc7;
  --indigo12: #1f2d5c;
  --primary1: var(--indigo1);
  --primary2: var(--indigo2);
  --primary3: var(--indigo3);
  --primary4: var(--indigo4);
  --primary5: var(--indigo5);
  --primary6: var(--indigo6);
  --primary7: var(--indigo7);
  --primary8: var(--indigo8);
  --primary9: var(--indigo9);
  --primary10: var(--indigo10);
  --primary11: var(--indigo11);
  --primary12: var(--indigo12);
  --rounded-xs: 2px;
  --rounded-sm: 4px;
  --rounded-md: 6px;
  --rounded-lg: 8px;
  --rounded-xl: 12px;
  --rounded-2xl: 16px;
  --focus-ring-color: #dfe8ef;
  --button-bg-color: var(--primary9);
  --button-bg-hover-color: var(--primary10);
  --button-label-color: #fff;
  --button-disabled-bg-color: var(--neutral3);
  --button-disabled-label-color: var(--neutral9);
  --feedback-button-bg-color: var(--neutral3);
  --feedback-button-bg-hover-color: var(--neutral4);
  --feedback-button-label-color: var(--neutral12);
  --feedback-button-disabled-bg-color: var(--neutral3);
  --feedback-button-disabled-label-color: var(--neutral9);
  --first-view-bg-color: var(--primary8);
  --navbar-bg-color: #ffffff;
}

/* mixin */
html {
  /*****************************************
  * SEARCH PAGE
  *****************************************/
  /*****************************************
  * ARTICLE PAGE
  *****************************************/
  /*****************************************
  * CONTACT PAGE
  *****************************************/
  /*****************************************
  * POPUP SETTING
  *****************************************/
}
html body {
  display: flex;
  flex-direction: column;
  background: var(--body-background);
  background-size: var(--body-background-size);
}
html .search-page {
  position: relative;
}
html .search-page::after {
  content: "";
  display: block;
  height: 316px;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--first-view-bg-color);
  width: 100%;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  html .search-page::after {
    height: 258px;
  }
}
html .search-page .footer .footer-main .footer-main_search-top {
  display: none;
}
html #concierge-container {
  display: none;
}
html .header {
  padding: 0;
}
html .header .subtitle {
  padding: 80px 0 48px;
}
html .header .subtitle h2 {
  font-weight: normal;
  font-size: 18px;
  color: var(--body-color);
}
html .navbar {
  padding: 16px 24px;
  margin: 0;
  background: var(--navbar-bg-color);
}
@media screen and (max-width: 767px) {
  html .navbar {
    padding: 16px;
  }
}
html .navbar h1.brand img {
  width: 200px;
  height: var(--logo-image-height);
}
@media screen and (max-width: 767px) {
  html .navbar h1.brand img {
    width: 140px;
  }
}
html .navbar ul.header-menu > li > a {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  padding: 6px 12px;
  border-radius: var(--rounded-lg);
  color: var(--button-label-color);
  line-height: 1.5;
  background-color: var(--button-bg-color);
}
html .navbar ul.header-menu > li > a:hover {
  background-color: var(--button-bg-hover-color);
}
@media screen and (max-width: 767px) {
  html .navbar ul.header-menu > li > a {
    padding: 6px 8px;
    font-size: 14px;
  }
}
html .query-input {
  align-items: center;
  height: 56px !important;
  width: 100%;
  max-width: 728px;
  margin: 0 auto;
  border-radius: var(--rounded-lg);
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.04), 0px 1px 4px 0px rgba(0, 0, 0, 0.04);
  outline: 2px solid transparent;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, outline;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  /*    .speech-button {
        position: relative;
        width: 32px;
        height: 32px;
        margin-right: 16px;
        border-radius: 6px;
        @include easing;
        &:focus-visible {
          outline: 2px solid var(--focus-ring-color);
          outline-offset: -2px;
        }
        &:hover {
          background-color: var(--link-hover-color);
        }
        &::before {
          position: absolute;
          inset: 0;
          content: '';
          background-image: url(https://custom-assets.helpfeel.com/helpfeel-sample/icons/icon-mic.svg);
          background-repeat: no-repeat;
          background-position: center;
          background-size: 16px 16px;
        }
        img {
          opacity: 0;
        }
      } */
}
@media screen and (max-width: 767px) {
  html .query-input {
    height: 56px !important;
    margin-top: 40px;
  }
}
html .query-input:focus-within {
  outline: 2px solid #d9e3eb;
  outline-offset: 2px;
}
html .query-input input,
html .query-input textarea {
  padding: 12px 16px;
  font-size: 18px;
  line-height: 1.5;
}
html .faq-list {
  margin-top: 24px;
  padding: 0;
  border: solid 1px var(--card-border-color);
  border-radius: var(--card-border-radius);
}
@media screen and (max-width: 767px) {
  html .faq-list {
    margin-top: 16px;
  }
}
html .faq-list .faq-list-search-summary {
  padding-left: 8px;
}
html .faq-list .faq-list-scroll-container {
  height: initial;
  max-height: calc(62px + (39px * 8));
  overflow-y: auto;
  overflow-x: visible;
  padding: 24px;
}
@media screen and (max-width: 767px) {
  html .faq-list .faq-list-scroll-container {
    max-height: calc(62px + (36px * 8));
    padding: 24px 16px;
  }
}
html .faq-list .faq-list-empty-container {
  padding-left: 8px;
}
html .faq-list .faq-list-title {
  position: initial;
  padding: 0 0 0 8px;
  margin: 20px auto 12px;
  font-weight: normal;
  background: transparent;
}
html .faq-list ul > li:not(:last-child) {
  margin: 0 auto 4px;
}
html .faq-list ul > li > a {
  padding: 4px 8px;
  line-height: 1.5;
  border-radius: 6px;
  overflow-wrap: anywhere;
}
html .faq-list ul > li > a:hover {
  background-color: var(--neutral3);
}
html .faq-list ul > li > a .icon {
  width: 20px;
  margin-top: 3px;
  margin-right: 12px;
}
html .faq-list .faq-list-bottom {
  display: none;
}
html .keywords {
  padding: 24px;
  margin-top: 32px;
  border: solid 1px var(--card-border-color);
  border-radius: var(--card-border-radius);
}
@media screen and (max-width: 767px) {
  html .keywords {
    padding: 24px 16px;
    margin-top: 24px;
  }
}
html .keywords .keywords-title {
  font-weight: normal;
}
html .keywords .keywords-body .section:not(:last-child) {
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  html .keywords .keywords-body .section:not(:last-child) {
    margin-bottom: 16px;
  }
}
html .keywords .keywords-body .list {
  justify-content: initial;
  align-items: center;
  gap: 8px;
  margin: 0;
}
html .keywords .keywords-body .list > a {
  padding: 2px 12px;
  line-height: 1.5;
  border-radius: var(--rounded-lg);
  background-color: var(--neutral3);
}
html .powered-by-helpfeel {
  display: none;
}
html .footer {
  padding-bottom: 0;
  margin-top: auto;
  padding-top: 80px;
}
@media screen and (max-width: 767px) {
  html .footer {
    padding-top: 48px;
  }
}
html .footer .footer-main {
  display: flex;
  gap: 16px;
  justify-content: center;
}
html .footer .btn {
  border-radius: var(--rounded-md);
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--button-bg-color);
  color: var(--button-label-color);
  padding: 12px 24px;
  font-size: 16px;
}
html .footer .btn:hover {
  background-color: var(--button-bg-hover-color);
}
html .footer .footer__inner {
  margin-top: 64px;
  border-top: var(--card-border-width) solid var(--card-border-color);
}
@media screen and (max-width: 767px) {
  html .footer .footer__inner {
    margin-top: 48px;
  }
}
html .footer .footer__list {
  display: flex;
  align-content: center;
  justify-content: center;
  padding: 24px 0;
  margin: 0 auto;
  list-style: none;
  background-color: var(--neutral2);
}
html .footer .footer__list-item {
  padding: 0 16px;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  html .footer .footer__list-item {
    padding: 0 8px;
  }
}
html .footer .footer__list-item:not(:first-child) {
  border-left: solid 1px var(--neutral6);
}
html .footer .footer__list-link {
  padding: 4px 8px;
}
html .footer .footer-bottom {
  padding: 16px 0;
  color: #fff;
}
html .footer .footer-bottom__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  column-gap: 0;
}
@media screen and (max-width: 767px) {
  html .footer .footer-bottom__inner {
    padding: 0 8px;
  }
}
html .footer .footer-bottom__copyright, html .footer .footer-bottom__powered-by-helpfeel {
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  html .footer .footer-bottom__copyright, html .footer .footer-bottom__powered-by-helpfeel {
    padding-left: 12px;
    padding-right: 12px;
  }
}
html .footer .footer-bottom__powered-by-helpfeel a {
  display: flex;
  align-items: center;
  color: #fff;
}
html .footer .footer-bottom__powered-by-helpfeel a img {
  display: inline-block;
  margin-left: 8px;
}
html .article-page {
  /* Heading ---------------------------------------------------------------*/
}
html .article-page .content {
  width: 100%;
  margin: 48px auto 24px;
}
@media screen and (max-width: 767px) {
  html .article-page .page-content {
    padding: 0;
    border: none;
  }
}
html .article-page .page-content .line {
  font-size: 16px;
  line-height: 1.9;
}
html .article-page .page-content .line.title {
  padding-bottom: 0.666em;
  margin-bottom: 1em;
  font-size: 24px;
  line-height: 1.333;
  border-bottom: solid 1px var(--neutral6);
}
html .article-page .feedback-section .buttons button {
  border: none;
  border-radius: var(--rounded-md);
  background: var(--feedback-button-bg-color);
  color: var(--feedback-button-label-color);
}
html .article-page .feedback-section .buttons button:hover {
  background-color: var(--feedback-button-bg-hover-color);
}
html .article-page .feedback-section #feedback-bad-button-label {
  margin-top: 0;
}
html .article-page .feedback .good-button #feedback-good-button-label,
html .article-page .feedback .good-button #feedback-bad-button-label,
html .article-page .feedback .bad-button #feedback-good-button-label,
html .article-page .feedback .bad-button #feedback-bad-button-label {
  margin-top: 0;
}
html .article-page .detailed-feedback-link {
  background-color: transparent;
}
html .article-page .detailed-feedback-link:hover {
  background-color: transparent;
}
html .article-page .detailed-feedback-link-button {
  border: none;
  border-radius: var(--rounded-md);
  background-color: var(--feedback-button-bg-color);
  color: var(--feedback-button-label-color);
}
html .article-page .detailed-feedback-link-button:hover {
  background-color: var(--feedback-button-bg-hover-color);
  border-radius: var(--rounded-md);
}
html .article-page .related-pages-section {
  width: 100%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  html .article-page .related-pages-section {
    border-top: solid 1px var(--card-border-color);
  }
}
@media screen and (max-width: 767px) {
  html .article-page .related-pages-section .container {
    max-width: calc(100% - 16px);
  }
}
html .article-page .related-pages-section .related-pages {
  margin-top: 0;
  margin-bottom: 0;
  padding: 24px;
}
html .article-page .related-pages-section .related-pages .related-pages-title {
  /* font-weight: normal; 
  padding-left: 8px; */
}
html .article-page .related-pages-section .related-pages .related-pages-body ul > li:not(:last-child) {
  margin-bottom: 4px;
}
html .article-page .related-pages-section .related-pages .related-pages-body ul > li > a {
  padding: 6px 8px;
}
html .article-page .related-pages-section .related-pages .related-pages-body ul > li > a .icon {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  margin-top: 4px;
  /* background-image: url(https://custom-assets.helpfeel.com/helpfeel-sample/icons/icon-file-text.svg) !important; */
  background-size: contain;
  background-position: center;
}
html .article-page strong.level.level-3 {
  font-size: 125%;
  line-height: 140%;
  display: block;
  margin: 1.25em 0 0;
  font-feature-settings: "palt";
}
html .article-page strong.level.level-4 {
  font-size: 150%;
  line-height: 140%;
  display: block;
  margin: 1.5em 0 0;
  font-feature-settings: "palt";
}
html .article-page-empty .content {
  margin-bottom: 0;
  order: 1;
}
html .article-page-empty .content .page-content {
  padding-bottom: 0;
  border-bottom: 0;
  border-radius: var(--card-border-radius) var(--card-border-radius) 0 0;
}
html .article-page-empty .content .page-content .line.title {
  margin-bottom: 0;
}
html .article-page-empty .feedback-section {
  order: 3;
}
html .article-page-empty .related-pages-section {
  order: 2;
}
html .article-page-empty .related-pages-section .container .related-pages {
  border-top: 0;
  border-radius: 0 0 var(--card-border-radius) var(--card-border-radius);
}
.inframe html .article-page-empty .related-pages-section .container .related-pages {
  padding-top: 0;
}
html .article-page-empty #detailed-feedback-section {
  order: 4;
}
html .article-page-empty .footer {
  order: 5;
}
html .custom-contact-container .description {
  color: var(--helper-color);
}
html .contact-page {
  font-size: 14px;
}
html .contact-page .description-html .description {
  padding: 10px 0;
  background-color: transparent;
}
html .contact-page .description-html:has(+ #g-recaptcha) {
  margin-top: 40px;
}
html .contact-page .form-group.required > label:after, html .contact-page .form-group.required.radio-button-container > div:not(.radio-button-group) > label:after {
  content: "必須";
  color: #fff;
  font-size: 10px;
  background-color: #e5484d;
  padding: 3px;
  border-radius: 4px;
  margin-left: 5px;
  vertical-align: 2px;
}
html .contact-page .form-group > label, html .contact-page .form-group.radio-button-container > div:not(.radio-button-group) label {
  display: block;
  color: var(--header-color);
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 12px;
  font-weight: bold;
}
html .contact-page .form-group.rel-question, html .contact-page .form-group.nohit {
  margin-top: 0;
}
html .contact-page div#g-recaptcha {
  margin: 60px 0 80px;
}
html .contact-page div#g-recaptcha > div {
  margin: 0 auto;
}
html .contact-page .contact-container {
  padding-bottom: 0;
}
html .contact-page .contact-container .hints {
  padding-left: 0;
}
html .contact-page .contact-container .form-group + .description-html {
  margin: 0;
}
html .contact-page .contact-container .button-submit {
  color: white;
  background: var(--primary9);
  border-radius: var(--rounded-md);
  padding: 12px 14px;
}
html .contact-page .contact-container .button-submit:hover {
  background-color: var(--primary10);
}
html .contact-page .contact-container .button-submit:disabled {
  background: var(--button-disabled-bg-color);
  color: var(--button-disabled-label-color);
}
html .contact-page .footer {
  padding-top: 24px;
}
html .contact-page .footer .footer-main_contact {
  display: none;
}
html .contact-page .footer .footer-main_search-top {
  max-width: 240px;
  width: 100%;
  box-sizing: border-box;
}
html.inframe #app-container {
  margin-top: 57px;
}
html.inframe .search-page::after {
  display: none;
}
html.inframe .header {
  height: auto;
  padding: 0;
  border-bottom: solid 1px var(--custom-border-color, var(--form-border-color));
}
html.inframe .container {
  width: 100%;
  max-width: 100%;
}
html.inframe .keywords {
  margin-top: 0;
  border: none;
  border-top: solid 1px var(--custom-border-color, var(--form-border-color));
  border-radius: 0;
}
html.inframe .faq-list {
  border: none;
}
html.inframe .faq-list .faq-list-scroll-container {
  /* Firefox - 通常時はスクロールバー非表示 */
  scrollbar-width: none;
  /* WebKit - 通常時はスクロールバー非表示 */
  /* Firefox - ホバー時のみスクロールバー表示 */
  /* WebKit - ホバー時のみスクロールバー表示 */
}
html.inframe .faq-list .faq-list-scroll-container::-webkit-scrollbar {
  width: 0;
  background: transparent;
}
html.inframe .faq-list .faq-list-scroll-container:hover {
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.1) transparent;
}
html.inframe .faq-list .faq-list-scroll-container:hover::-webkit-scrollbar {
  width: 6px;
  background: transparent;
}
html.inframe .faq-list .faq-list-scroll-container:hover::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 3px;
}
html.inframe .faq-list,
html.inframe .keywords,
html.inframe .article-page .page-content {
  border-radius: 0;
  background-color: #fff;
}
html.inframe .query-input {
  background-color: #fff;
}
html.inframe .query-input:focus-within {
  outline: none;
}
html.inframe .query-input input,
html.inframe .query-input textarea {
  background-size: 18px;
  padding-left: 48px;
  background-position: 16px center;
}
html.inframe .faq-list {
  margin-top: 0;
}
html.inframe .article-page .content {
  margin-top: 16px;
}
html.inframe .article-page .page-content {
  padding-inline: 24px;
}
html.inframe .article-page .related-pages-section .container {
  max-width: calc(100% - 24px);
}
html.inframe .inframe-header {
  font-weight: normal;
}
html.inframe .inframe-header a svg {
  width: 16px;
}
html.inframe .inframe-header a svg path {
  fill: var(--helper-color);
}
html[data-pdf="1"].inframe .query-input {
  padding-top: 0;
}

/*****************************************
  * Custom
*****************************************/
html .app .container {
  display: flex;
  flex-flow: column;
}
html .app .container .keywords.keywords-top-most {
  order: 1;
  margin: 32px 0 0;
}
@media screen and (max-width: 767px) {
  html .app .container .keywords.keywords-top-most {
    margin: 24px 0 0;
  }
}
html .app .container .faq-list {
  order: 2;
}
html .app .container .keywords {
  order: 3;
}

html body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
html #app-container {
  min-height: 50vh;
}
html .search-page::after {
  background: #f0f4f7;
}
html .search-page #search-container {
  margin-bottom: 24px;
}
html .navbar {
  height: 90px;
  border-bottom: 1px solid #dfe8ef;
}
@media screen and (max-width: 767px) {
  html .navbar {
    padding: 10px;
    height: auto !important;
    flex-wrap: nowrap;
  }
}
html .navbar h1.brand img {
  width: 300px;
}
@media screen and (max-width: 767px) {
  html .navbar h1.brand img {
    width: 160px;
  }
}
html .navbar ul.header-menu > li > a {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  padding: 6px 12px;
  color: var(--body-color);
  font-size: 14px;
  line-height: 1.5;
  background: #fff;
  border: var(--card-border-width) solid var(--brand-color);
  border-radius: 30px;
  font-weight: bold;
}
html .navbar ul.header-menu > li > a:hover {
  background-color: #fff;
  color: var(--brand-color);
}
@media screen and (max-width: 767px) {
  html .navbar ul.header-menu > li > a {
    padding: 6px 8px;
    font-size: 10px;
  }
}
html .header .subtitle {
  padding: 72px 0 32px;
}
@media screen and (max-width: 767px) {
  html .header .subtitle {
    display: block;
    padding: 40px 0 24px;
  }
}
html .header .subtitle h2 {
  font-size: 36px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.12rem;
}
@media screen and (max-width: 767px) {
  html .header .subtitle h2 {
    font-size: 26px;
    letter-spacing: 0.08rem;
  }
}
@media screen and (max-width: 767px) {
  html .query-input {
    margin-top: 0 !important;
  }
}
html .faq-list {
  margin-top: 32px;
}
html .faq-list .faq-list-search-summary {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  html .faq-list {
    margin-top: 24px;
  }
}
html .faq-list,
html .keywords,
html .page-content,
html .related-pages {
  border: var(--card-border-width) solid var(--card-border-color);
}
html .faq-list .faq-list-title {
  margin: 24px auto 12px;
}
html .faq-list .faq-list-title,
html .keywords .keywords-title,
html .related-pages .related-pages-title {
  position: relative;
  margin-bottom: 16px;
  padding: 0 0 0 16px;
  font-size: 18px;
  font-weight: bold;
}
html .faq-list .faq-list-title::before,
html .keywords .keywords-title::before,
html .related-pages .related-pages-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 1.2em;
  background-color: var(--brand-color);
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  html .faq-list .faq-list-title,
html .keywords .keywords-title,
html .related-pages .related-pages-title {
    font-size: 16px;
  }
  html .faq-list .faq-list-title::before,
html .keywords .keywords-title::before,
html .related-pages .related-pages-title::before {
    margin-top: 1px;
  }
}
@media screen and (max-width: 767px) {
  html .related-pages .related-pages-title {
    padding: 0 0 0 26px;
  }
  html .related-pages .related-pages-title::before {
    margin-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  html .faq-list ul > li > a {
    font-size: 16px;
  }
}
html .faq-list ul > li > a:hover {
  background-color: #f0f4f7;
}
html .keywords .keywords-body .list {
  gap: 10px;
}
html .keywords .keywords-body .list > a {
  padding: 6px 18px;
  border-radius: 30px;
  background-color: #fff;
  color: var(--body-color);
  border: var(--card-border-width) solid var(--card-border-color);
}
@inclde sp {
  html .keywords .keywords-body .list > a {
    font-size: 16px;
  }
}
html .keywords .keywords-body .list > a:hover {
  border: var(--card-border-width) solid var(--brand-color);
  color: var(--brand-color);
}
html .keywords .keywords-body .list > a.highlight {
  border: var(--card-border-width) solid var(--brand-color);
  color: var(--brand-color);
}
html .article-page .content {
  margin: 48px auto;
}
@media screen and (max-width: 767px) {
  html .article-page .content {
    margin: 8px auto 0;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  html .article-page .container {
    max-width: calc(100% - 20px);
  }
}
@media screen and (max-width: 767px) {
  html .article-page .page-content {
    padding: 18px 14px 56px;
    border: none;
    border-radius: 10px;
  }
}
html .article-page .page-content .line.title {
  border-bottom: var(--card-border-width) solid var(--card-border-color);
}
@media screen and (max-width: 767px) {
  html .article-page .page-content .line.title {
    font-size: 20px;
  }
}
html .article-page .page-content a,
html .article-page .page-content a.external-link {
  text-decoration: underline;
  text-underline-offset: 3px;
}
html .article-page .feedback-section {
  margin: 0;
}
@media screen and (max-width: 767px) {
  html .article-page .feedback-section {
    margin: 0;
    padding: 0;
  }
}
html .article-page .feedback-section #feedback-message-title-solution {
  font-size: 16px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  html .article-page .feedback-section #feedback-message-title-solution {
    margin: 0 0 15px;
  }
}
html .article-page .feedback-section .buttons {
  gap: 8px;
}
html .article-page .feedback-section .buttons button {
  background: #f0f4f7;
  border: var(--card-border-width) solid var(--card-border-color);
  padding: 12px 0;
}
html .article-page .feedback-section .buttons button:hover {
  background-color: #dfe8ef;
}
html .article-page .feedback-section .buttons button #feedback-good-button-label,
html .article-page .feedback-section .buttons button #feedback-bad-button-label {
  color: var(--body-color);
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
html .article-page .feedback-section .buttons .good-button button,
html .article-page .feedback-section .buttons .bad-button button {
  min-width: 84px;
  height: auto;
}
@media screen and (max-width: 767px) {
  html .article-page .related-pages-section {
    border-top: none;
    padding-top: 48px;
  }
}
@media screen and (max-width: 767px) {
  html .article-page .related-pages-section .container {
    max-width: calc(100% - 20px);
  }
}
html .article-page .related-pages {
  margin-top: 48px !important;
}
@media screen and (max-width: 767px) {
  html .article-page .related-pages {
    margin-top: 0 !important;
    padding: 16px 8px !important;
    border: var(--card-border-width) solid var(--card-border-color);
    border-radius: 8px;
  }
  html .article-page .related-pages .related-pages-body ul > li > a {
    padding: 4px 0;
    font-size: 16px;
  }
}
html .article-page-empty .content {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  html .article-page-empty .feedback-section {
    padding: 40px 0 0 !important;
  }
}
html .article-page-empty .related-pages {
  margin: 0 auto 40px !important;
}
@media screen and (max-width: 767px) {
  html .article-page-empty .related-pages {
    margin: 0 auto 0 !important;
  }
}
html .footer-information {
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  html .footer-information {
    padding: 32px 0;
  }
}
html .footer-information .footer-information__wrapper {
  display: flex;
  margin: 0 auto;
  width: calc(100% - 80px);
  max-width: 1000px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  html .footer-information .footer-information__wrapper {
    flex-direction: column;
    width: calc(100% - 40px);
  }
}
html .footer-information .footer-information__wrapper dl.footer-information__company {
  width: 50%;
  padding-right: 30px;
  border-right: var(--card-border-width) solid var(--card-border-color);
  text-align: left;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  html .footer-information .footer-information__wrapper dl.footer-information__company {
    width: 100%;
    padding-right: 0;
    border-right: none;
    margin: 0;
  }
}
html .footer-information .footer-information__wrapper dl.footer-information__company dt.company__ttl {
  font-weight: bold;
}
html .footer-information .footer-information__wrapper dl.footer-information__company dd.company__txt {
  margin: 0;
}
html .footer-information .footer-information__data {
  padding-left: 30px;
  width: 50%;
  text-align: left;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  html .footer-information .footer-information__data {
    width: 100%;
    padding-left: 0;
    margin-top: 24px;
    padding-top: 24px;
    border-top: var(--card-border-width) solid var(--card-border-color);
  }
}
@media screen and (max-width: 767px) {
  html .footer-information .footer-information__data dl.footer-information__data-list {
    margin: 0;
  }
}
html .footer-information .footer-information__data dl.footer-information__data-list dt.data-list__ttl {
  font-weight: bold;
}
html .footer-information .footer-information__data dl.footer-information__data-list dd.data-list__txt {
  margin: 0;
}
html .footer-information .footer-information__data dl.footer-bottom__data-box {
  border: var(--card-border-width) solid var(--card-border-color);
  padding: 1em;
}
@media screen and (max-width: 767px) {
  html .footer-information .footer-information__data dl.footer-bottom__data-box {
    margin: 16px 0 0;
  }
}
html .footer-information .footer-information__data dl.footer-bottom__data-box dt.data-box__ttl {
  font-weight: bold;
}
html .footer-information .footer-information__data dl.footer-bottom__data-box dd.data-box__txt {
  margin: 0;
}
html .footer {
  padding-top: 64px;
}
@media screen and (max-width: 767px) {
  html .footer .footer-main {
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }
}
html .footer .footer-main_search-top {
  width: 260px;
  background: var(--brand-color);
  border: var(--card-border-width) solid var(--brand-color);
  border-radius: 90px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
}
html .footer .footer-main_search-top:hover {
  color: var(--brand-color);
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  html .footer .footer__inner {
    margin-top: 72px;
  }
}
html .footer .footer-bottom {
  background-color: #404040;
}
html .footer .footer-bottom .footer-bottom__copyright,
html .footer .footer-bottom .footer-bottom__powered-by-helpfeel {
  font-size: 12px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  html .footer .footer-bottom .footer-bottom__copyright,
html .footer .footer-bottom .footer-bottom__powered-by-helpfeel {
    font-size: 10px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  html .footer .footer-bottom .footer-bottom__copyright {
    padding-right: 0;
    padding-bottom: 12px;
    border: none;
  }
}

html .article-page-empty .related-pages-section {
  padding-top: 0;
}

@media screen and (max-width: 767px) {
  html .article-page-empty .related-pages-section .container .related-pages {
    padding: 24px 3px 0;
    border: none;
  }
}

html.inframe .keywords.keywords-top-most {
  margin-top: 0 !important;
}

html.inframe .header {
  border-bottom: var(--card-border-width) solid var(--card-border-color);
}
html.inframe #search-container {
  margin-bottom: 0;
}
html.inframe .keywords {
  border-top: var(--card-border-width) solid var(--card-border-color);
}
html.inframe .keywords.keywords-top-most {
  border-top: none;
  border-bottom: var(--card-border-width) solid var(--card-border-color);
}
html.inframe .faq-list-scroll-container,
html.inframe .keywords {
  padding: 32px 24px;
}
html.inframe .inframe-header .title {
  font-weight: bold;
}
html.inframe .article-page::after {
  height: 0;
}
html.inframe .article-page .page-content {
  padding: 18px 14px 56px;
}
html.inframe .article-page .related-pages-section .related-pages {
  margin-bottom: 40px;
}
html.inframe .article-page-empty .feedback-section {
  margin-bottom: 40px;
}
html.inframe .article-page-empty .related-pages-section .container .related-pages {
  padding: 8px 0 !important;
}
html.inframe .article-page-empty .content .page-content {
  padding: 0 !important;
}

/* header btn */
html .is-sp_only {
  display: none;
}
@media screen and (max-width: 767px) {
  html .is-sp_only {
    display: block;
  }
}
html .navbar ul.header-menu > li:not(:first-child) {
  margin-left: 0 !important;
}
html .header-menu {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
html .header-menu::before {
  content: "ログイン";
  font-weight: bold;
  font-size: 14px;
  color: var(--body-color);
}
html .header-menu > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 170px;
  box-sizing: border-box;
  padding: 10px 12px !important;
  border: 2px solid var(--brand-color);
  border-radius: 100vmax;
  background-color: #fff;
  color: var(--body-color);
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
html .header-menu > li > a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  html .header-menu {
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch !important;
    gap: 0px 10px;
    margin-left: 20px !important;
    max-width: 200px;
  }
  html .header-menu::before {
    width: 100%;
    text-align: center;
    margin-right: 0;
    margin-bottom: 6px;
    font-size: 12px;
    color: var(--body-color);
    background: linear-gradient(var(--card-border-color), var(--card-border-color)) left center/calc(50% - 36px) 2px no-repeat, linear-gradient(var(--card-border-color), var(--card-border-color)) right center/calc(50% - 36px) 2px no-repeat;
  }
  html .header-menu > li {
    flex: 1;
    display: flex;
  }
  html .header-menu > li:first-child {
    max-width: 84px;
  }
  html .header-menu > li:last-child {
    max-width: 108px;
  }
  html .header-menu > li > a {
    width: 100%;
    height: 100%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 6px 8px !important;
    line-height: 1.2 !important;
    text-align: center;
    word-break: break-all;
  }
}