@charset "UTF-8";

html {
  font-size: 14px;
}

body {
  font-family: "Helvetica Neue", "Helvetica", "Arial", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;
  color: #06284d;
  margin: 0;
  line-height: 1.6;
}

main p {
  line-height: 1.8 !important;
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container {
  padding: 16px;
  background-color: #f2f1f8;
}

@media screen and (max-width: 414px) {
  main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container {
    padding: 8px 16px;
  }
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb {
  max-width: 1440px;
  margin: auto;
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol {
  list-style-type: none;
  display: flex;
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li {
  font-size: 1rem;
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li a {
  text-decoration: none;
  font-size: 1.25rem;
  color: #06284d;
}

@media screen and (max-width: 1440px) {
  main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li a {
    font-size: 1rem;
  }
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li a:hover {
  opacity: 0.75;
}

main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li span {
  font-size: 1.25rem;
  color: rgba(32, 53, 77, 0.7019607843);
}

@media screen and (max-width: 1440px) {
  main .casestudy-hero-section .casestudy-hero-container .is-breadcrumb-container .breadcrumb ol li span {
    font-size: 1rem;
  }
}

main .casestudy-hero-section .casestudy-hero-container .casestudy-title-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
  flex-direction: column;
  height: 80px;
  background-image: linear-gradient(to bottom, #f2f1f8 0%, rgba(27, 95, 171, 0.125) 50%, #f2f1f8 50.01%, #fff 100%);
}

@media screen and (max-width: 768px) {
  main .casestudy-hero-section .casestudy-hero-container .casestudy-title-container {
    height: 64px;
  }
}

main .casestudy-hero-section .casestudy-hero-container .casestudy-title-container h1 {
  font-size: 1.563rem;
  font-weight: 500;
  position: relative;
  z-index: 1;
  color: #1D4977;
}

@media screen and (max-width: 768px) {
  main .casestudy-hero-section .casestudy-hero-container .casestudy-title-container h1 {
    font-size: 1.25rem;
  }
}

main .casestudy-hero-section .casestudy-hero-container .casestudy-title-container h1::before {
  z-index: -1;
  content: attr(title);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 75%) scale(1, -1);
  word-break: keep-all;
  background-image: linear-gradient(to bottom, transparent 37.5%, #1D4977 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  opacity: 0.5;
}

main .is-casestudy-image {
  max-width: 1124px;
  margin: auto;
  padding: 0;
}

main .is-casestudy-image .casestudy-image-container {
  max-width: 800px;
  margin: 40px auto;
  border: 1px solid #f2f1f8;
}

@media screen and (max-width: 414px) {
  main .is-casestudy-image .casestudy-image-container {
    margin: 16px auto;
  }
}

main .is-casestudy-image .casestudy-image-container img {
  width: 100%;
}

main .is-casestudy-detail {
  padding: 0 40px 40px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail {
    padding: 0 16px;
  }
}

main .is-casestudy-detail .casestudy-detail-container {
  display: flex;
  flex-direction: column;
  max-width: 1124px;
  margin: 40px auto 80px;
  gap: 40px;
}

@media screen and (max-width: 960px) {
  main .is-casestudy-detail .casestudy-detail-container {
    margin: 40px auto;
  }
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container {
    gap: 16px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container {
    margin: 0 auto 40px;
  }
}

main .is-casestudy-detail .casestudy-detail-container h2 {
  margin: 80px 0 0;
  color: #20354D;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container h2 {
    margin: 40px 0 0;
  }
}

main .is-casestudy-detail .casestudy-detail-container h2 .bg-case {
  display: inline-block;
  font-size: 2.441rem;
  position: relative;
  z-index: 0;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container h2 .bg-case {
    font-size: 1.953rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container h2 .bg-case {
    font-size: 1.563rem;
  }
}

main .is-casestudy-detail .casestudy-detail-container h2 .bg-case::before {
  z-index: -1;
  content: attr(title);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-40px, -116%);
  color: #c5dcf2;
  opacity: 0.4;
  font-size: 5.96rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container h2 .bg-case::before {
    font-size: 4.769rem;
    transform: translate(-16px, -116%);
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container h2 .bg-case::before {
    font-size: 3.815rem;
  }
}

main .is-casestudy-detail .casestudy-detail-container h2 .bg-case::after {
  z-index: -1;
  content: "";
  position: absolute;
  right: 0;
  bottom: -4px;
  width: 100vw;
  height: 2px;
  background-color: #9cc8f2;
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container {
  padding: 40px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 80px;
  box-shadow: rgba(60, 64, 67, 0.3) 1px 1px 2px 0px, rgba(60, 64, 67, 0.15) 1px 1px 3px 1px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container {
    padding: 24px;
    gap: 40px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 0;
    box-shadow: none;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-detail {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-detail {
    padding: 24px 16px;
    flex-direction: column;
    box-shadow: rgba(60, 64, 67, 0.3) 1px 1px 2px 0px, rgba(60, 64, 67, 0.15) 1px 1px 3px 1px;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-detail img {
  width: 120px;
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-detail p {
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-detail p {
    font-size: 1rem;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper {
  display: flex;
  justify-content: right;
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper {
    justify-content: left;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: -moz-fit-content;
  width: fit-content;
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container img {
  width: 144px;
  border-radius: 100%;
  margin: auto;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container img {
    width: 120px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container img {
    width: 108px;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl {
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 8px;
}

@media screen and (max-width: 414px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl {
    text-align: center;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl dt {
  font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl dt {
    font-size: 0.64rem;
  }
}

main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl dd {
  font-weight: 700;
  color: #1D4977;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-detail .casestudy-detail-container .company-detail-container .company-person-wrapper .company-person-container dl dd {
    font-size: 0.8rem;
  }
}

main .is-casestudy-contents {
  display: flex;
  flex-direction: column;
}

main .is-casestudy-contents .contents-table-container {
  overflow: auto;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison {
  display: flex;
  align-items: center;
  gap: 40px;
  width: 1124px;
  padding: 24px 0;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison table {
  text-align: center;
  border-spacing: 2px;
  border-collapse: collapse;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison table th {
  background-color: #f2f1f8;
  padding: 8px;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison table td {
  background-color: #fff;
  padding: 8px;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .other-table thead tr th {
  height: 56px;
  background-color: #fff;
  color: #06284d;
  height: 56px;
  font-size: 1.25rem;
  border: 2px solid #f2f1f8;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .other-table tbody tr {
  border: 2px solid #f2f1f8;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .other-table tbody tr th {
  font-size: 0.8rem;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .other-table tbody tr td {
  background-color: #fff;
  border: 2px solid #f2f1f8;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .arrow {
  position: relative;
  display: inline-block;
  width: 17px;
  height: 49px;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .arrow::before,
main .is-casestudy-contents .contents-table-container .contents-table-comparison .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  right: 0;
  width: 30px;
  height: 3px;
  border-radius: 9999px;
  background-color: #06284d;
  transform-origin: calc(100% - 1.5px) 50%;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .arrow::before {
  transform: rotate(60deg);
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .arrow::after {
  transform: rotate(-60deg);
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .is-table {
  transform: translateX(19px) scale(1.08);
  box-shadow: rgba(60, 64, 67, 0.16) 0px 3px 6px, rgba(60, 64, 67, 0.23) 0px 3px 6px;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .is-table thead tr th {
  background-color: #1b5fab;
  color: #fff;
  height: 56px;
  font-size: 1.25rem;
  border: 2px solid #1b5fab;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .is-table tbody tr td {
  border: 2px solid #f2f1f8;
  font-weight: 500;
}

main .is-casestudy-contents .contents-table-container .contents-table-comparison .is-table tbody tr:first-child td {
  background-color: #f5f9ff;
}

main .is-casestudy-contents .casestudy-contents-wrapper {
  padding: 0 40px;
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper {
    padding: 0 16px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container {
  max-width: 1124px;
  margin: auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 64px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container {
    gap: 40px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .p-container {
  /*
  コラム内のpタグ用
  */
  display: flex;
  flex-direction: column;
  gap: 32px;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp {
  /*
  記事コンテンツ内のh2見出し以下にpタグ用
  */
  display: flex;
  flex-direction: column;
  gap: 24px;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp .contents-image-R {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 40px;
}

@media screen and (max-width: 960px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp .contents-image-R {
    grid-template-columns: 1fr 240px;
  }
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp .contents-image-R {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp figure {
    max-width: 280px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp figure figcaption {
  inline-size: 0;
  min-inline-size: -moz-fit-content;
  min-inline-size: fit-content;
  margin-inline: auto;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2 {
  font-size: 1.953rem;
  color: #1b5fab;
  position: relative;
  padding-left: 64px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2 {
    font-size: 1.563rem;
    padding-left: 48px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2 {
    font-size: 1.25rem;
    padding-left: 36px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2::before {
  position: absolute;
  top: 17px;
  left: 0;
  content: "";
  width: 56px;
  height: 1px;
  background-color: #1b5fab;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2::before {
    top: 14px;
    width: 42px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp h2::before {
    top: 11px;
    width: 32px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp p {
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp p {
    font-size: 1rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xp p {
    font-size: 0.8rem;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli {
  /*
  記事コンテンツ内のh2見出し以下にlist用
  */
  display: flex;
  flex-direction: column;
  gap: 24px;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2 {
  font-size: 1.953rem;
  color: #1b5fab;
  position: relative;
  padding-left: 64px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2 {
    font-size: 1.563rem;
    padding-left: 48px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2 {
    font-size: 1.25rem;
    padding-left: 36px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2::before {
  position: absolute;
  top: 17px;
  left: 0;
  content: "";
  width: 56px;
  height: 1px;
  background-color: #1b5fab;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2::before {
    top: 14px;
    width: 42px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli h2::before {
    top: 11px;
    width: 32px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli ul {
  display: inline-flex;
  flex-direction: column;
  list-style-type: none;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli ul li {
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli ul li {
    font-size: 1rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli ul li {
    font-size: 0.8rem;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .positive-list-wrapper .positive-list {
  display: flex;
  gap: 4px;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .positive-list-wrapper .positive-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 24px 16px 12px;
  border-left: 28px solid #74b5f1;
  background-color: #f5f9ff;
  position: relative;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .positive-list-wrapper .positive-list li {
    padding: 10px 20px 12px 10px;
    border-left: 22px solid #74b5f1;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .positive-list-wrapper .positive-list li img {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-22px, -50%);
  width: 16px;
  filter: brightness(0) invert(1);
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .positive-list-wrapper .positive-list li img {
    width: 12px;
    transform: translate(-17px, -50%);
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .negative-list-wrapper {
  display: flex;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .negative-list-wrapper .negative-list {
  background-color: #f2f1f8;
  padding: 24px;
  border-radius: 8px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .negative-list-wrapper .negative-list {
    padding: 16px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .negative-list-wrapper .negative-list li {
  display: flex;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-faq-h2xli .negative-list-wrapper .negative-list li::before {
  content: "・";
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp:first-child {
  margin-top: 80px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp:first-child {
    margin-top: 40px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp {
  /*
  記事コンテンツ内のh3見出し以下にpタグ用
  */
  display: flex;
  flex-direction: column;
  gap: 24px;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 {
  font-size: 1.563rem;
  color: #1b5fab;
  display: flex;
  align-items: start;
  border-left: solid 57px #1b5fab;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 {
    font-size: 1.25rem;
    border-left: solid 44px #1b5fab;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 {
    font-size: 1rem;
    border-left: solid 36px #1b5fab;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span {
  position: relative;
  padding-left: 10px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span {
    padding-left: 6px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span {
    padding-left: 4px;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span div {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-58px, -50%);
  color: #fff;
  word-break: keep-all;
  padding-left: 8px;
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span div {
    font-size: 1rem;
    transform: translate(-48px, -50%);
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span div {
    font-size: 0.8rem;
    transform: translate(-40px, -50%);
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp h3 span::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  transform: translate(0px, 0);
  background-color: #1b5fab;
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp p {
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp p {
    font-size: 1rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp p {
    font-size: 0.8rem;
  }
}

main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp:last-child {
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-contents-wrapper .casestudy-contents-container .contents-reason-h3xp:last-child {
    margin-bottom: 40px;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper {
  /*
  お礼や感謝を掲載するとき用
  */
  background-size: 150% 100px;
  background-position: 50% 100%;
  background-image: url('data:image/svg+xml;charset=utf8, <svg preserveAspectRatio="xMidYMin slice" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000.4 84"><g fill="%23f5f9ff"><path d="M63 35v38l-1 1-17 10H16L0 75V34l30-18 33 19z" opacity=".5"/><path d="M133 54v30H74V54l30-17 29 17z"/><path d="M284 24v49l-2 1-8 5-9 5h-45l-15-9-2-1-2-1V24l41-24 42 24zM157 40V20l-17-10-18 10v20l18 10 17-10z" opacity=".75"/><path d="M189 25V12l-10-6-11 6v13l11 6 10-6z"/><path d="M205 52v32h-59V52l29-17 26 15 4 2z" opacity=".5"/><path d="M186 75v9h-59v-9l3-1 3-2 13-7 11-6 27 15 2 1zM99 34V15L82 6l-16 9v19l16 10 17-10zM340 41v38l-8 5h-50l-8-5V41l10-6 23-13 33 19z"/><path d="M410 60v24h-59V60l29-17 30 17z" opacity=".5"/><path d="M569 30v49l-5 3-4 2h-66l-5-3-4-2V30l42-24 37 21 5 3zM433 46V26l-17-10-17 10v20l17 10 17-10zM466 31V18l-11-6-11 6v13l11 6 11-6z"/><path d="M496 56v28h-63V56l31-18 28 16 4 2z"/><path d="M463 82v2h-59v-2l6-4 7-4 5-3 11-6 17 9 13 8z"/><path d="M375 40V21l-16-9-17 9v19l17 10 16-10z" opacity=".5"/><path d="M837 41v38l-8 5h-50l-8-5V41l33-19 33 19zM677 46V26l18-10 17 10v20l-17 10-18-10z"/><path d="M645 31V18l10-6 11 6v13l-11 6-10-6z" opacity=".5"/><path d="M546 17V6l9-6 10 6v11l-10 5-9-5z" opacity=".75"/><path d="M688 58v26h-58V58l4-2 25-15 29 17z"/><path d="M707 82v2h-59v-2l13-8 16-9 11 6 6 3 7 4 6 4z"/><path d="M791 82v2h-58v-2l13-8 16-9 11 6 5 3 8 4 5 4z" opacity=".5"/><path d="M736 40V21l16-9 16 9v19l-16 10-16-10z"/><path d="M918 37v38l-16 9h-35l-15-9V37l33-19 33 19z" opacity=".75"/><path d="M988 55v29h-59V55l29-17 30 17z"/><path d="M1139 26v48l-11 6-6 4h-50l-13-7-4-3V26l42-24 42 24z" opacity=".5"/><path d="M1011 42V22l-17-10-17 10v20l17 10 17-10zM858 24V9l-14-8-13 8v15l13 8 14-8z" opacity=".75"/><path d="M868 84h-39l17-10 2-1 3 1 17 10zM293 76v8h-39v-8l3-2 17-9 16 9 3 2zM359 76v8h-39v-8l3-2 17-9 16 9 3 2zM226 84h-38l17-10 2-1 2 1 17 10zM81 84H43l17-10 2-1 2 1 17 10zM940 84h-39l17-10 2-1 3 1 17 10zM1081 75v9h-39v-9l3-1 16-10 17 10 3 1zM1147 84h-38l17-10 2-1 2 1 17 10zM1642 84h-39l17-10 2-1 3 1 17 10zM1722 67v17h-38V67l19-11 19 11zM1794 77v7h-38v-7l5-3 14-8 8 5 6 3 5 3zM1044 26V14l-11-7-11 7v12l11 6 11-6z"/><path d="M1059 54v30h-59V54l30-17 25 15 4 2z"/><path d="M1041 77v7h-59v-7l5-3h1l12-8 11-6 24 14 6 3z"/><path d="M953 36V17L937 7l-17 10v19l17 9 16-9z" opacity=".5"/><path d="M1194 43v38l-5 3h-56l-5-3V43l11-6 22-13 33 19z"/><path d="M1264 61v23h-59V61l30-17 29 17zM1415 32v48l-5 3-1 1h-71l-3-1-4-3V32l42-24 37 21 5 3zM1288 48V28l-18-10-17 10v20l17 10 18-10z" opacity=".5"/><path d="M1320 32V20l-10-6-11 6v12l11 6 10-6zM1335 60v24h-58V60l29-17 25 15 4 2z"/><path d="M1317 83v1h-59v-1l6-3 10-6 3-2 11-6 13 8 16 9zM1222 83v1h-59v-1l6-3 10-6 3-2 11-6 13 8 16 9z"/><path d="M1230 42V23l-17-9-16 9v19l16 9 17-9z" opacity=".75"/><path d="M1691 43v38l-5 3h-55l-5-3V43l32-19 33 19z" opacity=".5"/><path d="M1614 61v23h-59V61l30-17 29 17zM1488 32v48l-4 3-2 1h-71l-1-1-6-3V32l6-3 36-21 42 24z"/><path d="M1532 48V28l17-10 17 10v20l-17 10-17-10z" opacity=".75"/><path d="M1499 32V20l11-6 11 6v12l-11 6-11-6z" opacity=".5"/><path d="M1400 18V7l10-5 9 5v11l-9 6-10-6z"/><path d="M1543 60v24h-59V60l4-2 25-15 30 17z" opacity=".75"/><path d="M1561 83v1h-59v-1l16-9 14-8 11 6 2 2 10 6 6 3z" opacity=".75"/><path d="M1590 42V23l16-9 17 9v19l-17 9-16-9z" opacity=".5"/><path d="M1772 41v38l-8 5h-50l-8-5V41l33-19 33 19z"/><path d="M1842 60v24h-59V60l30-17 29 17z" opacity=".5"/><path d="M1988 30v49l-10 5h-65l-5-3-4-2V30l42-24 42 24zM1866 46V26l-17-10-18 10v20l18 10 17-10z"/><path d="M1898 30V18l-10-6-11 6v12l11 7 10-7zM1997 17V6l-9-6-10 6v11l10 5 9-5z" opacity=".5"/><path d="M1913 58v26h-58V58l29-17 25 15 4 2z" opacity=".75"/><path d="M1895 81v3h-59v-3l6-3 7-4 6-3 11-7 16 10 13 7zM2000 75v9h-42l4-5 5-5 9-11 12 6 7 3 3 2 2 1z"/><path d="M1808 40V21l-17-9-16 9v19l16 9 17-9z" opacity=".75"/><path d="M1709 29V14l-13-7-12 7v15l12 7 13-7z"/><path d="M634 30v49l-4 2-5 3h-66l-4-2-5-3V30l5-3 37-21 42 24z" opacity=".75"/><path d="M3 74l-2-1H0v11h20L3 74z"/><path d="M760 60v24h-59V60l29-17 30 17z" opacity=".5"/></g></svg>');
  margin: 64px 0;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper {
    margin: 40px 0;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container {
  max-width: 1124px;
  margin: auto;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container {
    max-width: 500px;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 40px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp {
    padding: 16px;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 {
  font-size: 3.052rem;
  color: #74b5f1;
  display: inline-block;
  text-shadow: 1px 1px 0px #1b5fab;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 {
    font-size: 1.563rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 {
    font-size: 1.25rem;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 span {
  position: relative;
  z-index: 0;
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 span::before {
  z-index: -1;
  position: absolute;
  content: "";
  width: 100%;
  height: 16px;
  background-color: #c5dcf2;
  bottom: 0;
  left: 0;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 span::before {
    height: 12px;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp h2 span::before {
    height: 8px;
    bottom: -2px;
  }
}

main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp p {
  font-size: 1.563rem;
  font-weight: 700;
  color: #1b5fab;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp p {
    font-size: 1rem;
  }
}

@media screen and (max-width: 414px) {
  main .is-casestudy-contents .casestudy-thanks-wrapper .casestudy-thanks-container .contents-thanks-h2xp p {
    font-size: 0.8rem;
  }
}

main .is-casestudy-contents .last-contents-wrapper {
  margin-bottom: 64px;
}

@media screen and (max-width: 768px) {
  main .is-casestudy-contents .last-contents-wrapper {
    margin-bottom: 40px;
  }
}

main .casestudy-profile-section {
  display: flex;
  flex-direction: column;
  background-color: #f9f8fc;
  padding: 64px 40px;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section {
    padding: 40px 16px;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper {
  display: flex;
  flex-direction: column;
  max-width: 800px;
  margin: auto;
  gap: 24px;
}

@media screen and (max-width: 414px) {
  main .casestudy-profile-section .casestudy-profile-wrapper {
    gap: 16px;
    flex-direction: column;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .both-side-border {
  display: flex;
  justify-content: center;
  color: #1D4977;
  position: relative;
  z-index: 0;
}

main .casestudy-profile-section .casestudy-profile-wrapper .both-side-border::before {
  z-index: -1;
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  height: 1px;
  background-color: #1D4977;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .both-side-border::before {
    width: 75%;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .both-side-border span {
  padding: 0 24px;
  background-color: #f9f8fc;
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .both-side-border span {
    font-size: 1rem;
    padding: 0 16px;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container {
  background-color: #fff;
  display: flex;
  gap: 24px;
  padding: 40px;
  border: 1px solid #f2f1f8;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container {
    padding: 24px;
  }
}

@media screen and (max-width: 414px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container {
    flex-direction: column;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container .company-logo {
  max-width: 144px;
  margin: auto;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container .company-logo {
    max-width: 120px;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container dl {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container dl dt {
  font-size: 1.563rem;
  font-weight: 700;
  color: #20354D;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container dl dt {
    font-size: 1.25rem;
  }
}

main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container dl dd {
  font-size: 1rem;
}

@media screen and (max-width: 768px) {
  main .casestudy-profile-section .casestudy-profile-wrapper .casestudy-profile-container dl dd {
    font-size: 0.8rem;
  }
}

main .is-cta-section {
  position: relative;
  z-index: 0;
  padding-top: 40px;
}

main .is-cta-section::before {
  z-index: -1;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  bottom: 0;
  left: 0;
  background: url(/img/isCTAbg.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  main .is-cta-section::before {
    background: url(/img/isCTAbg.webp) no-repeat center/250%;
  }
}