@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;700;900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
ul, li {
  list-style: none;
}

* {
  box-sizing: border-box;
  outline: 0;
}

:root {
  --vw: 1vw;
}

@media only screen and (max-width: 767.98px) {
  .tbpc-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}

body {
  position: relative;
  background: #fff;
  z-index: 1;
  color: #333;
  line-height: 1.714;
  font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
  letter-spacing: 0em;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  body {
    overflow: visible !important;
  }
}
@media only screen and (max-width: 767.98px) {
  body {
    min-width: 0;
  }
}
@media only screen and (max-width: 767.98px) {
  body {
    font-size: calc(var(--vw) * 14 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  body {
    width: 100%;
    line-height: 1.8;
    min-width: inherit;
  }
}
body.hidden {
  /* when modal active */
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  /* Other browsers */
  overscroll-behavior: none;
}

input,
select, button,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

input[type=number] {
  -moz-appearance: textfield;
}

input[type=checkbox],
input[type=radio] {
  position: absolute;
  opacity: 0;
  height: 1px;
  width: 1px;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

input[type=checkbox] {
  display: none;
}

sup {
  font-size: 0.7em;
  vertical-align: top;
}

a, button {
  text-decoration: none;
  color: #000;
}

img {
  width: 100%;
  vertical-align: bottom;
}

a.fade,
div.fade,
input.fade {
  transition: opacity 0.4s;
  opacity: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
a.fade:hover,
div.fade:hover,
input.fade:hover {
  opacity: 0.6;
}

#wrapper {
  position: relative;
}

.fadeObj {
  opacity: 0;
  transition: 0.6s;
}
.fadeObj.is-active {
  opacity: 1;
  transition: 0.6s;
}

.header .in {
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  padding: 10px 15px 0 15px;
}
@media only screen and (max-width: 767.98px) {
  .header .in {
    padding: calc(var(--vw) * 10 / 480 * 100) calc(var(--vw) * 15 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 15 / 480 * 100);
  }
}
.header .header_logo01 {
  width: 137px;
}
@media only screen and (max-width: 767.98px) {
  .header .header_logo01 {
    width: calc(var(--vw) * 137 / 480 * 100);
    max-width: none;
  }
}
.header .header_logo02 {
  width: 97px;
}
@media only screen and (max-width: 767.98px) {
  .header .header_logo02 {
    width: calc(var(--vw) * 97 / 480 * 100);
    max-width: none;
  }
}

#sp_header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background: url(../img/sp_header.png) 0 0/cover no-repeat;
}
@media only screen and (max-width: 767.98px) {
  #sp_header {
    height: calc(var(--vw) * 89 / 480 * 100);
  }
}
#sp_header .in {
  height: 100%;
  display: -ms-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 767.98px) {
  #sp_header .in {
    padding-left: calc(var(--vw) * 35 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  #sp_header .in {
    padding-right: calc(var(--vw) * 50 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  #sp_header .in .logo {
    width: calc(var(--vw) * 190 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  #sp_header .in .logo2 {
    width: calc(var(--vw) * 349 / 480 * 100);
    max-width: none;
  }
}

footer#footer {
  background: #00507f;
  color: #fff;
  padding: 8% 0 8%;
}
footer#footer .in {
  display: -ms-flex;
  display: flex;
  justify-content: center;
  gap: 0 5%;
}
footer#footer .logo {
  width: 134px;
}
@media only screen and (max-width: 767.98px) {
  footer#footer .logo {
    width: calc(var(--vw) * 134 / 480 * 100);
    max-width: none;
  }
}
footer#footer small {
  font-family: "Noto Serif", serif;
  line-height: 1.4;
  font-size: 11px;
}
@media only screen and (max-width: 767.98px) {
  footer#footer small {
    font-size: 2.2vw;
  }
}
footer#shindan_footer {
  position: relative;
  z-index: 10;
  margin-top: 30px;
  padding-bottom: 20px;
}
footer#shindan_footer .s_in {
  text-align: center;
  line-height: 1.2;
  font-weight: 600;
  font-size: 12px;
}
footer#shindan_footer .s_in small {
  font-weight: 600;
  font-size: 10px;
  font-family: "Noto Serif", serif;
}

@media only screen and (max-width: 767.98px) {
  html, body, #wrap, .contents {
    min-height: 100vh;
    background: #fff;
  }
}

/* リンクやボタンをクリック/選択した時の線を消す */
a:focus,
a:active,
button:focus,
.fancybox-button:focus {
  outline: none !important;
  box-shadow: none !important; /* 一部のフレームワーク用 */
}

/* 画像自体にフォーカスが当たった場合の線も消す */
img {
  outline: none !important;
}

/* Firefoxなど特定のブラウザでリンク画像に点線が出る対策 */
a img {
  border: none;
  outline: none;
}

.start_ov {
  background: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1000;
}

.fade_up {
  opacity: 0;
  transition: 0.4s;
  transform: translateY(40px);
}
.fade_up.is-active {
  opacity: 1;
  transition: 0.4s;
  transform: translateY(0);
}

.fade_right {
  opacity: 0;
  transition: 0.4s;
  filter: blur(20px);
  transform: translateX(60px);
}
.fade_right.is-active {
  filter: blur(0);
  opacity: 1;
  transition: 0.4s;
  transform: translateX(0);
}

.fade_left {
  opacity: 0;
  transition: 0.4s;
  filter: blur(20px);
  transform: translateX(-60px);
}
.fade_left.is-active {
  filter: blur(0);
  opacity: 1;
  transition: 0.4s;
  transform: translateX(0);
}

.fade_in {
  opacity: 0;
  transition: 0.6s;
}
.fade_in.is-active {
  opacity: 1;
  transition: 0.6s;
}

.scale.is-active {
  animation: scale 1.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s infinite;
}

@keyframes scale {
  0% {
    transform: scale(1);
  }
  70% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
.blink:before {
  animation: blink 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
}

@keyframes blink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.1;
  }
}
.intro_c_shadow.is-active:before {
  animation: l_to_r 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s forwards;
}

.daen:before {
  opacity: 0;
}
.daen.is-active:before {
  animation: daen 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) 0s forwards;
}

.daen02.is-active {
  animation: daen02 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s forwards;
}

@keyframes daen {
  0% {
    transform: scale(1.3);
    filter: blur(4px);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.02);
    filter: blur(0px);
    opacity: 1;
  }
}
@keyframes daen02 {
  0% {
    transform: scale(1.1);
    opacity: 0;
  }
  70% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.tv_noise.is-active:before {
  animation: tv_noise 2.5s cubic-bezier(0.25, 0.25, 0.75, 0.75) 0s infinite;
}
.tv_noise.is-active:after {
  animation: tv_noise02 2.5s cubic-bezier(0.25, 0.25, 0.75, 0.75) 0s infinite;
}

@keyframes tv_noise {
  0% {
    top: 160%;
    height: 14%;
    opacity: 1;
    filter: blur(4px);
  }
  50% {
    height: 15%;
  }
  100% {
    top: -20%;
    height: 14%;
    opacity: 1;
  }
}
@keyframes tv_noise02 {
  0% {
    top: 176%;
    height: 1%;
    opacity: 1;
    filter: blur(6px);
  }
  50% {
    height: 2%;
  }
  100% {
    top: -3%;
    height: 1%;
    opacity: 1;
  }
}
.kv_shadow.is-active:before {
  animation: kv_shadow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1) 0.6s forwards;
}

@keyframes kv_shadow {
  0% {
    transform: translateX(-20px);
    filter: blur(4px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    filter: blur(0px);
    opacity: 1;
  }
}
.l_to_r {
  transform: translateX(-600px);
}
.l_to_r.is-active {
  animation: l_to_r 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s forwards;
}

.l_to_r02 {
  transform: translateX(-600px);
}
.l_to_r02.is-active {
  animation: l_to_r 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0.5s forwards;
}

@keyframes l_to_r {
  0% {
    transform: translateX(-600px);
    filter: blur(4px);
  }
  50% {
    transform: translateX(20px);
    filter: blur(4px);
  }
  100% {
    transform: translateX(0);
    filter: blur(0px);
  }
}
.r_to_l {
  transform: translateX(600px);
}
.r_to_l.is-active {
  animation: r_to_l 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s forwards;
}

.r_to_l02 {
  transform: translateX(600px);
}
.r_to_l02.is-active {
  animation: r_to_l 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0.5s forwards;
}

.r_to_l03 {
  transform: translateX(600px);
}
.r_to_l03.is-active {
  animation: r_to_l03 0.1s cubic-bezier(0.645, 0.045, 0.355, 1) 1.15s forwards;
}

.r_to_l04 {
  transform: translateX(600px);
}
.r_to_l04.is-active {
  animation: r_to_l04 0.1s cubic-bezier(0.645, 0.045, 0.355, 1) 3.25s forwards;
}

@keyframes r_to_l {
  0% {
    transform: translateX(600px);
    filter: blur(4px);
  }
  80% {
    transform: translateX(-20px);
    filter: blur(4px);
  }
  100% {
    transform: translateX(0);
    filter: blur(0px);
  }
}
@keyframes r_to_l03 {
  0% {
    transform: translateX(20px);
    filter: blur(4px);
    opacity: 0;
  }
  80% {
    transform: translateX(-10px);
    filter: blur(4px);
  }
  100% {
    transform: translateX(0);
    filter: blur(0px);
    opacity: 1;
  }
}
@keyframes r_to_l04 {
  0% {
    transform: translateX(20px);
    filter: blur(4px);
    opacity: 0;
  }
  80% {
    transform: translateX(-10px);
    filter: blur(4px);
  }
  100% {
    transform: translateX(0);
    filter: blur(0px);
    opacity: 1;
  }
}
.blur_swing.is-active {
  animation: blurSwing 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

.blur_swing_2 {
  opacity: 0;
}
.blur_swing_2.is-active {
  animation: blurSwing2 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) 1s forwards;
}

.blur_swing_3.is-active {
  animation: blurSwing3 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

.fadein.is-active {
  animation: fadein 1s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

.fadein2 {
  opacity: 0;
}
.fadein2.is-active {
  animation: fadein 1s cubic-bezier(0.645, 0.045, 0.355, 1) 1s forwards;
}

@keyframes blurSwing {
  0% {
    transform: translateX(calc(-100% + 160px));
    filter: blur(4px);
    opacity: 0;
  }
  80% {
    transform: translateX(calc(-100% - 20px));
    filter: blur(4px);
  }
  90% {
    transform: translateX(calc(-100% + 30px));
    filter: blur(4px);
  }
  100% {
    transform: translateX(calc(-100% + 15px));
    filter: blur(0);
    opacity: 1;
  }
}
@keyframes blurSwing2 {
  0% {
    top: 200px;
    filter: blur(10px);
    opacity: 0;
  }
  90% {
    filter: blur(20px);
  }
  100% {
    top: 118px;
    filter: blur(0);
    opacity: 1;
  }
}
@keyframes blurSwing3 {
  0% {
    top: 100px;
    left: 53%;
    filter: blur(10px);
    opacity: 0;
  }
  100% {
    top: 120px;
    left: 50%;
    filter: blur(0);
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body {
  position: static;
  background: url(../img/bg.png) 0 0/cover repeat;
  background-attachment: fixed;
}

#wrap {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 1;
}
@media only screen and (max-width: 767.98px) {
  #wrap {
    width: 100%;
  }
}
#wrap:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  background: url(../img/bg.png) 0 0/cover repeat;
  transition: opacity 0.4s;
}
#wrap .contents {
  width: 49.4%;
  width: 37.69%;
  width: 45.37%;
  min-height: 100vh;
}
@media only screen and (max-width: 767.98px) {
  #wrap .contents {
    width: 100%;
  }
}

.chara_area {
  top: 0;
}
@media only screen and (max-width: 767.98px) {
  .chara_area {
    display: none;
  }
}
.chara {
  position: fixed;
  top: 110px;
  left: 50%;
  transform: translateX(calc(-100% + 15px));
  z-index: 2;
  width: 670px;
}

.chara_shadow {
  mix-blend-mode: color-burn;
  position: fixed;
  top: 120px;
  left: 50%;
  transform: translateX(calc(-100% + 30px));
  z-index: 1;
  width: 670px;
}

.chara_2 {
  position: fixed;
  top: 120px;
  left: 50%;
  transform: translateX(calc(-100% + 15px));
  z-index: 2;
  width: 190px;
}

.chara_shadow_2 {
  mix-blend-mode: color-burn;
  position: fixed;
  top: 130px;
  left: 50%;
  transform: translateX(calc(-100% + 30px));
  z-index: 1;
  width: 190px;
}

.earth {
  position: fixed;
  mix-blend-mode: color-burn;
  width: 690px;
  top: 135px;
  left: 50%;
  transform: translateX(-100%);
}
@media only screen and (max-width: 767.98px) {
  .earth {
    display: none;
  }
}

.nav_g_wrap {
  position: fixed;
  top: 36px;
  left: 50%;
  transform: translateX(calc(-100% - 278px));
  transform: translateX(-171%);
  text-align: center;
  z-index: 12;
  width: 275px;
}
@media only screen and (max-width: 767.98px) {
  .nav_g_wrap {
    display: none;
  }
}

.nav_g {
  width: 106px;
}

.nav_g_shadow_wrap {
  mix-blend-mode: multiply;
  position: fixed;
  top: 42px;
  left: 50%;
  transform: translateX(calc(-100% - 274px));
  transform: translateX(-169.5%);
  text-align: center;
  z-index: 11;
  width: 275px;
}
@media only screen and (max-width: 767.98px) {
  .nav_g_shadow_wrap {
    display: none;
  }
}

.nav_g_shadow {
  width: 106px;
}

.aside {
  position: fixed;
  top: 75px;
  left: 50%;
  transform: translateX(-171%);
  z-index: 10;
}
@media only screen and (max-width: 767.98px) {
  .aside {
    display: none;
  }
}
.aside .aside_in {
  position: relative;
}
.aside .aside_in .copy {
  position: absolute;
  bottom: -340px;
  left: -100px;
  width: 80px;
  z-index: 1;
}
.aside .aside_box_listwrap {
  margin-left: auto;
  margin-right: 0;
  width: 275px;
  background: url(../img/aside_nav_bg.png) 0 0/100% auto no-repeat;
}
.aside .aside_box_listwrap .aside_list {
  padding-top: 46px;
  padding-left: 21px;
  padding-right: 22px;
  padding-bottom: 39px;
}
.aside .aside_box_listwrap .aside_list li {
  margin-bottom: 27px;
}
.aside .aside_box_listwrap .aside_list li:last-child {
  margin-bottom: 0;
}
.aside .aside_box_listwrap .aside_list li a {
  transition: opacity 0.4s;
}
.aside .aside_box_listwrap .aside_list li a:hover {
  transition: opacity 0.4s;
  opacity: 0.7;
}

.shadow {
  position: absolute;
  width: 45.37%;
  min-height: 100%;
  box-shadow: 40px 0 0 #0071ba;
  mix-blend-mode: multiply;
  opacity: 0.3;
}

.contents {
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
  box-shadow: 5px 5px 15px rgba(47, 12, 47, 0.3);
  position: relative;
  z-index: 100;
}
.contents:before {
  position: absolute;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  box-shadow: 40px 0 0 #0071ba;
  mix-blend-mode: multiply;
}
.kv {
  overflow: hidden;
}
.kv .kv_img {
  position: relative;
  height: 464px;
  overflow: hidden;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img {
    height: calc(var(--vw) * 464 / 480 * 100);
  }
}
.kv .kv_img:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 652px;
  top: 44px;
  left: -96px;
  height: 800px;
  mix-blend-mode: multiply;
  background: url(../img/kvchara_shadow.png) 0 0/100% auto no-repeat;
  opacity: 0;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img:before {
    left: calc(var(--vw) * -96 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img:before {
    width: calc(var(--vw) * 652 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img:before {
    top: calc(var(--vw) * 44 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img:before {
    height: calc(var(--vw) * 800 / 480 * 100);
  }
}
.kv .kv_img:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  height: 800px;
  mix-blend-mode: multiply;
  background: url(../img/go_bg.png) 0 0/cover no-repeat;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img:after {
    height: calc(var(--vw) * 800 / 480 * 100);
  }
}
.kv .kv_img .kvchara {
  position: absolute;
}
.kv .kv_img .bikkuri {
  width: 60px;
  top: 19px;
  left: 176px;
  z-index: 1;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri {
    width: calc(var(--vw) * 60 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri {
    top: calc(var(--vw) * 19 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri {
    left: calc(var(--vw) * 176 / 480 * 100);
  }
}
.kv .kv_img .bikkuri_shadow {
  width: 60px;
  top: 22px;
  left: 188px;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri_shadow {
    width: calc(var(--vw) * 60 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri_shadow {
    top: calc(var(--vw) * 22 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .bikkuri_shadow {
    left: calc(var(--vw) * 188 / 480 * 100);
  }
}
.kv .kv_img .ken {
  width: 350px;
  z-index: 10;
  top: 40px;
  right: 30px;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ken {
    width: calc(var(--vw) * 350 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ken {
    top: calc(var(--vw) * 40 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ken {
    right: calc(var(--vw) * 25 / 480 * 100);
  }
}
.kv .kv_img .jun {
  width: 320px;
  z-index: 9;
  top: 115px;
  left: -19px;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jun {
    width: calc(var(--vw) * 320 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jun {
    top: calc(var(--vw) * 115 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jun {
    left: calc(var(--vw) * -24 / 480 * 100);
  }
}
.kv .kv_img .jo {
  width: 332px;
  z-index: 7;
  top: 31px;
  left: 220px;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jo {
    width: calc(var(--vw) * 332 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jo {
    top: calc(var(--vw) * 31 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jo {
    left: calc(var(--vw) * 215 / 480 * 100);
  }
}
.kv .kv_img .jinpei {
  width: 242px;
  z-index: 6;
  top: 83px;
  right: -70px;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jinpei {
    width: calc(var(--vw) * 242 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jinpei {
    top: calc(var(--vw) * 83 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .jinpei {
    right: calc(var(--vw) * -75 / 480 * 100);
  }
}
.kv .kv_img .ryu {
  width: 287px;
  z-index: 6;
  top: 132px;
  left: -105px;
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ryu {
    width: calc(var(--vw) * 287 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ryu {
    top: calc(var(--vw) * 132 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .kv_img .ryu {
    left: calc(var(--vw) * -110 / 480 * 100);
  }
}
.kv .lead01 {
  margin-top: -22px;
  min-height: 201px;
  background: url(../img/ttl.png) 0 0/cover no-repeat;
  position: relative;
  z-index: 11;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 {
    margin-top: calc(var(--vw) * -22 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 {
    min-height: calc(var(--vw) * 201 / 480 * 100);
  }
}
.kv .lead01 .lead01_txt {
  padding-top: 56px;
  text-align: center;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt {
    padding-top: calc(var(--vw) * 56 / 480 * 100);
  }
}
.kv .lead01 .lead01_txt img {
  position: relative;
  z-index: 1;
}
.kv .lead01 .lead01_txt .t01 {
  display: inline-block;
  position: relative;
  width: 70%;
}
.kv .lead01 .lead01_txt .t01:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 100%;
  height: 100%;
  background: url(../img/ttl_shadow01.png) 0 0/cover no-repeat;
  opacity: 0.4;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt .t01:after {
    top: calc(var(--vw) * 3 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt .t01:after {
    left: calc(var(--vw) * 3 / 480 * 100);
  }
}
.kv .lead01 .lead01_txt .t02 {
  display: inline-block;
  position: relative;
  width: 70%;
  margin-top: 10px;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt .t02 {
    margin-top: calc(var(--vw) * 10 / 480 * 100);
  }
}
.kv .lead01 .lead01_txt .t02:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 100%;
  height: 100%;
  background: url(../img/ttl_shadow02.png) 0 0/cover no-repeat;
  opacity: 0.4;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt .t02:after {
    top: calc(var(--vw) * 2 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .kv .lead01 .lead01_txt .t02:after {
    left: calc(var(--vw) * 2 / 480 * 100);
  }
}
.kv .lead02 {
  background: #fff;
  text-align: center;
  color: #345aa4;
  line-height: 1.5;
  font-weight: 600;
  font-size: 20px;
  padding: 0.7em 0;
}
@media only screen and (max-width: 767.98px) {
  .kv .lead02 {
    font-size: 3.86vw;
  }
}

.c01 {
  height: 758px;
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
}
@media only screen and (max-width: 767.98px) {
  .c01 {
    height: calc(var(--vw) * 758 / 480 * 100);
  }
}
.c01 .in {
  position: relative;
  height: 758px;
  overflow: hidden;
}
@media only screen and (max-width: 767.98px) {
  .c01 .in {
    height: calc(var(--vw) * 758 / 480 * 100);
  }
}
.c01 .in:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: -50px;
  left: 0;
  z-index: 2;
  background: url(../img/intro_daen.png) 0 0/100% auto no-repeat;
}
@media only screen and (max-width: 767.98px) {
  .c01 .in:before {
    top: calc(var(--vw) * -50 / 480 * 100);
  }
}
.c01 .in:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  background: url(../img/intro_dot.png) 0 bottom/100% auto no-repeat;
}
.c01 .intro_txt_wrap {
  position: relative;
  z-index: 10;
  padding-top: 88px;
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_txt_wrap {
    padding-top: calc(var(--vw) * 88 / 480 * 100);
  }
}
.c01 .intro_ttl {
  margin: 0 auto;
  margin-bottom: 38px;
  width: 278px;
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_ttl {
    margin-bottom: calc(var(--vw) * 38 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_ttl {
    width: calc(var(--vw) * 278 / 480 * 100);
    max-width: none;
  }
}
.c01 .c01_txt {
  text-align: center;
  font-weight: 600;
  line-height: 2.4;
  font-size: 15px;
  opacity: 0;
}
@media only screen and (max-width: 767.98px) {
  .c01 .c01_txt {
    font-size: 3vw;
  }
}
.c01 .intro_chara {
  height: 258px;
  overflow: hidden;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_chara {
    height: calc(var(--vw) * 258 / 480 * 100);
  }
}
.c01 .intro_chara img {
  position: relative;
  z-index: 1;
  left: -45px;
  width: 106%;
  z-index: 3;
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_chara img {
    left: calc(var(--vw) * -45 / 480 * 100);
  }
}
.c01 .intro_chara:before {
  content: "";
  display: block;
  width: 103.5%;
  height: 100%;
  position: absolute;
  bottom: -8px;
  left: -19px;
  transform: translateX(-600px);
  background: url(../img/intro_chara_shadow.png) 0 0/100% auto no-repeat;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_chara:before {
    bottom: calc(var(--vw) * -8 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c01 .intro_chara:before {
    left: calc(var(--vw) * -19 / 480 * 100);
  }
}

.c02 {
  background: url(../img/contents_bg.png) 0 30px/100% auto repeat-y;
  position: relative;
  z-index: 3;
}
.c02 .ttl_wrap {
  overflow: hidden;
  top: -22px;
  background: url(../img/checker_ttl_bg.png) 0 0/100% auto no-repeat;
  position: relative;
}
@media only screen and (max-width: 767.98px) {
  .c02 .ttl_wrap {
    top: calc(var(--vw) * -22 / 480 * 100);
  }
}
.c02 .ttl_wrap:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  background: #82d2ff;
  mix-blend-mode: multiply;
  z-index: 1;
  position: relative;
}
@media only screen and (max-width: 767.98px) {
  .c02 .ttl_wrap:after {
    height: calc(var(--vw) * 8 / 480 * 100);
  }
}
.c02 .ttl {
  position: relative;
  width: 440px;
  min-height: 105px;
  margin: 0 auto;
  padding-top: 50px;
  z-index: 2;
}
@media only screen and (max-width: 767.98px) {
  .c02 .ttl {
    width: calc(var(--vw) * 440 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .ttl {
    min-height: calc(var(--vw) * 102.5 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .ttl {
    padding-top: calc(var(--vw) * 48 / 480 * 100);
  }
}
.c02 .in {
  overflow: hidden;
  padding-bottom: 50px;
  background: url(../img/contents_bg.png) 0 30px/100% auto repeat-y;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767.98px) {
  .c02 .in {
    padding-bottom: calc(var(--vw) * 50 / 480 * 100);
  }
}
.c02 .in:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/checker_bg.png) 0 0/cover no-repeat;
  width: 100%;
  height: 380px;
  z-index: -1;
  opacity: 0.8;
}
@media only screen and (max-width: 767.98px) {
  .c02 .in:before {
    height: calc(var(--vw) * 380 / 480 * 100);
  }
}
.c02 .txt {
  padding-top: 10px;
  text-align: center;
  line-height: 2.5;
  font-weight: 600;
  font-size: 15px;
}
@media only screen and (max-width: 767.98px) {
  .c02 .txt {
    padding-top: calc(var(--vw) * 10 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .txt {
    font-size: 3vw;
  }
}
.c02 .img {
  position: relative;
  margin-top: 26px;
}
@media only screen and (max-width: 767.98px) {
  .c02 .img {
    margin-top: calc(var(--vw) * 26 / 480 * 100);
  }
}
.c02 .img:before {
  content: "";
  display: inline-block;
  width: 102%;
  height: 32px;
  background: url(../img/checker_line.png) 0 0/cover no-repeat;
  position: absolute;
  top: 180px;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 767.98px) {
  .c02 .img:before {
    height: calc(var(--vw) * 32 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img:before {
    top: calc(var(--vw) * 180 / 480 * 100);
  }
}
.c02 .img .f01 {
  position: absolute;
  width: 142px;
  z-index: 2;
  top: 48px;
  left: 46px;
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .f01 {
    width: calc(var(--vw) * 142 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .f01 {
    top: calc(var(--vw) * 48 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .f01 {
    left: calc(var(--vw) * 46 / 480 * 100);
  }
}
.c02 .img .checker_img {
  width: 355px;
  position: relative;
  z-index: 1;
  margin-left: 30px;
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .checker_img {
    width: calc(var(--vw) * 355 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .checker_img {
    margin-left: calc(var(--vw) * 30 / 480 * 100);
  }
}
.c02 .img .checker_img_shadow {
  position: absolute;
  top: 6px;
  left: 50px;
  width: 355px;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .checker_img_shadow {
    top: calc(var(--vw) * 6 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .checker_img_shadow {
    left: calc(var(--vw) * 50 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .img .checker_img_shadow {
    width: calc(var(--vw) * 355 / 480 * 100);
    max-width: none;
  }
}
.c02 .btn_checker {
  position: relative;
  width: 91.2%;
  margin: 0 auto;
}
.c02 .btn_checker:hover img {
  transition: 0.4s;
  transform: scale(1.04);
}
.c02 .btn_checker:hover:before {
  transition: 0.4s;
  transform: scale(1.04);
}
.c02 .btn_checker a {
  display: block;
  position: relative;
  z-index: 1;
}
.c02 .btn_checker a img {
  transition: 0.4s;
  transform: scale(1);
}
.c02 .btn_checker:before {
  transition: 0.4s;
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  left: 8px;
  width: 100%;
  height: 98%;
  background: url(../img/btn_checker_shadow.png) 0 0/cover no-repeat;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .c02 .btn_checker:before {
    top: calc(var(--vw) * 14 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c02 .btn_checker:before {
    left: calc(var(--vw) * 8 / 480 * 100);
  }
}

.c03 {
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
  overflow: hidden;
}
.c03 .in {
  padding-top: 30px;
  position: relative;
}
@media only screen and (max-width: 767.98px) {
  .c03 .in {
    padding-top: calc(var(--vw) * 30 / 480 * 100);
  }
}
.c03 .in:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 400px;
  background: url(../img/go_bg.png) 0 bottom/100% auto no-repeat;
}
.c03 .ttl_wrap {
  overflow: hidden;
  background: url(../img/go_ttl_bg.png) 0 0/100% auto no-repeat;
  position: relative;
}
.c03 .ttl_wrap:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  background: #82d2ff;
  mix-blend-mode: multiply;
  z-index: 1;
  position: relative;
}
@media only screen and (max-width: 767.98px) {
  .c03 .ttl_wrap:after {
    height: calc(var(--vw) * 8 / 480 * 100);
  }
}
.c03 .ttl {
  position: relative;
  width: 356px;
  min-height: 91px;
  margin: 0 auto;
  padding-top: 30px;
  z-index: 2;
}
@media only screen and (max-width: 767.98px) {
  .c03 .ttl {
    width: calc(var(--vw) * 356 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .ttl {
    min-height: calc(var(--vw) * 89 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .ttl {
    padding-top: calc(var(--vw) * 30 / 480 * 100);
  }
}
.c03 .txt {
  font-weight: 600;
  line-height: 2.5;
  text-align: center;
  font-size: 15px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .txt {
    font-size: 3.1vw;
  }
}
.c03 .list {
  display: -ms-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 22px 13px;
  margin-top: 40px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .list {
    gap: calc(var(--vw) * 22 / 480 * 100) calc(var(--vw) * 13 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list {
    margin-top: calc(var(--vw) * 40 / 480 * 100);
  }
}
.c03 .list li .movie {
  width: 214px;
  background: url(../img/tvframe.png) 0 0/100% auto no-repeat;
  padding-top: 43px;
  padding-bottom: 18px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .movie {
    width: calc(var(--vw) * 214 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .movie {
    padding-top: calc(var(--vw) * 43 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .movie {
    padding-bottom: calc(var(--vw) * 18 / 480 * 100);
  }
}
.c03 .list li .movie_ttl {
  display: block;
  width: 180px;
  margin: 10px auto 0;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 900;
  text-align: center;
  font-style: italic;
  color: #d32d26;
  letter-spacing: -0.14em;
  font-size: 16px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .movie_ttl {
    width: calc(var(--vw) * 180 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .movie_ttl {
    font-size: calc(var(--vw) * 16 / 480 * 100);
  }
}
.c03 .list li a {
  display: block;
  width: 86%;
  margin: 0 auto;
  position: relative;
}
.c03 .list li a:before {
  content: "";
  position: absolute;
  bottom: 6px;
  right: 7px;
  display: block;
  width: 40px;
  height: 40px;
  background: url(../img/tv_play.png) 0 0/cover no-repeat;
  z-index: 2;
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li a:before {
    bottom: calc(var(--vw) * 6 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li a:before {
    right: calc(var(--vw) * 7 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li a:before {
    width: calc(var(--vw) * 40 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li a:before {
    height: calc(var(--vw) * 40 / 480 * 100);
  }
}
.c03 .list li .thum {
  overflow: hidden;
  width: 184px;
  height: 138px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .thum {
    width: calc(var(--vw) * 184 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .list li .thum {
    height: calc(var(--vw) * 138 / 480 * 100);
  }
}
.c03 .list li .thum:before {
  content: "";
  background: #fff;
  width: 100%;
  height: 10px;
  position: absolute;
  left: 0;
  z-index: 1;
  mix-blend-mode: soft-light;
}
.c03 .list li .thum:after {
  content: "";
  background: #fff;
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  z-index: 1;
  mix-blend-mode: soft-light;
}
.c03 .list li .thum img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}
.c03 .img {
  position: relative;
  margin-top: 52px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .img {
    margin-top: calc(var(--vw) * 52 / 480 * 100);
  }
}
.c03 .img .f02 {
  position: absolute;
  width: 134px;
  z-index: 2;
  top: 45px;
  left: 292px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .f02 {
    width: calc(var(--vw) * 134 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .f02 {
    top: calc(var(--vw) * 45 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .f02 {
    left: calc(var(--vw) * 292 / 480 * 100);
  }
}
.c03 .img .go_img {
  width: 540px;
  position: relative;
  z-index: 1;
  left: -77px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .go_img {
    width: calc(var(--vw) * 540 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .go_img {
    left: calc(var(--vw) * -77 / 480 * 100);
  }
}
.c03 .img .go_img_shadow {
  position: absolute;
  top: 6px;
  width: 540px;
  left: -55px;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .go_img_shadow {
    top: calc(var(--vw) * 6 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .go_img_shadow {
    left: calc(var(--vw) * -55 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .img .go_img_shadow {
    width: calc(var(--vw) * 540 / 480 * 100);
    max-width: none;
  }
}
.c03 .btn_list li {
  position: relative;
  margin-top: 30px;
  width: 450px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767.98px) {
  .c03 .btn_list li {
    margin-top: calc(var(--vw) * 30 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .btn_list li {
    width: calc(var(--vw) * 450 / 480 * 100);
    max-width: none;
  }
}
.c03 .btn_list li:first-child {
  margin-top: 0;
}
.c03 .btn_list li:before {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 6px;
  width: 100%;
  height: 96%;
  background: url(../img/btn_checker_shadow.png) 0 0/cover no-repeat;
  mix-blend-mode: multiply;
  opacity: 0.9;
}
@media only screen and (max-width: 767.98px) {
  .c03 .btn_list li:before {
    top: calc(var(--vw) * 15 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .btn_list li:before {
    left: calc(var(--vw) * 6 / 480 * 100);
  }
}
.c03 .btn_list li a {
  display: block;
  position: relative;
  z-index: 1;
  transition: 0.4s;
}
.c03 .btn_list li a img {
  transition: 0.4s;
}
.c03 .btn_list li a:before {
  transition: 0.4s;
}
.c03 .btn_list li a:hover img {
  transition: 0.4s;
  transform: scale(1.04);
}
.c03 .btn_list li a:hover:before {
  transition: 0.4s;
  transform: scale(1.04);
}
.c03 .sns {
  padding-top: 42px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns {
    padding-top: calc(var(--vw) * 42 / 480 * 100);
  }
}
.c03 .sns .followme {
  transform: scale(0.9);
  width: 254px;
  margin: 0 auto;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .followme {
    width: calc(var(--vw) * 254 / 480 * 100);
    max-width: none;
  }
}
.c03 .sns .box {
  background: #fff;
  border-radius: 20px;
  padding: 26px 0;
  width: 90%;
  margin: 0 auto;
  margin-top: 15px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .box {
    padding: calc(var(--vw) * 26 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 26 / 480 * 100) calc(var(--vw) * 0 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .box {
    margin-top: calc(var(--vw) * 15 / 480 * 100);
  }
}
.c03 .sns .box ul {
  display: -ms-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 42px;
}
.c03 .sns .box ul li a img {
  transition: 0.4s;
}
.c03 .sns .box ul li a:hover img {
  transition: 0.4s;
  transform: scale(1.04);
}
.c03 .sns .box ul .x {
  width: 65px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .box ul .x {
    width: calc(var(--vw) * 65 / 480 * 100);
    max-width: none;
  }
}
.c03 .sns .box ul .fb {
  width: 65px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .box ul .fb {
    width: calc(var(--vw) * 65 / 480 * 100);
    max-width: none;
  }
}
.c03 .sns .box ul .yt {
  width: 77px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .sns .box ul .yt {
    width: calc(var(--vw) * 77 / 480 * 100);
    max-width: none;
  }
}
.c03 .bottom_img {
  position: relative;
  margin-top: 25px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img {
    margin-top: calc(var(--vw) * 25 / 480 * 100);
  }
}
.c03 .bottom_img .copy {
  position: absolute;
  top: 20vw;
  left: 5vw;
  font-size: 12px;
  font-weight: 400;
  width: 80px;
}
.c03 .bottom_img:after {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: #00507f;
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img:after {
    height: calc(var(--vw) * 5 / 480 * 100);
  }
}
.c03 .bottom_img .f03 {
  position: absolute;
  z-index: 2;
  width: 123px;
  top: 45px;
  left: 257px;
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .f03 {
    width: calc(var(--vw) * 123 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .f03 {
    top: calc(var(--vw) * 45 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .f03 {
    left: calc(var(--vw) * 257 / 480 * 100);
  }
}
.c03 .bottom_img .go_bottom_img {
  top: 3px;
  width: 458px;
  position: relative;
  margin-left: 20px;
  z-index: 1;
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .go_bottom_img {
    top: calc(var(--vw) * 3 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .go_bottom_img {
    width: calc(var(--vw) * 458 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .go_bottom_img {
    margin-left: calc(var(--vw) * 20 / 480 * 100);
  }
}
.c03 .bottom_img .go_bottom_img_shadow {
  position: absolute;
  bottom: 3px;
  width: 458px;
  left: 40px;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .go_bottom_img_shadow {
    width: calc(var(--vw) * 458 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .c03 .bottom_img .go_bottom_img_shadow {
    left: calc(var(--vw) * 40 / 480 * 100);
  }
}

.shindan_main {
  overflow: hidden;
  min-height: calc(100vh - 39.6px);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.shindan_main.active {
  margin-top: 10px;
}
.shindan_main .shindan {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex: 1;
}
.shindan_main .shindan #shindan_footer {
  margin-top: auto;
}

.shindan_top {
  position: relative;
  z-index: 1;
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
}
.shindan_top:after {
  content: "";
  background: url(../img/dot.png) 0 0/cover repeat-y;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  mix-blend-mode: multiply;
}
.shindan_top .img {
  position: relative;
}
.shindan_top .img img {
  position: relative;
  z-index: 1;
}
.shindan_top .img.active {
  display: none;
}
.shindan_top .img:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../img/shindan/top_img_shadow.png) 0 0/cover no-repeat;
  top: 0;
  left: 0;
  mix-blend-mode: multiply;
}

.shindan {
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
  position: relative;
  z-index: 1;
}
.shindan:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/dot.png) 0 0/cover no-repeat;
  width: 100%;
  height: 380px;
  z-index: 1;
  opacity: 0.8;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .shindan:before {
    height: calc(var(--vw) * 380 / 480 * 100);
  }
}
.shindan .shindan01 {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 {
    margin-bottom: calc(var(--vw) * 30 / 480 * 100);
  }
}
.shindan .shindan01 .in {
  position: relative;
}
.shindan .shindan01.active {
  display: none;
}
.shindan .shindan01 .ttl {
  background: url(../img/shindan/top_ttl_bg.png) 0 0/100% auto no-repeat;
  width: 100%;
  height: 105px;
  padding-top: 48px;
  text-align: center;
  position: relative;
  top: -15px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .ttl {
    height: calc(var(--vw) * 103 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .ttl {
    padding-top: calc(var(--vw) * 48 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .ttl {
    top: calc(var(--vw) * -15 / 480 * 100);
  }
}
.shindan .shindan01 .ttl:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  background: #82d2ff;
  mix-blend-mode: multiply;
  z-index: 1;
  position: absolute;
  top: 100%;
  left: 0;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .ttl:after {
    height: calc(var(--vw) * 8 / 480 * 100);
  }
}
.shindan .shindan01 .ttl img {
  width: 440px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .ttl img {
    width: calc(var(--vw) * 440 / 480 * 100);
    max-width: none;
  }
}
.shindan .shindan01 .form_block {
  position: relative;
  z-index: 2;
  padding: 0 20px;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  margin-top: 20px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block {
    padding: calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block {
    margin-top: calc(var(--vw) * 20 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .form_ttl {
  text-align: center;
  display: -ms-flex;
  display: flex;
  align-items: center;
  gap: 0 10px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .form_ttl {
    gap: calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 10 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .form_ttl:before, .shindan .shindan01 .form_block .form_ttl:after {
  content: "";
  display: inline-block;
  border-top: 2px solid #595A5A;
  flex: 1;
}
.shindan .shindan01 .form_block .form_ttl span {
  color: #595A5A;
  font-size: 20px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .form_ttl span {
    font-size: calc(var(--vw) * 20 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .list {
  position: relative;
  z-index: 2;
  display: -ms-flex;
  display: flex;
  margin-top: 10px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list {
    margin-top: calc(var(--vw) * 10 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .list input[type=radio]:checked + label {
  background: #E60012;
  color: #fff;
}
.shindan .shindan01 .form_block .list.list01 {
  gap: 0 15px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list.list01 {
    gap: calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 15 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .list.list01 li {
  width: 100%;
}
.shindan .shindan01 .form_block .list.list02 {
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 15px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list.list02 {
    gap: calc(var(--vw) * 10 / 480 * 100) calc(var(--vw) * 15 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .list.list02 li:nth-child(1), .shindan .shindan01 .form_block .list.list02 li:nth-child(4) {
  width: 100px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list.list02 li:nth-child(1), .shindan .shindan01 .form_block .list.list02 li:nth-child(4) {
    width: calc(var(--vw) * 100 / 480 * 100);
    max-width: none;
  }
}
.shindan .shindan01 .form_block .list.list02 li:nth-child(2), .shindan .shindan01 .form_block .list.list02 li:nth-child(3) {
  width: 230px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list.list02 li:nth-child(2), .shindan .shindan01 .form_block .list.list02 li:nth-child(3) {
    width: calc(var(--vw) * 230 / 480 * 100);
    max-width: none;
  }
}
.shindan .shindan01 .form_block .list li {
  text-align: center;
  overflow: hidden;
  line-height: 1;
  cursor: pointer;
}
.shindan .shindan01 .form_block .list li label {
  display: block;
  color: #595A5A;
  font-weight: 700;
  border: 3px solid #E60012;
  background: #fff;
  padding: 0.4em 0;
  border-radius: 30px;
  font-size: 17px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list li label {
    font-size: calc(var(--vw) * 17 / 480 * 100);
  }
}
.shindan .shindan01 .form_block .list li label strong {
  display: inline-block;
  font-size: 20px;
  margin-right: 0.1em;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .form_block .list li label strong {
    font-size: calc(var(--vw) * 20 / 480 * 100);
  }
}
.shindan .shindan01 .btn_checker {
  position: relative;
  width: 91.2%;
  margin: 0 auto;
  margin-top: 30px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .btn_checker {
    margin-top: calc(var(--vw) * 30 / 480 * 100);
  }
}
.shindan .shindan01 .btn_checker:hover img {
  transition: 0.4s;
  transform: scale(1.04);
}
.shindan .shindan01 .btn_checker:hover:before {
  transition: 0.4s;
  transform: scale(1.04);
}
.shindan .shindan01 .btn_checker a, .shindan .shindan01 .btn_checker button {
  display: block;
  position: relative;
  z-index: 1;
}
.shindan .shindan01 .btn_checker a img, .shindan .shindan01 .btn_checker button img {
  transition: 0.4s;
  transform: scale(1);
}
.shindan .shindan01 .btn_checker:before {
  transition: 0.4s;
  content: "";
  display: block;
  position: absolute;
  top: 8px;
  left: 10px;
  width: 100%;
  height: 98%;
  background: url(../img/btn_checker_shadow.png) 0 0/cover no-repeat;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .btn_checker:before {
    top: calc(var(--vw) * 8 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan01 .btn_checker:before {
    left: calc(var(--vw) * 10 / 480 * 100);
  }
}
.shindan .shindan02 {
  background: url(../img/contents_bg.png) 0 0/100% auto repeat-y;
}
.shindan .shindan02 .in {
  padding: 20px 20px 10px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .in {
    padding: calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 10 / 480 * 100) calc(var(--vw) * 20 / 480 * 100);
  }
}
.shindan .shindan02 .ttl {
  position: relative;
}
.shindan .shindan02 .ttl:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  background: #82d2ff;
  mix-blend-mode: multiply;
  z-index: 1;
  position: absolute;
  top: 100%;
  left: 0;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .ttl:after {
    height: calc(var(--vw) * 8 / 480 * 100);
  }
}
.shindan .shindan02 .list_wrap {
  position: relative;
  z-index: 1;
  background: #fff;
  border-radius: 20px;
  padding: 20px 30px;
  min-height: 340px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap {
    border-radius: calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap {
    padding: calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 30 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 30 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap {
    min-height: calc(var(--vw) * 340 / 480 * 100);
  }
}
.shindan .shindan02 .list_wrap:before {
  content: "";
  display: inline-block;
  position: absolute;
  z-index: -1;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 236px;
  height: 300px;
  background: url(../img/shindan/ippi_bg.png) 0 0/cover no-repeat;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap:before {
    top: calc(var(--vw) * 20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap:before {
    width: calc(var(--vw) * 236 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap:before {
    height: calc(var(--vw) * 300 / 480 * 100);
  }
}
.shindan .shindan02 .list_wrap .note {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 600;
  color: #e60012;
  margin-bottom: 15px;
}
.shindan .shindan02 .list_wrap .note span {
  display: inline-block;
  width: 30px;
  margin-right: 10px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap .note {
    font-size: calc(var(--vw) * 18 / 480 * 100);
  }
}
.shindan .shindan02 .list_wrap ul.list li {
  transition: 0.4s;
  display: none;
  align-items: center;
  font-weight: 600;
  font-size: 18px;
  margin-top: 0.3em;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap ul.list li {
    font-size: calc(var(--vw) * 18 / 480 * 100);
  }
}
.shindan .shindan02 .list_wrap ul.list li a {
  padding-left: 1.8em;
  margin-left: -1.4em;
  padding-right: 40px;
}
.shindan .shindan02 .list_wrap ul.list li.active {
  transition: 0.4s;
  display: -ms-flex;
  display: flex;
}
.shindan .shindan02 .list_wrap ul.list li:first-child {
  margin-top: 0;
}
.shindan .shindan02 .list_wrap ul.list li:before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  border: 1px solid #000;
  border-radius: 50%;
}
.shindan .shindan02 .list_wrap ul.list li.tv:after {
  pointer-events: none;
  content: "";
  display: inline-block;
  position: relative;
  top: -0.2em;
  width: 30px;
  height: 27px;
  margin-left: -30px;
  background: url(../img/shindan/ippai_tv.png) 0 0/cover no-repeat;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap ul.list li.tv:after {
    width: calc(var(--vw) * 30 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .list_wrap ul.list li.tv:after {
    height: calc(var(--vw) * 27 / 480 * 100);
  }
}
.shindan .shindan02 .img {
  height: 580px;
  margin-top: -50px;
  position: relative;
  pointer-events: none;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .img {
    height: calc(var(--vw) * 580 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .img {
    margin-top: calc(var(--vw) * -50 / 480 * 100);
  }
}
.shindan .shindan02 .img img {
  position: relative;
  z-index: 1;
  width: 422px;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .img img {
    width: calc(var(--vw) * 422 / 480 * 100);
    max-width: none;
  }
}
.shindan .shindan02 .img:before {
  z-index: 1;
  content: "";
  width: 422px;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 15px;
  background: url(../img/shindan/ippai_img_shadow.png) 0 0/cover no-repeat;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .img:before {
    width: calc(var(--vw) * 422 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .shindan .shindan02 .img:before {
    left: calc(var(--vw) * 15 / 480 * 100);
  }
}

.modal {
  width: 460px;
  border-radius: 20px;
  padding: 36px 0 10px;
  background: #fff url(../img/shindan/ippi_bg.png) center 30px/50% auto no-repeat;
  /* 動画の親枠 */
  /* サムネイル */
  /* ▼【追加】クリック後に生成されるiframeに対して比率を指定 */
  /*.thum {
    width: 184px;
    height: 138px;
    @include spwide(184);
    @include spheight(138);
    position: relative;
    z-index: 1;
    img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%,-50%);
      width: 100%;
      height: 100%;
    }
  }
  */
}
@media only screen and (max-width: 767.98px) {
  .modal {
    border-radius: calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal {
    padding: calc(var(--vw) * 36 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 10 / 480 * 100) calc(var(--vw) * 0 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal {
    width: 90%;
  }
}
.modal .modal_txt_wrap {
  padding: 0 30px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_txt_wrap {
    padding: calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 30 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 30 / 480 * 100);
  }
}
.modal .modal_ttl {
  text-align: center;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  line-height: 1.3;
  font-style: italic;
  font-weight: 900;
  font-size: 23px;
  color: #d32d26;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_ttl {
    font-size: calc(var(--vw) * 23 / 480 * 100);
  }
}
.modal .modal_txt {
  font-weight: 600;
  font-size: 18px;
  margin-top: 20px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_txt {
    font-size: calc(var(--vw) * 20 / 480 * 100);
  }
}
.modal .tv_ttl {
  width: 360px;
  margin: 0 auto;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 900;
  text-align: center;
  font-style: italic;
  color: #d32d26;
  font-size: 29px;
  margin-top: 0.3em;
  line-height: 1.4;
}
@media only screen and (max-width: 767.98px) {
  .modal .tv_ttl {
    width: calc(var(--vw) * 360 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .tv_ttl {
    font-size: calc(var(--vw) * 27 / 480 * 100);
  }
}
.modal .movie {
  margin: 0 auto;
  position: relative; /* iframeの配置基準 */
}
.modal .thum {
  cursor: pointer;
}
.modal .thum img {
  width: 100%;
  height: auto; /* 画像の本来の高さに合わせる */
  display: block; /* 画像下の数pxの隙間（ディセンダー）を消すおまじない */
}
.modal .movie iframe {
  width: 100%;
  aspect-ratio: 9/16; /* 動画が出た時だけこの比率になる */
  display: block; /* 隙間消し */
  border: none;
}
.modal .pic {
  width: 400px;
  padding-top: 18px;
  padding-bottom: 18px;
  margin: 0 auto;
}
@media only screen and (max-width: 767.98px) {
  .modal .pic {
    width: calc(var(--vw) * 400 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .pic {
    padding-top: calc(var(--vw) * 18 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .pic {
    padding-bottom: calc(var(--vw) * 18 / 480 * 100);
  }
}
.modal .movie {
  width: 400px;
  padding-top: 18px;
  padding-bottom: 18px;
  margin: 0 auto;
}
@media only screen and (max-width: 767.98px) {
  .modal .movie {
    width: calc(var(--vw) * 400 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .movie {
    padding-top: calc(var(--vw) * 18 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .movie {
    padding-bottom: calc(var(--vw) * 18 / 480 * 100);
  }
}
.modal .movie a {
  display: block;
  width: 86%;
  margin: 0 auto;
  position: relative;
}
.modal .movie a:before {
  content: "";
  position: absolute;
  bottom: 6px;
  right: 7px;
  display: block;
  width: 40px;
  height: 40px;
  background: url(../img/tv_play.png) 0 0/cover no-repeat;
  z-index: 2;
}
@media only screen and (max-width: 767.98px) {
  .modal .movie a:before {
    bottom: calc(var(--vw) * 6 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .movie a:before {
    right: calc(var(--vw) * 7 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .movie a:before {
    width: calc(var(--vw) * 40 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .movie a:before {
    height: calc(var(--vw) * 40 / 480 * 100);
  }
}
.modal #shindan_footer {
  position: relative;
  z-index: 10;
  margin-top: 30px;
  padding-bottom: 20px;
}
.modal #shindan_footer .s_in {
  text-align: center;
  line-height: 1.2;
  font-weight: 600;
  font-size: 12px;
}
.modal #shindan_footer .s_in small {
  font-weight: 600;
  font-size: 10px;
  font-family: "Noto Serif", serif;
}
.modal .modal_btn_list {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 900;
  margin-top: 30px;
  padding: 0 20px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list {
    margin-top: calc(var(--vw) * 30 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list {
    padding: calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 20 / 480 * 100) calc(var(--vw) * 0 / 480 * 100) calc(var(--vw) * 20 / 480 * 100);
  }
}
.modal .modal_btn_list li {
  margin-top: 14px;
}
.modal .modal_btn_list li:first-child {
  margin-top: 0;
}
.modal .modal_btn_list li:last-child {
  margin-top: 40px;
}
.modal .modal_btn_list li a {
  display: block;
}
.modal .modal_btn_list li.arrow_btn01 {
  color: #d32d26;
}
.modal .modal_btn_list li.arrow_btn01 p {
  position: relative;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.8;
  font-size: 17px;
  margin-bottom: 0.2em;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn01 p {
    font-size: calc(var(--vw) * 17 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn01 p:before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn01 p:before {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn01 p:before {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn01 p:after {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn01 p:after {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn01 p:after {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn01 p img {
  height: 40px;
}
.modal .modal_btn_list li.arrow_btn02 {
  color: #000;
  font-weight: 700;
}
.modal .modal_btn_list li.arrow_btn02 p {
  position: relative;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.8;
  font-size: 17px;
  margin-bottom: 0.2em;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn02 p {
    font-size: calc(var(--vw) * 17 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn02 p:before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn02 p:before {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn02 p:before {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn02 p:after {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn02 p:after {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn02 p:after {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn02 p img {
  height: 40px;
}
.modal .modal_btn_list li.arrow_btn03 {
  color: #000;
  font-weight: 700;
}
.modal .modal_btn_list li.arrow_btn03 p {
  position: relative;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.8;
  font-size: 17px;
  margin-bottom: 0.2em;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn03 p {
    font-size: calc(var(--vw) * 17 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn03 p:before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn03 p:before {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn03 p:before {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn03 p:after {
  content: "";
  display: inline-block;
  width: 26px;
  height: 33px;
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn03 p:after {
    width: calc(var(--vw) * 26 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .modal .modal_btn_list li.arrow_btn03 p:after {
    height: calc(var(--vw) * 33 / 480 * 100);
  }
}
.modal .modal_btn_list li.arrow_btn03 p img {
  height: 40px;
}
.modal .modal_btn_list li img {
  display: block;
  transition: 0.4s;
  transform: scale(1);
}
.modal .modal_btn_list li a:hover img {
  transition: 0.4s;
  transform: scale(1.04);
}

.fancybox__content > .carousel__button.is-close {
  background: #C8C8C8;
  top: -20px;
  right: -20px;
}
@media only screen and (max-width: 767.98px) {
  .fancybox__content > .carousel__button.is-close {
    top: calc(var(--vw) * -20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .fancybox__content > .carousel__button.is-close {
    right: calc(var(--vw) * -20 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .fancybox__content > .carousel__button.is-close {
    width: calc(var(--vw) * 42 / 480 * 100);
    max-width: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .fancybox__content > .carousel__button.is-close {
    height: calc(var(--vw) * 42 / 480 * 100);
  }
}

.fancybox__iframe + .carousel__button.is-close {
  top: -50px;
  right: 0px;
}
@media only screen and (max-width: 767.98px) {
  .fancybox__iframe + .carousel__button.is-close {
    top: calc(var(--vw) * -50 / 480 * 100);
  }
}
@media only screen and (max-width: 767.98px) {
  .fancybox__iframe + .carousel__button.is-close {
    right: calc(var(--vw) * 0 / 480 * 100);
  }
}

.carousel__button svg {
  stroke: #000;
}

.tatsunoko {
  width: 80px;
  margin: 0 auto 3px;
}

.disc {
  padding-left: 1.2em;
}
.disc li {
  list-style: disc;
  margin-top: 0.3em;
}
.disc li:first-child {
  margin-top: 0;
}

.decimal {
  padding-left: 1.2em;
}
.decimal li {
  list-style: decimal;
  margin-top: 0.3em;
}
.decimal li:first-child {
  margin-top: 0;
}

.regular {
  font-weight: 400;
}

.bold {
  font-weight: 600;
}

.tdeco_under {
  text-decoration: underline;
}

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

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

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

.align_left {
  text-align: left !important;
  text-align: justify !important;
}

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

@media only screen and (max-width: 767.98px) {
  .sp_align_center {
    text-align: center !important;
  }
}

@media only screen and (max-width: 767.98px) {
  .sp_align_right {
    text-align: right !important;
  }
}

@media only screen and (max-width: 767.98px) {
  .sp_align_left {
    text-align: left !important;
    text-align: justify !important;
  }
}

.dblock {
  display: block !important;
}

.dib {
  display: inline-block !important;
}

@media only screen and (max-width: 767.98px) {
  .spblock {
    display: block;
    min-width: 0 !important;
    width: auto !important;
  }
}

@media only screen and (max-width: 767.98px) {
  .sptable {
    display: table !important;
  }
}

.relative {
  position: relative;
}

.fz10 {
  font-size: calc(var(--vw) * 10 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz10 {
    font-size: 10px;
  }
}

.fz11 {
  font-size: calc(var(--vw) * 11 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz11 {
    font-size: 11px;
  }
}

.fz12 {
  font-size: calc(var(--vw) * 12 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz12 {
    font-size: 12px;
  }
}

.fz13 {
  font-size: calc(var(--vw) * 13 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz13 {
    font-size: 13px;
  }
}

.fz14 {
  font-size: calc(var(--vw) * 14 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz14 {
    font-size: 14px;
  }
}

.fz15 {
  font-size: calc(var(--vw) * 15 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz15 {
    font-size: 15px;
  }
}

.fz16 {
  font-size: calc(var(--vw) * 16 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz16 {
    font-size: 16px;
  }
}

.fz17 {
  font-size: calc(var(--vw) * 17 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz17 {
    font-size: 17px;
  }
}

.fz18 {
  font-size: calc(var(--vw) * 18 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz18 {
    font-size: 18px;
  }
}

.fz19 {
  font-size: calc(var(--vw) * 19 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz19 {
    font-size: 19px;
  }
}

.fz20 {
  font-size: calc(var(--vw) * 20 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz20 {
    font-size: 20px;
  }
}

.fz21 {
  font-size: calc(var(--vw) * 21 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz21 {
    font-size: 21px;
  }
}

.fz22 {
  font-size: calc(var(--vw) * 22 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz22 {
    font-size: 22px;
  }
}

.fz23 {
  font-size: calc(var(--vw) * 23 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz23 {
    font-size: 23px;
  }
}

.fz24 {
  font-size: calc(var(--vw) * 24 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz24 {
    font-size: 24px;
  }
}

.fz25 {
  font-size: calc(var(--vw) * 25 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz25 {
    font-size: 25px;
  }
}

.fz26 {
  font-size: calc(var(--vw) * 26 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz26 {
    font-size: 26px;
  }
}

.fz27 {
  font-size: calc(var(--vw) * 27 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz27 {
    font-size: 27px;
  }
}

.fz28 {
  font-size: calc(var(--vw) * 28 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz28 {
    font-size: 28px;
  }
}

.fz29 {
  font-size: calc(var(--vw) * 29 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz29 {
    font-size: 29px;
  }
}

.fz30 {
  font-size: calc(var(--vw) * 30 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz30 {
    font-size: 30px;
  }
}

.fz31 {
  font-size: calc(var(--vw) * 31 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz31 {
    font-size: 31px;
  }
}

.fz32 {
  font-size: calc(var(--vw) * 32 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz32 {
    font-size: 32px;
  }
}

.fz33 {
  font-size: calc(var(--vw) * 33 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz33 {
    font-size: 33px;
  }
}

.fz34 {
  font-size: calc(var(--vw) * 34 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz34 {
    font-size: 34px;
  }
}

.fz35 {
  font-size: calc(var(--vw) * 35 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz35 {
    font-size: 35px;
  }
}

.fz36 {
  font-size: calc(var(--vw) * 36 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz36 {
    font-size: 36px;
  }
}

.fz37 {
  font-size: calc(var(--vw) * 37 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz37 {
    font-size: 37px;
  }
}

.fz38 {
  font-size: calc(var(--vw) * 38 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz38 {
    font-size: 38px;
  }
}

.fz39 {
  font-size: calc(var(--vw) * 39 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz39 {
    font-size: 39px;
  }
}

.fz40 {
  font-size: calc(var(--vw) * 40 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .fz40 {
    font-size: 40px;
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz10 {
    font-size: calc(var(--vw) * 10 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz11 {
    font-size: calc(var(--vw) * 11 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz12 {
    font-size: calc(var(--vw) * 12 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz13 {
    font-size: calc(var(--vw) * 13 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz14 {
    font-size: calc(var(--vw) * 14 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz15 {
    font-size: calc(var(--vw) * 15 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz16 {
    font-size: calc(var(--vw) * 16 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz17 {
    font-size: calc(var(--vw) * 17 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz18 {
    font-size: calc(var(--vw) * 18 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz19 {
    font-size: calc(var(--vw) * 19 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz20 {
    font-size: calc(var(--vw) * 20 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz21 {
    font-size: calc(var(--vw) * 21 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz22 {
    font-size: calc(var(--vw) * 22 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz23 {
    font-size: calc(var(--vw) * 23 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz24 {
    font-size: calc(var(--vw) * 24 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz25 {
    font-size: calc(var(--vw) * 25 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz26 {
    font-size: calc(var(--vw) * 26 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz27 {
    font-size: calc(var(--vw) * 27 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz28 {
    font-size: calc(var(--vw) * 28 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz29 {
    font-size: calc(var(--vw) * 29 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz30 {
    font-size: calc(var(--vw) * 30 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz31 {
    font-size: calc(var(--vw) * 31 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz32 {
    font-size: calc(var(--vw) * 32 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz33 {
    font-size: calc(var(--vw) * 33 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz34 {
    font-size: calc(var(--vw) * 34 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz35 {
    font-size: calc(var(--vw) * 35 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz36 {
    font-size: calc(var(--vw) * 36 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz37 {
    font-size: calc(var(--vw) * 37 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz38 {
    font-size: calc(var(--vw) * 38 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz39 {
    font-size: calc(var(--vw) * 39 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spfz40 {
    font-size: calc(var(--vw) * 40 / 480 * 100);
  }
}

.mt0 {
  margin-top: calc(var(--vw) * 0 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt0 {
    margin-top: 0px;
  }
}

.mt10 {
  margin-top: calc(var(--vw) * 10 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt10 {
    margin-top: 10px;
  }
}

.mt20 {
  margin-top: calc(var(--vw) * 20 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt20 {
    margin-top: 20px;
  }
}

.mt30 {
  margin-top: calc(var(--vw) * 30 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt30 {
    margin-top: 30px;
  }
}

.mt40 {
  margin-top: calc(var(--vw) * 40 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt40 {
    margin-top: 40px;
  }
}

.mt50 {
  margin-top: calc(var(--vw) * 50 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt50 {
    margin-top: 50px;
  }
}

.mt60 {
  margin-top: calc(var(--vw) * 60 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt60 {
    margin-top: 60px;
  }
}

.mt70 {
  margin-top: calc(var(--vw) * 70 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt70 {
    margin-top: 70px;
  }
}

.mt80 {
  margin-top: calc(var(--vw) * 80 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt80 {
    margin-top: 80px;
  }
}

.mt90 {
  margin-top: calc(var(--vw) * 90 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt90 {
    margin-top: 90px;
  }
}

.mt100 {
  margin-top: calc(var(--vw) * 100 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt100 {
    margin-top: 100px;
  }
}

.mt110 {
  margin-top: calc(var(--vw) * 110 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt110 {
    margin-top: 110px;
  }
}

.mt120 {
  margin-top: calc(var(--vw) * 120 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mt120 {
    margin-top: 120px;
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt0 {
    margin-top: calc(var(--vw) * 0 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt10 {
    margin-top: calc(var(--vw) * 10 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt20 {
    margin-top: calc(var(--vw) * 20 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt30 {
    margin-top: calc(var(--vw) * 30 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt40 {
    margin-top: calc(var(--vw) * 40 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt50 {
    margin-top: calc(var(--vw) * 50 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt60 {
    margin-top: calc(var(--vw) * 60 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt70 {
    margin-top: calc(var(--vw) * 70 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt80 {
    margin-top: calc(var(--vw) * 80 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt90 {
    margin-top: calc(var(--vw) * 90 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt100 {
    margin-top: calc(var(--vw) * 100 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt110 {
    margin-top: calc(var(--vw) * 110 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmt120 {
    margin-top: calc(var(--vw) * 120 / 480 * 100);
  }
}

.mb0 {
  margin-bottom: calc(var(--vw) * 0 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb0 {
    margin-bottom: 0px;
  }
}

.mb10 {
  margin-bottom: calc(var(--vw) * 10 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb10 {
    margin-bottom: 10px;
  }
}

.mb20 {
  margin-bottom: calc(var(--vw) * 20 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb20 {
    margin-bottom: 20px;
  }
}

.mb30 {
  margin-bottom: calc(var(--vw) * 30 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb30 {
    margin-bottom: 30px;
  }
}

.mb40 {
  margin-bottom: calc(var(--vw) * 40 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb40 {
    margin-bottom: 40px;
  }
}

.mb50 {
  margin-bottom: calc(var(--vw) * 50 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb50 {
    margin-bottom: 50px;
  }
}

.mb60 {
  margin-bottom: calc(var(--vw) * 60 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb60 {
    margin-bottom: 60px;
  }
}

.mb70 {
  margin-bottom: calc(var(--vw) * 70 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb70 {
    margin-bottom: 70px;
  }
}

.mb80 {
  margin-bottom: calc(var(--vw) * 80 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb80 {
    margin-bottom: 80px;
  }
}

.mb90 {
  margin-bottom: calc(var(--vw) * 90 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb90 {
    margin-bottom: 90px;
  }
}

.mb100 {
  margin-bottom: calc(var(--vw) * 100 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb100 {
    margin-bottom: 100px;
  }
}

.mb110 {
  margin-bottom: calc(var(--vw) * 110 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb110 {
    margin-bottom: 110px;
  }
}

.mb120 {
  margin-bottom: calc(var(--vw) * 120 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mb120 {
    margin-bottom: 120px;
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb0 {
    margin-bottom: calc(var(--vw) * 0 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb10 {
    margin-bottom: calc(var(--vw) * 10 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb20 {
    margin-bottom: calc(var(--vw) * 20 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb30 {
    margin-bottom: calc(var(--vw) * 30 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb40 {
    margin-bottom: calc(var(--vw) * 40 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb50 {
    margin-bottom: calc(var(--vw) * 50 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb60 {
    margin-bottom: calc(var(--vw) * 60 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb70 {
    margin-bottom: calc(var(--vw) * 70 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb80 {
    margin-bottom: calc(var(--vw) * 80 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb90 {
    margin-bottom: calc(var(--vw) * 90 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb100 {
    margin-bottom: calc(var(--vw) * 100 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb110 {
    margin-bottom: calc(var(--vw) * 110 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmb120 {
    margin-bottom: calc(var(--vw) * 120 / 480 * 100);
  }
}

.ml0 {
  margin-left: calc(var(--vw) * 0 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml0 {
    margin-left: 0px;
  }
}

.ml10 {
  margin-left: calc(var(--vw) * 10 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml10 {
    margin-left: 10px;
  }
}

.ml20 {
  margin-left: calc(var(--vw) * 20 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml20 {
    margin-left: 20px;
  }
}

.ml30 {
  margin-left: calc(var(--vw) * 30 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml30 {
    margin-left: 30px;
  }
}

.ml40 {
  margin-left: calc(var(--vw) * 40 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml40 {
    margin-left: 40px;
  }
}

.ml50 {
  margin-left: calc(var(--vw) * 50 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml50 {
    margin-left: 50px;
  }
}

.ml60 {
  margin-left: calc(var(--vw) * 60 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml60 {
    margin-left: 60px;
  }
}

.ml70 {
  margin-left: calc(var(--vw) * 70 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml70 {
    margin-left: 70px;
  }
}

.ml80 {
  margin-left: calc(var(--vw) * 80 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml80 {
    margin-left: 80px;
  }
}

.ml90 {
  margin-left: calc(var(--vw) * 90 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml90 {
    margin-left: 90px;
  }
}

.ml100 {
  margin-left: calc(var(--vw) * 100 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml100 {
    margin-left: 100px;
  }
}

.ml110 {
  margin-left: calc(var(--vw) * 110 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml110 {
    margin-left: 110px;
  }
}

.ml120 {
  margin-left: calc(var(--vw) * 120 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .ml120 {
    margin-left: 120px;
  }
}

@media only screen and (max-width: 767.98px) {
  .spml0 {
    margin-left: calc(var(--vw) * 0 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml10 {
    margin-left: calc(var(--vw) * 10 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml20 {
    margin-left: calc(var(--vw) * 20 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml30 {
    margin-left: calc(var(--vw) * 30 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml40 {
    margin-left: calc(var(--vw) * 40 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml50 {
    margin-left: calc(var(--vw) * 50 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml60 {
    margin-left: calc(var(--vw) * 60 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml70 {
    margin-left: calc(var(--vw) * 70 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml80 {
    margin-left: calc(var(--vw) * 80 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml90 {
    margin-left: calc(var(--vw) * 90 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml100 {
    margin-left: calc(var(--vw) * 100 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml110 {
    margin-left: calc(var(--vw) * 110 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spml120 {
    margin-left: calc(var(--vw) * 120 / 480 * 100);
  }
}

.mr0 {
  margin-right: calc(var(--vw) * 0 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr0 {
    margin-right: 0px;
  }
}

.mr10 {
  margin-right: calc(var(--vw) * 10 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr10 {
    margin-right: 10px;
  }
}

.mr20 {
  margin-right: calc(var(--vw) * 20 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr20 {
    margin-right: 20px;
  }
}

.mr30 {
  margin-right: calc(var(--vw) * 30 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr30 {
    margin-right: 30px;
  }
}

.mr40 {
  margin-right: calc(var(--vw) * 40 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr40 {
    margin-right: 40px;
  }
}

.mr50 {
  margin-right: calc(var(--vw) * 50 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr50 {
    margin-right: 50px;
  }
}

.mr60 {
  margin-right: calc(var(--vw) * 60 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr60 {
    margin-right: 60px;
  }
}

.mr70 {
  margin-right: calc(var(--vw) * 70 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr70 {
    margin-right: 70px;
  }
}

.mr80 {
  margin-right: calc(var(--vw) * 80 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr80 {
    margin-right: 80px;
  }
}

.mr90 {
  margin-right: calc(var(--vw) * 90 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr90 {
    margin-right: 90px;
  }
}

.mr100 {
  margin-right: calc(var(--vw) * 100 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr100 {
    margin-right: 100px;
  }
}

.mr110 {
  margin-right: calc(var(--vw) * 110 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr110 {
    margin-right: 110px;
  }
}

.mr120 {
  margin-right: calc(var(--vw) * 120 / 1900 * 100);
}
@media screen and (min-width: 1518px) {
  .mr120 {
    margin-right: 120px;
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr0 {
    margin-right: calc(var(--vw) * 0 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr10 {
    margin-right: calc(var(--vw) * 10 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr20 {
    margin-right: calc(var(--vw) * 20 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr30 {
    margin-right: calc(var(--vw) * 30 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr40 {
    margin-right: calc(var(--vw) * 40 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr50 {
    margin-right: calc(var(--vw) * 50 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr60 {
    margin-right: calc(var(--vw) * 60 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr70 {
    margin-right: calc(var(--vw) * 70 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr80 {
    margin-right: calc(var(--vw) * 80 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr90 {
    margin-right: calc(var(--vw) * 90 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr100 {
    margin-right: calc(var(--vw) * 100 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr110 {
    margin-right: calc(var(--vw) * 110 / 480 * 100);
  }
}

@media only screen and (max-width: 767.98px) {
  .spmr120 {
    margin-right: calc(var(--vw) * 120 / 480 * 100);
  }
}
