@charset "UTF-8";
/*------------------------------------------
  Base Setting
------------------------------------------*/
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  background: #fff;
  color: #04064A;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

@media only screen and (max-width: 768px) {
  body {
    font-size: 10px;
  }
}
a {
  color: #04064A;
  text-decoration: none;
}

@media only screen and (min-width: 769px) {
  .h-opacity {
    transition: opacity 0.4s;
  }
  .h-opacity:hover {
    opacity: 0.7;
  }
}
.is--tab {
  display: none;
}

.is--sp {
  display: none;
}

@media only screen and (max-width: 1024px) {
  .is--tab {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .is--pc {
    display: none;
  }
  .is--sp {
    display: block;
  }
}
/*------------------------------------------
  component
------------------------------------------*/
/* ========== animation ========== */
.fadeIn {
  opacity: 0;
}
.fadeIn.js-scr-active {
  opacity: 1;
  transition: 1.5s cubic-bezier(0.4, 0.4, 0, 1);
}

@keyframes msg-show1 {
  20%, 100% {
    opacity: 1;
  }
}
@keyframes msg-show2 {
  40%, 100% {
    opacity: 1;
  }
}
@keyframes msg-show3 {
  60%, 100% {
    opacity: 1;
  }
}
/*------------------------------------------
  layout
------------------------------------------*/
.l-wrapper {
  opacity: 0;
}
.l-wrapper.is--active {
  opacity: 1;
  transition: 1.5s cubic-bezier(0.4, 0.4, 0, 1);
}

.l-main {
  overflow: hidden;
}

.l-flex {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
}

.l-inner {
  position: relative;
  margin: auto;
  padding: 0 40px;
  max-width: 1354px;
}

@media only screen and (max-width: 1024px) {
  .l-inner {
    padding: 0 20px;
  }
}
/*------------------------------------------
  header
------------------------------------------*/
.l-header {
  position: sticky;
  top: 0;
  left: 0;
  background: #fff;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.16);
  z-index: 100;
}
.l-header__inner {
  padding-left: clamp(24px, 3.3674963397vw, 46px);
  padding-right: 24px;
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.l-header .header-logo {
  width: 318px;
}
.l-header .header-logo img {
  width: 100%;
}
.l-header .header-nav {
  margin-left: auto;
  display: flex;
  gap: 24px;
}
.l-header .header-nav a {
  display: block;
  font-size: 14px;
  transform: rotate(0.04deg);
}
.l-header .header-link {
  display: flex;
  gap: 8px;
}
.l-header .header-link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  width: 123px;
  height: 48px;
  font-size: 14px;
  letter-spacing: 0.02em;
  border-radius: 26px;
}
.l-header .header-link a:before, .l-header .header-link a:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.l-header .header-link a:after {
  opacity: 0;
  transition: 0.4s;
}
.l-header .header-link a span {
  position: relative;
  z-index: 1;
  transform: rotate(0.04deg);
}
.l-header .header-link .--request {
  color: #355DBF;
  border: 1px solid #355DBF;
}
.l-header .header-link .--request:before {
  background: #fff;
}
.l-header .header-link .--request:after {
  background: linear-gradient(45deg, #d85ca9 0%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
}
.l-header .header-link .--contact {
  color: #fff;
}
.l-header .header-link .--contact:before {
  background: linear-gradient(45deg, #d85ca9 0%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
}
.l-header .header-link .--contact:after {
  background: linear-gradient(45deg, #f291eb 0%, #b189fb 30%, #909dfc 60%, #9bcdfc 100%);
}

@media only screen and (min-width: 769px) {
  .l-header .header-link a:hover:after {
    opacity: 1;
  }
  .l-header .header-link .--request {
    transition: color 0.4s;
  }
  .l-header .header-link .--request:hover {
    color: #fff;
    border: none;
  }
}
@media only screen and (max-width: 1024px) {
  .l-header .header-nav {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .l-header__inner {
    padding-left: 16px;
    padding-right: 12px;
    height: 60px;
  }
  .l-header .header-logo {
    width: 230px;
  }
  .l-header .header-link {
    display: flex;
    gap: 8px;
  }
  .l-header .header-link a {
    font-size: 12px;
    width: 100px;
    height: 40px;
  }
  .l-header .header-link .--request {
    display: none;
  }
}
/*------------------------------------------
  footer
------------------------------------------*/
.l-footer {
  background: #2F2F2F;
  padding: 60px 5.55%;
}
.l-footer__inner {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 24px;
}
.l-footer .footer-logo {
  width: 300px;
  aspect-ratio: 252/34;
  -webkit-mask: url(/assets/img/common/logo_parco.png) no-repeat center/contain;
  mask: url(/assets/img/common/logo_parco.png) no-repeat center/contain;
  background: #fff;
  color: transparent;
  transform: rotate(0.04deg);
}
.l-footer .footer-list {
  text-align: right;
}
.l-footer .footer-list li {
  margin-bottom: 20px;
}
.l-footer .footer-list li:last-child {
  margin-bottom: 0;
}
.l-footer .footer-list a {
  color: #fff;
  display: inline-block;
  padding: 0 0 5px;
  border-bottom: 1px solid #fff;
  line-height: 1.8;
  font-size: 13px;
  transform: rotate(0.04deg);
}
.l-footer .footer-copyright {
  font-family: "Prompt", sans-serif;
  font-weight: 400;
  color: #888;
  line-height: 1;
  font-size: 11px;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .l-footer {
    padding: 40px 16.66% 20px;
  }
  .l-footer__inner {
    display: block;
  }
  .l-footer .footer-logo {
    width: auto;
  }
  .l-footer .footer-list {
    text-align: left;
    margin-top: 30px;
  }
  .l-footer .footer-list a {
    font-size: 11px;
  }
  .l-footer .footer-copyright {
    text-align: center;
    margin-top: 43px;
    font-size: 10px;
  }
}
/*------------------------------------------
  contents
------------------------------------------*/
/* ========== mv ========== */
.mv {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
.mv img {
  width: 100%;
}
.mv-breadcrumbs {
  position: absolute;
  width: 100%;
  left: 0;
  top: 20px;
  padding: 0 clamp(24px, 3.3674963397vw, 46px);
  z-index: 1;
}
.mv-breadcrumbs__list {
  display: flex;
  gap: 1em;
  font-size: 12px;
  font-weight: 400;
  color: #231815;
}
.mv-breadcrumbs__list li {
  padding-right: 2em;
  position: relative;
  transform: rotate(0.04deg);
}
.mv-breadcrumbs__list li:after {
  content: "＞";
  position: absolute;
  top: 0;
  right: 0;
}
.mv-breadcrumbs__list li:last-child {
  padding-right: 0;
}
.mv-breadcrumbs__list li:last-child:after {
  content: none;
}
.mv-breadcrumbs__list a {
  color: #231815;
  text-decoration: underline;
}
.mv-contents {
  position: relative;
  text-align: center;
  background-image: url(../images/mv-bg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.mv-contents__inner {
  width: 93.2650073206vw;
  max-width: 1600px;
  margin: auto;
  padding: clamp(60px, 5.710102489vw, 94px) 0 clamp(79px, 11.5666178624vw, 190px);
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  justify-content: center;
  background-image: url(../images/mv-illust.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: clamp(618px, 90.4831625183vw, 1484px);
}
.mv-badge {
  width: clamp(75.5px, 11.0541727672vw, 181px);
  position: absolute;
  top: clamp(25px, 3.6603221083vw, 60px);
  right: 50%;
  margin-right: clamp(-763px, -46.5592972182vw, -318px);
}
.mv-title {
  width: 100%;
  margin-bottom: clamp(21px, 3.074670571vw, 50px);
}
.mv-title__sub {
  font-size: clamp(12px, 1.756954612vw, 29px);
  margin-bottom: 0.8em;
  transform: rotate(0.04deg);
}
.mv-title__main {
  line-height: 1.1;
}
.mv-title__main sup {
  display: inline-block;
  vertical-align: top;
  color: #355DBF;
  font-size: clamp(10px, 1.4641288433vw, 24px);
}
.mv-title__main-text {
  font-size: clamp(30px, 4.39238653vw, 72px);
  font-weight: 700;
  background: linear-gradient(45deg, #d85ca9 10%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}
.mv-logo {
  text-align: center;
  position: relative;
}
.mv-logo:before {
  content: "";
  width: clamp(243px, 35.5783308931vw, 584px);
  height: clamp(110px, 16.1786237189vw, 265px);
  position: absolute;
  left: 50%;
  bottom: clamp(-192px, -11.7130307467vw, -80px);
  transform: translateX(-50%);
  background-image: url(../images/mv-logo-bg.png);
  background-repeat: no-repeat;
  background-size: 100%;
}
.mv-logo__image {
  position: relative;
  margin-bottom: clamp(18px, 2.635431918vw, 43px);
}
.mv-logo__image img {
  width: clamp(122.5px, 17.9355783309vw, 294px);
}
.mv-logo__catch {
  position: relative;
}
.mv-logo__catch img {
  width: clamp(109px, 15.9590043924vw, 262px);
}
.mv-chat {
  width: clamp(170px, 24.8901903367vw, 408px);
  padding-top: clamp(14px, 2.0497803807vw, 34px);
}
.mv-chat__label {
  text-align: center;
  color: #fff;
  font-weight: 400;
  font-size: clamp(10px, 1.4641288433vw, 24px);
  line-height: 1.65;
  border-radius: clamp(12px, 1.756954612vw, 29px);
  margin-bottom: 2em;
  transform: rotate(0.04deg);
}
.mv-chat.--pink {
  margin-right: clamp(49px, 7.1742313324vw, 118px);
}
.mv-chat.--pink .mv-chat__label {
  background: #D85CA8;
}
.mv-chat.--pink .mv-chat__list {
  text-align: right;
}
.mv-chat.--pink .mv-chat__list img {
  width: clamp(101px, 14.7877013177vw, 242px);
}
.mv-chat.--pink .mv-chat__list li:nth-child(1) {
  margin-bottom: clamp(2.5px, 0.3660322108vw, 6px);
  transform: translateX(clamp(4px, 0.5856515373vw, 10px));
}
.mv-chat.--pink .mv-chat__list li:nth-child(2) {
  text-align: left;
  margin-bottom: clamp(6px, 0.878477306vw, 15px);
}
.mv-chat.--pink .mv-chat__list li:nth-child(3) {
  transform: translateX(clamp(4px, 0.5856515373vw, 10px));
}
.mv-chat.--blue {
  margin-left: clamp(49px, 7.1742313324vw, 118px);
}
.mv-chat.--blue .mv-chat__label {
  background: #355DBF;
}
.mv-chat.--blue .mv-chat__list {
  text-align: left;
}
.mv-chat.--blue .mv-chat__list img {
  width: auto;
  height: clamp(40px, 5.8565153734vw, 96px);
}
.mv-chat.--blue .mv-chat__list li:nth-child(1) {
  margin-bottom: clamp(4px, 0.5856515373vw, 10px);
  transform: translateX(clamp(-10px, -0.5856515373vw, -4px));
}
.mv-chat.--blue .mv-chat__list li:nth-child(2) {
  text-align: right;
  margin-bottom: clamp(10px, 1.4641288433vw, 24px);
}
.mv-chat.--blue .mv-chat__list li:nth-child(3) {
  transform: translateX(clamp(-10px, -0.5856515373vw, -4px));
}
.mv-note {
  text-align: center;
  font-weight: 400;
  margin-top: 0.8em;
  transform: rotate(0.04deg);
}

.mv-chat__list li {
  opacity: 0;
}
.mv.is--active .mv-chat__list li {
  opacity: 1;
}
.mv.is--active .mv-chat__list li:nth-child(1) {
  transition: 1s 1s;
}
.mv.is--active .mv-chat__list li:nth-child(2) {
  transition: 1s 1.5s;
}
.mv.is--active .mv-chat__list li:nth-child(3) {
  transition: 1s 2s;
}

@media only screen and (max-width: 768px) {
  .mv {
    margin-bottom: 0;
  }
  .mv-breadcrumbs {
    padding: 0 20px;
  }
  .mv-breadcrumbs__list {
    font-size: 10px;
  }
  .mv-contents {
    padding-top: 38px;
    background-image: url(../images/mv-bg-sp.png);
    background-position: center bottom;
    background-size: 100%;
  }
  .mv-contents__inner {
    width: 100%;
    padding: 25.3333333333vw 0 15.4666666667vw;
    background: none;
  }
  .mv-badge {
    width: 24vw;
    top: 38px;
    right: 2.4vw;
    margin-right: 0;
  }
  .mv-title {
    margin-bottom: 5.8666666667vw;
  }
  .mv-title__sub {
    font-size: 4.5333333333vw;
  }
  .mv-title__main {
    display: inline-block;
    position: relative;
  }
  .mv-title__main sup {
    font-size: 5.3333333333vw;
    position: absolute;
    top: 0.2em;
    right: 50%;
    margin-right: -37.3333333333vw;
  }
  .mv-title__main-text {
    font-size: 9.8666666667vw;
    background: none;
    color: currentColor;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-text-fill-color: currentcolor;
    text-fill-color: currentcolor;
    display: block;
  }
  .mv-title__main-text .sp-grad {
    display: inline-block;
    background: linear-gradient(135deg, #d85ca9 10%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
  }
  .mv-logo:before {
    width: 67.2vw;
    height: 30.4vw;
    bottom: -21.3333333333vw;
  }
  .mv-logo__image {
    margin-bottom: 5.3333333333vw;
  }
  .mv-logo__image img {
    width: 43.7333333333vw;
  }
  .mv-logo__catch img {
    width: 43.7333333333vw;
  }
  .mv-chat {
    display: none;
  }
  .mv-note {
    font-size: 16px;
    margin-top: 22px;
    padding: 0 20px;
  }
}
/* ========== section ========== */
.sec {
  position: relative;
  padding: 120px 0;
}
.sec__inner {
  position: relative;
}
.sec__head {
  text-align: center;
  margin-bottom: 50px;
}
.sec__title {
  font-weight: 700;
  font-size: 30px;
  line-height: 2;
  transform: rotate(0.04deg);
}
.sec__lead {
  margin-top: 20px;
  font-size: 18px;
  line-height: 1.75;
  transform: rotate(0.04deg);
}
.sec__contents {
  position: relative;
}

@media only screen and (max-width: 768px) {
  .sec {
    padding: 80px 0;
  }
  .sec__head {
    margin-bottom: 16px;
  }
  .sec__title {
    font-size: 24px;
    line-height: 1.5;
  }
  .sec__lead {
    margin-top: 16px;
    font-size: 14px;
    line-height: 1.5;
  }
}
/* ========== 4つの特徴 ========== */
.sec--about {
  padding-top: 80px;
  background-image: url(../images/about-bg.png);
  background-repeat: no-repeat;
  background-position: right top 170px;
  background-size: 100%;
}
.sec--about .sec__contents {
  display: flex;
  justify-content: space-between;
}
.sec--about .about-features {
  width: 64%;
  max-width: 670px;
}
.sec--about .about-features__item {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  align-items: center;
  border: 1px solid #D1D1D1;
  border-radius: 12px;
  margin-bottom: 8px;
  background: #fff;
  gap: 0 clamp(16px, 2.3426061493vw, 32px);
  padding: 21px clamp(20px, 2.9282576867vw, 40px) 11px clamp(16px, 2.3426061493vw, 32px);
}
.sec--about .about-features__item:nth-child(2n) {
  background: #F9F9FE;
}
.sec--about .about-features__item:last-child {
  margin-bottom: 0;
}
.sec--about .about-features__item .item-num {
  font-size: clamp(36px, 3.2942898975vw, 45px);
  font-weight: 400;
  color: #726BF0;
}
.sec--about .about-features__item .item-icon {
  width: clamp(100px, 9.1508052709vw, 125px);
}
.sec--about .about-features__item .item-contents {
  flex: 1;
}
.sec--about .about-features__item .item-title {
  font-size: 18px;
  font-weight: 700;
  transform: rotate(0.04deg);
}
.sec--about .about-features__item .item-title sup {
  font-size: 89%;
  font-weight: 400;
}
.sec--about .about-features__item .item-text {
  font-weight: 400;
  line-height: 1.6875;
  margin-top: 0.5em;
  transform: rotate(0.04deg);
}
.sec--about .about-features__note {
  margin-top: 16px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  transform: rotate(0.04deg);
}
.sec--about .about-features__note a {
  text-decoration: underline;
  color: #355DBF;
}
.sec--about .about-visual {
  width: 36%;
  padding: 74px clamp(28px, 4.0995607613vw, 56px) 0;
}
.sec--about .about-chat {
  background: #fff;
  border-radius: clamp(15px, 2.196193265vw, 30px);
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.16);
  padding-bottom: clamp(8px, 1.1713030747vw, 16px);
  overflow: hidden;
}
.sec--about .about-chat img {
  width: 100%;
}
.sec--about .about-chat__list {
  padding: clamp(8px, 1.1713030747vw, 16px) clamp(12px, 1.756954612vw, 24px) clamp(10px, 1.4641288433vw, 20px) clamp(9px, 1.317715959vw, 18px);
}
.sec--about .about-chat__list li:nth-child(1) {
  width: clamp(147px, 21.5226939971vw, 294px);
  margin-bottom: clamp(10px, 1.4641288433vw, 20px);
}
.sec--about .about-chat__list li:nth-child(2) {
  width: clamp(80px, 11.7130307467vw, 160px);
  margin-left: auto;
  margin-bottom: clamp(8px, 1.1713030747vw, 16px);
}
.sec--about .about-chat__list li:nth-child(3) {
  width: clamp(147px, 21.5226939971vw, 294px);
}
.sec--about .about-chat__foot {
  padding: 0 clamp(13px, 1.9033674963vw, 26px);
}
.sec--about .about-chat__foot img {
  border: 1px solid #D3D3D3;
  border-radius: clamp(11px, 1.6105417277vw, 22px);
}

.sec--about .about-chat__list li {
  opacity: 0;
}
.sec--about .about-chat__list li:nth-child(1) {
  animation: msg-show1 5s infinite step-end;
}
.sec--about .about-chat__list li:nth-child(2) {
  animation: msg-show2 5s infinite step-end;
}
.sec--about .about-chat__list li:nth-child(3) {
  animation: msg-show3 5s infinite step-end;
}

@media only screen and (max-width: 768px) {
  .sec--about {
    background-position: right top 50px;
    background-size: 238.4vw;
  }
  .sec--about .sec__head {
    margin-bottom: 40px;
  }
  .sec--about .sec__contents {
    display: block;
  }
  .sec--about .about-features {
    width: 100%;
    max-width: 100%;
  }
  .sec--about .about-features__item {
    display: block;
    padding: 16px 20px 24px;
    position: relative;
  }
  .sec--about .about-features__item .item-num {
    position: absolute;
    top: 12px;
    left: 20px;
    font-size: 32px;
  }
  .sec--about .about-features__item .item-icon {
    width: 100%;
    text-align: center;
    margin-bottom: 14px;
  }
  .sec--about .about-features__item .item-icon img {
    width: 27.7333333333vw;
  }
  .sec--about .about-features__item .item-title {
    font-size: 16px;
  }
  .sec--about .about-features__item .item-title sup {
    font-size: 13px;
  }
  .sec--about .about-features__item .item-text {
    font-size: 13px;
  }
  .sec--about .about-features__note {
    font-size: 11px;
  }
  .sec--about .about-visual {
    width: 100%;
    padding: 0 12vw 0 16vw;
    margin-bottom: 100px;
  }
  .sec--about .about-chat {
    border-radius: 8vw;
    padding-bottom: 2.9333333333vw;
  }
  .sec--about .about-chat__list {
    padding: 2.9333333333vw 4.5333333333vw 3.4666666667vw 3.2vw;
  }
  .sec--about .about-chat__list li:nth-child(1) {
    width: 51.2vw;
    margin-bottom: 3.7333333333vw;
  }
  .sec--about .about-chat__list li:nth-child(2) {
    width: 28vw;
    margin-bottom: 2.6666666667vw;
  }
  .sec--about .about-chat__list li:nth-child(3) {
    width: 51.2vw;
  }
  .sec--about .about-chat__foot {
    padding: 0 4.8vw;
  }
  .sec--about .about-chat__foot img {
    border-radius: 5.8666666667vw;
  }
}
/* ========== こんなお悩みはありませんか？ ========== */
.sec--worries {
  padding: 104px 0;
  background: #F8F8FA;
}
.sec--worries .sec__contents {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6%;
}
.sec--worries .worries-item {
  width: 47%;
  max-width: 544px;
}
.sec--worries .worries-item__title {
  text-align: center;
  width: 92%;
  margin: 0 auto 30px;
  font-size: clamp(18px, 1.756954612vw, 20px);
  color: #fff;
  font-weight: 400;
  border-radius: 23px;
  padding: 2px 0.5em;
  transform: rotate(0.04deg);
}
.sec--worries .worries-item__title.--pink {
  background: #D85CA8;
}
.sec--worries .worries-item__title.--blue {
  background: #355DBF;
}
.sec--worries .worries-item__image {
  text-align: center;
}
.sec--worries .worries-item__image img {
  width: 66%;
}
.sec--worries .worries-item__text {
  padding: 32px clamp(24px, 3.513909224vw, 48px);
  border-radius: 11px;
  background: #F2F2F2;
  font-weight: 700;
  line-height: 2;
}
.sec--worries .worries-item__text li {
  padding-left: 1em;
  text-indent: -1em;
  transform: rotate(0.04deg);
}

@media only screen and (max-width: 768px) {
  .sec--worries {
    padding: 64px 0;
  }
  .sec--worries .sec__head {
    margin-bottom: 24px;
  }
  .sec--worries .sec__title {
    white-space: nowrap;
  }
  .sec--worries .sec__contents {
    gap: 16px;
  }
  .sec--worries .worries-item {
    width: 100%;
    max-width: 100%;
  }
  .sec--worries .worries-item__title {
    width: 100%;
    font-size: 16px;
    padding: 5px 0.5em;
  }
  .sec--worries .worries-item__image img {
    width: 79%;
  }
  .sec--worries .worries-item__text {
    padding: 16px 12px;
  }
  .sec--worries .worries-item__text li {
    font-size: 11px;
  }
}
/* ========== PICTONA AIアシスタントが解決！ ========== */
.sec--solution {
  background: linear-gradient(45deg, #d85ca9 0%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
}
.sec--solution .sec__title {
  color: #fff;
}
.sec--solution .solution-list {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  gap: 41px;
}
.sec--solution .solution-item {
  flex: 1;
  position: relative;
  color: #fff;
}
.sec--solution .solution-item:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #D6D6D6;
  position: absolute;
  top: 0;
  left: 100%;
  margin-left: 20px;
}
.sec--solution .solution-item:last-child:after {
  content: none;
}
.sec--solution .solution-item__image {
  text-align: center;
  margin-bottom: 26px;
}
.sec--solution .solution-item__image img {
  width: 74%;
}
.sec--solution .solution-item__title {
  font-size: clamp(16px, 1.317715959vw, 18px);
  font-weight: 700;
  line-height: 1.36;
  margin-bottom: 1em;
  text-align: center;
  transform: rotate(0.04deg);
}
.sec--solution .solution-item__text {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.75;
  padding-bottom: 1em;
  transform: rotate(0.04deg);
}

@media only screen and (max-width: 1024px) {
  .sec--solution .solution-list {
    justify-content: center;
    gap: 26px 5%;
  }
  .sec--solution .solution-item {
    flex: none;
    width: 30%;
  }
  .sec--solution .solution-item:after {
    margin-left: 8%;
  }
  .sec--solution .solution-item:nth-child(3n):after {
    content: none;
  }
}
@media only screen and (max-width: 768px) {
  .sec--solution {
    background: linear-gradient(45deg, #d85ca9 0%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
  }
  .sec--solution .solution-list {
    padding: 0 30px;
    gap: 26px;
  }
  .sec--solution .solution-item {
    flex: none;
    width: 100%;
    padding: 0 26px 26px;
    border-bottom: 1px solid #D6D6D6;
  }
  .sec--solution .solution-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .sec--solution .solution-item:after {
    content: none;
  }
  .sec--solution .solution-item__image {
    margin-bottom: 30px;
  }
  .sec--solution .solution-item__title {
    font-size: 18px;
  }
  .sec--solution .solution-item__text {
    padding-bottom: 0;
  }
}
/* ========== 主な機能 ========== */
.sec--function .function-item {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  border-radius: 16px;
  margin-bottom: 40px;
}
.sec--function .function-item:last-child {
  margin-bottom: 0;
}
.sec--function .function-item__image {
  flex: 1;
}
.sec--function .function-item__text {
  width: 50%;
  max-width: 470px;
  padding-top: 80px;
}
.sec--function .function-item__label {
  font-size: clamp(16px, 1.4641288433vw, 20px);
  text-align: center;
  font-weight: 400;
  width: clamp(295px, 26.9399707174vw, 368px);
  border-radius: 23px;
  color: #fff;
  padding: 2px 0.5em;
  margin-bottom: 26px;
  transform: rotate(0.04deg);
}
.sec--function .function-item__title {
  font-weight: 700;
  font-size: clamp(28px, 2.5622254758vw, 35px);
  line-height: 1.3;
  margin-bottom: 30px;
  transform: rotate(0.04deg);
}
.sec--function .function-item__title span {
  display: block;
  font-size: clamp(21px, 1.9033674963vw, 26px);
}
.sec--function .function-item__list li {
  font-size: clamp(16px, 1.4641288433vw, 20px);
  font-weight: 700;
  margin-bottom: 30px;
  padding-left: 1.8em;
  background-repeat: no-repeat;
  background-position: left top 3px;
  background-size: 1.15em;
  transform: rotate(0.04deg);
}
.sec--function .function-item__list li:last-child {
  margin-bottom: 0;
}
.sec--function .function-item__list li span {
  font-size: 80%;
  display: block;
}
.sec--function .function-item.--pink {
  background: #FEFBFC;
  border: 1px solid #FAE0EC;
  padding-left: clamp(40px, 5.8565153734vw, 80px);
  padding-right: clamp(25px, 3.6603221083vw, 50px);
  padding-bottom: 20px;
}
.sec--function .function-item.--pink .function-item__image {
  padding-top: 25px;
}
.sec--function .function-item.--pink .function-item__text {
  padding-bottom: 60px;
}
.sec--function .function-item.--pink .function-item__label {
  background: #D85CA8;
}
.sec--function .function-item.--pink .function-item__list li {
  background-image: url(../images/icon-check-pk.svg);
}
.sec--function .function-item.--blue {
  background: #F9FAFE;
  border: 1px solid #D6DDF4;
  padding-left: clamp(28px, 4.0995607613vw, 56px);
  padding-right: clamp(60px, 8.78477306vw, 120px);
  padding-bottom: 60px;
  gap: clamp(50px, 7.3206442167vw, 100px);
}
.sec--function .function-item.--blue .function-item__image {
  padding-top: 90px;
}
.sec--function .function-item.--blue .function-item__label {
  background: #355DBF;
}
.sec--function .function-item.--blue .function-item__list li {
  background-image: url(../images/icon-check-bl.svg);
}

@media only screen and (max-width: 768px) {
  .sec--function {
    padding: 64px 0;
  }
  .sec--function .sec__inner {
    padding: 0;
  }
  .sec--function .function-item {
    display: block;
    margin-bottom: 16px;
    padding-top: 32px;
  }
  .sec--function .function-item__image {
    flex: none;
  }
  .sec--function .function-item__text {
    width: 100%;
    max-width: 100%;
    padding-top: 0;
  }
  .sec--function .function-item__label {
    font-size: 13px;
    margin: 0 auto 20px;
    width: 92%;
    padding: 2px 0.5em;
  }
  .sec--function .function-item__title {
    text-align: center;
    font-size: 24px;
  }
  .sec--function .function-item__title span {
    font-size: 17px;
  }
  .sec--function .function-item__list {
    padding: 0 14px;
  }
  .sec--function .function-item__list li {
    font-size: 12px;
    margin-bottom: 16px;
    padding-left: 26px;
    background-position: left top 1px;
    background-size: 16px;
  }
  .sec--function .function-item.--pink {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 32px;
  }
  .sec--function .function-item.--pink .function-item__title {
    margin-bottom: 10px;
  }
  .sec--function .function-item.--pink .function-item__image {
    padding-top: 0;
    padding-right: 20px;
    margin-bottom: 14px;
  }
  .sec--function .function-item.--pink .function-item__text {
    padding-bottom: 0;
  }
  .sec--function .function-item.--blue {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 32px;
  }
  .sec--function .function-item.--blue .function-item__title {
    margin-bottom: 20px;
  }
  .sec--function .function-item.--blue .function-item__image {
    padding-top: 0;
    padding-left: 40px;
    padding-right: 55px;
    margin-bottom: 14px;
  }
}
/* ========== ご導入までのステップ ========== */
.sec--step {
  padding: 104px 0;
  background: #F8F8FA;
}
.sec--step .sec__head {
  margin-bottom: 32px;
}
.sec--step .step-list {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2.5%;
}
.sec--step .step-item {
  text-align: center;
  background: #fff;
  width: 19%;
  padding-bottom: 16px;
  border-radius: 0 0 4px 4px/0 0 4px 4px;
  position: relative;
}
.sec--step .step-item:after {
  content: "";
  position: absolute;
  top: clamp(65px, 9.5168374817vw, 130px);
  left: 100%;
  height: clamp(17.205px, 2.519033675vw, 34.41px);
  width: clamp(17px, 2.4890190337vw, 34px);
  background-image: url(../images/step-arrow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: clamp(7.39px, 1.0819912152vw, 14.78px);
}
.sec--step .step-item:last-child:after {
  content: none;
}
.sec--step .step-item.--large {
  width: 35.5%;
}
.sec--step .step-item__label {
  background: #355DBF;
  color: #fff;
  font-weight: 400;
  font-size: clamp(13px, 1.4641288433vw, 20px);
  padding: 4px 0;
  margin-bottom: 30px;
  border-radius: 4px 4px 0 0/4px 4px 0 0;
  transform: rotate(0.04deg);
}
.sec--step .step-item__image img {
  width: auto;
  height: clamp(70px, 10.2489019034vw, 140px);
}
.sec--step .step-item__title {
  font-weight: 700;
  font-size: clamp(12px, 1.317715959vw, 18px);
  color: #355DBF;
  margin-bottom: 5px;
  margin-top: 0.7em;
  transform: rotate(0.04deg);
}
.sec--step .step-item__text {
  color: #355DBF;
  font-size: clamp(9px, 1.0248901903vw, 14px);
  font-weight: 400;
  transform: rotate(0.04deg);
}
.sec--step .step-item__col-wrap {
  display: flex;
  justify-content: center;
  gap: 8%;
}
.sec--step .step-item__col-wrap:after {
  content: "";
  position: absolute;
  top: clamp(65px, 9.5168374817vw, 130px);
  left: 50%;
  transform: translateX(-50%);
  height: clamp(17.205px, 2.519033675vw, 34.41px);
  width: clamp(17px, 2.4890190337vw, 34px);
  background-image: url(../images/step-arrow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: clamp(7.39px, 1.0819912152vw, 14.78px);
}

@media only screen and (max-width: 768px) {
  .sec--step {
    padding: 64px 0;
  }
  .sec--step .sec__head {
    margin-bottom: 16px;
  }
  .sec--step .step-list {
    padding: 0 12px;
    gap: 26px;
  }
  .sec--step .step-item {
    width: 100%;
  }
  .sec--step .step-item:after {
    top: 100%;
    left: 50%;
    width: 10.12px;
    height: 23.55px;
    background-size: 100%;
    transform: translateX(-50%) rotate(90deg);
  }
  .sec--step .step-item.--large {
    width: 100%;
  }
  .sec--step .step-item__label {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .sec--step .step-item__image img {
    height: 25.3333333333vw;
  }
  .sec--step .step-item__title {
    font-size: 13px;
    margin: 10px 0 5px;
  }
  .sec--step .step-item__text {
    font-size: 10px;
  }
  .sec--step .step-item__col-wrap {
    gap: 42px;
    position: relative;
  }
  .sec--step .step-item__col-wrap:after {
    top: 65px;
    width: 10.12px;
    height: 23.55px;
    background-size: 100%;
  }
}
/* ========== entry ========== */
.sec--entry {
  padding: 152px 0 0;
  background-image: url(../images/entry-bg.png);
  background-repeat: no-repeat;
  background-position: center top 40px;
  background-size: 100%;
}
.sec--entry .campaign-banner {
  position: relative;
  width: 80%;
  margin: auto;
  background: #FCF5EF;
  border-radius: 95px;
  padding: 36px clamp(32px, 2.9282576867vw, 40px) 32px clamp(224px, 20.4978038067vw, 280px);
  font-weight: 700;
}
.sec--entry .campaign-banner strong {
  color: #F99F08;
}
.sec--entry .campaign-banner__image {
  position: absolute;
  left: clamp(32px, 2.9282576867vw, 40px);
  top: -18px;
  width: clamp(181px, 16.5446559297vw, 226px);
}
.sec--entry .campaign-banner__inner {
  text-align: center;
  display: inline-block;
}
.sec--entry .campaign-banner__title {
  font-size: clamp(22.4px, 2.0497803807vw, 28px);
  transform: rotate(0.04deg);
}
.sec--entry .campaign-banner__text {
  font-size: clamp(17.6px, 1.6105417277vw, 22px);
  line-height: 1.4;
  margin-top: 0.5em;
  transform: rotate(0.04deg);
}
.sec--entry .entry-block {
  margin-top: 42px;
}
.sec--entry .entry-block__title {
  text-align: center;
  font-weight: 700;
  font-size: 30px;
  margin-bottom: 24px;
  transform: rotate(0.04deg);
}
.sec--entry .entry-list {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sec--entry .entry-item {
  position: relative;
  width: 49.37%;
  border-radius: 16px;
  padding: 45px 0 122px clamp(26px, 3.8067349927vw, 52px);
}
.sec--entry .entry-item__head {
  min-height: clamp(73px, 6.6617862372vw, 91px);
  margin-bottom: 14px;
}
.sec--entry .entry-item__title {
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  transform: rotate(0.04deg);
}
.sec--entry .entry-item__list li {
  font-size: clamp(16px, 1.4641288433vw, 20px);
  color: #fff;
  margin-bottom: 0.4em;
  padding-left: clamp(27px, 2.4890190337vw, 34px);
  background-image: url(../images/icon-check-wh.svg);
  background-repeat: no-repeat;
  background-position: left top 3px;
  background-size: clamp(18px, 1.6837481698vw, 23px);
  transform: rotate(0.04deg);
}
.sec--entry .entry-item__list li:last-child {
  margin-bottom: 0;
}
.sec--entry .entry-item__button {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 26px;
  text-align: center;
}
.sec--entry .entry-item__button a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: clamp(48px, 4.39238653vw, 60px);
  width: clamp(288px, 26.3543191801vw, 360px);
  background-color: #fff;
  border-radius: 30px;
  font-size: clamp(19px, 1.756954612vw, 24px);
  font-weight: 700;
  transition: 0.4s;
  overflow: hidden;
}
.sec--entry .entry-item__button a:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: 0.4s;
  background: linear-gradient(45deg, #d85ca9 0%, #8c59d1 30%, #6167d9 60%, #5a92e5 100%);
}
.sec--entry .entry-item__button a:after {
  content: "";
  width: clamp(10px, 0.9516837482vw, 13px);
  height: 100%;
  position: absolute;
  top: 0;
  right: clamp(21px, 1.9033674963vw, 26px);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  transition: 0.4s;
}
.sec--entry .entry-item__button a span {
  position: relative;
  z-index: 1;
  transform: rotate(0.04deg);
}
.sec--entry .entry-item__image {
  position: absolute;
}
.sec--entry .entry-item.--blue {
  background: linear-gradient(125deg, #355dbf 50%, #70a6d5 100%);
}
.sec--entry .entry-item.--blue .entry-item__title {
  font-size: clamp(32px, 2.9282576867vw, 40px);
}
.sec--entry .entry-item.--blue .entry-item__title span {
  display: block;
  font-size: 57.5%;
}
.sec--entry .entry-item.--blue .entry-item__button a {
  color: #355DBF;
}
.sec--entry .entry-item.--blue .entry-item__button a:after {
  background-image: url(../images/arrow-right-bl.svg);
}
.sec--entry .entry-item.--blue .entry-item__image {
  width: clamp(278px, 25.4026354319vw, 347px);
  top: clamp(23px, 2.1229868228vw, 29px);
  right: clamp(19px, 1.756954612vw, 24px);
}
.sec--entry .entry-item.--pink {
  background: linear-gradient(125deg, #d85ca7 50%, #70a6d5 100%);
}
.sec--entry .entry-item.--pink .entry-item__title {
  font-size: clamp(26px, 2.3426061493vw, 32px);
}
.sec--entry .entry-item.--pink .entry-item__button a {
  color: #D85CA8;
}
.sec--entry .entry-item.--pink .entry-item__button a:after {
  background-image: url(../images/arrow-right-pk.svg);
}
.sec--entry .entry-item.--pink .entry-item__image {
  width: clamp(187px, 17.1303074671vw, 234px);
  top: clamp(66px, 6.0029282577vw, 82px);
  right: clamp(53px, 4.831625183vw, 66px);
}

@media only screen and (min-width: 769px) {
  .sec--entry .entry-item__button a:hover {
    background: none;
  }
  .sec--entry .entry-item__button a:hover:before {
    opacity: 1;
  }
  .sec--entry .entry-item.--blue .entry-item__button a:hover {
    color: #fff;
  }
  .sec--entry .entry-item.--blue .entry-item__button a:hover:after {
    background-image: url(../images/arrow-right-wh.svg);
  }
  .sec--entry .entry-item.--pink .entry-item__button a:hover {
    color: #fff;
  }
  .sec--entry .entry-item.--pink .entry-item__button a:hover:after {
    background-image: url(../images/arrow-right-wh.svg);
  }
}
@media only screen and (max-width: 1024px) {
  .sec--entry {
    padding-top: 200px;
  }
  .sec--entry .campaign-banner {
    padding: 70px 0 40px;
    text-align: center;
    border-radius: 60px;
    width: 70%;
  }
  .sec--entry .campaign-banner__image {
    left: 50%;
    top: 0;
    transform: translate(-50%, -60%);
  }
  .sec--entry .entry-list {
    gap: 30px;
    max-width: 80%;
    margin: auto;
  }
  .sec--entry .entry-item {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .sec--entry {
    padding: 142px 0 0;
    background-image: url(../images/entry-bg-sp.png);
    background-position: left top;
    background-size: 184.2666666667vw;
  }
  .sec--entry .campaign-banner {
    width: 100%;
    max-width: 480px;
    border-radius: 41px;
    padding: 60px 0 28px;
  }
  .sec--entry .campaign-banner__image {
    width: 145px;
  }
  .sec--entry .campaign-banner__title {
    font-size: 16px;
  }
  .sec--entry .campaign-banner__text {
    font-size: 14px;
    margin-top: 10px;
  }
  .sec--entry .entry-block {
    margin-top: 86px;
  }
  .sec--entry .entry-block__title {
    font-size: 24px;
    margin-bottom: 16px;
    white-space: nowrap;
  }
  .sec--entry .entry-list {
    gap: 16px;
    max-width: 100%;
  }
  .sec--entry .entry-item {
    padding: 25px 26px 13px;
    min-height: 220px;
  }
  .sec--entry .entry-item__head {
    min-height: 50px;
    margin-bottom: 5px;
  }
  .sec--entry .entry-item__list li {
    font-size: 12px;
    padding-left: 18px;
    background-position: left top 2px;
    background-size: 12px;
  }
  .sec--entry .entry-item__button {
    bottom: 13px;
  }
  .sec--entry .entry-item__button a {
    width: 192px;
    height: 32px;
    font-size: 12px;
  }
  .sec--entry .entry-item__button a:before {
    content: none;
  }
  .sec--entry .entry-item__button a:after {
    width: 8px;
    right: 14px;
  }
  .sec--entry .entry-item.--blue .entry-item__title {
    font-size: 21px;
  }
  .sec--entry .entry-item.--blue .entry-item__title span {
    font-size: 12px;
  }
  .sec--entry .entry-item.--blue .entry-item__button a:after {
    background-image: url(../images/arrow-right-bl-sp.svg);
  }
  .sec--entry .entry-item.--blue .entry-item__image {
    width: 189px;
    top: 15px;
    right: 12px;
  }
  .sec--entry .entry-item.--pink .entry-item__title {
    font-size: 17px;
    padding-top: 15px;
  }
  .sec--entry .entry-item.--pink .entry-item__button a:after {
    background-image: url(../images/arrow-right-pk-sp.svg);
  }
  .sec--entry .entry-item.--pink .entry-item__image {
    width: 128px;
    top: 40px;
    right: 30px;
  }
}
/* ========== バナー ========== */
.sec--banner .banner-list {
  display: -moz-flex;
  display: flex;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  gap: 30px 5%;
}
.sec--banner .banner-list li {
  width: 30%;
}
.sec--banner .banner-list a {
  display: block;
}
.sec--banner .banner-list img {
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 768px) {
  .sec--banner {
    padding: 64px 0;
  }
  .sec--banner .banner-list {
    gap: 26px;
    justify-content: center;
  }
  .sec--banner .banner-list li {
    width: 78%;
  }
}