@charset "UTF-8";

:root {
  --sk-mincho: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --sk-gothic: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  --sk-gray: #D9D9D9;
  --sk-tile: #F4F4F6;
  --sk-c-ippan: #72B65C;
  --sk-c-sukei: #204C97;
  --sk-c-sei: #B12634;
  --sk-c-houjin: #000000;
  --sk-step: #D77A5B;
}

body.lp--sukeikai {
  font-family: var(--sk-gothic);
  font-weight: 500;
  font-size: 12px;
  line-height: 25px;
  letter-spacing: 0.24px;
  overflow-x: hidden;
}
.lp--sukeikai ruby { ruby-align: center; }
.lp--sukeikai ruby rt { letter-spacing: 0; line-height: 1; }

.sk-sr {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

.sk-kv {
  position: relative;
  color: #fff;
  background: var(--sk-gray) url("../img/sukeikai/kv-bg-261006.jpg") center / cover no-repeat;
  overflow: hidden;
}
.sk-kv__inner { position: relative; height: 1216px; }
.sk-kv__logo { position: absolute; top: 20px; left: max(20px, calc(50% - 176px)); width: min(200px, 52vw); height: auto; }
.sk-kv__crest { position: absolute; top: 135px; left: 50%; width: min(302px, 80vw); height: auto; transform: translateX(-50%); }
.sk-kv__body { position: absolute; top: 428px; left: 50%; width: min(354px, calc(100% - 30px)); transform: translateX(-50%); }
.sk-kv__copy { display: block; width: 100%; height: auto; }

@media (min-width: 900px) {
  .sk-kv__inner { height: 1300px; }
  .sk-kv__logo { top: 30px; left: max(20px, calc(50% - 564px)); width: 355px; }
  .sk-kv__crest { top: 190px; width: 700px; max-width: none; }
  .sk-kv__body { top: 774px; width: min(820px, calc(100% - 40px)); }
}

.sk-nav { position: relative; background: #fff; }
.sk-nav::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: 0; height: 2px;
  background: linear-gradient(90deg, #CCE0A8 0%, #EDD36E 8.7%, #F8CA5C 17.4%, #FAB95A 26%, #FAAE5C 34.7%, #FAC069 43.4%, #F1DA8D 52%, #E5DB93 60.8%, #B8D294 69.4%, #85C997 78.1%, #7FCA98 86.8%, #7FCA98 100%);
}
.sk-nav__list {
  display: grid; grid-template-columns: 192fr 125fr; row-gap: 10px;
  width: min(393px, 100%); margin: 0 auto; padding: 15px 50px 22px 26px; list-style: none;
}
.sk-nav__link {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 40px 0 1px;
  font-family: var(--sk-mincho); font-weight: 600; font-size: min(15px, 3.8vw); line-height: 45px; letter-spacing: 0.1em;
  color: #000; text-decoration: none; white-space: nowrap;
}
.sk-nav__item:nth-child(even) .sk-nav__link { padding-right: 0; }
.sk-nav__arrow { width: 13px; height: 13px; flex: 0 0 13px; }
@media (hover: hover) { .sk-nav__link:hover { opacity: 0.6; } }

@media (min-width: 900px) {
  .sk-nav__list { display: flex; justify-content: center; align-items: center; width: auto; margin: 0; row-gap: 0; padding: 40px 20px 42px min(43px, 2.5vw); }
  .sk-nav__link { justify-content: flex-start; padding: 0; font-size: min(25px, 2.5vw); }
  .sk-nav__arrow { width: 15px; height: 15px; flex: 0 0 15px; }

  .sk-nav__item:nth-child(1) .sk-nav__arrow { margin-left: min(30px, 1.74vw); }
  .sk-nav__item:nth-child(2) .sk-nav__arrow { margin-left: min(66px, 3.82vw); }
  .sk-nav__item:nth-child(3) .sk-nav__arrow { margin-left: min(57px, 3.3vw); }
  .sk-nav__item:nth-child(4) .sk-nav__arrow { margin-left: min(38px, 2.2vw); }
  .sk-nav__item:nth-child(2) { margin-left: min(95px, 5.5vw); }
  .sk-nav__item:nth-child(3) { margin-left: min(110px, 6.37vw); }
  .sk-nav__item:nth-child(4) { margin-left: min(76px, 4.4vw); }
}

.sk-movie { padding: 32px 20px 39px; background: #fff; }
.sk-movie__frame { width: min(349px, 100%); margin: 0 auto; }
.sk-movie__frame img { display: block; width: 100%; height: auto; }
@media (min-width: 900px) {
  .sk-movie { padding: 100px 20px; }
  .sk-movie__frame { width: min(927px, 100%); }
}

.sk-sec--gray { background: var(--sk-gray); }

.sk-vt {
  margin: 0 auto 32px;
  text-align: center;
  font-family: var(--sk-mincho);
  font-weight: 600;
  font-size: 24px;
  line-height: 45px;
  letter-spacing: 2.4px;
  color: #000;
}
.sk-vt--light { color: #fff; }
@media (min-width: 900px) {
  .sk-vt {
    writing-mode: vertical-rl; text-orientation: upright; width: fit-content;
    font-size: 40px; letter-spacing: 5px;
  }
}

.sk-panel { position: relative; width: calc(100% - 40px); margin: 0 auto; background: #fff; }
@media (min-width: 900px) {
  .sk-panel { width: min(1447px, calc(100% - 80px)); }
}

.sk-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 8px; margin: 15px 0 0; padding: 0; }
.sk-tag {
  display: block; min-width: 64px; height: 19px; padding: 0 4px;
  font-family: var(--sk-mincho); font-weight: 400; font-size: 11px; line-height: 19px; letter-spacing: 0;
  text-align: center; color: #fff; white-space: nowrap;
}
.sk-tag--ippan { background: var(--sk-c-ippan); }
.sk-tag--sukei { background: var(--sk-c-sukei); }
.sk-tag--sei { background: var(--sk-c-sei); }
.sk-tag--houjin { background: var(--sk-c-houjin); }
@media (min-width: 900px) {
  .sk-tags { gap: 8px 10px; margin-top: 20px; }
  .sk-tag { min-width: 82px; height: 24px; padding: 0 8px; font-size: 15px; line-height: 24px; }
}

.sk-body { margin: 0; font-size: 12px; font-weight: 500; line-height: 25px; letter-spacing: 0.24px; }
.sk-note { margin: 0; font-size: 10px; font-weight: 500; line-height: 20px; letter-spacing: 0.2px; }
.sk-hr { margin: 30px 0; border: 0; border-top: 1px solid #000; height: 0; }
@media (min-width: 900px) {
  .sk-body { font-size: 15px; line-height: 30px; letter-spacing: 0.3px; }
  .sk-note { font-size: 14px; line-height: 24px; letter-spacing: 0.28px; }
}

.lp--sukeikai .sk-person__text ruby { ruby-align: start; }
.sk-person__text rt { font-family: var(--sk-mincho); font-weight: 700; font-size: 8px; }
.sk-body rt { font-family: var(--sk-gothic); font-weight: 500; font-size: 7px; }
.sk-ruby-lg rt { font-family: var(--sk-mincho); font-weight: 600; font-size: 8px; }
@media (min-width: 900px) { .sk-ruby-lg rt { font-size: 10px; } }

.sk-about { padding: 26px 0 26px; }
.sk-about .sk-panel { padding: 39px 31px 40px; }
.sk-about .sk-vt { margin-bottom: 41px; }
.sk-inner { width: 100%; max-width: 939px; margin: 0 auto; }

.sk-person__fig { margin: 0; text-align: center; }
.sk-person__photo { display: block; width: 160px; height: 194px; margin: 0 auto; object-fit: cover; }
.sk-person__cap { margin-top: 10px; text-align: center; }
.sk-person__role { display: block; font-family: var(--sk-mincho); font-weight: 700; font-size: 12px; line-height: 25px; letter-spacing: 0.24px; }
.sk-person__name { display: block; font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 25px; letter-spacing: 0.4px; }
.sk-person__cap--2 .sk-person__role { line-height: 20px; }
.sk-person__cap--2 .sk-person__name { margin-top: 5px; }
.sk-person__text { margin-top: 30px; font-family: var(--sk-gothic); font-weight: 500; font-size: 12px; line-height: 25px; letter-spacing: 0.24px; }
.sk-person__text p { margin: 0; }
.sk-hr--inset { margin: 40px 0; }

@media (min-width: 900px) {
  .sk-about { padding: 105px 0 95px; }
  .sk-about .sk-panel { padding: 96px 20px 151px; }
  .sk-about .sk-vt { margin-bottom: 89px; }
  .sk-person { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px; }
  .sk-person__fig { flex: 0 0 264px; text-align: left; }
  .sk-person__photo { width: 264px; height: 320px; margin: 0; }
  .sk-person:not(.sk-person--rev) .sk-person__fig { margin-top: 10px; }
  .sk-person__cap { margin-top: 17px; text-align: left; }
  .sk-person__role { font-size: 15px; letter-spacing: 0.3px; }
  .sk-person__name { margin-top: 13px; }
  .sk-person__cap--2 .sk-person__role { line-height: 25px; }
  .sk-person__cap--2 .sk-person__name { margin-top: 6px; }
  .sk-person__text { flex: 0 1 552px; margin-top: 0; font-family: var(--sk-mincho); font-size: 20px; line-height: 40px; letter-spacing: 0.4px; }
  .sk-person--rev { flex-direction: row-reverse; }
  .sk-person--rev .sk-person__text { flex: 0 1 589px; padding-left: 7px; }
  .sk-hr--inset { margin: 89px 0 99px 7px; }
}

.sk-plans { padding: 57px 25px 45px; background: #fff; }
.sk-plans .sk-vt { margin-bottom: 32px; }
.sk-plans__grid { display: grid; gap: 6px; width: min(1126px, 100%); margin: 0 auto; }
.sk-plan { display: flex; flex-direction: column; }
.sk-plan__head {
  margin: 0; padding: 0; height: 60px; text-align: center; color: #fff;
  font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 60px; letter-spacing: 1.2px;
}
.sk-plan__body { flex: 1 1 auto; display: flex; flex-direction: column; padding: 26px 30px 20px; }
.sk-plan__desc { margin: 0 0 8px; font-size: 12px; line-height: 25px; letter-spacing: 0.24px; }
.sk-plan__fee { margin-top: auto; }
.sk-plan__price-row { display: flex; justify-content: flex-end; align-items: center; gap: 20px; margin: 0; }
.sk-plan__label {
  width: 65px; height: 25px; background: #fff; text-align: center;
  font-family: var(--sk-mincho); font-weight: 600; font-size: 15px; line-height: 25px; letter-spacing: 0.9px;
}
.sk-plan__price { font-family: var(--sk-mincho); font-weight: 600; font-size: 25px; line-height: 36px; letter-spacing: 1.5px; }
.sk-plan__caution { margin: 4px 0 0; text-align: right; font-size: 12px; line-height: 20px; letter-spacing: 0.24px; }

.sk-plan--ippan .sk-plan__head { background: var(--sk-c-ippan); }
.sk-plan--ippan .sk-plan__body { background: #E3F0DE; }
.sk-plan--sukei .sk-plan__head { background: var(--sk-c-sukei); }
.sk-plan--sukei .sk-plan__body { background: #D2DBEA; }
.sk-plan--sei .sk-plan__head { background: var(--sk-c-sei); }
.sk-plan--sei .sk-plan__body { background: #EFD4D6; }
.sk-plan--houjin .sk-plan__head { background: var(--sk-c-houjin); }
.sk-plan--houjin .sk-plan__body { background: #E5E5E5; }

.sk-plans__note { width: min(343px, 100%); margin: 20px auto 0; }

@media (min-width: 900px) {
  .sk-plans { padding: 100px 20px 139px; }
  .sk-plans .sk-vt { margin-bottom: 72px; }
  .sk-plans__grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .sk-plan:nth-child(-n+2) { min-height: 348px; }
  .sk-plan:nth-child(n+3) { min-height: 383px; }
  .sk-plan__head { height: 80px; font-size: 25px; line-height: 80px; letter-spacing: 1.5px; }
  .sk-plan__body { padding: 30px 54px 35px; }
  .sk-plan:nth-child(n+3) .sk-plan__body { padding-bottom: 41px; }
  .sk-plan__desc { margin: 0 0 14px; font-size: 20px; line-height: 40px; letter-spacing: 0.4px; }
  .sk-plan__price-row { gap: 23px; }
  .sk-plan__price { font-size: 30px; line-height: 43px; letter-spacing: 1.8px; }
  .sk-plan__caution { margin: 6px 3px 0 0; }
  .sk-plan__fee--free { margin-bottom: 23px; }
  .sk-plans__note { width: min(1126px, 100%); margin-top: 27px; }
}

.sk-contents { padding: 42px 0 30px; }
.sk-contents .sk-vt { margin-bottom: 40px; }
.sk-block { width: calc(100% - 30px); margin: 0 auto 15px; padding: 0 0 45px; }
.sk-h3 {
  margin: 0; text-align: center; color: #000;
  font-family: var(--sk-mincho); font-weight: 500; font-size: 30px; line-height: 43.4px; letter-spacing: 0;
}

.sk-ribbons { display: block; margin-left: -15px; padding-top: 20px; }

.lp--sukeikai .sk-ribbons__img { display: block; width: auto; max-width: none; height: min(65px, 18vw, calc((100vw - 34px) / 5.48)); }
.sk-ribbons + .sk-h3 { margin-top: 25px; }

.sk-tiles { display: grid; grid-template-columns: 157fr 201fr; gap: 4px; width: 100%; margin: 30px 0 0; }
.sk-tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; height: 189px; margin: 0; background: var(--sk-tile); }
.sk-tile img { display: block; max-width: 100%; height: auto; }
.sk-tile__book { width: 78%; filter: drop-shadow(2px 1px 3px rgba(0, 0, 0, 0.3)); }
.sk-tile--kirie img { width: 90%; }

.sk-trio { width: calc(100% - 56px); margin: 29px auto 0; }
.sk-trio__item, .sk-fcard { display: grid; grid-template-columns: 50px 1fr; column-gap: 20px; align-items: center; margin-bottom: 24px; text-align: left; }
.sk-trio__item:last-child { margin-bottom: 0; }
.sk-trio__icon { display: block; width: 50px; height: 50px; margin: 0; }
.sk-trio__title { margin: 0; font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 29px; letter-spacing: 0; }
.sk-trio__text { grid-column: 1 / -1; margin: 20px 0 0; font-size: 12px; line-height: 25px; letter-spacing: 0.24px; }

.sk-wide { width: 100%; margin: 30px 0 0; }
.sk-wide img { display: block; width: 100%; height: auto; }
.sk-body--wide { width: min(300px, calc(100% - 30px)); margin: 29px auto 0; }
.sk-note--wide { width: min(300px, calc(100% - 30px)); margin: 10px auto 0; }
.sk-hr--wide { width: min(310px, calc(100% - 20px)); margin: 30px auto 0; }

.sk-facility { display: flex; flex-direction: column; width: min(297px, calc(100% - 40px)); margin: 30px auto 0; text-align: center; }
.sk-facility__fig { order: -1; margin: 0; }
.sk-facility__fig img { display: block; width: 100%; height: auto; aspect-ratio: 297 / 213; object-fit: cover; }
.sk-facility__head { display: flex; flex-direction: column; align-items: center; gap: 11px; margin-top: 34px; }
.sk-facility__title { margin: 0; font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 29px; letter-spacing: 0; }
.sk-badge {
  display: inline-block; min-width: 139px; height: 24px; padding: 0 9px; border: 1px solid #000;
  font-family: var(--sk-mincho); font-weight: 600; font-size: 15px; line-height: 22px; letter-spacing: 0; text-align: center; white-space: nowrap;
}
.sk-facility__text .sk-body { margin-top: 16px; text-align: left; }
.sk-hr--end { display: none; }

.sk-chat { width: 100%; height: 188px; margin: 30px 0 0; overflow: hidden; background: var(--sk-tile); text-align: center; }
.sk-chat img { display: block; width: 134px; max-width: none; height: auto; margin: 19px auto 0; }
.sk-line-title { position: relative; width: calc(100% - 50px); margin: 36px auto 0; text-align: center; font-family: var(--sk-mincho); font-weight: 500; font-size: 20px; line-height: 29px; letter-spacing: 0; }
.sk-line-title::before { content: ""; position: absolute; left: 0; right: 0; top: 19px; height: 1px; background: #000; }
.sk-line-title span { position: relative; padding: 0 11px; background: #fff; }

.sk-future { padding: 0 15px; text-align: center; color: #fff; }
.sk-future__badge { display: inline-block; min-width: 112px; height: 24px; margin: 0; padding: 0 12px; border: 1px solid #fff; font-family: var(--sk-mincho); font-weight: 600; font-size: 14px; line-height: 22px; letter-spacing: 0; }
.sk-future__title { margin: 14px 0 0; font-family: var(--sk-mincho); font-weight: 500; font-size: 30px; line-height: 43.4px; letter-spacing: 0; }
.sk-future__sub { margin: 4px 0 0; font-family: var(--sk-mincho); font-weight: 500; font-size: 14px; line-height: 20px; letter-spacing: 0; }
.sk-future__cards { width: 100%; margin: 31px auto 0; }
.sk-fcard { padding: 25px 30px 30px; background: #fff; color: #000; margin-bottom: 6px; }
.sk-fwide { width: 100%; margin: 0 auto; padding: 30px 0 40px; background: #fff; color: #000; text-align: left; }
.sk-fwide .sk-facility { margin-top: 0; }

@media (min-width: 900px) {
  .sk-contents { padding: 100px 0 93px; }
  .sk-contents .sk-vt { margin-bottom: 90px; }
  .sk-block { width: min(1447px, calc(100% - 80px)); margin: 0 auto 60px; padding: 0 20px; }
  .sk-block--3 { margin-bottom: 60px; }
  .sk-h3 { font-size: 50px; line-height: 72px; }
  .sk-ribbons { margin-left: -20px; padding-top: 24px; }
  .sk-ribbons + .sk-h3 { margin-top: 20px; }

  .sk-tags { margin-top: 20px; }
  .sk-tiles { grid-template-columns: 323fr 414fr; gap: 9px; width: min(746px, 100%); margin: 75px auto 0; }
  .sk-tile { height: 390px; gap: 7px; }
  .sk-tile__book { width: 253px; }
  .sk-tile--kirie img { width: 372px; }
  .sk-trio { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 70px; width: min(937px, 100%); margin-top: 64px; }
  .sk-trio__item { display: block; margin: 0; text-align: center; }
  .sk-trio__icon { margin: 0 auto; }
  .sk-trio__title { margin-top: 20px; font-size: 25px; line-height: 36px; text-align: center; }
  .sk-trio__text { margin-top: 20px; text-align: left; font-size: 15px; line-height: 30px; letter-spacing: 0.3px; }

  .sk-wide { width: min(744px, 100%); margin: 60px auto 0; }
  .sk-body--wide { width: min(747px, 100%); margin-top: 40px; }
  .sk-note--wide { width: min(747px, 100%); margin-top: 15px; }
  .sk-hr--wide { width: min(745px, 100%); margin-top: 60px; }
  .sk-note--wide + .sk-hr--wide { margin-top: 50px; }
  .sk-facility { display: grid; grid-template-columns: 356px 320px; justify-content: space-between; align-items: start; width: min(740px, 100%); margin-top: 60px; text-align: left; }
  .sk-facility__text { padding-top: 7px; }
  .sk-facility__head { flex-direction: row; flex-wrap: nowrap; justify-content: space-between; gap: 8px 12px; height: 36px; margin-top: 0; }
  .sk-facility__title { font-size: 25px; line-height: 36px; }
  .sk-facility__text .sk-body { margin-top: 20px; }
  .sk-facility__fig { order: 0; }
  .sk-facility__fig img { max-width: none; width: 320px; height: 230px; }
  .sk-facility + .sk-hr--wide { margin-top: 62px; }
  .sk-hr--end { display: block; margin-bottom: 98px; }

  .sk-chat { width: min(746px, 100%); height: 387px; margin: 60px auto 0; }
  .sk-chat img { width: 276px; margin-top: 39px; }
  .sk-body--chat { margin-top: 29px; }
  .sk-line-title { width: min(936px, 100%); margin: 66px auto 0; font-size: 40px; line-height: 58px; }
  .sk-line-title::before { top: 36px; }
  .sk-line-title span { padding: 0 22px; }
  .sk-trio--digital { margin-top: 60px; }

  .sk-future { padding: 0 20px; }
  .sk-future__badge { min-width: 169px; height: 36px; font-size: 20px; line-height: 34px; }
  .sk-future__title { margin-top: 20px; font-size: 50px; line-height: 72px; }
  .sk-future__sub { margin-top: 20px; font-size: 20px; line-height: 29px; }
  .sk-future__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; width: min(1124px, 100%); margin-top: 80px; }
  .sk-fcard { display: block; min-height: 382px; margin: 0; padding: 60px 28px 0; text-align: center; }
  .sk-fcard .sk-trio__icon { margin: 0 auto; }
  .sk-fcard .sk-trio__title { margin-top: 20px; font-size: 25px; line-height: 36px; text-align: center; }
  .sk-fcard .sk-trio__text { text-align: left; font-size: 15px; line-height: 30px; letter-spacing: 0.3px; }
  .sk-fwide { width: min(1126px, 100%); min-height: 354px; margin-top: 24px; padding: 61px 0 63px; }
  .sk-fwide .sk-facility { width: min(740px, calc(100% - 40px)); }
  .sk-fwide .sk-facility__text { padding-top: 28px; }
}

@media (min-width: 1060px) {
  .sk-block { margin-bottom: 120px; padding-top: 80px; }
  .sk-block--1 { min-height: 1045px; }
  .sk-block--2, .sk-block--3 { min-height: 1340px; }
  .sk-block--3 { margin-bottom: 124px; }
  .sk-block--4 { min-height: 1349px; }
  .sk-ribbons { position: absolute; top: -60px; width: 116px; margin: 0; padding: 0; }
  .sk-ribbons + .sk-h3 { margin-top: 0; }
  .sk-ribbons--left { left: max(-20px, calc(50% - 609px)); }
  .sk-ribbons--right { right: max(-20px, calc(50% - 608px)); }
  .sk-block--2 .sk-ribbons { top: -64px; }
  .sk-block--4 .sk-ribbons { top: -63px; }
  .lp--sukeikai .sk-ribbons__img { width: 116px; height: auto; }
}
@media (min-width: 1300px) {
  .sk-fcard { padding-inline: 46px; }
  .sk-fcard .sk-trio__title { margin-inline: -17px; white-space: nowrap; }
}

.sk-join { padding: 42px 0 60px; background: #fff; }
.sk-join .sk-vt { margin-bottom: 36px; }
.sk-steps { width: min(340px, calc(100% - 50px)); margin: 0 auto; padding: 0; list-style: none; border-bottom: 1px solid #808080; }
.sk-step { position: relative; padding: 20px 0 30px; border-top: 1px solid #808080; }
.sk-step__num {
  position: absolute; left: 0; top: 19px;
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; background: var(--sk-step);
  font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 1; color: #fff;
}
.sk-step__head { display: flex; flex-wrap: wrap; align-items: center; gap: 15px 8px; min-height: 40px; padding-left: 55px; }
.sk-step__title { margin: 0; font-family: var(--sk-mincho); font-weight: 600; font-size: 20px; line-height: 29px; letter-spacing: 0; }
.sk-step__head .sk-tags { flex: 0 0 calc(100% + 55px); justify-content: flex-end; margin: 0 0 6px -55px; }
.sk-step__text { margin: 14px 0 0; font-size: 12px; line-height: 25px; letter-spacing: 0.24px; }
.sk-step__shots { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-end; gap: 20px 29px; margin-top: 16px; }
.sk-step__shot { position: relative; margin: 0; display: flex; flex-direction: column; align-items: center; }
.sk-cap { display: block; max-width: 100%; height: auto; margin-bottom: 8px; }
.sk-qr { display: block; width: 117px; height: 117px; }
.sk-phone {
  box-sizing: content-box; overflow: hidden;
  border: 2px solid #DCDDDD; border-bottom: 0; border-radius: 20px 20px 0 0;
}
.sk-phone img { display: block; width: 100%; height: auto; }
.sk-phone--menu { width: 150px; }
.sk-phone--form { width: 135px; }
.sk-phone--card { width: 150px; }
.sk-step__shot--menu .sk-cap--over { position: absolute; top: 60px; right: -3px; margin: 0; }

.sk-terms { width: min(343px, calc(100% - 50px)); margin: 20px auto 0; }

@media (min-width: 900px) {
  .sk-join { padding: 127px 20px 94px; }
  .sk-join .sk-vt { margin-bottom: 90px; }
  .sk-steps { width: min(928px, 100%); border-bottom-color: #000; }
  .sk-step { border-top-color: #000; }
  .sk-step { padding: 65px 0 60px 96px; }
  .sk-step__num { top: 59px; width: 60px; height: 60px; font-size: 25px; }
  .sk-step__head { flex-wrap: nowrap; justify-content: space-between; gap: 0; min-height: 36px; margin-right: -5px; padding-left: 0; }
  .sk-step__title { font-size: 25px; line-height: 36px; }
  .sk-step__head .sk-tags { flex: 0 0 auto; margin: 0; }
  .sk-step__text { margin-top: 20px; font-size: 15px; line-height: 30px; letter-spacing: 0.3px; }
  .sk-step__shots { margin-top: 50px; margin-left: -96px; gap: 0; }
  .sk-step__shots--2 { margin-top: 32px; gap: 0 136px; padding-right: 40px; }
  .sk-step:nth-child(1) { padding-bottom: 63px; }
  .sk-step:nth-child(2) { padding-bottom: 57px; }
  .sk-cap { margin-bottom: 11px; }
  .sk-cap--friend { width: 130px; }
  .sk-cap--menu { width: 135px; }
  .sk-cap--form { width: 163px; }
  .sk-cap--card { width: 160px; }
  .sk-step:first-child .sk-step__shot:first-child .sk-cap { margin-bottom: 18px; }
  .sk-qr { width: 201px; height: 201px; }
  .sk-phone { border-width: 3px; border-radius: 28px 28px 0 0; }
  .sk-phone--menu { width: 227px; }
  .sk-phone--form { width: 240px; }
  .sk-phone--card { width: 238px; }
  .sk-step__shot--menu .sk-cap--over { top: 105px; left: 103px; right: auto; }
  .sk-terms { width: min(936px, 100%); margin-top: 40px; }
}

.lp--sukeikai .lp-footer {
  padding: 80px 0 57px;
  background: var(--sk-gray) url("../img/sukeikai/footer-bg-261006.jpg") center / cover no-repeat;
}
.lp--sukeikai .lp-footer__logo { width: 250px; max-width: 80%; height: auto; margin: 0 auto 15px; }
.lp--sukeikai .lp-footer__copy {
  margin: 0; font-family: "Noto Serif JP", var(--sk-mincho); font-weight: 400; font-size: 10px; line-height: 30px; letter-spacing: 0.2px; color: #fff;
}

.sk-cta {
  position: fixed; right: 12px; bottom: 12px; z-index: 60;
  display: flex; align-items: center; gap: 12px;
  padding: 20px 14px 14px 12px;
  background: #fff; border: 1px solid #D9D9D9; border-radius: 16px;
  color: #000; text-decoration: none;
}
.sk-cta__note {
  position: absolute; top: -12px; left: 50%; transform: translateX(-50%);
  display: block; padding: 5px 16px; border-radius: 15px; background: #8DC391;
  font-size: 11px; font-weight: 500; line-height: 17px; letter-spacing: 0; color: #fff; white-space: nowrap;
}
.sk-cta__mark { width: 60px; height: auto; flex: 0 0 60px; }
.sk-cta__text { font-weight: 700; font-size: 16px; line-height: 1.45; letter-spacing: 0.03em; white-space: nowrap; }
.sk-cta__arrow { width: 15px; height: 16px; flex: 0 0 15px; }
@media (hover: hover) { .sk-cta:hover { opacity: 0.85; } }

@media (min-width: 900px) {
  .sk-cta { right: 40px; bottom: 40px; width: 350px; gap: 22px; padding: 30px 20px 22px 18px; }
  .sk-cta__note { font-size: 12px; }
  .sk-cta__mark { width: 85px; flex-basis: 85px; }
  .sk-cta__text { flex: 1 1 auto; font-size: 20px; line-height: 28.96px; letter-spacing: 0.6px; }
  .sk-cta__arrow { width: 15px; height: 16px; margin-right: 2px; }
}

.sk-sec--gray.sk-about,
.sk-sec--gray.sk-contents {
  background-color: var(--sk-gray);
  background-image: url("../img/sukeikai/kv-bg-261006.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

@media (min-width: 900px) {
  .sk-kv__inner { height: clamp(620px, 100vh, 1300px); }
  .sk-kv__logo  { top: min(30px, 2.31vh);  width: min(355px, 27.31vh); }
  .sk-kv__crest { top: min(190px, 14.62vh); width: min(700px, 53.85vh); }
  .sk-kv__body  { top: min(774px, 59.54vh); width: min(820px, 63.08vh, calc(100% - 40px)); }
}

.sk-tile--kirie img.sk-tile__kirie { width: min(359px, 90%); height: auto; }
@media (min-width: 900px) { .sk-tile--kirie img.sk-tile__kirie { width: 359px; } }

.lp--sukeikai .sk-person__text p,
.lp--sukeikai .sk-body,
.lp--sukeikai .sk-plan__desc,
.lp--sukeikai .sk-step__text,
.lp--sukeikai .sk-trio__text { text-align: justify; text-justify: inter-character; }
.lp--sukeikai .sk-facility__text .sk-body { text-align: justify; }

.sk-plans__soon { position: relative; display: grid; gap: 6px; }
.sk-plans__soon::before { content: ""; position: absolute; inset: -10px -10px; z-index: 1; background: rgba(255,255,255,0.82); }
.sk-plans__soon > .sk-plans__note { width: 100%; margin-top: 14px; }
.sk-plans__soon-msg {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2;
  width: calc(100% - 20px); box-sizing: border-box; margin: 0; padding: 18px 12px; background: rgba(255,255,255,0.94); text-align: center; color: #000;
  font-family: var(--sk-mincho); font-weight: 700; font-size: 14px; line-height: 28px; letter-spacing: 1px;
}
.sk-br-pc { display: none; }
@media (min-width: 900px) {
  .sk-plans__soon { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; gap: 20px; }
  .sk-plans__soon > .sk-plans__note { grid-column: 1 / -1; margin-top: 7px; }
  .sk-plans__soon > .sk-plan:nth-child(n) { min-height: 383px; }
  .sk-plans__soon::before { inset: -24px -66px; }
  .sk-plans__soon-msg { width: auto; white-space: nowrap; padding: 24px 40px; font-size: 20px; line-height: 45px; letter-spacing: 2px; }
  .sk-br-pc { display: inline; }
}

.lp--sukeikai .sk-tags .sk-tag--sei,
.lp--sukeikai .sk-tags .sk-tag--houjin { opacity: 0.35; }

.sk-soon-badge { margin: 25px 0 0; text-align: center; }
.sk-soon-badge span {
  display: inline-block; min-width: 112px; height: 24px; padding: 0 12px; box-sizing: border-box;
  border: 1px solid #000; font-family: var(--sk-mincho); font-weight: 600; font-size: 14px; line-height: 22px; letter-spacing: 0;
}
.sk-soon-badge + .sk-h3 { margin-top: 6px; }
@media (min-width: 900px) {
  .sk-soon-badge { margin-top: 20px; }
  .sk-soon-badge span { min-width: 169px; height: 36px; font-size: 20px; line-height: 34px; }
}
@media (min-width: 1060px) { .sk-soon-badge { margin-top: 0; } }

.sk-future__note { margin: 20px 0 0; font-size: 10px; line-height: 20px; letter-spacing: 0.2px; text-align: center; }
@media (min-width: 900px) { .sk-future__note { margin-top: 60px; font-size: 14px; line-height: 24px; letter-spacing: 0.28px; } }

.lp-footer__home { display: inline-block; max-width: 80%; vertical-align: top; }
.lp--sukeikai .lp-footer__home .lp-footer__logo { max-width: 100%; }
@media (hover: hover) { .lp-footer__home:hover { opacity: 0.75; } }

@media (max-width: 899px) {
  .sk-cta { left: 5px; right: 5px; bottom: 5px; justify-content: center; }
  .lp--sukeikai .lp-footer { padding-bottom: 110px; }
}
@media (min-width: 900px) { .sk-plans__soon > .sk-plan .sk-plan__body { padding-bottom: 41px; } }

.sk-qr-link { display: contents; }

.sk-wide--gentei { display: none; }
@media (min-width: 900px) {
  .sk-wide--gentei { display: block; margin-top: 75px; }
  .sk-wide--gentei + .sk-tiles { display: none; }
}

.sk-plans__soon::before { background: rgba(255,255,255,0.89); }
.sk-plans__soon-msg { background: none; }

@media (max-width: 899px) {
  .sk-plans__soon-msg { position: relative; left: auto; top: auto; transform: none; order: -1; width: 100%; padding: 6px 0 10px; }
}

body.lp--sukeikai .sk-tags .sk-tag--sei { opacity: 1; background: var(--sk-c-sei); color: #fff; }
body.lp--sukeikai .sk-tags .sk-tag--houjin { opacity: 1; background: var(--sk-c-houjin); color: #fff; }
body.lp--sukeikai .sk-trio__note { text-align: center; padding: 0 16px; }

@media (max-width: 899px) {
  .sk-tile .sk-tile__book { width: auto; max-width: 78%; max-height: 82%; }
  .sk-tile--kirie img.sk-tile__kirie { width: auto; max-width: 90%; max-height: 86%; }
}
@media (min-width: 600px) and (max-width: 899px) {
  .sk-tiles { max-width: 640px; margin-left: auto; margin-right: auto; }
  .sk-tile { height: 300px; }
}

@media (max-width: 899px) {
  .sk-cta { bottom: max(16px, calc(env(safe-area-inset-bottom, 0px) + 8px)); left: 10px; right: 10px; }
  .lp--sukeikai .lp-footer { padding-bottom: calc(110px + max(16px, calc(env(safe-area-inset-bottom, 0px) + 8px))); }
}

.sk-movie__frame { aspect-ratio: 927 / 523; }
.sk-movie__frame iframe { display: block; width: 100%; height: 100%; border: 0; }

.sk-plans__soon::before { display: none; }
.sk-plans__grid > .sk-plans__soon-msg {
  position: static; left: auto; top: auto; transform: none; z-index: auto; order: 0;
  grid-column: 1 / -1; width: auto; margin: 6px 0 4px; padding: 0; background: none; white-space: normal;
  font-size: 12px; line-height: 24px; letter-spacing: 0.5px; text-align: center;
}
@media (min-width: 900px) {
  .sk-plans__grid > .sk-plans__soon-msg { margin: 22px 0 18px; font-size: 16px; line-height: 36px; letter-spacing: 1px; white-space: nowrap; }
}
@media (max-width: 899px) { .sk-plans__soon .sk-plan__head { font-size: clamp(14px, 4.3vw, 20px); white-space: nowrap; letter-spacing: 0; } }

@media (min-width: 900px) { .sk-block--1 .sk-trio__item:nth-child(3) .sk-trio__title { margin-top: 52px; } }

@media (max-width: 899px) {
  .sk-sec--gray.sk-about,
  .sk-sec--gray.sk-contents { position: relative; isolation: isolate; background-image: none; background-attachment: scroll; clip-path: inset(0); }
  .sk-sec--gray.sk-about::before,
  .sk-sec--gray.sk-contents::before {
    content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
    background: var(--sk-gray) url("../img/sukeikai/kv-bg-261006.jpg") center / cover no-repeat;
  }
}

@media (min-width: 900px) and (max-width: 1059px) {
  .sk-about .sk-panel { padding-left: 50px; padding-right: 50px; }
  .sk-block { padding: 50px 50px 60px; margin-bottom: 100px; }
  .sk-block--3 { margin-bottom: 100px; }
  .sk-ribbons { margin-left: -50px; margin-top: -50px; }

}

@media (min-width: 900px) and (max-width: 1059px) {
  .sk-block--1 .sk-trio,
  .sk-block--4 .sk-trio--digital { width: min(747px, 100%); column-gap: 40px; }
  .sk-fcard { padding-bottom: 40px; }
  .sk-block--1 { padding-bottom: 90px; }
}

@media (min-width: 1060px) {
  .sk-block--3 { padding-bottom: 60px; }
}

@media (max-width: 899px) {
  .sk-block--1,
  .sk-block--4 { padding-left: 30px; padding-right: 30px; box-sizing: border-box; }
  .sk-plans { margin-left: 15px; margin-right: 15px; }
}

@media (max-width: 899px) {
  .sk-join { margin-left: 15px; margin-right: 15px; }
}
@media (min-width: 900px) {
  .sk-plans,
  .sk-join { margin-left: 40px; margin-right: 40px; }
  .sk-future { padding-left: 40px; padding-right: 40px; }
}

@media (min-width: 900px) and (max-width: 1059px) {
  .sk-join { padding-left: 26px; padding-right: 26px; }
}

@media (min-width: 1060px) {
  .sk-block--1 .sk-trio,
  .sk-block--4 .sk-trio--digital { width: min(937px, calc(100% - 180px)); }
  .sk-block--1 { padding-bottom: 80px; }
}
@media (min-width: 1060px) and (max-width: 1299px) {
  .sk-block--1 .sk-trio,
  .sk-block--4 .sk-trio--digital { column-gap: 40px; }
}

@media (min-width: 900px) {
  .sk-about .sk-panel { padding-left: 88px; padding-right: 88px; }
}

@media (min-width: 900px) {
  .sk-fcard { min-height: 412px; padding-bottom: 60px; }
}

@media (min-width: 1060px) {
  .sk-block--2 { padding-bottom: 30px; }
}

@media (min-width: 900px) and (max-width: 1059px) {
  .sk-line-title { width: min(747px, 100%); }
}
@media (min-width: 1060px) {
  .sk-line-title { width: min(936px, calc(100% - 180px)); }
}

.sk-nb { white-space: nowrap; }
@media (min-width: 900px) and (max-width: 1279px) { .sk-fcard .sk-trio__title .sk-br { display: none; } }
@media (max-width: 359px) { .sk-fcard .sk-trio__title .sk-br { display: none; } }

.sk-plan__join { position: relative; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; max-width: 220px; height: 36px; margin: 16px auto 0; padding: 0 26px; border: 1px solid #000; background: #FFF; color: #000; font-family: var(--sk-mincho); font-weight: 600; font-size: 12px; letter-spacing: 0.1em; text-decoration: none; }
.sk-plan__join img { position: absolute; right: 12px; top: 50%; width: 9px; height: 9px; transform: translateY(-50%) rotate(90deg); }
@media (min-width: 900px) { .sk-plan__join { height: 40px; font-size: 13px; } }
@media (hover: hover) { .sk-plan__join:hover { opacity: 0.7; } }

@media (min-width: 900px) { .sk-plan__join { width: 90%; max-width: none; height: 53px; font-size: 15px; } .sk-plan__join img { right: 18px; width: 11px; height: 11px; } }

.sk-line-title .sk-nb { position: static; padding: 0; background: none; }
@media (max-width: 899px) {
  .sk-line-title { font-size: clamp(15px, calc((100vw - 166px) / 12.6), 20px); }
  .sk-plans__grid > .sk-plans__soon-msg { text-align: justify; text-align-last: left; }
}
