@charset "UTF-8";
/*--------------------------------------------
FLOW01
---------------------------------------------*/
.flow01__title {
  font-weight: 700;
  font-size: calc(20 var(--fz));
  line-height: 1.2;
}
.flow01__lede {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.flow01__lists > li {
  background-color: var(--primary03);
  counter-increment: flow01No;
  position: relative;
}
.flow01__lists > li:before {
  content: counter(flow01No, decimal-leading-zero);
  position: absolute;
  color: var(--primary);
  font-weight: 400;
  top: 0;
  translate: 0 -50%;
  font-family: "Roboto", sans-serif;
}
.flow01__lists > li:not(:last-child):after {
  content: "";
  background-color: var(--primary03);
  left: 50%;
  translate: -50% 0;
  top: 100%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  display: block;
  font-size: 0;
}
.flow01__lists h3 {
  font-weight: 700;
}
.flow01__lists p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
@media screen and (width <= 768px) {
  .flow01 {
    padding-top: calc(62 var(--vwBase));
  }
  .flow01__title + .flow01__lede {
    margin-top: calc(20 var(--vwBase));
  }
  .flow01__lists {
    margin-top: calc(36 var(--vwBase));
  }
  .flow01__lists > li {
    padding-top: calc(30 var(--vwBase));
  }
  .flow01__lists > li:has(.float-box01):not(:has(.is-fixed)) {
    padding-bottom: calc(10 var(--vwBase));
  }
  .flow01__lists > li:has(.float-box01):has(.is-fixed) {
    padding-bottom: calc(16 var(--vwBase));
  }
  .flow01__lists > li:not(:has(.float-box01)) {
    padding-bottom: calc(16 var(--vwBase));
  }
  .flow01__lists > li + li {
    margin-top: calc(27 var(--vwBase));
  }
  .flow01__lists > li:before {
    font-size: calc(32 var(--fz));
    left: calc(25 var(--percentBase));
  }
  .flow01__lists > li:not(:last-child):after {
    width: calc(110 var(--percentBase));
    height: calc(22.5 var(--vwBase));
  }
  .flow01__lists :where(h3, p) {
    padding-inline: calc(25 var(--percentBase));
  }
  .flow01__lists h3 {
    font-size: calc(16 var(--fz));
    line-height: 1.1875;
  }
  .flow01__lists h3 + p {
    margin-top: calc(16 var(--vwBase));
  }
  .flow01__lists__box {
    margin-top: calc(10 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow01 {
    padding-top: calc(31 var(--vwBase));
  }
  .flow01__title + .flow01__lede {
    margin-top: calc(22 var(--vwBase));
  }
  .flow01__lists {
    margin-top: calc(70 var(--vwBase));
  }
  .flow01__lists > li {
    padding-top: calc(25 var(--vwBase));
    padding-inline: calc(50 var(--percentBase));
  }
  .flow01__lists > li:has(.float-box01):not(:has(.is-fixed)) {
    padding-bottom: calc(10 var(--vwBase));
  }
  .flow01__lists > li:has(.float-box01):has(.is-fixed) {
    padding-bottom: calc(40 var(--vwBase));
  }
  .flow01__lists > li:not(:has(.float-box01)) {
    padding-bottom: calc(40 var(--vwBase));
  }
  .flow01__lists > li + li {
    margin-top: calc(50 var(--vwBase));
  }
  .flow01__lists > li:before {
    font-size: calc(50 var(--fz));
    left: calc(50 var(--percentBase));
  }
  .flow01__lists > li:not(:last-child):after {
    width: calc(113 var(--percentBase));
    height: calc(24 var(--vwBase));
  }
  .flow01__lists h3 {
    font-size: calc(18.7 var(--fz));
    line-height: 1.4973262032;
  }
  .flow01__lists h3 + p {
    margin-top: calc(20 var(--vwBase));
  }
  .flow01__lists__box {
    margin-top: calc(-11 var(--vwBase));
  }
}

.float-box01 {
  background-color: var(--primary03);
  margin-inline: auto;
}
.float-box01 a {
  border-radius: 100vmax;
  margin-inline: auto;
  color: white;
  display: grid;
  align-items: center;
  justify-content: center;
  grid-template-columns: auto auto;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  padding-block: calc(14.5 var(--vwBase));
  background-color: var(--secondary);
}
.float-box01.is-fixed {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5;
}
@media screen and (width <= 768px) {
  .float-box01 {
    padding-block: calc(6 var(--vwBase));
  }
  .float-box01:not(.is-fixed) {
    width: calc(320 var(--percentBase));
  }
  .float-box01.is-fixed a {
    width: calc(320 var(--viewportBase));
  }
}
@media print, screen and (width > 768px) {
  .float-box01 {
    padding-top: calc(25 var(--vwBase));
    padding-bottom: calc(30 var(--vwBase));
  }
  .float-box01:not(.is-fixed) a {
    width: 35.5555555556%;
  }
  .float-box01.is-fixed a {
    width: min(320px, (320 var(--viewportBase)));
  }
}

@media print, screen and (width > 768px) {
  .head01 + .flow01 {
    margin-top: calc(49 var(--vwBase));
  }
}

/*--------------------------------------------
TITLE
---------------------------------------------*/
.title01 {
  font-weight: 700;
}
@media screen and (width <= 768px) {
  .title01 {
    font-size: calc(20 var(--fz));
    line-height: 1.2;
  }
}
@media print, screen and (width > 768px) {
  .title01 {
    text-align: center;
    font-size: calc(24 var(--fz));
    line-height: 1.2083333333;
  }
}

.title02 {
  background-color: var(--primary03);
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  font-weight: 700;
  padding-block: calc(8 var(--vwBase));
  padding-left: calc(16.5 var(--percentBase));
}

/*--------------------------------------------
PENSION
---------------------------------------------*/
.pension-about {
  margin-top: calc(64 var(--vwBase));
}
.pension-about__title {
  font-weight: 700;
  font-size: calc(20 var(--fz));
  line-height: 1.2;
}
.pension-about__lede {
  margin-top: calc(16 var(--vwBase));
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}

.pension-kinds {
  margin-top: calc(64 var(--vwBase));
  padding-bottom: calc(34 var(--vwBase));
}
.pension-kinds__title {
  font-weight: 700;
  font-size: calc(20 var(--fz));
  line-height: 1.2;
}
.pension-kinds__title + .pension-kinds__section {
  margin-top: calc(24 var(--vwBase));
}
.pension-kinds__section + .pension-kinds__section {
  margin-top: calc(14 var(--vwBase));
}
.pension-kinds__lede {
  margin-top: calc(8 var(--vwBase));
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.pension-kinds picture {
  margin-top: calc(32 var(--vwBase));
  text-align: center;
}
.pension-kinds picture img {
  max-width: 100%;
  height: auto;
}

/*--------------------------------------------
FAQ01
---------------------------------------------*/
.faq01__title {
  font-size: calc(20 var(--fz));
  line-height: 1.2;
  font-weight: 700;
}
.faq01 p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.faq01 p em {
  background-image: linear-gradient(transparent 60%, #ff9 60%);
}
.faq01 p + p {
  margin-top: 1em;
}
.faq01 details {
  outline-offset: -1px;
  outline-style: solid;
  outline-width: 1px;
}
.faq01 summary {
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  display: grid;
  align-items: center;
  grid-template-columns: 1fr auto;
  padding-block: calc(11 var(--vwBase));
}
.faq01 details:not([inert]) {
  outline-color: var(--primary);
}
.faq01 details:not([inert]) summary {
  font-weight: 700;
}
.faq01 details:not([inert]) summary:before, .faq01 details:not([inert]) summary:after {
  content: "";
  font-size: 0;
  grid-column: 2;
  grid-row: 1;
  height: calc(2 var(--vwBase));
  background-color: var(--primary);
}
.faq01 details:not([inert]) summary:after {
  rotate: -90deg;
}
.faq01 detailsinert {
  outline-color: var(--base);
}
.faq01 detailsinert summary {
  font-weight: 400;
}
.faq01__box__content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 0fr;
  overflow: hidden;
}
.faq01__box__content > div {
  overflow: hidden;
}
.faq01__box__content02 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.faq01__box__content p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.faq01__box__content__more {
  color: var(--primary);
  display: block;
  margin-left: auto;
  font-size: calc(15 var(--fz));
  line-height: 1.2666666667;
  width: fit-content;
}
.faq01 details.is-open summary:after {
  rotate: 0deg;
}
.faq01 details.is-open .faq01__box__content {
  grid-template-rows: 1fr;
  padding-top: calc(7 var(--vwBase));
}
@media screen and (width <= 768px) {
  .faq01__title + p {
    margin-top: calc(16 var(--vwBase));
  }
  p + .faq01__box {
    margin-top: calc(24 var(--vwBase));
  }
  .faq01__title + .faq01__box {
    margin-top: calc(32 var(--vwBase));
  }
  .faq01 details + details {
    margin-top: calc(9 var(--vwBase));
  }
  .faq01 summary {
    padding-left: calc(9 var(--percentBase));
    padding-right: calc(13 var(--percentBase));
    grid-template-columns: 1fr 5.1282051282%;
    column-gap: 4.4871794872%;
  }
  .faq01__box__content {
    padding-left: calc(9 var(--percentBase));
    padding-right: calc(32 var(--percentBase));
  }
  .faq01__box__content02 {
    -webkit-line-clamp: 5;
  }
  .faq01__box__content__more {
    margin-top: calc(8 var(--vwBase));
  }
  .faq01 details.is-open .faq01__box__content {
    padding-bottom: calc(14 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .faq01 {
    padding-top: calc(30 var(--vwBase));
  }
  .faq01__title + p {
    margin-top: calc(22 var(--vwBase));
  }
  p + .faq01__box {
    margin-top: calc(23 var(--vwBase));
  }
  .faq01__title + .faq01__box {
    margin-top: calc(30 var(--vwBase));
  }
  .faq01 details + details {
    margin-top: calc(7 var(--vwBase));
  }
  .faq01 summary {
    padding-inline: calc(13 var(--percentBase));
    grid-template-columns: 1fr 1.6427104723%;
  }
  .faq01__box__content {
    padding-left: calc(13 var(--percentBase));
    padding-right: calc(30 var(--percentBase));
  }
  .faq01__box__content02 {
    -webkit-line-clamp: 3;
  }
  .faq01__box__content__more {
    margin-top: calc(22 var(--vwBase));
  }
  .faq01 details.is-open .faq01__box__content {
    padding-bottom: calc(20 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .flow01 + .faq01 {
    margin-top: calc(60 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow01 + .faq01 {
    margin-top: calc(50 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .faq01 + .faq01 {
    margin-top: calc(64 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .faq01 + .faq01 {
    margin-top: calc(80 var(--vwBase));
  }
}

.grasp + .faq01 {
  margin-top: calc(68 var(--vwBase));
}

/*--------------------------------------------
FAQ01
---------------------------------------------*/
.posts02__title {
  font-size: calc(20 var(--fz));
  line-height: 1.2;
  font-weight: 700;
}
.posts02__ledeBox p, .posts02__ledeBox02 p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.posts02__ledeBox p em, .posts02__ledeBox02 p em {
  background-image: linear-gradient(transparent 60%, #ff9 60%);
}
.posts02__ledeBox p + p, .posts02__ledeBox02 p + p {
  margin-top: 1em;
}
.posts02__ledeBox + .posts02__title02 {
  margin-top: calc(64 var(--vwBase));
}
.posts02__box + .posts02__title02 {
  margin-top: calc(60 var(--vwBase));
}
.posts02__title02 {
  border-left: solid calc(3 var(--vwBase)) var(--primary);
  padding-left: calc(9 var(--percentBase));
  font-size: calc(20 var(--fz));
  line-height: 1.2;
  font-weight: 700;
  padding-block: calc(2 var(--vwBase));
}
.posts02__title02 + .posts02__box {
  margin-top: calc(24 var(--vwBase));
}
.posts02__title02 + .posts02__ledeBox02 {
  margin-top: calc(24 var(--vwBase));
}
.posts02__ledeBox02 p + h4 {
  margin-top: calc(24 var(--vwBase));
}
.posts02 h4 {
  font-weight: 700;
  font-size: calc(15 var(--fz));
  line-height: 1.2;
  color: var(--primary);
}
.posts02__ledeBox02 + .posts02__box {
  margin-top: calc(20 var(--vwBase));
}
.posts02__title03 {
  font-weight: 700;
  color: var(--primary);
  font-size: calc(18 var(--fz));
  line-height: 1.2222222222;
}
.posts02__ledeBox + .posts02__title03 {
  margin-top: calc(24 var(--vwBase));
}
.posts02__title03 + .posts02__box {
  margin-top: calc(32 var(--vwBase));
}
.posts02 details {
  outline-offset: -1px;
  outline-style: solid;
  outline-width: 1px;
}
.posts02 summary {
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  display: grid;
  align-items: center;
  grid-template-columns: 1fr auto;
  padding-block: calc(11 var(--vwBase));
}
.posts02 details:not([inert]) {
  outline-color: var(--primary);
}
.posts02 details:not([inert]) summary {
  font-weight: 700;
}
.posts02 details:not([inert]) summary:before, .posts02 details:not([inert]) summary:after {
  content: "";
  font-size: 0;
  grid-column: 2;
  grid-row: 1;
  height: calc(2 var(--vwBase));
  background-color: var(--primary);
}
.posts02 details:not([inert]) summary:after {
  rotate: -90deg;
}
.posts02 detailsinert {
  outline-color: var(--base);
}
.posts02 detailsinert summary {
  font-weight: 400;
}
.posts02__box__content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 0fr;
  overflow: hidden;
}
.posts02__box__content > div {
  overflow: hidden;
}
.posts02__box__content02 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.posts02__box__content p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
.posts02__box__content__more {
  color: var(--primary);
  display: block;
  margin-left: auto;
  font-size: calc(15 var(--fz));
  line-height: 1.2666666667;
  width: fit-content;
}
.posts02 details.is-open summary:after {
  rotate: 0deg;
}
.posts02 details.is-open .posts02__box__content {
  grid-template-rows: 1fr;
  padding-top: calc(7 var(--vwBase));
}
@media screen and (width <= 768px) {
  .posts02__title + .posts02__ledeBox {
    margin-top: calc(16 var(--vwBase));
  }
  .posts02__ledeBox + .posts02__box {
    margin-top: calc(24 var(--vwBase));
  }
  .posts02__title + .posts02__box {
    margin-top: calc(32 var(--vwBase));
  }
  .posts02 details + details {
    margin-top: calc(9 var(--vwBase));
  }
  .posts02 summary {
    padding-left: calc(9 var(--percentBase));
    padding-right: calc(13 var(--percentBase));
    grid-template-columns: 1fr 5.1282051282%;
    column-gap: 4.4871794872%;
  }
  .posts02__box__content {
    padding-left: calc(9 var(--percentBase));
    padding-right: calc(32 var(--percentBase));
  }
  .posts02__box__content02 {
    -webkit-line-clamp: 5;
  }
  .posts02__box__content__more {
    margin-top: calc(8 var(--vwBase));
  }
  .posts02 details.is-open .posts02__box__content {
    padding-bottom: calc(14 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .posts02__title + .posts02__ledeBox {
    margin-top: calc(22 var(--vwBase));
  }
  .posts02__ledeBox + .posts02__box {
    margin-top: calc(23 var(--vwBase));
  }
  .posts02__title + .posts02__box {
    margin-top: calc(30 var(--vwBase));
  }
  .posts02 details + details {
    margin-top: calc(7 var(--vwBase));
  }
  .posts02 summary {
    padding-inline: calc(13 var(--percentBase));
    grid-template-columns: 1fr 1.6427104723%;
  }
  .posts02__box__content {
    padding-left: calc(13 var(--percentBase));
    padding-right: calc(30 var(--percentBase));
  }
  .posts02__box__content02 {
    -webkit-line-clamp: 3;
  }
  .posts02__box__content__more {
    margin-top: calc(22 var(--vwBase));
  }
  .posts02 details.is-open .posts02__box__content {
    padding-bottom: calc(20 var(--vwBase));
  }
}

.posts02__link {
  display: grid;
  align-items: center;
  justify-content: center;
  border-radius: 100vmax;
  color: white;
  background-color: var(--secondary);
  font-weight: 700;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  padding-block: calc(13.5 var(--vwBase));
}
@media screen and (width <= 768px) {
  .posts02__link {
    margin-inline: auto;
    margin-top: calc(26 var(--vwBase));
    width: calc(253 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .posts02__link {
    margin-top: calc(30 var(--vwBase));
    width: 39.1676866585%;
    margin-left: 29.9877600979%;
  }
}

.flow01 + .posts02 {
  margin-top: calc(64 var(--vwBase));
}

.posts02 + .posts02 {
  margin-top: calc(64 var(--vwBase));
}

.detail01 + .posts02 {
  margin-top: calc(55 var(--vwBase));
}

/*--------------------------------------------
LINKS03
---------------------------------------------*/
.links03__title {
  font-weight: 700;
  font-size: calc(20 var(--fz));
  line-height: 1.2;
}
.links03 a {
  display: grid;
  align-items: center;
  grid-template-columns: auto 1fr auto;
  font-weight: 700;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  padding-block: calc(11 var(--vwBase));
}
.links03 a:before {
  content: "Q";
  line-height: 1;
  font-size: calc(22 var(--fz));
}
.links03 a:after {
  content: "";
  display: block;
  width: auto;
  aspect-ratio: 11/16;
  font-size: 0;
  filter: var(--filterPrimary);
  background: url("../images/ui/arrow/right01.svg") right center/contain no-repeat;
  height: calc(13 var(--vwBase));
}
@media screen and (width <= 768px) {
  .links03 {
    padding-top: calc(64 var(--vwBase));
  }
  .links03__lists {
    margin-top: calc(24 var(--vwBase));
    outline-style: solid;
    outline-color: var(--base);
    outline-width: 1px;
    outline-offset: -1px;
  }
  .links03__lists > li + li {
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: var(--base);
  }
  .links03__lists--border-primary {
    outline-color: var(--primary);
  }
  .links03__lists--border-primary > li + li {
    border-top-color: var(--primary);
  }
  .links03 a {
    padding-left: calc(11 var(--percentBase));
    padding-right: calc(14 var(--percentBase));
    column-gap: 2.5806451613%;
  }
}
@media print, screen and (width > 768px) {
  .links03 {
    margin-top: calc(80 var(--vwBase));
    padding-top: calc(30 var(--vwBase));
  }
  .links03__lists {
    margin-top: calc(30 var(--vwBase));
  }
  .links03__lists > li {
    outline-offset: -1px;
    outline-style: solid;
    outline-color: var(--base);
    outline-width: 1px;
  }
  .links03__lists--border-primary > li {
    outline-color: var(--primary);
  }
  .links03__lists > li + li {
    margin-top: calc(7 var(--vwBase));
  }
  .links03 a {
    padding-left: calc(13 var(--percentBase));
    padding-right: calc(14 var(--percentBase));
    column-gap: 1.625135428%;
  }
}

/*--------------------------------------------
RESPONSIBILITY
---------------------------------------------*/
.responsibility__title {
  font-weight: 700;
}
.responsibility__lede {
  line-height: 1.5;
  font-size: calc(16 var(--fz));
}
.responsibility__lede em {
  display: inline;
  background-image: linear-gradient(transparent 60%, #ff9 60%);
}
.responsibility__lede + .responsibility__lede {
  margin-top: 1em;
}
.responsibility__nav {
  box-shadow: 0 0 calc(2 var(--vwBase)) color-mix(in srgb, black 20%, transparent);
  outline-offset: -1px;
  background-color: var(--primary03);
}
.responsibility__nav__list {
  background-color: white;
}
.responsibility__nav__list > li {
  counter-increment: no;
}
.responsibility__nav__list a {
  display: grid;
  align-items: start;
  color: var(--primary);
  grid-template-columns: auto 1fr auto;
}
.responsibility__nav__list a:not(:has(+ ol)):after {
  content: "";
  width: auto;
  font-size: 0;
  background: url("../images/ui/arrow/down01.svg") center/contain no-repeat;
  filter: var(--filterPrimary);
  aspect-ratio: 17/11;
  margin-top: calc(8.28 var(--vwBase));
  height: calc(8.45 var(--vwBase));
}
.responsibility__nav__list > li > a:before {
  border-radius: 50%;
  content: counter(no);
  background-color: var(--primary);
  color: white;
  font-weight: 500;
  width: auto;
  display: grid;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  overflow: hidden;
  height: calc(1em + (4 var(--vwBase)));
  font-size: calc(13 var(--fz));
  line-height: 1;
  margin-right: calc(11 var(--vwBase));
  margin-top: calc(4 var(--vwBase));
}
.responsibility__nav__list > li > ol {
  counter-reset: no02;
}
.responsibility__nav__list > li > ol > li {
  counter-increment: no02;
}
.responsibility__nav__list li li a {
  column-gap: calc(4 var(--vwBase));
}
.responsibility__nav__list li li a:before {
  content: counter(no02) ".";
  font-weight: 500;
  color: var(--primary);
  font-size: calc(13 var(--fz));
  line-height: 1;
  margin-top: calc(6 var(--vwBase));
}
@media screen and (width <= 768px) {
  .responsibility__title {
    font-size: calc(20 var(--fz));
    line-height: 1.2;
  }
  .responsibility__title + .responsibility__lede {
    margin-top: calc(15 var(--vwBase));
  }
  .responsibility__lede + .responsibility__title {
    margin-top: calc(44 var(--vwBase));
  }
  .responsibility__nav {
    margin-top: calc(20 var(--vwBase));
    padding-top: calc(15 var(--vwBase));
    padding-bottom: calc(16 var(--vwBase));
    padding-inline: calc(10 var(--percentBase));
  }
  .responsibility__nav__list {
    padding-top: calc(9 var(--vwBase));
    padding-bottom: calc(6 var(--vwBase));
  }
  .responsibility__nav__list a {
    font-size: calc(14 var(--fz));
    line-height: 1.7857142857;
    padding-block: calc(3.5 var(--vwBase));
    padding-right: 3.8095238095%;
  }
  .responsibility__nav__list > li > a {
    padding-left: 4.126984127%;
  }
  .responsibility__nav__list ol {
    padding-left: 10.1587301587%;
  }
  .responsibility__nav + .responsibility__flow {
    margin-top: calc(44 var(--vwBase));
  }
  .responsibility__title-02 + .responsibility__flow {
    margin-top: calc(45 var(--vwBase));
  }
  .responsibility__title-01 + .responsibility__flow {
    margin-top: calc(24 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .responsibility {
    margin-top: calc(80 var(--vwBase));
  }
  .responsibility__title {
    font-size: calc(24 var(--fz));
    line-height: 1.2083333333;
  }
  .responsibility__title + .responsibility__lede {
    margin-top: calc(40 var(--vwBase));
  }
  .responsibility__lede + .responsibility__title {
    margin-top: calc(80 var(--vwBase));
  }
  .responsibility__nav {
    margin-top: calc(40 var(--vwBase));
    padding-top: calc(30 var(--vwBase));
    padding-bottom: calc(28 var(--vwBase));
    padding-inline: calc(52.5 var(--percentBase));
  }
  .responsibility__nav__list {
    padding-top: calc(14 var(--vwBase));
    padding-bottom: calc(12 var(--vwBase));
    padding-inline: 3.6312849162%;
  }
  .responsibility__nav__list a {
    font-size: calc(16 var(--fz));
    line-height: 1.5625;
    padding-block: calc(3.5 var(--vwBase));
    padding-right: 1.4457831325%;
  }
  .responsibility__nav__list > li > a {
    padding-left: 1.5662650602%;
  }
  .responsibility__nav__list ol {
    padding-left: 3.8554216867%;
  }
  .responsibility__nav + .responsibility__flow {
    margin-top: calc(124 var(--vwBase));
  }
  .responsibility__title-02 + .responsibility__flow {
    margin-top: calc(124 var(--vwBase));
  }
  .responsibility__title-01 + .responsibility__flow {
    margin-top: calc(30 var(--vwBase));
  }
}

.flow__title {
  background-color: var(--primary03);
  color: black;
  display: grid;
  align-items: center;
  justify-content: start;
  grid-template-columns: auto auto;
  padding-block: calc(8 var(--vwBase));
}
.flow__title:before, .flow__title:after {
  display: block;
  font-size: 0;
  aspect-ratio: 1;
  content: "";
  width: auto;
  grid-column: 1;
  grid-row: 1;
  height: calc(24 var(--vwBase));
  border-radius: 50%;
  margin-top: calc(4 var(--vwBase));
}
.flow__title:before {
  background-color: var(--primary);
}
.flow__title:after {
  background: url("../images/ui/arrow/down02.svg") center/contain no-repeat;
  background-size: auto calc(16 var(--vwBase));
  filter: var(--filterWhite);
}
@media screen and (width <= 768px) {
  .flow__title {
    padding-left: calc(31 var(--viewportBase));
    font-size: calc(18 var(--fz));
    line-height: 1.7777777778;
    column-gap: 2.9069767442%;
  }
  .flow__lists {
    margin-top: calc(18 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__title {
    padding-left: calc(95 var(--percentBase));
    font-size: calc(20 var(--fz));
    line-height: 1.6;
    column-gap: 1.1049723757%;
  }
  .flow__lists {
    margin-top: calc(35 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .flow__list {
    width: 100%;
  }
}

.flow__list01 {
  background-color: var(--primary02);
}
.flow__list01__box {
  padding-bottom: calc(20 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list01 {
    padding-top: calc(18 var(--vwBase));
    padding-bottom: calc(25 var(--vwBase));
    padding-inline: calc(var(--gutter) var(--viewportBase));
  }
  .flow__list01__box {
    margin-top: calc(23 var(--vwBase));
    padding-top: calc(11 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list01 {
    padding-top: calc(30 var(--vwBase));
    padding-bottom: calc(43 var(--vwBase));
    padding-inline: calc(53 var(--percentBase));
  }
  .flow__list01__box {
    margin-top: calc(21 var(--vwBase));
    padding-top: calc(22 var(--vwBase));
  }
}

.flow__list__label {
  display: grid;
  align-items: center;
  justify-content: center;
  background-color: var(--primary);
  color: var(--primary02);
  border-radius: 100vmax;
  font-size: calc(18 var(--fz));
  line-height: 1.2222222222;
  font-weight: 700;
}
@media screen and (width <= 768px) {
  .flow__list__label {
    padding-block: calc(4.5 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list__label {
    padding-block: calc(8.5 var(--vwBase));
  }
}

.flow__list__box {
  background-color: white;
  border-radius: calc(7 var(--vwBase));
}
@media print, screen and (width > 768px) {
  .flow__list__box {
    padding-left: 5.033557047%;
    padding-right: 3.5794183445%;
  }
}

.flow__list__title {
  display: grid;
  align-items: start;
  justify-content: start;
  grid-template-columns: auto auto;
  font-weight: 500;
  font-size: calc(18 var(--fz));
  line-height: 1.7777777778;
  color: black;
}
.flow__list__title:before {
  border-radius: 50%;
  aspect-ratio: 1;
  width: auto;
  font-weight: 700;
  display: grid;
  align-items: center;
  justify-content: center;
  line-height: 1;
  height: calc(1em + (8 var(--vwBase)));
  margin-top: calc(4 var(--vwBase));
  font-size: calc(16 var(--fz));
  background-color: var(--primary);
  color: white;
}
@media screen and (width <= 768px) {
  .flow__list__title {
    padding-left: calc(11 var(--percentBase));
    column-gap: 3.0864197531%;
  }
}
@media print, screen and (width > 768px) {
  .flow__list__title {
    padding-left: 1.3463892289%;
    column-gap: 1.2330456227%;
  }
}

#responsibility-flow02[aria-current=page] .flow__list__title, #responsibility-flow03[aria-current=page] .flow__list__title {
  color: #9d9d9d;
}
#responsibility-flow02[aria-current=page] .flow__list__title:before, #responsibility-flow03[aria-current=page] .flow__list__title:before {
  background-color: transparent;
  outline: solid 1px #9d9d9d;
  outline-offset: -1px;
  color: #9d9d9d;
}

.flow__list__texts {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.flow__list__texts p {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}
@media screen and (width <= 768px) {
  .flow__list__texts {
    -webkit-line-clamp: 5;
    margin-top: calc(8 var(--vwBase));
    padding-left: calc(23 var(--percentBase));
    padding-right: calc(10 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list__texts {
    margin-top: calc(16 var(--vwBase));
    -webkit-line-clamp: 3;
  }
}

.flow__list_more {
  width: fit-content;
  display: block;
  margin-left: auto;
  color: var(--primary);
  font-weight: 700;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
}
@media screen and (width <= 768px) {
  .flow__list_more {
    margin-top: calc(9 var(--vwBase));
    margin-right: calc(26 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list_more {
    margin-top: calc(14 var(--vwBase));
  }
}

.flow__list01 + .flow__list02 {
  position: relative;
}
.flow__list01 + .flow__list02:before {
  position: absolute;
  content: "";
  display: block;
  font-size: 0;
  background-color: var(--primary);
  left: 50%;
  translate: -50% 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: auto;
  aspect-ratio: 19/12;
  height: calc(12 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list01 + .flow__list02 {
    margin-top: calc(48 var(--vwBase));
  }
  .flow__list01 + .flow__list02:before {
    top: calc(-30 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list01 + .flow__list02 {
    margin-top: calc(60 var(--vwBase));
  }
  .flow__list01 + .flow__list02:before {
    top: calc(-36 var(--vwBase));
  }
}

.flow__list02 {
  background-color: var(--primary02);
}
.flow__list02__lists {
  padding-bottom: calc(20 var(--vwBase));
}
.flow__list02__lists > li {
  background-color: white;
  border-radius: calc(7 var(--vwBase));
}
.flow__list02__lists > li + li {
  position: relative;
}
.flow__list02__lists > li + li:before {
  position: absolute;
  content: "";
  display: block;
  font-size: 0;
  background-color: var(--primary);
  left: 50%;
  translate: -50% 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: auto;
  aspect-ratio: 19/12;
  height: calc(12 var(--vwBase));
}
.flow__list02__text {
  margin-top: calc(9 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list02 {
    padding-top: calc(18 var(--vwBase));
    padding-bottom: calc(25 var(--vwBase));
    padding-inline: calc(var(--gutter) var(--viewportBase));
  }
  .flow__list02__lists {
    margin-top: calc(23 var(--vwBase));
  }
  .flow__list02__lists > li {
    padding-top: calc(16 var(--vwBase));
    padding-bottom: calc(22 var(--vwBase));
  }
  .flow__list02__lists > li + li {
    margin-top: calc(45 var(--vwBase));
  }
  .flow__list02__lists > li + li:before {
    top: calc(-28.5 var(--vwBase));
  }
  .flow__list02__text {
    padding-left: calc(23 var(--percentBase));
    padding-right: calc(17 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list02 {
    padding-top: calc(20 var(--vwBase));
    padding-bottom: calc(42 var(--vwBase));
    padding-inline: calc(53 var(--percentBase));
  }
  .flow__list02__lists {
    margin-top: calc(18 var(--vwBase));
  }
  .flow__list02__lists > li {
    padding-left: 5.033557047%;
    padding-right: 3.5794183445%;
    padding-top: calc(24 var(--vwBase));
    padding-bottom: calc(30 var(--vwBase));
  }
  .flow__list02__lists > li + li {
    margin-top: calc(66 var(--vwBase));
  }
  .flow__list02__lists > li + li:before {
    top: calc(-39 var(--vwBase));
  }
}

.flow__list__text {
  font-size: calc(16 var(--fz));
  line-height: 1.5;
}

.flow__list__link {
  display: grid;
  align-items: center;
  justify-content: center;
  border-radius: 100vmax;
  color: white;
  background-color: var(--secondary);
  font-weight: 700;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  padding-block: calc(13.5 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list__link {
    margin-inline: auto;
    margin-top: calc(16 var(--vwBase));
    width: calc(253 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list__link {
    margin-top: calc(30 var(--vwBase));
    width: 39.1676866585%;
    margin-left: 29.9877600979%;
  }
}

.flow__list03 {
  position: relative;
  overflow-x: clip;
}
.flow__list03:before {
  content: "";
  position: absolute;
  content: "";
  display: block;
  font-size: 0;
  background-color: var(--primary);
  left: 50%;
  translate: -50% 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: auto;
  aspect-ratio: 19/12;
  height: calc(12 var(--vwBase));
}
.flow__list03__lists {
  display: contents;
}
.flow__list03__label-01, .flow__list03__title, .flow__list03__list--pattern01 {
  position: relative;
}
.flow__list03__label-01:after, .flow__list03__title:after, .flow__list03__list--pattern01:after {
  content: "";
  position: absolute;
  background-color: var(--primary03);
  z-index: -1;
}
.flow__list03__list--pattern01 {
  background-color: #fff;
  border-radius: calc(7 var(--vwBase));
}
.flow__list03__list--pattern01 + .flow__list03__list--pattern01:before, .flow__list03__list--pattern01 + .flow__list03__list--pattern02:before, .flow__list03__list--pattern02 + .flow__list03__list--pattern02:before {
  position: absolute;
  content: "";
  display: block;
  font-size: 0;
  background-color: var(--primary);
  left: 50%;
  translate: -50% 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: auto;
  aspect-ratio: 19/12;
  height: calc(12 var(--vwBase));
}
.flow__list03__list--pattern02 {
  position: relative;
  background-color: var(--primary03);
}
.flow__list03__box {
  background-color: white;
}
@media screen and (width <= 768px) {
  .flow__list03 {
    position: relative;
    margin-top: calc(48 var(--vwBase));
    padding-top: calc(24 var(--vwBase));
  }
  .flow__list03:before {
    top: calc(-30 var(--vwBase));
  }
  .flow__list03__label-01, .flow__list03__title, .flow__list03__list--pattern01 {
    margin-inline: calc(var(--gutter) var(--viewportBase));
  }
  .flow__list03__label-01:after, .flow__list03__title:after, .flow__list03__list--pattern01:after {
    left: calc(-1 * var(--gutter) var(--percentBase));
    width: calc(var(--breakPoint) var(--percentBase));
  }
  .flow__list03__label-01:after {
    height: calc(100% + (24 var(--vwBase)));
    top: calc(-24 var(--vwBase));
  }
  .flow__list03__title {
    margin-top: calc(29 var(--vwBase));
  }
  .flow__list03__title:after {
    height: calc(100% + (29 var(--vwBase)));
    top: calc(-29 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(1) {
    margin-top: calc(16 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(1):after {
    height: calc(100% + (16 var(--vwBase)));
    top: calc(-16 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(2):after {
    height: calc(100% + (63 var(--vwBase)));
    top: calc(-42 var(--vwBase));
  }
  .flow__list03__list--pattern01 {
    padding-top: calc(18 var(--vwBase));
    padding-bottom: calc(26 var(--vwBase));
  }
  .flow__list03__text {
    padding-left: calc(23 var(--percentBase));
    padding-right: calc(17 var(--percentBase));
    margin-top: calc(9 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern01 {
    margin-top: calc(42 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern01:before {
    top: calc(-27 var(--vwBase));
  }
  .flow__list03__list--pattern02 {
    padding-inline: calc(var(--gutter) var(--viewportBase));
    padding-top: calc(24 var(--vwBase));
    padding-bottom: calc(22 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern02 {
    margin-top: calc(68 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern02:before {
    top: calc(-29.5 var(--vwBase));
  }
  .flow__list03__list--pattern02 + .flow__list03__list--pattern02 {
    margin-top: calc(47 var(--vwBase));
  }
  .flow__list03__list--pattern02 + .flow__list03__list--pattern02:before {
    top: calc(-29.5 var(--vwBase));
  }
  .flow__list03__box {
    margin-top: calc(23 var(--vwBase));
    padding-top: calc(18 var(--vwBase));
    padding-bottom: calc(17 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list03 {
    margin-top: calc(66 var(--vwBase));
    padding-top: calc(24 var(--vwBase));
  }
  .flow__list03:before {
    top: calc(-39 var(--vwBase));
  }
  .flow__list03__label-01, .flow__list03__title, .flow__list03__list--pattern01 {
    margin-inline: calc(53 var(--percentBase));
  }
  .flow__list03__label-01:after, .flow__list03__title:after, .flow__list03__list--pattern01:after {
    left: -5.9284116331%;
    width: 111.8568232662%;
  }
  .flow__list03__label-01 {
    position: relative;
  }
  .flow__list03__label-01:after {
    height: calc(100% + (20 var(--vwBase)));
    top: calc(-20 var(--vwBase));
  }
  .flow__list03__title {
    margin-top: calc(24 var(--vwBase));
    padding-left: 5.1454138702%;
    column-gap: 1.1185682327%;
  }
  .flow__list03__title:after {
    height: calc(100% + (24 var(--vwBase)));
    top: calc(-24 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(1) {
    margin-top: calc(16 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(1):after {
    height: calc(100% + (16 var(--vwBase)));
    top: calc(-16 var(--vwBase));
  }
  .flow__list03__lists > li:nth-child(2):after {
    height: calc(100% + (106 var(--vwBase)));
    top: calc(-64 var(--vwBase));
  }
  .flow__list03__list--pattern01 {
    padding-top: calc(26 var(--vwBase));
    padding-bottom: calc(30 var(--vwBase));
    padding-left: 5.2572706935%;
    padding-right: 3.355704698%;
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern01 {
    margin-top: calc(64 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern01:before {
    top: calc(-38 var(--vwBase));
  }
  .flow__list03__list--pattern02 {
    padding-inline: calc(53 var(--percentBase));
  }
  .flow__list03__text {
    margin-top: calc(9 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern02 {
    margin-top: calc(104 var(--vwBase));
  }
  .flow__list03__list--pattern01 + .flow__list03__list--pattern02:before {
    top: calc(-37 var(--vwBase));
  }
  .flow__list03__list--pattern02 {
    padding-top: calc(24 var(--vwBase));
    padding-bottom: calc(40 var(--vwBase));
  }
  .flow__list03__list--pattern02 + .flow__list03__list--pattern02 {
    margin-top: calc(64 var(--vwBase));
  }
  .flow__list03__list--pattern02 + .flow__list03__list--pattern02:before {
    top: calc(-38 var(--vwBase));
  }
  .flow__list03__box {
    margin-top: calc(23 var(--vwBase));
    padding-top: calc(26 var(--vwBase));
    padding-bottom: calc(20 var(--vwBase));
    padding-left: 4.9217002237%;
    padding-right: 5.1454138702%;
  }
}

.flow__list__title02 {
  display: grid;
  align-items: start;
  justify-content: start;
  color: black;
  grid-template-columns: auto auto;
  font-weight: 500;
  font-size: calc(18 var(--fz));
  line-height: 1.7777777778;
}
.flow__list__title02:before {
  background-color: white;
  color: var(--primary);
  font-weight: 700;
  line-height: 1;
  font-size: calc(16 var(--fz));
  margin-top: calc(8 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list__title02 {
    padding-left: calc(11 var(--percentBase));
    column-gap: 3.0864197531%;
  }
}
@media print, screen and (width > 768px) {
  .flow__list__title02 {
    font-size: calc(18 var(--fz));
    line-height: 1.7777777778;
    column-gap: 1.2239902081%;
  }
}

.flow__list03__lists > li[aria-current=page] .flow__list03__title02 {
  color: #9d9d9d;
}
.flow__list03__lists > li[aria-current=page] .flow__list03__title02:before {
  color: #9d9d9d;
}

.flow__list__link02 {
  display: grid;
  align-items: center;
  justify-content: center;
  border-radius: 100vmax;
  color: var(--secondary);
  outline: solid calc(2 var(--vwBase)) var(--secondary);
  background-color: white;
  font-weight: 700;
  font-size: calc(16 var(--fz));
  line-height: 1.1875;
  padding-block: calc(13.5 var(--vwBase));
}
@media screen and (width <= 768px) {
  .flow__list__link02 {
    margin-inline: auto;
    margin-top: calc(16 var(--vwBase));
    width: calc(253 var(--percentBase));
  }
}
@media print, screen and (width > 768px) {
  .flow__list__link02 {
    margin-top: calc(30 var(--vwBase));
    width: 39.1676866585%;
    margin-left: 29.9877600979%;
  }
}

@media screen and (width <= 768px) {
  .mv + .responsibility {
    padding-top: calc(43 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .mv + .responsibility {
    padding-top: calc(43 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .links03 + .responsibility {
    padding-top: calc(64 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .links03 + .responsibility {
    padding-top: calc(30 var(--vwBase));
  }
}

/*--------------------------------------------
SEARCH AREA
---------------------------------------------*/
.search-area {
  border-top: solid 1px #909090;
  border-bottom: solid 1px #909090;
  padding-block: calc(23 var(--vwBase));
}
.search-area__summary {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  font-size: calc(15 var(--fz));
  line-height: 1.2;
}
.search-area__summary:after {
  content: "";
  display: block;
  font-size: 0;
  background: url("../images/ui/arrow/down01.svg") center/contain no-repeat;
  aspect-ratio: 17/10;
  filter: var(--filterPrimary);
}
.search-area__content {
  display: grid;
  grid-template-rows: 0fr;
  grid-template-columns: 1fr;
}
.search-area__content > div {
  overflow: hidden;
}
.search-area.is-open .search-area__summary:after {
  rotate: -180deg;
}
.search-area.is-open .search-area__content {
  grid-template-rows: 1fr;
}
.search-area__lists {
  display: grid;
  align-items: start;
}
.search-area dt {
  font-weight: 700;
}
.search-area ul {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1em;
}
.search-area a {
  color: var(--primary);
  text-decoration: underline;
}
@media screen and (width <= 768px) {
  .search-area__summary:after {
    height: calc(5.25 var(--vwBase));
  }
  .search-area.is-open .search-area__content > div {
    padding-top: calc(32 var(--vwBase));
  }
  .search-area__lists {
    grid-template-columns: calc(98 var(--percentBase)) 1fr;
  }
  .search-area dt, .search-area dd {
    font-size: calc(14 var(--fz));
    line-height: 1.2142857143;
  }
  .search-area dt:not(:first-of-type), .search-area dd:not(:first-of-type) {
    margin-top: calc(8 var(--vwBase));
  }
  .search-area ul {
    row-gap: calc(8 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .search-area {
    margin-inline: auto;
    width: min(896px, (896 var(--percentBase)));
    padding-inline: min(17px, (17 var(--percentBase)));
  }
  .search-area__summary:after {
    height: calc(6.5 var(--vwBase));
  }
  .search-area.is-open .search-area__content > div {
    padding-top: calc(65 var(--vwBase));
    padding-bottom: calc(57 var(--vwBase));
  }
  .search-area__lists {
    grid-template-columns: 13.3928571429% 1fr;
  }
  .search-area dt, .search-area dd {
    font-size: calc(16 var(--fz));
    line-height: 1.5;
  }
  .search-area dt:not(:first-of-type), .search-area dd:not(:first-of-type) {
    margin-top: calc(16 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .links02 + .search-area, .links01 + .search-area {
    margin-top: calc(78 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .links02 + .search-area, .links01 + .search-area {
    margin-top: calc(120 var(--vwBase));
  }
}

@media screen and (width <= 768px) {
  .responsibility + .search-area {
    margin-top: calc(64 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .responsibility + .search-area {
    margin-top: calc(120 var(--vwBase));
  }
}

.faq + .search-area, .links03 + .search-area {
  margin-top: calc(64 var(--vwBase));
}

/*--------------------------------------------
SITES
---------------------------------------------*/
.search-area + .sites {
  border-top: 0;
}

.sites {
  border-top: solid 1px #909090;
  border-bottom: solid 1px #909090;
  padding-block: calc(23 var(--vwBase));
}
.sites__summary {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  font-size: calc(15 var(--fz));
  line-height: 1.2;
}
.sites__summary:after {
  content: "";
  display: block;
  font-size: 0;
  background: url("../images/ui/arrow/down01.svg") center/contain no-repeat;
  aspect-ratio: 17/10;
  filter: var(--filterPrimary);
}
.sites__content {
  display: grid;
  grid-template-rows: 0fr;
  grid-template-columns: 1fr;
}
.sites__content > div {
  overflow: hidden;
}
.sites.is-open {
  border-bottom: 0;
}
.sites.is-open .sites__summary:after {
  rotate: -180deg;
}
.sites.is-open .sites__content {
  grid-template-rows: 1fr;
}
.sites hgroup:not(.sites__title--column) {
  display: grid;
  align-items: start;
  justify-content: start;
  grid-template-columns: auto auto;
}
.sites hgroup p {
  font-weight: 700;
  font-size: calc(14 var(--fz));
  line-height: 1.2142857143;
}
.sites h4 {
  font-weight: 700;
  font-size: calc(14 var(--fz));
  line-height: 1.2142857143;
}
.sites li > h4, .sites hgroup {
  margin-bottom: calc(15 var(--vwBase));
}
.sites a {
  color: var(--primary);
  text-decoration: underline;
}
.sites ul:has(> li > a) {
  display: flex;
  flex-wrap: wrap;
}
.sites li ul:not(:has(> li > a)) > li + li {
  margin-top: calc(15 var(--vwBase));
}
.sites a {
  font-size: calc(14 var(--fz));
  line-height: 1.2142857143;
}
@media screen and (width <= 768px) {
  .sites {
    margin-bottom: calc(94 var(--vwBase));
  }
  .sites__summary:after {
    height: calc(5.25 var(--vwBase));
  }
  .sites.is-open .sites__content > div {
    padding-top: calc(36 var(--vwBase));
    padding-bottom: calc(14 var(--vwBase));
  }
  .sites__lists > li + li {
    margin-top: calc(15 var(--vwBase));
  }
  .sites ul:has(> li > a) {
    column-gap: calc(27 var(--percentBase));
    row-gap: calc(15 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .sites {
    margin-inline: auto;
    width: min(896px, (896 var(--percentBase)));
    padding-inline: min(17px, (17 var(--percentBase)));
    margin-bottom: calc(100 var(--vwBase));
  }
  .sites__summary:after {
    height: calc(6.5 var(--vwBase));
  }
  .sites.is-open {
    margin-bottom: calc(80 var(--vwBase));
  }
  .sites.is-open .sites__content > div {
    padding-top: calc(64 var(--vwBase));
  }
  .sites__lists > li + li {
    margin-top: calc(47 var(--vwBase));
  }
  .sites ul:has(> li > a) {
    column-gap: 3.13225058%;
  }
}

/*--------------------------------------------
FOOTER
---------------------------------------------*/
#to-top {
  line-height: 1;
  border-radius: 50%;
  box-shadow: 0 calc(2 var(--vwBase)) calc(4 var(--vwBase)) color-mix(in srgb, black 25%, transparent);
  background-color: white;
  aspect-ratio: 1;
  color: var(--primary);
  display: grid;
  justify-content: center;
  align-items: center;
  align-content: center;
  justify-items: center;
}
#to-top:before {
  content: "";
  display: block;
  font-size: 0;
  background: url("../images/ui/arrow/up01.svg") center/contain no-repeat;
  aspect-ratio: 12/7;
  width: auto;
}
#to-top:not(.is-absolute) {
  position: fixed;
}
#to-top.is-absolute {
  position: absolute;
}
@media screen and (width <= 768px) {
  #to-top {
    height: calc(48 var(--vwBase));
    font-size: calc(10 var(--fz));
    line-height: 1.2;
    row-gap: calc(4 var(--vwBase));
    padding-top: calc(4 var(--vwBase));
    right: calc(12 var(--viewportBase));
  }
  #to-top:before {
    height: calc(7 var(--vwBase));
  }
  #to-top:not(.is-absolute) {
    bottom: calc(16 var(--vwBase));
  }
  #to-top.is-absolute {
    top: calc(-64 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  #to-top {
    padding-top: calc(0.3 var(--vwBase));
    height: calc(51 var(--vwBase));
    font-size: calc(11.4 var(--fz));
    line-height: 1;
    row-gap: calc(5.76 var(--vwBase));
    left: min(50% + 600px, 100% - (60 var(--viewportBase)));
  }
  #to-top:before {
    height: calc(8.46 var(--vwBase));
  }
  #to-top:not(.is-absolute) {
    bottom: calc(24 var(--vwBase));
  }
  #to-top.is-absolute {
    top: calc(-75 var(--vwBase));
  }
}

.footer {
  background-color: var(--primary02);
  padding-bottom: calc(17 var(--vwBase));
  position: relative;
}
.footer__managemtent__title {
  text-align: center;
  font-weight: 700;
}
.footer__managemtent__box {
  background-color: white;
}
.footer__managemtent__box__title {
  font-weight: 700;
  text-align: center;
}
.footer__managemtent__box p {
  text-align: center;
}
.footer__managemtent__box__links {
  display: flex;
  justify-content: center;
  align-items: start;
  flex-wrap: wrap;
}
.footer__managemtent__box__links a {
  color: var(--primary);
}
.footer__copyright {
  text-align: center;
}
@media screen and (width <= 768px) {
  .footer {
    padding-top: calc(4 var(--vwBase));
  }
  .footer__managemtent__title {
    display: grid;
    align-items: center;
    justify-content: center;
    height: calc(40 var(--vwBase));
    line-height: 0.8421052632;
    font-size: calc(19 var(--fz));
  }
  .footer__managemtent__box {
    margin-top: calc(4 var(--vwBase));
    padding-top: calc(11 var(--vwBase));
    padding-bottom: calc(15 var(--vwBase));
    border-radius: calc(4 var(--vwBase));
    padding-inline: calc(10 var(--percentBase));
    overflow: hidden;
  }
  .footer__managemtent__box__title {
    line-height: 1.28;
    font-size: calc(14 var(--fz));
  }
  .footer__managemtent__box__text01 {
    line-height: 1.28;
    font-size: calc(14 var(--fz));
  }
  .footer__managemtent__box__text02 {
    margin-top: calc(10 var(--vwBase));
    line-height: 1.6;
    font-size: calc(12 var(--fz));
  }
  .footer__managemtent__box__links {
    margin-top: calc(8 var(--vwBase));
    row-gap: calc(9 var(--vwBase));
  }
  .footer__managemtent__box__links li {
    line-height: 1.36;
    font-size: calc(14 var(--fz));
  }
  .footer__managemtent__box__links li + li:not(:nth-child(3)):before {
    content: "　|　";
    white-space: pre;
  }
  .footer__copyright {
    display: grid;
    align-items: center;
    justify-content: center;
    margin-top: calc(22 var(--vwBase));
    line-height: 1.1666666667;
    font-size: calc(12 var(--fz));
    height: calc(36 var(--vwBase));
  }
}
@media print, screen and (width > 768px) {
  .footer {
    padding-top: calc(30 var(--vwBase));
  }
  .footer__managemtent__title {
    line-height: 1.5;
    font-size: calc(20.6 var(--fz));
  }
  .footer__managemtent__box {
    margin-top: calc(20 var(--vwBase));
    padding-top: calc(20 var(--vwBase));
    padding-bottom: calc(30 var(--vwBase));
  }
  .footer__managemtent__box__title {
    line-height: 1.5;
    font-size: calc(20.6 var(--fz));
  }
  .footer__managemtent__box__text01 {
    line-height: 1.5;
    font-size: calc(16 var(--fz));
  }
  .footer__managemtent__box__text02 {
    margin-top: calc(20 var(--vwBase));
    line-height: 1.503649635;
    font-size: calc(13.7 var(--fz));
  }
  .footer__managemtent__box__links {
    margin-top: calc(19 var(--vwBase));
  }
  .footer__managemtent__box__links li {
    line-height: 1.5;
    font-size: calc(16 var(--fz));
  }
  .footer__managemtent__box__links li + li:before {
    margin-inline: calc(3 var(--vwBase));
    content: "｜";
  }
  .footer__copyright {
    margin-top: calc(20 var(--vwBase));
    line-height: 1.5;
    font-size: calc(12 var(--fz));
  }
}

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