@import 'https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;900&display=swap'; /*!
Theme Name: 未来クライム
Author: 株式会社イトナブ
Author URI: http://itnav.jp/
Description: 未来クライムのオリジナルテーマ
Version: 1.0.0
Tested up to: 6.2.2
Requires PHP: 8.0.29
*/ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* R8 contact pages */
.page .site-main .page-content--fixed {
  position: relative;
  z-index: 1;
  padding: calc(64 / 1440 * 100vw) 0 calc(96 / 1440 * 100vw);
}
.page .site-main .page-content--fixed .common-inner {
  max-width: calc(980 / 1440 * 100vw);
}
.contact-divider,
.contact-form-page {
  background: #fff;
  border: 1px solid rgb(0 0 0 / 10%);
  border-radius: 8px;
  box-shadow: 0 calc(12 / 1440 * 100vw) calc(28 / 1440 * 100vw) rgb(0 0 0 / 8%);
}
.contact-divider {
  padding: calc(44 / 1440 * 100vw) calc(48 / 1440 * 100vw);
}
.contact-divider h2 {
  font-family: 'mobo-b';
  font-size: calc(30 / 1440 * 100vw);
  line-height: 1.4;
  text-align: center;
}
.contact-divider > p {
  margin: calc(16 / 1440 * 100vw) auto 0;
  font-size: calc(16 / 1440 * 100vw);
  line-height: 1.8;
  text-align: center;
}
.contact-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(18 / 1440 * 100vw);
  margin-top: calc(34 / 1440 * 100vw);
}
.contact-card,
.contact-card:visited {
  display: block;
  width: 100%;
  min-height: calc(160 / 1440 * 100vw);
  padding: calc(28 / 1440 * 100vw);
  color: #000;
  background: #fff;
  border: 2px solid #1fa0cb;
  border-radius: 8px;
}
.contact-card:hover {
  color: #000;
  background: #f2fbfe;
  opacity: 1;
  transform: translateY(calc(-2 / 1440 * 100vw));
}
.contact-card h3 {
  font-family: 'mobo-b';
  font-size: calc(22 / 1440 * 100vw);
  line-height: 1.4;
}
.contact-card p {
  margin-top: calc(12 / 1440 * 100vw);
  font-size: calc(15 / 1440 * 100vw);
  line-height: 1.7;
}
.apply-branch {
  display: flex;
  flex-direction: column;
  gap: calc(38 / 1440 * 100vw);
}
.apply-special-hero {
  padding: calc(40 / 1440 * 100vw) calc(48 / 1440 * 100vw);
  text-align: center;
  background: #fffdf7;
  border: 1px solid #e6deca;
  border-radius: 8px;
  box-shadow: 0 calc(12 / 1440 * 100vw) calc(28 / 1440 * 100vw) rgb(0 0 0 / 7%);
}
.apply-special-hero-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: calc(28 / 1440 * 100vw);
  padding: calc(4 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  color: #fff;
  font-size: calc(12 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.2;
  background: #e61218;
  border-radius: 999px;
}
.apply-special-hero-title {
  margin-top: calc(16 / 1440 * 100vw);
  font-family: 'mobo-b';
  font-size: calc(28 / 1440 * 100vw);
  line-height: 1.4;
}
.apply-special-hero-theme {
  margin-top: calc(12 / 1440 * 100vw);
  color: #2a3441;
  font-size: calc(16 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.7;
}
.apply-special-hero-meta {
  margin-top: calc(8 / 1440 * 100vw);
  color: #555;
  font-size: calc(14 / 1440 * 100vw);
  line-height: 1.7;
}
.apply-special-hero .btn-wrap {
  margin-top: calc(28 / 1440 * 100vw);
}
.site .site-main .apply-special-hero .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: calc(280 / 1440 * 100vw);
  padding: calc(16 / 1440 * 100vw) calc(36 / 1440 * 100vw);
  font-size: calc(15 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0;
  border-radius: 8px;
}
.apply-special-hero-note {
  margin-top: calc(14 / 1440 * 100vw);
  color: #777;
  font-size: calc(12 / 1440 * 100vw);
  line-height: 1.6;
}
.contact-form-page {
  padding: calc(44 / 1440 * 100vw) calc(48 / 1440 * 100vw);
}
.contact-form-page .contact-form-lead {
  margin-bottom: calc(30 / 1440 * 100vw);
  font-size: calc(16 / 1440 * 100vw);
  line-height: 1.8;
  text-align: left;
}
.contact-form-page .wpcf7-form {
  display: grid;
  gap: calc(22 / 1440 * 100vw);
}
.contact-form-page .form-grid {
  display: grid;
  gap: calc(18 / 1440 * 100vw);
}
.contact-form-page .form-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.contact-form-page .wpcf7-form label {
  display: grid;
  gap: calc(8 / 1440 * 100vw);
  font-weight: 900;
  letter-spacing: 0;
}
.contact-form-page .wpcf7-form-control-wrap {
  display: block;
}
.contact-form-page input[type='text'],
.contact-form-page input[type='email'],
.contact-form-page input[type='tel'],
.contact-form-page select,
.contact-form-page textarea {
  width: 100%;
  padding: calc(14 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  color: #000;
  background: #fff;
  border: 1px solid rgb(0 0 0 / 18%);
  border-radius: 6px;
}
.contact-form-page select {
  min-height: calc(50 / 1440 * 100vw);
}
.contact-form-page .wpcf7-list-item {
  margin: 0 calc(18 / 1440 * 100vw) 0 0;
}
.contact-form-page .wpcf7-list-item label {
  display: inline-flex;
  grid-gap: calc(8 / 1440 * 100vw);
  gap: calc(8 / 1440 * 100vw);
  align-items: center;
  font-weight: 500;
}
.contact-form-page input[type='radio'],
.contact-form-page input[type='checkbox'] {
  width: calc(18 / 1440 * 100vw);
  height: calc(18 / 1440 * 100vw);
  margin: 0;
}
.contact-form-page textarea {
  min-height: calc(190 / 1440 * 100vw);
  resize: vertical;
}
.contact-form-page .submit-wrap {
  text-align: center;
}
.contact-form-page input[type='submit'] {
  display: inline-flex;
  justify-content: center;
  min-width: calc(180 / 1440 * 100vw);
  padding: calc(14 / 1440 * 100vw) calc(32 / 1440 * 100vw);
  color: #fff;
  font-weight: 900;
  line-height: 1.2;
  background: #e61218;
  border: 0;
  border-radius: 6px;
}
.contact-form-page .wpcf7-not-valid-tip {
  margin-top: calc(6 / 1440 * 100vw);
  color: #e61218;
  font-size: calc(13 / 1440 * 100vw);
}
.contact-form-page .wpcf7-response-output {
  margin: calc(22 / 1440 * 100vw) 0 0;
  padding: calc(12 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  border-radius: 6px;
}
@media (max-width: 768px) {
  .page .site-main .page-content--fixed {
    padding: calc(36 / 393 * 100vw) 0 calc(64 / 393 * 100vw);
  }
  .page .site-main .page-content--fixed .common-inner {
    max-width: calc(360 / 393 * 100vw);
  }
  .contact-divider,
  .contact-form-page {
    padding: calc(28 / 393 * 100vw) calc(18 / 393 * 100vw);
    box-shadow: 0 calc(8 / 393 * 100vw) calc(20 / 393 * 100vw) rgb(0 0 0 / 8%);
  }
  .contact-divider h2 {
    font-size: calc(24 / 393 * 100vw);
    overflow-wrap: anywhere;
    word-break: break-all;
  }
  .contact-divider > p,
  .contact-form-page .contact-form-lead {
    font-size: calc(14 / 393 * 100vw);
  }
  .contact-cards {
    grid-template-columns: 1fr;
    gap: calc(14 / 393 * 100vw);
    margin-top: calc(26 / 393 * 100vw);
  }
  .contact-card,
  .contact-card:visited {
    min-height: 0;
    padding: calc(20 / 393 * 100vw);
  }
  .contact-card h3 {
    font-size: calc(19 / 393 * 100vw);
  }
  .contact-card p {
    margin-top: calc(8 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
  .apply-branch {
    gap: calc(28 / 393 * 100vw);
  }
  .apply-special-hero {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw);
    border-radius: 8px;
    box-shadow: 0 calc(8 / 393 * 100vw) calc(20 / 393 * 100vw) rgb(0 0 0 / 7%);
  }
  .apply-special-hero-label {
    min-height: calc(26 / 393 * 100vw);
    padding: calc(4 / 393 * 100vw) calc(13 / 393 * 100vw);
    font-size: calc(11 / 393 * 100vw);
  }
  .apply-special-hero-title {
    margin-top: calc(14 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw);
  }
  .apply-special-hero-title,
  .apply-special-hero-theme,
  .apply-special-hero-meta,
  .apply-special-hero-note {
    max-width: calc(292 / 393 * 100vw);
    margin-right: auto;
    margin-left: auto;
    overflow-wrap: anywhere;
    word-break: break-all;
  }
  .apply-special-hero-theme,
  .apply-special-hero-meta {
    font-size: calc(13 / 393 * 100vw);
  }
  .apply-special-hero .btn-wrap {
    margin-top: calc(22 / 393 * 100vw);
  }
  .site .site-main .apply-special-hero .btn {
    width: 100%;
    min-width: 0;
    padding: calc(15 / 393 * 100vw) calc(18 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
  .apply-special-hero-note {
    margin-top: calc(12 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
  }
  .contact-form-page .contact-form-lead {
    margin-bottom: calc(24 / 393 * 100vw);
  }
  .contact-form-page .wpcf7-form {
    gap: calc(18 / 393 * 100vw);
  }
  .contact-form-page .form-grid {
    gap: calc(18 / 393 * 100vw);
  }
  .contact-form-page .form-grid--2 {
    grid-template-columns: 1fr;
  }
  .contact-form-page .wpcf7-form label {
    gap: calc(8 / 393 * 100vw);
  }
  .contact-form-page input[type='text'],
  .contact-form-page input[type='email'],
  .contact-form-page input[type='tel'],
  .contact-form-page select,
  .contact-form-page textarea {
    padding: calc(12 / 393 * 100vw) calc(14 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
  }
  .contact-form-page select {
    min-height: calc(46 / 393 * 100vw);
  }
  .contact-form-page .wpcf7-list-item {
    display: block;
    margin: 0 0 calc(8 / 393 * 100vw);
  }
  .contact-form-page .wpcf7-list-item label {
    gap: calc(8 / 393 * 100vw);
  }
  .contact-form-page input[type='radio'],
  .contact-form-page input[type='checkbox'] {
    width: calc(18 / 393 * 100vw);
    height: calc(18 / 393 * 100vw);
  }
  .contact-form-page textarea {
    min-height: calc(180 / 393 * 100vw);
  }
  .contact-form-page input[type='submit'] {
    min-width: calc(164 / 393 * 100vw);
    padding: calc(12 / 393 * 100vw) calc(28 / 393 * 100vw);
  }
  .contact-form-page .wpcf7-not-valid-tip {
    margin-top: calc(6 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
  }
  .contact-form-page .wpcf7-response-output {
    margin-top: calc(18 / 393 * 100vw);
    padding: calc(10 / 393 * 100vw) calc(12 / 393 * 100vw);
  }
}

/* R8 course accordion */
.home .site-main > .courses {
  padding: calc(80 / 1440 * 100vw) 0 calc(40 / 1440 * 100vw);
}
.home .site-main > .courses .common-inner {
  position: relative;
}
.home .site-main > .courses .anchor-alias {
  position: absolute;
  top: calc(-100 / 1440 * 100vw);
  display: block;
  visibility: hidden;
}
.home .site-main > .courses .section-title {
  text-align: center;
}
.home .site-main > .courses .course-card {
  width: calc(980 / 1440 * 100vw);
  margin: calc(40 / 1440 * 100vw) auto 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgb(0 0 0 / 12%);
  border-radius: 8px;
  box-shadow: 0 calc(12 / 1440 * 100vw) calc(28 / 1440 * 100vw) rgb(0 0 0 / 8%);
}
.home .site-main > .courses .course-card-summary {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: calc(16 / 1440 * 100vw) calc(24 / 1440 * 100vw);
  align-items: start;
  padding: calc(32 / 1440 * 100vw) calc(36 / 1440 * 100vw);
}
.home .site-main > .courses .course-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-width: calc(112 / 1440 * 100vw);
  padding: calc(6 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  color: #fff;
  font-family: 'mobo-b';
  font-size: calc(15 / 1440 * 100vw);
  line-height: 1;
  background: #1fa0cb;
  border-radius: 999px;
}
.home .site-main > .courses .course-label--basic {
  color: #143100;
  background: #8ad329;
}
.home .site-main > .courses .course-label--special {
  background: #1a1a1a;
}
.home .site-main > .courses .course-name {
  grid-column: 1 / 2;
  font-family: 'mobo-b';
  font-size: calc(32 / 1440 * 100vw);
  line-height: 1.3;
}
.home .site-main > .courses .course-meta {
  display: flex;
  flex-wrap: wrap;
  gap: calc(10 / 1440 * 100vw);
  align-items: center;
  justify-content: flex-end;
  grid-column: 2 / 3;
  grid-row: 1 / span 2;
}
.home .site-main > .courses .course-fee,
.home .site-main > .courses .course-cap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: calc(34 / 1440 * 100vw);
  padding: calc(6 / 1440 * 100vw) calc(14 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.2;
  border: 1px solid #e61218;
  border-radius: 6px;
}
.home .site-main > .courses .course-fee {
  color: #fff;
  background: #e61218;
}
.home .site-main > .courses .course-cap {
  color: #e61218;
  background: #fff;
}
.home .site-main > .courses .course-lead {
  grid-column: 1 / 2;
  margin: 0;
  font-size: calc(16 / 1440 * 100vw);
  line-height: 1.8;
}
.home .site-main > .courses .course-detail-toggle {
  grid-column: 2 / 3;
  justify-self: end;
  min-width: calc(150 / 1440 * 100vw);
  padding: calc(10 / 1440 * 100vw) calc(18 / 1440 * 100vw);
  color: #fff;
  font-size: calc(14 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.2;
  cursor: pointer;
  background: #1a1a1a;
  border: 0;
  border-radius: 6px;
}
.home .site-main > .courses .course-detail[hidden] {
  display: none;
}
.home .site-main > .courses .course-detail {
  border-top: 1px solid rgb(0 0 0 / 10%);
}
.home .site-main > .courses .course-detail-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(28 / 1440 * 100vw) calc(34 / 1440 * 100vw);
  padding: calc(32 / 1440 * 100vw) calc(36 / 1440 * 100vw) calc(36 / 1440 * 100vw);
}
.home .site-main > .courses .detail-block h4 {
  margin: 0 0 calc(10 / 1440 * 100vw);
  color: #e61218;
  font-size: calc(18 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.4;
}
.home .site-main > .courses .detail-block p {
  margin: 0;
  font-size: calc(15 / 1440 * 100vw);
  line-height: 1.8;
}
.home .site-main > .courses .detail-block--schedule {
  grid-column: 1 / -1;
}
.home .site-main > .courses .detail-list {
  display: grid;
  gap: calc(8 / 1440 * 100vw);
  padding: 0;
  margin: 0;
  list-style: none;
}
.home .site-main > .courses .detail-list li {
  position: relative;
  padding-left: calc(18 / 1440 * 100vw);
  font-size: calc(15 / 1440 * 100vw);
  line-height: 1.7;
}
.home .site-main > .courses .detail-list li::before {
  position: absolute;
  top: 0.75em;
  left: 0;
  width: calc(7 / 1440 * 100vw);
  height: calc(7 / 1440 * 100vw);
  content: '';
  background: #1fa0cb;
  border-radius: 50%;
}
.home .site-main > .courses .schedule-list {
  display: grid;
  gap: calc(8 / 1440 * 100vw);
}
.home .site-main > .courses .schedule-row {
  display: grid;
  grid-template-columns: calc(88 / 1440 * 100vw) calc(130 / 1440 * 100vw) 1fr;
  gap: calc(12 / 1440 * 100vw);
  align-items: start;
  padding: calc(12 / 1440 * 100vw) calc(14 / 1440 * 100vw);
  background: rgb(31 160 203 / 8%);
  border-left: calc(4 / 1440 * 100vw) solid #1fa0cb;
}
.home .site-main > .courses .sch-num,
.home .site-main > .courses .sch-date {
  color: #1fa0cb;
  font-size: calc(14 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.5;
}
.home .site-main > .courses .sch-content {
  font-size: calc(14 / 1440 * 100vw);
  line-height: 1.6;
}
.home .site-main > .courses .detail-flyer {
  grid-column: 1 / -1;
  display: flex;
  justify-content: center;
  margin-top: calc(4 / 1440 * 100vw);
}
.home .site-main > .courses .detail-flyer .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: calc(260 / 1440 * 100vw);
  padding: calc(14 / 1440 * 100vw) calc(30 / 1440 * 100vw);
  font-size: calc(15 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0;
  border-radius: 8px;
}
.home .site-main > .courses .detail-cta {
  grid-column: 1 / -1;
  display: flex;
  justify-content: center;
  margin-top: calc(4 / 1440 * 100vw);
}
.home .site-main > .courses .detail-cta .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: calc(280 / 1440 * 100vw);
  padding: calc(16 / 1440 * 100vw) calc(34 / 1440 * 100vw);
  color: #143100;
  font-size: calc(16 / 1440 * 100vw);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0;
  background-color: #8ad329;
  border: 2px solid #6db320;
  border-radius: 8px;
  box-shadow: 0 4px 0 rgba(0, 0, 0, 0.15);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}
.home .site-main > .courses .detail-cta .btn:hover {
  color: #143100;
  opacity: 0.95;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.15);
  transform: translateY(2px);
}
.home .site-main > .courses .course-card--special .course-card-summary {
  grid-template-columns: 1fr auto;
}
.home .site-main > .courses .course-card--special .course-detail-inner {
  display: flex;
  flex-direction: column;
  gap: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .courses .course-card--special .course-detail-inner {
    gap: calc(16 / 393 * 100vw);
  }
}

@media (max-width: 768px) {
  .home .site-main > .courses {
    padding: calc(48 / 393 * 100vw) 0 calc(32 / 393 * 100vw);
  }
  .home .site-main > .courses .course-card {
    width: 100%;
    margin-top: calc(28 / 393 * 100vw);
    border-radius: 6px;
    box-shadow: 0 calc(8 / 393 * 100vw) calc(18 / 393 * 100vw) rgb(0 0 0 / 8%);
  }
  .home .site-main > .courses .course-card-summary {
    display: flex;
    flex-direction: column;
    gap: calc(14 / 393 * 100vw);
    padding: calc(24 / 393 * 100vw) calc(20 / 393 * 100vw);
  }
  .home .site-main > .courses .course-label {
    min-width: calc(104 / 393 * 100vw);
    padding: calc(6 / 393 * 100vw) calc(14 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw);
  }
  .home .site-main > .courses .course-name {
    font-size: calc(24 / 393 * 100vw);
  }
  .home .site-main > .courses .course-meta {
    justify-content: flex-start;
    gap: calc(8 / 393 * 100vw);
  }
  .home .site-main > .courses .course-fee,
  .home .site-main > .courses .course-cap {
    min-height: calc(30 / 393 * 100vw);
    padding: calc(5 / 393 * 100vw) calc(12 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw);
  }
  .home .site-main > .courses .course-lead {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.7;
  }
  .home .site-main > .courses .course-detail-toggle {
    align-self: stretch;
    min-width: 0;
    padding: calc(12 / 393 * 100vw) calc(16 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
  .home .site-main > .courses .course-detail-inner {
    grid-template-columns: 1fr;
    gap: calc(22 / 393 * 100vw);
    padding: calc(24 / 393 * 100vw) calc(20 / 393 * 100vw) calc(28 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-block h4 {
    margin-bottom: calc(8 / 393 * 100vw);
    font-size: calc(17 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-block p {
    font-size: calc(14 / 393 * 100vw);
    line-height: 1.75;
  }
  .home .site-main > .courses .detail-list {
    gap: calc(8 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-list li {
    padding-left: calc(18 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-list li::before {
    width: calc(7 / 393 * 100vw);
    height: calc(7 / 393 * 100vw);
  }
  .home .site-main > .courses .schedule-list {
    gap: calc(8 / 393 * 100vw);
  }
  .home .site-main > .courses .schedule-row {
    grid-template-columns: 1fr;
    gap: calc(4 / 393 * 100vw);
    padding: calc(12 / 393 * 100vw) calc(14 / 393 * 100vw);
    border-left-width: calc(4 / 393 * 100vw);
  }
  .home .site-main > .courses .sch-num,
  .home .site-main > .courses .sch-date {
    font-size: calc(13 / 393 * 100vw);
  }
  .home .site-main > .courses .sch-content {
    font-size: calc(14 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-flyer {
    display: block;
    margin-top: 0;
  }
  .home .site-main > .courses .detail-flyer .btn {
    width: 100%;
    min-width: 0;
    padding: calc(14 / 393 * 100vw) calc(18 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
  .home .site-main > .courses .detail-cta {
    margin-top: 0;
  }
  .home .site-main > .courses .detail-cta .btn {
    width: 100%;
    min-width: 0;
    padding: calc(15 / 393 * 100vw) calc(18 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
  }
}
body {
  margin: 0;
}
main {
  display: block;
}
h1 {
  margin: 0.67em 0;
  font-size: 2em;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: rgba(0, 0, 0, 0);
}
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  border-bottom: none;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
}
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}
[type='search'] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px;
}
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
  appearance: button;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
*,
*::before,
*::after {
  box-sizing: inherit;
}
html {
  box-sizing: border-box;
}
body,
button,
input,
select,
optgroup,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
    Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: #404040;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}
p {
  margin-bottom: 1.5em;
}
dfn,
cite,
em,
i {
  font-style: italic;
}
blockquote {
  margin: 0 1.5em;
}
address {
  margin: 0 0 1.5em;
}
pre {
  max-width: 100%;
  padding: 1.6em;
  margin-bottom: 1.6em;
  overflow: auto;
  font-family: 'Courier 10 Pitch', courier, monospace;
  line-height: 1.6;
  background: #eee;
}
code,
kbd,
tt,
var {
  font-family: monaco, consolas, 'Andale Mono', 'DejaVu Sans Mono', monospace;
}
abbr,
acronym {
  cursor: help;
  border-bottom: 1px dotted #666;
}
mark,
ins {
  text-decoration: none;
  background: #fff9c0;
}
big {
  font-size: 125%;
}
body {
  background: #fff;
}
hr {
  height: 1px;
  margin-bottom: 1.5em;
  background-color: #ccc;
  border: 0;
}
ul,
ol {
  margin: 0 0 1.5em 3em;
}
ul {
  list-style: disc;
}
ol {
  list-style: decimal;
}
li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}
dt {
  font-weight: 700;
}
dd {
  margin: 0 1.5em 1.5em;
}
embed,
iframe,
object {
  max-width: 100%;
}
img {
  max-width: 100%;
  height: auto;
}
figure {
  margin: 1em 0;
}
table {
  width: 100%;
  margin: 0 0 1.5em;
}
a {
  color: #4169e1;
}
a:visited {
  color: purple;
}
a:hover,
a:focus,
a:active {
  color: #191970;
}
a:focus {
  outline: thin dotted;
}
a:hover,
a:active {
  outline: 0;
}
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  padding: 0.6em 1em 0.4em;
  line-height: 1;
  color: rgba(0, 0, 0, 0.8);
  background: #e6e6e6;
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
}
button:hover,
input[type='button']:hover,
input[type='reset']:hover,
input[type='submit']:hover {
  border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type='button']:active,
input[type='button']:focus,
input[type='reset']:active,
input[type='reset']:focus,
input[type='submit']:active,
input[type='submit']:focus {
  border-color: #aaa #bbb #bbb;
}
input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search'],
input[type='number'],
input[type='tel'],
input[type='range'],
input[type='date'],
input[type='month'],
input[type='week'],
input[type='time'],
input[type='datetime'],
input[type='datetime-local'],
input[type='color'],
textarea {
  padding: 3px;
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
}
input[type='text']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='number']:focus,
input[type='tel']:focus,
input[type='range']:focus,
input[type='date']:focus,
input[type='month']:focus,
input[type='week']:focus,
input[type='time']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='color']:focus,
textarea:focus {
  color: #111;
}
select {
  border: 1px solid #ccc;
}
textarea {
  width: 100%;
}
.main-navigation {
  display: block;
  width: 100%;
}
.main-navigation ul {
  display: none;
  padding-left: 0;
  margin: 0;
  list-style: none;
}
.main-navigation ul ul {
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
  float: left;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
.main-navigation ul ul ul {
  top: 0;
  left: -999em;
}
.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  left: auto;
  display: block;
}
.main-navigation ul ul a {
  width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}
@media screen and (width >= 37.5em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: flex;
  }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  flex: 1 0 50%;
  text-align: end;
}
.sticky {
  display: block;
}
.updated:not(.published) {
  display: none;
}
.page-links {
  margin: 0 0 1.5em;
  clear: both;
}
.comment-content a {
  word-wrap: break-word;
}
.bypostauthor {
  display: block;
}
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: none;
}
.custom-logo-link {
  display: inline-block;
}
.wp-caption {
  max-width: 100%;
  margin-bottom: 1.5em;
}
.wp-caption img[class*='wp-image-'] {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}
.wp-caption-text {
  text-align: center;
}
.gallery {
  display: grid;
  grid-gap: 1.5em;
  margin-bottom: 1.5em;
}
.gallery-item {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}
.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}
.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}
.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}
.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}
.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}
.gallery-caption {
  display: block;
}
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}
.infinity-end.neverending .site-footer {
  display: block;
}
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  word-wrap: normal !important;
  border: 0;
}
.screen-reader-text:focus {
  top: 5px;
  left: 5px;
  z-index: 100000;
  display: block;
  width: auto;
  height: auto;
  padding: 15px 23px 14px;
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: normal;
  color: #21759b;
  text-decoration: none;
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}
#primary[tabindex='-1']:focus {
  outline: 0;
}
.alignleft {
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}
.alignright {
  float: right;
  margin-bottom: 1.5em;
  margin-left: 1.5em;
}
.aligncenter {
  display: block;
  margin-right: auto;
  margin-bottom: 1.5em;
  margin-left: auto;
  clear: both;
} /*! destyle.css v3.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  margin: 0;
}
main {
  display: block;
}
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
dt {
  font-weight: 700;
}
dd {
  margin-left: 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}
pre {
  font-family: monospace, monospace;
  font-size: inherit;
}
address {
  font-style: inherit;
}
a {
  background-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  color: inherit;
}
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: rgba(0, 0, 0, 0);
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}
[type='checkbox'] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}
[type='radio'] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}
button,
[type='button'],
[type='reset'],
[type='submit'] {
  cursor: pointer;
}
button:disabled,
[type='button']:disabled,
[type='reset']:disabled,
[type='submit']:disabled {
  cursor: default;
}
:-moz-focusring {
  outline: auto;
}
select:disabled {
  opacity: inherit;
}
option {
  padding: 0;
}
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}
legend {
  padding: 0;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}
[type='search'] {
  outline-offset: -2px;
}
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
label[for] {
  cursor: pointer;
}
details {
  display: block;
}
summary {
  display: list-item;
}
[contenteditable]:focus {
  outline: auto;
}
table {
  border-color: inherit;
}
caption {
  text-align: left;
}
td,
th {
  vertical-align: top;
  padding: 0;
}
th {
  text-align: left;
  font-weight: 700;
}
@font-face {
  font-family: mobo-b;
  src: url('./assets/common/fonts/MOBO-Font11/MOBO-Bold.otf') format('truetype');
}
@font-face {
  font-family: mobo-r;
  src: url('./assets/common/fonts/MOBO-Font11/MOBO-Regular.otf')
    format('truetype');
}
.home .site-main > .pickup::before,
.home .site-main > .news::before,
.home .site-main > .contact::before,
.page-header::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  mix-blend-mode: multiply;
  transform: translate3d(0, 0, 0);
}
.archive
  .site-main
  .page-content
  .cards
  .card-post
  .card-link
  .card-content
  .title,
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-content
  .title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.archive
  .site-main
  .page-content
  .cards
  .card-post
  .card-link
  .card-content
  .title,
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-content
  .title {
  -webkit-line-clamp: 2;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(80 / 1440 * 100vw);
}
@media (max-width: 768px) {
  html {
    scroll-padding-top: 0;
  }
}
body {
  font-family: 'Zen Kaku Gothic New', sans-serif, 'ヒラギノ角ゴシック',
    'Hiragino Sans', YuGothic, 'Yu Gothic', 'メイリオ', Meiryo,
    'Times New Roman', sans-serif;
  font-size: calc(16 / 1440 * 100vw);
  line-height: 2;
  color: #000;
  letter-spacing: calc(1.6 / 1440 * 100vw);
}
@media (max-width: 768px) {
  body {
    font-size: calc(14 / 393 * 100vw);
    letter-spacing: calc(1.6 / 393 * 100vw);
  }
}
body button {
  border: unset;
}
a,
a:visited {
  display: inline-block;
  width: 100%;
  color: inherit;
  text-decoration: none;
  transition: all 0.3s;
}
a:hover,
a:visited:hover {
  color: inherit;
  cursor: pointer;
  opacity: 0.8;
}
img {
  width: 100%;
  height: auto;
}
.site {
  position: relative;
}
.site .site-main {
  position: relative;
  padding-top: calc(90 / 1440 * 100vw);
  overflow: hidden;
}
@media (max-width: 768px) {
  .site .site-main {
    padding-top: calc(46 / 393 * 100vw);
  }
}
.site .site-main .parallax {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  pointer-events: none;
  -o-object-fit: cover;
  object-fit: cover;
}
.site .site-main .btn {
  display: inline-block;
  width: calc(146 / 1440 * 100vw);
  padding: calc(12 / 1440 * 100vw) 0;
  font-size: calc(14 / 1440 * 100vw);
  font-weight: 900;
  color: #1fa0cb;
  text-align: center;
  background-color: #fff;
}
.site .site-main .btn--secondary {
  color: #fff;
  background-color: #2a3441;
  border-color: #2a3441;
}
.site .site-main .btn--secondary:hover {
  color: #fff;
  background-color: #1f2731;
  opacity: 1;
}
.site .site-main .btn--external::after {
  content: '\2197';
  display: inline-block;
  margin-left: 0.4em;
  font-size: 0.85em;
  font-weight: 900;
  line-height: 1;
}
@media (max-width: 768px) {
  .site .site-main .btn {
    width: calc(146 / 393 * 100vw);
    padding: calc(10 / 393 * 100vw) 0 calc(11 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
}
.common-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: calc(1190 / 1440 * 100vw);
  margin: 0 auto;
}
@media (max-width: 768px) {
  .common-inner {
    max-width: calc(360 / 393 * 100vw);
  }
}
.page-header {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 calc(40 / 1440 * 100vw);
  margin: calc(84 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .page-header {
    padding: calc(14 / 393 * 100vw) calc(20 / 393 * 100vw)
      calc(13 / 393 * 100vw);
    margin: calc(30 / 393 * 100vw) auto 0;
  }
}
.page-header::before {
  background-color: #e61218;
}
.page-header .page-title {
  font-size: calc(32 / 1440 * 100vw);
  color: #fff;
}
@media (max-width: 768px) {
  .page-header .page-title {
    font-size: calc(24 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .d-sp-none {
    display: none !important;
  }
}
.d-pc-none {
  display: none !important;
}
@media (max-width: 768px) {
  .d-pc-none {
    display: block !important;
    width: 100%;
    margin: 0 auto;
  }
}
.visual-sp-badge {
  display: none !important;
}
@media (max-width: 768px) {
  .visual-sp-badge {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .visual-badge {
    display: none !important;
  }
}

.recruitment-closed-notice {
  display: block;
  padding: 1.2em 1.5em;
  color: #3a3530;
  font-size: 0.95em;
  line-height: 1.7;
  text-align: left;
  background-color: #f5f3ee;
  border: 1px solid #d6d0c4;
  border-left: 4px solid #b89f6b;
  border-radius: 4px;
}

.detail-cta--closed {
  margin-top: 1em;
}

.recruitment-closed-page .recruitment-closed-notice {
  max-width: 720px;
  margin: 2em auto;
  font-size: 1em;
}
.site-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: calc(16 / 1440 * 100vw) calc(20 / 1440 * 100vw);
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(30px);
  backdrop-filter: blur(30px);
}
@media (max-width: 768px) {
  .site-header {
    justify-content: flex-end;
    padding: calc(10 / 393 * 100vw) calc(16 / 393 * 100vw);
    padding: 0;
    background-color: rgba(255, 255, 255, 0);
    -webkit-backdrop-filter: unset;
    backdrop-filter: unset;
  }
}
.site-header .site-branding {
  width: 100%;
}
@media (max-width: 768px) {
  .site-header .site-branding {
    display: none;
  }
}
.site-header .site-branding .site-title {
  width: calc(150 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-header .site-branding .site-title {
    width: calc(100 / 393 * 100vw);
  }
}
.site-header .nav-content {
  flex-shrink: 0;
}
.site-header .nav-content .main-navigation .toggle-menu {
  display: none;
}
@media (max-width: 768px) {
  .site-header .nav-content .main-navigation .toggle-menu {
    position: relative;
    z-index: 1;
    display: block;
    width: calc(64 / 393 * 100vw);
    height: calc(46 / 393 * 100vw);
    padding: 1px;
    cursor: pointer;
    background-color: #000;
  }
}
.site-header .nav-content .main-navigation .toggle-menu span {
  position: absolute;
  right: 0;
  left: 0;
  display: block;
  width: calc(35 / 393 * 100vw);
  height: 2px;
  margin: auto;
  background: #fff;
  transition: 0.2s;
}
.site-header .nav-content .main-navigation .toggle-menu span:nth-of-type(1) {
  top: 0;
  bottom: 0;
}
.site-header .nav-content .main-navigation .toggle-menu span:nth-of-type(2) {
  top: calc(12 / 393 * 100vw);
  transition: all 0.6s;
}
.site-header .nav-content .main-navigation .toggle-menu span:nth-of-type(3) {
  bottom: calc(12 / 393 * 100vw);
  transition: all 0.6s;
}
@media (max-width: 768px) {
  .site-header .nav-content .main-navigation .menu-wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    padding: calc(80 / 393 * 100vw) calc(68 / 393 * 100vw);
    overflow: scroll;
    visibility: hidden;
    background-image: url('./assets/parts/header/menu-bg-sp.png');
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0;
    transition: 0.3s;
  }
}
.site-header .nav-content .main-navigation .menu-wrap .menu {
  display: flex !important;
  flex-direction: row;
  align-items: center;
}
@media (max-width: 768px) {
  .site-header .nav-content .main-navigation .menu-wrap .menu {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    width: 100%;
    font-size: calc(16 / 393 * 100vw);
    color: #fff;
  }
}
.site-header .nav-content .main-navigation .menu-wrap .menu > .menu-item {
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  padding: calc(2 / 1440 * 100vw) calc(10 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-header .nav-content .main-navigation .menu-wrap .menu > .menu-item {
    width: 100%;
    border-bottom: 1px solid #fff;
  }
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item:first-child {
    border-top: 1px solid #fff;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.contact,
.site-header .nav-content .main-navigation .menu-wrap .menu > .menu-item.join {
  padding: 0 calc(6 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.contact,
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.join {
    margin-top: calc(20 / 393 * 100vw);
    border-bottom: unset;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.contact
  a,
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.join
  a {
  width: calc(150 / 1440 * 100vw);
  padding: calc(12 / 1440 * 100vw) 0;
  color: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.contact
    a,
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.join
    a {
    width: 100%;
    padding: calc(20 / 393 * 100vw) 0;
    font-size: calc(14 / 393 * 100vw);
    color: #e61218;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.contact {
  margin-left: calc(10 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.contact {
    margin-left: 0;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.contact
  a {
  background-color: #000;
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.contact
    a {
    background-color: #fff;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item.join
  a {
  background-color: #8ad329;
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item.join
    a {
    background-color: #fff;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item:not(.contact, .join)
  a:hover {
  color: #e9131a;
  opacity: 1;
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item:not(.contact, .join)
    a:hover {
    color: #fff;
  }
}
.site-header
  .nav-content
  .main-navigation
  .menu-wrap
  .menu
  > .menu-item:not(.contact, .join)
  a:hover::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background-color: #ccc;
}
@media (max-width: 768px) {
  .site-header
    .nav-content
    .main-navigation
    .menu-wrap
    .menu
    > .menu-item:not(.contact, .join)
    a:hover::after {
    display: none;
  }
}
.site-header .nav-content .main-navigation .menu-wrap .menu > .menu-item a {
  position: relative;
  font-weight: 900;
}
@media (max-width: 768px) {
  .site-header .nav-content .main-navigation .menu-wrap .menu > .menu-item a {
    display: block;
    width: 100%;
    padding: calc(20 / 393 * 100vw) calc(16 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
    text-align: center;
  }
}
.site-header .nav-content .main-navigation .menu-wrap .sns {
  display: none;
}
.site-header .nav-content.open .main-navigation .toggle-menu {
  background-color: unset;
}
@media (max-width: 768px) {
  .site-header .nav-content.open .main-navigation .toggle-menu {
    width: calc(60 / 393 * 100vw);
    height: calc(74 / 393 * 100vw);
  }
}
.site-header
  .nav-content.open
  .main-navigation
  .toggle-menu
  span:nth-of-type(1) {
  width: 0;
}
.site-header
  .nav-content.open
  .main-navigation
  .toggle-menu
  span:nth-of-type(2) {
  top: 50%;
  margin: 0;
  transition: all 0.6s;
  transform: translateY(-50%) rotate(40deg);
}
.site-header
  .nav-content.open
  .main-navigation
  .toggle-menu
  span:nth-of-type(3) {
  bottom: 50%;
  margin: 0;
  transition: all 0.6s;
  transform: translateY(50%) rotate(-40deg);
}
@media (max-width: 768px) {
  .site-header .nav-content.open .main-navigation .menu-wrap {
    visibility: visible;
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .site-header .nav-content.open .main-navigation .menu-wrap .menu {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .site-header .nav-content.open .main-navigation .menu-wrap .sns {
    display: flex;
    gap: calc(60 / 393 * 100vw);
    justify-content: center;
    width: 100%;
    padding-top: calc(40 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .site-header .nav-content.open .main-navigation .menu-wrap .sns .sns-link {
    display: inline-block;
    width: calc(30 / 393 * 100vw);
  }
}
.site-footer {
  position: relative;
  z-index: 1;
  padding: calc(100 / 1440 * 100vw) 0 calc(60 / 1440 * 100vw);
  font-weight: 900;
  color: #fff;
  text-align: center;
  background-color: #000;
}
@media (max-width: 768px) {
  .site-footer {
    padding: calc(40 / 393 * 100vw) 0 calc(18 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info {
  position: relative;
}
.site-footer > .common-inner .site-info .logo-img {
  width: calc(350 / 1440 * 100vw);
  margin: 0 auto;
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .logo-img {
    width: calc(210 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info [class*="menu-container"] {
  margin-top: calc(56 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info [class*="menu-container"] {
    margin-top: calc(54 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info [class*="menu-container"] .menu {
  display: flex;
  gap: 0 calc(20 / 1440 * 100vw);
  justify-content: center;
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info [class*="menu-container"] .menu {
    flex-direction: column;
    gap: calc(20 / 393 * 100vw) 0;
    align-items: flex-start;
  }
}
.site-footer > .common-inner .site-info .sns {
  display: flex;
  gap: 0 calc(40 / 1440 * 100vw);
  justify-content: center;
  margin-top: calc(70 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .sns {
    position: absolute;
    top: calc(96 / 393 * 100vw);
    right: 0;
    flex-direction: column;
    gap: calc(30 / 393 * 100vw) 0;
  }
}
.site-footer > .common-inner .site-info .sns .sns-link {
  display: inline-block;
  width: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .sns .sns-link {
    width: calc(30 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .sponsor {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: calc(250 / 1440 * 100vw) calc(250 / 1440 * 100vw);
  gap: calc(28 / 1440 * 100vw) calc(46 / 1440 * 100vw);
  width: -moz-fit-content;
  width: fit-content;
  margin: calc(80 / 1440 * 100vw) auto 0;
  letter-spacing: calc(2 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .sponsor {
    grid-template-rows: auto auto auto;
    grid-template-columns: calc(250 / 393 * 100vw);
    gap: calc(28 / 393 * 100vw) 0;
    margin: calc(96 / 393 * 100vw) auto 0;
  }
}
.site-footer > .common-inner .site-info .sponsor .sponsor-item {
  line-height: 2;
}
.site-footer > .common-inner .site-info .sponsor .sponsor-item .type {
  padding-bottom: calc(7 / 1440 * 100vw);
  margin-bottom: calc(16 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
  border-bottom: 6px solid #1fa0cb;
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .sponsor .sponsor-item .type {
    padding-bottom: calc(4 / 393 * 100vw);
    margin-bottom: calc(8 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
    border-bottom: 4px solid #1fa0cb;
  }
}
.site-footer > .common-inner .site-info .sponsor .sponsor-item .contact {
  margin-top: calc(16 / 1440 * 100vw);
  letter-spacing: calc(1.4 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .sponsor .sponsor-item .contact {
    margin-top: calc(16 / 393 * 100vw);
    letter-spacing: calc(1.4 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .sponsor .sponsor-item:first-of-type {
  grid-row: 1/3;
  grid-column: 1;
}
.site-footer
  > .common-inner
  .site-info
  .sponsor
  .sponsor-item:first-of-type
  .type {
  border-color: #e61218;
}
.site-footer > .common-inner .site-info .banner {
  margin-top: calc(64 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .banner {
    margin-top: calc(70 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .banner .banner-link {
  display: inline-block;
  width: calc(130 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .banner .banner-link {
    width: calc(130 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .privacy {
  margin-top: calc(30 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .privacy {
    margin-top: calc(36 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .privacy .privacy-link {
  font-size: calc(14 / 1440 * 100vw);
  letter-spacing: calc(4 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .privacy .privacy-link {
    font-size: calc(14 / 393 * 100vw);
    letter-spacing: calc(4 / 393 * 100vw);
  }
}
.site-footer > .common-inner .site-info .copyright {
  margin-top: calc(20 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
  letter-spacing: calc(2 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .site-footer > .common-inner .site-info .copyright {
    margin-top: calc(10 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
    letter-spacing: calc(1.6 / 393 * 100vw);
  }
}
.home {
  overflow: hidden;
}
.home .loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  visibility: visible;
  background-color: #fff;
  opacity: 1;
  transition: 0.3s ease-in-out;
}
.home .loading .text {
  font-size: calc(56 / 1440 * 100vw);
  font-weight: 900;
  letter-spacing: calc(30 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .loading .text {
    font-size: calc(30 / 393 * 100vw);
    letter-spacing: calc(16 / 1440 * 100vw);
  }
}
.js-loaded {
  overflow: unset;
}
.js-loaded .loading {
  visibility: hidden;
  opacity: 0;
}
.pagination {
  width: 100%;
  margin-top: calc(60 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .pagination {
    margin-top: calc(50 / 393 * 100vw);
  }
}
.pagination > .page-numbers {
  position: relative;
  display: flex;
  gap: 0 calc(10 / 1440 * 100vw);
  align-items: center;
  justify-content: center;
}
@media (max-width: 768px) {
  .pagination > .page-numbers {
    gap: 0 calc(4 / 393 * 100vw);
  }
}
.pagination > .page-numbers li {
  position: relative;
}
.pagination > .page-numbers li > .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(42 / 1440 * 100vw);
  height: calc(42 / 1440 * 100vw);
  padding-bottom: calc(2 / 1440 * 100vw);
  font-size: calc(16 / 1440 * 100vw);
  color: #e61218;
  text-align: center;
  border: 1px solid #e61218;
  border-radius: 50%;
}
@media (max-width: 768px) {
  .pagination > .page-numbers li > .page-numbers {
    width: calc(48 / 393 * 100vw);
    height: calc(48 / 393 * 100vw);
    padding-bottom: calc(2 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.pagination > .page-numbers li > .page-numbers:hover {
  color: #fff;
  background-color: rgba(236, 19, 26, 0.5);
}
.pagination > .page-numbers li > .page-numbers.current {
  color: #fff;
  background-color: #e61218;
}
.pagination > .page-numbers li > .page-numbers.next:hover svg,
.pagination > .page-numbers li > .page-numbers.prev:hover svg {
  stroke: #fff;
}
.pagination > .page-numbers li > .page-numbers.next svg,
.pagination > .page-numbers li > .page-numbers.prev svg {
  width: calc(14 / 1440 * 100vw);
  height: calc(24 / 1440 * 100vw);
  -o-object-fit: contain;
  object-fit: contain;
  stroke: #e61218;
}
@media (max-width: 768px) {
  .pagination > .page-numbers li > .page-numbers.next svg,
  .pagination > .page-numbers li > .page-numbers.prev svg {
    width: calc(10 / 393 * 100vw);
    height: calc(20 / 393 * 100vw);
  }
}
.pagination > .page-numbers li > .page-numbers.next {
  margin-left: calc(4 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .pagination > .page-numbers li > .page-numbers.next {
    margin-left: calc(4 / 393 * 100vw);
  }
}
.pagination > .page-numbers li > .page-numbers.prev {
  margin-right: calc(4 / 1440 * 100vw);
  transform: scale(-1, 1);
}
@media (max-width: 768px) {
  .pagination > .page-numbers li > .page-numbers.prev {
    margin-right: calc(4 / 393 * 100vw);
  }
}
.pagination > .page-numbers li > .page-numbers.dots {
  padding-bottom: calc(8 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .pagination > .page-numbers li > .page-numbers.dots {
    padding-bottom: calc(6 / 393 * 100vw);
  }
}
.home {
  position: relative;
}
.home .site-main {
  padding-top: 0;
}
.home .site-main .section-title {
  font-family: 'mobo-b';
  font-size: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main .section-title {
    padding: 0 calc(24 / 1440 * 100vw);
    font-size: calc(24 / 393 * 100vw);
  }
}
.home .site-main > .key-visual {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 100vh;
  min-height: 100dvh;
  padding: calc(120 / 1440 * 100vw) 0 calc(120 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual {
    padding: calc(70 / 393 * 100vw) 0 calc(60 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .badge-bg {
  position: absolute;
  top: max(50vh + 100/1440 * 100vw, 500/1440 * 100vw);
  left: 65%;
  width: calc(170 / 1440 * 100vw);
  height: calc(170 / 1440 * 100vw);
  background-color: #e61218;
  border-radius: 50%;
  mix-blend-mode: multiply;
  transform: translate3d(0, 0, 0);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .badge-bg {
    top: calc(620 / 393 * 100vw);
    left: 50%;
    width: calc(317 / 393 * 100vw);
    height: calc(97 / 393 * 100vw);
    border-radius: calc(10 / 393 * 100vw);
    transform: translateX(-50%) translate3d(0, 0, 0);
  }
}
.home .site-main > .key-visual .scroll {
  position: absolute;
  bottom: calc(-40 / 1440 * 100vw);
  left: calc(160 / 1440 * 100vw);
  z-index: 1;
  width: 0;
  border-color: #1fa0cb rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
  border-style: solid;
  border-width: calc(100 / 1440 * 100vw) calc(30 / 1440 * 100vw) 0
    calc(30 / 1440 * 100vw);
}
.home .site-main > .key-visual .scroll::before {
  position: absolute;
  top: calc(-60 / 1440 * 100vw);
  left: 0;
  display: inline-block;
  font-family: 'mobo-b';
  font-size: calc(15 / 1440 * 100vw);
  content: 'SCROLL';
  transform: rotate(107deg);
}
.home .site-main > .key-visual .common-inner {
  display: flex;
  gap: calc(67 / 1440 * 100vw);
  justify-content: center;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner {
    flex-direction: column;
    gap: calc(25 / 393 * 100vw);
    align-items: center;
  }
}
.home .site-main > .key-visual .common-inner .key-visual-top {
  padding-left: calc(100 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-top {
    padding-left: 0;
  }
}
.home .site-main > .key-visual .common-inner .key-visual-top .logo {
  width: calc(564 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-top .logo {
    width: calc(300 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-top .organized {
  width: calc(445 / 1440 * 100vw);
  margin-top: calc(45 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-top .organized {
    width: calc(310 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom {
  padding-top: calc(60 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom {
    padding-top: calc(25 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .times {
  width: calc(310 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .times {
    width: calc(310 / 393 * 100vw);
    margin: 0 auto;
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom > .text {
  margin-top: calc(10 / 1440 * 100vw);
  font-family: 'mobo-b';
  font-size: calc(30 / 1440 * 100vw);
  color: #1fa0cb;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom > .text {
    margin-top: calc(12 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw);
    text-align: center;
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .visual-badge {
  width: calc(170 / 1440 * 100vw);
}
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .visual-sp-badge {
  width: calc(373 / 393 * 100vw);
  margin: 0 auto;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(170 / 1440 * 100vw);
  height: calc(170 / 1440 * 100vw);
  padding-left: calc(10 / 1440 * 100vw);
  margin-top: calc(38 / 1440 * 100vw);
  line-height: 1.6;
  color: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .badge {
    flex-direction: row;
    justify-content: space-between;
    width: calc(317 / 393 * 100vw);
    height: calc(97 / 393 * 100vw);
    padding: calc(18 / 393 * 100vw) calc(24 / 393 * 100vw);
    margin-top: calc(30 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .badge .title {
  display: inline-block;
  padding: 0 calc(4 / 1440 * 100vw);
  font-size: calc(13 / 1440 * 100vw);
  font-weight: 500;
  border: 1px solid #fff;
  border-radius: calc(5 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .key-visual
    .common-inner
    .key-visual-bottom
    .badge
    .title {
    height: -moz-fit-content;
    height: fit-content;
    padding: 0 calc(4 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .badge time {
  display: inline-block;
  margin-top: calc(6 / 1440 * 100vw);
  font-size: calc(15 / 1440 * 100vw);
  font-weight: 900;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .badge time {
    margin-top: 0;
    font-size: calc(15 / 393 * 100vw);
  }
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .badge .text {
  width: calc(90 / 1440 * 100vw);
  margin: 0 auto;
  font-weight: 900;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .badge .text {
    width: auto;
    margin: 0;
    font-size: calc(14 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .btns {
    display: flex !important;
    gap: calc(10 / 393 * 100vw);
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: calc(20 / 393 * 100vw);
  }
}
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .contact
  .btn,
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .join
  .btn {
  color: #fff;
  font-weight: 900;
  letter-spacing: 0;
  border-radius: 8px;
  box-shadow: 0 4px 0 rgba(0, 0, 0, 0.15);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .contact
  .btn:hover,
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .join
  .btn:hover {
  opacity: 0.95;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.15);
  transform: translateY(2px);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .key-visual
    .common-inner
    .key-visual-bottom
    .btns
    .contact
    .btn,
  .home
    .site-main
    > .key-visual
    .common-inner
    .key-visual-bottom
    .btns
    .join
    .btn {
    width: calc(180 / 393 * 100vw);
    padding-top: calc(15 / 393 * 100vw);
    padding-bottom: calc(15 / 393 * 100vw);
  }
}
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .contact
  .btn {
  background-color: #000;
}
.home
  .site-main
  > .key-visual
  .common-inner
  .key-visual-bottom
  .btns
  .join
  .btn {
  background-color: #8ad329;
  border: 2px solid #6db320;
}
.home .site-main > .about {
  position: relative;
  padding: calc(80 / 1440 * 100vw) 0 calc(145 / 1440 * 100vw);
  color: #fff;
  background-color: #e61218;
}
@media (max-width: 768px) {
  .home .site-main > .about {
    padding: calc(40 / 393 * 100vw) 0 calc(80 / 393 * 100vw);
  }
}
.home .site-main > .about .section-title {
  text-align: right;
}
@media (max-width: 768px) {
  .home .site-main > .about .section-title {
    font-size: calc(38 / 393 * 100vw);
    text-align: left;
  }
}
.home .site-main > .about .section-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: calc(1060 / 1440 * 100vw);
  margin: calc(40 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content {
    flex-direction: column;
    width: calc(350 / 393 * 100vw);
    margin: calc(50 / 393 * 100vw) auto 0;
  }
}
.home .site-main > .about .section-content .key-phrase {
  font-family: 'mobo-b';
  font-size: calc(48 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .key-phrase {
    font-size: calc(24 / 393 * 100vw);
  }
}
.home .site-main > .about .section-content .text {
  width: calc(520 / 1440 * 100vw);
  padding-top: calc(30 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .text {
    width: 100%;
    padding-top: calc(50 / 393 * 100vw);
  }
}
.home .site-main > .about .section-content .project-logo {
  width: 100%;
  padding: calc(60 / 1440 * 100vw) 0;
  margin-top: calc(86 / 1440 * 100vw);
  color: #000;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.88);
  border-radius: calc(36 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .project-logo {
    padding: calc(40 / 393 * 100vw) calc(30 / 393 * 100vw)
      calc(50 / 393 * 100vw);
    margin-top: calc(50 / 393 * 100vw);
    border-radius: calc(16 / 393 * 100vw);
  }
}
.home .site-main > .about .section-content .project-logo .title {
  font-family: 'mobo-b';
  font-size: calc(25 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .project-logo .title {
    font-size: calc(20 / 393 * 100vw);
  }
}
.home .site-main > .about .section-content .project-logo .img-wrap {
  width: calc(400 / 1440 * 100vw);
  margin: calc(40 / 1440 * 100vw) auto calc(55 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .project-logo .img-wrap {
    width: calc(255 / 393 * 100vw);
    margin: calc(20 / 393 * 100vw) auto calc(40 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .project-logo p {
    text-align: left;
    letter-spacing: calc(0.5 / 393 * 100vw);
  }
}
.home .site-main > .about .section-content .project-logo p span {
  display: block;
}
@media (max-width: 768px) {
  .home .site-main > .about .section-content .project-logo p span {
    display: inline;
  }
}
.home .site-main > .point {
  padding: calc(112 / 1440 * 100vw) 0 calc(135 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point {
    padding: calc(45 / 393 * 100vw) 0;
  }
}
.home .site-main > .point .common-inner .point-top {
  display: flex;
  flex-wrap: wrap;
  gap: calc(95 / 1440 * 100vw) calc(87 / 1440 * 100vw);
  justify-content: center;
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top {
    flex-direction: column;
    gap: 0;
    align-items: center;
  }
}
.home .site-main > .point .common-inner .point-top .title {
  position: relative;
  width: 100%;
  font-family: 'mobo-b';
  font-size: calc(48 / 1440 * 100vw);
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .title {
    font-size: calc(24 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-top .title::before,
.home .site-main > .point .common-inner .point-top .title::after {
  position: absolute;
  bottom: calc(60 / 1440 * 100vw);
  display: inline-block;
  width: calc(120 / 1440 * 100vw);
  height: calc(6 / 1440 * 100vw);
  content: '';
  background-color: #000;
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .title::before,
  .home .site-main > .point .common-inner .point-top .title::after {
    bottom: calc(40 / 393 * 100vw);
    width: calc(60 / 393 * 100vw);
    height: calc(4 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-top .title::before {
  left: calc(140 / 1440 * 100vw);
  transform: rotate(60deg);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .title::before {
    left: calc(-20 / 393 * 100vw);
    transform: rotate(80deg);
  }
}
.home .site-main > .point .common-inner .point-top .title::after {
  right: calc(140 / 1440 * 100vw);
  transform: rotate(300deg);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .title::after {
    right: calc(-20 / 393 * 100vw);
    transform: rotate(280deg);
  }
}
.home .site-main > .point .common-inner .point-top .img-wrap {
  width: calc(387 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .img-wrap {
    width: calc(260 / 393 * 100vw);
    margin-top: calc(60 / 1440 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-top .text {
  width: calc(490 / 1440 * 100vw);
  padding-top: calc(30 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-top .text {
    width: calc(335 / 393 * 100vw);
    padding-top: calc(50 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-bottom {
  margin-top: calc(110 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-bottom {
    margin-top: px_sp(50);
  }
}
.home .site-main > .point .common-inner .point-bottom .section-title {
  font-family: 'mobo-b';
  font-size: calc(32 / 1440 * 100vw);
  color: #1fa0cb;
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-bottom .section-title {
    font-size: calc(20 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-bottom .point-item {
  display: flex;
  gap: calc(70 / 1440 * 100vw);
  align-items: center;
  justify-content: center;
  margin-top: calc(90 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-bottom .point-item {
    flex-direction: column;
    gap: calc(20 / 393 * 100vw);
    margin-top: calc(50 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(1)
    .img-wrap {
    margin-left: calc(-160 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(odd)
  h3 {
  color: #e61218;
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(odd)
  p {
  color: #e9131a;
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(even) {
  flex-direction: row-reverse;
  gap: calc(40 / 1440 * 100vw);
  margin-top: calc(40 / 1440 * 100vw);
  color: #1fa0cb;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(even) {
    flex-direction: column;
    margin-top: calc(47 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(even)
  .img-wrap {
  width: calc(430 / 1440 * 100vw);
  margin-right: calc(-10 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(even)
    .img-wrap {
    width: calc(360 / 393 * 100vw);
    margin-right: calc(-120 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(even)
  .content {
  width: calc(430 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(even)
    .content {
    width: calc(335 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item:nth-of-type(even)
  .content
  h3 {
  align-items: center;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(even)
    .content
    h3 {
    align-items: flex-end;
  }
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(even)
    .content
    h3
    span {
    padding-right: calc(12 / 393 * 100vw);
    padding-left: calc(64 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item:nth-of-type(3)
    .img-wrap {
    margin-left: calc(-120 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-bottom .point-item .img-wrap {
  width: calc(360 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-bottom .point-item .img-wrap {
    width: calc(300 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-bottom .point-item .content {
  width: calc(460 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .point .common-inner .point-bottom .point-item .content {
    width: calc(335 / 393 * 100vw);
  }
}
.home .site-main > .point .common-inner .point-bottom .point-item .content h3 {
  position: relative;
  display: flex;
  align-items: flex-end;
  font-family: 'mobo-b';
  font-size: calc(40 / 1440 * 100vw);
  line-height: 1.4;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item
    .content
    h3 {
    font-size: calc(20 / 393 * 100vw);
    line-height: 3;
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item
  .content
  h3
  span {
  position: relative;
  height: 100%;
  padding-right: calc(20 / 1440 * 100vw);
  padding-left: calc(80 / 1440 * 100vw);
  font-size: calc(92 / 1440 * 100vw);
  line-height: 1;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item
    .content
    h3
    span {
    padding-right: calc(14 / 393 * 100vw);
    padding-left: calc(68 / 393 * 100vw);
    font-size: calc(92 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item
  .content
  h3
  span::before {
  position: absolute;
  bottom: calc(20 / 1440 * 100vw);
  left: 0;
  display: inline-block;
  margin-right: calc(10 / 1440 * 100vw);
  font-size: calc(16 / 1440 * 100vw);
  content: 'POINT';
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item
    .content
    h3
    span::before {
    bottom: calc(20 / 393 * 100vw);
    margin-right: calc(10 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.home
  .site-main
  > .point
  .common-inner
  .point-bottom
  .point-item
  .content
  p:first-of-type {
  margin-top: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .point
    .common-inner
    .point-bottom
    .point-item
    .content
    p:first-of-type {
    margin-top: calc(20 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview {
  padding: calc(60 / 1440 * 100vw) 0 calc(135 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview {
    padding: calc(10 / 393 * 100vw) 0 calc(48 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .section-title {
  text-align: center;
}
.home .site-main > .holding-overview .schedule,
.home .site-main > .holding-overview .content,
.home .site-main > .holding-overview .entry-condition,
.home .site-main > .holding-overview .belongings {
  position: relative;
  width: calc(787 / 1440 * 100vw);
  padding: calc(50 / 1440 * 100vw) calc(95 / 1440 * 100vw);
  margin: calc(60 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule,
  .home .site-main > .holding-overview .content,
  .home .site-main > .holding-overview .entry-condition,
  .home .site-main > .holding-overview .belongings {
    width: 100%;
    padding: calc(56 / 393 * 100vw) calc(42 / 393 * 100vw);
    margin: calc(50 / 393 * 100vw) auto 0;
  }
}
.home .site-main > .holding-overview .schedule::before,
.home .site-main > .holding-overview .schedule::after,
.home .site-main > .holding-overview .content::before,
.home .site-main > .holding-overview .content::after,
.home .site-main > .holding-overview .entry-condition::before,
.home .site-main > .holding-overview .entry-condition::after,
.home .site-main > .holding-overview .belongings::before,
.home .site-main > .holding-overview .belongings::after {
  position: absolute;
  width: calc(30 / 1440 * 100vw);
  height: calc(36 / 1440 * 100vw);
  content: '';
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule::before,
  .home .site-main > .holding-overview .schedule::after,
  .home .site-main > .holding-overview .content::before,
  .home .site-main > .holding-overview .content::after,
  .home .site-main > .holding-overview .entry-condition::before,
  .home .site-main > .holding-overview .entry-condition::after,
  .home .site-main > .holding-overview .belongings::before,
  .home .site-main > .holding-overview .belongings::after {
    width: calc(25 / 393 * 100vw);
    height: calc(28 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .schedule::before,
.home .site-main > .holding-overview .content::before,
.home .site-main > .holding-overview .entry-condition::before,
.home .site-main > .holding-overview .belongings::before {
  top: 0;
  left: 0;
  border-top: calc(10 / 1440 * 100vw) solid #e61218;
  border-left: calc(10 / 1440 * 100vw) solid #e61218;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule::before,
  .home .site-main > .holding-overview .content::before,
  .home .site-main > .holding-overview .entry-condition::before,
  .home .site-main > .holding-overview .belongings::before {
    border-top: calc(10 / 393 * 100vw) solid #e61218;
    border-left: calc(10 / 393 * 100vw) solid #e61218;
  }
}
.home .site-main > .holding-overview .schedule::after,
.home .site-main > .holding-overview .content::after,
.home .site-main > .holding-overview .entry-condition::after,
.home .site-main > .holding-overview .belongings::after {
  right: 0;
  bottom: 0;
  border-right: calc(10 / 1440 * 100vw) solid #1fa0cb;
  border-bottom: calc(10 / 1440 * 100vw) solid #1fa0cb;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule::after,
  .home .site-main > .holding-overview .content::after,
  .home .site-main > .holding-overview .entry-condition::after,
  .home .site-main > .holding-overview .belongings::after {
    border-right: calc(10 / 393 * 100vw) solid #1fa0cb;
    border-bottom: calc(10 / 393 * 100vw) solid #1fa0cb;
  }
}
.home .site-main > .holding-overview .schedule .sub-title,
.home .site-main > .holding-overview .content .sub-title,
.home .site-main > .holding-overview .entry-condition .sub-title,
.home .site-main > .holding-overview .belongings .sub-title {
  font-family: 'mobo-b';
  font-size: calc(28 / 1440 * 100vw);
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .sub-title,
  .home .site-main > .holding-overview .content .sub-title,
  .home .site-main > .holding-overview .entry-condition .sub-title,
  .home .site-main > .holding-overview .belongings .sub-title {
    font-size: calc(24 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .schedule .schedule-content {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: calc(586 / 1440 * 100vw);
  margin: calc(40 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .schedule-content {
    flex-direction: column;
    gap: calc(60 / 393 * 100vw);
    width: 100%;
    margin: calc(24 / 393 * 100vw) auto 0;
  }
}
.home .site-main > .holding-overview .schedule .schedule-content::before {
  position: absolute;
  bottom: calc(5 / 1440 * 100vw);
  left: 50%;
  width: 2px;
  height: 95%;
  content: '';
  background-color: #e61218;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .schedule-content::before {
    top: 47%;
    right: 0;
    left: 0;
    width: 100%;
    height: 2px;
    margin: 0 auto;
  }
}
.home .site-main > .holding-overview .schedule .schedule-content .title {
  font-size: calc(20 / 1440 * 100vw);
  color: #e61218;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .schedule-content .title {
    padding-bottom: calc(4 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  h4 {
  font-size: calc(20 / 1440 * 100vw);
  margin-top: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    h4 {
    font-size: calc(20 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  .times-row {
  display: flex;
  gap: calc(8 / 1440 * 100vw);
  align-items: center;
  margin-top: calc(6 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    .times-row {
    gap: calc(12 / 393 * 100vw);
    margin-top: calc(6 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  .times-row
  .times {
  flex-shrink: 0;
  padding: 0 calc(4 / 1440 * 100vw) 0 calc(5 / 1440 * 100vw);
  font-size: calc(10 / 1440 * 100vw);
  color: #fff;
  text-align: center;
  background-color: #e61218;
  width: calc(50 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    .times-row
    .times {
    padding: 0 calc(4 / 393 * 100vw) 0 calc(5 / 393 * 100vw);
    font-size: calc(10 / 393 * 100vw);
    width: calc(170 / 1440 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  .times-row
  .date {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    .times-row
    .date {
    font-size: calc(16 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  .times-row
  .days-color {
  color: #1fa0cb;
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  p {
  margin-top: calc(6 / 1440 * 100vw);
  color: #e61218;
  font-size: calc(12 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    p {
    margin-top: calc(6 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .schedule
  .schedule-content
  .schedule-content-inner
  .attention {
  margin-top: calc(6 / 1440 * 100vw);
  color: #e61218;
  width: calc(270 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .schedule
    .schedule-content
    .schedule-content-inner
    .attention {
    margin-top: calc(6 / 393 * 100vw);
    width: calc(300 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .content {
  padding: calc(50 / 1440 * 100vw) calc(63.5 / 1440 * 100vw);
}
.home .site-main > .holding-overview .course-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(40 / 1440 * 100vw);
  width: calc(1140 / 1440 * 100vw);
  margin: calc(60 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .course-grid {
    grid-template-columns: 1fr;
    width: 100%;
    gap: calc(40 / 393 * 100vw);
    margin: calc(50 / 393 * 100vw) auto 0;
  }
}
.home .site-main > .holding-overview .course-grid .content {
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
}
.home .site-main > .holding-overview .course-grid .content .course-desc {
  flex: 1;
  margin-top: calc(20 / 1440 * 100vw);
}
.home .site-main > .holding-overview .course-grid .content .course-desc p {
  margin: calc(8 / 1440 * 100vw) 0;
  font-size: calc(14 / 1440 * 100vw);
  line-height: 1.7;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .course-grid .content .course-desc {
    margin-top: calc(16 / 393 * 100vw);
  }
  .home .site-main > .holding-overview .course-grid .content .course-desc p {
    font-size: calc(14 / 393 * 100vw);
    margin: calc(8 / 393 * 100vw) 0;
  }
}
.home .site-main > .holding-overview .course-grid .content .course-meta {
  margin-top: calc(20 / 1440 * 100vw);
  padding-top: calc(16 / 1440 * 100vw);
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.home .site-main > .holding-overview .course-grid .content .meta-badges {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8 / 1440 * 100vw);
}
.home .site-main > .holding-overview .course-grid .content .meta-badge {
  display: inline-flex;
  align-items: stretch;
  font-size: calc(12 / 1440 * 100vw);
  border: 1px solid #e61218;
  border-radius: 3px;
  overflow: hidden;
  line-height: 1.4;
}
.home .site-main > .holding-overview .course-grid .content .meta-badge .meta-label {
  background: #e61218;
  color: #fff;
  padding: calc(3 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  white-space: nowrap;
}
.home .site-main > .holding-overview .course-grid .content .meta-badge .meta-value {
  padding: calc(3 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  color: #333;
}
.home .site-main > .holding-overview .course-grid .content .course-condition {
  margin: calc(10 / 1440 * 100vw) 0 0;
  font-size: calc(12 / 1440 * 100vw);
  color: #555;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .course-grid .content .course-meta {
    margin-top: calc(20 / 393 * 100vw);
    padding-top: calc(14 / 393 * 100vw);
  }
  .home .site-main > .holding-overview .course-grid .content .meta-badges {
    gap: calc(8 / 393 * 100vw);
  }
  .home .site-main > .holding-overview .course-grid .content .meta-badge {
    font-size: calc(11 / 393 * 100vw);
  }
  .home .site-main > .holding-overview .course-grid .content .meta-badge .meta-label,
  .home .site-main > .holding-overview .course-grid .content .meta-badge .meta-value {
    padding: calc(3 / 393 * 100vw) calc(7 / 393 * 100vw);
  }
  .home .site-main > .holding-overview .course-grid .content .course-condition {
    font-size: calc(12 / 393 * 100vw);
    margin-top: calc(10 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .content .columns {
  display: flex;
  width: calc(660 / 1440 * 100vw);
  justify-content: space-between;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .columns {
    width: 100%;
    flex-direction: column;
  }
}
.home .site-main > .holding-overview .content .columns .column {
  width: 48%;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .columns .column {
    width: 100%;
  }
}
.home .site-main > .holding-overview .content .columns .column h4 {
  font-size: calc(20 / 1440 * 100vw);
  margin-top: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .columns .column h4 {
    font-size: calc(20 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .content .columns .column ul {
  width: 100%;
  margin: auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .columns .column ul {
    width: 100%;
    margin: auto 0;
  }
}
.home .site-main > .holding-overview .content .columns .column ul li {
  padding: calc(20 / 1440 * 100vw) 0;
  border-bottom: 1px solid #707070;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .columns .column ul li {
    padding: calc(14 / 393 * 100vw) 0;
    font-size: calc(16 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .content .annotation {
  width: -moz-fit-content;
  width: fit-content;
  margin: calc(30 / 1440 * 100vw) auto 0;
  font-size: calc(13 / 1440 * 100vw);
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .content .annotation {
    margin: calc(15 / 393 * 100vw) auto 0;
    font-size: calc(10 / 393 * 100vw);
    white-space: nowrap;
  }
}
.home .site-main > .holding-overview .entry-condition ul {
  display: flex;
  flex-direction: column;
  width: -moz-fit-content;
  width: fit-content;
  margin: calc(38 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .entry-condition ul {
    margin: 0 auto;
  }
}
.home .site-main > .holding-overview .entry-condition ul li {
  position: relative;
  padding-left: calc(34 / 1440 * 100vw);
  margin-top: calc(10 / 1440 * 100vw);
  font-size: calc(18 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .entry-condition ul li {
    padding-left: calc(34 / 393 * 100vw);
    margin-top: calc(10 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .entry-condition ul li::before,
.home .site-main > .holding-overview .entry-condition ul li::after {
  position: absolute;
  content: '';
}
.home .site-main > .holding-overview .entry-condition ul li::before {
  top: calc(8 / 1440 * 100vw);
  left: 0;
  display: inline-block;
  width: calc(20 / 1440 * 100vw);
  height: calc(20 / 1440 * 100vw);
  border: 2px solid #1fa0cb;
  border-radius: calc(5 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .entry-condition ul li::before {
    top: calc(8 / 393 * 100vw);
    left: calc(0 / 393 * 100vw);
    width: calc(18 / 393 * 100vw);
    height: calc(18 / 393 * 100vw);
    border-radius: calc(2 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .entry-condition ul li::after {
  top: calc(10 / 1440 * 100vw);
  left: calc(6 / 1440 * 100vw);
  display: inline-block;
  width: calc(20 / 1440 * 100vw);
  height: calc(6 / 1440 * 100vw);
  border-bottom: 3px solid #1fa0cb;
  border-left: 3px solid #1fa0cb;
  transform: rotate(320deg);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .entry-condition ul li::after {
    top: calc(8 / 393 * 100vw);
    left: calc(4 / 393 * 100vw);
    width: calc(20 / 393 * 100vw);
    height: calc(8 / 393 * 100vw);
    border-bottom: 2px solid #1fa0cb;
    border-left: 2px solid #1fa0cb;
  }
}
.home .site-main > .holding-overview .entry-condition ul li p {
  padding-bottom: calc(6 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
  line-height: 1.4;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .entry-condition ul li p {
    padding-bottom: calc(6 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
}
.home .site-main > .holding-overview .entry-condition ul li span {
  color: #1fa0cb;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .belongings {
    padding-right: 0;
    padding-left: 0;
  }
}
.home .site-main > .holding-overview .belongings .belongings-content {
  display: flex;
  gap: calc(42 / 1440 * 100vw);
  align-items: center;
  margin: calc(50 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .belongings .belongings-content {
    flex-direction: column;
    gap: calc(12 / 393 * 100vw);
    margin: 0 auto;
  }
}
.home .site-main > .holding-overview .belongings .belongings-content .item {
  font-size: calc(18 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .belongings .belongings-content .item {
    font-size: calc(18 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .belongings
  .belongings-content
  .recommendation {
  display: flex;
  gap: calc(15 / 1440 * 100vw);
  align-items: center;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .belongings
    .belongings-content
    .recommendation {
    gap: calc(15 / 393 * 100vw);
  }
}
.home
  .site-main
  > .holding-overview
  .belongings
  .belongings-content
  .recommendation
  .recommendation-spec {
  height: -moz-fit-content;
  height: fit-content;
  padding: calc(5 / 1440 * 100vw) 0;
  border: 1px solid #000;
  writing-mode: vertical-rl;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .holding-overview
    .belongings
    .belongings-content
    .recommendation
    .recommendation-spec {
    padding: calc(5 / 393 * 100vw) 0;
  }
}
.home
  .site-main
  > .holding-overview
  .belongings
  .belongings-content
  .recommendation
  ul
  li {
  font-size: calc(16 / 1440 * 100vw);
}
@media (max-width: 768px) {
.home
    .site-main
    > .holding-overview
    .belongings
    .belongings-content
    .recommendation
    ul
    li {
    font-size: calc(14 / 393 * 100vw);
  }
}
.home .site-main > .holding-schedule {
  padding: calc(60 / 1440 * 100vw) 0 calc(60 / 1440 * 100vw);
}
.home .site-main > .holding-schedule .section-title {
  text-align: center;
}
.home .site-main > .holding-schedule .schedule {
  position: relative;
  width: calc(787 / 1440 * 100vw);
  padding: calc(50 / 1440 * 100vw) calc(95 / 1440 * 100vw);
  margin: calc(60 / 1440 * 100vw) auto 0;
}
.home .site-main > .holding-schedule .schedule::before,
.home .site-main > .holding-schedule .schedule::after {
  position: absolute;
  width: calc(30 / 1440 * 100vw);
  height: calc(36 / 1440 * 100vw);
  content: '';
}
.home .site-main > .holding-schedule .schedule::before {
  top: 0;
  left: 0;
  border-top: calc(10 / 1440 * 100vw) solid #e61218;
  border-left: calc(10 / 1440 * 100vw) solid #e61218;
}
.home .site-main > .holding-schedule .schedule::after {
  right: 0;
  bottom: 0;
  border-right: calc(10 / 1440 * 100vw) solid #1fa0cb;
  border-bottom: calc(10 / 1440 * 100vw) solid #1fa0cb;
}
.home .site-main > .holding-schedule .schedule .sub-title {
  font-family: 'mobo-b';
  font-size: calc(28 / 1440 * 100vw);
  text-align: center;
}
.home .site-main > .holding-schedule .schedule .schedule-content {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: calc(586 / 1440 * 100vw);
  margin: calc(40 / 1440 * 100vw) auto 0;
}
.home .site-main > .holding-schedule .schedule .schedule-content::before {
  position: absolute;
  bottom: calc(5 / 1440 * 100vw);
  left: 50%;
  width: 2px;
  height: 95%;
  content: '';
  background-color: #e61218;
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner h4 {
  font-size: calc(20 / 1440 * 100vw);
  margin-top: calc(20 / 1440 * 100vw);
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row {
  display: flex;
  gap: calc(8 / 1440 * 100vw);
  align-items: center;
  margin-top: calc(6 / 1440 * 100vw);
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row .times {
  flex-shrink: 0;
  padding: 0 calc(4 / 1440 * 100vw) 0 calc(5 / 1440 * 100vw);
  font-size: calc(10 / 1440 * 100vw);
  color: #fff;
  text-align: center;
  background-color: #e61218;
  width: calc(50 / 1440 * 100vw);
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row .date {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .days-color {
  color: #1fa0cb;
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner p {
  margin-top: calc(6 / 1440 * 100vw);
  color: #e61218;
  font-size: calc(12 / 1440 * 100vw);
}
.home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .attention {
  margin-top: calc(6 / 1440 * 100vw);
  color: #e61218;
  width: calc(270 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-schedule {
    padding: calc(40 / 393 * 100vw) 0;
  }
  .home .site-main > .holding-schedule .schedule {
    width: 100%;
    padding: calc(56 / 393 * 100vw) calc(42 / 393 * 100vw);
    margin: calc(50 / 393 * 100vw) auto 0;
  }
  .home .site-main > .holding-schedule .schedule::before,
  .home .site-main > .holding-schedule .schedule::after {
    width: calc(25 / 393 * 100vw);
    height: calc(28 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule::before {
    border-top: calc(10 / 393 * 100vw) solid #e61218;
    border-left: calc(10 / 393 * 100vw) solid #e61218;
  }
  .home .site-main > .holding-schedule .schedule::after {
    border-right: calc(10 / 393 * 100vw) solid #1fa0cb;
    border-bottom: calc(10 / 393 * 100vw) solid #1fa0cb;
  }
  .home .site-main > .holding-schedule .schedule .sub-title {
    font-size: calc(24 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content {
    flex-direction: column;
    gap: calc(60 / 393 * 100vw);
    width: 100%;
    margin: calc(24 / 393 * 100vw) auto 0;
  }
  .home .site-main > .holding-schedule .schedule .schedule-content::before {
    top: 47%;
    right: 0;
    left: 0;
    width: 100%;
    height: 2px;
    margin: 0 auto;
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner h4 {
    font-size: calc(20 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row {
    gap: calc(12 / 393 * 100vw);
    margin-top: calc(6 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row .times {
    padding: 0 calc(4 / 393 * 100vw) 0 calc(5 / 393 * 100vw);
    font-size: calc(10 / 393 * 100vw);
    width: calc(170 / 1440 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .times-row .date {
    font-size: calc(16 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner p {
    margin-top: calc(6 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
  }
  .home .site-main > .holding-schedule .schedule .schedule-content .schedule-content-inner .attention {
    margin-top: calc(6 / 393 * 100vw);
    width: calc(300 / 393 * 100vw);
  }
}
.home .site-main > .holding-belongings {
  padding: calc(60 / 1440 * 100vw) 0 calc(135 / 1440 * 100vw);
}
.home .site-main > .holding-belongings .belongings {
  position: relative;
  width: calc(787 / 1440 * 100vw);
  padding: calc(50 / 1440 * 100vw) calc(95 / 1440 * 100vw);
  margin: 0 auto;
}
.home .site-main > .holding-belongings .belongings::before,
.home .site-main > .holding-belongings .belongings::after {
  position: absolute;
  width: calc(30 / 1440 * 100vw);
  height: calc(36 / 1440 * 100vw);
  content: '';
}
.home .site-main > .holding-belongings .belongings::before {
  top: 0;
  left: 0;
  border-top: calc(10 / 1440 * 100vw) solid #e61218;
  border-left: calc(10 / 1440 * 100vw) solid #e61218;
}
.home .site-main > .holding-belongings .belongings::after {
  right: 0;
  bottom: 0;
  border-right: calc(10 / 1440 * 100vw) solid #1fa0cb;
  border-bottom: calc(10 / 1440 * 100vw) solid #1fa0cb;
}
.home .site-main > .holding-belongings .belongings .sub-title {
  font-family: 'mobo-b';
  font-size: calc(28 / 1440 * 100vw);
  text-align: center;
}
.home .site-main > .holding-belongings .belongings .belongings-content {
  display: flex;
  gap: calc(42 / 1440 * 100vw);
  align-items: center;
  margin: calc(50 / 1440 * 100vw) auto 0;
}
.home .site-main > .holding-belongings .belongings .belongings-content .item {
  font-size: calc(18 / 1440 * 100vw);
}
.home .site-main > .holding-belongings .belongings .belongings-content .recommendation {
  display: flex;
  gap: calc(15 / 1440 * 100vw);
  align-items: center;
}
.home .site-main > .holding-belongings .belongings .belongings-content .recommendation .recommendation-spec {
  height: -moz-fit-content;
  height: fit-content;
  padding: calc(5 / 1440 * 100vw) 0;
  border: 1px solid #000;
  writing-mode: vertical-rl;
}
.home .site-main > .holding-belongings .belongings .belongings-content .recommendation ul li {
  font-size: calc(16 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-belongings {
    padding: calc(40 / 393 * 100vw) 0 calc(48 / 393 * 100vw);
  }
  .home .site-main > .holding-belongings .belongings {
    width: 100%;
    padding: calc(56 / 393 * 100vw) 0;
  }
  .home .site-main > .holding-belongings .belongings::before,
  .home .site-main > .holding-belongings .belongings::after {
    width: calc(25 / 393 * 100vw);
    height: calc(28 / 393 * 100vw);
  }
  .home .site-main > .holding-belongings .belongings::before {
    border-top: calc(10 / 393 * 100vw) solid #e61218;
    border-left: calc(10 / 393 * 100vw) solid #e61218;
  }
  .home .site-main > .holding-belongings .belongings::after {
    border-right: calc(10 / 393 * 100vw) solid #1fa0cb;
    border-bottom: calc(10 / 393 * 100vw) solid #1fa0cb;
  }
  .home .site-main > .holding-belongings .belongings .sub-title {
    font-size: calc(24 / 393 * 100vw);
  }
  .home .site-main > .holding-belongings .belongings .belongings-content {
    flex-direction: column;
    gap: calc(12 / 393 * 100vw);
    margin: 0 auto;
  }
  .home .site-main > .holding-belongings .belongings .belongings-content .item {
    font-size: calc(18 / 393 * 100vw);
  }
  .home .site-main > .holding-belongings .belongings .belongings-content .recommendation {
    gap: calc(15 / 393 * 100vw);
  }
  .home .site-main > .holding-belongings .belongings .belongings-content .recommendation .recommendation-spec {
    padding: calc(5 / 393 * 100vw) 0;
  }
  .home .site-main > .holding-belongings .belongings .belongings-content .recommendation ul li {
    font-size: calc(14 / 393 * 100vw);
  }
}
.home .site-main > .pickup {
  position: relative;
  padding: calc(49 / 1440 * 100vw) 0 calc(47 / 1440 * 100vw);
  color: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .pickup {
    padding: calc(47 / 393 * 100vw) 0 calc(42 / 393 * 100vw);
  }
}
.home .site-main > .pickup::before {
  background-color: #1fa0cb;
}
.home .site-main > .pickup .date {
  font-family: 'mobo-b';
  font-size: calc(45 / 1440 * 100vw);
  letter-spacing: calc(8 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .pickup .date {
    font-size: calc(32 / 393 * 100vw);
    letter-spacing: calc(6 / 393 * 100vw);
  }
}
.home .site-main > .pickup .date span {
  padding-left: calc(28 / 1440 * 100vw);
  font-size: calc(27 / 1440 * 100vw);
  letter-spacing: calc(2 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .pickup .date span {
    padding-left: 0;
    font-size: calc(22 / 393 * 100vw);
    letter-spacing: calc(4 / 393 * 100vw);
  }
}
.home .site-main > .pickup .text {
  font-family: 'mobo-b';
  font-size: calc(27 / 1440 * 100vw);
  letter-spacing: calc(8 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .pickup .text {
    font-size: calc(20 / 393 * 100vw);
    letter-spacing: calc(3 / 393 * 100vw);
  }
}
.home .site-main > .pickup .btn-wrap {
  margin-top: calc(45 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .pickup .btn-wrap {
    margin-top: calc(30 / 393 * 100vw);
  }
}
.home .site-main > .news {
  position: relative;
  padding: calc(130 / 1440 * 100vw) 0 calc(160 / 1440 * 100vw);
  color: #fff;
}
@media (max-width: 768px) {
  .home .site-main > .news {
    padding: calc(60 / 393 * 100vw) 0;
  }
}
.home .site-main > .news::before {
  background-color: #e61218;
}
.home .site-main > .news .section-content {
  margin-top: calc(82 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .news .section-content {
    padding: 0 calc(24 / 393 * 100vw);
    margin-top: calc(50 / 393 * 100vw);
  }
}
.home .site-main > .news .section-content .card-list {
  display: flex;
  flex-direction: column;
  gap: calc(55 / 1440 * 100vw);
  align-items: center;
}
@media (max-width: 768px) {
  .home .site-main > .news .section-content .card-list {
    gap: calc(40 / 393 * 100vw);
  }
}
.home .site-main > .news .section-content .card-list .card-post {
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 768px) {
  .home .site-main > .news .section-content .card-list .card-post {
    width: 100%;
  }
}
.home .site-main > .news .section-content .card-list .card-post .card-link {
  display: inline-flex;
  gap: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .news .section-content .card-list .card-post .card-link {
    flex-direction: column;
    gap: calc(20 / 393 * 100vw);
  }
}
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-thumbnail {
  display: inline-block;
  width: calc(242 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .news
    .section-content
    .card-list
    .card-post
    .card-link
    .card-thumbnail {
    width: 100%;
  }
}
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-thumbnail
  img {
  width: calc(242 / 1440 * 100vw);
  height: calc(177 / 1440 * 100vw);
  -o-object-fit: cover;
  object-fit: cover;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .news
    .section-content
    .card-list
    .card-post
    .card-link
    .card-thumbnail
    img {
    width: 100%;
    height: calc(163 / 393 * 100vw);
  }
}
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-content {
  width: calc(284 / 1440 * 100vw);
  padding-top: calc(10 / 1440 * 100vw);
  letter-spacing: calc(1.1 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .news
    .section-content
    .card-list
    .card-post
    .card-link
    .card-content {
    width: 100%;
    padding-top: 0;
    letter-spacing: calc(0.5 / 393 * 100vw);
  }
}
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-content
  .title {
  font-size: calc(17 / 1440 * 100vw);
  line-height: 2;
  text-decoration: underline;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .news
    .section-content
    .card-list
    .card-post
    .card-link
    .card-content
    .title {
    font-size: calc(16 / 393 * 100vw);
  }
}
.home
  .site-main
  > .news
  .section-content
  .card-list
  .card-post
  .card-link
  .card-content
  .description {
  display: flex;
  justify-content: space-between;
  margin-top: calc(10 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .news
    .section-content
    .card-list
    .card-post
    .card-link
    .card-content
    .description {
    margin-top: calc(8 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
}
.home .site-main > .news .section-content .btn-wrap {
  margin-top: calc(82 / 1440 * 100vw);
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .news .section-content .btn-wrap {
    margin-top: calc(40 / 393 * 100vw);
  }
}
.home .site-main > .faq {
  padding: calc(110 / 1440 * 100vw) 0 calc(140 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .faq {
    padding: calc(44 / 393 * 100vw) 0 calc(60 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-title {
  text-align: right;
}
.home .site-main > .faq .section-content {
  margin-top: calc(110 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content {
    margin-top: calc(50 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content {
  width: calc(800 / 1440 * 100vw);
  padding: calc(36 / 1440 * 100vw) calc(40 / 1440 * 100vw)
    calc(30 / 1440 * 100vw);
  margin: 0 auto;
  background-color: #fff;
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content {
    width: 100%;
    padding: calc(26 / 393 * 100vw) calc(28 / 393 * 100vw)
      calc(26 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content:not(:last-child) {
  margin-bottom: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content:not(:last-child) {
    margin-bottom: calc(28 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content .question,
.home .site-main > .faq .section-content .faq-content .answer {
  position: relative;
  padding-left: calc(70 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .question,
  .home .site-main > .faq .section-content .faq-content .answer {
    padding-left: 0;
  }
}
.home .site-main > .faq .section-content .faq-content .question::before,
.home .site-main > .faq .section-content .faq-content .answer::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: calc(44 / 1440 * 100vw);
  font-family: 'mobo-b';
  font-size: calc(55 / 1440 * 100vw);
  text-align: center;
  content: '';
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .question::before,
  .home .site-main > .faq .section-content .faq-content .answer::before {
    position: unset;
    float: left;
    width: calc(40 / 393 * 100vw);
    margin-right: calc(10 / 393 * 100vw);
    font-size: calc(50 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content .question {
  font-size: calc(18 / 1440 * 100vw);
  color: #1fa0cb;
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .question {
    padding-left: calc(50 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content .question::before {
  line-height: calc(30 / 1440 * 100vw);
  content: 'Q';
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .question::before {
    position: absolute;
    float: unset;
    line-height: 1;
  }
}
.home .site-main > .faq .section-content .faq-content .answer {
  margin-top: calc(30 / 1440 * 100vw);
  color: #e9131a;
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .answer {
    margin-top: calc(20 / 393 * 100vw);
  }
}
.home .site-main > .faq .section-content .faq-content .answer > p {
  width: calc(620 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .answer > p {
    width: 100%;
  }
}
.home .site-main > .faq .section-content .faq-content .answer::before {
  line-height: 1.2;
  content: 'A';
}
@media (max-width: 768px) {
  .home .site-main > .faq .section-content .faq-content .answer::before {
    line-height: 1;
  }
}
.home .site-main > .contact {
  position: relative;
  padding: calc(140 / 1440 * 100vw) 0 calc(90 / 1440 * 100vw);
  color: #fff;
}
@media (max-width: 768px) {
  .home .site-main > .contact {
    padding: calc(60 / 393 * 100vw) 0;
  }
}
.home .site-main > .contact::before {
  background-color: #1fa0cb;
}
.home .site-main > .contact .section-title {
  text-align: center;
}
.home .site-main > .contact .section-content {
  width: calc(476 / 1440 * 100vw);
  margin: calc(60 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .home .site-main > .contact .section-content {
    width: calc(296 / 393 * 100vw);
    margin: calc(26 / 393 * 100vw) auto 0;
  }
}
.home .site-main > .contact .section-content .wpcf7-form {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .home .site-main > .contact .section-content .wpcf7-form {
    flex-direction: column;
  }
}
.home .site-main > .contact .section-content .wpcf7-form label {
  display: flex;
  flex-direction: column;
  padding-left: calc(16 / 1440 * 100vw);
  margin-top: calc(25 / 1440 * 100vw);
  letter-spacing: calc(4 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .contact .section-content .wpcf7-form label {
    padding-left: 0;
    margin-top: calc(26 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap {
  margin-left: calc(-16 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap {
    margin-left: 0;
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap[data-name='your-message'] {
  position: relative;
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap[data-name='your-message']::before,
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap[data-name='your-message']::after {
  position: absolute;
  display: inline-block;
  font-size: calc(16 / 1440 * 100vw);
  color: #a2aeb2;
  letter-spacing: calc(1 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap[data-name='your-message']::before,
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap[data-name='your-message']::after {
    font-size: calc(15 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap[data-name='your-message']::before {
  top: calc(18 / 1440 * 100vw);
  left: calc(16 / 1440 * 100vw);
  content: 'お問い合わせ内要が入ります';
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap[data-name='your-message']::before {
    top: calc(16 / 393 * 100vw);
    left: calc(22 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap[data-name='your-message']::after {
  top: calc(18 / 1440 * 100vw);
  left: calc(238 / 1440 * 100vw);
  content: '*入力必須';
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap[data-name='your-message']::after {
    top: calc(50 / 393 * 100vw);
    left: calc(22 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap.js-hidden::before,
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap.js-hidden::after {
  display: none;
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  > *.width-half {
  width: calc(230 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap
    > *.width-half {
    width: 100%;
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  > *:not(span) {
  width: calc(476 / 1440 * 100vw);
  padding: calc(12 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  margin-top: calc(8 / 1440 * 100vw);
  color: #000;
  background-color: #fff;
  border: unset;
  border-radius: calc(8 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap
    > *:not(span) {
    width: calc(296 / 393 * 100vw);
    padding: calc(12 / 393 * 100vw) calc(20 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    border-radius: calc(8 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  > *:not(span)::-moz-placeholder {
  color: #a2aeb2;
  letter-spacing: calc(1 / 1440 * 100vw);
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  > *:not(span)::placeholder {
  color: #a2aeb2;
  letter-spacing: calc(1 / 1440 * 100vw);
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  > *:not(span).wpcf7-not-valid {
  background-color: #f7b4b6;
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  label
  .wpcf7-form-control-wrap
  .wpcf7-not-valid-tip {
  font-size: calc(12 / 1440 * 100vw);
  line-height: 2.6;
  color: #e61218;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    label
    .wpcf7-form-control-wrap
    .wpcf7-not-valid-tip {
    font-size: calc(12 / 393 * 100vw);
  }
}
.home .site-main > .contact .section-content .wpcf7-form .submit-wrap {
  width: 100%;
  margin-top: calc(60 / 1440 * 100vw);
  text-align: center;
}
@media (max-width: 768px) {
  .home .site-main > .contact .section-content .wpcf7-form .submit-wrap {
    margin-top: calc(40 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  .submit-wrap
  .wpcf7-submit {
  display: inline-block;
  width: calc(146 / 1440 * 100vw);
  padding: calc(12 / 1440 * 100vw) 0;
  font-size: calc(14 / 1440 * 100vw);
  font-weight: 900;
  color: #1fa0cb;
  text-align: center;
  background-color: #fff;
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    .submit-wrap
    .wpcf7-submit {
    width: calc(146 / 393 * 100vw);
    padding: calc(10 / 393 * 100vw) 0 calc(11 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  .submit-wrap
  .wpcf7-submit:hover {
  opacity: 0.8;
}
.home .site-main > .contact .section-content .wpcf7-form .wpcf7-spinner {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (max-width: 768px) {
  .home .site-main > .contact .section-content .wpcf7-form .wpcf7-spinner {
    bottom: 0;
  }
}
.home
  .site-main
  > .contact
  .section-content
  .wpcf7-form
  .wpcf7-response-output {
  width: 100%;
  font-size: calc(12 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home
    .site-main
    > .contact
    .section-content
    .wpcf7-form
    .wpcf7-response-output {
    font-size: calc(12 / 393 * 100vw);
  }
}
.archive {
  position: relative;
}
.archive .site-main .page-content {
  padding: calc(85 / 1440 * 100vw) 0 calc(100 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .archive .site-main .page-content {
    padding: calc(40 / 393 * 100vw) 0 calc(70 / 393 * 100vw);
  }
}
.archive .site-main .page-content .cards {
  display: flex;
  flex-wrap: wrap;
  gap: calc(68 / 1440 * 100vw);
  align-items: start;
  justify-content: space-between;
  width: calc(862 / 1440 * 100vw);
  margin: 0 auto;
  color: #e61218;
}
@media (max-width: 768px) {
  .archive .site-main .page-content .cards {
    flex-direction: column;
    gap: calc(40 / 393 * 100vw);
    width: calc(330 / 393 * 100vw);
  }
}
.archive .site-main .page-content .cards::before,
.archive .site-main .page-content .cards::after {
  display: block;
  width: calc(242 / 1440 * 100vw);
  content: '';
}
@media (max-width: 768px) {
  .archive .site-main .page-content .cards::before,
  .archive .site-main .page-content .cards::after {
    display: none;
  }
}
.archive .site-main .page-content .cards::before {
  order: 1;
}
.archive .site-main .page-content .cards .card-post {
  width: calc(242 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .archive .site-main .page-content .cards .card-post {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .archive .site-main .page-content .cards .card-post .card-link {
    display: flex;
    gap: 0 calc(16 / 393 * 100vw);
  }
}
@media (max-width: 768px) {
  .archive
    .site-main
    .page-content
    .cards
    .card-post
    .card-link
    .card-thumbnail {
    flex-shrink: 0;
  }
}
.archive
  .site-main
  .page-content
  .cards
  .card-post
  .card-link
  .card-thumbnail
  img {
  width: 100%;
  height: calc(149 / 1440 * 100vw);
  -o-object-fit: cover;
  object-fit: cover;
}
@media (max-width: 768px) {
  .archive
    .site-main
    .page-content
    .cards
    .card-post
    .card-link
    .card-thumbnail
    img {
    width: calc(123 / 393 * 100vw);
    height: calc(84 / 393 * 100vw);
  }
}
.archive .site-main .page-content .cards .card-post .card-link .card-content {
  padding-top: calc(10 / 1440 * 100vw);
  letter-spacing: calc(1.1 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .archive .site-main .page-content .cards .card-post .card-link .card-content {
    width: calc(190 / 393 * 100vw);
    padding-top: 0;
    letter-spacing: calc(0.5 / 393 * 100vw);
  }
}
.archive
  .site-main
  .page-content
  .cards
  .card-post
  .card-link
  .card-content
  .title {
  font-size: calc(16 / 1440 * 100vw);
  line-height: 2;
  text-decoration: underline;
}
@media (max-width: 768px) {
  .archive
    .site-main
    .page-content
    .cards
    .card-post
    .card-link
    .card-content
    .title {
    font-size: calc(14 / 393 * 100vw);
  }
}
.archive
  .site-main
  .page-content
  .cards
  .card-post
  .card-link
  .card-content
  .description {
  display: flex;
  justify-content: space-between;
  margin-top: calc(10 / 1440 * 100vw);
  font-size: calc(14 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .archive
    .site-main
    .page-content
    .cards
    .card-post
    .card-link
    .card-content
    .description {
    margin-top: calc(8 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
  }
}
.single-post .site-main {
  padding-bottom: calc(100 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main {
    padding-right: calc(30 / 393 * 100vw);
    padding-bottom: calc(46 / 393 * 100vw);
    padding-left: calc(30 / 393 * 100vw);
  }
}
.single-post .site-main .page-header {
  padding: 0 calc(45 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .page-header {
    padding: 0 calc(30 / 393 * 100vw);
  }
}
.single-post .site-main .post {
  width: calc(787 / 1440 * 100vw);
  padding: calc(50 / 1440 * 100vw) 0;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .single-post .site-main .post {
    width: 100%;
    padding: calc(40 / 393 * 100vw) 0;
  }
}
.single-post .site-main .post .entry-header .date-content {
  font-family: 'mobo-b';
  font-size: calc(20 / 1440 * 100vw);
  color: #1fa0cb;
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .date-content {
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-header .entry-title {
  margin-top: calc(10 / 1440 * 100vw);
  font-family: 'mobo-b';
  font-size: calc(28 / 1440 * 100vw);
  letter-spacing: normal;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .entry-title {
    margin-top: 0;
    font-size: calc(24 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-header .thumbnail {
  position: relative;
  padding: calc(38 / 1440 * 100vw) 0;
  margin-top: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .thumbnail {
    padding: calc(30 / 393 * 100vw) calc(28 / 393 * 100vw);
    margin-top: calc(30 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-header .thumbnail::before,
.single-post .site-main .post .entry-header .thumbnail::after {
  position: absolute;
  width: calc(30 / 1440 * 100vw);
  height: calc(36 / 1440 * 100vw);
  content: '';
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .thumbnail::before,
  .single-post .site-main .post .entry-header .thumbnail::after {
    width: calc(25 / 393 * 100vw);
    height: calc(28 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-header .thumbnail::before {
  top: 0;
  left: calc(-52 / 1440 * 100vw);
  border-top: calc(10 / 1440 * 100vw) solid #e61218;
  border-left: calc(10 / 1440 * 100vw) solid #e61218;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .thumbnail::before {
    left: 0;
    border-top: calc(10 / 393 * 100vw) solid #e61218;
    border-left: calc(10 / 393 * 100vw) solid #e61218;
  }
}
.single-post .site-main .post .entry-header .thumbnail::after {
  right: calc(-52 / 1440 * 100vw);
  bottom: 0;
  border-right: calc(10 / 1440 * 100vw) solid #1fa0cb;
  border-bottom: calc(10 / 1440 * 100vw) solid #1fa0cb;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .thumbnail::after {
    right: 0;
    border-right: calc(10 / 393 * 100vw) solid #1fa0cb;
    border-bottom: calc(10 / 393 * 100vw) solid #1fa0cb;
  }
}
.single-post .site-main .post .entry-header .thumbnail img {
  width: 100%;
  height: calc(436 / 1440 * 100vw);
  -o-object-fit: cover;
  object-fit: cover;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-header .thumbnail img {
    height: calc(192 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content {
  width: calc(635 / 1440 * 100vw);
  margin: calc(65 / 1440 * 100vw) auto 0;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content {
    width: 100%;
    margin: calc(36 / 393 * 100vw) auto 0;
  }
}
.single-post .site-main .post .entry-content > *:first-child {
  margin-top: 0;
}
.single-post .site-main .post .entry-content > * {
  margin-top: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content > * {
    margin-top: calc(20 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h1,
.single-post .site-main .post .entry-content h2,
.single-post .site-main .post .entry-content h3,
.single-post .site-main .post .entry-content h4,
.single-post .site-main .post .entry-content h5,
.single-post .site-main .post .entry-content h6 {
  margin: calc(36 / 1440 * 100vw) 0 calc(20 / 1440 * 100vw);
  font-family: 'mobo-b';
  font-weight: bold;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h1,
  .single-post .site-main .post .entry-content h2,
  .single-post .site-main .post .entry-content h3,
  .single-post .site-main .post .entry-content h4,
  .single-post .site-main .post .entry-content h5,
  .single-post .site-main .post .entry-content h6 {
    margin: calc(30 / 393 * 100vw) 0 calc(20 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h2 {
  font-size: calc(24 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h2 {
    font-size: calc(18 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h3 {
  font-size: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h3 {
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h4 {
  font-size: calc(18 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h4 {
    padding-bottom: calc(10 / 393 * 100vw);
    padding-left: calc(20 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h4::before {
  position: absolute;
  top: calc(15 / 1440 * 100vw);
  left: 0;
  display: inline-block;
  width: calc(10 / 1440 * 100vw);
  height: 1px;
  content: '';
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h4::before {
    top: calc(16 / 393 * 100vw);
    width: calc(10 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content h5 {
  font-size: calc(18 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content h5 {
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content p {
  font-size: calc(16 / 1440 * 100vw);
  line-height: 2.2;
  letter-spacing: calc(1.1 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content p {
    font-size: calc(14 / 393 * 100vw);
    line-height: 2.2;
    letter-spacing: calc(1.1 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content a {
  display: inline;
  word-break: break-all;
}
.single-post
  .site-main
  .post
  .entry-content
  .wp-block-image
  .wp-element-caption {
  font-size: calc(14 / 1440 * 100vw);
  font-weight: bold;
}
@media (max-width: 768px) {
  .single-post
    .site-main
    .post
    .entry-content
    .wp-block-image
    .wp-element-caption {
    font-size: calc(14 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content ul li {
  position: relative;
  padding-left: calc(20 / 1440 * 100vw);
  font-size: calc(16 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content ul li {
    padding-left: calc(20 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content ul li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  flex-shrink: 0;
  content: '・';
}
.single-post .site-main .post .entry-content > ol li {
  position: relative;
  padding-left: calc(20 / 1440 * 100vw);
  font-size: calc(16 / 1440 * 100vw);
  list-style-type: none;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content > ol li {
    padding-left: calc(20 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content > ol li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  flex-shrink: 0;
}
.single-post .site-main .post .entry-content > ol > li {
  counter-increment: cnt1;
}
.single-post .site-main .post .entry-content > ol > li::before {
  content: counter(cnt1) '.';
}
.single-post .site-main .post .entry-content > ol > li > ol > li {
  counter-increment: cnt2;
}
.single-post .site-main .post .entry-content > ol > li > ol > li::before {
  content: counter(cnt2) '.';
}
.single-post .site-main .post .entry-content > ol > li > ol > li > ol > li {
  counter-increment: cnt3;
}
.single-post
  .site-main
  .post
  .entry-content
  > ol
  > li
  > ol
  > li
  > ol
  > li::before {
  content: counter(cnt3) '.';
}
.single-post .site-main .post .entry-content .wp-block-group {
  padding: calc(45 / 1440 * 100vw) calc(76 / 1440 * 100vw);
  line-height: 2.4;
  color: #fff;
  background-color: rgba(162, 174, 178, 0.74);
  border-radius: calc(10 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content .wp-block-group {
    padding: calc(32 / 393 * 100vw) calc(30 / 393 * 100vw);
  }
}
.single-post .site-main .post .entry-content blockquote {
  padding-left: calc(24 / 1440 * 100vw);
  color: #c7c7c7;
  border-left: calc(4 / 1440 * 100vw) solid #c7c7c7;
}
@media (max-width: 768px) {
  .single-post .site-main .post .entry-content blockquote {
    padding-left: calc(24 / 393 * 100vw);
    border-left: calc(4 / 393 * 100vw) solid #c7c7c7;
  }
}
.single-post .site-main .post .entry-content blockquote > *:first-child {
  margin-top: 0;
}
.single-post .site-main .post .entry-content code {
  padding: 0.1em 0.4em;
  background-color: rgba(0, 0, 0, 0.08);
  border-radius: 4px;
}
.error404 .site-main .page-header span {
  padding-left: calc(10 / 1440 * 100vw);
  font-size: calc(20 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .error404 .site-main .page-header span {
    padding-left: calc(10 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw);
  }
}
.error404 .site-main .page-content {
  padding: calc(60 / 1440 * 100vw) 0 calc(80 / 1440 * 100vw);
  text-align: center;
}
@media (max-width: 768px) {
  .error404 .site-main .page-content {
    padding: calc(40 / 393 * 100vw) 0;
    text-align: left;
  }
}
.error404 .site-main .page-content p {
  margin-top: calc(10 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .error404 .site-main .page-content p {
    margin-top: calc(10 / 393 * 100vw);
  }
}
.error404 .site-main .page-content .btn-wrap {
  margin-top: calc(40 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .error404 .site-main .page-content .btn-wrap {
    margin-top: calc(20 / 393 * 100vw);
    text-align: center;
  }
}

/* コース情報エリア */
.home .site-main > .holding-overview .schedule .course-info {
  margin-top: calc(30 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info {
    margin-top: calc(20 / 393 * 100vw);
  }
}
 
/* コース情報の小見出し */
.home .site-main > .holding-overview .schedule .course-info h4 {
  font-size: calc(18 / 1440 * 100vw);
  font-weight: 900;
  margin-top: calc(28 / 1440 * 100vw);
  padding-bottom: calc(8 / 1440 * 100vw);
  border-bottom: 2px solid #e61218;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info h4 {
    font-size: calc(16 / 393 * 100vw);
    margin-top: calc(24 / 393 * 100vw);
    padding-bottom: calc(6 / 393 * 100vw);
  }
}
 
.home .site-main > .holding-overview .schedule .course-info h4:first-child {
  margin-top: 0;
}
 
/* コース情報の本文 */
.home .site-main > .holding-overview .schedule .course-info p {
  margin-top: calc(8 / 1440 * 100vw);
  line-height: 2;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info p {
    margin-top: calc(6 / 393 * 100vw);
  }
}
 
/* コース情報のリスト */
.home .site-main > .holding-overview .schedule .course-info ul {
  margin-top: calc(8 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info ul {
    margin-top: calc(6 / 393 * 100vw);
  }
}
 
.home .site-main > .holding-overview .schedule .course-info ul li {
  position: relative;
  padding-left: calc(16 / 1440 * 100vw);
  line-height: 2;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info ul li {
    padding-left: calc(16 / 393 * 100vw);
  }
}
 
.home .site-main > .holding-overview .schedule .course-info ul li::before {
  content: '・';
  position: absolute;
  left: 0;
}
 
/* コース情報のラベル+値の行 */
.home .site-main > .holding-overview .schedule .course-info .info-row {
  display: flex;
  gap: calc(12 / 1440 * 100vw);
  margin-top: calc(6 / 1440 * 100vw);
  line-height: 2;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .schedule .course-info .info-row {
    flex-direction: column;
    gap: 0;
    margin-top: calc(6 / 393 * 100vw);
  }
}
 
.home .site-main > .holding-overview .schedule .course-info .info-row .info-label {
  flex-shrink: 0;
  font-weight: 900;
  color: #e61218;
  white-space: nowrap;
}
 
/* スクールコース紹介（注釈テキスト） */
.home .site-main > .holding-overview .school-note {
  width: calc(787 / 1440 * 100vw);
  margin: calc(30 / 1440 * 100vw) auto 0;
  text-align: center;
  font-size: calc(14 / 1440 * 100vw);
  color: #666;
}
@media (max-width: 768px) {
  .home .site-main > .holding-overview .school-note {
    width: 100%;
    margin: calc(20 / 393 * 100vw) auto 0;
    font-size: calc(12 / 393 * 100vw);
  }
}
 
/* バッジ背景（画像からHTMLテキスト化に伴い追加） */
.home .site-main > .key-visual .common-inner .key-visual-bottom .badge {
  background-color: #e61218;
  border-radius: 50%;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .badge {
    border-radius: calc(10 / 393 * 100vw);
  }
}

/* 日程曜日カラー */
.days-sat { color: #1fa0cb; }
.days-sun { color: #e61218; }

/* KVバッジテキスト（画像からCMS化） */
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(12 / 1440 * 100vw);
  width: calc(170 / 1440 * 100vw);
  height: calc(170 / 1440 * 100vw);
  padding: calc(14 / 1440 * 100vw);
  background-color: #e61218;
  border-radius: 50%;
  color: #fff;
  font-family: 'mobo-b', sans-serif;
  font-weight: 900;
  text-align: center;
  line-height: 1.2;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(2 / 1440 * 100vw);
  padding: calc(6 / 1440 * 100vw) calc(14 / 1440 * 100vw);
  border: 1.5px solid #fff;
  border-radius: calc(10 / 1440 * 100vw);
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l1 {
  display: block;
  font-size: calc(20 / 1440 * 100vw);
  letter-spacing: 0.02em;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l2 {
  display: block;
  font-size: calc(13 / 1440 * 100vw);
  letter-spacing: 0.05em;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(4 / 1440 * 100vw);
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l3 {
  display: block;
  font-size: calc(18 / 1440 * 100vw);
  letter-spacing: 0.02em;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l4 {
  display: block;
  font-size: calc(20 / 1440 * 100vw);
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(20 / 393 * 100vw);
    width: calc(373 / 393 * 100vw);
    height: auto;
    border-radius: calc(10 / 393 * 100vw);
    padding: calc(20 / 393 * 100vw) calc(22 / 393 * 100vw);
    margin: 0 auto;
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-box {
    flex-shrink: 0;
    gap: calc(2 / 393 * 100vw);
    padding: calc(8 / 393 * 100vw) calc(16 / 393 * 100vw);
    border: 1.5px solid #fff;
    border-radius: calc(8 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l1 {
    font-size: calc(28 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l2 {
    font-size: calc(18 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-main {
    gap: calc(6 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l3 {
    font-size: calc(28 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-badge-text .kv-badge-l4 {
    font-size: calc(32 / 393 * 100vw);
  }
}

/* KV日程テキスト（PC: 4行縦, SP: 2列横） */
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text {
  width: calc(360 / 1440 * 100vw);
  color: #000;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text p {
  margin: 0;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-period {
  font-family: 'mobo-b';
  font-weight: 900;
  line-height: 1;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-year,
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-md {
  display: block;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-year {
  font-size: calc(52 / 1440 * 100vw);
  margin-bottom: calc(-4 / 1440 * 100vw);
  letter-spacing: 0.02em;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-md {
  font-size: calc(82 / 1440 * 100vw);
  letter-spacing: -0.01em;
}
/* 開始日グループと終了日グループの間に余白 */
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-date-group + .kv-date-group {
  margin-top: calc(20 / 1440 * 100vw);
}
/* 曜日: 黒丸・白文字 */
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-dow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  background: #000;
  color: #fff;
  font-size: 0.3em;
  vertical-align: 0.3em;
  margin: 0 0.04em;
  line-height: 1;
  font-weight: 700;
}
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-sessions,
.home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-venue {
  display: block;
  font-weight: 900;
  font-size: calc(22 / 1440 * 100vw);
  line-height: 1.5;
  margin-top: calc(14 / 1440 * 100vw);
}
@media (max-width: 768px) {
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text {
    width: calc(360 / 393 * 100vw);
    margin: 0 auto;
    text-align: center;
  }
  /* SP: 2グループを横並び */
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-period {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: calc(4 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-date-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-date-group + .kv-date-group {
    margin-top: 0;
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-year {
    font-size: calc(28 / 393 * 100vw);
    margin-bottom: 0;
  }
  /* SP月日: 2列に収まるサイズ */
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-md {
    font-size: calc(46 / 393 * 100vw);
  }
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-sessions,
  .home .site-main > .key-visual .common-inner .key-visual-bottom .kv-date-text .kv-venue {
    font-size: calc(20 / 393 * 100vw);
    margin-top: calc(12 / 393 * 100vw);
  }
}
