@charset "UTF-8";
html, body {
  font-size: 62.5%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

body {
  width: 100%;
  min-height: 100dvh;
  position: relative;
  z-index: 1;
  overflow-x: hidden;
  height: 100%;
}
body.open {
  overflow: hidden;
}

h1, h2, h3, h4, h5 {
  line-height: 1em;
}

p, a, li, button {
  line-height: 1.625;
}

p {
  text-align: justify;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

@media (hover: hover) and (pointer: fine) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.roboto {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.wrapper {
  width: min(900px, 100vw);
  margin-inline: auto;
}

.container {
  padding-inline: 5%;
}

.co-or {
  color: #ffaa46;
}
.co-gry {
  color: #707070;
}
.co-bl {
  color: #2c42ad;
}
.co-wt {
  color: #fff;
}

.txt-reg {
  font-size: 3.73vw;
  font-weight: 400;
}
@media screen and (min-width: 900px) {
  .txt-reg {
    font-size: 19.2px;
  }
}

.header {
  height: 15vw;
  background-color: #fff;
}
@media screen and (min-width: 900px) {
  .header {
    height: 50px;
  }
}
.header__inner {
  -webkit-padding-start: 3.47vw;
          padding-inline-start: 3.47vw;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 900px) {
  .header__inner {
    -webkit-padding-start: 0;
            padding-inline-start: 0;
  }
}
.header__inner h1 {
  width: 59.73vw;
  -ms-flex-item-align: center;
      align-self: center;
  max-width: 448px;
}
@media screen and (min-width: 900px) {
  .header__inner h1 {
    width: 224px;
  }
}
.header__inner h1 a {
  display: block;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.header__inner h1 a:focus {
  opacity: 0.8;
}
@media (hover: hover) and (pointer: fine) {
  .header__inner h1 a:hover {
    opacity: 0.8;
  }
}
.header__btn {
  background-color: #2c42ad;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto;
  place-content: center;
  gap: 2vw;
  cursor: pointer;
}
.header__btn span {
  display: block;
  width: 50%;
  height: 2px;
  border-radius: 1px;
  background-color: #fff;
  margin-inline: auto;
}

.main {
  min-height: calc(100vh - 15vw - 12.53vw);
}
@media screen and (min-width: 900px) {
  .main {
    min-height: calc(100vh - 50px - 70px);
  }
}

.hero {
  aspect-ratio: 375 / 454;
  background-image: url(../images/img-hero.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  -webkit-padding-before: 5.87vw;
          padding-block-start: 5.87vw;
  -webkit-margin-after: 10.67vw;
          margin-block-end: 10.67vw;
  overflow: hidden;
}
@media screen and (min-width: 900px) {
  .hero {
    aspect-ratio: 1/1;
    -webkit-padding-before: 52.8px;
            padding-block-start: 52.8px;
    -webkit-margin-after: 96px;
            margin-block-end: 96px;
  }
}
.hero__txtImg {
  width: 77.33vw;
  -webkit-margin-start: 2.93vw;
          margin-inline-start: 2.93vw;
}
@media screen and (min-width: 900px) {
  .hero__txtImg {
    width: 696px;
    -webkit-margin-start: 26.4px;
            margin-inline-start: 26.4px;
  }
}
.hero__txt {
  font-weight: 700;
  background-color: #fff;
  padding-inline: 1em 0.8em;
  padding-block: 0.25em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.hero__txt .co-gry {
  font-size: 0.8461538462em;
}
.hero__txt:not(:first-of-type) {
  -webkit-margin-before: 0.5em;
          margin-block-start: 0.5em;
}
.hero__txt_wrap {
  font-size: 6.93vw;
  line-height: 1;
  -webkit-margin-before: 40vw;
          margin-block-start: 40vw;
}
@media screen and (min-width: 900px) {
  .hero__txt_wrap {
    font-size: 48px;
    -webkit-margin-before: 240px;
            margin-block-start: 240px;
  }
}

.scroll {
  font-size: 5.33vw;
  font-weight: 700;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
}
@media screen and (min-width: 900px) {
  .scroll {
    font-size: 33.6px;
  }
}
.scroll span {
  display: block;
}
.scroll .co-bl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  -webkit-margin-after: 0.5em;
          margin-block-end: 0.5em;
}
.scroll__line {
  width: 1px;
  height: 36.27vw;
  margin-inline: auto;
  background-color: #2c42ad;
}
@media screen and (min-width: 900px) {
  .scroll__line {
    height: 240px;
  }
}

.lead {
  font-size: 4.27vw;
  -webkit-padding-after: 2.8125em;
          padding-block-end: 2.8125em;
}
@media screen and (min-width: 900px) {
  .lead {
    font-size: 38.4px;
  }
}
.lead p {
  text-align: center;
}
.lead__1 {
  line-height: 1.2;
}
.lead__1 span {
  display: block;
  -webkit-margin-before: 2em;
          margin-block-start: 2em;
}
.lead__2 {
  font-size: 1.875em;
  font-weight: 700;
  -webkit-margin-before: 0.8em;
          margin-block-start: 0.8em;
}

.points__heading {
  font-size: 4.27vw;
  font-weight: 700;
  background-color: #2c42ad;
  padding-block: 18.13vw 15.2vw;
}
@media screen and (min-width: 900px) {
  .points__heading {
    font-size: 19.2px;
    padding-block: 96px 96px;
  }
}
.points__heading h2 {
  -webkit-padding-after: 1em;
          padding-block-end: 1em;
  border-bottom: 2px solid #fff;
  -webkit-margin-after: 0.8em;
          margin-block-end: 0.8em;
}
.points__heading .co-wt {
  text-align: center;
  line-height: 1.75;
}
@media screen and (min-width: 900px) {
  .points__txtImg1 {
    width: 60%;
    margin-inline: auto;
  }
}
.points__txtImg2 {
  width: 60vw;
  margin-inline: auto;
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}
@media screen and (min-width: 900px) {
  .points__txtImg2 {
    width: 384px;
  }
}
.points__block {
  font-size: 3.73vw;
  padding-block: 11.73vw 14.67vw;
  width: 100%;
  overflow: hidden;
}
@media screen and (min-width: 900px) {
  .points__block {
    font-size: 19.2px;
    padding-block: 72px 108px;
  }
}
.points__block-num {
  font-size: 2.1428571429em;
  -webkit-margin-after: 0.2em;
          margin-block-end: 0.2em;
  text-align: center;
}
@media screen and (min-width: 900px) {
  .points__block-num {
    font-size: 30px;
  }
}
.points__block-num .-num {
  font-size: 1.9em;
}
@media screen and (min-width: 900px) {
  .points__block-list {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}
.points__block-list li {
  -webkit-margin-start: 1em;
          margin-inline-start: 1em;
  text-indent: -1em;
}
.points__block-list li:not(:first-of-type) {
  -webkit-margin-before: 0.8em;
          margin-block-start: 0.8em;
}
.points__block-list__sml_01 {
  font-size: 70%;
  opacity: 0.95;
}
.points__block-list__passrate {
  display: inline-block;
  margin-right: 0.3em;
  text-indent: 0.04em;
  font-size: 170%;
  color: #ffaa46;
  letter-spacing: -0.24em;
}
.points__block-list__passrate_unit {
  display: inline-block;
  text-indent: 0.3em;
  letter-spacing: 0em;
  font-size: 72.5%;
}
.points__block-head h3 {
  font-size: 2.1428571429em;
  font-weight: 700;
  text-align: center;
  margin-block: 0.8em;
  line-height: 1.4;
}
.points__block-a {
  background-color: #e3f4fa;
}
.points__block-a .points__block-list li::first-letter {
  color: #2c42ad;
}
.points__block-b {
  background-color: #fff1e0;
}
.points__block-b .points__block-list li::first-letter {
  color: #ffaa46;
}
.points__block-single-img {
  width: 91%;
  margin-inline: auto;
}
@media screen and (min-width: 900px) {
  .points__block-single-img {
    width: min(91%, 382px);
  }
}

.courses {
  font-size: 3.73vw;
  padding-block: 5.1428571429em;
}
@media screen and (min-width: 900px) {
  .courses {
    font-size: 19.2px;
  }
}
.courses__heading {
  font-size: 1.4285714286em;
  font-weight: 700;
  color: #fff;
  display: grid;
  place-items: center;
  background-color: #2c42ad;
  height: 3.1em;
  -webkit-margin-after: 0.6em;
          margin-block-end: 0.6em;
  letter-spacing: 0.1em;
}
.courses__btns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3%;
}
.courses__btn {
  display: grid;
  font-size: 1.2857142857em;
  grid-template-columns: 1fr 1.5em;
  gap: 0.2em;
  height: 2.8333333333em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: end;
  letter-spacing: 0.1em;
  font-weight: 700;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
@media screen and (min-width: 900px) {
  .courses__btn {
    text-align: center;
    -webkit-padding-start: 1.5em;
            padding-inline-start: 1.5em;
  }
}
.courses__btn::after {
  content: "";
  height: 1em;
  background-repeat: no-repeat;
  background-size: 62%;
  background-position: center center;
}
.courses__btn.-bl {
  border: 3px solid #2c42ad;
}
.courses__btn.-bl::after {
  background-image: url(../images/arrow-jump-bl.svg);
}
.courses__btn.-bl:focus {
  background-color: #e3f4fa;
}
@media (hover: hover) and (pointer: fine) {
  .courses__btn.-bl:hover {
    background-color: #e3f4fa;
  }
}
.courses__btn.-or {
  border: 3px solid #ffaa46;
}
.courses__btn.-or::after {
  background-image: url(../images/arrow-jump-or.svg);
}
.courses__btn.-or:focus {
  background-color: #fff1e0;
}
@media (hover: hover) and (pointer: fine) {
  .courses__btn.-or:hover {
    background-color: #fff1e0;
  }
}

.course {
  -webkit-padding-before: 16vw;
          padding-block-start: 16vw;
  position: relative;
}
@media screen and (min-width: 900px) {
  .course {
    -webkit-padding-before: 144px;
            padding-block-start: 144px;
  }
}
.course__heading {
  width: 79.73vw;
  margin-inline: auto;
}
@media screen and (min-width: 900px) {
  .course__heading {
    width: 717.6px;
  }
}
.course__tag {
  color: #fff;
  background-color: #233867;
  width: 7.0625em;
  height: 2em;
  border-radius: 1em;
  display: grid;
  place-items: center;
  -webkit-margin-before: 0.8em;
          margin-block-start: 0.8em;
  line-height: 1;
}
.course__tag-wrap {
  font-size: 4.27vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625em;
}
@media screen and (min-width: 900px) {
  .course__tag-wrap {
    font-size: 38.4px;
  }
}
.course__rectTxt {
  font-size: 4.27vw;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  -webkit-margin-before: 0.625em;
          margin-block-start: 0.625em;
  position: relative;
  z-index: 1;
}
.course__rectTxt::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 2px solid;
  -o-border-image: url(../images/border-img0.svg) 1;
     border-image: url(../images/border-img0.svg) 1;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
@media screen and (min-width: 900px) {
  .course__rectTxt {
    font-size: 38.4px;
  }
}
.course__rectTxt span {
  display: block;
  width: 102%;
  height: 100%;
  color: #fff;
  -webkit-transform: translate(0.2em, 0.2em);
          transform: translate(0.2em, 0.2em);
  padding-block: 0.5em;
  padding-inline: 0.8em 1.2em;
  position: relative;
  z-index: 1;
  white-space: nowrap;
}
.course__rectTxt span.-yaku {
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
.course__rectTxt.-bl span {
  background-color: #2c42ad;
}
.course__rectTxt.-or span {
  background-color: #ffaa46;
}
.course__table {
  display: block;
  font-size: 3.73vw;
  font-weight: 700;
}
.course__table-wrap {
  -webkit-margin-before: 106.67vw;
          margin-block-start: 106.67vw;
  position: relative;
}
@media screen and (min-width: 900px) {
  .course__table-wrap {
    -webkit-margin-before: 960px;
            margin-block-start: 960px;
  }
}
.course__table-wrap p {
  -webkit-margin-before: 0.5em;
          margin-block-start: 0.5em;
}
@media screen and (min-width: 900px) {
  .course__table {
    font-size: 19.2px;
  }
}
.course__table tbody {
  display: block;
}
.course__table tr {
  display: grid;
  grid-template-columns: 5.8571428571em 1fr;
  gap: 0.8em;
}
.course__table tr:not(:first-of-type) {
  -webkit-margin-before: 0.5714285714em;
          margin-block-start: 0.5714285714em;
}
.course__table th {
  font-size: 0.8571428571em;
  color: #fff;
  display: grid;
  place-items: center;
  text-align: center;
}
.course__table td {
  letter-spacing: -0.04em;
}
.course__table.-bl th {
  background-color: #2c42ad;
}
.course__table.-bl td {
  color: #2c42ad;
}
.course__table.-or th {
  background-color: #ffaa46;
}
.course__table.-or td {
  color: #ffaa46;
}
.course__table-img {
  width: 31.73vw;
  position: absolute;
  top: -21.33vw;
  right: 2.67vw;
}
@media screen and (min-width: 900px) {
  .course__table-img {
    width: 285.6px;
    top: -192px;
    right: 24px;
  }
}
.course__table-img2 {
  width: 29.87vw;
  position: absolute;
  top: -21.33vw;
  right: 5.33vw;
}
@media screen and (min-width: 900px) {
  .course__table-img2 {
    width: 268.8px;
    top: -192px;
    right: 48px;
  }
}

.voice {
  background-size: auto auto;
  border-radius: 4vw;
  padding-block: 1.4285714286em;
  -webkit-padding-start: 12%;
          padding-inline-start: 12%;
  -webkit-margin-before: 4em;
          margin-block-start: 4em;
  position: relative;
}
@media screen and (min-width: 900px) {
  .voice {
    border-radius: 20px;
  }
}
.voice__person {
  position: absolute;
  z-index: 1;
}
.voice__person.-person1 {
  width: 32%;
  top: 3.89vw;
  left: 8%;
}
@media screen and (min-width: 900px) {
  .voice__person.-person1 {
    top: -30px;
  }
}
.voice__person.-person2 {
  width: 52%;
  top: 5.87vw;
  left: -3%;
}
@media screen and (min-width: 900px) {
  .voice__person.-person2 {
    top: -50px;
  }
}
.voice__voice {
  padding-inline: 29% 1em;
  position: relative;
  z-index: 2;
}
.voice__voice.-voice2 img {
  -webkit-margin-start: 1em;
          margin-inline-start: 1em;
}
.voice__voice.-voice2 .voice__person-info {
  -webkit-padding-start: 3em;
          padding-inline-start: 3em;
}
.voice__person-info {
  color: #707070;
  -webkit-padding-start: 0.5em;
          padding-inline-start: 0.5em;
}
.voice__person-info .-txt2 {
  font-size: 1.125em;
  font-weight: 700;
}
.voice__person-info .-txt3 {
  font-size: 0.75em;
}
.voice__txt {
  -webkit-padding-end: 1em;
          padding-inline-end: 1em;
  -webkit-padding-before: 1em;
          padding-block-start: 1em;
}

#course1::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/img-gakka1-00.webp);
  background-repeat: no-repeat;
  background-size: 116vw;
  background-position: left -8vw top 73.07vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
@media screen and (min-width: 900px) {
  #course1::before {
    background-size: 1044px;
    background-position: left -72px top 657.6px;
  }
}
#course1 .voice {
  background-color: #edf4fa;
  background-image: repeating-linear-gradient(133deg, transparent, transparent 2vw, #e4f3fa 2vw, #e4f3fa 4.8vw);
}
@media screen and (min-width: 900px) {
  #course1 .voice {
    background-image: repeating-linear-gradient(133deg, transparent, transparent 18px, #e4f3fa 18px, #e4f3fa 43px);
  }
}

#course2::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/img-gakka2-00.webp);
  background-repeat: no-repeat;
  background-size: 116vw;
  background-position: left -8vw top 73.07vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
@media screen and (min-width: 900px) {
  #course2::before {
    background-size: 1044px;
    background-position: left -72px top 657.6px;
  }
}
#course2 .voice {
  background-color: #fff3e6;
  background-image: repeating-linear-gradient(133deg, transparent, transparent 2vw, #ffeed4 2vw, #ffeed4 4.8vw);
}
@media screen and (min-width: 900px) {
  #course2 .voice {
    background-image: repeating-linear-gradient(133deg, transparent, transparent 18px, #ffeed4 18px, #ffeed4 43px);
  }
}

.open-campus {
  font-size: 3.73vw;
  padding-block: 4em;
  background-image: url(../images/bg-open-campus.png);
  background-size: cover;
  background-position: left top;
  background-repeat: no-repeat;
}
@media screen and (min-width: 900px) {
  .open-campus {
    font-size: 19.2px;
  }
}
.open-campus__wrapper {
  background-color: #fff;
  -webkit-box-shadow: 0 0 1.6vw 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 1.6vw 0 rgba(0, 0, 0, 0.5);
  padding-block: 2.8571428571em;
  padding-inline: 0.5714285714em;
  margin-inline: auto;
  -webkit-margin-before: 1.4285714286em;
          margin-block-start: 1.4285714286em;
}
.open-campus__wrapper .open-day__table, .open-campus__wrapper .btn-to-form {
  width: 90%;
  margin-inline: auto;
}
.open-campus__boxes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9.6vw 2.53vw;
  -webkit-margin-after: 10.13vw;
          margin-block-end: 10.13vw;
}
.open-campus__boxes + .open-day__table tr {
  border-top: 1px solid #707070;
  padding-block: 1em;
}
.open-campus__box {
  padding-inline: 0.2857142857em;
  -webkit-padding-after: 0.2857142857em;
          padding-block-end: 0.2857142857em;
}
.open-campus__box .-txt1 {
  display: grid;
  place-items: center;
  margin-inline: auto;
  font-size: 1.1428571429em;
  line-height: 1;
  font-weight: 700;
  width: 5.3125em;
  height: 1.5625em;
  border-style: solid;
  border-width: 2px;
  background-color: #fff;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.open-campus__box .-date {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 1.2857142857em;
  font-weight: 700;
  -webkit-margin-before: -0.5em;
          margin-block-start: -0.5em;
}
.open-campus__box .-time {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 1.0714285714em;
  font-weight: 700;
  -webkit-margin-after: 0.5em;
          margin-block-end: 0.5em;
}
.open-campus__box .-ttl {
  display: block;
  background-color: #fff;
  text-align: center;
  font-size: 1.0714285714em;
  font-weight: 700;
  padding-block: 0.4em;
  line-height: 1.14;
  position: relative;
  letter-spacing: -0.05em;
}
.open-campus__box .-ttl.-bl {
  color: #036dad;
}
.open-campus__box .-ttl.-or {
  color: #ff7f00;
}
.open-campus__box .-ttl::before {
  content: "";
  display: block;
  background-color: #fff;
  width: 0.8125em;
  height: 0.5em;
  -webkit-clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  position: absolute;
  top: -0.5em;
  left: calc(50% - 0.40625em);
}
.open-campus__box img {
  aspect-ratio: 146/89;
  -o-object-fit: cover;
     object-fit: cover;
  background-color: #fff;
}
.open-campus__box .-img2 {
  -webkit-margin-before: 1.3571428571em;
          margin-block-start: 1.3571428571em;
}
.open-campus__box.-box1 {
  background-color: #036dad;
}
.open-campus__box.-box1 .-txt1 {
  color: #036dad;
}
.open-campus__box.-box2 {
  background-color: #ee8475;
}
.open-campus__box.-box2 .-txt1 {
  color: #ee8475;
}
.open-campus__box.-box3 {
  background-color: #61bfb3;
}
.open-campus__box.-box3 .-txt1 {
  color: #61bfb3;
}
.open-campus__box.-box4 {
  background-color: #ff7f00;
}
.open-campus__box.-box4 .-txt1 {
  color: #ff7f00;
}
.open-campus__box.-box4 .-ttl.co-or::before {
  content: none;
}
.open-campus__box.-box5 {
  background-color: #a564a2;
}
.open-campus__box.-box5 .-txt1 {
  color: #a564a2;
}
.open-campus__box.-box6 {
  background-color: #c2d143;
}
.open-campus__box.-box6 .-txt1 {
  color: #c2d143;
}

.open-day {
  font-size: 3.73vw;
  padding-block: 4em;
}
@media screen and (min-width: 900px) {
  .open-day {
    font-size: 19.2px;
  }
}
.open-day-img {
  overflow: hidden;
}
.open-day__heading {
  -webkit-margin-after: 2.2857142857em;
          margin-block-end: 2.2857142857em;
}
.open-day__heading span {
  display: block;
  text-align: center;
}
.open-day__heading .-txt1 {
  font-size: 1.2857142857em;
  color: #233867;
}
.open-day__heading .-txt2 {
  font-size: 3.7142857143em;
  color: #2c42ad;
}
.open-day__heading .-txt3 {
  font-size: 2.7142857143em;
  font-weight: 700;
  color: #2c42ad;
  line-height: 1.2;
  -webkit-margin-after: 0.2em;
          margin-block-end: 0.2em;
}
.open-day__heading .-sep-txt {
  width: 85.87vw;
  margin-inline: auto;
  -webkit-margin-before: 0.2em;
          margin-block-start: 0.2em;
}
@media screen and (min-width: 900px) {
  .open-day__heading .-sep-txt {
    width: 772.8px;
  }
}
.open-day__heading h2 {
  font-weight: 700;
  text-align: center;
}
.open-day__heading h2.-h1 {
  font-size: 1.8571428571em;
  line-height: 1.4;
  color: #233867;
}
.open-day__heading h2.-h2 {
  font-size: 2.7142857143em;
  color: #2c42ad;
  line-height: 1.14;
}
.open-day__table {
  color: #233867;
  display: block;
}
.open-day__table-wrap {
  background-color: #fff;
  -webkit-box-shadow: 0 0.2142857143em 0.4285714286em 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.2142857143em 0.4285714286em 0 rgba(0, 0, 0, 0.16);
  padding-block: 2.8571428571em;
  padding-inline: 1.4285714286em;
  width: 90%;
  margin-inline: auto;
  -webkit-margin-before: 1.4285714286em;
          margin-block-start: 1.4285714286em;
  position: relative;
}
.open-day__table tbody, .open-day__table tr, .open-day__table th, .open-day__table td {
  display: block;
}
.open-day__table tr {
  -webkit-padding-after: 2.1428571429em;
          padding-block-end: 2.1428571429em;
}
.open-day__table tr:not(:first-of-type) {
  border-top: 1px solid #707070;
  -webkit-padding-before: 2.1428571429em;
          padding-block-start: 2.1428571429em;
}
.open-day__table th {
  font-size: 1.2857142857em;
  font-weight: 700;
}
.open-day__table td {
  padding-block: 0.5em;
}
.open-day__tableImg {
  width: 19.2vw;
  position: absolute;
  top: -9.6vw;
  right: 6.13vw;
}
@media screen and (min-width: 900px) {
  .open-day__tableImg {
    width: 172.8px;
    top: -86.4px;
    right: 55.2px;
  }
}
.open-day__tableImg2 {
  width: 13.33vw;
  position: absolute;
  top: 2.67vw;
  right: 6.67vw;
}
@media screen and (min-width: 900px) {
  .open-day__tableImg2 {
    width: 168px;
    top: 200px;
    right: 60px;
  }
}
.open-day__tableImg3 {
  width: 15.73vw;
  position: absolute;
  bottom: 50.67vw;
  right: 6.93vw;
}
@media screen and (min-width: 900px) {
  .open-day__tableImg3 {
    width: 141.6px;
    bottom: 180px;
    right: 62.4px;
  }
}
.open-day__td-list li.padding-30 {
  padding-right: 30%;
}
.open-day__td-list li.fin {
  text-decoration: line-through;
}
.open-day__td-list li .sub {
  display: inline-block;
}
.open-day__td-list li .end_txt {
  text-decoration: none;
  display: inline-block;
  margin-left: 10px;
  font-size: 90%;
  color: #ff0000;
}
.open-day__td-list li:not(:first-of-type) {
  -webkit-margin-before: 0.8em;
          margin-block-start: 0.8em;
}
.open-day__td-list2 li {
  border-left: 0.5em solid #233867;
  -webkit-padding-start: 0.8em;
          padding-inline-start: 0.8em;
  line-height: 1.71;
}
.open-day__td-list2 li ._fin {
  display: inline-block;
  text-decoration: line-through;
}
.open-day__td-list2 li ._sub {
  display: inline-block;
}
.open-day__td-list2 li ._event {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 0;
  margin-top: 4px;
  padding-block: 8px;
  border-top: 1px dashed #233867;
  border-bottom: 1px dashed #233867;
  font-size: 94%;
}
.open-day__td-list2 li ._event .__ttl {
  position: relative;
  padding-right: 1em;
}
.open-day__td-list2 li ._event .__ttl::after {
  content: "：";
  position: absolute;
  top: 0;
  right: 0;
}
.open-day__td-list2 li .__note_box_01 .__note_box_txt_01 {
  margin: 8px 0;
}
.open-day__td-list2 li .__note_box_01 .__note_box_set_01 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 0;
}
.open-day__td-list2 li .__note_box_01 .__note_box_set_01 .set_ttl_01 {
  position: relative;
  font-size: 90%;
  padding-right: 1em;
}
.open-day__td-list2 li .__note_box_01 .__note_box_set_01 .set_ttl_01::after {
  content: "：";
  position: absolute;
  top: 0;
  right: 0;
}
.open-day__td-list2 li .__note_box_01 .__note_box_set_01 .set_txt_01 {
  font-size: 90%;
}
.open-day__td-list2 li .__note_box_01 .__note_box_set_01 + .__note_box_set_01 {
  margin-top: 40px;
}
.open-day__td-list2 li:not(:first-of-type) {
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}
.open-day__td-data.-dark dt {
  background-color: #233867;
}
.open-day__td-data.-color .-bl {
  background-color: #2c42ad;
}
.open-day__td-data.-color .-or {
  background-color: #ffaa46;
}
.open-day__td-data dt {
  color: #fff;
  padding-block: 0.6em;
  padding-inline: 0.4em;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  font-size: 1.1428571429em;
}
.open-day__td-data dd {
  padding-block: 0.4em 0.8em;
}

.access {
  font-size: 3.73vw;
}
@media screen and (min-width: 900px) {
  .access {
    font-size: 19.2px;
  }
}
.access__heading {
  -webkit-margin-after: 2.2857142857em;
          margin-block-end: 2.2857142857em;
}
.access__heading span {
  display: block;
  text-align: center;
}
.access__heading .-txt1 {
  font-size: 1.2857142857em;
  color: #233867;
}
.access__heading .-txt2 {
  font-size: 3.7142857143em;
  color: #2c42ad;
}
.access__heading .-txt3 {
  font-size: 2.7142857143em;
  font-weight: 700;
  color: #2c42ad;
  line-height: 1.2;
  -webkit-margin-after: 0.2em;
          margin-block-end: 0.2em;
}
.access__heading .-sep-txt {
  width: 85.87vw;
  margin-inline: auto;
  -webkit-margin-before: 0.2em;
          margin-block-start: 0.2em;
}
@media screen and (min-width: 900px) {
  .access__heading .-sep-txt {
    width: 772.8px;
  }
}
.access__heading h2 {
  font-weight: 700;
  text-align: center;
}
.access__heading h2.-h1 {
  font-size: 1.8571428571em;
  line-height: 1.4;
  color: #233867;
}
.access__heading h2.-h2 {
  font-size: 2.7142857143em;
  color: #2c42ad;
  line-height: 1.14;
}
.access__address_01 {
  display: block;
  line-height: 1.4;
}
.access__address_01 .-zip {
  display: inline-block;
  margin-right: 1em;
}
.access__tel {
  display: inline-block;
  letter-spacing: 0.08em;
  line-height: 1.8;
}
.access__block-gmap {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-margin-before: 0.65em;
          margin-block-start: 0.65em;
  -webkit-margin-after: 2.2857142857em;
          margin-block-end: 2.2857142857em;
}
.access__block-gmap iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.visit {
  font-size: 3.73vw;
  padding-block: 4em;
}
@media screen and (min-width: 900px) {
  .visit {
    font-size: 19.2px;
  }
}
.visit-img {
  overflow: hidden;
}
.visit__heading {
  -webkit-margin-after: 2.2857142857em;
          margin-block-end: 2.2857142857em;
}
.visit__heading h2 {
  font-weight: 700;
  text-align: center;
}
.visit__heading h2.-h1 {
  font-size: 1.8571428571em;
  line-height: 1.4;
  color: #233867;
}
.visit__heading h2.-h2 {
  font-size: 2.7142857143em;
  color: #2c42ad;
  line-height: 1.25;
}
.visit__block_main {
  background-color: #fff;
  -webkit-box-shadow: 0 0.2142857143em 0.4285714286em 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.2142857143em 0.4285714286em 0 rgba(0, 0, 0, 0.16);
  padding-block: 2.1428571429em;
  padding-inline: 1.4285714286em;
  width: 90%;
  margin-inline: auto;
  position: relative;
  display: block;
}
.visit__block_main .-txtwrap_01 {
  -webkit-margin-after: 2.1428571429em;
          margin-block-end: 2.1428571429em;
}
.visit__block_main .-txt_01 {
  line-height: 2;
}
.visit__block_main .-txt_02 {
  font-size: 1.2857142857em;
  text-align: center;
  letter-spacing: 0.08em;
}
.visit__block_main .-txt_03 {
  font-size: 1.0714285714em;
  text-align: center;
  letter-spacing: 0.08em;
}
.visit__block_main .-txtwrap_02 {
  line-height: 1.8;
}
.visit__block_main .-txtwrap_03 {
  line-height: 1.8;
}
.visit__block_main .-tel_01 {
  display: block;
  width: 90%;
  max-width: 480px;
  margin-inline: auto;
  -webkit-margin-before: 2.5714285714em;
          margin-block-start: 2.5714285714em;
  -webkit-margin-after: 1.2857142857em;
          margin-block-end: 1.2857142857em;
}

.separater {
  width: 100%;
  height: 2.67vw;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}
@media screen and (min-width: 900px) {
  .separater {
    height: 24px;
  }
}
.separater span {
  display: block;
}
.separater span:first-of-type {
  background-color: #006dad;
}
.separater span:nth-of-type(2) {
  background-color: #ee8475;
}
.separater span:nth-of-type(3) {
  background-color: #62bfb3;
}
.separater span:nth-of-type(4) {
  background-color: #f5ad54;
}
.separater span:nth-of-type(5) {
  background-color: #b979b0;
}
.separater span:last-of-type {
  background-color: #c2d85b;
}

.btn-to-form {
  display: grid;
  place-items: center;
  background-color: #2c42ad;
  color: #fff;
  font-size: 4.8vw;
  height: 2.8333333333em;
  font-weight: 700;
  -webkit-padding-end: 2em;
          padding-inline-end: 2em;
  text-align: center;
  letter-spacing: 0.05em;
  background-image: url(../images/arrow-link-btn.svg);
  background-repeat: no-repeat;
  background-size: 0.8em;
  background-position: right 2em center;
  width: min(100%, 600px);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.btn-to-form:focus {
  background-color: #233867;
}
@media (hover: hover) and (pointer: fine) {
  .btn-to-form:hover {
    background-color: #233867;
  }
}
@media screen and (min-width: 900px) {
  .btn-to-form {
    font-size: 28.8px;
    margin-inline: auto;
  }
}
.btn-to-form.-mt2 {
  -webkit-margin-before: 2em;
          margin-block-start: 2em;
}
.btn-to-form.-mt1 {
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}

.btn-caption {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 10px;
  margin-inline: auto;
  text-align: left;
}
@media screen and (min-width: 900px) {
  .btn-caption {
    text-align: center;
  }
}
.btn-caption.-red {
  color: #ff0000;
}

.btn-to-back {
  padding: 1.4285714286em;
  background-color: #2c42ad;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.btn-to-back .-inner {
  display: grid;
  place-items: center;
  background-color: inherit;
  color: #fff;
  font-size: 4.8vw;
  font-weight: 700;
  padding-block: 0.8571428571em;
  -webkit-padding-start: 2em;
          padding-inline-start: 2em;
  text-align: center;
  letter-spacing: 0.05em;
  background-image: url(../images/arrow-prev.svg);
  background-repeat: no-repeat;
  background-size: 0.8em;
  background-position: left 2em center;
  border: 2px solid #e3f4fa;
}
@media screen and (min-width: 900px) {
  .btn-to-back .-inner {
    font-size: 28.8px;
    margin-inline: auto;
  }
}
.btn-to-back:focus {
  background-color: #233867;
}
@media (hover: hover) and (pointer: fine) {
  .btn-to-back:hover {
    background-color: #233867;
  }
}

.bnr_link_01 {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.bnr_link_01:focus {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .bnr_link_01:hover {
    opacity: 0.7;
  }
}

.bnr_block_01 {
  -webkit-margin-after: 5.7142857143em;
          margin-block-end: 5.7142857143em;
}
.bnr_block_01 .container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.footer {
  background-color: #233867;
  color: #fff;
  font-size: 2.13vw;
  font-weight: 700;
  height: 5.875em;
  display: grid;
  place-items: center;
}
@media screen and (min-width: 900px) {
  .footer {
    font-size: 1.2rem;
    width: min(100vw, 900px);
    margin-inline: auto;
  }
}
.footer small {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.sticky-bottom {
  display: grid;
  width: 100vw;
  grid-template-columns: 1fr 36% 1fr;
  font-size: 3.2vw;
  font-weight: 700;
  border-top: 1px solid #2c42ad;
  border-bottom: 1px solid #2c42ad;
  position: sticky;
  bottom: 0;
  background-color: #fff;
  z-index: 1000;
}
@media screen and (min-width: 900px) {
  .sticky-bottom {
    width: min(900px, 100vw);
    font-size: 1.4rem;
    margin-inline: auto;
    border-left: 1px solid #2c42ad;
    border-right: 1px solid #2c42ad;
    margin-block: 60px;
  }
  .sticky-bottom br {
    display: none;
  }
}
.sticky-bottom a {
  display: grid;
  grid-template-rows: 1fr 1em;
  place-items: center;
  text-align: center;
  height: 3.9285714286em;
  line-height: 1.1;
  padding-inline: 0.5em;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.sticky-bottom a::after {
  content: "";
  width: 0.7857142857em;
  height: 0.4285714286em;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  display: block;
}
.sticky-bottom a:nth-of-type(2) {
  background-color: #2c42ad;
  color: #fff;
}
.sticky-bottom a:nth-of-type(2)::after {
  background-image: url(../images/arrow-sticky-wt.svg);
}
.sticky-bottom a:nth-of-type(2):focus {
  background-color: #233867;
}
@media (hover: hover) and (pointer: fine) {
  .sticky-bottom a:nth-of-type(2):hover {
    background-color: #233867;
  }
}
.sticky-bottom a:nth-of-type(odd) {
  color: #2c42ad;
}
.sticky-bottom a:nth-of-type(odd)::after {
  background-image: url(../images/arrow-sticky-bl.svg);
}
.sticky-bottom a:nth-of-type(odd):focus {
  color: #233867;
}
@media (hover: hover) and (pointer: fine) {
  .sticky-bottom a:nth-of-type(odd):hover {
    color: #233867;
  }
}

.splide {
  width: 280vw;
  -webkit-transform: translateX(-90vw);
          transform: translateX(-90vw);
}
@media screen and (min-width: 900px) {
  .splide {
    width: 1200px;
    -webkit-transform: translateX(-150px);
            transform: translateX(-150px);
  }
}
.splide__arrow {
  width: 6.4vw;
  position: absolute;
  top: calc(50% - 4vw);
  z-index: 2;
  cursor: pointer;
}
@media screen and (min-width: 900px) {
  .splide__arrow {
    width: 30px;
    top: calc(50% - 18px);
  }
}
.splide__arrow svg {
  width: 100%;
}
.splide__arrow svg path {
  fill: #fff;
}
.splide__arrow--prev {
  left: 98vw;
}
.splide__arrow--prev svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (min-width: 900px) {
  .splide__arrow--prev {
    left: 410px;
  }
}
.splide__arrow--next {
  right: 98vw;
}
@media screen and (min-width: 900px) {
  .splide__arrow--next {
    right: 410px;
  }
}
.splide__slide {
  padding-inline: 1vw;
}
@media screen and (min-width: 900px) {
  .splide__slide {
    padding-inline: 9px;
  }
}

.anim-up {
  -webkit-transform: translateY(20vw);
          transform: translateY(20vw);
}
@media screen and (min-width: 900px) {
  .anim-up {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}

.mfp_element_all {
  max-width: 100%;
}

.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
  border: solid none;
  border-radius: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
  margin: 0;
}

.mfp_colored {
  background-color: transparent;
}

.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
  width: calc(50% - 1vw);
  height: 3.75em;
  border-radius: 1.875em;
  padding: 0;
  border: none;
  text-shadow: none;
  font-size: 4.27vw;
  color: #fff;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
@media screen and (min-width: 900px) {
  .mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
    font-size: 1.6rem;
  }
}

.mfp_element_reset {
  color: #fff;
}

.mfp_element_submit:hover, .mfp_element_reset:hover, .mfp_element_button:hover, button.mfp_next:hover, button.mfp_prev:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}

form#mailformpro {
  -webkit-margin-before: 3.125em;
          margin-block-start: 3.125em;
  width: min(100%, 600px);
  margin-inline: auto;
}
form#mailformpro dl dt {
  float: none;
  width: auto;
  clear: both;
  font-size: inherit;
  padding: 0;
  text-align: inherit;
  border-top: none;
}
form#mailformpro dl dd {
  border-top: none;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
  text-align: inherit;
}
form#mailformpro dl dd + dt {
  -webkit-margin-before: 1.8em;
          margin-block-start: 1.8em;
}
form#mailformpro .mfp input[type=text], form#mailformpro .mfp input[type=email], form#mailformpro .mfp input[type=tel], form#mailformpro .mfp select, form#mailformpro .mfp textarea {
  border: 1px solid #a8a8a8;
  font-size: 1.6rem;
  border-radius: 0.4em;
  -webkit-margin-before: 0.4em;
          margin-block-start: 0.4em;
  width: 100%;
}
form#mailformpro .mfp input[type=text], form#mailformpro .mfp input[type=email], form#mailformpro .mfp input[type=tel], form#mailformpro .mfp textarea {
  padding: 1em;
}
form#mailformpro .mfp label:has(input[type=radio]) {
  display: grid;
  grid-template-columns: 1em 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4em;
  color: #707070;
  border-radius: 0;
  margin: 0;
}
form#mailformpro .mfp label.mfp_checked {
  padding: 0;
  border: none;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}
form#mailformpro .mfp label.mfp_not_checked {
  padding: 0;
  border: none;
}
form#mailformpro .mfp input[type=radio] {
  width: 1em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid #707070;
  position: relative;
}
form#mailformpro .mfp input[type=radio]:checked::after {
  content: "";
  display: block;
  width: 80%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #2c42ad;
  position: absolute;
  top: 10%;
  left: 10%;
}
form#mailformpro .mfp input::-webkit-input-placeholder {
  color: #707070;
}
form#mailformpro .mfp input::-moz-placeholder {
  color: #707070;
}
form#mailformpro .mfp input:-ms-input-placeholder {
  color: #707070;
}
form#mailformpro .mfp input::-ms-input-placeholder {
  color: #707070;
}
form#mailformpro .mfp input::placeholder {
  color: #707070;
}
form#mailformpro .mfp select {
  padding-block: 1em;
  padding-inline: 1em 2em;
  color: #707070;
  background-image: url(../images/arrow-select.svg);
  background-size: 1.25em;
  background-repeat: no-repeat;
  background-position: right 0.5em center;
}
form#mailformpro .mfp textarea {
  height: 8.375em;
}
form#mailformpro .mfp_rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2vw 2%;
}
form#mailformpro .mfp_col10 {
  width: 100%;
}
form#mailformpro .mfp_col10 input[type=text], form#mailformpro .mfp_col10 input[type=email], form#mailformpro .mfp_col10 input[type=tel], form#mailformpro .mfp_col10 select, form#mailformpro .mfp_col10 textarea {
  width: 100%;
}
form#mailformpro .mfp_col9 {
  white-space: nowrap;
}
form#mailformpro .mfp_col9 input {
  display: inline-block;
  -webkit-margin-end: 0.5em;
          margin-inline-end: 0.5em;
}
form#mailformpro .mfp_col3 {
  width: 29%;
}
form#mailformpro .mfp_col4 {
  width: 39%;
}
form#mailformpro .mfp_col5 {
  width: 49%;
}
form#mailformpro .mfp_col6 {
  width: 59%;
}
form#mailformpro .mfp_buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2vw;
  -webkit-margin-before: 2.5em;
          margin-block-start: 2.5em;
  padding: 0;
}
form#mailformpro .mfp_buttons button {
  display: grid;
  place-items: center;
  width: calc(50% - 1vw);
  height: 3.75em;
  border-radius: 1.875em;
  color: #fff;
  font-weight: 700;
  text-shadow: none;
  border: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
form#mailformpro .mfp_buttons button[type=submit] {
  background: #d54a00;
}
form#mailformpro .mfp_buttons button[type=submit]:focus {
  background: #ffaa46;
}
@media (hover: hover) and (pointer: fine) {
  form#mailformpro .mfp_buttons button[type=submit]:hover {
    background: #ffaa46;
  }
}

div.mfp_buttons button#mfp_button_send {
  background: #d54a00;
}
div.mfp_buttons button#mfp_button_send:focus {
  background: #ffaa46;
}
@media (hover: hover) and (pointer: fine) {
  div.mfp_buttons button#mfp_button_send:hover {
    background: #ffaa46;
  }
}
div.mfp_buttons button#mfp_button_cancel {
  background: #2c42ad;
}
div.mfp_buttons button#mfp_button_cancel:focus {
  background-color: #1d91bb;
}
@media (hover: hover) and (pointer: fine) {
  div.mfp_buttons button#mfp_button_cancel:hover {
    background-color: #1d91bb;
  }
}

div#mfp_phase_confirm h4 {
  font-size: min(5vw, 2.4rem);
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
}

.form-container {
  font-size: 4.27vw;
  padding-block: 3.5em;
}
@media screen and (min-width: 900px) {
  .form-container {
    font-size: 1.6rem;
  }
}
.form-container h2 {
  font-size: 1.875em;
  font-weight: 700;
  text-align: center;
  -webkit-margin-after: 1.6em;
          margin-block-end: 1.6em;
}
.form-container .-txt1 {
  font-weight: 700;
  text-align: center;
}
.form-container .-txt2 {
  font-size: 0.75em;
  text-align: center;
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}
.form-container__caution {
  color: #707070;
  font-size: 3.73vw;
  line-height: 2;
  display: block;
}
@media screen and (min-width: 900px) {
  .form-container__caution {
    font-size: 1.4rem;
  }
}
.form-container dt {
  color: #2c42ad;
  font-weight: bold;
  display: grid;
  grid-template-columns: 1fr 3em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.form-container dt span {
  line-height: 1;
  font-weight: 500;
  color: #fff;
  display: grid;
  place-items: center;
  height: 1.5em;
  border-radius: 0.2em;
}
.form-container dt .must {
  background-color: #d54a00;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: 0;
  float: none;
  font-size: inherit;
  padding: none;
  text-shadow: none;
  border: none;
}
.form-container dt .optional {
  background-color: #9a9a9a;
}/*# sourceMappingURL=style.css.map */