:root {
  --scrollbar-width: 0;
  --header-height: 10rem;
  --c_white: #fff;
  --c_txt: #222;
  --c_primary: #52B470;
  --c_primary_light: #6FD699;
  --c_primary_pale: #B8EAB8;
  --c_primary_yellow: #E8FFF3;
  --c_accent: #59A7D0;
  --c_accent_pale: #D1ECF3;
  --c_accent_dark: #3A6896;
  --bg_base: #F7F7F7;
  --bg_base_dark: #969696;
  --bdr_gray: #969696;
  --bg_gray_dark: #4B4E4E;
  --bg_btn_arrow: #E3C072;
  --c_yellow: #D1AE38;
  --bg_case_yellow: #F8F4E4;
  --f_notoSans: Noto Sans JP, sans-serif;
  --f_montserrat: Montserrat, sans-serif;
  --f_dosis: Dosis, serif;
  --f_barlow: Barlow, sans-serif;
}

* {
  max-width: 100%;
  height: auto;
  font-family: var(--f_notoSans);
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 400;
  word-break: break-all;
  color: var(--c_txt);
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
*::before, *::after {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  font-weight: inherit;
  color: inherit;
  box-sizing: border-box;
}
* > a, * > span, * > label, * > mark, * > em, * > strong, * > var, * > sup {
  font-weight: inherit;
  color: inherit;
}
*:focus {
  outline: auto;
  outline-color: var(--c_txt);
}

html, body {
  scrollbar-gutter: stable;
}

html {
  height: 100%;
  font-size: 62.5%;
  scroll-padding-top: var(--header-height);
}
@media screen and (min-width: 1920px) {
  html {
    font-size: 0.520832vw;
  }
}
@media screen and (max-width: 1280px) {
  html {
    font-size: 0.78125vw;
  }
}
@media screen and (max-width: 1023px) {
  html {
    font-size: 62.5%;
  }
}
@media screen and (max-width: 374px) {
  html {
    font-size: 2.6vw;
  }
}

body {
  font-size: 1.6rem;
  position: relative;
}
@media screen and (max-width: 1023px) {
  body {
    font-size: 1.4rem;
  }
}

p {
  text-align: justify;
}

li {
  list-style-type: none;
}

img {
  width: auto;
  max-width: 100%;
  border: none;
  display: block;
}

a {
  text-decoration: none;
  display: block;
  outline: none;
}
.cfix:after {
  content: "";
  display: block;
  clear: both;
}

.hidden {
  overflow-y: hidden !important;
}

var {
  font-size: 1em;
}
var sup {
  font-size: 0.75em;
}

picture {
  display: block;
}

.hidden {
  overflow: hidden !important;
}

#overlay {
  width: 100%;
  height: 100svh;
  background: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  z-index: 1;
}

.mv-btns {
  width: 100%;
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 3rem;
  margin: 2rem auto 0;
}
@media screen and (max-width: 1023px) {
  .mv-btns {
    flex-flow: column;
    gap: 1em;
  }
}
.mv-btns li {
  width: 100%;
  max-width: 36rem;
}
@media screen and (max-width: 1023px) {
  .mv-btns li {
    max-width: 100%;
  }
}
.mv-btns li a.btn-download {
  width: 100%;
  max-width: 100%;
  height: auto;
  font-size: 2.1rem;
  font-weight: 500;
  color: var(--c_white);
  background: var(--c_accent);
  border: 0.1rem solid var(--c_accent);
  border-radius: 10rem 100vw 100vw 100vw;
  padding: 1.25em 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download::before {
  content: "";
  width: 1em;
  height: 1em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_white);
  display: block;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download .arrow-left, .mv-btns li a.btn-download .arrow-right {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download .arrow-left, .mv-btns li a.btn-download .arrow-right {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download .arrow-left::before, .mv-btns li a.btn-download .arrow-right::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 45deg;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download .arrow-left::before, .mv-btns li a.btn-download .arrow-right::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download .arrow-left::before {
  border-left: 0.3rem solid var(--c_accent);
  border-bottom: 0.3rem solid var(--c_accent);
  translate: -35% -50%;
}
.mv-btns li a.btn-download .arrow-right {
  width: 1.5em;
  right: 1.5em;
}
.mv-btns li a.btn-download .arrow-right::before {
  border-top: 0.3rem solid var(--c_accent);
  border-right: 0.3rem solid var(--c_accent);
  translate: -65% -50%;
}
.mv-btns li a.btn-download.add-arrow-before, .mv-btns li a.btn-download.add-arrow-after {
  position: relative;
  padding: 1.25em 3em;
}
.mv-btns li a.btn-download.add-arrow-before .icon-dl, .mv-btns li a.btn-download.add-arrow-after .icon-dl {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  right: 1.5em;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download.add-arrow-before .icon-dl, .mv-btns li a.btn-download.add-arrow-after .icon-dl {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download.add-arrow-before .icon-dl::before, .mv-btns li a.btn-download.add-arrow-after .icon-dl::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_accent);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download.add-arrow-before .icon-dl::before, .mv-btns li a.btn-download.add-arrow-after .icon-dl::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-download.add-arrow-before .arrow-left, .mv-btns li a.btn-download.add-arrow-before .arrow-right {
  left: 1em;
}
.mv-btns li a.btn-download.add-arrow-after .arrow-left, .mv-btns li a.btn-download.add-arrow-after .arrow-right {
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-download.hov-action:hover {
    color: var(--c_accent);
    background: var(--c_white);
  }
  .mv-btns li a.btn-download.hov-action:hover::before {
    background: var(--c_accent);
  }
  .mv-btns li a.btn-download.hov-action:hover .arrow-left, .mv-btns li a.btn-download.hov-action:hover .arrow-right {
    background: var(--c_accent);
  }
  .mv-btns li a.btn-download.hov-action:hover .arrow-left::before, .mv-btns li a.btn-download.hov-action:hover .arrow-right::before {
    border-color: var(--c_white);
  }
  .mv-btns li a.btn-download.hov-action:hover .icon-dl {
    background: var(--c_accent);
  }
  .mv-btns li a.btn-download.hov-action:hover .icon-dl::before {
    background: var(--c_white);
  }
}
.mv-btns li a.btn-contact {
  width: 100%;
  max-width: 100%;
  height: auto;
  font-size: 2.1rem;
  font-weight: 500;
  color: var(--c_white);
  background: var(--c_primary);
  border: 0.1rem solid var(--c_primary);
  border-radius: 10rem 100vw 100vw 100vw;
  padding: 1.25em 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact::before {
  content: "";
  width: 1em;
  height: 1em;
  -webkit-mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
          mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
  background: var(--c_white);
  display: block;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact .arrow-left, .mv-btns li a.btn-contact .arrow-right {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact .arrow-left, .mv-btns li a.btn-contact .arrow-right {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact .arrow-left::before, .mv-btns li a.btn-contact .arrow-right::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 45deg;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact .arrow-left::before, .mv-btns li a.btn-contact .arrow-right::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact .arrow-left::before {
  border-left: 0.3rem solid var(--c_primary);
  border-bottom: 0.3rem solid var(--c_primary);
  translate: -35% -50%;
}
.mv-btns li a.btn-contact .arrow-right {
  width: 1.5em;
  right: 1.5em;
}
.mv-btns li a.btn-contact .arrow-right::before {
  border-top: 0.3rem solid var(--c_primary);
  border-right: 0.3rem solid var(--c_primary);
  translate: -65% -50%;
}
.mv-btns li a.btn-contact.add-arrow-before, .mv-btns li a.btn-contact.add-arrow-after {
  position: relative;
  padding: 1.25em 3em;
}
.mv-btns li a.btn-contact.add-arrow-before .icon-dl, .mv-btns li a.btn-contact.add-arrow-after .icon-dl {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  right: 1.5em;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact.add-arrow-before .icon-dl, .mv-btns li a.btn-contact.add-arrow-after .icon-dl {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact.add-arrow-before .icon-dl::before, .mv-btns li a.btn-contact.add-arrow-after .icon-dl::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_primary);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact.add-arrow-before .icon-dl::before, .mv-btns li a.btn-contact.add-arrow-after .icon-dl::before {
    transition: all 0.3s;
  }
}
.mv-btns li a.btn-contact.add-arrow-before .arrow-left, .mv-btns li a.btn-contact.add-arrow-before .arrow-right {
  left: 1em;
}
.mv-btns li a.btn-contact.add-arrow-after .arrow-left, .mv-btns li a.btn-contact.add-arrow-after .arrow-right {
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .mv-btns li a.btn-contact.hov-action:hover {
    color: var(--c_primary);
    background: var(--c_white);
  }
  .mv-btns li a.btn-contact.hov-action:hover::before {
    background: var(--c_primary);
  }
  .mv-btns li a.btn-contact.hov-action:hover .arrow-left, .mv-btns li a.btn-contact.hov-action:hover .arrow-right {
    background: var(--c_primary);
  }
  .mv-btns li a.btn-contact.hov-action:hover .arrow-left::before, .mv-btns li a.btn-contact.hov-action:hover .arrow-right::before {
    border-color: var(--c_white);
  }
  .mv-btns li a.btn-contact.hov-action:hover .icon-dl {
    background: var(--c_primary);
  }
  .mv-btns li a.btn-contact.hov-action:hover .icon-dl::before {
    background: var(--c_white);
  }
}
@media screen and (max-width: 1023px) {
  .mv-btns li a.btn-download, .mv-btns li a.btn-contact {
    font-size: 1.6rem;
  }
}

.sec-ttl-base + *[class^=top] {
  margin-top: 8rem;
}
.sec-ttl-base .main {
  display: flex;
  align-items: center;
  gap: 0.25em 1.2rem;
  margin-bottom: 3rem;
  position: relative;
  left: -2.4rem;
}
@media screen and (max-width: 1023px) {
  .sec-ttl-base .main {
    flex-flow: wrap;
    align-items: flex-start;
    left: 0;
  }
}
.sec-ttl-base .main::before {
  content: "";
  width: 1.7rem;
  height: 1.8rem;
  background: url(../img/front/titlebg.svg) no-repeat center/contain;
  margin-top: -0.8rem;
}
@media screen and (max-width: 1023px) {
  .sec-ttl-base .main::before {
    margin-top: 0;
  }
}
.sec-ttl-base .main .en {
  font-family: var(--f_dosis);
  font-size: 2.9rem;
  font-weight: 800;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1023px) {
  .sec-ttl-base .main .en {
    font-size: 2rem;
  }
}
.sec-ttl-base .main .ja {
  font-size: 2rem;
  font-weight: 600;
  color: var(--c_primary);
}
@media screen and (max-width: 1023px) {
  .sec-ttl-base .main .ja {
    width: 100%;
    font-size: 2rem;
  }
}
.sec-ttl-base .sub {
  font-size: 3.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.57;
}
@media screen and (max-width: 1023px) {
  .sec-ttl-base .sub {
    font-size: 2rem;
  }
}
.sec-ttl-simple {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
.sec-ttl-simple .main {
  font-size: 2.8rem;
  font-weight: 600;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .sec-ttl-simple .main {
    font-size: 2rem;
  }
}
.news-list-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .news-list-wrap {
    gap: 1em;
  }
}
.news-list-wrap .news-list-item .item-inner {
  display: flex;
  flex-flow: row-reverse;
  gap: 0.4rem;
  height: 100%;
}
@media screen and (max-width: 1023px) {
  .news-list-wrap .news-list-item .item-inner {
    flex-flow: column-reverse;
  }
}
.news-list-wrap .news-list-item .item-inner .ttl-date-wrap {
  width: 100%;
  background: var(--bg_base);
  border: 0.1rem solid var(--bg_base);
  border-radius: 0.8rem;
  display: flex;
  flex-flow: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 4rem;
  flex: 1;
  padding: 1.4rem 2.9rem;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap {
    transition: all 0.3s;
  }
}
@media screen and (max-width: 1023px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap {
    flex-flow: column-reverse;
    align-items: flex-start;
    gap: 0.5em;
    padding: 1em 2rem;
  }
}
.news-list-wrap .news-list-item .item-inner .ttl-date-wrap:not(.arrow-hidden)::after {
  content: "";
  width: 0.6rem;
  height: 1rem;
  background: url(../img/front/top-news-arrow.svg) no-repeat center/contain;
  position: absolute;
  right: 2.4rem;
  top: 50%;
  transform: translateY(-50%);
}
.news-list-wrap .news-list-item .item-inner .ttl-date-wrap .ttl {
  width: 100%;
  font-size: 1.8rem;
}
@media screen and (min-width: 1024px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap .ttl {
    transition: all 0.3s;
  }
}
@media screen and (max-width: 1023px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap .ttl {
    font-size: 1.6rem;
  }
}
.news-list-wrap .news-list-item .item-inner .ttl-date-wrap .date {
  font-size: 1.6rem;
  flex: none;
}
@media screen and (min-width: 1024px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap .date {
    transition: all 0.3s;
  }
}
@media screen and (max-width: 1023px) {
  .news-list-wrap .news-list-item .item-inner .ttl-date-wrap .date {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 1024px) {
  .news-list-wrap .news-list-item a.item-inner:hover .ttl, .news-list-wrap .news-list-item a.item-inner:hover .date {
    color: var(--c_primary);
  }
  .news-list-wrap .news-list-item a.item-inner:hover .tag-seminar {
    background-color: var(--c_white);
    color: #D1AE38;
  }
  .news-list-wrap .news-list-item a.item-inner:hover .tag-column, .news-list-wrap .news-list-item a.item-inner:hover .tag-evidence {
    background-color: var(--c_white);
    color: #9EBE00;
  }
  .news-list-wrap .news-list-item a.item-inner:hover .tag-topics {
    background-color: var(--c_white);
    color: #8482BF;
  }
}
.news-list-wrap .news-list-item a.item-inner[target=_blank] .ttl::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background: url(../img/common/icon_target_blank.svg) no-repeat center/contain;
  display: inline-block;
  margin: 0 0.5em;
  aspect-ratio: 1/1;
}
.news-list-wrap .news-list-item a.item-inner[href*=".pdf"] .ttl::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background: url(../img/common/icon_pdf.svg) no-repeat center/contain;
  display: inline-block;
  margin: 0 0.5em;
  aspect-ratio: 1/1;
}

.tag {
  width: 9.2rem;
  font-size: 1.2rem;
  color: var(--c_white);
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
@media screen and (min-width: 1024px) {
  .tag {
    transition: all 0.3s;
  }
}
.tag.tag-seminar {
  background-color: #D1AE38;
  border: 0.1rem solid #D1AE38;
}
.tag.tag-column, .tag.tag-evidence {
  background-color: #9EBE00;
  border: 0.1rem solid #9EBE00;
}
.tag.tag-topics {
  background-color: #8482BF;
  border: 0.1rem solid #8482BF;
}

a:hover .tag-seminar {
  background-color: var(--c_white);
  color: #D1AE38;
}
a:hover .tag-column, a:hover .tag-evidence {
  background-color: var(--c_white);
  color: #9EBE00;
}
a:hover .tag-topics {
  background-color: var(--c_white);
  color: #8482BF;
}

/*download*/
.download-area {
  width: calc(100vw - 4rem);
  max-width: 128rem;
  background: var(--c_accent);
  border-radius: 2rem;
  margin: 12rem auto 0;
  padding: 6rem 2rem;
}
@media screen and (max-width: 1023px) {
  .download-area {
    margin-top: 6rem;
  }
}
.download-area .download-area-inner {
  max-width: 108rem;
  margin: auto;
}
.download-area .download-area-inner .download-area-title {
  margin-bottom: 6.8rem;
}
.download-area .download-area-inner .download-area-title h2 {
  text-align: center;
}
.download-area .download-area-inner .download-area-title h2 span {
  display: block;
}
.download-area .download-area-inner .download-area-title h2 span.en {
  font-family: var(--f_dosis);
  font-weight: 800 !important;
  font-size: 2rem;
  color: var(--c_white);
  letter-spacing: 0.03em;
  margin-bottom: 1.3rem;
  line-height: 2.55;
}
.download-area .download-area-inner .download-area-title h2 span.ja {
  font-size: 3.6rem;
  font-weight: 700;
  color: var(--c_white);
  line-height: 1.22;
}
@media screen and (max-width: 1023px) {
  .download-area .download-area-inner .download-area-title h2 span.ja {
    font-size: clamp(1.938rem, 1.714rem + 1.12vw, 2.25rem);
  }
}
.download-area .download-area-inner .download-area-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3rem 5.5rem;
}
.download-area .download-area-inner .download-area-items .download-area-item {
  width: 100%;
  max-width: 32.2rem;
}
.download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 32.2rem;
  margin-bottom: 5.2rem;
}
.download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap::before {
  content: "";
  width: 32.2rem;
  height: 32.2rem;
  display: block;
  background-color: var(--c_accent_dark);
  mix-blend-mode: multiply;
  border-radius: 100vh;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 0;
  opacity: 0.18;
}
@media screen and (min-width: 1024px) {
  .download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap::before {
    transition: all 0.3s;
  }
}
@media screen and (max-width: 1023px) {
  .download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap::before {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
}
.download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap:not(:has(img))::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap:not(:has(img))::after {
    scale: 1;
    transition: all 0.3s;
  }
}
.download-area .download-area-inner .download-area-items .download-area-item a .dl-image-wrap img {
  width: 100%;
  max-width: 28.5rem;
  position: relative;
  filter: drop-shadow(0.3rem 0.3rem 1rem rgba(0, 0, 0, 0.16));
  z-index: 1;
}
.download-area .download-area-inner .download-area-items .download-area-item a h3 {
  font-size: 2rem;
  font-weight: 600;
  color: var(--c_white);
  letter-spacing: 0.05em;
  margin-bottom: 3.2rem;
  position: relative;
  padding-left: 2.6rem;
}
.download-area .download-area-inner .download-area-items .download-area-item a h3::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #99D6E8;
  border-radius: 100vh;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.download-area .download-area-inner .download-area-items .download-area-item a p {
  font-size: 1.8rem;
  color: var(--c_white);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 1024px) {
  .download-area .download-area-inner .download-area-items .download-area-item a:hover .dl-image-wrap::before {
    opacity: 0.3;
  }
}
.download-area .download-area-inner .btn-wrap {
  margin: 8.5rem auto 0;
}
.download-area .download-area-inner .btn-wrap .btn {
  width: 100%;
  max-width: 39rem;
  height: 7.7rem;
  font-size: 1.8rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--c_accent);
  background-color: var(--c_white);
  border: 0.2rem solid var(--c_white);
  border-radius: 100vh;
}
@media screen and (min-width: 1024px) {
  .download-area .download-area-inner .btn-wrap .btn {
    transition: all 0.3s;
  }
  .download-area .download-area-inner .btn-wrap .btn:hover {
    color: var(--c_white);
    background: var(--c_accent);
  }
}

/*contact*/
.contact {
  width: calc(100vw - 4rem);
  max-width: 128rem;
  background-image: url(../img/front/contactbg.png);
  border-radius: 2rem;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin: 12rem auto 0;
}
@media screen and (max-width: 1023px) {
  .contact {
    margin: 6rem auto 0;
  }
}
.contact .contact-inner {
  padding: 6rem 2rem;
}
.contact .contact-inner .contact-title {
  margin-bottom: 3.3rem;
  margin-bottom: 6.8rem;
}
.contact .contact-inner .contact-title h2 {
  text-align: center;
}
.contact .contact-inner .contact-title h2 span {
  display: block;
}
.contact .contact-inner .contact-title h2 span.en {
  font-family: var(--f_dosis);
  font-weight: 800 !important;
  font-size: 2rem;
  color: var(--c_white);
  letter-spacing: 0.03em;
  margin-bottom: 1.3rem;
  line-height: 2.55;
}
.contact .contact-inner .contact-title h2 span.ja {
  font-size: 3.6rem;
  font-weight: 700;
  color: var(--c_white);
  line-height: 1.22;
}
@media screen and (max-width: 1023px) {
  .contact .contact-inner .contact-title h2 span.ja {
    font-size: clamp(1.938rem, 1.714rem + 1.12vw, 2.25rem);
  }
}
.contact .contact-inner .contact-title p {
  text-align: center;
  font-size: 1.6rem;
  margin-top: 1.7rem;
}
.contact .contact-inner p {
  font-size: 1.8rem;
  color: var(--c_white);
  letter-spacing: 0.05em;
  line-height: 1.88;
}
.contact .contact-inner .btn-round {
  margin: 0 auto 3.2rem;
  width: auto;
  max-width: 45.8rem;
  height: auto;
  font-size: 2.5rem;
  font-weight: 500;
  color: var(--c_primary);
  background: var(--c_white);
  border: 0.1rem solid var(--c_white);
  border-radius: 10rem 100vw 100vw 100vw;
  padding: 1.25em 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round::before {
  content: "";
  width: 1em;
  height: 1em;
  -webkit-mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
          mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
  background: var(--c_primary);
  display: block;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round::before {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round .arrow-left, .contact .contact-inner .btn-round .arrow-right {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_primary);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round .arrow-left, .contact .contact-inner .btn-round .arrow-right {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round .arrow-left::before, .contact .contact-inner .btn-round .arrow-right::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 45deg;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round .arrow-left::before, .contact .contact-inner .btn-round .arrow-right::before {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round .arrow-left::before {
  border-left: 0.3rem solid var(--c_white);
  border-bottom: 0.3rem solid var(--c_white);
  translate: -35% -50%;
}
.contact .contact-inner .btn-round .arrow-right {
  width: 1.5em;
  right: 1.5em;
}
.contact .contact-inner .btn-round .arrow-right::before {
  border-top: 0.3rem solid var(--c_white);
  border-right: 0.3rem solid var(--c_white);
  translate: -65% -50%;
}
.contact .contact-inner .btn-round.add-arrow-before, .contact .contact-inner .btn-round.add-arrow-after {
  position: relative;
  padding: 1.25em 3em;
}
.contact .contact-inner .btn-round.add-arrow-before .icon-dl, .contact .contact-inner .btn-round.add-arrow-after .icon-dl {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_primary);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  right: 1.5em;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round.add-arrow-before .icon-dl, .contact .contact-inner .btn-round.add-arrow-after .icon-dl {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round.add-arrow-before .icon-dl::before, .contact .contact-inner .btn-round.add-arrow-after .icon-dl::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_white);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round.add-arrow-before .icon-dl::before, .contact .contact-inner .btn-round.add-arrow-after .icon-dl::before {
    transition: all 0.3s;
  }
}
.contact .contact-inner .btn-round.add-arrow-before .arrow-left, .contact .contact-inner .btn-round.add-arrow-before .arrow-right {
  left: 1em;
}
.contact .contact-inner .btn-round.add-arrow-after .arrow-left, .contact .contact-inner .btn-round.add-arrow-after .arrow-right {
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .contact .contact-inner .btn-round.hov-action:hover {
    color: var(--c_white);
    background: var(--c_primary);
  }
  .contact .contact-inner .btn-round.hov-action:hover::before {
    background: var(--c_white);
  }
  .contact .contact-inner .btn-round.hov-action:hover .arrow-left, .contact .contact-inner .btn-round.hov-action:hover .arrow-right {
    background: var(--c_white);
  }
  .contact .contact-inner .btn-round.hov-action:hover .arrow-left::before, .contact .contact-inner .btn-round.hov-action:hover .arrow-right::before {
    border-color: var(--c_primary);
  }
  .contact .contact-inner .btn-round.hov-action:hover .icon-dl {
    background: var(--c_white);
  }
  .contact .contact-inner .btn-round.hov-action:hover .icon-dl::before {
    background: var(--c_primary);
  }
}
@media screen and (max-width: 1023px) {
  .contact .contact-inner .btn-round {
    font-size: 1.6rem;
  }
}
.contact .contact-inner .tel {
  text-align: center;
}
.contact .contact-inner .tel span {
  font-family: var(--f_barlow);
  color: var(--c_white);
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: relative;
  margin-bottom: 1rem;
}
.contact .contact-inner .tel span::before {
  content: "";
  width: 3.2rem;
  height: 3.6rem;
  background: url(../img/front/icon-tel.svg) no-repeat center/contain;
  position: relative;
  top: 0.3rem;
  display: inline-block;
}
.contact .contact-inner .tel p {
  text-align: center;
  color: var(--c_white);
  font-size: 1.4rem;
}
@media screen and (min-width: 1024px) {
  .contact a:hover .btn-round {
    background: var(--c_primary);
    color: var(--c_white);
  }
  .contact a:hover .btn-round::before {
    background: var(--c_white);
  }
  .contact a:hover .btn-round.add-arrow-after .arrow-right {
    background: var(--c_white);
  }
  .contact a:hover .btn-round.add-arrow-after .arrow-right::before {
    border-color: var(--c_primary);
  }
}

.bg-base {
  background: var(--bg_base);
}

.box-rad {
  border-radius: 3rem;
}

.slide-in {
  opacity: 0;
  transform: translateY(5rem);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.slide-in.active {
  opacity: 1;
  transform: translateY(0);
}
.slide-in.delay {
  transition-delay: 0.3s;
}

.table-def {
  width: 100%;
  border-spacing: 1rem;
}
@media screen and (max-width: 1023px) {
  .table-def {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .table-def tbody {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr + tr {
    margin-top: 1em;
  }
}
.table-def tbody tr th, .table-def tbody tr td {
  border-radius: 0.8rem;
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr th, .table-def tbody tr td {
    width: 100%;
    display: block;
  }
}
.table-def tbody tr th, .table-def tbody tr th p, .table-def tbody tr td, .table-def tbody tr td p {
  line-height: 1.75;
}
.table-def tbody tr th {
  background: var(--c_primary_light);
  padding: 1.1em 1.5em;
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr th {
    border-radius: 0.8rem 0.8rem 0 0;
    padding: 1em;
  }
}
.table-def tbody tr th, .table-def tbody tr th p {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  color: var(--c_white);
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr th, .table-def tbody tr th p {
    font-size: 1.6rem;
  }
}
.table-def tbody tr th p {
  width: -moz-max-content;
  width: max-content;
  margin: auto;
}
.table-def tbody tr td {
  width: 100%;
  max-width: -moz-fit-content;
  max-width: fit-content;
  background: var(--bg_base);
  padding: 1.1em;
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr td {
    width: 100%;
    max-width: 100%;
    border-radius: 0 0 0.8rem 0.8rem;
    padding: 1em;
  }
}
@media screen and (max-width: 1023px) {
  .table-def tbody tr td, .table-def tbody tr td p {
    font-size: 1.4rem;
  }
}

.archive-card-wrap {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 2.5rem;
}
@media screen and (max-width: 1023px) {
  .archive-card-wrap {
    justify-content: center;
  }
}
.archive-card-wrap .card-item {
  width: 100%;
  max-width: 34.3rem;
  background: var(--c_white);
  border-radius: 1.5rem;
  box-shadow: 0.5rem 0.5rem 3rem 0 rgba(0, 0, 0, 0.08);
  display: flex;
  flex-flow: column-reverse;
  justify-content: flex-end;
  align-items: stretch;
  overflow: hidden;
}
.archive-card-wrap .card-item .content-wrap {
  padding: 1.5rem 3rem 3rem;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap {
  display: flex;
  flex-flow: column-reverse;
  justify-content: flex-end;
  align-items: stretch;
  gap: 0.5em;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .ttl-corp-flex-col .ttl {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .ttl-corp-flex-col .ttl {
    font-size: 1.6rem;
  }
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .ttl-corp-flex-col:has(.corp-name) {
  display: flex;
  flex-flow: column-reverse;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .ttl-corp-flex-col .corp-name {
  font-weight: 600;
  color: var(--c_accent);
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .term-date-wrap {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 0.5em;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .term-date-wrap .term-wrap {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.25em;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .term-date-wrap .term-wrap .term {
  background: var(--c_white);
  border: 0.1rem solid var(--c_txt);
  border-radius: 100vw;
  padding: 0.5em 1em;
}
.archive-card-wrap .card-item .content-wrap .ttl-flex-col-rev-wrap .term-date-wrap .date {
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--bdr_gray);
  flex: none;
}
.archive-card-wrap .card-item .content-wrap .txt {
  line-height: 1.75;
  letter-spacing: 0.05em;
  margin-top: 0.5em;
}
.archive-card-wrap .card-item .content-wrap .tag-wrap {
  margin-top: 0.5em;
}
.archive-card-wrap .card-item .content-wrap .tag-wrap:not(:has(.post-tag)) {
  margin-top: 0;
}
.archive-card-wrap .card-item .img-wrap {
  width: 100%;
  background: var(--bg_base);
  aspect-ratio: 343/222;
  overflow: hidden;
}
.archive-card-wrap .card-item .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .archive-card-wrap .card-item .img-wrap img {
    scale: 1;
    transition: all 0.3s;
  }
}
.archive-card-wrap .card-item .img-wrap:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .archive-card-wrap .card-item .img-wrap:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .archive-card-wrap .card-item:hover .img-wrap img {
    scale: 1.1;
  }
  .archive-card-wrap .card-item:hover .img-wrap:not(:has(img))::before {
    scale: 1.1;
  }
}

.pickup-card-wrap {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-end;
  align-items: stretch;
  gap: 2.5rem;
}
@media screen and (max-width: 1023px) {
  .pickup-card-wrap {
    justify-content: center;
    padding-left: 1rem;
  }
}
.pickup-card-wrap .card-item {
  width: 100%;
  max-width: 30.9rem;
  background: var(--c_white);
  border-radius: 1.5rem;
  box-shadow: 0.5rem 0.5rem 3rem 0 rgba(0, 0, 0, 0.08);
  display: flex;
  flex-flow: column-reverse;
  justify-content: stretch;
  align-items: stretch;
}
.pickup-card-wrap .card-item .content-wrap {
  padding: 1.5rem 2rem;
}
.pickup-card-wrap .card-item .content-wrap .ttl {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .pickup-card-wrap .card-item .content-wrap .ttl {
    font-size: 1.6rem;
  }
}
.pickup-card-wrap .card-item .content-wrap:has(.corp-name) {
  display: flex;
  flex-flow: column-reverse;
}
.pickup-card-wrap .card-item .content-wrap .corp-name {
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--c_accent);
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 0.5em;
  padding: 1em 2rem 0;
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .img-wrap {
  width: 100%;
  max-width: 12.6rem;
  background: var(--bg_base);
  border-radius: 1.5rem;
  flex: none;
  margin-top: calc(-1em - 1rem);
  margin-left: -3rem;
  aspect-ratio: 126/82;
  overflow: hidden;
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .pickup-card-wrap .card-item .img-flex-col-rev-wrap .img-wrap img {
    scale: 1;
    transition: all 0.3s;
  }
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .img-wrap:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .pickup-card-wrap .card-item .img-flex-col-rev-wrap .img-wrap:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .term-date-wrap {
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  gap: 0.5em 0.5em;
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .term-date-wrap .term-wrap {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.25em;
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .term-date-wrap .term-wrap .term {
  background: var(--c_white);
  border: 0.1rem solid var(--c_txt);
  border-radius: 100vw;
  padding: 0.5em 1em;
}
.pickup-card-wrap .card-item .img-flex-col-rev-wrap .term-date-wrap .date {
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--bdr_gray);
}
@media screen and (min-width: 1024px) {
  .pickup-card-wrap .card-item:hover .img-wrap img {
    scale: 1.1;
  }
  .pickup-card-wrap .card-item:hover .img-wrap:not(:has(img))::before {
    scale: 1.1;
  }
}

.pickup-dl-card-wrap {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-end;
  align-items: stretch;
  gap: 0 2.5rem;
}
@media screen and (max-width: 1023px) {
  .pickup-dl-card-wrap {
    flex-flow: column;
    align-items: center;
  }
}
.pickup-dl-card-wrap .card-item {
  width: 100%;
  max-width: 31.9rem;
  background: var(--c_white);
  border-bottom: 0.1rem solid var(--bdr_gray);
  display: flex;
  flex-flow: row-reverse;
  justify-content: stretch;
  align-items: flex-start;
  gap: 1em;
  padding: 2rem 0;
}
.pickup-dl-card-wrap .card-item:first-child {
  border-top: 0.1rem solid var(--bdr_gray);
}
.pickup-dl-card-wrap .card-item .content-wrap {
  width: 100%;
}
.pickup-dl-card-wrap .card-item .content-wrap .ttl {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .pickup-dl-card-wrap .card-item .content-wrap .ttl {
    font-size: 1.4rem;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap {
  margin-top: 0.5em;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn {
  width: 100%;
  max-width: 100%;
  height: auto;
  font-size: 1.2rem;
  font-weight: 500;
  color: var(--c_white);
  background: var(--c_accent);
  border: 0.1rem solid var(--c_accent);
  border-radius: 10rem 100vw 100vw 100vw;
  padding: 1em 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-left, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-left, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-left::before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 45deg;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-left::before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right::before {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-left::before {
  border-left: 0.3rem solid var(--c_accent);
  border-bottom: 0.3rem solid var(--c_accent);
  translate: -35% -50%;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right {
  width: 1.5em;
  right: 1.5em;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn .arrow-right::before {
  border-top: 0.3rem solid var(--c_accent);
  border-right: 0.3rem solid var(--c_accent);
  translate: -65% -50%;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after {
  position: relative;
  padding: 1em 3em;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .icon-dl, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .icon-dl {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  right: 1.5em;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .icon-dl, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .icon-dl {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .icon-dl::before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .icon-dl::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_accent);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .icon-dl::before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .icon-dl::before {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .arrow-left, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-before .arrow-right {
  left: 1em;
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .arrow-left, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.add-arrow-after .arrow-right {
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover {
    color: var(--c_accent);
    background: var(--c_white);
  }
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .arrow-left, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .arrow-right {
    background: var(--c_accent);
  }
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .arrow-left::before, .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .arrow-right::before {
    border-color: var(--c_white);
  }
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .icon-dl {
    background: var(--c_accent);
  }
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn.hov-action:hover .icon-dl::before {
    background: var(--c_white);
  }
}
.pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn::after {
  content: "";
  width: 1em;
  height: 1em;
  -webkit-mask: url(../img/common/arrow_simple.svg) no-repeat center/contain;
          mask: url(../img/common/arrow_simple.svg) no-repeat center/contain;
  background: var(--c_white);
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .content-wrap .btn-wrap .btn::after {
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .img-wrap {
  width: 100%;
  max-width: 15.8rem;
  flex: none;
  aspect-ratio: 158/122;
}
.pickup-dl-card-wrap .card-item .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .img-wrap img {
    scale: 1;
    transition: all 0.3s;
  }
}
.pickup-dl-card-wrap .card-item .img-wrap:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item .img-wrap:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .pickup-dl-card-wrap .card-item:hover .content-wrap .btn-wrap .btn {
    color: var(--c_accent);
    background: var(--c_white);
  }
  .pickup-dl-card-wrap .card-item:hover .content-wrap .btn-wrap .btn::after {
    background: var(--c_accent);
  }
  .pickup-dl-card-wrap .card-item:hover .img-wrap img {
    scale: 1.1;
  }
  .pickup-dl-card-wrap .card-item:hover .img-wrap:not(:has(img))::before {
    scale: 1.1;
  }
}

.tag-wrap {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.25em;
}
.tag-wrap .post-tag {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  color: var(--c_primary);
  background: var(--c_white);
  border: 0.1rem solid var(--c_primary);
  border-radius: 0.8rem;
  padding: 0.5em 1em;
}
a.post-tag {
  text-decoration: none;
}
@media screen and (min-width: 1024px) {
  a.post-tag {
    transition: all 0.3s;
  }
  a.post-tag:hover {
    color: var(--c_white);
    background: var(--c_primary);
  }
}

.post-style .a-1 {
  font-size: 3.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .a-1 {
    font-size: 2.5rem;
    font-weight: 700;
  }
}
.post-style .a-1:first-child {
  margin-top: auto;
}
.post-style .a-2 {
  font-size: 2.7rem;
  font-weight: 600;
  border-bottom: 0.1rem solid var(--c_primary);
  margin: 1em auto 0;
  padding-bottom: 0.25em;
}
@media screen and (max-width: 1023px) {
  .post-style .a-2 {
    font-size: 2rem;
  }
}
.post-style .a-2:first-child {
  margin-top: auto;
}
.post-style .a-3 {
  font-size: 2.2rem;
  font-weight: 700;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.5em;
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .a-3 {
    font-size: 1.6rem;
  }
}
.post-style .a-3:first-child {
  margin-top: auto;
}
.post-style .a-3::before {
  content: "";
  width: 0.81em;
  height: 0.36em;
  background: var(--c_primary);
  display: block;
  flex: none;
  translate: 0 -50%;
}
.post-style .a-4 {
  font-size: 2rem;
  font-weight: 600;
  color: var(--c_primary);
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .a-4 {
    font-size: 1.6rem;
  }
}
.post-style .a-4:first-child {
  margin-top: auto;
}
.post-style .txt-wrap {
  margin-top: 1em;
}
.post-style .txt-wrap:first-child {
  margin-top: auto;
}
.post-style .txt-wrap p {
  font-size: 1.8rem;
  line-height: 1.8;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-wrap p {
    font-size: 1.6rem;
  }
}
.post-style .list-dot {
  margin: 1em auto 0;
  padding-left: 2em;
}
@media screen and (max-width: 1023px) {
  .post-style .list-dot {
    padding-left: 1em;
  }
}
.post-style .list-dot:first-child {
  margin-top: auto;
}
.post-style .list-dot li {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.8rem;
}
.post-style .list-dot li, .post-style .list-dot li p, .post-style .list-dot li a {
  font-size: 1.8rem;
}
@media screen and (max-width: 1023px) {
  .post-style .list-dot li, .post-style .list-dot li p, .post-style .list-dot li a {
    font-size: 1.6rem;
  }
}
.post-style .list-dot li + li {
  margin-top: 0.25em;
}
.post-style .list-dot li::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  background: var(--c_primary_light);
  border-radius: 100vw;
  flex: none;
}
.post-style .list-dot li p, .post-style .list-dot li a {
  font-weight: 600;
  line-height: 1.8;
}
.post-style .list-dot li > a {
  color: var(--c_txt);
}
@media screen and (min-width: 1024px) {
  .post-style .list-dot li > a:hover {
    color: var(--c_primary);
  }
}
.post-style a {
  display: inline-block;
  color: var(--c_primary);
  text-decoration: underline;
}
@media screen and (min-width: 1024px) {
  .post-style a {
    transition: all 0.3s;
  }
  .post-style a:hover {
    opacity: 0.5;
  }
}
.post-style .txt-img-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 1em 4rem;
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-img-wrap {
    flex-flow: wrap;
  }
}
.post-style .txt-img-wrap:first-child {
  margin-top: auto;
}
.post-style .txt-img-wrap.img-left {
  flex-flow: row;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-img-wrap.img-left {
    flex-flow: wrap;
  }
}
.post-style .txt-img-wrap.img-right {
  flex-flow: row-reverse;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-img-wrap.img-right {
    flex-flow: wrap;
  }
}
.post-style .txt-img-wrap .img-wrapper {
  width: 100%;
  max-width: 34rem;
  display: flex;
  flex-flow: column;
  justify-content: stretch;
  align-items: stretch;
  gap: 0.5em;
}
.post-style .txt-img-wrap .img-wrapper .img-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.post-style .txt-img-wrap .img-wrapper .img-wrap img {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  border-radius: 1.5rem;
  margin: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 1920px) {
  .post-style .txt-img-wrap .img-wrapper .img-wrap img {
    width: 100%;
  }
}
.post-style .txt-img-wrap .img-wrapper .cap p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-img-wrap .img-wrapper .cap p {
    font-size: 1.4rem;
  }
}
.post-style .txt-img-wrap .txt-wrap {
  width: 100%;
  max-width: 70rem;
  margin: 0;
}
.post-style .txt-img-wrap .txt-wrap p {
  font-size: 1.8rem;
}
@media screen and (max-width: 1023px) {
  .post-style .txt-img-wrap .txt-wrap p {
    font-size: 1.6rem;
  }
}
.post-style .img-flex {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 1em 3rem;
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .img-flex {
    flex-flow: wrap;
  }
}
.post-style .img-flex:first-child {
  margin-top: auto;
}
.post-style .img-flex .img-wrapper, .post-style .img-flex .img-wrapper-img-wide {
  width: 100%;
  max-width: 34rem;
  display: flex;
  flex-flow: column;
  justify-content: stretch;
  align-items: stretch;
  gap: 0.5em;
}
.post-style .img-flex .img-wrapper.img-wide, .post-style .img-flex .img-wrapper-img-wide.img-wide {
  max-width: 100%;
  margin: auto;
}
.post-style .img-flex .img-wrapper .img-wrap, .post-style .img-flex .img-wrapper-img-wide .img-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.post-style .img-flex .img-wrapper .img-wrap img, .post-style .img-flex .img-wrapper-img-wide .img-wrap img {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  border-radius: 1.5rem;
  margin: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 1920px) {
  .post-style .img-flex .img-wrapper .img-wrap img, .post-style .img-flex .img-wrapper-img-wide .img-wrap img {
    width: 100%;
  }
}
.post-style .img-flex .img-wrapper .cap p, .post-style .img-flex .img-wrapper-img-wide .cap p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .img-flex .img-wrapper .cap p, .post-style .img-flex .img-wrapper-img-wide .cap p {
    font-size: 1.4rem;
  }
}
.post-style .img-flex .img-wrapper-img-wide {
  max-width: 100%;
}
.post-style .table-def {
  max-width: 88rem;
  margin: 1em auto 0;
}
.post-style .table-def:first-child {
  margin-top: auto;
}
.post-style .btn-wrap .btn {
  text-decoration: none;
  min-width: 36rem;
  width: auto;
  max-width: 100%;
  height: auto;
  font-size: 2.1rem;
  font-weight: 500;
  color: var(--c_white);
  background: var(--c_primary);
  border: 0.1rem solid var(--c_primary);
  border-radius: 10rem 100vw 100vw 100vw;
  padding: 1em 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn .arrow-left, .post-style .btn-wrap .btn .arrow-right {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn .arrow-left, .post-style .btn-wrap .btn .arrow-right {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn .arrow-left::before, .post-style .btn-wrap .btn .arrow-right::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 45deg;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn .arrow-left::before, .post-style .btn-wrap .btn .arrow-right::before {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn .arrow-left::before {
  border-left: 0.3rem solid var(--c_primary);
  border-bottom: 0.3rem solid var(--c_primary);
  translate: -35% -50%;
}
.post-style .btn-wrap .btn .arrow-right {
  width: 1.5em;
  right: 1.5em;
}
.post-style .btn-wrap .btn .arrow-right::before {
  border-top: 0.3rem solid var(--c_primary);
  border-right: 0.3rem solid var(--c_primary);
  translate: -65% -50%;
}
.post-style .btn-wrap .btn.add-arrow-before, .post-style .btn-wrap .btn.add-arrow-after {
  position: relative;
  padding: 1em 3em;
}
.post-style .btn-wrap .btn.add-arrow-before .icon-dl, .post-style .btn-wrap .btn.add-arrow-after .icon-dl {
  width: 1.5em;
  height: 1.5em;
  text-indent: 100%;
  background: var(--c_white);
  border-radius: 100vw;
  position: absolute;
  top: 50%;
  right: 1.5em;
  translate: 0 -50%;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn.add-arrow-before .icon-dl, .post-style .btn-wrap .btn.add-arrow-after .icon-dl {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn.add-arrow-before .icon-dl::before, .post-style .btn-wrap .btn.add-arrow-after .icon-dl::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
  background: var(--c_primary);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn.add-arrow-before .icon-dl::before, .post-style .btn-wrap .btn.add-arrow-after .icon-dl::before {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn.add-arrow-before .arrow-left, .post-style .btn-wrap .btn.add-arrow-before .arrow-right {
  left: 1em;
}
.post-style .btn-wrap .btn.add-arrow-after .arrow-left, .post-style .btn-wrap .btn.add-arrow-after .arrow-right {
  right: 1em;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn.hov-action:hover {
    color: var(--c_primary);
    background: var(--c_white);
  }
  .post-style .btn-wrap .btn.hov-action:hover .arrow-left, .post-style .btn-wrap .btn.hov-action:hover .arrow-right {
    background: var(--c_primary);
  }
  .post-style .btn-wrap .btn.hov-action:hover .arrow-left::before, .post-style .btn-wrap .btn.hov-action:hover .arrow-right::before {
    border-color: var(--c_white);
  }
  .post-style .btn-wrap .btn.hov-action:hover .icon-dl {
    background: var(--c_primary);
  }
  .post-style .btn-wrap .btn.hov-action:hover .icon-dl::before {
    background: var(--c_white);
  }
}
@media screen and (max-width: 1023px) {
  .post-style .btn-wrap .btn {
    font-size: 1.6rem;
    min-width: 33.5rem;
  }
}
.post-style .btn-wrap .btn.add-icon::before {
  content: "";
  width: 1em;
  height: 1em;
  background: var(--c_white);
  aspect-ratio: 1/1;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn.add-icon::before {
    transition: all 0.3s;
  }
}
.post-style .btn-wrap .btn.add-icon.icon-mail::before {
  -webkit-mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
          mask: url(../img/common/icon-mail.svg) no-repeat center/contain;
}
.post-style .btn-wrap .btn.add-icon.icon-dl::before {
  -webkit-mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
          mask: url(../img/common/icon-dl.svg) no-repeat center/contain;
}
.post-style .btn-wrap .btn.add-icon.icon-pdf::before {
  -webkit-mask: url(../img/common/icon_pdf.svg) no-repeat center/contain;
          mask: url(../img/common/icon_pdf.svg) no-repeat center/contain;
}
@media screen and (min-width: 1024px) {
  .post-style .btn-wrap .btn:hover {
    color: var(--c_primary);
    background: var(--c_white);
    opacity: 1;
  }
  .post-style .btn-wrap .btn:hover::before {
    background: var(--c_primary);
  }
  .post-style .btn-wrap .btn:hover .arrow-left, .post-style .btn-wrap .btn:hover .arrow-right {
    background: var(--c_primary);
  }
  .post-style .btn-wrap .btn:hover .arrow-left::before, .post-style .btn-wrap .btn:hover .arrow-right::before {
    border-color: var(--c_white);
  }
}
.post-style .link-group-list {
  width: 100%;
  max-width: 74rem;
  background: var(--bg_base);
  border-radius: 0.8rem;
  padding: 2rem 3rem 3rem;
  margin: 1em auto 0;
}
.post-style .link-group-list .ttl-wrap {
  border-bottom: 0.1rem solid var(--bg_base_dark);
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.59em;
  padding-bottom: 0.5em;
}
.post-style .link-group-list .ttl-wrap, .post-style .link-group-list .ttl-wrap > * {
  font-size: 2.7rem;
  font-weight: 600;
}
@media screen and (max-width: 1023px) {
  .post-style .link-group-list .ttl-wrap, .post-style .link-group-list .ttl-wrap > * {
    font-size: 2rem;
  }
}
.post-style .link-group-list .ttl-wrap::before {
  content: "";
  width: 0.74em;
  height: 0.77em;
  background: var(--c_primary_light);
  border-radius: 0 100vw 100vw 100vw;
  display: block;
  flex: none;
}
.post-style .list-before-arrow {
  margin: 1em auto 0;
}
.post-style .list-before-arrow:first-child {
  margin-top: auto;
}
.post-style .list-before-arrow li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.83em;
}
.post-style .list-before-arrow li::before {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: var(--bg_btn_arrow) url(../img/common/list_before_arrow.svg) no-repeat center/0.6em auto;
  border-radius: 100vw;
  display: block;
  flex: none;
  aspect-ratio: 1/1;
}
.post-style .list-before-arrow li + li {
  margin-top: 0.25em;
}
.post-style .list-before-arrow li, .post-style .list-before-arrow li p, .post-style .list-before-arrow li a {
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .post-style .list-before-arrow li, .post-style .list-before-arrow li p, .post-style .list-before-arrow li a {
    font-size: 1.6rem;
  }
}
.post-style .list-before-arrow li a {
  color: var(--c_txt);
  text-decoration: none;
}
@media screen and (min-width: 1024px) {
  .post-style .list-before-arrow li a:hover {
    color: var(--c_primary);
  }
}
.post-style .link-list-table-wrap {
  margin: 1em auto 0;
}
.post-style .link-list-table-wrap:first-child {
  margin-top: auto;
}
.post-style .link-list-table-wrap .ttl-wrap, .post-style .link-list-table-wrap .ttl-wrap > * {
  font-size: 2.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .post-style .link-list-table-wrap .ttl-wrap, .post-style .link-list-table-wrap .ttl-wrap > * {
    font-size: 2rem;
  }
}
.post-style .link-list-table-wrap .link-list-table.table-def {
  margin: auto;
}
.post-style .link-list-table-wrap .link-list-table.table-def:first-child {
  margin-top: auto;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .item {
  background: var(--c_yellow);
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .item, .post-style .link-list-table-wrap .link-list-table.table-def .item-group .item p {
  color: var(--c_white);
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail {
  width: 100%;
  background: none;
  padding: 0;
  overflow: hidden;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail, .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p {
  font-size: 1.8rem;
  color: var(--c_txt);
}
@media screen and (max-width: 1023px) {
  .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail, .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p {
    font-size: 1.6rem;
  }
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a {
  width: 100%;
  text-decoration: none;
  background: var(--bg_base);
  border-radius: 0.8rem;
  display: block;
  padding: 1.1em;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a span {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a span {
    font-size: 1.4rem;
  }
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a[target=_blank]::after, .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a[href*=".pdf"]::after {
  content: "";
  width: 1.375em;
  height: 1.375em;
  aspect-ratio: 1/1;
  display: inline-block;
  margin-left: 0.5em;
  vertical-align: middle;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a[target=_blank]::after {
  background: url(../img/common/icon_target_blank.svg) no-repeat center/contain;
}
.post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a[href*=".pdf"]::after {
  background: url(../img/common/icon_pdf.svg) no-repeat center/contain;
}
@media screen and (min-width: 1024px) {
  .post-style .link-list-table-wrap .link-list-table.table-def .item-group .detail p a:hover {
    opacity: 0.5;
  }
}
.post-style .intro-area-wrap {
  width: calc(100vw - 4rem);
  max-width: 124rem;
  border: 0.1rem solid var(--c_accent);
  border-radius: 3rem;
  margin: 1em auto 0;
  padding: 0 6rem 4rem;
  translate: calc(54rem - 50%) 0;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap {
    width: 100%;
    border-radius: 1.5rem;
    translate: none;
    padding: 0 2rem 4rem;
  }
}
.single.evidence .post-style .intro-area-wrap, .single.column .post-style .intro-area-wrap {
  width: 100%;
  padding: 0 2rem 4rem;
  translate: none;
}
.post-style .intro-area-wrap:first-child {
  margin-top: auto;
}
.post-style .intro-area-wrap .block-flex {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 1em 6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex {
    flex-flow: wrap;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap {
  width: 100%;
  max-width: 65rem;
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap {
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  background: var(--c_accent);
  border-radius: 0 0 0.8rem 0.8rem;
  display: flex;
  flex-flow: wrap row;
  justify-content: flex-start;
  align-items: center;
  gap: 0 0.8rem;
  padding: 1em;
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap * {
  color: var(--c_white);
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap .block-ttl-main {
  font-size: 2.4rem;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap .block-ttl-main {
    font-size: 2rem;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap .block-ttl-sub {
  font-family: var(--f_dosis);
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .block-content-wrap .block-ttl-wrap .block-ttl-sub {
    font-size: 1.4rem;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap {
  margin-top: 3rem;
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-main {
  font-size: 2.2rem;
  font-weight: 600;
  color: var(--c_accent);
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-main {
    font-size: 1.6rem;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-sub {
  font-size: 2.7rem;
  font-weight: 600;
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0 0.5em;
  margin-top: 0.25em;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-sub {
    font-size: 2rem;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-sub .min {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .block-content-wrap .content-ttl-wrap .content-ttl-sub .min {
    font-size: 1.4rem;
  }
}
.post-style .intro-area-wrap .block-flex .block-content-wrap .txt-wrap {
  margin-top: 3rem;
}
.post-style .intro-area-wrap .block-flex .img-content-wrap {
  width: 100%;
  max-width: 39rem;
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 4rem;
  margin: 3rem auto 0;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .img-content-wrap {
    gap: 2rem;
    margin-top: auto;
  }
}
.post-style .intro-area-wrap .block-flex .img-content-wrap .logo-wrap {
  width: 100%;
  max-width: 21rem;
  border-radius: 1.5rem;
  display: flex;
  justify-content: flex-end;
}
.post-style .intro-area-wrap .block-flex .img-content-wrap .logo-wrap img {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 1920px) {
  .post-style .intro-area-wrap .block-flex .img-content-wrap .logo-wrap img {
    width: 100%;
  }
}
.post-style .intro-area-wrap .block-flex .img-content-wrap .img-wrapper {
  display: flex;
  flex-flow: column;
  gap: 0.5em;
  margin: auto;
}
.post-style .intro-area-wrap .block-flex .img-content-wrap .img-wrapper .img-wrap img {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  border-radius: 1.5rem;
  -o-object-fit: contain;
     object-fit: contain;
  margin: auto;
}
@media screen and (min-width: 1920px) {
  .post-style .intro-area-wrap .block-flex .img-content-wrap .img-wrapper .img-wrap img {
    width: 100%;
  }
}
.post-style .intro-area-wrap .block-flex .img-content-wrap .img-wrapper .cap p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .post-style .intro-area-wrap .block-flex .img-content-wrap .img-wrapper .cap p {
    font-size: 1.4rem;
  }
}
.post-style .free-html {
  margin: 1em auto 0;
}
.post-style .free-html:first-child {
  margin-top: auto;
}
.post-style hr.mgt {
  border: none;
}
.post-style a[target=_blank]::after, .post-style a[href*=".pdf"]::after {
  content: "";
  width: 1.375em;
  height: 1.375em;
  aspect-ratio: 1/1;
  display: inline-block;
  margin: auto 0.25em;
  vertical-align: middle;
}
.post-style a[target=_blank]::after {
  background: url(../img/common/icon_target_blank.svg) no-repeat center/contain;
}
.post-style a[href*=".pdf"]::after {
  background: url(../img/common/icon_pdf.svg) no-repeat center/contain;
}
.post-style a.btn[target=_blank]::after, .post-style a.btn[href*=".pdf"]::after {
  background: var(--c_white);
  margin: 0;
}
@media screen and (min-width: 1024px) {
  .post-style a.btn[target=_blank]::after, .post-style a.btn[href*=".pdf"]::after {
    transition: all 0.3s;
  }
}
.post-style a.btn[target=_blank]::after {
  -webkit-mask: url(../img/common/icon_target_blank.svg) no-repeat center/contain;
          mask: url(../img/common/icon_target_blank.svg) no-repeat center/contain;
}
.post-style a.btn[href*=".pdf"]::after {
  -webkit-mask: url(../img/common/icon_pdf.svg) no-repeat center/contain;
          mask: url(../img/common/icon_pdf.svg) no-repeat center/contain;
}
@media screen and (min-width: 1024px) {
  .post-style a.btn:hover::after {
    background: var(--c_primary);
  }
}
.under-catalog-single .post-style .sec-ttl-base + .lead-txt {
  margin-top: 4rem;
}
.under-catalog-single .post-style .lead-txt p {
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .lead-txt p {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .check-list {
  width: 100%;
  max-width: 76.3rem;
  background: var(--bg_base);
  border-radius: 3rem;
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5em;
  margin: auto;
  padding: 4rem 2rem;
}
.under-catalog-single .post-style .check-list li {
  width: 100%;
  max-width: 60rem;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.5em;
}
.under-catalog-single .post-style .check-list li, .under-catalog-single .post-style .check-list li p {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .check-list li, .under-catalog-single .post-style .check-list li p {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .check-list li .icon-check {
  width: 1em;
  height: 1em;
  text-indent: 100%;
  background: var(--bg_gray_dark);
  border-radius: 100vw;
  flex: none;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.under-catalog-single .post-style .check-list li .icon-check::before {
  content: "";
  width: 100%;
  height: 100%;
  -webkit-mask: url(../img/common/icon_check.svg) no-repeat center/0.75em auto;
          mask: url(../img/common/icon_check.svg) no-repeat center/0.75em auto;
  background: var(--c_white);
  display: block;
}
.under-catalog-single .post-style .check-list + .content-img-flex {
  margin-top: 10rem;
  position: relative;
}
.under-catalog-single .post-style .check-list + .content-img-flex::before {
  content: "";
  width: 6rem;
  height: 6rem;
  -webkit-mask: url(../img/common/before_after_arrow.svg) no-repeat center/contain;
          mask: url(../img/common/before_after_arrow.svg) no-repeat center/contain;
  background-color: var(--c_txt);
  aspect-ratio: 1/1;
  position: absolute;
  top: -5rem;
  left: 50%;
  translate: -50% -50%;
}
.under-catalog-single .post-style * + .check-list {
  margin-top: 5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .check-list {
    margin-top: 3rem;
  }
}
.under-catalog-single .post-style .content-img-flex {
  display: flex;
  flex-flow: wrap row-reverse;
  justify-content: center;
  align-items: stretch;
  gap: 1em 5rem;
  margin: auto;
}
.under-catalog-single .post-style .content-img-flex .content-wrap {
  width: 100%;
  max-width: 59rem;
  margin: 0 auto;
}
.under-catalog-single .post-style .content-img-flex .content-wrap .ttl {
  font-size: 2.7rem;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .content-img-flex .content-wrap .ttl {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .content-img-flex .content-wrap .ttl span {
  background: linear-gradient(transparent 60%, var(--c_primary_pale) 0%);
  display: inline;
}
.under-catalog-single .post-style .content-img-flex .content-wrap .txt-wrap {
  margin-top: 2em;
}
.under-catalog-single .post-style .content-img-flex .img-wrapper {
  width: 100%;
  max-width: 44rem;
  display: flex;
  flex-flow: column;
  justify-content: stretch;
  align-items: stretch;
  gap: 0.5em;
}
.under-catalog-single .post-style .content-img-flex .img-wrapper .img-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.under-catalog-single .post-style .content-img-flex .img-wrapper .img-wrap img {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: auto;
  border-radius: 1.5rem;
  margin: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 1920px) {
  .under-catalog-single .post-style .content-img-flex .img-wrapper .img-wrap img {
    width: 100%;
  }
}
.under-catalog-single .post-style .content-img-flex .img-wrapper .cap p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .content-img-flex .img-wrapper .cap p {
    font-size: 1.4rem;
  }
}
.under-catalog-single .post-style * + .content-img-flex {
  margin-top: 5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .content-img-flex {
    margin-top: 3rem;
  }
}
.under-catalog-single .post-style .list-dot {
  max-width: 76.3rem;
  border-radius: 1.5rem;
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 1em auto 0;
  padding: 4rem 2rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .list-dot {
    padding: 4rem 2rem;
  }
}
.under-catalog-single .post-style .list-dot li {
  width: 100%;
  max-width: 60rem;
  margin: 0 auto;
}
.under-catalog-single .post-style .list-dot li + li {
  margin-top: 0.25em;
}
.under-catalog-single .post-style * + .list-dot {
  margin-top: 5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .list-dot {
    margin-top: 3rem;
  }
}
.under-catalog-single .post-style * + .img-flex {
  margin-top: 4rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .img-flex {
    margin-top: 2rem;
  }
}
.under-catalog-single .post-style .img-content-flex-row2 {
  width: 100%;
  max-width: 80rem;
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
  gap: 9rem 8rem;
  margin: auto;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .img-content-flex-row2 {
    flex-flow: column;
    align-items: center;
    gap: 5rem 4rem;
  }
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item {
  width: 100%;
  max-width: 36rem;
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap {
  position: relative;
  z-index: 1;
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl {
  font-size: 2.7rem;
  font-weight: 700;
  text-align: center;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num {
  font-size: 2.5rem;
  font-weight: 900;
  color: var(--c_primary);
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 0.5em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num, .under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num span {
  font-family: var(--f_dosis);
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num .num {
  font-size: 3.5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .img-content-flex-row2 .img-content-item .ttl-wrap .ttl span.feature-num .num {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .img-wrap {
  width: 100%;
  max-width: 22.6rem;
  background: var(--c_primary_yellow);
  border-radius: 100vw;
  overflow: hidden;
  aspect-ratio: 1/1;
  margin: -2rem auto 0;
  position: relative;
  z-index: 0;
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.under-catalog-single .post-style .img-content-flex-row2 .img-content-item .txt-wrap p {
  letter-spacing: 0.05em;
}
.under-catalog-single .post-style * + .img-content-flex-row2 {
  margin-top: 7rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .img-content-flex-row2 {
    margin-top: 4rem;
  }
}
.under-catalog-single .post-style .use-case-wrap {
  margin: auto;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item {
  background: var(--c_white);
  border-radius: 3rem;
  box-shadow: 0.5rem 0.5rem 0.5rem 0 rgba(0, 0, 0, 0.05);
  padding: 4rem;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item {
    padding: 4rem 2rem;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item + .use-case-item {
  margin-top: 8rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item + .use-case-item {
    margin-top: 4rem;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap {
    max-width: 100%;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap:has(.img-wrap) {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto;
  gap: 0 4rem;
  grid-template-areas: "ttl-wrap img-wrap" "txt-wrap img-wrap";
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap:has(.img-wrap) {
    display: block;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap:has(.img-wrap) .ttl-wrap {
  grid-area: ttl-wrap;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap:has(.img-wrap) .txt-wrap {
  grid-area: txt-wrap;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap {
  grid-area: ttl-wrap;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl {
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  border-bottom: 0.1rem solid var(--c_primary_light);
  padding-bottom: 0.5em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl span.case-num {
  font-family: var(--f_dosis);
  font-size: 2rem;
  letter-spacing: 0.03em;
  font-weight: 900;
  color: var(--c_primary);
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 0.5em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl span.case-num {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl span.case-num, .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .ttl-wrap .ttl span.case-num span {
  font-family: var(--f_dosis);
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .img-wrap {
  grid-area: img-wrap;
  width: 100%;
  max-width: 31.4rem;
  background: var(--bg_base);
  border-radius: 1.5rem;
  aspect-ratio: 314/203;
  overflow: hidden;
  margin-top: -7rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .img-wrap {
    position: static;
    margin: 1em auto 0;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .ttl-lead-wrap .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.5rem;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 7rem 14rem;
  margin: 3rem auto 0;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after {
    flex-flow: column;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item {
  width: 100%;
  max-width: 43rem;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item.before-wrap .case-ttl {
  background: var(--c_white);
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item.before-wrap + .after-wrap {
  position: relative;
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item.before-wrap + .after-wrap::before {
  content: "";
  width: 5.5rem;
  height: 5.5rem;
  -webkit-mask: url(../img/common/before_after_arrow.svg) no-repeat center/contain;
          mask: url(../img/common/before_after_arrow.svg) no-repeat center/contain;
  background-color: var(--bg_gray_dark);
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  left: -7rem;
  translate: -50% -50%;
  rotate: -90deg;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item.before-wrap + .after-wrap::before {
    width: 4.5rem;
    height: 4.5rem;
    top: -3.5rem;
    left: 50%;
    translate: -50% -50%;
    rotate: 0deg;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item.after-wrap .case-ttl {
  color: var(--c_white);
  background: var(--c_primary);
  border-color: var(--c_primary);
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item .case-ttl {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  border: 0.1rem solid;
  border-radius: 100vw;
  padding: 0.5em 1em;
  display: inline-block;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item .case-ttl {
    font-size: 1.4rem;
  }
}
.under-catalog-single .post-style .use-case-wrap .use-case-item .case-before-after .case-item .txt-wrap {
  margin-top: 0.5em;
}
.under-catalog-single .post-style * + .use-case-wrap {
  margin-top: 7rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style * + .use-case-wrap {
    margin-top: 4rem;
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards {
  display: flex;
  flex-flow: wrap;
  gap: 4.5rem;
}
@media screen and (max-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item {
  width: 100%;
  max-width: 33rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item {
    width: 100%;
    max-width: 33rem;
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img {
  width: 100%;
  height: 21.9rem;
  border-radius: 1.5rem;
  overflow: hidden;
  margin-bottom: 4rem;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  scale: 1;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img img {
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img:not(:has(img)) {
  background: var(--bg_base);
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a h3, .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a h4 {
  font-size: 2.7rem;
  font-weight: 700;
  display: flex;
  gap: 1.6rem;
  margin-bottom: 3.2rem;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a h3::before, .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a h4::before {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.8rem;
  background-color: var(--c_primary);
  position: relative;
  top: calc(0.5em + 0.4rem);
  line-height: 1;
  flex: none;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a p {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1.88;
  margin-bottom: 4rem;
  margin-top: auto;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .btn-arrow {
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 1.4rem;
  margin-top: auto;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .btn-arrow::before {
  content: "";
  background: url(../img/front/top-btn-arrow.svg) no-repeat center/1.9rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  background-color: var(--bg_btn_arrow);
  border: 0.1rem solid var(--bg_btn_arrow);
  border-radius: 100vh;
  font-size: 0rem;
  padding-bottom: 0.3rem;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a .btn-arrow::before {
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a:hover .img img {
    scale: 1.1;
  }
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a:hover .img:not(:has(img))::before {
    scale: 1.1;
  }
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards .top-cards-item a:hover .btn-arrow::before {
    content: "";
    background: url(../img/front/top-btn-arrow-on.svg) no-repeat center/1.9rem auto;
    background-color: var(--c_white);
  }
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards a {
  text-decoration: none;
}
.under-catalog-single .post-style .line-up-cards-wrap .top-cards a .btn-arrow.btn {
  color: var(--c_txt);
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .line-up-cards-wrap .top-cards a:hover {
    opacity: 1;
  }
}
.under-catalog-single .post-style * + .line-up-cards-wrap {
  margin-top: 4rem;
}
.under-catalog-single .post-style .flow-wrap {
  margin: auto;
}
.under-catalog-single .post-style .flow-wrap .flow-item {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  gap: 1rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item {
    flex-flow: column;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item + .flow-item {
  margin-top: 3rem;
}
.under-catalog-single .post-style .flow-wrap .flow-item + .flow-item .step-wrap {
  position: relative;
}
.under-catalog-single .post-style .flow-wrap .flow-item + .flow-item .step-wrap::before {
  content: "";
  width: 2.2rem;
  height: 1.3rem;
  -webkit-mask: url(../img/common/arrow_arrowhead.svg) no-repeat center/contain;
          mask: url(../img/common/arrow_arrowhead.svg) no-repeat center/contain;
  background: var(--c_primary_light);
  display: block;
  position: absolute;
  bottom: 100%;
  left: 50%;
  translate: -50% -50%;
}
.under-catalog-single .post-style .flow-wrap .flow-item .step-wrap {
  width: 100%;
  max-width: 11rem;
  background: var(--c_primary_light);
  border-radius: 0.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num {
  font-family: var(--f_dosis);
  font-size: 1.9rem;
  letter-spacing: 0.03em;
  font-weight: 900;
  color: var(--c_white);
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 0.5em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num, .under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num span {
  font-family: var(--f_dosis);
}
.under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num .num {
  font-size: 2.5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item .step-wrap .step-num .num {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap {
  width: 100%;
  background: var(--bg_base);
  border-radius: 0.8rem;
  display: flex;
  flex-flow: row-reverse;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
  padding: 1em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap {
    flex-flow: column-reverse;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap {
  width: 100%;
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap .ttl {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 2;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap .ttl {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap .txt-wrap {
  margin-top: 0;
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap .txt-wrap p {
  font-size: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .ttl-txt-wrap .txt-wrap p {
    font-size: 1.4rem;
  }
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .img-wrap {
  width: 100%;
  max-width: 8rem;
  height: 8rem;
  background: var(--c_white);
  box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.16);
  border-radius: 100vw;
  aspect-ratio: 1/1;
  overflow: hidden;
  flex: none;
}
.under-catalog-single .post-style .flow-wrap .flow-item .content-flex-row-rev-wrap .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.under-catalog-single .post-style * + .flow-wrap {
  margin-top: 3rem;
}
.under-catalog-single .post-style .faq-wrap {
  margin: auto;
}
.under-catalog-single .post-style .faq-wrap .faq-ttl {
  font-size: 2rem;
  font-weight: 700;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.5em;
}
.under-catalog-single .post-style .faq-wrap .faq-ttl::before {
  content: "";
  width: 1em;
  height: 0.2em;
  background: var(--c_primary_light);
  display: block;
  flex: none;
  translate: 0 -0.3em;
}
.under-catalog-single .post-style .faq-wrap .faq-ttl + .qa-list-wrap {
  margin-top: 1em;
}
.under-catalog-single .post-style .faq-wrap .qa-list-wrap {
  margin-top: 0;
}
.under-catalog-single .post-style .faq-wrap .qa-list-wrap .qa-list .qa-list-item {
  background: var(--c_white);
  box-shadow: 0.5rem 0.5rem 3rem 0 rgba(0, 0, 0, 0.05);
}
.under-catalog-single .post-style .faq-wrap .qa-list-wrap .qa-list .qa-list-item dt .qa-ttl .qa-ttl-btn {
  color: var(--c_txt);
  text-decoration: none;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .faq-wrap .qa-list-wrap .qa-list .qa-list-item dt .qa-ttl .qa-ttl-btn:hover {
    opacity: 1;
  }
}
.under-catalog-single .post-style * + .faq-wrap {
  margin-top: 3rem;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards {
  display: flex;
  flex-flow: wrap;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item {
  width: 100%;
  max-width: 33rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item {
    width: 100%;
    max-width: 33rem;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img {
  width: 100%;
  height: 21.9rem;
  border-radius: 1.5rem;
  overflow: hidden;
  margin-bottom: 4rem;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  scale: 1;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img img {
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img)) {
  background: var(--bg_base);
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a h3, .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a h4 {
  font-size: 2.7rem;
  font-weight: 700;
  display: flex;
  gap: 1.6rem;
  margin-bottom: 3.2rem;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a h3::before, .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a h4::before {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.8rem;
  background-color: var(--c_primary);
  position: relative;
  top: calc(0.5em + 0.4rem);
  line-height: 1;
  flex: none;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a p {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1.88;
  margin-bottom: 4rem;
  margin-top: auto;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .btn-arrow {
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 1.4rem;
  margin-top: auto;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .btn-arrow::before {
  content: "";
  background: url(../img/front/top-btn-arrow.svg) no-repeat center/1.9rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  background-color: var(--bg_btn_arrow);
  border: 0.1rem solid var(--bg_btn_arrow);
  border-radius: 100vh;
  font-size: 0rem;
  padding-bottom: 0.3rem;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .btn-arrow::before {
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a:hover .img img {
    scale: 1.1;
  }
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a:hover .img:not(:has(img))::before {
    scale: 1.1;
  }
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a:hover .btn-arrow::before {
    content: "";
    background: url(../img/front/top-btn-arrow-on.svg) no-repeat center/1.9rem auto;
    background-color: var(--c_white);
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item {
  width: 100%;
  max-width: 34.5rem;
  position: relative;
  z-index: 0;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a {
  text-decoration: none;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a:hover {
    opacity: 1;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img {
  width: 100%;
  max-width: calc(100% - 3rem);
  box-shadow: 0.5rem 0.5rem 3rem rgba(0, 0, 0, 0.08);
  height: auto;
  margin-bottom: 0;
  aspect-ratio: 310/203;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img)) {
  background: var(--c_white);
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .img:not(:has(img))::before {
    scale: 1;
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text {
  padding: 3rem 3rem 4rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text {
    padding: 3rem 2rem 4rem;
  }
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text .tag {
  width: auto;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.25em;
  margin-bottom: 1.9rem;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text .tag span {
  font-size: 1.2rem;
  color: var(--c_txt);
  border: 0.1rem solid var(--c_txt);
  border-radius: 100vh;
  padding: 0.8rem 1.3rem;
  line-height: 1;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text h4 {
  font-size: 2rem;
  margin-bottom: 2.2rem;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item a .text h4::before {
  display: none;
}
.under-catalog-single .post-style .case-cards-wrap .top-cards .top-cards-item::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - 7rem);
  background-color: var(--c_white);
  border-radius: 1.5rem;
  position: absolute;
  bottom: 0;
  left: 0;
  box-shadow: 0.5rem 0.5rem 3rem rgba(0, 0, 0, 0.08);
  z-index: -1;
}
.under-catalog-single .post-style * + .case-cards-wrap {
  margin-top: 3rem;
}
.under-catalog-single .post-style .other-cards-wrap {
  margin: auto;
}
.under-catalog-single .post-style .other-cards-wrap .other-cards {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 5rem 4rem;
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item {
  width: 100%;
  max-width: 52rem;
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item {
    max-width: 34.5rem;
    justify-content: stretch;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a {
  width: 100%;
  max-width: 50rem;
  text-decoration: none;
  background: var(--c_white);
  box-shadow: 0.5rem 0.5rem 3rem 0 rgba(0, 0, 0, 0.16);
  border-radius: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 3rem;
  padding: 2.5rem 3rem 2.5rem 0;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a {
    max-width: 100%;
    flex-flow: wrap;
    padding: 2.5rem 3rem;
  }
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover {
    opacity: 1;
  }
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .img:not(:has(img))::after {
    scale: 1.1;
  }
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .img img {
    scale: 1.1;
  }
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .content-wrap .btn-arrow {
    font-size: 1.4rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-top: auto;
  }
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .content-wrap .btn-arrow::before {
    content: "";
    background: url(../img/front/top-btn-arrow.svg) no-repeat center/1.9rem auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.4rem;
    height: 4.4rem;
    background-color: var(--bg_btn_arrow);
    border: 0.1rem solid var(--bg_btn_arrow);
    border-radius: 100vh;
    font-size: 0rem;
    padding-bottom: 0.3rem;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .content-wrap .btn-arrow::before {
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a:hover .content-wrap .btn-arrow.btn::before {
    background-image: url(../img/front/top-btn-arrow-on.svg);
    background-color: var(--c_white);
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img {
  width: 100%;
  max-width: 24.5rem;
  border-radius: 1.5rem;
  flex: none;
  margin-top: -4.2rem;
  margin-left: -2rem;
  aspect-ratio: 247/160;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img {
    margin: -4.2rem auto 0;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img:not(:has(img)) {
  background: var(--bg_base);
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img:not(:has(img))::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/common/footer-logo.png) no-repeat center/50% auto;
  display: block;
  opacity: 0.5;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img:not(:has(img))::after {
    scale: 1;
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img img {
  width: 100%;
  height: 100%;
  border-radius: 1.5rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .img img {
    scale: 1;
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap {
  width: 100%;
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .ttl {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.7;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .ttl {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .btn-arrow {
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 1.4rem;
  margin-top: auto;
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .btn-arrow::before {
  content: "";
  background: url(../img/front/top-btn-arrow.svg) no-repeat center/1.9rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  background-color: var(--bg_btn_arrow);
  border: 0.1rem solid var(--bg_btn_arrow);
  border-radius: 100vh;
  font-size: 0rem;
  padding-bottom: 0.3rem;
}
@media screen and (min-width: 1024px) {
  .under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .btn-arrow::before {
    transition: all 0.3s;
  }
}
.under-catalog-single .post-style .other-cards-wrap .other-cards .other-cards-item a .content-wrap .btn-arrow.btn {
  margin-top: 1em;
}
.under-catalog-single .post-style * + .other-cards-wrap {
  margin-top: 5rem;
}
.under-catalog-single .post-style .column-style {
  margin-top: 6rem;
}
.under-catalog-single .post-style .column-style > * + * {
  margin-top: 1em;
}
.under-catalog-single .post-style .column-style .table-of-contents {
  width: 100%;
  max-width: 67rem;
  background: var(--c_white);
  border-radius: 1.5rem;
  margin: 0 auto;
  padding: 3rem 2rem;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner {
  max-width: 52rem;
  margin: auto;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-ttl {
  font-family: var(--f_dosis);
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-align: center;
  color: var(--c_primary);
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap {
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 1em auto 0;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li + li {
  margin-top: 1em;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li a {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: var(--c_txt);
  text-decoration: none;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.5em;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li.t-h3 a .icon {
  width: 1.125em;
  height: 1.125em;
  background: var(--c_primary);
  border-radius: 100vw;
  text-indent: 100%;
  overflow: hidden;
  aspect-ratio: 1/1;
  flex: none;
  translate: 0 0.125em;
  position: relative;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li.t-h3 a .icon::before {
  content: "";
  width: 0.416em;
  height: 0.416em;
  border-right: 0.2rem solid var(--c_white);
  border-bottom: 0.2rem solid var(--c_white);
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -70%;
  rotate: 45deg;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li.t-h4 {
  padding-left: 1.5em;
  margin-top: 0.5em;
}
.under-catalog-single .post-style .column-style .table-of-contents .content-inner .content-list-wrap li.t-h4 .icon {
  width: 0.8em;
  height: 0.25em;
  background: var(--c_primary);
  text-indent: 100%;
  overflow: hidden;
  aspect-ratio: 1/1;
  flex: none;
  translate: 0 -0.25em;
}
.under-catalog-single .post-style .column-style .h-3 {
  font-size: 3rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  padding-bottom: 0.25em;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .h-3 {
    font-size: 2rem;
  }
}
.under-catalog-single .post-style .column-style .h-3::before, .under-catalog-single .post-style .column-style .h-3::after {
  content: "";
  width: 100%;
  height: 0.4rem;
  position: absolute;
  bottom: 0;
  display: block;
}
.under-catalog-single .post-style .column-style .h-3::before {
  max-width: 15.5rem;
  background: var(--c_primary);
  left: 0;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .h-3::before {
    max-width: 5rem;
  }
}
.under-catalog-single .post-style .column-style .h-3::after {
  max-width: calc(100% - 15.5rem);
  background: var(--c_white);
  right: 0;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .h-3::after {
    max-width: calc(100% - 5rem);
  }
}
.under-catalog-single .post-style .column-style .h-4 {
  font-size: 2.2rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 0.5em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .h-4 {
    font-size: 1.6rem;
  }
}
.under-catalog-single .post-style .column-style .h-4 + .h-4 {
  margin-top: 0.5em;
}
.under-catalog-single .post-style .column-style .h-4::before {
  content: "";
  width: 0.45em;
  height: 0.45em;
  background: var(--c_primary);
  border-radius: 100vw;
  flex: none;
  aspect-ratio: 1/1;
  translate: 0 -0.225em;
}
.under-catalog-single .post-style .column-style .txt-wrap p {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .txt-wrap p {
    font-size: 1.4rem;
  }
}
.under-catalog-single .post-style .column-style .img-flex {
  margin-top: 5rem;
}
@media screen and (max-width: 1023px) {
  .under-catalog-single .post-style .column-style .img-flex {
    margin-top: 2.5rem;
  }
}
.under-catalog-single .post-style .column-style .img-flex:first-child {
  margin-top: auto;
}

.btn-wrap {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 1em;
  margin: 1em auto 0;
}
@media screen and (max-width: 1023px) {
  .btn-wrap {
    flex-flow: wrap;
  }
}
.btn-wrap:first-child {
  margin-top: auto;
}
.btn-wrap .btn-back {
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.875em;
}
.btn-wrap .btn-back.add-arrow-before .arrow-circle-left {
  width: 2.75em;
  height: 100%;
  background: var(--bg_gray_dark);
  border: 0.1rem solid var(--bg_gray_dark);
  border-radius: 100vw;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  flex: none;
}
@media screen and (min-width: 1024px) {
  .btn-wrap .btn-back.add-arrow-before .arrow-circle-left {
    transition: all 0.3s;
  }
}
.btn-wrap .btn-back.add-arrow-before .arrow-circle-left::before {
  content: "";
  width: 1.25em;
  height: 1.25em;
  -webkit-mask: url(../img/common/list_before_arrow.svg) no-repeat center/contain;
          mask: url(../img/common/list_before_arrow.svg) no-repeat center/contain;
  background: var(--c_white);
  aspect-ratio: 1/1;
  transform: rotateY(180deg);
}
@media screen and (min-width: 1024px) {
  .btn-wrap .btn-back.add-arrow-before .arrow-circle-left::before {
    transition: all 0.3s;
  }
}
@media screen and (min-width: 1024px) {
  .btn-wrap .btn-back:hover.add-arrow-before .arrow-circle-left {
    background: var(--c_white);
  }
  .btn-wrap .btn-back:hover.add-arrow-before .arrow-circle-left::before {
    background: var(--c_txt);
  }
}
/*# sourceMappingURL=maps/common.css.map */
