@charset "UTF-8";
/*===========================================================================*/
/*  function  */
/*===========================================================================*/
/*===========================================================================*/
/*  mixin  */
/*===========================================================================*/
/*===========================================================================*/
/*  mainvisual  */
/*===========================================================================*/
.mainvisual {
  overflow: hidden;
  background-color: #ebf3ff;
  padding-top: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  padding-bottom: clamp(89.6px, 31.8397328881px + 6.4106844741vw, 128px);
  padding-right: clamp(31.5px, 11.1936560935px + 2.2537562604vw, 45px);
  padding-left: clamp(31.5px, 11.1936560935px + 2.2537562604vw, 45px);
  position: relative;
}
@media (max-width: 900px) {
  .mainvisual {
    padding-top: clamp(26px, 18.0408163265px + 2.1224489796vw, 37.1428571429px);
    padding-bottom: clamp(72px, 49.9591836735px + 5.8775510204vw, 102.8571428571px);
    padding-left: 6px;
    padding-right: 6px;
  }
  .mainvisual::before {
    content: "";
    width: 100%;
    background-color: #fff;
    height: clamp(226px, 156.8163265306px + 18.4489795918vw, 322.8571428571px);
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
.mainvisual__inner {
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  position: relative;
  z-index: 1;
}
@media (max-width: 900px) {
  .mainvisual__inner {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: clamp(18px, 12.4897959184px + 1.4693877551vw, 25.7142857143px);
  }
}
.mainvisual__content {
  text-align: center;
}
.mainvisual__ballon {
  position: relative;
  font-size: clamp(20px, 10.9749582638px + 1.0016694491vw, 26px);
  font-weight: 700;
  color: #3264dc;
  padding-top: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  padding-bottom: clamp(15.4px, 5.4724540902px + 1.101836394vw, 22px);
  padding-inline: clamp(42px, 14.9248747913px + 3.0050083472vw, 60px);
  display: inline-block;
  margin-bottom: clamp(4.2px, 1.4924874791px + 0.3005008347vw, 6px);
}
@media (max-width: 900px) {
  .mainvisual__ballon {
    font-size: 13px;
    padding-inline: 16px;
    padding-top: 4px;
    padding-bottom: 11px;
    margin-bottom: 6px;
    line-height: 1.25;
    width: 254px;
  }
}
.mainvisual__ballon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/ballon.svg) no-repeat center/100% 100%;
  z-index: -1;
}
@media (max-width: 900px) {
  .mainvisual__ballon::before {
    background: url(../images/ballon_sp.png) no-repeat center/100% 100%;
  }
}
.mainvisual__title {
  font-size: clamp(40px, 17.4373956594px + 2.5041736227vw, 55px);
  margin-bottom: clamp(22.4px, 7.959933222px + 1.6026711185vw, 32px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 5px;
  color: #323232;
}
@media (max-width: 900px) {
  .mainvisual__title {
    font-size: clamp(32px, 29.1428571429px + 0.7619047619vw, 36px);
    margin-bottom: 16px;
    text-align: center;
    position: relative;
    letter-spacing: 0;
  }
}
.mainvisual__title span {
  color: #2864f0;
}
.mainvisual__description {
  color: #323232;
  font-size: clamp(28px, 37.0250417362px + -1.0016694491vw, 22px);
  margin-bottom: clamp(22.4px, 7.959933222px + 1.6026711185vw, 32px);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 1px;
}
@media (max-width: 900px) {
  .mainvisual__description {
    font-size: clamp(20px, 17.1428571429px + 0.7619047619vw, 24px);
    margin-bottom: clamp(23px, 15.9591836735px + 1.8775510204vw, 32.8571428571px);
    text-align: center;
  }
}
.mainvisual__description span {
  color: #2864f0;
}
.mainvisual__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16.8px, 5.9699499165px + 1.2020033389vw, 24px);
  margin-bottom: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
}
@media (max-width: 900px) {
  .mainvisual__list {
    gap: clamp(16px, 11.1020408163px + 1.306122449vw, 22.8571428571px);
    margin-bottom: clamp(18px, 12.4897959184px + 1.4693877551vw, 25.7142857143px);
  }
}
.mainvisual__list__sm {
  color: #5a5a5a;
  text-align: center;
  font-size: clamp(9.8px, 3.4824707846px + 0.7011686144vw, 14px);
  font-weight: 500;
  line-height: 1.5;
  display: block;
}
@media (max-width: 900px) {
  .mainvisual__list__sm {
    font-size: clamp(10px, 6.9387755102px + 0.8163265306vw, 14.2857142857px);
  }
}
.mainvisual__list__emphasis {
  background-image: linear-gradient(transparent 60%, #dce8ff 60%); /* #fff176 は蛍光イエロー */
  background-repeat: no-repeat;
  background-size: 100% 100%;
  color: #2864f0;
}
.mainvisual__list li {
  box-shadow: 0 0 21.7px 0 rgba(40, 100, 240, 0.62);
  color: #323232;
  background-color: #fff;
  text-align: center;
  font-size: clamp(15.4px, 5.4724540902px + 1.101836394vw, 22px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 1px;
  width: clamp(98px, 34.8247078464px + 7.0116861436vw, 140px);
  height: clamp(98px, 34.8247078464px + 7.0116861436vw, 140px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 900px) {
  .mainvisual__list li {
    font-size: clamp(16px, 11.1020408163px + 1.306122449vw, 22.8571428571px);
    width: clamp(94px, 65.2244897959px + 7.6734693878vw, 134.2857142857px);
    height: clamp(94px, 65.2244897959px + 7.6734693878vw, 134.2857142857px);
  }
}
@media (max-width: 900px) {
  .mainvisual__list li:last-child {
    font-size: clamp(14px, 9.7142857143px + 1.1428571429vw, 20px);
  }
}
@media (max-width: 900px) {
  .mainvisual__list li:last-child .mainvisual__list__sm {
    font-size: clamp(9.5px, 6.5918367347px + 0.7755102041vw, 13.5714285714px);
  }
}
.mainvisual__date {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background-color: #fff0d2;
  padding-block: clamp(9.8px, 3.4824707846px + 0.7011686144vw, 14px);
  padding-inline: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  max-width: 620px;
  margin: 0 auto;
  margin-bottom: clamp(44.8px, 15.9198664441px + 3.2053422371vw, 64px);
  border: 5px solid #ffb91e;
  border-radius: 16px;
  box-shadow: 4px 4px 0 0 #ffb91e;
}
@media (max-width: 900px) {
  .mainvisual__date {
    max-width: 310px;
    padding: 14px 6px 10px;
    margin-bottom: 19px;
    border: 2px solid #ffb91e;
    border-radius: 6px;
    box-shadow: 1.683px 1.683px 0 0 #ffb91e;
  }
}
.mainvisual__date::before, .mainvisual__date::after {
  content: "";
  position: absolute;
  width: 32px;
  height: 32px;
}
.mainvisual__date::before {
  background: url(../images/mv_date_left.svg) no-repeat center center/contain;
  top: -26px;
  left: -24px;
}
.mainvisual__date::after {
  background: url(../images/mv_date_right.svg) no-repeat center center/contain;
  top: -26px;
  right: -24px;
}
.mainvisual__date__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 900px) {
  .mainvisual__date__wrapper {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.mainvisual__date p {
  color: #be4b0f;
  font-size: 32px;
  font-weight: 900;
  line-height: 150%;
  font-size: clamp(22px, 15.9833055092px + 0.6677796327vw, 26px);
}
@media (max-width: 900px) {
  .mainvisual__date p {
    font-size: 18px;
  }
}
.mainvisual__date span {
  background-color: #fa6414;
  color: #fff;
  padding: 6px 8px 6px 10px;
  font-size: clamp(15px, 11.9916527546px + 0.3338898164vw, 17px);
  font-weight: 700;
  line-height: 1.25;
  border-radius: 8px 0 0 8px;
}
@media (max-width: 900px) {
  .mainvisual__date span {
    padding: 4px 12px;
    font-size: 11px;
    border-radius: 4px;
  }
}
.mainvisual__date svg {
  height: 100%;
  margin-left: -1px;
}
.mainvisual__buttons {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: clamp(22.4px, 7.959933222px + 1.6026711185vw, 32px);
}
@media (max-width: 900px) {
  .mainvisual__buttons {
    flex-direction: column;
    gap: 38px;
  }
}
.mainvisual__buttons__orange {
  background-color: #fa6414;
  border: 4px solid #fa6414;
  transition: all ease-in-out 0.2s;
}
@media (max-width: 900px) {
  .mainvisual__buttons__orange {
    border: none;
  }
}
@media (min-width: 901px) {
  .mainvisual__buttons__orange:hover {
    text-decoration: none;
    background-color: #fff;
  }
  .mainvisual__buttons__orange:hover span {
    color: #fa6414;
  }
  .mainvisual__buttons__orange:hover path {
    fill: #fa6414;
  }
}
.mainvisual__buttons__blue {
  background-color: #2864f0;
  border: 4px solid #2864f0;
  transition: all ease-in-out 0.2s;
}
@media (max-width: 900px) {
  .mainvisual__buttons__blue {
    border: none;
  }
}
@media (min-width: 901px) {
  .mainvisual__buttons__blue:hover {
    background-color: #fff;
  }
  .mainvisual__buttons__blue:hover span {
    color: #2864f0;
  }
  .mainvisual__buttons__blue:hover path {
    fill: #2864f0;
  }
}
.mainvisual__button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  padding-block: clamp(12.6px, 4.4774624374px + 0.9015025042vw, 18px);
  width: clamp(261.8px, 93.0317195326px + 18.7312186978vw, 374px);
  border-radius: 64px;
  position: relative;
}
@media (max-width: 900px) {
  .mainvisual__button {
    gap: clamp(12px, 8.3265306122px + 0.9795918367vw, 17.1428571429px);
    padding-block: clamp(14px, 9.7142857143px + 1.1428571429vw, 20px);
    padding-inline: clamp(38px, 26.3673469388px + 3.1020408163vw, 54.2857142857px);
    width: 326px;
    margin: 0 auto;
  }
}
.mainvisual__button:hover {
  text-decoration: none;
}
.mainvisual__button svg {
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .mainvisual__button svg {
    width: clamp(11px, 7.6326530612px + 0.8979591837vw, 15.7142857143px);
  }
}
.mainvisual__button span {
  flex-shrink: 0;
  color: #fff;
  font-size: clamp(17px, 6.4707846411px + 1.1686143573vw, 24px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  text-align: center;
}
@media (max-width: 900px) {
  .mainvisual__button span {
    font-size: clamp(20px, 18.5714285714px + 0.380952381vw, 22px);
  }
}
.mainvisual__button__balloon {
  position: absolute;
  top: -16px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  background: url(../images/border-orange.svg) no-repeat center center/contain;
  width: clamp(230px, 193.8998330551px + 4.0066777963vw, 254px);
  height: clamp(36px, 26.9749582638px + 1.0016694491vw, 42px);
  padding-top: clamp(3.5px, 1.2437395659px + 0.2504173623vw, 5px);
  padding-bottom: clamp(6.3px, 2.2387312187px + 0.4507512521vw, 9px);
  padding-inline: clamp(12.6px, 4.4774624374px + 0.9015025042vw, 18px);
  font-feature-settings: "pwid" on;
  color: #1e1e1e;
  font-size: clamp(12px, 7.4874791319px + 0.5008347245vw, 15px);
  font-weight: 700;
  line-height: 1.5;
  display: inline-block;
}
@media (max-width: 900px) {
  .mainvisual__button__balloon {
    font-size: 14px;
    background-size: cover;
    padding: 6px 18px 9px;
    width: 254px;
    height: 44px;
    top: -20px;
  }
}
.mainvisual__button__balloon__blue {
  background: url(../images/border-blue.svg) no-repeat center center/contain;
}
.mainvisual__gif {
  display: none;
}
@media (max-width: 900px) {
  .mainvisual__gif {
    display: block;
    margin: 0 auto;
    width: clamp(212px, 147.1020408163px + 17.306122449vw, 302.8571428571px);
    height: clamp(212px, 147.1020408163px + 17.306122449vw, 302.8571428571px);
    padding: clamp(7px, 4.8571428571px + 0.5714285714vw, 10px);
    background-color: #fff;
    border-radius: 7.326px;
    border: 0.916px solid #285ac8;
    box-shadow: 0 4.579px 13.736px 0 rgba(40, 100, 240, 0.2);
    margin-bottom: clamp(52px, 36.0816326531px + 4.2448979592vw, 74.2857142857px);
    position: relative;
  }
  .mainvisual__gif::before {
    content: "";
    background: url(../images/gif_shadow.png) no-repeat center center/contain;
    width: clamp(250px, 173.4693877551px + 20.4081632653vw, 357.1428571429px);
    height: clamp(23px, 15.9591836735px + 1.8775510204vw, 32.8571428571px);
    position: absolute;
    bottom: clamp(-11px, -7.6326530612px + -0.8979591837vw, -15.7142857143px);
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
}
@media (max-width: 900px) {
  .mainvisual__image {
    display: none;
  }
}
.mainvisual__image figure {
  width: clamp(218.4px, 77.6093489149px + 15.6260434057vw, 312px);
  padding: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  margin-top: clamp(112px, 39.7996661102px + 8.0133555927vw, 160px);
  border-radius: 16px;
  border: 2px solid #285ac8;
  background: #fff;
  box-shadow: 0 10px 30px 0 rgba(40, 100, 240, 0.2);
  position: relative;
}
.mainvisual__image figure img {
  width: clamp(322px, 114.4240400668px + 23.0383973289vw, 460px);
}
.mainvisual__clouds > * {
  position: absolute;
  z-index: 0;
}
.mainvisual__cloud01 {
  top: 147px;
  right: calc(50% + 597px);
  width: 190px;
  height: 109px;
}
@media (max-width: 900px) {
  .mainvisual__cloud01 {
    top: 17px;
    right: calc(50% + 94px);
    width: 79px;
    height: 49px;
  }
}
.mainvisual__cloud02 {
  top: 9px;
  right: calc(50% + 108px);
  width: 100px;
  height: 62px;
}
@media (max-width: 900px) {
  .mainvisual__cloud02 {
    top: 336px;
    right: auto;
    left: calc(50% + 50px);
    width: 73px;
    height: 44px;
  }
}
.mainvisual__cloud03 {
  top: 24px;
  left: calc(50% + 339px);
  width: 177px;
  height: 98px;
}
@media (max-width: 900px) {
  .mainvisual__cloud03 {
    top: 469px;
    left: auto;
    right: calc(50% + 65px);
    width: 72px;
    height: 41px;
  }
}
.mainvisual__cloud04 {
  top: 373px;
  left: calc(50% + 64px);
  width: 123px;
  height: 74px;
}
@media (max-width: 900px) {
  .mainvisual__cloud04 {
    top: 473px;
    right: auto;
    left: calc(50% + 84px);
    width: 94px;
    height: 52px;
  }
}
.mainvisual__cloud05 {
  top: 388px;
  left: calc(50% + 514px);
  width: 196px;
  height: 109px;
}
@media (max-width: 900px) {
  .mainvisual__cloud05 {
    display: none;
  }
}
.mainvisual__orbal {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 133.3333333333%;
  bottom: 0;
}
@media (max-width: 900px) {
  .mainvisual__orbal {
    width: 134.358974359%;
    height: 314px;
    height: clamp(314px, 231.1428571429px + 22.0952380952vw, 430px);
  }
}
.mainvisual__orbal img {
  width: 100%;
}

/*===========================================================================*/
/*  worry  */
/*===========================================================================*/
.worry {
  padding-bottom: clamp(98.7px, 35.0734557596px + 7.061769616vw, 141px);
  overflow: visible;
}
@media (max-width: 900px) {
  .worry {
    padding-bottom: 94px;
  }
}
.worry__inner {
  max-width: clamp(492.8px, 175.1185308848px + 35.2587646077vw, 704px);
  margin: 0 auto;
}
@media (max-width: 900px) {
  .worry__inner {
    width: 100%;
    max-width: 500px;
  }
}
.worry__head {
  text-align: center;
  color: #2864f0;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  font-size: clamp(28px, 21.9833055092px + 0.6677796327vw, 32px);
  padding-top: clamp(13.3px, 4.7262103506px + 0.9515859766vw, 19px);
  padding-bottom: clamp(21px, 7.4624373957px + 1.5025041736vw, 30px);
  padding-right: clamp(30.1px, 10.6961602671px + 2.1535893155vw, 43px);
  padding-left: clamp(32.2px, 11.4424040067px + 2.3038397329vw, 46px);
  margin-bottom: clamp(11.9px, 4.2287145242px + 0.8514190317vw, 17px);
  background: url(../images/worry_ballon.png) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .worry__head {
    font-size: clamp(18px, 16.5714285714px + 0.380952381vw, 20px);
    padding-top: clamp(13px, 9.0204081633px + 1.0612244898vw, 18.5714285714px);
    padding-bottom: clamp(18px, 12.4897959184px + 1.4693877551vw, 25.7142857143px);
    padding-right: clamp(27px, 18.7346938776px + 2.2040816327vw, 38.5714285714px);
    padding-left: clamp(34px, 23.5918367347px + 2.7755102041vw, 48.5714285714px);
    margin-bottom: clamp(10px, 6.9387755102px + 0.8163265306vw, 14.2857142857px);
  }
}
.worry__head span {
  color: #fa6414;
  position: relative;
}
.worry__head span::before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  background-color: #fa6414;
  border-radius: 50%;
  top: -4px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 900px) {
  .worry__head span::before {
    width: 4.7px;
    height: 4.7px;
    top: -2.4px;
  }
}
.worry__content {
  padding-block: clamp(16.8px, 5.9699499165px + 1.2020033389vw, 24px);
  padding-inline: clamp(56px, 19.8998330551px + 4.0066777963vw, 80px);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 0 16px 0 rgba(0, 0, 0, 0.1);
  position: relative;
}
@media (max-width: 900px) {
  .worry__content {
    padding-block: clamp(16px, 11.1020408163px + 1.306122449vw, 22.8571428571px);
    padding-inline: clamp(15px, 10.4081632653px + 1.2244897959vw, 21.4285714286px);
    border-radius: 9.353px;
    box-shadow: 0 1.169px 2.338px 0 rgba(0, 0, 0, 0.2), 0 0 9.353px 0 rgba(0, 0, 0, 0.1);
  }
}
.worry__content::before {
  content: "";
  position: absolute;
  width: clamp(155.4px, 55.2220367279px + 11.1185308848vw, 222px);
  height: clamp(251.3px, 89.3005008347px + 17.979966611vw, 359px);
  bottom: clamp(7px, 2.4874791319px + 0.5008347245vw, 10px);
  right: clamp(-38.5px, -13.6811352254px + -2.754590985vw, -55px);
  background: url(../images/worry_image.png) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .worry__content::before {
    top: -110px;
    right: -20px;
    width: clamp(80px, 55.5102040816px + 6.5306122449vw, 114.2857142857px);
    height: clamp(125px, 86.7346938776px + 10.2040816327vw, 178.5714285714px);
  }
}
.worry__content__list li {
  padding-bottom: clamp(14px, 4.9749582638px + 1.0016694491vw, 20px);
  padding-top: clamp(14px, 4.9749582638px + 1.0016694491vw, 20px);
  border-bottom: 2px dashed #dcdcdc;
}
@media (max-width: 900px) {
  .worry__content__list li {
    padding-bottom: clamp(12px, 8.3265306122px + 0.9795918367vw, 17.1428571429px);
    padding-top: clamp(12px, 8.3265306122px + 0.9795918367vw, 17.1428571429px);
  }
}
.worry__content__list li:first-child {
  padding-top: 0;
}
.worry__content__list span {
  color: #1e1e1e;
  font-size: clamp(20px, 13.9833055092px + 0.6677796327vw, 24px);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 1px;
  vertical-align: middle;
  background-image: linear-gradient(transparent 60%, #fff0d2 60%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media (max-width: 900px) {
  .worry__content__list span {
    font-size: clamp(17px, 15.5714285714px + 0.380952381vw, 19px);
  }
}
.worry__content__list svg {
  width: clamp(16.8px, 5.9699499165px + 1.2020033389vw, 24px);
  vertical-align: middle;
  margin-right: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
}
@media (max-width: 900px) {
  .worry__content__list svg {
    width: clamp(14px, 9.7142857143px + 1.1428571429vw, 20px);
    margin-right: clamp(5px, 3.4693877551px + 0.4081632653vw, 7.1428571429px);
  }
}

/*===========================================================================*/
/*  plan  */
/*===========================================================================*/
#features {
  padding-top: 36px;
}
@media (max-width: 900px) {
  #features {
    padding-top: 0;
  }
}

#price {
  padding-top: 32px;
}
@media (max-width: 900px) {
  #price {
    padding-top: 0;
  }
}

.plan {
  padding-top: clamp(27.3px, 9.7011686144px + 1.9532554257vw, 39px);
  padding-bottom: clamp(56px, 19.8998330551px + 4.0066777963vw, 80px);
  background-color: #ebf3ff;
  position: relative;
  overflow: visible;
}
@media (max-width: 900px) {
  .plan {
    padding-top: clamp(31px, 21.5102040816px + 2.5306122449vw, 44.2857142857px);
    padding-bottom: clamp(45px, 31.2244897959px + 3.6734693878vw, 64.2857142857px);
    padding-inline: 7px;
  }
}
.plan__inner {
  max-width: 1076px;
  margin: 0 auto;
  position: relative;
}
@media (max-width: 900px) {
  .plan__inner {
    max-width: 500px;
  }
}
.plan__inner::before {
  content: "";
  width: clamp(83.3px, 29.6010016694px + 5.959933222vw, 119px);
  height: clamp(144.9px, 51.4908180301px + 10.367278798vw, 207px);
  top: -120px;
  right: -20px;
  position: absolute;
  background: url(../images/plan_support.png) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__inner::before {
    top: -92px;
    left: calc(50% - 187px);
    background: url(../images/plan_badge.svg) no-repeat center center/contain;
    width: 91px;
    height: 89px;
  }
}
.plan__head {
  font-size: clamp(36px, 29.9833055092px + 0.6677796327vw, 40px);
  padding-left: clamp(33.6px, 11.9398998331px + 2.4040066778vw, 48px);
  padding-right: clamp(33.6px, 11.9398998331px + 2.4040066778vw, 48px);
  margin-bottom: clamp(39.2px, 13.9298831386px + 2.8046744574vw, 56px);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  position: relative;
  display: inline-block;
  color: rgb(30, 30, 30);
}
@media (max-width: 900px) {
  .plan__head {
    font-size: 24px;
    padding-right: 32px;
    padding-left: 32px;
    margin-bottom: 16px;
  }
}
.plan__head::before {
  content: "";
  width: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  height: clamp(34.3px, 12.1886477462px + 2.4540901503vw, 49px);
  position: absolute;
  left: 0;
  bottom: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  background: url(../images/icon_plan_head.svg) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__head::before {
    background: url(../images/icon_plan_head_sp.svg) no-repeat center center/contain;
    width: 24px;
    height: 49px;
  }
}
.plan__head::after {
  content: "";
  width: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  height: clamp(34.3px, 12.1886477462px + 2.4540901503vw, 49px);
  position: absolute;
  right: 0;
  bottom: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  background: url(../images/icon_plan_head_r.svg) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__head::after {
    background: url(../images/icon_plan_head_r_sp.svg) no-repeat center center/contain;
    width: 24px;
    height: 49px;
  }
}
.plan__head span {
  color: #2864f0;
}
@media (max-width: 900px) {
  .plan__head span {
    display: block;
  }
}
.plan__title {
  position: relative;
  color: #fff;
  background-color: #2864f0;
  padding-block: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-size: clamp(28px, 21.9833055092px + 0.6677796327vw, 32px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1.6px;
  border-radius: 8px 8px 0 0;
  text-align: center;
}
@media (max-width: 900px) {
  .plan__title {
    font-size: 20px;
  }
}
@media (min-width: 901px) {
  .plan__title.withBadge::before {
    content: "";
    position: absolute;
    top: -94px;
    left: -32px;
    background: url(../images/plan_badge.svg) no-repeat center center/contain;
    width: clamp(122.5px, 43.530884808px + 8.7646076795vw, 175px);
    height: clamp(114.1px, 40.5459098497px + 8.16360601vw, 163px);
  }
}
.plan__title span {
  border-bottom: 2px solid #fff;
}
.plan__content {
  position: relative;
  background-color: #fff;
  margin-bottom: clamp(62.3px, 22.1385642738px + 4.4574290484vw, 89px);
  border: 2px solid #2864f0;
  border-radius: 0 0 8px 8px;
}
@media (max-width: 900px) {
  .plan__content {
    margin-bottom: 32px;
  }
}
.plan__content__inner {
  padding-block: clamp(36.4px, 12.9348914858px + 2.6043405676vw, 52px);
  border: 8px solid #aac8ff;
  border-radius: 0 0 8px 8px;
}
.plan__for {
  position: absolute;
  top: -29px;
  left: 50%;
  transform: translateX(-50%);
  width: 368px;
  height: 53px;
}
@media (max-width: 900px) {
  .plan__for {
    width: 190px;
    height: 45px;
    top: -22px;
  }
}
.plan__for__inner {
  position: relative;
}
.plan__for__inner svg {
  position: absolute;
}
@media (max-width: 900px) {
  .plan__for__inner svg {
    width: 190px;
    height: 45px;
  }
}
.plan__for__inner span {
  position: absolute;
  text-align: center;
  color: #2864f0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  padding: 5px 0 13px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
@media (max-width: 900px) {
  .plan__for__inner span {
    font-size: 15px;
    padding: 9px 0 13px;
  }
}
.plan__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 75.3717472119%;
  margin: 0 auto;
  gap: clamp(16.8px, 5.9699499165px + 1.2020033389vw, 24px);
}
@media (max-width: 900px) {
  .plan__list {
    width: 100%;
    padding-inline: 17px;
    gap: 16px;
  }
}
.plan__item {
  display: grid;
  grid-template-columns: auto 170px;
  width: 100%;
  max-width: 812px;
  margin: 0 auto;
  gap: clamp(22.4px, 7.959933222px + 1.6026711185vw, 32px);
}
@media (max-width: 900px) {
  .plan__item {
    grid-template-columns: 1fr;
    max-width: 100%;
    gap: 16px;
  }
}
.plan__item__box {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas: "feature title" "feature description" "feature annotation";
  align-items: start;
  grid-auto-rows: max-content;
  row-gap: 0;
  column-gap: clamp(16.8px, 5.9699499165px + 1.2020033389vw, 24px);
}
@media (max-width: 900px) {
  .plan__item__box {
    grid-template-areas: "feature title" "description description" "annotation annotation";
    column-gap: clamp(8.4px, 2.9849749583px + 0.6010016694vw, 12px);
  }
}
.plan__item__feature {
  width: clamp(52.5px, 18.6560934891px + 3.7562604341vw, 75px);
  grid-area: feature;
}
@media (max-width: 900px) {
  .plan__item__feature {
    width: 60px;
  }
}
.plan__item__title {
  font-size: clamp(20px, 13.9833055092px + 0.6677796327vw, 24px);
  margin-bottom: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  padding-top: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  color: #2864f0;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  grid-area: title;
}
@media (max-width: 900px) {
  .plan__item__title {
    font-size: 22px;
    padding-top: 16px;
  }
}
.plan__item__description {
  font-size: clamp(16px, 12.9916527546px + 0.3338898164vw, 18px);
  margin-bottom: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  grid-area: description;
}
@media (max-width: 900px) {
  .plan__item__description {
    font-size: 15px;
    margin-top: 16px;
    margin-bottom: 8px;
  }
}
.plan__item__annotation {
  font-size: clamp(12px, 8.9916527546px + 0.3338898164vw, 14px);
  margin-bottom: 0;
  line-height: 1.5;
  letter-spacing: 1px;
  grid-area: annotation;
}
@media (max-width: 900px) {
  .plan__item__annotation {
    font-size: 14px;
  }
}
.plan__item__image {
  width: 170px;
}
@media (max-width: 900px) {
  .plan__item__image {
    margin: 0 auto;
  }
}
.plan__price {
  position: relative;
  border-radius: 0 0 8px 8px;
  border: 2px solid #2864f0;
}
@media (max-width: 900px) {
  .plan__price {
    max-width: 100%;
  }
}
.plan__price__content {
  color: #2864f0;
  border: 8px solid #aac8ff;
  border-radius: 0 0 8px 8px;
  text-align: center;
  position: relative;
}
.plan__price__content::before {
  content: "";
  position: absolute;
  bottom: -28px;
  right: 43px;
  width: 159px;
  height: 223px;
  background: url(../images/price_men.png) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__price__content::before {
    width: 56px;
    height: 78px;
    right: 8px;
    bottom: -11px;
  }
}
.plan__price__content__month {
  color: #2864f0;
  font-feature-settings: "calt" off;
  font-size: clamp(28px, 21.9833055092px + 0.6677796327vw, 32px);
  font-weight: 700;
  line-height: 1.5;
  display: inline-block;
  position: relative;
  padding-left: clamp(38.5px, 13.6811352254px + 2.754590985vw, 55px);
  padding-right: clamp(38.5px, 13.6811352254px + 2.754590985vw, 55px);
  margin-bottom: clamp(14.7px, 5.223706177px + 1.0517529215vw, 21px);
}
@media (max-width: 900px) {
  .plan__price__content__month {
    font-size: 16px;
    padding-left: 27px;
    padding-right: 27px;
    margin-bottom: 15px;
  }
}
.plan__price__content__month::before {
  content: "";
  width: clamp(21.7px, 7.7111853088px + 1.5525876461vw, 31px);
  height: clamp(30.1px, 10.6961602671px + 2.1535893155vw, 43px);
  bottom: clamp(7px, 2.4874791319px + 0.5008347245vw, 10px);
  left: 0;
  position: absolute;
  background: url(../images/icon_plan_head.svg) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__price__content__month::before {
    width: 21.5px;
    height: 30px;
    bottom: 3px;
  }
}
.plan__price__content__month::after {
  content: "";
  width: clamp(21.7px, 7.7111853088px + 1.5525876461vw, 31px);
  height: clamp(30.1px, 10.6961602671px + 2.1535893155vw, 43px);
  bottom: clamp(7px, 2.4874791319px + 0.5008347245vw, 10px);
  right: 0;
  position: absolute;
  background: url(../images/icon_plan_head_r.svg) no-repeat center center/contain;
}
@media (max-width: 900px) {
  .plan__price__content__month::after {
    width: 21.5px;
    height: 30px;
    bottom: 3px;
  }
}
.plan__price__content__month span {
  font-feature-settings: "calt" off;
  font-size: clamp(64px, 39.9332220367px + 2.6711185309vw, 80px);
  margin-left: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  font-weight: 900;
  line-height: 1;
}
@media (max-width: 900px) {
  .plan__price__content__month span {
    font-size: 44px;
    margin-left: 4px;
  }
}
.plan__price__content__year {
  color: #323232;
  text-align: center;
  font-size: clamp(36px, 26.9749582638px + 1.0016694491vw, 42px);
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 900px) {
  .plan__price__content__year {
    font-size: 26px;
  }
}
.plan__price__content__year span {
  color: #323232;
  text-align: center;
  font-size: clamp(18px, 14.9916527546px + 0.3338898164vw, 20px);
  margin-left: clamp(2.8px, 0.9949916528px + 0.2003338898vw, 4px);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .plan__price__content__year span {
    font-size: 14px;
    margin-left: 3px;
  }
}
.plan__price__content__year span.plan__price__content__month__tag {
  margin-right: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  padding-block: clamp(3.5px, 1.2437395659px + 0.2504173623vw, 5px);
  padding-inline: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-size: clamp(16px, 9.9833055092px + 0.6677796327vw, 20px);
  margin-left: 0;
  border-radius: 32px;
  background: #dce8ff;
  color: #2864f0;
  font-feature-settings: "calt" off;
  font-weight: 700;
  line-height: 1;
  vertical-align: text-bottom;
}
@media (max-width: 900px) {
  .plan__price__content__year span.plan__price__content__month__tag {
    margin-right: 5px;
    padding: 4px 11px;
    border-radius: 22px;
    font-size: 14px;
  }
}
.plan__price__content__txt {
  color: #464343;
  max-width: 380px;
  margin: 24px auto 0;
  font-size: clamp(14px, 10.9916527546px + 0.3338898164vw, 16px);
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}
@media (max-width: 900px) {
  .plan__price__content__txt {
    margin: 18px auto 0;
    font-size: 13px;
  }
}
.plan__price__content__inner {
  border-radius: 8px;
  padding-top: clamp(38.5px, 13.6811352254px + 2.754590985vw, 55px);
  padding-bottom: clamp(31.5px, 11.1936560935px + 2.2537562604vw, 45px);
  padding-inline: clamp(42px, 14.9248747913px + 3.0050083472vw, 60px);
  background-color: #fff;
}
@media (max-width: 900px) {
  .plan__price__content__inner {
    padding: 32px 40px;
  }
}
.plan__cta {
  position: relative;
  display: block;
  width: clamp(336px, 119.3989983306px + 24.040066778vw, 480px);
  padding-block: clamp(14px, 4.9749582638px + 1.0016694491vw, 20px);
  margin: 0 auto;
  border: 4px solid #fa6414;
  border-radius: 64px;
  background: #fa6414;
  box-shadow: 0 6px 12px 0 rgba(0, 92, 205, 0.2), 0 0 32px 0 rgba(0, 92, 205, 0.1);
  text-align: center;
  transition: all ease-in-out 0.2s;
}
@media (min-width: 901px) {
  .plan__cta:hover {
    background-color: #fff;
    text-decoration: none;
  }
  .plan__cta:hover span {
    color: #fa6414;
  }
  .plan__cta:hover path {
    fill: #fa6414;
  }
}
@media (max-width: 900px) {
  .plan__cta {
    width: 326px;
    padding-block: 14px;
    border: none;
  }
}
.plan__cta span,
.plan__cta svg {
  vertical-align: middle;
}
.plan__cta span {
  color: #fff;
  font-size: clamp(24px, 20.9916527546px + 0.3338898164vw, 26px);
  margin-right: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  text-align: center;
}
@media (max-width: 900px) {
  .plan__cta span {
    font-size: 20px;
    margin-right: 16px;
  }
}
.plan__cta__wrapper {
  position: relative;
  margin-top: clamp(37.1px, 13.183639399px + 2.6544240401vw, 53px);
  padding-top: clamp(25.9px, 9.203672788px + 1.8530884808vw, 37px);
}
@media (max-width: 900px) {
  .plan__cta__wrapper {
    padding-top: 0;
    margin-top: 64px;
  }
}
.plan__cta__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: clamp(15.4px, 5.4724540902px + 1.101836394vw, 22px);
}
@media (max-width: 900px) {
  .plan__cta__inner {
    padding-block: 20px;
  }
}
.plan__cta__inner span {
  color: #fff;
  font-size: clamp(18.2px, 6.4674457429px + 1.3021702838vw, 26px);
  margin-right: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  vertical-align: middle;
}
@media (max-width: 900px) {
  .plan__cta__inner span {
    font-size: 20px;
    margin-right: 12px;
  }
}
.plan__cta__inner svg {
  width: clamp(12.6px, 4.4774624374px + 0.9015025042vw, 18px);
  height: clamp(10.5px, 3.7312186978px + 0.7512520868vw, 15px);
  vertical-align: middle;
}
@media (max-width: 900px) {
  .plan__cta__inner svg {
    width: 14.4px;
    height: 12px;
  }
}

/*===========================================================================*/
/*  seminer  */
/*===========================================================================*/
.seminer {
  padding-top: clamp(56px, 19.8998330551px + 4.0066777963vw, 80px);
  padding-bottom: clamp(56px, 19.8998330551px + 4.0066777963vw, 80px);
  padding-inline: 74px;
}
@media (max-width: 900px) {
  .seminer {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-inline: 35px;
  }
}
.seminer__inner {
  max-width: 888px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .seminer__inner {
    max-width: 500px;
  }
}
.seminer__sub {
  margin-bottom: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  text-align: center;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
}
@media (max-width: 900px) {
  .seminer__sub {
    margin-bottom: 8px;
    gap: 10px;
    margin-bottom: 8px;
    align-items: center;
  }
}
.seminer__sub svg,
.seminer__sub span {
  vertical-align: middle;
}
.seminer__sub span {
  color: #143278;
  text-align: center;
  font-size: clamp(20px, 13.9833055092px + 0.6677796327vw, 24px);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .seminer__sub span {
    font-size: 18px;
  }
}
.seminer__head {
  color: #2864f0;
  text-align: center;
  margin-bottom: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  font-size: clamp(40px, 30.9749582638px + 1.0016694491vw, 46px);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .seminer__head {
    font-size: 28px;
    margin-bottom: 27px;
  }
}
.seminer__container {
  border-radius: 24px;
  border: 10px solid #2864f0;
  position: relative;
  margin-bottom: clamp(70px, 24.8747913189px + 5.0083472454vw, 100px);
}
@media (max-width: 900px) {
  .seminer__container {
    margin-bottom: 60px;
    border-radius: 6px;
    border: 3px solid #2864f0;
  }
}
.seminer__item {
  border-radius: 16px;
}
@media (max-width: 900px) {
  .seminer__item {
    border-radius: 6px;
  }
}
.seminer__item__image {
  width: 100%;
  border-radius: 16px;
}
@media (max-width: 900px) {
  .seminer__item__image {
    border-radius: 6px;
  }
}
.seminer__item__image img {
  border-radius: 16px;
}
@media (max-width: 900px) {
  .seminer__item__image img {
    border-radius: 6px;
  }
}
.seminer .swiper-wrapper {
  position: relative;
}
.seminer .swiper-button-prev,
.seminer .swiper-button-next,
.seminer .swiper-pagination {
  position: absolute !important;
}
.seminer .swiper-button-prev {
  width: 40px !important;
  height: 40px !important;
  top: 50% !important;
  transform: translateY(-50%);
  left: -61px !important;
  margin-top: 0 !important;
}
@media (max-width: 900px) {
  .seminer .swiper-button-prev {
    width: clamp(20px, 13.8775510204px + 1.6326530612vw, 29px) !important;
    height: clamp(20px, 13.8775510204px + 1.6326530612vw, 29px) !important;
    left: -30px !important;
  }
}
.seminer .swiper-button-prev:after {
  content: "" !important;
  width: 100%;
  height: 100%;
  background: url(../images/prev_icon.svg) no-repeat center center/contain;
}
.seminer .swiper-button-next {
  width: 40px !important;
  height: 40px !important;
  top: 50% !important;
  transform: translateY(-50%);
  right: -61px !important;
  margin-top: 0 !important;
}
@media (max-width: 900px) {
  .seminer .swiper-button-next {
    right: -30px !important;
    width: clamp(20px, 13.8775510204px + 1.6326530612vw, 29px) !important;
    height: clamp(20px, 13.8775510204px + 1.6326530612vw, 29px) !important;
  }
}
.seminer .swiper-button-next:after {
  content: "" !important;
  width: 100%;
  height: 100%;
  background: url(../images/next_icon.svg) no-repeat center center/contain;
}
.seminer .swiper-pagination {
  bottom: -58px !important;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 !important;
}
@media (max-width: 900px) {
  .seminer .swiper-pagination {
    bottom: -43px !important;
  }
}
.seminer .swiper-pagination-bullet {
  width: 16px !important;
  height: 16px !important;
  margin: 0 10px;
  background: #ebf3ff;
  opacity: 1;
  transition: background-color 0.5s 0s cubic-bezier(0.44, 0.14, 0.09, 1.02);
}
@media (max-width: 900px) {
  .seminer .swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    margin: 0 6px;
  }
}
.seminer .swiper-pagination-bullet:hover {
  background-color: #2864f0 !important;
}
.seminer .swiper-pagination-bullet-active {
  width: 8px;
  height: 8px;
  background-color: #2864f0 !important;
}
@media (max-width: 900px) {
  .seminer .swiper-pagination-bullet-active {
    width: 10px !important;
    height: 10px !important;
  }
}
.seminer__link {
  position: relative;
  display: block;
  width: clamp(336px, 119.3989983306px + 24.040066778vw, 480px);
  padding-block: clamp(14px, 4.9749582638px + 1.0016694491vw, 20px);
  margin: 0 auto;
  border: 4px solid #fa6414;
  border-radius: 64px;
  background: #fa6414;
  box-shadow: 0 6px 12px 0 rgba(0, 92, 205, 0.2), 0 0 32px 0 rgba(0, 92, 205, 0.1);
  text-align: center;
  transition: all ease-in-out 0.2s;
}
@media (min-width: 901px) {
  .seminer__link:hover {
    background-color: #fff;
    text-decoration: none;
  }
  .seminer__link:hover span {
    color: #fa6414;
  }
  .seminer__link:hover path {
    fill: #fa6414;
  }
}
@media (max-width: 900px) {
  .seminer__link {
    width: 326px;
    padding-block: 14px;
    border: none;
  }
}
.seminer__link span,
.seminer__link svg {
  vertical-align: middle;
}
.seminer__link span {
  color: #fff;
  font-size: clamp(24px, 20.9916527546px + 0.3338898164vw, 26px);
  margin-right: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 1px;
  text-align: center;
}
@media (max-width: 900px) {
  .seminer__link span {
    font-size: 20px;
    margin-right: 16px;
  }
}

/*===========================================================================*/
/*  faq  */
/*===========================================================================*/
.faq {
  padding-top: clamp(33.6px, 11.9398998331px + 2.4040066778vw, 48px);
  padding-bottom: clamp(56px, 19.8998330551px + 4.0066777963vw, 80px);
  background: #ebf3ff;
}
@media (max-width: 900px) {
  .faq {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
.faq__inner {
  max-width: 1140px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .faq__inner {
    max-width: 500px;
  }
}
.faq__head {
  font-size: clamp(24px, 17.9833055092px + 0.6677796327vw, 28px);
  margin-bottom: clamp(28px, 9.9499165275px + 2.0033388982vw, 40px);
  color: #2864f0;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .faq__head {
    font-size: 24px;
    margin-bottom: 40px;
  }
}
.faq__question {
  color: #1e1e1e;
  font-size: clamp(14px, 10.9916527546px + 0.3338898164vw, 16px);
  font-weight: 700;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media (max-width: 900px) {
  .faq__question {
    align-items: flex-start;
    font-size: 16px;
  }
}
.faq__question__text {
  color: #2864f0;
  font-size: clamp(16px, 12.9916527546px + 0.3338898164vw, 18px);
  margin-right: clamp(5.6px, 1.9899833055px + 0.4006677796vw, 8px);
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .faq__question__text {
    font-size: 18px;
    margin-right: 8px;
  }
}

.c-accordion {
  display: flex;
  flex-direction: column;
  gap: 12px;
  border: none;
  margin-top: 0;
}
@media (max-width: 900px) {
  .c-accordion {
    gap: 12px;
  }
}
.c-accordion details {
  background-color: #fff;
}
.c-accordion summary {
  /* display: list-item;以外を指定してデフォルトの三角形アイコンを削除 */
  display: block;
  /* Safari用三角アイコン削除 */
}
.c-accordion summary::-webkit-details-marker {
  display: none;
}
.c-accordion {
  /* is-openedクラスが付与されたときのスタイル */
}
.c-accordion details.is-opened .c-accordion__icon {
  transform: rotate(180deg);
}
.c-accordion__summary__inner {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: clamp(11.2px, 3.979966611px + 0.8013355593vw, 16px);
  font-weight: bold;
  color: #002255;
  font-size: 16px;
}
@media (max-width: 900px) {
  .c-accordion__summary__inner {
    padding: 16px;
    gap: 8px;
  }
}
.c-accordion__icon {
  display: block;
  position: relative;
  width: 12px;
  flex-shrink: 0;
  transform-origin: center 43%;
  transition: transform 0.4s;
  /* アイコンのバーのスタイル */
}
.c-accordion__icon::before, .c-accordion__icon::after {
  content: "";
  position: absolute;
  display: block;
  width: 7.5px;
  height: 2px;
  background-color: #464646;
}
.c-accordion__icon::before {
  left: 0;
  transform: rotate(45deg);
}
.c-accordion__icon::after {
  right: 0;
  transform: rotate(-45deg);
}
.c-accordion {
  /* --------アコーディオンの中身のスタイル-------- */
}
.c-accordion__content {
  overflow: hidden;
  background-color: #fff;
  /* details直下のタグにpaddingを設定すると挙動がおかしくなるので、ここには指定しない */
}
.c-accordion__content__inner {
  padding: 0 44px 16px;
  color: #1e1e1e;
  font-size: clamp(14px, 10.9916527546px + 0.3338898164vw, 16px);
  line-height: 1.5;
  font-feature-settings: normal;
}
@media (max-width: 900px) {
  .c-accordion__content__inner {
    font-size: 16px;
  }
}
.c-accordion__content__inner strong {
  font-weight: 700;
}

/*===========================================================================*/
/*  Fixed CTA  */
/*===========================================================================*/
.fixed-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 32px;
  text-align: center;
  z-index: 99;
  transform: translateY(100%);
  transition: transform 0.3s ease-in-out;
  background: rgba(220, 232, 255, 0.85);
}
@media (max-width: 900px) {
  .fixed-cta {
    padding: 40px 24px 24px;
  }
}
@media (min-width: 901px) {
  .fixed-cta {
    display: none;
  }
}
.fixed-cta .mainvisual__button {
  gap: 12px;
  max-width: 500px;
  margin: 0 auto;
  padding-block: 14px;
  padding-inline: 37.5px;
  justify-content: center;
}
.fixed-cta .mainvisual__button__balloon {
  font-size: 14px;
  background-size: cover;
  padding: 6px 18px 9px;
  width: 254px;
  height: 44px;
  top: -20px;
}
.fixed-cta.is-visible {
  transform: translateY(0);
}
.fixed-cta__c-btn {
  width: 100%;
  max-width: 502px;
  padding: 26px 71px;
  font-size: 24px;
  display: inline-flex;
  align-items: center;
  gap: 16px;
  background-color: #fa6414;
  border: 5px solid #ffe1d2;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.1), 0px 4px 8px 0px rgba(0, 0, 0, 0.2);
  border-radius: 64px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (min-width: 901px) {
  .fixed-cta__c-btn:hover {
    color: #fff;
    text-decoration: none;
  }
}
.fixed-cta__c-btn img {
  width: 16px;
  height: 16px;
}
@media (max-width: 900px) {
  .fixed-cta__c-btn {
    padding: 12px;
    font-size: 20px;
    gap: 12px;
    border-radius: 48px;
    justify-content: center;
  }
}

.cta-text {
  text-align: center;
  margin-bottom: 8px !important;
}