html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
}

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

strong, p, h1, h2, h3 {
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

html, body {
  height: 100%;
}

body {
  font-size: 15px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  color: #fff;
  background: url(../images/main-bg-deco.png) center top repeat, url(../images/main-bg.png) center top repeat, #16355c;
}

img {
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

a {
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
  text-decoration: none;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.font-noto {
  font-family: "Noto Serif JP", serif;
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}
header {
  position: fixed;
  top: 10px;
  left: 10px;
  width: calc(100% - 20px);
  height: 50px;
  background: #fff;
  z-index: 100;
  border-radius: 25px;
  transition: height 0.3s ease;
  box-shadow: 0 0 10px #505d68;
}
header::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: calc(100% - 8px);
  height: 44px;
  border-radius: 22px;
  border: solid 1px #3697b9;
  pointer-events: none;
}
header h1 {
  width: 133px;
  transition: opacity 0.3s;
}
header h1:hover {
  opacity: 0.5;
}
header nav {
  height: 100%;
}
@media screen and (max-width: 768px) {
  header nav {
    opacity: 0;
    pointer-events: none;
  }
}
header .menu-list {
  display: flex;
  height: 100%;
}
@media screen and (max-width: 768px) {
  header .menu-list {
    flex-direction: column;
    align-items: center;
    height: auto;
  }
}
header .menu-list .menu-item {
  position: relative;
  height: 100%;
  color: #16355c;
  z-index: 1;
}
header .menu-list .menu-item::before, header .menu-list .menu-item::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 50px;
  height: 30px;
  background: url(../images/menu-deco.png);
  background-size: 100% 100%;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  header .menu-list .menu-item::before {
    left: initial;
    right: calc(100% + 10px);
    transform: translate3d(0, -50%, 0);
  }
  header .menu-list .menu-item::after {
    left: calc(100% + 10px);
    transform: translate3d(0, -50%, 0);
  }
  header .menu-list .menu-item.active::before, header .menu-list .menu-item.active::after {
    opacity: 1;
  }
}
header .menu-list .menu-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 25px;
  height: 100%;
}
@media screen and (max-width: 768px) {
  header .menu-list .menu-item a {
    padding: 25px 0;
    font-size: 25px;
  }
}
header .menu-list .menu-item:hover::before {
  opacity: 0.5;
}
header .menu-button {
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 10px;
  right: 10px;
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 60px;
}
@media screen and (max-width: 768px) {
  header .menu-button {
    display: flex;
  }
}
header .menu-button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 54px;
  height: 54px;
  border: solid 2px #132d4e;
  border-radius: 60px;
  box-sizing: border-box;
}
header .menu-button .menu-button-line-container {
  position: relative;
  width: 30px;
  height: 21px;
  transition: height 0.3s 0.2s ease;
}
header .menu-button .menu-button-line-container .menu-button-line {
  position: absolute;
  width: 20px;
  height: 3px;
  background: #0086ec;
  transition: width 0.2s 0.3s ease, opacity 0.2s 0.3s, transform 0.3s ease;
}
header .menu-button .menu-button-line-container .menu-button-line:first-child {
  top: 0;
  left: 0;
}
header .menu-button .menu-button-line-container .menu-button-line:nth-of-type(2) {
  top: 50%;
  left: 0;
  transform: translate3d(0, -50%, 0);
  width: 30px;
}
header .menu-button .menu-button-line-container .menu-button-line:last-child {
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  header {
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: url(../images/bg-header.jpg) center center repeat, #fff;
    border-radius: 0;
  }
  header::before {
    display: none;
  }
  header.open {
    display: flex;
    flex-direction: column;
    height: 100dvh;
  }
  header.open nav {
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
    pointer-events: initial;
  }
  header.open .menu-button .menu-button-line-container {
    height: 3px;
    transition: height 0.3s ease;
  }
  header.open .menu-button .menu-button-line-container .menu-button-line {
    transition: width 0.2s ease, opacity 0.2s, transform 0.3s 0.2s ease;
  }
  header.open .menu-button .menu-button-line-container .menu-button-line:first-child {
    width: 30px;
    transform: rotate(-30deg);
  }
  header.open .menu-button .menu-button-line-container .menu-button-line:nth-of-type(2) {
    opacity: 0;
  }
  header.open .menu-button .menu-button-line-container .menu-button-line:last-child {
    width: 30px;
    transform: rotate(30deg);
  }
}

.home header {
  background: url(../images/header-deco.png) right center no-repeat, url(../images/header-deco.png) left center no-repeat, #fff;
}
.home header h1 {
  display: none;
}
@media screen and (max-width: 768px) {
  .home header.open h1 {
    display: block;
    margin: 52px auto 0;
    width: 250px;
  }
}
.home header .menu-list {
  justify-content: center;
}

body:not(.home) header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body:not(.home) header h1 {
  margin-left: 25px;
}
@media screen and (max-width: 768px) {
  body:not(.home) header h1 {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  body:not(.home) header.open h1 {
    display: block;
    margin: 52px auto 0;
    width: 250px;
  }
}

.firstview {
  position: relative;
}
@media screen and (max-width: 768px) {
  .firstview {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .firstview .keyvisual .sp {
    display: block;
  }
}
.firstview .fv-onair .sp {
  margin: 20px auto 0;
  max-width: 196px;
  width: 90%;
}
@media screen and (max-width: 768px) {
  .firstview .fv-onair .sp {
    display: block;
  }
}
.firstview .banner-container {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .firstview .banner-container {
    gap: 20px;
    position: relative;
    top: initial;
    left: initial;
    margin: 20px auto 0;
    width: 90%;
  }
}
.firstview .banner-container a {
  display: block;
  max-width: 346px;
  transition: opacity 0.3s;
}
.firstview .banner-container a:hover {
  opacity: 0.5;
}

section {
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  section {
    padding-top: 50px;
  }
}
section h2 {
  position: relative;
  margin: 0 auto 60px;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  section h2 {
    margin: 0 auto 30px;
  }
}
section h2::before, section h2::after {
  content: "";
  display: block;
  position: absolute;
  top: 52%;
  width: 50px;
  height: 30px;
  background: url(../images/menu-deco.png);
  background-size: 100% 100%;
}
@media screen and (max-width: 768px) {
  section h2::before, section h2::after {
    width: 37px;
    height: 24px;
  }
}
section h2::before {
  right: calc(100% + 20px);
  transform: translate3d(0, -50%, 0);
}
section h2::after {
  left: calc(100% + 20px);
  transform: translate3d(0, -50%, 0) rotate(180deg);
}
section h2 p {
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  section h2 p {
    font-size: 30px;
  }
}
section .section-contents {
  padding: 0 30px;
  margin: 0 auto;
  max-width: 860px;
}
@media screen and (max-width: 768px) {
  section .section-contents {
    padding: 0 5%;
  }
}

.common-frame {
  position: relative;
}
.common-frame::before, .common-frame::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  border: solid 2px #132d4e;
  z-index: 1;
  pointer-events: none;
}
.common-frame::before {
  width: calc(100% - 10px);
  height: 100%;
}
.common-frame::after {
  width: 100%;
  height: calc(100% - 10px);
}

.modaal-close {
  width: 60px;
  height: 60px;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .modaal-close {
    top: 10px;
    right: 10px;
  }
}
.modaal-close span {
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 54px !important;
  height: 54px !important;
  border: solid 2px #132d4e !important;
  border-radius: 30px;
  clip: initial;
}
.modaal-close::before, .modaal-close::after {
  top: 50%;
  left: 50%;
  width: 30px;
  height: 3px;
  background: #0086ec;
}
.modaal-close::before {
  transform: translate3d(-50%, -50%, 0) rotate(-30deg);
}
.modaal-close::after {
  transform: translate3d(-50%, -50%, 0) rotate(30deg);
}
.modaal-close:hover {
  opacity: 0.5;
}
.modaal-close:hover::before, .modaal-close:hover::after {
  background: #0086ec;
}

.modaal-wrapper .modaal-close {
  background: #fff;
}

.modaal-overlay {
  background: url(../images/main-bg.png) center top repeat, #16355c !important;
  opacity: 1 !important;
}

.modaal-container {
  background: none;
  box-shadow: none;
}

.common-button {
  width: 200px;
  height: 40px;
  transition: opacity 0.3s;
}
.common-button a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: url(../images/common-button.png);
  background-size: 100%;
}
.common-button a p {
  color: #0b2340;
  font-weight: 900;
}
.common-button:hover {
  opacity: 0.5;
}
.common-button.circle {
  width: 40px;
}
.common-button.circle a {
  position: relative;
  background: #fff;
  border-radius: 40px;
  z-index: 1;
  transition: color 0.3s, fill 0.3s;
}
.common-button.circle a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 36px;
  height: 36px;
  background: #132d4e;
  border: solid 2px #132d4e;
  border-radius: 40px;
  box-sizing: border-box;
  z-index: -1;
  transition: background 0.3s;
}
.common-button.circle a svg {
  fill: #fff;
  width: 9px;
  transition: fill 0.3s;
}
.common-button.circle:hover {
  opacity: 1;
}
.common-button.circle:hover a {
  color: #0b2340;
}
.common-button.circle:hover a::before {
  background: #fff;
}
.common-button.circle:hover a svg {
  fill: #0b2340;
}
.common-button.circle.active {
  pointer-events: none;
}
.common-button.circle.active a {
  color: #0b2340;
}
.common-button.circle.active a::before {
  background: #fff;
}
.common-button.circle.off {
  opacity: 0.3;
  pointer-events: none;
}

.section-movie .section-contents .pv-thumb {
  filter: brightness(0.7);
  transition: filter 0.3s;
}
.section-movie .section-contents .play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 112px;
  transition: opacity 0.3s;
}
.section-movie .section-contents .pv-modal:hover .pv-thumb {
  filter: brightness(0.5);
}
.section-movie .section-contents .pv-modal:hover .play-button {
  opacity: 0.5;
}

.pv-modal-wrapper .modaal-content-container {
  padding: 0;
}

.pv-modal-container {
  aspect-ratio: 16/9;
}
.pv-modal-container iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.section-news .news-list {
  position: relative;
  padding: 6px 0;
}
.section-news .news-list::before, .section-news .news-list::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background: #839bb8;
}
.section-news .news-list::before {
  top: 0;
}
.section-news .news-list:after {
  bottom: 0;
}
.section-news .news-list .news-item a {
  display: block;
  padding: 22px 0 20px;
  border-top: solid 2px #839bb8;
}
.section-news .news-list .news-item .date {
  margin-bottom: 5px;
}
.section-news .news-list .news-item p {
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .section-news .news-list .news-item p {
    font-size: 14px;
  }
}
.section-news .news-list .news-item:last-child a {
  padding-bottom: 22px;
  border-bottom: solid 2px #839bb8;
}
.section-news .news-list .news-item:hover p {
  opacity: 0.5;
}
.section-news .more-button {
  margin: 60px auto 0;
}
@media screen and (max-width: 768px) {
  .section-news .more-button {
    margin: 30px auto 0;
  }
}

.pagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 60px;
}
.pagination .num-button-container {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .pagination .num-button-container {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .pagination .num-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 175px;
    height: 40px;
    background: url(../images/bg-pagination.png);
    background-size: 100% 100%;
    color: #0b2340;
  }
}
.pagination .prev-button a {
  padding-right: 2px;
}
.pagination .next-button a {
  padding-left: 2px;
}
.pagination .next-button a svg {
  transform: scale(-1, 1);
}

.article .section-contents {
  position: relative;
  padding: 6px 30px 0;
}
@media screen and (max-width: 768px) {
  .article .section-contents {
    padding: 6px 5% 0;
  }
}
.article .section-contents::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  width: calc(100% - 60px);
  height: 4px;
  background: #839bb8;
}
@media screen and (max-width: 768px) {
  .article .section-contents::before {
    width: 90%;
  }
}
.article .section-contents .article-title {
  padding: 20px 0;
  margin-bottom: 30px;
  border-top: solid 2px #839bb8;
  border-bottom: solid 2px #839bb8;
}
.article .section-contents .article-title .title {
  font-size: 30px;
  font-weight: 900;
  line-height: 1.2em;
}
@media screen and (max-width: 768px) {
  .article .section-contents .article-title .title {
    font-size: 20px;
  }
}
.article .section-contents .article-text {
  position: relative;
  padding-bottom: 36px;
  border-bottom: solid 4px #839bb8;
}
.article .section-contents .article-text::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #839bb8;
}
.article .section-contents .article-text p {
  margin-bottom: 20px;
  text-align: justify;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .article .section-contents .article-text p {
    font-size: 14px;
  }
}
.article .section-contents .article-text p a {
  color: #00c8ff;
  font-weight: 900;
  text-decoration: underline;
  transition: opacity 0.3s;
}
.article .section-contents .article-text p a:hover {
  opacity: 0.5;
}
.article .section-contents .article-text h1 {
  margin-bottom: 20px;
  font-size: 25px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .article .section-contents .article-text h1 {
    font-size: 20px;
  }
}
.article .section-contents .article-text h2 {
  margin: 0 0 20px 0;
  font-size: 20px;
  font-weight: 900;
}
.article .section-contents .article-text h2::before, .article .section-contents .article-text h2::after {
  display: none;
}
@media screen and (max-width: 768px) {
  .article .section-contents .article-text h2 {
    font-size: 18px;
  }
}
.article .section-contents .article-text h3 {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .article .section-contents .article-text h3 {
    font-size: 16px;
  }
}
.article .section-contents .article-text img {
  margin: 0 auto 20px;
  max-width: 100%;
  width: auto;
}
.article .section-contents .article-text .yt {
  width: 100%;
  aspect-ratio: 16/9;
}
.article .section-contents .article-text .yt iframe {
  width: 100%;
  height: 100%;
}
.article .section-contents .article-text blockquote {
  padding: 20px;
  background: #23446e;
}
.article .section-contents .article-text blockquote *:last-child {
  margin-bottom: 0;
}
.article .section-contents .back-button {
  margin: 60px auto 0;
}

.section-introduction {
  margin-top: 100px;
  padding-bottom: 100px;
  background: url(../images/bg-introduction.jpg);
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .section-introduction {
    margin-top: 50px;
    padding-bottom: 50px;
  }
  .section-introduction h2 p {
    font-size: 25px;
  }
}
.section-introduction .section-contents p {
  margin-bottom: 2em;
  font-size: 20px;
  text-align: center;
  line-height: 1.75em;
}
@media screen and (max-width: 768px) {
  .section-introduction .section-contents p {
    font-size: 14px;
  }
  .section-introduction .section-contents p .sp {
    display: block;
  }
}
.section-introduction .section-contents p:last-child {
  margin: 0;
}

.section-character {
  padding-bottom: 130px;
  background: url(../images/bg-character.jpg) center center;
}
.section-character h2 {
  color: #16355c;
}
@media screen and (min-width: 1921px) {
  .section-character {
    background-size: cover;
  }
}
@media screen and (max-width: 768px) {
  .section-character {
    background-size: cover;
  }
}
.section-character .chara-icon-container .swiper-wrapper {
  justify-content: center;
}
.section-character .chara-icon {
  width: 50px;
  cursor: pointer;
}
.section-character .chara-icon img {
  filter: grayscale(1);
  transition: filter 0.3s;
}
.section-character .chara-icon:hover img {
  filter: grayscale(0);
}
.section-character .chara-icon.swiper-slide-thumb-active img {
  filter: grayscale(0);
}
.section-character .chara-profile {
  display: grid;
  grid-template-rows: max-content max-content 1fr;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "pic name" "pic profile" "pic space";
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile {
    grid-template-rows: max-content max-content 1fr;
    grid-template-columns: 1fr;
    grid-template-areas: "name" "pic" "profile";
  }
}
.section-character .chara-profile .chara-pic {
  grid-area: pic;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.section-character .chara-profile .chara-name {
  grid-area: name;
  padding: 40px 0 20px;
  border-bottom: solid 1px #839bb8;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile .chara-name {
    border: none;
  }
}
.section-character .chara-profile .chara-name .name {
  margin-bottom: 20px;
  font-size: 40px;
  font-weight: 900;
  color: #16355c;
}
.section-character .chara-profile .chara-name .name .ruby {
  font-size: 15px;
  letter-spacing: 0.4em;
}
.section-character .chara-profile .chara-name .cv {
  font-size: 20px;
  font-weight: 900;
  color: #16355c;
}
.section-character .chara-profile .chara-name .cv span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-right: 10px;
  width: 46px;
  height: 30px;
  font-size: 15px;
  color: #fff;
  background: url(../images/chara-cv-base.png);
  background-size: 100%;
}
.section-character .chara-profile .chara-text {
  grid-area: profile;
  margin-top: 30px;
  line-height: 1.75em;
  text-align: justify;
  color: #16355c;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile .chara-text {
    padding-top: 20px;
    font-size: 14px;
    border-top: solid 1px #839bb8;
  }
}
.section-character .chara-profile:nth-of-type(1) .chara-pic img {
  width: 272px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile:nth-of-type(1) .chara-pic img {
    width: 204px;
  }
}
.section-character .chara-profile:nth-of-type(2) .chara-pic img {
  width: 184px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile:nth-of-type(2) .chara-pic img {
    width: 138px;
  }
}
.section-character .chara-profile:nth-of-type(3) .chara-pic img {
  width: 276px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile:nth-of-type(3) .chara-pic img {
    width: 207px;
  }
}
.section-character .chara-profile:nth-of-type(4) .chara-pic img {
  width: 354px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile:nth-of-type(4) .chara-pic img {
    width: 265px;
  }
}
.section-character .chara-profile:nth-of-type(5) .chara-pic img {
  width: 380px;
}
@media screen and (max-width: 768px) {
  .section-character .chara-profile:nth-of-type(5) .chara-pic img {
    width: 301px;
  }
}

.section-staffcast {
  padding-bottom: 100px;
}
@media screen and (max-width: 768px) {
  .section-staffcast h2 p {
    font-size: 25px;
  }
}
.section-staffcast .sc-container {
  margin-bottom: 60px;
}
.section-staffcast .sc-container:last-child {
  margin: 0;
}
.section-staffcast .sc-container h3 {
  margin-bottom: 40px;
  font-size: 30px;
  font-weight: 900;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container h3 {
    font-size: 20px;
  }
}
.section-staffcast .sc-container .sc-list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 40px;
  column-gap: 30px;
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container .sc-list {
    column-gap: 20px;
  }
}
.section-staffcast .sc-container .sc-list .sc-item {
  width: calc(33% - 18px);
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container .sc-list .sc-item {
    width: calc(50% - 10px);
  }
}
.section-staffcast .sc-container .sc-list .sc-item .position {
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-weight: 900;
  border-bottom: solid 1px #839bb8;
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container .sc-list .sc-item .position {
    font-size: 14px;
  }
}
.section-staffcast .sc-container .sc-list .sc-item .name {
  font-size: 20px;
  font-weight: 900;
  line-height: 1.2em;
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container .sc-list .sc-item .name {
    font-size: 18px;
  }
  .section-staffcast .sc-container .sc-list .sc-item .name.long {
    font-size: 14px;
  }
}
.section-staffcast .sc-container .sc-list .sc-item .name span {
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .section-staffcast .sc-container .sc-list .sc-item .name span {
    font-size: 11px;
  }
}
.section-staffcast .sc-container .sc-list .sc-item .name .comment-modal {
  transition: opacity 0.3s;
}
.section-staffcast .sc-container .sc-list .sc-item .name .comment-modal img {
  width: 23px;
}
.section-staffcast .sc-container .sc-list .sc-item .name .comment-modal:hover {
  opacity: 0.5;
}
.section-staffcast .sc-container .sc-list .sc-item .name.comment {
  display: flex;
  align-items: center;
  gap: 10px;
}

@media screen and (max-width: 768px) {
  .comment-modal-wrapper .modaal-content-container {
    padding: 0;
  }
}
.comment-modal-wrapper .comment-box {
  display: none;
  gap: 30px;
}
@media screen and (max-width: 768px) {
  .comment-modal-wrapper .comment-box {
    flex-direction: column;
  }
}
.comment-modal-wrapper .comment-box.active {
  display: flex;
}
.comment-modal-wrapper .comment-box .comment-pic {
  width: calc(50% - 15px);
}
@media screen and (max-width: 768px) {
  .comment-modal-wrapper .comment-box .comment-pic {
    width: 100%;
  }
}
.comment-modal-wrapper .comment-box .comment-right {
  width: calc(50% - 15px);
}
@media screen and (max-width: 768px) {
  .comment-modal-wrapper .comment-box .comment-right {
    width: 100%;
  }
}
.comment-modal-wrapper .comment-box .comment-right .comment-name {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: solid 1px #839bb8;
}
.comment-modal-wrapper .comment-box .comment-right .position {
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 900;
  color: #fff;
}
.comment-modal-wrapper .comment-box .comment-right .name {
  font-size: 30px;
  font-weight: 900;
  color: #fff;
}
.comment-modal-wrapper .comment-box .comment-right .comment-text p {
  margin-bottom: 20px;
  color: #fff;
  text-align: justify;
  line-height: 1.75em;
}
@media screen and (max-width: 768px) {
  .comment-modal-wrapper .comment-box .comment-right .comment-text p {
    font-size: 14px;
  }
}
.comment-modal-wrapper .comment-box .comment-right .comment-text p.question {
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 900;
}

footer {
  padding: 60px 0;
  background: #071931;
}
footer .credit {
  font-size: 13px;
  text-align: center;
}

body:not(.home) footer {
  position: sticky;
  top: 100vh;
  z-index: -1;
  margin-top: 150px;
}
@media screen and (max-width: 768px) {
  body:not(.home) footer {
    margin-top: 75px;
  }
}

.loading {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  z-index: 10000;
  background: url(../images/main-bg.png) center top repeat, #16355c;
}
.loading .loading-logo {
  width: 400px;
}
@media screen and (max-width: 768px) {
  .loading .loading-logo {
    width: 260px;
  }
}/*# sourceMappingURL=style.css.map */