@charset "UTF-8";
:root {
  --fontfamily:"Noto Sans JP", sans-serif;
  --fontfamily-en01:"Helvetica", "Arial", sans-serif;
  --fontfamily-en02:"Roboto Condensed", sans-serif;
  --fontsize-scale:0.85;
  --fontsize-10:calc(1.0rem);
  --fontsize-11:calc(1.1rem);
  --fontsize-12:calc(1.2rem);
  --fontsize-13:calc(1.3rem * var(--fontsize-scale));
  --fontsize-14:calc(1.4rem * var(--fontsize-scale));
  --fontsize-15:calc(1.5rem * var(--fontsize-scale));
  --fontsize-16:calc(1.6rem * var(--fontsize-scale));
  --fontsize-17:calc(1.7rem * var(--fontsize-scale));
  --fontsize-18:calc(1.8rem * var(--fontsize-scale));
  --fontsize-19:calc(1.9rem * var(--fontsize-scale));
  --fontsize-20:calc(2.0rem * var(--fontsize-scale));
  --fontsize-21:calc(2.1rem * var(--fontsize-scale));
  --fontsize-22:calc(2.2rem * var(--fontsize-scale));
  --fontsize-23:calc(2.3rem * var(--fontsize-scale));
  --fontsize-24:calc(2.4rem * var(--fontsize-scale));
  --fontsize-25:calc(2.5rem * var(--fontsize-scale));
  --fontsize-26:calc(2.6rem * var(--fontsize-scale));
  --fontsize-27:calc(2.7rem * var(--fontsize-scale));
  --fontsize-28:calc(2.8rem * var(--fontsize-scale));
  --fontsize-29:calc(2.9rem * var(--fontsize-scale));
  --fontsize-30:calc(3rem * var(--fontsize-scale));
  --fontsize-31:calc(3.1rem * var(--fontsize-scale));
  --fontsize-32:calc(3.2rem * var(--fontsize-scale));
  --fontsize-33:calc(3.3rem * var(--fontsize-scale));
  --fontsize-34:calc(3.4rem * var(--fontsize-scale));
  --fontsize-35:calc(3.5rem * var(--fontsize-scale));
  --fontsize-36:calc(3.6rem * var(--fontsize-scale));
  --fontsize-37:calc(3.7rem * var(--fontsize-scale));
  --fontsize-38:calc(3.8rem * var(--fontsize-scale));
  --fontsize-39:calc(3.9rem * var(--fontsize-scale));
  --fontsize-40:calc(4rem * var(--fontsize-scale));
  --fontsize-44:calc(4.4rem * var(--fontsize-scale));
  --fontsize-46:calc(4.6rem * var(--fontsize-scale));
  --fontsize-49:calc(4.9rem * var(--fontsize-scale));
  --fontsize-50:calc(5rem * var(--fontsize-scale));
  --fontsize-52:calc(5rem * var(--fontsize-scale));
  --fontsize-60:calc(6rem * var(--fontsize-scale));
  --fontsize-63:calc(6.3rem * var(--fontsize-scale));
  --fontsize-66:calc(6.6rem * var(--fontsize-scale));
  --fontsize-68:calc(6.8rem * var(--fontsize-scale));
  --fontsize-70:calc(7.0rem * var(--fontsize-scale));
  --fontsize-74:calc(7.4rem * var(--fontsize-scale));
  --fontsize-78:calc(7.8rem * var(--fontsize-scale));
  --fontsize-85:calc(8.5rem * var(--fontsize-scale));

  --color-white:#fff;
  --color-grey20:#f2f2f2;
  --color-black:#000;
  --color-orange110:rgb(227, 90, 11);
  --color-orange:#ff8843;
  --color-yellow:#f6d233;
  --color-purple:#4c3076;

  --color-pink:#e882fc;
  --color-pink90:#ff9cff;
  --color-pink80:#ffbcff;

  --color-blue120:#4197cb;
  --color-blue110:#00abeb;
  --color-blue:#60b7ff;
  --color-blue90:#6fdaf1;

  --kv-width:2000;
  --kv-height:688;
}

@media (max-width:740px) {
  :root {
    --fontsize-scale:0.5;

    --kv-width:1000;
    --kv-height:758;
  }
}


/*==============================================
global
==============================================*/
html {
  font-size: 62.5%;
  position: relative;
}

body {
  margin: 0;
  padding: 0;
  line-height: 1.65;
  font-family: var(--fontfamily);
  font-size: var(--fontsize-16);
  position: relative;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "palt";
  background: var(--color-white);
  color: var(--color-black);
  min-width: 1300px;
}

body.fixed {
  overflow: hidden;
}

body::after {
  content:"";
  background: url(../img/entry_bg.png) no-repeat center right;
  background-size: cover;
  position: fixed;
  z-index:-1;
  top:0;
  left:0;
  width: 100%;
  height: 100vh;
}

* {
  box-sizing: border-box;
}

*:last-child {
  margin-bottom:0;
}

*:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dd, form, button, figure, figcaption {
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

li {
  list-style-type: none;
}

img {
  border: none;
  vertical-align: middle!important;
  max-width: 100%;
  -ms-interpolation-mode: bicubic;
  height: auto;
  image-rendering: -webkit-optimize-contrast; /*Chromeぼけ対策*/
  image-rendering: auto;
}

/*==============================================
common
==============================================*/
.main {
  position: absolute;
  width: 100%;
  z-index: 10;
  top:0;
  left:0;
}

._pc {
  display: inline-block;
}

._sp {
  display: none;
}

._anime {
  opacity: 0;
  transform: translateY(20px);
}

._section {
  padding: 60px 0;
  background: var(--color-white);
  position: relative;
  overflow: hidden;
}

._inner {
  width: 1180px;
  padding: 0 40px;
  margin: 0 auto;
  position: relative;
}

._inner--mini{
  width: 1080px;
}

._inner--wide {
  width: 1280px;
}

._tit {
  display: grid;
  justify-content: center;
  text-align: center;
  color: var(--color-purple);
  line-height: 1.2;
  margin-bottom: 1.5em;
  gap: 5px;
}

._tit__en {
  font-size: var(--fontsize-27);
  text-transform: uppercase;
  font-family: var(--fontfamily-en01);
}

._tit__en::before,
._tit__en::after {
  content: '/';
  padding: 0 .25em;
}

._tit__ja {
  font-size: var(--fontsize-49);
  letter-spacing: 0.025em;
}

._tit__ja--mini {
  font-size: var(--fontsize-34);
}

._tit__ja-e {
  font-family: var(--fontfamily-en01);
  font-size: 115%;
}

._tit__ja-marker {
  position: relative;
  display: inline-block;
  font-size: var(--fontsize-44);
  background: linear-gradient(transparent 80%, var(--color-yellow) 80%);
  background-size: 0% 100%;
  background-repeat: no-repeat;
}

@media (max-width:740px) {
  body {
    min-width: initial;
  }

  body::after {
    content:"";
    background: url(../img/entry_bg_sp.png) no-repeat top right;
    background-size: cover;
  }

  .main {
    overflow: hidden;
  }

  ._pc {
    display: none;
  }

  ._sp {
    display: inline-block;
  }

  ._section {
    padding: 30px 0;
  }

  ._inner {
    width: 100%;
    padding: 0 4vw;
  }
}

/*==============================================
link
==============================================*/
a, a:visited, a img, a:visited img, button {
  transition: all .3s ease-in;
}

a:not([class]), a:not([class]):visited {
  color: var(--color-black);
  text-decoration: none;
}

a:not([class]):hover {
  text-decoration: none;
  opacity: 0.85;
}


/*==============================================
header
==============================================*/
.header {
  position: fixed;
  z-index: 20;
  width: 100%;
  display: grid;
  justify-content: space-between;
  align-items: center;
  grid-template-columns: 430px 1fr;
  padding: 15px 2vw;
  background: var(--color-white);
}

.header--ison {
  background: var(--color-white);
}

.header__logo-copy {
  font-size: var(--fontsize-12);
  color: var(--color-grey);
  margin-bottom: .75em;
}

.header__nav-list {
  display: grid;
  grid-template-columns: repeat(5,auto);
  align-items: center;
  justify-content: end;
  font-size: var(--fontsize-16);
  font-weight: 700;
  letter-spacing: 0.02em;
  gap: 2em;
  letter-spacing: 0.05em;
}

.header__nav-list-item a, .header__nav-list-item a:visited {
  transition: all .15s;
}

.header__nav-list-item a:hover {
  color: var(--color-orange);
}

.header__nav-list-item--entry a, .header__nav-list-item--entry a:visited {
  color: var(--color-white);
  background: var(--color-orange);
  box-shadow: 0 3px 0 var(--color-orange110);
  display: inline-block;
  border-radius: 100px;
  padding: .35em calc(1.25em + 15px) .5em 1.25em;
  position: relative;
  top:0;
  background: var(--color-orange) url(../img/header_entry_icon.png) no-repeat 86% center;
  background-size: 15px;
}

.header__nav-list-item--entry a:hover {
  box-shadow: none;
  top:3px;
  position: relative;
  opacity: 0.95;
}

.header__nav-list-item--entry a:hover {
  color: var(--color-white);
}

.header__menu {
  display: none;
}


@media (max-width:1400px) {
  .header {
    grid-template-columns: 250px 1fr;
  }

  .header__nav-list {
    font-size: var(--fontsize-14);
    gap: 1em;
  }
}


@media (max-width:1050px) {
  .header {
    grid-template-columns: 110px 25px;
    padding: 10px 4vw;
    justify-content: space-between;
    align-items: center;
    background: var(--color-white);
  }

  .header__logo-copy {
    display: none;
  }

  .header__nav {
    display: none;
  }

  .header__menu {
    display: block;

    z-index: 26;
    position: fixed;
    top:15px;
    right:15px;
    width: 25px;
    height: 25px;
  }

  .header__menu a {
    position: relative;
    display: block;
    width: 25px;
    height: 35px;
  }

  .header__menu a span {
    position: absolute;
    right:0;
    width: 100%;
    height: 1px;
    background: var(--color-black);
    transition: transform .2s;
    width: 30px;
  }

  .header__menu a span:nth-of-type(1) {
    top: 7px;
    transform-origin: top right;
  }

  .header__menu a span:nth-of-type(2) {
    top: 16px;
  }

  .header__menu a span:nth-of-type(3) {
    top: 25px;
    transform-origin: bottom right;
  }

  .header__menu--ison span:nth-of-type(1) {
    transform: rotate(-45deg) translateX(2px);
  }

  .header__menu--ison span:nth-of-type(2) {
    display: none;
  }

  .header__menu--ison span:nth-of-type(3) {
    transform: rotate(45deg) translateX(2px);
  }
}

/*==============================================
kv
==============================================*/
.kv__bg {
  background: var(--color-white) url(../img/kv_bg.png) no-repeat top right;
  background-size: cover;
  position: relative;
  height: 560px;
}

.kv__tit {
  text-align: center;
  width: 55vw;
  min-width: 1000px;
  margin: 0 auto;
  position: absolute;
  bottom:-30px;
  left:50%;
  transform: translateX(-60%);
  z-index: 5;
}

.kv__tit-copy {
  width: 400px;
  margin: 0 auto 20px;
  position: relative;
  left:12%;
}

.kv__copy {
  position: absolute;
  left:30px;
  top:30px;
  width: 144px;
  z-index: 5;
  clip-path: inset(0% 0% 100% 0%);
}

.kv__img-box {
  position: absolute;
  top:0;
  left:0;
  height: 100%;
  width: 100%;
}

.kv__img {
  position: absolute;
  /* clip-path: circle(0 at 50% 50%); */
}

.kv__img01 {
  width: calc((112 / var(--kv-width))*100%);
  top: calc((194 / var(--kv-height))*100%);
  left: calc((194 / var(--kv-width))*100%);
}

.kv__img02 { /*男の子*/
  width: calc((464 / var(--kv-width))*100%);
  top: calc((13 / var(--kv-height))*100%);
  left: calc((304 / var(--kv-width))*100%);
  opacity: 0;
}

.kv__img03 {
  width: calc((131 / var(--kv-width))*100%);
  top: calc((20 / var(--kv-height))*100%);
  left: calc((879 / var(--kv-width))*100%);
}

.kv__img04 {
  width: calc((168 / var(--kv-width))*100%);
  top: calc((25 / var(--kv-height))*100%);
  left: calc((1181 / var(--kv-width))*100%);
}

.kv__img05 {
  width: calc((146 / var(--kv-width))*100%);
  top: calc((-20 / var(--kv-height))*100%);
  left: calc((1426 / var(--kv-width))*100%);
}

.kv__img06 { /*女の子*/
  width: calc((660 / var(--kv-width))*100%);
  top: calc((74 / var(--kv-height))*100%);
  left: calc((1180 / var(--kv-width))*100%);
  z-index: 2;
  opacity: 0;
}

.kv__img07 {
  width: calc((79 / var(--kv-width))*100%);
  top: calc((76 / var(--kv-height))*100%);
  left: calc((1784 / var(--kv-width))*100%);
}

.kv__img08 {
  width: calc((116 / var(--kv-width))*100%);
  top: calc((166 / var(--kv-height))*100%);
  left: calc((1791 / var(--kv-width))*100%);
}

.kv__img09 {
  width: calc((96 / var(--kv-width))*100%);
  top: calc((303 / var(--kv-height))*100%);
  left: calc((1889 / var(--kv-width))*100%);
}

.kv__img10 {
  width: calc((90 / var(--kv-width))*100%);
  top: calc((413 / var(--kv-height))*100%);
  left: calc((1810 / var(--kv-width))*100%);
}

@media (max-width:740px) {
  .kv__bg {
    background: var(--color-white) url(../img/kv_bg_sp.png) no-repeat top right;
    background-size: cover;
    height:auto;
    aspect-ratio: 750/569;
  }

  .kv__tit {
    width: 70%;
    min-width: unset;
    bottom:-4%;
    left:50%;
    transform: translateX(-47%);
  }

  .kv__tit-copy {
    width: 70%;
    margin: 0 auto;
    left:0;
  }

  .kv__copy {
    left:15px;
    top:15px;
    width:10%;
    z-index: 2;
  }

  .kv__img01 {
    width: calc((102 / var(--kv-width))*100%);
    top: calc((277 / var(--kv-height))*100%);
    left: calc((95 / var(--kv-width))*100%);
  }

  .kv__img02 {
    width: calc((389 / var(--kv-width))*100%);
    top: calc((25 / var(--kv-height))*100%);
    left: calc((51 / var(--kv-width))*100%);
  }

  .kv__img03 {
    width: calc((103 / var(--kv-width))*100%);
    top: calc((10 / var(--kv-height))*100%);
    left: calc((466 / var(--kv-width))*100%);
  }

  .kv__img04 {
    display: none;
  }

  .kv__img05 {
    width: calc((104 / var(--kv-width))*100%);
    top: calc((-20 / var(--kv-height))*100%);
    left: calc((711 / var(--kv-width))*100%);
  }

  .kv__img06 {
    width: calc((577 / var(--kv-width))*100%);
    top: calc((36 / var(--kv-height))*100%);
    left: calc((373 / var(--kv-width))*100%);
    z-index: 2;
  }

  .kv__img07 {
    width: calc((47 / var(--kv-width))*100%);
    top: calc((73 / var(--kv-height))*100%);
    left: calc((892 / var(--kv-width))*100%);
  }

  .kv__img08 {
    width: calc((104 / var(--kv-width))*100%);
    top: calc((125 / var(--kv-height))*100%);
    left: calc((850 / var(--kv-width))*100%);
  }

  .kv__img09 {
    width: calc((64 / var(--kv-width))*100%);
    top: calc((408 / var(--kv-height))*100%);
    left: calc((868 / var(--kv-width))*100%);
  }

  .kv__img10 {
    width: calc((106 / var(--kv-width))*100%);
    top: calc((570 / var(--kv-height))*100%);
    left: calc((827 / var(--kv-width))*100%);
  }





}

/*==============================================
info
==============================================*/
.info {
  background: var(--color-white) url(../img/info_bg.png);
  background-size: 1520px;
  position: relative;
}

.info::after {
  position: absolute;
  content: '';
  bottom:1px;
  left:0;
  width: 100%;
  height: 15px;
  background: url(../img/info_bgline.png);
  background-size:100% 15px;
}

.info__date {
  width: 80%;
  margin: 0 auto 30px;
}

.info__tag {
  width: 60%;
  margin: 0 auto 60px;
}

@media (max-width:740px) {
  .info {
    background-size: 850px;
    padding: 30px 0 30px;
  }

  .info::after {
    height: 10px;
    background-size:200% 10px;
  }

  .info__date {
    width: 100%;
    margin: 0 auto 15px;
  }

  .info__tag {
    width: 100%;
    margin: 0 auto 20px;
  }
}


/*==============================================
schedule
==============================================*/
.sche__list {
  display: grid;
  grid-template-columns: repeat(2,50%);
}

.sche__list-item {
  clip-path: inset(0% 100% 0% 0%);
  padding-bottom: 1em;
}

.sche__list-item table {
	margin:0 auto;
	border-collapse:collapse;
	border-spacing: 0;
	width:100%;
}

.sche__list-item-date {
  padding-bottom: 1.5em;
}

.sche__list-item-date img {
  width: 130px;
}

.sche__list-item-time {
  vertical-align: top;
  padding: 0 1em;
  position: relative;
}

.sche__list-item-time-item {
  font-size: var(--fontsize-29);
  font-weight: 700;
  font-family: var(--fontfamily-en02);
  line-height: 1;
  transform: translateY(-50%);
}

.sche__list-item-time-item--middle {
  transform: translateY(-50%);
  position: absolute;
  top:50%
}

.sche__list-item-time-item--bottom {
  transform: translateY(50%);
  position: absolute;
  bottom:0;
}

.sche__list-item-contents {
  background: var(--color-pink);
  border-bottom:1.5px solid var(--color-black);
  padding: 1em;
  vertical-align: middle;
  text-align: center;
  width: 100%;
  font-weight: 700;
}

/*最初の枠に上線*/
.sche__list-item table tr:first-child .sche__list-item-contents {
  border-top:1.5px solid var(--color-black);
}

.sche__list-item table tr:nth-of-type(2n) .sche__list-item-contents {
  background: var(--color-pink80);
}

.sche__list-item:nth-of-type(2n) .sche__list-item-contents {
  background: var(--color-blue);
}

.sche__list-item:nth-of-type(2n) tr:nth-of-type(2n) .sche__list-item-contents {
  background: var(--color-blue90);
}

.sche__list-item-contents-info {
  font-size: var(--fontsize-15);
}

.sche__list-item-contents-tit {
  font-size: var(--fontsize-18);
  margin-bottom: .5em;
}

.sche__list-item-contents-company {
  font-size: var(--fontsize-15);
  color: var(--color-white);
  background: var(--color-black);
  padding: .25em 2em;
  border-radius: 100px;
  display: inline-block;
}

.sche__img {
  position: absolute;
  z-index: 2;
  width: 200px;
  top:5%;
  left:5%;
}


@media (max-width:740px) {
  .sche__list {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 0 4vw;
  }

  .sche__list-item-date img {
    width: 30%;
  }

  .sche__img {
    width: 18%;
    top:5%;
    left:-1%;
  }
}


/*==============================================
company
==============================================*/
.company__list {
  display: grid;
  grid-template-columns: repeat(5,auto);
  gap: 40px 60px;
  justify-content: center;
}

.company__list-item {
  text-align: center;
}

.company__list-item-logo {
  border-bottom: 1px solid var(--color-black);
  margin-bottom: .75em;
  padding-bottom: 1em;
}

@media (max-width:740px) {
  .company::after {
    position: absolute;
    content: '';
    top:0;
    left:0;
    width: 100%;
    height: 10px;
    background: url(../img/info_bgline.png);
    background-size:200% 10px;
  }

  .company__list {
    grid-template-columns: repeat(2,auto);
    gap: 20px 40px;
    justify-content: center;
  }
}


/*==============================================
about
==============================================*/
.about__lead {
  font-weight: 500;
  text-align: center;
  font-size: var(--fontsize-19);
  margin-bottom: 5em;
}

.about__point {
  display: grid;
  grid-template-columns: 1fr 53%;
  grid-template-areas: 'about__point-txt about__point-mov';
  gap: 5%;
  margin-bottom: 5em;
  position: relative;
}

.about__point-txt {
  grid-area: about__point-txt;
  position: relative;
}

.about__subtit {
  font-size: var(--fontsize-40);
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-blue120);
  margin-bottom: .5em;
}

.about__point-list {
  display: grid;
  position: relative;
  left:-2em;
}

.about__point-list-item {
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 20px;
  font-size: var(--fontsize-22);
  line-height: 1.5;
  position: relative;
  padding-bottom: .5em;
  margin-bottom: .5em;
}

.about__point-list-item::after {
  position: absolute;
  content: '';
  bottom:0;
  right:0;
  width: calc(100% - 90px);
  background: var(--color-blue120);
  height: 2px;
}

.about__point-list-item-txt-marker {
  background: linear-gradient(transparent 5%, var(--color-yellow) 5%);
  position: relative;
  display: inline-block;
  background-size: 0% 100%;
  background-repeat: no-repeat;
}

.about__point-mov {
  grid-area: about__point-mov;
  position: relative;
}

.about__point-mov-check {
  width: 185px;
  position: absolute;
  top:-10px;
  left:-35px;
  z-index: 2;
}

.about__point-mov-box {
  background: url(../img/about_point_mov.png) no-repeat;
  background-size: contain;
  aspect-ratio: 1451/987;
  position: relative;
}

.about__point-mov-youtube {
  position: absolute;
  width: 100%;
  padding: 1.4vw 1.3vw;
}

.about__point-mov-youtube iframe {
  width: 100%;
  aspect-ratio: 670/433;
  overflow: hidden;
}

.about__adv {
  position: relative;
}

.about__adv-layout {
  display: grid;
  grid-template-columns: 1fr 200px;
  gap: 40px;
}

.about__adv-txt-tit {
  font-size: var(--fontsize-34);
  font-weight: 700;
  margin-bottom: .5em;
}

.about__adv-txt-tit-img {
  display: none;
}

.about__adv-txt-copy {
  font-size: var(--fontsize-19);
  line-height: 1.8;
}

.about__adv-txt-notice {
  font-size: var(--fontsize-19);
}

.about__adv-txt-copy-marker {
  background: linear-gradient(transparent 5%, var(--color-pink90) 5%);
  position: relative;
  display: inline-block;
  background-size: 0% 100%;
  background-repeat: no-repeat;
}

.about__img {
  position: absolute;
  z-index: 2;
}

.about__img01 {
  width: 180px;
  top:3%;
  left:15%;
}

.about__img02 {
  width: 153px;
  top:5%;
  right:15%;
}

.about__img03 {
  width: 130px;
  top:6%;
  left:5%;
}

.about__img04 {
  width: 195px;
  top:0;
  right:-15%;
}

.about__img01-sp,
.about__img04-sp {
  display: none;
}

@media (max-width:1450px) {
  .about__img04 {
    display: none;
  }
}

@media (max-width:740px) {
  .about__lead {
    text-align: left;
    margin-bottom: 3em;
  }

  .about__point {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: 'about__point-mov''about__point-txt';
    margin-bottom: 5em;
  }

  .about__subtit {
    text-align: center;
  }

  .about__point-list {
    justify-content: center;
    left:auto;
    grid-template-columns: 1fr;
    padding: 0 12vw;
  }

  .about__point-list-item {
    grid-template-columns: 40px 1fr;
    gap: 10px;
  }

  .about__point-list-item::after {
    position: absolute;
    content: '';
    bottom:0;
    right:0;
    width: calc(100% - 45px);
    background: var(--color-blue120);
    height: 1px;
  }

  .about__point-mov {
    padding: 0 6vw;
  }

  .about__point-mov-check {
    width: 25%;
    top:-10px;
    left:0;
  }

  .about__point-mov-youtube {
    padding: 2.2vw 1.5vw;
  }

  .about__adv-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .about__adv-txt-tit {
    display: grid;
    grid-template-columns: 1fr 70px;
    align-items: center;
  }

  .about__adv-txt-tit-img {
    display: block;
  }

  .about__adv-img {
    display: none;
  }

  .about__img01 {
    display: none;
  }

  .about__img02 {
    display: none;
  }

  .about__img03 {
    display: none;
  }

  .about__img04 {
    display: none;
  }

  .about__img01-sp {
    width: 15%;
    top:5%;
    left:0;
    display: block;
  }

  .about__img04-sp {
    width: 20%;
    top:10%;
    right:0;
    display: block;
  }
}


/*==============================================
process
==============================================*/
.process__flow {
  display: grid;
  grid-template-columns: 29.2% 1fr;
  gap: 1%;
  position: relative;
}

.process__flow-item {
  display: grid;
  gap: 10px;
  grid-template-rows: auto 1fr;
  font-size: var(--fontsize-19);
  clip-path: inset(0% 100% 0% 0%);
}

.process__flow-item-contents {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 10px;
}

.process__flow-item-label {
  padding-left: 20px;
  margin-bottom: 5px;
}

.process__flow-item-layout {
  display: grid;
  grid-template-columns: repeat(2,49%);
  gap: 2%;
}

.process__img {
  position: absolute;
  z-index: 2;
  width: 180px;
  left:-10%;
  top:-5%;
}

@media (max-width:740px) {
  .process__flow {
    grid-template-columns: 1fr;
    padding: 0 4vw;
  }

  .process__flow-item {
    grid-template-columns: 7.5% 1fr;
    grid-template-rows: auto;
    gap: 25px;
    font-size: var(--fontsize-21);
  }

  .process__flow-item-contents {
    gap: 5px;
  }

  .process__flow-item-label {
    padding-left: 0;
    margin-bottom: 0;
  }

  .process__flow-item-layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    gap: 6%;
  }

  .process__flow-item-layout .process__flow-item {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
    gap: 5px;
  }

  .process__img {
    width: 18%;
    left:auto;
    right:0;
    top:0;
  }
}


/*==============================================
voices
==============================================*/
.voices {
  background: url(../img/voices_bg.png) center right;
  background-size: cover;
}

.voices__copy {
  font-size: var(--fontsize-19);
  font-weight: 500;
  margin-bottom: 1em;
  text-align: center;
}

.voices__notice {
  font-size: var(--fontsize-17);
  text-align: center;
  margin-bottom: 1em;
}

.voices__list-item {
  padding: 15px;
  transition: all .3s;
}

.voices__list-item:hover {
  transform: scale(1.05);
  position: relative;
  z-index: 5;
  cursor: pointer;
}

.voices__img {
  position: absolute;
  z-index: 2;
}

.voices__img01 {
  width: 165px;
  top:8%;
  left:10%;
}

.voices__img02 {
  width: 163px;
  top:15%;
  right:5%;
}


@media (max-width:740px) {
  .voices__list {
    padding: 0 20px;
  }

  .voices__list-item {
    padding: 0 7px;
  }

  .voices__list-item:hover {
    transform: scale(1);
  }

  .voices__img {
    display: none;
  }

}

/*==============================================
faq
==============================================*/
.faq__list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 25px;
  margin-bottom: 15px;
}

.faq__list-item {
  border: 4px solid var(--color-blue110);
}

.faq__list-item-q {
  background: var(--color-blue110);
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 10px;
  padding: .75em;
}

.faq__list-item-q-copy {
  font-size: var(--fontsize-22);
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.4;
  padding-top: .15em;
}

.faq__list-item-a {
  font-size: var(--fontsize-19);
  padding: 1em;
  line-height: 1.5;
}

.faq__list-item:nth-of-type(2n) {
  border-color: var(--color-blue90);
}

.faq__list-item:nth-of-type(2n) .faq__list-item-q {
  background: var(--color-blue90);
}

.faq__more {
  font-size: var(--fontsize-18);
  text-align: right;
  background: url(../img/faq_more_icon.png) no-repeat center right;
  background-size: contain;
  padding-right: 2em;
  font-weight: 700;
  letter-spacing: 0.07em;
  position: relative;
  right:0;
  transition: all .3s;
}

.faq__more:hover {
  position: relative;
  right:-10px;
}

.faq__img {
  position: absolute;
  z-index: 2;
}

.faq__img01 {
  width: 220px;
  top:5%;
  left:1%;
}

.faq__img02 {
  width: 230px;
  bottom:15%;
  right:0;
}

@media (max-width:1450px) {
  .faq__img02 {
    display: none;
  }
}

@media (max-width:740px) {
  .faq__list {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 10px;
  }

  .faq__list-item {
    border-width: 3px;
  }

  .faq__list-item-q {
    grid-template-columns: 35px 1fr;
    align-items: center;
    font-size: 1px;
    padding: 5px;
  }

  .faq__list-item-q-copy {
    padding-top: 0;
  }

  .faq__img01 {
    width: 22%;
    top:3%;
    left:1%;
  }

  .faq__img02 {
    width: 20%;
    bottom:auto;
    right:0;
    top:3%;
  }
}

/*==============================================
_entry
==============================================*/
._entry {
  padding: 50px 0;
  color: var(--color-white);
  background: url(../img/entry_bgline.png) repeat-x;
  background-size: 100% 15px;
  position: relative;
  bottom:1px;
}

._entry__tit {
  font-size: var(--fontsize-44);
  font-weight: 700;
  text-align: center;
  line-height: 1;
  margin-bottom: 1em;
}

._entry__tit::before {
  content: '⧵';
  font-size: 120%;
  padding: .2em .2em 0;
}

._entry__tit::after {
  content: '⧵';
  font-size: 120%;
  padding: .2em .2em 0;
  transform: rotateY(180deg);
  display: inline-block;
}


@media (max-width:740px) {
  ._entry {
    padding: 25px 0;
    background: url(../img/entry_bgline.png) repeat-x;
    background-size: 200% 7px;
  }

  ._entry__tit::before {
    font-size: 130%;
  }

  ._entry__tit::after {
    font-size: 130%;
  }
}


/*==============================================
_btn
==============================================*/
._btn__list {
  display: grid;
  justify-content: center;
  align-items: center;
  grid-template-columns: repeat(2,auto);
  gap: 40px;
  margin-bottom: 30px;
}

._btn__list-item {
  font-size: var(--fontsize-27);
  position: relative;
}

._btn__list-item-img {
  position: absolute;
  z-index: 2;
}

._btn__list-item-img--01 {
  width: 38%;
  left:-16%;
  top:-90%;
}

._btn__list-item-img--02 {
  width: 34%;
  right:-13%;
  top:-85%;
}

._btn__list-item a, ._btn__list-item a:visited {
  border-radius: 15px;
  font-size: var(--fontsize-27);
  font-weight: 900;
  padding: .8em 2em;
  color: var(--color-white);
  border: 1px solid var(--color-black);
  display: block;
  letter-spacing: 0.075em;
  position: relative;
  top:0;
  left:0;
}

._btn__list-item-week {
  font-size: 75%;
}

._btn__list-item--pink a {
  background: var(--color-pink);
  box-shadow: 5px 5px 0 var(--color-pink80);
}

._btn__list-item--blue a {
  background: var(--color-blue);
  box-shadow: 5px 5px 0 var(--color-blue90);
}

._btn__list-item a:hover {
  box-shadow: none;
  opacity: 1;
  top:5px;
  left:5px;
  position: relative;
}

._btn__notice {
  text-align: center;
  font-size: var(--fontsize-19);
  letter-spacing: 0.075em;
}


@media (max-width:740px) {
  ._btn__list {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 15px;
    text-align: center;
    padding: 0 8vw;
  }

  ._btn__list-item a, ._btn__list-item a:visited {
    border-radius: 10px;
  }

  ._btn__list-item--pink a {
    box-shadow: 3px 3px 0 var(--color-pink80);
  }

  ._btn__list-item--blue a {
    box-shadow: 3px 3px 0 var(--color-blue90);
  }

  ._btn__list-item-img--01 {
    width: 25%;
    left:-10%;
    top:-35%;
  }

  ._btn__list-item-img--02 {
    width: 23%;
    right:-15%;
    top:-15%;
  }
}


/*==============================================
footer
==============================================*/
.footer {
  background: var(--color-white);
  padding-bottom: 50px;
}

.footer__pagetop {
  border-bottom: 6px solid var(--color-grey20);
  width: 75%;
  margin: 0 auto 2em;
  text-align: center;
  overflow: hidden;
}

.footer__pagetop-copy {
  font-weight: 700;
  margin-bottom: 1em;
}

.footer__pagetop img {
  width: 60px;
}

.footer__pagetop a {
  display: block;
  top:110px;
  position: relative;
}

.footer__pagetop a:hover {
  top:50px
}

.footer__copyright {
  text-align: center;
  font-size: var(--fontsize-10);
  letter-spacing: 0.05em;
  margin-bottom: 3em;
}

@media (max-width:740px) {
  .footer__copyright {
    margin-bottom: 50px;
  }
}


/*==============================================
nav-sp
==============================================*/
.nav-sp {
  position: fixed;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  z-index: 25;
  background: var(--color-white) url(../img/navsp_bg.png) no-repeat top right;
  background-size:cover;
  transition: all .3s;
  display: grid;
  /* justify-content: center; */
  align-items: center;
  padding: 0 4vw;
  opacity: 0;
  transform: translateX(100%);
}

.nav-sp--ison {
  opacity: 1;
  transform: translateX(0);
}

.nav-sp__logo {
  position: absolute;
  top:3%;
  left:5%;
  width:55%;
}

.nav-sp__list {
  border-radius: 15px;
  width: 100%;
  padding: 0 6vw;
  top:-30px;
  left: 50px;
  position: relative;
  display: grid;
  gap: 4em;
}

.nav-sp__list-item a, .nav-sp__list-item a:visited {
  color: var(--color-black);
  font-weight: 700;
  font-size: var(--fontsize-36);
  display: block;
  text-align: left;
  padding-left: 35px;
  letter-spacing: 0.1em;
  color: var(--color-purple);
  background: url(../img/navsp_icon.png) no-repeat left center;
  background-size: 25px;
}


@media (max-width:1000px) and (orientation: landscape) {
  .nav-sp__logo {
    top:3%;
    left:3%;
    width:25%;
  }
  .nav-sp__list  {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    top:-15px;
    left:0;
  }
}

/*==============================================
float
==============================================*/
.float {
  position: fixed;
  right:0;
  top:50%;
  transform: translateY(-50%);
  z-index: 5;
  overflow: hidden;
  width: 90px;
  display: grid;
  gap: 10px;
  opacity: 0;
  transition: all .3s;
}

.float--ison {
  opacity: 1;
}

.float__list {
  display: grid;
  gap: 10px;
}

.float__list-item a, .float__list-item a:visited {
  position: relative;
  left:25px;
}

.float__list-item a:hover {
  left:10px;
  opacity: 1;
}

@media (max-width:740px) {
  .float {
    top:auto;
    bottom: 0;
    transform: translateY(0);
    width: 100%;
    gap: 10px;
    padding: 0 4vw;
  }

  .float__list {
    display: grid;
    gap: 0px;
    grid-template-columns: repeat(2,auto);
  }

  .float__list-item a, .float__list-item a:visited {
    left:auto;
  }

  .float__list-item a:hover {
    left:auto;
  }
}


/*==============================================
slick
==============================================*/
/*default*/
.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:rgba(0,0,0,0)}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir='rtl'] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{height: auto!important;-webkit-backface-visibility: hidden;-webkit-transform-style: preserve-3d;}.slick-arrow.slick-hidden{display:none}

.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
  position: absolute;
  top: 50%;
  z-index: 5;
  display: block;
  width: 30px;
  height: 40px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  transition: 0.3s ease-in-out;
}

.slick-prev {
  left: -40px;
  background: url(../img/voices_icon_arrow_left.png) no-repeat;
  background-size: contain;
}

.slick-next {
  right: -40px;
  background: url(../img/voices_icon_arrow_right.png) no-repeat;
  background-size: contain;
  transform-origin: center;
}

.slick-dots {
  position: absolute;
  bottom: 10px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  z-index: 1;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 6px;
  height: 6px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  content: '';
  text-align: center;
  background: var(--color-chudengray2);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  background: var(--color-chudenred);
}

/*1枚のときはdotを表示させない*/
.slick-dots > li:first-child:last-child {
  display: none;
}

/*Chromeのちらつき防止*/
.slick-slide {
  transform: translateY(0.5px);
  transition: transform 0.5s ease;
  transform: translate3d(0, 0, 0);
}

.slick-slide.delayed-slide {
  transform: translateY(0);
}

.slick-slide.transitioning {
  transition-delay: 0s;
}

/*slick-initializedが付与されたら表示*/
.course__list {
  display: none;
}

.course__list.slick-initialized{
  display: block;
}

/*スライドアイテムの高さが揃うように調整*/
.slick-track {
  display: flex;
}
.slick-slide {
  height: auto !important;
  padding: .75em 0;

}
.slick-slide > div {
  height: 100% !important;
}


@media (max-width:740px) {
  .slick-prev {
    left: -5px;
    width: 15px;
  }

  .slick-next {
    right:-5px;
    width: 15px;
  }
}
