@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;700&display=swap");
/***
    The new CSS reset - version 1.11 (last updated 20.9.2023)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
      text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol, ul, menu {
  list-style: none;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input, textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::-webkit-input-placeholder {
  color: unset;
}
::-moz-placeholder {
  color: unset;
}
:-ms-input-placeholder {
  color: unset;
}
::-ms-input-placeholder {
  color: unset;
}
::placeholder {
  color: unset;
}

/* remove default dot (•) sign */
::marker {
  content: initial;
}

/* fix the feature of 'hidden' attribute.
   display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
   - fix for the content editable attribute will work properly.
   - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 16px;
  font-family: "M PLUS 1p", sans-serif;
  color: #000;
}

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

@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

@media only screen and (min-width: 769px) {
  .sp {
    display: none;
  }
}

.tar {
  text-align: right;
}

.tac {
  text-align: center;
}

.medium {
  font-size: 14px;
  font-size: 0.875rem;
}
@media only screen and (max-width: 768px) {
  .medium {
    font-size: 24px;
    font-size: 3.2vw;
  }
}

.small {
  font-size: 12px;
  font-size: 0.75rem;
}
@media only screen and (max-width: 768px) {
  .small {
    font-size: 24px;
    font-size: 3.2vw;
  }
}

a {
  text-decoration: none;
}

body {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 28px;
    font-size: 3.7333333333vw;
  }
}

.mbnone {
  margin-bottom: 0 !important;
}
@media only screen and (max-width: 768px) {
  .mbnone--sp {
    margin-bottom: 0 !important;
  }
}
.mblv1 {
  margin-bottom: 5px;
}
.mblv2 {
  margin-bottom: 10px !important;
}
@media only screen and (min-width: 769px) {
  .mblv2--pc {
    margin-bottom: 10px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv2--tb {
    margin-bottom: 10px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv2--sp {
    margin-bottom: 2.6666666667vw !important;
  }
}
.mblv3 {
  margin-bottom: 15px !important;
}
@media only screen and (min-width: 769px) {
  .mblv3--pc {
    margin-bottom: 15px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv3--tb {
    margin-bottom: 15px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv3--sp {
    margin-bottom: 4vw !important;
  }
}
.mblv4 {
  margin-bottom: 20px !important;
}
@media only screen and (min-width: 769px) {
  .mblv4--pc {
    margin-bottom: 20px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv4--tb {
    margin-bottom: 20px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv4--sp {
    margin-bottom: 5.3333333333vw !important;
  }
}
.mblv5 {
  margin-bottom: 25px !important;
}
@media only screen and (min-width: 769px) {
  .mblv5--pc {
    margin-bottom: 25px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv5--tb {
    margin-bottom: 25px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv5--sp {
    margin-bottom: 6.6666666667vw !important;
  }
}
.mblv6 {
  margin-bottom: 30px !important;
}
@media only screen and (min-width: 769px) {
  .mblv6--pc {
    margin-bottom: 30px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv6--tb {
    margin-bottom: 30px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv6--sp {
    margin-bottom: 8vw !important;
  }
}
.mblv7 {
  margin-bottom: 35px !important;
}
@media only screen and (min-width: 769px) {
  .mblv7--pc {
    margin-bottom: 35px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv7--tb {
    margin-bottom: 35px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv7--sp {
    margin-bottom: 9.3333333333vw !important;
  }
}
.mblv8 {
  margin-bottom: 40px !important;
}
@media only screen and (min-width: 769px) {
  .mblv8--pc {
    margin-bottom: 40px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv8--tb {
    margin-bottom: 40px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv8--sp {
    margin-bottom: 10.6666666667vw !important;
  }
}
.mblv9 {
  margin-bottom: 45px !important;
}
@media only screen and (min-width: 769px) {
  .mblv9--pc {
    margin-bottom: 45px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv9--tb {
    margin-bottom: 45px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv9--sp {
    margin-bottom: 12vw !important;
  }
}
.mblv10 {
  margin-bottom: 50px !important;
}
@media only screen and (min-width: 769px) {
  .mblv10--pc {
    margin-bottom: 50px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv10--tb {
    margin-bottom: 50px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv10--sp {
    margin-bottom: 13.3333333333vw !important;
  }
}
.mblv11 {
  margin-bottom: 55px !important;
}
@media only screen and (min-width: 769px) {
  .mblv11--pc {
    margin-bottom: 55px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv11--tb {
    margin-bottom: 55px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv11--sp {
    margin-bottom: 14.6666666667vw !important;
  }
}
.mblv12 {
  margin-bottom: 60px !important;
}
@media only screen and (min-width: 769px) {
  .mblv12--pc {
    margin-bottom: 60px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv12--tb {
    margin-bottom: 60px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv12--sp {
    margin-bottom: 16vw !important;
  }
}
.mblv13 {
  margin-bottom: 65px !important;
}
@media only screen and (min-width: 769px) {
  .mblv13--pc {
    margin-bottom: 65px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv13--tb {
    margin-bottom: 65px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv13--sp {
    margin-bottom: 17.3333333333vw !important;
  }
}
.mblv14 {
  margin-bottom: 70px !important;
}
@media only screen and (min-width: 769px) {
  .mblv14--pc {
    margin-bottom: 70px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv14--tb {
    margin-bottom: 70px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv14--sp {
    margin-bottom: 18.6666666667vw !important;
  }
}
.mblv15 {
  margin-bottom: 75px !important;
}
@media only screen and (min-width: 769px) {
  .mblv15--pc {
    margin-bottom: 75px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv15--tb {
    margin-bottom: 75px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv15--sp {
    margin-bottom: 20vw !important;
  }
}
.mblv16 {
  margin-bottom: 80px !important;
}
@media only screen and (min-width: 769px) {
  .mblv16--pc {
    margin-bottom: 80px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv16--tb {
    margin-bottom: 80px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv16--sp {
    margin-bottom: 21.3333333333vw !important;
  }
}
.mblv17 {
  margin-bottom: 85px !important;
}
@media only screen and (min-width: 769px) {
  .mblv17--pc {
    margin-bottom: 85px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv17--tb {
    margin-bottom: 85px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv17--sp {
    margin-bottom: 22.6666666667vw !important;
  }
}
.mblv18 {
  margin-bottom: 90px !important;
}
@media only screen and (min-width: 769px) {
  .mblv18--pc {
    margin-bottom: 90px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv18--tb {
    margin-bottom: 90px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv18--sp {
    margin-bottom: 24vw !important;
  }
}
.mblv19 {
  margin-bottom: 95px !important;
}
@media only screen and (min-width: 769px) {
  .mblv19--pc {
    margin-bottom: 95px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv19--tb {
    margin-bottom: 95px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv19--sp {
    margin-bottom: 25.3333333333vw !important;
  }
}
.mblv20 {
  margin-bottom: 100px !important;
}
@media only screen and (min-width: 769px) {
  .mblv20--pc {
    margin-bottom: 100px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv20--tb {
    margin-bottom: 100px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv20--sp {
    margin-bottom: 26.6666666667vw !important;
  }
}
.mblv21 {
  margin-bottom: 105px !important;
}
@media only screen and (min-width: 769px) {
  .mblv21--pc {
    margin-bottom: 105px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv21--tb {
    margin-bottom: 105px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv21--sp {
    margin-bottom: 28vw !important;
  }
}
.mblv22 {
  margin-bottom: 110px !important;
}
@media only screen and (min-width: 769px) {
  .mblv22--pc {
    margin-bottom: 110px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv22--tb {
    margin-bottom: 110px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv22--sp {
    margin-bottom: 29.3333333333vw !important;
  }
}
.mblv23 {
  margin-bottom: 115px !important;
}
@media only screen and (min-width: 769px) {
  .mblv23--pc {
    margin-bottom: 115px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv23--tb {
    margin-bottom: 115px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv23--sp {
    margin-bottom: 30.6666666667vw !important;
  }
}
.mblv24 {
  margin-bottom: 120px !important;
}
@media only screen and (min-width: 769px) {
  .mblv24--pc {
    margin-bottom: 120px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv24--tb {
    margin-bottom: 120px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv24--sp {
    margin-bottom: 32vw !important;
  }
}
.mblv25 {
  margin-bottom: 125px !important;
}
@media only screen and (min-width: 769px) {
  .mblv25--pc {
    margin-bottom: 125px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv25--tb {
    margin-bottom: 125px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv25--sp {
    margin-bottom: 33.3333333333vw !important;
  }
}
.mblv26 {
  margin-bottom: 130px !important;
}
@media only screen and (min-width: 769px) {
  .mblv26--pc {
    margin-bottom: 130px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv26--tb {
    margin-bottom: 130px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv26--sp {
    margin-bottom: 34.6666666667vw !important;
  }
}
.mblv27 {
  margin-bottom: 135px !important;
}
@media only screen and (min-width: 769px) {
  .mblv27--pc {
    margin-bottom: 135px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv27--tb {
    margin-bottom: 135px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv27--sp {
    margin-bottom: 36vw !important;
  }
}
.mblv28 {
  margin-bottom: 140px !important;
}
@media only screen and (min-width: 769px) {
  .mblv28--pc {
    margin-bottom: 140px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv28--tb {
    margin-bottom: 140px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv28--sp {
    margin-bottom: 37.3333333333vw !important;
  }
}
.mblv29 {
  margin-bottom: 145px !important;
}
@media only screen and (min-width: 769px) {
  .mblv29--pc {
    margin-bottom: 145px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv29--tb {
    margin-bottom: 145px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv29--sp {
    margin-bottom: 38.6666666667vw !important;
  }
}
.mblv30 {
  margin-bottom: 150px !important;
}
@media only screen and (min-width: 769px) {
  .mblv30--pc {
    margin-bottom: 150px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mblv30--tb {
    margin-bottom: 150px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mblv30--sp {
    margin-bottom: 40vw !important;
  }
}

.mtnone {
  margin-top: 0 !important;
}
@media only screen and (max-width: 768px) {
  .mtnone--sp {
    margin-top: 0 !important;
  }
}
.mtlv1 {
  margin-top: 5px;
}
.mtlv2 {
  margin-top: 10px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv2--pc {
    margin-top: 10px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv2--tb {
    margin-top: 10px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv2--sp {
    margin-top: 2.6666666667vw !important;
  }
}
.mtlv3 {
  margin-top: 15px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv3--pc {
    margin-top: 15px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv3--tb {
    margin-top: 15px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv3--sp {
    margin-top: 4vw !important;
  }
}
.mtlv4 {
  margin-top: 20px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv4--pc {
    margin-top: 20px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv4--tb {
    margin-top: 20px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv4--sp {
    margin-top: 5.3333333333vw !important;
  }
}
.mtlv5 {
  margin-top: 25px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv5--pc {
    margin-top: 25px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv5--tb {
    margin-top: 25px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv5--sp {
    margin-top: 6.6666666667vw !important;
  }
}
.mtlv6 {
  margin-top: 30px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv6--pc {
    margin-top: 30px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv6--tb {
    margin-top: 30px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv6--sp {
    margin-top: 8vw !important;
  }
}
.mtlv7 {
  margin-top: 35px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv7--pc {
    margin-top: 35px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv7--tb {
    margin-top: 35px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv7--sp {
    margin-top: 9.3333333333vw !important;
  }
}
.mtlv8 {
  margin-top: 40px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv8--pc {
    margin-top: 40px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv8--tb {
    margin-top: 40px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv8--sp {
    margin-top: 10.6666666667vw !important;
  }
}
.mtlv9 {
  margin-top: 45px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv9--pc {
    margin-top: 45px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv9--tb {
    margin-top: 45px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv9--sp {
    margin-top: 12vw !important;
  }
}
.mtlv10 {
  margin-top: 50px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv10--pc {
    margin-top: 50px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv10--tb {
    margin-top: 50px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv10--sp {
    margin-top: 13.3333333333vw !important;
  }
}
.mtlv11 {
  margin-top: 55px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv11--pc {
    margin-top: 55px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv11--tb {
    margin-top: 55px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv11--sp {
    margin-top: 14.6666666667vw !important;
  }
}
.mtlv12 {
  margin-top: 60px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv12--pc {
    margin-top: 60px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv12--tb {
    margin-top: 60px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv12--sp {
    margin-top: 16vw !important;
  }
}
.mtlv13 {
  margin-top: 65px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv13--pc {
    margin-top: 65px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv13--tb {
    margin-top: 65px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv13--sp {
    margin-top: 17.3333333333vw !important;
  }
}
.mtlv14 {
  margin-top: 70px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv14--pc {
    margin-top: 70px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv14--tb {
    margin-top: 70px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv14--sp {
    margin-top: 18.6666666667vw !important;
  }
}
.mtlv15 {
  margin-top: 75px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv15--pc {
    margin-top: 75px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv15--tb {
    margin-top: 75px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv15--sp {
    margin-top: 20vw !important;
  }
}
.mtlv16 {
  margin-top: 80px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv16--pc {
    margin-top: 80px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv16--tb {
    margin-top: 80px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv16--sp {
    margin-top: 21.3333333333vw !important;
  }
}
.mtlv17 {
  margin-top: 85px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv17--pc {
    margin-top: 85px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv17--tb {
    margin-top: 85px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv17--sp {
    margin-top: 22.6666666667vw !important;
  }
}
.mtlv18 {
  margin-top: 90px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv18--pc {
    margin-top: 90px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv18--tb {
    margin-top: 90px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv18--sp {
    margin-top: 24vw !important;
  }
}
.mtlv19 {
  margin-top: 95px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv19--pc {
    margin-top: 95px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv19--tb {
    margin-top: 95px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv19--sp {
    margin-top: 25.3333333333vw !important;
  }
}
.mtlv20 {
  margin-top: 100px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv20--pc {
    margin-top: 100px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv20--tb {
    margin-top: 100px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv20--sp {
    margin-top: 26.6666666667vw !important;
  }
}
.mtlv21 {
  margin-top: 105px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv21--pc {
    margin-top: 105px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv21--tb {
    margin-top: 105px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv21--sp {
    margin-top: 28vw !important;
  }
}
.mtlv22 {
  margin-top: 110px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv22--pc {
    margin-top: 110px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv22--tb {
    margin-top: 110px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv22--sp {
    margin-top: 29.3333333333vw !important;
  }
}
.mtlv23 {
  margin-top: 115px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv23--pc {
    margin-top: 115px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv23--tb {
    margin-top: 115px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv23--sp {
    margin-top: 30.6666666667vw !important;
  }
}
.mtlv24 {
  margin-top: 120px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv24--pc {
    margin-top: 120px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv24--tb {
    margin-top: 120px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv24--sp {
    margin-top: 32vw !important;
  }
}
.mtlv25 {
  margin-top: 125px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv25--pc {
    margin-top: 125px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv25--tb {
    margin-top: 125px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv25--sp {
    margin-top: 33.3333333333vw !important;
  }
}
.mtlv26 {
  margin-top: 130px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv26--pc {
    margin-top: 130px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv26--tb {
    margin-top: 130px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv26--sp {
    margin-top: 34.6666666667vw !important;
  }
}
.mtlv27 {
  margin-top: 135px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv27--pc {
    margin-top: 135px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv27--tb {
    margin-top: 135px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv27--sp {
    margin-top: 36vw !important;
  }
}
.mtlv28 {
  margin-top: 140px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv28--pc {
    margin-top: 140px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv28--tb {
    margin-top: 140px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv28--sp {
    margin-top: 37.3333333333vw !important;
  }
}
.mtlv29 {
  margin-top: 145px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv29--pc {
    margin-top: 145px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv29--tb {
    margin-top: 145px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv29--sp {
    margin-top: 38.6666666667vw !important;
  }
}
.mtlv30 {
  margin-top: 150px !important;
}
@media only screen and (min-width: 769px) {
  .mtlv30--pc {
    margin-top: 150px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .mtlv30--tb {
    margin-top: 150px !important;
  }
}
@media only screen and (max-width: 768px) {
  .mtlv30--sp {
    margin-top: 40vw !important;
  }
}

.pbnone {
  padding-bottom: 0 !important;
}
@media only screen and (max-width: 768px) {
  .pbnone--sp {
    padding-bottom: 0 !important;
  }
}
.pblv1 {
  padding-bottom: 5px;
}
.pblv2 {
  padding-bottom: 10px !important;
}
@media only screen and (min-width: 769px) {
  .pblv2--pc {
    padding-bottom: 10px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv2--tb {
    padding-bottom: 10px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv2--sp {
    padding-bottom: 2.6666666667vw !important;
  }
}
.pblv3 {
  padding-bottom: 15px !important;
}
@media only screen and (min-width: 769px) {
  .pblv3--pc {
    padding-bottom: 15px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv3--tb {
    padding-bottom: 15px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv3--sp {
    padding-bottom: 4vw !important;
  }
}
.pblv4 {
  padding-bottom: 20px !important;
}
@media only screen and (min-width: 769px) {
  .pblv4--pc {
    padding-bottom: 20px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv4--tb {
    padding-bottom: 20px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv4--sp {
    padding-bottom: 5.3333333333vw !important;
  }
}
.pblv5 {
  padding-bottom: 25px !important;
}
@media only screen and (min-width: 769px) {
  .pblv5--pc {
    padding-bottom: 25px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv5--tb {
    padding-bottom: 25px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv5--sp {
    padding-bottom: 6.6666666667vw !important;
  }
}
.pblv6 {
  padding-bottom: 30px !important;
}
@media only screen and (min-width: 769px) {
  .pblv6--pc {
    padding-bottom: 30px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv6--tb {
    padding-bottom: 30px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv6--sp {
    padding-bottom: 8vw !important;
  }
}
.pblv7 {
  padding-bottom: 35px !important;
}
@media only screen and (min-width: 769px) {
  .pblv7--pc {
    padding-bottom: 35px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv7--tb {
    padding-bottom: 35px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv7--sp {
    padding-bottom: 9.3333333333vw !important;
  }
}
.pblv8 {
  padding-bottom: 40px !important;
}
@media only screen and (min-width: 769px) {
  .pblv8--pc {
    padding-bottom: 40px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv8--tb {
    padding-bottom: 40px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv8--sp {
    padding-bottom: 10.6666666667vw !important;
  }
}
.pblv9 {
  padding-bottom: 45px !important;
}
@media only screen and (min-width: 769px) {
  .pblv9--pc {
    padding-bottom: 45px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv9--tb {
    padding-bottom: 45px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv9--sp {
    padding-bottom: 12vw !important;
  }
}
.pblv10 {
  padding-bottom: 50px !important;
}
@media only screen and (min-width: 769px) {
  .pblv10--pc {
    padding-bottom: 50px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv10--tb {
    padding-bottom: 50px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv10--sp {
    padding-bottom: 13.3333333333vw !important;
  }
}
.pblv11 {
  padding-bottom: 55px !important;
}
@media only screen and (min-width: 769px) {
  .pblv11--pc {
    padding-bottom: 55px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv11--tb {
    padding-bottom: 55px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv11--sp {
    padding-bottom: 14.6666666667vw !important;
  }
}
.pblv12 {
  padding-bottom: 60px !important;
}
@media only screen and (min-width: 769px) {
  .pblv12--pc {
    padding-bottom: 60px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv12--tb {
    padding-bottom: 60px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv12--sp {
    padding-bottom: 16vw !important;
  }
}
.pblv13 {
  padding-bottom: 65px !important;
}
@media only screen and (min-width: 769px) {
  .pblv13--pc {
    padding-bottom: 65px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv13--tb {
    padding-bottom: 65px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv13--sp {
    padding-bottom: 17.3333333333vw !important;
  }
}
.pblv14 {
  padding-bottom: 70px !important;
}
@media only screen and (min-width: 769px) {
  .pblv14--pc {
    padding-bottom: 70px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv14--tb {
    padding-bottom: 70px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv14--sp {
    padding-bottom: 18.6666666667vw !important;
  }
}
.pblv15 {
  padding-bottom: 75px !important;
}
@media only screen and (min-width: 769px) {
  .pblv15--pc {
    padding-bottom: 75px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv15--tb {
    padding-bottom: 75px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv15--sp {
    padding-bottom: 20vw !important;
  }
}
.pblv16 {
  padding-bottom: 80px !important;
}
@media only screen and (min-width: 769px) {
  .pblv16--pc {
    padding-bottom: 80px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv16--tb {
    padding-bottom: 80px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv16--sp {
    padding-bottom: 21.3333333333vw !important;
  }
}
.pblv17 {
  padding-bottom: 85px !important;
}
@media only screen and (min-width: 769px) {
  .pblv17--pc {
    padding-bottom: 85px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv17--tb {
    padding-bottom: 85px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv17--sp {
    padding-bottom: 22.6666666667vw !important;
  }
}
.pblv18 {
  padding-bottom: 90px !important;
}
@media only screen and (min-width: 769px) {
  .pblv18--pc {
    padding-bottom: 90px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv18--tb {
    padding-bottom: 90px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv18--sp {
    padding-bottom: 24vw !important;
  }
}
.pblv19 {
  padding-bottom: 95px !important;
}
@media only screen and (min-width: 769px) {
  .pblv19--pc {
    padding-bottom: 95px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv19--tb {
    padding-bottom: 95px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv19--sp {
    padding-bottom: 25.3333333333vw !important;
  }
}
.pblv20 {
  padding-bottom: 100px !important;
}
@media only screen and (min-width: 769px) {
  .pblv20--pc {
    padding-bottom: 100px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv20--tb {
    padding-bottom: 100px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv20--sp {
    padding-bottom: 26.6666666667vw !important;
  }
}
.pblv21 {
  padding-bottom: 105px !important;
}
@media only screen and (min-width: 769px) {
  .pblv21--pc {
    padding-bottom: 105px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv21--tb {
    padding-bottom: 105px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv21--sp {
    padding-bottom: 28vw !important;
  }
}
.pblv22 {
  padding-bottom: 110px !important;
}
@media only screen and (min-width: 769px) {
  .pblv22--pc {
    padding-bottom: 110px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv22--tb {
    padding-bottom: 110px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv22--sp {
    padding-bottom: 29.3333333333vw !important;
  }
}
.pblv23 {
  padding-bottom: 115px !important;
}
@media only screen and (min-width: 769px) {
  .pblv23--pc {
    padding-bottom: 115px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv23--tb {
    padding-bottom: 115px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv23--sp {
    padding-bottom: 30.6666666667vw !important;
  }
}
.pblv24 {
  padding-bottom: 120px !important;
}
@media only screen and (min-width: 769px) {
  .pblv24--pc {
    padding-bottom: 120px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv24--tb {
    padding-bottom: 120px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv24--sp {
    padding-bottom: 32vw !important;
  }
}
.pblv25 {
  padding-bottom: 125px !important;
}
@media only screen and (min-width: 769px) {
  .pblv25--pc {
    padding-bottom: 125px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv25--tb {
    padding-bottom: 125px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv25--sp {
    padding-bottom: 33.3333333333vw !important;
  }
}
.pblv26 {
  padding-bottom: 130px !important;
}
@media only screen and (min-width: 769px) {
  .pblv26--pc {
    padding-bottom: 130px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv26--tb {
    padding-bottom: 130px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv26--sp {
    padding-bottom: 34.6666666667vw !important;
  }
}
.pblv27 {
  padding-bottom: 135px !important;
}
@media only screen and (min-width: 769px) {
  .pblv27--pc {
    padding-bottom: 135px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv27--tb {
    padding-bottom: 135px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv27--sp {
    padding-bottom: 36vw !important;
  }
}
.pblv28 {
  padding-bottom: 140px !important;
}
@media only screen and (min-width: 769px) {
  .pblv28--pc {
    padding-bottom: 140px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv28--tb {
    padding-bottom: 140px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv28--sp {
    padding-bottom: 37.3333333333vw !important;
  }
}
.pblv29 {
  padding-bottom: 145px !important;
}
@media only screen and (min-width: 769px) {
  .pblv29--pc {
    padding-bottom: 145px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv29--tb {
    padding-bottom: 145px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv29--sp {
    padding-bottom: 38.6666666667vw !important;
  }
}
.pblv30 {
  padding-bottom: 150px !important;
}
@media only screen and (min-width: 769px) {
  .pblv30--pc {
    padding-bottom: 150px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pblv30--tb {
    padding-bottom: 150px !important;
  }
}
@media only screen and (max-width: 768px) {
  .pblv30--sp {
    padding-bottom: 40vw !important;
  }
}

.ptnone {
  padding-top: 0 !important;
}
@media only screen and (max-width: 768px) {
  .ptnone--sp {
    padding-top: 0 !important;
  }
}
.ptlv1 {
  padding-top: 5px;
}
.ptlv2 {
  padding-top: 10px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv2--pc {
    padding-top: 10px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv2--tb {
    padding-top: 10px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv2--sp {
    padding-top: 2.6666666667vw !important;
  }
}
.ptlv3 {
  padding-top: 15px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv3--pc {
    padding-top: 15px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv3--tb {
    padding-top: 15px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv3--sp {
    padding-top: 4vw !important;
  }
}
.ptlv4 {
  padding-top: 20px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv4--pc {
    padding-top: 20px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv4--tb {
    padding-top: 20px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv4--sp {
    padding-top: 5.3333333333vw !important;
  }
}
.ptlv5 {
  padding-top: 25px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv5--pc {
    padding-top: 25px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv5--tb {
    padding-top: 25px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv5--sp {
    padding-top: 6.6666666667vw !important;
  }
}
.ptlv6 {
  padding-top: 30px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv6--pc {
    padding-top: 30px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv6--tb {
    padding-top: 30px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv6--sp {
    padding-top: 8vw !important;
  }
}
.ptlv7 {
  padding-top: 35px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv7--pc {
    padding-top: 35px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv7--tb {
    padding-top: 35px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv7--sp {
    padding-top: 9.3333333333vw !important;
  }
}
.ptlv8 {
  padding-top: 40px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv8--pc {
    padding-top: 40px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv8--tb {
    padding-top: 40px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv8--sp {
    padding-top: 10.6666666667vw !important;
  }
}
.ptlv9 {
  padding-top: 45px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv9--pc {
    padding-top: 45px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv9--tb {
    padding-top: 45px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv9--sp {
    padding-top: 12vw !important;
  }
}
.ptlv10 {
  padding-top: 50px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv10--pc {
    padding-top: 50px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv10--tb {
    padding-top: 50px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv10--sp {
    padding-top: 13.3333333333vw !important;
  }
}
.ptlv11 {
  padding-top: 55px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv11--pc {
    padding-top: 55px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv11--tb {
    padding-top: 55px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv11--sp {
    padding-top: 14.6666666667vw !important;
  }
}
.ptlv12 {
  padding-top: 60px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv12--pc {
    padding-top: 60px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv12--tb {
    padding-top: 60px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv12--sp {
    padding-top: 16vw !important;
  }
}
.ptlv13 {
  padding-top: 65px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv13--pc {
    padding-top: 65px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv13--tb {
    padding-top: 65px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv13--sp {
    padding-top: 17.3333333333vw !important;
  }
}
.ptlv14 {
  padding-top: 70px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv14--pc {
    padding-top: 70px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv14--tb {
    padding-top: 70px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv14--sp {
    padding-top: 18.6666666667vw !important;
  }
}
.ptlv15 {
  padding-top: 75px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv15--pc {
    padding-top: 75px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv15--tb {
    padding-top: 75px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv15--sp {
    padding-top: 20vw !important;
  }
}
.ptlv16 {
  padding-top: 80px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv16--pc {
    padding-top: 80px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv16--tb {
    padding-top: 80px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv16--sp {
    padding-top: 21.3333333333vw !important;
  }
}
.ptlv17 {
  padding-top: 85px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv17--pc {
    padding-top: 85px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv17--tb {
    padding-top: 85px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv17--sp {
    padding-top: 22.6666666667vw !important;
  }
}
.ptlv18 {
  padding-top: 90px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv18--pc {
    padding-top: 90px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv18--tb {
    padding-top: 90px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv18--sp {
    padding-top: 24vw !important;
  }
}
.ptlv19 {
  padding-top: 95px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv19--pc {
    padding-top: 95px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv19--tb {
    padding-top: 95px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv19--sp {
    padding-top: 25.3333333333vw !important;
  }
}
.ptlv20 {
  padding-top: 100px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv20--pc {
    padding-top: 100px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv20--tb {
    padding-top: 100px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv20--sp {
    padding-top: 26.6666666667vw !important;
  }
}
.ptlv21 {
  padding-top: 105px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv21--pc {
    padding-top: 105px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv21--tb {
    padding-top: 105px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv21--sp {
    padding-top: 28vw !important;
  }
}
.ptlv22 {
  padding-top: 110px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv22--pc {
    padding-top: 110px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv22--tb {
    padding-top: 110px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv22--sp {
    padding-top: 29.3333333333vw !important;
  }
}
.ptlv23 {
  padding-top: 115px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv23--pc {
    padding-top: 115px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv23--tb {
    padding-top: 115px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv23--sp {
    padding-top: 30.6666666667vw !important;
  }
}
.ptlv24 {
  padding-top: 120px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv24--pc {
    padding-top: 120px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv24--tb {
    padding-top: 120px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv24--sp {
    padding-top: 32vw !important;
  }
}
.ptlv25 {
  padding-top: 125px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv25--pc {
    padding-top: 125px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv25--tb {
    padding-top: 125px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv25--sp {
    padding-top: 33.3333333333vw !important;
  }
}
.ptlv26 {
  padding-top: 130px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv26--pc {
    padding-top: 130px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv26--tb {
    padding-top: 130px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv26--sp {
    padding-top: 34.6666666667vw !important;
  }
}
.ptlv27 {
  padding-top: 135px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv27--pc {
    padding-top: 135px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv27--tb {
    padding-top: 135px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv27--sp {
    padding-top: 36vw !important;
  }
}
.ptlv28 {
  padding-top: 140px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv28--pc {
    padding-top: 140px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv28--tb {
    padding-top: 140px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv28--sp {
    padding-top: 37.3333333333vw !important;
  }
}
.ptlv29 {
  padding-top: 145px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv29--pc {
    padding-top: 145px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv29--tb {
    padding-top: 145px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv29--sp {
    padding-top: 38.6666666667vw !important;
  }
}
.ptlv30 {
  padding-top: 150px !important;
}
@media only screen and (min-width: 769px) {
  .ptlv30--pc {
    padding-top: 150px !important;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .ptlv30--tb {
    padding-top: 150px !important;
  }
}
@media only screen and (max-width: 768px) {
  .ptlv30--sp {
    padding-top: 40vw !important;
  }
}

.mlr-auto {
  margin-left: auto;
  margin-right: auto;
}

.bold {
  font-weight: bold;
}

.jaggy {
  -webkit-transform: rotate(0.03deg);
          transform: rotate(0.03deg);
}

.header {
  position: fixed;
  left: 0;
  top: 0;
  padding-left: 50px;
  padding-right: 50px;
  width: 100%;
  background: #fff;
  z-index: 1000;
}
@media only screen and (max-width: 768px) {
  .header {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1000;
    background: #fff;
    width: 100%;
  }
}
.header__wrap {
  max-width: 1020px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
  margin-right: auto;
  height: 112px;
}
@media only screen and (max-width: 768px) {
  .header__wrap {
    height: 82px;
    max-width: none;
  }
}
.header__logo {
  width: 292px;
}
@media only screen and (max-width: 768px) {
  .header__logo {
    width: 175px;
  }
}
@media only screen and (max-width: 768px) {
  .header__nav {
    position: fixed;
    left: 0;
    top: 82px;
    width: 100%;
    border-top: 1px #5776af solid;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.95);
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    padding-top: 3.3333333333vw;
    padding-bottom: 10.6666666667vw;
    display: none;
  }
}
.header__navList {
  /*width: 610px;*/
  width: 420px;
  text-align: right;
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .header__navList {
    width: 390px;
  }
}
@media only screen and (max-width: 768px) {
  .header__navList {
    width: 100%;
    text-align: left;
  }
}
.header__navItem {
  display: inline-block;
  margin-left: 15px;
  font-size: 14px;
  font-size: 0.875rem;
  /*@include mixins.bp(tb){
    @include mixins.fz(14);
  }*/
}
@media only screen and (max-width: 768px) {
  .header__navItem {
    display: block;
    border-bottom: 1px #949494 solid;
    margin-left: 0;
  }
  .header__navItem::after {
    content: "";
    width: 1.2vw;
    height: 2vw;
    background: url("../img/ico_arrow_black.svg") no-repeat center center;
    background-size: 1.2vw 2vw;
    display: block;
    position: absolute;
    right: 4vw;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media only screen and (max-width: 768px) {
  .header__navItem a {
    display: block;
    padding: 4vw 8vw 4vw 4.6666666667vw;
  }
}
.header__btn {
  width: 37.5px;
  height: 35px;
  background: url("../img/menu_open.png") no-repeat center bottom;
  background-size: 37.5px auto;
}
.header__btn.is-active {
  background: url("../img/menu_close.png") no-repeat center bottom;
  background-size: auto 35px;
}
@media only screen and (min-width: 769px) {
  .header__language {
    position: relative;
  }
}
@media only screen and (min-width: 769px) {
  .header__language:hover .header__langMenu {
    max-height: 200px;
    opacity: 1;
  }
}
@media only screen and (max-width: 768px) {
  .header__language.active .header__langMenu {
    max-height: 300px;
    opacity: 1;
  }
}
@media only screen and (max-width: 768px) {
  .header__language.active .header__langButton::after {
    content: "-";
  }
}
@media only screen and (max-width: 768px) {
  .header__language::after {
    content: none;
  }
}
.header__langButton {
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .header__langButton::after {
    content: "+";
    font-weight: bold;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    display: block;
    position: absolute;
    right: 3vw;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.header__langItem a {
  display: block;
  padding: 10px 16px;
  -webkit-transition: background 0.3s ease, color 0.3s ease;
  transition: background 0.3s ease, color 0.3s ease;
  cursor: pointer;
}
.header__langItem a:hover {
  background: #000;
  color: #fff;
}
.header__langMenu {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: max-height 0.35s ease, opacity 0.35s ease;
  transition: max-height 0.35s ease, opacity 0.35s ease;
}
@media only screen and (min-width: 769px) {
  .header__langMenu {
    position: absolute;
    top: 101%;
    right: -10px;
    background: #fff;
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    width: 160px;
  }
}
.main {
  overflow-x: hidden;
  padding-top: 112px;
}
@media only screen and (max-width: 768px) {
  .main {
    padding-top: 82px;
    overflow-x: hidden;
  }
}

@media only screen and (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.slashBox {
  background: repeating-linear-gradient(-45deg, #e0adad, #e0adad 5px, white 4px, white 8px);
  padding: 5px;
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .slashBox {
    margin-top: 5.3333333333vw;
    margin-bottom: 20vw;
  }
}
.slashBox__inner {
  background-color: #fff;
  padding: 25px 40px;
}
@media only screen and (max-width: 768px) {
  .slashBox__inner {
    padding: 3.3333333333vw 4vw;
    font-size: 28px;
    font-size: 3.7333333333vw;
  }
}
.slashBox__date {
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
  .slashBox__date {
    font-size: 24px;
    font-size: 3.2vw;
  }
}

.textLink {
  color: #5776af;
  text-decoration: underline;
}

.arrowLink {
  position: relative;
}
.arrowLink::after {
  content: "";
  width: 6px;
  height: 6px;
  display: inline-block;
  border-top: solid 2px #5776af;
  border-right: solid 2px #5776af;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-left: 6px;
}

.dotList {
  text-indent: -1rem;
  margin-left: 1rem;
}
@media only screen and (max-width: 768px) {
  .dotList .bold {
    font-size: 32px;
    font-size: 4.2666666667vw;
  }
}

.boldTtl {
  font-size: 42px;
  font-size: 2.625rem;
  /* 52×0.8 */
  font-weight: bold;
  line-height: 1;
}
@media only screen and (max-width: 768px) {
  .boldTtl {
    font-size: 52px;
    font-size: 6.9333333333vw;
    /* 64×0.8 */
  }
}
.boldTtl span {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  /* 18×0.8 */
  font-weight: normal;
  margin-top: 15px;
}
@media only screen and (max-width: 768px) {
  .boldTtl span {
    font-size: 26px;
    font-size: 3.4666666667vw;
    /* 32×0.8 */
  }
}
.boldTtl--onWave {
  -webkit-transform: translateY(-20px);
          transform: translateY(-20px);
}

.boldTtlAdBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .boldTtlAdBtn {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.arrowLineBtn {
  display: block;
  border: 1px #000 solid;
  border-radius: 9999px;
  padding: 15px 45px;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .arrowLineBtn {
    padding: 2.6666666667vw 4.6666666667vw;
  }
}
.arrowLineBtn span {
  position: relative;
  display: inline-block;
  padding-right: 35px;
}
@media only screen and (max-width: 768px) {
  .arrowLineBtn span {
    padding-right: 7.0666666667vw;
  }
}
.arrowLineBtn span::after {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background: url("../img/ico_arrow_black_circle.svg") no-repeat center center;
  background-size: 21px 21px;
  position: absolute;
  right: 0;
  top: 2px;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
@media only screen and (max-width: 768px) {
  .arrowLineBtn span::after {
    width: 4.1333333333vw;
    height: 4.1333333333vw;
    background: url("../img/ico_arrow_black_circle.svg") no-repeat center center;
    background-size: 4.1333333333vw 4.1333333333vw;
    top: 0.5333333333vw;
  }
}
.arrowLineBtn:hover span::after {
  -webkit-transform: translateX(3px);
          transform: translateX(3px);
}

.extBtn {
  display: block;
  color: #fff;
  background: #5776af;
  border-radius: 9999px;
  padding: 15px 45px;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .extBtn {
    padding: 2.6666666667vw 4vw;
  }
}
.extBtn span {
  position: relative;
  display: inline-block;
  padding-right: 35px;
}
@media only screen and (max-width: 768px) {
  .extBtn span {
    padding-right: 7.0666666667vw;
  }
}
.extBtn span::after {
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;
  background: url("../img/ico_external_white.svg") no-repeat center center;
  background-size: 16px 16px;
  position: absolute;
  right: 0;
  top: 3px;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
@media only screen and (max-width: 768px) {
  .extBtn span::after {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    background: url("../img/ico_external_white.svg") no-repeat center center;
    background-size: 3.4666666667vw 3.4666666667vw;
    top: 1.0666666667vw;
  }
}
.extBtn__small {
  padding: 15px 30px;
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .extBtn__small {
    padding: 2.6666666667vw 8vw;
  }
}
.extBtn__small span {
  font-size: 14px;
  font-size: 0.875rem;
  padding-right: 15px;
  position: static;
}
@media only screen and (max-width: 768px) {
  .extBtn__small span {
    font-size: 28px;
    font-size: 3.7333333333vw;
    padding-right: 5.3333333333vw;
  }
}
.extBtn__small span::after {
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background: url("../img/ico_external_white.svg") no-repeat center center;
  background-size: 10px 10px;
}
@media only screen and (max-width: 768px) {
  .extBtn__small span::after {
    width: 3.6vw;
    height: 3.6vw;
    right: 8vw;
    background: url("../img/ico_external_white.svg") no-repeat center center;
    background-size: 3.6vw 3.6vw;
  }
}
.extBtn--big {
  padding: 25px 30px;
  text-align: center;
  max-width: 435px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 768px) {
  .extBtn--big {
    max-width: none;
    padding: 4vw 4vw;
  }
}
.extBtn--big strong {
  font-size: 20px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 768px) {
  .extBtn--big strong {
    font-size: 40px;
    font-size: 5.3333333333vw;
  }
}

.block {
  max-width: 1020px;
  padding-left: 50px;
  padding-right: 50px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 768px) {
  .block {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
.block--gray {
  background: #f7f7f7;
}

.normalBlock {
  background: #fff;
  padding: 30px;
}

.contentNav {
  background: url("../img/bg_paper.png") repeat left top;
  padding-top: 55px;
  padding-bottom: 50px;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .contentNav {
    padding-top: 17.3333333333vw;
    padding-bottom: 14.6666666667vw;
  }
}
.contentNav__ttl {
  font-size: 46px;
  font-size: 2.875rem;
  font-weight: bold;
  text-align: center;
  position: absolute;
  left: 50%;
  top: -40px;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  width: 100%;
}
@media only screen and (min-width: 769px) and (max-width: 1124px) {
  .contentNav__ttl {
    font-size: 32px;
    font-size: 2rem;
    top: -25px;
  }
}
@media only screen and (max-width: 768px) {
  .contentNav__ttl {
    font-size: 64px;
    font-size: 8.5333333333vw;
    line-height: 1.2;
    top: -9.3333333333vw;
  }
}
.contentNav__wrap {
  width: 100%;
  padding-left: 50px;
  padding-right: 50px;
}
@media only screen and (max-width: 768px) {
  .contentNav__wrap {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
.contentNav__listWrap {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .contentNav__listWrap {
    max-width: 206.9333333333vw;
  }
}
.contentNav__list {
  width: 920px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .contentNav__list {
    width: 206.9333333333vw;
  }
}
.contentNav__item {
  width: 165px;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .contentNav__item {
    width: 38.9333333333vw;
  }
}
.contentNav__text {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.06;
  text-align: center;
  height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
  .contentNav__text {
    font-size: 32px;
    font-size: 4.2666666667vw;
    height: 9.3333333333vw;
  }
}
.contentNav__switch--on {
  display: none;
}
@media only screen and (max-width: 768px) {
  .contentNav__img {
    width: 100%;
  }
}
.contentNav__menu {
  width: 100%;
  padding: 40px 50px;
  display: none;
  margin-top: 20px;
}
@media only screen and (max-width: 768px) {
  .contentNav__menu {
    padding: 9.8666666667vw 5.3333333333vw 10.6666666667vw;
  }
}
.contentNav__menu--01 {
  background: #efe1b0;
}
.contentNav__menu--02 {
  background: #f7e2ee;
}
.contentNav__menu--03 {
  background: #fce6d6;
}
.contentNav__menu--04 {
  background: #d4eeef;
}
.contentNav__menu--05 {
  background: #e3e9c3;
}
.contentNav__menuList {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 23px;
}
@media only screen and (max-width: 768px) {
  .contentNav__menuList {
    grid-template-columns: 1fr 1fr;
    max-width: none;
    gap: 4vw;
  }
}
.contentNav__menuItem {
  max-width: 193px;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .contentNav__menuItem {
    max-width: none;
  }
}
.contentNav__menuItem a {
  display: block;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.contentNav__menuItem a:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.contentNav__reserve {
  position: absolute;
  right: 6px;
  top: -9px;
  display: inline-block;
  color: #fff;
  line-height: 1;
  font-size: 12px;
  font-size: 0.75rem;
  border-radius: 4px;
  padding: 5px 8px;
  font-weight: bold;
  z-index: 2;
}
@media only screen and (max-width: 768px) {
  .contentNav__reserve {
    font-size: 10px;
    font-size: 0.625rem;
    padding: 1.0666666667vw;
    right: 1.3333333333vw;
    top: -2.6666666667vw;
  }
}
.contentNav__reserve--on {
  background: #e74114;
}
.contentNav__reserve--off {
  background: #5776af;
}
.contentNav__yenmark {
  width: 22px;
  height: 22px;
  position: absolute;
  right: 66px;
  top: -9px;
  z-index: 2;
}
@media only screen and (max-width: 768px) {
  .contentNav__yenmark {
    width: 4.8vw;
    height: 4.8vw;
    right: 13.3333333333vw;
    top: -2.6666666667vw;
  }
}
.contentNav__yenmark--right {
  right: 6px;
}
@media only screen and (max-width: 768px) {
  .contentNav__yenmark--right {
    right: 1.3333333333vw;
  }
}
.contentNav__menuText {
  font-size: 14px;
  font-size: 0.875rem;
  padding: 8px 30px 8px 15px;
  background: #fff;
}
@media only screen and (max-width: 768px) {
  .contentNav__menuText {
    font-size: 24px;
    font-size: 3.2vw;
    padding: 2vw 6.6666666667vw 2vw 4vw;
  }
}

.blackArrow {
  position: relative;
}
.blackArrow::after {
  content: "";
  display: block;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 7px;
  height: 11px;
  background: url("../img/ico_arrow_black.svg") no-repeat center center;
  background-size: 7px 11px;
}
@media only screen and (max-width: 768px) {
  .blackArrow::after {
    right: 3.0666666667vw;
    width: 1.6vw;
    height: 2.4vw;
    background: url("../img/ico_arrow_black.svg") no-repeat center center;
    background-size: 1.6vw 2.4vw;
  }
}

@media only screen and (min-width: 1020px) {
  .contentNav__wrap {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .contentNav__wrap::-webkit-scrollbar {
    display: none;
  }
}
.topics__list {
  border-top: 1px #9c9c97 solid;
}
.topics__unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 18px 20px;
  border-bottom: 1px #9c9c97 solid;
}
@media only screen and (max-width: 768px) {
  .topics__unit {
    display: block;
    padding: 5.3333333333vw 2.6666666667vw;
  }
}
.topics__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: auto;
  font-size: 14px;
  font-size: 0.875rem;
  white-space: nowrap;
  padding-right: 35px;
}
@media only screen and (max-width: 768px) {
  .topics__date {
    font-size: 24px;
    font-size: 3.2vw;
  }
}
.topics__ttl {
  font-size: 18px;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .topics__ttl {
    font-size: 32px;
    font-size: 4.2666666667vw;
  }
}
.topics__ttlInner {
  color: #5776af;
  text-decoration: underline;
  display: inline-block;
}
.topics__ttlInner::after {
  content: "";
  width: 9px;
  height: 15px;
  display: inline-block;
  margin-left: 12px;
  background-color: #5776AF;
  -webkit-mask: url("../img/ico_arrow_blue.svg") no-repeat center/contain;
  mask: url("../img/ico_arrow_blue.svg") no-repeat center/contain;
  /*background: url("../img/ico_arrow_blue.svg") no-repeat center center;
  background-size: 9px 15px;*/
}
@media only screen and (max-width: 768px) {
  .topics__ttlInner::after {
    width: 2vw;
    height: 3.2vw;
    -webkit-mask-size: 2vw 3.2vw;
    mask-size: 2vw 3.2vw;
    /*background: url("../img/ico_arrow_blue.svg") no-repeat center center;
    background-size: mixins.cvw(15) mixins.cvw(24);*/
  }
}
.topics__new {
  color: #ffffff;
  background-color: #ff0000;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  padding: 2px 10px;
  border-radius: 5px;
  font-size: 11px;
  font-size: 0.6875rem;
  margin-left: 10px;
}
@media only screen and (max-width: 768px) {
  .topics__new {
    font-size: 19px;
    font-size: 2.5333333333vw;
  }
}
.topics__important .topics__list {
  border: 2px solid #ef0e0e;
}
.topics__important .topics__unit {
  border-bottom: none;
}
.topics__important .topics__date {
  margin-bottom: 0;
}
.topics__important .topics__ttlInner {
  color: #ef0e0e;
}
.topics__important .topics__ttlInner::after {
  background-color: red;
  -webkit-mask: url("../img/ico_arrow_blue.svg") no-repeat center/contain;
  mask: url("../img/ico_arrow_blue.svg") no-repeat center/contain;
}
@media only screen and (max-width: 768px) {
  .topics__important .topics__ttlInner::after {
    -webkit-mask-size: 2vw 3.2vw;
    mask-size: 2vw 3.2vw;
  }
}

.topicsButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (max-width: 768px) {
  .topicsButton {
    display: block;
    padding-left: 8vw;
    padding-right: 8vw;
    text-align: center;
  }
}
.eventButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .eventButton {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding-left: 8vw;
    padding-right: 8vw;
    text-align: center;
  }
}
@media only screen and (max-width: 768px) {
  .eventButton a:not(:last-child) {
    margin-top: 4.6666666667vw;
  }
}
.wave02 {
  position: relative;
}
.wave02::before {
  content: "";
  width: 222px;
  height: 30px;
  background: url("../img/wave02.png") no-repeat center center;
  background-size: 222px 30px;
  display: block;
  position: absolute;
  right: -76px;
  top: -80px;
  z-index: 2;
}
@media only screen and (max-width: 768px) {
  .wave02::before {
    width: 43.8666666667vw;
    height: 5.6vw;
    background: url("../img/wave02_sp.png") no-repeat center center;
    background-size: 43.8666666667vw 5.6vw;
    right: -16vw;
    top: -14.6666666667vw;
  }
}
.wave02::after {
  content: "";
  width: 212px;
  height: 34px;
  background: url("../img/wave03.png") no-repeat center center;
  background-size: 212px 34px;
  display: block;
  position: absolute;
  left: -190px;
  bottom: -4px;
  z-index: 2;
}
@media only screen and (max-width: 768px) {
  .wave02::after {
    width: 42vw;
    height: 6.8vw;
    background: url("../img/wave03_sp.png") no-repeat center center;
    background-size: 42vw 6.8vw;
    left: -20vw;
    bottom: -6.6666666667vw;
  }
}

.icoTtl {
  border-bottom: 2px #000 solid;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
@media only screen and (max-width: 768px) {
  .icoTtl {
    font-size: 36px;
    font-size: 4.8vw;
    margin-bottom: 4.6666666667vw;
    padding-bottom: 1.3333333333vw;
  }
}
.icoTtl--bicycle::after {
  content: "";
  display: block;
  width: 46px;
  height: 29px;
  background: url("../img/ico_bicycle.png") no-repeat center center;
  background-size: 46px 29px;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 768px) {
  .icoTtl--bicycle::after {
    width: 8.5333333333vw;
    height: 5.4666666667vw;
    background: url("../img/ico_bicycle.png") no-repeat center center;
    background-size: 8.5333333333vw 5.4666666667vw;
  }
}
.icoTtl--bus::after {
  content: "";
  display: block;
  width: 59px;
  height: 33px;
  background: url("../img/ico_bus.png") no-repeat center center;
  background-size: 59px 33px;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 768px) {
  .icoTtl--bus::after {
    width: 13.4666666667vw;
    height: 7.6vw;
    background: url("../img/ico_bus.png") no-repeat center center;
    background-size: 13.4666666667vw 7.6vw;
  }
}
.icoTtl--car::after {
  content: "";
  display: block;
  width: 53px;
  height: 26px;
  background: url("../img/ico_car.png") no-repeat center center;
  background-size: 53px 26px;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 768px) {
  .icoTtl--car::after {
    width: 11.7333333333vw;
    height: 5.8666666667vw;
    background: url("../img/ico_car.png") no-repeat center center;
    background-size: 11.7333333333vw 5.8666666667vw;
  }
}
.icoTtl--train::after {
  content: "";
  display: block;
  width: 67px;
  height: 32px;
  background: url("../img/ico_train.png") no-repeat center center;
  background-size: 67px 32px;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 768px) {
  .icoTtl--train::after {
    width: 15.0666666667vw;
    height: 7.3333333333vw;
    background: url("../img/ico_train.png") no-repeat center center;
    background-size: 15.0666666667vw 7.3333333333vw;
  }
}

.reserve {
  background: #edede9;
  padding: 50px 40px 35px;
  text-align: center;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .reserve {
    padding: 10.2666666667vw 8.2666666667vw 8.2666666667vw;
  }
}
.reserve__balloon {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -28px;
}
.reserve__balloonInner {
  display: inline-block;
  position: relative;
  font-weight: bold;
  line-height: 1.3;
  font-size: 20px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 768px) {
  .reserve__balloonInner {
    font-size: 36px;
    font-size: 4.8vw;
    white-space: nowrap;
  }
}
.reserve__balloonInner::before {
  content: "";
  width: 20px;
  height: 28px;
  display: block;
  background: url("../img/des_balloon_L.svg") no-repeat center center;
  background-size: 20px 28px;
  position: absolute;
  left: -35px;
  bottom: 5px;
}
@media only screen and (max-width: 768px) {
  .reserve__balloonInner::before {
    width: 5.6vw;
    height: 7.3333333333vw;
    background: url("../img/des_balloon_L.svg") no-repeat center center;
    background-size: 5.6vw 7.3333333333vw;
    left: -8.5333333333vw;
    bottom: 1.3333333333vw;
  }
}
.reserve__balloonInner::after {
  content: "";
  width: 20px;
  height: 28px;
  display: block;
  background: url("../img/des_balloon_R.svg") no-repeat center center;
  background-size: 20px 28px;
  position: absolute;
  right: -35px;
  bottom: 5px;
}
@media only screen and (max-width: 768px) {
  .reserve__balloonInner::after {
    width: 5.6vw;
    height: 7.3333333333vw;
    background: url("../img/des_balloon_R.svg") no-repeat center center;
    background-size: 5.6vw 7.3333333333vw;
    right: -8.5333333333vw;
    bottom: 1.3333333333vw;
  }
}

.reserveBtn {
  display: block;
  background: #5776af;
  border-radius: 9999px;
  max-width: 493px;
  font-size: 24px;
  font-size: 1.5rem;
  text-align: center;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  padding: 25px;
  -webkit-box-shadow: 0px 5px 0px 0px #0c2d6a;
          box-shadow: 0px 5px 0px 0px #0c2d6a;
}
@media only screen and (max-width: 768px) {
  .reserveBtn {
    max-width: none;
    font-size: 40px;
    font-size: 5.3333333333vw;
    line-height: 1.25;
    border-radius: 6.6666666667vw;
    padding: 6vw;
  }
}
.reserveBtn__inner::after {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background: url("../img/ico_external_white.svg") no-repeat center center;
  background-size: 21px 21px;
  margin-left: 12px;
}
@media only screen and (max-width: 768px) {
  .reserveBtn__inner::after {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    background: url("../img/ico_external_white.svg") no-repeat center center;
    background-size: 3.4666666667vw 3.4666666667vw;
    margin-left: 1.3333333333vw;
  }
}
.reserveBtn:hover {
  background: #385892;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
  -webkit-box-shadow: 0px 1px 0px 0px #0c2d6a;
          box-shadow: 0px 1px 0px 0px #0c2d6a;
}

.listBtn {
  display: block;
  background: #5776af;
  border-radius: 9999px;
  max-width: 493px;
  font-size: 24px;
  font-size: 1.5rem;
  text-align: center;
  color: #fff;
  line-height: 1;
  padding: 25px;
  -webkit-box-shadow: 0px 5px 0px 0px #0c2d6a;
          box-shadow: 0px 5px 0px 0px #0c2d6a;
}
@media only screen and (max-width: 768px) {
  .listBtn {
    max-width: none;
    font-size: 40px;
    font-size: 5.3333333333vw;
    line-height: 1.25;
    border-radius: 6.6666666667vw;
    padding: 6vw;
  }
}
.listBtn.-blank .listBtn__inner::after {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background: url("../img/ico_external_white.svg") no-repeat center center;
  background-size: 21px 21px;
  margin-left: 12px;
}
@media only screen and (max-width: 768px) {
  .listBtn.-blank .listBtn__inner::after {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    background: url("../img/ico_external_white.svg") no-repeat center center;
    background-size: 3.4666666667vw 3.4666666667vw;
    margin-left: 1.3333333333vw;
  }
}
.listBtn:hover {
  background: #385892;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
  -webkit-box-shadow: 0px 1px 0px 0px #0c2d6a;
          box-shadow: 0px 1px 0px 0px #0c2d6a;
}

.banner__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 768px) {
  .banner__lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.banner__list + .banner__list {
  margin-left: 32px;
}
@media only screen and (max-width: 768px) {
  .banner__list + .banner__list {
    margin-left: 0;
    margin-top: 16px;
  }
}
.banner__balloon {
  font-weight: bold;
  text-align: center;
}
.banner__img {
  width: 240px;
  height: 104px;
  outline: 4px solid #5776af;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 10px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 5px 0px 4px #5776af;
  box-shadow: 0px 5px 0px 4px #5776af;
}
.banner__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.banner {
  position: relative;
}
@media only screen and (max-width: 768px) {
  .banner {
    padding: 10.2666666667vw 8.2666666667vw 8.2666666667vw;
  }
}

.wave {
  background: url("../img/bg_wave_top.png") repeat-x center top, url("../img/bg_wave_bottom.png") repeat-x center bottom, url("../img/bg_stripe_blue.png") repeat center center;
  position: relative;
  padding-top: 90px;
  padding-bottom: 115px;
}
@media only screen and (max-width: 768px) {
  .wave {
    background: url("../img/bg_wave_top.png") repeat-x center top, url("../img/bg_wave_bottom.png") repeat-x center bottom, url("../img/bg_stripe_blue.png") repeat center center;
    background-size: 16vw 2.6666666667vw, 16vw 2.6666666667vw, auto;
    padding-top: 13.3333333333vw;
    padding-bottom: 16vw;
    padding-top: 19.3333333333vw;
    padding-bottom: 21.7333333333vw;
  }
}
.wave--topDelPad {
  padding-top: 0;
}

.footer {
  padding-left: 50px;
  padding-right: 50px;
  padding-top: 70px;
}
@media only screen and (max-width: 768px) {
  .footer {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    padding-top: 14.6666666667vw;
  }
}
.footer__wrap {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 768px) {
  .footer__wrap {
    max-width: none;
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .footer__linkList {
    max-width: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.footer__linkItem {
  display: inline-block;
  margin-right: 1rem;
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 20px;
}
@media only screen and (max-width: 768px) {
  .footer__linkItem {
    text-align: center;
    margin-right: 0;
    font-size: 28px;
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  .footer__linkItem:nth-child(odd) {
    border-right: 1px #1d1d1d solid;
  }
}
.footer__logo {
  width: 175px;
  margin-bottom: 8px;
}
@media only screen and (max-width: 768px) {
  .footer__logo {
    width: 52.2666666667vw;
    margin-bottom: 2.6666666667vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6.6666666667vw;
  }
}
.footer__address {
  font-size: 12px;
  font-size: 0.75rem;
  margin-bottom: 13px;
}
@media only screen and (max-width: 768px) {
  .footer__address {
    font-size: 20px;
    font-size: 2.6666666667vw;
    margin-bottom: 2.6666666667vw;
    text-align: center;
  }
}
.footer__hours {
  font-size: 12px;
  font-size: 0.75rem;
  margin-bottom: 13px;
}
@media only screen and (max-width: 768px) {
  .footer__hours {
    font-size: 20px;
    font-size: 2.6666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
.footer__contact {
  width: 144px;
  height: 41px;
  border: 1px #000 solid;
  border-radius: 9999px;
  line-height: 39px;
  text-align: center;
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
}
@media only screen and (max-width: 768px) {
  .footer__contact {
    width: 47.0666666667vw;
    height: 12.8vw;
    line-height: 12.8vw;
    font-size: 32px;
    font-size: 4.2666666667vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.footer__contact::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 14px;
  background: url("../img/ico_letter.svg") no-repeat center center;
  background-size: 17px 14px;
  -webkit-transform: translateY(3px);
          transform: translateY(3px);
}
@media only screen and (max-width: 768px) {
  .footer__contact::before {
    width: 5.0666666667vw;
    height: 4.4vw;
    background: url("../img/ico_letter.svg") no-repeat center center;
    background-size: 5.0666666667vw 4.4vw;
  }
}
.footer small {
  display: block;
  text-align: center;
  padding-top: 50px;
  padding-bottom: 50px;
  line-height: 1;
}
@media only screen and (max-width: 768px) {
  .footer small {
    padding-top: 7.3333333333vw;
    padding-bottom: 23.3333333333vw;
  }
}

.footer__linkPC .footer__linkList:last-child .footer__linkItem {
  margin-bottom: 0;
}

.pagetop {
  position: fixed;
  right: 75px;
  bottom: 50px;
  z-index: 1000;
}
@media only screen and (max-width: 768px) {
  .pagetop {
    width: 72px;
    right: 30px;
    bottom: 10px;
  }
}

/* 休館日ボックスの全体容器 */
.holiday-container {
  margin: 20px auto;
  max-width: 1000px; /* サイトの幅に合わせて調整してください */
  width: 95%;
}
.holiday-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; /* スマホでは縦並び */
  border: 3px solid #c8414a; /* 外枠の赤線 */
  background: #fff;
}
@media only screen and (max-width: 768px) {
  .holiday-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; /* 横並びに変更 */
  }
}
.holiday-box__label {
  /* 「休館日」の見出し部分 */
  background-color: #c8414a;
  color: #fff;
  font-weight: bold;
  padding: 10px 15px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 768px) {
  .holiday-box__label {
    width: 150px; /* 見出しの幅を固定 */
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.holiday-box__content {
  /* 日付などの内容部分 */
  padding: 15px 20px;
  color: #333;
  font-size: 1.1rem;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 768px) {
  .holiday-box__content {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}