/* ---  reset.css  --- */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

ins {
  background-color: #fff;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #fff;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

/* ---  PC  --- */

body {
  background-color: #f5fafa;
  font-family: "Gotham", "ヒラギノUD角ゴ Std", "Hiragino UD Sans", sans-serif;
}

.sp {
  display: none;
}

.wrap {
  max-width: 1200px;
  margin: 0 auto;
}

.text01 {
  display: block;
  margin: 54.209px 0 31.7325px;
  text-align: center;
}

.movie {
  width: 740.318px;
  height: 407.3779px;
  margin: 0 auto 42.7948px;
  overflow: hidden;
}

.movie iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* .about {
  height: 376px;
} */

.list {
  height: 1716px;
  background-image: url(../images/list_bg_pc.jpg);
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 1200px 1716px;
  line-height: 1.625;
  font-size: 24px;
  color: #314e58;
  white-space: nowrap;
}

.list_wrapper {
  padding-top: 397px;
  padding-left: 476.501px;
}

.list_item {
  z-index: 1;
  position: relative;
  padding-top: 18px;
}



.area01 {
  width: 100%;
  margin: 0 auto 18px;
  height: 72px;
}


.area02 {
  width: 100%;
  margin: 0 auto 18px;
  height: 73px;
}

.area03 {
  width: 100%;
  margin: 0 auto 18px;
  height: 274px;
}

.area04 {
  width: 100%;
  margin: 0 auto 18px;
  height: 191px;
}

.area05 {
  width: 100%;
  margin: 0 auto 18px;
  height: 105px;
}

.area06 {
  width: 100%;
  margin: 0 auto 18px;
  height: 105px;
}

.area07 {
  width: 100%;
  margin: 0 auto 18px;
  height: 105px;
}

.area08 {
  width: 100%;
  margin: 0 auto 18px;
  height: 104px;
}





.list_item::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: auto;
  left: -224px;
  width: 694px;
  background-repeat: no-repeat;
  z-index: -1;
}


.area01 .list_item::before {
  height: 72px;
  background: url(../images/list01_pc.jpg);
}


.area02 .list_item::before {
  height: 73px;
  background: url(../images/list02_pc.jpg);
}

.area03 .list_item::before {
  height: 274px;
  background: url(../images/list03_pc.jpg);
}

.area04 .list_item::before {
  height: 191px;
  background: url(../images/list04_pc.jpg);
}

.area05 .list_item::before {
  height: 105px;
  background: url(../images/list05_pc.jpg);
}

.area06 .list_item::before {
  height: 105px;
  background: url(../images/list06_pc.jpg);
}

.area07 .list_item::before {
  height: 105px;
  background: url(../images/list07_pc.jpg);
}

.area08 .list_item::before {
  height: 104px;
  background: url(../images/list08_pc.jpg);
}

.list_note {
  text-align: center;
}

/* ---  SP  --- */

@media screen and (max-width: 768px) {
  img {
    width: 100%;
  }

  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  .wrap {
    /* min-width: 375px; */
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .kv {
    width: 100%;
  }

  .movie {
    width: 94.13%;
    height: auto;
    aspect-ratio: 16/9;
    /* width: 340px;
    height: 191.25px; */
    margin: 0 auto;
    text-align: center;
  }

  .list {
    background-image: url(../images/bg2_sp.png);
    background-size: cover;
    background-position: center top;
    width: 100%;
    /* aspect-ratio: 375 / 2632; */
    /* font-size: 20px; */
    font-size: clamp(16px, 4vw, 20px);
    text-align: center;
    min-height: 1716px;
    height: 100%;
  }

  .list_wrapper {
    width: 100%;
    padding-top: calc(33 / 375 * 100vw);
    padding-left: 0;
    margin: auto;
    padding-bottom: calc(33 / 375 * 100vw);
  }

  .list_wrapper_inner {
    background-image: url(../images/school_box_bg.png);
    width: 100%;
    background-size: 100%;
    background-repeat: repeat-y;
  }


  .list_wrapper_inner img {

    width: 92%;
    margin: auto;
  }






  .area01 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area01 p {
    margin: 15px auto;
  }

  .area02 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area02 p {
    margin: 15px auto;
  }

  .area03 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area03 p {
    margin: 15px auto;
  }

  .area04 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area04 p {
    margin: 15px auto;
  }

  .area05 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area05 p {
    margin: 15px auto;
  }

  .area06 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area06 p {
    margin: 15px auto;
  }


  .area07 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area07 p {
    margin: 15px auto;
  }

  .area08 {
    width: 90%;
    margin: 0 auto 20px;
    height: auto;
  }

  .area08 p {
    margin: 15px auto;
  }

  .list_item {
    z-index: 1;
    position: static;
    padding-top: 0px;
  }


  .list_item::before {
    display: none;
  }

  .list_note {
    position: relative;
    padding-top: 8.5px;
    line-height: 1.4;
  }

  .list_note::before {
    content: "";
    position: absolute;
    top: 0;
    left: 10%;
    width: calc(291 / 375 * 100vw);
    height: 0.8px;
    background: #314e58;
  }

  span {
    font-size: 0.89em;
    letter-spacing: -0.1em;
    ;
  }
}