.secCharm {
  display: none
}
.secDesc {
  padding: 60px 0;
  font-family: "Zen Old Mincho",serif
}
.secDesc__layout {
  display: grid;
  gap: 35px
}
.secDesc__catchFrame {
  display: flex;
  justify-content: center
}
.secDesc__catchPic {
  display: block;
  width: 144px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 144/194
}
.secDesc__catchPic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}
.secDesc__textFrame {
  display: flex;
  flex-direction: column;
  gap: 15px
}
.secHistory {
  overflow: hidden;
  font-family: "Zen Old Mincho",serif;
  background-color: #fff
}
.secHistory__layout {
  display: grid;
  gap: 30px
}
.secHistory__picFrame {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw)
}
.secHistory__pic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 390/262
}
.secHistory__pic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.secHistory__title {
  margin-bottom: 10px
}
.secHistory__titleEnPic {
  display: block;
  margin-bottom: 5px
}
.secHistory__titleEnPic > img {
  width: auto;
  height: 16px
}
.secHistory__titleJp {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0
}
.secHistory__btnFrame {
  margin-top: 25px
}
.secLesson {
  padding: 60px 0;
  font-family: "Zen Old Mincho",serif;
  background-color: #fff
}
.secLesson__layout {
  display: grid;
  gap: 40px
}
.secLesson__contFrame {
  flex: 1
}
.secLesson__title {
  margin-bottom: 10px
}
.secLesson__titleEnPic {
  display: block;
  margin-bottom: 10px
}
.secLesson__titleEnPic > img {
  width: auto;
  height: 12px
}
.secLesson__titleJp {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0
}
.secLesson__btnFrame {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-top: 25px
}
.secLesson__btnFrame .c-secondaryBtn {
  width: -moz-fit-content;
  width: fit-content;
  padding: 10px 23px 10px 43px;
  font-size: 13px
}
.secLesson__btnFrame .c-secondaryBtn__arw {
  right: auto;
  left: 20px
}
.secLesson__btnFrame .c-secondaryBtn:first-child {
  --bgColor: var(--color-high-school)
}
.secLesson__btnFrame .c-secondaryBtn:last-child {
  --bgColor: var(--color-junior-high-school)
}
.lessonFeatured {
  display: grid;
  gap: 30px
}
.lessonFeatured__item {
  display: grid;
  grid-template-rows: auto minmax(0,1fr)
}
.lessonFeatured__pic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 340/223
}
.lessonFeatured__pic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.lessonFeatured__contFrame {
  padding: 25px 30px 40px;
  background-color: #fcf1f1
}
.lessonFeatured__titleFrame {
  margin-bottom: 10px
}
.secMessage {
  padding: 60px 0;
  font-family: "Zen Old Mincho",serif;
  background-color: #fff
}
.secMessage__title {
  margin-bottom: 18px
}
.secMessage__titleEnPic {
  display: block;
  margin-bottom: 5px
}
.secMessage__titleEnPic > img {
  width: auto;
  height: 16px
}
.secMessage__titleJp {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0
}
.secMessage__layout {
  display: flex;
  flex-direction: column;
  gap: 20px 50px
}
.secMessage__pic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 340/214
}
.secMessage__pic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.secMessage__textFrame {
  display: flex;
  flex-direction: column;
  gap: 15px
}
.secMessage__text--sign {
  text-align: right
}
.secMv {
  padding-top: 70px;
  font-family: "Zen Old Mincho",serif
}
.secMv__bcFrame {
  display: none
}
.secMv__gallery {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 30px
}
.secMv__galleryPic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 190/250
}
.secMv__galleryPic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.secMv__title {
  margin-bottom: 30px
}
.secMv__titleEnPic {
  display: block;
  margin-bottom: 10px
}
.secMv__titleEnPic > img {
  width: auto;
  height: 24px
}
.secMv__titleJp {
  font-size: 32px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 3px
}
.secMv__titleJp > span {
  font-size: 46px
}
.secMv__layout {
  position: relative;
  z-index: 1
}
.secMv__catch {
  margin-bottom: 15px;
  font-size: 28px;
  line-height: 1.43;
  letter-spacing: 0
}
.secMv__catch > span {
  position: relative;
  display: inline-block;
  width: 85px;
  height: 100%;
  color: transparent;
  text-align: center
}
.secMv__catch > span::before {
  position: absolute;
  inset: 0 5%;
  content: "";
  background: url(/assets/images/pages/guide/index/txt_100.svg) center/contain no-repeat
}
.secMv__textFrame {
  margin-bottom: 35px
}
.secMv__decoFrame {
  position: absolute;
  right: 0;
  bottom: -15px;
  width: 103px
}
.secMv__decoPic {
  display: block;
  width: 100%;
  height: auto
}
.secMv__bottomPic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 390/260;
  margin-top: -30px
}
.secMv__bottomPic > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.secNav {
  padding: 60px 0;
  font-family: "Zen Old Mincho",serif;
  background-color: #fcf1f1
}
.navLink {
  display: grid;
  gap: 35px 30px
}
.navLink__anc {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden
}
.navLink__pic {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 340/170;
  margin-bottom: 22px
}
.navLink__pic > img {
  width: 100%;
  height: 100%;
  transition: scale .8s cubic-bezier(.23,1,.32,1);
  -o-object-fit: cover;
  object-fit: cover
}
.navLink__titleFrame {
  margin-bottom: 10px
}
.navLink__textFrame {
  margin-bottom: auto
}
.navLink__button {
  margin-top: 23px
}
.secUniform {
  background-color: var(--color-baika-pink)
}
@media (min-width:768px) {
  .secDesc {
    padding: 110px 0
  }
  .secDesc .l-container {
    width: 1128px
  }
  .secDesc__layout {
    grid-template-columns: minmax(0,1fr) 740px;
    gap: 120px
  }
  .secDesc__catchFrame {
    display: block;
    padding-top: 30px
  }
  .secDesc__catchPic {
    width: 273px;
    aspect-ratio: 273/424
  }
  .secDesc__textFrame {
    gap: 20px
  }
  .secDesc__textFrame .c-txt-plain {
    letter-spacing: 1px
  }
  .secHistory {
    padding-top: 120px
  }
  .secHistory__layout {
    grid-template-columns: 50% minmax(0,1fr);
    gap: 50px
  }
  .secHistory__picFrame {
    margin-right: 0;
    margin-left: -20px
  }
  .secHistory__contFrame {
    display: flex;
    flex-direction: column;
    justify-content: center
  }
  .secHistory__title {
    margin-bottom: 15px
  }
  .secHistory__titleEnPic > img {
    height: 20px
  }
  .secHistory__titleJp {
    font-size: 26px
  }
  .secHistory__btnFrame {
    width: 280px;
    margin-top: 35px
  }
  .secLesson {
    padding: 120px 0
  }
  .secLesson__layout {
    display: flex;
    gap: 80px;
    align-items: center
  }
  .secLesson__title {
    margin-bottom: 15px
  }
  .secLesson__titleEnPic > img {
    height: 15px
  }
  .secLesson__titleJp {
    font-size: 26px
  }
  .secLesson__btnFrame {
    gap: 10px;
    margin-top: 35px
  }
  .secLesson__btnFrame .c-secondaryBtn {
    font-size: 17px;
    letter-spacing: 1px
  }
  .secLesson__featuredFrame {
    flex-shrink: 0;
    width: 805px;
    margin-right: -30px
  }
  .lessonFeatured {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 1px
  }
  .lessonFeatured__contFrame {
    padding: 35px 30px 50px
  }
  .lessonFeatured__titleFrame {
    margin-bottom: 15px
  }
  .lessonFeatured__titleFrame .c-hdg-plain {
    font-size: 20px
  }
  .lessonFeatured__textFrame .c-txt-plain {
    font-size: 15px
  }
  .secMessage {
    padding: 110px 0 120px
  }
  .secMessage__titleEnPic > img {
    height: 20px
  }
  .secMessage__titleJp {
    font-size: 26px
  }
  .secMessage__layout {
    flex-direction: row-reverse
  }
  .secMessage__picFrame {
    flex-shrink: 0;
    width: 280px
  }
  .secMessage__pic {
    aspect-ratio: 280/334
  }
  .secMessage__contFrame {
    flex: 1
  }
  .secMessage__textFrame {
    gap: 20px
  }
  .secMessage__text {
    letter-spacing: 1px
  }
  .secMv {
    padding-top: 100px
  }
  .secMv__bcFrame {
    display: block;
    padding: 0 30px;
    margin-bottom: 30px
  }
  .secMv__gallery {
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 15px;
    margin-bottom: 80px
  }
  .secMv__galleryItem:nth-child(even) {
    translate: 0 40px
  }
  .secMv__title {
    margin-bottom: 35px
  }
  .secMv__titleEnPic > img {
    height: 32px
  }
  .secMv__titleJp {
    font-size: 64px;
    letter-spacing: 0
  }
  .secMv__titleJp > span {
    font-size: 84px
  }
  .secMv__layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 285px;
    gap: 50px
  }
  .secMv__catch {
    margin-bottom: 20px
  }
  .secMv__catch > span {
    width: 95px
  }
  .secMv__textFrame .c-txt-plain {
    font-size: 14px
  }
  .secMv__btnFrame {
    width: 320px
  }
  .secMv__decoFrame {
    position: static;
    width: 100%;
    height: auto;
    aspect-ratio: 79/75
  }
  .secMv__bottomPic {
    aspect-ratio: 1440/642;
    margin-top: -90px
  }
  .navLink {
    grid-template-columns: repeat(4,minmax(0,1fr))
  }
  .navLink__titleFrame .c-hdg-plain {
    font-size: 20px
  }
}
@media (min-width:1280px) {
  .secHistory__picFrame {
    margin-left: calc(100% - 50vw)
  }
}
@media (max-width:767.98px) {
  .secMv__galleryItem:nth-child(2) {
    translate: 0 10px
  }
  .secMv__galleryItem:nth-child(n+3) {
    display: none
  }
  .secMv__btnFrame {
    width: -moz-fit-content;
    width: fit-content
  }
  .secMv__btnFrame .c-secondaryBtn {
    padding-top: 10px;
    padding-bottom: 10px
  }
}