@charset "UTF-8";
/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap");
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-pointer-events.swiper-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
      -ms-flex-order: 9999;
          order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

/*---------------------------------------------------------
Reset
---------------------------------------------------------*/
html,
body,
div,
article,
section,
main,
h1,
h2,
h3,
h4,
h5,
h6,
dl,
dt,
dd,
ul,
ol,
li,
pre,
form,
input,
textarea,
address,
nav,
table,
th,
td,
a,
p,
img,
figure,
picture,
span,
em,
small,
dialog {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
html:before, html:after,
body:before,
body:after,
div:before,
div:after,
article:before,
article:after,
section:before,
section:after,
main:before,
main:after,
h1:before,
h1:after,
h2:before,
h2:after,
h3:before,
h3:after,
h4:before,
h4:after,
h5:before,
h5:after,
h6:before,
h6:after,
dl:before,
dl:after,
dt:before,
dt:after,
dd:before,
dd:after,
ul:before,
ul:after,
ol:before,
ol:after,
li:before,
li:after,
pre:before,
pre:after,
form:before,
form:after,
input:before,
input:after,
textarea:before,
textarea:after,
address:before,
address:after,
nav:before,
nav:after,
table:before,
table:after,
th:before,
th:after,
td:before,
td:after,
a:before,
a:after,
p:before,
p:after,
img:before,
img:after,
figure:before,
figure:after,
picture:before,
picture:after,
span:before,
span:after,
em:before,
em:after,
small:before,
small:after,
dialog:before,
dialog:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

main {
  display: block;
}

ul,
li {
  list-style-type: none;
}

table {
  border-collapse: collapse;
}

picture {
  display: block;
}

img {
  border: none;
}

a {
  text-decoration: none;
}

a,
button {
  outline: none;
}
a:focus,
button:focus {
  outline: none;
}

sup,
sub {
  height: 0;
  line-height: 1;
  vertical-align: baseline;
  _vertical-align: bottom;
  position: relative;
  font-size: 75%;
}

code {
  font-family: inherit;
}

address {
  font-style: normal;
}

dialog {
  height: auto;
  border: none;
}

.fw-normal {
  font-weight: normal !important;
}

.fw-bold {
  font-weight: bold !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-10 {
  margin-top: 10px !important;
}
@media only screen and (max-width: 767px) {
  .mt-10 {
    margin-top: 0.5rem !important;
  }
}

.mb-10 {
  margin-bottom: 10px !important;
}
@media only screen and (max-width: 767px) {
  .mb-10 {
    margin-bottom: 0.5rem !important;
  }
}

.ml-10 {
  margin-left: 10px !important;
}
@media only screen and (max-width: 767px) {
  .ml-10 {
    margin-left: 0.5rem !important;
  }
}

.mr-10 {
  margin-right: 10px !important;
}
@media only screen and (max-width: 767px) {
  .mr-10 {
    margin-right: 0.5rem !important;
  }
}

.pt-10 {
  padding-top: 10px !important;
}
@media only screen and (max-width: 767px) {
  .pt-10 {
    padding-top: 0.5rem !important;
  }
}

.pb-10 {
  padding-bottom: 10px !important;
}
@media only screen and (max-width: 767px) {
  .pb-10 {
    padding-bottom: 0.5rem !important;
  }
}

.pl-10 {
  padding-left: 10px !important;
}
@media only screen and (max-width: 767px) {
  .pl-10 {
    padding-left: 0.5rem !important;
  }
}

.pr-10 {
  padding-right: 10px !important;
}
@media only screen and (max-width: 767px) {
  .pr-10 {
    padding-right: 0.5rem !important;
  }
}

.mt-20 {
  margin-top: 20px !important;
}
@media only screen and (max-width: 767px) {
  .mt-20 {
    margin-top: 1rem !important;
  }
}

.mb-20 {
  margin-bottom: 20px !important;
}
@media only screen and (max-width: 767px) {
  .mb-20 {
    margin-bottom: 1rem !important;
  }
}

.ml-20 {
  margin-left: 20px !important;
}
@media only screen and (max-width: 767px) {
  .ml-20 {
    margin-left: 1rem !important;
  }
}

.mr-20 {
  margin-right: 20px !important;
}
@media only screen and (max-width: 767px) {
  .mr-20 {
    margin-right: 1rem !important;
  }
}

.pt-20 {
  padding-top: 20px !important;
}
@media only screen and (max-width: 767px) {
  .pt-20 {
    padding-top: 1rem !important;
  }
}

.pb-20 {
  padding-bottom: 20px !important;
}
@media only screen and (max-width: 767px) {
  .pb-20 {
    padding-bottom: 1rem !important;
  }
}

.pl-20 {
  padding-left: 20px !important;
}
@media only screen and (max-width: 767px) {
  .pl-20 {
    padding-left: 1rem !important;
  }
}

.pr-20 {
  padding-right: 20px !important;
}
@media only screen and (max-width: 767px) {
  .pr-20 {
    padding-right: 1rem !important;
  }
}

.mt-30 {
  margin-top: 30px !important;
}
@media only screen and (max-width: 767px) {
  .mt-30 {
    margin-top: 1.5rem !important;
  }
}

.mb-30 {
  margin-bottom: 30px !important;
}
@media only screen and (max-width: 767px) {
  .mb-30 {
    margin-bottom: 1.5rem !important;
  }
}

.ml-30 {
  margin-left: 30px !important;
}
@media only screen and (max-width: 767px) {
  .ml-30 {
    margin-left: 1.5rem !important;
  }
}

.mr-30 {
  margin-right: 30px !important;
}
@media only screen and (max-width: 767px) {
  .mr-30 {
    margin-right: 1.5rem !important;
  }
}

.pt-30 {
  padding-top: 30px !important;
}
@media only screen and (max-width: 767px) {
  .pt-30 {
    padding-top: 1.5rem !important;
  }
}

.pb-30 {
  padding-bottom: 30px !important;
}
@media only screen and (max-width: 767px) {
  .pb-30 {
    padding-bottom: 1.5rem !important;
  }
}

.pl-30 {
  padding-left: 30px !important;
}
@media only screen and (max-width: 767px) {
  .pl-30 {
    padding-left: 1.5rem !important;
  }
}

.pr-30 {
  padding-right: 30px !important;
}
@media only screen and (max-width: 767px) {
  .pr-30 {
    padding-right: 1.5rem !important;
  }
}

.mt-40 {
  margin-top: 40px !important;
}
@media only screen and (max-width: 767px) {
  .mt-40 {
    margin-top: 2rem !important;
  }
}

.mb-40 {
  margin-bottom: 40px !important;
}
@media only screen and (max-width: 767px) {
  .mb-40 {
    margin-bottom: 2rem !important;
  }
}

.ml-40 {
  margin-left: 40px !important;
}
@media only screen and (max-width: 767px) {
  .ml-40 {
    margin-left: 2rem !important;
  }
}

.mr-40 {
  margin-right: 40px !important;
}
@media only screen and (max-width: 767px) {
  .mr-40 {
    margin-right: 2rem !important;
  }
}

.pt-40 {
  padding-top: 40px !important;
}
@media only screen and (max-width: 767px) {
  .pt-40 {
    padding-top: 2rem !important;
  }
}

.pb-40 {
  padding-bottom: 40px !important;
}
@media only screen and (max-width: 767px) {
  .pb-40 {
    padding-bottom: 2rem !important;
  }
}

.pl-40 {
  padding-left: 40px !important;
}
@media only screen and (max-width: 767px) {
  .pl-40 {
    padding-left: 2rem !important;
  }
}

.pr-40 {
  padding-right: 40px !important;
}
@media only screen and (max-width: 767px) {
  .pr-40 {
    padding-right: 2rem !important;
  }
}

.mt-50 {
  margin-top: 50px !important;
}
@media only screen and (max-width: 767px) {
  .mt-50 {
    margin-top: 2.5rem !important;
  }
}

.mb-50 {
  margin-bottom: 50px !important;
}
@media only screen and (max-width: 767px) {
  .mb-50 {
    margin-bottom: 2.5rem !important;
  }
}

.ml-50 {
  margin-left: 50px !important;
}
@media only screen and (max-width: 767px) {
  .ml-50 {
    margin-left: 2.5rem !important;
  }
}

.mr-50 {
  margin-right: 50px !important;
}
@media only screen and (max-width: 767px) {
  .mr-50 {
    margin-right: 2.5rem !important;
  }
}

.pt-50 {
  padding-top: 50px !important;
}
@media only screen and (max-width: 767px) {
  .pt-50 {
    padding-top: 2.5rem !important;
  }
}

.pb-50 {
  padding-bottom: 50px !important;
}
@media only screen and (max-width: 767px) {
  .pb-50 {
    padding-bottom: 2.5rem !important;
  }
}

.pl-50 {
  padding-left: 50px !important;
}
@media only screen and (max-width: 767px) {
  .pl-50 {
    padding-left: 2.5rem !important;
  }
}

.pr-50 {
  padding-right: 50px !important;
}
@media only screen and (max-width: 767px) {
  .pr-50 {
    padding-right: 2.5rem !important;
  }
}

.mt-60 {
  margin-top: 60px !important;
}
@media only screen and (max-width: 767px) {
  .mt-60 {
    margin-top: 3rem !important;
  }
}

.mb-60 {
  margin-bottom: 60px !important;
}
@media only screen and (max-width: 767px) {
  .mb-60 {
    margin-bottom: 3rem !important;
  }
}

.ml-60 {
  margin-left: 60px !important;
}
@media only screen and (max-width: 767px) {
  .ml-60 {
    margin-left: 3rem !important;
  }
}

.mr-60 {
  margin-right: 60px !important;
}
@media only screen and (max-width: 767px) {
  .mr-60 {
    margin-right: 3rem !important;
  }
}

.pt-60 {
  padding-top: 60px !important;
}
@media only screen and (max-width: 767px) {
  .pt-60 {
    padding-top: 3rem !important;
  }
}

.pb-60 {
  padding-bottom: 60px !important;
}
@media only screen and (max-width: 767px) {
  .pb-60 {
    padding-bottom: 3rem !important;
  }
}

.pl-60 {
  padding-left: 60px !important;
}
@media only screen and (max-width: 767px) {
  .pl-60 {
    padding-left: 3rem !important;
  }
}

.pr-60 {
  padding-right: 60px !important;
}
@media only screen and (max-width: 767px) {
  .pr-60 {
    padding-right: 3rem !important;
  }
}

.mt-70 {
  margin-top: 70px !important;
}
@media only screen and (max-width: 767px) {
  .mt-70 {
    margin-top: 3.5rem !important;
  }
}

.mb-70 {
  margin-bottom: 70px !important;
}
@media only screen and (max-width: 767px) {
  .mb-70 {
    margin-bottom: 3.5rem !important;
  }
}

.ml-70 {
  margin-left: 70px !important;
}
@media only screen and (max-width: 767px) {
  .ml-70 {
    margin-left: 3.5rem !important;
  }
}

.mr-70 {
  margin-right: 70px !important;
}
@media only screen and (max-width: 767px) {
  .mr-70 {
    margin-right: 3.5rem !important;
  }
}

.pt-70 {
  padding-top: 70px !important;
}
@media only screen and (max-width: 767px) {
  .pt-70 {
    padding-top: 3.5rem !important;
  }
}

.pb-70 {
  padding-bottom: 70px !important;
}
@media only screen and (max-width: 767px) {
  .pb-70 {
    padding-bottom: 3.5rem !important;
  }
}

.pl-70 {
  padding-left: 70px !important;
}
@media only screen and (max-width: 767px) {
  .pl-70 {
    padding-left: 3.5rem !important;
  }
}

.pr-70 {
  padding-right: 70px !important;
}
@media only screen and (max-width: 767px) {
  .pr-70 {
    padding-right: 3.5rem !important;
  }
}

.mt-80 {
  margin-top: 80px !important;
}
@media only screen and (max-width: 767px) {
  .mt-80 {
    margin-top: 4rem !important;
  }
}

.mb-80 {
  margin-bottom: 80px !important;
}
@media only screen and (max-width: 767px) {
  .mb-80 {
    margin-bottom: 4rem !important;
  }
}

.ml-80 {
  margin-left: 80px !important;
}
@media only screen and (max-width: 767px) {
  .ml-80 {
    margin-left: 4rem !important;
  }
}

.mr-80 {
  margin-right: 80px !important;
}
@media only screen and (max-width: 767px) {
  .mr-80 {
    margin-right: 4rem !important;
  }
}

.pt-80 {
  padding-top: 80px !important;
}
@media only screen and (max-width: 767px) {
  .pt-80 {
    padding-top: 4rem !important;
  }
}

.pb-80 {
  padding-bottom: 80px !important;
}
@media only screen and (max-width: 767px) {
  .pb-80 {
    padding-bottom: 4rem !important;
  }
}

.pl-80 {
  padding-left: 80px !important;
}
@media only screen and (max-width: 767px) {
  .pl-80 {
    padding-left: 4rem !important;
  }
}

.pr-80 {
  padding-right: 80px !important;
}
@media only screen and (max-width: 767px) {
  .pr-80 {
    padding-right: 4rem !important;
  }
}

.mt-90 {
  margin-top: 90px !important;
}
@media only screen and (max-width: 767px) {
  .mt-90 {
    margin-top: 4.5rem !important;
  }
}

.mb-90 {
  margin-bottom: 90px !important;
}
@media only screen and (max-width: 767px) {
  .mb-90 {
    margin-bottom: 4.5rem !important;
  }
}

.ml-90 {
  margin-left: 90px !important;
}
@media only screen and (max-width: 767px) {
  .ml-90 {
    margin-left: 4.5rem !important;
  }
}

.mr-90 {
  margin-right: 90px !important;
}
@media only screen and (max-width: 767px) {
  .mr-90 {
    margin-right: 4.5rem !important;
  }
}

.pt-90 {
  padding-top: 90px !important;
}
@media only screen and (max-width: 767px) {
  .pt-90 {
    padding-top: 4.5rem !important;
  }
}

.pb-90 {
  padding-bottom: 90px !important;
}
@media only screen and (max-width: 767px) {
  .pb-90 {
    padding-bottom: 4.5rem !important;
  }
}

.pl-90 {
  padding-left: 90px !important;
}
@media only screen and (max-width: 767px) {
  .pl-90 {
    padding-left: 4.5rem !important;
  }
}

.pr-90 {
  padding-right: 90px !important;
}
@media only screen and (max-width: 767px) {
  .pr-90 {
    padding-right: 4.5rem !important;
  }
}

.mt-100 {
  margin-top: 100px !important;
}
@media only screen and (max-width: 767px) {
  .mt-100 {
    margin-top: 5rem !important;
  }
}

.mb-100 {
  margin-bottom: 100px !important;
}
@media only screen and (max-width: 767px) {
  .mb-100 {
    margin-bottom: 5rem !important;
  }
}

.ml-100 {
  margin-left: 100px !important;
}
@media only screen and (max-width: 767px) {
  .ml-100 {
    margin-left: 5rem !important;
  }
}

.mr-100 {
  margin-right: 100px !important;
}
@media only screen and (max-width: 767px) {
  .mr-100 {
    margin-right: 5rem !important;
  }
}

.pt-100 {
  padding-top: 100px !important;
}
@media only screen and (max-width: 767px) {
  .pt-100 {
    padding-top: 5rem !important;
  }
}

.pb-100 {
  padding-bottom: 100px !important;
}
@media only screen and (max-width: 767px) {
  .pb-100 {
    padding-bottom: 5rem !important;
  }
}

.pl-100 {
  padding-left: 100px !important;
}
@media only screen and (max-width: 767px) {
  .pl-100 {
    padding-left: 5rem !important;
  }
}

.pr-100 {
  padding-right: 100px !important;
}
@media only screen and (max-width: 767px) {
  .pr-100 {
    padding-right: 5rem !important;
  }
}

.mt-110 {
  margin-top: 110px !important;
}
@media only screen and (max-width: 767px) {
  .mt-110 {
    margin-top: 5.5rem !important;
  }
}

.mb-110 {
  margin-bottom: 110px !important;
}
@media only screen and (max-width: 767px) {
  .mb-110 {
    margin-bottom: 5.5rem !important;
  }
}

.ml-110 {
  margin-left: 110px !important;
}
@media only screen and (max-width: 767px) {
  .ml-110 {
    margin-left: 5.5rem !important;
  }
}

.mr-110 {
  margin-right: 110px !important;
}
@media only screen and (max-width: 767px) {
  .mr-110 {
    margin-right: 5.5rem !important;
  }
}

.pt-110 {
  padding-top: 110px !important;
}
@media only screen and (max-width: 767px) {
  .pt-110 {
    padding-top: 5.5rem !important;
  }
}

.pb-110 {
  padding-bottom: 110px !important;
}
@media only screen and (max-width: 767px) {
  .pb-110 {
    padding-bottom: 5.5rem !important;
  }
}

.pl-110 {
  padding-left: 110px !important;
}
@media only screen and (max-width: 767px) {
  .pl-110 {
    padding-left: 5.5rem !important;
  }
}

.pr-110 {
  padding-right: 110px !important;
}
@media only screen and (max-width: 767px) {
  .pr-110 {
    padding-right: 5.5rem !important;
  }
}

.mt-120 {
  margin-top: 120px !important;
}
@media only screen and (max-width: 767px) {
  .mt-120 {
    margin-top: 6rem !important;
  }
}

.mb-120 {
  margin-bottom: 120px !important;
}
@media only screen and (max-width: 767px) {
  .mb-120 {
    margin-bottom: 6rem !important;
  }
}

.ml-120 {
  margin-left: 120px !important;
}
@media only screen and (max-width: 767px) {
  .ml-120 {
    margin-left: 6rem !important;
  }
}

.mr-120 {
  margin-right: 120px !important;
}
@media only screen and (max-width: 767px) {
  .mr-120 {
    margin-right: 6rem !important;
  }
}

.pt-120 {
  padding-top: 120px !important;
}
@media only screen and (max-width: 767px) {
  .pt-120 {
    padding-top: 6rem !important;
  }
}

.pb-120 {
  padding-bottom: 120px !important;
}
@media only screen and (max-width: 767px) {
  .pb-120 {
    padding-bottom: 6rem !important;
  }
}

.pl-120 {
  padding-left: 120px !important;
}
@media only screen and (max-width: 767px) {
  .pl-120 {
    padding-left: 6rem !important;
  }
}

.pr-120 {
  padding-right: 120px !important;
}
@media only screen and (max-width: 767px) {
  .pr-120 {
    padding-right: 6rem !important;
  }
}

.mt-130 {
  margin-top: 130px !important;
}
@media only screen and (max-width: 767px) {
  .mt-130 {
    margin-top: 6.5rem !important;
  }
}

.mb-130 {
  margin-bottom: 130px !important;
}
@media only screen and (max-width: 767px) {
  .mb-130 {
    margin-bottom: 6.5rem !important;
  }
}

.ml-130 {
  margin-left: 130px !important;
}
@media only screen and (max-width: 767px) {
  .ml-130 {
    margin-left: 6.5rem !important;
  }
}

.mr-130 {
  margin-right: 130px !important;
}
@media only screen and (max-width: 767px) {
  .mr-130 {
    margin-right: 6.5rem !important;
  }
}

.pt-130 {
  padding-top: 130px !important;
}
@media only screen and (max-width: 767px) {
  .pt-130 {
    padding-top: 6.5rem !important;
  }
}

.pb-130 {
  padding-bottom: 130px !important;
}
@media only screen and (max-width: 767px) {
  .pb-130 {
    padding-bottom: 6.5rem !important;
  }
}

.pl-130 {
  padding-left: 130px !important;
}
@media only screen and (max-width: 767px) {
  .pl-130 {
    padding-left: 6.5rem !important;
  }
}

.pr-130 {
  padding-right: 130px !important;
}
@media only screen and (max-width: 767px) {
  .pr-130 {
    padding-right: 6.5rem !important;
  }
}

.mt-140 {
  margin-top: 140px !important;
}
@media only screen and (max-width: 767px) {
  .mt-140 {
    margin-top: 7rem !important;
  }
}

.mb-140 {
  margin-bottom: 140px !important;
}
@media only screen and (max-width: 767px) {
  .mb-140 {
    margin-bottom: 7rem !important;
  }
}

.ml-140 {
  margin-left: 140px !important;
}
@media only screen and (max-width: 767px) {
  .ml-140 {
    margin-left: 7rem !important;
  }
}

.mr-140 {
  margin-right: 140px !important;
}
@media only screen and (max-width: 767px) {
  .mr-140 {
    margin-right: 7rem !important;
  }
}

.pt-140 {
  padding-top: 140px !important;
}
@media only screen and (max-width: 767px) {
  .pt-140 {
    padding-top: 7rem !important;
  }
}

.pb-140 {
  padding-bottom: 140px !important;
}
@media only screen and (max-width: 767px) {
  .pb-140 {
    padding-bottom: 7rem !important;
  }
}

.pl-140 {
  padding-left: 140px !important;
}
@media only screen and (max-width: 767px) {
  .pl-140 {
    padding-left: 7rem !important;
  }
}

.pr-140 {
  padding-right: 140px !important;
}
@media only screen and (max-width: 767px) {
  .pr-140 {
    padding-right: 7rem !important;
  }
}

.mt-150 {
  margin-top: 150px !important;
}
@media only screen and (max-width: 767px) {
  .mt-150 {
    margin-top: 7.5rem !important;
  }
}

.mb-150 {
  margin-bottom: 150px !important;
}
@media only screen and (max-width: 767px) {
  .mb-150 {
    margin-bottom: 7.5rem !important;
  }
}

.ml-150 {
  margin-left: 150px !important;
}
@media only screen and (max-width: 767px) {
  .ml-150 {
    margin-left: 7.5rem !important;
  }
}

.mr-150 {
  margin-right: 150px !important;
}
@media only screen and (max-width: 767px) {
  .mr-150 {
    margin-right: 7.5rem !important;
  }
}

.pt-150 {
  padding-top: 150px !important;
}
@media only screen and (max-width: 767px) {
  .pt-150 {
    padding-top: 7.5rem !important;
  }
}

.pb-150 {
  padding-bottom: 150px !important;
}
@media only screen and (max-width: 767px) {
  .pb-150 {
    padding-bottom: 7.5rem !important;
  }
}

.pl-150 {
  padding-left: 150px !important;
}
@media only screen and (max-width: 767px) {
  .pl-150 {
    padding-left: 7.5rem !important;
  }
}

.pr-150 {
  padding-right: 150px !important;
}
@media only screen and (max-width: 767px) {
  .pr-150 {
    padding-right: 7.5rem !important;
  }
}

.mt-160 {
  margin-top: 160px !important;
}
@media only screen and (max-width: 767px) {
  .mt-160 {
    margin-top: 8rem !important;
  }
}

.mb-160 {
  margin-bottom: 160px !important;
}
@media only screen and (max-width: 767px) {
  .mb-160 {
    margin-bottom: 8rem !important;
  }
}

.ml-160 {
  margin-left: 160px !important;
}
@media only screen and (max-width: 767px) {
  .ml-160 {
    margin-left: 8rem !important;
  }
}

.mr-160 {
  margin-right: 160px !important;
}
@media only screen and (max-width: 767px) {
  .mr-160 {
    margin-right: 8rem !important;
  }
}

.pt-160 {
  padding-top: 160px !important;
}
@media only screen and (max-width: 767px) {
  .pt-160 {
    padding-top: 8rem !important;
  }
}

.pb-160 {
  padding-bottom: 160px !important;
}
@media only screen and (max-width: 767px) {
  .pb-160 {
    padding-bottom: 8rem !important;
  }
}

.pl-160 {
  padding-left: 160px !important;
}
@media only screen and (max-width: 767px) {
  .pl-160 {
    padding-left: 8rem !important;
  }
}

.pr-160 {
  padding-right: 160px !important;
}
@media only screen and (max-width: 767px) {
  .pr-160 {
    padding-right: 8rem !important;
  }
}

.mt-170 {
  margin-top: 170px !important;
}
@media only screen and (max-width: 767px) {
  .mt-170 {
    margin-top: 8.5rem !important;
  }
}

.mb-170 {
  margin-bottom: 170px !important;
}
@media only screen and (max-width: 767px) {
  .mb-170 {
    margin-bottom: 8.5rem !important;
  }
}

.ml-170 {
  margin-left: 170px !important;
}
@media only screen and (max-width: 767px) {
  .ml-170 {
    margin-left: 8.5rem !important;
  }
}

.mr-170 {
  margin-right: 170px !important;
}
@media only screen and (max-width: 767px) {
  .mr-170 {
    margin-right: 8.5rem !important;
  }
}

.pt-170 {
  padding-top: 170px !important;
}
@media only screen and (max-width: 767px) {
  .pt-170 {
    padding-top: 8.5rem !important;
  }
}

.pb-170 {
  padding-bottom: 170px !important;
}
@media only screen and (max-width: 767px) {
  .pb-170 {
    padding-bottom: 8.5rem !important;
  }
}

.pl-170 {
  padding-left: 170px !important;
}
@media only screen and (max-width: 767px) {
  .pl-170 {
    padding-left: 8.5rem !important;
  }
}

.pr-170 {
  padding-right: 170px !important;
}
@media only screen and (max-width: 767px) {
  .pr-170 {
    padding-right: 8.5rem !important;
  }
}

.mt-180 {
  margin-top: 180px !important;
}
@media only screen and (max-width: 767px) {
  .mt-180 {
    margin-top: 9rem !important;
  }
}

.mb-180 {
  margin-bottom: 180px !important;
}
@media only screen and (max-width: 767px) {
  .mb-180 {
    margin-bottom: 9rem !important;
  }
}

.ml-180 {
  margin-left: 180px !important;
}
@media only screen and (max-width: 767px) {
  .ml-180 {
    margin-left: 9rem !important;
  }
}

.mr-180 {
  margin-right: 180px !important;
}
@media only screen and (max-width: 767px) {
  .mr-180 {
    margin-right: 9rem !important;
  }
}

.pt-180 {
  padding-top: 180px !important;
}
@media only screen and (max-width: 767px) {
  .pt-180 {
    padding-top: 9rem !important;
  }
}

.pb-180 {
  padding-bottom: 180px !important;
}
@media only screen and (max-width: 767px) {
  .pb-180 {
    padding-bottom: 9rem !important;
  }
}

.pl-180 {
  padding-left: 180px !important;
}
@media only screen and (max-width: 767px) {
  .pl-180 {
    padding-left: 9rem !important;
  }
}

.pr-180 {
  padding-right: 180px !important;
}
@media only screen and (max-width: 767px) {
  .pr-180 {
    padding-right: 9rem !important;
  }
}

.mt-190 {
  margin-top: 190px !important;
}
@media only screen and (max-width: 767px) {
  .mt-190 {
    margin-top: 9.5rem !important;
  }
}

.mb-190 {
  margin-bottom: 190px !important;
}
@media only screen and (max-width: 767px) {
  .mb-190 {
    margin-bottom: 9.5rem !important;
  }
}

.ml-190 {
  margin-left: 190px !important;
}
@media only screen and (max-width: 767px) {
  .ml-190 {
    margin-left: 9.5rem !important;
  }
}

.mr-190 {
  margin-right: 190px !important;
}
@media only screen and (max-width: 767px) {
  .mr-190 {
    margin-right: 9.5rem !important;
  }
}

.pt-190 {
  padding-top: 190px !important;
}
@media only screen and (max-width: 767px) {
  .pt-190 {
    padding-top: 9.5rem !important;
  }
}

.pb-190 {
  padding-bottom: 190px !important;
}
@media only screen and (max-width: 767px) {
  .pb-190 {
    padding-bottom: 9.5rem !important;
  }
}

.pl-190 {
  padding-left: 190px !important;
}
@media only screen and (max-width: 767px) {
  .pl-190 {
    padding-left: 9.5rem !important;
  }
}

.pr-190 {
  padding-right: 190px !important;
}
@media only screen and (max-width: 767px) {
  .pr-190 {
    padding-right: 9.5rem !important;
  }
}

.mt-200 {
  margin-top: 200px !important;
}
@media only screen and (max-width: 767px) {
  .mt-200 {
    margin-top: 10rem !important;
  }
}

.mb-200 {
  margin-bottom: 200px !important;
}
@media only screen and (max-width: 767px) {
  .mb-200 {
    margin-bottom: 10rem !important;
  }
}

.ml-200 {
  margin-left: 200px !important;
}
@media only screen and (max-width: 767px) {
  .ml-200 {
    margin-left: 10rem !important;
  }
}

.mr-200 {
  margin-right: 200px !important;
}
@media only screen and (max-width: 767px) {
  .mr-200 {
    margin-right: 10rem !important;
  }
}

.pt-200 {
  padding-top: 200px !important;
}
@media only screen and (max-width: 767px) {
  .pt-200 {
    padding-top: 10rem !important;
  }
}

.pb-200 {
  padding-bottom: 200px !important;
}
@media only screen and (max-width: 767px) {
  .pb-200 {
    padding-bottom: 10rem !important;
  }
}

.pl-200 {
  padding-left: 200px !important;
}
@media only screen and (max-width: 767px) {
  .pl-200 {
    padding-left: 10rem !important;
  }
}

.pr-200 {
  padding-right: 200px !important;
}
@media only screen and (max-width: 767px) {
  .pr-200 {
    padding-right: 10rem !important;
  }
}

.mt-210 {
  margin-top: 210px !important;
}
@media only screen and (max-width: 767px) {
  .mt-210 {
    margin-top: 10.5rem !important;
  }
}

.mb-210 {
  margin-bottom: 210px !important;
}
@media only screen and (max-width: 767px) {
  .mb-210 {
    margin-bottom: 10.5rem !important;
  }
}

.ml-210 {
  margin-left: 210px !important;
}
@media only screen and (max-width: 767px) {
  .ml-210 {
    margin-left: 10.5rem !important;
  }
}

.mr-210 {
  margin-right: 210px !important;
}
@media only screen and (max-width: 767px) {
  .mr-210 {
    margin-right: 10.5rem !important;
  }
}

.pt-210 {
  padding-top: 210px !important;
}
@media only screen and (max-width: 767px) {
  .pt-210 {
    padding-top: 10.5rem !important;
  }
}

.pb-210 {
  padding-bottom: 210px !important;
}
@media only screen and (max-width: 767px) {
  .pb-210 {
    padding-bottom: 10.5rem !important;
  }
}

.pl-210 {
  padding-left: 210px !important;
}
@media only screen and (max-width: 767px) {
  .pl-210 {
    padding-left: 10.5rem !important;
  }
}

.pr-210 {
  padding-right: 210px !important;
}
@media only screen and (max-width: 767px) {
  .pr-210 {
    padding-right: 10.5rem !important;
  }
}

.mt-220 {
  margin-top: 220px !important;
}
@media only screen and (max-width: 767px) {
  .mt-220 {
    margin-top: 11rem !important;
  }
}

.mb-220 {
  margin-bottom: 220px !important;
}
@media only screen and (max-width: 767px) {
  .mb-220 {
    margin-bottom: 11rem !important;
  }
}

.ml-220 {
  margin-left: 220px !important;
}
@media only screen and (max-width: 767px) {
  .ml-220 {
    margin-left: 11rem !important;
  }
}

.mr-220 {
  margin-right: 220px !important;
}
@media only screen and (max-width: 767px) {
  .mr-220 {
    margin-right: 11rem !important;
  }
}

.pt-220 {
  padding-top: 220px !important;
}
@media only screen and (max-width: 767px) {
  .pt-220 {
    padding-top: 11rem !important;
  }
}

.pb-220 {
  padding-bottom: 220px !important;
}
@media only screen and (max-width: 767px) {
  .pb-220 {
    padding-bottom: 11rem !important;
  }
}

.pl-220 {
  padding-left: 220px !important;
}
@media only screen and (max-width: 767px) {
  .pl-220 {
    padding-left: 11rem !important;
  }
}

.pr-220 {
  padding-right: 220px !important;
}
@media only screen and (max-width: 767px) {
  .pr-220 {
    padding-right: 11rem !important;
  }
}

.mt-230 {
  margin-top: 230px !important;
}
@media only screen and (max-width: 767px) {
  .mt-230 {
    margin-top: 11.5rem !important;
  }
}

.mb-230 {
  margin-bottom: 230px !important;
}
@media only screen and (max-width: 767px) {
  .mb-230 {
    margin-bottom: 11.5rem !important;
  }
}

.ml-230 {
  margin-left: 230px !important;
}
@media only screen and (max-width: 767px) {
  .ml-230 {
    margin-left: 11.5rem !important;
  }
}

.mr-230 {
  margin-right: 230px !important;
}
@media only screen and (max-width: 767px) {
  .mr-230 {
    margin-right: 11.5rem !important;
  }
}

.pt-230 {
  padding-top: 230px !important;
}
@media only screen and (max-width: 767px) {
  .pt-230 {
    padding-top: 11.5rem !important;
  }
}

.pb-230 {
  padding-bottom: 230px !important;
}
@media only screen and (max-width: 767px) {
  .pb-230 {
    padding-bottom: 11.5rem !important;
  }
}

.pl-230 {
  padding-left: 230px !important;
}
@media only screen and (max-width: 767px) {
  .pl-230 {
    padding-left: 11.5rem !important;
  }
}

.pr-230 {
  padding-right: 230px !important;
}
@media only screen and (max-width: 767px) {
  .pr-230 {
    padding-right: 11.5rem !important;
  }
}

.mt-240 {
  margin-top: 240px !important;
}
@media only screen and (max-width: 767px) {
  .mt-240 {
    margin-top: 12rem !important;
  }
}

.mb-240 {
  margin-bottom: 240px !important;
}
@media only screen and (max-width: 767px) {
  .mb-240 {
    margin-bottom: 12rem !important;
  }
}

.ml-240 {
  margin-left: 240px !important;
}
@media only screen and (max-width: 767px) {
  .ml-240 {
    margin-left: 12rem !important;
  }
}

.mr-240 {
  margin-right: 240px !important;
}
@media only screen and (max-width: 767px) {
  .mr-240 {
    margin-right: 12rem !important;
  }
}

.pt-240 {
  padding-top: 240px !important;
}
@media only screen and (max-width: 767px) {
  .pt-240 {
    padding-top: 12rem !important;
  }
}

.pb-240 {
  padding-bottom: 240px !important;
}
@media only screen and (max-width: 767px) {
  .pb-240 {
    padding-bottom: 12rem !important;
  }
}

.pl-240 {
  padding-left: 240px !important;
}
@media only screen and (max-width: 767px) {
  .pl-240 {
    padding-left: 12rem !important;
  }
}

.pr-240 {
  padding-right: 240px !important;
}
@media only screen and (max-width: 767px) {
  .pr-240 {
    padding-right: 12rem !important;
  }
}

.mt-250 {
  margin-top: 250px !important;
}
@media only screen and (max-width: 767px) {
  .mt-250 {
    margin-top: 12.5rem !important;
  }
}

.mb-250 {
  margin-bottom: 250px !important;
}
@media only screen and (max-width: 767px) {
  .mb-250 {
    margin-bottom: 12.5rem !important;
  }
}

.ml-250 {
  margin-left: 250px !important;
}
@media only screen and (max-width: 767px) {
  .ml-250 {
    margin-left: 12.5rem !important;
  }
}

.mr-250 {
  margin-right: 250px !important;
}
@media only screen and (max-width: 767px) {
  .mr-250 {
    margin-right: 12.5rem !important;
  }
}

.pt-250 {
  padding-top: 250px !important;
}
@media only screen and (max-width: 767px) {
  .pt-250 {
    padding-top: 12.5rem !important;
  }
}

.pb-250 {
  padding-bottom: 250px !important;
}
@media only screen and (max-width: 767px) {
  .pb-250 {
    padding-bottom: 12.5rem !important;
  }
}

.pl-250 {
  padding-left: 250px !important;
}
@media only screen and (max-width: 767px) {
  .pl-250 {
    padding-left: 12.5rem !important;
  }
}

.pr-250 {
  padding-right: 250px !important;
}
@media only screen and (max-width: 767px) {
  .pr-250 {
    padding-right: 12.5rem !important;
  }
}

.mt-260 {
  margin-top: 260px !important;
}
@media only screen and (max-width: 767px) {
  .mt-260 {
    margin-top: 13rem !important;
  }
}

.mb-260 {
  margin-bottom: 260px !important;
}
@media only screen and (max-width: 767px) {
  .mb-260 {
    margin-bottom: 13rem !important;
  }
}

.ml-260 {
  margin-left: 260px !important;
}
@media only screen and (max-width: 767px) {
  .ml-260 {
    margin-left: 13rem !important;
  }
}

.mr-260 {
  margin-right: 260px !important;
}
@media only screen and (max-width: 767px) {
  .mr-260 {
    margin-right: 13rem !important;
  }
}

.pt-260 {
  padding-top: 260px !important;
}
@media only screen and (max-width: 767px) {
  .pt-260 {
    padding-top: 13rem !important;
  }
}

.pb-260 {
  padding-bottom: 260px !important;
}
@media only screen and (max-width: 767px) {
  .pb-260 {
    padding-bottom: 13rem !important;
  }
}

.pl-260 {
  padding-left: 260px !important;
}
@media only screen and (max-width: 767px) {
  .pl-260 {
    padding-left: 13rem !important;
  }
}

.pr-260 {
  padding-right: 260px !important;
}
@media only screen and (max-width: 767px) {
  .pr-260 {
    padding-right: 13rem !important;
  }
}

.mt-270 {
  margin-top: 270px !important;
}
@media only screen and (max-width: 767px) {
  .mt-270 {
    margin-top: 13.5rem !important;
  }
}

.mb-270 {
  margin-bottom: 270px !important;
}
@media only screen and (max-width: 767px) {
  .mb-270 {
    margin-bottom: 13.5rem !important;
  }
}

.ml-270 {
  margin-left: 270px !important;
}
@media only screen and (max-width: 767px) {
  .ml-270 {
    margin-left: 13.5rem !important;
  }
}

.mr-270 {
  margin-right: 270px !important;
}
@media only screen and (max-width: 767px) {
  .mr-270 {
    margin-right: 13.5rem !important;
  }
}

.pt-270 {
  padding-top: 270px !important;
}
@media only screen and (max-width: 767px) {
  .pt-270 {
    padding-top: 13.5rem !important;
  }
}

.pb-270 {
  padding-bottom: 270px !important;
}
@media only screen and (max-width: 767px) {
  .pb-270 {
    padding-bottom: 13.5rem !important;
  }
}

.pl-270 {
  padding-left: 270px !important;
}
@media only screen and (max-width: 767px) {
  .pl-270 {
    padding-left: 13.5rem !important;
  }
}

.pr-270 {
  padding-right: 270px !important;
}
@media only screen and (max-width: 767px) {
  .pr-270 {
    padding-right: 13.5rem !important;
  }
}

.mt-280 {
  margin-top: 280px !important;
}
@media only screen and (max-width: 767px) {
  .mt-280 {
    margin-top: 14rem !important;
  }
}

.mb-280 {
  margin-bottom: 280px !important;
}
@media only screen and (max-width: 767px) {
  .mb-280 {
    margin-bottom: 14rem !important;
  }
}

.ml-280 {
  margin-left: 280px !important;
}
@media only screen and (max-width: 767px) {
  .ml-280 {
    margin-left: 14rem !important;
  }
}

.mr-280 {
  margin-right: 280px !important;
}
@media only screen and (max-width: 767px) {
  .mr-280 {
    margin-right: 14rem !important;
  }
}

.pt-280 {
  padding-top: 280px !important;
}
@media only screen and (max-width: 767px) {
  .pt-280 {
    padding-top: 14rem !important;
  }
}

.pb-280 {
  padding-bottom: 280px !important;
}
@media only screen and (max-width: 767px) {
  .pb-280 {
    padding-bottom: 14rem !important;
  }
}

.pl-280 {
  padding-left: 280px !important;
}
@media only screen and (max-width: 767px) {
  .pl-280 {
    padding-left: 14rem !important;
  }
}

.pr-280 {
  padding-right: 280px !important;
}
@media only screen and (max-width: 767px) {
  .pr-280 {
    padding-right: 14rem !important;
  }
}

.mt-290 {
  margin-top: 290px !important;
}
@media only screen and (max-width: 767px) {
  .mt-290 {
    margin-top: 14.5rem !important;
  }
}

.mb-290 {
  margin-bottom: 290px !important;
}
@media only screen and (max-width: 767px) {
  .mb-290 {
    margin-bottom: 14.5rem !important;
  }
}

.ml-290 {
  margin-left: 290px !important;
}
@media only screen and (max-width: 767px) {
  .ml-290 {
    margin-left: 14.5rem !important;
  }
}

.mr-290 {
  margin-right: 290px !important;
}
@media only screen and (max-width: 767px) {
  .mr-290 {
    margin-right: 14.5rem !important;
  }
}

.pt-290 {
  padding-top: 290px !important;
}
@media only screen and (max-width: 767px) {
  .pt-290 {
    padding-top: 14.5rem !important;
  }
}

.pb-290 {
  padding-bottom: 290px !important;
}
@media only screen and (max-width: 767px) {
  .pb-290 {
    padding-bottom: 14.5rem !important;
  }
}

.pl-290 {
  padding-left: 290px !important;
}
@media only screen and (max-width: 767px) {
  .pl-290 {
    padding-left: 14.5rem !important;
  }
}

.pr-290 {
  padding-right: 290px !important;
}
@media only screen and (max-width: 767px) {
  .pr-290 {
    padding-right: 14.5rem !important;
  }
}

.mt-300 {
  margin-top: 300px !important;
}
@media only screen and (max-width: 767px) {
  .mt-300 {
    margin-top: 15rem !important;
  }
}

.mb-300 {
  margin-bottom: 300px !important;
}
@media only screen and (max-width: 767px) {
  .mb-300 {
    margin-bottom: 15rem !important;
  }
}

.ml-300 {
  margin-left: 300px !important;
}
@media only screen and (max-width: 767px) {
  .ml-300 {
    margin-left: 15rem !important;
  }
}

.mr-300 {
  margin-right: 300px !important;
}
@media only screen and (max-width: 767px) {
  .mr-300 {
    margin-right: 15rem !important;
  }
}

.pt-300 {
  padding-top: 300px !important;
}
@media only screen and (max-width: 767px) {
  .pt-300 {
    padding-top: 15rem !important;
  }
}

.pb-300 {
  padding-bottom: 300px !important;
}
@media only screen and (max-width: 767px) {
  .pb-300 {
    padding-bottom: 15rem !important;
  }
}

.pl-300 {
  padding-left: 300px !important;
}
@media only screen and (max-width: 767px) {
  .pl-300 {
    padding-left: 15rem !important;
  }
}

.pr-300 {
  padding-right: 300px !important;
}
@media only screen and (max-width: 767px) {
  .pr-300 {
    padding-right: 15rem !important;
  }
}

/*---------------------------------------------------------
base
---------------------------------------------------------*/
html {
  font-size: 1.3333333333vw;
}
@media print, screen and (min-width: 768px) {
  html {
    font-size: 62.5%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1220px) {
  html {
    font-size: 0.8196721311vw;
  }
}
html.html-hidden {
  overflow: hidden;
}

body {
  font-size: 2.8rem;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  color: #263238;
  line-height: 1;
  min-width: 320px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
}
@media print, screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

* {
  letter-spacing: 0.05em;
}

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

a {
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.7;
}

i {
  font-style: normal;
}

.wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100dvh;
}

main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  overflow-x: clip;
  padding: 16rem 0 15rem;
}
@media print, screen and (min-width: 768px) {
  main {
    padding: 10rem 0 15rem;
  }
}

.res-pc {
  display: inline !important;
}
@media only screen and (max-width: 767px) {
  .res-pc {
    display: none !important;
  }
}

.res-sp {
  display: none !important;
}
@media only screen and (max-width: 767px) {
  .res-sp {
    display: inline !important;
  }
}

.inner {
  padding: 0 4rem;
}
@media print, screen and (min-width: 768px) {
  .inner {
    width: 100%;
    max-width: 122rem;
    padding: 0 3rem;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1320px) {
  .inner {
    padding: 0 7rem 0 3rem;
  }
}

.inner-s {
  padding: 0 4rem;
}
@media print, screen and (min-width: 768px) {
  .inner-s {
    width: 100%;
    max-width: 122rem;
    padding: 0 3rem;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1320px) {
  .inner-s {
    padding: 0 7rem 0 3rem;
  }
}
@media print, screen and (min-width: 768px) {
  .inner-s {
    max-width: 87rem;
    padding: 0;
  }
}

/*---------------------------------------------------------
gnav
---------------------------------------------------------*/
.gnav-parent .gnav {
  position: fixed;
  z-index: 9;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  background-color: #ec7515;
  -webkit-transition: opacity 0.2s 0.2s;
  transition: opacity 0.2s 0.2s;
  opacity: 0;
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  .gnav-parent .gnav {
    position: static;
    opacity: 1 !important;
    background-color: transparent;
    pointer-events: auto !important;
  }
}
.gnav-parent .gnav .gnav-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 768px) {
  .gnav-parent .gnav .gnav-flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.gnav-parent .gnav .gnav-flex .gnav-scroll {
  overflow: auto;
  padding: 5rem 0 13rem;
  margin-top: 13rem;
}
@media print, screen and (min-width: 768px) {
  .gnav-parent .gnav .gnav-flex .gnav-scroll {
    overflow: visible;
    padding: 0;
    margin-top: 0;
  }
}
.gnav-parent .gnav-btn {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  width: 12rem;
  height: 12rem;
  background-color: #ec7515;
  border-radius: 0 0 0 3rem;
  opacity: 1 !important;
}
@media print, screen and (min-width: 768px) {
  .gnav-parent .gnav-btn {
    display: none;
  }
}
.gnav-parent .gnav-btn i {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  display: block;
  background-color: #fff;
  width: 4.5rem;
  height: 2px;
  border-radius: 100vw;
  -webkit-transition: margin 0.1s 0.2s ease, background 0.3s, -webkit-transform 0.3s;
  transition: margin 0.1s 0.2s ease, background 0.3s, -webkit-transform 0.3s;
  transition: margin 0.1s 0.2s ease, transform 0.3s, background 0.3s;
  transition: margin 0.1s 0.2s ease, transform 0.3s, background 0.3s, -webkit-transform 0.3s;
}
.gnav-parent .gnav-btn i:nth-child(1) {
  margin-top: -1rem;
}
.gnav-parent .gnav-btn i:nth-child(2) {
  -webkit-transition: margin 0.1s 0.2s ease, background 0.3s, opacity 0.2s 0.2s, -webkit-transform 0.3s;
  transition: margin 0.1s 0.2s ease, background 0.3s, opacity 0.2s 0.2s, -webkit-transform 0.3s;
  transition: margin 0.1s 0.2s ease, transform 0.3s, background 0.3s, opacity 0.2s 0.2s;
  transition: margin 0.1s 0.2s ease, transform 0.3s, background 0.3s, opacity 0.2s 0.2s, -webkit-transform 0.3s;
}
.gnav-parent .gnav-btn i:nth-child(3) {
  margin-top: 1rem;
}
.gnav-parent.gnav-open .gnav {
  opacity: 1;
  -webkit-transition: opacity 0.3s 0s;
  transition: opacity 0.3s 0s;
  pointer-events: auto;
}
.gnav-parent.gnav-open .gnav-btn i {
  -webkit-transition: margin 0.1s ease, rotate 0.3s 0.2s;
  transition: margin 0.1s ease, rotate 0.3s 0.2s;
  margin: 0;
  height: 3px;
  background-color: #fff !important;
}
.gnav-parent.gnav-open .gnav-btn i:nth-child(1) {
  rotate: 30deg;
}
.gnav-parent.gnav-open .gnav-btn i:nth-child(2) {
  opacity: 0;
}
.gnav-parent.gnav-open .gnav-btn i:nth-child(3) {
  rotate: -30deg;
}

/*---------------------------------------------------------
tabSwitch
---------------------------------------------------------*/
#tab-contents {
  -webkit-transition: opacity 0.3s, height 0.3s;
  transition: opacity 0.3s, height 0.3s;
}

.tab-box {
  opacity: 0;
  height: 0;
  min-height: 0;
  overflow: hidden;
  -webkit-transition: opacity 0.3s 0.15s;
  transition: opacity 0.3s 0.15s;
}
.tab-box.open {
  opacity: 1;
  height: auto;
}

/*---------------------------------------------------------
modal
---------------------------------------------------------*/
.modal-item {
  display: none;
}

#modal {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 9999;
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
  pointer-events: none;
}
#modal.modal-open {
  display: block;
  opacity: 1;
  pointer-events: auto;
}
#modal .modal-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
}
#modal .modal-flex .modal-container {
  overflow: auto;
  width: 100%;
  padding: 10rem 0;
}
#modal #modal-close {
  position: absolute;
  cursor: pointer;
}

.c-lead {
  letter-spacing: 0.1em;
  line-height: 2.5;
}
@media print, screen and (min-width: 768px) {
  .c-lead {
    line-height: 2.5;
  }
}

.c-txt {
  line-height: 2;
}
@media print, screen and (min-width: 768px) {
  .c-txt {
    letter-spacing: 0.1em;
    line-height: 2.5;
  }
}

.c-link {
  color: #ec7614;
  border-bottom: 1px solid #ec7614;
}
.c-link[target=_blank]:after {
  content: "";
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
  background-image: url(../img/common/icon-blank.svg);
  margin-left: 0.2em;
}
@media print, screen and (min-width: 768px) {
  .c-link[target=_blank]:after {
    width: 1.2rem;
    height: 1.2rem;
  }
}

.c-item-set:nth-child(n+2) {
  margin-top: 12rem;
}
@media print, screen and (min-width: 768px) {
  .c-item-set:nth-child(n+2) {
    margin-top: 8rem;
  }
}

.c-title-ribon {
  position: relative;
  font-size: 3.6rem;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 6rem;
  margin-bottom: 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-title-ribon {
    font-size: 3rem;
    line-height: 1.5;
    padding-left: 5rem;
    margin-bottom: 4rem;
  }
}
.c-title-ribon:before {
  content: "";
  position: absolute;
  top: 0.3rem;
  left: 0;
  display: block;
  width: 2rem;
  height: 4.5rem;
  background-color: #f1a01d;
  -webkit-transform: skewX(-26.5deg);
          transform: skewX(-26.5deg);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
}
@media print, screen and (min-width: 768px) {
  .c-title-ribon:before {
    width: 1.5rem;
    height: 3.6rem;
  }
}
.c-title-ribon ._en {
  font-size: 3.6rem;
  display: block;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-style: normal;
}
@media print, screen and (min-width: 768px) {
  .c-title-ribon ._en {
    display: inline;
    font-size: 3rem;
    margin-left: 1em;
  }
}

.c-title-border {
  position: relative;
  font-size: 3rem;
  font-weight: bold;
  padding-left: 0.9em;
  margin-top: 5rem;
  margin-bottom: 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-title-border {
    font-size: 2rem;
    margin-top: 6rem;
    margin-bottom: 3rem;
  }
}
.c-title-border:before {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
  display: block;
  width: 0.15em;
  height: 1em;
  background-color: #f1a01d;
}

.c-list li {
  line-height: 2;
}
@media print, screen and (min-width: 768px) {
  .c-list li {
    line-height: 2.5;
    letter-spacing: 0.1em;
  }
}
ol.c-list {
  counter-reset: num 0;
}
ol.c-list > li {
  counter-increment: num;
  padding-left: 1.5em;
}
ol.c-list > li:before {
  content: counter(num) ". ";
  float: left;
  margin-left: -1.5em;
}

ul.c-list li {
  padding-left: 1.5em;
}
ul.c-list li:before {
  content: "・";
  float: left;
  margin-left: -1.5em;
}

.c-tsume {
  margin-left: -0.5em;
}

.c-btn-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem 0;
}
@media print, screen and (min-width: 768px) {
  .c-btn-image {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .c-btn-image li:nth-child(n+2) {
    margin-top: 0;
  }
}
.c-btn-image li a ._img img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.c-btn-image li a:hover {
  opacity: 1;
}
.c-btn-image li a:hover ._img img {
  opacity: 0.7;
}
.c-btn-image li a:hover .c-btn {
  background-color: #c3d12d;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
}
.c-btn-image li ._img {
  display: block;
  border-radius: 1.5rem;
  overflow: hidden;
}
.c-btn-image li .c-btn {
  margin-top: -4.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-image li .c-btn {
    margin-top: -3rem;
  }
}

.c-line {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: 100vw;
  min-width: 144rem;
  height: 100vh;
  background: no-repeat center top/100% auto;
  pointer-events: none;
}

.c-sec-title {
  margin-bottom: 5.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-sec-title {
    margin-bottom: 5rem;
  }
}
.c-sec-title span {
  display: inline-block;
}
.c-sec-title i {
  display: inline-block;
}
.c-sec-title i._en {
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 8.4rem;
  background: linear-gradient(63deg, #e95413 0, #ec7614 27%, #f19f19 53%, #f5c000 71%, #d8d100 89%, #c3d12d 100%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  text-indent: -0.65em;
  padding-left: 0.65em;
  padding-bottom: 0.15em;
}
@media print, screen and (min-width: 768px) {
  .c-sec-title i._en {
    font-size: 6rem;
  }
}
.c-sec-title i._jp {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: right;
  margin-left: 3rem;
}
@media print, screen and (min-width: 768px) {
  .c-sec-title i._jp {
    font-size: 1.8rem;
    margin-left: 2.5rem;
  }
}
.c-sec-title.c-sec-title-column i._jp {
  display: block;
  margin-left: 0;
  padding-right: 0.2em;
}

.c-sec {
  padding-top: 12rem;
}
@media print, screen and (min-width: 768px) {
  .c-sec {
    padding-top: 9rem;
  }
}

@media print, screen and (min-width: 768px) {
  .c-tel-link {
    pointer-events: none;
  }
}

.c-table dl {
  border-bottom: 1px solid #eceff1;
}
@media print, screen and (min-width: 768px) {
  .c-table dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.c-table dl:first-child {
  border-top: 1px solid #eceff1;
}
.c-table dl dt {
  background-color: #f9fae9;
  font-weight: bold;
  text-align: center;
  padding: 4rem 1rem;
}
@media print, screen and (min-width: 768px) {
  .c-table dl dt {
    width: 29rem;
    text-align: left;
  }
}
.c-table dl dd {
  padding: 3rem 4rem;
  line-height: 1.7857142857;
}
@media print, screen and (min-width: 768px) {
  .c-table dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.c-table dl dd ol {
  margin-top: 1.875em;
}
.c-table dl dd ol li {
  padding-left: 2em;
}
.c-table dl dd ol li span {
  float: left;
  margin-left: -2.75em;
}
@media print, screen and (min-width: 768px) {
  .c-table dl dt,
  .c-table dl dd {
    padding: 3.5rem 4rem;
    line-height: 1.75;
  }
}
.c-table dl:has(.c-mapbox) dd {
  padding-bottom: 8rem;
}
@media print, screen and (min-width: 768px) {
  .c-table dl:has(.c-mapbox) dd {
    padding-bottom: 5rem;
  }
}

.c-mapbox {
  width: 100%;
  margin-top: 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-mapbox {
    width: 72.5rem;
    margin-top: 3rem;
  }
}
.c-mapbox .c-mapbox-inner {
  position: relative;
  width: 100%;
  padding-top: 59.7014925373%;
}
@media print, screen and (min-width: 768px) {
  .c-mapbox .c-mapbox-inner {
    padding-top: 40%;
  }
}
.c-mapbox .c-mapbox-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/*---------------------------------------------------------
header
---------------------------------------------------------*/
header {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  height: 12rem;
  background-color: #fff;
}
@media print, screen and (min-width: 768px) {
  header {
    -webkit-transition: height 0.3s;
    transition: height 0.3s;
    height: 9rem;
  }
}
@media print, screen and (min-width: 768px) {
  .top header {
    height: 15rem;
  }
  .top header .h_logo {
    width: 20rem;
    margin: 3rem 0 0 0;
  }
  .top header .gnav {
    margin-top: 7.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .h_active .top header {
    height: 9rem;
  }
  .h_active .top header .h_logo {
    width: 16rem;
    margin-top: 1.1rem;
  }
  .h_active .top header .gnav {
    margin-top: 1rem;
  }
}
@media print, screen and (min-width: 768px) {
  header #header-inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 134rem;
    padding: 0 3rem;
    margin: 0 auto;
  }
}
header .h_logo {
  margin: 2rem 0 0 4rem;
  display: block;
  width: 20rem;
}
@media print, screen and (min-width: 768px) {
  header .h_logo {
    -webkit-transition: width 0.3s, margin 0.3s;
    transition: width 0.3s, margin 0.3s;
    width: 16rem;
    margin-top: 1.1rem;
  }
}
header .h_logo h1 {
  display: none;
}
.top header .h_logo h1 {
  display: block;
}
header .h_logo p {
  display: block;
}
.top header .h_logo p {
  display: none;
}
@media print, screen and (min-width: 768px) {
  header .gnav {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-top: 1rem;
    -webkit-transition: margin 0.3s !important;
    transition: margin 0.3s !important;
  }
}
header .gnav .h_logo {
  position: absolute;
  top: 0;
  left: 0;
}
@media print, screen and (min-width: 768px) {
  header .gnav .h_logo {
    display: none;
  }
}
header .gnav .nav-box {
  padding: 0 8rem;
}
@media print, screen and (min-width: 768px) {
  header .gnav .nav-box {
    padding: 0;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 0 4.5rem;
  }
}
header .gnav #h-nav > ul > li {
  padding: 6rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li {
    position: relative;
    padding: 0;
    border: none;
  }
}
header .gnav #h-nav > ul > li:last-child {
  border: none;
}
header .gnav #h-nav > ul > li .nav-link {
  position: relative;
  font-size: 3.2rem;
  font-weight: bold;
  color: #fff;
  display: block;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-link {
    font-size: 1.6rem;
    color: #263238;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
}
header .gnav #h-nav > ul > li .nav-link:hover {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-link:hover {
    color: #ec7515;
  }
}
header .gnav #h-nav > ul > li .nav-link:before {
  content: "";
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 100vw;
  background-color: #c3d12c;
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 767px) {
  header .gnav #h-nav > ul > li .nav-link:before {
    display: none;
  }
}
header .gnav #h-nav > ul > li .nav-link[target=_blank] {
  display: inline-block;
  padding-right: 3rem;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-link[target=_blank] {
    padding-right: 1.5rem;
  }
}
header .gnav #h-nav > ul > li .nav-link[target=_blank]:after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-link[target=_blank]:after {
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-link[target=_blank]:after {
    background-image: url(../img/common/icon-blank.svg);
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) {
    padding-right: 1.8rem;
  }
}
header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head {
  position: relative;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head {
    cursor: default;
  }
}
header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head label {
  display: block;
}
header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head label a {
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head label a {
    pointer-events: auto;
  }
}
header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 2rem;
  display: block;
  width: 1.8rem;
  height: 1.8rem;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i {
    right: -1.8rem;
    width: 0;
    height: 100%;
  }
}
header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:before, header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:before, header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:after {
    width: 0.8rem;
    height: 0.6rem;
    background: no-repeat center center/contain;
    rotate: 0deg;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:before {
    z-index: 1;
    background-image: url(../img/common/arrow-triangle-orange.svg);
    opacity: 0;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-head i:after {
    background-image: url(../img/common/arrow-triangle.svg);
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower) .acc-body {
    pointer-events: none;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower):has(.acc-head input:checked) .acc-body {
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower):hover .acc-head i:before {
    opacity: 1;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower):hover .acc-head i:after {
    opacity: 0;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li:has(.nav-lower):hover .acc-body {
    -ms-grid-rows: 1fr !important;
    grid-template-rows: 1fr !important;
    pointer-events: auto;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower {
    position: absolute;
    top: 1.6rem;
    left: 50%;
    translate: -50% 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding-top: 2.9rem;
  }
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower .acc-body-inner {
    padding: 0 1.5rem 1.5rem;
  }
}
header .gnav #h-nav > ul > li .nav-lower ul.nav-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3rem 2rem;
  padding-top: 5.5rem;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower ul.nav-sub {
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem 0;
    background-color: #ec7515;
    padding: 2.5rem 3rem;
    border-radius: 1.5rem;
    min-width: 27rem;
  }
}
header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li {
  width: calc((100% - 2rem) / 2);
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li {
    width: 100%;
  }
}
header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li:nth-child(1) {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li:nth-child(1) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 2.5rem;
  }
  header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li:nth-child(1) a {
    font-size: 1.6rem;
    font-weight: bold;
  }
}
header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li a {
  font-size: 2.6rem;
  line-height: 1.25;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li .nav-lower ul.nav-sub li a {
    font-size: 1.4rem;
  }
}
.top header .gnav #h-nav > ul > li#nav-top .nav-link:before {
  opacity: 1;
}
.news header .gnav #h-nav > ul > li#nav-news .nav-link:before {
  opacity: 1;
}
.philosophy header .gnav #h-nav > ul > li#nav-philosophy .nav-link:before {
  opacity: 1;
}
.business header .gnav #h-nav > ul > li#nav-business .nav-link:before {
  opacity: 1;
}
.company header .gnav #h-nav > ul > li#nav-company .nav-link:before {
  opacity: 1;
}
.customer header .gnav #h-nav > ul > li#nav-customer .nav-link:before {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  header .gnav #h-nav > ul > li#nav-ir, header .gnav #h-nav > ul > li#nav-saiyo {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  header .gnav #h-nav > ul > li#nav-recruit {
    display: none;
  }
}

/*---------------------------------------------------------
footer
---------------------------------------------------------*/
footer {
  padding: 9rem 0 6rem;
  background-color: #ec7515;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  footer {
    padding-bottom: 14.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  footer #footer-box {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0 6rem;
  }
  footer #footer-box #footer-left {
    width: 29rem;
  }
  footer #footer-box #footer-nav {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1.5rem 0 0 0;
  }
  footer #footer-box #footer-nav > ul > li:nth-child(n+2) {
    margin-top: 5.5rem;
  }
  footer #footer-box #footer-nav > ul > li > a {
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1.6rem;
    font-weight: bold;
  }
  footer #footer-box #footer-nav > ul > li a[target=_blank] {
    position: relative;
  }
  footer #footer-box #footer-nav > ul > li a[target=_blank]:after {
    content: "";
    display: inline-block;
    width: 1.8rem;
    height: 1.8rem;
    background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
    margin-left: 0.5rem;
  }
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
  footer #footer-box #footer-nav > ul > li a[target=_blank]:after {
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  footer #footer-box #footer-nav > ul > li ul {
    margin-top: 2.5rem;
  }
  footer #footer-box #footer-nav > ul > li ul li:nth-child(n+2) {
    margin-top: 0.5rem;
  }
  footer #footer-box #footer-nav > ul > li ul li a {
    display: block;
    font-size: 1.4rem;
    font-weight: normal;
    padding: 0.5rem 0;
  }
}
footer #footer-logo {
  width: 20rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
  footer #footer-logo {
    margin: 0;
  }
}
footer #footer-script {
  width: 41rem;
  margin: 3rem auto 0;
}
@media print, screen and (min-width: 768px) {
  footer #footer-script {
    width: 27.4rem;
    margin: 4.3rem 0 0 0.6rem;
  }
}
footer #footer-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 6rem;
  margin-top: 6.5rem;
}
@media print, screen and (min-width: 768px) {
  footer #footer-link {
    position: absolute;
    bottom: -7rem;
    right: 0;
    gap: 0 3rem;
  }
}
footer #footer-link li {
  position: relative;
}
footer #footer-link li:nth-child(n+2):before {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: -3rem;
  display: block;
  width: 1px;
  height: 2.6rem;
  background-color: #fff;
  rotate: 45deg;
}
@media print, screen and (min-width: 768px) {
  footer #footer-link li:nth-child(n+2):before {
    left: -1.5rem;
    height: 2rem;
  }
}
footer #footer-link li a {
  display: block;
  font-size: 2rem;
}
@media print, screen and (min-width: 768px) {
  footer #footer-link li a {
    font-size: 1.4rem;
  }
}
footer #copyright {
  display: block;
  margin-top: 5.5rem;
  font-size: 2rem;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 768px) {
  footer #copyright {
    font-size: 1.2rem;
    margin-top: 9rem;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  footer #footer-nav {
    display: none;
  }
}

#breadcrumb {
  display: block;
}
@media only screen and (max-width: 767px) {
  #breadcrumb {
    display: none;
  }
}
#breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1.25rem;
}
#breadcrumb ul li {
  font-size: 1.5rem;
}
#breadcrumb ul li:nth-child(n+2):before {
  content: "";
  display: inline-block;
  margin-right: 1rem;
  width: 0.6rem;
  height: 1rem;
  background: url(../img/common/arrow-head.svg) no-repeat center center/contain;
}

.c-btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4rem;
  margin-top: 6rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-box {
    gap: 2rem 1.99rem;
    margin-top: 4.5rem;
  }
}

ul.c-btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 768px) {
  ul.c-btn-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.c-btn {
  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;
  position: relative;
  background-color: #ef6c00;
  overflow: hidden;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
  width: 51rem;
  height: 9rem;
  border-radius: 100vw;
  font-size: 2.4rem;
  line-height: 1.1;
  font-weight: bold;
  color: #fff;
  text-align: center;
  -webkit-transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
  margin-left: auto;
  margin-right: auto;
}
.c-btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 100vw;
  background: -webkit-gradient(linear, left top, right top, from(#fff), to(#000));
  background: linear-gradient(90deg, #fff, #000);
  mix-blend-mode: soft-light;
  pointer-events: none;
}
.c-btn:hover {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  .c-btn:hover {
    background-color: #c3d12d;
  }
}
@media print, screen and (min-width: 768px) {
  .c-btn {
    width: 30rem;
    height: 6rem;
    font-size: 1.6rem;
    line-height: 1.1;
  }
}
.c-btn:hover {
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
}
.c-btn:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  right: 4rem;
  display: block;
  -webkit-transition: rotate 0.3s;
  transition: rotate 0.3s;
  width: 2.1rem;
  height: 1.8rem;
  background: url(../img/common//arrow-white.svg) no-repeat center center/contain;
  -webkit-transform-origin: top;
          transform-origin: top;
}
@media print, screen and (min-width: 768px) {
  .c-btn:before {
    right: 3rem;
    width: 1.4rem;
    height: 1.2rem;
  }
}

.c-btn[target=_blank]:before {
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
  right: 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn[target=_blank]:before {
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .c-btn[target=_blank]:before {
    right: 3rem;
  }
}

.c-btn-back:before {
  right: auto;
  left: 4.5rem;
  scale: -1 1;
}
@media print, screen and (min-width: 768px) {
  .c-btn-back:before {
    left: 3rem;
  }
}

.c-btn-plus:before {
  background-image: url(../img/common/icon-plus.svg);
}

.c-btn-icon {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(255, 255, 255, 0.9);
  width: 67rem;
  height: 18rem;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
  border-radius: 3rem;
  padding-left: 18rem;
  font-size: 2.8rem;
  line-height: 1.25;
  font-weight: bold;
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s;
  transition: box-shadow 0.3s, -webkit-box-shadow 0.3s;
}
@media print, screen and (min-width: 768px) {
  .c-btn-icon {
    width: 45rem;
    height: 12rem;
    padding-left: 12.5rem;
    font-size: 1.8rem;
  }
}
.c-btn-icon ._img {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  display: block;
  background: linear-gradient(63deg, #e95413 0, #ec7614 27%, #f19f19 53%, #f5c000 71%, #d8d100 89%, #c3d12d 100%);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.c-btn-icon .c {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.c-btn-icon:hover {
  opacity: 1;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
}
.c-btn-icon.c-btn-icon-company ._img {
  left: 6.5rem;
  width: 7.2rem;
  height: 7.2rem;
  -webkit-mask-image: url(../img/common/btn-icon-company.svg);
          mask-image: url(../img/common/btn-icon-company.svg);
}
@media print, screen and (min-width: 768px) {
  .c-btn-icon.c-btn-icon-company ._img {
    left: 4.5rem;
    width: 4.8rem;
    height: 4.8rem;
  }
}
.c-btn-icon.c-btn-icon-customer ._img {
  left: 6.5rem;
  width: 7.2rem;
  height: 7.2rem;
  -webkit-mask-image: url(../img/common/btn-icon-customer.svg);
          mask-image: url(../img/common/btn-icon-customer.svg);
}
@media print, screen and (min-width: 768px) {
  .c-btn-icon.c-btn-icon-customer ._img {
    display: block;
    left: 4.5rem;
    width: 4.8rem;
    height: 4.8rem;
  }
}
.c-btn-icon.c-btn-icon-board ._img {
  left: 4.5rem;
  width: 11.2rem;
  height: 7.2rem;
  -webkit-mask-image: url(../img/common/btn-icon-board.svg);
          mask-image: url(../img/common/btn-icon-board.svg);
}
@media print, screen and (min-width: 768px) {
  .c-btn-icon.c-btn-icon-board ._img {
    display: block;
    left: 3rem;
    width: 7.5rem;
    height: 4.8rem;
  }
}
.c-btn-icon.c-btn-icon-history ._img {
  left: 5.9rem;
  width: 8.6rem;
  height: 7.2rem;
  -webkit-mask-image: url(../img/common/btn-icon-history.svg);
          mask-image: url(../img/common/btn-icon-history.svg);
}
@media print, screen and (min-width: 768px) {
  .c-btn-icon.c-btn-icon-history ._img {
    display: block;
    left: 4rem;
    width: 5.8rem;
    height: 4.8rem;
  }
}

.c-btn-circle {
  background-color: #f9fae9;
  border-radius: 1.5rem;
}
.c-btn-circle ._box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  height: 25rem;
  padding: 4rem 10rem 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle ._box {
    height: 15rem;
    padding: 0 10rem 0 6rem;
  }
}
.c-btn-circle ._box ._txtbox ._title {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.3333333333;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle ._box ._txtbox ._title {
    font-size: 2rem;
  }
}
.c-btn-circle ._box ._txtbox ._txt {
  display: block;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-top: 1rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle ._box ._txtbox ._txt {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.c-btn-circle ._box ._tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4rem;
  background-color: #c3d12c;
  border-radius: 100vw;
  font-size: 2.1rem;
  font-weight: bold;
  color: #fff;
  padding: 0 1em;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle ._box ._tag {
    height: 2rem;
    font-size: 1.2rem;
    margin-top: 1rem;
  }
}
.c-btn-circle ._box ._tag i {
  display: block;
  padding-bottom: 0.1em;
}
@media only screen and (max-width: 767px) {
  .c-btn-circle ._box .c {
    right: -2rem;
  }
}
.c-btn-circle ._btn-body {
  padding: 0 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle ._btn-body {
    padding: 0 3rem 3rem;
  }
}
.c-btn-circle ._btn-body ul {
  background-color: #fff;
  border-radius: 1.5rem;
  padding: 3rem 4rem;
}
.c-btn-circle ._btn-body ul li:nth-child(n+2) {
  margin-top: 1.5em;
}
.c-btn-circle ._btn-body ul li a {
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.c-btn-circle-l {
  background-color: #f9fae9;
  border-radius: 1.5rem;
}
.c-btn-circle-l ._box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  height: 25rem;
  padding: 4rem 10rem 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box {
    height: 15rem;
    padding: 0 10rem 0 6rem;
  }
}
.c-btn-circle-l ._box ._txtbox ._title {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.3333333333;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._txtbox ._title {
    font-size: 2rem;
  }
}
.c-btn-circle-l ._box ._txtbox ._txt {
  display: block;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-top: 1rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._txtbox ._txt {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.c-btn-circle-l ._box ._tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4rem;
  background-color: #c3d12c;
  border-radius: 100vw;
  font-size: 2.1rem;
  font-weight: bold;
  color: #fff;
  padding: 0 1em;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._tag {
    height: 2rem;
    font-size: 1.2rem;
    margin-top: 1rem;
  }
}
.c-btn-circle-l ._box ._tag i {
  display: block;
  padding-bottom: 0.1em;
}
@media only screen and (max-width: 767px) {
  .c-btn-circle-l ._box .c {
    right: -2rem;
  }
}
.c-btn-circle-l ._btn-body {
  padding: 0 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._btn-body {
    padding: 0 3rem 3rem;
  }
}
.c-btn-circle-l ._btn-body ul {
  background-color: #fff;
  border-radius: 1.5rem;
  padding: 3rem 4rem;
}
.c-btn-circle-l ._btn-body ul li:nth-child(n+2) {
  margin-top: 1.5em;
}
.c-btn-circle-l ._btn-body ul li a {
  letter-spacing: 0.1em;
  line-height: 1.2;
}
.c-btn-circle-l ._box {
  display: block;
  height: auto;
  padding: 4rem 4rem 5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 24rem;
    gap: 0 6.5rem;
    padding: 0 19rem 0 3rem;
  }
}
.c-btn-circle-l ._box figure {
  display: block;
  border-radius: 1.5rem;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box figure {
    width: 33rem;
  }
}
.c-btn-circle-l ._box ._txtbox {
  margin-top: 3.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._txtbox {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-top: 0;
  }
}
.c-btn-circle-l ._box ._txtbox ._title {
  font-size: 3.6rem;
  line-height: 1.3333333333;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._txtbox ._title {
    font-size: 2rem;
  }
}
.c-btn-circle-l ._box ._txtbox ._txt {
  font-size: 2.8rem;
  line-height: 1.75;
  margin-top: 2rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l ._box ._txtbox ._txt {
    font-size: 1.6rem;
    line-height: 1.6875;
  }
}
@media only screen and (max-width: 767px) {
  .c-btn-circle-l .c {
    top: auto;
    bottom: -2rem;
    translate: 0 0;
    right: -2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-l .c {
    right: 6rem;
  }
}

.c-btn-circle-s {
  background-color: #f9fae9;
  border-radius: 1.5rem;
}
.c-btn-circle-s ._box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  height: 25rem;
  padding: 4rem 10rem 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box {
    height: 15rem;
    padding: 0 10rem 0 6rem;
  }
}
.c-btn-circle-s ._box ._txtbox ._title {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.3333333333;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box ._txtbox ._title {
    font-size: 2rem;
  }
}
.c-btn-circle-s ._box ._txtbox ._txt {
  display: block;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-top: 1rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box ._txtbox ._txt {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.c-btn-circle-s ._box ._tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4rem;
  background-color: #c3d12c;
  border-radius: 100vw;
  font-size: 2.1rem;
  font-weight: bold;
  color: #fff;
  padding: 0 1em;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box ._tag {
    height: 2rem;
    font-size: 1.2rem;
    margin-top: 1rem;
  }
}
.c-btn-circle-s ._box ._tag i {
  display: block;
  padding-bottom: 0.1em;
}
@media only screen and (max-width: 767px) {
  .c-btn-circle-s ._box .c {
    right: -2rem;
  }
}
.c-btn-circle-s ._btn-body {
  padding: 0 4rem 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._btn-body {
    padding: 0 3rem 3rem;
  }
}
.c-btn-circle-s ._btn-body ul {
  background-color: #fff;
  border-radius: 1.5rem;
  padding: 3rem 4rem;
}
.c-btn-circle-s ._btn-body ul li:nth-child(n+2) {
  margin-top: 1.5em;
}
.c-btn-circle-s ._btn-body ul li a {
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box {
    height: 12rem;
    padding: 0 4rem 0 6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .c-btn-circle-s ._box .c {
    width: 4.5rem;
    height: 4.5rem;
  }
}

ul:has(.c-btn-circle),
ul:has(.c-btn-circle-l),
ul:has(.c-btn-circle-s) {
  display: -ms-grid;
  display: grid;
  gap: 4rem;
}
@media print, screen and (min-width: 768px) {
  ul:has(.c-btn-circle),
  ul:has(.c-btn-circle-l),
  ul:has(.c-btn-circle-s) {
    -ms-flex-item-align: start;
        align-self: flex-start;
    gap: 3rem;
  }
}
@media print, screen and (min-width: 768px) {
  ul:has(.c-btn-circle).c-clm2,
  ul:has(.c-btn-circle-l).c-clm2,
  ul:has(.c-btn-circle-s).c-clm2 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}

.c-title-ribon + ul:has(.c-btn-circle), .c-title-ribon + ul:has(.c-btn-circle-l) {
  margin-top: 6rem;
}
@media print, screen and (min-width: 768px) {
  .c-title-ribon + ul:has(.c-btn-circle), .c-title-ribon + ul:has(.c-btn-circle-l) {
    margin-top: 8rem;
  }
}

.c-title-border + ul:has(.c-btn-circle), .c-title-border + ul:has(.c-btn-circle-l) {
  margin-top: 4rem;
}
@media print, screen and (min-width: 768px) {
  .c-title-border + ul:has(.c-btn-circle), .c-title-border + ul:has(.c-btn-circle-l) {
    margin-top: 4rem;
  }
}

.inner-s .c-btn-circle ._box {
  padding-left: 4.5rem;
}
.inner-s ul:has(.c-btn-circle) {
  display: -ms-grid;
  display: grid;
  gap: 1.5rem;
}

.c {
  position: relative;
  background-color: #ef6c00;
  overflow: hidden;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 4.5rem;
  display: block;
  width: 9rem;
  height: 9rem;
  border-radius: 100vw;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
  -webkit-transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
}
.c:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 100vw;
  background: -webkit-gradient(linear, left top, right top, from(#fff), to(#000));
  background: linear-gradient(90deg, #fff, #000);
  mix-blend-mode: soft-light;
  pointer-events: none;
}
.c:hover {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  .c:hover {
    background-color: #c3d12d;
  }
}
@media print, screen and (min-width: 768px) {
  .c {
    right: 3rem;
    width: 6rem;
    height: 6rem;
  }
}
.c:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  display: block;
}
.c.c-arrow:before {
  width: 2.1rem;
  height: 1.8rem;
  background: url(../img/common//arrow-white.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 768px) {
  .c.c-arrow:before {
    right: 3rem;
    width: 1.4rem;
    height: 1.2rem;
  }
}
.c.c-arrow-bottom:before {
  width: 2.1rem;
  height: 1.8rem;
  background: url(../img/common//arrow-white.svg) no-repeat center center/contain;
  rotate: 90deg;
}
@media print, screen and (min-width: 768px) {
  .c.c-arrow-bottom:before {
    right: 3rem;
    width: 1.4rem;
    height: 1.2rem;
  }
}
.c.c-blank:before {
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 768px) {
  .c.c-blank:before {
    width: 1.2rem;
    height: 1.2rem;
  }
}

@media print, screen and (min-width: 768px) {
  a:has(.c):hover .c,
  .acc-head:has(.c):hover .c {
    pointer-events: none;
    background-color: #c3d12d;
    -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
            box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
  }
}

#float-btn {
  position: fixed;
  z-index: 998;
  top: 16rem;
  right: 0;
}
@media only screen and (max-width: 767px) {
  #float-btn {
    display: none;
  }
}
#float-btn li:nth-child(n+2) {
  margin-top: 1.5rem;
}
#float-btn li a {
  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;
  position: relative;
  background-color: #ef6c00;
  overflow: hidden;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
  width: 51rem;
  height: 9rem;
  border-radius: 100vw;
  font-size: 2.4rem;
  line-height: 1.1;
  font-weight: bold;
  color: #fff;
  text-align: center;
  -webkit-transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1.5rem 0 0 1.5rem;
}
#float-btn li a:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 100vw;
  background: -webkit-gradient(linear, left top, right top, from(#fff), to(#000));
  background: linear-gradient(90deg, #fff, #000);
  mix-blend-mode: soft-light;
  pointer-events: none;
}
#float-btn li a:hover {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  #float-btn li a:hover {
    background-color: #c3d12d;
  }
}
@media print, screen and (min-width: 768px) {
  #float-btn li a {
    width: 30rem;
    height: 6rem;
    font-size: 1.6rem;
    line-height: 1.1;
  }
}
#float-btn li a:hover {
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
}
@media print, screen and (min-width: 768px) {
  #float-btn li a {
    width: 6rem;
    height: auto;
    min-height: 20rem;
    padding: 3rem 0;
  }
}
#float-btn li a:after {
  border-radius: 1.5rem 0 0 1.5rem;
}
#float-btn li a span {
  position: relative;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #fff;
  font-weight: bold;
  padding-bottom: 2rem;
}
#float-btn li a span:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/common/icon-blank-white.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 768px) {
  #float-btn li a span:before {
    width: 1.2rem;
    height: 1.2rem;
  }
}
#float-btn li a span i {
  display: inline-block;
  rotate: -90deg;
}

.acc:has(.acc-head input:checked) .acc-head i:before {
  rotate: 0deg;
}
.acc:has(.acc-head input:checked) .acc-body {
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}

.acc-head {
  position: relative;
}
.acc-head label {
  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;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.acc-head i:before {
  rotate: 90deg;
  -webkit-transition: rotate 0.3s;
  transition: rotate 0.3s;
}

.acc-body {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 0fr;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.3s ease-in-out;
  transition: grid-template-rows 0.3s ease-in-out;
  transition: grid-template-rows 0.3s ease-in-out, -ms-grid-rows 0.3s ease-in-out;
}
.acc-body .acc-body-box {
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .news-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media print, screen and (min-width: 768px) {
  .news-aside {
    -ms-flex-item-align: start;
        align-self: flex-start;
    position: sticky;
    top: 15rem;
    width: 29rem;
  }
}

.tab-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 4rem;
  margin-bottom: 6rem;
}
@media print, screen and (min-width: 768px) {
  .tab-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 3rem 0;
    margin-bottom: 0;
  }
}
.tab-btn li {
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .tab-btn li {
    font-size: 1.4rem;
    cursor: pointer;
    white-space: nowrap;
  }
  .tab-btn li p {
    max-width: 30%;
    -webkit-transition: max-width 0.3s !important;
    transition: max-width 0.3s !important;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .tab-btn li p:hover {
    opacity: 0.8;
  }
}
.tab-btn li.on a,
.tab-btn li.on p {
  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;
  position: relative;
  background-color: #ef6c00;
  overflow: hidden;
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(236, 117, 21, 0.25);
  width: 51rem;
  height: 9rem;
  border-radius: 100vw;
  font-size: 2.4rem;
  line-height: 1.1;
  font-weight: bold;
  color: #fff;
  text-align: center;
  -webkit-transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  width: auto !important;
  max-width: 100%;
  height: 7rem;
  font-size: 2rem;
  padding: 0 3rem;
  -webkit-transition: none;
  transition: none;
  color: #fff;
}
.tab-btn li.on a:after,
.tab-btn li.on p:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 100vw;
  background: -webkit-gradient(linear, left top, right top, from(#fff), to(#000));
  background: linear-gradient(90deg, #fff, #000);
  mix-blend-mode: soft-light;
  pointer-events: none;
}
.tab-btn li.on a:hover,
.tab-btn li.on p:hover {
  opacity: 1;
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on a:hover,
  .tab-btn li.on p:hover {
    background-color: #c3d12d;
  }
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on a,
  .tab-btn li.on p {
    width: 30rem;
    height: 6rem;
    font-size: 1.6rem;
    line-height: 1.1;
  }
}
.tab-btn li.on a:hover,
.tab-btn li.on p:hover {
  -webkit-box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
          box-shadow: 0.8rem 0.8rem 3rem rgba(195, 209, 45, 0.25);
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on a,
  .tab-btn li.on p {
    font-size: 1.4rem;
    height: 4.5rem;
    padding: 0 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on a:hover,
  .tab-btn li.on p:hover {
    background-color: #ef6c00;
  }
}
.tab-btn li.on span {
  position: relative;
  padding-left: 2.5rem;
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on span {
    padding-left: 1.5rem;
  }
}
.tab-btn li.on span:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  background: #fff;
  border-radius: 50%;
}
@media print, screen and (min-width: 768px) {
  .tab-btn li.on span:before {
    width: 0.6rem;
    height: 0.6rem;
  }
}

@media print, screen and (min-width: 768px) {
  #news-contents {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

@media print, screen and (min-width: 768px) {
  .news-list-box {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.news-list {
  border-top: 1px solid #eceff1;
}
.news-list > li {
  padding: 4rem 0 3.5rem;
  border-bottom: 1px solid #eceff1;
}
@media print, screen and (min-width: 768px) {
  .news-list > li {
    padding: 2.5rem 0 2rem;
  }
}

.news__date,
.date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 3rem;
}
@media print, screen and (min-width: 768px) {
  .news__date,
  .date {
    gap: 0 2.5rem;
  }
}
.news__date time,
.date time {
  font-weight: bold;
}
.news__date .label,
.date .label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 18rem;
  height: 4rem;
  background-color: #ccc;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  border-radius: 0.5rem;
}
@media print, screen and (min-width: 768px) {
  .news__date .label,
  .date .label {
    width: 12rem;
    height: 3rem;
    font-size: 1.2rem;
  }
}
.news__date .label.L-news,
.date .label.L-news {
  background-color: #e95413;
}
.news__date .label.L-media,
.date .label.L-media {
  background-color: #ec7614;
}
.news__date .label.I-pr,
.date .label.I-pr {
  background-color: #f19f19;
}
.news__date .label.L-settlement,
.date .label.L-settlement {
  background-color: #9fd12d;
}
.news__date .label.I-tanshin,
.date .label.I-tanshin {
  background-color: #4caf50;
}
.news__date .label.I-yuho,
.date .label.I-yuho {
  background-color: #2e9990;
}
.news__date .label.I-gms,
.date .label.I-gms {
  background-color: #2eb8e6;
}
.news__date .label.I-press,
.date .label.I-press {
  background-color: #9f85cc;
}
.news__date .label.L-other,
.date .label.L-other {
  background-color: #78909c;
}

.pdf-icon {
  display: inline-block;
  width: 3.7rem;
  height: 4.2rem;
  background: url("/assets/img/common/icon-pdf.svg") no-repeat center/contain;
  vertical-align: text-bottom;
  margin-left: 0.5em;
}
@media print, screen and (min-width: 768px) {
  .pdf-icon {
    width: 2.1rem;
    height: 2.4rem;
  }
}

.news__inner {
  line-height: 1.7142857143;
  margin-top: 3rem;
}
@media print, screen and (min-width: 768px) {
  .news__inner {
    line-height: 1.75;
    margin-top: 1.5rem;
  }
}
.news__inner .news-pdf__inner {
  margin-top: 5rem;
}
@media print, screen and (min-width: 768px) {
  .news__inner .news-pdf__inner {
    margin-top: 2.5rem;
  }
}
.news__inner .news-pdf__inner .pdf-icon {
  margin-left: 0;
}

#lower-mv {
  position: relative;
  height: 30rem;
  padding-top: 8rem;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
@media print, screen and (min-width: 768px) {
  #lower-mv {
    height: 30rem;
    padding-top: 7.5rem;
  }
}
#lower-mv #title-page {
  position: relative;
  z-index: 1;
  padding-top: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media print, screen and (min-width: 768px) {
  #lower-mv #title-page {
    padding-top: 6rem;
  }
}
#lower-mv #title-page:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 9rem;
  height: 2px;
  background-color: #ec7515;
}
@media print, screen and (min-width: 768px) {
  #lower-mv #title-page:before {
    width: 6rem;
  }
}
#lower-mv #title-page .title-page-jp {
  font-size: 5.4rem;
  font-weight: bold;
  line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
  #lower-mv #title-page .title-page-jp {
    font-size: 4.2rem;
  }
}
#lower-mv .title-page-en {
  position: absolute;
  z-index: -1;
  top: 8.5rem;
  right: 0;
  display: block;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 7rem;
  line-height: 1.05;
  text-align: right;
  margin-right: -0.1em;
  margin-left: -1em;
  padding-bottom: 0.2em;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(195, 209, 44, 0.2)), color-stop(60%, rgba(241, 160, 29, 0.2)), color-stop(80%, rgba(236, 117, 21, 0.2)), to(rgba(232, 83, 19, 0.2)));
  background: linear-gradient(to right, rgba(195, 209, 44, 0.2) 0, rgba(241, 160, 29, 0.2) 60%, rgba(236, 117, 21, 0.2) 80%, rgba(232, 83, 19, 0.2) 100%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  #lower-mv .title-page-en {
    font-size: 10rem;
    top: 6rem;
  }
}
#lower-mv .title-page-en.title-page-en-s {
  font-size: 6rem;
}
@media print, screen and (min-width: 768px) {
  #lower-mv .title-page-en.title-page-en-s {
    font-size: 8rem;
  }
}
#lower-mv:has(#lower-mv-img) {
  position: relative;
  height: auto;
  min-height: 121rem;
  padding-bottom: 13rem;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) {
    padding-bottom: 0;
    min-height: 88.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) .inner {
    position: relative;
    position: static;
  }
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) #lower-mv-box {
    width: 38.1944444444vw;
    min-width: 55rem;
  }
}
#lower-mv:has(#lower-mv-img) #lower-mv-catch {
  position: relative;
  z-index: 2;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.7222222222;
  color: #ec7614;
  margin-top: 5.5rem;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) #lower-mv-catch {
    font-size: 3rem;
    line-height: 1.7333333333;
    margin-top: 4rem;
  }
}
#lower-mv:has(#lower-mv-img) #lower-mv-img {
  display: block;
  border-radius: 1.5rem;
  overflow: hidden;
  margin-top: 6rem;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) #lower-mv-img {
    position: absolute;
    top: 0;
    right: 0;
    width: 47.9166666667vw;
    max-width: 69rem;
    height: 60rem;
    border-radius: 1.5rem 0 0 1.5rem;
    margin-top: 14rem;
  }
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) #lower-mv-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
#lower-mv:has(#lower-mv-img) #lower-mv-txt {
  margin-top: 6rem;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) #lower-mv-txt {
    margin-top: 4rem;
  }
}
#lower-mv:has(#lower-mv-img) .title-page-en-box {
  position: relative;
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) .title-page-en-box {
    position: absolute;
    top: 81rem;
    left: 0;
  }
}
#lower-mv:has(#lower-mv-img) .title-page-en {
  position: absolute;
  z-index: 1;
  top: auto;
  bottom: -4rem;
  right: 0;
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  #lower-mv:has(#lower-mv-img) .title-page-en {
    bottom: 0;
    right: calc(50% - 50vw + 8rem);
  }
}
@media screen and (min-width: 1440px) {
  #lower-mv:has(#lower-mv-img) .title-page-en {
    right: calc(50% - 50vw + 15rem);
  }
}