@charset "UTF-8";
/* ----------------------------------------
よくあるご質問一覧
---------------------------------------- */
.page-header {
  margin-bottom: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}
@media only screen and (min-width: 768px) {
  .page-header {
    background: url("../images/common/page-header-bg_pc.jpg") no-repeat center/cover;
  }
}
@media only screen and (max-width: 767px) {
  .page-header {
    background: url("../images/common/page-header-bg_sp.jpg") no-repeat center/cover;
  }
}

@media only screen and (max-width: 767px) {
  .faq_wrap .page-header__title {
    padding: max(43.4871794872px, min(13.5897435897vw, max(53px, min(3.6805555556vw, 53px)))) 0;
  }
}

/* ----------------------------------------
index
---------------------------------------- */
.index-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
}
@media only screen and (max-width: 767px) {
  .index-list {
    flex-direction: column;
  }
}
.index-list li img {
  margin-right: 10px;
  position: relative;
  z-index: 1;
}
.index-list li:nth-child(1) img {
  width: 15px;
}
.index-list li:nth-child(2) img {
  width: 11px;
}
.index-list li:nth-child(3) img {
  width: 16px;
}
.index-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: max(11.4871794872px, min(3.5897435897vw, max(14px, min(1.1111111111vw, 16px))));
}
@media only screen and (max-width: 767px) {
  .index-list li a {
    justify-content: flex-start;
    padding: 4.6154vw 8.9744vw 4.6154vw 6.1538vw;
    width: 76.6667vw;
    box-sizing: border-box;
  }
}
.index-list li a::after {
  width: 8px;
  height: 8px;
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .index-list li a::after {
    right: 6.1538vw;
  }
}

.accordion .main-contents__title {
  margin-bottom: max(42.6666666667px, min(13.3333333333vw, max(52px, min(1.9444444444vw, 28px))));
}
.accordion .main-contents__title__wrapper {
  display: flex;
  align-items: center;
}
.accordion .main-contents__title__wrapper h3 {
  font-size: max(22.9743589744px, min(7.1794871795vw, max(28px, min(1.9444444444vw, 28px))));
}
@media only screen and (max-width: 767px) {
  .accordion .main-contents__title__wrapper h3 {
    width: 79.4872%;
    text-align: left;
    text-wrap: auto;
    line-height: 1.3;
  }
}
.accordion .main-contents__title__icon {
  margin-left: 8px;
  margin-right: 24px;
}
@media only screen and (max-width: 767px) {
  .accordion .main-contents__title__icon {
    margin-left: 0;
  }
}

/* ----------------------------------------
アコーディオン
---------------------------------------- */
.accordion__item {
  border-top: 1px solid #D8DADF;
}
.accordion__item:last-child {
  border-bottom: 1px solid #D8DADF;
}

.accordion__trigger {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  padding: max(16.4102564103px, min(5.1282051282vw, max(20px, min(1.6666666667vw, 24px)))) max(14.7692307692px, min(4.6153846154vw, max(18px, min(1.25vw, 18px))));
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .accordion__trigger {
    padding: max(16.4102564103px, min(5.1282051282vw, max(20px, min(1.6666666667vw, 24px)))) 0;
  }
}
@media (hover: hover) {
  .accordion__trigger:hover {
    background-color: #F5F5F5;
  }
}
@media (hover: none) {
  .accordion__trigger:active {
    background-color: #F5F5F5;
  }
}

.accordion__q {
  flex-shrink: 0;
  font-size: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  font-weight: 600;
  padding-right: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}

.accordion__title {
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.25vw, 18px))));
  font-weight: 700;
  color: #000;
  line-height: 1.5;
  flex: 1;
}

.accordion__icon {
  flex-shrink: 0;
  margin-left: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.6666666667vw, 24px))));
  transform: rotate(90deg);
  transition: transform 0.6s ease;
}

.accordion__item.is-open .accordion__icon {
  transform: rotate(-90deg);
}

.accordion__body {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.5s ease;
}
.accordion__body > * {
  overflow: hidden;
  min-height: 0;
}
.accordion__body__inner {
  padding: 0 max(9.8461538462px, min(3.0769230769vw, max(12px, min(1.6666666667vw, 24px))));
  transition: padding 0.5s ease;
  /* 回答が2要素以上でも縦に積むためgrid。flexだと段落や箇条書きが横一列に並ぶ。 */
  display: grid;
  align-items: start;
  /* 空段落の余白はfaqitemのcompileが落とすので、行間はここで確保する */
  row-gap: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  margin: 0;
  /* 折り返せない文字列でカラムが最小内容幅まで広がるのを止める */
}
.accordion__body__inner > * {
  min-width: 0;
}
.accordion__body__inner {
  /* A.のラベルを持つのはFAQだけ。方針とサービスは1カラムのまま */
}
.accordion__body__inner:has(> span:first-child) {
  grid-template-columns: auto 1fr;
}
.accordion__body__inner:has(> span:first-child) > * {
  grid-column: 2;
}
.accordion__body__inner:has(> span:first-child) > span:first-child {
  grid-column: 1;
}
.accordion__body__inner > span:first-child {
  font-size: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  font-weight: 600;
  color: #A1AABA;
  padding-right: 24px;
  line-height: 1;
}
.accordion__body__inner p {
  line-height: 1.6;
}

.accordion__item.is-open .accordion__body {
  grid-template-rows: 1fr;
  border-top: 1px solid #D8DADF;
}

.accordion__item.is-open .accordion__body__inner {
  padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) max(9.8461538462px, min(3.0769230769vw, max(12px, min(1.6666666667vw, 24px))));
}

/* ----------------------------------------
各サービスに対するご相談
---------------------------------------- */
.service {
  padding: max(65.641025641px, min(20.5128205128vw, max(80px, min(5.5555555556vw, 80px)))) 0 max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}
.service .main-contents__title__icon {
  width: max(29.5384615385px, min(9.2307692308vw, max(36px, min(2.5vw, 36px))));
}

/* ----------------------------------------
ご相談からご支援の流れについて
---------------------------------------- */
.flow {
  background-color: #F6F8FD;
  padding: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px)))) 0;
}
.flow .main-contents__title__icon {
  width: max(22.9743589744px, min(7.1794871795vw, max(28px, min(1.9444444444vw, 28px))));
}

/* ----------------------------------------
実績・支援スタイルについて
---------------------------------------- */
.style {
  padding: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px)))) 0;
}
.style .main-contents__title__icon img {
  width: max(29.5384615385px, min(9.2307692308vw, max(36px, min(2.5vw, 36px))));
}
.style .btn_lead {
  padding: max(41.0256410256px, min(12.8205128205vw, max(50px, min(3.4722222222vw, 50px)))) max(12.3076923077px, min(3.8461538462vw, max(15px, min(1.0416666667vw, 15px)))) 0;
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
  line-height: 1.8;
}
.style .round-button {
  margin-top: max(41.0256410256px, min(12.8205128205vw, max(50px, min(3.4722222222vw, 50px))));
}

.faq-ft-button {
  margin-top: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
  text-align: center;
}

.faq-ft-button a {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 16px 48px 16px 24px;
  min-width: 245px;
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
  line-height: 1;
  font-weight: 400;
  color: #fff;
  border: 1.5px solid #D8DADF;
  background-color: #0B2545;
  transition: color 0.45s ease, border-color 0.45s ease;
}
@media (hover: hover) {
  .faq-ft-button a:hover img {
    filter: brightness(0) saturate(100%) invert(30%) sepia(77%) saturate(200%) hue-rotate(173deg) brightness(75%) contrast(154%);
  }
}

.faq-ft-button a span {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.accordion.policy__accordion {
  padding: 0 0 max(45.9487179487px, min(14.358974359vw, max(56px, min(3.8888888889vw, 56px))));
}
.accordion.policy__accordion:last-of-type {
  padding: 0 0 max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}

.policy__content {
  padding-left: max(16.4102564103px, min(5.1282051282vw, max(20px, min(1.3888888889vw, 20px))));
}

/* =========================
  Text
========================= */
.policy__accordion,
.policy-page,
.policy-page .policy__title,
.policy-page .policy__sub-title {
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
  font-weight: normal;
  line-height: 1.6;
}

.policy-page .policy__title {
  margin-top: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
}
.policy-page .policy__sub-title {
  margin-top: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}
.policy-page .txt_right {
  text-align: right;
  margin-bottom: max(26.2564102564px, min(8.2051282051vw, max(32px, min(3.3333333333vw, 48px))));
}

/* =========================
  Lists
========================= */
/* 共通 */
.policy-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.policy-list li {
  position: relative;
  padding-left: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
  margin-top: 15px;
  list-style: none;
  font-weight: normal;
  line-height: 1.6;
}
.policy-list li:last-child {
  margin-bottom: 0;
}
.policy-list--kana {
  counter-reset: kana;
}
.policy-list--kana > li {
  counter-increment: kana;
}
.policy-list--kana > li::before {
  content: "（" counter(kana, katakana) "）";
  position: absolute;
  left: 0;
  top: 0;
}
.policy-list--kana ul.disc_list {
  list-style-type: none;
}
.policy-list--kana ul.disc_list li {
  list-style-type: none;
  padding-left: 0;
  margin-top: 0;
}
.policy-list--kana ul.disc_list li::before {
  content: "・";
}
.policy-list {
  /* =========================
       （１）（２）（３）...
  ========================= */
}
.policy-list--number {
  counter-reset: number;
}
.policy-list--number li {
  counter-increment: number;
}
.policy-list--number li::before {
  content: "（ " counter(number) " ）";
  position: absolute;
  left: 0;
  top: 0;
}
.policy-list {
  /* =========================
       ①②③...
  ========================= */
}
.policy-list--circle {
  counter-reset: circle;
}
.policy-list--circle li {
  counter-increment: circle;
  padding-left: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}
.policy-list--circle li::before {
  content: counter(circle, cjk-ideographic);
  position: absolute;
  left: 0;
  top: 0;
}
.policy-list--circle li:nth-child(1)::before {
  content: "①";
}
.policy-list--circle li:nth-child(2)::before {
  content: "②";
}
.policy-list--circle li:nth-child(3)::before {
  content: "③";
}
.policy-list--circle li:nth-child(4)::before {
  content: "④";
}
.policy-list--circle li:nth-child(5)::before {
  content: "⑤";
}
.policy-list--circle li:nth-child(6)::before {
  content: "⑥";
}
.policy-list--circle li:nth-child(7)::before {
  content: "⑦";
}
.policy-list--circle li:nth-child(8)::before {
  content: "⑧";
}
.policy-list--circle li:nth-child(9)::before {
  content: "⑨";
}
.policy-list--circle li:nth-child(10)::before {
  content: "⑩";
}

ul.policy-list li {
  padding-left: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  margin-top: 0;
}
ul.policy-list li::before {
  content: "○";
  position: absolute;
  left: 0;
  top: 0;
}

/* =========================
  Grid
========================= */
.policy__grid {
  display: grid;
  grid-template-columns: 30px 1fr;
}

/* =========================
  Responsive
========================= */
@media (max-width: 767px) {
  .policy__content {
    padding-left: 3.8462vw;
  }
  .policy__content02 {
    padding-left: 5.1282vw;
  }
  .policy-page,
  .policy-page .policy__title,
  .policy-page .policy__sub-title {
    font-size: 16px;
  }
  .policy-page .policy__title {
    margin-top: 6.1538vw;
  }
  .policy-page .policy__sub-title {
    margin-top: 6.1538vw;
  }
  .policy-list li {
    padding-left: 12.3077vw;
    margin-top: 3.8462vw;
  }
  .policy-list--circle li {
    padding-left: 6.1538vw;
  }
  ul.policy-list li {
    padding-left: 6.1538vw;
  }
  .policy-page .policy-list--kana ul.disc_list li {
    padding-left: 6.1538vw;
  }
}
.policy-wrap .index {
  margin-bottom: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}
.policy-wrap .index .index-list {
  gap: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}
@media only screen and (min-width: 768px) {
  .policy-wrap .index .index-list li a {
    min-width: 150px;
  }
}
.policy-wrap .accordion .main-contents__title {
  margin-bottom: 0;
  padding: max(16.4102564103px, min(5.1282051282vw, max(20px, min(1.6666666667vw, 24px)))) max(14.7692307692px, min(4.6153846154vw, max(18px, min(1.25vw, 18px))));
}
@media only screen and (max-width: 767px) {
  .policy-wrap .accordion .main-contents__title {
    padding: max(16.4102564103px, min(5.1282051282vw, max(20px, min(1.6666666667vw, 24px)))) 0;
  }
}

@media print {
  .policy__accordion .accordion__item .accordion__body {
    grid-template-rows: 1fr;
    border-top: 1px solid #D8DADF;
  }
  .policy__accordion .accordion__item .accordion__body__inner {
    padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) max(9.8461538462px, min(3.0769230769vw, max(12px, min(1.6666666667vw, 24px))));
  }
  .policy__accordion .accordion__item .accordion__icon {
    transform: rotate(-90deg);
  }
}
.article-detail__inner div.block_link {
  margin-top: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}

.block_link__ttl {
  display: block;
  font-size: max(18.0512820513px, min(5.641025641vw, max(22px, min(1.6666666667vw, 24px))));
  color: #000;
  line-height: 1.2;
  letter-spacing: 0.01em;
  margin-bottom: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
}
.block_link a {
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
  font-weight: 600;
  color: #0B2545;
  text-decoration: none;
  padding-bottom: 2px;
  border-bottom: 1px solid #0B2545;
  position: relative;
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  .block_link a:hover {
    opacity: 0.7;
  }
}
.block_link a.arrow::after {
  display: inline-block;
  content: "";
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15'%3E%3Cellipse cx='7.5' cy='7.5' rx='7.5' ry='7.5' fill='%230B2545'/%3E%3Cpath d='M6 4.70559L9.15789 7.33717L6 9.96875' stroke='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: middle;
  padding: 10px;
}
.block_link a.pdf-link::after {
  display: inline-block;
  content: "";
  width: 24px;
  height: 24px;
  background: url("../images/common/icon-pdf.svg") no-repeat center/contain;
  vertical-align: middle;
  margin-left: 5px;
  margin-bottom: 5px;
}
.block_link a + a {
  margin-top: 2em;
}

/*# sourceMappingURL=policy-page.css.map */
