@charset "UTF-8";
/**
 * メディアクエリ
 * @param {string} $mode - max または min
 * @param {number} $width - 設定値
 */
/**
 * メディアクエリ PC
 * @param {number} [$width:$breakpoin] - 設定値
 */
/**
 * メディアクエリ SP
 * @param {number} [$width:$breakpoin] - 設定値
 */
/**
 * メディアクエリによるIE11ハック
 */
/**
 * VW計算
 * @param {string} $property  - プロパティ
 * @param {number} $value - 基準となる値
 * @param {number} $basewidth - 基準となるウィンドウ幅
 * @param {number} [$maxwidth:0] - 拡大を停止するウィンドウ幅
 * @param {number} [$minwidth:0] - 縮小を停止するウィンドウ幅
 */
@media screen and (min-width: 768px) {
  body .l__cornea-container .cornea__program-section {
    width: 860px;
  }
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program-section {
    width: 91.4666666667vw;
    margin-inline: auto;
    -webkit-margin-before: 12.8vw;
    margin-block-start: 12.8vw;
    -webkit-margin-after: 20.8vw;
    margin-block-end: 20.8vw;
  }
}
body .l__cornea-container .cornea__program {
  background: #fff;
  position: relative;
  display: flex;
  flex-direction: column;
  isolation: isolate;
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program {
    left: -0.6vw;
  }
}
body .l__cornea-container .cornea__program::before {
  content: "";
  position: absolute;
  height: 100%;
  pointer-events: none;
  background: #FFEA00;
  border: 2px solid #222;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  body .l__cornea-container .cornea__program::before {
    top: 8px;
    left: 7px;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program::before {
    width: 90.6666666667vw;
    top: 0.8vw;
    left: 1.6vw;
  }
}
body .l__cornea-container .cornea__program-title {
  margin: 0;
  font-weight: bold;
  text-align: center;
  border: 2px solid #3E3E3E;
  border-bottom: 2px solid #3E3E3E;
  background-color: #EEEEEE;
}
@media screen and (min-width: 768px) {
  body .l__cornea-container .cornea__program-title {
    font-size: 27px;
    -webkit-padding-before: 13px;
    padding-block-start: 13px;
    -webkit-padding-after: 13px;
    padding-block-end: 13px;
    letter-spacing: 0.04em;
    line-height: 40px;
  }
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program-title {
    font-size: 6.4vw;
    -webkit-padding-before: 4.8vw;
    padding-block-start: 4.8vw;
    -webkit-padding-after: 4.8vw;
    padding-block-end: 4.8vw;
    letter-spacing: 0.04em;
  }
}
body .l__cornea-container .cornea__program-body {
  border: 2px solid #3E3E3E;
  border-top: 0;
  background: #FFFFFF;
}
@media screen and (min-width: 768px) {
  body .l__cornea-container .cornea__program-body {
    min-height: 1170px;
    -webkit-padding-before: 56px;
    padding-block-start: 56px;
    -webkit-padding-start: 309px;
    padding-inline-start: 309px;
    -webkit-padding-end: 309px;
    padding-inline-end: 309px;
  }
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program-body {
    min-height: 229.3333333333vw;
    -webkit-padding-before: 12.2666666667vw;
    padding-block-start: 12.2666666667vw;
    -webkit-padding-start: 4.8vw;
    padding-inline-start: 4.8vw;
    -webkit-padding-end: 4.8vw;
    padding-inline-end: 4.8vw;
  }
}
body .l__cornea-container .cornea__program-note {
  margin: 0;
  color: #222;
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 768px) {
  body .l__cornea-container .cornea__program-note {
    font-size: 16px;
    line-height: 1.6875;
  }
}
@media screen and (max-width: 767px) {
  body .l__cornea-container .cornea__program-note {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
}

body.cornea__page--program {
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container {
    background-color: #6CD3FD;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container {
    background-image: linear-gradient(90deg, #33B7F3 50%, #8BDBFF 100%);
  }
}
body.cornea__page--program .l__cornea-container .l__cornea-content-block {
  background-color: transparent;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .l__cornea-content-block {
    background: url(../../img/pc.registration.bg.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 1920px auto;
    background-attachment: fixed;
    height: auto;
    max-height: none;
    min-height: 74.9479166667vw;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .l__cornea-content-block {
    background: url(../../img/sp.registration.bg.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;
    background-attachment: scroll;
    height: auto;
    max-height: none;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__title-block {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__info-container {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__info-container {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__nav-header {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__contents-container {
    display: flex;
    align-items: flex-start;
    width: 1169px;
    margin-inline: auto;
    gap: 60px;
    -webkit-padding-before: 60px;
    padding-block-start: 60px;
    -webkit-padding-after: 110px;
    padding-block-end: 110px;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__contents-container {
    -webkit-margin-before: 16vw;
    margin-block-start: 16vw;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__sidebar {
    position: static;
    width: 254px;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__sidebar {
    border-top: 2px solid #3E3E3E;
    background: #EEEEEE;
  }
}

body.cornea__page--program {
  min-width: 0;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__title-block {
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__program {
    left: -1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__contents-container {
    width: calc(100% - 64px);
    max-width: 1170px;
    gap: clamp(24px, 3.125vw, 60px);
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__sidebar {
    flex: 0 0 21.3675%;
    width: 250px;
    min-width: 0;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__title-container {
    width: calc(100% - 64px);
    max-width: 1169px;
    gap: 24px;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__title-image {
    min-width: 0;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__sub-title-container {
    flex: 0 0 26.2%;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__program-section {
    flex: 1 1 848px;
    max-width: 848px;
    min-width: 0;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__program-title {
    padding-block: 3.4666666667vw;
    line-height: 8.5333333333vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__program-body {
  min-height: 0;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__program-body {
    padding: 56px 62px;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__program-body {
    -webkit-padding-before: 12.8vw;
    padding-block-start: 12.8vw;
    -webkit-padding-after: 12.8vw;
    padding-block-end: 12.8vw;
    padding-inline: 5.8666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__contact-email {
  overflow-wrap: anywhere;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-category {
    max-width: 720px;
    margin-inline: auto;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-category:first-child + .cornea__accommodation-category {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-category:first-child + .cornea__accommodation-category {
    -webkit-margin-before: 11.7333333333vw;
    margin-block-start: 11.7333333333vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-category + .cornea__accommodation-category:last-child {
  -webkit-margin-before: 28px;
  margin-block-start: 28px;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-category + .cornea__accommodation-category:last-child {
    -webkit-margin-before: 7.4666666667vw;
    margin-block-start: 7.4666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__program-category-title {
  border-bottom: 0;
  background-image: repeating-linear-gradient(90deg, #ccc 0 4px, transparent 4px 8px);
  background-repeat: no-repeat;
  background-size: 100% 2px;
  background-position: left bottom;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 40px;
  -webkit-padding-after: 8px;
  padding-block-end: 8px;
  font-size: 23px;
  font-weight: 700;
  line-height: 33px;
  letter-spacing: 0.05em;
  -webkit-margin-after: 21px;
  margin-block-end: 21px;
}
body.cornea__page--program .l__cornea-container .cornea__program-category-title img {
  width: 20px;
  height: 19px;
  flex: none;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__program-category-title {
    font-size: 5.6vw;
    line-height: 8vw;
    gap: 2.1333333333vw;
    -webkit-padding-after: 2.1333333333vw;
    padding-block-end: 2.1333333333vw;
    -webkit-margin-after: 10.6666666667vw;
    margin-block-end: 10.6666666667vw;
  }
  body.cornea__page--program .l__cornea-container .cornea__program-category-title img {
    width: 5.3333333333vw;
    height: 5.0666666667vw;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__program-category-title {
    -webkit-margin-after: 4.2666666667vw;
    margin-block-end: 4.2666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-deadline {
  margin: 0 0 28px;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-deadline {
    font-size: 4vw;
    line-height: 6.8vw;
    -webkit-margin-after: 5.3333333333vw;
    margin-block-end: 5.3333333333vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-decoration: none;
  background-color: #222222;
  border: 2px solid #222222;
  border-radius: 999px;
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-weight: bold;
  color: #ffffff;
  overflow: hidden;
  letter-spacing: 0.02em;
  line-height: 1;
  display: flex;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button {
    width: 250px;
    height: 50px;
    padding-left: 20px;
    font-size: 16px;
    background-image: linear-gradient(90deg, #FFEA00 0%, #FFEA00 50%, #222222 50%, #222222 100%);
    background-size: 220% 100%;
    background-position: 100% 0;
    transition: color 0.35s ease, background-position 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button {
    width: 32.8vw;
    height: 12.2666666667vw;
    padding-left: 4vw;
    font-size: 3.4666666667vw;
    border-width: 1px;
  }
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button:hover {
    color: #222222;
    background-position: 0 0;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button {
    width: 64vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-button-text {
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button-text {
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button-text {
    line-height: 1.2;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-button-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border-radius: 50%;
  color: #222222;
  background: #ffffff;
  transition: background 0.2s ease, color 0.2s ease;
  border: 2px solid #222222;
  flex: 0 0 auto;
  -webkit-margin-end: -2px;
  margin-inline-end: -2px;
}
@media screen and (min-width: 768px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button-arrow {
    width: 50px;
    height: 50px;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-button-arrow {
    width: 12.2666666667vw;
    height: 12.2666666667vw;
    -webkit-margin-end: -0.2666666667vw;
    margin-inline-end: -0.2666666667vw;
    border-width: 1px;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-button-arrow svg {
  display: block;
  width: 20px;
  height: 12px;
  color: currentColor;
  fill: currentColor;
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-contact-title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 19px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0.05em;
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-contact-title::before {
  content: "";
  flex: none;
  width: 6px;
  height: 24px;
  background: #222;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-contact-title {
    gap: 2.1333333333vw;
    font-size: 5.0666666667vw;
    line-height: 7.4666666667vw;
  }
  body.cornea__page--program .l__cornea-container .cornea__accommodation-contact-title::before {
    width: 1.0666666667vw;
    height: 4.8vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-box {
  border: 0;
  background-image: repeating-linear-gradient(90deg, #ccc 0 4px, transparent 4px 8px), repeating-linear-gradient(90deg, #ccc 0 4px, transparent 4px 8px), repeating-linear-gradient(0deg, #ccc 0 4px, transparent 4px 8px), repeating-linear-gradient(0deg, #ccc 0 4px, transparent 4px 8px);
  background-repeat: no-repeat;
  background-size: 100% 2px, 100% 2px, 2px 100%, 2px 100%;
  background-position: left top, left bottom, left top, right top;
  -webkit-margin-before: 11px;
  margin-block-start: 11px;
  padding: 15px 15px 18px;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-box {
    -webkit-margin-before: 2.9333333333vw;
    margin-block-start: 2.9333333333vw;
    -webkit-padding-before: 2.6666666667vw;
    padding-block-start: 2.6666666667vw;
    padding-inline: 4vw;
    -webkit-padding-after: 3.4666666667vw;
    padding-block-end: 3.4666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-name {
  margin: 0 0 12px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-name {
    font-size: 4.2666666667vw;
    line-height: 6.4vw;
    -webkit-margin-after: 3.2vw;
    margin-block-end: 3.2vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-category:last-child .cornea__accommodation-name {
  -webkit-margin-after: 4px;
  margin-block-end: 4px;
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-hours {
  display: flex;
  align-items: flex-start;
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 500;
  line-height: 25.5px;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-hours {
    font-size: 4.2666666667vw;
    line-height: 6.8vw;
    -webkit-margin-after: 1.0666666667vw;
    margin-block-end: 1.0666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-hours-label {
  flex: none;
  display: inline-block;
  -webkit-margin-end: 8px;
  margin-inline-end: 8px;
  border: 2px solid #ccc;
  padding-inline: 8px;
  font-size: 14px;
  line-height: 25.5px;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-hours-label {
    font-size: 3.7333333333vw;
    line-height: 6.8vw;
    padding-inline: 2.1333333333vw;
    -webkit-margin-end: 2.1333333333vw;
    margin-inline-end: 2.1333333333vw;
  }
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-hours-value .sp {
    display: block;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-address {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 500;
  line-height: 25.5px;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-address {
    font-size: 4.2666666667vw;
    line-height: 6.8vw;
    -webkit-margin-after: 1.0666666667vw;
    margin-block-end: 1.0666666667vw;
  }
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-contact {
  margin: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 25.5px;
  overflow-wrap: anywhere;
}
body.cornea__page--program .l__cornea-container .cornea__accommodation-contact a {
  color: #e60012;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  body.cornea__page--program .l__cornea-container .cornea__accommodation-contact {
    font-size: 4.2666666667vw;
    line-height: 6.8vw;
  }
}