/*
*
* campaign_summer.css
*
*/
/* --------------------------------
  kv
-------------------------------- */
.kv {
  display: flex;
  overflow-x: hidden;
  justify-content: center;
  width: 100%;
}

.kv_image img {
  width: 100%;
}
.l-main img {
  width: 100%;
}
@media (max-width: 767.98px) {
  .kv_image {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .kv_image {
    min-width: calc(1440 * var(--base-font, 1) / 10);
    max-width: calc(1440 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  cv01
-------------------------------- */
.cv01 {
  background-color: #fffbd1;
}
@media (max-width: 767.98px) {
  .cv01 {
    padding-top: calc(30 * var(--base-font, 1) / 10);
    padding-bottom: calc(20 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01 {
    padding-top: calc(30 * var(--base-font, 1) / 10);
    padding-bottom: calc(24 * var(--base-font, 1) / 10);
  }
}
.cv01 .l-contents {
  max-width: calc(725 * var(--base-font, 1) / 10);
}

.cv01_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .cv01_inner {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_inner {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}

.cv01_heading {
  position: relative;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  color: #2b558c;
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .cv01_heading {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_heading {
    font-size: calc(26 * var(--base-font, 1) / 10);
  }
}
.cv01_heading span {
  font-weight: 900;
}
@media (max-width: 767.98px) {
  .cv01_heading span {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_heading span {
    font-size: calc(34 * var(--base-font, 1) / 10);
  }
}
.cv01_heading::before,
.cv01_heading::after {
  content: "";
  position: absolute;
  bottom: 10%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 767.98px) {
  .cv01_heading::before,
  .cv01_heading::after {
    width: calc(13 * var(--base-font, 1) / 10);
    height: calc(24 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_sm.png");
  }
}
@media (min-width: 768px) {
  .cv01_heading::before,
  .cv01_heading::after {
    width: calc(17 * var(--base-font, 1) / 10);
    height: calc(34 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_lg.png");
  }
}
@media (max-width: 767.98px) {
  .cv01_heading::before {
    left: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_heading::before {
    left: calc(-24 * var(--base-font, 1) / 10);
  }
}
.cv01_heading::after {
  transform: scale(-1, 1);
}
@media (max-width: 767.98px) {
  .cv01_heading::after {
    right: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_heading::after {
    right: calc(-24 * var(--base-font, 1) / 10);
  }
}

.cv01_contents {
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 767.98px) {
  .cv01_contents {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_contents {
    max-width: calc(625 * var(--base-font, 1) / 10);
  }
}

.cv01_button-container {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .cv01_button-container {
    gap: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_button-container {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.cv01_button-list01 {
  display: flex;
  justify-content: center;
}

.cv01_button-list02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .cv01_button-list02 {
    flex-direction: column;

    gap: calc(12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_button-list02 {
    gap: calc(25 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .cv01_button-list02-item {
    width: calc((100% - 50px) / 3);
    min-width: calc(300 * var(--base-font, 1) / 10);
  }
}

.cv01_text-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .cv01_text-container {
    margin-top: calc(26 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_text-container {
    margin-top: calc(14 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .cv_text {
    margin-right: calc(-24 * var(--base-font, 1) / 10);
    margin-left: calc(-24 * var(--base-font, 1) / 10);
    width: calc(354 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv_text {
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  .cv01_note-container {
    margin-top: calc(4 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_note-container {
    margin-top: calc(8 * var(--base-font, 1) / 10);
  }
}

.cv01_note {
  letter-spacing: normal;
  color: #626262;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .cv01_note {
    margin-right: calc(-5 * var(--base-font, 1) / 10);
    margin-left: calc(-5 * var(--base-font, 1) / 10);
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv01_note {
    text-align: right;
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  cv02
-------------------------------- */
.cv02 {
  background-color: #fffbd1;
}
@media (max-width: 767.98px) {
  .cv02 {
    padding-top: calc(20 * var(--base-font, 1) / 10);
    padding-bottom: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02 {
    padding-top: calc(34 * var(--base-font, 1) / 10);
    padding-bottom: calc(54 * var(--base-font, 1) / 10);
  }
}
.cv02 .l-contents {
  max-width: calc(725 * var(--base-font, 1) / 10);
}

.cv02_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .cv02_inner {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_inner {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}

.cv02_heading {
  position: relative;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 767.98px) {
  .cv02_heading {
    width: calc(289 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_heading {
    width: calc(419 * var(--base-font, 1) / 10);
  }
}
.cv02_heading span {
  font-weight: 900;
}
@media (max-width: 767.98px) {
  .cv02_heading span {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_heading span {
    font-size: calc(34 * var(--base-font, 1) / 10);
  }
}
.cv02_heading::before,
.cv02_heading::after {
  content: "";
  position: absolute;
  bottom: 10%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 767.98px) {
  .cv02_heading::before,
  .cv02_heading::after {
    width: calc(13 * var(--base-font, 1) / 10);
    height: calc(24 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_sm.png");
  }
}
@media (min-width: 768px) {
  .cv02_heading::before,
  .cv02_heading::after {
    width: calc(17 * var(--base-font, 1) / 10);
    height: calc(34 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_lg.png");
  }
}
@media (max-width: 767.98px) {
  .cv02_heading::before {
    left: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_heading::before {
    left: calc(-24 * var(--base-font, 1) / 10);
  }
}
.cv02_heading::after {
  transform: scale(-1, 1);
}
@media (max-width: 767.98px) {
  .cv02_heading::after {
    right: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_heading::after {
    right: calc(-24 * var(--base-font, 1) / 10);
  }
}

.cv02_contents {
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 767.98px) {
  .cv02_contents {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_contents {
    max-width: calc(625 * var(--base-font, 1) / 10);
  }
}

.cv02_button-container {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .cv02_button-container {
    gap: calc(12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_button-container {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.cv02_button-list01 {
  display: flex;
  justify-content: center;
}

.cv02_button-list02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .cv02_button-list02 {
    flex-direction: column;

    gap: calc(12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .cv02_button-list02 {
    gap: calc(25 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .cv02_button-list02-item {
    width: calc((100% - 50px) / 3);
    min-width: calc(300 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  trouble
-------------------------------- */
@media (max-width: 767.98px) {
  .trouble {
    padding-top: calc(30 * var(--base-font, 1) / 10);
    padding-bottom: calc(20 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .trouble {
    padding-top: calc(20 * var(--base-font, 1) / 10);
    padding-bottom: calc(2 * var(--base-font, 1) / 10);
  }
}
.trouble .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}

.trouble_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .trouble_inner {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .trouble_inner {
    gap: calc(22 * var(--base-font, 1) / 10);
  }
}

.trouble_list {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .trouble_list {
    margin-left: calc(-6 * var(--base-font, 1) / 10);

    gap: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .trouble_list {
    transform: translateX(calc(14 * var(--base-font, 1) / 10));

    gap: calc(4 * var(--base-font, 1) / 10);
  }
}

.trouble_item {
  position: relative;
  letter-spacing: normal;
  color: #2b558c;
  font-weight: 500;
  font-weight: 500;
}
.trouble_item::after {
  content: "";
  position: absolute;
  left: 0;
  background-image: url("/campaign/img/icon_checkbox.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 767.98px) {
  .trouble_item::after {
    top: 50%;
    width: calc(32 * var(--base-font, 1) / 10);
    height: calc(27 * var(--base-font, 1) / 10);
    transform: translateY(-50%);
    line-height: 1.6;
  }
}
@media (min-width: 768px) {
  .trouble_item::after {
    width: calc(32 * var(--base-font, 1) / 10);
    height: calc(27 * var(--base-font, 1) / 10);
    line-height: 1.4444444444;
  }
}
@media (max-width: 767.98px) {
  .trouble_item {
    padding-left: calc(45 * var(--base-font, 1) / 10);
    font-size: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .trouble_item {
    padding-left: calc(40 * var(--base-font, 1) / 10);
    font-size: calc(20 * var(--base-font, 1) / 10);
  }
}
.trouble_item span {
  text-decoration: underline;
  font-weight: 700;

  -webkit-text-decoration-color: #ffea32;

          text-decoration-color: #ffea32;
}
@media (max-width: 767.98px) {
  .trouble_item span {
    text-decoration-thickness: calc(2 * var(--base-font, 1) / 10);
    text-underline-offset: calc(-0.2 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .trouble_item span {
    text-decoration-thickness: calc(4 * var(--base-font, 1) / 10);
    text-underline-offset: calc(-0.4 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  reason
-------------------------------- */
.reason_top {
  overflow-x: hidden;
  position: relative;
  background-color: #def6ff;
}
@media (max-width: 767.98px) {
  .reason_top {
    padding-top: calc(60 * var(--base-font, 1) / 10);
    padding-bottom: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top {
    padding-top: calc(100 * var(--base-font, 1) / 10);
    padding-bottom: calc(35 * var(--base-font, 1) / 10);
  }
}
.reason_top .l-contents {
  max-width: calc(1050 * var(--base-font, 1) / 10);
}
.reason_top::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 50%;
  width: 100%;
  max-width: calc(8500 * var(--base-font, 1) / 10);
  transform: translateX(-50%);
  background-color: #fff;

  -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);

          clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (max-width: 767.98px) {
  .reason_top::after {
    height: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top::after {
    height: calc(70 * var(--base-font, 1) / 10);
  }
}

.reason_top-lead {
  display: flex;
  align-items: center;
  flex-direction: column;
}

@media (max-width: 767.98px) {
  .reason_top-lead-text {
    width: calc(246 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-lead-text {
    width: calc(540 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .reason_heading {
    margin-right: calc(-12 * var(--base-font, 1) / 10);
    margin-left: calc(-12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_heading {
    width: calc(2200 * var(--base-font, 1) / 10);
  }
}

.reason_top-inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_top-inner {
    margin-top: calc(40 * var(--base-font, 1) / 10);

    gap: calc(60 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-inner {
    margin-top: calc(54 * var(--base-font, 1) / 10);

    gap: calc(74 * var(--base-font, 1) / 10);
  }
}

.reason_top-list {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_top-list {
    gap: calc(50 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-list {
    gap: calc(80 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-container {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_top-item-container {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-container {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.reason_top-item {
  display: flex;
  flex-direction: column;
  position: relative;
  background-color: #fff;
}
@media (max-width: 767.98px) {
  .reason_top-item {
    padding: calc(36 * var(--base-font, 1) / 10) calc(26 * var(--base-font, 1) / 10) calc(30 * var(--base-font, 1) / 10);

    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item {
    padding: calc(60 * var(--base-font, 1) / 10) calc(80 * var(--base-font, 1) / 10);

    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-ttl {
  position: absolute;
  left: 50%;
  max-width: 100%;
  transform: translateX(-50%);
  letter-spacing: normal;
}
@media (max-width: 767.98px) {
  .reason_top-item-ttl {
    top: calc(-28 * var(--base-font, 1) / 10);
    margin-left: calc(-20 * var(--base-font, 1) / 10);
    width: calc(290 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-ttl {
    top: calc(-44 * var(--base-font, 1) / 10);
    margin-left: calc(-28 * var(--base-font, 1) / 10);
    width: calc(440 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-number {
  position: absolute;
  max-width: 100%;
  letter-spacing: normal;
}
@media (max-width: 767.98px) {
  .reason_top-item-number {
    top: calc(-30 * var(--base-font, 1) / 10);
    left: calc(12 * var(--base-font, 1) / 10);
    width: calc(60 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-number {
    top: calc(-30 * var(--base-font, 1) / 10);
    width: calc(85 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-contents {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_top-item-contents {
    gap: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-contents {
    gap: calc(24 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-lead {
  text-align: center;
  letter-spacing: normal;
  color: #0096d9;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767.98px) {
  .reason_top-item-lead {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-lead {
    font-size: calc(34 * var(--base-font, 1) / 10);
  }
}
.reason_top-item-lead sub {
  font-size: calc(12 * var(--base-font, 1) / 10);
}

.reason_top-item-bottom {
  display: flex;
}
@media (max-width: 767.98px) {
  .reason_top-item-bottom {
    flex-direction: column;

    gap: calc(24 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-bottom {
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;

    gap: calc(44 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .reason_top-item-image {
    flex-grow: 1;
    width: 48%;
    min-width: calc(300 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-list {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_top-item-list {
    gap: calc(6 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-list {
    flex-grow: 1;
    width: 44%;
    min-width: calc(300 * var(--base-font, 1) / 10);

    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-item {
  display: flex;
  align-items: flex-start;
  letter-spacing: normal;
  font-weight: 500;

  font-feature-settings: "palt";
}
@media (max-width: 767.98px) {
  .reason_top-item-item {
    font-size: calc(18 * var(--base-font, 1) / 10);
    line-height: 1.5;

    gap: calc(7 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-item {
    font-size: calc(22 * var(--base-font, 1) / 10);

    gap: calc(8 * var(--base-font, 1) / 10);
  }
}
@media (max-width: 767.98px) {
  .reason_top-item-item sub {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-item sub {
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-icon {
  display: block;
}
@media (max-width: 767.98px) {
  .reason_top-item-icon {
    margin-top: calc(-2 * var(--base-font, 1) / 10);
    width: calc(26 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-icon {
    width: calc(26 * var(--base-font, 1) / 10);
  }
}
.reason_top-item-icon img {
  width: 100%;
  height: auto;
}

.reason_top-item-text {
  letter-spacing: normal;
}
@media (max-width: 767.98px) {
  .reason_top-item-text {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (max-width: 767.98px) {
  .reason_top-text {
    width: calc(210 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-text {
    width: calc(281 * var(--base-font, 1) / 10);
  }
}

.reason_top-item-note {
  text-align: right;
  letter-spacing: normal;
  color: #626262;
}
@media (max-width: 767.98px) {
  .reason_top-item-note {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_top-item-note {
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

.reason_bottom {
  position: relative;
  background-color: #29b5f4;
}
@media (max-width: 767.98px) {
  .reason_bottom {
    padding-top: calc(55 * var(--base-font, 1) / 10);
    padding-bottom: calc(34 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom {
    padding-top: calc(110 * var(--base-font, 1) / 10);
    padding-bottom: calc(80 * var(--base-font, 1) / 10);
  }
}
.reason_bottom::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 50%;
  width: 100%;
  max-width: calc(8500 * var(--base-font, 1) / 10);
  transform: translateX(-50%);
  background-color: #def6ff;

  -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);

          clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (max-width: 767.98px) {
  .reason_bottom::after {
    height: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom::after {
    height: calc(70 * var(--base-font, 1) / 10);
  }
}
.reason_bottom .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}

.reason_bottom-inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_bottom-inner {
    gap: calc(26 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom-inner {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .reason_bottom-ttl {
    width: calc(264 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom-ttl {
    width: calc(600 * var(--base-font, 1) / 10);
  }
}

.reason_bottom-contents {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_bottom-contents {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom-contents {
    gap: calc(18 * var(--base-font, 1) / 10);
  }
}

.reason_figure-container {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .reason_figure-container {
    gap: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_figure-container {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .reason_figure-heading {
    width: calc(300 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_figure-heading {
    width: calc(420 * var(--base-font, 1) / 10);
  }
}

.reason_bottom-figure {
  width: 100%;
}

.reason_bottom-note {
  text-align: right;
  letter-spacing: normal;
  color: #fff;
}
@media (max-width: 767.98px) {
  .reason_bottom-note {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .reason_bottom-note {
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  search
-------------------------------- */
.search {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (max-width: 767.98px) {
  .search {
    padding-top: calc(25 * var(--base-font, 1) / 10);
    padding-bottom: calc(25 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/search_bg_sm.jpg");
  }
}
@media (min-width: 768px) {
  .search {
    padding-top: calc(90 * var(--base-font, 1) / 10);
    padding-bottom: calc(90 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/search_bg_lg.jpg");
  }
}
.search .l-contents {
  max-width: calc(880 * var(--base-font, 1) / 10);
}

.search_inner {
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 767.98px) {
  .search_inner {
    padding: calc(30 * var(--base-font, 1) / 10) calc(25 * var(--base-font, 1) / 10);

    gap: calc(25 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_inner {
    justify-content: center;
    padding: calc(50 * var(--base-font, 1) / 10) calc(30 * var(--base-font, 1) / 10);
    width: 100%;
  }
}

.search_contents {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  width: 100%;
}
@media (max-width: 767.98px) {
  .search_contents {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .search_contents {
    flex-wrap: wrap;
    justify-content: center;

    gap: calc(32 * var(--base-font, 1) / 10);
  }
}

.search_text-container {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .search_text-container {
    gap: calc(9 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_text-container {
    gap: calc(2 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .search_heading {
    width: calc(178 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_heading {
    width: calc(253 * var(--base-font, 1) / 10);
  }
}

.search_text {
  text-align: center;
  letter-spacing: normal;
  color: #2b558c;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .search_text {
    margin-top: calc(16 * var(--base-font, 1) / 10);
    font-size: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_text {
    font-size: calc(16 * var(--base-font, 1) / 10);
  }
}

.search_button {
  display: block;
  position: relative;
  border-radius: calc(10 * var(--base-font, 1) / 10);
  width: 100%;
  transition: opacity 0.8s ease;
  transition: opacity 0.8s ease;
  background-color: #29b5f4;
  text-align: center;
  text-decoration: none;
  letter-spacing: normal;
  color: #fff;
  box-shadow: 0px calc(4 * var(--base-font, 1) / 10) 0px 0px #1f88b7;
  font-weight: 700;
  line-height: 1.4;
}
@media (hover: hover) {
  .search_button:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .search_button:hover {
    opacity: 0.6;
  }
}
.search_button:visited,
.search_button:hover {
  color: #fff;
}
.search_button::after {
  content: "";
  position: absolute;
  top: 50%;
  width: calc(28 * var(--base-font, 1) / 10);
  height: calc(28 * var(--base-font, 1) / 10);
  transform: translateY(-50%);
  background-color: #fff;

  -webkit-mask-image: url("/campaign/img/icon_pin.png");

          mask-image: url("/campaign/img/icon_pin.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (max-width: 767.98px) {
  .search_button::after {
    left: calc(20 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_button::after {
    left: calc(36 * var(--base-font, 1) / 10);
  }
}
@media (max-width: 767.98px) {
  .search_button {
    flex-direction: column;
    margin-top: calc(10 * var(--base-font, 1) / 10);
    padding-top: calc(16 * var(--base-font, 1) / 10);
    padding-bottom: calc(16 * var(--base-font, 1) / 10);
    width: 100%;
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_button {
    padding-top: calc(15 * var(--base-font, 1) / 10);
    padding-bottom: calc(12 * var(--base-font, 1) / 10);
    min-width: calc(350 * var(--base-font, 1) / 10);
    max-width: calc(372 * var(--base-font, 1) / 10);
    font-size: calc(24 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .search_button-inner {
    margin-right: calc(-30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .search_button-inner {
    margin-right: calc(-35 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  curriculum
-------------------------------- */
.curriculum .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .curriculum {
    padding-top: calc(83 * var(--base-font, 1) / 10);
    padding-bottom: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum {
    padding-top: calc(130 * var(--base-font, 1) / 10);
  }
}

.curriculum_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .curriculum_inner {
    gap: calc(47 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_inner {
    gap: calc(45 * var(--base-font, 1) / 10);
  }
}

.curriculum_contents {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .curriculum_contents {
    gap: calc(32 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_contents {
    gap: calc(40 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .curriculum_lead {
    width: calc(286 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_lead {
    width: calc(640 * var(--base-font, 1) / 10);
  }
}

.curriculum_container {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .curriculum_container {
    gap: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_container {
    gap: calc(60 * var(--base-font, 1) / 10);
  }
}

.curriculum_bottom {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .curriculum_bottom {
    gap: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_bottom {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.curriculum_bottom-contents {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .curriculum_bottom-contents {
    gap: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_bottom-contents {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.curriculum_tab-container {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 0;
  width: 100%;
}

.curriculum_tablist {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;

  gap: calc(5 * var(--base-font, 1) / 10);
}

@media (max-width: 767.98px) {
  .curriculum_tab-presentation {
    width: 32%;
  }
}
@media (min-width: 768px) {
  .curriculum_tab-presentation {
    width: 32%;
  }
}

.curriculum_tab-button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .curriculum_tab-button {
    padding: 12px 8px;
    font-size: 16px;
    line-height: 1.6;

    gap: calc(4 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-button {
    padding: 20px;
    font-size: 24px;

    gap: calc(6 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-button[aria-selected=true] {
  position: relative;
}
.curriculum_tab-button[aria-selected=true]::after {
  content: "";
  position: absolute;
  bottom: calc(-5 * var(--base-font, 1) / 10);
  left: 0;
  width: 100%;
  height: calc(10 * var(--base-font, 1) / 10);
  background-color: #fff;
  color: #333;
}
.curriculum_tab-button[aria-selected=true] .curriculum_tab-button-icon::after {
  transform: rotate(90deg) translateX(-50%);
}
.curriculum_tab-button_01 {
  border: 2px solid #87d5fa;
}
.curriculum_tab-button_01[aria-selected=true] {
  cursor: auto;
  background-color: #fff;
  pointer-events: none;
}
.curriculum_tab-button_01[aria-selected=true] .curriculum_tab-button-icon::after {
  background-color: #87d5fa;
}
.curriculum_tab-button_01[aria-selected=false] {
  transition: opacity 0.8s ease;
  background-color: #87d5fa;
  color: #fff;
}
@media (hover: hover) {
  .curriculum_tab-button_01[aria-selected=false]:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .curriculum_tab-button_01[aria-selected=false]:hover {
    opacity: 0.6;
  }
}
.curriculum_tab-button_02 {
  border: 2px solid #9ed800;
}
.curriculum_tab-button_02[aria-selected=true] {
  background-color: #fff;
}
.curriculum_tab-button_02[aria-selected=true] .curriculum_tab-button-icon::after {
  background-color: #9ed800;
}
.curriculum_tab-button_02[aria-selected=false] {
  transition: opacity 0.8s ease;
  background-color: #9ed800;
  color: #fff;
}
@media (hover: hover) {
  .curriculum_tab-button_02[aria-selected=false]:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .curriculum_tab-button_02[aria-selected=false]:hover {
    opacity: 0.6;
  }
}
.curriculum_tab-button_03 {
  border: 2px solid #f1b141;
}
.curriculum_tab-button_03[aria-selected=true] {
  background-color: #fff;
}
.curriculum_tab-button_03[aria-selected=true] .curriculum_tab-button-icon::after {
  background-color: #f1b141;
}
.curriculum_tab-button_03[aria-selected=false] {
  transition: opacity 0.8s ease;
  background-color: #f1b141;
  color: #fff;
}
@media (hover: hover) {
  .curriculum_tab-button_03[aria-selected=false]:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .curriculum_tab-button_03[aria-selected=false]:hover {
    opacity: 0.6;
  }
}

.curriculum_tab-button-icon {
  position: relative;
}
@media (max-width: 767.98px) {
  .curriculum_tab-button-icon {
    width: 15px;
    height: 15px;
  }
}
@media (min-width: 768px) {
  .curriculum_tab-button-icon {
    width: 24px;
    height: 24px;
  }
}
.curriculum_tab-button-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translateY(-50%);
  background-color: #fff;

  -webkit-mask-image: url("/campaign/img/icon_arrow.svg");

          mask-image: url("/campaign/img/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (max-width: 767.98px) {
  .curriculum_tab-button-icon::after {
    right: 0;
  }
}
@media (min-width: 768px) {
  .curriculum_tab-button-icon::after {
    right: 0;
  }
}

.curriculum_tab-panel {
  position: relative;
  z-index: 0;
}
.curriculum_tab-panel[aria-hidden=true] {
  visibility: hidden;
  overflow: hidden;
  opacity: 0;
  height: 0;
}
.curriculum_tab-panel[aria-hidden=false] {
  visibility: visible;
  opacity: 1;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel[aria-hidden=false] {
    padding: calc(20 * var(--base-font, 1) / 10) calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel[aria-hidden=false] {
    padding: calc(40 * var(--base-font, 1) / 10) calc(40 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel_01[aria-hidden=false] {
  border: 2px solid #87d5fa;
}
.curriculum_tab-panel_01 thead th {
  background-color: #87d5fa;
}
.curriculum_tab-panel_01 tbody tr:nth-child(odd) th,
.curriculum_tab-panel_01 tbody tr:nth-child(odd) td {
  background-color: rgba(135, 213, 250, 0.2);
}
.curriculum_tab-panel_01 tbody tr:nth-child(even) th,
.curriculum_tab-panel_01 tbody tr:nth-child(even) td {
  background-color: rgba(135, 213, 250, 0.4);
}
.curriculum_tab-panel_02[aria-hidden=false] {
  border: 2px solid #9ed800;
}
.curriculum_tab-panel_02 thead th {
  background-color: #9ed800;
}
.curriculum_tab-panel_02 tbody tr:nth-child(odd) th,
.curriculum_tab-panel_02 tbody tr:nth-child(odd) td {
  background-color: rgba(158, 216, 0, 0.2);
}
.curriculum_tab-panel_02 tbody tr:nth-child(even) th,
.curriculum_tab-panel_02 tbody tr:nth-child(even) td {
  background-color: rgba(158, 216, 0, 0.4);
}
.curriculum_tab-panel_03[aria-hidden=false] {
  border: 2px solid #f1b141;
}
.curriculum_tab-panel_03 thead th {
  background-color: #f1b141;
}
.curriculum_tab-panel_03 tbody tr:nth-child(odd) th,
.curriculum_tab-panel_03 tbody tr:nth-child(odd) td {
  background-color: rgba(241, 177, 65, 0.2);
}
.curriculum_tab-panel_03 tbody tr:nth-child(even) th,
.curriculum_tab-panel_03 tbody tr:nth-child(even) td {
  background-color: rgba(241, 177, 65, 0.4);
}

.curriculum_tab-panel-inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.curriculum_tab-pannel-list {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  max-width: calc(780 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .curriculum_tab-pannel-list {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-pannel-list {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}

.curriculum_tab-pannel-item {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .curriculum_tab-pannel-item {
    gap: calc(8 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-pannel-item {
    gap: calc(13 * var(--base-font, 1) / 10);
  }
}

.curriculum_tab-panel-ttl {
  letter-spacing: normal;
  color: #2b558c;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-ttl {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-ttl {
    font-size: calc(28 * var(--base-font, 1) / 10);
  }
}

.curriculum_tab-panel-table {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table {
    gap: calc(1 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table {
    gap: calc(4 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table thead tr {
  display: flex;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table thead tr {
    gap: calc(1 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table thead tr {
    gap: calc(4 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table thead th {
  padding: calc(10 * var(--base-font, 1) / 10);
  text-align: center;
  color: #fff;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table thead th:first-child {
    width: 35%;
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table thead th:first-child {
    width: 30%;
  }
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table thead th:last-child {
    width: 64.7%;
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table thead th:last-child {
    width: 68.7%;
  }
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table thead th {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table thead th {
    font-size: calc(15 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table tbody {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table tbody {
    gap: calc(1 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table tbody {
    gap: calc(4 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table tbody tr {
  display: flex;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table tbody tr {
    gap: calc(1 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table tbody tr {
    gap: calc(4 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table tbody th {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  letter-spacing: normal;
  color: #2b558c;
  font-weight: 500;
  line-height: 1.3;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table tbody th {
    padding: calc(10 * var(--base-font, 1) / 10) calc(5 * var(--base-font, 1) / 10);
    width: 35%;
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table tbody th {
    padding: calc(15 * var(--base-font, 1) / 10);
    width: 30%;
    font-size: calc(15 * var(--base-font, 1) / 10);
  }
}
.curriculum_tab-panel-table tbody td {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  letter-spacing: normal;
  font-weight: 400;
  line-height: 1.3;
}
@media (max-width: 767.98px) {
  .curriculum_tab-panel-table tbody td {
    padding: calc(10 * var(--base-font, 1) / 10) calc(5 * var(--base-font, 1) / 10);
    width: 64.7%;
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_tab-panel-table tbody td {
    padding: calc(15 * var(--base-font, 1) / 10);
    width: 68.7%;
    font-size: calc(15 * var(--base-font, 1) / 10);
  }
}

.curriculum_bottom-note {
  text-align: right;
  letter-spacing: normal;
  color: #626262;
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .curriculum_bottom-note {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .curriculum_bottom-note {
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  schedule
-------------------------------- */
.schedule .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .schedule {
    padding-top: calc(60 * var(--base-font, 1) / 10);
    padding-bottom: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule {
    padding-top: calc(110 * var(--base-font, 1) / 10);
    padding-bottom: calc(55 * var(--base-font, 1) / 10);
  }
}

.schedule_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .schedule_inner {
    gap: calc(47 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_inner {
    gap: calc(45 * var(--base-font, 1) / 10);
  }
}

.schedule_contents {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .schedule_contents {
    gap: calc(32 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_contents {
    gap: calc(35 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .schedule_lead {
    width: calc(286 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_lead {
    width: calc(719 * var(--base-font, 1) / 10);
  }
}

.schedule_container {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .schedule_container {
    gap: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_container {
    gap: calc(60 * var(--base-font, 1) / 10);
  }
}

.schedule_top {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .schedule_top {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_top {
    gap: calc(14 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .schedule_ttl {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .schedule_ttl {
    width: calc(625 * var(--base-font, 1) / 10);
  }
}

.schedule_top-contents {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .schedule_top-contents {
    gap: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_top-contents {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.schedule_top-figure {
  width: 100%;
}
.schedule_top-figure img {
  max-width: 100%;
}

.schedule_top-figure-note {
  text-align: right;
  letter-spacing: normal;
  color: #626262;
}
@media (max-width: 767.98px) {
  .schedule_top-figure-note {
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .schedule_top-figure-note {
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  space
-------------------------------- */
.space {
  background-color: #def6ff;
}
.space .l-contents {
  max-width: calc(880 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .space {
    padding-top: calc(50 * var(--base-font, 1) / 10);
    padding-bottom: calc(60 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .space {
    padding-top: calc(70 * var(--base-font, 1) / 10);
    padding-bottom: calc(60 * var(--base-font, 1) / 10);
  }
}

.space_inner {
  display: flex;
}
@media (max-width: 767.98px) {
  .space_inner {
    flex-direction: column;

    gap: calc(25 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .space_inner {
    gap: 1%;
  }
}

.space_text-container {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .space_text-container {
    gap: calc(9 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .space_text-container {
    width: 51%;

    gap: calc(6 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .space_heading {
    width: calc(240 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .space_heading {
    width: calc(280 * var(--base-font, 1) / 10);
  }
}

.space_text {
  text-align: center;
}
@media (max-width: 767.98px) {
  .space_text {
    font-size: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .space_text {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .space_image {
    width: 47%;
  }
}

/* --------------------------------
  fee
-------------------------------- */
.fee .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .fee {
    padding-top: calc(93 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .fee {
    padding-top: calc(150 * var(--base-font, 1) / 10);
  }
}

.fee_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .fee_inner {
    gap: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .fee_inner {
    gap: calc(44 * var(--base-font, 1) / 10);
  }
}

.fee_contents {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .fee_contents {
    gap: calc(28 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .fee_contents {
    gap: calc(54 * var(--base-font, 1) / 10);
  }
}

.fee_text {
  text-align: center;
  letter-spacing: normal;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .fee_text {
    font-size: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .fee_text {
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}

.fee_image {
  width: 100%;
}
.fee_image img {
  width: 100%;
}

/* --------------------------------
  voice
-------------------------------- */
@media (max-width: 767.98px) {
  .voice {
    padding-top: calc(85 * var(--base-font, 1) / 10);
    padding-bottom: calc(60 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice {
    padding-top: calc(138 * var(--base-font, 1) / 10);
    padding-bottom: calc(120 * var(--base-font, 1) / 10);
  }
}
.voice .l-contents {
  max-width: calc(1100 * var(--base-font, 1) / 10);
}

.voice_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .voice_lead {
    margin-top: calc(40 * var(--base-font, 1) / 10);
    width: calc(335 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_lead {
    margin-top: calc(60 * var(--base-font, 1) / 10);
    width: calc(507 * var(--base-font, 1) / 10);
  }
}

.voice_contents-swiper {
  overflow: visible;
  width: 100%;
}
@media (max-width: 767.98px) {
  .voice_contents-swiper {
    margin-top: calc(25 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-swiper {
    margin-top: calc(50 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .voice_contents-swiper-slide {
    width: calc(600 * var(--base-font, 1) / 10) !important;
  }
}

.voice_contents-item {
  display: flex;
  flex-direction: column;
  background-color: #def6ff;
}
@media (max-width: 767.98px) {
  .voice_contents-item {
    padding: calc(20 * var(--base-font, 1) / 10) calc(20 * var(--base-font, 1) / 10);
    height: calc(368 * var(--base-font, 1) / 10) !important;

    gap: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-item {
    padding: calc(34 * var(--base-font, 1) / 10) calc(40 * var(--base-font, 1) / 10);
    height: calc(374 * var(--base-font, 1) / 10) !important;

    gap: calc(14 * var(--base-font, 1) / 10);
  }
}

.voice_contents-top-container {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 0;
}
@media (max-width: 767.98px) {
  .voice_contents-top-container {
    gap: calc(12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-top-container {
    gap: calc(12 * var(--base-font, 1) / 10);
  }
}

.voice_contents-top {
  position: relative;
  z-index: 1;
}

.voice_contents-top-text {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .voice_contents-top-text {
    gap: calc(2 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-top-text {
    gap: calc(10 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .voice_contents-top-ttl {
    width: calc(182 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-top-ttl {
    width: calc(369 * var(--base-font, 1) / 10);
  }
}

.voice_contents-top-name {
  color: #0096d9;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .voice_contents-top-name {
    font-size: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_contents-top-name {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}

.voice_contents-top-image {
  position: absolute;
  right: 0;
}
@media (max-width: 767.98px) {
  .voice_contents-top-image {
    top: 50%;
    margin-right: calc(-8 * var(--base-font, 1) / 10);
    width: calc(77 * var(--base-font, 1) / 10);
    transform: translateY(-50%);
  }
}
@media (min-width: 768px) {
  .voice_contents-top-image {
    top: calc(-6 * var(--base-font, 1) / 10);
    width: calc(120 * var(--base-font, 1) / 10);
  }
}

.voice_contents-bottom-comment {
  letter-spacing: normal;
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .voice_contents-bottom-comment {
    font-size: calc(14 * var(--base-font, 1) / 10);
    line-height: 1.7;
  }
}
@media (min-width: 768px) {
  .voice_contents-bottom-comment {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
.voice_contents-bottom-comment span {
  background-color: #ffea32;
}

.voice_slider-option-container {
  display: flex;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .voice_slider-option-container {
    margin-top: calc(28 * var(--base-font, 1) / 10);
  }
}

.voice_slider-option {
  display: flex;
  align-items: center;
  position: relative;
  width: calc(240 * var(--base-font, 1) / 10);
}

.voice_slider-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.voice_slider-pagination .swiper-pagination-bullet {
  opacity: 1;
  margin-right: calc(4 * var(--base-font, 1) / 10);
  margin-left: calc(4 * var(--base-font, 1) / 10);
  border-radius: 50%;
  width: calc(8 * var(--base-font, 1) / 10);
  height: calc(8 * var(--base-font, 1) / 10);
  background-color: rgba(41, 181, 244, 0.2);
}
.voice_slider-pagination .swiper-pagination-bullet-active {
  background-color: #29b5f4;
}

.voice_slider-prev,
.voice_slider-next {
  position: absolute;
  width: calc(40 * var(--base-font, 1) / 10);
  height: calc(40 * var(--base-font, 1) / 10);
  transition: opacity 0.8s ease;
}
@media (hover: hover) {
  .voice_slider-prev:hover,
  .voice_slider-next:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .voice_slider-prev:hover,
  .voice_slider-next:hover {
    opacity: 0.6;
  }
}
.voice_slider-prev img,
.voice_slider-next img {
  width: 100%;
}

.voice_slider-prev {
  left: 0;
  transform: rotate(180deg);
}

.voice_slider-next {
  right: 0;
}

.voice_slider-note {
  width: 100%;
  text-align: right;
  color: #626262;
}
@media (max-width: 767.98px) {
  .voice_slider-note {
    margin-top: calc(10 * var(--base-font, 1) / 10);
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .voice_slider-note {
    margin-top: calc(20 * var(--base-font, 1) / 10);
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  result
-------------------------------- */
.result {
  background-color: #fcf2f5;
}
@media (max-width: 767.98px) {
  .result {
    padding-top: calc(50 * var(--base-font, 1) / 10);
    padding-bottom: calc(50 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result {
    padding-top: calc(80 * var(--base-font, 1) / 10);
    padding-bottom: calc(80 * var(--base-font, 1) / 10);
  }
}
.result .l-contents {
  max-width: calc(880 * var(--base-font, 1) / 10);
}

.result_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .result_inner {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result_inner {
    gap: calc(26 * var(--base-font, 1) / 10);
  }
}

@media (max-width: 767.98px) {
  .result_heading {
    width: calc(294 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result_heading {
    width: calc(441 * var(--base-font, 1) / 10);
  }
}

.result_image {
  width: 100%;
}
.result_image img {
  width: 100%;
}

.result_text-container {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .result_text-container {
    gap: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result_text-container {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}

.result_text {
  text-align: center;
  letter-spacing: normal;
  color: #ff5266;
  font-weight: 900;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .result_text {
    font-size: calc(24 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result_text {
    font-size: calc(36 * var(--base-font, 1) / 10);
  }
}

.result_note {
  letter-spacing: normal;
  color: #626262;
}
@media (max-width: 767.98px) {
  .result_note {
    padding-left: calc(10 * var(--base-font, 1) / 10);
    text-indent: calc(-10 * var(--base-font, 1) / 10);
    font-size: calc(10 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .result_note {
    padding-left: calc(12 * var(--base-font, 1) / 10);
    text-indent: calc(-12 * var(--base-font, 1) / 10);
    font-size: calc(12 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  question
-------------------------------- */
.question {
  position: relative;
}
@media (max-width: 767.98px) {
  .question {
    padding-top: calc(83 * var(--base-font, 1) / 10);
    padding-bottom: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question {
    padding-top: calc(145 * var(--base-font, 1) / 10);
    padding-bottom: calc(100 * var(--base-font, 1) / 10);
  }
}
.question .l-contents {
  max-width: calc(1050 * var(--base-font, 1) / 10);
}

.question_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .question_inner {
    gap: calc(50 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_inner {
    gap: calc(80 * var(--base-font, 1) / 10);
  }
}

.question_acc_wrap {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .question_acc_wrap {
    gap: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_wrap {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}

.question_acc {
  border-radius: calc(10 * var(--base-font, 1) / 10);
  background-color: #def6ff;
}
@media (max-width: 767.98px) {
  .question_acc {
    box-shadow: 0 calc(4 * var(--base-font, 1) / 10) 0 0 rgba(0, 0, 0, 0.25);
  }
}
@media (min-width: 768px) {
  .question_acc {
    box-shadow: 0 calc(4 * var(--base-font, 1) / 10) 0 0 rgba(0, 0, 0, 0.25);
  }
}

.question_acc_question {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  transition: opacity 0.8s ease;
}
@media (hover: hover) {
  .question_acc_question:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .question_acc_question:hover {
    opacity: 0.6;
  }
}
@media (max-width: 767.98px) {
  .question_acc_question {
    padding-top: calc(14 * var(--base-font, 1) / 10);
    padding-bottom: calc(14 * var(--base-font, 1) / 10);
    min-height: calc(76 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_question {
    padding-top: calc(45 * var(--base-font, 1) / 10);
    padding-bottom: calc(45 * var(--base-font, 1) / 10);
  }
}
.question_acc_question::before {
  content: "";
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  height: 2px;
  transition: opacity 0.3s ease-out;
  transform: translateX(-50%);
  background-color: #fff;
}
@media (max-width: 767.98px) {
  .question_acc_question::before {
    width: 81%;
  }
}
@media (min-width: 768px) {
  .question_acc_question::before {
    width: 87%;
  }
}
.question_acc_question.active .question_acc_question_inner::after {
  transform: rotate(0deg);
}
.question_acc_question.active::before {
  opacity: 1;
}

.question_acc_question_inner {
  position: relative;
  letter-spacing: 0;
  color: #2b558c;
  font-weight: bold;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .question_acc_question_inner {
    margin: 0 calc(34 * var(--base-font, 1) / 10) 0 calc(14 * var(--base-font, 1) / 10);
    padding-left: calc(40 * var(--base-font, 1) / 10);
    font-size: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_question_inner {
    margin: 0 calc(90 * var(--base-font, 1) / 10) 0;
    padding-right: calc(50 * var(--base-font, 1) / 10);
    padding-left: calc(66 * var(--base-font, 1) / 10);
    font-size: calc(20 * var(--base-font, 1) / 10);
  }
}
.question_acc_question_inner::before,
.question_acc_question_inner::after {
  content: "";
  position: absolute;
  background-color: #0096d9;
}
@media (max-width: 767.98px) {
  .question_acc_question_inner::before,
  .question_acc_question_inner::after {
    top: 50%;
    right: calc(-15 * var(--base-font, 1) / 10);
    width: calc(14 * var(--base-font, 1) / 10);
    height: calc(2 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_question_inner::before,
  .question_acc_question_inner::after {
    top: 50%;
    right: 0;
    width: calc(40 * var(--base-font, 1) / 10);
    height: 2px;
  }
}
.question_acc_question_inner::after {
  transition: transform 0.3s ease-out;
  transform: rotate(90deg);
}

.question_acc_answer {
  display: none;
}

@media (max-width: 767.98px) {
  .question_acc_answer_inner {
    margin: 0 calc(29 * var(--base-font, 1) / 10) 0;
    padding: calc(20 * var(--base-font, 1) / 10) 0 calc(20 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_answer_inner {
    margin: 0 calc(85 * var(--base-font, 1) / 10) 0;
    padding: calc(33 * var(--base-font, 1) / 10) 0 calc(33 * var(--base-font, 1) / 10);
  }
}

.question_acc_answer_text {
  letter-spacing: 0;
  color: #333;
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .question_acc_answer_text {
    font-size: calc(14 * var(--base-font, 1) / 10);
    line-height: 1.714;
  }
}
@media (min-width: 768px) {
  .question_acc_answer_text {
    font-size: calc(18 * var(--base-font, 1) / 10);
    line-height: 1.666;
  }
}

.question_acc_question_icon {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media (max-width: 767.98px) {
  .question_acc_question_icon {
    width: calc(32 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .question_acc_question_icon {
    width: calc(50 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  flow
-------------------------------- */
@media (max-width: 767.98px) {
  .lp-flow {
    padding-top: calc(83 * var(--base-font, 1) / 10);
    padding-bottom: calc(50 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow {
    padding-top: calc(129 * var(--base-font, 1) / 10);
    padding-bottom: calc(100 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow .l-contents {
    max-width: calc(880 * var(--base-font, 1) / 10);
  }
}

.lp-flow_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .lp-flow_inner {
    gap: calc(45 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_inner {
    gap: calc(75 * var(--base-font, 1) / 10);
  }
}

.lp-flow_contents {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .lp-flow_contents {
    gap: calc(45 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_contents {
    gap: calc(56 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
@media (max-width: 767.98px) {
  .lp-flow_top {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top {
    max-width: calc(780 * var(--base-font, 1) / 10);

    gap: calc(60 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-list {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .lp-flow_top-list {
    gap: calc(40 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top-list {
    gap: calc(62 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-item {
  display: flex;
  flex-direction: column;
  position: relative;
  letter-spacing: normal;

  gap: calc(10 * var(--base-font, 1) / 10);
}
.lp-flow_top-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  background-color: #29b5f4;

  -webkit-clip-path: polygon(100% 0, 0 0, 50% 40%);

          clip-path: polygon(100% 0, 0 0, 50% 40%);
}
@media (max-width: 767.98px) {
  .lp-flow_top-item:not(:last-child)::after {
    bottom: calc(-50 * var(--base-font, 1) / 10);
    width: calc(30 * var(--base-font, 1) / 10);
    height: calc(34 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top-item:not(:last-child)::after {
    bottom: calc(-68 * var(--base-font, 1) / 10);
    width: calc(40 * var(--base-font, 1) / 10);
    height: calc(42 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-item-ttl-container {
  display: flex;
}
@media (max-width: 767.98px) {
  .lp-flow_top-item-ttl-container {
    gap: calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top-item-ttl-container {
    align-items: center;

    gap: calc(30 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-item-number-container {
  flex-shrink: 0;
  position: relative;
  background-color: #f8e72a;
}
@media (max-width: 767.98px) {
  .lp-flow_top-item-number-container {
    width: calc(32 * var(--base-font, 1) / 10);
    height: calc(32 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top-item-number-container {
    width: calc(40 * var(--base-font, 1) / 10);
    height: calc(40 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-item-number {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #2b558c;
  font-family: "Roboto", sans-serif;
  font-size: calc(24 * var(--base-font, 1) / 10);
}

.lp-flow_top-item-ttl {
  color: #2b558c;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .lp-flow_top-item-ttl {
    font-size: calc(19 * var(--base-font, 1) / 10);
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .lp-flow_top-item-ttl {
    font-size: calc(26 * var(--base-font, 1) / 10);
  }
}

.lp-flow_top-item-text {
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .lp-flow_top-item-text {
    font-size: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-flow_top-item-text {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  difference
-------------------------------- */
.difference {
  background-color: #def6ff;
}
@media (max-width: 767.98px) {
  .difference {
    padding-top: calc(27 * var(--base-font, 1) / 10);
    padding-bottom: calc(50 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .difference {
    padding-top: calc(30 * var(--base-font, 1) / 10);
    padding-bottom: calc(96 * var(--base-font, 1) / 10);
  }
}
.difference .l-contents {
  max-width: calc(880 * var(--base-font, 1) / 10);
}

.difference_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .difference_inner {
    gap: calc(30 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .difference_inner {
    gap: calc(34 * var(--base-font, 1) / 10);
  }
}

.difference_heading {
  width: 100%;
}
.difference_heading img {
  width: 100%;
}

.difference_contents {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .difference_contents {
    gap: calc(28 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .difference_contents {
    gap: calc(50 * var(--base-font, 1) / 10);
  }
}

.difference_figure {
  width: 100%;
}
.difference_figure img {
  width: 100%;
}

@media (max-width: 767.98px) {
  .difference_text {
    width: calc(245 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .difference_text {
    width: calc(571 * var(--base-font, 1) / 10);
  }
}

/* --------------------------------
  course
-------------------------------- */
.course {
  background-color: #fffbd1;
}
@media (max-width: 767.98px) {
  .course {
    padding-top: calc(34 * var(--base-font, 1) / 10);
    padding-bottom: calc(32 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course {
    padding-top: calc(50 * var(--base-font, 1) / 10);
    padding-bottom: calc(60 * var(--base-font, 1) / 10);
  }
}
.course .l-contents {
  max-width: calc(725 * var(--base-font, 1) / 10);
}

.course_inner {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .course_inner {
    gap: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_inner {
    gap: calc(20 * var(--base-font, 1) / 10);
  }
}

.course_heading {
  position: relative;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  color: #2b558c;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .course_heading {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_heading {
    font-size: calc(26 * var(--base-font, 1) / 10);
  }
}
.course_heading::before,
.course_heading::after {
  content: "";
  position: absolute;
  bottom: 10%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 767.98px) {
  .course_heading::before,
  .course_heading::after {
    width: calc(13 * var(--base-font, 1) / 10);
    height: calc(24 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_sm.png");
  }
}
@media (min-width: 768px) {
  .course_heading::before,
  .course_heading::after {
    width: calc(17 * var(--base-font, 1) / 10);
    height: calc(34 * var(--base-font, 1) / 10);
    background-image: url("/campaign/img/decoration_heading01_lg.png");
  }
}
@media (max-width: 767.98px) {
  .course_heading::before {
    left: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_heading::before {
    left: calc(-24 * var(--base-font, 1) / 10);
  }
}
.course_heading::after {
  transform: scale(-1, 1);
}
@media (max-width: 767.98px) {
  .course_heading::after {
    right: calc(-16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_heading::after {
    right: calc(-24 * var(--base-font, 1) / 10);
  }
}

.course_acc_wrap {
  display: flex;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .course_acc_wrap {
    gap: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_wrap {
    gap: calc(26 * var(--base-font, 1) / 10);
  }
}

.course_acc {
  border-radius: calc(10 * var(--base-font, 1) / 10);
}
.course_acc_hs {
  background-color: #87d5fa;
  box-shadow: 0 calc(4 * var(--base-font, 1) / 10) 0 0 #65a0bb;
}
.course_acc_jh {
  background-color: #9ed800;
  box-shadow: 0 calc(4 * var(--base-font, 1) / 10) 0 0 #77a200;
}
.course_acc_es {
  background-color: #f1b141;
  box-shadow: 0 calc(4 * var(--base-font, 1) / 10) 0 0 #b58531;
}

.course_acc_ttl {
  position: relative;
  transition: opacity 0.8s ease;
}
@media (hover: hover) {
  .course_acc_ttl:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .course_acc_ttl:hover {
    opacity: 0.6;
  }
}
@media (max-width: 767.98px) {
  .course_acc_ttl {
    padding-top: calc(17 * var(--base-font, 1) / 10);
    padding-bottom: calc(17 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_ttl {
    padding-top: calc(20 * var(--base-font, 1) / 10);
    padding-bottom: calc(20 * var(--base-font, 1) / 10);
  }
}
.course_acc_ttl.active .course_acc_ttl_inner .course_acc_ttl_plus::after {
  transform: rotate(0deg) translate(-50%, -50%);
}

.course_acc_ttl_inner {
  position: relative;
  text-align: center;
  letter-spacing: 0;
  color: #333;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .course_acc_ttl_inner {
    margin: 0 calc(15 * var(--base-font, 1) / 10) 0 calc(12 * var(--base-font, 1) / 10);
    padding-left: calc(8 * var(--base-font, 1) / 10);
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_ttl_inner {
    margin: 0 calc(20 * var(--base-font, 1) / 10) 0 calc(16 * var(--base-font, 1) / 10);
    padding-left: calc(30 * var(--base-font, 1) / 10);
    font-size: calc(22 * var(--base-font, 1) / 10);
  }
}

.course_acc_contents {
  display: none;
}

.course_acc_contents_inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  border-radius: calc(10 * var(--base-font, 1) / 10);
  background-color: #fff;
}
@media (max-width: 767.98px) {
  .course_acc_contents_inner {
    margin: 0 calc(20 * var(--base-font, 1) / 10) calc(20 * var(--base-font, 1) / 10);
    padding: calc(15 * var(--base-font, 1) / 10) calc(25 * var(--base-font, 1) / 10) calc(25 * var(--base-font, 1) / 10);

    gap: calc(22 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_contents_inner {
    margin: 0 calc(20 * var(--base-font, 1) / 10) calc(20 * var(--base-font, 1) / 10);
    padding: calc(20 * var(--base-font, 1) / 10) calc(25 * var(--base-font, 1) / 10) calc(30 * var(--base-font, 1) / 10);

    gap: calc(22 * var(--base-font, 1) / 10);
  }
}

.course_acc_contents_list {
  display: grid;
  width: 100%;
}
@media (min-width: 768px) {
  .course_acc_contents_list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.course_acc_contents_item {
  letter-spacing: normal;
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .course_acc_contents_item {
    font-size: calc(14 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_contents_item {
    font-size: calc(18 * var(--base-font, 1) / 10);
  }
}

.course_acc_ttl_icon {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media (max-width: 767.98px) {
  .course_acc_ttl_icon {
    width: calc(46 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_ttl_icon {
    width: calc(50 * var(--base-font, 1) / 10);
  }
}

.course_acc_ttl_plus {
  position: absolute;
  top: 50%;
  right: 0;
  border-radius: 50%;
  width: calc(28 * var(--base-font, 1) / 10);
  height: calc(28 * var(--base-font, 1) / 10);
  transform: translateY(-50%);
  background-color: #fff;
}
.course_acc_ttl_plus::before,
.course_acc_ttl_plus::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #333;
}
@media (max-width: 767.98px) {
  .course_acc_ttl_plus::before,
  .course_acc_ttl_plus::after {
    width: calc(14 * var(--base-font, 1) / 10);
    height: 1px;
  }
}
@media (min-width: 768px) {
  .course_acc_ttl_plus::before,
  .course_acc_ttl_plus::after {
    width: calc(14 * var(--base-font, 1) / 10);
    height: 1px;
  }
}
.course_acc_ttl_plus::before {
  transform: translate(-50%, -50%);
}
.course_acc_ttl_plus::after {
  transition: transform 0.3s ease-out;
  transform: translate(-50%, -50%) rotate(90deg);
}

.course_acc_button {
  display: block;
  position: relative;
  padding-top: calc(14 * var(--base-font, 1) / 10);
  padding-bottom: calc(14 * var(--base-font, 1) / 10);
  border-radius: calc(10 * var(--base-font, 1) / 10);
  width: 100%;
  max-width: calc(280 * var(--base-font, 1) / 10);
  transition: opacity 0.8s ease;
  transition: opacity 0.8s ease;
  background-color: #2b558c;
  text-align: center;
  text-decoration: none;
  letter-spacing: normal;
  color: #fff;
  box-shadow: 0px calc(4 * var(--base-font, 1) / 10) 0px 0px #204069;
  font-size: calc(18 * var(--base-font, 1) / 10);
  font-weight: 700;
  line-height: 1.4;
}
@media (hover: hover) {
  .course_acc_button:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .course_acc_button:hover {
    opacity: 0.6;
  }
}
.course_acc_button:visited,
.course_acc_button:hover {
  color: #fff;
}
.course_acc_button::after {
  content: "";
  position: absolute;
  top: 50%;
  width: calc(20 * var(--base-font, 1) / 10);
  height: calc(20 * var(--base-font, 1) / 10);
  transform: translateY(-50%);
  background-color: #fff;

  -webkit-mask-image: url("/campaign/img/icon_arrow.svg");

          mask-image: url("/campaign/img/icon_arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (max-width: 767.98px) {
  .course_acc_button::after {
    right: calc(20 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .course_acc_button::after {
    right: calc(20 * var(--base-font, 1) / 10);
  }
}
@media (max-width: 767.98px) {
  .course_acc_button {
    flex-direction: column;
  }
}