@charset "UTF-8";
/* ///////////////////////////////////////////
  value.scss
  変数・mixinに関する設定
/////////////////////////////////////////// */
/*====================================
  カラー
=====================================*/
/*====================================
  ランドセルカラーバリエーション
====================================*/
/*====================================
  画像
=====================================*/
/*====================================
  font
=====================================*/
/*====================================
  レイアウト・パーツ
=====================================*/
/* ======================
波形（区切り）
====================== */
/* ======================
背景
====================== */
/* /////////////////////////////////
  Media Queries
///////////////////////////////// */
/*====================================
  要素のサイズセット
=====================================*/
/* ///////////////////////////////////////////
  page.scss
  下層ページに関する記述
/////////////////////////////////////////// */
main[class^=page--bright] .bright__mv {
  position: relative;
  width: 100vw;
  background: #eff8fb;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv {
    padding-bottom: 100px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv {
    padding-bottom: 250px;
  }
}
main[class^=page--bright] .bright__mv::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translate(-50%, 50%);
  width: 100vw;
  height: 15.2777777778vw;
  background: url(../images/pages/bright/rainbow--pc.webp) center no-repeat;
  background-size: contain;
  z-index: 1;
}
main[class^=page--bright] .bright__mv::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: 100vw;
  height: 3.6603221083vw;
  background: url(../images/common/divider_wave--white.svg) bottom center repeat-x;
}
main[class^=page--bright] .bright__mv__container {
  display: flex;
  max-width: 1140px;
  margin-inline: auto;
  position: relative;
  justify-content: center;
  position: relative;
  flex-wrap: wrap;
  z-index: 5;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__container {
    padding-inline: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__container {
    padding-inline: 80px;
  }
}
main[class^=page--bright] .bright__mv__container::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/pages/bright/bg_mv--3.svg) center no-repeat;
  background-size: contain;
  z-index: 10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__container::before {
    bottom: 40px;
    left: 0;
    transform: translate(0, 100%);
    width: 160px;
    height: 160px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__container::before {
    bottom: 0;
    left: 0;
    transform: translate(-30%, 70%);
    width: 380px;
    height: 380px;
  }
}
main[class^=page--bright] .bright__mv__container::after {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/pages/bright/bg_mv--4.svg) center no-repeat;
  background-size: contain;
  z-index: 10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__container::after {
    bottom: 0;
    right: 0;
    transform: translate(0, 100%);
    width: 120px;
    height: 130px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__container::after {
    bottom: -250px;
    right: 0;
    transform: translate(50%, 0);
    width: 200px;
    height: 215px;
  }
}
main[class^=page--bright] .bright__mv__ttl {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  order: 1;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__ttl {
    padding-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__ttl {
    padding-top: 100px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__ttl {
    font-size: 2.8rem;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__ttl {
    font-size: 4.2rem;
  }
}
main[class^=page--bright] .bright__mv__ttl::before {
  content: "";
  position: absolute;
  display: block;
  width: calc(100% + 50px);
  height: auto;
  background: url(../images/pages/bright/bg_mv--1.svg) center no-repeat;
  background-size: contain;
  pointer-events: none;
  z-index: -10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__ttl::before {
    bottom: 0;
    left: -20px;
    transform: translate(-50%, 100%);
    width: 90px;
    height: 140px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__ttl::before {
    top: 40px;
    left: 0;
    transform: translate(-80%, 50%);
    width: 330px;
    height: 220px;
  }
}
main[class^=page--bright] .bright__mv__ttl::after {
  content: "";
  position: absolute;
  display: block;
  background: url(../images/pages/bright/bg_mv--2.svg) center no-repeat;
  background-size: contain;
  pointer-events: none;
  z-index: -10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__ttl::after {
    top: 0;
    right: -20px;
    transform: translate(0, 50%);
    width: 130px;
    height: 145px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__ttl::after {
    top: 0;
    right: -80px;
    transform: translate(60%, 0);
    width: 260px;
    height: 290px;
  }
}
main[class^=page--bright] .bright__mv__ttl .fukidashi {
  position: relative;
  display: inline-block;
  background: #ffffff;
  word-break: keep-all;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__ttl .fukidashi {
    border-radius: 10px;
    padding: 0.5em;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__ttl .fukidashi {
    border-radius: 40px;
    padding: 0.5em 1em;
  }
}
main[class^=page--bright] .bright__mv__ttl .fukidashi::after {
  content: "";
  position: absolute;
  bottom: 1px;
  left: 50%;
  transform: translate(0, 100%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 13px 0 13px;
  border-color: #ffffff transparent transparent transparent;
}
main[class^=page--bright] .bright__mv__desc {
  display: flex;
  align-items: center;
  line-height: 2;
  order: 3;
  z-index: 10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__desc {
    width: 100%;
    padding: 0 30px;
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__desc {
    width: calc(50% - 40px);
    margin-left: 80px;
    font-size: 1.8rem;
  }
}
main[class^=page--bright] .bright__mv__video {
  height: auto;
  aspect-ratio: 1/1;
  order: 2;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__video {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__video {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__video {
    width: 100%;
    max-width: 480px;
    padding: 0 30px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__video {
    width: calc(50% - 40px);
  }
}
main[class^=page--bright] .bright__mv__video video {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__mv__video video {
    border-radius: 10px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__mv__video video {
    border-radius: 40px;
  }
}
main[class^=page--bright] .bright__feature {
  display: block;
  max-width: 1320px;
  margin-inline: auto;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature {
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature {
    padding-inline: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature {
    padding-inline: 80px;
  }
}
main[class^=page--bright] .bright__feature__ttl .illust--flash {
  position: relative;
  display: inline-block;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature__ttl .illust--flash {
    padding-top: 50px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature__ttl .illust--flash {
    padding-left: 90px;
  }
}
main[class^=page--bright] .bright__feature__ttl .illust--flash::before {
  content: "";
  position: absolute;
  display: block;
  background: url(./../images/home/feature_illust--flash.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature__ttl .illust--flash::before {
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 40px;
    height: 45px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature__ttl .illust--flash::before {
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    width: 80px;
    height: 90px;
  }
}
main[class^=page--bright] .bright__feature__container {
  display: grid;
  gap: 80px;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature__container {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature__container {
    margin-top: 100px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature__container {
    grid-template-columns: repeat(3, 1fr);
  }
}
main[class^=page--bright] .bright__feature__item {
  position: relative;
}
main[class^=page--bright] .bright__feature__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100px;
  height: 60px;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(1)::before {
  background: url(../images/pages/bright/icon_01.svg) center no-repeat;
  background-size: contain;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(1) .ttl {
  color: #91baff;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(2)::before {
  background: url(../images/pages/bright/icon_02.svg) center no-repeat;
  background-size: contain;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(2) .ttl {
  color: #ff94b4;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(3)::before {
  background: url(../images/pages/bright/icon_03.svg) center no-repeat;
  background-size: contain;
}
main[class^=page--bright] .bright__feature__item:nth-of-type(3) .ttl {
  color: #cee128;
}
main[class^=page--bright] .bright__feature__item.industry-first {
  position: relative;
}
main[class^=page--bright] .bright__feature__item.industry-first::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 76px;
  height: 76px;
  background: url(../images/pages/bright/icon_industry-first.svg) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature__item.industry-first::after {
    transform: translate(25%, -50%);
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature__item.industry-first::after {
    transform: translate(50%, -50%);
  }
}
main[class^=page--bright] .bright__feature .bright__featurecard {
  text-align: center;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature .bright__featurecard .caption {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature .bright__featurecard .caption {
    margin-top: 40px;
  }
}
main[class^=page--bright] .bright__feature .bright__featurecard .ttl {
  display: block;
  font-size: 3.1rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__feature .bright__featurecard .ttl {
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__feature .bright__featurecard .ttl {
    margin-bottom: 30px;
  }
}
main[class^=page--bright] .bright__feature .bright__featurecard .desc {
  line-height: 2.25;
  word-break: auto-phrase;
}
main[class^=page--bright] .bright__wrap {
  display: grid;
  gap: 80px;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__wrap {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__wrap {
    margin-top: 100px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
main[class^=page--bright] .bright__boys,
main[class^=page--bright] .bright__girls {
  text-align: center;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-top: 40px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-top: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-right: 40px;
  }
}
@media only screen and (min-width: 835px) and (max-width: 1219px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-right: 30px;
  }
}
@media print, screen and (min-width: 1220px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-right: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-left: 40px;
  }
}
@media only screen and (min-width: 835px) and (max-width: 1219px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-left: 30px;
  }
}
@media print, screen and (min-width: 1220px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    padding-left: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    border-radius: 30px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    border-radius: 40px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys,
  main[class^=page--bright] .bright__girls {
    max-width: 480px;
    margin-inline: auto;
  }
}
main[class^=page--bright] .bright__boys__ttl,
main[class^=page--bright] .bright__girls__ttl {
  font-size: 3.1rem;
}
main[class^=page--bright] .bright__boys__desc,
main[class^=page--bright] .bright__girls__desc {
  line-height: 2.25;
  word-break: auto-phrase;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__desc,
  main[class^=page--bright] .bright__girls__desc {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys__desc,
  main[class^=page--bright] .bright__girls__desc {
    margin-top: 40px;
  }
}
main[class^=page--bright] .bright__boys__desc .em--pc,
main[class^=page--bright] .bright__girls__desc .em--pc {
  position: relative;
  display: inline-block;
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys__desc .em--pc::after,
  main[class^=page--bright] .bright__girls__desc .em--pc::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 25%);
    width: 100%;
    height: 10px;
    background: #fffe87;
    z-index: -10;
  }
}
main[class^=page--bright] .bright__boys__desc .em--sp,
main[class^=page--bright] .bright__girls__desc .em--sp {
  position: relative;
  display: inline-block;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__desc .em--sp::after,
  main[class^=page--bright] .bright__girls__desc .em--sp::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 25%);
    width: 100%;
    height: 10px;
    background: #fffe87;
    z-index: -10;
  }
}
main[class^=page--bright] .bright__boys__container,
main[class^=page--bright] .bright__girls__container {
  position: relative;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__container,
  main[class^=page--bright] .bright__girls__container {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys__container,
  main[class^=page--bright] .bright__girls__container {
    margin-top: 40px;
  }
}
main[class^=page--bright] .bright__boys__item,
main[class^=page--bright] .bright__girls__item {
  margin-top: 1em;
}
main[class^=page--bright] .bright__boys .caption,
main[class^=page--bright] .bright__girls .caption {
  padding-bottom: 1em;
}
main[class^=page--bright] .bright__girls {
  position: relative;
  border: 10px solid #fff5f8;
}
main[class^=page--bright] .bright__girls::before {
  content: "";
  position: absolute;
  bottom: 20px;
  right: 0;
  transform: translate(50%, 0);
  background: url(../images/pages/bright/girls_deco04.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__girls::before {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__girls::before {
    width: 90px;
    height: 85px;
  }
}
main[class^=page--bright] .bright__girls::after {
  content: "";
  position: absolute;
  bottom: 250px;
  left: 0;
  transform: translate(-50%, 0);
  background: url(../images/pages/bright/girls_deco03.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__girls::after {
    width: 30px;
    height: 32px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__girls::after {
    width: 55px;
    height: 55px;
  }
}
main[class^=page--bright] .bright__girls__ttl {
  position: relative;
}
main[class^=page--bright] .bright__girls__ttl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-100%, -50%);
  background: url(../images/pages/bright/girls_deco01.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__girls__ttl::before {
    width: 80px;
    height: 74px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__girls__ttl::before {
    width: 130px;
    height: 120px;
  }
}
main[class^=page--bright] .bright__girls__ttl::after {
  content: "";
  position: absolute;
  background: url(../images/pages/bright/girls_deco02.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__girls__ttl::after {
    bottom: 0;
    right: -20px;
    transform: translate(100%, 0);
    width: 30px;
    height: 35px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__girls__ttl::after {
    bottom: 0;
    right: -40px;
    transform: translate(100%, 0);
    width: 60px;
    height: 70px;
  }
}
main[class^=page--bright] .bright__girls__container::before {
  content: "左が通常時、右がフラッシュ撮影時";
}
main[class^=page--bright] .bright__boys {
  position: relative;
  border: 10px solid #eff8fb;
}
main[class^=page--bright] .bright__boys::before {
  content: "";
  position: absolute;
  bottom: 20px;
  right: 0;
  transform: translate(50%, 0);
  background: url(../images/pages/bright/boys_deco04.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys::before {
    width: 40px;
    height: 48px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys::before {
    width: 65px;
    height: 80px;
  }
}
main[class^=page--bright] .bright__boys::after {
  content: "";
  position: absolute;
  bottom: 250px;
  left: 0;
  transform: translate(-50%, 0);
  background: url(../images/pages/bright/boys_deco03.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys::after {
    width: 50px;
    height: 42px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys::after {
    width: 85px;
    height: 70px;
  }
}
main[class^=page--bright] .bright__boys__ttl {
  position: relative;
}
main[class^=page--bright] .bright__boys__ttl::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(100%, -50%);
  background: url(../images/pages/bright/boys_deco01.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__ttl::before {
    width: 60px;
    height: 100px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys__ttl::before {
    width: 120px;
    height: 200px;
  }
}
main[class^=page--bright] .bright__boys__container {
  position: relative;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__container {
    max-width: 300px;
    margin-inline: auto;
  }
}
main[class^=page--bright] .bright__boys__container::before {
  content: "";
  position: absolute;
  background: url(../images/pages/bright/boys_deco02.webp) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys__container::before {
    top: 0;
    left: -30px;
    transform: translate(-50%, 0);
    width: 35px;
    height: 42px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys__container::before {
    top: 0;
    left: -80px;
    transform: translate(-50%, 0);
    width: 60px;
    height: 70px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__boys li + li {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__boys li + li {
    margin-top: 40px;
  }
}
main[class^=page--bright] .bright__boys img + img {
  margin-top: 20px;
}
main[class^=page--bright] .bright__lineup {
  display: block;
  max-width: 1320px;
  margin-inline: auto;
  position: relative;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup {
    padding-inline: 20px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup {
    padding-inline: 80px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup {
    padding-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup {
    padding-top: 100px;
  }
}
main[class^=page--bright] .bright__lineup::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(190px, 0);
  width: 80px;
  height: 55px;
  background: url(../images/pages/bright/lineup_ttl_deco03.webp) center no-repeat;
  background-size: contain;
}
main[class^=page--bright] .bright__lineup__ttl {
  position: relative;
  text-align: center;
}
main[class^=page--bright] .bright__lineup__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-50%, -50%);
  background: url(../images/pages/bright/lineup_ttl_deco02.svg) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__ttl::before {
    width: 100px;
    height: 50px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__ttl::before {
    width: 270px;
    height: 140px;
  }
}
main[class^=page--bright] .bright__lineup__ttl::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, 50%);
  background: url(../images/pages/bright/lineup_ttl_deco01.svg) center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__ttl::after {
    width: 120px;
    height: 64px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__ttl::after {
    width: 270px;
    height: 140px;
  }
}
main[class^=page--bright] .bright__lineup__ttl .yumepika {
  position: relative;
  display: inline-block;
  margin-top: 240px;
}
main[class^=page--bright] .bright__lineup__ttl .yumepika::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  width: 240px;
  height: 240px;
  background: url(../images/common/logo_yumepika--red.svg) center no-repeat;
  background-size: contain;
}
main[class^=page--bright] .bright__lineup__ttl .ttl {
  position: relative;
  color: #91baff;
  overflow: visible;
  z-index: 10;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__ttl .ttl {
    margin-right: auto;
    margin-left: auto;
    max-width: 480px;
  }
}
main[class^=page--bright] .bright__lineup__ttl .ttl .img {
  aspect-ratio: 355/70;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__ttl .ttl .img {
    width: 200px;
  }
}
main[class^=page--bright] .bright__lineup__desc {
  position: absolute;
  top: 0;
  right: 50%;
  display: inline-block;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__desc {
    transform: translate(-25%, 0);
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__desc {
    transform: translate(-100%, 0);
  }
}
main[class^=page--bright] .bright__lineup__desc .illust--bird {
  position: relative;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__desc .illust--bird {
    padding-top: 20px;
    padding-right: 30px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__desc .illust--bird {
    padding-top: 30px;
    padding-right: 20px;
  }
}
main[class^=page--bright] .bright__lineup__desc .illust--bird::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  background: url(../images/pages/bright/lineup_desc_deco.webp) top center no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__desc .illust--bird::after {
    width: 180px;
    height: 170px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__desc .illust--bird::after {
    width: 255px;
    height: 240px;
  }
}
main[class^=page--bright] .bright__lineup .mod__itemboard,
main[class^=page--bright] .bright__lineup .mod__itemcard {
  margin-inline: auto;
  box-shadow: none;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup .mod__itemboard,
  main[class^=page--bright] .bright__lineup .mod__itemcard {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup .mod__itemboard,
  main[class^=page--bright] .bright__lineup .mod__itemcard {
    margin-top: 80px;
  }
}
main[class^=page--bright] .bright__lineup #item--petitheart {
  background: #fff5f8;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__boys,
  main[class^=page--bright] .bright__lineup__girls {
    padding-top: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__boys,
  main[class^=page--bright] .bright__lineup__girls {
    padding-top: 100px;
  }
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__boys,
  main[class^=page--bright] .bright__lineup__girls {
    padding-bottom: 60px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__boys,
  main[class^=page--bright] .bright__lineup__girls {
    padding-bottom: 100px;
  }
}
main[class^=page--bright] .bright__lineup__boys__ttl,
main[class^=page--bright] .bright__lineup__girls__ttl {
  position: relative;
  text-align: center;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__boys__ttl,
  main[class^=page--bright] .bright__lineup__girls__ttl {
    padding-top: 40px;
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__boys__ttl,
  main[class^=page--bright] .bright__lineup__girls__ttl {
    padding-top: 70px;
    font-size: 2.8rem;
  }
}
main[class^=page--bright] .bright__lineup__boys__ttl::before,
main[class^=page--bright] .bright__lineup__girls__ttl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  background-size: contain;
}
@media only screen and (max-width: 834px) {
  main[class^=page--bright] .bright__lineup__boys__ttl::before,
  main[class^=page--bright] .bright__lineup__girls__ttl::before {
    width: 66px;
    height: 36px;
  }
}
@media print, screen and (min-width: 835px) {
  main[class^=page--bright] .bright__lineup__boys__ttl::before,
  main[class^=page--bright] .bright__lineup__girls__ttl::before {
    width: 110px;
    height: 60px;
  }
}
main[class^=page--bright] .bright__lineup__girls__ttl::before {
  background: url(../images/common/icon_crown--pink.svg) center no-repeat;
}
main[class^=page--bright] .bright__lineup__boys {
  position: relative;
}
main[class^=page--bright] .bright__lineup__boys::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 50%;
  translate: -50% -100%;
  display: block;
  width: 100vw;
  height: 3.6603221083vw;
  background: url(./../images/common/divider_wave--blue.svg) center repeat-x;
}
main[class^=page--bright] .bright__lineup__boys::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  width: 100vw;
  height: 100%;
  background: #eff8fb;
  z-index: -100;
}
main[class^=page--bright] .bright__lineup__boys__ttl::before {
  background: url(../images/common/icon_crown--blue.svg) center no-repeat;
}
main[class^=page--bright] .mod__catalog {
  position: relative;
}
main[class^=page--bright] .mod__catalog::before {
  background-color: #f9f8fc;
}
main[class^=page--bright] .mod__catalog::after {
  content: "";
  position: absolute;
  top: 1px;
  left: 50%;
  translate: -50% -100%;
  display: block;
  width: 100vw;
  height: 3.6603221083vw;
  top: 0;
  transform: translate(-50%, 0) rotate(180deg);
  background: url(./../images/common/divider_wave--blue.svg) center repeat-x;
}/*# sourceMappingURL=bright.css.map */