.partner_view_more {
  border-radius: 5px;
  background-color: #DD5218;
  padding: 25px;
  max-width: 980px;
  margin-inline: auto;
}

.view_more_text {
  font-size: 1.5rem;
  color: #ffffff;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .view_more_text {
    font-size: 2rem;
  }
}

.view_more_button {
  position: relative;
  display: block;
  background-color: #161616;
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
  padding: 15px;
  text-align: center;
  border-radius: 3px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  max-width: 300px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .view_more_button {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}
.view_more_button::before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  background-color: #9F9F9F;
  clip-path: polygon(45% 0, 100% 50%, 45% 100%, 0% 100%, 50% 50%, 0% 0%);
  top: 50%;
  right: 15px;
  translate: 0 -50%;
  -webkit-transition: background-color 0.3s, translate 0.3s;
  transition: background-color 0.3s, translate 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .view_more_button:hover {
    background-color: #48B39F;
  }
  .view_more_button:hover .view_more_button_text {
    color: #ffffff;
  }
  .view_more_button:hover::before {
    background-color: #ffffff;
    translate: 3px -50%;
  }
}

.view_more_button_text {
  font-size: 1.6rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.07em;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.article_item {
  background-color: #ffffff;
  padding: 20px;
  max-width: 350px;
  width: 100%;
  border-radius: 20px;
}
.article_item a {
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .article_item a:hover .article_image img {
    scale: 1.05;
  }
  .article_item a:hover .article_title {
    color: #DD5218;
  }
}

.article_image {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  background-color: #a5a5a5;
  border-radius: 10px;
  overflow: hidden;
}
.article_image:has(img) {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.article_image img {
  width: 100%;
  height: auto;
  -webkit-transition: scale 0.3s;
  transition: scale 0.3s;
}

.article_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.article_title {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.category_list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 10px;
}

.category_item {
  font-size: 1rem;
  background-color: #48B39F;
  border-radius: 100vmax;
  padding: 3px 5px;
  color: #ffffff;
  line-height: 1;
  font-weight: 700;
  border: solid 1px #48B39F;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.case_category_item {
  font-size: 1rem;
  color: #48B39F;
  border: solid 1px #48B39F;
  padding: 2px 5px;
  line-height: 1;
  font-weight: 700;
}

.article_company_logo {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  width: 200px;
}
.article_company_logo img {
  width: auto;
}

.company_name {
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.article_date {
  font-size: 1.5rem;
  font-family: "Cabin";
  font-weight: 700;
  line-height: 1.4;
  color: #DD5218;
  -webkit-margin-before: 5px;
          margin-block-start: 5px;
}

.just_cta {
  position: relative;
  border: solid 3px #48B39F;
  border-radius: 5px;
  padding: 35px 15px 15px;
  max-width: 980px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .just_cta {
    padding: 40px 25px 20px;
  }
}
.just_cta + .partner_view_more {
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
}

.just_cta_head {
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  top: 0;
  left: 50%;
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #DD5218;
  border-radius: 100vmax;
  padding: 4px 30px;
  line-height: 1.5;
  translate: -50% -50%;
  text-wrap: nowrap;
}
@media screen and (min-width: 768px) {
  .just_cta_head {
    font-size: 1.8rem;
    padding: 4px 15px;
  }
}

.just_cta_catch {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .just_cta_catch {
    line-height: 1.7;
  }
}
.just_cta_catch strong {
  color: #DD5218;
  font-weight: 900;
}
@media screen and (min-width: 768px) {
  .just_cta_catch .sp {
    display: none;
  }
}

.just_cta_button_group {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .just_cta_button_group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.cta_button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  background-color: var(--button-color);
  border: solid 2px var(--button-color);
  padding-block: 40px 20px;
  border-radius: 5px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
@media screen and (min-width: 768px) {
  .cta_button {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding-block: 23px;
    max-width: 300px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.cta_button._form_quote {
  --button-color: #48B39F;
  --icon-width:30px;
  --icon-height:34px;
  --icon-path:url('../img/common/calc.svg');
  --icon-color:#006855;
}
.cta_button._contact {
  --button-color: #161616;
  --icon-width:32px;
  --icon-height:25px;
  --icon-path:url('../img/common/contact.svg');
  --icon-color:#A5A5A5;
}
@media (hover: hover) and (pointer: fine) {
  .cta_button:hover {
    background-color: #ffffff;
  }
  .cta_button:hover .cta_button_text {
    color: var(--button-color);
  }
}

.cta_icon {
  width: var(--icon-width);
  height: var(--icon-height);
  -webkit-mask-image: var(--icon-path);
          mask-image: var(--icon-path);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: var(--icon-color);
}

.cta_button_text {
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media screen and (min-width: 768px) {
  .cta_button_text {
    font-size: 2rem;
  }
}

.news_list {
  display: -ms-grid;
  display: grid;
  gap: 10px;
}

.news_item a {
  display: block;
  -webkit-padding-after: 10px;
          padding-block-end: 10px;
  border-bottom: solid 1px #e4e4e4;
}
@media (hover: hover) and (pointer: fine) {
  .news_item a:hover {
    color: #DD5218;
  }
}

.news_info {
  font-size: 1.5rem;
  font-family: "Cabin";
  font-weight: 700;
  color: #DD5218;
  line-height: 1.5;
  letter-spacing: 0.02em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.news_category {
  background-color: #48B39F;
  border-radius: 100vmax;
  font-size: 1.1rem;
  padding: 3px 10px;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
}

.news_title {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  -webkit-margin-before: 5px;
          margin-block-start: 5px;
}

@-webkit-keyframes scroll-hint-appear {
  0% {
    -webkit-transform: translateX(40px);
            transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
    opacity: 0;
  }
}

@keyframes scroll-hint-appear {
  0% {
    -webkit-transform: translateX(40px);
            transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-40px);
            transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 120px;
  height: auto;
  border-radius: 5px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
  translate: -50% -50%;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
  text-align: center;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  text-align: center;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  -webkit-animation: scroll-hint-appear 1.2s linear;
          animation: scroll-hint-appear 1.2s linear;
  -webkit-animation-iteration-count: 2;
          animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
          box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
  text-align: center;
}

.scroll-hint-shadow-wrap {
  position: relative;
}

.scroll-hint-shadow-wrap::after {
  content: "";
  width: 20px;
  height: 100%;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
  position: absolute;
  top: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
}

.scroll-hint-shadow-wrap::before {
  content: "";
  width: 20px;
  height: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable)::after,
.scroll-hint-shadow-wrap.is-right-scrollable::after {
  opacity: 1;
  visibility: visible;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-left-scrollable)::before,
.scroll-hint-shadow-wrap.is-left-scrollable::before {
  opacity: 1;
  visibility: visible;
}

.card_list_layout {
  -webkit-margin-before: 50px;
          margin-block-start: 50px;
  display: -ms-grid;
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fill, minmax(0, 335px));
  place-content: center;
  -webkit-padding-end: 10px;
          padding-inline-end: 10px;
  -webkit-padding-after: 10px;
          padding-block-end: 10px;
}
@media screen and (min-width: 768px) {
  .card_list_layout {
    overflow-x: auto;
    place-content: flex-start;
    -ms-grid-columns: (345px)[3];
    grid-template-columns: repeat(3, 345px);
  }
}
@media screen and (min-width: 1200px) {
  .card_list_layout {
    gap: 30px;
    overflow: revert !important;
    padding: 0;
  }
}
.card_list_layout .card_list_item {
  -webkit-margin-before: 0 !important;
          margin-block-start: 0 !important;
}

.card_list_item {
  container-type: inline-size;
  background-color: #ffffff;
  border-radius: 15px;
  padding: 30px 20px 40px;
  border: solid 1px #e4e4e4;
  -webkit-box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.15);
          box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.15);
}
.card_list_item + .card_list_item {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
}

@media screen and (min-width: 768px) {
  .label_list_row .card_list_item {
    padding: 30px 50px;
  }
}

@scope (.card_list_item) {
  .check_list li {
    padding: 0;
    -webkit-padding-start: 25px;
            padding-inline-start: 25px;
  }
  .check_list li::before {
    content: "";
    position: absolute;
    top: 0.6em;
    left: 0;
    translate: 0 -50%;
    width: 15px;
    height: 15px;
    border-radius: 3px;
    background-color: #e4e4e4;
  }
  .check_list li::after {
    content: "";
    position: absolute;
    top: 0.6em;
    left: 4px;
    width: 8px;
    height: 6px;
    translate: 0 -50%;
    background-image: url(../img/common/check.svg);
  }
}
.card_head {
  font-size: 1.5rem;
  font-weight: 900;
  color: #48B39F;
  text-align: center;
  line-height: 1.5;
  text-wrap: nowrap;
  letter-spacing: -0.05em;
}
@media screen and (min-width: 992px) {
  .card_head {
    font-size: clamp(1.2rem, 5cqi, 1.6rem);
  }
}
.card_head + .card_name {
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
}

.card_name {
  border-radius: 100vmax;
  border: solid 2px #DD5218;
  padding: 10px 20px;
  text-align: center;
  font-size: clamp(1.6rem, 6.4516129032cqi, 2rem);
  color: #DD5218;
  font-weight: 700;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.card_name .large_text {
  font-size: clamp(2.5rem, 9.6774193548cqi, 3rem);
  letter-spacing: 0.1em;
}

.card_item_body {
  -webkit-margin-before: 25px;
          margin-block-start: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px;
}
@container (min-width: 400px) {
  .card_item_body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.card_item_body .card_detail_list {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}

.card_detail_list {
  -webkit-margin-before: 50px;
          margin-block-start: 50px;
  display: -ms-grid;
  display: grid;
  gap: 20px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@container (min-width: 450px) {
  .card_detail_list._flex_item {
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
  }
}
.card_detail_list .check_list {
  gap: 10px;
}
.card_detail_list .check_list li {
  font-weight: 500;
  font-size: 1.5rem;
}

.detail_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.detail_row dt {
  font-size: 1.4rem;
  background-color: #E4E4E4;
  min-width: 80px;
  padding: 6px 10px;
  place-content: center;
  place-items: center;
  font-weight: 700;
  color: #9f9f9f;
  text-align: center;
  line-height: 1;
  border-radius: 3px;
}
.detail_row dd {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
}
.detail_row dd strong {
  color: #DD5218;
  font-size: clamp(2rem, 9.6774193548cqi, 3rem);
  font-family: "Cabin";
  font-weight: 500;
  letter-spacing: -0.06em;
}
.detail_row dd .number {
  font-size: clamp(2rem, 10.3225806452cqi, 3.2rem);
  font-family: "Cabin";
  font-weight: 500;
  letter-spacing: 0.05em;
}
.detail_row dd .emphasis {
  font-size: clamp(2rem, 10.3225806452cqi, 3.2rem);
  font-weight: 700;
  color: #DD5218;
}
.detail_row:nth-child(1 of .detail_row) dd {
  font-weight: 700;
  font-size: clamp(1.6rem, 5.7142857143cqi, 2rem);
  line-height: 1;
}
.detail_row:nth-child(2 of .detail_row) dd {
  font-weight: 700;
  font-size: clamp(1.6rem, 5.7142857143cqi, 2rem);
  line-height: 1;
}
.detail_row:nth-child(3 of .detail_row) dd {
  font-weight: 700;
}
.detail_row:nth-child(4 of .detail_row) {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.card_caution {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 500;
}

.detail_text {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
}

.card_detail_block {
  -webkit-margin-before: 50px;
          margin-block-start: 50px;
}

.card_detail_title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  background-color: #DD5218;
  padding: 10px;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .card_detail_title {
    font-size: 2.8rem;
  }
  .card_detail_title br {
    display: none;
  }
}

.card_detail_contents {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  background-color: #ffffff;
  padding: 20px 15px;
}
@media screen and (min-width: 768px) {
  .card_detail_contents {
    padding: 30px 15px;
  }
}
@media screen and (min-width: 992px) {
  .card_detail_contents {
    padding: 40px 100px;
  }
}

.card_detail_icon_list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 15px 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
@media screen and (min-width: 768px) {
  .card_detail_icon_list {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
  .card_detail_icon_list > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .card_detail_icon_list > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .card_detail_icon_list > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .card_detail_icon_list > *:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4;
  }
}

.card_detail_icon_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 13px;
  background-color: #f6f6f6;
  padding: 25px 10px 15px;
  border-radius: 5px;
  aspect-ratio: 1/1;
  height: auto;
  container-type: inline-size;
}
@media screen and (min-width: 992px) {
  .card_detail_icon_item {
    padding: 25px 15px 15px;
    gap: 20px;
  }
}

.card_detail_icon {
  text-align: center;
}
.card_detail_icon img {
  width: min(42.5cqi, 85px);
}

.card_detail_icon_title {
  min-height: 2lh;
  place-content: center;
  place-items: center;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
}

.card_plus_title {
  position: relative;
  -webkit-margin-before: 50px;
          margin-block-start: 50px;
  background-color: #48B39F;
  color: #ffffff;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  padding: 5px;
}
@media screen and (min-width: 768px) {
  .card_plus_title {
    font-size: 2.4rem;
  }
}
.card_plus_title::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 20px;
  background-image: url(../img/plan/semicircle.webp);
  background-size: cover;
  background-repeat: no-repeat;
  top: 0;
  left: 50%;
  translate: -50% -100%;
}

.card_catch_text {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .card_catch_text {
    text-align: center;
    font-size: 2rem;
  }
}
.card_catch_text strong {
  color: #DD5218;
}

.card_item_image {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 768px) {
  .card_item_image {
    max-width: 300px;
  }
}

.link_area {
  -webkit-margin-before: 40px;
          margin-block-start: 40px;
}
@media screen and (min-width: 992px) {
  .link_area {
    -webkit-margin-before: 55px;
            margin-block-start: 55px;
  }
}

.link_btn {
  position: relative;
  display: block;
  border-radius: 10px;
  background-color: var(--button-color, #161616);
  padding: 20px 40px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  text-align: center;
  max-width: 310px;
  margin-inline: auto;
}
.link_btn span {
  color: #ffffff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.07em;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.link_btn::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 40px;
  width: 8px;
  height: 8px;
  background-color: #ffffff;
  clip-path: polygon(45% 0, 100% 50%, 45% 100%, 0% 100%, 50% 50%, 0% 0%);
  translate: 0 -50%;
  -webkit-transition: translate 0.3s, background-color 0.3s;
  transition: translate 0.3s, background-color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .link_btn:hover {
    background-color: #48B39F;
  }
  .link_btn:hover span {
    color: #ffffff;
  }
  .link_btn:hover::before {
    background-color: #ffffff;
    translate: 3px -50%;
  }
}
.link_btn + .link_btn {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
}

.number_lists_contents .section_contents_text {
  font-weight: 700;
  letter-spacing: 0.05em;
}
.number_lists_contents .link_btn {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
}
@media screen and (min-width: 768px) {
  .number_lists_contents .link_btn {
    -webkit-margin-start: 0;
            margin-inline-start: 0;
  }
}

.number_contents_item {
  border-top: solid 1px #832802;
}
.number_contents_item + .number_contents_item {
  -webkit-margin-before: 80px;
          margin-block-start: 80px;
}

.contents_number {
  font-size: 3.2rem;
  color: var(--section-color, #161616);
  font-family: "Cabin";
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .contents_number {
    font-size: 2.4rem;
  }
}

.number_contents_head {
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
  color: #ffffff;
  font-size: 4rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .number_contents_head {
    font-size: 3.2rem;
  }
}
.number_contents_head + * {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
}

.number_contents_sublist {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  display: -ms-grid;
  display: grid;
  gap: 5px;
}

.sublist_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
}
.sublist_row dt {
  background-color: #B93600;
  border-radius: 3px;
  padding: 0 10px;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.8;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .sublist_row dt {
    font-size: 1.5rem;
  }
}
.sublist_row dd {
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .sublist_row dd {
    font-size: 1.6rem;
  }
}

.step_list {
  display: -ms-grid;
  display: grid;
  gap: 30px;
}

.step_item {
  position: relative;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 7px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
@media screen and (min-width: 992px) {
  .step_item {
    padding: 7px 20px;
  }
}
.step_item:has(+ .step_item)::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% calc(100% + 10px);
  width: 14px;
  height: 12px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #48B39F;
}

.step_number {
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #DD5218;
  width: 64px;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "Cabin";
  font-weight: 700;
  color: #ffffff;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.02em;
}
.step_number .step {
  font-size: 1.2rem;
}

.step_item_body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@scope (.step_item_body) {
  .check_list {
    gap: 5px;
    -webkit-margin-before: 5px;
            margin-block-start: 5px;
  }
  .check_list li {
    padding: 0;
    -webkit-padding-start: 25px;
            padding-inline-start: 25px;
    font-size: 1.3rem;
    font-weight: 500;
  }
  .check_list li::before {
    content: "";
    position: absolute;
    top: 0.6em;
    left: 0;
    translate: 0 -50%;
    width: 15px;
    height: 15px;
    border-radius: 3px;
    background-color: #e4e4e4;
  }
  .check_list li::after {
    content: "";
    position: absolute;
    top: 0.6em;
    left: 4px;
    width: 8px;
    height: 6px;
    translate: 0 -50%;
    background-image: url(../img/common/check.svg);
  }
}
.step_item_head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.8;
}

.step_item_text {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
}
.step_item_text strong {
  color: #DD5218;
}
.step_item_text small {
  font-size: 1rem;
}

.faq_item {
  border-bottom: solid 1px #9f9f9f;
  -webkit-padding-after: 10px;
          padding-block-end: 10px;
}
.faq_item + .faq_item {
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
}
.faq_item[open] .faq_title::after {
  rotate: 180deg;
}
.faq_item[open] .faq_container {
  -webkit-margin-after: 15px;
          margin-block-end: 15px;
}

.faq_title {
  position: relative;
  padding-inline: calc(1em + 10px);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.faq_title::before {
  content: "Q";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-family: "Cabin";
  font-weight: 700;
  color: #DD5218;
  line-height: 1.4;
  translate: 0 -0.2em;
}
.faq_title::after {
  content: "";
  position: absolute;
  top: 0.7em;
  right: 0;
  width: 8px;
  height: 8px;
  background-color: #B93600;
  clip-path: polygon(0 0, 50% 50%, 100% 0, 100% 50%, 50% 100%, 0 50%);
  translate: 0 -50%;
  -webkit-transition: rotate 0.3s;
  transition: rotate 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .faq_title:hover {
    cursor: pointer;
    color: #DD5218;
  }
}

.faq_container {
  position: relative;
  overflow: hidden;
  -webkit-padding-start: calc(1em + 10px);
          padding-inline-start: calc(1em + 10px);
}
.faq_container::before {
  content: "A";
  position: absolute;
  top: 0.2em;
  left: 0;
  font-size: 2.4rem;
  font-family: "Cabin";
  font-weight: 700;
  color: #48B39F;
  line-height: 1.4;
  translate: 0 0em;
}

.faq_text {
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.8;
}
.faq_text a {
  color: #DD5218;
  text-decoration: underline;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .faq_text a:hover {
    opacity: 0.7;
  }
}
.faq_text strong {
  color: #DD5218;
  font-weight: 900;
}

.scene_list {
  -webkit-margin-before: 30px;
          margin-block-start: 30px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 20px 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 30px 20px;
}
@media screen and (min-width: 768px) {
  .scene_list {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
  }
}

.scene_image {
  border-radius: 50px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .scene_image {
    border-radius: 20px;
  }
}

.scene_item_catch {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.scene_item_text {
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 500;
}

#car_model_list {
  display: -ms-grid;
  display: grid;
  gap: 70px 50px;
  -webkit-margin-before: 50px;
          margin-block-start: 50px;
}
@media screen and (min-width: 768px) {
  #car_model_list {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 992px) {
  #car_model_list {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

#car_model_slider {
  -webkit-margin-before: 40px;
          margin-block-start: 40px;
  width: calc(100% + 20px);
  -webkit-margin-end: calc(50% - 50vw);
          margin-inline-end: calc(50% - 50vw);
}
@media screen and (min-width: 425px) {
  #car_model_slider {
    width: calc(100% + 30px);
  }
}
@media screen and (min-width: 768px) {
  #car_model_slider {
    width: calc(100% + 40px);
  }
}
@media screen and (min-width: 992px) {
  #car_model_slider {
    width: calc(100% + 60px);
  }
}
@media screen and (min-width: 1200px) {
  #car_model_slider {
    width: calc((100vw - 1100px) / 2 + 669px);
  }
}

@scope (#car_model_slider) {
  .splide__arrows {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-inline: 20px;
    gap: 20px;
  }
  .splide__arrow {
    position: static;
    background-color: #ffffff;
    width: 25px;
    height: 25px;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    opacity: 1;
  }
  .splide__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 10px;
    height: 10px;
    background-color: #DD5218;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  .splide__arrow svg {
    display: none;
  }
  @media (hover: hover) and (pointer: fine) {
    .splide__arrow:hover {
      background-color: #DD5218;
    }
    .splide__arrow:hover::before {
      background-color: #ffffff;
    }
  }
  @media screen and (min-width: 992px) {
    .splide__arrow--next {
      right: -2em;
    }
  }
  .splide__arrow--next::before {
    clip-path: polygon(45% 0, 100% 50%, 45% 100%, 0% 100%, 50% 50%, 0% 0%);
  }
  @media screen and (min-width: 992px) {
    .splide__arrow--prev {
      left: -2em;
    }
  }
  .splide__arrow--prev::before {
    clip-path: polygon(100% 0, 50% 50%, 100% 100%, 45% 100%, 0% 50%, 45% 0);
  }
}
.car_card {
  container-type: inline-size;
}

.car_name {
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  word-break: keep-all;
  text-align: left;
}
.car_name br {
  display: none;
}

.car_subscribe {
  font-size: 1.2rem;
  font-weight: 700;
  font-weight: 700;
  line-height: 1.8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3px;
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
}
.car_subscribe .number {
  font-size: 2rem;
  font-weight: 500;
  font-family: "Cabin";
  color: #DD5218;
  letter-spacing: -0.05em;
  line-height: 1;
}
.car_subscribe .negotiable {
  font-size: 1.8rem;
  font-weight: 700;
  color: #DD5218;
}

.car_description {
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (min-width: 992px) {
  .car_description {
    font-size: 1.6rem;
  }
}

.car_feature_list {
  display: -ms-grid;
  display: grid;
  gap: 5px;
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
}
.car_feature_list li {
  position: relative;
  -webkit-padding-start: 25px;
          padding-inline-start: 25px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.car_feature_list li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0;
  translate: 0 -50%;
  width: 15px;
  height: 15px;
  border-radius: 3px;
  background-color: #e4e4e4;
}
.car_feature_list li::after {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 4px;
  width: 8px;
  height: 6px;
  translate: 0 -50%;
  background-image: url(../img/common/check.svg);
}

@scope (.car_card) {
  .link_btn {
    margin-inline: auto;
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
    padding-block: 15px;
  }
  .link_btn span {
    font-size: 1.8rem;
  }
}
.car_head_group {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-padding-after: 10px;
          padding-block-end: 10px;
  border-bottom: solid 1px #D9D9D9;
  -webkit-padding-start: 15px;
          padding-inline-start: 15px;
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
}
.car_head_group .car_name {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  line-height: 1.2;
}
.car_head_group .car_subscribe {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.car_head_group::before {
  content: "";
  position: absolute;
  width: 5px;
  height: 60%;
  background-color: #DD5218;
  left: 0;
  top: 55%;
  translate: 0 -50%;
}

.car_feature_white_list {
  display: -ms-grid;
  display: grid;
  gap: 5px;
  -webkit-margin-before: 15px;
          margin-block-start: 15px;
}
.car_feature_white_list li {
  background-color: #ffffff;
  padding: 8px 10px;
  position: relative;
  -webkit-padding-start: 30px;
          padding-inline-start: 30px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  border-radius: 5px;
}
.car_feature_white_list li::before {
  content: "";
  position: absolute;
  top: 1.1em;
  left: 10px;
  translate: 0 -50%;
  width: 15px;
  height: 15px;
  border-radius: 3px;
  background-color: #e4e4e4;
}
.car_feature_white_list li::after {
  content: "";
  position: absolute;
  top: 1.1em;
  left: 14px;
  width: 8px;
  height: 6px;
  translate: 0 -50%;
  background-image: url(../img/common/check.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

@scope (.section_contents_block) {
  .link_btn {
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
  }
  @media screen and (min-width: 992px) {
    .link_btn {
      -webkit-margin-start: 0;
              margin-inline-start: 0;
    }
  }
}
@media screen and (min-width: 768px) {
  .section_title_en {
    font-size: 9rem;
  }
}

#pickup {
  padding-inline: 20px;
}
@media screen and (min-width: 425px) {
  #pickup {
    padding-inline: 30px;
  }
}
@media screen and (min-width: 768px) {
  #pickup {
    padding-inline: 40px;
  }
}
@media screen and (min-width: 992px) {
  #pickup {
    padding-inline: 60px;
  }
}
#pickup {
  padding-block: 115px 0;
}

.pickup_slider_block {
  -webkit-margin-before: 100px;
          margin-block-start: 100px;
}

.pickup_slider_title {
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  font-family: "Cabin";
  color: #DD5218;
  line-height: 1;
}

#pickup_slider {
  -webkit-margin-before: 20px;
          margin-block-start: 20px;
}

.pickup_link {
  display: block;
  overflow: hidden;
  border-radius: 10px;
}
@media (hover: hover) and (pointer: fine) {
  .pickup_link:hover img {
    scale: 1.1;
  }
}
.pickup_link img {
  -webkit-transition: scale 0.3s;
  transition: scale 0.3s;
}

@scope (#pickup_slider) {
  .splide__arrow {
    background-color: #ffffff;
    width: 25px;
    height: 25px;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    opacity: 1;
  }
  .splide__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 10px;
    height: 10px;
    background-color: #DD5218;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  .splide__arrow svg {
    display: none;
  }
  @media (hover: hover) and (pointer: fine) {
    .splide__arrow:hover {
      background-color: #DD5218;
    }
    .splide__arrow:hover::before {
      background-color: #ffffff;
    }
  }
  @media screen and (min-width: 992px) {
    .splide__arrow--next {
      right: -2em;
    }
  }
  .splide__arrow--next::before {
    translate: 10% 0;
    clip-path: polygon(45% 0, 100% 50%, 45% 100%, 0% 100%, 50% 50%, 0% 0%);
  }
  @media screen and (min-width: 992px) {
    .splide__arrow--prev {
      left: -2em;
    }
  }
  .splide__arrow--prev::before {
    translate: -10% 0;
    clip-path: polygon(100% 0, 50% 50%, 100% 100%, 45% 100%, 0% 50%, 45% 0);
  }
  .splide__pagination {
    position: static;
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
    background-color: #ffffff;
    border-radius: 100vmax;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    padding: 5px 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-inline: auto;
    line-height: 1;
  }
  .presentation {
    line-height: 1;
  }
  .splide__pagination__page {
    background-color: #cdcdcd;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    display: block;
  }
  .splide__pagination__page.is-active {
    background-color: #DD5218;
  }
}
#scene .just_cta {
  -webkit-margin-before: 100px;
          margin-block-start: 100px;
}
@media screen and (min-width: 768px) {
  #scene .just_cta {
    -webkit-margin-before: 140px;
            margin-block-start: 140px;
  }
}
@media screen and (min-width: 992px) {
  #scene .just_cta {
    -webkit-margin-before: 180px;
            margin-block-start: 180px;
  }
}

@media screen and (min-width: 992px) {
  .article_slider {
    width: calc(100% + 60px);
    -webkit-margin-end: calc(50% - 50vw);
            margin-inline-end: calc(50% - 50vw);
  }
}
@media screen and (min-width: 1200px) {
  .article_slider {
    width: calc((100vw - 1100px) / 2 + 669px);
  }
}

@scope (.article_slider) {
  .splide__arrows {
    opacity: 1;
  }
  @media screen and (min-width: 992px) {
    .splide__arrows {
      position: static;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      max-width: 670px;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      gap: 40px;
      -webkit-margin-end: 60px;
              margin-inline-end: 60px;
    }
  }
  @media screen and (min-width: 1200px) {
    .splide__arrows {
      -webkit-margin-end: 0;
              margin-inline-end: 0;
    }
  }
  .splide__arrow {
    background-color: #161616;
    width: 25px;
    height: 25px;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    border: solid 1px #161616;
    opacity: 1;
  }
  @media screen and (min-width: 992px) {
    .splide__arrow {
      position: static;
    }
  }
  .splide__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 10px;
    height: 10px;
    background-color: #ffffff;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  .splide__arrow svg {
    display: none;
  }
  @media (hover: hover) and (pointer: fine) {
    .splide__arrow:hover {
      background-color: #ffffff;
    }
    .splide__arrow:hover::before {
      background-color: #161616;
    }
  }
  .splide__arrow--next {
    right: -1em;
  }
  .splide__arrow--next::before {
    clip-path: polygon(45% 0, 100% 50%, 45% 100%, 0% 100%, 50% 50%, 0% 0%);
  }
  .splide__arrow--prev {
    left: -1em;
  }
  .splide__arrow--prev::before {
    clip-path: polygon(100% 0, 50% 50%, 100% 100%, 45% 100%, 0% 50%, 45% 0);
  }
}
/*# sourceMappingURL=top.css.map */