@charset "UTF-8";
@import url("../css/iconmonstr-iconic-font.css");
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* form parts */
input[type=checkbox], input[type=radio] {
  display: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

.m-0 {
  margin: 0rem !important;
}

.my-0 {
  margin: 0rem 0 !important;
}

.mx-0 {
  margin: 0 0rem !important;
}

.mt-0 {
  margin-top: 0rem !important;
}

.mb-0 {
  margin-bottom: 0rem !important;
}

.ml-0 {
  margin-left: 0rem !important;
}

.mr-0 {
  margin-right: 0rem !important;
}

.p-0 {
  padding: 0rem !important;
}

.py-0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}

.px-0 {
  padding-left: 0rem !important;
  padding-right: 0rem !important;
}

.pt-0 {
  padding-top: 0rem !important;
}

.pb-0 {
  padding-bottom: 0rem !important;
}

.pl-0 {
  padding-left: 0rem !important;
}

.pr-0 {
  padding-right: 0rem !important;
}

.m-0px {
  margin: 0px !important;
}

.my-0px {
  margin: 0px 0 !important;
}

.mx-0px {
  margin: 0 0px !important;
}

.mt-0px {
  margin-top: 0px !important;
}

.mb-0px {
  margin-bottom: 0px !important;
}

.ml-0px {
  margin-left: 0px !important;
}

.mr-0px {
  margin-right: 0px !important;
}

.p-0px {
  padding: 0px !important;
}

.py-0px {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.px-0px {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.pt-0px {
  padding-top: 0px !important;
}

.pb-0px {
  padding-bottom: 0px !important;
}

.pl-0px {
  padding-left: 0px !important;
}

.pr-0px {
  padding-right: 0px !important;
}

.m-5 {
  margin: 0.5rem !important;
}

.my-5 {
  margin: 0.5rem 0 !important;
}

.mx-5 {
  margin: 0 0.5rem !important;
}

.mt-5 {
  margin-top: 0.5rem !important;
}

.mb-5 {
  margin-bottom: 0.5rem !important;
}

.ml-5 {
  margin-left: 0.5rem !important;
}

.mr-5 {
  margin-right: 0.5rem !important;
}

.p-5 {
  padding: 0.5rem !important;
}

.py-5 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.px-5 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.pt-5 {
  padding-top: 0.5rem !important;
}

.pb-5 {
  padding-bottom: 0.5rem !important;
}

.pl-5 {
  padding-left: 0.5rem !important;
}

.pr-5 {
  padding-right: 0.5rem !important;
}

.m-5px {
  margin: 5px !important;
}

.my-5px {
  margin: 5px 0 !important;
}

.mx-5px {
  margin: 0 5px !important;
}

.mt-5px {
  margin-top: 5px !important;
}

.mb-5px {
  margin-bottom: 5px !important;
}

.ml-5px {
  margin-left: 5px !important;
}

.mr-5px {
  margin-right: 5px !important;
}

.p-5px {
  padding: 5px !important;
}

.py-5px {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.px-5px {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.pt-5px {
  padding-top: 5px !important;
}

.pb-5px {
  padding-bottom: 5px !important;
}

.pl-5px {
  padding-left: 5px !important;
}

.pr-5px {
  padding-right: 5px !important;
}

.m-10 {
  margin: 1rem !important;
}

.my-10 {
  margin: 1rem 0 !important;
}

.mx-10 {
  margin: 0 1rem !important;
}

.mt-10 {
  margin-top: 1rem !important;
}

.mb-10 {
  margin-bottom: 1rem !important;
}

.ml-10 {
  margin-left: 1rem !important;
}

.mr-10 {
  margin-right: 1rem !important;
}

.p-10 {
  padding: 1rem !important;
}

.py-10 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.px-10 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.pt-10 {
  padding-top: 1rem !important;
}

.pb-10 {
  padding-bottom: 1rem !important;
}

.pl-10 {
  padding-left: 1rem !important;
}

.pr-10 {
  padding-right: 1rem !important;
}

.m-10px {
  margin: 10px !important;
}

.my-10px {
  margin: 10px 0 !important;
}

.mx-10px {
  margin: 0 10px !important;
}

.mt-10px {
  margin-top: 10px !important;
}

.mb-10px {
  margin-bottom: 10px !important;
}

.ml-10px {
  margin-left: 10px !important;
}

.mr-10px {
  margin-right: 10px !important;
}

.p-10px {
  padding: 10px !important;
}

.py-10px {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.px-10px {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.pt-10px {
  padding-top: 10px !important;
}

.pb-10px {
  padding-bottom: 10px !important;
}

.pl-10px {
  padding-left: 10px !important;
}

.pr-10px {
  padding-right: 10px !important;
}

.m-15 {
  margin: 1.5rem !important;
}

.my-15 {
  margin: 1.5rem 0 !important;
}

.mx-15 {
  margin: 0 1.5rem !important;
}

.mt-15 {
  margin-top: 1.5rem !important;
}

.mb-15 {
  margin-bottom: 1.5rem !important;
}

.ml-15 {
  margin-left: 1.5rem !important;
}

.mr-15 {
  margin-right: 1.5rem !important;
}

.p-15 {
  padding: 1.5rem !important;
}

.py-15 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.px-15 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.pt-15 {
  padding-top: 1.5rem !important;
}

.pb-15 {
  padding-bottom: 1.5rem !important;
}

.pl-15 {
  padding-left: 1.5rem !important;
}

.pr-15 {
  padding-right: 1.5rem !important;
}

.m-15px {
  margin: 15px !important;
}

.my-15px {
  margin: 15px 0 !important;
}

.mx-15px {
  margin: 0 15px !important;
}

.mt-15px {
  margin-top: 15px !important;
}

.mb-15px {
  margin-bottom: 15px !important;
}

.ml-15px {
  margin-left: 15px !important;
}

.mr-15px {
  margin-right: 15px !important;
}

.p-15px {
  padding: 15px !important;
}

.py-15px {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.px-15px {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.pt-15px {
  padding-top: 15px !important;
}

.pb-15px {
  padding-bottom: 15px !important;
}

.pl-15px {
  padding-left: 15px !important;
}

.pr-15px {
  padding-right: 15px !important;
}

.m-20 {
  margin: 2rem !important;
}

.my-20 {
  margin: 2rem 0 !important;
}

.mx-20 {
  margin: 0 2rem !important;
}

.mt-20 {
  margin-top: 2rem !important;
}

.mb-20 {
  margin-bottom: 2rem !important;
}

.ml-20 {
  margin-left: 2rem !important;
}

.mr-20 {
  margin-right: 2rem !important;
}

.p-20 {
  padding: 2rem !important;
}

.py-20 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.px-20 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.pt-20 {
  padding-top: 2rem !important;
}

.pb-20 {
  padding-bottom: 2rem !important;
}

.pl-20 {
  padding-left: 2rem !important;
}

.pr-20 {
  padding-right: 2rem !important;
}

.m-20px {
  margin: 20px !important;
}

.my-20px {
  margin: 20px 0 !important;
}

.mx-20px {
  margin: 0 20px !important;
}

.mt-20px {
  margin-top: 20px !important;
}

.mb-20px {
  margin-bottom: 20px !important;
}

.ml-20px {
  margin-left: 20px !important;
}

.mr-20px {
  margin-right: 20px !important;
}

.p-20px {
  padding: 20px !important;
}

.py-20px {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.px-20px {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.pt-20px {
  padding-top: 20px !important;
}

.pb-20px {
  padding-bottom: 20px !important;
}

.pl-20px {
  padding-left: 20px !important;
}

.pr-20px {
  padding-right: 20px !important;
}

.m-25 {
  margin: 2.5rem !important;
}

.my-25 {
  margin: 2.5rem 0 !important;
}

.mx-25 {
  margin: 0 2.5rem !important;
}

.mt-25 {
  margin-top: 2.5rem !important;
}

.mb-25 {
  margin-bottom: 2.5rem !important;
}

.ml-25 {
  margin-left: 2.5rem !important;
}

.mr-25 {
  margin-right: 2.5rem !important;
}

.p-25 {
  padding: 2.5rem !important;
}

.py-25 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.px-25 {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}

.pt-25 {
  padding-top: 2.5rem !important;
}

.pb-25 {
  padding-bottom: 2.5rem !important;
}

.pl-25 {
  padding-left: 2.5rem !important;
}

.pr-25 {
  padding-right: 2.5rem !important;
}

.m-25px {
  margin: 25px !important;
}

.my-25px {
  margin: 25px 0 !important;
}

.mx-25px {
  margin: 0 25px !important;
}

.mt-25px {
  margin-top: 25px !important;
}

.mb-25px {
  margin-bottom: 25px !important;
}

.ml-25px {
  margin-left: 25px !important;
}

.mr-25px {
  margin-right: 25px !important;
}

.p-25px {
  padding: 25px !important;
}

.py-25px {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.px-25px {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.pt-25px {
  padding-top: 25px !important;
}

.pb-25px {
  padding-bottom: 25px !important;
}

.pl-25px {
  padding-left: 25px !important;
}

.pr-25px {
  padding-right: 25px !important;
}

.m-30 {
  margin: 3rem !important;
}

.my-30 {
  margin: 3rem 0 !important;
}

.mx-30 {
  margin: 0 3rem !important;
}

.mt-30 {
  margin-top: 3rem !important;
}

.mb-30 {
  margin-bottom: 3rem !important;
}

.ml-30 {
  margin-left: 3rem !important;
}

.mr-30 {
  margin-right: 3rem !important;
}

.p-30 {
  padding: 3rem !important;
}

.py-30 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.px-30 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.pt-30 {
  padding-top: 3rem !important;
}

.pb-30 {
  padding-bottom: 3rem !important;
}

.pl-30 {
  padding-left: 3rem !important;
}

.pr-30 {
  padding-right: 3rem !important;
}

.m-30px {
  margin: 30px !important;
}

.my-30px {
  margin: 30px 0 !important;
}

.mx-30px {
  margin: 0 30px !important;
}

.mt-30px {
  margin-top: 30px !important;
}

.mb-30px {
  margin-bottom: 30px !important;
}

.ml-30px {
  margin-left: 30px !important;
}

.mr-30px {
  margin-right: 30px !important;
}

.p-30px {
  padding: 30px !important;
}

.py-30px {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.px-30px {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.pt-30px {
  padding-top: 30px !important;
}

.pb-30px {
  padding-bottom: 30px !important;
}

.pl-30px {
  padding-left: 30px !important;
}

.pr-30px {
  padding-right: 30px !important;
}

.m-35 {
  margin: 3.5rem !important;
}

.my-35 {
  margin: 3.5rem 0 !important;
}

.mx-35 {
  margin: 0 3.5rem !important;
}

.mt-35 {
  margin-top: 3.5rem !important;
}

.mb-35 {
  margin-bottom: 3.5rem !important;
}

.ml-35 {
  margin-left: 3.5rem !important;
}

.mr-35 {
  margin-right: 3.5rem !important;
}

.p-35 {
  padding: 3.5rem !important;
}

.py-35 {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}

.px-35 {
  padding-left: 3.5rem !important;
  padding-right: 3.5rem !important;
}

.pt-35 {
  padding-top: 3.5rem !important;
}

.pb-35 {
  padding-bottom: 3.5rem !important;
}

.pl-35 {
  padding-left: 3.5rem !important;
}

.pr-35 {
  padding-right: 3.5rem !important;
}

.m-35px {
  margin: 35px !important;
}

.my-35px {
  margin: 35px 0 !important;
}

.mx-35px {
  margin: 0 35px !important;
}

.mt-35px {
  margin-top: 35px !important;
}

.mb-35px {
  margin-bottom: 35px !important;
}

.ml-35px {
  margin-left: 35px !important;
}

.mr-35px {
  margin-right: 35px !important;
}

.p-35px {
  padding: 35px !important;
}

.py-35px {
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}

.px-35px {
  padding-left: 35px !important;
  padding-right: 35px !important;
}

.pt-35px {
  padding-top: 35px !important;
}

.pb-35px {
  padding-bottom: 35px !important;
}

.pl-35px {
  padding-left: 35px !important;
}

.pr-35px {
  padding-right: 35px !important;
}

.m-40 {
  margin: 4rem !important;
}

.my-40 {
  margin: 4rem 0 !important;
}

.mx-40 {
  margin: 0 4rem !important;
}

.mt-40 {
  margin-top: 4rem !important;
}

.mb-40 {
  margin-bottom: 4rem !important;
}

.ml-40 {
  margin-left: 4rem !important;
}

.mr-40 {
  margin-right: 4rem !important;
}

.p-40 {
  padding: 4rem !important;
}

.py-40 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.px-40 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.pt-40 {
  padding-top: 4rem !important;
}

.pb-40 {
  padding-bottom: 4rem !important;
}

.pl-40 {
  padding-left: 4rem !important;
}

.pr-40 {
  padding-right: 4rem !important;
}

.m-40px {
  margin: 40px !important;
}

.my-40px {
  margin: 40px 0 !important;
}

.mx-40px {
  margin: 0 40px !important;
}

.mt-40px {
  margin-top: 40px !important;
}

.mb-40px {
  margin-bottom: 40px !important;
}

.ml-40px {
  margin-left: 40px !important;
}

.mr-40px {
  margin-right: 40px !important;
}

.p-40px {
  padding: 40px !important;
}

.py-40px {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.px-40px {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.pt-40px {
  padding-top: 40px !important;
}

.pb-40px {
  padding-bottom: 40px !important;
}

.pl-40px {
  padding-left: 40px !important;
}

.pr-40px {
  padding-right: 40px !important;
}

.m-45 {
  margin: 4.5rem !important;
}

.my-45 {
  margin: 4.5rem 0 !important;
}

.mx-45 {
  margin: 0 4.5rem !important;
}

.mt-45 {
  margin-top: 4.5rem !important;
}

.mb-45 {
  margin-bottom: 4.5rem !important;
}

.ml-45 {
  margin-left: 4.5rem !important;
}

.mr-45 {
  margin-right: 4.5rem !important;
}

.p-45 {
  padding: 4.5rem !important;
}

.py-45 {
  padding-top: 4.5rem !important;
  padding-bottom: 4.5rem !important;
}

.px-45 {
  padding-left: 4.5rem !important;
  padding-right: 4.5rem !important;
}

.pt-45 {
  padding-top: 4.5rem !important;
}

.pb-45 {
  padding-bottom: 4.5rem !important;
}

.pl-45 {
  padding-left: 4.5rem !important;
}

.pr-45 {
  padding-right: 4.5rem !important;
}

.m-45px {
  margin: 45px !important;
}

.my-45px {
  margin: 45px 0 !important;
}

.mx-45px {
  margin: 0 45px !important;
}

.mt-45px {
  margin-top: 45px !important;
}

.mb-45px {
  margin-bottom: 45px !important;
}

.ml-45px {
  margin-left: 45px !important;
}

.mr-45px {
  margin-right: 45px !important;
}

.p-45px {
  padding: 45px !important;
}

.py-45px {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
}

.px-45px {
  padding-left: 45px !important;
  padding-right: 45px !important;
}

.pt-45px {
  padding-top: 45px !important;
}

.pb-45px {
  padding-bottom: 45px !important;
}

.pl-45px {
  padding-left: 45px !important;
}

.pr-45px {
  padding-right: 45px !important;
}

.m-50 {
  margin: 5rem !important;
}

.my-50 {
  margin: 5rem 0 !important;
}

.mx-50 {
  margin: 0 5rem !important;
}

.mt-50 {
  margin-top: 5rem !important;
}

.mb-50 {
  margin-bottom: 5rem !important;
}

.ml-50 {
  margin-left: 5rem !important;
}

.mr-50 {
  margin-right: 5rem !important;
}

.p-50 {
  padding: 5rem !important;
}

.py-50 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

.px-50 {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.pt-50 {
  padding-top: 5rem !important;
}

.pb-50 {
  padding-bottom: 5rem !important;
}

.pl-50 {
  padding-left: 5rem !important;
}

.pr-50 {
  padding-right: 5rem !important;
}

.m-50px {
  margin: 50px !important;
}

.my-50px {
  margin: 50px 0 !important;
}

.mx-50px {
  margin: 0 50px !important;
}

.mt-50px {
  margin-top: 50px !important;
}

.mb-50px {
  margin-bottom: 50px !important;
}

.ml-50px {
  margin-left: 50px !important;
}

.mr-50px {
  margin-right: 50px !important;
}

.p-50px {
  padding: 50px !important;
}

.py-50px {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.px-50px {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

.pt-50px {
  padding-top: 50px !important;
}

.pb-50px {
  padding-bottom: 50px !important;
}

.pl-50px {
  padding-left: 50px !important;
}

.pr-50px {
  padding-right: 50px !important;
}

.m-55 {
  margin: 5.5rem !important;
}

.my-55 {
  margin: 5.5rem 0 !important;
}

.mx-55 {
  margin: 0 5.5rem !important;
}

.mt-55 {
  margin-top: 5.5rem !important;
}

.mb-55 {
  margin-bottom: 5.5rem !important;
}

.ml-55 {
  margin-left: 5.5rem !important;
}

.mr-55 {
  margin-right: 5.5rem !important;
}

.p-55 {
  padding: 5.5rem !important;
}

.py-55 {
  padding-top: 5.5rem !important;
  padding-bottom: 5.5rem !important;
}

.px-55 {
  padding-left: 5.5rem !important;
  padding-right: 5.5rem !important;
}

.pt-55 {
  padding-top: 5.5rem !important;
}

.pb-55 {
  padding-bottom: 5.5rem !important;
}

.pl-55 {
  padding-left: 5.5rem !important;
}

.pr-55 {
  padding-right: 5.5rem !important;
}

.m-55px {
  margin: 55px !important;
}

.my-55px {
  margin: 55px 0 !important;
}

.mx-55px {
  margin: 0 55px !important;
}

.mt-55px {
  margin-top: 55px !important;
}

.mb-55px {
  margin-bottom: 55px !important;
}

.ml-55px {
  margin-left: 55px !important;
}

.mr-55px {
  margin-right: 55px !important;
}

.p-55px {
  padding: 55px !important;
}

.py-55px {
  padding-top: 55px !important;
  padding-bottom: 55px !important;
}

.px-55px {
  padding-left: 55px !important;
  padding-right: 55px !important;
}

.pt-55px {
  padding-top: 55px !important;
}

.pb-55px {
  padding-bottom: 55px !important;
}

.pl-55px {
  padding-left: 55px !important;
}

.pr-55px {
  padding-right: 55px !important;
}

.m-60 {
  margin: 6rem !important;
}

.my-60 {
  margin: 6rem 0 !important;
}

.mx-60 {
  margin: 0 6rem !important;
}

.mt-60 {
  margin-top: 6rem !important;
}

.mb-60 {
  margin-bottom: 6rem !important;
}

.ml-60 {
  margin-left: 6rem !important;
}

.mr-60 {
  margin-right: 6rem !important;
}

.p-60 {
  padding: 6rem !important;
}

.py-60 {
  padding-top: 6rem !important;
  padding-bottom: 6rem !important;
}

.px-60 {
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}

.pt-60 {
  padding-top: 6rem !important;
}

.pb-60 {
  padding-bottom: 6rem !important;
}

.pl-60 {
  padding-left: 6rem !important;
}

.pr-60 {
  padding-right: 6rem !important;
}

.m-60px {
  margin: 60px !important;
}

.my-60px {
  margin: 60px 0 !important;
}

.mx-60px {
  margin: 0 60px !important;
}

.mt-60px {
  margin-top: 60px !important;
}

.mb-60px {
  margin-bottom: 60px !important;
}

.ml-60px {
  margin-left: 60px !important;
}

.mr-60px {
  margin-right: 60px !important;
}

.p-60px {
  padding: 60px !important;
}

.py-60px {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.px-60px {
  padding-left: 60px !important;
  padding-right: 60px !important;
}

.pt-60px {
  padding-top: 60px !important;
}

.pb-60px {
  padding-bottom: 60px !important;
}

.pl-60px {
  padding-left: 60px !important;
}

.pr-60px {
  padding-right: 60px !important;
}

.m-65 {
  margin: 6.5rem !important;
}

.my-65 {
  margin: 6.5rem 0 !important;
}

.mx-65 {
  margin: 0 6.5rem !important;
}

.mt-65 {
  margin-top: 6.5rem !important;
}

.mb-65 {
  margin-bottom: 6.5rem !important;
}

.ml-65 {
  margin-left: 6.5rem !important;
}

.mr-65 {
  margin-right: 6.5rem !important;
}

.p-65 {
  padding: 6.5rem !important;
}

.py-65 {
  padding-top: 6.5rem !important;
  padding-bottom: 6.5rem !important;
}

.px-65 {
  padding-left: 6.5rem !important;
  padding-right: 6.5rem !important;
}

.pt-65 {
  padding-top: 6.5rem !important;
}

.pb-65 {
  padding-bottom: 6.5rem !important;
}

.pl-65 {
  padding-left: 6.5rem !important;
}

.pr-65 {
  padding-right: 6.5rem !important;
}

.m-65px {
  margin: 65px !important;
}

.my-65px {
  margin: 65px 0 !important;
}

.mx-65px {
  margin: 0 65px !important;
}

.mt-65px {
  margin-top: 65px !important;
}

.mb-65px {
  margin-bottom: 65px !important;
}

.ml-65px {
  margin-left: 65px !important;
}

.mr-65px {
  margin-right: 65px !important;
}

.p-65px {
  padding: 65px !important;
}

.py-65px {
  padding-top: 65px !important;
  padding-bottom: 65px !important;
}

.px-65px {
  padding-left: 65px !important;
  padding-right: 65px !important;
}

.pt-65px {
  padding-top: 65px !important;
}

.pb-65px {
  padding-bottom: 65px !important;
}

.pl-65px {
  padding-left: 65px !important;
}

.pr-65px {
  padding-right: 65px !important;
}

.m-70 {
  margin: 7rem !important;
}

.my-70 {
  margin: 7rem 0 !important;
}

.mx-70 {
  margin: 0 7rem !important;
}

.mt-70 {
  margin-top: 7rem !important;
}

.mb-70 {
  margin-bottom: 7rem !important;
}

.ml-70 {
  margin-left: 7rem !important;
}

.mr-70 {
  margin-right: 7rem !important;
}

.p-70 {
  padding: 7rem !important;
}

.py-70 {
  padding-top: 7rem !important;
  padding-bottom: 7rem !important;
}

.px-70 {
  padding-left: 7rem !important;
  padding-right: 7rem !important;
}

.pt-70 {
  padding-top: 7rem !important;
}

.pb-70 {
  padding-bottom: 7rem !important;
}

.pl-70 {
  padding-left: 7rem !important;
}

.pr-70 {
  padding-right: 7rem !important;
}

.m-70px {
  margin: 70px !important;
}

.my-70px {
  margin: 70px 0 !important;
}

.mx-70px {
  margin: 0 70px !important;
}

.mt-70px {
  margin-top: 70px !important;
}

.mb-70px {
  margin-bottom: 70px !important;
}

.ml-70px {
  margin-left: 70px !important;
}

.mr-70px {
  margin-right: 70px !important;
}

.p-70px {
  padding: 70px !important;
}

.py-70px {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.px-70px {
  padding-left: 70px !important;
  padding-right: 70px !important;
}

.pt-70px {
  padding-top: 70px !important;
}

.pb-70px {
  padding-bottom: 70px !important;
}

.pl-70px {
  padding-left: 70px !important;
}

.pr-70px {
  padding-right: 70px !important;
}

.m-75 {
  margin: 7.5rem !important;
}

.my-75 {
  margin: 7.5rem 0 !important;
}

.mx-75 {
  margin: 0 7.5rem !important;
}

.mt-75 {
  margin-top: 7.5rem !important;
}

.mb-75 {
  margin-bottom: 7.5rem !important;
}

.ml-75 {
  margin-left: 7.5rem !important;
}

.mr-75 {
  margin-right: 7.5rem !important;
}

.p-75 {
  padding: 7.5rem !important;
}

.py-75 {
  padding-top: 7.5rem !important;
  padding-bottom: 7.5rem !important;
}

.px-75 {
  padding-left: 7.5rem !important;
  padding-right: 7.5rem !important;
}

.pt-75 {
  padding-top: 7.5rem !important;
}

.pb-75 {
  padding-bottom: 7.5rem !important;
}

.pl-75 {
  padding-left: 7.5rem !important;
}

.pr-75 {
  padding-right: 7.5rem !important;
}

.m-75px {
  margin: 75px !important;
}

.my-75px {
  margin: 75px 0 !important;
}

.mx-75px {
  margin: 0 75px !important;
}

.mt-75px {
  margin-top: 75px !important;
}

.mb-75px {
  margin-bottom: 75px !important;
}

.ml-75px {
  margin-left: 75px !important;
}

.mr-75px {
  margin-right: 75px !important;
}

.p-75px {
  padding: 75px !important;
}

.py-75px {
  padding-top: 75px !important;
  padding-bottom: 75px !important;
}

.px-75px {
  padding-left: 75px !important;
  padding-right: 75px !important;
}

.pt-75px {
  padding-top: 75px !important;
}

.pb-75px {
  padding-bottom: 75px !important;
}

.pl-75px {
  padding-left: 75px !important;
}

.pr-75px {
  padding-right: 75px !important;
}

.m-80 {
  margin: 8rem !important;
}

.my-80 {
  margin: 8rem 0 !important;
}

.mx-80 {
  margin: 0 8rem !important;
}

.mt-80 {
  margin-top: 8rem !important;
}

.mb-80 {
  margin-bottom: 8rem !important;
}

.ml-80 {
  margin-left: 8rem !important;
}

.mr-80 {
  margin-right: 8rem !important;
}

.p-80 {
  padding: 8rem !important;
}

.py-80 {
  padding-top: 8rem !important;
  padding-bottom: 8rem !important;
}

.px-80 {
  padding-left: 8rem !important;
  padding-right: 8rem !important;
}

.pt-80 {
  padding-top: 8rem !important;
}

.pb-80 {
  padding-bottom: 8rem !important;
}

.pl-80 {
  padding-left: 8rem !important;
}

.pr-80 {
  padding-right: 8rem !important;
}

.m-80px {
  margin: 80px !important;
}

.my-80px {
  margin: 80px 0 !important;
}

.mx-80px {
  margin: 0 80px !important;
}

.mt-80px {
  margin-top: 80px !important;
}

.mb-80px {
  margin-bottom: 80px !important;
}

.ml-80px {
  margin-left: 80px !important;
}

.mr-80px {
  margin-right: 80px !important;
}

.p-80px {
  padding: 80px !important;
}

.py-80px {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.px-80px {
  padding-left: 80px !important;
  padding-right: 80px !important;
}

.pt-80px {
  padding-top: 80px !important;
}

.pb-80px {
  padding-bottom: 80px !important;
}

.pl-80px {
  padding-left: 80px !important;
}

.pr-80px {
  padding-right: 80px !important;
}

.m-85 {
  margin: 8.5rem !important;
}

.my-85 {
  margin: 8.5rem 0 !important;
}

.mx-85 {
  margin: 0 8.5rem !important;
}

.mt-85 {
  margin-top: 8.5rem !important;
}

.mb-85 {
  margin-bottom: 8.5rem !important;
}

.ml-85 {
  margin-left: 8.5rem !important;
}

.mr-85 {
  margin-right: 8.5rem !important;
}

.p-85 {
  padding: 8.5rem !important;
}

.py-85 {
  padding-top: 8.5rem !important;
  padding-bottom: 8.5rem !important;
}

.px-85 {
  padding-left: 8.5rem !important;
  padding-right: 8.5rem !important;
}

.pt-85 {
  padding-top: 8.5rem !important;
}

.pb-85 {
  padding-bottom: 8.5rem !important;
}

.pl-85 {
  padding-left: 8.5rem !important;
}

.pr-85 {
  padding-right: 8.5rem !important;
}

.m-85px {
  margin: 85px !important;
}

.my-85px {
  margin: 85px 0 !important;
}

.mx-85px {
  margin: 0 85px !important;
}

.mt-85px {
  margin-top: 85px !important;
}

.mb-85px {
  margin-bottom: 85px !important;
}

.ml-85px {
  margin-left: 85px !important;
}

.mr-85px {
  margin-right: 85px !important;
}

.p-85px {
  padding: 85px !important;
}

.py-85px {
  padding-top: 85px !important;
  padding-bottom: 85px !important;
}

.px-85px {
  padding-left: 85px !important;
  padding-right: 85px !important;
}

.pt-85px {
  padding-top: 85px !important;
}

.pb-85px {
  padding-bottom: 85px !important;
}

.pl-85px {
  padding-left: 85px !important;
}

.pr-85px {
  padding-right: 85px !important;
}

.m-90 {
  margin: 9rem !important;
}

.my-90 {
  margin: 9rem 0 !important;
}

.mx-90 {
  margin: 0 9rem !important;
}

.mt-90 {
  margin-top: 9rem !important;
}

.mb-90 {
  margin-bottom: 9rem !important;
}

.ml-90 {
  margin-left: 9rem !important;
}

.mr-90 {
  margin-right: 9rem !important;
}

.p-90 {
  padding: 9rem !important;
}

.py-90 {
  padding-top: 9rem !important;
  padding-bottom: 9rem !important;
}

.px-90 {
  padding-left: 9rem !important;
  padding-right: 9rem !important;
}

.pt-90 {
  padding-top: 9rem !important;
}

.pb-90 {
  padding-bottom: 9rem !important;
}

.pl-90 {
  padding-left: 9rem !important;
}

.pr-90 {
  padding-right: 9rem !important;
}

.m-90px {
  margin: 90px !important;
}

.my-90px {
  margin: 90px 0 !important;
}

.mx-90px {
  margin: 0 90px !important;
}

.mt-90px {
  margin-top: 90px !important;
}

.mb-90px {
  margin-bottom: 90px !important;
}

.ml-90px {
  margin-left: 90px !important;
}

.mr-90px {
  margin-right: 90px !important;
}

.p-90px {
  padding: 90px !important;
}

.py-90px {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

.px-90px {
  padding-left: 90px !important;
  padding-right: 90px !important;
}

.pt-90px {
  padding-top: 90px !important;
}

.pb-90px {
  padding-bottom: 90px !important;
}

.pl-90px {
  padding-left: 90px !important;
}

.pr-90px {
  padding-right: 90px !important;
}

.m-95 {
  margin: 9.5rem !important;
}

.my-95 {
  margin: 9.5rem 0 !important;
}

.mx-95 {
  margin: 0 9.5rem !important;
}

.mt-95 {
  margin-top: 9.5rem !important;
}

.mb-95 {
  margin-bottom: 9.5rem !important;
}

.ml-95 {
  margin-left: 9.5rem !important;
}

.mr-95 {
  margin-right: 9.5rem !important;
}

.p-95 {
  padding: 9.5rem !important;
}

.py-95 {
  padding-top: 9.5rem !important;
  padding-bottom: 9.5rem !important;
}

.px-95 {
  padding-left: 9.5rem !important;
  padding-right: 9.5rem !important;
}

.pt-95 {
  padding-top: 9.5rem !important;
}

.pb-95 {
  padding-bottom: 9.5rem !important;
}

.pl-95 {
  padding-left: 9.5rem !important;
}

.pr-95 {
  padding-right: 9.5rem !important;
}

.m-95px {
  margin: 95px !important;
}

.my-95px {
  margin: 95px 0 !important;
}

.mx-95px {
  margin: 0 95px !important;
}

.mt-95px {
  margin-top: 95px !important;
}

.mb-95px {
  margin-bottom: 95px !important;
}

.ml-95px {
  margin-left: 95px !important;
}

.mr-95px {
  margin-right: 95px !important;
}

.p-95px {
  padding: 95px !important;
}

.py-95px {
  padding-top: 95px !important;
  padding-bottom: 95px !important;
}

.px-95px {
  padding-left: 95px !important;
  padding-right: 95px !important;
}

.pt-95px {
  padding-top: 95px !important;
}

.pb-95px {
  padding-bottom: 95px !important;
}

.pl-95px {
  padding-left: 95px !important;
}

.pr-95px {
  padding-right: 95px !important;
}

.m-100 {
  margin: 10rem !important;
}

.my-100 {
  margin: 10rem 0 !important;
}

.mx-100 {
  margin: 0 10rem !important;
}

.mt-100 {
  margin-top: 10rem !important;
}

.mb-100 {
  margin-bottom: 10rem !important;
}

.ml-100 {
  margin-left: 10rem !important;
}

.mr-100 {
  margin-right: 10rem !important;
}

.p-100 {
  padding: 10rem !important;
}

.py-100 {
  padding-top: 10rem !important;
  padding-bottom: 10rem !important;
}

.px-100 {
  padding-left: 10rem !important;
  padding-right: 10rem !important;
}

.pt-100 {
  padding-top: 10rem !important;
}

.pb-100 {
  padding-bottom: 10rem !important;
}

.pl-100 {
  padding-left: 10rem !important;
}

.pr-100 {
  padding-right: 10rem !important;
}

.m-100px {
  margin: 100px !important;
}

.my-100px {
  margin: 100px 0 !important;
}

.mx-100px {
  margin: 0 100px !important;
}

.mt-100px {
  margin-top: 100px !important;
}

.mb-100px {
  margin-bottom: 100px !important;
}

.ml-100px {
  margin-left: 100px !important;
}

.mr-100px {
  margin-right: 100px !important;
}

.p-100px {
  padding: 100px !important;
}

.py-100px {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

.px-100px {
  padding-left: 100px !important;
  padding-right: 100px !important;
}

.pt-100px {
  padding-top: 100px !important;
}

.pb-100px {
  padding-bottom: 100px !important;
}

.pl-100px {
  padding-left: 100px !important;
}

.pr-100px {
  padding-right: 100px !important;
}

.wid-0 {
  width: 0% !important;
}

.wid-2 {
  width: 2% !important;
}

.wid-4 {
  width: 4% !important;
}

.wid-6 {
  width: 6% !important;
}

.wid-8 {
  width: 8% !important;
}

.wid-10 {
  width: 10% !important;
}

.wid-12 {
  width: 12% !important;
}

.wid-14 {
  width: 14% !important;
}

.wid-16 {
  width: 16% !important;
}

.wid-18 {
  width: 18% !important;
}

.wid-20 {
  width: 20% !important;
}

.wid-22 {
  width: 22% !important;
}

.wid-24 {
  width: 24% !important;
}

.wid-26 {
  width: 26% !important;
}

.wid-28 {
  width: 28% !important;
}

.wid-30 {
  width: 30% !important;
}

.wid-32 {
  width: 32% !important;
}

.wid-34 {
  width: 34% !important;
}

.wid-36 {
  width: 36% !important;
}

.wid-38 {
  width: 38% !important;
}

.wid-40 {
  width: 40% !important;
}

.wid-42 {
  width: 42% !important;
}

.wid-44 {
  width: 44% !important;
}

.wid-46 {
  width: 46% !important;
}

.wid-48 {
  width: 48% !important;
}

.wid-50 {
  width: 50% !important;
}

.wid-52 {
  width: 52% !important;
}

.wid-54 {
  width: 54% !important;
}

.wid-56 {
  width: 56% !important;
}

.wid-58 {
  width: 58% !important;
}

.wid-60 {
  width: 60% !important;
}

.wid-62 {
  width: 62% !important;
}

.wid-64 {
  width: 64% !important;
}

.wid-66 {
  width: 66% !important;
}

.wid-68 {
  width: 68% !important;
}

.wid-70 {
  width: 70% !important;
}

.wid-72 {
  width: 72% !important;
}

.wid-74 {
  width: 74% !important;
}

.wid-76 {
  width: 76% !important;
}

.wid-78 {
  width: 78% !important;
}

.wid-80 {
  width: 80% !important;
}

.wid-82 {
  width: 82% !important;
}

.wid-84 {
  width: 84% !important;
}

.wid-86 {
  width: 86% !important;
}

.wid-88 {
  width: 88% !important;
}

.wid-90 {
  width: 90% !important;
}

.wid-92 {
  width: 92% !important;
}

.wid-94 {
  width: 94% !important;
}

.wid-96 {
  width: 96% !important;
}

.wid-98 {
  width: 98% !important;
}

.wid-100 {
  width: 100% !important;
}

.mb0 {
  margin-bottom: 0;
}

.mt0 {
  margin-top: 0;
}

.hide {
  display: none;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.tal {
  text-align: left !important;
}

.ma {
  margin-right: auto !important;
  margin-left: auto !important;
}

.mra {
  margin-right: auto !important;
}

.mla {
  margin-left: auto !important;
}

.bslr {
  padding-left: 15px;
  padding-right: 15px;
}

a.link {
  display: inline-block;
}

.indentleft {
  padding-left: 1.5rem;
  text-indent: -1.5rem;
}

.clr3 {
  color: #A93145;
}

.fadein_sakurachara {
  animation: fadein_sakuramain 3s ease 2.5s forwards;
}

.fadein_sakuracap {
  animation: fadein_sakuramain 3s ease 5s forwards;
}

@keyframes anime_akaixkuroda {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anime_black {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anime_catch {
  0% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 1;
    top: 5%;
  }
}
@keyframes anime_catch_ky {
  0% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 1;
    top: 4%;
  }
}
@keyframes anime_catch_ky_kid {
  0% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 1;
    top: 2%;
  }
}
@keyframes anime_copy {
  0% {
    opacity: 0;
    top: 0;
  }
  100% {
    opacity: 1;
    top: 1%;
  }
}
@keyframes anime_logo {
  0% {
    opacity: 0;
    bottom: 10%;
  }
  100% {
    opacity: 1;
    bottom: 10%;
  }
}
@keyframes anime_logo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#loading {
  background: rgb(5, 11, 33);
  background: linear-gradient(-45deg, rgb(5, 11, 33) 0%, rgb(5, 27, 40) 50%, rgb(1, 7, 5) 100%);
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 11000;
}
#loading #loading_img {
  position: relative;
  width: 100%;
  font-size: 1.4rem;
  color: #ababab;
  text-align: center;
}
#loading #loading_img .goryo {
  position: absolute;
  width: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#loading #loading_img .loading_txt {
  width: 50%;
  position: relative;
}
#loading #loading_img .loadingbox {
  position: relative;
  height: 20px;
  margin: auto;
  width: 90px;
  font-family: goudy-old-style, serif;
}
#loading #loading_img .loadingbox .loadingtxt {
  text-align: left;
  display: inline-block;
  margin: auto;
  width: 100%;
}

#header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 20px 0;
  display: flex;
  flex-wrap: wrap;
  background: rgb(5, 27, 40);
  background: linear-gradient(180deg, rgb(5, 27, 40) 0%, rgb(5, 27, 40) 20%, rgba(5, 27, 40, 0) 100%);
  justify-content: center;
  align-items: center;
  z-index: 1000;
  height: 60px;
  /*#logo.logosmall {
    width: 110px!important;
    height: 40px!important;
    margin-left: -55px!important;
  }*/
}
#header #title_teaser {
  width: 60%;
  text-align: center;
}
#header #title_teaser img {
  width: 100%;
  max-width: 600px;
}
#header #logo {
  width: 60vw !important;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-55%, -50%);
  transition: all 300ms 0s ease;
  z-index: 10000;
}
#header .headersmall #header_in {
  height: 10vw;
}
#header .headersmall #logo {
  width: 45vw !important;
}

#spMenu {
  display: block;
  position: absolute;
  z-index: 1000;
  position: fixed;
  top: 32px;
  right: 10px;
  transform: translateY(-50%);
}

.menu-trigger-circle {
  padding: 0px 0px;
  width: 25px;
  height: 12px;
  top: 20px;
  transform: translateY(-50%);
  /*background: #003e77;*/
  /*border-radius: 20px;
  -webkit-border-radius: 20px;*/
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  width: 25px;
  height: 12px;
}

.menu-trigger span {
  position: absolute;
  right: 0;
  width: 100%;
  height: 2px;
  /*background: url(../img/burger_line.png) no-repeat center center;
  background-size:cover;*/
  background: rgb(230, 222, 143);
  background: linear-gradient(0deg, rgb(230, 222, 143) 0%, rgb(154, 125, 9) 100%);
  border-radius: 3px;
}

.menu-trigger.active span {
  background-color: #ffffff;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

/*.menu-trigger span:nth-of-type(2) {
  top: 8px;
}*/
.menu-trigger span:nth-of-type(2) {
  bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
  width: 100%;
  transform: translateY(5px) rotate(-30deg);
}

/*.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}*/
.menu-trigger.active span:nth-of-type(2) {
  transform: translateY(-5px) rotate(30deg);
}

#toggleWrap {
  opacity: 0;
  background: #000000;
  padding: 20vw 10px 15px 10px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999;
  overflow: auto;
  /*z-index: -100!important;*/
}
.menuOn #toggleWrap {
  animation: toggle_anime_on 0.5s ease forwards;
}
@keyframes toggle_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#navilogo {
  margin-bottom: 1rem;
  width: 40vw;
  margin-left: auto;
  margin-right: auto;
}

#navi {
  width: 95%;
  margin: auto;
  overflow: auto;
}
#navi > ul {
  padding: 0;
}
#navi > ul li {
  margin-left: -30px;
  list-style: none;
  padding: 10px;
  display: block;
  margin-bottom: 1rem;
  font-family: "Teko", sans-serif;
  color: #FFF;
}
.menuOn #navi > ul li {
  animation: nav_anime_on 0.5s ease forwards;
}
@keyframes nav_anime_on {
  0% {
    opacity: 0;
    margin-left: -30px;
  }
  100% {
    opacity: 1;
    margin-left: 0px;
  }
}
#navi > ul li ul.gsubnavi {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}
#navi > ul li ul.gsubnavi li {
  width: 50%;
  font-size: 7vw;
  margin-bottom: 0;
}
#navi > ul li ul.gsubnavi li a {
  width: 100%;
  height: 100%;
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
  color: #FFF;
}
@keyframes toggle_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#gsubnavi {
  padding: 20px 20px 20px 20px;
  background: rgba(0, 0, 0, 0.9);
}

#navi > ul > li a {
  display: block;
}

#nav > ul > li.snslink {
  background: none;
  border: none;
}

#navi > ul > li > a img,
#navi ul > li > p img {
  max-height: 4.5vw;
}

#navi > ul > li > a {
  color: #FFF;
  font-size: 8vw;
  line-height: 1;
}
#navi > ul > li > a:not(.nob) {
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
}
#navi > ul > li > a:hover {
  text-decoration: none;
}
#navi > ul > li > a:active {
  text-decoration: none;
}

li.accordion p {
  display: block;
  margin: 0;
  font-size: 6.5vw;
}

li.accordion p {
  background-size: 4vw;
  position: relative;
}
li.accordion p:after {
  font-family: "iconmonstr-iconic-font";
  font-size: 5vw;
  content: "\e072";
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translate(0, -50%);
  transition: all 0.8s 0s ease;
}
li.accordion p.navdumm:after {
  right: 0px;
}

li.accordion p.atmopen {
  position: relative;
  background-size: 4vw;
}
li.accordion p.atmopen:after {
  font-family: "iconmonstr-iconic-font";
  font-size: 5vw;
  content: "\e073";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}

.snslink .navsub {
  font-size: 1.8rem;
}
.snslink #navisns {
  width: 100%;
  display: flex;
  justify-content: center;
}
.snslink #navisns img {
  margin-top: 10px;
  max-height: 4vw;
}
.snslink #navisns > div {
  padding: 0 5px;
  margin: 1%;
  text-align: center;
}
.snslink #navi ul.innernavi {
  margin: 5px 0 0 0;
  display: none;
}
.snslink #navi ul.innernavi li {
  list-style: none;
  padding: 10px 10px 10px 20px;
  border-top: dotted 1px #000000;
  border-bottom: none;
}

#footer {
  position: relative;
  padding: 30px;
  background: rgba(0, 8, 54, 0.9);
  width: 100%;
  text-align: center;
  color: #FFF;
  font-size: 1rem;
}
#footer #pvcy {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
  margin-bottom: 15px;
  line-height: 1;
}
#footer #pvcy > div {
  width: 50%;
  padding: 0 0.5rem 15px 0.5rem;
}
#footer #pvcy > div a {
  color: #FFF;
}
#footer #txttitle {
  margin-bottom: 10px;
}
#footer #txttitle img {
  max-height: 10px;
}

html {
  font-size: 62.5%;
}

* {
  box-sizing: border-box;
}

body {
  color: #FFF;
  font-family: "Noto Serif JP", serif;
  background: #000;
  font-size: 1.4rem;
}

img {
  pointer-events: none;
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  position: relative;
  z-index: 2;
}

#wrapper, #loading {
  width: 100%;
  min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
  min-height: calc(var(--vh, 1vh) * 100);
}

#wrapper {
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}

#cvs {
  width: 100%;
  min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
  min-height: calc(var(--vh, 1vh) * 100);
  position: fixed;
  overflow: hidden;
  z-index: 1;
}

#bg {
  width: 100%;
  min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
  min-height: calc(var(--vh, 1vh) * 100);
  position: fixed;
  overflow: hidden;
  z-index: -1;
}
#bg video {
  position: absolute;
  top: 50%;
  left: 0%;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-25%, -50%);
}
#bg:after {
  content: "";
  position: fixed;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
}
#index #bg:after {
  background: #000;
  background-size: cover;
}
#story #bg:after {
  background: url("../img/bg_story.jpg") no-repeat;
  background-size: cover;
}
#trailer #bg:after {
  background: url("../img/bg.jpg") no-repeat;
  background-size: cover;
}

.conbox p + p {
  margin-top: 15px;
}

#main {
  padding-top: 60px;
  flex: 1;
}
#main #mainimg {
  position: relative;
  overflow: hidden;
}
#main #mainimg #mainvisu {
  position: relative;
}
#main #mainimg #mainvisu .main_ani {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
#main #mainimg #mainvisu .main_akaixkuroda {
  z-index: 10;
  animation: anime_conan 1.5s ease 5s forwards;
}
#main #mainimg #mainvisu .main_blackorg {
  z-index: 11;
  animation: anime_black 1.5s ease 3.5s forwards;
}
#main #mainimg #mainvisu .catch1 {
  opacity: 0;
  position: absolute;
  z-index: 13;
  top: 0%;
  right: 3%;
  width: 12%;
  z-index: 12;
  animation: anime_catch 2s ease 2.5s forwards;
}
#main #mainimg #mainvisu .catch2 {
  opacity: 0;
  position: absolute;
  z-index: 13;
  top: 0%;
  left: 3%;
  animation: anime_catch 2s ease 3.5s forwards;
  width: 12%;
}
#main #mainimg #mainvisu .catch3 {
  opacity: 0;
  position: absolute;
  z-index: 13;
  top: 0%;
  left: 3%;
  animation: anime_catch_ky 3s ease-out 2.5s forwards;
  width: 11%;
}
#main #mainimg #mainvisu .catch4 {
  opacity: 0;
  position: absolute;
  z-index: 13;
  top: 0%;
  left: 2%;
  animation: anime_catch_ky_kid 2.5s ease-out 3.5s forwards;
  width: 7.5%;
}
#main #mainimg #mainvisu .catch5 {
  opacity: 0;
  position: absolute;
  z-index: 13;
  top: 0%;
  right: 2%;
  animation: anime_catch_ky_kid 2.5s ease-out 2.5s forwards;
  width: 7.5%;
}
#main #mainlogo {
  text-align: center;
}
#main #mainlogo .logo {
  width: 75%;
}
#main #mainlogo .loadshow {
  width: 60%;
}
#main #mainlogo_ky {
  z-index: 2;
  position: relative;
  margin-top: -13vh;
  margin-top: -13svh;
  text-align: center;
}
#main #mainlogo_ky .logo {
  width: 75%;
}
#main #mainlogo_ky .loadshow {
  width: 60%;
}
#main #mainlogo_ky .loadshow2 {
  width: 55%;
}
#main .nopd {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#title_video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 20px 0;
  text-align: center;
}
#title_video img {
  width: 80%;
  max-width: 600px;
}

#topnavi ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-left: 0;
  width: 100%;
  font-size: 0;
  margin: -0.5px;
}
#topnavi ul li {
  margin: 1px;
  width: calc(50% - 2px);
  padding: calc(15px * 1) 5px;
  text-align: center;
  background: rgba(0, 169, 187, 0.2);
  list-style: none;
}
#topnavi ul li.yokoichi {
  width: calc(100% - 2px);
}
#topnavi ul li a {
  display: block;
}
#topnavi ul li a img {
  max-height: 17px;
}

#credit {
  text-align: center;
  padding: calc(15px * 2) 5px;
}

#bnr {
  padding: 0 15px calc(15px * 2) 15px;
}
#bnr div {
  text-align: center;
}
#bnr div a {
  text-align: center;
  display: block;
  font-size: 0;
}
#bnr div + div {
  margin-top: 10px;
}

.videobox .changebtn {
  display: flex;
  flex-wrap: wrap;
  margin: 1rem auto;
  width: 90%;
}
.videobox .changebtn a {
  background: url(../img/videonav_bg.png);
  padding: 12px 5px;
  text-align: center;
  display: block;
  margin: 1%;
  width: 31.333%;
  border: solid 0.5px #547180;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}
.videobox .changebtn a.small {
  font-size: smaller;
}
.videobox .changebtn.sepa2 a {
  width: 48%;
}
.videobox .changebtn.sepa3 a {
  width: 31.333%;
}
.videobox .changebtn.sepa4 a {
  width: 23%;
}
.videobox .changebtn a.active {
  background: #00a9bb;
  border: solid 0.5px #009b6d;
  color: #000;
}
.videobox .changebtn a:hover {
  text-decoration: none;
}
.videobox .changebtn a:active {
  text-decoration: none;
}

#mainbnr {
  margin-top: 30px;
}
#mainbnr > div {
  text-align: center;
}
#mainbnr a {
  display: inline-block;
}

#topsns .topnavsub {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  letter-spacing: 1px;
  margin-bottom: 10px;
}
#topsns #topnavisns {
  width: 100%;
  display: flex;
  justify-content: center;
}
#topsns #topnavisns img {
  max-height: 13px;
}
#topsns #topnavisns > div {
  font-size: 0;
  padding: 0 5px;
  margin: 1%;
  text-align: center;
}
#topsns #topnavisns > div a {
  display: block;
}

#snsshare {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  justify-content: center;
  font-size: 0;
  width: 100%;
  padding: 15px;
  background: rgba(0, 0, 0, 0.45);
  position: relative;
}
#snsshare > div {
  padding: 0 15px;
}
#snsshare > div:nth-child(4) {
  width: 54px;
}
#snsshare > div a {
  display: inline-block;
}
#snsshare > div img {
  height: 24px;
  display: inline-block;
}

#bana {
  width: 100%;
  padding: 10px;
  background: rgba(0, 0, 0, 0.6);
  text-align: center;
  position: relative;
}
#bana #banainner {
  width: 90%;
  display: flex;
  flex-wrap: wrap;
  margin: auto;
  padding: -5px;
}
#bana #banainner > div {
  width: calc(50% - 10px);
  margin: 5px;
}
#bana #banainner > div a {
  display: block;
  font-size: 0;
}

.topconin {
  border: solid 1px #000;
  background: rgba(0, 169, 187, 0.3);
  padding: 5px;
  border-radius: 5px;
}

#topvideo {
  width: 100%;
  min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
  min-height: calc(var(--vh, 1vh) * 100);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}
#topvideo .topvideoinner {
  width: 100%;
}

.iframewrapper {
  position: relative;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
  z-index: 2;
}

.iframewrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.iframewrapper a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#mvtk {
  opacity: 0;
  position: fixed;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  background: rgba(0, 0, 0, 0.8);
  z-index: 10000;
  padding: 15px;
  transition: all 0.5s 0s ease;
}
#mvtk.view {
  opacity: 1;
}
#mvtk #mtvclose {
  background: #FFF;
  border: solid 1px #000;
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translate(-50%, 0);
  border-radius: 50%;
}
#mvtk #mtvclose:before, #mvtk #mtvclose:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 4px; /* 棒の幅（太さ） */
  height: 25px; /* 棒の高さ */
  background: #333;
}
#mvtk #mtvclose:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
#mvtk #mtvclose:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
#mvtk #mvtkIn {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

#subnavi {
  position: relative;
  width: 100%;
  overflow: hidden;
}
#subnavi ul {
  margin: 0;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
#subnavi ul li {
  margin: 1px;
  width: calc(50% - 2px);
  padding: calc(15px * 1) 5px;
  text-align: center;
  background: rgba(0, 169, 187, 0.2);
  list-style: none;
  line-height: 1;
  font-family: "Teko", sans-serif;
  color: #FFF;
  font-size: 7vw;
}
#subnavi ul li a {
  display: block;
  color: #FFF;
}
#subnavi ul li a img {
  max-height: 17px;
}

.modaal-inner-wrapper {
  padding: 80px 15px !important;
}

.modaal-content-container {
  padding: 1px !important;
}

.modaal-overlay {
  z-index: 1001 !important;
}

.modaal-close {
  right: 0 !important;
  top: 0 !important;
}

.topilist {
  width: 100%;
  color: #FFF;
  background: rgba(0, 0, 0, 0.5);
  padding: 5px;
  display: block;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
  padding-right: 20px;
  position: relative;
}
.topilist + .topilist {
  margin-top: 5px;
}
.topilist:after {
  content: "";
  font-family: "iconmonstr-iconic-font";
  content: "\e001";
  font-size: 1rem;
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translate(0, -50%);
}
.topilist-in {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  line-height: 1.25;
  align-items: center;
}
.topilist-in-date {
  text-align: center;
  width: 20%;
  border-right: solid 1px;
  padding-right: 5px;
}
.topilist-in-date .year {
  font-size: 1.2rem;
  margin-bottom: -3px;
}
.topilist-in-date .day {
  font-size: 1.4rem;
  font-weight: bold;
}
.topilist-in-date .week {
  font-size: 1rem;
}
.topilist-in-text {
  width: 80%;
  padding-left: calc(5px * 2);
}
.topilist-in-text h4.headline {
  font-weight: normal;
  font-size: 1.2rem;
}
.topilist-in-text .cat {
  font-size: 0.9rem;
}
.topilist-in-text .cat span {
  display: inline-block;
  color: #000;
  background: #FFF;
  line-height: 1;
  padding: 4px;
  margin-bottom: 5px;
}

.contitle {
  background: url(../img/sword.png) no-repeat center center;
  background-size: contain;
  padding: 15px;
  line-height: 0;
  text-align: center;
  position: relative;
}
.contitle img {
  width: 60%;
}
.contitle img.titlesub {
  position: absolute;
  top: inherit;
  bottom: -18px;
  left: 50%;
  transform: translate(-50%, 0);
  width: auto;
  height: 23px;
}

.stars {
  overflow: hidden; /* 星が枠外にはみ出すのを防ぐ */
  z-index: 0;
}

.star {
  position: absolute;
  display: block;
  background-color: #fff; /* 星の色 */
  border-radius: 50%;
  box-shadow: 0 0 4px 2px rgba(255, 255, 255, 0.2); /* 星の影 */
  opacity: 0;
  animation: twinkle 2s infinite;
}

/* 星がキラキラ光るアニメーション */
@keyframes twinkle {
  0% {
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: scale(1);
  }
}
img.glitter-star {
  position: absolute;
  height: 16px;
  width: 16px;
  /* アニメーションの設定 */
  animation: glitter 4s linear 0s infinite normal;
  -webkit-animation: glitter 4s linear 0s infinite normal;
  -moz-animation: glitter 4s linear 0s infinite normal;
  -ms-animation: glitter 4s linear 0s infinite normal;
  -o-animation: glitter 4s linear 0s infinite normal;
}

/* 必要に応じてベンダープレフィックス（-moz-, -ms-, -o-）をつける */
@keyframes glitter {
  0% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
  25% {
    -webkit-transform: scale(0.5);
    opacity: 0;
  }
  50% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
  75% {
    -webkit-transform: scale(0.5);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
}
#story .storycatch {
  padding-top: 10vw;
  aspect-ratio: 4/3;
  text-align: center;
}
#story .storycatch img {
  width: 90%;
  max-width: 400px;
}
#story .story {
  background-image: url(../img/story/story_bg_renga.jpg);
  background-size: cover;
  position: relative;
}
#story .story:before {
  content: "";
  position: absolute;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
  background: rgb(0, 0, 0);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgb(0, 0, 0) 100%);
}
#story .story > div {
  position: relative;
}
#story .story .txt {
  padding: 30px 15px;
  line-height: 1.7;
  letter-spacing: 1.5px;
}
#story #ccq {
  background: rgb(95, 112, 126);
  background: linear-gradient(90deg, rgb(95, 112, 126) 0%, rgb(251, 252, 252) 50%, rgb(95, 112, 126) 100%);
  padding: 15px;
  color: #000;
}
#story .ccq_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background: #FFF;
  padding: 10px;
}
#story .ccq_head_img {
  width: 25%;
}
#story .ccq_head_txt {
  line-height: 1.25;
  width: 75%;
  padding-left: 10px;
  font-weight: bold;
}
#story .ccq_body {
  font-weight: bold;
}

#storynew {
  background: #030e1d;
}
#storynew:before {
  content: "";
  position: absolute;
  top: 60px;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 1000px;
  z-index: 0;
  background: rgb(3, 15, 29);
  background-image: url(../img/story/story_bg_main_xi43rw7wywit.jpg);
  background-size: 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
#storynew #story_main {
  position: relative;
  width: 100%;
}
#storynew .slideimage {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 10vw 0 40px 0;
  margin-top: -10vw;
}
@keyframes loop_animation_right_double {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
#storynew .slideimage .story_photos_anime {
  display: flex;
  width: calc(100% + 30px);
  height: 25vw;
  overflow: hidden;
  transform: rotate(-9deg);
  margin-left: -15px;
}
#storynew .slideimage .story_photos_anime picture {
  width: auto;
  max-width: inherit;
  animation: loop_animation_right_double 60s linear infinite;
  height: 100%;
}
#storynew .slideimage .story_photos_anime picture .photo_anime_img {
  height: 25vw;
  width: auto;
  max-width: inherit;
  white-space: nowrap;
}
#storynew .story2 {
  padding: 20px;
  position: relative;
  background: rgba(0, 0, 0, 0.2);
}
#storynew .story2--txt {
  line-height: 1.8;
}
#storynew .story2--txt p {
  text-shadow: 1px 1px 2px #000;
}
#storynew #ccq {
  position: relative;
  background: rgb(95, 112, 126);
  background: linear-gradient(90deg, rgb(95, 112, 126) 0%, rgb(251, 252, 252) 50%, rgb(95, 112, 126) 100%);
  padding: 15px;
  color: #000;
}
#storynew .ccq {
  position: relative;
}
#storynew .ccq_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background: #FFF;
  padding: 10px;
}
#storynew .ccq_head_img {
  width: 25%;
}
#storynew .ccq_head_txt {
  line-height: 1.25;
  width: 75%;
  padding-left: 10px;
  font-weight: bold;
}
#storynew .ccq_body {
  font-weight: bold;
}

#themesong {
  background-size: cover;
  position: relative;
}
#themesong:before {
  content: "";
  position: fixed;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
  background-image: url(../img/themesong/themesongbg.jpg);
  background-size: cover;
}
#themesong .themesongbox {
  box-sizing: border-box;
  margin: 60px 0;
  position: relative;
  padding: 0 15px;
}
#themesong .themesongbox:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/themesong/songbarbg.png);
  background-size: cover;
  border-bottom: solid 5px #76a964;
  z-index: 2;
}
#themesong .themesongbox:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/themesong/songbarbg.png);
  background-size: cover;
  border-top: solid 5px #76a964;
  z-index: 2;
}
#themesong .themesongbox > div {
  position: relative;
}
#themesong .themesongbox-in {
  background: #f3eae3;
  padding: 40px 0;
  position: relative;
}
#themesong .themesongbox-in:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/themesong/wagara_top.png) no-repeat;
  background-size: cover;
  background-position: top right;
  z-index: 0;
}
#themesong .themesongbox-in:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/themesong/wagara_bottom.png) no-repeat;
  background-size: cover;
  background-position: bottom left;
  z-index: 0;
}
#themesong .themesongbox-in .songtitle {
  text-align: center;
  position: relative;
  padding: 0 50px 15px 15px;
}
#themesong .themesongbox-in .songtitle:after {
  position: absolute;
  content: "";
  background: url(../img/themesong/songtitledeco.png) no-repeat;
  background-size: contain;
  background-position: center;
  right: 0;
  top: -10px;
  width: 50px;
  height: 70px;
}
#themesong .themesongbox-in--box {
  padding: 0 30px;
}
#themesong .themesongbox-in--box .txt {
  padding: 30px 15px;
  line-height: 1.7;
  letter-spacing: 1.5px;
  color: #382209;
}

#staffcast {
  background-size: cover;
  position: relative;
}
#staffcast:before {
  content: "";
  position: fixed;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
  background-image: url(../img/staffcast/staffcast_bg.jpg);
  background-size: cover;
}
#staffcast .staffcastbox {
  box-sizing: border-box;
  margin: 60px 0;
  position: relative;
  padding: 0 15px;
}
#staffcast .staffcastbox:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/staffcast/staffcastbox_obi.png);
  background-size: cover;
  z-index: 2;
}
#staffcast .staffcastbox:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/staffcast/staffcastbox_obi.png);
  background-size: cover;
  z-index: 2;
}
#staffcast .staffcastbox > div {
  position: relative;
}
#staffcast .staffcastbox-in {
  background-image: url(../img/staffcast/staffcastbox_bg.png);
  background-size: 50px;
  padding: 40px 0;
  position: relative;
}
#staffcast .staffcastbox-in:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/staffcast/wagara_top.png) no-repeat;
  background-size: cover;
  background-position: top right;
  z-index: 0;
}
#staffcast .staffcastbox-in:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/staffcast/wagara_bottom.png) no-repeat;
  background-size: cover;
  background-position: bottom left;
  z-index: 0;
}
#staffcast .staffcastbox-in .songtitle {
  text-align: center;
  position: relative;
  padding: 0 15px;
}
#staffcast .staffcastbox-in--box {
  position: relative;
  padding: 0 30px;
}
#staffcast .staffcastbox-in--box .asya {
  text-align: center;
  margin-bottom: 15px;
}
#staffcast .staffcastbox-in--box .asya img.aoyama {
  width: 60%;
}
#staffcast .staffcastbox-in--box .asya img.kawazoe {
  width: 50%;
}
#staffcast .staffcastbox-in--box .txt {
  line-height: 1.7;
  letter-spacing: 1.5px;
  color: #000;
}
#staffcast .staffcastbox-in--box .txt p {
  text-shadow: 0px 0px 3px #FFF;
}
#staffcast .creditbox {
  position: relative;
  padding: 0 15px;
  margin-bottom: 30px;
}

#keyperson {
  background-size: cover;
  position: relative;
}
#keyperson:before {
  content: "";
  position: fixed;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
  background-image: url(../img/keyperson/keyperson_bg.jpg);
  background-size: cover;
}
#keyperson .keyperson {
  margin: 30px 0;
}
#keyperson .slick-prev, #keyperson .slick-next {
  line-height: 0;
  width: 30px;
  height: 30px;
}
#keyperson .slick-prev:before, #keyperson .slick-next:before {
  position: absolute;
  font: normal normal normal 20px/1 "iconmonstr-iconic-font" !important;
  text-shadow: 0 0 5px #000;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#keyperson .slick-prev {
  left: 0px;
}
#keyperson .slick-prev::before {
  content: "\e002" !important;
}
#keyperson .slick-next {
  right: 0px;
}
#keyperson .slick-next::before {
  content: "\e001" !important;
}
#keyperson .slide-persons {
  position: relative;
  background-image: url(../img/keyperson/per_bg.jpg);
  background-size: cover;
  padding: 0px 15px 20px 15px;
}
#keyperson .slide-persons:before, #keyperson .slide-persons:after {
  content: "";
  position: absolute;
  background-image: url(../img/keyperson/per_wagara.png);
  background-size: cover;
  height: 20px;
  width: 100%;
  left: 0;
}
#keyperson .slide-persons:before {
  top: 0;
}
#keyperson .slide-persons:after {
  bottom: 0;
}
#keyperson .slide-persons .person {
  color: #000;
  position: relative;
}
#keyperson .slide-persons .person-txt {
  background-image: url(../img/keyperson/gobousei.png);
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50px;
}
#keyperson .slide-persons .person-txt-name {
  text-align: center;
  margin: 15px auto;
  width: 80%;
}
#keyperson .slide-persons .person-txt-prof {
  padding: 15px 15px 30px 15px;
  font-weight: 600;
  line-height: 1.8;
}
#keyperson .thumbnail {
  width: 90%;
  margin: 15px auto;
  padding-top: 30px;
}
#keyperson .thumbnail .slick-track {
  transform: unset !important;
  width: 100% !important;
}
#keyperson .thumbnail .thumbnail-img {
  border-radius: 8px;
  width: 23% !important;
  margin: 1%;
  text-align: center;
  background: rgb(33, 122, 190);
  background: linear-gradient(180deg, rgb(33, 122, 190) 0%, rgb(9, 33, 51) 100%);
  font-size: 0;
}
#keyperson .thumbnail .thumbnail-img img {
  border-radius: 8px;
}
#keyperson .thumbnail .thumbnail-img.slick-current {
  position: relative;
}
#keyperson .thumbnail .thumbnail-img.slick-current:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: #00fffc;
  z-index: 3;
  top: 0;
  left: 0;
  border-radius: 8px;
  opacity: 0.4;
}
#keyperson .keypersonbox {
  box-sizing: border-box;
  margin: 60px 0;
  position: relative;
  padding: 0 15px;
}
#keyperson .keypersonbox:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/keyperson/keypersonbox_obi.png);
  background-size: cover;
  z-index: 2;
}
#keyperson .keypersonbox:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: url(../img/staffcast/staffcastbox_obi.png);
  background-size: cover;
  z-index: 2;
}
#keyperson .keypersonbox > div {
  position: relative;
}
#keyperson .keypersonbox-in {
  background-image: url(../img/staffcast/staffcastbox_bg.png);
  background-size: 50px;
  padding: 40px 0;
  position: relative;
}
#keyperson .keypersonbox-in:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/staffcast/wagara_top.png) no-repeat;
  background-size: cover;
  background-position: top right;
  z-index: 0;
}
#keyperson .keypersonbox-in:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: url(../img/staffcast/wagara_bottom.png) no-repeat;
  background-size: cover;
  background-position: bottom left;
  z-index: 0;
}
#keyperson .keypersonbox-in .songtitle {
  text-align: center;
  position: relative;
  padding: 0 15px;
}
#keyperson .keypersonbox-in--box {
  position: relative;
  padding: 0 30px;
}
#keyperson .keypersonbox-in--box .asya {
  text-align: center;
  margin-bottom: 15px;
}
#keyperson .keypersonbox-in--box .asya img.aoyama {
  width: 60%;
}
#keyperson .keypersonbox-in--box .asya img.kawazoe {
  width: 50%;
}
#keyperson .keypersonbox-in--box .txt {
  line-height: 1.7;
  letter-spacing: 1.5px;
  color: #000;
}
#keyperson .keypersonbox-in--box .txt p {
  text-shadow: 0px 0px 3px #FFF;
}
#keyperson .creditbox {
  position: relative;
  padding: 0 15px;
  margin-bottom: 30px;
}

#animail {
  background-image: url(../img/story/story_bg_renga.jpg);
  background-size: 200%;
  background-position: 0px 60px;
}
#animail img {
  pointer-events: none;
}
#animail #header {
  background: rgb(5, 27, 40) !important;
  background: linear-gradient(180deg, rgb(5, 27, 40) 0%, rgb(5, 27, 40) 20%, rgb(0, 0, 0) 100%) !important;
}
#animail:before {
  content: "";
  position: fixed;
  top: 60px;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  z-index: 0;
  background: rgb(0, 0, 0);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.8) 100%);
  z-index: 0;
}
#animail #anibg {
  content: "";
  position: fixed;
  height: 60px;
  width: 100%;
  top: 0;
  left: 0;
  background: rgb(0, 0, 0);
  z-index: 1;
}
#animail .animailhead {
  position: relative;
  text-align: center;
}
#animail .animailhead img {
  width: 100%;
}
#animail .animail {
  position: relative;
  z-index: 1;
}
#animail .animail > div {
  position: relative;
}
#animail .animail-page {
  padding: 0 15px 15px 15px;
  line-height: 1;
}/*# sourceMappingURL=style.css.map */